summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--src/devices/bus/a2bus/a2applicard.cpp4
-rw-r--r--src/devices/bus/a2bus/a2applicard.h2
-rw-r--r--src/devices/bus/a2bus/a2softcard.cpp2
-rw-r--r--src/devices/bus/a2bus/a2softcard.h1
-rw-r--r--src/devices/bus/a2bus/a2themill.cpp2
-rw-r--r--src/devices/bus/a2bus/a2themill.h1
-rw-r--r--src/devices/bus/a2bus/pc_xporter.cpp4
-rw-r--r--src/devices/bus/a2bus/pc_xporter.h2
-rw-r--r--src/devices/bus/a2bus/transwarp.cpp2
-rw-r--r--src/devices/bus/a2bus/transwarp.h1
-rw-r--r--src/devices/bus/abcbus/db411223.cpp4
-rw-r--r--src/devices/bus/abcbus/db411223.h2
-rw-r--r--src/devices/bus/abcbus/fd2.cpp4
-rw-r--r--src/devices/bus/abcbus/fd2.h2
-rw-r--r--src/devices/bus/abcbus/hdc.cpp4
-rw-r--r--src/devices/bus/abcbus/hdc.h2
-rw-r--r--src/devices/bus/abcbus/lux10828.cpp4
-rw-r--r--src/devices/bus/abcbus/lux10828.h2
-rw-r--r--src/devices/bus/abcbus/lux21046.cpp4
-rw-r--r--src/devices/bus/abcbus/lux21046.h2
-rw-r--r--src/devices/bus/abcbus/lux21056.cpp4
-rw-r--r--src/devices/bus/abcbus/lux21056.h2
-rw-r--r--src/devices/bus/abcbus/unidisk.cpp4
-rw-r--r--src/devices/bus/abcbus/unidisk.h2
-rw-r--r--src/devices/bus/abckb/abc77.cpp4
-rw-r--r--src/devices/bus/abckb/abc77.h2
-rw-r--r--src/devices/bus/abckb/abc99.cpp6
-rw-r--r--src/devices/bus/abckb/abc99.h3
-rw-r--r--src/devices/bus/adamnet/ddp.cpp4
-rw-r--r--src/devices/bus/adamnet/ddp.h2
-rw-r--r--src/devices/bus/adamnet/fdc.cpp4
-rw-r--r--src/devices/bus/adamnet/fdc.h2
-rw-r--r--src/devices/bus/adamnet/kb.cpp4
-rw-r--r--src/devices/bus/adamnet/kb.h2
-rw-r--r--src/devices/bus/adamnet/printer.cpp4
-rw-r--r--src/devices/bus/adamnet/printer.h2
-rw-r--r--src/devices/bus/adamnet/spi.cpp4
-rw-r--r--src/devices/bus/adamnet/spi.h2
-rw-r--r--src/devices/bus/amiga/keyboard/a500.cpp6
-rw-r--r--src/devices/bus/amiga/keyboard/a500.h1
-rw-r--r--src/devices/bus/amiga/zorro/a2232.cpp6
-rw-r--r--src/devices/bus/amiga/zorro/a2232.h3
-rw-r--r--src/devices/bus/amiga/zorro/buddha.cpp2
-rw-r--r--src/devices/bus/amiga/zorro/buddha.h2
-rw-r--r--src/devices/bus/bbc/tube/tube_6502.cpp2
-rw-r--r--src/devices/bus/bbc/tube/tube_6502.h1
-rw-r--r--src/devices/bus/bbc/tube/tube_65c102.cpp2
-rw-r--r--src/devices/bus/bbc/tube/tube_65c102.h1
-rw-r--r--src/devices/bus/bbc/tube/tube_80186.cpp4
-rw-r--r--src/devices/bus/bbc/tube/tube_80186.h2
-rw-r--r--src/devices/bus/bbc/tube/tube_80286.cpp4
-rw-r--r--src/devices/bus/bbc/tube/tube_80286.h2
-rw-r--r--src/devices/bus/bbc/tube/tube_arm.cpp2
-rw-r--r--src/devices/bus/bbc/tube/tube_arm.h1
-rw-r--r--src/devices/bus/bbc/tube/tube_casper.cpp2
-rw-r--r--src/devices/bus/bbc/tube/tube_casper.h1
-rw-r--r--src/devices/bus/bbc/tube/tube_z80.cpp8
-rw-r--r--src/devices/bus/bbc/tube/tube_z80.h3
-rw-r--r--src/devices/bus/bbc/tube/tube_zep100.cpp4
-rw-r--r--src/devices/bus/bbc/tube/tube_zep100.h2
-rw-r--r--src/devices/bus/c64/cpm.cpp4
-rw-r--r--src/devices/bus/c64/cpm.h2
-rw-r--r--src/devices/bus/c64/fcc.cpp2
-rw-r--r--src/devices/bus/c64/fcc.h1
-rw-r--r--src/devices/bus/c64/multiscreen.cpp2
-rw-r--r--src/devices/bus/c64/multiscreen.h1
-rw-r--r--src/devices/bus/c64/supercpu.cpp2
-rw-r--r--src/devices/bus/c64/supercpu.h1
-rw-r--r--src/devices/bus/cbm2/hrg.cpp4
-rw-r--r--src/devices/bus/cbm2/hrg.h2
-rw-r--r--src/devices/bus/cbmiec/c1526.cpp2
-rw-r--r--src/devices/bus/cbmiec/c1526.h1
-rw-r--r--src/devices/bus/cbmiec/c1541.cpp8
-rw-r--r--src/devices/bus/cbmiec/c1541.h5
-rw-r--r--src/devices/bus/cbmiec/c1571.cpp4
-rw-r--r--src/devices/bus/cbmiec/c1571.h2
-rw-r--r--src/devices/bus/cbmiec/c1581.cpp2
-rw-r--r--src/devices/bus/cbmiec/c1581.h1
-rw-r--r--src/devices/bus/cbmiec/cmdhd.cpp2
-rw-r--r--src/devices/bus/cbmiec/cmdhd.h1
-rw-r--r--src/devices/bus/cbmiec/fd2000.cpp4
-rw-r--r--src/devices/bus/cbmiec/fd2000.h2
-rw-r--r--src/devices/bus/cbmiec/interpod.cpp2
-rw-r--r--src/devices/bus/cbmiec/interpod.h1
-rw-r--r--src/devices/bus/cbmiec/serialbox.cpp2
-rw-r--r--src/devices/bus/cbmiec/serialbox.h1
-rw-r--r--src/devices/bus/cbmiec/vic1515.cpp4
-rw-r--r--src/devices/bus/cbmiec/vic1515.h2
-rw-r--r--src/devices/bus/cbmiec/vic1520.cpp2
-rw-r--r--src/devices/bus/cbmiec/vic1520.h1
-rw-r--r--src/devices/bus/cbus/mpu_pc98.cpp4
-rw-r--r--src/devices/bus/cbus/mpu_pc98.h2
-rw-r--r--src/devices/bus/centronics/comxpl80.cpp4
-rw-r--r--src/devices/bus/centronics/comxpl80.h2
-rw-r--r--src/devices/bus/centronics/epson_ex800.cpp2
-rw-r--r--src/devices/bus/centronics/epson_ex800.h1
-rw-r--r--src/devices/bus/centronics/epson_lx800.cpp2
-rw-r--r--src/devices/bus/centronics/epson_lx800.h1
-rw-r--r--src/devices/bus/centronics/epson_lx810l.cpp2
-rw-r--r--src/devices/bus/centronics/epson_lx810l.h1
-rw-r--r--src/devices/bus/centronics/nec_p72.cpp2
-rw-r--r--src/devices/bus/centronics/nec_p72.h1
-rw-r--r--src/devices/bus/cgenie/expansion/floppy.cpp2
-rw-r--r--src/devices/bus/cgenie/expansion/floppy.h2
-rw-r--r--src/devices/bus/compis/hrg.cpp4
-rw-r--r--src/devices/bus/compis/hrg.h2
-rw-r--r--src/devices/bus/dmv/k230.cpp8
-rw-r--r--src/devices/bus/dmv/k230.h4
-rw-r--r--src/devices/bus/ecbbus/grip.cpp4
-rw-r--r--src/devices/bus/ecbbus/grip.h2
-rw-r--r--src/devices/bus/econet/e01.cpp2
-rw-r--r--src/devices/bus/econet/e01.h1
-rw-r--r--src/devices/bus/einstein/pipe/silicon_disc.cpp2
-rw-r--r--src/devices/bus/einstein/pipe/silicon_disc.h2
-rw-r--r--src/devices/bus/einstein/pipe/tk02.cpp2
-rw-r--r--src/devices/bus/einstein/pipe/tk02.h2
-rw-r--r--src/devices/bus/epson_sio/pf10.cpp4
-rw-r--r--src/devices/bus/epson_sio/pf10.h2
-rw-r--r--src/devices/bus/epson_sio/tf20.cpp4
-rw-r--r--src/devices/bus/epson_sio/tf20.h2
-rw-r--r--src/devices/bus/hp80_io/82937.cpp2
-rw-r--r--src/devices/bus/hp80_io/82937.h1
-rw-r--r--src/devices/bus/hp9845_io/98034.cpp4
-rw-r--r--src/devices/bus/hp9845_io/98034.h2
-rw-r--r--src/devices/bus/hp9845_io/98035.cpp4
-rw-r--r--src/devices/bus/hp9845_io/98035.h2
-rw-r--r--src/devices/bus/ieee488/c2031.cpp2
-rw-r--r--src/devices/bus/ieee488/c2031.h1
-rw-r--r--src/devices/bus/ieee488/c2040.cpp4
-rw-r--r--src/devices/bus/ieee488/c2040.h2
-rw-r--r--src/devices/bus/ieee488/c8050.cpp8
-rw-r--r--src/devices/bus/ieee488/c8050.h4
-rw-r--r--src/devices/bus/ieee488/c8280.cpp4
-rw-r--r--src/devices/bus/ieee488/c8280.h2
-rw-r--r--src/devices/bus/ieee488/d9060.cpp4
-rw-r--r--src/devices/bus/ieee488/d9060.h2
-rw-r--r--src/devices/bus/ieee488/hardbox.cpp4
-rw-r--r--src/devices/bus/ieee488/hardbox.h2
-rw-r--r--src/devices/bus/ieee488/hp9895.cpp4
-rw-r--r--src/devices/bus/ieee488/hp9895.h2
-rw-r--r--src/devices/bus/ieee488/shark.cpp4
-rw-r--r--src/devices/bus/ieee488/shark.h2
-rw-r--r--src/devices/bus/ieee488/softbox.cpp4
-rw-r--r--src/devices/bus/ieee488/softbox.h2
-rw-r--r--src/devices/bus/imi7000/imi5000h.cpp4
-rw-r--r--src/devices/bus/imi7000/imi5000h.h2
-rw-r--r--src/devices/bus/interpro/sr/gt.cpp8
-rw-r--r--src/devices/bus/interpro/sr/gt.h16
-rw-r--r--src/devices/bus/interpro/sr/sr.h2
-rw-r--r--src/devices/bus/isa/aha1542.cpp2
-rw-r--r--src/devices/bus/isa/aha1542.h1
-rw-r--r--src/devices/bus/isa/dectalk.cpp8
-rw-r--r--src/devices/bus/isa/dectalk.h4
-rw-r--r--src/devices/bus/isa/finalchs.cpp2
-rw-r--r--src/devices/bus/isa/finalchs.h1
-rw-r--r--src/devices/bus/isa/ibm_mfc.cpp4
-rw-r--r--src/devices/bus/isa/ibm_mfc.h2
-rw-r--r--src/devices/bus/isa/ide.cpp4
-rw-r--r--src/devices/bus/isa/ide.h4
-rw-r--r--src/devices/bus/isa/isa.cpp8
-rw-r--r--src/devices/bus/isa/isa.h8
-rw-r--r--src/devices/bus/isa/mcd.cpp2
-rw-r--r--src/devices/bus/isa/mcd.h2
-rw-r--r--src/devices/bus/isa/myb3k_fdc.cpp4
-rw-r--r--src/devices/bus/isa/myb3k_fdc.h4
-rw-r--r--src/devices/bus/isa/num9rev.cpp2
-rw-r--r--src/devices/bus/isa/num9rev.h1
-rw-r--r--src/devices/bus/isa/pgc.cpp4
-rw-r--r--src/devices/bus/isa/pgc.h2
-rw-r--r--src/devices/bus/isa/sb16.cpp2
-rw-r--r--src/devices/bus/isa/sb16.h1
-rw-r--r--src/devices/bus/isa/stereo_fx.cpp4
-rw-r--r--src/devices/bus/isa/stereo_fx.h2
-rw-r--r--src/devices/bus/isa/wdxt_gen.cpp2
-rw-r--r--src/devices/bus/isa/wdxt_gen.h1
-rw-r--r--src/devices/bus/kc/d004.cpp6
-rw-r--r--src/devices/bus/kc/d004.h3
-rw-r--r--src/devices/bus/megadrive/svp.cpp4
-rw-r--r--src/devices/bus/megadrive/svp.h2
-rw-r--r--src/devices/bus/msx_cart/bm_012.cpp2
-rw-r--r--src/devices/bus/msx_cart/bm_012.h1
-rw-r--r--src/devices/bus/msx_cart/konami.cpp2
-rw-r--r--src/devices/bus/msx_cart/konami.h1
-rw-r--r--src/devices/bus/msx_cart/moonsound.cpp2
-rw-r--r--src/devices/bus/msx_cart/moonsound.h1
-rw-r--r--src/devices/bus/newbrain/fdc.cpp4
-rw-r--r--src/devices/bus/newbrain/fdc.h2
-rw-r--r--src/devices/bus/odyssey2/chess.cpp4
-rw-r--r--src/devices/bus/odyssey2/chess.h2
-rw-r--r--src/devices/bus/oricext/jasmin.cpp2
-rw-r--r--src/devices/bus/oricext/jasmin.h2
-rw-r--r--src/devices/bus/oricext/microdisc.cpp2
-rw-r--r--src/devices/bus/oricext/microdisc.h2
-rw-r--r--src/devices/bus/pc_kbd/iskr1030.cpp2
-rw-r--r--src/devices/bus/pc_kbd/iskr1030.h1
-rw-r--r--src/devices/bus/pc_kbd/keytro.cpp4
-rw-r--r--src/devices/bus/pc_kbd/keytro.h2
-rw-r--r--src/devices/bus/pc_kbd/msnat.cpp2
-rw-r--r--src/devices/bus/pc_kbd/msnat.h1
-rw-r--r--src/devices/bus/pet/hsg.cpp4
-rw-r--r--src/devices/bus/pet/hsg.h2
-rw-r--r--src/devices/bus/pet/superpet.cpp2
-rw-r--r--src/devices/bus/pet/superpet.h1
-rw-r--r--src/devices/bus/plus4/c1551.cpp2
-rw-r--r--src/devices/bus/plus4/c1551.h1
-rw-r--r--src/devices/bus/psi_kbd/ergoline.cpp4
-rw-r--r--src/devices/bus/psi_kbd/ergoline.h2
-rw-r--r--src/devices/bus/s100/djdma.cpp4
-rw-r--r--src/devices/bus/s100/djdma.h2
-rw-r--r--src/devices/bus/scsi/s1410.cpp4
-rw-r--r--src/devices/bus/scsi/s1410.h2
-rw-r--r--src/devices/bus/snes/event.cpp4
-rw-r--r--src/devices/bus/snes/event.h2
-rw-r--r--src/devices/bus/snes/sa1.cpp2
-rw-r--r--src/devices/bus/snes/sa1.h1
-rw-r--r--src/devices/bus/snes/sfx.cpp2
-rw-r--r--src/devices/bus/snes/sfx.h1
-rw-r--r--src/devices/bus/snes/sgb.cpp2
-rw-r--r--src/devices/bus/snes/sgb.h1
-rw-r--r--src/devices/bus/snes/upd.cpp12
-rw-r--r--src/devices/bus/snes/upd.h6
-rw-r--r--src/devices/bus/spc1000/fdd.cpp4
-rw-r--r--src/devices/bus/spc1000/fdd.h2
-rw-r--r--src/devices/bus/tiki100/8088.cpp4
-rw-r--r--src/devices/bus/tiki100/8088.h2
-rw-r--r--src/devices/bus/vcs/harmony_melody.cpp2
-rw-r--r--src/devices/bus/vcs/harmony_melody.h1
-rw-r--r--src/devices/bus/vme/vme.cpp2
-rw-r--r--src/devices/bus/vme/vme_fccpu20.cpp2
-rw-r--r--src/devices/bus/vme/vme_fccpu20.h1
-rw-r--r--src/devices/bus/vme/vme_fcisio.cpp2
-rw-r--r--src/devices/bus/vme/vme_fcisio.h1
-rw-r--r--src/devices/bus/vme/vme_fcscsi.cpp2
-rw-r--r--src/devices/bus/vme/vme_fcscsi.h1
-rw-r--r--src/devices/bus/vme/vme_hcpu30.cpp2
-rw-r--r--src/devices/bus/vme/vme_hcpu30.h1
-rw-r--r--src/devices/bus/vme/vme_mvme350.cpp2
-rw-r--r--src/devices/bus/vme/vme_mvme350.h1
-rw-r--r--src/devices/bus/vtech/memexp/floppy.cpp2
-rw-r--r--src/devices/bus/vtech/memexp/floppy.h2
-rw-r--r--src/devices/bus/wangpc/rtc.cpp4
-rw-r--r--src/devices/bus/wangpc/rtc.h2
-rw-r--r--src/devices/bus/wangpc/tig.cpp4
-rw-r--r--src/devices/bus/wangpc/tig.h2
-rw-r--r--src/devices/bus/wangpc/wdc.cpp4
-rw-r--r--src/devices/bus/wangpc/wdc.h2
-rw-r--r--src/devices/cpu/alto2/alto2cpu.cpp6
-rw-r--r--src/devices/cpu/alto2/alto2cpu.h6
-rw-r--r--src/devices/cpu/amis2000/amis2000.cpp14
-rw-r--r--src/devices/cpu/amis2000/amis2000.h4
-rw-r--r--src/devices/cpu/arcompact/arcompact.cpp4
-rw-r--r--src/devices/cpu/arcompact/arcompact.h1
-rw-r--r--src/devices/cpu/arm7/lpc210x.cpp4
-rw-r--r--src/devices/cpu/arm7/lpc210x.h1
-rw-r--r--src/devices/cpu/avr8/avr8.cpp16
-rw-r--r--src/devices/cpu/avr8/avr8.h4
-rw-r--r--src/devices/cpu/cop400/cop400.cpp46
-rw-r--r--src/devices/cpu/cop400/cop400.h6
-rw-r--r--src/devices/cpu/dsp56k/dsp56k.cpp8
-rw-r--r--src/devices/cpu/dsp56k/dsp56k.h2
-rw-r--r--src/devices/cpu/e0c6200/e0c6s46.cpp6
-rw-r--r--src/devices/cpu/e0c6200/e0c6s46.h2
-rw-r--r--src/devices/cpu/e132xs/e132xs.cpp40
-rw-r--r--src/devices/cpu/e132xs/e132xs.h6
-rw-r--r--src/devices/cpu/g65816/g65816.cpp6
-rw-r--r--src/devices/cpu/g65816/g65816.h1
-rw-r--r--src/devices/cpu/h8/h8.cpp2
-rw-r--r--src/devices/cpu/h8/h8.h2
-rw-r--r--src/devices/cpu/h8/h83002.cpp4
-rw-r--r--src/devices/cpu/h8/h83002.h2
-rw-r--r--src/devices/cpu/h8/h83006.cpp4
-rw-r--r--src/devices/cpu/h8/h83006.h2
-rw-r--r--src/devices/cpu/h8/h83008.cpp4
-rw-r--r--src/devices/cpu/h8/h83008.h2
-rw-r--r--src/devices/cpu/h8/h83048.cpp4
-rw-r--r--src/devices/cpu/h8/h83048.h2
-rw-r--r--src/devices/cpu/h8/h83337.cpp4
-rw-r--r--src/devices/cpu/h8/h83337.h2
-rw-r--r--src/devices/cpu/h8/h8h.cpp2
-rw-r--r--src/devices/cpu/h8/h8h.h2
-rw-r--r--src/devices/cpu/h8/h8s2000.cpp2
-rw-r--r--src/devices/cpu/h8/h8s2000.h2
-rw-r--r--src/devices/cpu/h8/h8s2245.cpp4
-rw-r--r--src/devices/cpu/h8/h8s2245.h2
-rw-r--r--src/devices/cpu/h8/h8s2320.cpp4
-rw-r--r--src/devices/cpu/h8/h8s2320.h2
-rw-r--r--src/devices/cpu/h8/h8s2357.cpp4
-rw-r--r--src/devices/cpu/h8/h8s2357.h2
-rw-r--r--src/devices/cpu/h8/h8s2600.cpp2
-rw-r--r--src/devices/cpu/h8/h8s2600.h2
-rw-r--r--src/devices/cpu/h8/h8s2655.cpp4
-rw-r--r--src/devices/cpu/h8/h8s2655.h2
-rw-r--r--src/devices/cpu/hmcs40/hmcs40.cpp14
-rw-r--r--src/devices/cpu/hmcs40/hmcs40.h4
-rw-r--r--src/devices/cpu/lc8670/lc8670.cpp4
-rw-r--r--src/devices/cpu/lc8670/lc8670.h1
-rw-r--r--src/devices/cpu/m37710/m37710.cpp18
-rw-r--r--src/devices/cpu/m37710/m37710.h10
-rw-r--r--src/devices/cpu/m6502/m3745x.cpp4
-rw-r--r--src/devices/cpu/m6502/m3745x.h1
-rw-r--r--src/devices/cpu/m6502/m5074x.cpp8
-rw-r--r--src/devices/cpu/m6502/m5074x.h2
-rw-r--r--src/devices/cpu/m6502/n2a03.cpp4
-rw-r--r--src/devices/cpu/m6502/n2a03.h1
-rw-r--r--src/devices/cpu/m6800/m6800.cpp6
-rw-r--r--src/devices/cpu/m6800/m6801.cpp6
-rw-r--r--src/devices/cpu/m6800/m6801.h3
-rw-r--r--src/devices/cpu/m6805/m6805.cpp2
-rw-r--r--src/devices/cpu/m6805/m6805.h2
-rw-r--r--src/devices/cpu/m6805/m68705.cpp16
-rw-r--r--src/devices/cpu/m6805/m68705.h10
-rw-r--r--src/devices/cpu/m6805/m68hc05.cpp16
-rw-r--r--src/devices/cpu/m6805/m68hc05.h10
-rw-r--r--src/devices/cpu/mb86235/mb86235.cpp8
-rw-r--r--src/devices/cpu/mb86235/mb86235.h2
-rw-r--r--src/devices/cpu/mb88xx/mb88xx.cpp18
-rw-r--r--src/devices/cpu/mb88xx/mb88xx.h7
-rw-r--r--src/devices/cpu/mcs48/mcs48.cpp16
-rw-r--r--src/devices/cpu/mcs48/mcs48.h6
-rw-r--r--src/devices/cpu/mcs51/mcs51.cpp12
-rw-r--r--src/devices/cpu/mcs51/mcs51.h4
-rw-r--r--src/devices/cpu/melps4/m58846.cpp6
-rw-r--r--src/devices/cpu/melps4/m58846.h2
-rw-r--r--src/devices/cpu/mn10200/mn10200.cpp4
-rw-r--r--src/devices/cpu/mn10200/mn10200.h1
-rw-r--r--src/devices/cpu/nec/v53.cpp4
-rw-r--r--src/devices/cpu/nec/v53.h1
-rw-r--r--src/devices/cpu/patinhofeio/patinho_feio.cpp4
-rw-r--r--src/devices/cpu/patinhofeio/patinhofeio_cpu.h1
-rw-r--r--src/devices/cpu/pic16c5x/pic16c5x.cpp14
-rw-r--r--src/devices/cpu/pic16c5x/pic16c5x.h5
-rw-r--r--src/devices/cpu/pic16c62x/pic16c62x.cpp16
-rw-r--r--src/devices/cpu/pic16c62x/pic16c62x.h6
-rw-r--r--src/devices/cpu/powerpc/ppc.h1
-rw-r--r--src/devices/cpu/powerpc/ppccom.cpp18
-rw-r--r--src/devices/cpu/psx/psx.cpp4
-rw-r--r--src/devices/cpu/psx/psx.h1
-rw-r--r--src/devices/cpu/scudsp/scudsp.cpp8
-rw-r--r--src/devices/cpu/scudsp/scudsp.h2
-rw-r--r--src/devices/cpu/sh/sh2.cpp12
-rw-r--r--src/devices/cpu/sh/sh2.h3
-rw-r--r--src/devices/cpu/sh/sh4.cpp10
-rw-r--r--src/devices/cpu/sh/sh4.h2
-rw-r--r--src/devices/cpu/sh/sh7604_bus.cpp2
-rw-r--r--src/devices/cpu/sh/sh7604_bus.h2
-rw-r--r--src/devices/cpu/sh/sh7604_sci.cpp2
-rw-r--r--src/devices/cpu/sh/sh7604_sci.h2
-rw-r--r--src/devices/cpu/sh/sh7604_wdt.cpp2
-rw-r--r--src/devices/cpu/sh/sh7604_wdt.h2
-rw-r--r--src/devices/cpu/sharc/sharc.cpp8
-rw-r--r--src/devices/cpu/sharc/sharc.h2
-rw-r--r--src/devices/cpu/sm510/sm500core.cpp6
-rw-r--r--src/devices/cpu/sm510/sm510.h10
-rw-r--r--src/devices/cpu/sm510/sm510core.cpp6
-rw-r--r--src/devices/cpu/sm510/sm511core.cpp14
-rw-r--r--src/devices/cpu/sm510/sm590core.cpp10
-rw-r--r--src/devices/cpu/sm510/sm5acore.cpp10
-rw-r--r--src/devices/cpu/tlcs870/tlcs870.cpp4
-rw-r--r--src/devices/cpu/tlcs870/tlcs870.h2
-rw-r--r--src/devices/cpu/tlcs90/tlcs90.cpp22
-rw-r--r--src/devices/cpu/tlcs90/tlcs90.h5
-rw-r--r--src/devices/cpu/tlcs900/tlcs900.cpp16
-rw-r--r--src/devices/cpu/tlcs900/tlcs900.h4
-rw-r--r--src/devices/cpu/tms1000/tms0270.cpp6
-rw-r--r--src/devices/cpu/tms1000/tms0970.cpp16
-rw-r--r--src/devices/cpu/tms1000/tms0980.cpp14
-rw-r--r--src/devices/cpu/tms1000/tms1000.cpp24
-rw-r--r--src/devices/cpu/tms1000/tms1000c.cpp12
-rw-r--r--src/devices/cpu/tms1000/tms1100.cpp12
-rw-r--r--src/devices/cpu/tms1000/tms1400.cpp15
-rw-r--r--src/devices/cpu/tms1000/tms1k_base.h10
-rw-r--r--src/devices/cpu/tms1000/tp0320.cpp6
-rw-r--r--src/devices/cpu/tms32010/tms32010.cpp10
-rw-r--r--src/devices/cpu/tms32010/tms32010.h2
-rw-r--r--src/devices/cpu/tms32025/tms32025.cpp8
-rw-r--r--src/devices/cpu/tms32025/tms32025.h2
-rw-r--r--src/devices/cpu/tms32031/tms32031.cpp8
-rw-r--r--src/devices/cpu/tms32031/tms32031.h2
-rw-r--r--src/devices/cpu/tms32051/tms32051.cpp12
-rw-r--r--src/devices/cpu/tms32051/tms32051.h4
-rw-r--r--src/devices/cpu/tms32082/tms32082.cpp8
-rw-r--r--src/devices/cpu/tms32082/tms32082.h2
-rw-r--r--src/devices/cpu/tms57002/tms57002.cpp4
-rw-r--r--src/devices/cpu/tms57002/tms57002.h1
-rw-r--r--src/devices/cpu/tms7000/tms7000.cpp40
-rw-r--r--src/devices/cpu/tms7000/tms7000.h8
-rw-r--r--src/devices/cpu/ucom4/ucom4.cpp18
-rw-r--r--src/devices/cpu/ucom4/ucom4.h4
-rw-r--r--src/devices/cpu/upd7810/upd7810.cpp12
-rw-r--r--src/devices/cpu/upd7810/upd7810.h3
-rw-r--r--src/devices/cpu/upd7810/upd7811.cpp4
-rw-r--r--src/devices/cpu/z8/z8.cpp14
-rw-r--r--src/devices/cpu/z8/z8.h6
-rw-r--r--src/devices/cpu/z80/tmpz84c011.cpp4
-rw-r--r--src/devices/cpu/z80/tmpz84c011.h1
-rw-r--r--src/devices/cpu/z80/tmpz84c015.cpp4
-rw-r--r--src/devices/cpu/z80/tmpz84c015.h1
-rw-r--r--src/devices/machine/6522via.cpp2
-rw-r--r--src/devices/machine/6522via.h2
-rw-r--r--src/devices/machine/68307.cpp4
-rw-r--r--src/devices/machine/68307.h1
-rw-r--r--src/devices/machine/68340.cpp4
-rw-r--r--src/devices/machine/68340.h1
-rw-r--r--src/devices/machine/at28c16.cpp4
-rw-r--r--src/devices/machine/at28c16.h1
-rw-r--r--src/devices/machine/atmel_arm_aic.cpp2
-rw-r--r--src/devices/machine/atmel_arm_aic.h2
-rw-r--r--src/devices/machine/bankdev.cpp8
-rw-r--r--src/devices/machine/bankdev.h8
-rw-r--r--src/devices/machine/cs8221.cpp2
-rw-r--r--src/devices/machine/cs8221.h2
-rw-r--r--src/devices/machine/er2055.cpp4
-rw-r--r--src/devices/machine/er2055.h1
-rw-r--r--src/devices/machine/genpc.cpp4
-rw-r--r--src/devices/machine/genpc.h4
-rw-r--r--src/devices/machine/gt64xxx.cpp12
-rw-r--r--src/devices/machine/gt64xxx.h11
-rw-r--r--src/devices/machine/i6300esb.cpp8
-rw-r--r--src/devices/machine/i6300esb.h6
-rw-r--r--src/devices/machine/i80130.cpp4
-rw-r--r--src/devices/machine/i80130.h4
-rw-r--r--src/devices/machine/i8155.cpp4
-rw-r--r--src/devices/machine/i8155.h1
-rw-r--r--src/devices/machine/i82371sb.cpp6
-rw-r--r--src/devices/machine/i82371sb.h4
-rw-r--r--src/devices/machine/i82439hx.cpp4
-rw-r--r--src/devices/machine/i82439hx.h2
-rw-r--r--src/devices/machine/i82439tx.cpp4
-rw-r--r--src/devices/machine/i82439tx.h2
-rw-r--r--src/devices/machine/i82541.cpp6
-rw-r--r--src/devices/machine/i82541.h6
-rw-r--r--src/devices/machine/i8271.cpp2
-rw-r--r--src/devices/machine/i8271.h2
-rw-r--r--src/devices/machine/i82875p.cpp8
-rw-r--r--src/devices/machine/i82875p.h6
-rw-r--r--src/devices/machine/ie15.cpp4
-rw-r--r--src/devices/machine/ie15.h2
-rw-r--r--src/devices/machine/k054321.cpp4
-rw-r--r--src/devices/machine/k054321.h4
-rw-r--r--src/devices/machine/ldpr8210.cpp4
-rw-r--r--src/devices/machine/ldpr8210.h2
-rw-r--r--src/devices/machine/ldv1000.cpp4
-rw-r--r--src/devices/machine/ldv1000.h2
-rw-r--r--src/devices/machine/ldvp931.cpp2
-rw-r--r--src/devices/machine/ldvp931.h1
-rw-r--r--src/devices/machine/linflash.cpp12
-rw-r--r--src/devices/machine/linflash.h3
-rw-r--r--src/devices/machine/lpc-acpi.cpp2
-rw-r--r--src/devices/machine/lpc-acpi.h2
-rw-r--r--src/devices/machine/lpc-pit.cpp2
-rw-r--r--src/devices/machine/lpc-pit.h2
-rw-r--r--src/devices/machine/lpc-rtc.cpp4
-rw-r--r--src/devices/machine/lpc-rtc.h4
-rw-r--r--src/devices/machine/mb8795.cpp2
-rw-r--r--src/devices/machine/mb8795.h2
-rw-r--r--src/devices/machine/mcf5206e.cpp4
-rw-r--r--src/devices/machine/mcf5206e.h1
-rw-r--r--src/devices/machine/mos6530n.cpp10
-rw-r--r--src/devices/machine/mos6530n.h10
-rw-r--r--src/devices/machine/mpu401.cpp4
-rw-r--r--src/devices/machine/mpu401.h2
-rw-r--r--src/devices/machine/ncr5380n.cpp2
-rw-r--r--src/devices/machine/ncr5380n.h2
-rw-r--r--src/devices/machine/ncr5390.cpp10
-rw-r--r--src/devices/machine/ncr5390.h6
-rw-r--r--src/devices/machine/pc_fdc.cpp6
-rw-r--r--src/devices/machine/pc_fdc.h6
-rw-r--r--src/devices/machine/pci-ide.cpp14
-rw-r--r--src/devices/machine/pci-ide.h12
-rw-r--r--src/devices/machine/pci-sata.cpp12
-rw-r--r--src/devices/machine/pci-sata.h12
-rw-r--r--src/devices/machine/pci-smbus.cpp2
-rw-r--r--src/devices/machine/pci-smbus.h2
-rw-r--r--src/devices/machine/pci-usb.cpp6
-rw-r--r--src/devices/machine/pci-usb.h6
-rw-r--r--src/devices/machine/pci.cpp8
-rw-r--r--src/devices/machine/pci.h12
-rw-r--r--src/devices/machine/pci9050.cpp9
-rw-r--r--src/devices/machine/pci9050.h9
-rw-r--r--src/devices/machine/pdc.cpp4
-rw-r--r--src/devices/machine/pdc.h2
-rw-r--r--src/devices/machine/sega_scu.cpp2
-rw-r--r--src/devices/machine/sega_scu.h2
-rw-r--r--src/devices/machine/sis85c496.cpp8
-rw-r--r--src/devices/machine/sis85c496.h4
-rw-r--r--src/devices/machine/smioc.cpp2
-rw-r--r--src/devices/machine/smioc.h1
-rw-r--r--src/devices/machine/smpc.cpp4
-rw-r--r--src/devices/machine/smpc.h3
-rw-r--r--src/devices/machine/tc009xlvc.cpp4
-rw-r--r--src/devices/machine/tc009xlvc.h1
-rw-r--r--src/devices/machine/tmp68301.cpp4
-rw-r--r--src/devices/machine/tmp68301.h1
-rw-r--r--src/devices/machine/tms5501.cpp2
-rw-r--r--src/devices/machine/tms5501.h2
-rw-r--r--src/devices/machine/upd765.cpp26
-rw-r--r--src/devices/machine/upd765.h30
-rw-r--r--src/devices/machine/vrc4373.cpp10
-rw-r--r--src/devices/machine/vrc4373.h8
-rw-r--r--src/devices/machine/vrc5074.cpp12
-rw-r--r--src/devices/machine/vrc5074.h16
-rw-r--r--src/devices/machine/x2212.cpp8
-rw-r--r--src/devices/machine/x2212.h2
-rw-r--r--src/devices/sound/bsmt2000.cpp4
-rw-r--r--src/devices/sound/bsmt2000.h2
-rw-r--r--src/devices/sound/cdp1869.cpp10
-rw-r--r--src/devices/sound/cdp1869.h7
-rw-r--r--src/devices/sound/dave.cpp12
-rw-r--r--src/devices/sound/dave.h6
-rw-r--r--src/devices/sound/es1373.cpp2
-rw-r--r--src/devices/sound/es1373.h2
-rw-r--r--src/devices/sound/mos6560.cpp8
-rw-r--r--src/devices/sound/mos6560.h2
-rw-r--r--src/devices/sound/mos7360.cpp4
-rw-r--r--src/devices/sound/mos7360.h1
-rw-r--r--src/devices/sound/pci-ac97.cpp8
-rw-r--r--src/devices/sound/pci-ac97.h8
-rw-r--r--src/devices/sound/qs1000.cpp4
-rw-r--r--src/devices/sound/qs1000.h2
-rw-r--r--src/devices/sound/qsound.cpp4
-rw-r--r--src/devices/sound/qsound.h2
-rw-r--r--src/devices/sound/sb0400.cpp2
-rw-r--r--src/devices/sound/sb0400.h2
-rw-r--r--src/devices/sound/upd7752.cpp4
-rw-r--r--src/devices/sound/upd7752.h1
-rw-r--r--src/devices/video/315_5124.cpp4
-rw-r--r--src/devices/video/315_5124.h1
-rw-r--r--src/devices/video/bt459.cpp2
-rw-r--r--src/devices/video/bt459.h2
-rw-r--r--src/devices/video/crt9007.cpp4
-rw-r--r--src/devices/video/crt9007.h1
-rw-r--r--src/devices/video/ef9345.cpp4
-rw-r--r--src/devices/video/ef9345.h1
-rw-r--r--src/devices/video/ef9364.cpp4
-rw-r--r--src/devices/video/ef9364.h1
-rw-r--r--src/devices/video/ef9365.cpp4
-rw-r--r--src/devices/video/ef9365.h1
-rw-r--r--src/devices/video/gf7600gs.cpp6
-rw-r--r--src/devices/video/gf7600gs.h6
-rw-r--r--src/devices/video/hd61830.cpp4
-rw-r--r--src/devices/video/hd61830.h1
-rw-r--r--src/devices/video/hd66421.cpp4
-rw-r--r--src/devices/video/hd66421.h1
-rw-r--r--src/devices/video/huc6271.cpp6
-rw-r--r--src/devices/video/huc6271.h3
-rw-r--r--src/devices/video/huc6272.cpp8
-rw-r--r--src/devices/video/huc6272.h2
-rw-r--r--src/devices/video/imagetek_i4100.cpp6
-rw-r--r--src/devices/video/imagetek_i4100.h6
-rw-r--r--src/devices/video/jangou_blitter.cpp4
-rw-r--r--src/devices/video/jangou_blitter.h4
-rw-r--r--src/devices/video/m50458.cpp4
-rw-r--r--src/devices/video/m50458.h1
-rw-r--r--src/devices/video/mb90082.cpp4
-rw-r--r--src/devices/video/mb90082.h1
-rw-r--r--src/devices/video/mb_vcu.cpp8
-rw-r--r--src/devices/video/mb_vcu.h2
-rw-r--r--src/devices/video/mc6845.cpp4
-rw-r--r--src/devices/video/mc6845.h1
-rw-r--r--src/devices/video/mos6566.cpp8
-rw-r--r--src/devices/video/mos6566.h2
-rw-r--r--src/devices/video/msm6255.cpp6
-rw-r--r--src/devices/video/msm6255.h3
-rw-r--r--src/devices/video/ppu2c0x.cpp4
-rw-r--r--src/devices/video/ppu2c0x.h1
-rw-r--r--src/devices/video/ramdac.cpp4
-rw-r--r--src/devices/video/ramdac.h1
-rw-r--r--src/devices/video/scn2674.cpp4
-rw-r--r--src/devices/video/scn2674.h1
-rw-r--r--src/devices/video/sed1330.cpp4
-rw-r--r--src/devices/video/sed1330.h1
-rw-r--r--src/devices/video/tms3556.cpp4
-rw-r--r--src/devices/video/tms3556.h1
-rw-r--r--src/devices/video/tms9928a.cpp5
-rw-r--r--src/devices/video/tms9928a.h1
-rw-r--r--src/devices/video/upd7220.cpp4
-rw-r--r--src/devices/video/upd7220.h1
-rw-r--r--src/devices/video/upd7227.cpp4
-rw-r--r--src/devices/video/upd7227.h1
-rw-r--r--src/devices/video/v9938.cpp4
-rw-r--r--src/devices/video/v9938.h1
-rw-r--r--src/devices/video/voodoo_pci.cpp12
-rw-r--r--src/devices/video/voodoo_pci.h10
-rw-r--r--src/emu/addrmap.cpp387
-rw-r--r--src/emu/addrmap.h389
-rw-r--r--src/emu/devcpu.h2
-rw-r--r--src/emu/dimemory.cpp52
-rw-r--r--src/emu/dimemory.h11
-rw-r--r--src/emu/drivers/testcpu.cpp3
-rw-r--r--src/emu/emu.h3
-rw-r--r--src/emu/emumem.cpp119
-rw-r--r--src/emu/emumem.h25
-rw-r--r--src/emu/machine.cpp4
-rw-r--r--src/emu/machine.h1
-rw-r--r--src/mame/audio/atarijsa.cpp10
-rw-r--r--src/mame/audio/atarijsa.h5
-rw-r--r--src/mame/audio/cage.cpp4
-rw-r--r--src/mame/audio/cage.h2
-rw-r--r--src/mame/audio/carnival.cpp2
-rw-r--r--src/mame/audio/cinemat.cpp4
-rw-r--r--src/mame/audio/csd.cpp2
-rw-r--r--src/mame/audio/csd.h1
-rw-r--r--src/mame/audio/dcs.cpp38
-rw-r--r--src/mame/audio/dcs.h19
-rw-r--r--src/mame/audio/decobsmt.cpp4
-rw-r--r--src/mame/audio/decobsmt.h2
-rw-r--r--src/mame/audio/dkong.cpp12
-rw-r--r--src/mame/audio/dsbz80.cpp4
-rw-r--r--src/mame/audio/dsbz80.h2
-rw-r--r--src/mame/audio/efo_zsu.cpp6
-rw-r--r--src/mame/audio/efo_zsu.h3
-rw-r--r--src/mame/audio/exidy.cpp8
-rw-r--r--src/mame/audio/exidy440.cpp2
-rw-r--r--src/mame/audio/exidy440.h3
-rw-r--r--src/mame/audio/flower.cpp4
-rw-r--r--src/mame/audio/flower.h5
-rw-r--r--src/mame/audio/gottlieb.cpp8
-rw-r--r--src/mame/audio/gottlieb.h4
-rw-r--r--src/mame/audio/harddriv.cpp6
-rw-r--r--src/mame/audio/hng64.cpp4
-rw-r--r--src/mame/audio/hyprolyb.h1
-rw-r--r--src/mame/audio/irem.cpp8
-rw-r--r--src/mame/audio/irem.h4
-rw-r--r--src/mame/audio/jedi.cpp2
-rw-r--r--src/mame/audio/leland.cpp51
-rw-r--r--src/mame/audio/leland.h5
-rw-r--r--src/mame/audio/mario.cpp6
-rw-r--r--src/mame/audio/midway.cpp10
-rw-r--r--src/mame/audio/midway.h5
-rw-r--r--src/mame/audio/n8080.cpp4
-rw-r--r--src/mame/audio/nichisnd.cpp4
-rw-r--r--src/mame/audio/nichisnd.h2
-rw-r--r--src/mame/audio/qix.cpp2
-rw-r--r--src/mame/audio/rax.cpp6
-rw-r--r--src/mame/audio/rax.h3
-rw-r--r--src/mame/audio/redalert.cpp6
-rw-r--r--src/mame/audio/s11c_bg.cpp2
-rw-r--r--src/mame/audio/s11c_bg.h1
-rw-r--r--src/mame/audio/scramble.cpp4
-rw-r--r--src/mame/audio/segam1audio.cpp6
-rw-r--r--src/mame/audio/segam1audio.h3
-rw-r--r--src/mame/audio/segasnd.cpp31
-rw-r--r--src/mame/audio/segasnd.h18
-rw-r--r--src/mame/audio/seibu.cpp2
-rw-r--r--src/mame/audio/seibu.h6
-rw-r--r--src/mame/audio/t5182.cpp4
-rw-r--r--src/mame/audio/t5182.h2
-rw-r--r--src/mame/audio/taito_en.cpp2
-rw-r--r--src/mame/audio/taito_en.h1
-rw-r--r--src/mame/audio/taito_zm.cpp12
-rw-r--r--src/mame/audio/taito_zm.h9
-rw-r--r--src/mame/audio/timeplt.cpp4
-rw-r--r--src/mame/audio/timeplt.h2
-rw-r--r--src/mame/audio/turrett.cpp2
-rw-r--r--src/mame/audio/williams.cpp10
-rw-r--r--src/mame/audio/williams.h5
-rw-r--r--src/mame/audio/wpcsnd.cpp2
-rw-r--r--src/mame/audio/wpcsnd.h1
-rw-r--r--src/mame/audio/zaccaria.cpp8
-rw-r--r--src/mame/audio/zaccaria.h4
-rw-r--r--src/mame/drivers/1942.cpp10
-rw-r--r--src/mame/drivers/1943.cpp4
-rw-r--r--src/mame/drivers/1945kiii.cpp9
-rw-r--r--src/mame/drivers/20pacgal.cpp16
-rw-r--r--src/mame/drivers/24cdjuke.cpp6
-rw-r--r--src/mame/drivers/2mindril.cpp4
-rw-r--r--src/mame/drivers/30test.cpp6
-rw-r--r--src/mame/drivers/39in1.cpp5
-rw-r--r--src/mame/drivers/3do.cpp6
-rw-r--r--src/mame/drivers/3x3puzzl.cpp3
-rw-r--r--src/mame/drivers/4004clk.cpp25
-rw-r--r--src/mame/drivers/40love.cpp8
-rw-r--r--src/mame/drivers/4dpi.cpp3
-rw-r--r--src/mame/drivers/4enlinea.cpp12
-rw-r--r--src/mame/drivers/4enraya.cpp8
-rw-r--r--src/mame/drivers/4roses.cpp5
-rw-r--r--src/mame/drivers/5clown.cpp6
-rw-r--r--src/mame/drivers/68ksbc.cpp3
-rw-r--r--src/mame/drivers/8080bw.cpp74
-rw-r--r--src/mame/drivers/88games.cpp4
-rw-r--r--src/mame/drivers/a2600.cpp2
-rw-r--r--src/mame/drivers/a5105.cpp9
-rw-r--r--src/mame/drivers/a51xx.cpp12
-rw-r--r--src/mame/drivers/a6809.cpp6
-rw-r--r--src/mame/drivers/a7150.cpp15
-rw-r--r--src/mame/drivers/a7800.cpp3
-rw-r--r--src/mame/drivers/aa310.cpp3
-rw-r--r--src/mame/drivers/abc1600.cpp4
-rw-r--r--src/mame/drivers/abc80.cpp4
-rw-r--r--src/mame/drivers/abc80x.cpp16
-rw-r--r--src/mame/drivers/ac1.cpp6
-rw-r--r--src/mame/drivers/accomm.cpp3
-rw-r--r--src/mame/drivers/ace.cpp3
-rw-r--r--src/mame/drivers/aceex.cpp3
-rw-r--r--src/mame/drivers/acefruit.cpp6
-rw-r--r--src/mame/drivers/aces1.cpp6
-rw-r--r--src/mame/drivers/acesp.cpp6
-rw-r--r--src/mame/drivers/acommand.cpp3
-rw-r--r--src/mame/drivers/acrnsys1.cpp3
-rw-r--r--src/mame/drivers/actfancr.cpp6
-rw-r--r--src/mame/drivers/acvirus.cpp3
-rw-r--r--src/mame/drivers/adam.cpp8
-rw-r--r--src/mame/drivers/adp.cpp27
-rw-r--r--src/mame/drivers/advision.cpp4
-rw-r--r--src/mame/drivers/aeroboto.cpp4
-rw-r--r--src/mame/drivers/aerofgt.cpp50
-rw-r--r--src/mame/drivers/agat.cpp6
-rw-r--r--src/mame/drivers/age_candy.cpp3
-rw-r--r--src/mame/drivers/aim65.cpp2
-rw-r--r--src/mame/drivers/aim65_40.cpp3
-rw-r--r--src/mame/drivers/airbustr.cpp12
-rw-r--r--src/mame/drivers/airraid.cpp16
-rw-r--r--src/mame/drivers/ajax.cpp6
-rw-r--r--src/mame/drivers/akaiax80.cpp3
-rw-r--r--src/mame/drivers/albazc.cpp3
-rw-r--r--src/mame/drivers/albazg.cpp6
-rw-r--r--src/mame/drivers/aleck64.cpp9
-rw-r--r--src/mame/drivers/alesis.cpp10
-rw-r--r--src/mame/drivers/alesis_qs.cpp3
-rw-r--r--src/mame/drivers/alg.cpp15
-rw-r--r--src/mame/drivers/alien.cpp3
-rw-r--r--src/mame/drivers/aliens.cpp6
-rw-r--r--src/mame/drivers/alinvade.cpp3
-rw-r--r--src/mame/drivers/allied.cpp3
-rw-r--r--src/mame/drivers/alpha68k.cpp30
-rw-r--r--src/mame/drivers/alphasma.cpp9
-rw-r--r--src/mame/drivers/alphatpx.cpp24
-rw-r--r--src/mame/drivers/alphatro.cpp15
-rw-r--r--src/mame/drivers/altair.cpp6
-rw-r--r--src/mame/drivers/alto2.cpp9
-rw-r--r--src/mame/drivers/altos2.cpp6
-rw-r--r--src/mame/drivers/altos486.cpp12
-rw-r--r--src/mame/drivers/altos5.cpp6
-rw-r--r--src/mame/drivers/altos8600.cpp23
-rw-r--r--src/mame/drivers/alvg.cpp3
-rw-r--r--src/mame/drivers/amaticmg.cpp12
-rw-r--r--src/mame/drivers/ambush.cpp9
-rw-r--r--src/mame/drivers/amerihok.cpp6
-rw-r--r--src/mame/drivers/amico2k.cpp3
-rw-r--r--src/mame/drivers/amiga.cpp57
-rw-r--r--src/mame/drivers/ampex.cpp3
-rw-r--r--src/mame/drivers/ampoker2.cpp4
-rw-r--r--src/mame/drivers/ampro.cpp6
-rw-r--r--src/mame/drivers/amspdwy.cpp6
-rw-r--r--src/mame/drivers/amstr_pc.cpp12
-rw-r--r--src/mame/drivers/amstrad.cpp4
-rw-r--r--src/mame/drivers/amusco.cpp6
-rw-r--r--src/mame/drivers/amust.cpp6
-rw-r--r--src/mame/drivers/anes.cpp6
-rw-r--r--src/mame/drivers/angelkds.cpp12
-rw-r--r--src/mame/drivers/anzterm.cpp3
-rw-r--r--src/mame/drivers/apc.cpp12
-rw-r--r--src/mame/drivers/apexc.cpp3
-rw-r--r--src/mame/drivers/apf.cpp6
-rw-r--r--src/mame/drivers/apogee.cpp3
-rw-r--r--src/mame/drivers/apollo.cpp12
-rw-r--r--src/mame/drivers/apple1.cpp3
-rw-r--r--src/mame/drivers/apple2.cpp6
-rw-r--r--src/mame/drivers/apple2e.cpp51
-rw-r--r--src/mame/drivers/apple2gs.cpp2
-rw-r--r--src/mame/drivers/apple3.cpp2
-rw-r--r--src/mame/drivers/applix.cpp15
-rw-r--r--src/mame/drivers/appoooh.cpp10
-rw-r--r--src/mame/drivers/apricot.cpp6
-rw-r--r--src/mame/drivers/apricotf.cpp6
-rw-r--r--src/mame/drivers/apricotp.cpp12
-rw-r--r--src/mame/drivers/aquarium.cpp6
-rw-r--r--src/mame/drivers/aquarius.cpp4
-rw-r--r--src/mame/drivers/arabian.cpp4
-rw-r--r--src/mame/drivers/arachnid.cpp3
-rw-r--r--src/mame/drivers/arcadecl.cpp2
-rw-r--r--src/mame/drivers/arcadia.cpp2
-rw-r--r--src/mame/drivers/argo.cpp6
-rw-r--r--src/mame/drivers/argox.cpp6
-rw-r--r--src/mame/drivers/argus.cpp14
-rw-r--r--src/mame/drivers/aristmk4.cpp6
-rw-r--r--src/mame/drivers/aristmk5.cpp9
-rw-r--r--src/mame/drivers/aristmk6.cpp6
-rw-r--r--src/mame/drivers/arkanoid.cpp14
-rw-r--r--src/mame/drivers/armedf.cpp30
-rw-r--r--src/mame/drivers/arsystems.cpp12
-rw-r--r--src/mame/drivers/artmagic.cpp16
-rw-r--r--src/mame/drivers/ashnojoe.cpp6
-rw-r--r--src/mame/drivers/asst128.cpp10
-rw-r--r--src/mame/drivers/asterix.cpp4
-rw-r--r--src/mame/drivers/asteroid.cpp6
-rw-r--r--src/mame/drivers/astinvad.cpp12
-rw-r--r--src/mame/drivers/astrafr.cpp12
-rw-r--r--src/mame/drivers/astrcorp.cpp12
-rw-r--r--src/mame/drivers/astrocde.cpp34
-rw-r--r--src/mame/drivers/astrof.cpp6
-rw-r--r--src/mame/drivers/astrohome.cpp6
-rw-r--r--src/mame/drivers/astropc.cpp6
-rw-r--r--src/mame/drivers/asuka.cpp18
-rw-r--r--src/mame/drivers/at.cpp42
-rw-r--r--src/mame/drivers/atari400.cpp21
-rw-r--r--src/mame/drivers/atari_s1.cpp9
-rw-r--r--src/mame/drivers/atari_s2.cpp6
-rw-r--r--src/mame/drivers/atarifb.cpp8
-rw-r--r--src/mame/drivers/atarig1.cpp2
-rw-r--r--src/mame/drivers/atarig42.cpp2
-rw-r--r--src/mame/drivers/atarigt.cpp2
-rw-r--r--src/mame/drivers/atarigx2.cpp2
-rw-r--r--src/mame/drivers/atarist.cpp14
-rw-r--r--src/mame/drivers/atarisy1.cpp4
-rw-r--r--src/mame/drivers/atarisy2.cpp4
-rw-r--r--src/mame/drivers/atarisy4.cpp15
-rw-r--r--src/mame/drivers/atetris.cpp6
-rw-r--r--src/mame/drivers/atlantis.cpp20
-rw-r--r--src/mame/drivers/atm.cpp11
-rw-r--r--src/mame/drivers/atom.cpp6
-rw-r--r--src/mame/drivers/atpci.cpp6
-rw-r--r--src/mame/drivers/atronic.cpp6
-rw-r--r--src/mame/drivers/att4425.cpp6
-rw-r--r--src/mame/drivers/att630.cpp3
-rw-r--r--src/mame/drivers/attache.cpp15
-rw-r--r--src/mame/drivers/attckufo.cpp9
-rw-r--r--src/mame/drivers/atvtrack.cpp18
-rw-r--r--src/mame/drivers/aussiebyte.cpp4
-rw-r--r--src/mame/drivers/avalnche.cpp4
-rw-r--r--src/mame/drivers/avigo.cpp6
-rw-r--r--src/mame/drivers/avt.cpp6
-rw-r--r--src/mame/drivers/ax20.cpp6
-rw-r--r--src/mame/drivers/aztarac.cpp4
-rw-r--r--src/mame/drivers/b16.cpp6
-rw-r--r--src/mame/drivers/b2m.cpp6
-rw-r--r--src/mame/drivers/babbage.cpp6
-rw-r--r--src/mame/drivers/backfire.cpp3
-rw-r--r--src/mame/drivers/badlands.cpp8
-rw-r--r--src/mame/drivers/bagman.cpp6
-rw-r--r--src/mame/drivers/balsente.cpp11
-rw-r--r--src/mame/drivers/banctec.cpp6
-rw-r--r--src/mame/drivers/bankp.cpp4
-rw-r--r--src/mame/drivers/baraduke.cpp6
-rw-r--r--src/mame/drivers/barata.cpp3
-rw-r--r--src/mame/drivers/barni.cpp9
-rw-r--r--src/mame/drivers/bartop52.cpp3
-rw-r--r--src/mame/drivers/basic52.cpp6
-rw-r--r--src/mame/drivers/batman.cpp2
-rw-r--r--src/mame/drivers/battlane.cpp2
-rw-r--r--src/mame/drivers/battlera.cpp6
-rw-r--r--src/mame/drivers/battlex.cpp6
-rw-r--r--src/mame/drivers/battlnts.cpp4
-rw-r--r--src/mame/drivers/bbc.cpp16
-rw-r--r--src/mame/drivers/bbcbc.cpp10
-rw-r--r--src/mame/drivers/bbusters.cpp10
-rw-r--r--src/mame/drivers/bcs3.cpp9
-rw-r--r--src/mame/drivers/beaminv.cpp6
-rw-r--r--src/mame/drivers/beathead.cpp2
-rw-r--r--src/mame/drivers/bebox.cpp4
-rw-r--r--src/mame/drivers/beehive.cpp6
-rw-r--r--src/mame/drivers/beezer.cpp9
-rw-r--r--src/mame/drivers/belatra.cpp3
-rw-r--r--src/mame/drivers/berzerk.cpp9
-rw-r--r--src/mame/drivers/besta.cpp3
-rw-r--r--src/mame/drivers/bestleag.cpp3
-rw-r--r--src/mame/drivers/beta.cpp3
-rw-r--r--src/mame/drivers/bfcobra.cpp12
-rw-r--r--src/mame/drivers/bfm_ad5.cpp2
-rw-r--r--src/mame/drivers/bfm_sc1.cpp9
-rw-r--r--src/mame/drivers/bfm_sc2.cpp9
-rw-r--r--src/mame/drivers/bfm_sc4.cpp4
-rw-r--r--src/mame/drivers/bfm_sc5.cpp2
-rw-r--r--src/mame/drivers/bfm_swp.cpp3
-rw-r--r--src/mame/drivers/bfmsys83.cpp3
-rw-r--r--src/mame/drivers/bfmsys85.cpp3
-rw-r--r--src/mame/drivers/bgt.cpp6
-rw-r--r--src/mame/drivers/big10.cpp6
-rw-r--r--src/mame/drivers/bigbord2.cpp6
-rw-r--r--src/mame/drivers/bigevglf.cpp10
-rw-r--r--src/mame/drivers/bigstrkb.cpp2
-rw-r--r--src/mame/drivers/binbug.cpp12
-rw-r--r--src/mame/drivers/bingo.cpp9
-rw-r--r--src/mame/drivers/bingoc.cpp9
-rw-r--r--src/mame/drivers/bingoman.cpp6
-rw-r--r--src/mame/drivers/bingor.cpp21
-rw-r--r--src/mame/drivers/bingowav.cpp12
-rw-r--r--src/mame/drivers/bionicc.cpp4
-rw-r--r--src/mame/drivers/bishi.cpp2
-rw-r--r--src/mame/drivers/bitgraph.cpp9
-rw-r--r--src/mame/drivers/bk.cpp4
-rw-r--r--src/mame/drivers/bking.cpp8
-rw-r--r--src/mame/drivers/blackt96.cpp6
-rw-r--r--src/mame/drivers/bladestl.cpp4
-rw-r--r--src/mame/drivers/blitz68k.cpp30
-rw-r--r--src/mame/drivers/blktiger.cpp12
-rw-r--r--src/mame/drivers/blmbycar.cpp8
-rw-r--r--src/mame/drivers/blockade.cpp6
-rw-r--r--src/mame/drivers/blockhl.cpp9
-rw-r--r--src/mame/drivers/blockout.cpp6
-rw-r--r--src/mame/drivers/bloodbro.cpp10
-rw-r--r--src/mame/drivers/blstroid.cpp2
-rw-r--r--src/mame/drivers/blueprnt.cpp8
-rw-r--r--src/mame/drivers/bmcbowl.cpp6
-rw-r--r--src/mame/drivers/bmcpokr.cpp9
-rw-r--r--src/mame/drivers/bmjr.cpp3
-rw-r--r--src/mame/drivers/bml3.cpp9
-rw-r--r--src/mame/drivers/bnstars.cpp6
-rw-r--r--src/mame/drivers/bntyhunt.cpp3
-rw-r--r--src/mame/drivers/bob85.cpp6
-rw-r--r--src/mame/drivers/bogeyman.cpp2
-rw-r--r--src/mame/drivers/bombjack.cpp6
-rw-r--r--src/mame/drivers/boogwing.cpp8
-rw-r--r--src/mame/drivers/bottom9.cpp4
-rw-r--r--src/mame/drivers/bowltry.cpp3
-rw-r--r--src/mame/drivers/boxer.cpp3
-rw-r--r--src/mame/drivers/bpmmicro.cpp6
-rw-r--r--src/mame/drivers/br8641.cpp6
-rw-r--r--src/mame/drivers/brkthru.cpp6
-rw-r--r--src/mame/drivers/bsktball.cpp2
-rw-r--r--src/mame/drivers/btime.cpp20
-rw-r--r--src/mame/drivers/btoads.cpp6
-rw-r--r--src/mame/drivers/bublbobl.cpp22
-rw-r--r--src/mame/drivers/buggychl.cpp4
-rw-r--r--src/mame/drivers/bullet.cpp8
-rw-r--r--src/mame/drivers/busicom.cpp10
-rw-r--r--src/mame/drivers/buster.cpp3
-rw-r--r--src/mame/drivers/bw12.cpp4
-rw-r--r--src/mame/drivers/bw2.cpp6
-rw-r--r--src/mame/drivers/bwidow.cpp6
-rw-r--r--src/mame/drivers/bwing.cpp10
-rw-r--r--src/mame/drivers/by17.cpp3
-rw-r--r--src/mame/drivers/by35.cpp6
-rw-r--r--src/mame/drivers/by6803.cpp6
-rw-r--r--src/mame/drivers/by68701.cpp3
-rw-r--r--src/mame/drivers/byvid.cpp15
-rw-r--r--src/mame/drivers/bzone.cpp4
-rw-r--r--src/mame/drivers/c10.cpp6
-rw-r--r--src/mame/drivers/c128.cpp18
-rw-r--r--src/mame/drivers/c64.cpp9
-rw-r--r--src/mame/drivers/c65.cpp3
-rw-r--r--src/mame/drivers/c80.cpp4
-rw-r--r--src/mame/drivers/c900.cpp9
-rw-r--r--src/mame/drivers/cabal.cpp28
-rw-r--r--src/mame/drivers/cabaret.cpp6
-rw-r--r--src/mame/drivers/calchase.cpp6
-rw-r--r--src/mame/drivers/calcune.cpp3
-rw-r--r--src/mame/drivers/calomega.cpp8
-rw-r--r--src/mame/drivers/calorie.cpp16
-rw-r--r--src/mame/drivers/camplynx.cpp15
-rw-r--r--src/mame/drivers/candela.cpp6
-rw-r--r--src/mame/drivers/canon_s80.cpp3
-rw-r--r--src/mame/drivers/canyon.cpp2
-rw-r--r--src/mame/drivers/capbowl.cpp6
-rw-r--r--src/mame/drivers/capcom.cpp3
-rw-r--r--src/mame/drivers/capr1.cpp3
-rw-r--r--src/mame/drivers/caprcyc.cpp3
-rw-r--r--src/mame/drivers/cardline.cpp6
-rw-r--r--src/mame/drivers/carjmbre.cpp9
-rw-r--r--src/mame/drivers/carpolo.cpp2
-rw-r--r--src/mame/drivers/carrera.cpp6
-rw-r--r--src/mame/drivers/casloopy.cpp6
-rw-r--r--src/mame/drivers/castle.cpp9
-rw-r--r--src/mame/drivers/caswin.cpp6
-rw-r--r--src/mame/drivers/cat.cpp3
-rw-r--r--src/mame/drivers/cave.cpp64
-rw-r--r--src/mame/drivers/cavepc.cpp6
-rw-r--r--src/mame/drivers/cb2001.cpp6
-rw-r--r--src/mame/drivers/cball.cpp3
-rw-r--r--src/mame/drivers/cbasebal.cpp8
-rw-r--r--src/mame/drivers/cbm2.cpp18
-rw-r--r--src/mame/drivers/cbuster.cpp4
-rw-r--r--src/mame/drivers/cc40.cpp3
-rw-r--r--src/mame/drivers/ccastles.cpp2
-rw-r--r--src/mame/drivers/cchance.cpp3
-rw-r--r--src/mame/drivers/cchasm.cpp6
-rw-r--r--src/mame/drivers/cclimber.cpp38
-rw-r--r--src/mame/drivers/ccs2810.cpp9
-rw-r--r--src/mame/drivers/ccs300.cpp6
-rw-r--r--src/mame/drivers/cd2650.cpp9
-rw-r--r--src/mame/drivers/cdc721.cpp6
-rw-r--r--src/mame/drivers/cdi.cpp12
-rw-r--r--src/mame/drivers/cedar_magnet.cpp15
-rw-r--r--src/mame/drivers/centiped.cpp24
-rw-r--r--src/mame/drivers/cesclass.cpp3
-rw-r--r--src/mame/drivers/cfx9850.cpp3
-rw-r--r--src/mame/drivers/cgc7900.cpp4
-rw-r--r--src/mame/drivers/cgenie.cpp6
-rw-r--r--src/mame/drivers/chaknpop.cpp2
-rw-r--r--src/mame/drivers/cham24.cpp3
-rw-r--r--src/mame/drivers/champbas.cpp22
-rw-r--r--src/mame/drivers/champbwl.cpp6
-rw-r--r--src/mame/drivers/chanbara.cpp3
-rw-r--r--src/mame/drivers/chance32.cpp6
-rw-r--r--src/mame/drivers/changela.cpp2
-rw-r--r--src/mame/drivers/channelf.cpp4
-rw-r--r--src/mame/drivers/chaos.cpp9
-rw-r--r--src/mame/drivers/cheekyms.cpp4
-rw-r--r--src/mame/drivers/chessmst.cpp12
-rw-r--r--src/mame/drivers/chesstrv.cpp9
-rw-r--r--src/mame/drivers/chexx.cpp6
-rw-r--r--src/mame/drivers/chihiro.cpp6
-rw-r--r--src/mame/drivers/chinagat.cpp18
-rw-r--r--src/mame/drivers/chinsan.cpp14
-rw-r--r--src/mame/drivers/chqflag.cpp6
-rw-r--r--src/mame/drivers/chsuper.cpp9
-rw-r--r--src/mame/drivers/cidelsa.cpp16
-rw-r--r--src/mame/drivers/cinemat.cpp16
-rw-r--r--src/mame/drivers/circus.cpp2
-rw-r--r--src/mame/drivers/circusc.cpp4
-rw-r--r--src/mame/drivers/cischeat.cpp42
-rw-r--r--src/mame/drivers/cit220.cpp9
-rw-r--r--src/mame/drivers/citycon.cpp4
-rw-r--r--src/mame/drivers/ckz80.cpp6
-rw-r--r--src/mame/drivers/clayshoo.cpp6
-rw-r--r--src/mame/drivers/clcd.cpp6
-rw-r--r--src/mame/drivers/cliffhgr.cpp6
-rw-r--r--src/mame/drivers/cloak.cpp4
-rw-r--r--src/mame/drivers/cloud9.cpp2
-rw-r--r--src/mame/drivers/clowndwn.cpp3
-rw-r--r--src/mame/drivers/clpoker.cpp9
-rw-r--r--src/mame/drivers/clshroad.cpp4
-rw-r--r--src/mame/drivers/cm1800.cpp6
-rw-r--r--src/mame/drivers/cmi.cpp18
-rw-r--r--src/mame/drivers/cmmb.cpp3
-rw-r--r--src/mame/drivers/cninja.cpp22
-rw-r--r--src/mame/drivers/cntsteer.cpp15
-rw-r--r--src/mame/drivers/cobra.cpp9
-rw-r--r--src/mame/drivers/coco12.cpp4
-rw-r--r--src/mame/drivers/coco3.cpp2
-rw-r--r--src/mame/drivers/cocoloco.cpp3
-rw-r--r--src/mame/drivers/codata.cpp3
-rw-r--r--src/mame/drivers/coinmstr.cpp21
-rw-r--r--src/mame/drivers/coinmvga.cpp12
-rw-r--r--src/mame/drivers/coleco.cpp6
-rw-r--r--src/mame/drivers/combatsc.cpp8
-rw-r--r--src/mame/drivers/comebaby.cpp6
-rw-r--r--src/mame/drivers/commando.cpp8
-rw-r--r--src/mame/drivers/compc.cpp9
-rw-r--r--src/mame/drivers/compgolf.cpp2
-rw-r--r--src/mame/drivers/compis.cpp9
-rw-r--r--src/mame/drivers/compucolor.cpp6
-rw-r--r--src/mame/drivers/comquest.cpp2
-rw-r--r--src/mame/drivers/comx35.cpp4
-rw-r--r--src/mame/drivers/concept.cpp2
-rw-r--r--src/mame/drivers/contra.cpp4
-rw-r--r--src/mame/drivers/controlid.cpp6
-rw-r--r--src/mame/drivers/coolpool.cpp14
-rw-r--r--src/mame/drivers/coolridr.cpp15
-rw-r--r--src/mame/drivers/cop01.cpp12
-rw-r--r--src/mame/drivers/cops.cpp6
-rw-r--r--src/mame/drivers/copsnrob.cpp2
-rw-r--r--src/mame/drivers/corona.cpp48
-rw-r--r--src/mame/drivers/cortex.cpp6
-rw-r--r--src/mame/drivers/cosmic.cpp10
-rw-r--r--src/mame/drivers/cosmicos.cpp4
-rw-r--r--src/mame/drivers/cp1.cpp3
-rw-r--r--src/mame/drivers/cps1.cpp18
-rw-r--r--src/mame/drivers/cps2.cpp8
-rw-r--r--src/mame/drivers/cps3.cpp6
-rw-r--r--src/mame/drivers/craft.cpp9
-rw-r--r--src/mame/drivers/crbaloon.cpp4
-rw-r--r--src/mame/drivers/crgolf.cpp14
-rw-r--r--src/mame/drivers/crimfght.cpp6
-rw-r--r--src/mame/drivers/crospang.cpp12
-rw-r--r--src/mame/drivers/crshrace.cpp6
-rw-r--r--src/mame/drivers/crvision.cpp4
-rw-r--r--src/mame/drivers/crystal.cpp12
-rw-r--r--src/mame/drivers/csplayh5.cpp9
-rw-r--r--src/mame/drivers/cswat.cpp3
-rw-r--r--src/mame/drivers/ct486.cpp6
-rw-r--r--src/mame/drivers/cubeqst.cpp9
-rw-r--r--src/mame/drivers/cubo.cpp6
-rw-r--r--src/mame/drivers/cultures.cpp12
-rw-r--r--src/mame/drivers/cupidon.cpp3
-rw-r--r--src/mame/drivers/cv1k.cpp9
-rw-r--r--src/mame/drivers/cvicny.cpp3
-rw-r--r--src/mame/drivers/cvs.cpp10
-rw-r--r--src/mame/drivers/cxgz80.cpp3
-rw-r--r--src/mame/drivers/cxhumax.cpp2
-rw-r--r--src/mame/drivers/cyberbal.cpp10
-rw-r--r--src/mame/drivers/cybertnk.cpp9
-rw-r--r--src/mame/drivers/cybiko.cpp12
-rw-r--r--src/mame/drivers/cybstorm.cpp4
-rw-r--r--src/mame/drivers/cyclemb.cpp15
-rw-r--r--src/mame/drivers/czk80.cpp6
-rw-r--r--src/mame/drivers/d400.cpp3
-rw-r--r--src/mame/drivers/d6800.cpp3
-rw-r--r--src/mame/drivers/d6809.cpp3
-rw-r--r--src/mame/drivers/d9final.cpp6
-rw-r--r--src/mame/drivers/dacholer.cpp21
-rw-r--r--src/mame/drivers/dai.cpp4
-rw-r--r--src/mame/drivers/dai3wksi.cpp3
-rw-r--r--src/mame/drivers/dambustr.cpp3
-rw-r--r--src/mame/drivers/darius.cpp10
-rw-r--r--src/mame/drivers/darkmist.cpp6
-rw-r--r--src/mame/drivers/darkseal.cpp4
-rw-r--r--src/mame/drivers/daruma.cpp6
-rw-r--r--src/mame/drivers/dassault.cpp6
-rw-r--r--src/mame/drivers/datum.cpp3
-rw-r--r--src/mame/drivers/dblcrown.cpp6
-rw-r--r--src/mame/drivers/dblewing.cpp14
-rw-r--r--src/mame/drivers/dbox.cpp3
-rw-r--r--src/mame/drivers/dbz.cpp6
-rw-r--r--src/mame/drivers/dccons.cpp6
-rw-r--r--src/mame/drivers/dcheese.cpp4
-rw-r--r--src/mame/drivers/dcon.cpp4
-rw-r--r--src/mame/drivers/dct11em.cpp3
-rw-r--r--src/mame/drivers/dday.cpp2
-rw-r--r--src/mame/drivers/ddayjlc.cpp6
-rw-r--r--src/mame/drivers/ddealer.cpp3
-rw-r--r--src/mame/drivers/ddenlovr.cpp146
-rw-r--r--src/mame/drivers/ddragon.cpp16
-rw-r--r--src/mame/drivers/ddragon3.cpp12
-rw-r--r--src/mame/drivers/ddribble.cpp8
-rw-r--r--src/mame/drivers/de_2.cpp3
-rw-r--r--src/mame/drivers/deadang.cpp10
-rw-r--r--src/mame/drivers/dec0.cpp32
-rw-r--r--src/mame/drivers/dec8.cpp38
-rw-r--r--src/mame/drivers/deco156.cpp6
-rw-r--r--src/mame/drivers/deco32.cpp24
-rw-r--r--src/mame/drivers/deco_ld.cpp6
-rw-r--r--src/mame/drivers/deco_mlc.cpp4
-rw-r--r--src/mame/drivers/decocass.cpp4
-rw-r--r--src/mame/drivers/dectalk.cpp9
-rw-r--r--src/mame/drivers/decwritr.cpp6
-rw-r--r--src/mame/drivers/deniam.cpp8
-rw-r--r--src/mame/drivers/deshoros.cpp3
-rw-r--r--src/mame/drivers/destroyr.cpp3
-rw-r--r--src/mame/drivers/dfruit.cpp6
-rw-r--r--src/mame/drivers/dgn_beta.cpp2
-rw-r--r--src/mame/drivers/dgpix.cpp6
-rw-r--r--src/mame/drivers/didact.cpp6
-rw-r--r--src/mame/drivers/dietgo.cpp8
-rw-r--r--src/mame/drivers/digel804.cpp12
-rw-r--r--src/mame/drivers/digijet.cpp3
-rw-r--r--src/mame/drivers/dim68k.cpp3
-rw-r--r--src/mame/drivers/discoboy.cpp12
-rw-r--r--src/mame/drivers/divebomb.cpp12
-rw-r--r--src/mame/drivers/diverboy.cpp6
-rw-r--r--src/mame/drivers/djboy.cpp14
-rw-r--r--src/mame/drivers/djmain.cpp10
-rw-r--r--src/mame/drivers/dkong.cpp16
-rw-r--r--src/mame/drivers/dlair.cpp9
-rw-r--r--src/mame/drivers/dlair2.cpp6
-rw-r--r--src/mame/drivers/dm7000.cpp2
-rw-r--r--src/mame/drivers/dmax8000.cpp6
-rw-r--r--src/mame/drivers/dmndrby.cpp6
-rw-r--r--src/mame/drivers/dms5000.cpp6
-rw-r--r--src/mame/drivers/dms86.cpp6
-rw-r--r--src/mame/drivers/dmv.cpp9
-rw-r--r--src/mame/drivers/docastle.cpp14
-rw-r--r--src/mame/drivers/dogfgt.cpp4
-rw-r--r--src/mame/drivers/dolphunk.cpp6
-rw-r--r--src/mame/drivers/dominob.cpp6
-rw-r--r--src/mame/drivers/dooyong.cpp36
-rw-r--r--src/mame/drivers/dorachan.cpp6
-rw-r--r--src/mame/drivers/dotrikun.cpp6
-rw-r--r--src/mame/drivers/dps1.cpp6
-rw-r--r--src/mame/drivers/dragon.cpp2
-rw-r--r--src/mame/drivers/dragrace.cpp2
-rw-r--r--src/mame/drivers/dreambal.cpp3
-rw-r--r--src/mame/drivers/dreamwld.cpp12
-rw-r--r--src/mame/drivers/drgnmst.cpp2
-rw-r--r--src/mame/drivers/dribling.cpp4
-rw-r--r--src/mame/drivers/drmicro.cpp4
-rw-r--r--src/mame/drivers/drtomy.cpp3
-rw-r--r--src/mame/drivers/drw80pkr.cpp6
-rw-r--r--src/mame/drivers/dsb46.cpp6
-rw-r--r--src/mame/drivers/dual68.cpp9
-rw-r--r--src/mame/drivers/dunhuang.cpp9
-rw-r--r--src/mame/drivers/dvk_kcgd.cpp3
-rw-r--r--src/mame/drivers/dvk_ksm.cpp6
-rw-r--r--src/mame/drivers/dwarfd.cpp15
-rw-r--r--src/mame/drivers/dynadice.cpp12
-rw-r--r--src/mame/drivers/dynax.cpp71
-rw-r--r--src/mame/drivers/dynduke.cpp14
-rw-r--r--src/mame/drivers/e100.cpp3
-rw-r--r--src/mame/drivers/eacc.cpp3
-rw-r--r--src/mame/drivers/ec184x.cpp18
-rw-r--r--src/mame/drivers/ec65.cpp6
-rw-r--r--src/mame/drivers/ecoinf1.cpp6
-rw-r--r--src/mame/drivers/ecoinf2.cpp6
-rw-r--r--src/mame/drivers/ecoinf3.cpp6
-rw-r--r--src/mame/drivers/ecoinfr.cpp6
-rw-r--r--src/mame/drivers/egghunt.cpp9
-rw-r--r--src/mame/drivers/einstein.cpp6
-rw-r--r--src/mame/drivers/electron.cpp2
-rw-r--r--src/mame/drivers/elekscmp.cpp3
-rw-r--r--src/mame/drivers/elektronmono.cpp3
-rw-r--r--src/mame/drivers/elf.cpp4
-rw-r--r--src/mame/drivers/elwro800.cpp17
-rw-r--r--src/mame/drivers/embargo.cpp9
-rw-r--r--src/mame/drivers/enigma2.cpp12
-rw-r--r--src/mame/drivers/enmirage.cpp3
-rw-r--r--src/mame/drivers/eolith.cpp6
-rw-r--r--src/mame/drivers/eolith16.cpp3
-rw-r--r--src/mame/drivers/ep64.cpp15
-rw-r--r--src/mame/drivers/epos.cpp8
-rw-r--r--src/mame/drivers/eprom.cpp6
-rw-r--r--src/mame/drivers/equites.cpp17
-rw-r--r--src/mame/drivers/ertictac.cpp3
-rw-r--r--src/mame/drivers/esd16.cpp14
-rw-r--r--src/mame/drivers/esh.cpp6
-rw-r--r--src/mame/drivers/espial.cpp8
-rw-r--r--src/mame/drivers/esprit.cpp6
-rw-r--r--src/mame/drivers/esq1.cpp6
-rw-r--r--src/mame/drivers/esq5505.cpp12
-rw-r--r--src/mame/drivers/esqasr.cpp6
-rw-r--r--src/mame/drivers/esqkt.cpp3
-rw-r--r--src/mame/drivers/esqmr.cpp3
-rw-r--r--src/mame/drivers/esripsys.cpp8
-rw-r--r--src/mame/drivers/et3400.cpp3
-rw-r--r--src/mame/drivers/eti660.cpp4
-rw-r--r--src/mame/drivers/ettrivia.cpp6
-rw-r--r--src/mame/drivers/eurocom2.cpp6
-rw-r--r--src/mame/drivers/europc.cpp6
-rw-r--r--src/mame/drivers/evmbug.cpp6
-rw-r--r--src/mame/drivers/excali64.cpp6
-rw-r--r--src/mame/drivers/exedexes.cpp4
-rw-r--r--src/mame/drivers/exelv.cpp6
-rw-r--r--src/mame/drivers/exerion.cpp4
-rw-r--r--src/mame/drivers/exidy.cpp16
-rw-r--r--src/mame/drivers/exidy440.cpp2
-rw-r--r--src/mame/drivers/exp85.cpp4
-rw-r--r--src/mame/drivers/expro02.cpp33
-rw-r--r--src/mame/drivers/exprraid.cpp6
-rw-r--r--src/mame/drivers/exterm.cpp8
-rw-r--r--src/mame/drivers/extrema.cpp6
-rw-r--r--src/mame/drivers/exzisus.cpp8
-rw-r--r--src/mame/drivers/ez2d.cpp3
-rw-r--r--src/mame/drivers/f-32.cpp12
-rw-r--r--src/mame/drivers/f1gp.cpp14
-rw-r--r--src/mame/drivers/famibox.cpp3
-rw-r--r--src/mame/drivers/fantland.cpp18
-rw-r--r--src/mame/drivers/fanucs15.cpp12
-rw-r--r--src/mame/drivers/fanucspmg.cpp9
-rw-r--r--src/mame/drivers/fastfred.cpp8
-rw-r--r--src/mame/drivers/fastinvaders.cpp12
-rw-r--r--src/mame/drivers/fastlane.cpp2
-rw-r--r--src/mame/drivers/fb01.cpp6
-rw-r--r--src/mame/drivers/fc100.cpp6
-rw-r--r--src/mame/drivers/fccpu30.cpp3
-rw-r--r--src/mame/drivers/fcombat.cpp4
-rw-r--r--src/mame/drivers/fcrash.cpp32
-rw-r--r--src/mame/drivers/feversoc.cpp3
-rw-r--r--src/mame/drivers/fgoal.cpp2
-rw-r--r--src/mame/drivers/fidel6502.cpp48
-rw-r--r--src/mame/drivers/fidel68k.cpp24
-rw-r--r--src/mame/drivers/fidelmcs48.cpp3
-rw-r--r--src/mame/drivers/fidelz80.cpp36
-rw-r--r--src/mame/drivers/finalizr.cpp6
-rw-r--r--src/mame/drivers/fireball.cpp6
-rw-r--r--src/mame/drivers/firebeat.cpp6
-rw-r--r--src/mame/drivers/firefox.cpp6
-rw-r--r--src/mame/drivers/firetrap.cpp8
-rw-r--r--src/mame/drivers/firetrk.cpp6
-rw-r--r--src/mame/drivers/fitfight.cpp6
-rw-r--r--src/mame/drivers/fk1.cpp6
-rw-r--r--src/mame/drivers/flicker.cpp15
-rw-r--r--src/mame/drivers/flipjack.cpp12
-rw-r--r--src/mame/drivers/flkatck.cpp4
-rw-r--r--src/mame/drivers/flower.cpp6
-rw-r--r--src/mame/drivers/flstory.cpp14
-rw-r--r--src/mame/drivers/flyball.cpp3
-rw-r--r--src/mame/drivers/fm7.cpp26
-rw-r--r--src/mame/drivers/fmtowns.cpp10
-rw-r--r--src/mame/drivers/fontwriter.cpp6
-rw-r--r--src/mame/drivers/foodf.cpp2
-rw-r--r--src/mame/drivers/force68k.cpp3
-rw-r--r--src/mame/drivers/forte2.cpp6
-rw-r--r--src/mame/drivers/fortecar.cpp6
-rw-r--r--src/mame/drivers/fp1100.cpp9
-rw-r--r--src/mame/drivers/fp200.cpp6
-rw-r--r--src/mame/drivers/fp6000.cpp6
-rw-r--r--src/mame/drivers/freekick.cpp26
-rw-r--r--src/mame/drivers/fresh.cpp3
-rw-r--r--src/mame/drivers/fromanc2.cpp14
-rw-r--r--src/mame/drivers/fromance.cpp14
-rw-r--r--src/mame/drivers/fruitpc.cpp6
-rw-r--r--src/mame/drivers/ft68m.cpp3
-rw-r--r--src/mame/drivers/funkball.cpp9
-rw-r--r--src/mame/drivers/funkybee.cpp4
-rw-r--r--src/mame/drivers/funkyjet.cpp4
-rw-r--r--src/mame/drivers/funtech.cpp6
-rw-r--r--src/mame/drivers/funworld.cpp20
-rw-r--r--src/mame/drivers/funybubl.cpp6
-rw-r--r--src/mame/drivers/fuukifg2.cpp6
-rw-r--r--src/mame/drivers/fuukifg3.cpp6
-rw-r--r--src/mame/drivers/g627.cpp6
-rw-r--r--src/mame/drivers/gaelco.cpp19
-rw-r--r--src/mame/drivers/gaelco2.cpp16
-rw-r--r--src/mame/drivers/gaelco3d.cpp31
-rw-r--r--src/mame/drivers/gaelcopc.cpp3
-rw-r--r--src/mame/drivers/gaiden.cpp14
-rw-r--r--src/mame/drivers/gal3.cpp15
-rw-r--r--src/mame/drivers/galaga.cpp16
-rw-r--r--src/mame/drivers/galastrm.cpp2
-rw-r--r--src/mame/drivers/galaxi.cpp6
-rw-r--r--src/mame/drivers/galaxia.cpp8
-rw-r--r--src/mame/drivers/galaxian.cpp92
-rw-r--r--src/mame/drivers/galaxold.cpp58
-rw-r--r--src/mame/drivers/galaxy.cpp6
-rw-r--r--src/mame/drivers/galeb.cpp2
-rw-r--r--src/mame/drivers/galgame.cpp3
-rw-r--r--src/mame/drivers/galgames.cpp12
-rw-r--r--src/mame/drivers/galivan.cpp12
-rw-r--r--src/mame/drivers/galpani2.cpp4
-rw-r--r--src/mame/drivers/galpani3.cpp3
-rw-r--r--src/mame/drivers/galpanic.cpp6
-rw-r--r--src/mame/drivers/galspnbl.cpp4
-rw-r--r--src/mame/drivers/gamate.cpp3
-rw-r--r--src/mame/drivers/gambl186.cpp6
-rw-r--r--src/mame/drivers/gamecom.cpp2
-rw-r--r--src/mame/drivers/gamecstl.cpp6
-rw-r--r--src/mame/drivers/gamecube.cpp3
-rw-r--r--src/mame/drivers/gameking.cpp3
-rw-r--r--src/mame/drivers/gameplan.cpp6
-rw-r--r--src/mame/drivers/gamepock.cpp2
-rw-r--r--src/mame/drivers/gammagic.cpp6
-rw-r--r--src/mame/drivers/gamtor.cpp3
-rw-r--r--src/mame/drivers/gaplus.cpp6
-rw-r--r--src/mame/drivers/gatron.cpp4
-rw-r--r--src/mame/drivers/gauntlet.cpp4
-rw-r--r--src/mame/drivers/gb.cpp8
-rw-r--r--src/mame/drivers/gba.cpp2
-rw-r--r--src/mame/drivers/gberet.cpp6
-rw-r--r--src/mame/drivers/gcpinbal.cpp2
-rw-r--r--src/mame/drivers/gei.cpp27
-rw-r--r--src/mame/drivers/geneve.cpp6
-rw-r--r--src/mame/drivers/geniusiq.cpp3
-rw-r--r--src/mame/drivers/genpc.cpp6
-rw-r--r--src/mame/drivers/ggconnie.cpp6
-rw-r--r--src/mame/drivers/ghosteo.cpp6
-rw-r--r--src/mame/drivers/giclassic.cpp6
-rw-r--r--src/mame/drivers/gijoe.cpp4
-rw-r--r--src/mame/drivers/gimix.cpp9
-rw-r--r--src/mame/drivers/ginganin.cpp4
-rw-r--r--src/mame/drivers/gizmondo.cpp3
-rw-r--r--src/mame/drivers/gkigt.cpp10
-rw-r--r--src/mame/drivers/gladiatr.cpp18
-rw-r--r--src/mame/drivers/glasgow.cpp9
-rw-r--r--src/mame/drivers/glass.cpp6
-rw-r--r--src/mame/drivers/globalfr.cpp3
-rw-r--r--src/mame/drivers/globalvr.cpp3
-rw-r--r--src/mame/drivers/gluck2.cpp3
-rw-r--r--src/mame/drivers/gmaster.cpp3
-rw-r--r--src/mame/drivers/gng.cpp6
-rw-r--r--src/mame/drivers/go2000.cpp9
-rw-r--r--src/mame/drivers/goal92.cpp4
-rw-r--r--src/mame/drivers/goindol.cpp4
-rw-r--r--src/mame/drivers/gokidetor.cpp6
-rw-r--r--src/mame/drivers/goldngam.cpp6
-rw-r--r--src/mame/drivers/goldnpkr.cpp42
-rw-r--r--src/mame/drivers/goldstar.cpp58
-rw-r--r--src/mame/drivers/gomoku.cpp2
-rw-r--r--src/mame/drivers/good.cpp3
-rw-r--r--src/mame/drivers/goodejan.cpp18
-rw-r--r--src/mame/drivers/gotcha.cpp4
-rw-r--r--src/mame/drivers/gottlieb.cpp4
-rw-r--r--src/mame/drivers/gotya.cpp2
-rw-r--r--src/mame/drivers/goupil.cpp12
-rw-r--r--src/mame/drivers/gp2x.cpp3
-rw-r--r--src/mame/drivers/gp32.cpp2
-rw-r--r--src/mame/drivers/gp_1.cpp6
-rw-r--r--src/mame/drivers/gp_2.cpp6
-rw-r--r--src/mame/drivers/gpworld.cpp6
-rw-r--r--src/mame/drivers/gradius3.cpp6
-rw-r--r--src/mame/drivers/grchamp.cpp10
-rw-r--r--src/mame/drivers/grfd2301.cpp6
-rw-r--r--src/mame/drivers/gridcomp.cpp9
-rw-r--r--src/mame/drivers/gridlee.cpp5
-rw-r--r--src/mame/drivers/groundfx.cpp2
-rw-r--r--src/mame/drivers/gstream.cpp12
-rw-r--r--src/mame/drivers/gstriker.cpp8
-rw-r--r--src/mame/drivers/gsword.cpp16
-rw-r--r--src/mame/drivers/gticlub.cpp18
-rw-r--r--src/mame/drivers/gts1.cpp9
-rw-r--r--src/mame/drivers/gts3.cpp3
-rw-r--r--src/mame/drivers/gts3a.cpp6
-rw-r--r--src/mame/drivers/gts80.cpp3
-rw-r--r--src/mame/drivers/gts80a.cpp9
-rw-r--r--src/mame/drivers/gts80b.cpp3
-rw-r--r--src/mame/drivers/guab.cpp3
-rw-r--r--src/mame/drivers/gumbo.cpp6
-rw-r--r--src/mame/drivers/gunbustr.cpp2
-rw-r--r--src/mame/drivers/gundealr.cpp8
-rw-r--r--src/mame/drivers/gunpey.cpp6
-rw-r--r--src/mame/drivers/gunsmoke.cpp4
-rw-r--r--src/mame/drivers/gyruss.cpp12
-rw-r--r--src/mame/drivers/h19.cpp6
-rw-r--r--src/mame/drivers/h8.cpp6
-rw-r--r--src/mame/drivers/h89.cpp6
-rw-r--r--src/mame/drivers/halleys.cpp6
-rw-r--r--src/mame/drivers/hanaawas.cpp4
-rw-r--r--src/mame/drivers/hankin.cpp6
-rw-r--r--src/mame/drivers/hapyfish.cpp3
-rw-r--r--src/mame/drivers/harddriv.cpp34
-rw-r--r--src/mame/drivers/harriet.cpp3
-rw-r--r--src/mame/drivers/hazelgr.cpp6
-rw-r--r--src/mame/drivers/hazeltin.cpp6
-rw-r--r--src/mame/drivers/hcastle.cpp4
-rw-r--r--src/mame/drivers/headonb.cpp6
-rw-r--r--src/mame/drivers/hec2hrp.cpp18
-rw-r--r--src/mame/drivers/hexion.cpp4
-rw-r--r--src/mame/drivers/hideseek.cpp3
-rw-r--r--src/mame/drivers/higemaru.cpp2
-rw-r--r--src/mame/drivers/highvdeo.cpp45
-rw-r--r--src/mame/drivers/hikaru.cpp6
-rw-r--r--src/mame/drivers/himesiki.cpp8
-rw-r--r--src/mame/drivers/hitme.cpp4
-rw-r--r--src/mame/drivers/hitpoker.cpp6
-rw-r--r--src/mame/drivers/hk68v10.cpp3
-rw-r--r--src/mame/drivers/hnayayoi.cpp10
-rw-r--r--src/mame/drivers/hng64.cpp2
-rw-r--r--src/mame/drivers/holeland.cpp6
-rw-r--r--src/mame/drivers/homedata.cpp20
-rw-r--r--src/mame/drivers/homelab.cpp15
-rw-r--r--src/mame/drivers/homerun.cpp4
-rw-r--r--src/mame/drivers/homez80.cpp6
-rw-r--r--src/mame/drivers/horizon.cpp6
-rw-r--r--src/mame/drivers/hornet.cpp15
-rw-r--r--src/mame/drivers/hotblock.cpp6
-rw-r--r--src/mame/drivers/hotstuff.cpp9
-rw-r--r--src/mame/drivers/hp16500.cpp12
-rw-r--r--src/mame/drivers/hp2620.cpp6
-rw-r--r--src/mame/drivers/hp2640.cpp6
-rw-r--r--src/mame/drivers/hp48.cpp2
-rw-r--r--src/mame/drivers/hp49gp.cpp3
-rw-r--r--src/mame/drivers/hp64k.cpp6
-rw-r--r--src/mame/drivers/hp700.cpp10
-rw-r--r--src/mame/drivers/hp80.cpp6
-rw-r--r--src/mame/drivers/hp9845.cpp4
-rw-r--r--src/mame/drivers/hp9k.cpp3
-rw-r--r--src/mame/drivers/hp9k_3xx.cpp27
-rw-r--r--src/mame/drivers/hp_ipc.cpp6
-rw-r--r--src/mame/drivers/hprot1.cpp6
-rw-r--r--src/mame/drivers/hpz80unk.cpp6
-rw-r--r--src/mame/drivers/ht68k.cpp3
-rw-r--r--src/mame/drivers/huebler.cpp4
-rw-r--r--src/mame/drivers/hunter2.cpp9
-rw-r--r--src/mame/drivers/hvyunit.cpp21
-rw-r--r--src/mame/drivers/hx20.cpp10
-rw-r--r--src/mame/drivers/hyhoo.cpp4
-rw-r--r--src/mame/drivers/hyperscan.cpp3
-rw-r--r--src/mame/drivers/hyperspt.cpp16
-rw-r--r--src/mame/drivers/hyprduel.cpp8
-rw-r--r--src/mame/drivers/i7000.cpp6
-rw-r--r--src/mame/drivers/ibm3153.cpp6
-rw-r--r--src/mame/drivers/ibm6580.cpp6
-rw-r--r--src/mame/drivers/ibmpc.cpp6
-rw-r--r--src/mame/drivers/ibmpcjr.cpp12
-rw-r--r--src/mame/drivers/icatel.cpp9
-rw-r--r--src/mame/drivers/ice_bozopail.cpp3
-rw-r--r--src/mame/drivers/ice_tbd.cpp6
-rw-r--r--src/mame/drivers/icecold.cpp3
-rw-r--r--src/mame/drivers/ichiban.cpp6
-rw-r--r--src/mame/drivers/idsa.cpp6
-rw-r--r--src/mame/drivers/if800.cpp9
-rw-r--r--src/mame/drivers/igs009.cpp9
-rw-r--r--src/mame/drivers/igs011.cpp27
-rw-r--r--src/mame/drivers/igs017.cpp41
-rw-r--r--src/mame/drivers/igs_fear.cpp3
-rw-r--r--src/mame/drivers/igs_m027.cpp3
-rw-r--r--src/mame/drivers/igs_m036.cpp3
-rw-r--r--src/mame/drivers/igspc.cpp6
-rw-r--r--src/mame/drivers/igspoker.cpp12
-rw-r--r--src/mame/drivers/ikki.cpp4
-rw-r--r--src/mame/drivers/imds.cpp6
-rw-r--r--src/mame/drivers/imds2.cpp8
-rw-r--r--src/mame/drivers/imolagp.cpp12
-rw-r--r--src/mame/drivers/imsai.cpp6
-rw-r--r--src/mame/drivers/inder.cpp18
-rw-r--r--src/mame/drivers/inderp.cpp3
-rw-r--r--src/mame/drivers/indiana.cpp3
-rw-r--r--src/mame/drivers/indigo.cpp9
-rw-r--r--src/mame/drivers/indy_indigo2.cpp3
-rw-r--r--src/mame/drivers/instantm.cpp9
-rw-r--r--src/mame/drivers/instruct.cpp9
-rw-r--r--src/mame/drivers/inteladv.cpp4
-rw-r--r--src/mame/drivers/intellec4.cpp24
-rw-r--r--src/mame/drivers/interact.cpp3
-rw-r--r--src/mame/drivers/interpro.cpp78
-rw-r--r--src/mame/drivers/intrscti.cpp12
-rw-r--r--src/mame/drivers/intv.cpp12
-rw-r--r--src/mame/drivers/inufuku.cpp6
-rw-r--r--src/mame/drivers/invqix.cpp6
-rw-r--r--src/mame/drivers/ipc.cpp6
-rw-r--r--src/mame/drivers/ipds.cpp6
-rw-r--r--src/mame/drivers/iq151.cpp6
-rw-r--r--src/mame/drivers/iqblock.cpp4
-rw-r--r--src/mame/drivers/iqunlim.cpp3
-rw-r--r--src/mame/drivers/iris3130.cpp3
-rw-r--r--src/mame/drivers/irisha.cpp6
-rw-r--r--src/mame/drivers/irobot.cpp2
-rw-r--r--src/mame/drivers/ironhors.cpp12
-rw-r--r--src/mame/drivers/isbc.cpp27
-rw-r--r--src/mame/drivers/isbc8010.cpp12
-rw-r--r--src/mame/drivers/isbc8030.cpp6
-rw-r--r--src/mame/drivers/iskr103x.cpp6
-rw-r--r--src/mame/drivers/istellar.cpp18
-rw-r--r--src/mame/drivers/istrebiteli.cpp6
-rw-r--r--src/mame/drivers/itech32.cpp16
-rw-r--r--src/mame/drivers/itech8.cpp20
-rw-r--r--src/mame/drivers/itgambl2.cpp3
-rw-r--r--src/mame/drivers/itgambl3.cpp3
-rw-r--r--src/mame/drivers/itgamble.cpp3
-rw-r--r--src/mame/drivers/itt3030.cpp9
-rw-r--r--src/mame/drivers/jack.cpp16
-rw-r--r--src/mame/drivers/jackal.cpp4
-rw-r--r--src/mame/drivers/jackie.cpp6
-rw-r--r--src/mame/drivers/jackpool.cpp3
-rw-r--r--src/mame/drivers/jade.cpp6
-rw-r--r--src/mame/drivers/jaguar.cpp20
-rw-r--r--src/mame/drivers/jailbrek.cpp4
-rw-r--r--src/mame/drivers/jalmah.cpp6
-rw-r--r--src/mame/drivers/jangou.cpp36
-rw-r--r--src/mame/drivers/jankenmn.cpp6
-rw-r--r--src/mame/drivers/jantotsu.cpp6
-rw-r--r--src/mame/drivers/jchan.cpp6
-rw-r--r--src/mame/drivers/jclub2.cpp15
-rw-r--r--src/mame/drivers/jedi.cpp2
-rw-r--r--src/mame/drivers/jeutel.cpp12
-rw-r--r--src/mame/drivers/joctronic.cpp24
-rw-r--r--src/mame/drivers/jokrwild.cpp3
-rw-r--r--src/mame/drivers/jollyjgr.cpp6
-rw-r--r--src/mame/drivers/jongkyo.cpp11
-rw-r--r--src/mame/drivers/jonos.cpp3
-rw-r--r--src/mame/drivers/joystand.cpp3
-rw-r--r--src/mame/drivers/jp.cpp6
-rw-r--r--src/mame/drivers/jpmimpct.cpp6
-rw-r--r--src/mame/drivers/jpmmps.cpp6
-rw-r--r--src/mame/drivers/jpms80.cpp6
-rw-r--r--src/mame/drivers/jpmsru.cpp9
-rw-r--r--src/mame/drivers/jpmsys5.cpp14
-rw-r--r--src/mame/drivers/jpmsys7.cpp3
-rw-r--r--src/mame/drivers/jr100.cpp3
-rw-r--r--src/mame/drivers/jr200.cpp3
-rw-r--r--src/mame/drivers/jrpacman.cpp6
-rw-r--r--src/mame/drivers/jtc.cpp12
-rw-r--r--src/mame/drivers/jubilee.cpp6
-rw-r--r--src/mame/drivers/juicebox.cpp3
-rw-r--r--src/mame/drivers/jungleyo.cpp3
-rw-r--r--src/mame/drivers/junior.cpp3
-rw-r--r--src/mame/drivers/junofrst.cpp12
-rw-r--r--src/mame/drivers/jupace.cpp6
-rw-r--r--src/mame/drivers/jupiter.cpp9
-rw-r--r--src/mame/drivers/jvh.cpp12
-rw-r--r--src/mame/drivers/k1003.cpp6
-rw-r--r--src/mame/drivers/k8915.cpp6
-rw-r--r--src/mame/drivers/kaneko16.cpp30
-rw-r--r--src/mame/drivers/kangaroo.cpp6
-rw-r--r--src/mame/drivers/karnov.cpp12
-rw-r--r--src/mame/drivers/kas89.cpp12
-rw-r--r--src/mame/drivers/kaypro.cpp6
-rw-r--r--src/mame/drivers/kc.cpp8
-rw-r--r--src/mame/drivers/kchamp.cpp20
-rw-r--r--src/mame/drivers/kdt6.cpp6
-rw-r--r--src/mame/drivers/kenseim.cpp6
-rw-r--r--src/mame/drivers/kickgoal.cpp4
-rw-r--r--src/mame/drivers/kim1.cpp2
-rw-r--r--src/mame/drivers/kingdrby.cpp27
-rw-r--r--src/mame/drivers/kingobox.cpp18
-rw-r--r--src/mame/drivers/kingpin.cpp9
-rw-r--r--src/mame/drivers/kinst.cpp3
-rw-r--r--src/mame/drivers/kissproto.cpp3
-rw-r--r--src/mame/drivers/klax.cpp6
-rw-r--r--src/mame/drivers/kncljoe.cpp6
-rw-r--r--src/mame/drivers/koftball.cpp6
-rw-r--r--src/mame/drivers/koikoi.cpp6
-rw-r--r--src/mame/drivers/konamigq.cpp12
-rw-r--r--src/mame/drivers/konamigv.cpp15
-rw-r--r--src/mame/drivers/konamigx.cpp14
-rw-r--r--src/mame/drivers/konamim2.cpp26
-rw-r--r--src/mame/drivers/konendev.cpp3
-rw-r--r--src/mame/drivers/konin.cpp15
-rw-r--r--src/mame/drivers/konmedal.cpp9
-rw-r--r--src/mame/drivers/konmedal68k.cpp3
-rw-r--r--src/mame/drivers/kontest.cpp6
-rw-r--r--src/mame/drivers/kopunch.cpp4
-rw-r--r--src/mame/drivers/kramermc.cpp4
-rw-r--r--src/mame/drivers/kron.cpp6
-rw-r--r--src/mame/drivers/krz2000.cpp3
-rw-r--r--src/mame/drivers/ksayakyu.cpp4
-rw-r--r--src/mame/drivers/ksys573.cpp18
-rw-r--r--src/mame/drivers/kungfur.cpp3
-rw-r--r--src/mame/drivers/kurukuru.cpp24
-rw-r--r--src/mame/drivers/kyocera.cpp14
-rw-r--r--src/mame/drivers/kyugo.cpp24
-rw-r--r--src/mame/drivers/labyrunr.cpp2
-rw-r--r--src/mame/drivers/ladybug.cpp6
-rw-r--r--src/mame/drivers/ladyfrog.cpp4
-rw-r--r--src/mame/drivers/laser3k.cpp6
-rw-r--r--src/mame/drivers/laserbas.cpp6
-rw-r--r--src/mame/drivers/laserbat.cpp4
-rw-r--r--src/mame/drivers/lasso.cpp20
-rw-r--r--src/mame/drivers/lastbank.cpp12
-rw-r--r--src/mame/drivers/lastduel.cpp8
-rw-r--r--src/mame/drivers/lastfght.cpp6
-rw-r--r--src/mame/drivers/lazercmd.cpp8
-rw-r--r--src/mame/drivers/lb186.cpp6
-rw-r--r--src/mame/drivers/lbeach.cpp3
-rw-r--r--src/mame/drivers/lc80.cpp6
-rw-r--r--src/mame/drivers/lcmate2.cpp6
-rw-r--r--src/mame/drivers/leapster.cpp6
-rw-r--r--src/mame/drivers/legionna.cpp32
-rw-r--r--src/mame/drivers/leland.cpp68
-rw-r--r--src/mame/drivers/lemmings.cpp4
-rw-r--r--src/mame/drivers/lethal.cpp6
-rw-r--r--src/mame/drivers/lethalj.cpp2
-rw-r--r--src/mame/drivers/lft.cpp6
-rw-r--r--src/mame/drivers/lg-dvd.cpp3
-rw-r--r--src/mame/drivers/lgp.cpp12
-rw-r--r--src/mame/drivers/liberate.cpp20
-rw-r--r--src/mame/drivers/liberatr.cpp4
-rw-r--r--src/mame/drivers/limenko.cpp15
-rw-r--r--src/mame/drivers/lisa.cpp6
-rw-r--r--src/mame/drivers/littlerb.cpp3
-rw-r--r--src/mame/drivers/lkage.cpp10
-rw-r--r--src/mame/drivers/llc.cpp8
-rw-r--r--src/mame/drivers/lockon.cpp10
-rw-r--r--src/mame/drivers/lola8a.cpp6
-rw-r--r--src/mame/drivers/looping.cpp12
-rw-r--r--src/mame/drivers/lordgun.cpp12
-rw-r--r--src/mame/drivers/lsasquad.cpp10
-rw-r--r--src/mame/drivers/ltcasino.cpp3
-rw-r--r--src/mame/drivers/ltd.cpp9
-rw-r--r--src/mame/drivers/luckgrln.cpp15
-rw-r--r--src/mame/drivers/lucky74.cpp4
-rw-r--r--src/mame/drivers/luckybal.cpp6
-rw-r--r--src/mame/drivers/lvcards.cpp8
-rw-r--r--src/mame/drivers/lviv.cpp4
-rw-r--r--src/mame/drivers/lwings.cpp20
-rw-r--r--src/mame/drivers/lwriter.cpp3
-rw-r--r--src/mame/drivers/lynx.cpp2
-rw-r--r--src/mame/drivers/m10.cpp6
-rw-r--r--src/mame/drivers/m107.cpp12
-rw-r--r--src/mame/drivers/m14.cpp6
-rw-r--r--src/mame/drivers/m20.cpp9
-rw-r--r--src/mame/drivers/m24.cpp9
-rw-r--r--src/mame/drivers/m3.cpp6
-rw-r--r--src/mame/drivers/m5.cpp12
-rw-r--r--src/mame/drivers/m52.cpp6
-rw-r--r--src/mame/drivers/m57.cpp2
-rw-r--r--src/mame/drivers/m58.cpp2
-rw-r--r--src/mame/drivers/m62.cpp38
-rw-r--r--src/mame/drivers/m63.cpp12
-rw-r--r--src/mame/drivers/m6805evs.cpp3
-rw-r--r--src/mame/drivers/m72.cpp54
-rw-r--r--src/mame/drivers/m79152pc.cpp6
-rw-r--r--src/mame/drivers/m79amb.cpp2
-rw-r--r--src/mame/drivers/m90.cpp18
-rw-r--r--src/mame/drivers/m92.cpp10
-rw-r--r--src/mame/drivers/mac.cpp32
-rw-r--r--src/mame/drivers/mac128.cpp6
-rw-r--r--src/mame/drivers/macp.cpp9
-rw-r--r--src/mame/drivers/macpci.cpp2
-rw-r--r--src/mame/drivers/macrossp.cpp4
-rw-r--r--src/mame/drivers/macs.cpp6
-rw-r--r--src/mame/drivers/madalien.cpp4
-rw-r--r--src/mame/drivers/madmotor.cpp6
-rw-r--r--src/mame/drivers/magic10.cpp15
-rw-r--r--src/mame/drivers/magicard.cpp12
-rw-r--r--src/mame/drivers/magicfly.cpp3
-rw-r--r--src/mame/drivers/magictg.cpp12
-rw-r--r--src/mame/drivers/magmax.cpp6
-rw-r--r--src/mame/drivers/magnum.cpp6
-rw-r--r--src/mame/drivers/magtouch.cpp6
-rw-r--r--src/mame/drivers/mainevt.cpp8
-rw-r--r--src/mame/drivers/mainsnk.cpp6
-rw-r--r--src/mame/drivers/majorpkr.cpp12
-rw-r--r--src/mame/drivers/malzak.cpp8
-rw-r--r--src/mame/drivers/manohman.cpp3
-rw-r--r--src/mame/drivers/mappy.cpp14
-rw-r--r--src/mame/drivers/marineb.cpp6
-rw-r--r--src/mame/drivers/marinedt.cpp6
-rw-r--r--src/mame/drivers/mario.cpp6
-rw-r--r--src/mame/drivers/markham.cpp4
-rw-r--r--src/mame/drivers/marywu.cpp6
-rw-r--r--src/mame/drivers/mastboy.cpp6
-rw-r--r--src/mame/drivers/matmania.cpp8
-rw-r--r--src/mame/drivers/maxaflex.cpp3
-rw-r--r--src/mame/drivers/maygay1b.cpp6
-rw-r--r--src/mame/drivers/maygayep.cpp3
-rw-r--r--src/mame/drivers/maygaysw.cpp3
-rw-r--r--src/mame/drivers/maygayv1.cpp12
-rw-r--r--src/mame/drivers/mazerbla.cpp27
-rw-r--r--src/mame/drivers/mbc200.cpp12
-rw-r--r--src/mame/drivers/mbc55x.cpp4
-rw-r--r--src/mame/drivers/mbee.cpp30
-rw-r--r--src/mame/drivers/mc10.cpp12
-rw-r--r--src/mame/drivers/mc1000.cpp11
-rw-r--r--src/mame/drivers/mc1502.cpp4
-rw-r--r--src/mame/drivers/mc8020.cpp6
-rw-r--r--src/mame/drivers/mc8030.cpp6
-rw-r--r--src/mame/drivers/mcatadv.cpp10
-rw-r--r--src/mame/drivers/mcb216.cpp9
-rw-r--r--src/mame/drivers/mccpm.cpp6
-rw-r--r--src/mame/drivers/mcr.cpp16
-rw-r--r--src/mame/drivers/mcr3.cpp8
-rw-r--r--src/mame/drivers/mcr68.cpp6
-rw-r--r--src/mame/drivers/meadows.cpp10
-rw-r--r--src/mame/drivers/mediagx.cpp9
-rw-r--r--src/mame/drivers/megadriv_acbl.cpp2
-rw-r--r--src/mame/drivers/megadriv_rad.cpp2
-rw-r--r--src/mame/drivers/megaphx.cpp3
-rw-r--r--src/mame/drivers/megaplay.cpp6
-rw-r--r--src/mame/drivers/megasys1.cpp26
-rw-r--r--src/mame/drivers/megatech.cpp6
-rw-r--r--src/mame/drivers/megazone.cpp10
-rw-r--r--src/mame/drivers/meijinsn.cpp9
-rw-r--r--src/mame/drivers/mekd2.cpp3
-rw-r--r--src/mame/drivers/mephisto.cpp9
-rw-r--r--src/mame/drivers/mephisto_montec.cpp15
-rw-r--r--src/mame/drivers/mephistp.cpp12
-rw-r--r--src/mame/drivers/merit.cpp42
-rw-r--r--src/mame/drivers/meritm.cpp18
-rw-r--r--src/mame/drivers/mermaid.cpp2
-rw-r--r--src/mame/drivers/mes.cpp6
-rw-r--r--src/mame/drivers/metalmx.cpp12
-rw-r--r--src/mame/drivers/metlclsh.cpp4
-rw-r--r--src/mame/drivers/metlfrzr.cpp8
-rw-r--r--src/mame/drivers/metro.cpp60
-rw-r--r--src/mame/drivers/mexico86.cpp6
-rw-r--r--src/mame/drivers/meyc8080.cpp3
-rw-r--r--src/mame/drivers/meyc8088.cpp3
-rw-r--r--src/mame/drivers/mfabfz.cpp9
-rw-r--r--src/mame/drivers/mgames.cpp3
-rw-r--r--src/mame/drivers/mgavegas.cpp3
-rw-r--r--src/mame/drivers/mgolf.cpp3
-rw-r--r--src/mame/drivers/mhavoc.cpp6
-rw-r--r--src/mame/drivers/mice.cpp12
-rw-r--r--src/mame/drivers/micral.cpp9
-rw-r--r--src/mame/drivers/micro20.cpp3
-rw-r--r--src/mame/drivers/micro3d.cpp12
-rw-r--r--src/mame/drivers/microdec.cpp6
-rw-r--r--src/mame/drivers/microkit.cpp6
-rw-r--r--src/mame/drivers/micronic.cpp4
-rw-r--r--src/mame/drivers/micropin.cpp9
-rw-r--r--src/mame/drivers/microtan.cpp2
-rw-r--r--src/mame/drivers/microterm.cpp15
-rw-r--r--src/mame/drivers/midas.cpp6
-rw-r--r--src/mame/drivers/midqslvr.cpp6
-rw-r--r--src/mame/drivers/midtunit.cpp2
-rw-r--r--src/mame/drivers/midvunit.cpp4
-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.cpp8
-rw-r--r--src/mame/drivers/mightyframe.cpp3
-rw-r--r--src/mame/drivers/mikie.cpp4
-rw-r--r--src/mame/drivers/mikro80.cpp8
-rw-r--r--src/mame/drivers/mikromik.cpp2
-rw-r--r--src/mame/drivers/mikrosha.cpp6
-rw-r--r--src/mame/drivers/mil4000.cpp6
-rw-r--r--src/mame/drivers/milwaukee.cpp3
-rw-r--r--src/mame/drivers/mini2440.cpp3
-rw-r--r--src/mame/drivers/miniboy7.cpp3
-rw-r--r--src/mame/drivers/minicom.cpp3
-rw-r--r--src/mame/drivers/miniforce.cpp3
-rw-r--r--src/mame/drivers/miniframe.cpp6
-rw-r--r--src/mame/drivers/minitel_2_rpic.cpp6
-rw-r--r--src/mame/drivers/minivadr.cpp3
-rw-r--r--src/mame/drivers/mirage.cpp3
-rw-r--r--src/mame/drivers/mirax.cpp6
-rw-r--r--src/mame/drivers/missb2.cpp9
-rw-r--r--src/mame/drivers/missile.cpp6
-rw-r--r--src/mame/drivers/mitchell.cpp30
-rw-r--r--src/mame/drivers/mits680b.cpp3
-rw-r--r--src/mame/drivers/mjkjidai.cpp4
-rw-r--r--src/mame/drivers/mjsenpu.cpp6
-rw-r--r--src/mame/drivers/mjsister.cpp6
-rw-r--r--src/mame/drivers/mk1.cpp6
-rw-r--r--src/mame/drivers/mk14.cpp3
-rw-r--r--src/mame/drivers/mk2.cpp3
-rw-r--r--src/mame/drivers/mk85.cpp3
-rw-r--r--src/mame/drivers/mk90.cpp3
-rw-r--r--src/mame/drivers/mkit09.cpp9
-rw-r--r--src/mame/drivers/mlanding.cpp21
-rw-r--r--src/mame/drivers/mmagic.cpp6
-rw-r--r--src/mame/drivers/mmd1.cpp12
-rw-r--r--src/mame/drivers/mmm.cpp10
-rw-r--r--src/mame/drivers/mmodular.cpp18
-rw-r--r--src/mame/drivers/mod8.cpp6
-rw-r--r--src/mame/drivers/model1.cpp10
-rw-r--r--src/mame/drivers/model2.cpp28
-rw-r--r--src/mame/drivers/model3.cpp6
-rw-r--r--src/mame/drivers/modellot.cpp6
-rw-r--r--src/mame/drivers/mogura.cpp6
-rw-r--r--src/mame/drivers/mole.cpp3
-rw-r--r--src/mame/drivers/molecular.cpp12
-rw-r--r--src/mame/drivers/momoko.cpp4
-rw-r--r--src/mame/drivers/monty.cpp9
-rw-r--r--src/mame/drivers/monzagp.cpp6
-rw-r--r--src/mame/drivers/moo.cpp8
-rw-r--r--src/mame/drivers/mosaic.cpp8
-rw-r--r--src/mame/drivers/mouser.cpp10
-rw-r--r--src/mame/drivers/mpf1.cpp20
-rw-r--r--src/mame/drivers/mps1230.cpp3
-rw-r--r--src/mame/drivers/mpu12wbk.cpp3
-rw-r--r--src/mame/drivers/mpu2.cpp3
-rw-r--r--src/mame/drivers/mpu3.cpp3
-rw-r--r--src/mame/drivers/mpu4dealem.cpp3
-rw-r--r--src/mame/drivers/mpu4plasma.cpp3
-rw-r--r--src/mame/drivers/mpu4vid.cpp17
-rw-r--r--src/mame/drivers/mpu5.cpp3
-rw-r--r--src/mame/drivers/mpz80.cpp4
-rw-r--r--src/mame/drivers/mquake.cpp12
-rw-r--r--src/mame/drivers/mrdo.cpp2
-rw-r--r--src/mame/drivers/mrflea.cpp8
-rw-r--r--src/mame/drivers/mrgame.cpp18
-rw-r--r--src/mame/drivers/mrjong.cpp4
-rw-r--r--src/mame/drivers/ms0515.cpp3
-rw-r--r--src/mame/drivers/ms32.cpp6
-rw-r--r--src/mame/drivers/ms6102.cpp6
-rw-r--r--src/mame/drivers/ms9540.cpp3
-rw-r--r--src/mame/drivers/msbc1.cpp3
-rw-r--r--src/mame/drivers/msisaac.cpp4
-rw-r--r--src/mame/drivers/mstation.cpp9
-rw-r--r--src/mame/drivers/msx.cpp8
-rw-r--r--src/mame/drivers/mt735.cpp3
-rw-r--r--src/mame/drivers/mtouchxl.cpp9
-rw-r--r--src/mame/drivers/mtx.cpp6
-rw-r--r--src/mame/drivers/mugsmash.cpp4
-rw-r--r--src/mame/drivers/multfish.cpp6
-rw-r--r--src/mame/drivers/multi16.cpp6
-rw-r--r--src/mame/drivers/multi8.cpp6
-rw-r--r--src/mame/drivers/multigam.cpp12
-rw-r--r--src/mame/drivers/munchmo.cpp7
-rw-r--r--src/mame/drivers/murogem.cpp3
-rw-r--r--src/mame/drivers/murogmbl.cpp6
-rw-r--r--src/mame/drivers/mustache.cpp6
-rw-r--r--src/mame/drivers/mvme147.cpp3
-rw-r--r--src/mame/drivers/mw18w.cpp6
-rw-r--r--src/mame/drivers/mw8080bw.cpp44
-rw-r--r--src/mame/drivers/mwarr.cpp6
-rw-r--r--src/mame/drivers/mwsub.cpp6
-rw-r--r--src/mame/drivers/mx2178.cpp6
-rw-r--r--src/mame/drivers/myb3k.cpp6
-rw-r--r--src/mame/drivers/mycom.cpp6
-rw-r--r--src/mame/drivers/mystston.cpp2
-rw-r--r--src/mame/drivers/mystwarr.cpp18
-rw-r--r--src/mame/drivers/myvision.cpp6
-rw-r--r--src/mame/drivers/mz2000.cpp9
-rw-r--r--src/mame/drivers/mz2500.cpp6
-rw-r--r--src/mame/drivers/mz3500.cpp18
-rw-r--r--src/mame/drivers/mz6500.cpp9
-rw-r--r--src/mame/drivers/mz700.cpp12
-rw-r--r--src/mame/drivers/mz80.cpp4
-rw-r--r--src/mame/drivers/mzr8105.cpp3
-rw-r--r--src/mame/drivers/n64.cpp9
-rw-r--r--src/mame/drivers/n8080.cpp6
-rw-r--r--src/mame/drivers/nakajies.cpp6
-rw-r--r--src/mame/drivers/namcofl.cpp6
-rw-r--r--src/mame/drivers/namcona1.cpp8
-rw-r--r--src/mame/drivers/namconb1.cpp8
-rw-r--r--src/mame/drivers/namcond1.cpp8
-rw-r--r--src/mame/drivers/namcops2.cpp3
-rw-r--r--src/mame/drivers/namcos1.cpp12
-rw-r--r--src/mame/drivers/namcos10.cpp9
-rw-r--r--src/mame/drivers/namcos11.cpp18
-rw-r--r--src/mame/drivers/namcos12.cpp45
-rw-r--r--src/mame/drivers/namcos2.cpp38
-rw-r--r--src/mame/drivers/namcos21.cpp40
-rw-r--r--src/mame/drivers/namcos22.cpp36
-rw-r--r--src/mame/drivers/namcos23.cpp27
-rw-r--r--src/mame/drivers/namcos86.cpp26
-rw-r--r--src/mame/drivers/nanos.cpp6
-rw-r--r--src/mame/drivers/naomi.cpp19
-rw-r--r--src/mame/drivers/nascom1.cpp36
-rw-r--r--src/mame/drivers/naughtyb.cpp4
-rw-r--r--src/mame/drivers/nbmj8688.cpp28
-rw-r--r--src/mame/drivers/nbmj8891.cpp48
-rw-r--r--src/mame/drivers/nbmj8900.cpp6
-rw-r--r--src/mame/drivers/nbmj8991.cpp30
-rw-r--r--src/mame/drivers/nbmj9195.cpp70
-rw-r--r--src/mame/drivers/nc.cpp6
-rw-r--r--src/mame/drivers/nds.cpp8
-rw-r--r--src/mame/drivers/nemesis.cpp32
-rw-r--r--src/mame/drivers/neogeo.cpp10
-rw-r--r--src/mame/drivers/neogeocd.cpp9
-rw-r--r--src/mame/drivers/neoprint.cpp12
-rw-r--r--src/mame/drivers/neptunp2.cpp6
-rw-r--r--src/mame/drivers/nes.cpp2
-rw-r--r--src/mame/drivers/nes_vt.cpp55
-rw-r--r--src/mame/drivers/newbrain.cpp4
-rw-r--r--src/mame/drivers/news.cpp2
-rw-r--r--src/mame/drivers/next.cpp14
-rw-r--r--src/mame/drivers/nexus3d.cpp3
-rw-r--r--src/mame/drivers/ngen.cpp15
-rw-r--r--src/mame/drivers/ngp.cpp9
-rw-r--r--src/mame/drivers/nibble.cpp6
-rw-r--r--src/mame/drivers/nightgal.cpp36
-rw-r--r--src/mame/drivers/ninjakd2.cpp20
-rw-r--r--src/mame/drivers/ninjaw.cpp10
-rw-r--r--src/mame/drivers/nitedrvr.cpp2
-rw-r--r--src/mame/drivers/niyanpai.cpp8
-rw-r--r--src/mame/drivers/nmg5.cpp15
-rw-r--r--src/mame/drivers/nmk16.cpp68
-rw-r--r--src/mame/drivers/nmkmedal.cpp3
-rw-r--r--src/mame/drivers/nokia_3310.cpp3
-rw-r--r--src/mame/drivers/norautp.cpp30
-rw-r--r--src/mame/drivers/notechan.cpp6
-rw-r--r--src/mame/drivers/notetaker.cpp6
-rw-r--r--src/mame/drivers/nova2001.cpp16
-rw-r--r--src/mame/drivers/novag6502.cpp12
-rw-r--r--src/mame/drivers/novag68k.cpp3
-rw-r--r--src/mame/drivers/novagf8.cpp6
-rw-r--r--src/mame/drivers/nsg6809.cpp3
-rw-r--r--src/mame/drivers/nsm.cpp6
-rw-r--r--src/mame/drivers/nsmpoker.cpp6
-rw-r--r--src/mame/drivers/nss.cpp12
-rw-r--r--src/mame/drivers/nwk-tr.cpp12
-rw-r--r--src/mame/drivers/nycaptor.cpp16
-rw-r--r--src/mame/drivers/nyny.cpp9
-rw-r--r--src/mame/drivers/ob68k1a.cpp2
-rw-r--r--src/mame/drivers/octopus.cpp15
-rw-r--r--src/mame/drivers/odyssey.cpp3
-rw-r--r--src/mame/drivers/odyssey2.cpp9
-rw-r--r--src/mame/drivers/offtwall.cpp2
-rw-r--r--src/mame/drivers/ohmygod.cpp4
-rw-r--r--src/mame/drivers/ojankohs.cpp14
-rw-r--r--src/mame/drivers/okean240.cpp12
-rw-r--r--src/mame/drivers/olibochu.cpp6
-rw-r--r--src/mame/drivers/olyboss.cpp6
-rw-r--r--src/mame/drivers/omegrace.cpp12
-rw-r--r--src/mame/drivers/ondra.cpp4
-rw-r--r--src/mame/drivers/oneshot.cpp4
-rw-r--r--src/mame/drivers/onetwo.cpp12
-rw-r--r--src/mame/drivers/onyx.cpp51
-rw-r--r--src/mame/drivers/opwolf.cpp10
-rw-r--r--src/mame/drivers/orao.cpp2
-rw-r--r--src/mame/drivers/orbit.cpp2
-rw-r--r--src/mame/drivers/oric.cpp6
-rw-r--r--src/mame/drivers/orion.cpp12
-rw-r--r--src/mame/drivers/osbexec.cpp6
-rw-r--r--src/mame/drivers/osborne1.cpp10
-rw-r--r--src/mame/drivers/osi.cpp8
-rw-r--r--src/mame/drivers/othello.cpp12
-rw-r--r--src/mame/drivers/othunder.cpp4
-rw-r--r--src/mame/drivers/otomedius.cpp3
-rw-r--r--src/mame/drivers/overdriv.cpp8
-rw-r--r--src/mame/drivers/p112.cpp6
-rw-r--r--src/mame/drivers/p2000t.cpp6
-rw-r--r--src/mame/drivers/p8k.cpp15
-rw-r--r--src/mame/drivers/pachifev.cpp6
-rw-r--r--src/mame/drivers/pacland.cpp6
-rw-r--r--src/mame/drivers/pacman.cpp58
-rw-r--r--src/mame/drivers/palm.cpp3
-rw-r--r--src/mame/drivers/palmz22.cpp3
-rw-r--r--src/mame/drivers/pandoras.cpp10
-rw-r--r--src/mame/drivers/pangofun.cpp6
-rw-r--r--src/mame/drivers/panicr.cpp3
-rw-r--r--src/mame/drivers/paradise.cpp12
-rw-r--r--src/mame/drivers/paranoia.cpp18
-rw-r--r--src/mame/drivers/parodius.cpp8
-rw-r--r--src/mame/drivers/partner.cpp2
-rw-r--r--src/mame/drivers/pasha2.cpp6
-rw-r--r--src/mame/drivers/paso1600.cpp6
-rw-r--r--src/mame/drivers/pasogo.cpp9
-rw-r--r--src/mame/drivers/pasopia.cpp6
-rw-r--r--src/mame/drivers/pasopia7.cpp6
-rw-r--r--src/mame/drivers/pass.cpp6
-rw-r--r--src/mame/drivers/pastelg.cpp6
-rw-r--r--src/mame/drivers/patapata.cpp3
-rw-r--r--src/mame/drivers/pb1000.cpp6
-rw-r--r--src/mame/drivers/pbaction.cpp10
-rw-r--r--src/mame/drivers/pc.cpp21
-rw-r--r--src/mame/drivers/pc100.cpp6
-rw-r--r--src/mame/drivers/pc1500.cpp6
-rw-r--r--src/mame/drivers/pc1512.cpp8
-rw-r--r--src/mame/drivers/pc2000.cpp15
-rw-r--r--src/mame/drivers/pc4.cpp4
-rw-r--r--src/mame/drivers/pc6001.cpp14
-rw-r--r--src/mame/drivers/pc8001.cpp8
-rw-r--r--src/mame/drivers/pc8401a.cpp6
-rw-r--r--src/mame/drivers/pc8801.cpp12
-rw-r--r--src/mame/drivers/pc88va.cpp12
-rw-r--r--src/mame/drivers/pc9801.cpp26
-rw-r--r--src/mame/drivers/pcat_dyn.cpp6
-rw-r--r--src/mame/drivers/pcat_nit.cpp12
-rw-r--r--src/mame/drivers/pcd.cpp9
-rw-r--r--src/mame/drivers/pce.cpp8
-rw-r--r--src/mame/drivers/pce220.cpp9
-rw-r--r--src/mame/drivers/pcfx.cpp6
-rw-r--r--src/mame/drivers/pcktgal.cpp4
-rw-r--r--src/mame/drivers/pcm.cpp6
-rw-r--r--src/mame/drivers/pcw.cpp6
-rw-r--r--src/mame/drivers/pcw16.cpp4
-rw-r--r--src/mame/drivers/pcxt.cpp15
-rw-r--r--src/mame/drivers/pda600.cpp6
-rw-r--r--src/mame/drivers/pdp1.cpp2
-rw-r--r--src/mame/drivers/pdp11.cpp6
-rw-r--r--src/mame/drivers/pecom.cpp4
-rw-r--r--src/mame/drivers/pegasus.cpp6
-rw-r--r--src/mame/drivers/pencil2.cpp6
-rw-r--r--src/mame/drivers/pengadvb.cpp9
-rw-r--r--src/mame/drivers/pengo.cpp13
-rw-r--r--src/mame/drivers/pentagon.cpp11
-rw-r--r--src/mame/drivers/peoplepc.cpp6
-rw-r--r--src/mame/drivers/peplus.cpp6
-rw-r--r--src/mame/drivers/pes.cpp4
-rw-r--r--src/mame/drivers/pet.cpp6
-rw-r--r--src/mame/drivers/peyper.cpp6
-rw-r--r--src/mame/drivers/pg685.cpp9
-rw-r--r--src/mame/drivers/pgm.cpp10
-rw-r--r--src/mame/drivers/pgm2.cpp8
-rw-r--r--src/mame/drivers/pgm3.cpp3
-rw-r--r--src/mame/drivers/phc25.cpp4
-rw-r--r--src/mame/drivers/phoenix.cpp6
-rw-r--r--src/mame/drivers/photon.cpp6
-rw-r--r--src/mame/drivers/photon2.cpp6
-rw-r--r--src/mame/drivers/photoply.cpp6
-rw-r--r--src/mame/drivers/phunsy.cpp9
-rw-r--r--src/mame/drivers/picno.cpp6
-rw-r--r--src/mame/drivers/piggypas.cpp6
-rw-r--r--src/mame/drivers/pimps.cpp6
-rw-r--r--src/mame/drivers/pinball2k.cpp9
-rw-r--r--src/mame/drivers/pingpong.cpp4
-rw-r--r--src/mame/drivers/pinkiri8.cpp12
-rw-r--r--src/mame/drivers/pipbug.cpp6
-rw-r--r--src/mame/drivers/pipedrm.cpp15
-rw-r--r--src/mame/drivers/pipeline.cpp9
-rw-r--r--src/mame/drivers/pirates.cpp2
-rw-r--r--src/mame/drivers/piratesh.cpp3
-rw-r--r--src/mame/drivers/pitagjr.cpp3
-rw-r--r--src/mame/drivers/pitnrun.cpp8
-rw-r--r--src/mame/drivers/pk8000.cpp6
-rw-r--r--src/mame/drivers/pk8020.cpp4
-rw-r--r--src/mame/drivers/pkscram.cpp3
-rw-r--r--src/mame/drivers/pktgaldx.cpp8
-rw-r--r--src/mame/drivers/plan80.cpp6
-rw-r--r--src/mame/drivers/play_1.cpp9
-rw-r--r--src/mame/drivers/play_2.cpp9
-rw-r--r--src/mame/drivers/play_3.cpp18
-rw-r--r--src/mame/drivers/playch10.cpp6
-rw-r--r--src/mame/drivers/playmark.cpp16
-rw-r--r--src/mame/drivers/plus4.cpp6
-rw-r--r--src/mame/drivers/pluto5.cpp3
-rw-r--r--src/mame/drivers/plygonet.cpp8
-rw-r--r--src/mame/drivers/pm68k.cpp3
-rw-r--r--src/mame/drivers/pmd85.cpp16
-rw-r--r--src/mame/drivers/pmi80.cpp6
-rw-r--r--src/mame/drivers/pntnpuzl.cpp6
-rw-r--r--src/mame/drivers/pockchal.cpp3
-rw-r--r--src/mame/drivers/pocketc.cpp24
-rw-r--r--src/mame/drivers/pockstat.cpp3
-rw-r--r--src/mame/drivers/pofo.cpp9
-rw-r--r--src/mame/drivers/poisk1.cpp6
-rw-r--r--src/mame/drivers/pokechmp.cpp6
-rw-r--r--src/mame/drivers/pokemini.cpp3
-rw-r--r--src/mame/drivers/poker72.cpp3
-rw-r--r--src/mame/drivers/polepos.cpp16
-rw-r--r--src/mame/drivers/polgar.cpp18
-rw-r--r--src/mame/drivers/policetr.cpp4
-rw-r--r--src/mame/drivers/poly.cpp3
-rw-r--r--src/mame/drivers/poly88.cpp8
-rw-r--r--src/mame/drivers/poly880.cpp4
-rw-r--r--src/mame/drivers/polyplay.cpp8
-rw-r--r--src/mame/drivers/poolshrk.cpp2
-rw-r--r--src/mame/drivers/pooyan.cpp2
-rw-r--r--src/mame/drivers/popeye.cpp8
-rw-r--r--src/mame/drivers/popobear.cpp3
-rw-r--r--src/mame/drivers/popper.cpp6
-rw-r--r--src/mame/drivers/portrait.cpp4
-rw-r--r--src/mame/drivers/potgoldu.cpp3
-rw-r--r--src/mame/drivers/powerbal.cpp9
-rw-r--r--src/mame/drivers/powerins.cpp12
-rw-r--r--src/mame/drivers/pp01.cpp4
-rw-r--r--src/mame/drivers/ppmast93.cpp12
-rw-r--r--src/mame/drivers/prehisle.cpp6
-rw-r--r--src/mame/drivers/prestige.cpp9
-rw-r--r--src/mame/drivers/primo.cpp10
-rw-r--r--src/mame/drivers/pro80.cpp6
-rw-r--r--src/mame/drivers/proconn.cpp6
-rw-r--r--src/mame/drivers/prodigy.cpp3
-rw-r--r--src/mame/drivers/prof180x.cpp4
-rw-r--r--src/mame/drivers/prof80.cpp6
-rw-r--r--src/mame/drivers/progolf.cpp6
-rw-r--r--src/mame/drivers/prophet600.cpp6
-rw-r--r--src/mame/drivers/proteus3.cpp3
-rw-r--r--src/mame/drivers/ps2.cpp12
-rw-r--r--src/mame/drivers/ps2sony.cpp3
-rw-r--r--src/mame/drivers/psikyo.cpp24
-rw-r--r--src/mame/drivers/psikyo4.cpp4
-rw-r--r--src/mame/drivers/psikyosh.cpp4
-rw-r--r--src/mame/drivers/psion.cpp12
-rw-r--r--src/mame/drivers/psx.cpp6
-rw-r--r--src/mame/drivers/psychic5.cpp16
-rw-r--r--src/mame/drivers/pt68k4.cpp6
-rw-r--r--src/mame/drivers/ptcsol.cpp6
-rw-r--r--src/mame/drivers/pturn.cpp6
-rw-r--r--src/mame/drivers/puckpkmn.cpp6
-rw-r--r--src/mame/drivers/pulsar.cpp6
-rw-r--r--src/mame/drivers/punchout.cpp12
-rw-r--r--src/mame/drivers/pv1000.cpp6
-rw-r--r--src/mame/drivers/pv2000.cpp6
-rw-r--r--src/mame/drivers/pv9234.cpp3
-rw-r--r--src/mame/drivers/pve500.cpp12
-rw-r--r--src/mame/drivers/pwrview.cpp14
-rw-r--r--src/mame/drivers/px4.cpp9
-rw-r--r--src/mame/drivers/px8.cpp8
-rw-r--r--src/mame/drivers/pyl601.cpp3
-rw-r--r--src/mame/drivers/pyson.cpp3
-rw-r--r--src/mame/drivers/pzletime.cpp3
-rw-r--r--src/mame/drivers/qdrmfgp.cpp6
-rw-r--r--src/mame/drivers/qix.cpp6
-rw-r--r--src/mame/drivers/ql.cpp6
-rw-r--r--src/mame/drivers/qtsbc.cpp6
-rw-r--r--src/mame/drivers/quakeat.cpp6
-rw-r--r--src/mame/drivers/quantum.cpp3
-rw-r--r--src/mame/drivers/quasar.cpp10
-rw-r--r--src/mame/drivers/queen.cpp6
-rw-r--r--src/mame/drivers/quickpick5.cpp3
-rw-r--r--src/mame/drivers/quizdna.cpp10
-rw-r--r--src/mame/drivers/quizo.cpp6
-rw-r--r--src/mame/drivers/quizpani.cpp2
-rw-r--r--src/mame/drivers/quizpun2.cpp15
-rw-r--r--src/mame/drivers/quizshow.cpp3
-rw-r--r--src/mame/drivers/qvt103.cpp6
-rw-r--r--src/mame/drivers/qvt201.cpp3
-rw-r--r--src/mame/drivers/qvt6800.cpp6
-rw-r--r--src/mame/drivers/qx10.cpp9
-rw-r--r--src/mame/drivers/r2dtank.cpp6
-rw-r--r--src/mame/drivers/r2dx_v33.cpp17
-rw-r--r--src/mame/drivers/r9751.cpp3
-rw-r--r--src/mame/drivers/rabbit.cpp3
-rw-r--r--src/mame/drivers/rad_eu3a05.cpp6
-rw-r--r--src/mame/drivers/rad_eu3a14.cpp6
-rw-r--r--src/mame/drivers/radio86.cpp16
-rw-r--r--src/mame/drivers/raiden.cpp18
-rw-r--r--src/mame/drivers/raiden2.cpp20
-rw-r--r--src/mame/drivers/rainbow.cpp15
-rw-r--r--src/mame/drivers/rallyx.cpp6
-rw-r--r--src/mame/drivers/rambo.cpp9
-rw-r--r--src/mame/drivers/rampart.cpp2
-rw-r--r--src/mame/drivers/rastan.cpp4
-rw-r--r--src/mame/drivers/rastersp.cpp9
-rw-r--r--src/mame/drivers/ravens.cpp9
-rw-r--r--src/mame/drivers/rbisland.cpp8
-rw-r--r--src/mame/drivers/rbmk.cpp12
-rw-r--r--src/mame/drivers/rc702.cpp6
-rw-r--r--src/mame/drivers/rc759.cpp6
-rw-r--r--src/mame/drivers/rcorsair.cpp9
-rw-r--r--src/mame/drivers/rd100.cpp3
-rw-r--r--src/mame/drivers/rd110.cpp6
-rw-r--r--src/mame/drivers/re900.cpp6
-rw-r--r--src/mame/drivers/realbrk.cpp10
-rw-r--r--src/mame/drivers/redalert.cpp8
-rw-r--r--src/mame/drivers/redclash.cpp10
-rw-r--r--src/mame/drivers/relief.cpp4
-rw-r--r--src/mame/drivers/renegade.cpp6
-rw-r--r--src/mame/drivers/replicator.cpp9
-rw-r--r--src/mame/drivers/retofinv.cpp8
-rw-r--r--src/mame/drivers/rex6000.cpp15
-rw-r--r--src/mame/drivers/rgum.cpp3
-rw-r--r--src/mame/drivers/risc2500.cpp3
-rw-r--r--src/mame/drivers/riscpc.cpp3
-rw-r--r--src/mame/drivers/rltennis.cpp4
-rw-r--r--src/mame/drivers/rm380z.cpp8
-rw-r--r--src/mame/drivers/rmhaihai.cpp12
-rw-r--r--src/mame/drivers/rmnimbus.cpp8
-rw-r--r--src/mame/drivers/rmt32.cpp6
-rw-r--r--src/mame/drivers/rockrage.cpp6
-rw-r--r--src/mame/drivers/rocnrope.cpp2
-rw-r--r--src/mame/drivers/rohga.cpp16
-rw-r--r--src/mame/drivers/rollerg.cpp4
-rw-r--r--src/mame/drivers/rollext.cpp3
-rw-r--r--src/mame/drivers/rollrace.cpp4
-rw-r--r--src/mame/drivers/ron.cpp12
-rw-r--r--src/mame/drivers/rotaryf.cpp6
-rw-r--r--src/mame/drivers/roul.cpp12
-rw-r--r--src/mame/drivers/route16.cpp18
-rw-r--r--src/mame/drivers/rowamet.cpp9
-rw-r--r--src/mame/drivers/royalmah.cpp99
-rw-r--r--src/mame/drivers/rpunch.cpp4
-rw-r--r--src/mame/drivers/rsc55.cpp6
-rw-r--r--src/mame/drivers/rt1715.cpp12
-rw-r--r--src/mame/drivers/runaway.cpp2
-rw-r--r--src/mame/drivers/rungun.cpp6
-rw-r--r--src/mame/drivers/rvoice.cpp6
-rw-r--r--src/mame/drivers/rx78.cpp6
-rw-r--r--src/mame/drivers/s11.cpp6
-rw-r--r--src/mame/drivers/s11a.cpp6
-rw-r--r--src/mame/drivers/s11b.cpp6
-rw-r--r--src/mame/drivers/s11c.cpp2
-rw-r--r--src/mame/drivers/s3.cpp6
-rw-r--r--src/mame/drivers/s4.cpp6
-rw-r--r--src/mame/drivers/s6.cpp6
-rw-r--r--src/mame/drivers/s6a.cpp6
-rw-r--r--src/mame/drivers/s7.cpp6
-rw-r--r--src/mame/drivers/s8.cpp6
-rw-r--r--src/mame/drivers/s8a.cpp6
-rw-r--r--src/mame/drivers/s9.cpp6
-rw-r--r--src/mame/drivers/sacstate.cpp6
-rw-r--r--src/mame/drivers/safarir.cpp3
-rw-r--r--src/mame/drivers/sage2.cpp2
-rw-r--r--src/mame/drivers/sam.cpp3
-rw-r--r--src/mame/drivers/samcoupe.cpp4
-rw-r--r--src/mame/drivers/sandscrp.cpp9
-rw-r--r--src/mame/drivers/sangho.cpp9
-rw-r--r--src/mame/drivers/sanremmg.cpp3
-rw-r--r--src/mame/drivers/sanremo.cpp6
-rw-r--r--src/mame/drivers/sansa_fuze.cpp3
-rw-r--r--src/mame/drivers/sapi1.cpp24
-rw-r--r--src/mame/drivers/sartorius.cpp9
-rw-r--r--src/mame/drivers/saturn.cpp6
-rw-r--r--src/mame/drivers/sauro.cpp10
-rw-r--r--src/mame/drivers/savia84.cpp6
-rw-r--r--src/mame/drivers/savquest.cpp6
-rw-r--r--src/mame/drivers/sbasketb.cpp4
-rw-r--r--src/mame/drivers/sbc6510.cpp12
-rw-r--r--src/mame/drivers/sbowling.cpp6
-rw-r--r--src/mame/drivers/sbrain.cpp12
-rw-r--r--src/mame/drivers/sbrkout.cpp6
-rw-r--r--src/mame/drivers/sbugger.cpp4
-rw-r--r--src/mame/drivers/sc1.cpp6
-rw-r--r--src/mame/drivers/sc2.cpp6
-rw-r--r--src/mame/drivers/scobra.cpp42
-rw-r--r--src/mame/drivers/scopus.cpp6
-rw-r--r--src/mame/drivers/scorpion.cpp11
-rw-r--r--src/mame/drivers/scotrsht.cpp6
-rw-r--r--src/mame/drivers/scramble.cpp40
-rw-r--r--src/mame/drivers/scregg.cpp6
-rw-r--r--src/mame/drivers/scv.cpp3
-rw-r--r--src/mame/drivers/scyclone.cpp12
-rw-r--r--src/mame/drivers/sderby.cpp12
-rw-r--r--src/mame/drivers/sderby2.cpp12
-rw-r--r--src/mame/drivers/sdk80.cpp6
-rw-r--r--src/mame/drivers/sdk85.cpp6
-rw-r--r--src/mame/drivers/sdk86.cpp6
-rw-r--r--src/mame/drivers/seabattl.cpp6
-rw-r--r--src/mame/drivers/sealy.cpp3
-rw-r--r--src/mame/drivers/seattle.cpp25
-rw-r--r--src/mame/drivers/seattlecmp.cpp6
-rw-r--r--src/mame/drivers/segac2.cpp3
-rw-r--r--src/mame/drivers/segacoin.cpp12
-rw-r--r--src/mame/drivers/segae.cpp24
-rw-r--r--src/mame/drivers/segag80r.cpp20
-rw-r--r--src/mame/drivers/segag80v.cpp4
-rw-r--r--src/mame/drivers/segahang.cpp28
-rw-r--r--src/mame/drivers/segajw.cpp15
-rw-r--r--src/mame/drivers/segald.cpp6
-rw-r--r--src/mame/drivers/segam1.cpp15
-rw-r--r--src/mame/drivers/segaorun.cpp12
-rw-r--r--src/mame/drivers/segapico.cpp6
-rw-r--r--src/mame/drivers/segapm.cpp3
-rw-r--r--src/mame/drivers/segas16a.cpp18
-rw-r--r--src/mame/drivers/segas16b.cpp42
-rw-r--r--src/mame/drivers/segas18.cpp12
-rw-r--r--src/mame/drivers/segas24.cpp16
-rw-r--r--src/mame/drivers/segas32.cpp34
-rw-r--r--src/mame/drivers/segasp.cpp4
-rw-r--r--src/mame/drivers/segaufo.cpp12
-rw-r--r--src/mame/drivers/segaxbd.cpp32
-rw-r--r--src/mame/drivers/segaybd.cpp18
-rw-r--r--src/mame/drivers/seibucats.cpp3
-rw-r--r--src/mame/drivers/seibuspi.cpp22
-rw-r--r--src/mame/drivers/seicross.cpp12
-rw-r--r--src/mame/drivers/seicupbl.cpp6
-rw-r--r--src/mame/drivers/selz80.cpp9
-rw-r--r--src/mame/drivers/sengokmj.cpp8
-rw-r--r--src/mame/drivers/senjyo.cpp16
-rw-r--r--src/mame/drivers/seta.cpp98
-rw-r--r--src/mame/drivers/seta2.cpp38
-rw-r--r--src/mame/drivers/sf.cpp12
-rw-r--r--src/mame/drivers/sfbonus.cpp9
-rw-r--r--src/mame/drivers/sfcbox.cpp12
-rw-r--r--src/mame/drivers/sfkick.cpp12
-rw-r--r--src/mame/drivers/sg1000.cpp16
-rw-r--r--src/mame/drivers/sg1000a.cpp14
-rw-r--r--src/mame/drivers/sh4robot.cpp6
-rw-r--r--src/mame/drivers/shadfrce.cpp4
-rw-r--r--src/mame/drivers/shangha3.cpp10
-rw-r--r--src/mame/drivers/shanghai.cpp21
-rw-r--r--src/mame/drivers/shangkid.cpp22
-rw-r--r--src/mame/drivers/shaolins.cpp2
-rw-r--r--src/mame/drivers/shisen.cpp8
-rw-r--r--src/mame/drivers/shootaway2.cpp6
-rw-r--r--src/mame/drivers/shootout.cpp6
-rw-r--r--src/mame/drivers/shougi.cpp9
-rw-r--r--src/mame/drivers/shtzone.cpp3
-rw-r--r--src/mame/drivers/shuuz.cpp2
-rw-r--r--src/mame/drivers/sidearms.cpp12
-rw-r--r--src/mame/drivers/sidepckt.cpp6
-rw-r--r--src/mame/drivers/sigmab52.cpp9
-rw-r--r--src/mame/drivers/sigmab98.cpp54
-rw-r--r--src/mame/drivers/silkroad.cpp2
-rw-r--r--src/mame/drivers/silvmil.cpp6
-rw-r--r--src/mame/drivers/simpl156.cpp10
-rw-r--r--src/mame/drivers/simple_st0016.cpp10
-rw-r--r--src/mame/drivers/simpsons.cpp8
-rw-r--r--src/mame/drivers/sitcom.cpp9
-rw-r--r--src/mame/drivers/sk1.cpp3
-rw-r--r--src/mame/drivers/skeetsht.cpp9
-rw-r--r--src/mame/drivers/skimaxx.cpp13
-rw-r--r--src/mame/drivers/skullxbo.cpp2
-rw-r--r--src/mame/drivers/skyarmy.cpp6
-rw-r--r--src/mame/drivers/skydiver.cpp2
-rw-r--r--src/mame/drivers/skyfox.cpp4
-rw-r--r--src/mame/drivers/skykid.cpp6
-rw-r--r--src/mame/drivers/skylncr.cpp20
-rw-r--r--src/mame/drivers/skyraid.cpp2
-rw-r--r--src/mame/drivers/slapfght.cpp32
-rw-r--r--src/mame/drivers/slapshot.cpp6
-rw-r--r--src/mame/drivers/slc1.cpp6
-rw-r--r--src/mame/drivers/sleic.cpp3
-rw-r--r--src/mame/drivers/slicer.cpp6
-rw-r--r--src/mame/drivers/sliver.cpp15
-rw-r--r--src/mame/drivers/slotcarn.cpp6
-rw-r--r--src/mame/drivers/sm1800.cpp6
-rw-r--r--src/mame/drivers/sm7238.cpp9
-rw-r--r--src/mame/drivers/smc777.cpp6
-rw-r--r--src/mame/drivers/sms.cpp16
-rw-r--r--src/mame/drivers/sms_bootleg.cpp4
-rw-r--r--src/mame/drivers/smsmcorp.cpp9
-rw-r--r--src/mame/drivers/snes.cpp6
-rw-r--r--src/mame/drivers/snesb.cpp9
-rw-r--r--src/mame/drivers/snk.cpp78
-rw-r--r--src/mame/drivers/snk6502.cpp10
-rw-r--r--src/mame/drivers/snk68.cpp8
-rw-r--r--src/mame/drivers/snookr10.cpp6
-rw-r--r--src/mame/drivers/snowbros.cpp32
-rw-r--r--src/mame/drivers/socrates.cpp24
-rw-r--r--src/mame/drivers/softbox.cpp4
-rw-r--r--src/mame/drivers/solomon.cpp6
-rw-r--r--src/mame/drivers/sonson.cpp4
-rw-r--r--src/mame/drivers/sorcerer.cpp6
-rw-r--r--src/mame/drivers/sothello.cpp15
-rw-r--r--src/mame/drivers/spacefb.cpp6
-rw-r--r--src/mame/drivers/spaceg.cpp3
-rw-r--r--src/mame/drivers/spartanxtec.cpp9
-rw-r--r--src/mame/drivers/spbactn.cpp8
-rw-r--r--src/mame/drivers/spc1000.cpp6
-rw-r--r--src/mame/drivers/spc1500.cpp6
-rw-r--r--src/mame/drivers/spcforce.cpp4
-rw-r--r--src/mame/drivers/spdodgeb.cpp4
-rw-r--r--src/mame/drivers/spec128.cpp4
-rw-r--r--src/mame/drivers/special.cpp10
-rw-r--r--src/mame/drivers/specpls3.cpp4
-rw-r--r--src/mame/drivers/spectra.cpp3
-rw-r--r--src/mame/drivers/spectrum.cpp4
-rw-r--r--src/mame/drivers/speedatk.cpp4
-rw-r--r--src/mame/drivers/speedbal.cpp8
-rw-r--r--src/mame/drivers/speedspn.cpp8
-rw-r--r--src/mame/drivers/speglsht.cpp9
-rw-r--r--src/mame/drivers/spiders.cpp4
-rw-r--r--src/mame/drivers/spinb.cpp18
-rw-r--r--src/mame/drivers/spirit76.cpp3
-rw-r--r--src/mame/drivers/splash.cpp21
-rw-r--r--src/mame/drivers/splus.cpp6
-rw-r--r--src/mame/drivers/spoker.cpp11
-rw-r--r--src/mame/drivers/spool99.cpp6
-rw-r--r--src/mame/drivers/sprcros2.cpp12
-rw-r--r--src/mame/drivers/sprint2.cpp2
-rw-r--r--src/mame/drivers/sprint4.cpp2
-rw-r--r--src/mame/drivers/sprint8.cpp2
-rw-r--r--src/mame/drivers/spy.cpp4
-rw-r--r--src/mame/drivers/spyhuntertec.cpp12
-rw-r--r--src/mame/drivers/squale.cpp6
-rw-r--r--src/mame/drivers/srmp2.cpp12
-rw-r--r--src/mame/drivers/srmp5.cpp9
-rw-r--r--src/mame/drivers/srmp6.cpp3
-rw-r--r--src/mame/drivers/srumbler.cpp4
-rw-r--r--src/mame/drivers/ssem.cpp3
-rw-r--r--src/mame/drivers/ssfindo.cpp9
-rw-r--r--src/mame/drivers/sshangha.cpp6
-rw-r--r--src/mame/drivers/sshot.cpp3
-rw-r--r--src/mame/drivers/ssingles.cpp12
-rw-r--r--src/mame/drivers/sslam.cpp6
-rw-r--r--src/mame/drivers/ssozumo.cpp4
-rw-r--r--src/mame/drivers/sspeedr.cpp4
-rw-r--r--src/mame/drivers/ssrj.cpp2
-rw-r--r--src/mame/drivers/sstrangr.cpp6
-rw-r--r--src/mame/drivers/ssv.cpp40
-rw-r--r--src/mame/drivers/ssystem3.cpp2
-rw-r--r--src/mame/drivers/st17xx.cpp3
-rw-r--r--src/mame/drivers/st_mp100.cpp3
-rw-r--r--src/mame/drivers/st_mp200.cpp3
-rw-r--r--src/mame/drivers/stactics.cpp2
-rw-r--r--src/mame/drivers/stadhero.cpp4
-rw-r--r--src/mame/drivers/starcrus.cpp4
-rw-r--r--src/mame/drivers/starfire.cpp2
-rw-r--r--src/mame/drivers/stargame.cpp12
-rw-r--r--src/mame/drivers/starshp1.cpp2
-rw-r--r--src/mame/drivers/starwars.cpp6
-rw-r--r--src/mame/drivers/statriv2.cpp6
-rw-r--r--src/mame/drivers/stellafr.cpp3
-rw-r--r--src/mame/drivers/stfight.cpp12
-rw-r--r--src/mame/drivers/stlforce.cpp4
-rw-r--r--src/mame/drivers/stratos.cpp3
-rw-r--r--src/mame/drivers/strkzn.cpp12
-rw-r--r--src/mame/drivers/strnskil.cpp4
-rw-r--r--src/mame/drivers/studio2.cpp18
-rw-r--r--src/mame/drivers/stuntair.cpp9
-rw-r--r--src/mame/drivers/stv.cpp4
-rw-r--r--src/mame/drivers/su2000.cpp6
-rw-r--r--src/mame/drivers/sub.cpp12
-rw-r--r--src/mame/drivers/subhuntr.cpp9
-rw-r--r--src/mame/drivers/subs.cpp2
-rw-r--r--src/mame/drivers/subsino.cpp30
-rw-r--r--src/mame/drivers/subsino2.cpp39
-rw-r--r--src/mame/drivers/summit.cpp3
-rw-r--r--src/mame/drivers/sumt8035.cpp6
-rw-r--r--src/mame/drivers/sun1.cpp3
-rw-r--r--src/mame/drivers/sun2.cpp27
-rw-r--r--src/mame/drivers/sun3.cpp18
-rw-r--r--src/mame/drivers/sun3x.cpp6
-rw-r--r--src/mame/drivers/sun4.cpp15
-rw-r--r--src/mame/drivers/suna16.cpp32
-rw-r--r--src/mame/drivers/suna8.cpp46
-rw-r--r--src/mame/drivers/supbtime.cpp12
-rw-r--r--src/mame/drivers/supdrapo.cpp3
-rw-r--r--src/mame/drivers/supduck.cpp9
-rw-r--r--src/mame/drivers/super6.cpp4
-rw-r--r--src/mame/drivers/super80.cpp14
-rw-r--r--src/mame/drivers/superchs.cpp6
-rw-r--r--src/mame/drivers/supercrd.cpp3
-rw-r--r--src/mame/drivers/superdq.cpp6
-rw-r--r--src/mame/drivers/superqix.cpp10
-rw-r--r--src/mame/drivers/superslave.cpp6
-rw-r--r--src/mame/drivers/supertnk.cpp6
-rw-r--r--src/mame/drivers/superwng.cpp6
-rw-r--r--src/mame/drivers/supracan.cpp6
-rw-r--r--src/mame/drivers/suprgolf.cpp6
-rw-r--r--src/mame/drivers/suprloco.cpp8
-rw-r--r--src/mame/drivers/suprnova.cpp2
-rw-r--r--src/mame/drivers/suprridr.cpp8
-rw-r--r--src/mame/drivers/suprslam.cpp6
-rw-r--r--src/mame/drivers/supstarf.cpp12
-rw-r--r--src/mame/drivers/surpratk.cpp4
-rw-r--r--src/mame/drivers/sv8000.cpp6
-rw-r--r--src/mame/drivers/svi318.cpp9
-rw-r--r--src/mame/drivers/svision.cpp4
-rw-r--r--src/mame/drivers/svmu.cpp6
-rw-r--r--src/mame/drivers/swtpc.cpp3
-rw-r--r--src/mame/drivers/swtpc09.cpp10
-rw-r--r--src/mame/drivers/swyft.cpp3
-rw-r--r--src/mame/drivers/sym1.cpp3
-rw-r--r--src/mame/drivers/symbolics.cpp6
-rw-r--r--src/mame/drivers/sys2900.cpp6
-rw-r--r--src/mame/drivers/sys9002.cpp6
-rw-r--r--src/mame/drivers/systec.cpp6
-rw-r--r--src/mame/drivers/system1.cpp30
-rw-r--r--src/mame/drivers/system16.cpp70
-rw-r--r--src/mame/drivers/tagteam.cpp4
-rw-r--r--src/mame/drivers/tail2nos.cpp6
-rw-r--r--src/mame/drivers/taito.cpp18
-rw-r--r--src/mame/drivers/taito_b.cpp40
-rw-r--r--src/mame/drivers/taito_f2.cpp66
-rw-r--r--src/mame/drivers/taito_f3.cpp4
-rw-r--r--src/mame/drivers/taito_h.cpp10
-rw-r--r--src/mame/drivers/taito_l.cpp42
-rw-r--r--src/mame/drivers/taito_o.cpp2
-rw-r--r--src/mame/drivers/taito_x.cpp12
-rw-r--r--src/mame/drivers/taito_z.cpp44
-rw-r--r--src/mame/drivers/taitoair.cpp8
-rw-r--r--src/mame/drivers/taitogn.cpp17
-rw-r--r--src/mame/drivers/taitojc.cpp12
-rw-r--r--src/mame/drivers/taitopjc.cpp18
-rw-r--r--src/mame/drivers/taitosj.cpp8
-rw-r--r--src/mame/drivers/taitotx.cpp3
-rw-r--r--src/mame/drivers/taitotz.cpp9
-rw-r--r--src/mame/drivers/taitowlf.cpp6
-rw-r--r--src/mame/drivers/tandy1t.cpp24
-rw-r--r--src/mame/drivers/tandy2k.cpp8
-rw-r--r--src/mame/drivers/tank8.cpp2
-rw-r--r--src/mame/drivers/tankbatt.cpp2
-rw-r--r--src/mame/drivers/tankbust.cpp6
-rw-r--r--src/mame/drivers/taotaido.cpp6
-rw-r--r--src/mame/drivers/tapatune.cpp9
-rw-r--r--src/mame/drivers/targeth.cpp6
-rw-r--r--src/mame/drivers/tasman.cpp6
-rw-r--r--src/mame/drivers/tatsumi.cpp24
-rw-r--r--src/mame/drivers/tattack.cpp3
-rw-r--r--src/mame/drivers/tavernie.cpp6
-rw-r--r--src/mame/drivers/taxidriv.cpp8
-rw-r--r--src/mame/drivers/tbowl.cpp12
-rw-r--r--src/mame/drivers/tceptor.cpp12
-rw-r--r--src/mame/drivers/tcl.cpp3
-rw-r--r--src/mame/drivers/tdv2324.cpp10
-rw-r--r--src/mame/drivers/tec1.cpp12
-rw-r--r--src/mame/drivers/techno.cpp3
-rw-r--r--src/mame/drivers/tecmo.cpp10
-rw-r--r--src/mame/drivers/tecmo16.cpp6
-rw-r--r--src/mame/drivers/tecmosys.cpp6
-rw-r--r--src/mame/drivers/tecnbras.cpp6
-rw-r--r--src/mame/drivers/tehkanwc.cpp8
-rw-r--r--src/mame/drivers/tek405x.cpp4
-rw-r--r--src/mame/drivers/tek410x.cpp6
-rw-r--r--src/mame/drivers/tek440x.cpp6
-rw-r--r--src/mame/drivers/tekxp33x.cpp6
-rw-r--r--src/mame/drivers/tempest.cpp3
-rw-r--r--src/mame/drivers/terak.cpp3
-rw-r--r--src/mame/drivers/terco.cpp3
-rw-r--r--src/mame/drivers/terminals.cpp3
-rw-r--r--src/mame/drivers/terracre.cpp12
-rw-r--r--src/mame/drivers/testconsole.cpp6
-rw-r--r--src/mame/drivers/tetrisp2.cpp18
-rw-r--r--src/mame/drivers/tg100.cpp9
-rw-r--r--src/mame/drivers/tgtpanic.cpp6
-rw-r--r--src/mame/drivers/thayers.cpp6
-rw-r--r--src/mame/drivers/thedealr.cpp6
-rw-r--r--src/mame/drivers/thedeep.cpp6
-rw-r--r--src/mame/drivers/thepit.cpp10
-rw-r--r--src/mame/drivers/thief.cpp6
-rw-r--r--src/mame/drivers/thomson.cpp16
-rw-r--r--src/mame/drivers/thoop2.cpp8
-rw-r--r--src/mame/drivers/thunderj.cpp4
-rw-r--r--src/mame/drivers/thunderx.cpp14
-rw-r--r--src/mame/drivers/ti630.cpp6
-rw-r--r--src/mame/drivers/ti74.cpp3
-rw-r--r--src/mame/drivers/ti85.cpp28
-rw-r--r--src/mame/drivers/ti89.cpp10
-rw-r--r--src/mame/drivers/ti990_10.cpp6
-rw-r--r--src/mame/drivers/ti990_4.cpp9
-rw-r--r--src/mame/drivers/ti99_2.cpp6
-rw-r--r--src/mame/drivers/ti99_4p.cpp6
-rw-r--r--src/mame/drivers/ti99_4x.cpp6
-rw-r--r--src/mame/drivers/ti99_8.cpp6
-rw-r--r--src/mame/drivers/tiamc1.cpp8
-rw-r--r--src/mame/drivers/tickee.cpp12
-rw-r--r--src/mame/drivers/tigeroad.cpp18
-rw-r--r--src/mame/drivers/tiki100.cpp4
-rw-r--r--src/mame/drivers/tim011.cpp6
-rw-r--r--src/mame/drivers/tim100.cpp6
-rw-r--r--src/mame/drivers/timelimt.cpp8
-rw-r--r--src/mame/drivers/timeplt.cpp9
-rw-r--r--src/mame/drivers/timetrv.cpp6
-rw-r--r--src/mame/drivers/timex.cpp8
-rw-r--r--src/mame/drivers/tk2000.cpp6
-rw-r--r--src/mame/drivers/tk80.cpp18
-rw-r--r--src/mame/drivers/tk80bs.cpp3
-rw-r--r--src/mame/drivers/tm990189.cpp9
-rw-r--r--src/mame/drivers/tmaster.cpp3
-rw-r--r--src/mame/drivers/tmc1800.cpp16
-rw-r--r--src/mame/drivers/tmc2000e.cpp4
-rw-r--r--src/mame/drivers/tmc600.cpp4
-rw-r--r--src/mame/drivers/tmmjprd.cpp3
-rw-r--r--src/mame/drivers/tmnt.cpp40
-rw-r--r--src/mame/drivers/tmspoker.cpp6
-rw-r--r--src/mame/drivers/tnzs.cpp36
-rw-r--r--src/mame/drivers/toaplan1.cpp44
-rw-r--r--src/mame/drivers/toaplan2.cpp74
-rw-r--r--src/mame/drivers/toki.cpp18
-rw-r--r--src/mame/drivers/tomcat.cpp9
-rw-r--r--src/mame/drivers/tonton.cpp6
-rw-r--r--src/mame/drivers/toobin.cpp2
-rw-r--r--src/mame/drivers/topspeed.cpp8
-rw-r--r--src/mame/drivers/toratora.cpp3
-rw-r--r--src/mame/drivers/tosh1000.cpp9
-rw-r--r--src/mame/drivers/tourtabl.cpp3
-rw-r--r--src/mame/drivers/tourvis.cpp9
-rw-r--r--src/mame/drivers/toypop.cpp15
-rw-r--r--src/mame/drivers/tp84.cpp8
-rw-r--r--src/mame/drivers/tr175.cpp9
-rw-r--r--src/mame/drivers/trackfld.cpp20
-rw-r--r--src/mame/drivers/tranz330.cpp16
-rw-r--r--src/mame/drivers/travrusa.cpp2
-rw-r--r--src/mame/drivers/tricep.cpp3
-rw-r--r--src/mame/drivers/triforce.cpp3
-rw-r--r--src/mame/drivers/triplhnt.cpp2
-rw-r--r--src/mame/drivers/trs80.cpp28
-rw-r--r--src/mame/drivers/trs80dt1.cpp9
-rw-r--r--src/mame/drivers/trs80m2.cpp8
-rw-r--r--src/mame/drivers/truco.cpp2
-rw-r--r--src/mame/drivers/trucocl.cpp2
-rw-r--r--src/mame/drivers/trvmadns.cpp6
-rw-r--r--src/mame/drivers/trvquest.cpp2
-rw-r--r--src/mame/drivers/tryout.cpp4
-rw-r--r--src/mame/drivers/ts3000.cpp6
-rw-r--r--src/mame/drivers/ts802.cpp6
-rw-r--r--src/mame/drivers/ts803.cpp6
-rw-r--r--src/mame/drivers/ts816.cpp6
-rw-r--r--src/mame/drivers/tsamurai.cpp26
-rw-r--r--src/mame/drivers/tsispch.cpp8
-rw-r--r--src/mame/drivers/ttchamp.cpp6
-rw-r--r--src/mame/drivers/tti.cpp3
-rw-r--r--src/mame/drivers/tubep.cpp26
-rw-r--r--src/mame/drivers/tugboat.cpp3
-rw-r--r--src/mame/drivers/tumbleb.cpp22
-rw-r--r--src/mame/drivers/tunhunt.cpp2
-rw-r--r--src/mame/drivers/turbo.cpp16
-rw-r--r--src/mame/drivers/turrett.cpp4
-rw-r--r--src/mame/drivers/tutankhm.cpp2
-rw-r--r--src/mame/drivers/tutor.cpp9
-rw-r--r--src/mame/drivers/tv910.cpp3
-rw-r--r--src/mame/drivers/tv912.cpp9
-rw-r--r--src/mame/drivers/tv950.cpp3
-rw-r--r--src/mame/drivers/tv990.cpp3
-rw-r--r--src/mame/drivers/tvboy.cpp6
-rw-r--r--src/mame/drivers/tvc.cpp6
-rw-r--r--src/mame/drivers/tvcapcom.cpp3
-rw-r--r--src/mame/drivers/tvgame.cpp6
-rw-r--r--src/mame/drivers/twin16.cpp8
-rw-r--r--src/mame/drivers/twincobr.cpp12
-rw-r--r--src/mame/drivers/twinkle.cpp9
-rw-r--r--src/mame/drivers/twins.cpp15
-rw-r--r--src/mame/drivers/tx0.cpp4
-rw-r--r--src/mame/drivers/tx1.cpp20
-rw-r--r--src/mame/drivers/uapce.cpp9
-rw-r--r--src/mame/drivers/uknc.cpp6
-rw-r--r--src/mame/drivers/ultraman.cpp6
-rw-r--r--src/mame/drivers/ultratnk.cpp2
-rw-r--r--src/mame/drivers/ultrsprt.cpp6
-rw-r--r--src/mame/drivers/umipoker.cpp9
-rw-r--r--src/mame/drivers/undrfire.cpp6
-rw-r--r--src/mame/drivers/unianapc.cpp3
-rw-r--r--src/mame/drivers/unichamp.cpp3
-rw-r--r--src/mame/drivers/unico.cpp6
-rw-r--r--src/mame/drivers/unior.cpp6
-rw-r--r--src/mame/drivers/unistar.cpp6
-rw-r--r--src/mame/drivers/univac.cpp6
-rw-r--r--src/mame/drivers/unixpc.cpp6
-rw-r--r--src/mame/drivers/unkhorse.cpp6
-rw-r--r--src/mame/drivers/upscope.cpp9
-rw-r--r--src/mame/drivers/usgames.cpp4
-rw-r--r--src/mame/drivers/ut88.cpp8
-rw-r--r--src/mame/drivers/uzebox.cpp9
-rw-r--r--src/mame/drivers/v100.cpp6
-rw-r--r--src/mame/drivers/v102.cpp9
-rw-r--r--src/mame/drivers/v1050.cpp6
-rw-r--r--src/mame/drivers/v6809.cpp3
-rw-r--r--src/mame/drivers/vamphalf.cpp54
-rw-r--r--src/mame/drivers/vaportra.cpp4
-rw-r--r--src/mame/drivers/vastar.cpp8
-rw-r--r--src/mame/drivers/vax11.cpp3
-rw-r--r--src/mame/drivers/vball.cpp4
-rw-r--r--src/mame/drivers/vboy.cpp6
-rw-r--r--src/mame/drivers/vc4000.cpp4
-rw-r--r--src/mame/drivers/vcombat.cpp12
-rw-r--r--src/mame/drivers/vcs80.cpp6
-rw-r--r--src/mame/drivers/vd.cpp6
-rw-r--r--src/mame/drivers/vector06.cpp13
-rw-r--r--src/mame/drivers/vector4.cpp6
-rw-r--r--src/mame/drivers/vectrex.cpp4
-rw-r--r--src/mame/drivers/vectrix.cpp6
-rw-r--r--src/mame/drivers/vega.cpp6
-rw-r--r--src/mame/drivers/vegaeo.cpp3
-rw-r--r--src/mame/drivers/vegas.cpp35
-rw-r--r--src/mame/drivers/vendetta.cpp10
-rw-r--r--src/mame/drivers/vertigo.cpp6
-rw-r--r--src/mame/drivers/vg5k.cpp6
-rw-r--r--src/mame/drivers/vgmplay.cpp48
-rw-r--r--src/mame/drivers/vic10.cpp9
-rw-r--r--src/mame/drivers/vic20.cpp9
-rw-r--r--src/mame/drivers/vicdual.cpp64
-rw-r--r--src/mame/drivers/victor9k.cpp3
-rw-r--r--src/mame/drivers/victory.cpp4
-rw-r--r--src/mame/drivers/vidbrain.cpp4
-rw-r--r--src/mame/drivers/videopin.cpp2
-rw-r--r--src/mame/drivers/videopkr.cpp24
-rw-r--r--src/mame/drivers/vigilant.cpp14
-rw-r--r--src/mame/drivers/vii.cpp3
-rw-r--r--src/mame/drivers/vindictr.cpp2
-rw-r--r--src/mame/drivers/vip.cpp4
-rw-r--r--src/mame/drivers/viper.cpp3
-rw-r--r--src/mame/drivers/vis.cpp6
-rw-r--r--src/mame/drivers/vixen.cpp8
-rw-r--r--src/mame/drivers/vk100.cpp6
-rw-r--r--src/mame/drivers/vlc.cpp3
-rw-r--r--src/mame/drivers/volfied.cpp4
-rw-r--r--src/mame/drivers/votrpss.cpp6
-rw-r--r--src/mame/drivers/votrtnt.cpp5
-rw-r--r--src/mame/drivers/voyager.cpp6
-rw-r--r--src/mame/drivers/vp101.cpp6
-rw-r--r--src/mame/drivers/vp122.cpp9
-rw-r--r--src/mame/drivers/vp60.cpp9
-rw-r--r--src/mame/drivers/vpoker.cpp3
-rw-r--r--src/mame/drivers/vroulet.cpp6
-rw-r--r--src/mame/drivers/vsmilepro.cpp3
-rw-r--r--src/mame/drivers/vsnes.cpp8
-rw-r--r--src/mame/drivers/vt100.cpp12
-rw-r--r--src/mame/drivers/vt220.cpp12
-rw-r--r--src/mame/drivers/vt240.cpp15
-rw-r--r--src/mame/drivers/vt320.cpp6
-rw-r--r--src/mame/drivers/vt520.cpp6
-rw-r--r--src/mame/drivers/vta2000.cpp6
-rw-r--r--src/mame/drivers/vtech1.cpp15
-rw-r--r--src/mame/drivers/vtech2.cpp4
-rw-r--r--src/mame/drivers/vulgus.cpp4
-rw-r--r--src/mame/drivers/wacky_gator.cpp3
-rw-r--r--src/mame/drivers/wallc.cpp6
-rw-r--r--src/mame/drivers/wangpc.cpp6
-rw-r--r--src/mame/drivers/wardner.cpp21
-rw-r--r--src/mame/drivers/warpsped.cpp6
-rw-r--r--src/mame/drivers/warpwarp.cpp8
-rw-r--r--src/mame/drivers/warriorb.cpp6
-rw-r--r--src/mame/drivers/wc90.cpp6
-rw-r--r--src/mame/drivers/wc90b.cpp6
-rw-r--r--src/mame/drivers/wecleman.cpp12
-rw-r--r--src/mame/drivers/welltris.cpp6
-rw-r--r--src/mame/drivers/wgp.cpp6
-rw-r--r--src/mame/drivers/wheelfir.cpp9
-rw-r--r--src/mame/drivers/white_mod.cpp3
-rw-r--r--src/mame/drivers/whitestar.cpp3
-rw-r--r--src/mame/drivers/wicat.cpp15
-rw-r--r--src/mame/drivers/wico.cpp6
-rw-r--r--src/mame/drivers/wildpkr.cpp12
-rw-r--r--src/mame/drivers/williams.cpp26
-rw-r--r--src/mame/drivers/wink.cpp12
-rw-r--r--src/mame/drivers/wiping.cpp4
-rw-r--r--src/mame/drivers/witch.cpp6
-rw-r--r--src/mame/drivers/wiz.cpp14
-rw-r--r--src/mame/drivers/wmg.cpp6
-rw-r--r--src/mame/drivers/wms.cpp12
-rw-r--r--src/mame/drivers/wolfpack.cpp2
-rw-r--r--src/mame/drivers/wpc_95.cpp3
-rw-r--r--src/mame/drivers/wpc_an.cpp3
-rw-r--r--src/mame/drivers/wpc_dcs.cpp3
-rw-r--r--src/mame/drivers/wpc_dot.cpp2
-rw-r--r--src/mame/drivers/wpc_flip1.cpp2
-rw-r--r--src/mame/drivers/wpc_flip2.cpp2
-rw-r--r--src/mame/drivers/wpc_s.cpp3
-rw-r--r--src/mame/drivers/wrally.cpp8
-rw-r--r--src/mame/drivers/wswan.cpp6
-rw-r--r--src/mame/drivers/wwfsstar.cpp4
-rw-r--r--src/mame/drivers/wyse.cpp6
-rw-r--r--src/mame/drivers/wyvernf0.cpp6
-rw-r--r--src/mame/drivers/x07.cpp4
-rw-r--r--src/mame/drivers/x1.cpp12
-rw-r--r--src/mame/drivers/x1twin.cpp56
-rw-r--r--src/mame/drivers/x68k.cpp6
-rw-r--r--src/mame/drivers/xain.cpp8
-rw-r--r--src/mame/drivers/xavix.cpp3
-rw-r--r--src/mame/drivers/xbox.cpp6
-rw-r--r--src/mame/drivers/xerox820.cpp12
-rw-r--r--src/mame/drivers/xexex.cpp4
-rw-r--r--src/mame/drivers/xmen.cpp8
-rw-r--r--src/mame/drivers/xor100.cpp4
-rw-r--r--src/mame/drivers/xorworld.cpp2
-rw-r--r--src/mame/drivers/xtheball.cpp3
-rw-r--r--src/mame/drivers/xtom3d.cpp6
-rw-r--r--src/mame/drivers/xxmissio.cpp4
-rw-r--r--src/mame/drivers/xybots.cpp2
-rw-r--r--src/mame/drivers/xyonix.cpp4
-rw-r--r--src/mame/drivers/yiear.cpp4
-rw-r--r--src/mame/drivers/ymmu100.cpp6
-rw-r--r--src/mame/drivers/yunsun16.cpp8
-rw-r--r--src/mame/drivers/yunsung8.cpp6
-rw-r--r--src/mame/drivers/yuvomz80.cpp15
-rw-r--r--src/mame/drivers/z100.cpp6
-rw-r--r--src/mame/drivers/z1013.cpp6
-rw-r--r--src/mame/drivers/z80dev.cpp6
-rw-r--r--src/mame/drivers/z80ne.cpp14
-rw-r--r--src/mame/drivers/z88.cpp4
-rw-r--r--src/mame/drivers/z9001.cpp6
-rw-r--r--src/mame/drivers/zac2650.cpp2
-rw-r--r--src/mame/drivers/zac_1.cpp18
-rw-r--r--src/mame/drivers/zac_2.cpp9
-rw-r--r--src/mame/drivers/zac_proto.cpp3
-rw-r--r--src/mame/drivers/zaccaria.cpp2
-rw-r--r--src/mame/drivers/zapcomputer.cpp6
-rw-r--r--src/mame/drivers/zaurus.cpp3
-rw-r--r--src/mame/drivers/zaxxon.cpp20
-rw-r--r--src/mame/drivers/zerozone.cpp4
-rw-r--r--src/mame/drivers/zexall.cpp3
-rw-r--r--src/mame/drivers/zms8085.cpp6
-rw-r--r--src/mame/drivers/zn.cpp69
-rw-r--r--src/mame/drivers/zodiack.cpp6
-rw-r--r--src/mame/drivers/zorba.cpp7
-rw-r--r--src/mame/drivers/zr107.cpp15
-rw-r--r--src/mame/drivers/zrt80.cpp6
-rw-r--r--src/mame/drivers/zsbc3.cpp6
-rw-r--r--src/mame/drivers/zwackery.cpp3
-rw-r--r--src/mame/drivers/zx.cpp16
-rw-r--r--src/mame/etc/korgm1.cpp6
-rw-r--r--src/mame/etc/template_driver.cpp6
-rw-r--r--src/mame/includes/1942.h5
-rw-r--r--src/mame/includes/1943.h2
-rw-r--r--src/mame/includes/20pacgal.h4
-rw-r--r--src/mame/includes/3do.h1
-rw-r--r--src/mame/includes/40love.h3
-rw-r--r--src/mame/includes/4enraya.h4
-rw-r--r--src/mame/includes/8080bw.h37
-rw-r--r--src/mame/includes/88games.h2
-rw-r--r--src/mame/includes/a2600.h1
-rw-r--r--src/mame/includes/abc1600.h2
-rw-r--r--src/mame/includes/abc80.h2
-rw-r--r--src/mame/includes/abc80x.h8
-rw-r--r--src/mame/includes/ac1.h3
-rw-r--r--src/mame/includes/actfancr.h3
-rw-r--r--src/mame/includes/adam.h4
-rw-r--r--src/mame/includes/advision.h2
-rw-r--r--src/mame/includes/aeroboto.h2
-rw-r--r--src/mame/includes/aerofgt.h25
-rw-r--r--src/mame/includes/aim65.h1
-rw-r--r--src/mame/includes/airbustr.h6
-rw-r--r--src/mame/includes/ajax.h3
-rw-r--r--src/mame/includes/alesis.h5
-rw-r--r--src/mame/includes/aliens.h3
-rw-r--r--src/mame/includes/alpha68k.h15
-rw-r--r--src/mame/includes/amiga.h5
-rw-r--r--src/mame/includes/ampoker2.h2
-rw-r--r--src/mame/includes/amspdwy.h3
-rw-r--r--src/mame/includes/amstrad.h2
-rw-r--r--src/mame/includes/angelkds.h5
-rw-r--r--src/mame/includes/apollo.h6
-rw-r--r--src/mame/includes/apple2gs.h1
-rw-r--r--src/mame/includes/apple3.h1
-rw-r--r--src/mame/includes/appoooh.h3
-rw-r--r--src/mame/includes/aquarium.h3
-rw-r--r--src/mame/includes/aquarius.h2
-rw-r--r--src/mame/includes/arabian.h2
-rw-r--r--src/mame/includes/arcadecl.h1
-rw-r--r--src/mame/includes/arcadia.h1
-rw-r--r--src/mame/includes/argus.h7
-rw-r--r--src/mame/includes/arkanoid.h7
-rw-r--r--src/mame/includes/armedf.h15
-rw-r--r--src/mame/includes/artmagic.h8
-rw-r--r--src/mame/includes/ashnojoe.h3
-rw-r--r--src/mame/includes/asterix.h2
-rw-r--r--src/mame/includes/asteroid.h3
-rw-r--r--src/mame/includes/astrocde.h17
-rw-r--r--src/mame/includes/astrof.h3
-rw-r--r--src/mame/includes/asuka.h9
-rw-r--r--src/mame/includes/atarifb.h4
-rw-r--r--src/mame/includes/atarig1.h1
-rw-r--r--src/mame/includes/atarig42.h1
-rw-r--r--src/mame/includes/atarigt.h1
-rw-r--r--src/mame/includes/atarigx2.h1
-rw-r--r--src/mame/includes/atarist.h7
-rw-r--r--src/mame/includes/atarisy1.h2
-rw-r--r--src/mame/includes/atarisy2.h2
-rw-r--r--src/mame/includes/atetris.h3
-rw-r--r--src/mame/includes/atom.h3
-rw-r--r--src/mame/includes/aussiebyte.h2
-rw-r--r--src/mame/includes/avalnche.h2
-rw-r--r--src/mame/includes/avigo.h3
-rw-r--r--src/mame/includes/aztarac.h2
-rw-r--r--src/mame/includes/b2m.h3
-rw-r--r--src/mame/includes/badlands.h4
-rw-r--r--src/mame/includes/bagman.h3
-rw-r--r--src/mame/includes/balsente.h7
-rw-r--r--src/mame/includes/bankp.h2
-rw-r--r--src/mame/includes/baraduke.h3
-rw-r--r--src/mame/includes/batman.h1
-rw-r--r--src/mame/includes/battlane.h1
-rw-r--r--src/mame/includes/battlera.h3
-rw-r--r--src/mame/includes/battlex.h3
-rw-r--r--src/mame/includes/battlnts.h2
-rw-r--r--src/mame/includes/bbc.h8
-rw-r--r--src/mame/includes/bbusters.h5
-rw-r--r--src/mame/includes/beathead.h1
-rw-r--r--src/mame/includes/bebox.h2
-rw-r--r--src/mame/includes/bfm_ad5.h1
-rw-r--r--src/mame/includes/bfm_sc4.h2
-rw-r--r--src/mame/includes/bfm_sc5.h1
-rw-r--r--src/mame/includes/bigevglf.h5
-rw-r--r--src/mame/includes/bigstrkb.h1
-rw-r--r--src/mame/includes/bionicc.h2
-rw-r--r--src/mame/includes/bishi.h1
-rw-r--r--src/mame/includes/bk.h2
-rw-r--r--src/mame/includes/bking.h4
-rw-r--r--src/mame/includes/bladestl.h2
-rw-r--r--src/mame/includes/blktiger.h6
-rw-r--r--src/mame/includes/blmbycar.h4
-rw-r--r--src/mame/includes/blockout.h3
-rw-r--r--src/mame/includes/bloodbro.h7
-rw-r--r--src/mame/includes/blstroid.h1
-rw-r--r--src/mame/includes/blueprnt.h4
-rw-r--r--src/mame/includes/bogeyman.h1
-rw-r--r--src/mame/includes/bombjack.h3
-rw-r--r--src/mame/includes/boogwing.h3
-rw-r--r--src/mame/includes/bosco.h1
-rw-r--r--src/mame/includes/bottom9.h2
-rw-r--r--src/mame/includes/brkthru.h3
-rw-r--r--src/mame/includes/bsktball.h1
-rw-r--r--src/mame/includes/btime.h10
-rw-r--r--src/mame/includes/btoads.h3
-rw-r--r--src/mame/includes/bublbobl.h11
-rw-r--r--src/mame/includes/buggychl.h2
-rw-r--r--src/mame/includes/bullet.h4
-rw-r--r--src/mame/includes/busicom.h5
-rw-r--r--src/mame/includes/bw12.h2
-rw-r--r--src/mame/includes/bw2.h3
-rw-r--r--src/mame/includes/bwidow.h3
-rw-r--r--src/mame/includes/bwing.h5
-rw-r--r--src/mame/includes/bzone.h2
-rw-r--r--src/mame/includes/c80.h2
-rw-r--r--src/mame/includes/cabal.h12
-rw-r--r--src/mame/includes/calomega.h4
-rw-r--r--src/mame/includes/canyon.h1
-rw-r--r--src/mame/includes/capbowl.h3
-rw-r--r--src/mame/includes/carpolo.h1
-rw-r--r--src/mame/includes/cave.h32
-rw-r--r--src/mame/includes/cbasebal.h3
-rw-r--r--src/mame/includes/cbuster.h2
-rw-r--r--src/mame/includes/ccastles.h1
-rw-r--r--src/mame/includes/cchasm.h3
-rw-r--r--src/mame/includes/cclimber.h16
-rw-r--r--src/mame/includes/cdi.h6
-rw-r--r--src/mame/includes/centiped.h12
-rw-r--r--src/mame/includes/cgc7900.h2
-rw-r--r--src/mame/includes/chaknpop.h1
-rw-r--r--src/mame/includes/champbas.h11
-rw-r--r--src/mame/includes/changela.h1
-rw-r--r--src/mame/includes/channelf.h2
-rw-r--r--src/mame/includes/cheekyms.h2
-rw-r--r--src/mame/includes/chqflag.h3
-rw-r--r--src/mame/includes/cidelsa.h10
-rw-r--r--src/mame/includes/cinemat.h10
-rw-r--r--src/mame/includes/circus.h1
-rw-r--r--src/mame/includes/circusc.h2
-rw-r--r--src/mame/includes/cischeat.h21
-rw-r--r--src/mame/includes/citycon.h2
-rw-r--r--src/mame/includes/cloak.h2
-rw-r--r--src/mame/includes/cloud9.h1
-rw-r--r--src/mame/includes/clshroad.h2
-rw-r--r--src/mame/includes/cninja.h11
-rw-r--r--src/mame/includes/coco.h2
-rw-r--r--src/mame/includes/coco3.h1
-rw-r--r--src/mame/includes/coleco.h3
-rw-r--r--src/mame/includes/combatsc.h4
-rw-r--r--src/mame/includes/commando.h3
-rw-r--r--src/mame/includes/compgolf.h1
-rw-r--r--src/mame/includes/comquest.h1
-rw-r--r--src/mame/includes/comx35.h3
-rw-r--r--src/mame/includes/concept.h1
-rw-r--r--src/mame/includes/contra.h2
-rw-r--r--src/mame/includes/coolpool.h7
-rw-r--r--src/mame/includes/cop01.h6
-rw-r--r--src/mame/includes/copsnrob.h1
-rw-r--r--src/mame/includes/cosmic.h5
-rw-r--r--src/mame/includes/cosmicos.h2
-rw-r--r--src/mame/includes/cps1.h29
-rw-r--r--src/mame/includes/cps3.h2
-rw-r--r--src/mame/includes/crbaloon.h2
-rw-r--r--src/mame/includes/crgolf.h7
-rw-r--r--src/mame/includes/crimfght.h3
-rw-r--r--src/mame/includes/crospang.h6
-rw-r--r--src/mame/includes/crshrace.h3
-rw-r--r--src/mame/includes/crvision.h2
-rw-r--r--src/mame/includes/cvs.h5
-rw-r--r--src/mame/includes/cxhumax.h1
-rw-r--r--src/mame/includes/cyberbal.h5
-rw-r--r--src/mame/includes/cybiko.h6
-rw-r--r--src/mame/includes/cybstorm.h2
-rw-r--r--src/mame/includes/dai.h2
-rw-r--r--src/mame/includes/darius.h5
-rw-r--r--src/mame/includes/darkmist.h2
-rw-r--r--src/mame/includes/darkseal.h2
-rw-r--r--src/mame/includes/dassault.h3
-rw-r--r--src/mame/includes/dbz.h3
-rw-r--r--src/mame/includes/dc.h1
-rw-r--r--src/mame/includes/dccons.h3
-rw-r--r--src/mame/includes/dcheese.h2
-rw-r--r--src/mame/includes/dcon.h4
-rw-r--r--src/mame/includes/dday.h1
-rw-r--r--src/mame/includes/ddragon.h8
-rw-r--r--src/mame/includes/ddragon3.h6
-rw-r--r--src/mame/includes/ddribble.h4
-rw-r--r--src/mame/includes/deadang.h4
-rw-r--r--src/mame/includes/dec0.h16
-rw-r--r--src/mame/includes/dec8.h19
-rw-r--r--src/mame/includes/deco32.h12
-rw-r--r--src/mame/includes/deco_mlc.h2
-rw-r--r--src/mame/includes/decocass.h2
-rw-r--r--src/mame/includes/deniam.h4
-rw-r--r--src/mame/includes/dgn_beta.h1
-rw-r--r--src/mame/includes/dietgo.h3
-rw-r--r--src/mame/includes/digdug.h1
-rw-r--r--src/mame/includes/divebomb.h6
-rw-r--r--src/mame/includes/djboy.h7
-rw-r--r--src/mame/includes/djmain.h5
-rw-r--r--src/mame/includes/dkong.h14
-rw-r--r--src/mame/includes/dm7000.h1
-rw-r--r--src/mame/includes/docastle.h7
-rw-r--r--src/mame/includes/dogfgt.h2
-rw-r--r--src/mame/includes/dragon.h1
-rw-r--r--src/mame/includes/dragrace.h1
-rw-r--r--src/mame/includes/drgnmst.h1
-rw-r--r--src/mame/includes/dribling.h2
-rw-r--r--src/mame/includes/drmicro.h2
-rw-r--r--src/mame/includes/dynax.h38
-rw-r--r--src/mame/includes/dynduke.h6
-rw-r--r--src/mame/includes/electron.h1
-rw-r--r--src/mame/includes/elf.h2
-rw-r--r--src/mame/includes/eolith.h3
-rw-r--r--src/mame/includes/epos.h4
-rw-r--r--src/mame/includes/eprom.h3
-rw-r--r--src/mame/includes/equites.h11
-rw-r--r--src/mame/includes/esd16.h7
-rw-r--r--src/mame/includes/espial.h4
-rw-r--r--src/mame/includes/esripsys.h4
-rw-r--r--src/mame/includes/eti660.h2
-rw-r--r--src/mame/includes/exedexes.h2
-rw-r--r--src/mame/includes/exerion.h2
-rw-r--r--src/mame/includes/exidy.h11
-rw-r--r--src/mame/includes/exidy440.h2
-rw-r--r--src/mame/includes/exp85.h2
-rw-r--r--src/mame/includes/exprraid.h3
-rw-r--r--src/mame/includes/exterm.h4
-rw-r--r--src/mame/includes/exzisus.h4
-rw-r--r--src/mame/includes/f1gp.h7
-rw-r--r--src/mame/includes/fantland.h9
-rw-r--r--src/mame/includes/fastfred.h4
-rw-r--r--src/mame/includes/fastlane.h1
-rw-r--r--src/mame/includes/fcombat.h2
-rw-r--r--src/mame/includes/fgoal.h1
-rw-r--r--src/mame/includes/finalizr.h3
-rw-r--r--src/mame/includes/firetrap.h4
-rw-r--r--src/mame/includes/firetrk.h3
-rw-r--r--src/mame/includes/fitfight.h3
-rw-r--r--src/mame/includes/flkatck.h2
-rw-r--r--src/mame/includes/flstory.h7
-rw-r--r--src/mame/includes/fm7.h13
-rw-r--r--src/mame/includes/fmtowns.h5
-rw-r--r--src/mame/includes/foodf.h1
-rw-r--r--src/mame/includes/freekick.h9
-rw-r--r--src/mame/includes/fromanc2.h7
-rw-r--r--src/mame/includes/fromance.h7
-rw-r--r--src/mame/includes/funkybee.h2
-rw-r--r--src/mame/includes/funkyjet.h2
-rw-r--r--src/mame/includes/funworld.h10
-rw-r--r--src/mame/includes/funybubl.h3
-rw-r--r--src/mame/includes/fuukifg2.h3
-rw-r--r--src/mame/includes/fuukifg3.h3
-rw-r--r--src/mame/includes/gaelco.h9
-rw-r--r--src/mame/includes/gaelco2.h8
-rw-r--r--src/mame/includes/gaelco3d.h10
-rw-r--r--src/mame/includes/gaiden.h7
-rw-r--r--src/mame/includes/galaga.h4
-rw-r--r--src/mame/includes/galastrm.h1
-rw-r--r--src/mame/includes/galaxia.h4
-rw-r--r--src/mame/includes/galaxian.h44
-rw-r--r--src/mame/includes/galaxold.h29
-rw-r--r--src/mame/includes/galaxy.h3
-rw-r--r--src/mame/includes/galeb.h1
-rw-r--r--src/mame/includes/galivan.h6
-rw-r--r--src/mame/includes/galpani2.h2
-rw-r--r--src/mame/includes/galpanic.h3
-rw-r--r--src/mame/includes/galspnbl.h2
-rw-r--r--src/mame/includes/gamecom.h1
-rw-r--r--src/mame/includes/gameplan.h4
-rw-r--r--src/mame/includes/gamepock.h1
-rw-r--r--src/mame/includes/gaplus.h3
-rw-r--r--src/mame/includes/gatron.h2
-rw-r--r--src/mame/includes/gauntlet.h2
-rw-r--r--src/mame/includes/gb.h4
-rw-r--r--src/mame/includes/gba.h1
-rw-r--r--src/mame/includes/gberet.h3
-rw-r--r--src/mame/includes/gcpinbal.h1
-rw-r--r--src/mame/includes/gijoe.h2
-rw-r--r--src/mame/includes/ginganin.h2
-rw-r--r--src/mame/includes/gladiatr.h9
-rw-r--r--src/mame/includes/glass.h3
-rw-r--r--src/mame/includes/gng.h3
-rw-r--r--src/mame/includes/goal92.h2
-rw-r--r--src/mame/includes/goindol.h2
-rw-r--r--src/mame/includes/goldstar.h29
-rw-r--r--src/mame/includes/gomoku.h1
-rw-r--r--src/mame/includes/gotcha.h2
-rw-r--r--src/mame/includes/gottlieb.h2
-rw-r--r--src/mame/includes/gotya.h1
-rw-r--r--src/mame/includes/gp32.h1
-rw-r--r--src/mame/includes/gradius3.h3
-rw-r--r--src/mame/includes/grchamp.h5
-rw-r--r--src/mame/includes/gridlee.h4
-rw-r--r--src/mame/includes/groundfx.h1
-rw-r--r--src/mame/includes/gstriker.h4
-rw-r--r--src/mame/includes/gsword.h8
-rw-r--r--src/mame/includes/gumbo.h3
-rw-r--r--src/mame/includes/gunbustr.h1
-rw-r--r--src/mame/includes/gundealr.h4
-rw-r--r--src/mame/includes/gunsmoke.h2
-rw-r--r--src/mame/includes/gyruss.h6
-rw-r--r--src/mame/includes/hanaawas.h2
-rw-r--r--src/mame/includes/harddriv.h20
-rw-r--r--src/mame/includes/hcastle.h2
-rw-r--r--src/mame/includes/hec2hrp.h9
-rw-r--r--src/mame/includes/hexion.h2
-rw-r--r--src/mame/includes/higemaru.h1
-rw-r--r--src/mame/includes/himesiki.h4
-rw-r--r--src/mame/includes/hitme.h2
-rw-r--r--src/mame/includes/hnayayoi.h5
-rw-r--r--src/mame/includes/hng64.h5
-rw-r--r--src/mame/includes/holeland.h3
-rw-r--r--src/mame/includes/homedata.h10
-rw-r--r--src/mame/includes/homerun.h2
-rw-r--r--src/mame/includes/hp48.h1
-rw-r--r--src/mame/includes/hp9845.h2
-rw-r--r--src/mame/includes/huebler.h2
-rw-r--r--src/mame/includes/hx20.h5
-rw-r--r--src/mame/includes/hyhoo.h2
-rw-r--r--src/mame/includes/hyperspt.h8
-rw-r--r--src/mame/includes/hyprduel.h4
-rw-r--r--src/mame/includes/ikki.h2
-rw-r--r--src/mame/includes/imds2.h4
-rw-r--r--src/mame/includes/interpro.h20
-rw-r--r--src/mame/includes/intv.h6
-rw-r--r--src/mame/includes/inufuku.h3
-rw-r--r--src/mame/includes/iqblock.h2
-rw-r--r--src/mame/includes/irobot.h1
-rw-r--r--src/mame/includes/ironhors.h5
-rw-r--r--src/mame/includes/itech32.h8
-rw-r--r--src/mame/includes/itech8.h10
-rw-r--r--src/mame/includes/jack.h7
-rw-r--r--src/mame/includes/jackal.h2
-rw-r--r--src/mame/includes/jaguar.h10
-rw-r--r--src/mame/includes/jailbrek.h2
-rw-r--r--src/mame/includes/jedi.h2
-rw-r--r--src/mame/includes/jpmimpct.h3
-rw-r--r--src/mame/includes/jpmsys5.h4
-rw-r--r--src/mame/includes/kaneko16.h15
-rw-r--r--src/mame/includes/kangaroo.h3
-rw-r--r--src/mame/includes/karnov.h6
-rw-r--r--src/mame/includes/kaypro.h3
-rw-r--r--src/mame/includes/kc.h4
-rw-r--r--src/mame/includes/kchamp.h9
-rw-r--r--src/mame/includes/kickgoal.h2
-rw-r--r--src/mame/includes/kim1.h1
-rw-r--r--src/mame/includes/kingobox.h9
-rw-r--r--src/mame/includes/klax.h3
-rw-r--r--src/mame/includes/kncljoe.h3
-rw-r--r--src/mame/includes/konamigx.h7
-rw-r--r--src/mame/includes/kopunch.h2
-rw-r--r--src/mame/includes/kramermc.h2
-rw-r--r--src/mame/includes/ksayakyu.h2
-rw-r--r--src/mame/includes/kyocera.h8
-rw-r--r--src/mame/includes/kyugo.h12
-rw-r--r--src/mame/includes/labyrunr.h1
-rw-r--r--src/mame/includes/ladybug.h2
-rw-r--r--src/mame/includes/ladyfrog.h2
-rw-r--r--src/mame/includes/laserbat.h2
-rw-r--r--src/mame/includes/lasso.h10
-rw-r--r--src/mame/includes/lastduel.h4
-rw-r--r--src/mame/includes/lazercmd.h4
-rw-r--r--src/mame/includes/lc80.h3
-rw-r--r--src/mame/includes/legionna.h12
-rw-r--r--src/mame/includes/leland.h14
-rw-r--r--src/mame/includes/lemmings.h2
-rw-r--r--src/mame/includes/lethal.h3
-rw-r--r--src/mame/includes/lethalj.h1
-rw-r--r--src/mame/includes/liberate.h9
-rw-r--r--src/mame/includes/liberatr.h2
-rw-r--r--src/mame/includes/lisa.h3
-rw-r--r--src/mame/includes/lkage.h5
-rw-r--r--src/mame/includes/llc.h4
-rw-r--r--src/mame/includes/lockon.h5
-rw-r--r--src/mame/includes/lordgun.h6
-rw-r--r--src/mame/includes/lsasquad.h5
-rw-r--r--src/mame/includes/lucky74.h2
-rw-r--r--src/mame/includes/lvcards.h4
-rw-r--r--src/mame/includes/lviv.h2
-rw-r--r--src/mame/includes/lwings.h10
-rw-r--r--src/mame/includes/lynx.h1
-rw-r--r--src/mame/includes/m10.h3
-rw-r--r--src/mame/includes/m107.h6
-rw-r--r--src/mame/includes/m5.h6
-rw-r--r--src/mame/includes/m52.h3
-rw-r--r--src/mame/includes/m57.h1
-rw-r--r--src/mame/includes/m58.h1
-rw-r--r--src/mame/includes/m62.h19
-rw-r--r--src/mame/includes/m72.h27
-rw-r--r--src/mame/includes/m79amb.h1
-rw-r--r--src/mame/includes/m90.h9
-rw-r--r--src/mame/includes/m92.h5
-rw-r--r--src/mame/includes/mac.h16
-rw-r--r--src/mame/includes/macpci.h1
-rw-r--r--src/mame/includes/macrossp.h2
-rw-r--r--src/mame/includes/madalien.h2
-rw-r--r--src/mame/includes/magmax.h3
-rw-r--r--src/mame/includes/mainevt.h4
-rw-r--r--src/mame/includes/mainsnk.h3
-rw-r--r--src/mame/includes/malzak.h4
-rw-r--r--src/mame/includes/mappy.h7
-rw-r--r--src/mame/includes/marineb.h3
-rw-r--r--src/mame/includes/mario.h6
-rw-r--r--src/mame/includes/markham.h2
-rw-r--r--src/mame/includes/matmania.h4
-rw-r--r--src/mame/includes/maygay1b.h3
-rw-r--r--src/mame/includes/mbc55x.h2
-rw-r--r--src/mame/includes/mbee.h15
-rw-r--r--src/mame/includes/mc1502.h2
-rw-r--r--src/mame/includes/mcatadv.h5
-rw-r--r--src/mame/includes/mcr.h8
-rw-r--r--src/mame/includes/mcr3.h4
-rw-r--r--src/mame/includes/mcr68.h3
-rw-r--r--src/mame/includes/meadows.h5
-rw-r--r--src/mame/includes/megadriv.h4
-rw-r--r--src/mame/includes/megadriv_acbl.h4
-rw-r--r--src/mame/includes/megadriv_rad.h1
-rw-r--r--src/mame/includes/megasys1.h13
-rw-r--r--src/mame/includes/megazone.h5
-rw-r--r--src/mame/includes/mermaid.h1
-rw-r--r--src/mame/includes/metalmx.h6
-rw-r--r--src/mame/includes/metlclsh.h2
-rw-r--r--src/mame/includes/metro.h30
-rw-r--r--src/mame/includes/mexico86.h3
-rw-r--r--src/mame/includes/mhavoc.h3
-rw-r--r--src/mame/includes/micro3d.h6
-rw-r--r--src/mame/includes/micronic.h2
-rw-r--r--src/mame/includes/microtan.h1
-rw-r--r--src/mame/includes/midtunit.h1
-rw-r--r--src/mame/includes/midvunit.h2
-rw-r--r--src/mame/includes/midwunit.h1
-rw-r--r--src/mame/includes/midxunit.h1
-rw-r--r--src/mame/includes/midyunit.h2
-rw-r--r--src/mame/includes/midzeus.h2
-rw-r--r--src/mame/includes/mikie.h2
-rw-r--r--src/mame/includes/mikro80.h4
-rw-r--r--src/mame/includes/mikromik.h2
-rw-r--r--src/mame/includes/mitchell.h10
-rw-r--r--src/mame/includes/mjkjidai.h2
-rw-r--r--src/mame/includes/model1.h8
-rw-r--r--src/mame/includes/model2.h14
-rw-r--r--src/mame/includes/model3.h3
-rw-r--r--src/mame/includes/momoko.h2
-rw-r--r--src/mame/includes/moo.h4
-rw-r--r--src/mame/includes/mosaic.h4
-rw-r--r--src/mame/includes/mouser.h4
-rw-r--r--src/mame/includes/mpf1.h7
-rw-r--r--src/mame/includes/mpu4.h2
-rw-r--r--src/mame/includes/mpz80.h2
-rw-r--r--src/mame/includes/mrdo.h1
-rw-r--r--src/mame/includes/mrflea.h4
-rw-r--r--src/mame/includes/mrjong.h2
-rw-r--r--src/mame/includes/ms32.h3
-rw-r--r--src/mame/includes/msisaac.h2
-rw-r--r--src/mame/includes/msx.h4
-rw-r--r--src/mame/includes/mtx.h3
-rw-r--r--src/mame/includes/mugsmash.h2
-rw-r--r--src/mame/includes/multfish.h3
-rw-r--r--src/mame/includes/munchmo.h5
-rw-r--r--src/mame/includes/mustache.h2
-rw-r--r--src/mame/includes/mw8080bw.h22
-rw-r--r--src/mame/includes/mystston.h1
-rw-r--r--src/mame/includes/mystwarr.h9
-rw-r--r--src/mame/includes/mz700.h6
-rw-r--r--src/mame/includes/mz80.h2
-rw-r--r--src/mame/includes/n8080.h5
-rw-r--r--src/mame/includes/namcofl.h3
-rw-r--r--src/mame/includes/namcona1.h4
-rw-r--r--src/mame/includes/namconb1.h4
-rw-r--r--src/mame/includes/namcond1.h4
-rw-r--r--src/mame/includes/namcos1.h6
-rw-r--r--src/mame/includes/namcos2.h19
-rw-r--r--src/mame/includes/namcos21.h20
-rw-r--r--src/mame/includes/namcos22.h18
-rw-r--r--src/mame/includes/namcos86.h13
-rw-r--r--src/mame/includes/naomi.h5
-rw-r--r--src/mame/includes/naughtyb.h2
-rw-r--r--src/mame/includes/nbmj8688.h14
-rw-r--r--src/mame/includes/nbmj8891.h24
-rw-r--r--src/mame/includes/nbmj8900.h3
-rw-r--r--src/mame/includes/nbmj8991.h15
-rw-r--r--src/mame/includes/nbmj9195.h35
-rw-r--r--src/mame/includes/nc.h3
-rw-r--r--src/mame/includes/nds.h4
-rw-r--r--src/mame/includes/nemesis.h16
-rw-r--r--src/mame/includes/neogeo.h5
-rw-r--r--src/mame/includes/nes.h1
-rw-r--r--src/mame/includes/newbrain.h2
-rw-r--r--src/mame/includes/news.h1
-rw-r--r--src/mame/includes/next.h7
-rw-r--r--src/mame/includes/ninjakd2.h8
-rw-r--r--src/mame/includes/ninjaw.h5
-rw-r--r--src/mame/includes/nitedrvr.h1
-rw-r--r--src/mame/includes/niyanpai.h4
-rw-r--r--src/mame/includes/nmk16.h37
-rw-r--r--src/mame/includes/norautp.h15
-rw-r--r--src/mame/includes/nova2001.h8
-rw-r--r--src/mame/includes/nycaptor.h8
-rw-r--r--src/mame/includes/ob68k1a.h1
-rw-r--r--src/mame/includes/offtwall.h1
-rw-r--r--src/mame/includes/ohmygod.h2
-rw-r--r--src/mame/includes/ojankohs.h7
-rw-r--r--src/mame/includes/ondra.h2
-rw-r--r--src/mame/includes/oneshot.h2
-rw-r--r--src/mame/includes/opwolf.h5
-rw-r--r--src/mame/includes/orao.h1
-rw-r--r--src/mame/includes/orbit.h1
-rw-r--r--src/mame/includes/orion.h6
-rw-r--r--src/mame/includes/osborne1.h4
-rw-r--r--src/mame/includes/osi.h4
-rw-r--r--src/mame/includes/othunder.h2
-rw-r--r--src/mame/includes/overdriv.h4
-rw-r--r--src/mame/includes/p2000t.h3
-rw-r--r--src/mame/includes/pacland.h3
-rw-r--r--src/mame/includes/pacman.h28
-rw-r--r--src/mame/includes/pandoras.h5
-rw-r--r--src/mame/includes/paradise.h6
-rw-r--r--src/mame/includes/parodius.h4
-rw-r--r--src/mame/includes/partner.h1
-rw-r--r--src/mame/includes/pass.h3
-rw-r--r--src/mame/includes/pastelg.h3
-rw-r--r--src/mame/includes/pbaction.h4
-rw-r--r--src/mame/includes/pc1251.h5
-rw-r--r--src/mame/includes/pc1350.h1
-rw-r--r--src/mame/includes/pc1401.h2
-rw-r--r--src/mame/includes/pc1403.h4
-rw-r--r--src/mame/includes/pc1512.h4
-rw-r--r--src/mame/includes/pc4.h2
-rw-r--r--src/mame/includes/pc6001.h7
-rw-r--r--src/mame/includes/pc8001.h4
-rw-r--r--src/mame/includes/pc8401a.h5
-rw-r--r--src/mame/includes/pc9801.h13
-rw-r--r--src/mame/includes/pce.h4
-rw-r--r--src/mame/includes/pcktgal.h2
-rw-r--r--src/mame/includes/pcw.h3
-rw-r--r--src/mame/includes/pcw16.h2
-rw-r--r--src/mame/includes/pdp1.h1
-rw-r--r--src/mame/includes/pecom.h3
-rw-r--r--src/mame/includes/pes.h2
-rw-r--r--src/mame/includes/pgm.h12
-rw-r--r--src/mame/includes/pgm2.h4
-rw-r--r--src/mame/includes/phc25.h2
-rw-r--r--src/mame/includes/phoenix.h3
-rw-r--r--src/mame/includes/pingpong.h2
-rw-r--r--src/mame/includes/pirates.h1
-rw-r--r--src/mame/includes/pitnrun.h4
-rw-r--r--src/mame/includes/pk8020.h2
-rw-r--r--src/mame/includes/pktgaldx.h3
-rw-r--r--src/mame/includes/playch10.h3
-rw-r--r--src/mame/includes/playmark.h8
-rw-r--r--src/mame/includes/plygonet.h4
-rw-r--r--src/mame/includes/pmd85.h8
-rw-r--r--src/mame/includes/pokechmp.h3
-rw-r--r--src/mame/includes/polepos.h8
-rw-r--r--src/mame/includes/policetr.h2
-rw-r--r--src/mame/includes/poly88.h4
-rw-r--r--src/mame/includes/poly880.h2
-rw-r--r--src/mame/includes/polyplay.h4
-rw-r--r--src/mame/includes/poolshrk.h1
-rw-r--r--src/mame/includes/pooyan.h1
-rw-r--r--src/mame/includes/popeye.h4
-rw-r--r--src/mame/includes/portrait.h2
-rw-r--r--src/mame/includes/powerins.h6
-rw-r--r--src/mame/includes/pp01.h2
-rw-r--r--src/mame/includes/prehisle.h3
-rw-r--r--src/mame/includes/primo.h5
-rw-r--r--src/mame/includes/prof180x.h2
-rw-r--r--src/mame/includes/prof80.h3
-rw-r--r--src/mame/includes/psikyo.h12
-rw-r--r--src/mame/includes/psikyo4.h2
-rw-r--r--src/mame/includes/psikyosh.h2
-rw-r--r--src/mame/includes/psion.h6
-rw-r--r--src/mame/includes/psychic5.h8
-rw-r--r--src/mame/includes/punchout.h6
-rw-r--r--src/mame/includes/px8.h4
-rw-r--r--src/mame/includes/qdrmfgp.h3
-rw-r--r--src/mame/includes/qix.h8
-rw-r--r--src/mame/includes/quasar.h5
-rw-r--r--src/mame/includes/quizdna.h5
-rw-r--r--src/mame/includes/quizpani.h1
-rw-r--r--src/mame/includes/radio86.h8
-rw-r--r--src/mame/includes/raiden.h10
-rw-r--r--src/mame/includes/raiden2.h10
-rw-r--r--src/mame/includes/rallyx.h3
-rw-r--r--src/mame/includes/rampart.h1
-rw-r--r--src/mame/includes/rastan.h2
-rw-r--r--src/mame/includes/rbisland.h4
-rw-r--r--src/mame/includes/realbrk.h5
-rw-r--r--src/mame/includes/redalert.h7
-rw-r--r--src/mame/includes/redclash.h5
-rw-r--r--src/mame/includes/relief.h2
-rw-r--r--src/mame/includes/renegade.h3
-rw-r--r--src/mame/includes/retofinv.h4
-rw-r--r--src/mame/includes/rltennis.h2
-rw-r--r--src/mame/includes/rm380z.h4
-rw-r--r--src/mame/includes/rmnimbus.h4
-rw-r--r--src/mame/includes/rockrage.h3
-rw-r--r--src/mame/includes/rocnrope.h1
-rw-r--r--src/mame/includes/rohga.h8
-rw-r--r--src/mame/includes/rollerg.h2
-rw-r--r--src/mame/includes/rollrace.h2
-rw-r--r--src/mame/includes/route16.h8
-rw-r--r--src/mame/includes/rpunch.h2
-rw-r--r--src/mame/includes/runaway.h1
-rw-r--r--src/mame/includes/rungun.h3
-rw-r--r--src/mame/includes/s11.h3
-rw-r--r--src/mame/includes/s11a.h3
-rw-r--r--src/mame/includes/s11b.h3
-rw-r--r--src/mame/includes/s11c.h1
-rw-r--r--src/mame/includes/sage2.h1
-rw-r--r--src/mame/includes/samcoupe.h2
-rw-r--r--src/mame/includes/sauro.h5
-rw-r--r--src/mame/includes/sbasketb.h2
-rw-r--r--src/mame/includes/sbugger.h2
-rw-r--r--src/mame/includes/scotrsht.h3
-rw-r--r--src/mame/includes/scramble.h21
-rw-r--r--src/mame/includes/sderby.h6
-rw-r--r--src/mame/includes/segag80r.h12
-rw-r--r--src/mame/includes/segag80v.h7
-rw-r--r--src/mame/includes/segahang.h11
-rw-r--r--src/mame/includes/segaorun.h5
-rw-r--r--src/mame/includes/segas16a.h7
-rw-r--r--src/mame/includes/segas16b.h17
-rw-r--r--src/mame/includes/segas18.h5
-rw-r--r--src/mame/includes/segas24.h7
-rw-r--r--src/mame/includes/segas32.h17
-rw-r--r--src/mame/includes/segasp.h2
-rw-r--r--src/mame/includes/segaxbd.h13
-rw-r--r--src/mame/includes/segaybd.h9
-rw-r--r--src/mame/includes/seibuspi.h11
-rw-r--r--src/mame/includes/seicross.h5
-rw-r--r--src/mame/includes/senjyo.h6
-rw-r--r--src/mame/includes/seta.h49
-rw-r--r--src/mame/includes/seta2.h19
-rw-r--r--src/mame/includes/sf.h6
-rw-r--r--src/mame/includes/sg1000.h8
-rw-r--r--src/mame/includes/shadfrce.h2
-rw-r--r--src/mame/includes/shangha3.h5
-rw-r--r--src/mame/includes/shangkid.h11
-rw-r--r--src/mame/includes/shaolins.h1
-rw-r--r--src/mame/includes/shisen.h4
-rw-r--r--src/mame/includes/shootout.h3
-rw-r--r--src/mame/includes/shuuz.h1
-rw-r--r--src/mame/includes/sidearms.h6
-rw-r--r--src/mame/includes/sidepckt.h3
-rw-r--r--src/mame/includes/silkroad.h1
-rw-r--r--src/mame/includes/simpl156.h5
-rw-r--r--src/mame/includes/simple_st0016.h5
-rw-r--r--src/mame/includes/simpsons.h4
-rw-r--r--src/mame/includes/skullxbo.h1
-rw-r--r--src/mame/includes/skydiver.h1
-rw-r--r--src/mame/includes/skyfox.h2
-rw-r--r--src/mame/includes/skykid.h3
-rw-r--r--src/mame/includes/skyraid.h1
-rw-r--r--src/mame/includes/slapfght.h16
-rw-r--r--src/mame/includes/slapshot.h3
-rw-r--r--src/mame/includes/sms.h8
-rw-r--r--src/mame/includes/sms_bootleg.h2
-rw-r--r--src/mame/includes/snk.h39
-rw-r--r--src/mame/includes/snk6502.h5
-rw-r--r--src/mame/includes/snk68.h4
-rw-r--r--src/mame/includes/snookr10.h3
-rw-r--r--src/mame/includes/snowbros.h16
-rw-r--r--src/mame/includes/softbox.h2
-rw-r--r--src/mame/includes/solomon.h3
-rw-r--r--src/mame/includes/sonson.h2
-rw-r--r--src/mame/includes/sorcerer.h3
-rw-r--r--src/mame/includes/spacefb.h3
-rw-r--r--src/mame/includes/spbactn.h4
-rw-r--r--src/mame/includes/spcforce.h2
-rw-r--r--src/mame/includes/spdodgeb.h2
-rw-r--r--src/mame/includes/special.h5
-rw-r--r--src/mame/includes/spectrum.h10
-rw-r--r--src/mame/includes/speedatk.h2
-rw-r--r--src/mame/includes/speedbal.h4
-rw-r--r--src/mame/includes/speedspn.h4
-rw-r--r--src/mame/includes/spiders.h2
-rw-r--r--src/mame/includes/splash.h11
-rw-r--r--src/mame/includes/sprint2.h1
-rw-r--r--src/mame/includes/sprint4.h1
-rw-r--r--src/mame/includes/sprint8.h1
-rw-r--r--src/mame/includes/spy.h2
-rw-r--r--src/mame/includes/srmp2.h6
-rw-r--r--src/mame/includes/srumbler.h2
-rw-r--r--src/mame/includes/sshangha.h3
-rw-r--r--src/mame/includes/sslam.h3
-rw-r--r--src/mame/includes/ssozumo.h2
-rw-r--r--src/mame/includes/sspeedr.h2
-rw-r--r--src/mame/includes/ssrj.h1
-rw-r--r--src/mame/includes/ssv.h20
-rw-r--r--src/mame/includes/ssystem3.h1
-rw-r--r--src/mame/includes/stactics.h1
-rw-r--r--src/mame/includes/stadhero.h2
-rw-r--r--src/mame/includes/starcrus.h2
-rw-r--r--src/mame/includes/starfire.h1
-rw-r--r--src/mame/includes/starshp1.h1
-rw-r--r--src/mame/includes/starwars.h3
-rw-r--r--src/mame/includes/stfight.h5
-rw-r--r--src/mame/includes/stlforce.h2
-rw-r--r--src/mame/includes/strnskil.h2
-rw-r--r--src/mame/includes/stv.h2
-rw-r--r--src/mame/includes/subs.h1
-rw-r--r--src/mame/includes/suna16.h16
-rw-r--r--src/mame/includes/suna8.h17
-rw-r--r--src/mame/includes/super6.h2
-rw-r--r--src/mame/includes/super80.h7
-rw-r--r--src/mame/includes/superchs.h3
-rw-r--r--src/mame/includes/superqix.h5
-rw-r--r--src/mame/includes/suprloco.h3
-rw-r--r--src/mame/includes/suprnova.h1
-rw-r--r--src/mame/includes/suprridr.h4
-rw-r--r--src/mame/includes/suprslam.h3
-rw-r--r--src/mame/includes/surpratk.h2
-rw-r--r--src/mame/includes/svision.h2
-rw-r--r--src/mame/includes/swtpc09.h5
-rw-r--r--src/mame/includes/system1.h9
-rw-r--r--src/mame/includes/system16.h34
-rw-r--r--src/mame/includes/tagteam.h2
-rw-r--r--src/mame/includes/tail2nos.h3
-rw-r--r--src/mame/includes/taito_b.h20
-rw-r--r--src/mame/includes/taito_f2.h33
-rw-r--r--src/mame/includes/taito_f3.h2
-rw-r--r--src/mame/includes/taito_h.h5
-rw-r--r--src/mame/includes/taito_l.h22
-rw-r--r--src/mame/includes/taito_o.h1
-rw-r--r--src/mame/includes/taito_x.h6
-rw-r--r--src/mame/includes/taito_z.h22
-rw-r--r--src/mame/includes/taitoair.h4
-rw-r--r--src/mame/includes/taitojc.h6
-rw-r--r--src/mame/includes/taitosj.h4
-rw-r--r--src/mame/includes/tandy2k.h4
-rw-r--r--src/mame/includes/tank8.h1
-rw-r--r--src/mame/includes/tankbatt.h1
-rw-r--r--src/mame/includes/tankbust.h3
-rw-r--r--src/mame/includes/taotaido.h3
-rw-r--r--src/mame/includes/targeth.h3
-rw-r--r--src/mame/includes/tatsumi.h12
-rw-r--r--src/mame/includes/taxidriv.h4
-rw-r--r--src/mame/includes/tbowl.h3
-rw-r--r--src/mame/includes/tceptor.h6
-rw-r--r--src/mame/includes/tdv2324.h5
-rw-r--r--src/mame/includes/tecmo.h5
-rw-r--r--src/mame/includes/tecmo16.h3
-rw-r--r--src/mame/includes/tecmosys.h3
-rw-r--r--src/mame/includes/tehkanwc.h4
-rw-r--r--src/mame/includes/tek405x.h2
-rw-r--r--src/mame/includes/terracre.h6
-rw-r--r--src/mame/includes/tetrisp2.h9
-rw-r--r--src/mame/includes/thedeep.h3
-rw-r--r--src/mame/includes/thepit.h5
-rw-r--r--src/mame/includes/thief.h3
-rw-r--r--src/mame/includes/thomson.h8
-rw-r--r--src/mame/includes/thoop2.h7
-rw-r--r--src/mame/includes/thunderj.h2
-rw-r--r--src/mame/includes/thunderx.h7
-rw-r--r--src/mame/includes/ti85.h14
-rw-r--r--src/mame/includes/ti89.h5
-rw-r--r--src/mame/includes/tiamc1.h4
-rw-r--r--src/mame/includes/tigeroad.h9
-rw-r--r--src/mame/includes/tiki100.h2
-rw-r--r--src/mame/includes/timelimt.h4
-rw-r--r--src/mame/includes/timeplt.h6
-rw-r--r--src/mame/includes/tmc1800.h8
-rw-r--r--src/mame/includes/tmc2000e.h2
-rw-r--r--src/mame/includes/tmc600.h3
-rw-r--r--src/mame/includes/tmnt.h20
-rw-r--r--src/mame/includes/tnzs.h19
-rw-r--r--src/mame/includes/toaplan1.h22
-rw-r--r--src/mame/includes/toaplan2.h37
-rw-r--r--src/mame/includes/toki.h7
-rw-r--r--src/mame/includes/toobin.h1
-rw-r--r--src/mame/includes/topspeed.h4
-rw-r--r--src/mame/includes/tp84.h4
-rw-r--r--src/mame/includes/trackfld.h10
-rw-r--r--src/mame/includes/tranz330.h2
-rw-r--r--src/mame/includes/travrusa.h1
-rw-r--r--src/mame/includes/triplhnt.h1
-rw-r--r--src/mame/includes/trs80.h14
-rw-r--r--src/mame/includes/trs80m2.h4
-rw-r--r--src/mame/includes/truco.h1
-rw-r--r--src/mame/includes/trucocl.h1
-rw-r--r--src/mame/includes/tryout.h2
-rw-r--r--src/mame/includes/tsamurai.h13
-rw-r--r--src/mame/includes/tsispch.h4
-rw-r--r--src/mame/includes/tubep.h13
-rw-r--r--src/mame/includes/tumbleb.h11
-rw-r--r--src/mame/includes/tunhunt.h1
-rw-r--r--src/mame/includes/turbo.h6
-rw-r--r--src/mame/includes/turrett.h2
-rw-r--r--src/mame/includes/tutankhm.h1
-rw-r--r--src/mame/includes/twin16.h4
-rw-r--r--src/mame/includes/twincobr.h6
-rw-r--r--src/mame/includes/tx0.h2
-rw-r--r--src/mame/includes/tx1.h10
-rw-r--r--src/mame/includes/ultraman.h3
-rw-r--r--src/mame/includes/ultratnk.h1
-rw-r--r--src/mame/includes/undrfire.h3
-rw-r--r--src/mame/includes/unico.h3
-rw-r--r--src/mame/includes/usgames.h2
-rw-r--r--src/mame/includes/ut88.h4
-rw-r--r--src/mame/includes/v1050.h3
-rw-r--r--src/mame/includes/vaportra.h2
-rw-r--r--src/mame/includes/vastar.h4
-rw-r--r--src/mame/includes/vball.h2
-rw-r--r--src/mame/includes/vc4000.h2
-rw-r--r--src/mame/includes/vcs80.h3
-rw-r--r--src/mame/includes/vector06.h9
-rw-r--r--src/mame/includes/vectrex.h2
-rw-r--r--src/mame/includes/vendetta.h5
-rw-r--r--src/mame/includes/vertigo.h3
-rw-r--r--src/mame/includes/vicdual.h33
-rw-r--r--src/mame/includes/victory.h3
-rw-r--r--src/mame/includes/vidbrain.h2
-rw-r--r--src/mame/includes/videopin.h1
-rw-r--r--src/mame/includes/vigilant.h7
-rw-r--r--src/mame/includes/vindictr.h1
-rw-r--r--src/mame/includes/vip.h2
-rw-r--r--src/mame/includes/vixen.h3
-rw-r--r--src/mame/includes/volfied.h2
-rw-r--r--src/mame/includes/vsnes.h4
-rw-r--r--src/mame/includes/vtech2.h2
-rw-r--r--src/mame/includes/vulgus.h2
-rw-r--r--src/mame/includes/warpwarp.h4
-rw-r--r--src/mame/includes/warriorb.h3
-rw-r--r--src/mame/includes/wc90.h3
-rw-r--r--src/mame/includes/wc90b.h3
-rw-r--r--src/mame/includes/wecleman.h6
-rw-r--r--src/mame/includes/welltris.h3
-rw-r--r--src/mame/includes/wgp.h3
-rw-r--r--src/mame/includes/williams.h13
-rw-r--r--src/mame/includes/wiping.h2
-rw-r--r--src/mame/includes/wiz.h6
-rw-r--r--src/mame/includes/wolfpack.h1
-rw-r--r--src/mame/includes/wpc_dot.h1
-rw-r--r--src/mame/includes/wpc_flip1.h1
-rw-r--r--src/mame/includes/wpc_flip2.h1
-rw-r--r--src/mame/includes/wrally.h7
-rw-r--r--src/mame/includes/wswan.h3
-rw-r--r--src/mame/includes/wwfsstar.h2
-rw-r--r--src/mame/includes/x07.h2
-rw-r--r--src/mame/includes/x1.h6
-rw-r--r--src/mame/includes/x68k.h3
-rw-r--r--src/mame/includes/xain.h4
-rw-r--r--src/mame/includes/xbox.h5
-rw-r--r--src/mame/includes/xbox_pci.h30
-rw-r--r--src/mame/includes/xerox820.h6
-rw-r--r--src/mame/includes/xevious.h2
-rw-r--r--src/mame/includes/xexex.h2
-rw-r--r--src/mame/includes/xmen.h3
-rw-r--r--src/mame/includes/xor100.h2
-rw-r--r--src/mame/includes/xorworld.h1
-rw-r--r--src/mame/includes/xxmissio.h2
-rw-r--r--src/mame/includes/xybots.h1
-rw-r--r--src/mame/includes/xyonix.h2
-rw-r--r--src/mame/includes/yiear.h2
-rw-r--r--src/mame/includes/yunsun16.h4
-rw-r--r--src/mame/includes/yunsung8.h3
-rw-r--r--src/mame/includes/z80ne.h7
-rw-r--r--src/mame/includes/z88.h2
-rw-r--r--src/mame/includes/zac2650.h1
-rw-r--r--src/mame/includes/zaccaria.h1
-rw-r--r--src/mame/includes/zaxxon.h5
-rw-r--r--src/mame/includes/zerozone.h2
-rw-r--r--src/mame/includes/zodiack.h3
-rw-r--r--src/mame/includes/zorba.h2
-rw-r--r--src/mame/includes/zx.h7
-rw-r--r--src/mame/machine/abc1600mac.cpp6
-rw-r--r--src/mame/machine/abc1600mac.h3
-rw-r--r--src/mame/machine/abc80kb.cpp2
-rw-r--r--src/mame/machine/abc80kb.h1
-rw-r--r--src/mame/machine/acs8600_ics.cpp4
-rw-r--r--src/mame/machine/acs8600_ics.h2
-rw-r--r--src/mame/machine/apricotkb.cpp2
-rw-r--r--src/mame/machine/apricotkb.h1
-rw-r--r--src/mame/machine/asic65.cpp4
-rw-r--r--src/mame/machine/asic65.h2
-rw-r--r--src/mame/machine/at.cpp2
-rw-r--r--src/mame/machine/at.h2
-rw-r--r--src/mame/machine/awboard.cpp2
-rw-r--r--src/mame/machine/awboard.h2
-rw-r--r--src/mame/machine/cammu.cpp8
-rw-r--r--src/mame/machine/cammu.h82
-rw-r--r--src/mame/machine/cedar_magnet_plane.cpp4
-rw-r--r--src/mame/machine/cedar_magnet_plane.h2
-rw-r--r--src/mame/machine/cedar_magnet_sprite.cpp6
-rw-r--r--src/mame/machine/cedar_magnet_sprite.h3
-rw-r--r--src/mame/machine/cuda.cpp2
-rw-r--r--src/mame/machine/cuda.h1
-rw-r--r--src/mame/machine/dec_lk201.cpp2
-rw-r--r--src/mame/machine/dec_lk201.h1
-rw-r--r--src/mame/machine/deco_irq.cpp2
-rw-r--r--src/mame/machine/deco_irq.h2
-rw-r--r--src/mame/machine/decopincpu.cpp4
-rw-r--r--src/mame/machine/decopincpu.h2
-rw-r--r--src/mame/machine/egret.cpp2
-rw-r--r--src/mame/machine/egret.h1
-rw-r--r--src/mame/machine/fd1089.cpp4
-rw-r--r--src/mame/machine/fd1089.h2
-rw-r--r--src/mame/machine/fd1094.cpp2
-rw-r--r--src/mame/machine/fd1094.h1
-rw-r--r--src/mame/machine/gaelco_ds5002fp.cpp9
-rw-r--r--src/mame/machine/gaelco_ds5002fp.h2
-rw-r--r--src/mame/machine/hng64_net.cpp4
-rw-r--r--src/mame/machine/inder_sb.cpp4
-rw-r--r--src/mame/machine/inder_sb.h2
-rw-r--r--src/mame/machine/inder_vid.cpp4
-rw-r--r--src/mame/machine/inder_vid.h2
-rw-r--r--src/mame/machine/interpro_arbga.cpp4
-rw-r--r--src/mame/machine/interpro_arbga.h32
-rw-r--r--src/mame/machine/interpro_ioga.cpp24
-rw-r--r--src/mame/machine/interpro_ioga.h64
-rw-r--r--src/mame/machine/interpro_mcga.cpp4
-rw-r--r--src/mame/machine/interpro_mcga.h22
-rw-r--r--src/mame/machine/interpro_sga.cpp2
-rw-r--r--src/mame/machine/interpro_sga.h74
-rw-r--r--src/mame/machine/isbc_208.cpp2
-rw-r--r--src/mame/machine/isbc_208.h2
-rw-r--r--src/mame/machine/isbc_215g.cpp4
-rw-r--r--src/mame/machine/isbc_215g.h2
-rw-r--r--src/mame/machine/iteagle_fpga.cpp10
-rw-r--r--src/mame/machine/iteagle_fpga.h10
-rw-r--r--src/mame/machine/k573dio.cpp2
-rw-r--r--src/mame/machine/k573dio.h2
-rw-r--r--src/mame/machine/km035.cpp2
-rw-r--r--src/mame/machine/km035.h1
-rw-r--r--src/mame/machine/m1comm.cpp4
-rw-r--r--src/mame/machine/m1comm.h2
-rw-r--r--src/mame/machine/m20_8086.cpp4
-rw-r--r--src/mame/machine/m20_8086.h2
-rw-r--r--src/mame/machine/m24_z8000.cpp6
-rw-r--r--src/mame/machine/m24_z8000.h3
-rw-r--r--src/mame/machine/m3comm.cpp4
-rw-r--r--src/mame/machine/m3comm.h3
-rw-r--r--src/mame/machine/maple-dc.cpp2
-rw-r--r--src/mame/machine/maple-dc.h2
-rw-r--r--src/mame/machine/mega32x.cpp4
-rw-r--r--src/mame/machine/mega32x.h2
-rw-r--r--src/mame/machine/megacd.cpp2
-rw-r--r--src/mame/machine/megacd.h1
-rw-r--r--src/mame/machine/megadriv.cpp8
-rw-r--r--src/mame/machine/mie.cpp4
-rw-r--r--src/mame/machine/mie.h2
-rw-r--r--src/mame/machine/model1.cpp2
-rw-r--r--src/mame/machine/mpu4.cpp2
-rw-r--r--src/mame/machine/ms7004.cpp2
-rw-r--r--src/mame/machine/ms7004.h1
-rw-r--r--src/mame/machine/namco_c139.cpp6
-rw-r--r--src/mame/machine/namco_c139.h3
-rw-r--r--src/mame/machine/namco_c148.cpp2
-rw-r--r--src/mame/machine/namco_c148.h2
-rw-r--r--src/mame/machine/naomibd.cpp2
-rw-r--r--src/mame/machine/naomibd.h2
-rw-r--r--src/mame/machine/naomig1.cpp2
-rw-r--r--src/mame/machine/naomig1.h2
-rw-r--r--src/mame/machine/naomim1.cpp4
-rw-r--r--src/mame/machine/naomim1.h2
-rw-r--r--src/mame/machine/naomim4.cpp4
-rw-r--r--src/mame/machine/naomim4.h2
-rw-r--r--src/mame/machine/nextkbd.cpp2
-rw-r--r--src/mame/machine/nextkbd.h2
-rw-r--r--src/mame/machine/nextmo.cpp2
-rw-r--r--src/mame/machine/nextmo.h2
-rw-r--r--src/mame/machine/nmk004.cpp2
-rw-r--r--src/mame/machine/nmk004.h1
-rw-r--r--src/mame/machine/pcd_kbd.cpp2
-rw-r--r--src/mame/machine/pcd_kbd.h1
-rw-r--r--src/mame/machine/pcshare.cpp2
-rw-r--r--src/mame/machine/pcshare.h3
-rw-r--r--src/mame/machine/pgmprot_igs025_igs012.cpp2
-rw-r--r--src/mame/machine/pgmprot_igs025_igs012.h1
-rw-r--r--src/mame/machine/pgmprot_igs025_igs022.cpp2
-rw-r--r--src/mame/machine/pgmprot_igs025_igs022.h1
-rw-r--r--src/mame/machine/pgmprot_igs025_igs028.cpp2
-rw-r--r--src/mame/machine/pgmprot_igs025_igs028.h1
-rw-r--r--src/mame/machine/pgmprot_igs027a_type1.cpp12
-rw-r--r--src/mame/machine/pgmprot_igs027a_type1.h4
-rw-r--r--src/mame/machine/pgmprot_igs027a_type2.cpp6
-rw-r--r--src/mame/machine/pgmprot_igs027a_type2.h2
-rw-r--r--src/mame/machine/pgmprot_igs027a_type3.cpp6
-rw-r--r--src/mame/machine/pgmprot_igs027a_type3.h2
-rw-r--r--src/mame/machine/prof80mmu.cpp6
-rw-r--r--src/mame/machine/prof80mmu.h3
-rw-r--r--src/mame/machine/saturn_cdb.cpp2
-rw-r--r--src/mame/machine/saturn_cdb.h1
-rw-r--r--src/mame/machine/segabb.cpp6
-rw-r--r--src/mame/machine/segabb.h6
-rw-r--r--src/mame/machine/seicop.cpp4
-rw-r--r--src/mame/machine/seicop.h1
-rw-r--r--src/mame/machine/st0016.cpp8
-rw-r--r--src/mame/machine/st0016.h2
-rw-r--r--src/mame/machine/taitocchip.cpp4
-rw-r--r--src/mame/machine/taitocchip.h2
-rw-r--r--src/mame/machine/ti85.cpp1
-rw-r--r--src/mame/machine/wangpckb.cpp2
-rw-r--r--src/mame/machine/wangpckb.h1
-rw-r--r--src/mame/machine/wpc_shift.cpp2
-rw-r--r--src/mame/machine/wpc_shift.h2
-rw-r--r--src/mame/machine/xbox.cpp4
-rw-r--r--src/mame/machine/xbox_pci.cpp32
-rw-r--r--src/mame/video/abc1600.cpp14
-rw-r--r--src/mame/video/abc1600.h11
-rw-r--r--src/mame/video/bfm_adr2.cpp2
-rw-r--r--src/mame/video/bfm_adr2.h1
-rw-r--r--src/mame/video/bfm_dm01.cpp2
-rw-r--r--src/mame/video/bfm_dm01.h1
-rw-r--r--src/mame/video/c45.cpp4
-rw-r--r--src/mame/video/c45.h2
-rw-r--r--src/mame/video/cidelsa.cpp4
-rw-r--r--src/mame/video/comx35.cpp2
-rw-r--r--src/mame/video/decodmd1.cpp4
-rw-r--r--src/mame/video/decodmd1.h2
-rw-r--r--src/mame/video/decodmd2.cpp2
-rw-r--r--src/mame/video/decodmd2.h1
-rw-r--r--src/mame/video/decodmd3.cpp2
-rw-r--r--src/mame/video/decodmd3.h1
-rw-r--r--src/mame/video/gamate.cpp6
-rw-r--r--src/mame/video/gamate.h4
-rw-r--r--src/mame/video/gp9001.cpp4
-rw-r--r--src/mame/video/gp9001.h2
-rw-r--r--src/mame/video/igs017_igs031.cpp4
-rw-r--r--src/mame/video/igs017_igs031.h2
-rw-r--r--src/mame/video/kyocera.cpp2
-rw-r--r--src/mame/video/mikromik.cpp2
-rw-r--r--src/mame/video/nick.cpp8
-rw-r--r--src/mame/video/nick.h5
-rw-r--r--src/mame/video/pc8401a.cpp4
-rw-r--r--src/mame/video/pc_t1t.cpp2
-rw-r--r--src/mame/video/pc_t1t.h3
-rw-r--r--src/mame/video/pcd.cpp10
-rw-r--r--src/mame/video/pcd.h9
-rw-r--r--src/mame/video/pecom.cpp2
-rw-r--r--src/mame/video/powervr2.cpp4
-rw-r--r--src/mame/video/powervr2.h4
-rw-r--r--src/mame/video/qix.cpp8
-rw-r--r--src/mame/video/seibu_crtc.cpp4
-rw-r--r--src/mame/video/seibu_crtc.h1
-rw-r--r--src/mame/video/tmc600.cpp2
-rw-r--r--src/mame/video/wpc_dmd.cpp2
-rw-r--r--src/mame/video/wpc_dmd.h2
-rw-r--r--src/mame/video/ygv608.cpp6
-rw-r--r--src/mame/video/ygv608.h3
-rw-r--r--src/mame/video/zx8301.cpp4
-rw-r--r--src/mame/video/zx8301.h1
-rw-r--r--src/zexall/zexall.cpp3
3800 files changed, 18331 insertions, 10161 deletions
diff --git a/src/devices/bus/a2bus/a2applicard.cpp b/src/devices/bus/a2bus/a2applicard.cpp
index 105ef2fc920..30194a06b66 100644
--- a/src/devices/bus/a2bus/a2applicard.cpp
+++ b/src/devices/bus/a2bus/a2applicard.cpp
@@ -29,11 +29,11 @@ DEFINE_DEVICE_TYPE(A2BUS_APPLICARD, a2bus_applicard_device, "a2aplcrd", "PCPI Ap
#define Z80_TAG "z80"
#define Z80_ROM_REGION "z80_rom"
-static ADDRESS_MAP_START( z80_mem, AS_PROGRAM, 8, a2bus_applicard_device )
+ADDRESS_MAP_START(a2bus_applicard_device::z80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(dma_r, dma_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_io, AS_IO, 8, a2bus_applicard_device )
+ADDRESS_MAP_START(a2bus_applicard_device::z80_io)
AM_RANGE(0x00, 0x60) AM_MIRROR(0xff00) AM_READWRITE(z80_io_r, z80_io_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/a2bus/a2applicard.h b/src/devices/bus/a2bus/a2applicard.h
index 69f8a6d932f..395d5fa0850 100644
--- a/src/devices/bus/a2bus/a2applicard.h
+++ b/src/devices/bus/a2bus/a2applicard.h
@@ -32,6 +32,8 @@ public:
DECLARE_READ8_MEMBER( z80_io_r );
DECLARE_WRITE8_MEMBER( z80_io_w );
+ void z80_io(address_map &map);
+ void z80_mem(address_map &map);
protected:
a2bus_applicard_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/a2bus/a2softcard.cpp b/src/devices/bus/a2bus/a2softcard.cpp
index 2b1c49166eb..8e8314d45cd 100644
--- a/src/devices/bus/a2bus/a2softcard.cpp
+++ b/src/devices/bus/a2bus/a2softcard.cpp
@@ -24,7 +24,7 @@ DEFINE_DEVICE_TYPE(A2BUS_SOFTCARD, a2bus_softcard_device, "a2softcard", "Microso
#define Z80_TAG "z80"
-static ADDRESS_MAP_START( z80_mem, AS_PROGRAM, 8, a2bus_softcard_device )
+ADDRESS_MAP_START(a2bus_softcard_device::z80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(dma_r, dma_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/a2bus/a2softcard.h b/src/devices/bus/a2bus/a2softcard.h
index 4be8755d0b2..8c9d2aad6cd 100644
--- a/src/devices/bus/a2bus/a2softcard.h
+++ b/src/devices/bus/a2bus/a2softcard.h
@@ -28,6 +28,7 @@ public:
DECLARE_READ8_MEMBER( dma_r );
DECLARE_WRITE8_MEMBER( dma_w );
+ void z80_mem(address_map &map);
protected:
a2bus_softcard_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/a2bus/a2themill.cpp b/src/devices/bus/a2bus/a2themill.cpp
index be7edecece4..41f2478b648 100644
--- a/src/devices/bus/a2bus/a2themill.cpp
+++ b/src/devices/bus/a2bus/a2themill.cpp
@@ -40,7 +40,7 @@ DEFINE_DEVICE_TYPE(A2BUS_THEMILL, a2bus_themill_device, "a2themill", "Stellation
#define M6809_TAG "m6809"
-static ADDRESS_MAP_START( m6809_mem, AS_PROGRAM, 8, a2bus_themill_device )
+ADDRESS_MAP_START(a2bus_themill_device::m6809_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(dma_r, dma_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/a2bus/a2themill.h b/src/devices/bus/a2bus/a2themill.h
index fde5d6266a7..f9c9d622564 100644
--- a/src/devices/bus/a2bus/a2themill.h
+++ b/src/devices/bus/a2bus/a2themill.h
@@ -30,6 +30,7 @@ public:
DECLARE_READ8_MEMBER( dma_r );
DECLARE_WRITE8_MEMBER( dma_w );
+ void m6809_mem(address_map &map);
protected:
a2bus_themill_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/a2bus/pc_xporter.cpp b/src/devices/bus/a2bus/pc_xporter.cpp
index 6cb8404515a..8e5c5bd7eeb 100644
--- a/src/devices/bus/a2bus/pc_xporter.cpp
+++ b/src/devices/bus/a2bus/pc_xporter.cpp
@@ -91,11 +91,11 @@
DEFINE_DEVICE_TYPE(A2BUS_PCXPORTER, a2bus_pcxporter_device, "a2pcxport", "Applied Engineering PC Transporter")
-static ADDRESS_MAP_START( pc_map, AS_PROGRAM, 16, a2bus_pcxporter_device )
+ADDRESS_MAP_START(a2bus_pcxporter_device::pc_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pc_io, AS_IO, 16, a2bus_pcxporter_device )
+ADDRESS_MAP_START(a2bus_pcxporter_device::pc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x000f) AM_DEVREADWRITE8("dma8237", am9517a_device, read, write, 0xffff)
AM_RANGE(0x0020, 0x002f) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0xffff)
diff --git a/src/devices/bus/a2bus/pc_xporter.h b/src/devices/bus/a2bus/pc_xporter.h
index 83452595dc4..d1419887155 100644
--- a/src/devices/bus/a2bus/pc_xporter.h
+++ b/src/devices/bus/a2bus/pc_xporter.h
@@ -56,6 +56,8 @@ public:
DECLARE_WRITE8_MEMBER(pc_page_w);
DECLARE_WRITE8_MEMBER(nmi_enable_w);
+ void pc_io(address_map &map);
+ void pc_map(address_map &map);
protected:
a2bus_pcxporter_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/a2bus/transwarp.cpp b/src/devices/bus/a2bus/transwarp.cpp
index 2be8eb57ed3..bc916f7d308 100644
--- a/src/devices/bus/a2bus/transwarp.cpp
+++ b/src/devices/bus/a2bus/transwarp.cpp
@@ -31,7 +31,7 @@ DEFINE_DEVICE_TYPE(A2BUS_TRANSWARP, a2bus_transwarp_device, "a2twarp", "Applied
#define CPU_TAG "tw65c02"
-static ADDRESS_MAP_START( m65c02_mem, AS_PROGRAM, 8, a2bus_transwarp_device )
+ADDRESS_MAP_START(a2bus_transwarp_device::m65c02_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(dma_r, dma_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/a2bus/transwarp.h b/src/devices/bus/a2bus/transwarp.h
index be327e56c6e..98d2e842506 100644
--- a/src/devices/bus/a2bus/transwarp.h
+++ b/src/devices/bus/a2bus/transwarp.h
@@ -30,6 +30,7 @@ public:
DECLARE_READ8_MEMBER( dma_r );
DECLARE_WRITE8_MEMBER( dma_w );
+ void m65c02_mem(address_map &map);
protected:
a2bus_transwarp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/abcbus/db411223.cpp b/src/devices/bus/abcbus/db411223.cpp
index 69dec23392d..4d15085ecff 100644
--- a/src/devices/bus/abcbus/db411223.cpp
+++ b/src/devices/bus/abcbus/db411223.cpp
@@ -49,7 +49,7 @@ const tiny_rom_entry *databoard_4112_23_t::device_rom_region() const
// ADDRESS_MAP( databoard_4112_23_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( databoard_4112_23_mem, AS_PROGRAM, 8, databoard_4112_23_t )
+ADDRESS_MAP_START(databoard_4112_23_t::databoard_4112_23_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION(Z80_TAG, 0)
ADDRESS_MAP_END
@@ -58,7 +58,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( databoard_4112_23_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( databoard_4112_23_io, AS_IO, 8, databoard_4112_23_t )
+ADDRESS_MAP_START(databoard_4112_23_t::databoard_4112_23_io)
ADDRESS_MAP_END
diff --git a/src/devices/bus/abcbus/db411223.h b/src/devices/bus/abcbus/db411223.h
index 8baf538c49b..56533f84fef 100644
--- a/src/devices/bus/abcbus/db411223.h
+++ b/src/devices/bus/abcbus/db411223.h
@@ -29,6 +29,8 @@ public:
// construction/destruction
databoard_4112_23_t(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void databoard_4112_23_io(address_map &map);
+ void databoard_4112_23_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/abcbus/fd2.cpp b/src/devices/bus/abcbus/fd2.cpp
index 6d0d93f94b5..3d8f4f6852c 100644
--- a/src/devices/bus/abcbus/fd2.cpp
+++ b/src/devices/bus/abcbus/fd2.cpp
@@ -114,7 +114,7 @@ WRITE8_MEMBER( abc_fd2_device::status_w )
// ADDRESS_MAP( abc_fd2_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc_fd2_mem, AS_PROGRAM, 8, abc_fd2_device )
+ADDRESS_MAP_START(abc_fd2_device::abc_fd2_mem)
AM_RANGE(0x0000, 0x03ff) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x0800, 0x0bff) AM_RAM
ADDRESS_MAP_END
@@ -124,7 +124,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc_fd2_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc_fd2_io, AS_IO, 8, abc_fd2_device )
+ADDRESS_MAP_START(abc_fd2_device::abc_fd2_io)
ADDRESS_MAP_GLOBAL_MASK(0x73)
AM_RANGE(0x30, 0x33) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read_alt, write_alt)
AM_RANGE(0x50, 0x53) AM_DEVREADWRITE(FD1771_TAG, fd1771_device, read, write)
diff --git a/src/devices/bus/abcbus/fd2.h b/src/devices/bus/abcbus/fd2.h
index 661e7d78d97..fbd4e4c48c2 100644
--- a/src/devices/bus/abcbus/fd2.h
+++ b/src/devices/bus/abcbus/fd2.h
@@ -35,6 +35,8 @@ public:
DECLARE_WRITE8_MEMBER( status_w );
+ void abc_fd2_io(address_map &map);
+ void abc_fd2_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/abcbus/hdc.cpp b/src/devices/bus/abcbus/hdc.cpp
index 9c05fdd44ec..1666275e869 100644
--- a/src/devices/bus/abcbus/hdc.cpp
+++ b/src/devices/bus/abcbus/hdc.cpp
@@ -54,7 +54,7 @@ const tiny_rom_entry *abc_hdc_device::device_rom_region() const
// ADDRESS_MAP( abc_hdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc_hdc_mem, AS_PROGRAM, 8, abc_hdc_device )
+ADDRESS_MAP_START(abc_hdc_device::abc_hdc_mem)
AM_RANGE(0x0000, 0x0ff) AM_ROM AM_REGION(Z80_TAG, 0)
ADDRESS_MAP_END
@@ -63,7 +63,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc_hdc_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc_hdc_io, AS_IO, 8, abc_hdc_device )
+ADDRESS_MAP_START(abc_hdc_device::abc_hdc_io)
ADDRESS_MAP_END
diff --git a/src/devices/bus/abcbus/hdc.h b/src/devices/bus/abcbus/hdc.h
index e2d0e1cbdbb..c9cde8b8ab5 100644
--- a/src/devices/bus/abcbus/hdc.h
+++ b/src/devices/bus/abcbus/hdc.h
@@ -31,6 +31,8 @@ public:
// construction/destruction
abc_hdc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void abc_hdc_io(address_map &map);
+ void abc_hdc_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/abcbus/lux10828.cpp b/src/devices/bus/abcbus/lux10828.cpp
index bcf151e6ac9..fad737d8f7b 100644
--- a/src/devices/bus/abcbus/lux10828.cpp
+++ b/src/devices/bus/abcbus/lux10828.cpp
@@ -171,7 +171,7 @@ const tiny_rom_entry *luxor_55_10828_device::device_rom_region() const
// ADDRESS_MAP( luxor_55_10828_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( luxor_55_10828_mem, AS_PROGRAM, 8, luxor_55_10828_device )
+ADDRESS_MAP_START(luxor_55_10828_device::luxor_55_10828_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0x0c00) AM_RAM
@@ -182,7 +182,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( luxor_55_10828_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( luxor_55_10828_io, AS_IO, 8, luxor_55_10828_device )
+ADDRESS_MAP_START(luxor_55_10828_device::luxor_55_10828_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x70, 0x73) AM_MIRROR(0x0c) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read_alt, write_alt)
AM_RANGE(0xb0, 0xb3) AM_MIRROR(0x0c) AM_READWRITE(fdc_r, fdc_w)
diff --git a/src/devices/bus/abcbus/lux10828.h b/src/devices/bus/abcbus/lux10828.h
index fa6b1836d2e..62ab005715b 100644
--- a/src/devices/bus/abcbus/lux10828.h
+++ b/src/devices/bus/abcbus/lux10828.h
@@ -60,6 +60,8 @@ public:
DECLARE_READ8_MEMBER( fdc_r );
DECLARE_WRITE8_MEMBER( fdc_w );
+ void luxor_55_10828_io(address_map &map);
+ void luxor_55_10828_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/abcbus/lux21046.cpp b/src/devices/bus/abcbus/lux21046.cpp
index cfda28d875b..ee8f19c20cd 100644
--- a/src/devices/bus/abcbus/lux21046.cpp
+++ b/src/devices/bus/abcbus/lux21046.cpp
@@ -137,7 +137,7 @@ const tiny_rom_entry *luxor_55_21046_device::device_rom_region() const
// ADDRESS_MAP( luxor_55_21046_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( luxor_55_21046_mem, AS_PROGRAM, 8, luxor_55_21046_device )
+ADDRESS_MAP_START(luxor_55_21046_device::luxor_55_21046_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION(Z80_TAG, 0x2000) // A13 pull-up
@@ -149,7 +149,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( luxor_55_21046_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( luxor_55_21046_io, AS_IO, 8, luxor_55_21046_device )
+ADDRESS_MAP_START(luxor_55_21046_device::luxor_55_21046_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0c, 0x0c) AM_MIRROR(0xff03) AM_READ(out_r)
AM_RANGE(0x1c, 0x1c) AM_MIRROR(0xff03) AM_WRITE(inp_w)
diff --git a/src/devices/bus/abcbus/lux21046.h b/src/devices/bus/abcbus/lux21046.h
index 8b47fdf4915..7b6f270547b 100644
--- a/src/devices/bus/abcbus/lux21046.h
+++ b/src/devices/bus/abcbus/lux21046.h
@@ -64,6 +64,8 @@ public:
DECLARE_FLOPPY_FORMATS( floppy_formats );
+ void luxor_55_21046_io(address_map &map);
+ void luxor_55_21046_mem(address_map &map);
protected:
luxor_55_21046_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/abcbus/lux21056.cpp b/src/devices/bus/abcbus/lux21056.cpp
index 4b1b7f0e998..ffdb7eff661 100644
--- a/src/devices/bus/abcbus/lux21056.cpp
+++ b/src/devices/bus/abcbus/lux21056.cpp
@@ -133,7 +133,7 @@ const tiny_rom_entry *luxor_55_21056_device::device_rom_region() const
// ADDRESS_MAP( luxor_55_21056_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( luxor_55_21056_mem, AS_PROGRAM, 8, luxor_55_21056_device )
+ADDRESS_MAP_START(luxor_55_21056_device::luxor_55_21056_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM AM_REGION(Z80_TAG, 0)
@@ -145,7 +145,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( luxor_55_21056_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( luxor_55_21056_io, AS_IO, 8, luxor_55_21056_device )
+ADDRESS_MAP_START(luxor_55_21056_device::luxor_55_21056_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xf8)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xf0) AM_DEVREADWRITE(Z80DMA_TAG, z80dma_device, read, write)
diff --git a/src/devices/bus/abcbus/lux21056.h b/src/devices/bus/abcbus/lux21056.h
index fa2f7122f75..544e2c786fa 100644
--- a/src/devices/bus/abcbus/lux21056.h
+++ b/src/devices/bus/abcbus/lux21056.h
@@ -45,6 +45,8 @@ public:
DECLARE_READ8_MEMBER( sasi_rst_r );
DECLARE_WRITE8_MEMBER( sasi_rst_w );
+ void luxor_55_21056_io(address_map &map);
+ void luxor_55_21056_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/abcbus/unidisk.cpp b/src/devices/bus/abcbus/unidisk.cpp
index 3ab2eb3ab76..1a9f2ba030f 100644
--- a/src/devices/bus/abcbus/unidisk.cpp
+++ b/src/devices/bus/abcbus/unidisk.cpp
@@ -54,7 +54,7 @@ const tiny_rom_entry *unidisk_t::device_rom_region() const
// ADDRESS_MAP( unidisk_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( unidisk_mem, AS_PROGRAM, 8, unidisk_t )
+ADDRESS_MAP_START(unidisk_t::unidisk_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION(TMS9995_TAG, 0)
ADDRESS_MAP_END
@@ -63,7 +63,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( unidisk_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( unidisk_io, AS_IO, 8, unidisk_t )
+ADDRESS_MAP_START(unidisk_t::unidisk_io)
ADDRESS_MAP_END
diff --git a/src/devices/bus/abcbus/unidisk.h b/src/devices/bus/abcbus/unidisk.h
index 64d390165bb..1b26b503054 100644
--- a/src/devices/bus/abcbus/unidisk.h
+++ b/src/devices/bus/abcbus/unidisk.h
@@ -29,6 +29,8 @@ public:
// construction/destruction
unidisk_t(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void unidisk_io(address_map &map);
+ void unidisk_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/abckb/abc77.cpp b/src/devices/bus/abckb/abc77.cpp
index 6081d256406..9f4b469a298 100644
--- a/src/devices/bus/abckb/abc77.cpp
+++ b/src/devices/bus/abckb/abc77.cpp
@@ -89,7 +89,7 @@ const tiny_rom_entry *abc77_device::device_rom_region() const
// ADDRESS_MAP( abc77_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc77_map, AS_PROGRAM, 8, abc77_device )
+ADDRESS_MAP_START(abc77_device::abc77_map)
AM_RANGE(0x000, 0xfff) AM_ROM AM_REGION("z16", 0)
ADDRESS_MAP_END
@@ -98,7 +98,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc77_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc77_io, AS_IO, 8, abc77_device )
+ADDRESS_MAP_START(abc77_device::abc77_io)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_WRITE(j3_w)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_READ_PORT("DSW")
ADDRESS_MAP_END
diff --git a/src/devices/bus/abckb/abc77.h b/src/devices/bus/abckb/abc77.h
index 5adb6332340..39ee020cda9 100644
--- a/src/devices/bus/abckb/abc77.h
+++ b/src/devices/bus/abckb/abc77.h
@@ -39,6 +39,8 @@ public:
DECLARE_WRITE8_MEMBER( j3_w );
+ void abc77_io(address_map &map);
+ void abc77_map(address_map &map);
protected:
abc77_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/abckb/abc99.cpp b/src/devices/bus/abckb/abc99.cpp
index 9730c9f0a58..df3612776de 100644
--- a/src/devices/bus/abckb/abc99.cpp
+++ b/src/devices/bus/abckb/abc99.cpp
@@ -106,7 +106,7 @@ const tiny_rom_entry *abc99_device::device_rom_region() const
// ADDRESS_MAP( abc99_z2_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc99_z2_mem, AS_PROGRAM, 8, abc99_device )
+ADDRESS_MAP_START(abc99_device::abc99_z2_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION(I8035_Z2_TAG, 0)
ADDRESS_MAP_END
@@ -115,7 +115,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc99_z2_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc99_z2_io, AS_IO, 8, abc99_device )
+ADDRESS_MAP_START(abc99_device::abc99_z2_io)
AM_RANGE(0x21, 0x21) AM_WRITE(z2_led_w)
AM_RANGE(0x30, 0x30) AM_READ_PORT("X0") AM_WRITENOP
AM_RANGE(0x31, 0x31) AM_READ_PORT("X1") AM_WRITENOP
@@ -140,7 +140,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc99_z5_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc99_z5_mem, AS_PROGRAM, 8, abc99_device )
+ADDRESS_MAP_START(abc99_device::abc99_z5_mem)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION(I8035_Z5_TAG, 0)
ADDRESS_MAP_END
diff --git a/src/devices/bus/abckb/abc99.h b/src/devices/bus/abckb/abc99.h
index 77c89f95a6f..06d4c42e40b 100644
--- a/src/devices/bus/abckb/abc99.h
+++ b/src/devices/bus/abckb/abc99.h
@@ -41,6 +41,9 @@ public:
DECLARE_WRITE8_MEMBER( z5_p2_w );
DECLARE_READ8_MEMBER( z5_t1_r );
+ void abc99_z2_io(address_map &map);
+ void abc99_z2_mem(address_map &map);
+ void abc99_z5_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/adamnet/ddp.cpp b/src/devices/bus/adamnet/ddp.cpp
index 469b0c72707..ac5478821ed 100644
--- a/src/devices/bus/adamnet/ddp.cpp
+++ b/src/devices/bus/adamnet/ddp.cpp
@@ -50,7 +50,7 @@ const tiny_rom_entry *adam_digital_data_pack_device::device_rom_region() const
// ADDRESS_MAP( adam_ddp_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_ddp_mem, AS_PROGRAM, 8, adam_digital_data_pack_device )
+ADDRESS_MAP_START(adam_digital_data_pack_device::adam_ddp_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(M6801_TAG, m6801_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM
@@ -62,7 +62,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( adam_ddp_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_ddp_io, AS_IO, 8, adam_digital_data_pack_device )
+ADDRESS_MAP_START(adam_digital_data_pack_device::adam_ddp_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(p1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(p2_r, p2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3) AM_NOP // Multiplexed Address/Data
diff --git a/src/devices/bus/adamnet/ddp.h b/src/devices/bus/adamnet/ddp.h
index 6ac1260658c..30953cdcceb 100644
--- a/src/devices/bus/adamnet/ddp.h
+++ b/src/devices/bus/adamnet/ddp.h
@@ -37,6 +37,8 @@ public:
DECLARE_WRITE8_MEMBER( p2_w );
DECLARE_READ8_MEMBER( p4_r );
+ void adam_ddp_io(address_map &map);
+ void adam_ddp_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/adamnet/fdc.cpp b/src/devices/bus/adamnet/fdc.cpp
index 7074309db84..221b5f27a17 100644
--- a/src/devices/bus/adamnet/fdc.cpp
+++ b/src/devices/bus/adamnet/fdc.cpp
@@ -77,7 +77,7 @@ const tiny_rom_entry *adam_fdc_device::device_rom_region() const
// ADDRESS_MAP( fdc6801_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_fdc_mem, AS_PROGRAM, 8, adam_fdc_device )
+ADDRESS_MAP_START(adam_fdc_device::adam_fdc_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(M6801_TAG, m6801_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM AM_WRITEONLY AM_SHARE("ram")
@@ -99,7 +99,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( fdc6801_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_fdc_io, AS_IO, 8, adam_fdc_device )
+ADDRESS_MAP_START(adam_fdc_device::adam_fdc_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(p1_r, p1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(p2_r, p2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3)
diff --git a/src/devices/bus/adamnet/fdc.h b/src/devices/bus/adamnet/fdc.h
index 6cdaedbc133..05d4ceb0a82 100644
--- a/src/devices/bus/adamnet/fdc.h
+++ b/src/devices/bus/adamnet/fdc.h
@@ -38,6 +38,8 @@ public:
DECLARE_READ8_MEMBER( p2_r );
DECLARE_WRITE8_MEMBER( p2_w );
+ void adam_fdc_io(address_map &map);
+ void adam_fdc_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/adamnet/kb.cpp b/src/devices/bus/adamnet/kb.cpp
index f32bd5acfdf..5cd7971b441 100644
--- a/src/devices/bus/adamnet/kb.cpp
+++ b/src/devices/bus/adamnet/kb.cpp
@@ -50,7 +50,7 @@ const tiny_rom_entry *adam_keyboard_device::device_rom_region() const
// ADDRESS_MAP( adam_kb_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_kb_mem, AS_PROGRAM, 8, adam_keyboard_device )
+ADDRESS_MAP_START(adam_keyboard_device::adam_kb_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(M6801_TAG, m6801_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_ROM AM_REGION(M6801_TAG, 0)
@@ -61,7 +61,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( adam_kb_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_kb_io, AS_IO, 8, adam_keyboard_device )
+ADDRESS_MAP_START(adam_keyboard_device::adam_kb_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ(p1_r)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(p2_r, p2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3) AM_READWRITE(p3_r, p3_w)
diff --git a/src/devices/bus/adamnet/kb.h b/src/devices/bus/adamnet/kb.h
index f48b666f5aa..a112e2dc9b6 100644
--- a/src/devices/bus/adamnet/kb.h
+++ b/src/devices/bus/adamnet/kb.h
@@ -38,6 +38,8 @@ public:
DECLARE_READ8_MEMBER( p4_r );
DECLARE_WRITE8_MEMBER( p4_w );
+ void adam_kb_io(address_map &map);
+ void adam_kb_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/adamnet/printer.cpp b/src/devices/bus/adamnet/printer.cpp
index 1a4ee40aacc..511de1f8bd8 100644
--- a/src/devices/bus/adamnet/printer.cpp
+++ b/src/devices/bus/adamnet/printer.cpp
@@ -50,7 +50,7 @@ const tiny_rom_entry *adam_printer_device::device_rom_region() const
// ADDRESS_MAP( adam_prn_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_prn_mem, AS_PROGRAM, 8, adam_printer_device )
+ADDRESS_MAP_START(adam_printer_device::adam_prn_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(M6801_TAG, m6801_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_ROM AM_REGION(M6801_TAG, 0)
@@ -61,7 +61,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( adam_prn_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_prn_io, AS_IO, 8, adam_printer_device )
+ADDRESS_MAP_START(adam_printer_device::adam_prn_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(p1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(p2_r, p2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3) AM_READ(p3_r)
diff --git a/src/devices/bus/adamnet/printer.h b/src/devices/bus/adamnet/printer.h
index 5c54a303a6f..5703c997fe0 100644
--- a/src/devices/bus/adamnet/printer.h
+++ b/src/devices/bus/adamnet/printer.h
@@ -37,6 +37,8 @@ public:
DECLARE_READ8_MEMBER( p4_r );
DECLARE_WRITE8_MEMBER( p4_w );
+ void adam_prn_io(address_map &map);
+ void adam_prn_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/adamnet/spi.cpp b/src/devices/bus/adamnet/spi.cpp
index f789b0e00af..66eab7365a5 100644
--- a/src/devices/bus/adamnet/spi.cpp
+++ b/src/devices/bus/adamnet/spi.cpp
@@ -53,7 +53,7 @@ const tiny_rom_entry *adam_spi_device::device_rom_region() const
// ADDRESS_MAP( adam_spi_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_spi_mem, AS_PROGRAM, 8, adam_spi_device )
+ADDRESS_MAP_START(adam_spi_device::adam_spi_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(M6801_TAG, m6801_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_ROM AM_REGION(M6801_TAG, 0)
@@ -64,7 +64,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( adam_spi_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_spi_io, AS_IO, 8, adam_spi_device )
+ADDRESS_MAP_START(adam_spi_device::adam_spi_io)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(p2_r, p2_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/adamnet/spi.h b/src/devices/bus/adamnet/spi.h
index 9298d53dba1..f5595babf65 100644
--- a/src/devices/bus/adamnet/spi.h
+++ b/src/devices/bus/adamnet/spi.h
@@ -36,6 +36,8 @@ public:
DECLARE_READ8_MEMBER( p2_r );
DECLARE_WRITE8_MEMBER( p2_w );
+ void adam_spi_io(address_map &map);
+ void adam_spi_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/amiga/keyboard/a500.cpp b/src/devices/bus/amiga/keyboard/a500.cpp
index 8080d9c3a0c..682e779cb72 100644
--- a/src/devices/bus/amiga/keyboard/a500.cpp
+++ b/src/devices/bus/amiga/keyboard/a500.cpp
@@ -34,9 +34,7 @@ DEFINE_DEVICE_TYPE_NS(A500_KBD_GB, bus::amiga::keyboard, a500_kbd_gb_device, "a5
namespace bus { namespace amiga { namespace keyboard {
-namespace {
-
-ADDRESS_MAP_START( mpu6500_map, AS_PROGRAM, 8, a500_kbd_device )
+ADDRESS_MAP_START(a500_kbd_device::mpu6500_map)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x000, 0x03f) AM_RAM
AM_RANGE(0x080, 0x080) AM_READWRITE(port_a_r, port_a_w)
@@ -53,6 +51,8 @@ ADDRESS_MAP_START( mpu6500_map, AS_PROGRAM, 8, a500_kbd_device )
AM_RANGE(0x800, 0xfff) AM_ROM AM_REGION("ic1", 0)
ADDRESS_MAP_END
+namespace {
+
//-------------------------------------------------
// rom_region - device-specific ROM region
//-------------------------------------------------
diff --git a/src/devices/bus/amiga/keyboard/a500.h b/src/devices/bus/amiga/keyboard/a500.h
index 1bf20a072ef..7edcc0142d2 100644
--- a/src/devices/bus/amiga/keyboard/a500.h
+++ b/src/devices/bus/amiga/keyboard/a500.h
@@ -66,6 +66,7 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(check_reset);
+ void mpu6500_map(address_map &map);
protected:
a500_kbd_device(
const machine_config &mconfig,
diff --git a/src/devices/bus/amiga/zorro/a2232.cpp b/src/devices/bus/amiga/zorro/a2232.cpp
index 536ecb7b8ef..c7987a1b11e 100644
--- a/src/devices/bus/amiga/zorro/a2232.cpp
+++ b/src/devices/bus/amiga/zorro/a2232.cpp
@@ -30,7 +30,7 @@ DEFINE_DEVICE_TYPE(A2232, a2232_device, "a2232", "CBM A2232 Serial Card")
// device_add_mconfig - add device configuration
//-------------------------------------------------
-static ADDRESS_MAP_START( iocpu_map, AS_PROGRAM, 8, a2232_device)
+ADDRESS_MAP_START(a2232_device::iocpu_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("shared")
AM_RANGE(0x4000, 0x47ff) AM_READWRITE(acia_0_r, acia_0_w)
AM_RANGE(0x4800, 0x4fff) AM_READWRITE(acia_1_r, acia_1_w)
@@ -41,7 +41,7 @@ static ADDRESS_MAP_START( iocpu_map, AS_PROGRAM, 8, a2232_device)
AM_RANGE(0x7000, 0x73ff) AM_WRITE(int2_w)
AM_RANGE(0x7400, 0x77ff) AM_READWRITE(acia_6_r, acia_6_w)
AM_RANGE(0x7800, 0x7fff) AM_READWRITE(cia_r, cia_w)
- AM_RANGE(0x8000, 0x8000) AM_WRITE(irq_ack_w)
+ AM_RANGE(0x8000, 0x8000) AM_WRITE(irq_ack8_w)
AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("shared")
ADDRESS_MAP_END
@@ -222,7 +222,7 @@ WRITE8_MEMBER( a2232_device::int2_w )
m_slot->int2_w(1);
}
-WRITE8_MEMBER( a2232_device::irq_ack_w )
+WRITE8_MEMBER( a2232_device::irq_ack8_w )
{
if (VERBOSE)
logerror("%s('%s'): irq_ack_w %04x\n", shortname(), basetag(), data);
diff --git a/src/devices/bus/amiga/zorro/a2232.h b/src/devices/bus/amiga/zorro/a2232.h
index 20bc7bbda7c..52bf187d70f 100644
--- a/src/devices/bus/amiga/zorro/a2232.h
+++ b/src/devices/bus/amiga/zorro/a2232.h
@@ -37,7 +37,7 @@ public:
// cpu
WRITE8_MEMBER( int2_w );
- WRITE8_MEMBER( irq_ack_w );
+ WRITE8_MEMBER( irq_ack8_w );
// zorro slot
DECLARE_READ16_MEMBER( shared_ram_r );
@@ -71,6 +71,7 @@ public:
DECLARE_READ8_MEMBER( cia_r );
DECLARE_WRITE8_MEMBER( cia_w );
+ void iocpu_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/devices/bus/amiga/zorro/buddha.cpp b/src/devices/bus/amiga/zorro/buddha.cpp
index 175e4d13c22..476d1350ae2 100644
--- a/src/devices/bus/amiga/zorro/buddha.cpp
+++ b/src/devices/bus/amiga/zorro/buddha.cpp
@@ -42,7 +42,7 @@ DEFINE_DEVICE_TYPE(BUDDHA, buddha_device, "buddha", "Buddha IDE controller")
// mmio_map - device-specific memory mapped I/O
//-------------------------------------------------
-DEVICE_ADDRESS_MAP_START( mmio_map, 16, buddha_device )
+ADDRESS_MAP_START(buddha_device::mmio_map)
AM_RANGE(0x7fe, 0x7ff) AM_READWRITE(speed_r, speed_w)
AM_RANGE(0x800, 0x8ff) AM_READWRITE(ide_0_cs0_r, ide_0_cs0_w)
AM_RANGE(0x900, 0x9ff) AM_READWRITE(ide_0_cs1_r, ide_0_cs1_w)
diff --git a/src/devices/bus/amiga/zorro/buddha.h b/src/devices/bus/amiga/zorro/buddha.h
index 3148e3aa8e7..4d2069cc6b3 100644
--- a/src/devices/bus/amiga/zorro/buddha.h
+++ b/src/devices/bus/amiga/zorro/buddha.h
@@ -30,7 +30,7 @@ public:
// construction/destruction
buddha_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(mmio_map, 16);
+ void mmio_map(address_map &map);
// speed register
DECLARE_READ16_MEMBER( speed_r );
diff --git a/src/devices/bus/bbc/tube/tube_6502.cpp b/src/devices/bus/bbc/tube/tube_6502.cpp
index 10da176316f..305723af347 100644
--- a/src/devices/bus/bbc/tube/tube_6502.cpp
+++ b/src/devices/bus/bbc/tube/tube_6502.cpp
@@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_6502, bbc_tube_6502_device, "bbc_tube_6502", "Acorn
// ADDRESS_MAP( tube_6502_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_6502_mem, AS_PROGRAM, 8, bbc_tube_6502_device)
+ADDRESS_MAP_START(bbc_tube_6502_device::tube_6502_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
diff --git a/src/devices/bus/bbc/tube/tube_6502.h b/src/devices/bus/bbc/tube/tube_6502.h
index cc1ab776d66..d9e59eb6089 100644
--- a/src/devices/bus/bbc/tube/tube_6502.h
+++ b/src/devices/bus/bbc/tube/tube_6502.h
@@ -34,6 +34,7 @@ public:
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
+ void tube_6502_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/bbc/tube/tube_65c102.cpp b/src/devices/bus/bbc/tube/tube_65c102.cpp
index 6f15b5866cf..a18f31c3f99 100644
--- a/src/devices/bus/bbc/tube/tube_65c102.cpp
+++ b/src/devices/bus/bbc/tube/tube_65c102.cpp
@@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_65C102, bbc_tube_65c102_device, "bbc_tube_65c102", "
// ADDRESS_MAP( tube_6502_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_6502_mem, AS_PROGRAM, 8, bbc_tube_65c102_device)
+ADDRESS_MAP_START(bbc_tube_65c102_device::tube_6502_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
diff --git a/src/devices/bus/bbc/tube/tube_65c102.h b/src/devices/bus/bbc/tube/tube_65c102.h
index 690aa940d83..d1892b8f13e 100644
--- a/src/devices/bus/bbc/tube/tube_65c102.h
+++ b/src/devices/bus/bbc/tube/tube_65c102.h
@@ -34,6 +34,7 @@ public:
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
+ void tube_6502_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/bbc/tube/tube_80186.cpp b/src/devices/bus/bbc/tube/tube_80186.cpp
index 9e04a20cf6a..b3ccfc19ef4 100644
--- a/src/devices/bus/bbc/tube/tube_80186.cpp
+++ b/src/devices/bus/bbc/tube/tube_80186.cpp
@@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_80186, bbc_tube_80186_device, "bbc_tube_80186", "Aco
// ADDRESS_MAP( tube_80186_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_80186_mem, AS_PROGRAM, 16, bbc_tube_80186_device)
+ADDRESS_MAP_START(bbc_tube_80186_device::tube_80186_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
@@ -33,7 +33,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tube_80186_io )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_80186_io, AS_IO, 16, bbc_tube_80186_device)
+ADDRESS_MAP_START(bbc_tube_80186_device::tube_80186_io)
AM_RANGE(0x80, 0x8f) AM_DEVREADWRITE8("ula", tube_device, parasite_r, parasite_w, 0x00ff)
ADDRESS_MAP_END
diff --git a/src/devices/bus/bbc/tube/tube_80186.h b/src/devices/bus/bbc/tube/tube_80186.h
index 1c258e971df..79e43d11277 100644
--- a/src/devices/bus/bbc/tube/tube_80186.h
+++ b/src/devices/bus/bbc/tube/tube_80186.h
@@ -31,6 +31,8 @@ public:
// construction/destruction
bbc_tube_80186_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void tube_80186_io(address_map &map);
+ void tube_80186_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/bbc/tube/tube_80286.cpp b/src/devices/bus/bbc/tube/tube_80286.cpp
index d8f9e027dc9..601793b6958 100644
--- a/src/devices/bus/bbc/tube/tube_80286.cpp
+++ b/src/devices/bus/bbc/tube/tube_80286.cpp
@@ -24,7 +24,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_80286, bbc_tube_80286_device, "bbc_tube_80286", "Aco
// ADDRESS_MAP( tube_80286_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_80286_mem, AS_PROGRAM, 16, bbc_tube_80286_device)
+ADDRESS_MAP_START(bbc_tube_80286_device::tube_80286_mem)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x00000, 0xbffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0xc0000, 0xc3fff) AM_ROM AM_REGION("bootstrap", 0) AM_MIRROR(0x3c000)
@@ -34,7 +34,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tube_80286_io )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_80286_io, AS_IO, 16, bbc_tube_80286_device)
+ADDRESS_MAP_START(bbc_tube_80286_device::tube_80286_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x50, 0x51) AM_READ8(disable_boot_rom, 0x00ff)
AM_RANGE(0x60, 0x61) AM_WRITE8(irq_latch_w, 0x00ff)
diff --git a/src/devices/bus/bbc/tube/tube_80286.h b/src/devices/bus/bbc/tube/tube_80286.h
index 31015fc8a56..ae3f750e379 100644
--- a/src/devices/bus/bbc/tube/tube_80286.h
+++ b/src/devices/bus/bbc/tube/tube_80286.h
@@ -32,6 +32,8 @@ public:
DECLARE_READ8_MEMBER( disable_boot_rom );
DECLARE_WRITE8_MEMBER( irq_latch_w );
+ void tube_80286_io(address_map &map);
+ void tube_80286_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/bbc/tube/tube_arm.cpp b/src/devices/bus/bbc/tube/tube_arm.cpp
index e6c91cc8675..8a8b1f287cd 100644
--- a/src/devices/bus/bbc/tube/tube_arm.cpp
+++ b/src/devices/bus/bbc/tube/tube_arm.cpp
@@ -23,7 +23,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_ARM, bbc_tube_arm_device, "bbc_tube_arm", "ARM Evalu
// ADDRESS_MAP( tube_arm_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_arm_mem, AS_PROGRAM, 32, bbc_tube_arm_device)
+ADDRESS_MAP_START(bbc_tube_arm_device::tube_arm_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000000, 0x03fffff) AM_READWRITE8(ram_r, ram_w, 0xffffffff)
AM_RANGE(0x1000000, 0x100001f) AM_DEVREADWRITE8("ula", tube_device, parasite_r, parasite_w, 0x000000ff)
diff --git a/src/devices/bus/bbc/tube/tube_arm.h b/src/devices/bus/bbc/tube/tube_arm.h
index 6f2e43ef43d..8904ab85d72 100644
--- a/src/devices/bus/bbc/tube/tube_arm.h
+++ b/src/devices/bus/bbc/tube/tube_arm.h
@@ -32,6 +32,7 @@ public:
DECLARE_READ8_MEMBER( ram_r );
DECLARE_WRITE8_MEMBER( ram_w );
+ void tube_arm_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/bbc/tube/tube_casper.cpp b/src/devices/bus/bbc/tube/tube_casper.cpp
index 7dc88d50339..afb5eecebf6 100644
--- a/src/devices/bus/bbc/tube/tube_casper.cpp
+++ b/src/devices/bus/bbc/tube/tube_casper.cpp
@@ -23,7 +23,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_CASPER, bbc_tube_casper_device, "bbc_tube_casper", "
// ADDRESS_MAP( tube_casper_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_casper_mem, AS_PROGRAM, 16, bbc_tube_casper_device)
+ADDRESS_MAP_START(bbc_tube_casper_device::tube_casper_mem)
AM_RANGE(0x00000, 0x03fff) AM_ROM AM_REGION("casper_rom", 0)
AM_RANGE(0x10000, 0x1001f) AM_DEVREADWRITE8("via6522_1",via6522_device, read, write, 0xff)
AM_RANGE(0x20000, 0x3ffff) AM_RAM
diff --git a/src/devices/bus/bbc/tube/tube_casper.h b/src/devices/bus/bbc/tube/tube_casper.h
index f4245702919..c41476b01d5 100644
--- a/src/devices/bus/bbc/tube/tube_casper.h
+++ b/src/devices/bus/bbc/tube/tube_casper.h
@@ -28,6 +28,7 @@ public:
// construction/destruction
bbc_tube_casper_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void tube_casper_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/bbc/tube/tube_z80.cpp b/src/devices/bus/bbc/tube/tube_z80.cpp
index 3c79a8002aa..2aada0ebf59 100644
--- a/src/devices/bus/bbc/tube/tube_z80.cpp
+++ b/src/devices/bus/bbc/tube/tube_z80.cpp
@@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_Z80, bbc_tube_z80_device, "bbc_tube_z80", "Acorn Z80
// ADDRESS_MAP( tube_z80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_z80_mem, AS_PROGRAM, 8, bbc_tube_z80_device)
+ADDRESS_MAP_START(bbc_tube_z80_device::tube_z80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
@@ -33,7 +33,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tube_z80_fetch )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_z80_fetch, AS_OPCODES, 8, bbc_tube_z80_device)
+ADDRESS_MAP_START(bbc_tube_z80_device::tube_z80_fetch)
AM_RANGE(0x000, 0xffff) AM_READ(opcode_r)
ADDRESS_MAP_END
@@ -41,7 +41,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tube_z80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_z80_io, AS_IO, 8, bbc_tube_z80_device)
+ADDRESS_MAP_START(bbc_tube_z80_device::tube_z80_io)
AM_RANGE(0x00, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ula", tube_device, parasite_r, parasite_w)
ADDRESS_MAP_END
@@ -61,7 +61,7 @@ ROM_END
MACHINE_CONFIG_START(bbc_tube_z80_device::device_add_mconfig)
MCFG_CPU_ADD("z80", Z80, XTAL(12'000'000) / 2)
MCFG_CPU_PROGRAM_MAP(tube_z80_mem)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(tube_z80_fetch)
+ MCFG_CPU_OPCODES_MAP(tube_z80_fetch)
MCFG_CPU_IO_MAP(tube_z80_io)
MCFG_CPU_IRQ_ACKNOWLEDGE_DEVICE(DEVICE_SELF, bbc_tube_z80_device, irq_callback)
diff --git a/src/devices/bus/bbc/tube/tube_z80.h b/src/devices/bus/bbc/tube/tube_z80.h
index 8ef5e59ee64..53858ecbd38 100644
--- a/src/devices/bus/bbc/tube/tube_z80.h
+++ b/src/devices/bus/bbc/tube/tube_z80.h
@@ -35,6 +35,9 @@ public:
DECLARE_WRITE8_MEMBER( mem_w );
DECLARE_READ8_MEMBER( opcode_r );
+ void tube_z80_fetch(address_map &map);
+ void tube_z80_io(address_map &map);
+ void tube_z80_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/bbc/tube/tube_zep100.cpp b/src/devices/bus/bbc/tube/tube_zep100.cpp
index 76d0f5677f0..61fca1c05ac 100644
--- a/src/devices/bus/bbc/tube/tube_zep100.cpp
+++ b/src/devices/bus/bbc/tube/tube_zep100.cpp
@@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_ZEP100, bbc_tube_zep100_device, "bbc_tube_zep100", "
// ADDRESS_MAP( tube_zep100_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_zep100_mem, AS_PROGRAM, 8, bbc_tube_zep100_device)
+ADDRESS_MAP_START(bbc_tube_zep100_device::tube_zep100_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
@@ -33,7 +33,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tube_zep100_io )
//-------------------------------------------------
-static ADDRESS_MAP_START(tube_zep100_io, AS_IO, 8, bbc_tube_zep100_device)
+ADDRESS_MAP_START(bbc_tube_zep100_device::tube_zep100_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x07) AM_MIRROR(0xff00) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/bbc/tube/tube_zep100.h b/src/devices/bus/bbc/tube/tube_zep100.h
index a24bc533445..983f4c844ab 100644
--- a/src/devices/bus/bbc/tube/tube_zep100.h
+++ b/src/devices/bus/bbc/tube/tube_zep100.h
@@ -41,6 +41,8 @@ public:
DECLARE_READ8_MEMBER( ppi_pb_r );
DECLARE_WRITE8_MEMBER( ppi_pc_w );
+ void tube_zep100_io(address_map &map);
+ void tube_zep100_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/c64/cpm.cpp b/src/devices/bus/c64/cpm.cpp
index bb23df4b3ec..d3e1acdb82a 100644
--- a/src/devices/bus/c64/cpm.cpp
+++ b/src/devices/bus/c64/cpm.cpp
@@ -40,7 +40,7 @@ DEFINE_DEVICE_TYPE(C64_CPM, c64_cpm_cartridge_device, "c64_cpm", "C64 CP/M cartr
// ADDRESS_MAP( z80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( z80_mem, AS_PROGRAM, 8, c64_cpm_cartridge_device )
+ADDRESS_MAP_START(c64_cpm_cartridge_device::z80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(dma_r, dma_w)
ADDRESS_MAP_END
@@ -49,7 +49,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( z80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( z80_io, AS_IO, 8, c64_cpm_cartridge_device )
+ADDRESS_MAP_START(c64_cpm_cartridge_device::z80_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(dma_r, dma_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/c64/cpm.h b/src/devices/bus/c64/cpm.h
index 9590bb0015e..2313007a58d 100644
--- a/src/devices/bus/c64/cpm.h
+++ b/src/devices/bus/c64/cpm.h
@@ -33,6 +33,8 @@ public:
DECLARE_READ8_MEMBER( dma_r );
DECLARE_WRITE8_MEMBER( dma_w );
+ void z80_io(address_map &map);
+ void z80_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/c64/fcc.cpp b/src/devices/bus/c64/fcc.cpp
index 48f7595eed3..aa42c6e0b26 100644
--- a/src/devices/bus/c64/fcc.cpp
+++ b/src/devices/bus/c64/fcc.cpp
@@ -64,7 +64,7 @@ const tiny_rom_entry *c64_final_chesscard_device::device_rom_region() const
// ADDRESS_MAP( c64_fcc_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( c64_fcc_map, AS_PROGRAM, 8, c64_final_chesscard_device )
+ADDRESS_MAP_START(c64_final_chesscard_device::c64_fcc_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x6000) AM_READWRITE(nvram_r, nvram_w)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION(G65SC02P4_TAG, 0)
ADDRESS_MAP_END
diff --git a/src/devices/bus/c64/fcc.h b/src/devices/bus/c64/fcc.h
index b3fef34985f..92650f55dfa 100644
--- a/src/devices/bus/c64/fcc.h
+++ b/src/devices/bus/c64/fcc.h
@@ -33,6 +33,7 @@ public:
DECLARE_READ8_MEMBER( nvram_r );
DECLARE_WRITE8_MEMBER( nvram_w );
+ void c64_fcc_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/c64/multiscreen.cpp b/src/devices/bus/c64/multiscreen.cpp
index 17dcded3409..1b2ec8c9735 100644
--- a/src/devices/bus/c64/multiscreen.cpp
+++ b/src/devices/bus/c64/multiscreen.cpp
@@ -102,7 +102,7 @@ const tiny_rom_entry *c64_multiscreen_cartridge_device::device_rom_region() cons
}
-static ADDRESS_MAP_START( multiscreen_mem, AS_PROGRAM, 8, c64_multiscreen_cartridge_device )
+ADDRESS_MAP_START(c64_multiscreen_cartridge_device::multiscreen_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION(MC6802P_TAG, 0)
ADDRESS_MAP_END
diff --git a/src/devices/bus/c64/multiscreen.h b/src/devices/bus/c64/multiscreen.h
index 8e7b9d54f3b..810543887e3 100644
--- a/src/devices/bus/c64/multiscreen.h
+++ b/src/devices/bus/c64/multiscreen.h
@@ -31,6 +31,7 @@ public:
// construction/destruction
c64_multiscreen_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void multiscreen_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/c64/supercpu.cpp b/src/devices/bus/c64/supercpu.cpp
index bff7a356a9c..1d4206b1c7c 100644
--- a/src/devices/bus/c64/supercpu.cpp
+++ b/src/devices/bus/c64/supercpu.cpp
@@ -49,7 +49,7 @@ const tiny_rom_entry *c64_supercpu_device::device_rom_region() const
// ADDRESS_MAP( c64_supercpu_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( c64_supercpu_map, AS_PROGRAM, 8, c64_supercpu_device )
+ADDRESS_MAP_START(c64_supercpu_device::c64_supercpu_map)
AM_RANGE(0x000000, 0x01ffff) AM_RAM AM_SHARE("sram")
AM_RANGE(0x020000, 0xf7ffff) AM_RAM AM_SHARE("dimm")
AM_RANGE(0xf80000, 0xf9ffff) AM_MIRROR(0x60000) AM_ROM AM_REGION(G65816_TAG, 0)
diff --git a/src/devices/bus/c64/supercpu.h b/src/devices/bus/c64/supercpu.h
index d901f6956b6..21b2464a9bf 100644
--- a/src/devices/bus/c64/supercpu.h
+++ b/src/devices/bus/c64/supercpu.h
@@ -29,6 +29,7 @@ public:
// construction/destruction
c64_supercpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void c64_supercpu_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/cbm2/hrg.cpp b/src/devices/bus/cbm2/hrg.cpp
index 5b33da81864..3bc92e62438 100644
--- a/src/devices/bus/cbm2/hrg.cpp
+++ b/src/devices/bus/cbm2/hrg.cpp
@@ -66,7 +66,7 @@ const tiny_rom_entry *cbm2_hrg_device::device_rom_region() const
// ADDRESS_MAP( hrg_a_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( hrg_a_map, 0, 8, cbm2_hrg_a_device )
+ADDRESS_MAP_START(cbm2_hrg_a_device::hrg_a_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x7fff) AM_RAM
ADDRESS_MAP_END
@@ -76,7 +76,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( hrg_b_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( hrg_b_map, 0, 8, cbm2_hrg_b_device )
+ADDRESS_MAP_START(cbm2_hrg_b_device::hrg_b_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/devices/bus/cbm2/hrg.h b/src/devices/bus/cbm2/hrg.h
index 3a6fe85c3cd..77209400042 100644
--- a/src/devices/bus/cbm2/hrg.h
+++ b/src/devices/bus/cbm2/hrg.h
@@ -55,6 +55,7 @@ public:
// construction/destruction
cbm2_hrg_a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void hrg_a_map(address_map &map);
protected:
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -69,6 +70,7 @@ public:
// construction/destruction
cbm2_hrg_b_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void hrg_b_map(address_map &map);
protected:
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/bus/cbmiec/c1526.cpp b/src/devices/bus/cbmiec/c1526.cpp
index 49c4279d508..255642b9696 100644
--- a/src/devices/bus/cbmiec/c1526.cpp
+++ b/src/devices/bus/cbmiec/c1526.cpp
@@ -78,7 +78,7 @@ const tiny_rom_entry *c4023_device::device_rom_region() const
// ADDRESS_MAP( c1526_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1526_mem, AS_PROGRAM, 8, c1526_device_base )
+ADDRESS_MAP_START(c1526_device_base::c1526_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION(M6504_TAG, 0)
ADDRESS_MAP_END
diff --git a/src/devices/bus/cbmiec/c1526.h b/src/devices/bus/cbmiec/c1526.h
index 87c7f07f7a0..d5042f283f1 100644
--- a/src/devices/bus/cbmiec/c1526.h
+++ b/src/devices/bus/cbmiec/c1526.h
@@ -32,6 +32,7 @@ protected:
// device-level overrides
virtual void device_start() override;
virtual void device_reset() override;
+ void c1526_mem(address_map &map);
};
diff --git a/src/devices/bus/cbmiec/c1541.cpp b/src/devices/bus/cbmiec/c1541.cpp
index 5bc72ce3d60..9d708a588a1 100644
--- a/src/devices/bus/cbmiec/c1541.cpp
+++ b/src/devices/bus/cbmiec/c1541.cpp
@@ -500,7 +500,7 @@ WRITE8_MEMBER( c1541_prologic_dos_classic_device::write )
// ADDRESS_MAP( c1541_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1541_mem, AS_PROGRAM, 8, c1541_device_base )
+ADDRESS_MAP_START(c1541_device_base::c1541_mem)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
AM_RANGE(0x1c00, 0x1c0f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_1_TAG, via6522_device, read, write)
@@ -512,7 +512,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( c1541dd_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1541dd_mem, AS_PROGRAM, 8, c1541_device_base )
+ADDRESS_MAP_START(c1541_device_base::c1541dd_mem)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
AM_RANGE(0x1c00, 0x1c0f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_1_TAG, via6522_device, read, write)
@@ -525,7 +525,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( c1541pd_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1541pd_mem, AS_PROGRAM, 8, c1541_device_base )
+ADDRESS_MAP_START(c1541_device_base::c1541pd_mem)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
AM_RANGE(0x1c00, 0x1c0f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_1_TAG, via6522_device, read, write)
@@ -539,7 +539,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( c1541pdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1541pdc_mem, AS_PROGRAM, 8, c1541_prologic_dos_classic_device )
+ADDRESS_MAP_START(c1541_prologic_dos_classic_device::c1541pdc_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
/* AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x6000) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
diff --git a/src/devices/bus/cbmiec/c1541.h b/src/devices/bus/cbmiec/c1541.h
index d2f3cfca377..36b4dac257e 100644
--- a/src/devices/bus/cbmiec/c1541.h
+++ b/src/devices/bus/cbmiec/c1541.h
@@ -61,6 +61,10 @@ protected:
required_device<floppy_image_device> m_floppy;
+ void c1541_mem(address_map &map);
+ void c1541dd_mem(address_map &map);
+ void c1541pd_mem(address_map &map);
+
private:
enum
{
@@ -261,6 +265,7 @@ public:
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
+ void c1541pdc_mem(address_map &map);
protected:
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/bus/cbmiec/c1571.cpp b/src/devices/bus/cbmiec/c1571.cpp
index 58f5b2e6d46..e12008a139d 100644
--- a/src/devices/bus/cbmiec/c1571.cpp
+++ b/src/devices/bus/cbmiec/c1571.cpp
@@ -144,7 +144,7 @@ const tiny_rom_entry *mini_chief_device::device_rom_region() const
// ADDRESS_MAP( c1571_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1571_mem, AS_PROGRAM, 8, c1571_device )
+ADDRESS_MAP_START(c1571_device::c1571_mem)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x03f0) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
AM_RANGE(0x1c00, 0x1c0f) AM_MIRROR(0x03f0) AM_READWRITE(via1_r, via1_w)
@@ -158,7 +158,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( mini_chief_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( mini_chief_mem, AS_PROGRAM, 8, mini_chief_device )
+ADDRESS_MAP_START(mini_chief_device::mini_chief_mem)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x03f0) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
AM_RANGE(0x1c00, 0x1c0f) AM_MIRROR(0x03f0) AM_READWRITE(via1_r, via1_w)
diff --git a/src/devices/bus/cbmiec/c1571.h b/src/devices/bus/cbmiec/c1571.h
index 1864313fe8c..272b5ffc123 100644
--- a/src/devices/bus/cbmiec/c1571.h
+++ b/src/devices/bus/cbmiec/c1571.h
@@ -68,6 +68,7 @@ public:
void wpt_callback(floppy_image_device *floppy, int state);
+ void c1571_mem(address_map &map);
protected:
c1571_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -165,6 +166,7 @@ public:
// construction/destruction
mini_chief_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void mini_chief_mem(address_map &map);
protected:
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/bus/cbmiec/c1581.cpp b/src/devices/bus/cbmiec/c1581.cpp
index ed1d0ebfe26..1244df1f418 100644
--- a/src/devices/bus/cbmiec/c1581.cpp
+++ b/src/devices/bus/cbmiec/c1581.cpp
@@ -89,7 +89,7 @@ const tiny_rom_entry *c1563_device::device_rom_region() const
// ADDRESS_MAP( c1581_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1581_mem, AS_PROGRAM, 8, c1581_device )
+ADDRESS_MAP_START(c1581_device::c1581_mem)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x2000) AM_RAM
AM_RANGE(0x4000, 0x400f) AM_MIRROR(0x1ff0) AM_DEVREADWRITE(M8520_TAG, mos8520_device, read, write)
AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE(WD1772_TAG, wd1772_device, read, write)
diff --git a/src/devices/bus/cbmiec/c1581.h b/src/devices/bus/cbmiec/c1581.h
index 46d60c05e56..17332c6aab3 100644
--- a/src/devices/bus/cbmiec/c1581.h
+++ b/src/devices/bus/cbmiec/c1581.h
@@ -39,6 +39,7 @@ public:
// construction/destruction
c1581_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void c1581_mem(address_map &map);
protected:
c1581_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/cbmiec/cmdhd.cpp b/src/devices/bus/cbmiec/cmdhd.cpp
index 813c3ce8c7a..b6aaefa2008 100644
--- a/src/devices/bus/cbmiec/cmdhd.cpp
+++ b/src/devices/bus/cbmiec/cmdhd.cpp
@@ -61,7 +61,7 @@ const tiny_rom_entry *cmd_hd_device::device_rom_region() const
// ADDRESS_MAP( cmd_hd_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( cmd_hd_mem, AS_PROGRAM, 8, cmd_hd_device )
+ADDRESS_MAP_START(cmd_hd_device::cmd_hd_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION(M6502_TAG, 0)
AM_RANGE(0x8000, 0x800f) AM_MIRROR(0x1f0) AM_DEVWRITE(M6522_1_TAG, via6522_device, write)
diff --git a/src/devices/bus/cbmiec/cmdhd.h b/src/devices/bus/cbmiec/cmdhd.h
index 5b19ef10656..e2b1e99df84 100644
--- a/src/devices/bus/cbmiec/cmdhd.h
+++ b/src/devices/bus/cbmiec/cmdhd.h
@@ -42,6 +42,7 @@ public:
DECLARE_WRITE8_MEMBER( led_w );
+ void cmd_hd_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/cbmiec/fd2000.cpp b/src/devices/bus/cbmiec/fd2000.cpp
index bac81b01567..34323500fbc 100644
--- a/src/devices/bus/cbmiec/fd2000.cpp
+++ b/src/devices/bus/cbmiec/fd2000.cpp
@@ -89,7 +89,7 @@ const tiny_rom_entry *fd4000_device::device_rom_region() const
// ADDRESS_MAP( fd2000_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( fd2000_mem, AS_PROGRAM, 8, fd2000_device )
+ADDRESS_MAP_START(fd2000_device::fd2000_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0x400f) AM_MIRROR(0xbf0) AM_DEVREADWRITE(G65SC22P2_TAG, via6522_device, read, write)
AM_RANGE(0x4e00, 0x4e07) AM_MIRROR(0x1f8) AM_DEVICE(DP8473V_TAG, dp8473_device, map)
@@ -102,7 +102,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( fd4000_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( fd4000_mem, AS_PROGRAM, 8, fd4000_device )
+ADDRESS_MAP_START(fd4000_device::fd4000_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0x400f) AM_MIRROR(0xbf0) AM_DEVREADWRITE(G65SC22P2_TAG, via6522_device, read, write)
AM_RANGE(0x4e00, 0x4e07) AM_MIRROR(0x1f8) AM_DEVICE(PC8477AV1_TAG, pc8477a_device, map)
diff --git a/src/devices/bus/cbmiec/fd2000.h b/src/devices/bus/cbmiec/fd2000.h
index 0331ce535de..29525a54490 100644
--- a/src/devices/bus/cbmiec/fd2000.h
+++ b/src/devices/bus/cbmiec/fd2000.h
@@ -47,6 +47,7 @@ public:
//DECLARE_FLOPPY_FORMATS( floppy_formats );
+ void fd2000_mem(address_map &map);
protected:
fd2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -78,6 +79,7 @@ public:
// construction/destruction
fd4000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void fd4000_mem(address_map &map);
protected:
virtual const tiny_rom_entry *device_rom_region() const override;
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/bus/cbmiec/interpod.cpp b/src/devices/bus/cbmiec/interpod.cpp
index ceaaad1341f..146f1ecc49c 100644
--- a/src/devices/bus/cbmiec/interpod.cpp
+++ b/src/devices/bus/cbmiec/interpod.cpp
@@ -109,7 +109,7 @@ const tiny_rom_entry *interpod_device::device_rom_region() const
// ADDRESS_MAP( interpod_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( interpod_mem, AS_PROGRAM, 8, interpod_device )
+ADDRESS_MAP_START(interpod_device::interpod_mem)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x3b80) AM_DEVICE(R6532_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0400, 0x041f) AM_MIRROR(0x3be0) AM_DEVICE(R6532_TAG, mos6532_new_device, io_map)
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x9ffe) AM_DEVREADWRITE(MC6850_TAG, acia6850_device, read, write)
diff --git a/src/devices/bus/cbmiec/interpod.h b/src/devices/bus/cbmiec/interpod.h
index b7345ea7377..18940128f03 100644
--- a/src/devices/bus/cbmiec/interpod.h
+++ b/src/devices/bus/cbmiec/interpod.h
@@ -49,6 +49,7 @@ public:
// construction/destruction
interpod_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void interpod_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/cbmiec/serialbox.cpp b/src/devices/bus/cbmiec/serialbox.cpp
index 6f68ccae9c4..d89712fbe01 100644
--- a/src/devices/bus/cbmiec/serialbox.cpp
+++ b/src/devices/bus/cbmiec/serialbox.cpp
@@ -59,7 +59,7 @@ const tiny_rom_entry *serial_box_device::device_rom_region() const
// ADDRESS_MAP( serial_box_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( serial_box_mem, AS_PROGRAM, 8, serial_box_device )
+ADDRESS_MAP_START(serial_box_device::serial_box_mem)
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(M6502_TAG, 0)
ADDRESS_MAP_END
diff --git a/src/devices/bus/cbmiec/serialbox.h b/src/devices/bus/cbmiec/serialbox.h
index 8633e374ec2..6400fe92ff5 100644
--- a/src/devices/bus/cbmiec/serialbox.h
+++ b/src/devices/bus/cbmiec/serialbox.h
@@ -36,6 +36,7 @@ public:
// construction/destruction
serial_box_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void serial_box_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/cbmiec/vic1515.cpp b/src/devices/bus/cbmiec/vic1515.cpp
index 229f3ed76ec..f0569d2f44e 100644
--- a/src/devices/bus/cbmiec/vic1515.cpp
+++ b/src/devices/bus/cbmiec/vic1515.cpp
@@ -42,7 +42,7 @@ const tiny_rom_entry *vic1515_device::device_rom_region() const
// ADDRESS_MAP( vic1515_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic1515_mem, AS_PROGRAM, 8, vic1515_device )
+ADDRESS_MAP_START(vic1515_device::vic1515_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("rom", 0)
ADDRESS_MAP_END
@@ -51,7 +51,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic1515_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic1515_io, AS_IO, 8, vic1515_device )
+ADDRESS_MAP_START(vic1515_device::vic1515_io)
ADDRESS_MAP_END
diff --git a/src/devices/bus/cbmiec/vic1515.h b/src/devices/bus/cbmiec/vic1515.h
index 7c6876897bc..94ed0d236a7 100644
--- a/src/devices/bus/cbmiec/vic1515.h
+++ b/src/devices/bus/cbmiec/vic1515.h
@@ -28,6 +28,8 @@ public:
// construction/destruction
vic1515_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void vic1515_io(address_map &map);
+ void vic1515_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/cbmiec/vic1520.cpp b/src/devices/bus/cbmiec/vic1520.cpp
index 30291266d9f..c20904403ae 100644
--- a/src/devices/bus/cbmiec/vic1520.cpp
+++ b/src/devices/bus/cbmiec/vic1520.cpp
@@ -82,7 +82,7 @@ const tiny_rom_entry *vic1520_device::device_rom_region() const
// ADDRESS_MAP( vic1520_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic1520_mem, AS_PROGRAM, 8, vic1520_device )
+ADDRESS_MAP_START(vic1520_device::vic1520_mem)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x000, 0x03f) AM_RAM
AM_RANGE(0x800, 0xfff) AM_ROM AM_REGION(M6500_1_TAG, 0)
diff --git a/src/devices/bus/cbmiec/vic1520.h b/src/devices/bus/cbmiec/vic1520.h
index dba79b29618..19ec85de510 100644
--- a/src/devices/bus/cbmiec/vic1520.h
+++ b/src/devices/bus/cbmiec/vic1520.h
@@ -28,6 +28,7 @@ public:
// construction/destruction
vic1520_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void vic1520_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/cbus/mpu_pc98.cpp b/src/devices/bus/cbus/mpu_pc98.cpp
index be82c7764b4..9b464c2a27f 100644
--- a/src/devices/bus/cbus/mpu_pc98.cpp
+++ b/src/devices/bus/cbus/mpu_pc98.cpp
@@ -61,7 +61,7 @@ mpu_pc98_device::mpu_pc98_device(const machine_config &mconfig, const char *tag,
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, mpu_pc98_device)
+ADDRESS_MAP_START(mpu_pc98_device::map)
AM_RANGE(0, 3) AM_DEVREADWRITE8(MPU_CORE_TAG, mpu401_device, mpu_r, mpu_w, 0xff)
ADDRESS_MAP_END
@@ -72,7 +72,7 @@ ADDRESS_MAP_END
void mpu_pc98_device::device_start()
{
address_space &iospace = m_bus->io_space();
- iospace.install_device(0xe0d0, 0xe0d3, *this, &mpu_pc98_device::map, 16, 0xffffffffffffffffU >> (64 - iospace.data_width()));
+ iospace.install_device(0xe0d0, 0xe0d3, *this, &mpu_pc98_device::map);
}
//-------------------------------------------------
diff --git a/src/devices/bus/cbus/mpu_pc98.h b/src/devices/bus/cbus/mpu_pc98.h
index 024ac574f14..9d0b8991ad5 100644
--- a/src/devices/bus/cbus/mpu_pc98.h
+++ b/src/devices/bus/cbus/mpu_pc98.h
@@ -19,7 +19,7 @@ class mpu_pc98_device : public device_t
public:
// construction/destruction
mpu_pc98_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/centronics/comxpl80.cpp b/src/devices/bus/centronics/comxpl80.cpp
index ff4beb5999f..720c5f6d84c 100644
--- a/src/devices/bus/centronics/comxpl80.cpp
+++ b/src/devices/bus/centronics/comxpl80.cpp
@@ -62,7 +62,7 @@ const tiny_rom_entry *comx_pl80_device::device_rom_region() const
// ADDRESS_MAP( comxpl80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( comxpl80_mem, AS_PROGRAM, 8, comx_pl80_device )
+ADDRESS_MAP_START(comx_pl80_device::comxpl80_mem)
/* AM_RANGE(0x000, 0x000) AM_READWRITE(cx005_port_a_r, cx005_port_a_w)
AM_RANGE(0x001, 0x001) AM_READWRITE(cx005_port_b_r, cx005_port_b_w)
AM_RANGE(0x002, 0x002) AM_READWRITE(cx005_port_c_r, cx005_port_c_w)
@@ -85,7 +85,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( comxpl80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( comxpl80_io, AS_IO, 8, comx_pl80_device )
+ADDRESS_MAP_START(comx_pl80_device::comxpl80_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_WRITE(pa_w)
AM_RANGE(0x01, 0x01) AM_WRITE(pb_w)
diff --git a/src/devices/bus/centronics/comxpl80.h b/src/devices/bus/centronics/comxpl80.h
index 8aca17e287b..18c5f69998e 100644
--- a/src/devices/bus/centronics/comxpl80.h
+++ b/src/devices/bus/centronics/comxpl80.h
@@ -35,6 +35,8 @@ public:
DECLARE_WRITE8_MEMBER( pc_w );
DECLARE_READ8_MEMBER( pd_r );
+ void comxpl80_io(address_map &map);
+ void comxpl80_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/centronics/epson_ex800.cpp b/src/devices/bus/centronics/epson_ex800.cpp
index bbdb310199d..49349a2a19e 100644
--- a/src/devices/bus/centronics/epson_ex800.cpp
+++ b/src/devices/bus/centronics/epson_ex800.cpp
@@ -198,7 +198,7 @@ const tiny_rom_entry *epson_ex800_device::device_rom_region() const
// ADDRESS_MAP( ex800_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( ex800_mem, AS_PROGRAM, 8, epson_ex800_device )
+ADDRESS_MAP_START(epson_ex800_device::ex800_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0xbfff) AM_RAM /* external RAM */
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x1800) AM_READWRITE(devsel_r, devsel_w)
diff --git a/src/devices/bus/centronics/epson_ex800.h b/src/devices/bus/centronics/epson_ex800.h
index b559f7f5c2f..94c1610d0b8 100644
--- a/src/devices/bus/centronics/epson_ex800.h
+++ b/src/devices/bus/centronics/epson_ex800.h
@@ -41,6 +41,7 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(online_switch);
+ void ex800_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/centronics/epson_lx800.cpp b/src/devices/bus/centronics/epson_lx800.cpp
index 03b36b63df1..075cf8fb4d0 100644
--- a/src/devices/bus/centronics/epson_lx800.cpp
+++ b/src/devices/bus/centronics/epson_lx800.cpp
@@ -52,7 +52,7 @@ const tiny_rom_entry *epson_lx800_device::device_rom_region() const
// ADDRESS_MAP( lx800_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( lx800_mem, AS_PROGRAM, 8, epson_lx800_device )
+ADDRESS_MAP_START(epson_lx800_device::lx800_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* 32k firmware */
AM_RANGE(0x8000, 0x9fff) AM_RAM /* 8k external RAM */
AM_RANGE(0xa000, 0xbfff) AM_NOP /* not used */
diff --git a/src/devices/bus/centronics/epson_lx800.h b/src/devices/bus/centronics/epson_lx800.h
index bb2f605f374..1e7c75fe2cb 100644
--- a/src/devices/bus/centronics/epson_lx800.h
+++ b/src/devices/bus/centronics/epson_lx800.h
@@ -36,6 +36,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(paperempty_led_w);
DECLARE_WRITE_LINE_MEMBER(reset_w);
+ void lx800_mem(address_map &map);
protected:
epson_lx800_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/centronics/epson_lx810l.cpp b/src/devices/bus/centronics/epson_lx810l.cpp
index 24b06396ff2..a1e091222ee 100644
--- a/src/devices/bus/centronics/epson_lx810l.cpp
+++ b/src/devices/bus/centronics/epson_lx810l.cpp
@@ -95,7 +95,7 @@ const tiny_rom_entry *epson_ap2000_device::device_rom_region() const
// ADDRESS_MAP( lx810l_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( lx810l_mem, AS_PROGRAM, 8, epson_lx810l_device )
+ADDRESS_MAP_START(epson_lx810l_device::lx810l_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* 32k firmware */
AM_RANGE(0x8000, 0x9fff) AM_RAM /* 8k external RAM */
AM_RANGE(0xa000, 0xbfff) AM_READWRITE(fakemem_r, fakemem_w) /* fake memory, write one, set all */
diff --git a/src/devices/bus/centronics/epson_lx810l.h b/src/devices/bus/centronics/epson_lx810l.h
index 2210692313b..17fcedf9fdc 100644
--- a/src/devices/bus/centronics/epson_lx810l.h
+++ b/src/devices/bus/centronics/epson_lx810l.h
@@ -63,6 +63,7 @@ public:
#define uabs(x) ((x) > 0 ? (x) : -(x))
unsigned int bitmap_line(int i) { return ((uabs(m_pf_pos_abs) / 6) + i) % m_bitmap.height(); }
+ void lx810l_mem(address_map &map);
protected:
epson_lx810l_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/centronics/nec_p72.cpp b/src/devices/bus/centronics/nec_p72.cpp
index 58639e698d5..b50a34d7714 100644
--- a/src/devices/bus/centronics/nec_p72.cpp
+++ b/src/devices/bus/centronics/nec_p72.cpp
@@ -36,7 +36,7 @@ const tiny_rom_entry *nec_p72_device::device_rom_region() const
// ADDRESS_MAP( p72_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( p72_mem, AS_PROGRAM, 16, nec_p72_device )
+ADDRESS_MAP_START(nec_p72_device::p72_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* 1Mbyte firmware */
//AM_RANGE(0x100000, 0x1fffff) AM_RAM /* 1Mbyte external RAM */ /* TODO might be 2x1Mbit */
// [RH] 29 August 2016: Commented out because the NEC V33 only has 20 address lines, and
diff --git a/src/devices/bus/centronics/nec_p72.h b/src/devices/bus/centronics/nec_p72.h
index fd50e36b447..959d670c945 100644
--- a/src/devices/bus/centronics/nec_p72.h
+++ b/src/devices/bus/centronics/nec_p72.h
@@ -22,6 +22,7 @@ public:
// construction/destruction
nec_p72_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void p72_mem(address_map &map);
protected:
nec_p72_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/cgenie/expansion/floppy.cpp b/src/devices/bus/cgenie/expansion/floppy.cpp
index e53ad30fbe6..8b231de57b9 100644
--- a/src/devices/bus/cgenie/expansion/floppy.cpp
+++ b/src/devices/bus/cgenie/expansion/floppy.cpp
@@ -30,7 +30,7 @@
DEFINE_DEVICE_TYPE(CGENIE_FDC, cgenie_fdc_device, "cgenie_fdc", "Colour Genie FDC")
-DEVICE_ADDRESS_MAP_START( mmio, 8, cgenie_fdc_device )
+ADDRESS_MAP_START(cgenie_fdc_device::mmio)
AM_RANGE(0xe0, 0xe3) AM_MIRROR(0x10) AM_READWRITE(irq_r, select_w)
AM_RANGE(0xec, 0xec) AM_MIRROR(0x10) AM_DEVREAD("fd1793", fd1793_device, status_r) AM_WRITE(command_w)
AM_RANGE(0xed, 0xed) AM_MIRROR(0x10) AM_DEVREADWRITE("fd1793", fd1793_device, track_r, track_w)
diff --git a/src/devices/bus/cgenie/expansion/floppy.h b/src/devices/bus/cgenie/expansion/floppy.h
index b12beb08efa..81f303465b2 100644
--- a/src/devices/bus/cgenie/expansion/floppy.h
+++ b/src/devices/bus/cgenie/expansion/floppy.h
@@ -29,7 +29,7 @@ public:
// construction/destruction
cgenie_fdc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(mmio, 8);
+ void mmio(address_map &map);
TIMER_DEVICE_CALLBACK_MEMBER(timer_callback);
diff --git a/src/devices/bus/compis/hrg.cpp b/src/devices/bus/compis/hrg.cpp
index 33e7681b803..79e22f352ec 100644
--- a/src/devices/bus/compis/hrg.cpp
+++ b/src/devices/bus/compis/hrg.cpp
@@ -32,12 +32,12 @@ DEFINE_DEVICE_TYPE(COMPIS_UHRG, compis_uhrg_device, "compis_uhrg", "Compis UHRG"
// ADDRESS_MAP( upd7220_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( hrg_map, 0, 16, compis_hrg_device )
+ADDRESS_MAP_START(compis_hrg_device::hrg_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x00000, 0x7fff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( uhrg_map, 0, 16, compis_uhrg_device )
+ADDRESS_MAP_START(compis_uhrg_device::uhrg_map)
ADDRESS_MAP_GLOBAL_MASK(0x1ffff)
AM_RANGE(0x00000, 0x1ffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
diff --git a/src/devices/bus/compis/hrg.h b/src/devices/bus/compis/hrg.h
index 389cb745e94..eba335fd82c 100644
--- a/src/devices/bus/compis/hrg.h
+++ b/src/devices/bus/compis/hrg.h
@@ -29,6 +29,7 @@ public:
// construction/destruction
compis_hrg_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void hrg_map(address_map &map);
protected:
compis_hrg_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -62,6 +63,7 @@ public:
// construction/destruction
compis_uhrg_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void uhrg_map(address_map &map);
protected:
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/bus/dmv/k230.cpp b/src/devices/bus/dmv/k230.cpp
index 5d51a136bdd..dd1249240d0 100644
--- a/src/devices/bus/dmv/k230.cpp
+++ b/src/devices/bus/dmv/k230.cpp
@@ -32,25 +32,25 @@ ROM_START( dmv_k235 )
ROM_LOAD( "dmv_int_8088_pic_33473.bin", 0x0000, 0x1000, CRC(104195dc) SHA1(08d48ca3b84ab26c1a764792e04ec4def7dad2ad))
ROM_END
-static ADDRESS_MAP_START(k230_mem, AS_PROGRAM, 8, dmv_k230_device)
+ADDRESS_MAP_START(dmv_k230_device::k230_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00000, 0x7ffff ) AM_READWRITE(program_r, program_w)
AM_RANGE( 0x80000, 0xfffff ) AM_READ(rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(k230_io, AS_IO, 8, dmv_k230_device)
+ADDRESS_MAP_START(dmv_k230_device::k230_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0xff ) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(k234_mem, AS_PROGRAM, 8, dmv_k230_device)
+ADDRESS_MAP_START(dmv_k230_device::k234_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00000, 0x7ffff ) AM_READWRITE(program_r, program_w)
AM_RANGE( 0xfff00, 0xfffff ) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(k235_io, AS_IO, 8, dmv_k230_device)
+ADDRESS_MAP_START(dmv_k230_device::k235_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0xff ) AM_READWRITE(io_r, io_w)
diff --git a/src/devices/bus/dmv/k230.h b/src/devices/bus/dmv/k230.h
index 4fdee47a1c7..01c76d8a63b 100644
--- a/src/devices/bus/dmv/k230.h
+++ b/src/devices/bus/dmv/k230.h
@@ -36,6 +36,10 @@ public:
DECLARE_WRITE8_MEMBER(program_w);
DECLARE_READ8_MEMBER(rom_r);
+ void k230_io(address_map &map);
+ void k230_mem(address_map &map);
+ void k234_mem(address_map &map);
+ void k235_io(address_map &map);
protected:
dmv_k230_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/ecbbus/grip.cpp b/src/devices/bus/ecbbus/grip.cpp
index 30174aa4e83..f518ef2bc96 100644
--- a/src/devices/bus/ecbbus/grip.cpp
+++ b/src/devices/bus/ecbbus/grip.cpp
@@ -124,7 +124,7 @@ const tiny_rom_entry *ecb_grip21_device::device_rom_region() const
// ADDRESS_MAP( grip_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( grip_mem, AS_PROGRAM, 8, ecb_grip21_device )
+ADDRESS_MAP_START(ecb_grip21_device::grip_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("videoram")
@@ -135,7 +135,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( grip_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( grip_io, AS_IO, 8, ecb_grip21_device )
+ADDRESS_MAP_START(ecb_grip21_device::grip_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(cxstb_r, cxstb_w)
// AM_RANGE(0x10, 0x10) AM_WRITE(ccon_w)
diff --git a/src/devices/bus/ecbbus/grip.h b/src/devices/bus/ecbbus/grip.h
index 6851bf755d9..3572ba9c1b6 100644
--- a/src/devices/bus/ecbbus/grip.h
+++ b/src/devices/bus/ecbbus/grip.h
@@ -47,6 +47,8 @@ public:
DECLARE_READ8_MEMBER( cxstb_r );
DECLARE_WRITE8_MEMBER( cxstb_w );
+ void grip_io(address_map &map);
+ void grip_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/econet/e01.cpp b/src/devices/bus/econet/e01.cpp
index 94c7cfe26b1..d221ad8025f 100644
--- a/src/devices/bus/econet/e01.cpp
+++ b/src/devices/bus/econet/e01.cpp
@@ -219,7 +219,7 @@ WRITE_LINE_MEMBER( econet_e01_device::scsi_req_w )
// ADDRESS_MAP( e01_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( e01_mem, AS_PROGRAM, 8, econet_e01_device )
+ADDRESS_MAP_START(econet_e01_device::e01_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
AM_RANGE(0xfc00, 0xfc00) AM_MIRROR(0x00c3) AM_READWRITE(rtc_address_r, rtc_address_w)
AM_RANGE(0xfc04, 0xfc04) AM_MIRROR(0x00c3) AM_READWRITE(rtc_data_r, rtc_data_w)
diff --git a/src/devices/bus/econet/e01.h b/src/devices/bus/econet/e01.h
index 20508313538..804fc2aba75 100644
--- a/src/devices/bus/econet/e01.h
+++ b/src/devices/bus/econet/e01.h
@@ -48,6 +48,7 @@ public:
DECLARE_READ8_MEMBER( rtc_data_r );
DECLARE_WRITE8_MEMBER( rtc_data_w );
+ void e01_mem(address_map &map);
protected:
enum
{
diff --git a/src/devices/bus/einstein/pipe/silicon_disc.cpp b/src/devices/bus/einstein/pipe/silicon_disc.cpp
index 354ada1c594..be1df8c8d82 100644
--- a/src/devices/bus/einstein/pipe/silicon_disc.cpp
+++ b/src/devices/bus/einstein/pipe/silicon_disc.cpp
@@ -20,7 +20,7 @@ DEFINE_DEVICE_TYPE(EINSTEIN_SILICON_DISC, einstein_silicon_disc_device, "einstei
// device_address_map
//-------------------------------------------------
-DEVICE_ADDRESS_MAP_START(map, 8, einstein_silicon_disc_device)
+ADDRESS_MAP_START(einstein_silicon_disc_device::map)
AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) AM_WRITE(sector_low_w)
AM_RANGE(0x09, 0x09) AM_MIRROR(0xff00) AM_WRITE(sector_high_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/einstein/pipe/silicon_disc.h b/src/devices/bus/einstein/pipe/silicon_disc.h
index 9a4a8caf85d..8ada24327c2 100644
--- a/src/devices/bus/einstein/pipe/silicon_disc.h
+++ b/src/devices/bus/einstein/pipe/silicon_disc.h
@@ -39,7 +39,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
required_memory_region m_rom;
required_memory_region m_bios;
diff --git a/src/devices/bus/einstein/pipe/tk02.cpp b/src/devices/bus/einstein/pipe/tk02.cpp
index 14aa1b661c7..87ba5aacf8c 100644
--- a/src/devices/bus/einstein/pipe/tk02.cpp
+++ b/src/devices/bus/einstein/pipe/tk02.cpp
@@ -21,7 +21,7 @@ DEFINE_DEVICE_TYPE(TK02_80COL, tk02_device, "tk02", "TK02 80 Column Monochrome U
// device_address_map
//-------------------------------------------------
-DEVICE_ADDRESS_MAP_START(map, 8, tk02_device)
+ADDRESS_MAP_START(tk02_device::map)
// AM_RANGE(0x00, 0x07) AM_SELECT(0xff00) AM_READWRITE(ram_r, ram_w) // no AM_SELECT (or AM_MASK) support here
AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x09, 0x09) AM_MIRROR(0xff00) AM_DEVWRITE("crtc", mc6845_device, register_w)
diff --git a/src/devices/bus/einstein/pipe/tk02.h b/src/devices/bus/einstein/pipe/tk02.h
index 8a7d2231de3..ca8088ca82a 100644
--- a/src/devices/bus/einstein/pipe/tk02.h
+++ b/src/devices/bus/einstein/pipe/tk02.h
@@ -35,7 +35,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_WRITE_LINE_MEMBER(de_w);
diff --git a/src/devices/bus/epson_sio/pf10.cpp b/src/devices/bus/epson_sio/pf10.cpp
index 728e096b50e..972da3e55a7 100644
--- a/src/devices/bus/epson_sio/pf10.cpp
+++ b/src/devices/bus/epson_sio/pf10.cpp
@@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(EPSON_PF10, epson_pf10_device, "epson_pf10", "EPSON PF-10 Por
// address maps
//-------------------------------------------------
-static ADDRESS_MAP_START( cpu_mem, AS_PROGRAM, 8, epson_pf10_device )
+ADDRESS_MAP_START(epson_pf10_device::cpu_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("maincpu", hd6303y_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0040, 0x00ff) AM_RAM /* 192 bytes internal ram */
AM_RANGE(0x0800, 0x0fff) AM_RAM /* external 2k ram */
@@ -34,7 +34,7 @@ static ADDRESS_MAP_START( cpu_mem, AS_PROGRAM, 8, epson_pf10_device )
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu_io, AS_IO, 8, epson_pf10_device )
+ADDRESS_MAP_START(epson_pf10_device::cpu_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(port1_r, port1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(port2_r, port2_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/epson_sio/pf10.h b/src/devices/bus/epson_sio/pf10.h
index 282bbb874c1..5429ae8a50c 100644
--- a/src/devices/bus/epson_sio/pf10.h
+++ b/src/devices/bus/epson_sio/pf10.h
@@ -40,6 +40,8 @@ public:
DECLARE_READ8_MEMBER( port2_r );
DECLARE_WRITE8_MEMBER( port2_w );
+ void cpu_io(address_map &map);
+ void cpu_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/epson_sio/tf20.cpp b/src/devices/bus/epson_sio/tf20.cpp
index 35a86b25009..e63527463ae 100644
--- a/src/devices/bus/epson_sio/tf20.cpp
+++ b/src/devices/bus/epson_sio/tf20.cpp
@@ -29,12 +29,12 @@ DEFINE_DEVICE_TYPE(EPSON_TF20, epson_tf20_device, "epson_tf20", "EPSON TF-20 Dua
// address maps
//-------------------------------------------------
-static ADDRESS_MAP_START( cpu_mem, AS_PROGRAM, 8, epson_tf20_device )
+ADDRESS_MAP_START(epson_tf20_device::cpu_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu_io, AS_IO, 8, epson_tf20_device )
+ADDRESS_MAP_START(epson_tf20_device::cpu_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("3a", upd7201_device, ba_cd_r, ba_cd_w)
diff --git a/src/devices/bus/epson_sio/tf20.h b/src/devices/bus/epson_sio/tf20.h
index cde9509f685..fa37c87012f 100644
--- a/src/devices/bus/epson_sio/tf20.h
+++ b/src/devices/bus/epson_sio/tf20.h
@@ -36,6 +36,8 @@ public:
DECLARE_READ8_MEMBER( upd765_tc_r );
DECLARE_WRITE8_MEMBER( fdc_control_w );
+ void cpu_io(address_map &map);
+ void cpu_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/hp80_io/82937.cpp b/src/devices/bus/hp80_io/82937.cpp
index 48713edcc13..e563ceff96e 100644
--- a/src/devices/bus/hp80_io/82937.cpp
+++ b/src/devices/bus/hp80_io/82937.cpp
@@ -316,7 +316,7 @@ ROM_START(hp82937)
ROM_LOAD("1820-2437.bin" , 0 , 0x800 , CRC(687d1559) SHA1(44dfc8c3f431cd37a270b094f1db751214009214))
ROM_END
-static ADDRESS_MAP_START(cpu_io_map , AS_IO , 8 , hp82937_io_card_device)
+ADDRESS_MAP_START(hp82937_io_card_device::cpu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00 , 0x01) AM_DEVREADWRITE("xlator" , hp_1mb5_device , uc_r , uc_w)
AM_RANGE(0x03 , 0x03) AM_READWRITE(switch_r , latch_w)
diff --git a/src/devices/bus/hp80_io/82937.h b/src/devices/bus/hp80_io/82937.h
index 373bdae271d..ea63acdea24 100644
--- a/src/devices/bus/hp80_io/82937.h
+++ b/src/devices/bus/hp80_io/82937.h
@@ -33,6 +33,7 @@ public:
DECLARE_READ8_MEMBER(switch_r);
DECLARE_WRITE8_MEMBER(latch_w);
+ void cpu_io_map(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/bus/hp9845_io/98034.cpp b/src/devices/bus/hp9845_io/98034.cpp
index 56d7496d12d..e98b1c6b7be 100644
--- a/src/devices/bus/hp9845_io/98034.cpp
+++ b/src/devices/bus/hp9845_io/98034.cpp
@@ -339,12 +339,12 @@ ROM_START(hp98034)
ROM_LOAD("1816-1242.bin" , 0 , 0x400 , CRC(301a9f5f) SHA1(3d7c1ace38c4d3178fdbf764c044535d9f6ac94f))
ROM_END
-static ADDRESS_MAP_START(np_program_map , AS_PROGRAM , 8 , hp98034_io_card_device)
+ADDRESS_MAP_START(hp98034_io_card_device::np_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000 , 0x3ff) AM_ROM AM_REGION("np" , 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(np_io_map , AS_IO , 8 , hp98034_io_card_device)
+ADDRESS_MAP_START(hp98034_io_card_device::np_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0 , 0) AM_WRITE(hpib_data_w)
AM_RANGE(1 , 1) AM_WRITE(hpib_ctrl_w)
diff --git a/src/devices/bus/hp9845_io/98034.h b/src/devices/bus/hp9845_io/98034.h
index f92d1326f00..822944262cf 100644
--- a/src/devices/bus/hp9845_io/98034.h
+++ b/src/devices/bus/hp9845_io/98034.h
@@ -37,6 +37,8 @@ public:
DECLARE_WRITE8_MEMBER(mode_reg_clear_w);
DECLARE_READ8_MEMBER(switch_r);
+ void np_io_map(address_map &map);
+ void np_program_map(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/bus/hp9845_io/98035.cpp b/src/devices/bus/hp9845_io/98035.cpp
index 886faf6957f..fe6c06b114a 100644
--- a/src/devices/bus/hp9845_io/98035.cpp
+++ b/src/devices/bus/hp9845_io/98035.cpp
@@ -727,12 +727,12 @@ ROM_START(hp98035)
ROM_LOAD("1818-0469.bin" , 0 , 0x800 , CRC(e16ab3bc) SHA1(34e89a37a2822f27af21969941201317dbff615b))
ROM_END
-static ADDRESS_MAP_START(np_program_map , AS_PROGRAM , 8 , hp98035_io_card_device)
+ADDRESS_MAP_START(hp98035_io_card_device::np_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000 , 0x7ff) AM_ROM AM_REGION("np" , 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(np_io_map , AS_IO , 8 , hp98035_io_card_device)
+ADDRESS_MAP_START(hp98035_io_card_device::np_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0 , 0x0) AM_WRITE(ram_addr_w)
AM_RANGE(0x1 , 0x1) AM_READ(ram_data_r)
diff --git a/src/devices/bus/hp9845_io/98035.h b/src/devices/bus/hp9845_io/98035.h
index 62a0d5a03de..d181b12d25b 100644
--- a/src/devices/bus/hp9845_io/98035.h
+++ b/src/devices/bus/hp9845_io/98035.h
@@ -44,6 +44,8 @@ public:
DECLARE_READ8_MEMBER(clr_inten_r);
DECLARE_WRITE8_MEMBER(clr_inten_w);
+ void np_io_map(address_map &map);
+ void np_program_map(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/bus/ieee488/c2031.cpp b/src/devices/bus/ieee488/c2031.cpp
index 6ea6f846c82..4d337e41600 100644
--- a/src/devices/bus/ieee488/c2031.cpp
+++ b/src/devices/bus/ieee488/c2031.cpp
@@ -61,7 +61,7 @@ const tiny_rom_entry *c2031_device::device_rom_region() const
// ADDRESS_MAP( c2031_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c2031_mem, AS_PROGRAM, 8, c2031_device )
+ADDRESS_MAP_START(c2031_device::c2031_mem)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
AM_RANGE(0x1c00, 0x1c0f) AM_MIRROR(0x63f0) AM_DEVREADWRITE(M6522_1_TAG, via6522_device, read, write)
diff --git a/src/devices/bus/ieee488/c2031.h b/src/devices/bus/ieee488/c2031.h
index 9d892bb467d..2ae98540a0e 100644
--- a/src/devices/bus/ieee488/c2031.h
+++ b/src/devices/bus/ieee488/c2031.h
@@ -31,6 +31,7 @@ public:
// construction/destruction
c2031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void c2031_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/ieee488/c2040.cpp b/src/devices/bus/ieee488/c2040.cpp
index 1031e7129c2..f8b28152f3b 100644
--- a/src/devices/bus/ieee488/c2040.cpp
+++ b/src/devices/bus/ieee488/c2040.cpp
@@ -168,7 +168,7 @@ const tiny_rom_entry *c4040_device::device_rom_region() const
// ADDRESS_MAP( c2040_main_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c2040_main_mem, AS_PROGRAM, 8, c2040_device )
+ADDRESS_MAP_START(c2040_device::c2040_main_mem)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0100) AM_DEVICE(M6532_0_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x0100) AM_DEVICE(M6532_1_TAG, mos6532_new_device, ram_map)
@@ -186,7 +186,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( c2040_fdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c2040_fdc_mem, AS_PROGRAM, 8, c2040_device )
+ADDRESS_MAP_START(c2040_device::c2040_fdc_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x003f) AM_MIRROR(0x0300) AM_DEVICE(M6530_TAG, mos6530_new_device, ram_map)
AM_RANGE(0x0040, 0x004f) AM_MIRROR(0x0330) AM_DEVICE(M6522_TAG, via6522_device, map)
diff --git a/src/devices/bus/ieee488/c2040.h b/src/devices/bus/ieee488/c2040.h
index 3c6eef7df60..54da6a00654 100644
--- a/src/devices/bus/ieee488/c2040.h
+++ b/src/devices/bus/ieee488/c2040.h
@@ -40,6 +40,8 @@ public:
DECLARE_WRITE8_MEMBER( riot1_pb_w );
DECLARE_WRITE8_MEMBER( via_pb_w );
+ void c2040_fdc_mem(address_map &map);
+ void c2040_main_mem(address_map &map);
protected:
c2040_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/ieee488/c8050.cpp b/src/devices/bus/ieee488/c8050.cpp
index 799abbd599e..92169a77d6e 100644
--- a/src/devices/bus/ieee488/c8050.cpp
+++ b/src/devices/bus/ieee488/c8050.cpp
@@ -184,7 +184,7 @@ const tiny_rom_entry *sfd1001_device::device_rom_region() const
// ADDRESS_MAP( c8050_main_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c8050_main_mem, AS_PROGRAM, 8, c8050_device )
+ADDRESS_MAP_START(c8050_device::c8050_main_mem)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0100) AM_DEVICE(M6532_0_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x0100) AM_DEVICE(M6532_1_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0200, 0x021f) AM_MIRROR(0x0d60) AM_DEVICE(M6532_0_TAG, mos6532_new_device, io_map)
@@ -201,7 +201,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( c8050_fdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c8050_fdc_mem, AS_PROGRAM, 8, c8050_device )
+ADDRESS_MAP_START(c8050_device::c8050_fdc_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x003f) AM_MIRROR(0x0300) AM_DEVICE(M6530_TAG, mos6530_new_device, ram_map)
AM_RANGE(0x0040, 0x004f) AM_MIRROR(0x0330) AM_DEVICE(M6522_TAG, via6522_device, map)
@@ -218,7 +218,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( c8250lp_fdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c8250lp_fdc_mem, AS_PROGRAM, 8, c8050_device )
+ADDRESS_MAP_START(c8050_device::c8250lp_fdc_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x003f) AM_MIRROR(0x0300) AM_DEVICE(M6530_TAG, mos6530_new_device, ram_map)
AM_RANGE(0x0040, 0x004f) AM_MIRROR(0x0330) AM_DEVICE(M6522_TAG, via6522_device, map)
@@ -235,7 +235,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( sfd1001_fdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( sfd1001_fdc_mem, AS_PROGRAM, 8, c8050_device )
+ADDRESS_MAP_START(c8050_device::sfd1001_fdc_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x003f) AM_MIRROR(0x0300) AM_DEVICE(M6530_TAG, mos6530_new_device, ram_map)
AM_RANGE(0x0040, 0x004f) AM_MIRROR(0x0330) AM_DEVICE(M6522_TAG, via6522_device, map)
diff --git a/src/devices/bus/ieee488/c8050.h b/src/devices/bus/ieee488/c8050.h
index 7eb6c5b9b0d..8a0a3f75935 100644
--- a/src/devices/bus/ieee488/c8050.h
+++ b/src/devices/bus/ieee488/c8050.h
@@ -40,6 +40,10 @@ public:
DECLARE_WRITE8_MEMBER( riot1_pb_w );
DECLARE_WRITE8_MEMBER( via_pb_w );
+ void c8050_fdc_mem(address_map &map);
+ void c8050_main_mem(address_map &map);
+ void c8250lp_fdc_mem(address_map &map);
+ void sfd1001_fdc_mem(address_map &map);
protected:
c8050_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/ieee488/c8280.cpp b/src/devices/bus/ieee488/c8280.cpp
index 5bb49da2c71..19667112ce8 100644
--- a/src/devices/bus/ieee488/c8280.cpp
+++ b/src/devices/bus/ieee488/c8280.cpp
@@ -73,7 +73,7 @@ const tiny_rom_entry *c8280_device::device_rom_region() const
// ADDRESS_MAP( c8280_main_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c8280_main_mem, AS_PROGRAM, 8, c8280_device )
+ADDRESS_MAP_START(c8280_device::c8280_main_mem)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x100) AM_DEVICE(M6532_0_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x100) AM_DEVICE(M6532_1_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0200, 0x021f) AM_MIRROR(0xd60) AM_DEVICE(M6532_0_TAG, mos6532_new_device, io_map)
@@ -90,7 +90,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( c8280_fdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c8280_fdc_mem, AS_PROGRAM, 8, c8280_device )
+ADDRESS_MAP_START(c8280_device::c8280_fdc_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x300) AM_RAM
AM_RANGE(0x0080, 0x0083) AM_MIRROR(0x37c) AM_DEVREADWRITE(WD1797_TAG, fd1797_device, read, write)
diff --git a/src/devices/bus/ieee488/c8280.h b/src/devices/bus/ieee488/c8280.h
index c7b62e1b032..9062962bdf5 100644
--- a/src/devices/bus/ieee488/c8280.h
+++ b/src/devices/bus/ieee488/c8280.h
@@ -34,6 +34,8 @@ public:
DECLARE_READ8_MEMBER( fk5_r );
DECLARE_WRITE8_MEMBER( fk5_w );
+ void c8280_fdc_mem(address_map &map);
+ void c8280_main_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/ieee488/d9060.cpp b/src/devices/bus/ieee488/d9060.cpp
index 5104527ad70..945b23d112d 100644
--- a/src/devices/bus/ieee488/d9060.cpp
+++ b/src/devices/bus/ieee488/d9060.cpp
@@ -109,7 +109,7 @@ const tiny_rom_entry *d9060_device_base::device_rom_region() const
// ADDRESS_MAP( d9060_main_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( d9060_main_mem, AS_PROGRAM, 8, d9060_device_base )
+ADDRESS_MAP_START(d9060_device_base::d9060_main_mem)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0100) AM_DEVICE(M6532_0_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x0100) AM_DEVICE(M6532_1_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0200, 0x021f) AM_MIRROR(0x0d60) AM_DEVICE(M6532_0_TAG, mos6532_new_device, io_map)
@@ -126,7 +126,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( d9060_hdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( d9060_hdc_mem, AS_PROGRAM, 8, d9060_device_base )
+ADDRESS_MAP_START(d9060_device_base::d9060_hdc_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x300) AM_RAM
AM_RANGE(0x0080, 0x008f) AM_MIRROR(0x370) AM_DEVREADWRITE(M6522_TAG, via6522_device, read, write)
diff --git a/src/devices/bus/ieee488/d9060.h b/src/devices/bus/ieee488/d9060.h
index b65155cd930..d02e0728f72 100644
--- a/src/devices/bus/ieee488/d9060.h
+++ b/src/devices/bus/ieee488/d9060.h
@@ -85,6 +85,8 @@ private:
uint8_t m_data;
int m_variant;
+ void d9060_hdc_mem(address_map &map);
+ void d9060_main_mem(address_map &map);
};
diff --git a/src/devices/bus/ieee488/hardbox.cpp b/src/devices/bus/ieee488/hardbox.cpp
index 5cf5c5e74eb..af14b14a8b8 100644
--- a/src/devices/bus/ieee488/hardbox.cpp
+++ b/src/devices/bus/ieee488/hardbox.cpp
@@ -105,7 +105,7 @@ const tiny_rom_entry *hardbox_device::device_rom_region() const
// ADDRESS_MAP( hardbox_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( hardbox_mem, AS_PROGRAM, 8, hardbox_device )
+ADDRESS_MAP_START(hardbox_device::hardbox_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION(Z80_TAG, 0)
ADDRESS_MAP_END
@@ -115,7 +115,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( hardbox_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( hardbox_io, AS_IO, 8, hardbox_device )
+ADDRESS_MAP_START(hardbox_device::hardbox_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE(I8255_0_TAG, i8255_device, read, write)
AM_RANGE(0x14, 0x17) AM_DEVREADWRITE(I8255_1_TAG, i8255_device, read, write)
diff --git a/src/devices/bus/ieee488/hardbox.h b/src/devices/bus/ieee488/hardbox.h
index e74f12054dc..889fa2684b5 100644
--- a/src/devices/bus/ieee488/hardbox.h
+++ b/src/devices/bus/ieee488/hardbox.h
@@ -33,6 +33,8 @@ public:
// construction/destruction
hardbox_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void hardbox_io(address_map &map);
+ void hardbox_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/ieee488/hp9895.cpp b/src/devices/bus/ieee488/hp9895.cpp
index 2491112838e..c7a3a9d603e 100644
--- a/src/devices/bus/ieee488/hp9895.cpp
+++ b/src/devices/bus/ieee488/hp9895.cpp
@@ -847,13 +847,13 @@ ROM_START(hp9895)
ROM_LOAD("1818-1391a.bin" , 0 , 0x2000 , CRC(b50dbfb5) SHA1(96edf9af78be75fbad2a0245b8af43958ba32752))
ROM_END
-static ADDRESS_MAP_START(z80_program_map , AS_PROGRAM , 8 , hp9895_device)
+ADDRESS_MAP_START(hp9895_device::z80_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000 , 0x1fff) AM_ROM AM_REGION("cpu" , 0)
AM_RANGE(0x6000 , 0x63ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z80_io_map , AS_IO , 8 , hp9895_device)
+ADDRESS_MAP_START(hp9895_device::z80_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10 , 0x17) AM_DEVWRITE("phi" , phi_device , reg8_w) AM_READ(phi_reg_r)
diff --git a/src/devices/bus/ieee488/hp9895.h b/src/devices/bus/ieee488/hp9895.h
index 10a27f18d5c..b6ef102fedf 100644
--- a/src/devices/bus/ieee488/hp9895.h
+++ b/src/devices/bus/ieee488/hp9895.h
@@ -56,6 +56,8 @@ public:
// Floppy drive interface
void floppy_ready_cb(floppy_image_device *floppy , int state);
+ void z80_io_map(address_map &map);
+ void z80_program_map(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/bus/ieee488/shark.cpp b/src/devices/bus/ieee488/shark.cpp
index 99690da3875..c6494d5374d 100644
--- a/src/devices/bus/ieee488/shark.cpp
+++ b/src/devices/bus/ieee488/shark.cpp
@@ -61,7 +61,7 @@ const tiny_rom_entry *mshark_device::device_rom_region() const
// ADDRESS_MAP( mshark_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( mshark_mem, AS_PROGRAM, 8, mshark_device )
+ADDRESS_MAP_START(mshark_device::mshark_mem)
AM_RANGE(0x0000, 0x4fff) AM_ROM AM_REGION(I8085_TAG, 0)
ADDRESS_MAP_END
@@ -70,7 +70,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( mshark_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( mshark_io, AS_IO, 8, mshark_device )
+ADDRESS_MAP_START(mshark_device::mshark_io)
ADDRESS_MAP_END
diff --git a/src/devices/bus/ieee488/shark.h b/src/devices/bus/ieee488/shark.h
index 496be3d6176..3681c7b4ac6 100644
--- a/src/devices/bus/ieee488/shark.h
+++ b/src/devices/bus/ieee488/shark.h
@@ -30,6 +30,8 @@ public:
// construction/destruction
mshark_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void mshark_io(address_map &map);
+ void mshark_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/ieee488/softbox.cpp b/src/devices/bus/ieee488/softbox.cpp
index e54e0d9dc83..19d1fb7721d 100644
--- a/src/devices/bus/ieee488/softbox.cpp
+++ b/src/devices/bus/ieee488/softbox.cpp
@@ -72,7 +72,7 @@ const tiny_rom_entry *softbox_device::device_rom_region() const
// ADDRESS_MAP( softbox_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( softbox_mem, AS_PROGRAM, 8, softbox_device )
+ADDRESS_MAP_START(softbox_device::softbox_mem)
AM_RANGE(0x0000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(Z80_TAG, 0)
ADDRESS_MAP_END
@@ -82,7 +82,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( softbox_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( softbox_io, AS_IO, 8, softbox_device )
+ADDRESS_MAP_START(softbox_device::softbox_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x08) AM_DEVREADWRITE(I8251_TAG, i8251_device, data_r, data_w)
AM_RANGE(0x09, 0x09) AM_DEVREADWRITE(I8251_TAG, i8251_device, status_r, control_w)
diff --git a/src/devices/bus/ieee488/softbox.h b/src/devices/bus/ieee488/softbox.h
index 14284042d82..d6eacc0c262 100644
--- a/src/devices/bus/ieee488/softbox.h
+++ b/src/devices/bus/ieee488/softbox.h
@@ -37,6 +37,8 @@ public:
DECLARE_WRITE8_MEMBER( dbrg_w );
+ void softbox_io(address_map &map);
+ void softbox_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/imi7000/imi5000h.cpp b/src/devices/bus/imi7000/imi5000h.cpp
index 395181ff77e..a86321e64b7 100644
--- a/src/devices/bus/imi7000/imi5000h.cpp
+++ b/src/devices/bus/imi7000/imi5000h.cpp
@@ -62,7 +62,7 @@ const tiny_rom_entry *imi5000h_device::device_rom_region() const
// ADDRESS_MAP( imi5000h_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( imi5000h_mem, AS_PROGRAM, 8, imi5000h_device )
+ADDRESS_MAP_START(imi5000h_device::imi5000h_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x1800) AM_RAM
@@ -76,7 +76,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( imi5000h_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( imi5000h_io, AS_IO, 8, imi5000h_device )
+ADDRESS_MAP_START(imi5000h_device::imi5000h_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x9f)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(Z80PIO_0_TAG, z80pio_device, read, write)
diff --git a/src/devices/bus/imi7000/imi5000h.h b/src/devices/bus/imi7000/imi5000h.h
index 78a8113dc0a..18a7b26ecfb 100644
--- a/src/devices/bus/imi7000/imi5000h.h
+++ b/src/devices/bus/imi7000/imi5000h.h
@@ -34,6 +34,8 @@ public:
// construction/destruction
imi5000h_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void imi5000h_io(address_map &map);
+ void imi5000h_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/interpro/sr/gt.cpp b/src/devices/bus/interpro/sr/gt.cpp
index ef3d9f397d8..5fede30ecbc 100644
--- a/src/devices/bus/interpro/sr/gt.cpp
+++ b/src/devices/bus/interpro/sr/gt.cpp
@@ -20,7 +20,7 @@
#define VERBOSE 0
#include "logmacro.h"
-DEVICE_ADDRESS_MAP_START(map, 32, mpcb963_device)
+ADDRESS_MAP_START(mpcb963_device::map)
AM_RANGE(0x00000000, 0x0000007f) AM_READ(idprom_r)
AM_RANGE(0x00000080, 0x0000008f) AM_DEVICE8("ramdac0", bt459_device, map, 0xff)
AM_RANGE(0x000000b0, 0x000000b3) AM_READWRITE16(control_r, control_w, 0xffff)
@@ -29,7 +29,7 @@ DEVICE_ADDRESS_MAP_START(map, 32, mpcb963_device)
AM_RANGE(0x00400000, 0x005fffff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 32, mpcba79_device)
+ADDRESS_MAP_START(mpcba79_device::map)
AM_RANGE(0x00000000, 0x0000007f) AM_READ(idprom_r)
AM_RANGE(0x00000080, 0x0000008f) AM_DEVICE8("ramdac0", bt459_device, map, 0xff)
AM_RANGE(0x00000090, 0x0000009f) AM_DEVICE8("ramdac1", bt459_device, map, 0xff)
@@ -111,7 +111,7 @@ WRITE16_MEMBER(mpcb963_device::control_w)
m_control = data;
}
-READ32_MEMBER(mpcb963_device::vram_r) const
+READ32_MEMBER(mpcb963_device::vram_r)
{
return ((u32 *)m_screen[(offset >> 19) & 1].vram.get())[offset & 0x7ffff];
}
@@ -162,7 +162,7 @@ WRITE16_MEMBER(mpcba79_device::control_w)
m_control = data;
}
-READ32_MEMBER(mpcba79_device::vram_r) const
+READ32_MEMBER(mpcba79_device::vram_r)
{
return ((u32 *)m_screen[(offset >> 19) & 1].vram.get())[offset & 0x7ffff];
}
diff --git a/src/devices/bus/interpro/sr/gt.h b/src/devices/bus/interpro/sr/gt.h
index c572772ccda..80825d40232 100644
--- a/src/devices/bus/interpro/sr/gt.h
+++ b/src/devices/bus/interpro/sr/gt.h
@@ -26,9 +26,9 @@ public:
CONTROL_BUSY = 0x8000
};
- virtual DECLARE_READ16_MEMBER(control_r) const = 0;
+ virtual DECLARE_READ16_MEMBER(control_r) = 0;
virtual DECLARE_WRITE16_MEMBER(control_w) = 0;
- virtual DECLARE_READ32_MEMBER(vram_r) const = 0;
+ virtual DECLARE_READ32_MEMBER(vram_r) = 0;
virtual DECLARE_WRITE32_MEMBER(vram_w) = 0;
protected:
@@ -48,11 +48,11 @@ public:
static const int GT_SCREEN_COUNT = 1;
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
+ virtual void map(address_map &map) override;
- virtual DECLARE_READ16_MEMBER(control_r) const override { return m_control; }
+ virtual DECLARE_READ16_MEMBER(control_r) override { return m_control; }
virtual DECLARE_WRITE16_MEMBER(control_w) override;
- virtual DECLARE_READ32_MEMBER(vram_r) const override;
+ virtual DECLARE_READ32_MEMBER(vram_r) override;
virtual DECLARE_WRITE32_MEMBER(vram_w) override;
protected:
@@ -75,11 +75,11 @@ public:
static const int GT_SCREEN_COUNT = 2;
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
+ virtual void map(address_map &map) override;
- virtual DECLARE_READ16_MEMBER(control_r) const override { return m_control; }
+ virtual DECLARE_READ16_MEMBER(control_r) override { return m_control; }
virtual DECLARE_WRITE16_MEMBER(control_w) override;
- virtual DECLARE_READ32_MEMBER(vram_r) const override;
+ virtual DECLARE_READ32_MEMBER(vram_r) override;
virtual DECLARE_WRITE32_MEMBER(vram_w) override;
protected:
diff --git a/src/devices/bus/interpro/sr/sr.h b/src/devices/bus/interpro/sr/sr.h
index f51b7f6a946..3799aff9a70 100644
--- a/src/devices/bus/interpro/sr/sr.h
+++ b/src/devices/bus/interpro/sr/sr.h
@@ -116,7 +116,7 @@ public:
// construction/destruction
virtual ~device_sr_card_interface();
- virtual DECLARE_ADDRESS_MAP(map, 32) = 0;
+ virtual void map(address_map &map) = 0;
void set_sr_device();
diff --git a/src/devices/bus/isa/aha1542.cpp b/src/devices/bus/isa/aha1542.cpp
index 5be4b1de3cb..f3a2e781c44 100644
--- a/src/devices/bus/isa/aha1542.cpp
+++ b/src/devices/bus/isa/aha1542.cpp
@@ -161,7 +161,7 @@ ROM_START( aha1542 )
ROM_LOAD( "553801-00.u15", 0x0000, 0x8000, CRC(7824397e) SHA1(35bc2c8fab31aad3190a478f2dc8f3a72958cf04) ) /* ADAPTEC, INC MCODE */
ROM_END
-static ADDRESS_MAP_START( z84c0010_mem, AS_PROGRAM, 8, aha1542_device )
+ADDRESS_MAP_START(aha1542_device::z84c0010_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION(Z84C0010_TAG, 0)
AM_RANGE(0x8000, 0x800f) AM_NOP // something is mapped there
AM_RANGE(0x9000, 0xafff) AM_RAM // 2kb RAM chip
diff --git a/src/devices/bus/isa/aha1542.h b/src/devices/bus/isa/aha1542.h
index e2d51d8f048..91bfeec77ee 100644
--- a/src/devices/bus/isa/aha1542.h
+++ b/src/devices/bus/isa/aha1542.h
@@ -35,6 +35,7 @@ public:
DECLARE_READ8_MEMBER( aha1542_r );
DECLARE_WRITE8_MEMBER( aha1542_w );
+ void z84c0010_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/isa/dectalk.cpp b/src/devices/bus/isa/dectalk.cpp
index 7cb022c0a19..709cd6d0b87 100644
--- a/src/devices/bus/isa/dectalk.cpp
+++ b/src/devices/bus/isa/dectalk.cpp
@@ -116,7 +116,7 @@ WRITE_LINE_MEMBER(dectalk_isa_device::clock_w)
m_dsp->set_input_line(INPUT_LINE_IRQ0, (!(m_ctl & 0x20) || state) ? CLEAR_LINE : ASSERT_LINE);
}
-static ADDRESS_MAP_START(dectalk_cpu_io, AS_IO, 16, dectalk_isa_device)
+ADDRESS_MAP_START(dectalk_isa_device::dectalk_cpu_io)
AM_RANGE(0x0400, 0x0401) AM_READWRITE(cmd_r, status_w) //PCS0
AM_RANGE(0x0480, 0x0481) AM_READWRITE(data_r, data_w) //PCS1
AM_RANGE(0x0500, 0x0501) AM_WRITE(dsp_dma_w) //PCS2
@@ -126,17 +126,17 @@ static ADDRESS_MAP_START(dectalk_cpu_io, AS_IO, 16, dectalk_isa_device)
AM_RANGE(0x0700, 0x0701) AM_WRITE(irq_line_w) //PCS6
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dectalk_cpu_map, AS_PROGRAM, 16, dectalk_isa_device)
+ADDRESS_MAP_START(dectalk_isa_device::dectalk_cpu_map)
AM_RANGE(0x00000, 0xFBFFF) AM_RAM
AM_RANGE(0xFC000, 0xFFFFF) AM_ROM AM_REGION("dectalk_cpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dectalk_dsp_io, AS_IO, 16, dectalk_isa_device)
+ADDRESS_MAP_START(dectalk_isa_device::dectalk_dsp_io)
AM_RANGE(0x0, 0x0) AM_READ(dsp_dma_r)
AM_RANGE(0x1, 0x1) AM_READWRITE(dsp_dma_r, dac_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dectalk_dsp_map, AS_PROGRAM, 16, dectalk_isa_device)
+ADDRESS_MAP_START(dectalk_isa_device::dectalk_dsp_map)
AM_RANGE(0x0000, 0x0FFF) AM_ROM AM_REGION("dectalk_dsp", 0)
ADDRESS_MAP_END
diff --git a/src/devices/bus/isa/dectalk.h b/src/devices/bus/isa/dectalk.h
index f2743787a15..ff1442bc38e 100644
--- a/src/devices/bus/isa/dectalk.h
+++ b/src/devices/bus/isa/dectalk.h
@@ -32,6 +32,10 @@ public:
DECLARE_WRITE16_MEMBER(output_ctl_w);
DECLARE_WRITE16_MEMBER(irq_line_w);
+ void dectalk_cpu_io(address_map &map);
+ void dectalk_cpu_map(address_map &map);
+ void dectalk_dsp_io(address_map &map);
+ void dectalk_dsp_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/isa/finalchs.cpp b/src/devices/bus/isa/finalchs.cpp
index 0bf818af579..ad708041885 100644
--- a/src/devices/bus/isa/finalchs.cpp
+++ b/src/devices/bus/isa/finalchs.cpp
@@ -37,7 +37,7 @@ WRITE8_MEMBER( isa8_finalchs_device::io6000_write )
m_FCH_latch_data = data;
}
-static ADDRESS_MAP_START(finalchs_mem , AS_PROGRAM, 8, isa8_finalchs_device)
+ADDRESS_MAP_START(isa8_finalchs_device::finalchs_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM
AM_RANGE( 0x7ff8, 0x7ff8 ) AM_READ(io7ff8_read)
AM_RANGE( 0x7ff8, 0x7ff8 ) AM_WRITE(io7ff8_write)
diff --git a/src/devices/bus/isa/finalchs.h b/src/devices/bus/isa/finalchs.h
index d16a69443ac..fae3da43d8c 100644
--- a/src/devices/bus/isa/finalchs.h
+++ b/src/devices/bus/isa/finalchs.h
@@ -29,6 +29,7 @@ public:
DECLARE_READ8_MEMBER( io6000_read );
DECLARE_WRITE8_MEMBER( io6000_write );
+ void finalchs_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/isa/ibm_mfc.cpp b/src/devices/bus/isa/ibm_mfc.cpp
index d98d404451c..fbd3fa949f4 100644
--- a/src/devices/bus/isa/ibm_mfc.cpp
+++ b/src/devices/bus/isa/ibm_mfc.cpp
@@ -113,7 +113,7 @@ void isa8_ibm_mfc_device::update_z80_interrupts(void)
// Z80 memory map
//-------------------------------------------------
-static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, isa8_ibm_mfc_device )
+ADDRESS_MAP_START(isa8_ibm_mfc_device::prg_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_RAM // Unknown - tested on startup
AM_RANGE(0xbfff, 0xbfff) AM_RAM // Unknown - tested on startup
@@ -121,7 +121,7 @@ static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, isa8_ibm_mfc_device )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, isa8_ibm_mfc_device )
+ADDRESS_MAP_START(isa8_ibm_mfc_device::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
diff --git a/src/devices/bus/isa/ibm_mfc.h b/src/devices/bus/isa/ibm_mfc.h
index 38403291378..66110e20a0b 100644
--- a/src/devices/bus/isa/ibm_mfc.h
+++ b/src/devices/bus/isa/ibm_mfc.h
@@ -34,6 +34,8 @@ public:
DECLARE_READ8_MEMBER( ibm_mfc_r );
DECLARE_WRITE8_MEMBER( ibm_mfc_w );
+ void io_map(address_map &map);
+ void prg_map(address_map &map);
protected:
// Device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/isa/ide.cpp b/src/devices/bus/isa/ide.cpp
index 140775cde76..bafaca8aa1c 100644
--- a/src/devices/bus/isa/ide.cpp
+++ b/src/devices/bus/isa/ide.cpp
@@ -24,11 +24,11 @@ WRITE8_MEMBER(isa16_ide_device::ide16_alt_w )
m_ide->write_cs1(6/2, data, 0xff);
}
-DEVICE_ADDRESS_MAP_START(map, 16, isa16_ide_device)
+ADDRESS_MAP_START(isa16_ide_device::map)
AM_RANGE(0x0, 0x7) AM_DEVREADWRITE("ide", ide_controller_device, read_cs0, write_cs0)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(alt_map, 8, isa16_ide_device)
+ADDRESS_MAP_START(isa16_ide_device::alt_map)
AM_RANGE(0x6, 0x6) AM_READWRITE(ide16_alt_r, ide16_alt_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/isa/ide.h b/src/devices/bus/isa/ide.h
index 36a91c3e96f..b6148793a08 100644
--- a/src/devices/bus/isa/ide.h
+++ b/src/devices/bus/isa/ide.h
@@ -22,8 +22,8 @@ public:
isa16_ide_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
bool is_primary() { return m_is_primary; }
- DECLARE_ADDRESS_MAP(map, 16);
- DECLARE_ADDRESS_MAP(alt_map, 8);
+ void map(address_map &map);
+ void alt_map(address_map &map);
READ8_MEMBER(ide16_alt_r);
WRITE8_MEMBER(ide16_alt_w);
diff --git a/src/devices/bus/isa/isa.cpp b/src/devices/bus/isa/isa.cpp
index 413911ee0f7..68d0ce971d8 100644
--- a/src/devices/bus/isa/isa.cpp
+++ b/src/devices/bus/isa/isa.cpp
@@ -129,10 +129,10 @@ isa8_device::isa8_device(const machine_config &mconfig, const char *tag, device_
isa8_device::isa8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, type, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_mem_config("ISA 8-bit mem", ENDIANNESS_LITTLE, 8, 24, 0, nullptr),
- m_io_config("ISA 8-bit I/O", ENDIANNESS_LITTLE, 8, 16, 0, nullptr),
- m_mem16_config("ISA 16-bit mem", ENDIANNESS_LITTLE, 16, 24, 0, nullptr),
- m_io16_config("ISA 16-bit I/O", ENDIANNESS_LITTLE, 16, 16, 0, nullptr),
+ m_mem_config("ISA 8-bit mem", ENDIANNESS_LITTLE, 8, 24, 0, address_map_constructor()),
+ m_io_config("ISA 8-bit I/O", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor()),
+ m_mem16_config("ISA 16-bit mem", ENDIANNESS_LITTLE, 16, 24, 0, address_map_constructor()),
+ m_io16_config("ISA 16-bit I/O", ENDIANNESS_LITTLE, 16, 16, 0, address_map_constructor()),
m_maincpu(*this, finder_base::DUMMY_TAG),
m_iospace(nullptr),
m_memspace(nullptr),
diff --git a/src/devices/bus/isa/isa.h b/src/devices/bus/isa/isa.h
index 5ea44098f8a..1cbf755e4a4 100644
--- a/src/devices/bus/isa/isa.h
+++ b/src/devices/bus/isa/isa.h
@@ -214,13 +214,9 @@ public:
virtual space_config_vector memory_space_config() const override;
void install_device(offs_t start, offs_t end, read8_delegate rhandler, write8_delegate whandler);
- template<typename T> void install_device(offs_t addrstart, offs_t addrend, T &device, void (T::*map)(class address_map &map), int bits = 8)
+ template<typename T> void install_device(offs_t addrstart, offs_t addrend, T &device, void (T::*map)(class address_map &map), uint64_t unitmask = ~u64(0))
{
- m_iospace->install_device(addrstart, addrend, device, map, bits, 0xffffffffffffffffU >> (64 - m_iospace->data_width()));
- }
- template<typename T> void install_device(offs_t addrstart, offs_t addrend, T &device, void (T::*map)(class address_map &map), int bits, uint64_t unitmask)
- {
- m_iospace->install_device(addrstart, addrend, device, map, bits, unitmask);
+ m_iospace->install_device(addrstart, addrend, device, map, unitmask);
}
void install_bank(offs_t start, offs_t end, const char *tag, uint8_t *data);
void install_rom(device_t *dev, offs_t start, offs_t end, const char *tag, const char *region);
diff --git a/src/devices/bus/isa/mcd.cpp b/src/devices/bus/isa/mcd.cpp
index 70e1be82556..7075d9e8f28 100644
--- a/src/devices/bus/isa/mcd.cpp
+++ b/src/devices/bus/isa/mcd.cpp
@@ -5,7 +5,7 @@
#include "mcd.h"
#include "coreutil.h"
-DEVICE_ADDRESS_MAP_START(map, 16, mcd_isa_device)
+ADDRESS_MAP_START(mcd_isa_device::map)
AM_RANGE(0x0, 0x1) AM_READWRITE8(data_r, cmd_w, 0x00ff)
AM_RANGE(0x0, 0x1) AM_READWRITE8(flag_r, reset_w, 0xff00)
ADDRESS_MAP_END
diff --git a/src/devices/bus/isa/mcd.h b/src/devices/bus/isa/mcd.h
index a39d08bb142..1d4a10a3cff 100644
--- a/src/devices/bus/isa/mcd.h
+++ b/src/devices/bus/isa/mcd.h
@@ -24,7 +24,7 @@ public:
// optional information overrides
virtual ioport_constructor device_input_ports() const override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(data_r);
DECLARE_READ8_MEMBER(flag_r);
diff --git a/src/devices/bus/isa/myb3k_fdc.cpp b/src/devices/bus/isa/myb3k_fdc.cpp
index 2f4db748450..15f46940d7c 100644
--- a/src/devices/bus/isa/myb3k_fdc.cpp
+++ b/src/devices/bus/isa/myb3k_fdc.cpp
@@ -51,14 +51,14 @@
DEFINE_DEVICE_TYPE(ISA8_MYB3K_FDC4710, isa8_myb3k_fdc4710_device, "isa8_myb3k_fdc4710", "FDC4710 SSDD Floppy Disk Controller")
DEFINE_DEVICE_TYPE(ISA8_MYB3K_FDC4711, isa8_myb3k_fdc4711_device, "isa8_myb3k_fdc4711", "FDC4711 DSDD Floppy Disk Controller")
-DEVICE_ADDRESS_MAP_START(map, 8, isa8_myb3k_fdc4710_device)
+ADDRESS_MAP_START(isa8_myb3k_fdc4710_device::map)
// AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("fdc", mb8876_device, read, write) AM_MIRROR(0x500)
AM_RANGE(0x00, 0x03) AM_READ(myb3k_inv_fdc_data_r) AM_WRITE(myb3k_inv_fdc_data_w) AM_MIRROR(0x500)
AM_RANGE(0x04, 0x04) AM_WRITE(myb3k_fdc_command) AM_MIRROR(0x500)
AM_RANGE(0x05, 0x05) AM_READ(myb3k_fdc_status) AM_MIRROR(0x500)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, isa8_myb3k_fdc4711_device)
+ADDRESS_MAP_START(isa8_myb3k_fdc4711_device::map)
// AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("fdc", fd1791_device, read, write) AM_MIRROR(0x500)
AM_RANGE(0x00, 0x03) AM_READ(myb3k_inv_fdc_data_r) AM_WRITE(myb3k_inv_fdc_data_w) AM_MIRROR(0x500)
AM_RANGE(0x04, 0x04) AM_WRITE(myb3k_fdc_command) AM_MIRROR(0x500)
diff --git a/src/devices/bus/isa/myb3k_fdc.h b/src/devices/bus/isa/myb3k_fdc.h
index b1e0eb89c21..a56fa067730 100644
--- a/src/devices/bus/isa/myb3k_fdc.h
+++ b/src/devices/bus/isa/myb3k_fdc.h
@@ -53,7 +53,7 @@ protected:
DECLARE_WRITE8_MEMBER(myb3k_inv_fdc_data_w);
DECLARE_READ8_MEMBER(myb3k_fdc_status);
DECLARE_WRITE8_MEMBER(myb3k_fdc_command);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
required_device<mb8876_device> m_fdc;
required_device<floppy_connector> m_fdd0;
@@ -91,7 +91,7 @@ protected:
DECLARE_WRITE8_MEMBER(myb3k_inv_fdc_data_w);
DECLARE_READ8_MEMBER(myb3k_fdc_status);
DECLARE_WRITE8_MEMBER(myb3k_fdc_command);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
required_device<fd1791_device> m_fdc;
required_device<floppy_connector> m_fdd0;
diff --git a/src/devices/bus/isa/num9rev.cpp b/src/devices/bus/isa/num9rev.cpp
index 5ec78ab8399..01ed3b7b14c 100644
--- a/src/devices/bus/isa/num9rev.cpp
+++ b/src/devices/bus/isa/num9rev.cpp
@@ -14,7 +14,7 @@
DEFINE_DEVICE_TYPE(ISA8_NUM_9_REV, isa8_number_9_rev_device, "number_9_rev", "Number Nine Revolution 512x32/1024x8")
-static ADDRESS_MAP_START( upd7220_map, 0, 16, isa8_number_9_rev_device )
+ADDRESS_MAP_START(isa8_number_9_rev_device::upd7220_map)
AM_RANGE(0x00000, 0x3ffff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/devices/bus/isa/num9rev.h b/src/devices/bus/isa/num9rev.h
index 0686c3e4cc4..1a9f10d3fb6 100644
--- a/src/devices/bus/isa/num9rev.h
+++ b/src/devices/bus/isa/num9rev.h
@@ -36,6 +36,7 @@ public:
DECLARE_READ8_MEMBER(read8);
DECLARE_WRITE8_MEMBER(write8);
+ void upd7220_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/isa/pgc.cpp b/src/devices/bus/isa/pgc.cpp
index 6c49434e456..4ca3a8b3e34 100644
--- a/src/devices/bus/isa/pgc.cpp
+++ b/src/devices/bus/isa/pgc.cpp
@@ -105,7 +105,7 @@ read only
3C001 INIT L/INIT H
*/
-static ADDRESS_MAP_START( pgc_map, AS_PROGRAM, 8, isa8_pgc_device )
+ADDRESS_MAP_START(isa8_pgc_device::pgc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x07fff) AM_ROM
AM_RANGE(0x08000, 0x0ffff) AM_ROM AM_REGION("maincpu", 0x8000)
@@ -117,7 +117,7 @@ static ADDRESS_MAP_START( pgc_map, AS_PROGRAM, 8, isa8_pgc_device )
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pgc_io, AS_IO, 8, isa8_pgc_device )
+ADDRESS_MAP_START(isa8_pgc_device::pgc_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/devices/bus/isa/pgc.h b/src/devices/bus/isa/pgc.h
index 929294f6924..0a619a7d980 100644
--- a/src/devices/bus/isa/pgc.h
+++ b/src/devices/bus/isa/pgc.h
@@ -32,6 +32,8 @@ public:
void reset_common();
+ void pgc_io(address_map &map);
+ void pgc_map(address_map &map);
protected:
isa8_pgc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/isa/sb16.cpp b/src/devices/bus/isa/sb16.cpp
index 4d2fb059c2e..edc367aa049 100644
--- a/src/devices/bus/isa/sb16.cpp
+++ b/src/devices/bus/isa/sb16.cpp
@@ -373,7 +373,7 @@ ROM_START( sb16 )
ROM_LOAD("ct1741_v413_xor.bin", 0x00, 0x40, CRC(5243d15a) SHA1(c7637c92828843f47e6e2f956af639b07aee4571))
ROM_END
-static ADDRESS_MAP_START(sb16_io, AS_IO, 8, sb16_lle_device)
+ADDRESS_MAP_START(sb16_lle_device::sb16_io)
AM_RANGE(0x0000, 0x0000) AM_MIRROR(0xff00) AM_READWRITE(dsp_data_r, dsp_data_w)
// AM_RANGE(0x0001, 0x0001) // MIDI related?
// AM_RANGE(0x0002, 0x0002)
diff --git a/src/devices/bus/isa/sb16.h b/src/devices/bus/isa/sb16.h
index 3ea6d54e45d..1d0c64a0528 100644
--- a/src/devices/bus/isa/sb16.h
+++ b/src/devices/bus/isa/sb16.h
@@ -68,6 +68,7 @@ public:
DECLARE_READ8_MEMBER( invalid_r );
DECLARE_WRITE8_MEMBER( invalid_w );
+ void sb16_io(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/isa/stereo_fx.cpp b/src/devices/bus/isa/stereo_fx.cpp
index 93b397fb703..3bda8ac09e9 100644
--- a/src/devices/bus/isa/stereo_fx.cpp
+++ b/src/devices/bus/isa/stereo_fx.cpp
@@ -93,7 +93,7 @@ ROM_START( stereo_fx )
ROM_LOAD("ati_stereo_fx.bin", 0x0000, 0x8000, CRC(1bebffa6) SHA1(e66c2619a6c05199554b5702d67877ae3799d415))
ROM_END
-static ADDRESS_MAP_START(stereo_fx_io, AS_IO, 8, stereo_fx_device)
+ADDRESS_MAP_START(stereo_fx_device::stereo_fx_io)
AM_RANGE(0xFF00, 0xFF00) AM_WRITE(port00_w)
AM_RANGE(0xFF10, 0xFF10) AM_DEVWRITE("rdac", dac_byte_interface, write)
AM_RANGE(0xFF20, 0xFF20) AM_WRITE(port20_w)
@@ -105,7 +105,7 @@ static ADDRESS_MAP_START(stereo_fx_io, AS_IO, 8, stereo_fx_device)
AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(p3_r, p3_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(stereo_fx_rom, AS_PROGRAM, 8, stereo_fx_device)
+ADDRESS_MAP_START(stereo_fx_device::stereo_fx_rom)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/devices/bus/isa/stereo_fx.h b/src/devices/bus/isa/stereo_fx.h
index a3552dc5780..73363bc31a8 100644
--- a/src/devices/bus/isa/stereo_fx.h
+++ b/src/devices/bus/isa/stereo_fx.h
@@ -43,6 +43,8 @@ public:
DECLARE_READ8_MEMBER( invalid_r );
DECLARE_WRITE8_MEMBER( invalid_w );
+ void stereo_fx_io(address_map &map);
+ void stereo_fx_rom(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/isa/wdxt_gen.cpp b/src/devices/bus/isa/wdxt_gen.cpp
index f59d5bf85be..1c4ca395cbf 100644
--- a/src/devices/bus/isa/wdxt_gen.cpp
+++ b/src/devices/bus/isa/wdxt_gen.cpp
@@ -92,7 +92,7 @@ const tiny_rom_entry *wdxt_gen_device::device_rom_region() const
// ADDRESS_MAP( wd1015_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( wd1015_io, AS_IO, 8, wdxt_gen_device )
+ADDRESS_MAP_START(wdxt_gen_device::wd1015_io)
AM_RANGE(0x00, 0xff) AM_DEVREADWRITE(WD11C00_17_TAG, wd11c00_17_device, read, write)
ADDRESS_MAP_END
diff --git a/src/devices/bus/isa/wdxt_gen.h b/src/devices/bus/isa/wdxt_gen.h
index c17111cf52b..e713fd5e804 100644
--- a/src/devices/bus/isa/wdxt_gen.h
+++ b/src/devices/bus/isa/wdxt_gen.h
@@ -40,6 +40,7 @@ public:
// construction/destruction
wdxt_gen_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void wd1015_io(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/kc/d004.cpp b/src/devices/bus/kc/d004.cpp
index a051efeb547..cca93b9470f 100644
--- a/src/devices/bus/kc/d004.cpp
+++ b/src/devices/bus/kc/d004.cpp
@@ -22,12 +22,12 @@
IMPLEMENTATION
***************************************************************************/
-static ADDRESS_MAP_START(kc_d004_mem, AS_PROGRAM, 8, kc_d004_device)
+ADDRESS_MAP_START(kc_d004_device::kc_d004_mem)
AM_RANGE(0x0000, 0xfbff) AM_RAM
AM_RANGE(0xfc00, 0xffff) AM_RAM AM_SHARE("koppelram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(kc_d004_io, AS_IO, 8, kc_d004_device)
+ADDRESS_MAP_START(kc_d004_device::kc_d004_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf1) AM_DEVICE(UPD765_TAG, upd765a_device, map)
@@ -38,7 +38,7 @@ static ADDRESS_MAP_START(kc_d004_io, AS_IO, 8, kc_d004_device)
AM_RANGE(0xfc, 0xff) AM_DEVREADWRITE(Z80CTC_TAG, z80ctc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(kc_d004_gide_io, AS_IO, 8, kc_d004_gide_device)
+ADDRESS_MAP_START(kc_d004_gide_device::kc_d004_gide_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(gide_r, gide_w)
AM_RANGE(0x00f0, 0x00f1) AM_MIRROR(0xff00) AM_DEVICE(UPD765_TAG, upd765a_device, map)
diff --git a/src/devices/bus/kc/d004.h b/src/devices/bus/kc/d004.h
index 83522b3118c..81810ce2bbb 100644
--- a/src/devices/bus/kc/d004.h
+++ b/src/devices/bus/kc/d004.h
@@ -31,6 +31,8 @@ public:
DECLARE_WRITE8_MEMBER(fdd_select_w);
DECLARE_WRITE8_MEMBER(hw_terminal_count_w);
+ void kc_d004_io(address_map &map);
+ void kc_d004_mem(address_map &map);
protected:
kc_d004_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -90,6 +92,7 @@ public:
DECLARE_READ8_MEMBER(gide_r);
DECLARE_WRITE8_MEMBER(gide_w);
+ void kc_d004_gide_io(address_map &map);
protected:
// device-level overrides
virtual void device_reset() override;
diff --git a/src/devices/bus/megadrive/svp.cpp b/src/devices/bus/megadrive/svp.cpp
index 08a719f4f44..d069a556ecd 100644
--- a/src/devices/bus/megadrive/svp.cpp
+++ b/src/devices/bus/megadrive/svp.cpp
@@ -318,7 +318,7 @@ INPUT_PORTS_END
// ADDRESS_MAP( svp_ssp_map )
//-------------------------------------------------
-ADDRESS_MAP_START( md_svp_ssp_map, AS_PROGRAM, 16, md_rom_svp_device )
+ADDRESS_MAP_START(md_rom_svp_device::md_svp_ssp_map)
// AM_RANGE(0x0000, 0x03ff) AM_READ(rom_read1)
// AM_RANGE(0x0400, 0xffff) AM_READ(rom_read2)
AM_RANGE(0x0000, 0x03ff) AM_ROMBANK("iram_svp")
@@ -329,7 +329,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( svp_ext_map )
//-------------------------------------------------
-ADDRESS_MAP_START( md_svp_ext_map, AS_IO, 16, md_rom_svp_device )
+ADDRESS_MAP_START(md_rom_svp_device::md_svp_ext_map)
ADDRESS_MAP_GLOBAL_MASK(0xf)
AM_RANGE(0*2, 0*2+1) AM_READWRITE(read_pm0, write_pm0)
AM_RANGE(1*2, 1*2+1) AM_READWRITE(read_pm1, write_pm1)
diff --git a/src/devices/bus/megadrive/svp.h b/src/devices/bus/megadrive/svp.h
index c39ea5d85eb..a74c644e3a9 100644
--- a/src/devices/bus/megadrive/svp.h
+++ b/src/devices/bus/megadrive/svp.h
@@ -45,6 +45,8 @@ public:
virtual DECLARE_WRITE16_MEMBER(write_pmc);
virtual DECLARE_WRITE16_MEMBER(write_al);
+ void md_svp_ext_map(address_map &map);
+ void md_svp_ssp_map(address_map &map);
protected:
md_rom_svp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/msx_cart/bm_012.cpp b/src/devices/bus/msx_cart/bm_012.cpp
index 949c2b64d46..f010ad91502 100644
--- a/src/devices/bus/msx_cart/bm_012.cpp
+++ b/src/devices/bus/msx_cart/bm_012.cpp
@@ -32,7 +32,7 @@ msx_cart_bm_012_device::msx_cart_bm_012_device(const machine_config &mconfig, co
}
-static ADDRESS_MAP_START( bm_012_memory_map, AS_PROGRAM, 8, msx_cart_bm_012_device )
+ADDRESS_MAP_START(msx_cart_bm_012_device::bm_012_memory_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/devices/bus/msx_cart/bm_012.h b/src/devices/bus/msx_cart/bm_012.h
index 5abae1909b4..b2855652648 100644
--- a/src/devices/bus/msx_cart/bm_012.h
+++ b/src/devices/bus/msx_cart/bm_012.h
@@ -18,6 +18,7 @@ class msx_cart_bm_012_device : public device_t, public msx_cart_interface
public:
msx_cart_bm_012_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void bm_012_memory_map(address_map &map);
protected:
virtual void device_start() override;
diff --git a/src/devices/bus/msx_cart/konami.cpp b/src/devices/bus/msx_cart/konami.cpp
index 0663422b69c..2d6479515ea 100644
--- a/src/devices/bus/msx_cart/konami.cpp
+++ b/src/devices/bus/msx_cart/konami.cpp
@@ -866,7 +866,7 @@ msx_cart_keyboard_master_device::msx_cart_keyboard_master_device(const machine_c
}
-static ADDRESS_MAP_START( vlm_map, 0, 8, msx_cart_keyboard_master_device )
+ADDRESS_MAP_START(msx_cart_keyboard_master_device::vlm_map)
AM_RANGE(0x0000, 0xffff) AM_READ(read_vlm)
ADDRESS_MAP_END
diff --git a/src/devices/bus/msx_cart/konami.h b/src/devices/bus/msx_cart/konami.h
index fff0811e0be..e278cb8313c 100644
--- a/src/devices/bus/msx_cart/konami.h
+++ b/src/devices/bus/msx_cart/konami.h
@@ -186,6 +186,7 @@ public:
DECLARE_WRITE8_MEMBER(io_20_w);
DECLARE_READ8_MEMBER(io_00_r);
+ void vlm_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/msx_cart/moonsound.cpp b/src/devices/bus/msx_cart/moonsound.cpp
index 49db9091ee6..6ea7a430e17 100644
--- a/src/devices/bus/msx_cart/moonsound.cpp
+++ b/src/devices/bus/msx_cart/moonsound.cpp
@@ -29,7 +29,7 @@ msx_cart_moonsound_device::msx_cart_moonsound_device(const machine_config &mconf
}
-static ADDRESS_MAP_START( ymf278b_map, 0, 8, msx_cart_moonsound_device )
+ADDRESS_MAP_START(msx_cart_moonsound_device::ymf278b_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x3fffff) AM_RAM // 2MB sram for testing
ADDRESS_MAP_END
diff --git a/src/devices/bus/msx_cart/moonsound.h b/src/devices/bus/msx_cart/moonsound.h
index 41f5ceb61ab..dbdb0e99014 100644
--- a/src/devices/bus/msx_cart/moonsound.h
+++ b/src/devices/bus/msx_cart/moonsound.h
@@ -23,6 +23,7 @@ public:
DECLARE_READ8_MEMBER(read_ymf278b_pcm);
DECLARE_READ8_MEMBER(read_c0);
+ void ymf278b_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/newbrain/fdc.cpp b/src/devices/bus/newbrain/fdc.cpp
index 33e81c93ac3..15dce82487b 100644
--- a/src/devices/bus/newbrain/fdc.cpp
+++ b/src/devices/bus/newbrain/fdc.cpp
@@ -69,7 +69,7 @@ const tiny_rom_entry *newbrain_fdc_device::device_rom_region() const
// ADDRESS_MAP( newbrain_fdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( newbrain_fdc_mem, AS_PROGRAM, 8, newbrain_fdc_device )
+ADDRESS_MAP_START(newbrain_fdc_device::newbrain_fdc_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
@@ -79,7 +79,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( newbrain_fdc_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( newbrain_fdc_io, AS_IO, 8, newbrain_fdc_device )
+ADDRESS_MAP_START(newbrain_fdc_device::newbrain_fdc_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x71)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x10) AM_DEVICE(UPD765_TAG, upd765a_device, map)
diff --git a/src/devices/bus/newbrain/fdc.h b/src/devices/bus/newbrain/fdc.h
index 885ce5b9365..4b69d607532 100644
--- a/src/devices/bus/newbrain/fdc.h
+++ b/src/devices/bus/newbrain/fdc.h
@@ -33,6 +33,8 @@ public:
DECLARE_READ8_MEMBER( fdc_control_r );
DECLARE_WRITE8_MEMBER( io_dec_w );
+ void newbrain_fdc_io(address_map &map);
+ void newbrain_fdc_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/odyssey2/chess.cpp b/src/devices/bus/odyssey2/chess.cpp
index a3f5609fbe7..e8ac19018c8 100644
--- a/src/devices/bus/odyssey2/chess.cpp
+++ b/src/devices/bus/odyssey2/chess.cpp
@@ -29,11 +29,11 @@ o2_chess_device::o2_chess_device(const machine_config &mconfig, const char *tag,
}
-static ADDRESS_MAP_START(chess_mem, AS_PROGRAM, 8, o2_chess_device)
+ADDRESS_MAP_START(o2_chess_device::chess_mem)
AM_RANGE(0x0000, 0x07ff) AM_READ(read_rom04)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(chess_io, AS_IO, 8, o2_chess_device)
+ADDRESS_MAP_START(o2_chess_device::chess_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/devices/bus/odyssey2/chess.h b/src/devices/bus/odyssey2/chess.h
index 0ea9262384d..95f5bdd3236 100644
--- a/src/devices/bus/odyssey2/chess.h
+++ b/src/devices/bus/odyssey2/chess.h
@@ -18,6 +18,8 @@ public:
// construction/destruction
o2_chess_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void chess_io(address_map &map);
+ void chess_mem(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
// virtual const rom_entry *device_rom_region() const;
diff --git a/src/devices/bus/oricext/jasmin.cpp b/src/devices/bus/oricext/jasmin.cpp
index b573f11657e..8a7116b9120 100644
--- a/src/devices/bus/oricext/jasmin.cpp
+++ b/src/devices/bus/oricext/jasmin.cpp
@@ -24,7 +24,7 @@ INPUT_PORTS_START( jasmin )
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("Boot") PORT_CODE(KEYCODE_F1) PORT_CHAR(UCHAR_MAMEKEY(F1)) PORT_CHANGED_MEMBER(DEVICE_SELF, jasmin_device, boot_pressed, nullptr)
INPUT_PORTS_END
-DEVICE_ADDRESS_MAP_START(map, 8, jasmin_device)
+ADDRESS_MAP_START(jasmin_device::map)
AM_RANGE(0x3f4, 0x3f7) AM_DEVREADWRITE("fdc", wd1770_device, read, write)
AM_RANGE(0x3f8, 0x3f8) AM_WRITE(side_sel_w)
AM_RANGE(0x3f9, 0x3f9) AM_WRITE(fdc_reset_w)
diff --git a/src/devices/bus/oricext/jasmin.h b/src/devices/bus/oricext/jasmin.h
index 40a81d7e7e2..7dd300bddc6 100644
--- a/src/devices/bus/oricext/jasmin.h
+++ b/src/devices/bus/oricext/jasmin.h
@@ -17,7 +17,7 @@ public:
jasmin_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual ~jasmin_device();
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_INPUT_CHANGED_MEMBER(boot_pressed);
DECLARE_WRITE8_MEMBER(side_sel_w);
DECLARE_WRITE8_MEMBER(fdc_reset_w);
diff --git a/src/devices/bus/oricext/microdisc.cpp b/src/devices/bus/oricext/microdisc.cpp
index f53e3cb0e73..b1b2b8cab4b 100644
--- a/src/devices/bus/oricext/microdisc.cpp
+++ b/src/devices/bus/oricext/microdisc.cpp
@@ -19,7 +19,7 @@ static SLOT_INTERFACE_START( microdisc_floppies )
SLOT_INTERFACE( "3dsdd", FLOPPY_3_DSDD )
SLOT_INTERFACE_END
-DEVICE_ADDRESS_MAP_START(map, 8, microdisc_device)
+ADDRESS_MAP_START(microdisc_device::map)
AM_RANGE(0x310, 0x313) AM_DEVREADWRITE("fdc", fd1793_device, read, write)
AM_RANGE(0x314, 0x314) AM_READWRITE(port_314_r, port_314_w)
AM_RANGE(0x318, 0x318) AM_READ(port_318_r)
diff --git a/src/devices/bus/oricext/microdisc.h b/src/devices/bus/oricext/microdisc.h
index aa4ca9a50ba..61870f31251 100644
--- a/src/devices/bus/oricext/microdisc.h
+++ b/src/devices/bus/oricext/microdisc.h
@@ -15,7 +15,7 @@ public:
microdisc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual ~microdisc_device();
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_WRITE8_MEMBER(port_314_w);
DECLARE_READ8_MEMBER(port_314_r);
DECLARE_READ8_MEMBER(port_318_r);
diff --git a/src/devices/bus/pc_kbd/iskr1030.cpp b/src/devices/bus/pc_kbd/iskr1030.cpp
index 8ff77fb9727..53abba3641f 100644
--- a/src/devices/bus/pc_kbd/iskr1030.cpp
+++ b/src/devices/bus/pc_kbd/iskr1030.cpp
@@ -61,7 +61,7 @@ const tiny_rom_entry *iskr_1030_keyboard_device::device_rom_region() const
// ADDRESS_MAP( kb_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( iskr_1030_keyboard_io, AS_IO, 8, iskr_1030_keyboard_device )
+ADDRESS_MAP_START(iskr_1030_keyboard_device::iskr_1030_keyboard_io)
AM_RANGE(0x00, 0xff) AM_READWRITE(ram_r, ram_w)
ADDRESS_MAP_END
diff --git a/src/devices/bus/pc_kbd/iskr1030.h b/src/devices/bus/pc_kbd/iskr1030.h
index de20866ab93..5515cbd2bad 100644
--- a/src/devices/bus/pc_kbd/iskr1030.h
+++ b/src/devices/bus/pc_kbd/iskr1030.h
@@ -32,6 +32,7 @@ public:
DECLARE_READ8_MEMBER( ram_r );
DECLARE_WRITE8_MEMBER( ram_w );
+ void iskr_1030_keyboard_io(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/pc_kbd/keytro.cpp b/src/devices/bus/pc_kbd/keytro.cpp
index c5f99b37020..77e757ff16a 100644
--- a/src/devices/bus/pc_kbd/keytro.cpp
+++ b/src/devices/bus/pc_kbd/keytro.cpp
@@ -344,11 +344,11 @@ DEFINE_DEVICE_TYPE(PC_KBD_KEYTRONIC_PC3270_AT, pc_kbd_keytronic_pc3270_at_device
ADDRESS MAPS
*****************************************************************************/
-static ADDRESS_MAP_START( keytronic_pc3270_program, AS_PROGRAM, 8, pc_kbd_keytronic_pc3270_device )
+ADDRESS_MAP_START(pc_kbd_keytronic_pc3270_device::keytronic_pc3270_program)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("kb_keytr", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( keytronic_pc3270_io, AS_IO, 8, pc_kbd_keytronic_pc3270_device )
+ADDRESS_MAP_START(pc_kbd_keytronic_pc3270_device::keytronic_pc3270_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(internal_data_read, internal_data_write)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(p1_read, p1_write)
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_READWRITE(p2_read, p2_write)
diff --git a/src/devices/bus/pc_kbd/keytro.h b/src/devices/bus/pc_kbd/keytro.h
index 4ba92b7fcbb..cdae3623567 100644
--- a/src/devices/bus/pc_kbd/keytro.h
+++ b/src/devices/bus/pc_kbd/keytro.h
@@ -40,6 +40,8 @@ public:
DECLARE_READ8_MEMBER( p3_read );
DECLARE_WRITE8_MEMBER( p3_write );
+ void keytronic_pc3270_io(address_map &map);
+ void keytronic_pc3270_program(address_map &map);
protected:
pc_kbd_keytronic_pc3270_device(
machine_config const &mconfig,
diff --git a/src/devices/bus/pc_kbd/msnat.cpp b/src/devices/bus/pc_kbd/msnat.cpp
index 304a3b6f4ac..505c336a1eb 100644
--- a/src/devices/bus/pc_kbd/msnat.cpp
+++ b/src/devices/bus/pc_kbd/msnat.cpp
@@ -200,7 +200,7 @@ DEFINE_DEVICE_TYPE(PC_KBD_MICROSOFT_NATURAL, pc_kbd_microsoft_natural_device, "k
ADDRESS MAPS
*****************************************************************************/
-static ADDRESS_MAP_START( microsoft_natural_io, AS_IO, 8, pc_kbd_microsoft_natural_device )
+ADDRESS_MAP_START(pc_kbd_microsoft_natural_device::microsoft_natural_io)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE(p0_read, p0_write)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(p1_write)
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_WRITE(p2_write)
diff --git a/src/devices/bus/pc_kbd/msnat.h b/src/devices/bus/pc_kbd/msnat.h
index 312ca3d0e41..6ecf57ddc38 100644
--- a/src/devices/bus/pc_kbd/msnat.h
+++ b/src/devices/bus/pc_kbd/msnat.h
@@ -34,6 +34,7 @@ public:
DECLARE_READ8_MEMBER(p3_read);
DECLARE_WRITE8_MEMBER(p3_write);
+ void microsoft_natural_io(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/pet/hsg.cpp b/src/devices/bus/pet/hsg.cpp
index 48b928dd334..30205f0ca7a 100644
--- a/src/devices/bus/pet/hsg.cpp
+++ b/src/devices/bus/pet/hsg.cpp
@@ -69,7 +69,7 @@ const tiny_rom_entry *cbm8000_hsg_device::device_rom_region() const
// ADDRESS_MAP( hsg_a_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( hsg_a_map, 0, 8, cbm8000_hsg_a_device )
+ADDRESS_MAP_START(cbm8000_hsg_a_device::hsg_a_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x7fff) AM_RAM
ADDRESS_MAP_END
@@ -79,7 +79,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( hsg_b_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( hsg_b_map, 0, 8, cbm8000_hsg_b_device )
+ADDRESS_MAP_START(cbm8000_hsg_b_device::hsg_b_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/devices/bus/pet/hsg.h b/src/devices/bus/pet/hsg.h
index a58aadca827..66080a8e565 100644
--- a/src/devices/bus/pet/hsg.h
+++ b/src/devices/bus/pet/hsg.h
@@ -56,6 +56,7 @@ public:
// construction/destruction
cbm8000_hsg_a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void hsg_a_map(address_map &map);
protected:
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -70,6 +71,7 @@ public:
// construction/destruction
cbm8000_hsg_b_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void hsg_b_map(address_map &map);
protected:
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/bus/pet/superpet.cpp b/src/devices/bus/pet/superpet.cpp
index 7fbad750ebe..a66db4451fa 100644
--- a/src/devices/bus/pet/superpet.cpp
+++ b/src/devices/bus/pet/superpet.cpp
@@ -60,7 +60,7 @@ const tiny_rom_entry *superpet_device::device_rom_region() const
// ADDRESS_MAP( superpet_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( superpet_mem, AS_PROGRAM, 8, superpet_device )
+ADDRESS_MAP_START(superpet_device::superpet_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
diff --git a/src/devices/bus/pet/superpet.h b/src/devices/bus/pet/superpet.h
index ae113d5025a..a9fba1213b3 100644
--- a/src/devices/bus/pet/superpet.h
+++ b/src/devices/bus/pet/superpet.h
@@ -33,6 +33,7 @@ public:
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
+ void superpet_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/plus4/c1551.cpp b/src/devices/bus/plus4/c1551.cpp
index f1e711ac7f7..3410b4e5a1e 100644
--- a/src/devices/bus/plus4/c1551.cpp
+++ b/src/devices/bus/plus4/c1551.cpp
@@ -313,7 +313,7 @@ WRITE8_MEMBER( c1551_device::tpi1_pc_w )
// ADDRESS_MAP( c1551_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c1551_mem, AS_PROGRAM, 8, c1551_device )
+ADDRESS_MAP_START(c1551_device::c1551_mem)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_RAM
AM_RANGE(0x4000, 0x4007) AM_MIRROR(0x3ff8) AM_READWRITE(tpi0_r, tpi0_w)
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION(M6510T_TAG, 0)
diff --git a/src/devices/bus/plus4/c1551.h b/src/devices/bus/plus4/c1551.h
index ddd09efe8cb..4a1d0e28415 100644
--- a/src/devices/bus/plus4/c1551.h
+++ b/src/devices/bus/plus4/c1551.h
@@ -34,6 +34,7 @@ public:
DECLARE_READ8_MEMBER( tpi0_r );
DECLARE_WRITE8_MEMBER( tpi0_w );
+ void c1551_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/psi_kbd/ergoline.cpp b/src/devices/bus/psi_kbd/ergoline.cpp
index ee97b6c5f9f..1c36ee14d6d 100644
--- a/src/devices/bus/psi_kbd/ergoline.cpp
+++ b/src/devices/bus/psi_kbd/ergoline.cpp
@@ -22,11 +22,11 @@ DEFINE_DEVICE_TYPE(ERGOLINE_KEYBOARD, ergoline_keyboard_device, "ergoline_kbd",
// address_map - device-specific address maps
//-------------------------------------------------
-ADDRESS_MAP_START( kbd_mem, AS_PROGRAM, 8, ergoline_keyboard_device )
+ADDRESS_MAP_START(ergoline_keyboard_device::kbd_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("firmware", 0)
ADDRESS_MAP_END
-ADDRESS_MAP_START( kbd_io, AS_PROGRAM, 8, ergoline_keyboard_device )
+ADDRESS_MAP_START(ergoline_keyboard_device::kbd_io)
ADDRESS_MAP_END
diff --git a/src/devices/bus/psi_kbd/ergoline.h b/src/devices/bus/psi_kbd/ergoline.h
index bd88b29cfbb..ec43412030b 100644
--- a/src/devices/bus/psi_kbd/ergoline.h
+++ b/src/devices/bus/psi_kbd/ergoline.h
@@ -33,6 +33,8 @@ public:
// from host
virtual void tx_w(int state) override;
+ void kbd_io(address_map &map);
+ void kbd_mem(address_map &map);
protected:
// device_t overrides
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/bus/s100/djdma.cpp b/src/devices/bus/s100/djdma.cpp
index c34602e3248..0a4434af4f6 100644
--- a/src/devices/bus/s100/djdma.cpp
+++ b/src/devices/bus/s100/djdma.cpp
@@ -59,7 +59,7 @@ const tiny_rom_entry *s100_djdma_device::device_rom_region() const
// ADDRESS_MAP( djdma_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( djdma_mem, AS_PROGRAM, 8, s100_djdma_device )
+ADDRESS_MAP_START(s100_djdma_device::djdma_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("14a", 0)
ADDRESS_MAP_END
@@ -68,7 +68,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( djdma_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( djdma_io, AS_IO, 8, s100_djdma_device )
+ADDRESS_MAP_START(s100_djdma_device::djdma_io)
ADDRESS_MAP_END
diff --git a/src/devices/bus/s100/djdma.h b/src/devices/bus/s100/djdma.h
index daf4f25530f..c612cf80188 100644
--- a/src/devices/bus/s100/djdma.h
+++ b/src/devices/bus/s100/djdma.h
@@ -29,6 +29,8 @@ public:
// construction/destruction
s100_djdma_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void djdma_io(address_map &map);
+ void djdma_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/scsi/s1410.cpp b/src/devices/bus/scsi/s1410.cpp
index 6a07f495842..029d7180b5f 100644
--- a/src/devices/bus/scsi/s1410.cpp
+++ b/src/devices/bus/scsi/s1410.cpp
@@ -133,7 +133,7 @@ const tiny_rom_entry *s1410_device::device_rom_region() const
// ADDRESS_MAP( s1410_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( s1410_mem, AS_PROGRAM, 8, s1410_device )
+ADDRESS_MAP_START(s1410_device::s1410_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION(Z8400A_TAG, 0)
AM_RANGE(0x1000, 0x13ff) AM_RAM
ADDRESS_MAP_END
@@ -143,7 +143,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( s1410_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( s1410_io, AS_IO, 8, s1410_device )
+ADDRESS_MAP_START(s1410_device::s1410_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x66, 0x66) AM_WRITENOP
AM_RANGE(0x67, 0x67) AM_WRITENOP
diff --git a/src/devices/bus/scsi/s1410.h b/src/devices/bus/scsi/s1410.h
index 8f540c1e0bf..02586c9bb32 100644
--- a/src/devices/bus/scsi/s1410.h
+++ b/src/devices/bus/scsi/s1410.h
@@ -23,6 +23,8 @@ public:
virtual void WriteData( uint8_t *data, int dataLength ) override;
virtual void ReadData( uint8_t *data, int dataLength ) override;
+ void s1410_io(address_map &map);
+ void s1410_mem(address_map &map);
protected:
// optional information overrides
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/bus/snes/event.cpp b/src/devices/bus/snes/event.cpp
index 824997f6192..4f7ef1f3a7e 100644
--- a/src/devices/bus/snes/event.cpp
+++ b/src/devices/bus/snes/event.cpp
@@ -201,7 +201,7 @@ READ16_MEMBER( sns_pfest94_device::necdsp_data_r )
// ADDRESS_MAP( dsp_prg_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( dsp_prg_map_lorom, AS_PROGRAM, 32, sns_pfest94_device )
+ADDRESS_MAP_START(sns_pfest94_device::dsp_prg_map_lorom)
AM_RANGE(0x0000, 0x07ff) AM_READ(necdsp_prg_r)
ADDRESS_MAP_END
@@ -210,7 +210,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( dsp_data_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( dsp_data_map_lorom, AS_DATA, 16, sns_pfest94_device )
+ADDRESS_MAP_START(sns_pfest94_device::dsp_data_map_lorom)
AM_RANGE(0x0000, 0x03ff) AM_READ(necdsp_data_r)
ADDRESS_MAP_END
diff --git a/src/devices/bus/snes/event.h b/src/devices/bus/snes/event.h
index 13ace5100c9..50b88266170 100644
--- a/src/devices/bus/snes/event.h
+++ b/src/devices/bus/snes/event.h
@@ -29,6 +29,8 @@ public:
virtual DECLARE_READ32_MEMBER(necdsp_prg_r);
virtual DECLARE_READ16_MEMBER(necdsp_data_r);
+ void dsp_data_map_lorom(address_map &map);
+ void dsp_prg_map_lorom(address_map &map);
protected:
static constexpr device_timer_id TIMER_EVENT = 0;
diff --git a/src/devices/bus/snes/sa1.cpp b/src/devices/bus/snes/sa1.cpp
index 192a91e6b0f..da00f68f12b 100644
--- a/src/devices/bus/snes/sa1.cpp
+++ b/src/devices/bus/snes/sa1.cpp
@@ -1135,7 +1135,7 @@ WRITE8_MEMBER( sns_sa1_device::sa1_lo_w )
sa1_hi_w(space, offset, data);
}
-static ADDRESS_MAP_START( sa1_map, AS_PROGRAM, 8, sns_sa1_device )
+ADDRESS_MAP_START(sns_sa1_device::sa1_map)
AM_RANGE(0x000000, 0x7dffff) AM_READWRITE(sa1_lo_r, sa1_lo_w)
AM_RANGE(0x7e0000, 0x7fffff) AM_NOP
AM_RANGE(0x800000, 0xffffff) AM_READWRITE(sa1_hi_r, sa1_hi_w)
diff --git a/src/devices/bus/snes/sa1.h b/src/devices/bus/snes/sa1.h
index bfea8746a09..cb646d32364 100644
--- a/src/devices/bus/snes/sa1.h
+++ b/src/devices/bus/snes/sa1.h
@@ -33,6 +33,7 @@ public:
DECLARE_WRITE8_MEMBER(sa1_lo_w);
DECLARE_WRITE8_MEMBER(sa1_hi_w);
+ void sa1_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/snes/sfx.cpp b/src/devices/bus/snes/sfx.cpp
index 364df253759..a93d3d45c0a 100644
--- a/src/devices/bus/snes/sfx.cpp
+++ b/src/devices/bus/snes/sfx.cpp
@@ -69,7 +69,7 @@ WRITE8_MEMBER( sns_rom_superfx_device::superfx_w_bank3 )
sfx_ram[offset & 0xfffff] = data;
}
-static ADDRESS_MAP_START( sfx_map, AS_PROGRAM, 8, sns_rom_superfx_device )
+ADDRESS_MAP_START(sns_rom_superfx_device::sfx_map)
AM_RANGE(0x000000, 0x3fffff) AM_READWRITE(superfx_r_bank1, superfx_w_bank1)
AM_RANGE(0x400000, 0x5fffff) AM_READWRITE(superfx_r_bank2, superfx_w_bank2)
AM_RANGE(0x600000, 0x7dffff) AM_READWRITE(superfx_r_bank3, superfx_w_bank3)
diff --git a/src/devices/bus/snes/sfx.h b/src/devices/bus/snes/sfx.h
index de0ad0a81c4..f46bce710fb 100644
--- a/src/devices/bus/snes/sfx.h
+++ b/src/devices/bus/snes/sfx.h
@@ -31,6 +31,7 @@ public:
virtual DECLARE_WRITE8_MEMBER(superfx_w_bank2);
virtual DECLARE_WRITE8_MEMBER(superfx_w_bank3);
+ void sfx_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/snes/sgb.cpp b/src/devices/bus/snes/sgb.cpp
index cb07ecc9fc1..dd083668fda 100644
--- a/src/devices/bus/snes/sgb.cpp
+++ b/src/devices/bus/snes/sgb.cpp
@@ -130,7 +130,7 @@ WRITE8_MEMBER(sns_rom_sgb_device::gb_ie_w)
-static ADDRESS_MAP_START(supergb_map, AS_PROGRAM, 8, sns_rom_sgb_device )
+ADDRESS_MAP_START(sns_rom_sgb_device::supergb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(gb_cart_r, gb_bank_w)
AM_RANGE(0x8000, 0x9fff) AM_DEVREADWRITE("sgb_ppu", sgb_ppu_device, vram_r, vram_w) /* 8k VRAM */
diff --git a/src/devices/bus/snes/sgb.h b/src/devices/bus/snes/sgb.h
index ff947c0283d..9815bce164d 100644
--- a/src/devices/bus/snes/sgb.h
+++ b/src/devices/bus/snes/sgb.h
@@ -39,6 +39,7 @@ public:
virtual DECLARE_WRITE8_MEMBER(gb_ie_w);
virtual DECLARE_WRITE8_MEMBER(gb_timer_callback);
+ void supergb_map(address_map &map);
protected:
// construction/destruction
sns_rom_sgb_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/snes/upd.cpp b/src/devices/bus/snes/upd.cpp
index c4f58041a9f..9eb685edcc7 100644
--- a/src/devices/bus/snes/upd.cpp
+++ b/src/devices/bus/snes/upd.cpp
@@ -112,7 +112,7 @@ READ16_MEMBER( sns_rom20_necdsp_device::necdsp_data_r )
// ADDRESS_MAP( dsp_prg_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( dsp_prg_map_lorom, AS_PROGRAM, 32, sns_rom20_necdsp_device )
+ADDRESS_MAP_START(sns_rom20_necdsp_device::dsp_prg_map_lorom)
AM_RANGE(0x0000, 0x07ff) AM_READ(necdsp_prg_r)
ADDRESS_MAP_END
@@ -121,7 +121,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( dsp_data_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( dsp_data_map_lorom, AS_DATA, 16, sns_rom20_necdsp_device )
+ADDRESS_MAP_START(sns_rom20_necdsp_device::dsp_data_map_lorom)
AM_RANGE(0x0000, 0x03ff) AM_READ(necdsp_data_r)
ADDRESS_MAP_END
@@ -168,7 +168,7 @@ READ16_MEMBER( sns_rom21_necdsp_device::necdsp_data_r )
// ADDRESS_MAP( dsp_prg_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( dsp_prg_map_hirom, AS_PROGRAM, 32, sns_rom21_necdsp_device )
+ADDRESS_MAP_START(sns_rom21_necdsp_device::dsp_prg_map_hirom)
AM_RANGE(0x0000, 0x07ff) AM_READ(necdsp_prg_r)
ADDRESS_MAP_END
@@ -177,7 +177,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( dsp_data_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( dsp_data_map_hirom, AS_DATA, 16, sns_rom21_necdsp_device )
+ADDRESS_MAP_START(sns_rom21_necdsp_device::dsp_data_map_hirom)
AM_RANGE(0x0000, 0x03ff) AM_READ(necdsp_data_r)
ADDRESS_MAP_END
@@ -276,7 +276,7 @@ READ16_MEMBER( sns_rom_setadsp_device::setadsp_data_r )
// ADDRESS_MAP( st01x_prg_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( st01x_prg_map, AS_PROGRAM, 32, sns_rom_setadsp_device )
+ADDRESS_MAP_START(sns_rom_setadsp_device::st01x_prg_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(setadsp_prg_r)
ADDRESS_MAP_END
@@ -285,7 +285,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( st01x_data_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( st01x_data_map, AS_DATA, 16, sns_rom_setadsp_device )
+ADDRESS_MAP_START(sns_rom_setadsp_device::st01x_data_map)
AM_RANGE(0x0000, 0x07ff) AM_READ(setadsp_data_r)
ADDRESS_MAP_END
diff --git a/src/devices/bus/snes/upd.h b/src/devices/bus/snes/upd.h
index b37e67be096..904bcf48ad1 100644
--- a/src/devices/bus/snes/upd.h
+++ b/src/devices/bus/snes/upd.h
@@ -27,6 +27,8 @@ public:
virtual DECLARE_READ32_MEMBER(necdsp_prg_r);
virtual DECLARE_READ16_MEMBER(necdsp_data_r);
+ void dsp_data_map_lorom(address_map &map);
+ void dsp_prg_map_lorom(address_map &map);
protected:
sns_rom20_necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -57,6 +59,8 @@ public:
virtual DECLARE_READ32_MEMBER(necdsp_prg_r);
virtual DECLARE_READ16_MEMBER(necdsp_data_r);
+ void dsp_data_map_hirom(address_map &map);
+ void dsp_prg_map_hirom(address_map &map);
protected:
sns_rom21_necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -84,6 +88,8 @@ public:
virtual DECLARE_READ32_MEMBER(setadsp_prg_r);
virtual DECLARE_READ16_MEMBER(setadsp_data_r);
+ void st01x_data_map(address_map &map);
+ void st01x_prg_map(address_map &map);
protected:
// construction/destruction
sns_rom_setadsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/spc1000/fdd.cpp b/src/devices/bus/spc1000/fdd.cpp
index a79ccb92bf7..b0ac8af32c0 100644
--- a/src/devices/bus/spc1000/fdd.cpp
+++ b/src/devices/bus/spc1000/fdd.cpp
@@ -55,13 +55,13 @@ WRITE8_MEMBER( spc1000_fdd_exp_device::control_w )
m_fd1->mon_w(!BIT(data, 0));
}
-static ADDRESS_MAP_START( sd725_mem, AS_PROGRAM, 8, spc1000_fdd_exp_device )
+ADDRESS_MAP_START(spc1000_fdd_exp_device::sd725_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sd725_io, AS_IO, 8, spc1000_fdd_exp_device )
+ADDRESS_MAP_START(spc1000_fdd_exp_device::sd725_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf8, 0xf8) AM_READWRITE(tc_r, control_w) // (R) Terminal Count Port (W) Motor Control Port
diff --git a/src/devices/bus/spc1000/fdd.h b/src/devices/bus/spc1000/fdd.h
index 8a999eca25d..f748b853902 100644
--- a/src/devices/bus/spc1000/fdd.h
+++ b/src/devices/bus/spc1000/fdd.h
@@ -26,6 +26,8 @@ public:
DECLARE_READ8_MEMBER(tc_r);
DECLARE_WRITE8_MEMBER(control_w);
+ void sd725_io(address_map &map);
+ void sd725_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/tiki100/8088.cpp b/src/devices/bus/tiki100/8088.cpp
index 71a261df49f..04473c5bd40 100644
--- a/src/devices/bus/tiki100/8088.cpp
+++ b/src/devices/bus/tiki100/8088.cpp
@@ -49,14 +49,14 @@ const tiny_rom_entry *tiki100_8088_device::device_rom_region() const
}
-static ADDRESS_MAP_START( i8088_mem, AS_PROGRAM, 8, tiki100_8088_device )
+ADDRESS_MAP_START(tiki100_8088_device::i8088_mem)
AM_RANGE(0x00000, 0xbffff) AM_RAM
AM_RANGE(0xc0000, 0xcffff) AM_DEVREADWRITE(":" TIKI100_BUS_TAG, tiki100_bus_device, exin_mrq_r, exin_mrq_w)
AM_RANGE(0xff000, 0xfffff) AM_ROM AM_REGION(I8088_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8088_io, AS_IO, 8, tiki100_8088_device )
+ADDRESS_MAP_START(tiki100_8088_device::i8088_io)
AM_RANGE(0x7f, 0x7f) AM_READWRITE(read, write)
ADDRESS_MAP_END
diff --git a/src/devices/bus/tiki100/8088.h b/src/devices/bus/tiki100/8088.h
index 2e946cd1c55..8e3c99a761a 100644
--- a/src/devices/bus/tiki100/8088.h
+++ b/src/devices/bus/tiki100/8088.h
@@ -32,6 +32,8 @@ public:
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
+ void i8088_io(address_map &map);
+ void i8088_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/vcs/harmony_melody.cpp b/src/devices/bus/vcs/harmony_melody.cpp
index ab2e9bcf0e7..48c1bf155d8 100644
--- a/src/devices/bus/vcs/harmony_melody.cpp
+++ b/src/devices/bus/vcs/harmony_melody.cpp
@@ -78,7 +78,7 @@ void a26_rom_harmony_device::device_start()
save_item(NAME(m_base_bank));
}
-static ADDRESS_MAP_START( harmony_arm7_map, AS_PROGRAM, 32, a26_rom_harmony_device )
+ADDRESS_MAP_START(a26_rom_harmony_device::harmony_arm7_map)
ADDRESS_MAP_END
MACHINE_CONFIG_START(a26_rom_harmony_device::device_add_mconfig)
diff --git a/src/devices/bus/vcs/harmony_melody.h b/src/devices/bus/vcs/harmony_melody.h
index d5566c112c6..487fe14191e 100644
--- a/src/devices/bus/vcs/harmony_melody.h
+++ b/src/devices/bus/vcs/harmony_melody.h
@@ -23,6 +23,7 @@ public:
DECLARE_READ8_MEMBER(read8_r);
+ void harmony_arm7_map(address_map &map);
private:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/vme/vme.cpp b/src/devices/bus/vme/vme.cpp
index 69bc9d90fb8..5f4bf5d20a9 100644
--- a/src/devices/bus/vme/vme.cpp
+++ b/src/devices/bus/vme/vme.cpp
@@ -238,7 +238,7 @@ vme_device::vme_device(const machine_config &mconfig, const char *tag, device_t
vme_device::vme_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, type, tag, owner, clock)
, device_memory_interface(mconfig, *this)
- , m_a32_config("VME A32", ENDIANNESS_BIG, 32, 32, 0, nullptr)
+ , m_a32_config("VME A32", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor())
, m_allocspaces(true)
, m_cputag("maincpu")
{
diff --git a/src/devices/bus/vme/vme_fccpu20.cpp b/src/devices/bus/vme/vme_fccpu20.cpp
index 490ca518da3..705dd37fa10 100644
--- a/src/devices/bus/vme/vme_fccpu20.cpp
+++ b/src/devices/bus/vme/vme_fccpu20.cpp
@@ -226,7 +226,7 @@ DEFINE_DEVICE_TYPE(VME_FCCPU21YB, vme_fccpu21yb_card_device, "fccpu21yb", "Force
#define CLOCK40 XTAL(40'000'000) /* HCJ */
#define CLOCK32 XTAL(32'000'000) /* HCJ */
-static ADDRESS_MAP_START (cpu20_mem, AS_PROGRAM, 32, vme_fccpu20_device)
+ADDRESS_MAP_START(vme_fccpu20_device::cpu20_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x00000000, 0x00000007) AM_RAM AM_WRITE (bootvect_w) /* After first write we act as RAM */
AM_RANGE (0x00000000, 0x00000007) AM_ROM AM_READ (bootvect_r) /* ROM mirror just during reset */
diff --git a/src/devices/bus/vme/vme_fccpu20.h b/src/devices/bus/vme/vme_fccpu20.h
index c013218d72f..5013060d0fb 100644
--- a/src/devices/bus/vme/vme_fccpu20.h
+++ b/src/devices/bus/vme/vme_fccpu20.h
@@ -28,6 +28,7 @@ public:
DECLARE_READ32_MEMBER (bootvect_r);
DECLARE_WRITE32_MEMBER (bootvect_w);
+ void cpu20_mem(address_map &map);
protected:
// PIT port C Board ID bits
static constexpr unsigned CPU20 = 0x40;
diff --git a/src/devices/bus/vme/vme_fcisio.cpp b/src/devices/bus/vme/vme_fcisio.cpp
index 5255f0e0d2d..b04edafbaae 100644
--- a/src/devices/bus/vme/vme_fcisio.cpp
+++ b/src/devices/bus/vme/vme_fcisio.cpp
@@ -161,7 +161,7 @@ DEFINE_DEVICE_TYPE(VME_FCISIO1, vme_fcisio1_card_device, "fcisio1", "Force Compu
#define CPU_CLOCK XTAL(20'000'000) /* HCJ */
#define DUSCC_CLOCK XTAL(14'745'600) /* HCJ */
-static ADDRESS_MAP_START (fcisio1_mem, AS_PROGRAM, 16, vme_fcisio1_card_device)
+ADDRESS_MAP_START(vme_fcisio1_card_device::fcisio1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x000000, 0x01ffff) AM_RAM /* SRAM */
AM_RANGE (0x000000, 0x000007) AM_ROM AM_READ (bootvect_r) /* Vectors mapped from System EPROM */
diff --git a/src/devices/bus/vme/vme_fcisio.h b/src/devices/bus/vme/vme_fcisio.h
index d6d075292b4..e0858bb4b36 100644
--- a/src/devices/bus/vme/vme_fcisio.h
+++ b/src/devices/bus/vme/vme_fcisio.h
@@ -23,6 +23,7 @@ public:
DECLARE_READ8_MEMBER (not_implemented_r);
DECLARE_WRITE8_MEMBER (not_implemented_w);
+ void fcisio1_mem(address_map &map);
protected:
vme_fcisio1_card_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/vme/vme_fcscsi.cpp b/src/devices/bus/vme/vme_fcscsi.cpp
index 083e08a0f19..7afe6fb2cee 100644
--- a/src/devices/bus/vme/vme_fcscsi.cpp
+++ b/src/devices/bus/vme/vme_fcscsi.cpp
@@ -185,7 +185,7 @@ DEFINE_DEVICE_TYPE(VME_FCSCSI1, vme_fcscsi1_card_device, "fcscsi1", "Force Compu
#define CPU_CRYSTAL XTAL(20'000'000) /* Jauch */
#define PIT_CRYSTAL XTAL(16'000'000) /* Jauch */
-static ADDRESS_MAP_START (fcscsi1_mem, AS_PROGRAM, 16, vme_fcscsi1_card_device)
+ADDRESS_MAP_START(vme_fcscsi1_card_device::fcscsi1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x000000, 0x000007) AM_ROM AM_READ (bootvect_r) /* Vectors mapped from System EPROM */
AM_RANGE (0x000008, 0x001fff) AM_RAM /* SRAM */
diff --git a/src/devices/bus/vme/vme_fcscsi.h b/src/devices/bus/vme/vme_fcscsi.h
index 779ae534b02..33bada06987 100644
--- a/src/devices/bus/vme/vme_fcscsi.h
+++ b/src/devices/bus/vme/vme_fcscsi.h
@@ -31,6 +31,7 @@ public:
DECLARE_READ8_MEMBER(scsi_r);
DECLARE_WRITE8_MEMBER(scsi_w);
+ void fcscsi1_mem(address_map &map);
protected:
vme_fcscsi1_card_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/vme/vme_hcpu30.cpp b/src/devices/bus/vme/vme_hcpu30.cpp
index e0e73c9dca0..1a7d3d6ea59 100644
--- a/src/devices/bus/vme/vme_hcpu30.cpp
+++ b/src/devices/bus/vme/vme_hcpu30.cpp
@@ -53,7 +53,7 @@
DEFINE_DEVICE_TYPE(VME_HCPU30, vme_hcpu30_card_device, "hcpu30", "Besta HCPU30 CPU board")
-static ADDRESS_MAP_START(hcpu30_mem, AS_PROGRAM, 32, vme_hcpu30_card_device)
+ADDRESS_MAP_START(vme_hcpu30_card_device::hcpu30_mem)
AM_RANGE(0x00000000, 0x00000007) AM_RAM AM_WRITE(bootvect_w) /* After first write we act as RAM */
AM_RANGE(0x00000000, 0x00000007) AM_ROM AM_READ(bootvect_r) /* ROM mirror just during reset */
AM_RANGE(0x00000008, 0x001fffff) AM_RAM // local bus DRAM, 4MB
diff --git a/src/devices/bus/vme/vme_hcpu30.h b/src/devices/bus/vme/vme_hcpu30.h
index 5691bcfa7df..1ca87f8b627 100644
--- a/src/devices/bus/vme/vme_hcpu30.h
+++ b/src/devices/bus/vme/vme_hcpu30.h
@@ -23,6 +23,7 @@ public:
DECLARE_READ32_MEMBER(bootvect_r);
DECLARE_WRITE32_MEMBER(bootvect_w);
+ void hcpu30_mem(address_map &map);
protected:
vme_hcpu30_card_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/vme/vme_mvme350.cpp b/src/devices/bus/vme/vme_mvme350.cpp
index 1fe35f8dfbb..043a9d8ae7e 100644
--- a/src/devices/bus/vme/vme_mvme350.cpp
+++ b/src/devices/bus/vme/vme_mvme350.cpp
@@ -164,7 +164,7 @@ DEFINE_DEVICE_TYPE(VME_MVME350, vme_mvme350_card_device, "mvme350", "Motorola MV
#define MVME350_CPU_TAG "mvme350_cpu"
#define MVME350_ROM "mvme350_rom"
-static ADDRESS_MAP_START( mvme350_mem, AS_PROGRAM, 16, vme_mvme350_card_device )
+ADDRESS_MAP_START(vme_mvme350_card_device::mvme350_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_REGION(MVME350_ROM, 0)
AM_RANGE(0x020000, 0x03ffff) AM_RAM
diff --git a/src/devices/bus/vme/vme_mvme350.h b/src/devices/bus/vme/vme_mvme350.h
index 710006a5ee8..24fba717cb0 100644
--- a/src/devices/bus/vme/vme_mvme350.h
+++ b/src/devices/bus/vme/vme_mvme350.h
@@ -18,6 +18,7 @@ public:
// virtual DECLARE_READ16_MEMBER (read16) override;
// virtual DECLARE_WRITE16_MEMBER (write16) override;
+ void mvme350_mem(address_map &map);
protected:
vme_mvme350_card_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/vtech/memexp/floppy.cpp b/src/devices/bus/vtech/memexp/floppy.cpp
index 5e4e33dee29..f87bc88579b 100644
--- a/src/devices/bus/vtech/memexp/floppy.cpp
+++ b/src/devices/bus/vtech/memexp/floppy.cpp
@@ -19,7 +19,7 @@
DEFINE_DEVICE_TYPE(VTECH_FLOPPY_CONTROLLER, vtech_floppy_controller_device, "vtech_fdc", "Laser/VZ Floppy Disk Controller")
-DEVICE_ADDRESS_MAP_START(map, 8, vtech_floppy_controller_device)
+ADDRESS_MAP_START(vtech_floppy_controller_device::map)
AM_RANGE(0, 0) AM_WRITE(latch_w)
AM_RANGE(1, 1) AM_READ(shifter_r)
AM_RANGE(2, 2) AM_READ(rd_r)
diff --git a/src/devices/bus/vtech/memexp/floppy.h b/src/devices/bus/vtech/memexp/floppy.h
index 5c462a2279c..a81ea420395 100644
--- a/src/devices/bus/vtech/memexp/floppy.h
+++ b/src/devices/bus/vtech/memexp/floppy.h
@@ -37,7 +37,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_WRITE8_MEMBER(latch_w);
DECLARE_READ8_MEMBER(shifter_r);
diff --git a/src/devices/bus/wangpc/rtc.cpp b/src/devices/bus/wangpc/rtc.cpp
index 7bd5013115b..eb646527d3f 100644
--- a/src/devices/bus/wangpc/rtc.cpp
+++ b/src/devices/bus/wangpc/rtc.cpp
@@ -56,7 +56,7 @@ const tiny_rom_entry *wangpc_rtc_device::device_rom_region() const
// ADDRESS_MAP( wangpc_rtc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( wangpc_rtc_mem, AS_PROGRAM, 8, wangpc_rtc_device )
+ADDRESS_MAP_START(wangpc_rtc_device::wangpc_rtc_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x1000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -66,7 +66,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( wangpc_rtc_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( wangpc_rtc_io, AS_IO, 8, wangpc_rtc_device )
+ADDRESS_MAP_START(wangpc_rtc_device::wangpc_rtc_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(Z80SIO_TAG, z80sio0_device, cd_ba_r, cd_ba_w)
AM_RANGE(0x10, 0x1f) AM_DEVREADWRITE(AM9517A_TAG, am9517a_device, read, write)
diff --git a/src/devices/bus/wangpc/rtc.h b/src/devices/bus/wangpc/rtc.h
index d7b7dbd4058..48c299f2ee9 100644
--- a/src/devices/bus/wangpc/rtc.h
+++ b/src/devices/bus/wangpc/rtc.h
@@ -32,6 +32,8 @@ public:
// construction/destruction
wangpc_rtc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void wangpc_rtc_io(address_map &map);
+ void wangpc_rtc_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/wangpc/tig.cpp b/src/devices/bus/wangpc/tig.cpp
index 936340a4267..700024c3fc2 100644
--- a/src/devices/bus/wangpc/tig.cpp
+++ b/src/devices/bus/wangpc/tig.cpp
@@ -83,7 +83,7 @@ const tiny_rom_entry *wangpc_tig_device::device_rom_region() const
// UPD7220_INTERFACE( hgdc0_intf )
//-------------------------------------------------
-static ADDRESS_MAP_START( upd7220_0_map, 0, 16, wangpc_tig_device )
+ADDRESS_MAP_START(wangpc_tig_device::upd7220_0_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_RAM // frame buffer
AM_RANGE(0x4000, 0x7fff) AM_RAM // font memory
@@ -98,7 +98,7 @@ UPD7220_DRAW_TEXT_LINE_MEMBER( wangpc_tig_device::hgdc_draw_text )
// UPD7220_INTERFACE( hgdc1_intf )
//-------------------------------------------------
-static ADDRESS_MAP_START( upd7220_1_map, 0, 16, wangpc_tig_device )
+ADDRESS_MAP_START(wangpc_tig_device::upd7220_1_map)
ADDRESS_MAP_GLOBAL_MASK(0xffff)
AM_RANGE(0x0000, 0xffff) AM_RAM // graphics memory
ADDRESS_MAP_END
diff --git a/src/devices/bus/wangpc/tig.h b/src/devices/bus/wangpc/tig.h
index dbe2ef2c324..1f48628da8e 100644
--- a/src/devices/bus/wangpc/tig.h
+++ b/src/devices/bus/wangpc/tig.h
@@ -29,6 +29,8 @@ public:
// construction/destruction
wangpc_tig_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void upd7220_0_map(address_map &map);
+ void upd7220_1_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/bus/wangpc/wdc.cpp b/src/devices/bus/wangpc/wdc.cpp
index 095bb28bdaf..5f4e67d48d2 100644
--- a/src/devices/bus/wangpc/wdc.cpp
+++ b/src/devices/bus/wangpc/wdc.cpp
@@ -64,7 +64,7 @@ const tiny_rom_entry *wangpc_wdc_device::device_rom_region() const
// ADDRESS_MAP( wangpc_wdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( wangpc_wdc_mem, AS_PROGRAM, 8, wangpc_wdc_device )
+ADDRESS_MAP_START(wangpc_wdc_device::wangpc_wdc_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x1000, 0x17ff) AM_RAM
AM_RANGE(0x2000, 0x27ff) AM_RAM
@@ -75,7 +75,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( wangpc_wdc_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( wangpc_wdc_io, AS_IO, 8, wangpc_wdc_device )
+ADDRESS_MAP_START(wangpc_wdc_device::wangpc_wdc_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_READ(port_r)
AM_RANGE(0x03, 0x03) AM_WRITE(status_w)
diff --git a/src/devices/bus/wangpc/wdc.h b/src/devices/bus/wangpc/wdc.h
index c90f23c8d15..095755d99f9 100644
--- a/src/devices/bus/wangpc/wdc.h
+++ b/src/devices/bus/wangpc/wdc.h
@@ -43,6 +43,8 @@ public:
DECLARE_READ8_MEMBER( ctc_ch3_r );
DECLARE_WRITE8_MEMBER( ctc_ch3_w );
+ void wangpc_wdc_io(address_map &map);
+ void wangpc_wdc_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/alto2/alto2cpu.cpp b/src/devices/cpu/alto2/alto2cpu.cpp
index 21f9faa2625..993738f82e0 100644
--- a/src/devices/cpu/alto2/alto2cpu.cpp
+++ b/src/devices/cpu/alto2/alto2cpu.cpp
@@ -61,15 +61,15 @@ alto2_log_t logprintf;
// LIVE DEVICE
//**************************************************************************
-DEVICE_ADDRESS_MAP_START( ucode_map, 32, alto2_cpu_device )
+ADDRESS_MAP_START(alto2_cpu_device::ucode_map)
AM_RANGE(0, 4*ALTO2_UCODE_PAGE_SIZE - 1) AM_READWRITE( crom_cram_r, crom_cram_w )
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( const_map, 16, alto2_cpu_device )
+ADDRESS_MAP_START(alto2_cpu_device::const_map)
AM_RANGE(0, ALTO2_CONST_SIZE - 1) AM_READ ( const_r )
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( iomem_map, 16, alto2_cpu_device )
+ADDRESS_MAP_START(alto2_cpu_device::iomem_map)
AM_RANGE(0, ALTO2_IO_PAGE_BASE - 1) AM_READWRITE( ioram_r, ioram_w )
// page 0376
AM_RANGE(0177000, 0177015) AM_READWRITE( noop_r, noop_w ) // UNUSED RANGE
diff --git a/src/devices/cpu/alto2/alto2cpu.h b/src/devices/cpu/alto2/alto2cpu.h
index 6bebea1f803..3b4b0f4fc4f 100644
--- a/src/devices/cpu/alto2/alto2cpu.h
+++ b/src/devices/cpu/alto2/alto2cpu.h
@@ -200,9 +200,9 @@ public:
//! set the vblank bit for the display to synch upon
void screen_vblank();
- DECLARE_ADDRESS_MAP( ucode_map, 32 );
- DECLARE_ADDRESS_MAP( const_map, 16 );
- DECLARE_ADDRESS_MAP( iomem_map, 16 );
+ void ucode_map(address_map &map);
+ void const_map(address_map &map);
+ void iomem_map(address_map &map);
//! register a mouse motion in x direction
DECLARE_INPUT_CHANGED_MEMBER( mouse_motion_x );
diff --git a/src/devices/cpu/amis2000/amis2000.cpp b/src/devices/cpu/amis2000/amis2000.cpp
index bd3eda7852a..46217cc1d2e 100644
--- a/src/devices/cpu/amis2000/amis2000.cpp
+++ b/src/devices/cpu/amis2000/amis2000.cpp
@@ -35,22 +35,22 @@ DEFINE_DEVICE_TYPE(AMI_S2152, amis2152_cpu_device, "amis2152", "AMI S2152")
// internal memory maps
-static ADDRESS_MAP_START(program_1k, AS_PROGRAM, 8, amis2000_base_device)
+ADDRESS_MAP_START(amis2000_base_device::program_1k)
AM_RANGE(0x0000, 0x03ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_1_5k, AS_PROGRAM, 8, amis2000_base_device)
+ADDRESS_MAP_START(amis2000_base_device::program_1_5k)
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0400, 0x05ff) AM_NOP // 0x00
AM_RANGE(0x0600, 0x07ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_64x4, AS_DATA, 8, amis2000_base_device)
+ADDRESS_MAP_START(amis2000_base_device::data_64x4)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_80x4, AS_DATA, 8, amis2000_base_device)
+ADDRESS_MAP_START(amis2000_base_device::data_80x4)
AM_RANGE(0x00, 0x3f) AM_RAM
AM_RANGE(0x40, 0x4f) AM_RAM
ADDRESS_MAP_END
@@ -58,15 +58,15 @@ ADDRESS_MAP_END
// device definitions
amis2000_cpu_device::amis2000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : amis2000_base_device(mconfig, AMI_S2000, tag, owner, clock, 2, 10, 3, 13, ADDRESS_MAP_NAME(program_1k), 6, ADDRESS_MAP_NAME(data_64x4))
+ : amis2000_base_device(mconfig, AMI_S2000, tag, owner, clock, 2, 10, 3, 13, address_map_constructor(FUNC(amis2000_cpu_device::program_1k), this), 6, address_map_constructor(FUNC(amis2000_cpu_device::data_64x4), this))
{ }
amis2150_cpu_device::amis2150_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : amis2000_base_device(mconfig, AMI_S2150, tag, owner, clock, 3, 11, 3, 13, ADDRESS_MAP_NAME(program_1_5k), 7, ADDRESS_MAP_NAME(data_80x4))
+ : amis2000_base_device(mconfig, AMI_S2150, tag, owner, clock, 3, 11, 3, 13, address_map_constructor(FUNC(amis2150_cpu_device::program_1_5k), this), 7, address_map_constructor(FUNC(amis2150_cpu_device::data_80x4), this))
{ }
amis2152_cpu_device::amis2152_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : amis2000_base_device(mconfig, AMI_S2152, tag, owner, clock, 3, 11, 3, 13, ADDRESS_MAP_NAME(program_1_5k), 7, ADDRESS_MAP_NAME(data_80x4))
+ : amis2000_base_device(mconfig, AMI_S2152, tag, owner, clock, 3, 11, 3, 13, address_map_constructor(FUNC(amis2152_cpu_device::program_1_5k), this), 7, address_map_constructor(FUNC(amis2152_cpu_device::data_80x4), this))
{ }
device_memory_interface::space_config_vector amis2000_base_device::memory_space_config() const
diff --git a/src/devices/cpu/amis2000/amis2000.h b/src/devices/cpu/amis2000/amis2000.h
index 1bf4bf66460..3dfa68262ba 100644
--- a/src/devices/cpu/amis2000/amis2000.h
+++ b/src/devices/cpu/amis2000/amis2000.h
@@ -52,6 +52,10 @@ public:
template <class Object> static devcb_base &set_write_f_callback(device_t &device, Object &&cb) { return downcast<amis2000_base_device &>(device).m_write_f.set_callback(std::forward<Object>(cb)); }
static void set_7seg_table(device_t &device, const u8 *ptr) { downcast<amis2000_base_device &>(device).m_7seg_table = ptr; }
+ void data_64x4(address_map &map);
+ void data_80x4(address_map &map);
+ void program_1_5k(address_map &map);
+ void program_1k(address_map &map);
protected:
// construction/destruction
amis2000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 bu_bits, u8 callstack_bits, u8 callstack_depth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data)
diff --git a/src/devices/cpu/arcompact/arcompact.cpp b/src/devices/cpu/arcompact/arcompact.cpp
index bffbcda8213..27db4fcdf07 100644
--- a/src/devices/cpu/arcompact/arcompact.cpp
+++ b/src/devices/cpu/arcompact/arcompact.cpp
@@ -40,7 +40,7 @@ WRITE32_MEMBER(arcompact_device::arcompact_auxreg025_INTVECTORBASE_w) { m_INTVEC
-static ADDRESS_MAP_START( arcompact_auxreg_map, AS_IO, 32, arcompact_device )
+ADDRESS_MAP_START(arcompact_device::arcompact_auxreg_map)
AM_RANGE(0x000000002, 0x000000002) AM_READWRITE(arcompact_auxreg002_LPSTART_r, arcompact_auxreg002_LPSTART_w)
AM_RANGE(0x000000003, 0x000000003) AM_READWRITE(arcompact_auxreg003_LPEND_r, arcompact_auxreg003_LPEND_w)
AM_RANGE(0x000000009, 0x000000009) AM_READ(arcompact_auxreg00a_STATUS32_r) // r/o
@@ -52,7 +52,7 @@ ADDRESS_MAP_END
arcompact_device::arcompact_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, ARCA5, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0) // some docs describe these as 'middle endian'?!
- , m_io_config( "io", ENDIANNESS_LITTLE, 32, AUX_SPACE_ADDRESS_WIDTH, -2, ADDRESS_MAP_NAME( arcompact_auxreg_map ) )
+ , m_io_config( "io", ENDIANNESS_LITTLE, 32, AUX_SPACE_ADDRESS_WIDTH, -2, address_map_constructor(FUNC(arcompact_device::arcompact_auxreg_map), this))
{
}
diff --git a/src/devices/cpu/arcompact/arcompact.h b/src/devices/cpu/arcompact/arcompact.h
index fc7d7dbe5dc..4365b4927f5 100644
--- a/src/devices/cpu/arcompact/arcompact.h
+++ b/src/devices/cpu/arcompact/arcompact.h
@@ -82,6 +82,7 @@ public:
DECLARE_WRITE32_MEMBER( arcompact_auxreg025_INTVECTORBASE_w);
+ void arcompact_auxreg_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/arm7/lpc210x.cpp b/src/devices/cpu/arm7/lpc210x.cpp
index 1f6f08530f9..0ede57ca19b 100644
--- a/src/devices/cpu/arm7/lpc210x.cpp
+++ b/src/devices/cpu/arm7/lpc210x.cpp
@@ -17,7 +17,7 @@
DEFINE_DEVICE_TYPE(LPC2103, lpc210x_device, "lpc2103", "NXP LPC2103")
-static ADDRESS_MAP_START( lpc2103_map, AS_PROGRAM, 32, lpc210x_device )
+ADDRESS_MAP_START(lpc210x_device::lpc2103_map)
AM_RANGE(0x00000000, 0x00007fff) AM_READWRITE(flash_r, flash_w) // 32kb internal FLASH rom
AM_RANGE(0x3FFFC000, 0x3FFFC01f) AM_READWRITE( fio_r, fio_w ) // GPIO
@@ -42,7 +42,7 @@ ADDRESS_MAP_END
lpc210x_device::lpc210x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: arm7_cpu_device(mconfig, LPC2103, tag, owner, clock, 4, ARCHFLAG_T, ENDIANNESS_LITTLE)
- , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0, ADDRESS_MAP_NAME(lpc2103_map))
+ , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0, address_map_constructor(FUNC(lpc210x_device::lpc2103_map), this))
{
}
diff --git a/src/devices/cpu/arm7/lpc210x.h b/src/devices/cpu/arm7/lpc210x.h
index d00abe84536..fa5a20999d0 100644
--- a/src/devices/cpu/arm7/lpc210x.h
+++ b/src/devices/cpu/arm7/lpc210x.h
@@ -71,6 +71,7 @@ public:
// todo, use an appropriate flash type instead
uint8_t m_flash[0x8000]; // needs to be public because the harmony/melody device injects contents with memcpy, yuck
+ void lpc2103_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/cpu/avr8/avr8.cpp b/src/devices/cpu/avr8/avr8.cpp
index 2f55b4a0317..00690e6540d 100644
--- a/src/devices/cpu/avr8/avr8.cpp
+++ b/src/devices/cpu/avr8/avr8.cpp
@@ -573,19 +573,19 @@ DEFINE_DEVICE_TYPE(ATMEGA2560, atmega2560_device, "atmega2560", "ATmega2560")
// INTERNAL ADDRESS MAP
//**************************************************************************
-static ADDRESS_MAP_START( atmega88_internal_map, AS_DATA, 8, atmega88_device )
+ADDRESS_MAP_START(atmega88_device::atmega88_internal_map)
AM_RANGE(0x0000, 0x00ff) AM_READWRITE( regs_r, regs_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atmega644_internal_map, AS_DATA, 8, atmega644_device )
+ADDRESS_MAP_START(atmega644_device::atmega644_internal_map)
AM_RANGE(0x0000, 0x00ff) AM_READWRITE( regs_r, regs_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atmega1280_internal_map, AS_DATA, 8, atmega1280_device )
+ADDRESS_MAP_START(atmega1280_device::atmega1280_internal_map)
AM_RANGE(0x0000, 0x01ff) AM_READWRITE( regs_r, regs_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atmega2560_internal_map, AS_DATA, 8, atmega2560_device )
+ADDRESS_MAP_START(atmega2560_device::atmega2560_internal_map)
AM_RANGE(0x0000, 0x01ff) AM_READWRITE( regs_r, regs_w )
ADDRESS_MAP_END
@@ -594,7 +594,7 @@ ADDRESS_MAP_END
//-------------------------------------------------
atmega88_device::atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : avr8_device(mconfig, tag, owner, clock, ATMEGA88, 0x0fff, ADDRESS_MAP_NAME(atmega88_internal_map), CPU_TYPE_ATMEGA88)
+ : avr8_device(mconfig, tag, owner, clock, ATMEGA88, 0x0fff, address_map_constructor(FUNC(atmega88_device::atmega88_internal_map), this), CPU_TYPE_ATMEGA88)
{
}
@@ -603,7 +603,7 @@ atmega88_device::atmega88_device(const machine_config &mconfig, const char *tag,
//-------------------------------------------------
atmega644_device::atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : avr8_device(mconfig, tag, owner, clock, ATMEGA644, 0xffff, ADDRESS_MAP_NAME(atmega644_internal_map), CPU_TYPE_ATMEGA644)
+ : avr8_device(mconfig, tag, owner, clock, ATMEGA644, 0xffff, address_map_constructor(FUNC(atmega644_device::atmega644_internal_map), this), CPU_TYPE_ATMEGA644)
{
}
@@ -612,7 +612,7 @@ atmega644_device::atmega644_device(const machine_config &mconfig, const char *ta
//-------------------------------------------------
atmega1280_device::atmega1280_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : avr8_device(mconfig, tag, owner, clock, ATMEGA1280, 0x1ffff, ADDRESS_MAP_NAME(atmega1280_internal_map), CPU_TYPE_ATMEGA1280)
+ : avr8_device(mconfig, tag, owner, clock, ATMEGA1280, 0x1ffff, address_map_constructor(FUNC(atmega1280_device::atmega1280_internal_map), this), CPU_TYPE_ATMEGA1280)
{
}
@@ -621,7 +621,7 @@ atmega1280_device::atmega1280_device(const machine_config &mconfig, const char *
//-------------------------------------------------
atmega2560_device::atmega2560_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : avr8_device(mconfig, tag, owner, clock, ATMEGA2560, 0x1ffff, ADDRESS_MAP_NAME(atmega2560_internal_map), CPU_TYPE_ATMEGA2560)
+ : avr8_device(mconfig, tag, owner, clock, ATMEGA2560, 0x1ffff, address_map_constructor(FUNC(atmega2560_device::atmega2560_internal_map), this), CPU_TYPE_ATMEGA2560)
{
}
diff --git a/src/devices/cpu/avr8/avr8.h b/src/devices/cpu/avr8/avr8.h
index f8c953a3aa3..344c9ca317b 100644
--- a/src/devices/cpu/avr8/avr8.h
+++ b/src/devices/cpu/avr8/avr8.h
@@ -258,6 +258,7 @@ class atmega88_device : public avr8_device
public:
// construction/destruction
atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void atmega88_internal_map(address_map &map);
};
// ======================> atmega644_device
@@ -269,6 +270,7 @@ public:
atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual void update_interrupt(int source) override;
+ void atmega644_internal_map(address_map &map);
};
// ======================> atmega1280_device
@@ -280,6 +282,7 @@ public:
atmega1280_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual void update_interrupt(int source) override;
+ void atmega1280_internal_map(address_map &map);
};
// ======================> atmega2560_device
@@ -291,6 +294,7 @@ public:
atmega2560_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual void update_interrupt(int source) override;
+ void atmega2560_internal_map(address_map &map);
};
/***************************************************************************
diff --git a/src/devices/cpu/cop400/cop400.cpp b/src/devices/cpu/cop400/cop400.cpp
index 03416a54b28..44737d5b1d7 100644
--- a/src/devices/cpu/cop400/cop400.cpp
+++ b/src/devices/cpu/cop400/cop400.cpp
@@ -134,30 +134,30 @@ DEFINE_DEVICE_TYPE(COP446C, cop446c_cpu_device, "cop446c", "COP446C")
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( program_512b, AS_PROGRAM, 8, cop400_cpu_device )
+ADDRESS_MAP_START(cop400_cpu_device::program_512b)
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_1kb, AS_PROGRAM, 8, cop400_cpu_device )
+ADDRESS_MAP_START(cop400_cpu_device::program_1kb)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_2kb, AS_PROGRAM, 8, cop400_cpu_device )
+ADDRESS_MAP_START(cop400_cpu_device::program_2kb)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_32b, AS_DATA, 8, cop400_cpu_device )
+ADDRESS_MAP_START(cop400_cpu_device::data_32b)
AM_RANGE(0x00, 0x07) AM_MIRROR(0x08) AM_RAM
AM_RANGE(0x10, 0x17) AM_MIRROR(0x08) AM_RAM
AM_RANGE(0x20, 0x27) AM_MIRROR(0x08) AM_RAM
AM_RANGE(0x30, 0x37) AM_MIRROR(0x08) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_64b, AS_DATA, 8, cop400_cpu_device )
+ADDRESS_MAP_START(cop400_cpu_device::data_64b)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_128b, AS_DATA, 8, cop400_cpu_device )
+ADDRESS_MAP_START(cop400_cpu_device::data_128b)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
@@ -240,87 +240,87 @@ cop400_cpu_device::cop400_cpu_device(const machine_config &mconfig, device_type
}
cop401_cpu_device::cop401_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP401, tag, owner, clock, 9, 6, COP410_FEATURE, 0xf, 0xf, 0, false, false, nullptr, ADDRESS_MAP_NAME(data_32b))
+ : cop400_cpu_device(mconfig, COP401, tag, owner, clock, 9, 6, COP410_FEATURE, 0xf, 0xf, 0, false, false, address_map_constructor(), address_map_constructor(FUNC(cop401_cpu_device::data_32b), this))
{
}
cop410_cpu_device::cop410_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP410, tag, owner, clock, 9, 6, COP410_FEATURE, 0xf, 0xf, 0, false, false, ADDRESS_MAP_NAME(program_512b), ADDRESS_MAP_NAME(data_32b))
+ : cop400_cpu_device(mconfig, COP410, tag, owner, clock, 9, 6, COP410_FEATURE, 0xf, 0xf, 0, false, false, address_map_constructor(FUNC(cop410_cpu_device::program_512b), this), address_map_constructor(FUNC(cop410_cpu_device::data_32b), this))
{
}
cop411_cpu_device::cop411_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP411, tag, owner, clock, 9, 6, COP410_FEATURE, 0x7, 0x3, 0, false, false, ADDRESS_MAP_NAME(program_512b), ADDRESS_MAP_NAME(data_32b))
+ : cop400_cpu_device(mconfig, COP411, tag, owner, clock, 9, 6, COP410_FEATURE, 0x7, 0x3, 0, false, false, address_map_constructor(FUNC(cop411_cpu_device::program_512b), this), address_map_constructor(FUNC(cop411_cpu_device::data_32b), this))
{
}
cop402_cpu_device::cop402_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP402, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0xf, true, true, nullptr, ADDRESS_MAP_NAME(data_64b))
+ : cop400_cpu_device(mconfig, COP402, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(), address_map_constructor(FUNC(cop402_cpu_device::data_64b), this))
{
}
cop420_cpu_device::cop420_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP420, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0xf, true, true, ADDRESS_MAP_NAME(program_1kb), ADDRESS_MAP_NAME(data_64b))
+ : cop400_cpu_device(mconfig, COP420, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop420_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop420_cpu_device::data_64b), this))
{
}
cop421_cpu_device::cop421_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP421, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0, true, false, ADDRESS_MAP_NAME(program_1kb), ADDRESS_MAP_NAME(data_64b))
+ : cop400_cpu_device(mconfig, COP421, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0, true, false, address_map_constructor(FUNC(cop421_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop421_cpu_device::data_64b), this))
{
}
cop422_cpu_device::cop422_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP422, tag, owner, clock, 10, 6, COP420_FEATURE, 0xe, 0xe, 0, true, false, ADDRESS_MAP_NAME(program_1kb), ADDRESS_MAP_NAME(data_64b))
+ : cop400_cpu_device(mconfig, COP422, tag, owner, clock, 10, 6, COP420_FEATURE, 0xe, 0xe, 0, true, false, address_map_constructor(FUNC(cop422_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop422_cpu_device::data_64b), this))
{
}
cop404l_cpu_device::cop404l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP404L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0xf, 0xf, 0xf, true, true, nullptr, ADDRESS_MAP_NAME(data_128b))
+ : cop400_cpu_device(mconfig, COP404L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(), address_map_constructor(FUNC(cop404l_cpu_device::data_128b), this))
{
}
cop444l_cpu_device::cop444l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP444L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0xf, 0xf, 0xf, true, true, ADDRESS_MAP_NAME(program_2kb), ADDRESS_MAP_NAME(data_128b))
+ : cop400_cpu_device(mconfig, COP444L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop444l_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop444l_cpu_device::data_128b), this))
{
}
cop445l_cpu_device::cop445l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP445L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0x7, 0x3, 0, true, false, ADDRESS_MAP_NAME(program_2kb), ADDRESS_MAP_NAME(data_128b))
+ : cop400_cpu_device(mconfig, COP445L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0x7, 0x3, 0, true, false, address_map_constructor(FUNC(cop445l_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop445l_cpu_device::data_128b), this))
{
}
cop404c_cpu_device::cop404c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP404C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, nullptr, ADDRESS_MAP_NAME(data_128b))
+ : cop400_cpu_device(mconfig, COP404C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(), address_map_constructor(FUNC(cop404c_cpu_device::data_128b), this))
{
}
cop424c_cpu_device::cop424c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP424C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, ADDRESS_MAP_NAME(program_1kb), ADDRESS_MAP_NAME(data_64b))
+ : cop400_cpu_device(mconfig, COP424C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop424c_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop424c_cpu_device::data_64b), this))
{
}
cop425c_cpu_device::cop425c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP425C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xf, 0xf, 0, true, false, ADDRESS_MAP_NAME(program_1kb), ADDRESS_MAP_NAME(data_64b))
+ : cop400_cpu_device(mconfig, COP425C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xf, 0xf, 0, true, false, address_map_constructor(FUNC(cop425c_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop425c_cpu_device::data_64b), this))
{
}
cop426c_cpu_device::cop426c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP426C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xe, 0xe, 0xf, true, true, ADDRESS_MAP_NAME(program_1kb), ADDRESS_MAP_NAME(data_64b))
+ : cop400_cpu_device(mconfig, COP426C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xe, 0xe, 0xf, true, true, address_map_constructor(FUNC(cop426c_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop426c_cpu_device::data_64b), this))
{
}
cop444c_cpu_device::cop444c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP444C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, ADDRESS_MAP_NAME(program_2kb), ADDRESS_MAP_NAME(data_128b))
+ : cop400_cpu_device(mconfig, COP444C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop444c_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop444c_cpu_device::data_128b), this))
{
}
cop445c_cpu_device::cop445c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP445C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0, true, false, ADDRESS_MAP_NAME(program_2kb), ADDRESS_MAP_NAME(data_128b))
+ : cop400_cpu_device(mconfig, COP445C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0, true, false, address_map_constructor(FUNC(cop445c_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop445c_cpu_device::data_128b), this))
{
}
cop446c_cpu_device::cop446c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : cop400_cpu_device(mconfig, COP446C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xe, 0xe, 0xf, true, true, ADDRESS_MAP_NAME(program_2kb), ADDRESS_MAP_NAME(data_128b))
+ : cop400_cpu_device(mconfig, COP446C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xe, 0xe, 0xf, true, true, address_map_constructor(FUNC(cop446c_cpu_device::program_2kb),this), address_map_constructor(FUNC(cop446c_cpu_device::data_128b), this))
{
}
diff --git a/src/devices/cpu/cop400/cop400.h b/src/devices/cpu/cop400/cop400.h
index d98d7bbbc6f..3630c2c41b7 100644
--- a/src/devices/cpu/cop400/cop400.h
+++ b/src/devices/cpu/cop400/cop400.h
@@ -142,6 +142,12 @@ public:
DECLARE_READ8_MEMBER( microbus_rd );
DECLARE_WRITE8_MEMBER( microbus_wr );
+ void data_128b(address_map &map);
+ void data_32b(address_map &map);
+ void data_64b(address_map &map);
+ void program_1kb(address_map &map);
+ void program_2kb(address_map &map);
+ void program_512b(address_map &map);
protected:
// construction/destruction
cop400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t program_addr_bits, uint8_t data_addr_bits, uint8_t featuremask, uint8_t g_mask, uint8_t d_mask, uint8_t in_mask, bool has_counter, bool has_inil, address_map_constructor internal_map_program, address_map_constructor internal_map_data);
diff --git a/src/devices/cpu/dsp56k/dsp56k.cpp b/src/devices/cpu/dsp56k/dsp56k.cpp
index 132ccb55c98..299fbbe2ae6 100644
--- a/src/devices/cpu/dsp56k/dsp56k.cpp
+++ b/src/devices/cpu/dsp56k/dsp56k.cpp
@@ -109,12 +109,12 @@ enum
/****************************************************************************
* Internal Memory Maps
****************************************************************************/
-static ADDRESS_MAP_START( dsp56156_program_map, AS_PROGRAM, 16, dsp56k_device )
+ADDRESS_MAP_START(dsp56k_device::dsp56156_program_map)
AM_RANGE(0x0000,0x07ff) AM_RAM AM_SHARE("dsk56k_program_ram") /* 1-5 */
// AM_RANGE(0x2f00,0x2fff) AM_ROM /* 1-5 PROM reserved memory. Is this the right spot for it? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp56156_x_data_map, AS_DATA, 16, dsp56k_device )
+ADDRESS_MAP_START(dsp56k_device::dsp56156_x_data_map)
AM_RANGE(0x0000,0x07ff) AM_RAM /* 1-5 */
AM_RANGE(0xffc0,0xffff) AM_READWRITE(peripheral_register_r, peripheral_register_w) /* 1-5 On-chip peripheral registers memory mapped in data space */
ADDRESS_MAP_END
@@ -122,8 +122,8 @@ ADDRESS_MAP_END
dsp56k_device::dsp56k_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, DSP56156, tag, owner, clock)
- , m_program_config("program", ENDIANNESS_LITTLE, 16, 16, -1, ADDRESS_MAP_NAME(dsp56156_program_map))
- , m_data_config("data", ENDIANNESS_LITTLE, 16, 16, -1, ADDRESS_MAP_NAME(dsp56156_x_data_map))
+ , m_program_config("program", ENDIANNESS_LITTLE, 16, 16, -1, address_map_constructor(FUNC(dsp56k_device::dsp56156_program_map), this))
+ , m_data_config("data", ENDIANNESS_LITTLE, 16, 16, -1, address_map_constructor(FUNC(dsp56k_device::dsp56156_x_data_map), this))
, m_program_ram(*this, "dsk56k_program_ram")
{
}
diff --git a/src/devices/cpu/dsp56k/dsp56k.h b/src/devices/cpu/dsp56k/dsp56k.h
index 43e94e60442..f36a8481d81 100644
--- a/src/devices/cpu/dsp56k/dsp56k.h
+++ b/src/devices/cpu/dsp56k/dsp56k.h
@@ -213,6 +213,8 @@ public:
uint16_t get_peripheral_memory(uint16_t addr);
+ void dsp56156_program_map(address_map &map);
+ void dsp56156_x_data_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/e0c6200/e0c6s46.cpp b/src/devices/cpu/e0c6200/e0c6s46.cpp
index 16e1e3d3eb2..47c21daedf8 100644
--- a/src/devices/cpu/e0c6200/e0c6s46.cpp
+++ b/src/devices/cpu/e0c6200/e0c6s46.cpp
@@ -32,12 +32,12 @@ DEFINE_DEVICE_TYPE(E0C6S46, e0c6s46_device, "e0c6s46", "Seiko Epson E0C6S46")
// internal memory maps
-static ADDRESS_MAP_START(e0c6s46_program, AS_PROGRAM, 16, e0c6s46_device)
+ADDRESS_MAP_START(e0c6s46_device::e0c6s46_program)
AM_RANGE(0x0000, 0x17ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(e0c6s46_data, AS_DATA, 8, e0c6s46_device)
+ADDRESS_MAP_START(e0c6s46_device::e0c6s46_data)
AM_RANGE(0x0000, 0x027f) AM_RAM
AM_RANGE(0x0e00, 0x0e4f) AM_RAM AM_SHARE("vram1")
AM_RANGE(0x0e80, 0x0ecf) AM_RAM AM_SHARE("vram2")
@@ -47,7 +47,7 @@ ADDRESS_MAP_END
// device definitions
e0c6s46_device::e0c6s46_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : e0c6200_cpu_device(mconfig, E0C6S46, tag, owner, clock, ADDRESS_MAP_NAME(e0c6s46_program), ADDRESS_MAP_NAME(e0c6s46_data))
+ : e0c6200_cpu_device(mconfig, E0C6S46, tag, owner, clock, address_map_constructor(FUNC(e0c6s46_device::e0c6s46_program), this), address_map_constructor(FUNC(e0c6s46_device::e0c6s46_data), this))
, m_vram1(*this, "vram1")
, m_vram2(*this, "vram2"), m_osc(0), m_svd(0), m_lcd_control(0), m_lcd_contrast(0)
, m_write_r0(*this), m_write_r1(*this), m_write_r2(*this), m_write_r3(*this), m_write_r4(*this)
diff --git a/src/devices/cpu/e0c6200/e0c6s46.h b/src/devices/cpu/e0c6200/e0c6s46.h
index 005b30d0f41..f9fa3e25575 100644
--- a/src/devices/cpu/e0c6200/e0c6s46.h
+++ b/src/devices/cpu/e0c6200/e0c6s46.h
@@ -92,6 +92,8 @@ public:
u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void e0c6s46_data(address_map &map);
+ void e0c6s46_program(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/e132xs/e132xs.cpp b/src/devices/cpu/e132xs/e132xs.cpp
index b72499028f3..71b8eb126b5 100644
--- a/src/devices/cpu/e132xs/e132xs.cpp
+++ b/src/devices/cpu/e132xs/e132xs.cpp
@@ -162,33 +162,33 @@
// 4Kb IRAM (On-Chip Memory)
-static ADDRESS_MAP_START( e116_4k_iram_map, AS_PROGRAM, 16, hyperstone_device )
+ADDRESS_MAP_START(hyperstone_device::e116_4k_iram_map)
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM AM_MIRROR(0x1ffff000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( e132_4k_iram_map, AS_PROGRAM, 32, hyperstone_device )
+ADDRESS_MAP_START(hyperstone_device::e132_4k_iram_map)
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM AM_MIRROR(0x1ffff000)
ADDRESS_MAP_END
// 8Kb IRAM (On-Chip Memory)
-static ADDRESS_MAP_START( e116_8k_iram_map, AS_PROGRAM, 16, hyperstone_device )
+ADDRESS_MAP_START(hyperstone_device::e116_8k_iram_map)
AM_RANGE(0xc0000000, 0xc0001fff) AM_RAM AM_MIRROR(0x1fffe000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( e132_8k_iram_map, AS_PROGRAM, 32, hyperstone_device )
+ADDRESS_MAP_START(hyperstone_device::e132_8k_iram_map)
AM_RANGE(0xc0000000, 0xc0001fff) AM_RAM AM_MIRROR(0x1fffe000)
ADDRESS_MAP_END
// 16Kb IRAM (On-Chip Memory)
-static ADDRESS_MAP_START( e116_16k_iram_map, AS_PROGRAM, 16, hyperstone_device )
+ADDRESS_MAP_START(hyperstone_device::e116_16k_iram_map)
AM_RANGE(0xc0000000, 0xc0003fff) AM_RAM AM_MIRROR(0x1fffc000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( e132_16k_iram_map, AS_PROGRAM, 32, hyperstone_device )
+ADDRESS_MAP_START(hyperstone_device::e132_16k_iram_map)
AM_RANGE(0xc0000000, 0xc0003fff) AM_RAM AM_MIRROR(0x1fffc000)
ADDRESS_MAP_END
@@ -228,7 +228,7 @@ hyperstone_device::hyperstone_device(const machine_config &mconfig, const char *
//-------------------------------------------------
e116t_device::e116t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E116T, 16, 16, ADDRESS_MAP_NAME(e116_4k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E116T, 16, 16, address_map_constructor(FUNC(e116t_device::e116_4k_iram_map), this))
{
}
@@ -238,7 +238,7 @@ e116t_device::e116t_device(const machine_config &mconfig, const char *tag, devic
//-------------------------------------------------
e116xt_device::e116xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E116XT, 16, 16, ADDRESS_MAP_NAME(e116_8k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E116XT, 16, 16, address_map_constructor(FUNC(e116t_device::e116_8k_iram_map), this))
{
}
@@ -248,7 +248,7 @@ e116xt_device::e116xt_device(const machine_config &mconfig, const char *tag, dev
//-------------------------------------------------
e116xs_device::e116xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E116XS, 16, 16, ADDRESS_MAP_NAME(e116_16k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E116XS, 16, 16, address_map_constructor(FUNC(e116xs_device::e116_16k_iram_map), this))
{
}
@@ -258,7 +258,7 @@ e116xs_device::e116xs_device(const machine_config &mconfig, const char *tag, dev
//-------------------------------------------------
e116xsr_device::e116xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E116XSR, 16, 16, ADDRESS_MAP_NAME(e116_16k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E116XSR, 16, 16, address_map_constructor(FUNC(e116xsr_device::e116_16k_iram_map), this))
{
}
@@ -268,7 +268,7 @@ e116xsr_device::e116xsr_device(const machine_config &mconfig, const char *tag, d
//-------------------------------------------------
e132n_device::e132n_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E132N, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E132N, 32, 32, address_map_constructor(FUNC(e132n_device::e132_4k_iram_map), this))
{
}
@@ -278,7 +278,7 @@ e132n_device::e132n_device(const machine_config &mconfig, const char *tag, devic
//-------------------------------------------------
e132t_device::e132t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E132T, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E132T, 32, 32, address_map_constructor(FUNC(e132t_device::e132_4k_iram_map), this))
{
}
@@ -288,7 +288,7 @@ e132t_device::e132t_device(const machine_config &mconfig, const char *tag, devic
//-------------------------------------------------
e132xn_device::e132xn_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E132XN, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E132XN, 32, 32, address_map_constructor(FUNC(e132xn_device::e132_8k_iram_map), this))
{
}
@@ -298,7 +298,7 @@ e132xn_device::e132xn_device(const machine_config &mconfig, const char *tag, dev
//-------------------------------------------------
e132xt_device::e132xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E132XT, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E132XT, 32, 32, address_map_constructor(FUNC(e132xt_device::e132_8k_iram_map), this))
{
}
@@ -308,7 +308,7 @@ e132xt_device::e132xt_device(const machine_config &mconfig, const char *tag, dev
//-------------------------------------------------
e132xs_device::e132xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E132XS, 32, 32, ADDRESS_MAP_NAME(e132_16k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E132XS, 32, 32, address_map_constructor(FUNC(e132xs_device::e132_16k_iram_map), this))
{
}
@@ -318,7 +318,7 @@ e132xs_device::e132xs_device(const machine_config &mconfig, const char *tag, dev
//-------------------------------------------------
e132xsr_device::e132xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, E132XSR, 32, 32, ADDRESS_MAP_NAME(e132_16k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, E132XSR, 32, 32, address_map_constructor(FUNC(e132xsr_device::e132_16k_iram_map), this))
{
}
@@ -328,7 +328,7 @@ e132xsr_device::e132xsr_device(const machine_config &mconfig, const char *tag, d
//-------------------------------------------------
gms30c2116_device::gms30c2116_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, GMS30C2116, 16, 16, ADDRESS_MAP_NAME(e116_4k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, GMS30C2116, 16, 16, address_map_constructor(FUNC(gms30c2116_device::e116_4k_iram_map), this))
{
}
@@ -338,7 +338,7 @@ gms30c2116_device::gms30c2116_device(const machine_config &mconfig, const char *
//-------------------------------------------------
gms30c2132_device::gms30c2132_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, GMS30C2132, 32, 32, ADDRESS_MAP_NAME(e132_4k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, GMS30C2132, 32, 32, address_map_constructor(FUNC(gms30c2132_device::e132_4k_iram_map), this))
{
}
@@ -348,7 +348,7 @@ gms30c2132_device::gms30c2132_device(const machine_config &mconfig, const char *
//-------------------------------------------------
gms30c2216_device::gms30c2216_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, GMS30C2216, 16, 16, ADDRESS_MAP_NAME(e116_8k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, GMS30C2216, 16, 16, address_map_constructor(FUNC(gms30c2216_device::e116_8k_iram_map), this))
{
}
@@ -358,7 +358,7 @@ gms30c2216_device::gms30c2216_device(const machine_config &mconfig, const char *
//-------------------------------------------------
gms30c2232_device::gms30c2232_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : hyperstone_device(mconfig, tag, owner, clock, GMS30C2232, 32, 32, ADDRESS_MAP_NAME(e132_8k_iram_map))
+ : hyperstone_device(mconfig, tag, owner, clock, GMS30C2232, 32, 32, address_map_constructor(FUNC(gms30c2232_device::e132_8k_iram_map), this))
{
}
diff --git a/src/devices/cpu/e132xs/e132xs.h b/src/devices/cpu/e132xs/e132xs.h
index ba5a6efa356..b3635ff2386 100644
--- a/src/devices/cpu/e132xs/e132xs.h
+++ b/src/devices/cpu/e132xs/e132xs.h
@@ -138,6 +138,12 @@ public:
void compute_tr();
void adjust_timer_interrupt();
+ void e116_16k_iram_map(address_map &map);
+ void e116_4k_iram_map(address_map &map);
+ void e116_8k_iram_map(address_map &map);
+ void e132_16k_iram_map(address_map &map);
+ void e132_4k_iram_map(address_map &map);
+ void e132_8k_iram_map(address_map &map);
protected:
struct internal_hyperstone_state
{
diff --git a/src/devices/cpu/g65816/g65816.cpp b/src/devices/cpu/g65816/g65816.cpp
index 6514f113b05..e1b636d3a1d 100644
--- a/src/devices/cpu/g65816/g65816.cpp
+++ b/src/devices/cpu/g65816/g65816.cpp
@@ -104,7 +104,7 @@ enum
g65816_device::g65816_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : g65816_device(mconfig, G65816, tag, owner, clock, CPU_TYPE_G65816, nullptr)
+ : g65816_device(mconfig, G65816, tag, owner, clock, CPU_TYPE_G65816, address_map_constructor())
{
}
@@ -125,7 +125,7 @@ device_memory_interface::space_config_vector g65816_device::memory_space_config(
}
-static ADDRESS_MAP_START(_5a22_map, AS_PROGRAM, 8, _5a22_device)
+ADDRESS_MAP_START(_5a22_device::_5a22_map)
AM_RANGE(0x4202, 0x4202) AM_MIRROR(0xbf0000) AM_WRITE(wrmpya_w)
AM_RANGE(0x4203, 0x4203) AM_MIRROR(0xbf0000) AM_WRITE(wrmpyb_w)
AM_RANGE(0x4204, 0x4204) AM_MIRROR(0xbf0000) AM_WRITE(wrdivl_w)
@@ -142,7 +142,7 @@ ADDRESS_MAP_END
_5a22_device::_5a22_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : g65816_device(mconfig, _5A22, tag, owner, clock, CPU_TYPE_5A22, ADDRESS_MAP_NAME(_5a22_map))
+ : g65816_device(mconfig, _5A22, tag, owner, clock, CPU_TYPE_5A22, address_map_constructor(FUNC(_5a22_device::_5a22_map), this))
{
}
diff --git a/src/devices/cpu/g65816/g65816.h b/src/devices/cpu/g65816/g65816.h
index cfacba32927..1c34fdbfca6 100644
--- a/src/devices/cpu/g65816/g65816.h
+++ b/src/devices/cpu/g65816/g65816.h
@@ -1545,6 +1545,7 @@ public:
void set_5a22_map();
+ void _5a22_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/h8/h8.cpp b/src/devices/cpu/h8/h8.cpp
index e54155b120d..8b994cd02d0 100644
--- a/src/devices/cpu/h8/h8.cpp
+++ b/src/devices/cpu/h8/h8.cpp
@@ -16,7 +16,7 @@
#include "h8_dtc.h"
#include "h8d.h"
-h8_device::h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool mode_a16, address_map_delegate map_delegate) :
+h8_device::h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool mode_a16, address_map_constructor map_delegate) :
cpu_device(mconfig, type, tag, owner, clock),
program_config("program", ENDIANNESS_BIG, 16, mode_a16 ? 16 : 24, 0, map_delegate),
io_config("io", ENDIANNESS_BIG, 16, 16, -1), program(nullptr), io(nullptr), direct(nullptr), PPC(0), NPC(0), PC(0), PIR(0), EXR(0), CCR(0), MAC(0), MACF(0),
diff --git a/src/devices/cpu/h8/h8.h b/src/devices/cpu/h8/h8.h
index 78ce598bb84..678a4627f19 100644
--- a/src/devices/cpu/h8/h8.h
+++ b/src/devices/cpu/h8/h8.h
@@ -87,7 +87,7 @@ protected:
EXR_I = 0x07
};
- h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool mode_a16, address_map_delegate map_delegate);
+ h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool mode_a16, address_map_constructor map_delegate);
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/h8/h83002.cpp b/src/devices/cpu/h8/h83002.cpp
index b2508f22a1c..17e39189e4d 100644
--- a/src/devices/cpu/h8/h83002.cpp
+++ b/src/devices/cpu/h8/h83002.cpp
@@ -6,7 +6,7 @@
DEFINE_DEVICE_TYPE(H83002, h83002_device, "h83002", "H8/3002")
h83002_device::h83002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- h8h_device(mconfig, H83002, tag, owner, clock, address_map_delegate(FUNC(h83002_device::map), this)),
+ h8h_device(mconfig, H83002, tag, owner, clock, address_map_constructor(FUNC(h83002_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
dma(*this, "dma"),
@@ -34,7 +34,7 @@ h83002_device::h83002_device(const machine_config &mconfig, const char *tag, dev
syscr = 0;
}
-DEVICE_ADDRESS_MAP_START(map, 16, h83002_device)
+ADDRESS_MAP_START(h83002_device::map)
AM_RANGE(0xfffd10, 0xffff0f) AM_RAM
// DMA: only full address mode supported
diff --git a/src/devices/cpu/h8/h83002.h b/src/devices/cpu/h8/h83002.h
index c49988a2302..613611c92ba 100644
--- a/src/devices/cpu/h8/h83002.h
+++ b/src/devices/cpu/h8/h83002.h
@@ -77,7 +77,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h83006.cpp b/src/devices/cpu/h8/h83006.cpp
index 84fdc63c3dc..60b3b09cf55 100644
--- a/src/devices/cpu/h8/h83006.cpp
+++ b/src/devices/cpu/h8/h83006.cpp
@@ -8,7 +8,7 @@ DEFINE_DEVICE_TYPE(H83007, h83007_device, "h83007", "H8/3007")
h83006_device::h83006_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) :
- h8h_device(mconfig, type, tag, owner, clock, address_map_delegate(FUNC(h83006_device::map), this)),
+ h8h_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h83006_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
port4(*this, "port4"),
@@ -46,7 +46,7 @@ h83007_device::h83007_device(const machine_config &mconfig, const char *tag, dev
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h83006_device)
+ADDRESS_MAP_START(h83006_device::map)
AM_RANGE(0xfee002, 0xfee003) AM_DEVWRITE8( "port4", h8_port_device, ddr_w, 0x00ff)
AM_RANGE(0xfee004, 0xfee005) AM_DEVWRITE8( "port6", h8_port_device, ddr_w, 0x00ff)
AM_RANGE(0xfee006, 0xfee007) AM_DEVWRITE8( "port8", h8_port_device, ddr_w, 0x00ff)
diff --git a/src/devices/cpu/h8/h83006.h b/src/devices/cpu/h8/h83006.h
index 4f5ba8c3b76..83aa48b7ec9 100644
--- a/src/devices/cpu/h8/h83006.h
+++ b/src/devices/cpu/h8/h83006.h
@@ -66,7 +66,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h83008.cpp b/src/devices/cpu/h8/h83008.cpp
index 1daa5ce122c..de8df8dfde8 100644
--- a/src/devices/cpu/h8/h83008.cpp
+++ b/src/devices/cpu/h8/h83008.cpp
@@ -6,7 +6,7 @@
DEFINE_DEVICE_TYPE(H83008, h83008_device, "h83008", "H8/3008")
h83008_device::h83008_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- h8h_device(mconfig, H83008, tag, owner, clock, address_map_delegate(FUNC(h83008_device::map), this)),
+ h8h_device(mconfig, H83008, tag, owner, clock, address_map_constructor(FUNC(h83008_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
port4(*this, "port4"),
@@ -31,7 +31,7 @@ h83008_device::h83008_device(const machine_config &mconfig, const char *tag, dev
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h83008_device)
+ADDRESS_MAP_START(h83008_device::map)
AM_RANGE(0xfee002, 0xfee003) AM_DEVWRITE8( "port4", h8_port_device, ddr_w, 0x00ff)
AM_RANGE(0xfee004, 0xfee005) AM_DEVWRITE8( "port6", h8_port_device, ddr_w, 0x00ff)
AM_RANGE(0xfee006, 0xfee007) AM_DEVWRITE8( "port8", h8_port_device, ddr_w, 0x00ff)
diff --git a/src/devices/cpu/h8/h83008.h b/src/devices/cpu/h8/h83008.h
index 0c4854fff46..b96436b7ed1 100644
--- a/src/devices/cpu/h8/h83008.h
+++ b/src/devices/cpu/h8/h83008.h
@@ -62,7 +62,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h83048.cpp b/src/devices/cpu/h8/h83048.cpp
index ef0c32f219b..ea8db3c69e0 100644
--- a/src/devices/cpu/h8/h83048.cpp
+++ b/src/devices/cpu/h8/h83048.cpp
@@ -9,7 +9,7 @@ DEFINE_DEVICE_TYPE(H83047, h83047_device, "h83047", "H8/3047")
DEFINE_DEVICE_TYPE(H83048, h83048_device, "h83048", "H8/3048")
h83048_device::h83048_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) :
- h8h_device(mconfig, type, tag, owner, clock, address_map_delegate(FUNC(h83048_device::map), this)),
+ h8h_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h83048_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
port1(*this, "port1"),
@@ -57,7 +57,7 @@ h83047_device::h83047_device(const machine_config &mconfig, const char *tag, dev
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h83048_device)
+ADDRESS_MAP_START(h83048_device::map)
AM_RANGE(ram_start, 0xffff0f) AM_RAM
AM_RANGE(0xffff60, 0xffff61) AM_DEVREADWRITE8("timer16", h8_timer16_device, tstr_r, tstr_w, 0xff00)
diff --git a/src/devices/cpu/h8/h83048.h b/src/devices/cpu/h8/h83048.h
index 9e501a4473f..7400e6ba57c 100644
--- a/src/devices/cpu/h8/h83048.h
+++ b/src/devices/cpu/h8/h83048.h
@@ -72,7 +72,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h83337.cpp b/src/devices/cpu/h8/h83337.cpp
index f70ce2ab2ab..a35409afd71 100644
--- a/src/devices/cpu/h8/h83337.cpp
+++ b/src/devices/cpu/h8/h83337.cpp
@@ -9,7 +9,7 @@ DEFINE_DEVICE_TYPE(H83337, h83337_device, "h83337", "H8/3337")
h83337_device::h83337_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) :
- h8_device(mconfig, type, tag, owner, clock, true, address_map_delegate(FUNC(h83337_device::map), this)),
+ h8_device(mconfig, type, tag, owner, clock, true, address_map_constructor(FUNC(h83337_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
port1(*this, "port1"),
@@ -48,7 +48,7 @@ h83336_device::h83336_device(const machine_config &mconfig, const char *tag, dev
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h83337_device)
+ADDRESS_MAP_START(h83337_device::map)
AM_RANGE(ram_start, 0xff7f) AM_RAM
AM_RANGE(0xff88, 0xff89) AM_DEVREADWRITE8("sci1", h8_sci_device, smr_r, smr_w, 0xff00)
diff --git a/src/devices/cpu/h8/h83337.h b/src/devices/cpu/h8/h83337.h
index a2e0c18aa87..0882e623f80 100644
--- a/src/devices/cpu/h8/h83337.h
+++ b/src/devices/cpu/h8/h83337.h
@@ -75,7 +75,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h8h.cpp b/src/devices/cpu/h8/h8h.cpp
index 97b945d8166..3d749e5480f 100644
--- a/src/devices/cpu/h8/h8h.cpp
+++ b/src/devices/cpu/h8/h8h.cpp
@@ -4,7 +4,7 @@
#include "h8h.h"
#include "h8hd.h"
-h8h_device::h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate) :
+h8h_device::h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) :
h8_device(mconfig, type, tag, owner, clock, false, map_delegate)
{
supports_advanced = true;
diff --git a/src/devices/cpu/h8/h8h.h b/src/devices/cpu/h8/h8h.h
index 4c8c226a516..0271d2ffeb8 100644
--- a/src/devices/cpu/h8/h8h.h
+++ b/src/devices/cpu/h8/h8h.h
@@ -20,7 +20,7 @@
class h8h_device : public h8_device {
protected:
- h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate);
+ h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate);
virtual util::disasm_interface *create_disassembler() override;
diff --git a/src/devices/cpu/h8/h8s2000.cpp b/src/devices/cpu/h8/h8s2000.cpp
index 95e10cc2c50..38d7464b083 100644
--- a/src/devices/cpu/h8/h8s2000.cpp
+++ b/src/devices/cpu/h8/h8s2000.cpp
@@ -4,7 +4,7 @@
#include "h8s2000.h"
#include "h8s2000d.h"
-h8s2000_device::h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate) :
+h8s2000_device::h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) :
h8h_device(mconfig, type, tag, owner, clock, map_delegate)
{
has_exr = true;
diff --git a/src/devices/cpu/h8/h8s2000.h b/src/devices/cpu/h8/h8s2000.h
index 8aa195df7ad..713e087f64b 100644
--- a/src/devices/cpu/h8/h8s2000.h
+++ b/src/devices/cpu/h8/h8s2000.h
@@ -22,7 +22,7 @@
class h8s2000_device : public h8h_device {
protected:
- h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate);
+ h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate);
virtual util::disasm_interface *create_disassembler() override;
diff --git a/src/devices/cpu/h8/h8s2245.cpp b/src/devices/cpu/h8/h8s2245.cpp
index e5357d1fa60..c589f6c96c7 100644
--- a/src/devices/cpu/h8/h8s2245.cpp
+++ b/src/devices/cpu/h8/h8s2245.cpp
@@ -10,7 +10,7 @@ DEFINE_DEVICE_TYPE(H8S2246, h8s2246_device, "h8s2246", "H8S/2246")
h8s2245_device::h8s2245_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) :
- h8s2000_device(mconfig, type, tag, owner, clock, address_map_delegate(FUNC(h8s2245_device::map), this)),
+ h8s2000_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2245_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
dtc(*this, "dtc"),
@@ -61,7 +61,7 @@ h8s2246_device::h8s2246_device(const machine_config &mconfig, const char *tag, d
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h8s2245_device)
+ADDRESS_MAP_START(h8s2245_device::map)
AM_RANGE(ram_start, 0xfffbff) AM_RAM
AM_RANGE(0xfffeb0, 0xfffeb1) AM_DEVWRITE8( "port1", h8_port_device, ddr_w, 0xff00)
diff --git a/src/devices/cpu/h8/h8s2245.h b/src/devices/cpu/h8/h8s2245.h
index e89e623e463..732f4c02692 100644
--- a/src/devices/cpu/h8/h8s2245.h
+++ b/src/devices/cpu/h8/h8s2245.h
@@ -82,7 +82,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h8s2320.cpp b/src/devices/cpu/h8/h8s2320.cpp
index c62bd09fc16..d682f46921b 100644
--- a/src/devices/cpu/h8/h8s2320.cpp
+++ b/src/devices/cpu/h8/h8s2320.cpp
@@ -15,7 +15,7 @@ DEFINE_DEVICE_TYPE(H8S2329, h8s2329_device, "h8s2329", "H8S/2329")
h8s2320_device::h8s2320_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) :
- h8s2000_device(mconfig, type, tag, owner, clock, address_map_delegate(FUNC(h8s2320_device::map), this)),
+ h8s2000_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2320_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
dma(*this, "dma"),
@@ -98,7 +98,7 @@ h8s2329_device::h8s2329_device(const machine_config &mconfig, const char *tag, d
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h8s2320_device)
+ADDRESS_MAP_START(h8s2320_device::map)
AM_RANGE(ram_start, 0xfffbff) AM_RAM
AM_RANGE(0xfffe80, 0xfffe81) AM_DEVREADWRITE8("timer16:3", h8_timer16_channel_device, tcr_r, tcr_w, 0xff00)
diff --git a/src/devices/cpu/h8/h8s2320.h b/src/devices/cpu/h8/h8s2320.h
index 977b300fb4d..def1cb3ab4c 100644
--- a/src/devices/cpu/h8/h8s2320.h
+++ b/src/devices/cpu/h8/h8s2320.h
@@ -93,7 +93,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h8s2357.cpp b/src/devices/cpu/h8/h8s2357.cpp
index f193ecbac57..bffcce1e37e 100644
--- a/src/devices/cpu/h8/h8s2357.cpp
+++ b/src/devices/cpu/h8/h8s2357.cpp
@@ -11,7 +11,7 @@ DEFINE_DEVICE_TYPE(H8S2392, h8s2392_device, "h8s2392", "H8S/2392")
DEFINE_DEVICE_TYPE(H8S2390, h8s2390_device, "h8s2390", "H8S/2390")
h8s2357_device::h8s2357_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) :
- h8s2000_device(mconfig, type, tag, owner, clock, address_map_delegate(FUNC(h8s2357_device::map), this)),
+ h8s2000_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2357_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
port1(*this, "port1"),
@@ -75,7 +75,7 @@ h8s2390_device::h8s2390_device(const machine_config &mconfig, const char *tag, d
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h8s2357_device)
+ADDRESS_MAP_START(h8s2357_device::map)
AM_RANGE(ram_start, 0xfffbff) AM_RAM
AM_RANGE(0xfffe80, 0xfffe81) AM_DEVREADWRITE8("timer16:3", h8_timer16_channel_device, tcr_r, tcr_w, 0xff00)
AM_RANGE(0xfffe80, 0xfffe81) AM_DEVREADWRITE8("timer16:3", h8_timer16_channel_device, tmdr_r, tmdr_w, 0x00ff)
diff --git a/src/devices/cpu/h8/h8s2357.h b/src/devices/cpu/h8/h8s2357.h
index 032062fad3e..e0e8348256d 100644
--- a/src/devices/cpu/h8/h8s2357.h
+++ b/src/devices/cpu/h8/h8s2357.h
@@ -84,7 +84,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/h8/h8s2600.cpp b/src/devices/cpu/h8/h8s2600.cpp
index 171dfef2d9b..1d2ec37775e 100644
--- a/src/devices/cpu/h8/h8s2600.cpp
+++ b/src/devices/cpu/h8/h8s2600.cpp
@@ -4,7 +4,7 @@
#include "h8s2600.h"
#include "h8s2600d.h"
-h8s2600_device::h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate) :
+h8s2600_device::h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) :
h8s2000_device(mconfig, type, tag, owner, clock, map_delegate)
{
}
diff --git a/src/devices/cpu/h8/h8s2600.h b/src/devices/cpu/h8/h8s2600.h
index e3b4b7e44a9..c1a184c9f36 100644
--- a/src/devices/cpu/h8/h8s2600.h
+++ b/src/devices/cpu/h8/h8s2600.h
@@ -20,7 +20,7 @@
class h8s2600_device : public h8s2000_device {
protected:
- h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate);
+ h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate);
virtual util::disasm_interface *create_disassembler() override;
diff --git a/src/devices/cpu/h8/h8s2655.cpp b/src/devices/cpu/h8/h8s2655.cpp
index 870902edf60..c9abdf82017 100644
--- a/src/devices/cpu/h8/h8s2655.cpp
+++ b/src/devices/cpu/h8/h8s2655.cpp
@@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(H8S2655, h8s2655_device, "h8s2655", "H8S/2655")
DEFINE_DEVICE_TYPE(H8S2653, h8s2653_device, "h8s2653", "H8S/2653")
h8s2655_device::h8s2655_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
- h8s2600_device(mconfig, type, tag, owner, clock, address_map_delegate(FUNC(h8s2655_device::map), this)),
+ h8s2600_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2655_device::map), this)),
intc(*this, "intc"),
adc(*this, "adc"),
port1(*this, "port1"),
@@ -52,7 +52,7 @@ h8s2653_device::h8s2653_device(const machine_config &mconfig, const char *tag, d
{
}
-DEVICE_ADDRESS_MAP_START(map, 16, h8s2655_device)
+ADDRESS_MAP_START(h8s2655_device::map)
AM_RANGE(0xffec00, 0xfffbff) AM_RAM
AM_RANGE(0xfffe80, 0xfffe81) AM_DEVREADWRITE8("timer16:3", h8_timer16_channel_device, tcr_r, tcr_w, 0xff00)
AM_RANGE(0xfffe80, 0xfffe81) AM_DEVREADWRITE8("timer16:3", h8_timer16_channel_device, tmdr_r, tmdr_w, 0x00ff)
diff --git a/src/devices/cpu/h8/h8s2655.h b/src/devices/cpu/h8/h8s2655.h
index a4c4b76618f..c7841af0c26 100644
--- a/src/devices/cpu/h8/h8s2655.h
+++ b/src/devices/cpu/h8/h8s2655.h
@@ -75,7 +75,7 @@ protected:
virtual void irq_setup() override;
virtual void internal_update(uint64_t current_time) override;
virtual void device_add_mconfig(machine_config &config) override;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/hmcs40/hmcs40.cpp b/src/devices/cpu/hmcs40/hmcs40.cpp
index fa874022938..e3bcf08e3e3 100644
--- a/src/devices/cpu/hmcs40/hmcs40.cpp
+++ b/src/devices/cpu/hmcs40/hmcs40.cpp
@@ -56,23 +56,23 @@ DEFINE_DEVICE_TYPE(HD44828, hd44828_device, "hd44828", "HD44828") // CMOS versio
// internal memory maps
-static ADDRESS_MAP_START(program_1k, AS_PROGRAM, 16, hmcs40_cpu_device)
+ADDRESS_MAP_START(hmcs40_cpu_device::program_1k)
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0780, 0x07bf) AM_ROM // patterns on page 30
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_2k, AS_PROGRAM, 16, hmcs40_cpu_device)
+ADDRESS_MAP_START(hmcs40_cpu_device::program_2k)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0f40, 0x0fbf) AM_ROM // patterns on page 61,62
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_80x4, AS_DATA, 8, hmcs40_cpu_device)
+ADDRESS_MAP_START(hmcs40_cpu_device::data_80x4)
AM_RANGE(0x00, 0x3f) AM_RAM
AM_RANGE(0x40, 0x4f) AM_RAM AM_MIRROR(0x30)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_160x4, AS_DATA, 8, hmcs40_cpu_device)
+ADDRESS_MAP_START(hmcs40_cpu_device::data_160x4)
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0x8f) AM_RAM AM_MIRROR(0x30)
AM_RANGE(0xc0, 0xcf) AM_RAM AM_MIRROR(0x30)
@@ -98,7 +98,7 @@ hmcs40_cpu_device::hmcs40_cpu_device(const machine_config &mconfig, device_type
}
hmcs43_cpu_device::hmcs43_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity)
- : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS43, polarity, 3 /* stack levels */, 10 /* pc width */, 11 /* prg width */, ADDRESS_MAP_NAME(program_1k), 7 /* data width */, ADDRESS_MAP_NAME(data_80x4))
+ : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS43, polarity, 3 /* stack levels */, 10 /* pc width */, 11 /* prg width */, address_map_constructor(FUNC(hmcs43_cpu_device::program_1k), this), 7 /* data width */, address_map_constructor(FUNC(hmcs43_cpu_device::data_80x4), this))
{ }
hd38750_device::hd38750_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
@@ -116,7 +116,7 @@ hd44758_device::hd44758_device(const machine_config &mconfig, const char *tag, d
hmcs44_cpu_device::hmcs44_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity)
- : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS44, polarity, 4, 11, 12, ADDRESS_MAP_NAME(program_2k), 8, ADDRESS_MAP_NAME(data_160x4))
+ : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS44, polarity, 4, 11, 12, address_map_constructor(FUNC(hmcs44_cpu_device::program_2k), this), 8, address_map_constructor(FUNC(hmcs44_cpu_device::data_160x4), this))
{ }
hd38800_device::hd38800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
@@ -134,7 +134,7 @@ hd44808_device::hd44808_device(const machine_config &mconfig, const char *tag, d
hmcs45_cpu_device::hmcs45_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity)
- : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS45, polarity, 4, 11, 12, ADDRESS_MAP_NAME(program_2k), 8, ADDRESS_MAP_NAME(data_160x4))
+ : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS45, polarity, 4, 11, 12, address_map_constructor(FUNC(hmcs45_cpu_device::program_2k), this), 8, address_map_constructor(FUNC(hmcs45_cpu_device::data_160x4), this))
{ }
hd38820_device::hd38820_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
diff --git a/src/devices/cpu/hmcs40/hmcs40.h b/src/devices/cpu/hmcs40/hmcs40.h
index ca5f238ad9a..830f5c458ba 100644
--- a/src/devices/cpu/hmcs40/hmcs40.h
+++ b/src/devices/cpu/hmcs40/hmcs40.h
@@ -127,6 +127,10 @@ public:
template <class Object> static devcb_base &set_read_d_callback(device_t &device, Object &&cb) { return downcast<hmcs40_cpu_device &>(device).m_read_d.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_write_d_callback(device_t &device, Object &&cb) { return downcast<hmcs40_cpu_device &>(device).m_write_d.set_callback(std::forward<Object>(cb)); }
+ void data_160x4(address_map &map);
+ void data_80x4(address_map &map);
+ void program_1k(address_map &map);
+ void program_2k(address_map &map);
protected:
enum
{
diff --git a/src/devices/cpu/lc8670/lc8670.cpp b/src/devices/cpu/lc8670/lc8670.cpp
index 34078ecb994..8452bab001c 100644
--- a/src/devices/cpu/lc8670/lc8670.cpp
+++ b/src/devices/cpu/lc8670/lc8670.cpp
@@ -156,7 +156,7 @@ const uint16_t lc8670_cpu_device::s_irq_vectors[] =
// Internal memory map
//**************************************************************************
-static ADDRESS_MAP_START( lc8670_internal_map, AS_DATA, 8, lc8670_cpu_device )
+ADDRESS_MAP_START(lc8670_cpu_device::lc8670_internal_map)
AM_RANGE(0x000, 0x0ff) AM_READWRITE(mram_r, mram_w)
AM_RANGE(0x100, 0x17f) AM_READWRITE(regs_r, regs_w)
AM_RANGE(0x180, 0x1ff) AM_READWRITE(xram_r, xram_w)
@@ -174,7 +174,7 @@ ADDRESS_MAP_END
lc8670_cpu_device::lc8670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, LC8670, tag, owner, clock)
, m_program_config("program", ENDIANNESS_BIG, 8, 16, 0)
- , m_data_config("data", ENDIANNESS_BIG, 8, 9, 0, ADDRESS_MAP_NAME(lc8670_internal_map))
+ , m_data_config("data", ENDIANNESS_BIG, 8, 9, 0, address_map_constructor(FUNC(lc8670_cpu_device::lc8670_internal_map), this))
, m_io_config("io", ENDIANNESS_BIG, 8, 8, 0)
, m_pc(0)
, m_ppc(0)
diff --git a/src/devices/cpu/lc8670/lc8670.h b/src/devices/cpu/lc8670/lc8670.h
index 8659ca58e06..3286c3b1504 100644
--- a/src/devices/cpu/lc8670/lc8670.h
+++ b/src/devices/cpu/lc8670/lc8670.h
@@ -89,6 +89,7 @@ public:
static void static_set_lcd_update_cb(device_t &device, lcd_update cb) { downcast<lc8670_cpu_device &>(device).m_lcd_update_func = cb; }
template <class Object> static devcb_base & static_set_bankswitch_cb(device_t &device, Object &&cb) { return downcast<lc8670_cpu_device &>(device).m_bankswitch_func.set_callback(std::forward<Object>(cb)); }
+ void lc8670_internal_map(address_map &map);
protected:
enum
{
diff --git a/src/devices/cpu/m37710/m37710.cpp b/src/devices/cpu/m37710/m37710.cpp
index 53bb01301eb..3c68bebf58e 100644
--- a/src/devices/cpu/m37710/m37710.cpp
+++ b/src/devices/cpu/m37710/m37710.cpp
@@ -72,7 +72,7 @@ DEFINE_DEVICE_TYPE(M37720S1, m37720s1_device, "m37720s1", "M37720S1")
// M37702M2: 512 bytes internal RAM, 16K internal mask ROM
// (M37702E2: same with EPROM instead of mask ROM)
-DEVICE_ADDRESS_MAP_START( map, 16, m37702m2_device )
+ADDRESS_MAP_START(m37702m2_device::map)
AM_RANGE(0x000000, 0x00007f) AM_READWRITE8(m37710_internal_r, m37710_internal_w, 0xffff)
AM_RANGE(0x000080, 0x00027f) AM_RAM
AM_RANGE(0x00c000, 0x00ffff) AM_ROM AM_REGION(M37710_INTERNAL_ROM_REGION, 0)
@@ -80,20 +80,20 @@ ADDRESS_MAP_END
// M37702S1: 512 bytes internal RAM, no internal ROM
-DEVICE_ADDRESS_MAP_START( map, 16, m37702s1_device )
+ADDRESS_MAP_START(m37702s1_device::map)
AM_RANGE(0x000000, 0x00007f) AM_READWRITE8(m37710_internal_r, m37710_internal_w, 0xffff)
AM_RANGE(0x000080, 0x00027f) AM_RAM
ADDRESS_MAP_END
// M37710S4: 2048 bytes internal RAM, no internal ROM
-DEVICE_ADDRESS_MAP_START( map, 16, m37710s4_device )
+ADDRESS_MAP_START(m37710s4_device::map)
AM_RANGE(0x000000, 0x00007f) AM_READWRITE8(m37710_internal_r, m37710_internal_w, 0xffff)
AM_RANGE(0x000080, 0x00087f) AM_RAM
ADDRESS_MAP_END
// M37720S1: 512 bytes internal RAM, no internal ROM, built-in DMA
-DEVICE_ADDRESS_MAP_START( map, 16, m37720s1_device )
+ADDRESS_MAP_START(m37720s1_device::map)
AM_RANGE(0x000000, 0x00007f) AM_READWRITE8(m37710_internal_r, m37710_internal_w, 0xffff)
AM_RANGE(0x000080, 0x00027f) AM_RAM
ADDRESS_MAP_END
@@ -101,7 +101,7 @@ ADDRESS_MAP_END
// many other combinations of RAM and ROM size exist
-m37710_cpu_device::m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate)
+m37710_cpu_device::m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate)
: cpu_device(mconfig, type, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 16, 24, 0, map_delegate)
, m_io_config("io", ENDIANNESS_LITTLE, 8, 16, 0)
@@ -116,24 +116,24 @@ m37702m2_device::m37702m2_device(const machine_config &mconfig, const char *tag,
m37702m2_device::m37702m2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
- : m37710_cpu_device(mconfig, type, tag, owner, clock, address_map_delegate(FUNC(m37702m2_device::map), this))
+ : m37710_cpu_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(m37702m2_device::map), this))
{
}
m37702s1_device::m37702s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : m37710_cpu_device(mconfig, M37702S1, tag, owner, clock, address_map_delegate(FUNC(m37702s1_device::map), this))
+ : m37710_cpu_device(mconfig, M37702S1, tag, owner, clock, address_map_constructor(FUNC(m37702s1_device::map), this))
{
}
m37710s4_device::m37710s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : m37710_cpu_device(mconfig, M37710S4, tag, owner, clock, address_map_delegate(FUNC(m37710s4_device::map), this))
+ : m37710_cpu_device(mconfig, M37710S4, tag, owner, clock, address_map_constructor(FUNC(m37710s4_device::map), this))
{
}
m37720s1_device::m37720s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : m37710_cpu_device(mconfig, M37720S1, tag, owner, clock, address_map_delegate(FUNC(m37720s1_device::map), this))
+ : m37710_cpu_device(mconfig, M37720S1, tag, owner, clock, address_map_constructor(FUNC(m37720s1_device::map), this))
{
}
diff --git a/src/devices/cpu/m37710/m37710.h b/src/devices/cpu/m37710/m37710.h
index 4a52bfd8bcc..102b137e2e6 100644
--- a/src/devices/cpu/m37710/m37710.h
+++ b/src/devices/cpu/m37710/m37710.h
@@ -105,7 +105,7 @@ public:
protected:
// construction/destruction
- m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_delegate map_delegate);
+ m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate);
// device-level overrides
virtual void device_start() override;
@@ -2027,7 +2027,7 @@ public:
// construction/destruction
m37702s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
};
class m37702m2_device : public m37710_cpu_device
@@ -2037,7 +2037,7 @@ public:
m37702m2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
m37702m2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
};
class m37710s4_device : public m37710_cpu_device
@@ -2046,7 +2046,7 @@ public:
// construction/destruction
m37710s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
};
class m37720s1_device : public m37710_cpu_device
@@ -2055,7 +2055,7 @@ public:
// construction/destruction
m37720s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
protected:
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
};
DECLARE_DEVICE_TYPE(M37702M2, m37702m2_device)
diff --git a/src/devices/cpu/m6502/m3745x.cpp b/src/devices/cpu/m6502/m3745x.cpp
index 255de38af76..41b38c579ce 100644
--- a/src/devices/cpu/m6502/m3745x.cpp
+++ b/src/devices/cpu/m6502/m3745x.cpp
@@ -496,7 +496,7 @@ WRITE8_MEMBER(m3745x_device::adc_w)
}
/* M37450 - baseline for this familiy */
-static ADDRESS_MAP_START( m37450_map, AS_PROGRAM, 8, m37450_device )
+ADDRESS_MAP_START(m37450_device::m37450_map)
AM_RANGE(0x0000, 0x00bf) AM_RAM
AM_RANGE(0x00d6, 0x00dd) AM_READWRITE(ports_r, ports_w)
AM_RANGE(0x00e2, 0x00e3) AM_READWRITE(adc_r, adc_w)
@@ -510,6 +510,6 @@ m37450_device::m37450_device(const machine_config &mconfig, const char *tag, dev
}
m37450_device::m37450_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
- m3745x_device(mconfig, type, tag, owner, clock, ADDRESS_MAP_NAME(m37450_map))
+ m3745x_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(m37450_device::m37450_map), this))
{
}
diff --git a/src/devices/cpu/m6502/m3745x.h b/src/devices/cpu/m6502/m3745x.h
index 6805ee9e387..872d8d842ad 100644
--- a/src/devices/cpu/m6502/m3745x.h
+++ b/src/devices/cpu/m6502/m3745x.h
@@ -146,6 +146,7 @@ class m37450_device : public m3745x_device
public:
m37450_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void m37450_map(address_map &map);
protected:
m37450_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
};
diff --git a/src/devices/cpu/m6502/m5074x.cpp b/src/devices/cpu/m6502/m5074x.cpp
index 9498774c62d..ead58716b35 100644
--- a/src/devices/cpu/m6502/m5074x.cpp
+++ b/src/devices/cpu/m6502/m5074x.cpp
@@ -482,7 +482,7 @@ WRITE8_MEMBER(m5074x_device::tmrirq_w)
}
/* M50740 - baseline for this familiy */
-static ADDRESS_MAP_START( m50740_map, AS_PROGRAM, 8, m50740_device )
+ADDRESS_MAP_START(m50740_device::m50740_map)
AM_RANGE(0x0000, 0x005f) AM_RAM
AM_RANGE(0x00e0, 0x00e9) AM_READWRITE(ports_r, ports_w)
AM_RANGE(0x00f9, 0x00ff) AM_READWRITE(tmrirq_r, tmrirq_w)
@@ -495,12 +495,12 @@ m50740_device::m50740_device(const machine_config &mconfig, const char *tag, dev
}
m50740_device::m50740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
- m5074x_device(mconfig, type, tag, owner, clock, ADDRESS_MAP_NAME(m50740_map))
+ m5074x_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(m50740_device::m50740_map), this))
{
}
/* M50741 - 50740 with a larger internal ROM */
-static ADDRESS_MAP_START( m50741_map, AS_PROGRAM, 8, m50741_device )
+ADDRESS_MAP_START(m50741_device::m50741_map)
AM_RANGE(0x0000, 0x005f) AM_RAM
AM_RANGE(0x00e0, 0x00e9) AM_READWRITE(ports_r, ports_w)
AM_RANGE(0x00f9, 0x00ff) AM_READWRITE(tmrirq_r, tmrirq_w)
@@ -513,6 +513,6 @@ m50741_device::m50741_device(const machine_config &mconfig, const char *tag, dev
}
m50741_device::m50741_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
- m5074x_device(mconfig, type, tag, owner, clock, ADDRESS_MAP_NAME(m50741_map))
+ m5074x_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(m50741_device::m50741_map), this))
{
}
diff --git a/src/devices/cpu/m6502/m5074x.h b/src/devices/cpu/m6502/m5074x.h
index ee3ff0c0e23..c9f7ddb4ba6 100644
--- a/src/devices/cpu/m6502/m5074x.h
+++ b/src/devices/cpu/m6502/m5074x.h
@@ -124,6 +124,7 @@ class m50740_device : public m5074x_device
public:
m50740_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void m50740_map(address_map &map);
protected:
m50740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
};
@@ -133,6 +134,7 @@ class m50741_device : public m5074x_device
public:
m50741_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void m50741_map(address_map &map);
protected:
m50741_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
};
diff --git a/src/devices/cpu/m6502/n2a03.cpp b/src/devices/cpu/m6502/n2a03.cpp
index c43d388655a..a7c182304b8 100644
--- a/src/devices/cpu/m6502/n2a03.cpp
+++ b/src/devices/cpu/m6502/n2a03.cpp
@@ -40,7 +40,7 @@ WRITE8_MEMBER(n2a03_device::psg1_4017_w)
// input port 0x4017 ^ ( APU_IRQCTRL )
// is there a fall through where every write is seen by other hw, or do these addresses really not touch the APU?? APU_IRQCTRL can definitely be written by can it be read back?
-static ADDRESS_MAP_START( n2a03_map, AS_PROGRAM, 8, n2a03_device )
+ADDRESS_MAP_START(n2a03_device::n2a03_map)
AM_RANGE(0x4000, 0x4013) AM_DEVREADWRITE("nesapu", nesapu_device, read, write)
AM_RANGE(0x4014, 0x4014) AM_READ(psg1_4014_r) // AM_WRITE(sprite_dma_0_w)
AM_RANGE(0x4015, 0x4015) AM_READWRITE(psg1_4015_r, psg1_4015_w) /* PSG status / first control register */
@@ -54,7 +54,7 @@ n2a03_device::n2a03_device(const machine_config &mconfig, const char *tag, devic
m6502_device(mconfig, N2A03, tag, owner, clock),
m_apu(*this, "nesapu")
{
- program_config.m_internal_map = ADDRESS_MAP_NAME(n2a03_map);
+ program_config.m_internal_map = address_map_constructor(FUNC(n2a03_device::n2a03_map), this);
}
util::disasm_interface *n2a03_device::create_disassembler()
diff --git a/src/devices/cpu/m6502/n2a03.h b/src/devices/cpu/m6502/n2a03.h
index 8cf4d9ec4bb..3f45b2fbb96 100644
--- a/src/devices/cpu/m6502/n2a03.h
+++ b/src/devices/cpu/m6502/n2a03.h
@@ -32,6 +32,7 @@ public:
required_device<nesapu_device> m_apu; // public for vgmplay
+ void n2a03_map(address_map &map);
protected:
virtual void device_start() override;
diff --git a/src/devices/cpu/m6800/m6800.cpp b/src/devices/cpu/m6800/m6800.cpp
index 13cc917a463..85690eff57d 100644
--- a/src/devices/cpu/m6800/m6800.cpp
+++ b/src/devices/cpu/m6800/m6800.cpp
@@ -26,7 +26,7 @@ History
990319 HJB
Fixed wrong LSB/MSB order for push/pull word.
- Subtract .extra_cycles at the beginning/end of the exectuion loops.
+ Subtract .extra_cycles at the beginning/end of the exectution loops.
990316 HJB
Renamed to 6800, since that's the basic CPU.
@@ -329,7 +329,7 @@ DEFINE_DEVICE_TYPE(NSC8105, nsc8105_cpu_device, "nsc8105", "NSC8105")
m6800_cpu_device::m6800_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : m6800_cpu_device(mconfig, M6800, tag, owner, clock, m6800_insn, cycles_6800, nullptr)
+ : m6800_cpu_device(mconfig, M6800, tag, owner, clock, m6800_insn, cycles_6800, address_map_constructor())
{
}
@@ -348,7 +348,7 @@ m6802_cpu_device::m6802_cpu_device(const machine_config &mconfig, const char *ta
}
m6802_cpu_device::m6802_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const op_func *insn, const uint8_t *cycles)
- : m6800_cpu_device(mconfig, type, tag, owner, clock, insn, cycles, nullptr)
+ : m6800_cpu_device(mconfig, type, tag, owner, clock, insn, cycles, address_map_constructor())
{
}
diff --git a/src/devices/cpu/m6800/m6801.cpp b/src/devices/cpu/m6800/m6801.cpp
index e9739d302f3..a9a2801f272 100644
--- a/src/devices/cpu/m6800/m6801.cpp
+++ b/src/devices/cpu/m6800/m6801.cpp
@@ -237,7 +237,7 @@ const m6800_cpu_device::op_func m6801_cpu_device::hd63701_insn[0x100] = {
};
-static ADDRESS_MAP_START(m6803_mem, AS_PROGRAM, 8, m6801_cpu_device)
+ADDRESS_MAP_START(m6801_cpu_device::m6803_mem)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r, m6801_io_w)
AM_RANGE(0x0020, 0x007f) AM_NOP /* unused */
AM_RANGE(0x0080, 0x00ff) AM_RAM /* 6803 internal RAM */
@@ -252,7 +252,7 @@ DEFINE_DEVICE_TYPE(HD6303R, hd6303r_cpu_device, "hd6303r", "HD6303R")
DEFINE_DEVICE_TYPE(HD6303Y, hd6303y_cpu_device, "hd6303y", "HD6303Y")
m6801_cpu_device::m6801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : m6801_cpu_device(mconfig, M6801, tag, owner, clock, m6803_insn, cycles_6803, nullptr)
+ : m6801_cpu_device(mconfig, M6801, tag, owner, clock, m6803_insn, cycles_6803, address_map_constructor())
{
}
@@ -265,7 +265,7 @@ m6801_cpu_device::m6801_cpu_device(const machine_config &mconfig, device_type ty
}
m6803_cpu_device::m6803_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : m6801_cpu_device(mconfig, M6803, tag, owner, clock, m6803_insn, cycles_6803, ADDRESS_MAP_NAME(m6803_mem))
+ : m6801_cpu_device(mconfig, M6803, tag, owner, clock, m6803_insn, cycles_6803, address_map_constructor(FUNC(m6803_cpu_device::m6803_mem), this))
{
}
diff --git a/src/devices/cpu/m6800/m6801.h b/src/devices/cpu/m6800/m6801.h
index f071e3d75c5..08a75439827 100644
--- a/src/devices/cpu/m6800/m6801.h
+++ b/src/devices/cpu/m6800/m6801.h
@@ -71,8 +71,9 @@ public:
void m6801_clock_serial();
+ void m6803_mem(address_map &map);
protected:
- m6801_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles, address_map_constructor internal = nullptr);
+ m6801_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles, address_map_constructor internal = address_map_constructor());
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/m6805/m6805.cpp b/src/devices/cpu/m6805/m6805.cpp
index 0b8a9b42eb1..6cf6956cf82 100644
--- a/src/devices/cpu/m6805/m6805.cpp
+++ b/src/devices/cpu/m6805/m6805.cpp
@@ -251,7 +251,7 @@ m6805_base_device::m6805_base_device(
uint32_t clock,
device_type const type,
configuration_params const &params,
- address_map_delegate internal_map)
+ address_map_constructor internal_map)
: cpu_device(mconfig, type, tag, owner, clock)
, m_params(params)
, m_program_config("program", ENDIANNESS_BIG, 8, params.m_addr_width, 0, internal_map)
diff --git a/src/devices/cpu/m6805/m6805.h b/src/devices/cpu/m6805/m6805.h
index 643b1617991..55a15a9e849 100644
--- a/src/devices/cpu/m6805/m6805.h
+++ b/src/devices/cpu/m6805/m6805.h
@@ -100,7 +100,7 @@ protected:
uint32_t clock,
device_type const type,
configuration_params const &params,
- address_map_delegate internal_map);
+ address_map_constructor internal_map);
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/m6805/m68705.cpp b/src/devices/cpu/m6805/m68705.cpp
index 08e40e41d9a..e0133bf70ab 100644
--- a/src/devices/cpu/m6805/m68705.cpp
+++ b/src/devices/cpu/m6805/m68705.cpp
@@ -193,7 +193,7 @@ m68705_device::m68705_device(
u32 clock,
device_type type,
u32 addr_width,
- address_map_delegate internal_map)
+ address_map_constructor internal_map)
: m6805_base_device(
mconfig,
tag,
@@ -647,7 +647,7 @@ void m68705_device::add_eprom_state()
* M68705Px family
****************************************************************************/
-DEVICE_ADDRESS_MAP_START( p_map, 8, m68705p_device )
+ADDRESS_MAP_START(m68705p_device::p_map)
ADDRESS_MAP_GLOBAL_MASK(0x07ff)
ADDRESS_MAP_UNMAP_HIGH
@@ -676,7 +676,7 @@ m68705p_device::m68705p_device(
device_t *owner,
u32 clock,
device_type type)
- : m68705_device(mconfig, tag, owner, clock, type, 11, address_map_delegate(FUNC(m68705p_device::p_map), this))
+ : m68705_device(mconfig, tag, owner, clock, type, 11, address_map_constructor(FUNC(m68705p_device::p_map), this))
{
set_port_open_drain<0>(true); // Port A is open drain with internal pull-ups
set_port_mask<2>(0xf0); // Port C is four bits wide
@@ -708,7 +708,7 @@ util::disasm_interface *m68705p_device::create_disassembler()
* M68705Ux family
****************************************************************************/
-DEVICE_ADDRESS_MAP_START( u_map, 8, m68705u_device )
+ADDRESS_MAP_START(m68705u_device::u_map)
ADDRESS_MAP_GLOBAL_MASK(0x0fff)
ADDRESS_MAP_UNMAP_HIGH
@@ -738,7 +738,7 @@ m68705u_device::m68705u_device(
device_t *owner,
u32 clock,
device_type type,
- address_map_delegate internal_map)
+ address_map_constructor internal_map)
: m68705_device(mconfig, tag, owner, clock, type, 12, internal_map)
{
set_port_open_drain<0>(true); // Port A is open drain with internal pull-ups
@@ -750,7 +750,7 @@ m68705u_device::m68705u_device(
device_t *owner,
u32 clock,
device_type type)
- : m68705u_device(mconfig, tag, owner, clock, type, address_map_delegate(FUNC(m68705u_device::u_map), this))
+ : m68705u_device(mconfig, tag, owner, clock, type, address_map_constructor(FUNC(m68705u_device::u_map), this))
{
}
@@ -782,7 +782,7 @@ util::disasm_interface *m68705u_device::create_disassembler()
* M68705Rx family
****************************************************************************/
-DEVICE_ADDRESS_MAP_START( r_map, 8, m68705r_device )
+ADDRESS_MAP_START(m68705r_device::r_map)
ADDRESS_MAP_GLOBAL_MASK(0x0fff)
ADDRESS_MAP_UNMAP_HIGH
@@ -814,7 +814,7 @@ m68705r_device::m68705r_device(
device_t *owner,
u32 clock,
device_type type)
- : m68705u_device(mconfig, tag, owner, clock, type, address_map_delegate(FUNC(m68705r_device::r_map), this))
+ : m68705u_device(mconfig, tag, owner, clock, type, address_map_constructor(FUNC(m68705r_device::r_map), this))
{
}
diff --git a/src/devices/cpu/m6805/m68705.h b/src/devices/cpu/m6805/m68705.h
index 08701917b47..a93b32902df 100644
--- a/src/devices/cpu/m6805/m68705.h
+++ b/src/devices/cpu/m6805/m68705.h
@@ -98,7 +98,7 @@ protected:
u32 clock,
device_type type,
u32 addr_width,
- address_map_delegate internal_map);
+ address_map_constructor internal_map);
template <offs_t B> DECLARE_READ8_MEMBER(eprom_r);
template <offs_t B> DECLARE_WRITE8_MEMBER(eprom_w);
@@ -191,7 +191,7 @@ public:
DECLARE_WRITE8_MEMBER(pc_w) { port_input_w<2>(space, offset, data, mem_mask); }
protected:
- DECLARE_ADDRESS_MAP(p_map, 8);
+ void p_map(address_map &map);
m68705p_device(
machine_config const &mconfig,
@@ -217,7 +217,7 @@ public:
DECLARE_WRITE8_MEMBER(pd_w) { port_input_w<3>(space, offset, data, mem_mask); } // TODO: PD6 is also /INT2
protected:
- DECLARE_ADDRESS_MAP(u_map, 8);
+ void u_map(address_map &map);
m68705u_device(
machine_config const &mconfig,
@@ -225,7 +225,7 @@ protected:
device_t *owner,
u32 clock,
device_type type,
- address_map_delegate internal_map);
+ address_map_constructor internal_map);
m68705u_device(
machine_config const &mconfig,
char const *tag,
@@ -247,7 +247,7 @@ public:
// TODO: voltage inputs for ADC (shared with digital port D pins)
protected:
- DECLARE_ADDRESS_MAP(r_map, 8);
+ void r_map(address_map &map);
m68705r_device(
machine_config const &mconfig,
diff --git a/src/devices/cpu/m6805/m68hc05.cpp b/src/devices/cpu/m6805/m68hc05.cpp
index 24580270a9c..099d31ab1f0 100644
--- a/src/devices/cpu/m6805/m68hc05.cpp
+++ b/src/devices/cpu/m6805/m68hc05.cpp
@@ -106,7 +106,7 @@ m68hc05_device::m68hc05_device(
device_t *owner,
u32 clock,
device_type type,
- address_map_delegate internal_map)
+ address_map_constructor internal_map)
: m6805_base_device(
mconfig,
tag,
@@ -707,7 +707,7 @@ m68hc705_device::m68hc705_device(
device_t *owner,
u32 clock,
device_type type,
- address_map_delegate internal_map)
+ address_map_constructor internal_map)
: m68hc05_device(mconfig, tag, owner, clock, type, internal_map)
{
}
@@ -718,7 +718,7 @@ m68hc705_device::m68hc705_device(
* MC68HC05C4 device
****************************************************************************/
-DEVICE_ADDRESS_MAP_START( c4_map, 8, m68hc05c4_device )
+ADDRESS_MAP_START(m68hc05c4_device::c4_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
ADDRESS_MAP_UNMAP_HIGH
@@ -756,7 +756,7 @@ m68hc05c4_device::m68hc05c4_device(machine_config const &mconfig, char const *ta
owner,
clock,
M68HC05C4,
- address_map_delegate(FUNC(m68hc05c4_device::c4_map), this))
+ address_map_constructor(FUNC(m68hc05c4_device::c4_map), this))
{
set_port_bits(std::array<u8, PORT_COUNT>{{ 0xff, 0xff, 0xff, 0xbf }});
}
@@ -783,7 +783,7 @@ util::disasm_interface *m68hc05c4_device::create_disassembler()
* MC68HC05C8 device
****************************************************************************/
-DEVICE_ADDRESS_MAP_START( c8_map, 8, m68hc05c8_device )
+ADDRESS_MAP_START(m68hc05c8_device::c8_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
ADDRESS_MAP_UNMAP_HIGH
@@ -820,7 +820,7 @@ m68hc05c8_device::m68hc05c8_device(machine_config const &mconfig, char const *ta
owner,
clock,
M68HC05C8,
- address_map_delegate(FUNC(m68hc05c8_device::c8_map), this))
+ address_map_constructor(FUNC(m68hc05c8_device::c8_map), this))
{
set_port_bits(std::array<u8, PORT_COUNT>{{ 0xff, 0xff, 0xff, 0xbf }});
}
@@ -847,7 +847,7 @@ util::disasm_interface *m68hc05c8_device::create_disassembler()
* MC68HC705C8A device
****************************************************************************/
-DEVICE_ADDRESS_MAP_START( c8a_map, 8, m68hc705c8a_device )
+ADDRESS_MAP_START(m68hc705c8a_device::c8a_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
ADDRESS_MAP_UNMAP_HIGH
@@ -890,7 +890,7 @@ m68hc705c8a_device::m68hc705c8a_device(machine_config const &mconfig, char const
owner,
clock,
M68HC705C8A,
- address_map_delegate(FUNC(m68hc705c8a_device::c8a_map), this))
+ address_map_constructor(FUNC(m68hc705c8a_device::c8a_map), this))
{
set_port_bits(std::array<u8, PORT_COUNT>{{ 0xff, 0xff, 0xff, 0xbf }});
}
diff --git a/src/devices/cpu/m6805/m68hc05.h b/src/devices/cpu/m6805/m68hc05.h
index 355a675d803..772df2a4689 100644
--- a/src/devices/cpu/m6805/m68hc05.h
+++ b/src/devices/cpu/m6805/m68hc05.h
@@ -108,7 +108,7 @@ protected:
device_t *owner,
u32 clock,
device_type type,
- address_map_delegate internal_map);
+ address_map_constructor internal_map);
void set_port_bits(std::array<u8, PORT_COUNT> const &bits);
void set_port_interrupt(std::array<u8, PORT_COUNT> const &interrupt);
@@ -208,7 +208,7 @@ protected:
device_t *owner,
u32 clock,
device_type type,
- address_map_delegate internal_map);
+ address_map_constructor internal_map);
};
@@ -220,7 +220,7 @@ public:
m68hc05c4_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock);
protected:
- DECLARE_ADDRESS_MAP(c4_map, 8);
+ void c4_map(address_map &map);
virtual void device_start() override;
@@ -236,7 +236,7 @@ public:
m68hc05c8_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock);
protected:
- DECLARE_ADDRESS_MAP(c8_map, 8);
+ void c8_map(address_map &map);
virtual void device_start() override;
@@ -252,7 +252,7 @@ public:
m68hc705c8a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock);
protected:
- DECLARE_ADDRESS_MAP(c8a_map, 8);
+ void c8a_map(address_map &map);
virtual tiny_rom_entry const *device_rom_region() const override;
diff --git a/src/devices/cpu/mb86235/mb86235.cpp b/src/devices/cpu/mb86235/mb86235.cpp
index 77a24bc43a4..978bcac71db 100644
--- a/src/devices/cpu/mb86235/mb86235.cpp
+++ b/src/devices/cpu/mb86235/mb86235.cpp
@@ -33,11 +33,11 @@
DEFINE_DEVICE_TYPE(MB86235, mb86235_device, "mb86235", "MB86235")
-static ADDRESS_MAP_START(internal_abus, AS_DATA, 32, mb86235_device)
+ADDRESS_MAP_START(mb86235_device::internal_abus)
AM_RANGE(0x000000, 0x0003ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(internal_bbus, AS_IO, 32, mb86235_device)
+ADDRESS_MAP_START(mb86235_device::internal_bbus)
AM_RANGE(0x000000, 0x0003ff) AM_RAM
ADDRESS_MAP_END
@@ -208,8 +208,8 @@ void mb86235_cpu_device::execute_set_input(int irqline, int state)
mb86235_device::mb86235_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, MB86235, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 64, 32, -3)
- , m_dataa_config("data_a", ENDIANNESS_LITTLE, 32, 24, -2, ADDRESS_MAP_NAME(internal_abus))
- , m_datab_config("data_b", ENDIANNESS_LITTLE, 32, 10, -2, ADDRESS_MAP_NAME(internal_bbus))
+ , m_dataa_config("data_a", ENDIANNESS_LITTLE, 32, 24, -2, address_map_constructor(FUNC(mb86235_device::internal_abus), this))
+ , m_datab_config("data_b", ENDIANNESS_LITTLE, 32, 10, -2, address_map_constructor(FUNC(mb86235_device::internal_bbus), this))
, m_cache(CACHE_SIZE + sizeof(mb86235_internal_state))
, m_drcuml(nullptr)
, m_drcfe(nullptr)
diff --git a/src/devices/cpu/mb86235/mb86235.h b/src/devices/cpu/mb86235/mb86235.h
index f1845bfce6f..e1268cc7e64 100644
--- a/src/devices/cpu/mb86235/mb86235.h
+++ b/src/devices/cpu/mb86235/mb86235.h
@@ -52,6 +52,8 @@ public:
static constexpr int FIFOOUT0_SIZE = 16;
static constexpr int FIFOOUT1_SIZE = 16;
+ void internal_abus(address_map &map);
+ void internal_bbus(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/mb88xx/mb88xx.cpp b/src/devices/cpu/mb88xx/mb88xx.cpp
index 1473a3452ae..033f14494ef 100644
--- a/src/devices/cpu/mb88xx/mb88xx.cpp
+++ b/src/devices/cpu/mb88xx/mb88xx.cpp
@@ -77,39 +77,39 @@ DEFINE_DEVICE_TYPE(MB8844, mb8844_cpu_device, "mb8844", "MB8844")
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(program_9bit, AS_PROGRAM, 8, mb88_cpu_device)
+ADDRESS_MAP_START(mb88_cpu_device::program_9bit)
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_10bit, AS_PROGRAM, 8, mb88_cpu_device)
+ADDRESS_MAP_START(mb88_cpu_device::program_10bit)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_11bit, AS_PROGRAM, 8, mb88_cpu_device)
+ADDRESS_MAP_START(mb88_cpu_device::program_11bit)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_4bit, AS_DATA, 8, mb88_cpu_device)
+ADDRESS_MAP_START(mb88_cpu_device::data_4bit)
AM_RANGE(0x00, 0x0f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_5bit, AS_DATA, 8, mb88_cpu_device)
+ADDRESS_MAP_START(mb88_cpu_device::data_5bit)
AM_RANGE(0x00, 0x1f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_6bit, AS_DATA, 8, mb88_cpu_device)
+ADDRESS_MAP_START(mb88_cpu_device::data_6bit)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_7bit, AS_DATA, 8, mb88_cpu_device)
+ADDRESS_MAP_START(mb88_cpu_device::data_7bit)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
mb88_cpu_device::mb88_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width)
: cpu_device(mconfig, type, tag, owner, clock)
- , m_program_config("program", ENDIANNESS_BIG, 8, program_width, 0, (program_width == 9) ? ADDRESS_MAP_NAME(program_9bit) : (program_width == 10) ? ADDRESS_MAP_NAME(program_10bit) : ADDRESS_MAP_NAME(program_11bit))
- , m_data_config("data", ENDIANNESS_BIG, 8, data_width, 0, (data_width == 4) ? ADDRESS_MAP_NAME(data_4bit) : (data_width == 5) ? ADDRESS_MAP_NAME(data_5bit) : (data_width == 6) ? ADDRESS_MAP_NAME(data_6bit) : ADDRESS_MAP_NAME(data_7bit))
+ , m_program_config("program", ENDIANNESS_BIG, 8, program_width, 0, (program_width == 9) ? address_map_constructor(FUNC(mb88_cpu_device::program_9bit), this) : (program_width == 10) ? address_map_constructor(FUNC(mb88_cpu_device::program_10bit), this) : address_map_constructor(FUNC(mb88_cpu_device::program_11bit), this))
+ , m_data_config("data", ENDIANNESS_BIG, 8, data_width, 0, (data_width == 4) ? address_map_constructor(FUNC(mb88_cpu_device::data_4bit), this) : (data_width == 5) ? address_map_constructor(FUNC(mb88_cpu_device::data_5bit), this) : (data_width == 6) ? address_map_constructor(FUNC(mb88_cpu_device::data_6bit), this) : address_map_constructor(FUNC(mb88_cpu_device::data_7bit), this))
, m_PLA(nullptr)
, m_read_k(*this)
, m_write_o(*this)
diff --git a/src/devices/cpu/mb88xx/mb88xx.h b/src/devices/cpu/mb88xx/mb88xx.h
index 0be1ac9b06e..e9e7c5567eb 100644
--- a/src/devices/cpu/mb88xx/mb88xx.h
+++ b/src/devices/cpu/mb88xx/mb88xx.h
@@ -137,6 +137,13 @@ public:
DECLARE_WRITE_LINE_MEMBER( clock_w );
+ void data_4bit(address_map &map);
+ void data_5bit(address_map &map);
+ void data_6bit(address_map &map);
+ void data_7bit(address_map &map);
+ void program_10bit(address_map &map);
+ void program_11bit(address_map &map);
+ void program_9bit(address_map &map);
protected:
mb88_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width);
diff --git a/src/devices/cpu/mcs48/mcs48.cpp b/src/devices/cpu/mcs48/mcs48.cpp
index 1d8c9619732..ee661878900 100644
--- a/src/devices/cpu/mcs48/mcs48.cpp
+++ b/src/devices/cpu/mcs48/mcs48.cpp
@@ -167,27 +167,27 @@ DEFINE_DEVICE_TYPE(M58715, m58715_device, "m58715", "M58715")
***************************************************************************/
/* FIXME: the memory maps should probably support rom banking for EA */
-static ADDRESS_MAP_START(program_10bit, AS_PROGRAM, 8, mcs48_cpu_device)
+ADDRESS_MAP_START(mcs48_cpu_device::program_10bit)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_11bit, AS_PROGRAM, 8, mcs48_cpu_device)
+ADDRESS_MAP_START(mcs48_cpu_device::program_11bit)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_12bit, AS_PROGRAM, 8, mcs48_cpu_device)
+ADDRESS_MAP_START(mcs48_cpu_device::program_12bit)
AM_RANGE(0x000, 0xfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_6bit, AS_DATA, 8, mcs48_cpu_device)
+ADDRESS_MAP_START(mcs48_cpu_device::data_6bit)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_7bit, AS_DATA, 8, mcs48_cpu_device)
+ADDRESS_MAP_START(mcs48_cpu_device::data_7bit)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_8bit, AS_DATA, 8, mcs48_cpu_device)
+ADDRESS_MAP_START(mcs48_cpu_device::data_8bit)
AM_RANGE(0x00, 0xff) AM_RAM
ADDRESS_MAP_END
@@ -195,9 +195,9 @@ ADDRESS_MAP_END
mcs48_cpu_device::mcs48_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int rom_size, int ram_size, uint8_t feature_mask, const mcs48_cpu_device::mcs48_ophandler *opcode_table)
: cpu_device(mconfig, type, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 8, (feature_mask & MB_FEATURE) != 0 ? 12 : 11, 0
- , (rom_size == 1024) ? ADDRESS_MAP_NAME(program_10bit) : (rom_size == 2048) ? ADDRESS_MAP_NAME(program_11bit) : (rom_size == 4096) ? ADDRESS_MAP_NAME(program_12bit) : nullptr)
+ , (rom_size == 1024) ? address_map_constructor(FUNC(mcs48_cpu_device::program_10bit), this) : (rom_size == 2048) ? address_map_constructor(FUNC(mcs48_cpu_device::program_11bit), this) : (rom_size == 4096) ? address_map_constructor(FUNC(mcs48_cpu_device::program_12bit), this) : address_map_constructor())
, m_data_config("data", ENDIANNESS_LITTLE, 8, ( ( ram_size == 64 ) ? 6 : ( ( ram_size == 128 ) ? 7 : 8 ) ), 0
- , (ram_size == 64) ? ADDRESS_MAP_NAME(data_6bit) : (ram_size == 128) ? ADDRESS_MAP_NAME(data_7bit) : ADDRESS_MAP_NAME(data_8bit))
+ , (ram_size == 64) ? address_map_constructor(FUNC(mcs48_cpu_device::data_6bit), this) : (ram_size == 128) ? address_map_constructor(FUNC(mcs48_cpu_device::data_7bit), this) : address_map_constructor(FUNC(mcs48_cpu_device::data_8bit), this))
, m_io_config("io", ENDIANNESS_LITTLE, 8, 8, 0)
, m_port_in_cb{{*this}, {*this}}
, m_port_out_cb{{*this}, {*this}}
diff --git a/src/devices/cpu/mcs48/mcs48.h b/src/devices/cpu/mcs48/mcs48.h
index e44305bb7b5..464d3e010e1 100644
--- a/src/devices/cpu/mcs48/mcs48.h
+++ b/src/devices/cpu/mcs48/mcs48.h
@@ -153,6 +153,12 @@ public:
DECLARE_READ8_MEMBER(p1_r);
DECLARE_READ8_MEMBER(p2_r);
+ void data_6bit(address_map &map);
+ void data_7bit(address_map &map);
+ void data_8bit(address_map &map);
+ void program_10bit(address_map &map);
+ void program_11bit(address_map &map);
+ void program_12bit(address_map &map);
protected:
typedef int (mcs48_cpu_device::*mcs48_ophandler)();
diff --git a/src/devices/cpu/mcs51/mcs51.cpp b/src/devices/cpu/mcs51/mcs51.cpp
index baccf731e14..38310719aca 100644
--- a/src/devices/cpu/mcs51/mcs51.cpp
+++ b/src/devices/cpu/mcs51/mcs51.cpp
@@ -242,20 +242,20 @@ DEFINE_DEVICE_TYPE(DS5002FP, ds5002fp_device, "ds5002fp", "DS5002FP")
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(program_12bit, AS_PROGRAM, 8, mcs51_cpu_device)
+ADDRESS_MAP_START(mcs51_cpu_device::program_12bit)
AM_RANGE(0x00, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_13bit, AS_PROGRAM, 8, mcs51_cpu_device)
+ADDRESS_MAP_START(mcs51_cpu_device::program_13bit)
AM_RANGE(0x00, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_7bit, AS_DATA, 8, mcs51_cpu_device)
+ADDRESS_MAP_START(mcs51_cpu_device::data_7bit)
AM_RANGE(0x0000, 0x007f) AM_RAM AM_SHARE("scratchpad")
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("sfr_ram") /* SFR */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_8bit, AS_DATA, 8, mcs51_cpu_device)
+ADDRESS_MAP_START(mcs51_cpu_device::data_8bit)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("scratchpad")
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("sfr_ram") /* SFR */
ADDRESS_MAP_END
@@ -265,9 +265,9 @@ ADDRESS_MAP_END
mcs51_cpu_device::mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features)
: cpu_device(mconfig, type, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0,
- (program_width == 12) ? ADDRESS_MAP_NAME(program_12bit) : (program_width == 13) ? ADDRESS_MAP_NAME(program_13bit) : nullptr)
+ (program_width == 12) ? address_map_constructor(FUNC(mcs51_cpu_device::program_12bit), this) : (program_width == 13) ? address_map_constructor(FUNC(mcs51_cpu_device::program_13bit), this) : address_map_constructor())
, m_data_config("data", ENDIANNESS_LITTLE, 8, 9, 0,
- (data_width == 7) ? ADDRESS_MAP_NAME(data_7bit) : (data_width == 8) ? ADDRESS_MAP_NAME(data_8bit) : nullptr )
+ (data_width == 7) ? address_map_constructor(FUNC(mcs51_cpu_device::data_7bit), this) : (data_width == 8) ? address_map_constructor(FUNC(mcs51_cpu_device::data_8bit), this) : address_map_constructor())
, m_io_config("io", ENDIANNESS_LITTLE, 8, 18, 0)
, m_pc(0)
, m_features(features)
diff --git a/src/devices/cpu/mcs51/mcs51.h b/src/devices/cpu/mcs51/mcs51.h
index 698b424cf6d..f03eb6fec2f 100644
--- a/src/devices/cpu/mcs51/mcs51.h
+++ b/src/devices/cpu/mcs51/mcs51.h
@@ -89,6 +89,10 @@ public:
template<class _Object> static devcb_base & set_serial_rx_cb(device_t &device, _Object object) { return downcast<mcs51_cpu_device &>(device).m_serial_rx_cb.set_callback(object); }
template<class _Object> static devcb_base & set_serial_tx_cb(device_t &device, _Object object) { return downcast<mcs51_cpu_device &>(device).m_serial_tx_cb.set_callback(object); }
+ void data_7bit(address_map &map);
+ void data_8bit(address_map &map);
+ void program_12bit(address_map &map);
+ void program_13bit(address_map &map);
protected:
// construction/destruction
mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0);
diff --git a/src/devices/cpu/melps4/m58846.cpp b/src/devices/cpu/melps4/m58846.cpp
index 48c75803439..5813f6714ce 100644
--- a/src/devices/cpu/melps4/m58846.cpp
+++ b/src/devices/cpu/melps4/m58846.cpp
@@ -14,19 +14,19 @@ DEFINE_DEVICE_TYPE(M58846, m58846_device, "m58846", "M58846")
// internal memory maps
-static ADDRESS_MAP_START(program_2kx9, AS_PROGRAM, 16, m58846_device)
+ADDRESS_MAP_START(m58846_device::program_2kx9)
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_128x4, AS_DATA, 8, m58846_device)
+ADDRESS_MAP_START(m58846_device::data_128x4)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
// device definitions
m58846_device::m58846_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : melps4_cpu_device(mconfig, M58846, tag, owner, clock, 11, ADDRESS_MAP_NAME(program_2kx9), 7, ADDRESS_MAP_NAME(data_128x4), 12 /* number of D pins */, 2 /* subroutine page */, 1 /* interrupt page */), m_timer(nullptr)
+ : melps4_cpu_device(mconfig, M58846, tag, owner, clock, 11, address_map_constructor(FUNC(m58846_device::program_2kx9), this), 7, address_map_constructor(FUNC(m58846_device::data_128x4), this), 12 /* number of D pins */, 2 /* subroutine page */, 1 /* interrupt page */), m_timer(nullptr)
{ }
diff --git a/src/devices/cpu/melps4/m58846.h b/src/devices/cpu/melps4/m58846.h
index 34042e6a61b..45f1809bfce 100644
--- a/src/devices/cpu/melps4/m58846.h
+++ b/src/devices/cpu/melps4/m58846.h
@@ -21,6 +21,8 @@ class m58846_device : public melps4_cpu_device
public:
m58846_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void data_128x4(address_map &map);
+ void program_2kx9(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/mn10200/mn10200.cpp b/src/devices/cpu/mn10200/mn10200.cpp
index 74757bd9e53..7f4b6ab0180 100644
--- a/src/devices/cpu/mn10200/mn10200.cpp
+++ b/src/devices/cpu/mn10200/mn10200.cpp
@@ -40,7 +40,7 @@ enum mn10200_flag
DEFINE_DEVICE_TYPE(MN1020012A, mn1020012a_device, "mn1020012a", "MN1020012A")
// internal memory maps
-static ADDRESS_MAP_START( mn1020012a_internal_map, AS_PROGRAM, 16, mn10200_device )
+ADDRESS_MAP_START(mn10200_device::mn1020012a_internal_map)
AM_RANGE(0x00fc00, 0x00ffff) AM_READWRITE8(io_control_r, io_control_w, 0xffff)
ADDRESS_MAP_END
@@ -55,7 +55,7 @@ mn10200_device::mn10200_device(const machine_config &mconfig, device_type type,
// device definitions
mn1020012a_device::mn1020012a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : mn10200_device(mconfig, MN1020012A, tag, owner, clock, ADDRESS_MAP_NAME(mn1020012a_internal_map))
+ : mn10200_device(mconfig, MN1020012A, tag, owner, clock, address_map_constructor(FUNC(mn1020012a_device::mn1020012a_internal_map), this))
{ }
diff --git a/src/devices/cpu/mn10200/mn10200.h b/src/devices/cpu/mn10200/mn10200.h
index 7f3524df68c..f3b496611bb 100644
--- a/src/devices/cpu/mn10200/mn10200.h
+++ b/src/devices/cpu/mn10200/mn10200.h
@@ -58,6 +58,7 @@ public:
DECLARE_READ8_MEMBER(io_control_r);
DECLARE_WRITE8_MEMBER(io_control_w);
+ void mn1020012a_internal_map(address_map &map);
protected:
static constexpr unsigned MN10200_NUM_PRESCALERS = 2;
static constexpr unsigned MN10200_NUM_TIMERS_8BIT = 10;
diff --git a/src/devices/cpu/nec/v53.cpp b/src/devices/cpu/nec/v53.cpp
index c82852fa1ba..0e91bb64614 100644
--- a/src/devices/cpu/nec/v53.cpp
+++ b/src/devices/cpu/nec/v53.cpp
@@ -414,7 +414,7 @@ WRITE_LINE_MEMBER(v53_base_device::hack_w)
/* General stuff */
-static ADDRESS_MAP_START( v53_internal_port_map, AS_IO, 16, v53_base_device )
+ADDRESS_MAP_START(v53_base_device::v53_internal_port_map)
AM_RANGE(0xffe0, 0xffe1) AM_WRITE8( BSEL_w, 0x00ff) // 0xffe0 // uPD71037 DMA mode bank selection register
AM_RANGE(0xffe0, 0xffe1) AM_WRITE8( BADR_w, 0xff00) // 0xffe1 // uPD71037 DMA mode bank register peripheral mapping (also uses OPHA)
// AM_RANGE(0xffe2, 0xffe3) // (reserved , 0x00ff) // 0xffe2
@@ -536,7 +536,7 @@ MACHINE_CONFIG_END
v53_base_device::v53_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, offs_t fetch_xor, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type)
: nec_common_device(mconfig, type, tag, owner, clock, true, fetch_xor, prefetch_size, prefetch_cycles, chip_type),
- m_io_space_config( "io", ENDIANNESS_LITTLE, 16, 16, 0, ADDRESS_MAP_NAME( v53_internal_port_map ) ),
+ m_io_space_config( "io", ENDIANNESS_LITTLE, 16, 16, 0, address_map_constructor(FUNC(v53_base_device::v53_internal_port_map), this) ),
m_v53tcu(*this, "pit"),
m_v53dmau(*this, "upd71071dma"),
m_v53icu(*this, "upd71059pic"),
diff --git a/src/devices/cpu/nec/v53.h b/src/devices/cpu/nec/v53.h
index 981ac0b733a..1c45a3cbc89 100644
--- a/src/devices/cpu/nec/v53.h
+++ b/src/devices/cpu/nec/v53.h
@@ -192,6 +192,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(dreq3_w);
DECLARE_WRITE_LINE_MEMBER(hack_w);
+ void v53_internal_port_map(address_map &map);
protected:
v53_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, offs_t fetch_xor, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type);
diff --git a/src/devices/cpu/patinhofeio/patinho_feio.cpp b/src/devices/cpu/patinhofeio/patinho_feio.cpp
index d87379cc8fb..a453d17f1de 100644
--- a/src/devices/cpu/patinhofeio/patinho_feio.cpp
+++ b/src/devices/cpu/patinhofeio/patinho_feio.cpp
@@ -53,13 +53,13 @@ void patinho_feio_cpu_device::compute_effective_address(unsigned int addr){
DEFINE_DEVICE_TYPE(PATO_FEIO_CPU, patinho_feio_cpu_device, "pato_feio_cpu", "Patinho Feio CPU")
//Internal 4kbytes of RAM
-static ADDRESS_MAP_START(prog_8bit, AS_PROGRAM, 8, patinho_feio_cpu_device)
+ADDRESS_MAP_START(patinho_feio_cpu_device::prog_8bit)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("internalram")
ADDRESS_MAP_END
patinho_feio_cpu_device::patinho_feio_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, PATO_FEIO_CPU, tag, owner, clock)
- , m_program_config("program", ENDIANNESS_LITTLE, 8, 12, 0, ADDRESS_MAP_NAME(prog_8bit))
+ , m_program_config("program", ENDIANNESS_LITTLE, 8, 12, 0, address_map_constructor(FUNC(patinho_feio_cpu_device::prog_8bit), this))
, m_icount(0)
, m_rc_read_cb(*this)
, m_buttons_read_cb(*this)
diff --git a/src/devices/cpu/patinhofeio/patinhofeio_cpu.h b/src/devices/cpu/patinhofeio/patinhofeio_cpu.h
index 008acd8e0ae..26bf4298ad1 100644
--- a/src/devices/cpu/patinhofeio/patinhofeio_cpu.h
+++ b/src/devices/cpu/patinhofeio/patinhofeio_cpu.h
@@ -62,6 +62,7 @@ public:
void transfer_byte_from_external_device(uint8_t channel, uint8_t data);
void set_iodev_status(uint8_t channel, bool status) { m_iodev_status[channel] = status; }
+ void prog_8bit(address_map &map);
protected:
virtual void execute_run() override;
diff --git a/src/devices/cpu/pic16c5x/pic16c5x.cpp b/src/devices/cpu/pic16c5x/pic16c5x.cpp
index d92ae93d3c1..cddd87fd2e5 100644
--- a/src/devices/cpu/pic16c5x/pic16c5x.cpp
+++ b/src/devices/cpu/pic16c5x/pic16c5x.cpp
@@ -91,25 +91,25 @@ DEFINE_DEVICE_TYPE(PIC1655, pic1655_device, "pic1655", "PIC1655")
* Internal Memory Maps
****************************************************************************/
-static ADDRESS_MAP_START( pic16c5x_rom_9, AS_PROGRAM, 16, pic16c5x_device )
+ADDRESS_MAP_START(pic16c5x_device::pic16c5x_rom_9)
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c5x_ram_5, AS_DATA, 8, pic16c5x_device )
+ADDRESS_MAP_START(pic16c5x_device::pic16c5x_ram_5)
AM_RANGE(0x00, 0x07) AM_RAM
AM_RANGE(0x08, 0x0f) AM_RAM
AM_RANGE(0x10, 0x1f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c5x_rom_10, AS_PROGRAM, 16, pic16c5x_device )
+ADDRESS_MAP_START(pic16c5x_device::pic16c5x_rom_10)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c5x_rom_11, AS_PROGRAM, 16, pic16c5x_device )
+ADDRESS_MAP_START(pic16c5x_device::pic16c5x_rom_11)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c5x_ram_7, AS_DATA, 8, pic16c5x_device )
+ADDRESS_MAP_START(pic16c5x_device::pic16c5x_ram_7)
AM_RANGE(0x00, 0x07) AM_RAM AM_MIRROR(0x60)
AM_RANGE(0x08, 0x0f) AM_RAM AM_MIRROR(0x60)
AM_RANGE(0x10, 0x1f) AM_RAM
@@ -122,9 +122,9 @@ ADDRESS_MAP_END
pic16c5x_device::pic16c5x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, int picmodel)
: cpu_device(mconfig, type, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 16, program_width, -1
- , ( ( program_width == 9 ) ? ADDRESS_MAP_NAME(pic16c5x_rom_9) : ( ( program_width == 10 ) ? ADDRESS_MAP_NAME(pic16c5x_rom_10) : ADDRESS_MAP_NAME(pic16c5x_rom_11) )))
+ , ( ( program_width == 9 ) ? address_map_constructor(FUNC(pic16c5x_device::pic16c5x_rom_9), this): ( ( program_width == 10 ) ? address_map_constructor(FUNC(pic16c5x_device::pic16c5x_rom_10), this) : address_map_constructor(FUNC(pic16c5x_device::pic16c5x_rom_11), this) )))
, m_data_config("data", ENDIANNESS_LITTLE, 8, data_width, 0
- , ( ( data_width == 5 ) ? ADDRESS_MAP_NAME(pic16c5x_ram_5) : ADDRESS_MAP_NAME(pic16c5x_ram_7) ) )
+ , ( ( data_width == 5 ) ? address_map_constructor(FUNC(pic16c5x_device::pic16c5x_ram_5), this) : address_map_constructor(FUNC(pic16c5x_device::pic16c5x_ram_7), this) ) )
, m_reset_vector((program_width == 9) ? 0x1ff : ((program_width == 10) ? 0x3ff : 0x7ff))
, m_picmodel(picmodel)
, m_temp_config(0)
diff --git a/src/devices/cpu/pic16c5x/pic16c5x.h b/src/devices/cpu/pic16c5x/pic16c5x.h
index e51ef9a1c89..0971c5fa9a4 100644
--- a/src/devices/cpu/pic16c5x/pic16c5x.h
+++ b/src/devices/cpu/pic16c5x/pic16c5x.h
@@ -99,6 +99,11 @@ public:
// or with a macro
static void set_config_static(device_t &device, uint16_t data) { downcast<pic16c5x_device &>(device).m_temp_config = data; }
+ void pic16c5x_ram_5(address_map &map);
+ void pic16c5x_ram_7(address_map &map);
+ void pic16c5x_rom_10(address_map &map);
+ void pic16c5x_rom_11(address_map &map);
+ void pic16c5x_rom_9(address_map &map);
protected:
// construction/destruction
pic16c5x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, int picmodel);
diff --git a/src/devices/cpu/pic16c62x/pic16c62x.cpp b/src/devices/cpu/pic16c62x/pic16c62x.cpp
index e01a7fda740..f9e6848df9e 100644
--- a/src/devices/cpu/pic16c62x/pic16c62x.cpp
+++ b/src/devices/cpu/pic16c62x/pic16c62x.cpp
@@ -71,19 +71,19 @@ DEFINE_DEVICE_TYPE(PIC16C622A, pic16c622a_device, "pic16c622a", "PIC16C622A")
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c62x_rom_9, AS_PROGRAM, 16, pic16c62x_device )
+ADDRESS_MAP_START(pic16c62x_device::pic16c62x_rom_9)
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c62x_rom_10, AS_PROGRAM, 16, pic16c62x_device )
+ADDRESS_MAP_START(pic16c62x_device::pic16c62x_rom_10)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c62x_rom_11, AS_PROGRAM, 16, pic16c62x_device )
+ADDRESS_MAP_START(pic16c62x_device::pic16c62x_rom_11)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c620_ram, AS_DATA, 8, pic16c62x_device )
+ADDRESS_MAP_START(pic16c62x_device::pic16c620_ram)
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x6f) AM_RAM
@@ -92,7 +92,7 @@ static ADDRESS_MAP_START( pic16c620_ram, AS_DATA, 8, pic16c62x_device )
AM_RANGE(0x9f, 0x9f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c622_ram, AS_DATA, 8, pic16c62x_device )
+ADDRESS_MAP_START(pic16c62x_device::pic16c622_ram)
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x7f) AM_RAM
@@ -102,7 +102,7 @@ static ADDRESS_MAP_START( pic16c622_ram, AS_DATA, 8, pic16c62x_device )
ADDRESS_MAP_END
// pic16c620a, pic16c621a and pic16c622a
-static ADDRESS_MAP_START( pic16c62xa_ram, AS_DATA, 8, pic16c62x_device )
+ADDRESS_MAP_START(pic16c62x_device::pic16c62xa_ram)
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x6f) AM_RAM
@@ -117,9 +117,9 @@ ADDRESS_MAP_END
pic16c62x_device::pic16c62x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int picmodel)
: cpu_device(mconfig, type, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 16, program_width, -1
- , ( ( program_width == 9 ) ? ADDRESS_MAP_NAME(pic16c62x_rom_9) : ( ( program_width == 10 ) ? ADDRESS_MAP_NAME(pic16c62x_rom_10) : ADDRESS_MAP_NAME(pic16c62x_rom_11) )))
+ , ( ( program_width == 9 ) ? address_map_constructor(FUNC(pic16c62x_device::pic16c62x_rom_9), this) : ( ( program_width == 10 ) ? address_map_constructor(FUNC(pic16c62x_device::pic16c62x_rom_10), this) : address_map_constructor(FUNC(pic16c62x_device::pic16c62x_rom_11), this) )))
, m_data_config("data", ENDIANNESS_LITTLE, 8, 8, 0
- , ( ( picmodel == 0x16C620 || picmodel == 0x16C621 ) ? ADDRESS_MAP_NAME(pic16c620_ram) : ( ( picmodel == 0x16C622 ) ? ADDRESS_MAP_NAME(pic16c622_ram) : ADDRESS_MAP_NAME(pic16c62xa_ram) ) ) )
+ , ( ( picmodel == 0x16C620 || picmodel == 0x16C621 ) ? address_map_constructor(FUNC(pic16c62x_device::pic16c620_ram), this) : ( ( picmodel == 0x16C622 ) ? address_map_constructor(FUNC(pic16c62x_device::pic16c622_ram), this) : address_map_constructor(FUNC(pic16c62x_device::pic16c62xa_ram), this) ) ) )
, m_io_config("io", ENDIANNESS_LITTLE, 8, 5, 0)
, m_reset_vector(0x0)
, m_picmodel(picmodel)
diff --git a/src/devices/cpu/pic16c62x/pic16c62x.h b/src/devices/cpu/pic16c62x/pic16c62x.h
index 38596be6b29..3617539f851 100644
--- a/src/devices/cpu/pic16c62x/pic16c62x.h
+++ b/src/devices/cpu/pic16c62x/pic16c62x.h
@@ -194,6 +194,12 @@ private:
void pic16c62x_update_watchdog(int counts);
void pic16c62x_update_timer(int counts);
+ void pic16c620_ram(address_map &map);
+ void pic16c622_ram(address_map &map);
+ void pic16c62x_rom_10(address_map &map);
+ void pic16c62x_rom_11(address_map &map);
+ void pic16c62x_rom_9(address_map &map);
+ void pic16c62xa_ram(address_map &map);
};
diff --git a/src/devices/cpu/powerpc/ppc.h b/src/devices/cpu/powerpc/ppc.h
index a4b7f672471..8a5673ae990 100644
--- a/src/devices/cpu/powerpc/ppc.h
+++ b/src/devices/cpu/powerpc/ppc.h
@@ -760,6 +760,7 @@ public:
DECLARE_READ8_MEMBER( ppc4xx_spu_r );
DECLARE_WRITE8_MEMBER( ppc4xx_spu_w );
+ void internal_ppc4xx(address_map &map);
protected:
ppc4xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor);
diff --git a/src/devices/cpu/powerpc/ppccom.cpp b/src/devices/cpu/powerpc/ppccom.cpp
index 9e4aecd3ee2..c59a670200c 100644
--- a/src/devices/cpu/powerpc/ppccom.cpp
+++ b/src/devices/cpu/powerpc/ppccom.cpp
@@ -242,46 +242,46 @@ ppc_device::ppc_device(const machine_config &mconfig, device_type type, const ch
//}
ppc603_device::ppc603_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : ppc_device(mconfig, PPC603, tag, owner, clock, 32, 64, PPC_MODEL_603, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, nullptr)
+ : ppc_device(mconfig, PPC603, tag, owner, clock, 32, 64, PPC_MODEL_603, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor())
{
}
ppc603e_device::ppc603e_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : ppc_device(mconfig, PPC603E, tag, owner, clock, 32, 64, PPC_MODEL_603E, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, nullptr)
+ : ppc_device(mconfig, PPC603E, tag, owner, clock, 32, 64, PPC_MODEL_603E, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor())
{
}
ppc603r_device::ppc603r_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : ppc_device(mconfig, PPC603R, tag, owner, clock, 32, 64, PPC_MODEL_603R, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, nullptr)
+ : ppc_device(mconfig, PPC603R, tag, owner, clock, 32, 64, PPC_MODEL_603R, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor())
{
}
ppc602_device::ppc602_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : ppc_device(mconfig, PPC602, tag, owner, clock, 32, 64, PPC_MODEL_602, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, nullptr)
+ : ppc_device(mconfig, PPC602, tag, owner, clock, 32, 64, PPC_MODEL_602, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor())
{
}
mpc8240_device::mpc8240_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : ppc_device(mconfig, MPC8240, tag, owner, clock, 32, 64, PPC_MODEL_MPC8240, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4/* unknown */, nullptr)
+ : ppc_device(mconfig, MPC8240, tag, owner, clock, 32, 64, PPC_MODEL_MPC8240, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4/* unknown */, address_map_constructor())
{
}
ppc601_device::ppc601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : ppc_device(mconfig, PPC601, tag, owner, clock, 32, 64, PPC_MODEL_601, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_MFIOC | PPCCAP_601BAT, 0/* no TB */, nullptr)
+ : ppc_device(mconfig, PPC601, tag, owner, clock, 32, 64, PPC_MODEL_601, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_MFIOC | PPCCAP_601BAT, 0/* no TB */, address_map_constructor())
{
}
ppc604_device::ppc604_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : ppc_device(mconfig, PPC604, tag, owner, clock, 32, 64, PPC_MODEL_604, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_604_MMU, 4, nullptr)
+ : ppc_device(mconfig, PPC604, tag, owner, clock, 32, 64, PPC_MODEL_604, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_604_MMU, 4, address_map_constructor())
{
}
-static ADDRESS_MAP_START( internal_ppc4xx, AS_PROGRAM, 32, ppc4xx_device )
+ADDRESS_MAP_START(ppc4xx_device::internal_ppc4xx)
AM_RANGE(0x40000000, 0x4000000f) AM_READWRITE8(ppc4xx_spu_r, ppc4xx_spu_w, 0xffffffff)
ADDRESS_MAP_END
ppc4xx_device::ppc4xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor)
- : ppc_device(mconfig, type, tag, owner, clock, 31, 32, flavor, cap, tb_divisor, ADDRESS_MAP_NAME(internal_ppc4xx))
+ : ppc_device(mconfig, type, tag, owner, clock, 31, 32, flavor, cap, tb_divisor, address_map_constructor(FUNC(ppc4xx_device::internal_ppc4xx), this))
{
}
diff --git a/src/devices/cpu/psx/psx.cpp b/src/devices/cpu/psx/psx.cpp
index e1b395a6478..2559cfe7c0c 100644
--- a/src/devices/cpu/psx/psx.cpp
+++ b/src/devices/cpu/psx/psx.cpp
@@ -1724,7 +1724,7 @@ int psxcpu_device::store_data_address_breakpoint( uint32_t address )
}
// On-board RAM and peripherals
-static ADDRESS_MAP_START( psxcpu_internal_map, AS_PROGRAM, 32, psxcpu_device )
+ADDRESS_MAP_START(psxcpu_device::psxcpu_internal_map)
AM_RANGE( 0x1f800000, 0x1f8003ff ) AM_NOP /* scratchpad */
AM_RANGE( 0x1f800400, 0x1f800fff ) AM_READWRITE( berr_r, berr_w )
AM_RANGE( 0x1f801000, 0x1f801003 ) AM_READWRITE( exp_base_r, exp_base_w )
@@ -1768,7 +1768,7 @@ ADDRESS_MAP_END
psxcpu_device::psxcpu_device( const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock ) :
cpu_device( mconfig, type, tag, owner, clock ),
- m_program_config( "program", ENDIANNESS_LITTLE, 32, 32, 0, ADDRESS_MAP_NAME( psxcpu_internal_map ) ),
+ m_program_config( "program", ENDIANNESS_LITTLE, 32, 32, 0, address_map_constructor(FUNC(psxcpu_device::psxcpu_internal_map), this)),
m_gpu_read_handler( *this ),
m_gpu_write_handler( *this ),
m_spu_read_handler( *this ),
diff --git a/src/devices/cpu/psx/psx.h b/src/devices/cpu/psx/psx.h
index c08538bbdcf..bdf3b0f2327 100644
--- a/src/devices/cpu/psx/psx.h
+++ b/src/devices/cpu/psx/psx.h
@@ -190,6 +190,7 @@ public:
static psxcpu_device *getcpu( device_t &device, const char *cputag );
void set_disable_rom_berr(bool mode);
+ void psxcpu_internal_map(address_map &map);
protected:
static constexpr unsigned ICACHE_ENTRIES = 0x400;
static constexpr unsigned DCACHE_ENTRIES = 0x100;
diff --git a/src/devices/cpu/scudsp/scudsp.cpp b/src/devices/cpu/scudsp/scudsp.cpp
index b61c4aedf6d..534bed62012 100644
--- a/src/devices/cpu/scudsp/scudsp.cpp
+++ b/src/devices/cpu/scudsp/scudsp.cpp
@@ -1010,11 +1010,11 @@ void scudsp_cpu_device::execute_set_input(int irqline, int state)
}
}
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 32, scudsp_cpu_device )
+ADDRESS_MAP_START(scudsp_cpu_device::program_map)
AM_RANGE(0x00, 0xff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_map, AS_DATA, 32, scudsp_cpu_device )
+ADDRESS_MAP_START(scudsp_cpu_device::data_map)
AM_RANGE(0x00, 0xff) AM_RAM
ADDRESS_MAP_END
@@ -1023,8 +1023,8 @@ scudsp_cpu_device::scudsp_cpu_device(const machine_config &mconfig, const char *
, m_out_irq_cb(*this)
, m_in_dma_cb(*this)
, m_out_dma_cb(*this)
- , m_program_config("program", ENDIANNESS_BIG, 32, 8, -2, ADDRESS_MAP_NAME(program_map))
- , m_data_config("data", ENDIANNESS_BIG, 32, 8, -2, ADDRESS_MAP_NAME(data_map))
+ , m_program_config("program", ENDIANNESS_BIG, 32, 8, -2, address_map_constructor(FUNC(scudsp_cpu_device::program_map), this))
+ , m_data_config("data", ENDIANNESS_BIG, 32, 8, -2, address_map_constructor(FUNC(scudsp_cpu_device::data_map), this))
{
}
diff --git a/src/devices/cpu/scudsp/scudsp.h b/src/devices/cpu/scudsp/scudsp.h
index 866a98f7df0..52a132511ad 100644
--- a/src/devices/cpu/scudsp/scudsp.h
+++ b/src/devices/cpu/scudsp/scudsp.h
@@ -69,6 +69,8 @@ public:
DECLARE_READ32_MEMBER( ram_address_r );
DECLARE_WRITE32_MEMBER( ram_address_w );
+ void data_map(address_map &map);
+ void program_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/sh/sh2.cpp b/src/devices/cpu/sh/sh2.cpp
index a8b2ab15925..7626cc0c74e 100644
--- a/src/devices/cpu/sh/sh2.cpp
+++ b/src/devices/cpu/sh/sh2.cpp
@@ -123,7 +123,7 @@ READ32_MEMBER(sh2_device::sh2_internal_a5)
sh2_internal_map - maps SH2 built-ins
-------------------------------------------------*/
-static ADDRESS_MAP_START( sh7604_map, AS_PROGRAM, 32, sh2_device )
+ADDRESS_MAP_START(sh2_device::sh7604_map)
AM_RANGE(0x40000000, 0xbfffffff) AM_READ(sh2_internal_a5)
/*!
@todo: cps3boot breaks with this enabled. Needs customization ...
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( sh7604_map, AS_PROGRAM, 32, sh2_device )
AM_RANGE(0xe0000000, 0xe00001ff) AM_MIRROR(0x1ffffe00) AM_READWRITE(sh7604_r, sh7604_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sh7021_map, AS_PROGRAM, 32, sh2a_device )
+ADDRESS_MAP_START(sh2a_device::sh7021_map)
// fall-back
AM_RANGE(0x05fffe00, 0x05ffffff) AM_READWRITE16(sh7021_r,sh7021_w,0xffffffff) // SH-7032H internal i/o
// overrides
@@ -146,13 +146,13 @@ static ADDRESS_MAP_START( sh7021_map, AS_PROGRAM, 32, sh2a_device )
// AM_RANGE(0x0f000000, 0x0f0003ff) AM_RAM AM_SHARE("oram")// on-chip RAM, actually at 0xf000000 (1 kb)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sh7032_map, AS_PROGRAM, 32, sh1_device )
+ADDRESS_MAP_START(sh1_device::sh7032_map)
// fall-back
AM_RANGE(0x05fffe00, 0x05ffffff) AM_READWRITE16(sh7032_r,sh7032_w,0xffffffff) // SH-7032H internal i/o
ADDRESS_MAP_END
sh2_device::sh2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : sh2_device(mconfig, SH2, tag, owner, clock, CPU_TYPE_SH2, ADDRESS_MAP_NAME(sh7604_map), 32)
+ : sh2_device(mconfig, SH2, tag, owner, clock, CPU_TYPE_SH2, address_map_constructor(FUNC(sh2_device::sh7604_map), this), 32)
{
}
@@ -178,12 +178,12 @@ sh2_device::sh2_device(const machine_config &mconfig, device_type type, const ch
}
sh2a_device::sh2a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : sh2_device(mconfig, SH2A, tag, owner, clock, CPU_TYPE_SH2, ADDRESS_MAP_NAME(sh7021_map), 28)
+ : sh2_device(mconfig, SH2A, tag, owner, clock, CPU_TYPE_SH2, address_map_constructor(FUNC(sh2a_device::sh7021_map), this), 28)
{
}
sh1_device::sh1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : sh2_device(mconfig, SH1, tag, owner, clock, CPU_TYPE_SH1, ADDRESS_MAP_NAME(sh7032_map), 28)
+ : sh2_device(mconfig, SH1, tag, owner, clock, CPU_TYPE_SH1, address_map_constructor(FUNC(sh1_device::sh7032_map), this), 28)
{
}
diff --git a/src/devices/cpu/sh/sh2.h b/src/devices/cpu/sh/sh2.h
index 7027ae959ce..4e0fd37ca30 100644
--- a/src/devices/cpu/sh/sh2.h
+++ b/src/devices/cpu/sh/sh2.h
@@ -85,6 +85,7 @@ public:
void sh2_notify_dma_data_available();
void func_fastirq();
+ void sh7604_map(address_map &map);
protected:
sh2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int cpu_type,address_map_constructor internal_map, int addrlines);
@@ -209,6 +210,7 @@ public:
DECLARE_WRITE16_MEMBER(sh7021_w);
void sh7032_dma_exec(int ch);
+ void sh7021_map(address_map &map);
private:
uint16_t m_sh7021_regs[0x200];
struct
@@ -230,6 +232,7 @@ public:
DECLARE_READ16_MEMBER(sh7032_r);
DECLARE_WRITE16_MEMBER(sh7032_w);
+ void sh7032_map(address_map &map);
private:
uint16_t m_sh7032_regs[0x200];
};
diff --git a/src/devices/cpu/sh/sh4.cpp b/src/devices/cpu/sh/sh4.cpp
index e4e4429c132..680494d5000 100644
--- a/src/devices/cpu/sh/sh4.cpp
+++ b/src/devices/cpu/sh/sh4.cpp
@@ -42,7 +42,7 @@ DEFINE_DEVICE_TYPE(SH4BE, sh4be_device, "sh4be", "SH-4 (big)")
#if 0
/*When OC index mode is off (CCR.OIX = 0)*/
-static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64, sh4_base_device )
+ADDRESS_MAP_START(sh4_base_device::sh4_internal_map)
AM_RANGE(0x1C000000, 0x1C000FFF) AM_RAM AM_MIRROR(0x03FFD000)
AM_RANGE(0x1C002000, 0x1C002FFF) AM_RAM AM_MIRROR(0x03FFD000)
AM_RANGE(0xE0000000, 0xE000003F) AM_RAM AM_MIRROR(0x03FFFFC0)
@@ -50,7 +50,7 @@ ADDRESS_MAP_END
#endif
/*When OC index mode is on (CCR.OIX = 1)*/
-static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64, sh4_base_device )
+ADDRESS_MAP_START(sh4_base_device::sh4_internal_map)
AM_RANGE(0x1C000000, 0x1C000FFF) AM_RAM AM_MIRROR(0x01FFF000)
AM_RANGE(0x1E000000, 0x1E000FFF) AM_RAM AM_MIRROR(0x01FFF000)
AM_RANGE(0xE0000000, 0xE000003F) AM_RAM AM_MIRROR(0x03FFFFC0) // todo: store queues should be write only on DC's SH4, executing PREFM shouldn't cause an actual memory read access!
@@ -62,7 +62,7 @@ static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64, sh4_base_device )
AM_RANGE(0xFE000000, 0xFFFFFFFF) AM_READWRITE32(sh4_internal_r, sh4_internal_w, 0xffffffffffffffffU)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sh3_internal_map, AS_PROGRAM, 64, sh3_base_device )
+ADDRESS_MAP_START(sh3_base_device::sh3_internal_map)
AM_RANGE(SH3_LOWER_REGBASE, SH3_LOWER_REGEND) AM_READWRITE32(sh3_internal_r, sh3_internal_w, 0xffffffffffffffffU)
AM_RANGE(SH3_UPPER_REGBASE, SH3_UPPER_REGEND) AM_READWRITE32(sh3_internal_high_r, sh3_internal_high_w, 0xffffffffffffffffU)
ADDRESS_MAP_END
@@ -97,7 +97,7 @@ device_memory_interface::space_config_vector sh34_base_device::memory_space_conf
sh3_base_device::sh3_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness)
- : sh34_base_device(mconfig, type, tag, owner, clock, endianness, ADDRESS_MAP_NAME(sh3_internal_map))
+ : sh34_base_device(mconfig, type, tag, owner, clock, endianness, address_map_constructor(FUNC(sh3_base_device::sh3_internal_map), this))
{
m_cpu_type = CPU_TYPE_SH3;
m_am = SH34_AM;
@@ -105,7 +105,7 @@ sh3_base_device::sh3_base_device(const machine_config &mconfig, device_type type
sh4_base_device::sh4_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness)
- : sh34_base_device(mconfig, type, tag, owner, clock, endianness, ADDRESS_MAP_NAME(sh4_internal_map))
+ : sh34_base_device(mconfig, type, tag, owner, clock, endianness, address_map_constructor(FUNC(sh4_base_device::sh4_internal_map), this))
{
m_cpu_type = CPU_TYPE_SH4;
m_am = SH34_AM;
diff --git a/src/devices/cpu/sh/sh4.h b/src/devices/cpu/sh/sh4.h
index c9dc55f88a3..9954f378954 100644
--- a/src/devices/cpu/sh/sh4.h
+++ b/src/devices/cpu/sh/sh4.h
@@ -750,6 +750,7 @@ public:
DECLARE_WRITE32_MEMBER( sh3_internal_high_w );
DECLARE_READ32_MEMBER( sh3_internal_high_r );
+ void sh3_internal_map(address_map &map);
protected:
// construction/destruction
sh3_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness);
@@ -777,6 +778,7 @@ public:
virtual uint32_t sh4_getsqremap(uint32_t address) override;
sh4_utlb m_utlb[64];
+ void sh4_internal_map(address_map &map);
protected:
// construction/destruction
sh4_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness);
diff --git a/src/devices/cpu/sh/sh7604_bus.cpp b/src/devices/cpu/sh/sh7604_bus.cpp
index f4000a46300..1b64ae81072 100644
--- a/src/devices/cpu/sh/sh7604_bus.cpp
+++ b/src/devices/cpu/sh/sh7604_bus.cpp
@@ -93,7 +93,7 @@ WRITE16_MEMBER(sh7604_bus_device::refresh_timer_constant_w)
COMBINE_DATA(&m_rtcor);
}
-DEVICE_ADDRESS_MAP_START( bus_regs, 16, sh7604_bus_device )
+ADDRESS_MAP_START(sh7604_bus_device::bus_regs)
AM_RANGE(0x00, 0x01) AM_READWRITE(bus_control_1_r, bus_control_1_w)
AM_RANGE(0x02, 0x03) AM_READWRITE(bus_control_2_r, bus_control_2_w)
AM_RANGE(0x04, 0x05) AM_READWRITE(wait_control_r, wait_control_w)
diff --git a/src/devices/cpu/sh/sh7604_bus.h b/src/devices/cpu/sh/sh7604_bus.h
index 486ff93558f..237fd888f0b 100644
--- a/src/devices/cpu/sh/sh7604_bus.h
+++ b/src/devices/cpu/sh/sh7604_bus.h
@@ -33,7 +33,7 @@ public:
sh7604_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
- DECLARE_ADDRESS_MAP( bus_regs, 16 );
+ void bus_regs(address_map &map);
DECLARE_WRITE32_MEMBER( write );
DECLARE_READ32_MEMBER( read );
diff --git a/src/devices/cpu/sh/sh7604_sci.cpp b/src/devices/cpu/sh/sh7604_sci.cpp
index 248e0112622..ffd30885b8b 100644
--- a/src/devices/cpu/sh/sh7604_sci.cpp
+++ b/src/devices/cpu/sh/sh7604_sci.cpp
@@ -99,7 +99,7 @@ READ8_MEMBER(sh7604_sci_device::receive_data_r)
return 0;
}
-DEVICE_ADDRESS_MAP_START( sci_regs, 8, sh7604_sci_device )
+ADDRESS_MAP_START(sh7604_sci_device::sci_regs)
AM_RANGE(0x00, 0x00) AM_READWRITE(serial_mode_r, serial_mode_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(bitrate_r, bitrate_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(serial_control_r,serial_control_w)
diff --git a/src/devices/cpu/sh/sh7604_sci.h b/src/devices/cpu/sh/sh7604_sci.h
index d7a290f6946..5e90383ad3e 100644
--- a/src/devices/cpu/sh/sh7604_sci.h
+++ b/src/devices/cpu/sh/sh7604_sci.h
@@ -33,7 +33,7 @@ public:
sh7604_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
- DECLARE_ADDRESS_MAP( sci_regs, 8 );
+ void sci_regs(address_map &map);
DECLARE_WRITE8_MEMBER( write );
DECLARE_READ8_MEMBER( read );
diff --git a/src/devices/cpu/sh/sh7604_wdt.cpp b/src/devices/cpu/sh/sh7604_wdt.cpp
index 16b40f30768..3d64a056be5 100644
--- a/src/devices/cpu/sh/sh7604_wdt.cpp
+++ b/src/devices/cpu/sh/sh7604_wdt.cpp
@@ -27,7 +27,7 @@ DEFINE_DEVICE_TYPE(SH7604_WDT, sh7604_wdt_device, "sh7604wdt", "SH7604 Watchdog
// LIVE DEVICE
//**************************************************************************
-DEVICE_ADDRESS_MAP_START( wdt_regs, 8, sh7604_wdt_device )
+ADDRESS_MAP_START(sh7604_wdt_device::wdt_regs)
// AM_RANGE(0x00, 0x00) timer control/status
// AM_RANGE(0x01, 0x01) timer counter
// AM_RANGE(0x02, 0x02) write only, reset control register
diff --git a/src/devices/cpu/sh/sh7604_wdt.h b/src/devices/cpu/sh/sh7604_wdt.h
index 7e014745f19..e92b84edca5 100644
--- a/src/devices/cpu/sh/sh7604_wdt.h
+++ b/src/devices/cpu/sh/sh7604_wdt.h
@@ -33,7 +33,7 @@ public:
sh7604_wdt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
- DECLARE_ADDRESS_MAP( wdt_regs, 8 );
+ void wdt_regs(address_map &map);
DECLARE_WRITE16_MEMBER( write );
DECLARE_READ8_MEMBER( read );
diff --git a/src/devices/cpu/sharc/sharc.cpp b/src/devices/cpu/sharc/sharc.cpp
index c85a915a2f7..848f735b5b6 100644
--- a/src/devices/cpu/sharc/sharc.cpp
+++ b/src/devices/cpu/sharc/sharc.cpp
@@ -56,14 +56,14 @@ enum
DEFINE_DEVICE_TYPE(ADSP21062, adsp21062_device, "adsp21062", "ADSP21062")
-static ADDRESS_MAP_START( internal_pgm, AS_PROGRAM, 64, adsp21062_device )
+ADDRESS_MAP_START(adsp21062_device::internal_pgm)
AM_RANGE(0x20000, 0x24fff) AM_READWRITE(pm0_r, pm0_w)
AM_RANGE(0x28000, 0x2cfff) AM_READWRITE(pm1_r, pm1_w)
AM_RANGE(0x30000, 0x34fff) AM_READWRITE(pm1_r, pm1_w)
AM_RANGE(0x38000, 0x3cfff) AM_READWRITE(pm1_r, pm1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( internal_data, AS_DATA, 32, adsp21062_device )
+ADDRESS_MAP_START(adsp21062_device::internal_data)
AM_RANGE(0x00000, 0x000ff) AM_READWRITE(iop_r, iop_w)
AM_RANGE(0x20000, 0x27fff) AM_RAM AM_SHARE("block0")
AM_RANGE(0x28000, 0x2ffff) AM_RAM AM_SHARE("block1")
@@ -77,8 +77,8 @@ ADDRESS_MAP_END
adsp21062_device::adsp21062_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, ADSP21062, tag, owner, clock)
- , m_program_config("program", ENDIANNESS_LITTLE, 64, 24, -3, ADDRESS_MAP_NAME(internal_pgm))
- , m_data_config("data", ENDIANNESS_LITTLE, 32, 32, -2, ADDRESS_MAP_NAME(internal_data))
+ , m_program_config("program", ENDIANNESS_LITTLE, 64, 24, -3, address_map_constructor(FUNC(adsp21062_device::internal_pgm), this))
+ , m_data_config("data", ENDIANNESS_LITTLE, 32, 32, -2, address_map_constructor(FUNC(adsp21062_device::internal_data), this))
, m_boot_mode(BOOT_MODE_HOST)
, m_cache(CACHE_SIZE + sizeof(sharc_internal_state))
, m_drcuml(nullptr)
diff --git a/src/devices/cpu/sharc/sharc.h b/src/devices/cpu/sharc/sharc.h
index d4a56e1d525..7780f44288b 100644
--- a/src/devices/cpu/sharc/sharc.h
+++ b/src/devices/cpu/sharc/sharc.h
@@ -204,6 +204,8 @@ public:
EXCEPTION_COUNT
};
+ void internal_data(address_map &map);
+ void internal_pgm(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/sm510/sm500core.cpp b/src/devices/cpu/sm510/sm500core.cpp
index 5f672d4c425..b276e70e197 100644
--- a/src/devices/cpu/sm510/sm500core.cpp
+++ b/src/devices/cpu/sm510/sm500core.cpp
@@ -21,11 +21,11 @@ DEFINE_DEVICE_TYPE(SM500, sm500_device, "sm500", "SM500") // 1.2K ROM, 4x10x4 RA
// internal memory maps
-static ADDRESS_MAP_START(program_1_2k, AS_PROGRAM, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::program_1_2k)
AM_RANGE(0x000, 0x4bf) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_4x10x4, AS_DATA, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::data_4x10x4)
AM_RANGE(0x00, 0x09) AM_RAM
AM_RANGE(0x10, 0x19) AM_RAM
AM_RANGE(0x20, 0x29) AM_RAM
@@ -35,7 +35,7 @@ ADDRESS_MAP_END
// device definitions
sm500_device::sm500_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm500_device(mconfig, SM500, tag, owner, clock, 1 /* stack levels */, 7 /* o group pins */, 11 /* prg width */, ADDRESS_MAP_NAME(program_1_2k), 6 /* data width */, ADDRESS_MAP_NAME(data_4x10x4))
+ : sm500_device(mconfig, SM500, tag, owner, clock, 1 /* stack levels */, 7 /* o group pins */, 11 /* prg width */, address_map_constructor(FUNC(sm500_device::program_1_2k), this), 6 /* data width */, address_map_constructor(FUNC(sm500_device::data_4x10x4), this))
{
}
diff --git a/src/devices/cpu/sm510/sm510.h b/src/devices/cpu/sm510/sm510.h
index c1889c78847..c5d76d124be 100644
--- a/src/devices/cpu/sm510/sm510.h
+++ b/src/devices/cpu/sm510/sm510.h
@@ -138,6 +138,16 @@ public:
template <class Object> static devcb_base &set_write_segc_callback(device_t &device, Object &&cb) { return downcast<sm510_base_device &>(device).m_write_segc.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_write_segbs_callback(device_t &device, Object &&cb) { return downcast<sm510_base_device &>(device).m_write_segbs.set_callback(std::forward<Object>(cb)); }
+ void data_16x2x4(address_map &map);
+ void data_4x10x4(address_map &map);
+ void data_5x13x4(address_map &map);
+ void data_80_48x4(address_map &map);
+ void data_96_32x4(address_map &map);
+ void program_1_2k(address_map &map);
+ void program_1_8k(address_map &map);
+ void program_1x128x4(address_map &map);
+ void program_2_7k(address_map &map);
+ void program_4k(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/sm510/sm510core.cpp b/src/devices/cpu/sm510/sm510core.cpp
index 66f4029510b..e42a9d3ecc7 100644
--- a/src/devices/cpu/sm510/sm510core.cpp
+++ b/src/devices/cpu/sm510/sm510core.cpp
@@ -20,14 +20,14 @@ DEFINE_DEVICE_TYPE(SM510, sm510_device, "sm510", "SM510") // 2.7Kx8 ROM, 128x4 R
// internal memory maps
-static ADDRESS_MAP_START(program_2_7k, AS_PROGRAM, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::program_2_7k)
AM_RANGE(0x0000, 0x02bf) AM_ROM
AM_RANGE(0x0400, 0x06bf) AM_ROM
AM_RANGE(0x0800, 0x0abf) AM_ROM
AM_RANGE(0x0c00, 0x0ebf) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_96_32x4, AS_DATA, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::data_96_32x4)
AM_RANGE(0x00, 0x5f) AM_RAM
AM_RANGE(0x60, 0x6f) AM_RAM AM_SHARE("lcd_ram_a")
AM_RANGE(0x70, 0x7f) AM_RAM AM_SHARE("lcd_ram_b")
@@ -36,7 +36,7 @@ ADDRESS_MAP_END
// device definitions
sm510_device::sm510_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm510_base_device(mconfig, SM510, tag, owner, clock, 2 /* stack levels */, 12 /* prg width */, ADDRESS_MAP_NAME(program_2_7k), 7 /* data width */, ADDRESS_MAP_NAME(data_96_32x4))
+ : sm510_base_device(mconfig, SM510, tag, owner, clock, 2 /* stack levels */, 12 /* prg width */, address_map_constructor(FUNC(sm510_device::program_2_7k), this), 7 /* data width */, address_map_constructor(FUNC(sm510_device::data_96_32x4), this))
{
}
diff --git a/src/devices/cpu/sm510/sm511core.cpp b/src/devices/cpu/sm510/sm511core.cpp
index c830538efe7..adb127eb899 100644
--- a/src/devices/cpu/sm510/sm511core.cpp
+++ b/src/devices/cpu/sm510/sm511core.cpp
@@ -25,17 +25,11 @@ DEFINE_DEVICE_TYPE(SM512, sm512_device, "sm512", "SM512") // 4Kx8 ROM, 128x4 RAM
// internal memory maps
-static ADDRESS_MAP_START(program_4k, AS_PROGRAM, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::program_4k)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_96_32x4, AS_DATA, 8, sm510_base_device)
- AM_RANGE(0x00, 0x5f) AM_RAM
- AM_RANGE(0x60, 0x6f) AM_RAM AM_SHARE("lcd_ram_a")
- AM_RANGE(0x70, 0x7f) AM_RAM AM_SHARE("lcd_ram_b")
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START(data_80_48x4, AS_DATA, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::data_80_48x4)
AM_RANGE(0x00, 0x4f) AM_RAM
AM_RANGE(0x50, 0x5f) AM_RAM AM_SHARE("lcd_ram_c")
AM_RANGE(0x60, 0x6f) AM_RAM AM_SHARE("lcd_ram_a")
@@ -52,7 +46,7 @@ util::disasm_interface *sm511_device::create_disassembler()
// device definitions
sm511_device::sm511_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm511_device(mconfig, SM511, tag, owner, clock, 2 /* stack levels */, 12 /* prg width */, ADDRESS_MAP_NAME(program_4k), 7 /* data width */, ADDRESS_MAP_NAME(data_96_32x4))
+ : sm511_device(mconfig, SM511, tag, owner, clock, 2 /* stack levels */, 12 /* prg width */, address_map_constructor(FUNC(sm511_device::program_4k), this), 7 /* data width */, address_map_constructor(FUNC(sm511_device::data_96_32x4), this))
{
}
@@ -62,7 +56,7 @@ sm511_device::sm511_device(const machine_config &mconfig, device_type type, cons
}
sm512_device::sm512_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm511_device(mconfig, SM512, tag, owner, clock, 2, 12, ADDRESS_MAP_NAME(program_4k), 7, ADDRESS_MAP_NAME(data_80_48x4))
+ : sm511_device(mconfig, SM512, tag, owner, clock, 2, 12, address_map_constructor(FUNC(sm511_device::program_4k), this), 7, address_map_constructor(FUNC(sm511_device::data_80_48x4), this))
{
}
diff --git a/src/devices/cpu/sm510/sm590core.cpp b/src/devices/cpu/sm510/sm590core.cpp
index c04e40d7461..2ef65f59cd0 100644
--- a/src/devices/cpu/sm510/sm590core.cpp
+++ b/src/devices/cpu/sm510/sm590core.cpp
@@ -23,7 +23,7 @@ DEFINE_DEVICE_TYPE(SM590, sm590_device, "sm590", "SM590") // 512x8 ROM, 32x4 RAM
//DEFINE_DEVICE_TYPE(SM595, sm595_device, "sm595", "SM595") // 768x8 ROM, 32x4 RAM
// internal memory maps
-static ADDRESS_MAP_START(program_1x128x4, AS_PROGRAM, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::program_1x128x4)
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
@@ -35,7 +35,7 @@ static ADDRESS_MAP_START(program_1x128x4_1x128x2, AS_PROGRAM, 8, sm510_base_devi
AM_RANGE(0x000, 0x2ff) AM_ROM
ADDRESS_MAP_END*/
-static ADDRESS_MAP_START(data_16x2x4, AS_DATA, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::data_16x2x4)
AM_RANGE(0x00, 0x0f) AM_RAM
AM_RANGE(0x10, 0x1f) AM_RAM
ADDRESS_MAP_END
@@ -51,17 +51,17 @@ ADDRESS_MAP_END
// device definitions
sm590_device::sm590_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm590_device(mconfig, SM590, tag, owner, clock, 4 /* stack levels */, 9 /* prg width */, ADDRESS_MAP_NAME(program_1x128x4), 5 /* data width */, ADDRESS_MAP_NAME(data_16x2x4))
+ : sm590_device(mconfig, SM590, tag, owner, clock, 4 /* stack levels */, 9 /* prg width */, address_map_constructor(FUNC(sm590_device::program_1x128x4), this), 5 /* data width */, address_map_constructor(FUNC(sm590_device::data_16x2x4), this))
{
}
//sm591_device::sm591_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
-// : sm510_base_device(mconfig, SM591, tag, owner, clock, 4 /* stack levels */, 10 /* prg width */, ADDRESS_MAP_NAME(program_2x128x4), 6 /* data width */, ADDRESS_MAP_NAME(data_16x3.5x4))
+// : sm510_base_device(mconfig, SM591, tag, owner, clock, 4 /* stack levels */, 10 /* prg width */, address_map_constructor(FUNC(sm591_device::program_2x128x4), this), 6 /* data width */, address_map_constructor(FUNC(sm591_device::data_16x3.5x4), this))
//{
//}
//sm595_device::sm595_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
-// : sm510_base_device(mconfig, SM595, tag, owner, clock, 4 /* stack levels */, 10 /* prg width */, ADDRESS_MAP_NAME(program_1x128x4_1x128x2), 5 /* data width */, ADDRESS_MAP_NAME(data_16x2x4))
+// : sm510_base_device(mconfig, SM595, tag, owner, clock, 4 /* stack levels */, 10 /* prg width */, address_map_constructor(FUNC(sm595_device::program_1x128x4_1x128x2), this), 5 /* data width */, address_map_constructor(FUNC(sm595_device::data_16x2x4), this))
//{
//}
diff --git a/src/devices/cpu/sm510/sm5acore.cpp b/src/devices/cpu/sm510/sm5acore.cpp
index 427918fe1c1..561ff81b61e 100644
--- a/src/devices/cpu/sm510/sm5acore.cpp
+++ b/src/devices/cpu/sm510/sm5acore.cpp
@@ -22,12 +22,12 @@ DEFINE_DEVICE_TYPE(KB1013VK12, kb1013vk12_device, "kb1013vk1_2", "KB1013VK1-2")
// internal memory maps
-static ADDRESS_MAP_START(program_1_8k, AS_PROGRAM, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::program_1_8k)
AM_RANGE(0x000, 0x6ff) AM_ROM
AM_RANGE(0x700, 0x73f) AM_ROM AM_MIRROR(0x0c0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_5x13x4, AS_DATA, 8, sm510_base_device)
+ADDRESS_MAP_START(sm510_base_device::data_5x13x4)
AM_RANGE(0x00, 0x0b) AM_RAM
AM_RANGE(0x0c, 0x0c) AM_RAM AM_MIRROR(0x03)
AM_RANGE(0x10, 0x1b) AM_RAM
@@ -43,7 +43,7 @@ ADDRESS_MAP_END
// device definitions
sm5a_device::sm5a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm5a_device(mconfig, SM5A, tag, owner, clock, 1 /* stack levels */, 9 /* o group pins */, 11 /* prg width */, ADDRESS_MAP_NAME(program_1_8k), 7 /* data width */, ADDRESS_MAP_NAME(data_5x13x4))
+ : sm5a_device(mconfig, SM5A, tag, owner, clock, 1 /* stack levels */, 9 /* o group pins */, 11 /* prg width */, address_map_constructor(FUNC(sm5a_device::program_1_8k), this), 7 /* data width */, address_map_constructor(FUNC(sm5a_device::data_5x13x4), this))
{
}
@@ -53,12 +53,12 @@ sm5a_device::sm5a_device(const machine_config &mconfig, device_type type, const
}
sm5l_device::sm5l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm5a_device(mconfig, SM5L, tag, owner, clock, 1, 9, 11, ADDRESS_MAP_NAME(program_1_8k), 7, ADDRESS_MAP_NAME(data_5x13x4))
+ : sm5a_device(mconfig, SM5L, tag, owner, clock, 1, 9, 11, address_map_constructor(FUNC(sm5l_device::program_1_8k), this), 7, address_map_constructor(FUNC(sm5l_device::data_5x13x4), this))
{
}
kb1013vk12_device::kb1013vk12_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : sm5a_device(mconfig, KB1013VK12, tag, owner, clock, 1, 9, 11, ADDRESS_MAP_NAME(program_1_8k), 7, ADDRESS_MAP_NAME(data_5x13x4))
+ : sm5a_device(mconfig, KB1013VK12, tag, owner, clock, 1, 9, 11, address_map_constructor(FUNC(kb1013vk12_device::program_1_8k), this), 7, address_map_constructor(FUNC(kb1013vk12_device::data_5x13x4), this))
{
}
diff --git a/src/devices/cpu/tlcs870/tlcs870.cpp b/src/devices/cpu/tlcs870/tlcs870.cpp
index 4488ccee744..881792f9730 100644
--- a/src/devices/cpu/tlcs870/tlcs870.cpp
+++ b/src/devices/cpu/tlcs870/tlcs870.cpp
@@ -75,7 +75,7 @@
DEFINE_DEVICE_TYPE(TMP87PH40AN, tmp87ph40an_device, "tmp87ph40an", "TMP87PH40AN")
-static ADDRESS_MAP_START(tmp87ph40an_mem, AS_PROGRAM, 8, tlcs870_device)
+ADDRESS_MAP_START(tlcs870_device::tmp87ph40an_mem)
#if 0
AM_RANGE(0x0000, 0x0000) AM_READWRITE(port0_r,port0_w)
AM_RANGE(0x0001, 0x0001) AM_READWRITE(port1_r,port1_w)
@@ -166,7 +166,7 @@ tlcs870_device::tlcs870_device(const machine_config &mconfig, device_type type,
tmp87ph40an_device::tmp87ph40an_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tlcs870_device(mconfig, TMP87PH40AN, tag, owner, clock, ADDRESS_MAP_NAME(tmp87ph40an_mem))
+ : tlcs870_device(mconfig, TMP87PH40AN, tag, owner, clock, address_map_constructor(FUNC(tmp87ph40an_device::tmp87ph40an_mem), this))
{
}
diff --git a/src/devices/cpu/tlcs870/tlcs870.h b/src/devices/cpu/tlcs870/tlcs870.h
index ae05b38193f..0775f4a8f1e 100644
--- a/src/devices/cpu/tlcs870/tlcs870.h
+++ b/src/devices/cpu/tlcs870/tlcs870.h
@@ -108,6 +108,8 @@ protected:
// device_disasm_interface overrides
virtual util::disasm_interface *create_disassembler() override;
+ void tmp87ph40an_mem(address_map &map);
+
uint32_t m_debugger_temp;
private:
diff --git a/src/devices/cpu/tlcs90/tlcs90.cpp b/src/devices/cpu/tlcs90/tlcs90.cpp
index 593e454605f..6600ce9d223 100644
--- a/src/devices/cpu/tlcs90/tlcs90.cpp
+++ b/src/devices/cpu/tlcs90/tlcs90.cpp
@@ -41,31 +41,31 @@ enum e_ir
};
-static ADDRESS_MAP_START(tmp90840_mem, AS_PROGRAM, 8, tlcs90_device)
+ADDRESS_MAP_START(tlcs90_device::tmp90840_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_ROM // 8KB ROM (internal)
AM_RANGE( 0xfec0, 0xffbf ) AM_RAM // 256b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp90841_mem, AS_PROGRAM, 8, tlcs90_device)
+ADDRESS_MAP_START(tlcs90_device::tmp90841_mem)
// AM_RANGE( 0x0000, 0x1fff ) AM_ROM // rom-less
AM_RANGE( 0xfec0, 0xffbf ) AM_RAM // 256b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp91640_mem, AS_PROGRAM, 8, tlcs90_device )
+ADDRESS_MAP_START(tlcs90_device::tmp91640_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM // 16KB ROM (internal)
AM_RANGE( 0xfdc0, 0xffbf ) AM_RAM // 512b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp91641_mem, AS_PROGRAM, 8, tlcs90_device )
+ADDRESS_MAP_START(tlcs90_device::tmp91641_mem)
// AM_RANGE( 0x0000, 0x3fff ) AM_ROM // rom-less
AM_RANGE( 0xfdc0, 0xffbf ) AM_RAM // 512b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp90ph44_mem, AS_PROGRAM, 8, tlcs90_device )
+ADDRESS_MAP_START(tlcs90_device::tmp90ph44_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM // 16KB PROM (internal)
AM_RANGE( 0xfdc0, 0xffbf ) AM_RAM // 512b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+55 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w ) // TODO: has 8 more registers
@@ -82,36 +82,36 @@ tlcs90_device::tlcs90_device(const machine_config &mconfig, device_type type, co
tmp90840_device::tmp90840_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tlcs90_device(mconfig, TMP90840, tag, owner, clock, ADDRESS_MAP_NAME(tmp90840_mem))
+ : tlcs90_device(mconfig, TMP90840, tag, owner, clock, address_map_constructor(FUNC(tmp90840_device::tmp90840_mem), this))
{
}
tmp90841_device::tmp90841_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tlcs90_device(mconfig, TMP90841, tag, owner, clock, ADDRESS_MAP_NAME(tmp90841_mem))
+ : tlcs90_device(mconfig, TMP90841, tag, owner, clock, address_map_constructor(FUNC(tmp90841_device::tmp90841_mem), this))
{
}
tmp90845_device::tmp90845_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tlcs90_device(mconfig, TMP90845, tag, owner, clock, ADDRESS_MAP_NAME(tmp90841_mem))
+ : tlcs90_device(mconfig, TMP90845, tag, owner, clock, address_map_constructor(FUNC(tmp90845_device::tmp90841_mem), this))
{
}
tmp91640_device::tmp91640_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tlcs90_device(mconfig, TMP91640, tag, owner, clock, ADDRESS_MAP_NAME(tmp91640_mem))
+ : tlcs90_device(mconfig, TMP91640, tag, owner, clock, address_map_constructor(FUNC(tmp91640_device::tmp91640_mem), this))
{
}
tmp91641_device::tmp91641_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tlcs90_device(mconfig, TMP91641, tag, owner, clock, ADDRESS_MAP_NAME(tmp91641_mem))
+ : tlcs90_device(mconfig, TMP91641, tag, owner, clock, address_map_constructor(FUNC(tmp91641_device::tmp91641_mem), this))
{
}
tmp90ph44_device::tmp90ph44_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tlcs90_device(mconfig, TMP90PH44, tag, owner, clock, ADDRESS_MAP_NAME(tmp90ph44_mem))
+ : tlcs90_device(mconfig, TMP90PH44, tag, owner, clock, address_map_constructor(FUNC(tmp90ph44_device::tmp90ph44_mem), this))
{
}
diff --git a/src/devices/cpu/tlcs90/tlcs90.h b/src/devices/cpu/tlcs90/tlcs90.h
index 589eae3025c..abd4c081c40 100644
--- a/src/devices/cpu/tlcs90/tlcs90.h
+++ b/src/devices/cpu/tlcs90/tlcs90.h
@@ -78,6 +78,11 @@ public:
TIMER_CALLBACK_MEMBER( t90_timer_callback );
TIMER_CALLBACK_MEMBER( t90_timer4_callback );
+ void tmp90840_mem(address_map &map);
+ void tmp90841_mem(address_map &map);
+ void tmp90ph44_mem(address_map &map);
+ void tmp91640_mem(address_map &map);
+ void tmp91641_mem(address_map &map);
protected:
enum _e_op { UNKNOWN, NOP, EX, EXX, LD, LDW, LDA, LDI, LDIR, LDD, LDDR, CPI, CPIR, CPD, CPDR, PUSH, POP, JP, JR, CALL, CALLR, RET, RETI, HALT, DI, EI, SWI, DAA, CPL, NEG, LDAR, RCF, SCF, CCF, TSET, BIT, SET, RES, INC, DEC, INCX, DECX, INCW, DECW, ADD, ADC, SUB, SBC, AND, XOR, OR, CP, RLC, RRC, RL, RR, SLA, SRA, SLL, SRL, RLD, RRD, DJNZ, MUL, DIV };
diff --git a/src/devices/cpu/tlcs900/tlcs900.cpp b/src/devices/cpu/tlcs900/tlcs900.cpp
index 26e1678078d..08495008887 100644
--- a/src/devices/cpu/tlcs900/tlcs900.cpp
+++ b/src/devices/cpu/tlcs900/tlcs900.cpp
@@ -25,20 +25,20 @@ DEFINE_DEVICE_TYPE(TMP95C061, tmp95c061_device, "tmp95c061", "TMP95C061")
DEFINE_DEVICE_TYPE(TMP95C063, tmp95c063_device, "tmp95c063", "TMP95C063")
-static ADDRESS_MAP_START( tmp95c061_mem8, AS_PROGRAM, 8, tmp95c061_device )
+ADDRESS_MAP_START(tmp95c061_device::tmp95c061_mem8)
AM_RANGE( 0x000000, 0x00007f ) AM_READWRITE( internal_r, internal_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmp95c061_mem16, AS_PROGRAM, 16, tmp95c061_device )
+ADDRESS_MAP_START(tmp95c061_device::tmp95c061_mem16)
AM_RANGE( 0x000000, 0x00007f ) AM_READWRITE8( internal_r, internal_w, 0xffff )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp95c063_mem8, AS_PROGRAM, 8, tmp95c063_device )
+ADDRESS_MAP_START(tmp95c063_device::tmp95c063_mem8)
AM_RANGE( 0x000000, 0x00009f ) AM_READWRITE( internal_r, internal_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp95c063_mem16, AS_PROGRAM, 16, tmp95c063_device )
+ADDRESS_MAP_START(tmp95c063_device::tmp95c063_mem16)
AM_RANGE( 0x000000, 0x00009f ) AM_READWRITE8( internal_r, internal_w, 0xffff )
ADDRESS_MAP_END
@@ -87,11 +87,11 @@ void tmp95c061_device::device_config_complete()
{
if (m_am8_16 == 0)
{
- m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 16, 24, 0, ADDRESS_MAP_NAME(tmp95c061_mem16));
+ m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 16, 24, 0, address_map_constructor(FUNC(tmp95c061_device::tmp95c061_mem16), this));
}
else
{
- m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 8, 24, 0, ADDRESS_MAP_NAME(tmp95c061_mem8));
+ m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 8, 24, 0, address_map_constructor(FUNC(tmp95c061_device::tmp95c061_mem8), this));
}
}
@@ -140,11 +140,11 @@ void tmp95c063_device::device_config_complete()
{
if (m_am8_16 == 0)
{
- m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 16, 24, 0, ADDRESS_MAP_NAME(tmp95c063_mem16));
+ m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 16, 24, 0, address_map_constructor(FUNC(tmp95c063_device::tmp95c063_mem16), this));
}
else
{
- m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 8, 24, 0, ADDRESS_MAP_NAME(tmp95c063_mem8));
+ m_program_config = address_space_config("program", ENDIANNESS_LITTLE, 8, 24, 0, address_map_constructor(FUNC(tmp95c063_device::tmp95c063_mem8), this));
}
}
diff --git a/src/devices/cpu/tlcs900/tlcs900.h b/src/devices/cpu/tlcs900/tlcs900.h
index 0fbedad0f23..536bc8f99a8 100644
--- a/src/devices/cpu/tlcs900/tlcs900.h
+++ b/src/devices/cpu/tlcs900/tlcs900.h
@@ -670,6 +670,8 @@ public:
DECLARE_READ8_MEMBER( internal_r );
DECLARE_WRITE8_MEMBER( internal_w );
+ void tmp95c061_mem16(address_map &map);
+ void tmp95c061_mem8(address_map &map);
protected:
virtual void device_config_complete() override;
virtual void device_start() override;
@@ -805,6 +807,8 @@ public:
template <class Object> static devcb_base &set_an6_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an6_read.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_an7_read(device_t &device, Object &&cb) { return downcast<tmp95c063_device &>(device).m_an7_read.set_callback(std::forward<Object>(cb)); }
+ void tmp95c063_mem16(address_map &map);
+ void tmp95c063_mem8(address_map &map);
protected:
virtual void device_config_complete() override;
virtual void device_start() override;
diff --git a/src/devices/cpu/tms1000/tms0270.cpp b/src/devices/cpu/tms1000/tms0270.cpp
index 68c15aa2569..95e6a09ffc5 100644
--- a/src/devices/cpu/tms1000/tms0270.cpp
+++ b/src/devices/cpu/tms1000/tms0270.cpp
@@ -22,11 +22,11 @@ DEFINE_DEVICE_TYPE(TMS0270, tms0270_cpu_device, "tms0270", "TMS0270") // 40-pin
// internal memory maps
-static ADDRESS_MAP_START(program_11bit_9, AS_PROGRAM, 16, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::program_11bit_9)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_144x4, AS_DATA, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::data_144x4)
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0x8f) AM_RAM AM_MIRROR(0x70) // DAM
ADDRESS_MAP_END
@@ -34,7 +34,7 @@ ADDRESS_MAP_END
// device definitions
tms0270_cpu_device::tms0270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms0980_cpu_device(mconfig, TMS0270, tag, owner, clock, 16 /* o pins */, 16 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 11 /* prg width */, ADDRESS_MAP_NAME(program_11bit_9), 8 /* data width */, ADDRESS_MAP_NAME(data_144x4))
+ : tms0980_cpu_device(mconfig, TMS0270, tag, owner, clock, 16 /* o pins */, 16 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 11 /* prg width */, address_map_constructor(FUNC(tms0270_cpu_device::program_11bit_9), this), 8 /* data width */, address_map_constructor(FUNC(tms0270_cpu_device::data_144x4), this))
, m_read_ctl(*this)
, m_write_ctl(*this)
, m_write_pdc(*this)
diff --git a/src/devices/cpu/tms1000/tms0970.cpp b/src/devices/cpu/tms1000/tms0970.cpp
index 2d28de1c440..19e3ec6a334 100644
--- a/src/devices/cpu/tms1000/tms0970.cpp
+++ b/src/devices/cpu/tms1000/tms0970.cpp
@@ -25,19 +25,9 @@ DEFINE_DEVICE_TYPE(TMS0970, tms0970_cpu_device, "tms0970", "TMS0970") // 28-pin
DEFINE_DEVICE_TYPE(TMS1990, tms1990_cpu_device, "tms1990", "TMS1990") // 28-pin DIP, ? R pins..
-// internal memory maps
-static ADDRESS_MAP_START(program_10bit_8, AS_PROGRAM, 8, tms1k_base_device)
- AM_RANGE(0x000, 0x3ff) AM_ROM
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START(data_64x4, AS_DATA, 8, tms1k_base_device)
- AM_RANGE(0x00, 0x3f) AM_RAM
-ADDRESS_MAP_END
-
-
// device definitions
tms0970_cpu_device::tms0970_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms0970_cpu_device(mconfig, TMS0970, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 10 /* prg width */, ADDRESS_MAP_NAME(program_10bit_8), 6 /* data width */, ADDRESS_MAP_NAME(data_64x4))
+ : tms0970_cpu_device(mconfig, TMS0970, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 10 /* prg width */, address_map_constructor(FUNC(tms0970_cpu_device::program_10bit_8), this), 6 /* data width */, address_map_constructor(FUNC(tms0970_cpu_device::data_64x4), this))
{
}
@@ -47,12 +37,12 @@ tms0970_cpu_device::tms0970_cpu_device(const machine_config &mconfig, device_typ
}
tms0950_cpu_device::tms0950_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms0970_cpu_device(mconfig, TMS0950, tag, owner, clock, 8, 11, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_10bit_8), 6, ADDRESS_MAP_NAME(data_64x4))
+ : tms0970_cpu_device(mconfig, TMS0950, tag, owner, clock, 8, 11, 6, 8, 2, 10, address_map_constructor(FUNC(tms0950_cpu_device::program_10bit_8), this), 6, address_map_constructor(FUNC(tms0950_cpu_device::data_64x4), this))
{
}
tms1990_cpu_device::tms1990_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms0970_cpu_device(mconfig, TMS1990, tag, owner, clock, 8, 11, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_10bit_8), 6, ADDRESS_MAP_NAME(data_64x4))
+ : tms0970_cpu_device(mconfig, TMS1990, tag, owner, clock, 8, 11, 6, 8, 2, 10, address_map_constructor(FUNC(tms1990_cpu_device::program_10bit_8), this), 6, address_map_constructor(FUNC(tms1990_cpu_device::data_64x4), this))
{
}
diff --git a/src/devices/cpu/tms1000/tms0980.cpp b/src/devices/cpu/tms1000/tms0980.cpp
index 9ea65497e09..683af443cd9 100644
--- a/src/devices/cpu/tms1000/tms0980.cpp
+++ b/src/devices/cpu/tms1000/tms0980.cpp
@@ -30,20 +30,10 @@ DEFINE_DEVICE_TYPE(TMS0980, tms0980_cpu_device, "tms0980", "TMS0980") // 28-pin
DEFINE_DEVICE_TYPE(TMS1980, tms1980_cpu_device, "tms1980", "TMS1980") // 28-pin DIP, 7 O pins, 10 R pins, high voltage
-// internal memory maps
-static ADDRESS_MAP_START(program_11bit_9, AS_PROGRAM, 16, tms1k_base_device)
- AM_RANGE(0x000, 0x7ff) AM_ROM
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START(data_144x4, AS_DATA, 8, tms1k_base_device)
- AM_RANGE(0x00, 0x7f) AM_RAM
- AM_RANGE(0x80, 0x8f) AM_RAM AM_MIRROR(0x70) // DAM
-ADDRESS_MAP_END
-
// device definitions
tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms0980_cpu_device(mconfig, TMS0980, tag, owner, clock, 8 /* o pins */, 9 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 11 /* prg width */, ADDRESS_MAP_NAME(program_11bit_9), 8 /* data width */, ADDRESS_MAP_NAME(data_144x4))
+ : tms0980_cpu_device(mconfig, TMS0980, tag, owner, clock, 8 /* o pins */, 9 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 11 /* prg width */, address_map_constructor(FUNC(tms0980_cpu_device::program_11bit_9), this), 8 /* data width */, address_map_constructor(FUNC(tms0980_cpu_device::data_144x4), this))
{
}
@@ -53,7 +43,7 @@ tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, device_typ
}
tms1980_cpu_device::tms1980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms0980_cpu_device(mconfig, TMS1980, tag, owner, clock, 7, 10, 7, 9, 4, 11, ADDRESS_MAP_NAME(program_11bit_9), 8, ADDRESS_MAP_NAME(data_144x4))
+ : tms0980_cpu_device(mconfig, TMS1980, tag, owner, clock, 7, 10, 7, 9, 4, 11, address_map_constructor(FUNC(tms1980_cpu_device::program_11bit_9), this), 8, address_map_constructor(FUNC(tms1980_cpu_device::data_144x4), this))
{
}
diff --git a/src/devices/cpu/tms1000/tms1000.cpp b/src/devices/cpu/tms1000/tms1000.cpp
index 9ea38e4dd62..1f3e5d32c0a 100644
--- a/src/devices/cpu/tms1000/tms1000.cpp
+++ b/src/devices/cpu/tms1000/tms1000.cpp
@@ -37,19 +37,19 @@ DEFINE_DEVICE_TYPE(MC141200, mc141200_cpu_device, "mc141200", "MC141200") // CMO
// internal memory maps
-static ADDRESS_MAP_START(program_10bit_8, AS_PROGRAM, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::program_10bit_8)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_9bit_8, AS_PROGRAM, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::program_9bit_8)
AM_RANGE(0x000, 0x1ff) AM_MIRROR(0x200) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_64x4, AS_DATA, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::data_64x4)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_32x4, AS_DATA, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::data_32x4)
AM_RANGE(0x00, 0x3f) AM_RAM
AM_RANGE(0x08, 0x0f) AM_MIRROR(0x30) AM_NOP // override
ADDRESS_MAP_END
@@ -57,7 +57,7 @@ ADDRESS_MAP_END
// device definitions
tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, TMS1000, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 10 /* prg width */, ADDRESS_MAP_NAME(program_10bit_8), 6 /* data width */, ADDRESS_MAP_NAME(data_64x4))
+ : tms1000_cpu_device(mconfig, TMS1000, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 10 /* prg width */, address_map_constructor(FUNC(tms1000_cpu_device::program_10bit_8), this), 6 /* data width */, address_map_constructor(FUNC(tms1000_cpu_device::data_64x4), this))
{
}
@@ -67,37 +67,37 @@ tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, device_typ
}
tms1070_cpu_device::tms1070_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, TMS1070, tag, owner, clock, 8, 11, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_10bit_8), 6, ADDRESS_MAP_NAME(data_64x4))
+ : tms1000_cpu_device(mconfig, TMS1070, tag, owner, clock, 8, 11, 6, 8, 2, 10, address_map_constructor(FUNC(tms1070_cpu_device::program_10bit_8), this), 6, address_map_constructor(FUNC(tms1070_cpu_device::data_64x4), this))
{
}
tms1040_cpu_device::tms1040_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, TMS1040, tag, owner, clock, 8, 11, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_10bit_8), 6, ADDRESS_MAP_NAME(data_64x4))
+ : tms1000_cpu_device(mconfig, TMS1040, tag, owner, clock, 8, 11, 6, 8, 2, 10, address_map_constructor(FUNC(tms1040_cpu_device::program_10bit_8), this), 6, address_map_constructor(FUNC(tms1040_cpu_device::data_64x4), this))
{
}
tms1200_cpu_device::tms1200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, TMS1200, tag, owner, clock, 8, 13, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_10bit_8), 6, ADDRESS_MAP_NAME(data_64x4))
+ : tms1000_cpu_device(mconfig, TMS1200, tag, owner, clock, 8, 13, 6, 8, 2, 10, address_map_constructor(FUNC(tms1200_cpu_device::program_10bit_8), this), 6, address_map_constructor(FUNC(tms1200_cpu_device::data_64x4), this))
{
}
tms1700_cpu_device::tms1700_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, TMS1700, tag, owner, clock, 8, 9, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_9bit_8), 6, ADDRESS_MAP_NAME(data_32x4))
+ : tms1000_cpu_device(mconfig, TMS1700, tag, owner, clock, 8, 9, 6, 8, 2, 10, address_map_constructor(FUNC(tms1700_cpu_device::program_9bit_8), this), 6, address_map_constructor(FUNC(tms1700_cpu_device::data_32x4), this))
{
}
tms1730_cpu_device::tms1730_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, TMS1730, tag, owner, clock, 8, 9, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_9bit_8), 6, ADDRESS_MAP_NAME(data_32x4))
+ : tms1000_cpu_device(mconfig, TMS1730, tag, owner, clock, 8, 9, 6, 8, 2, 10, address_map_constructor(FUNC(tms1730_cpu_device::program_9bit_8), this), 6, address_map_constructor(FUNC(tms1730_cpu_device::data_32x4), this))
{
}
mc141000_cpu_device::mc141000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, MC141000, tag, owner, clock, 8, 11, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_10bit_8), 6, ADDRESS_MAP_NAME(data_64x4))
+ : tms1000_cpu_device(mconfig, MC141000, tag, owner, clock, 8, 11, 6, 8, 2, 10, address_map_constructor(FUNC(mc141000_cpu_device::program_10bit_8), this), 6, address_map_constructor(FUNC(mc141000_cpu_device::data_64x4), this))
{
}
mc141200_cpu_device::mc141200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, MC141200, tag, owner, clock, 8, 16, 6, 8, 2, 10, ADDRESS_MAP_NAME(program_10bit_8), 6, ADDRESS_MAP_NAME(data_64x4))
+ : tms1000_cpu_device(mconfig, MC141200, tag, owner, clock, 8, 16, 6, 8, 2, 10, address_map_constructor(FUNC(mc141200_cpu_device::program_10bit_8), this), 6, address_map_constructor(FUNC(mc141200_cpu_device::data_64x4), this))
{
}
diff --git a/src/devices/cpu/tms1000/tms1000c.cpp b/src/devices/cpu/tms1000/tms1000c.cpp
index c6f2af7f8e9..898d1a3a26e 100644
--- a/src/devices/cpu/tms1000/tms1000c.cpp
+++ b/src/devices/cpu/tms1000/tms1000c.cpp
@@ -23,19 +23,9 @@
DEFINE_DEVICE_TYPE(TMS1000C, tms1000c_cpu_device, "tms1000c", "TMS1000C") // 28-pin SDIP, 10 R pins
-// internal memory maps
-static ADDRESS_MAP_START(program_10bit_8, AS_PROGRAM, 8, tms1k_base_device)
- AM_RANGE(0x000, 0x3ff) AM_ROM
-ADDRESS_MAP_END
-
-static ADDRESS_MAP_START(data_64x4, AS_DATA, 8, tms1k_base_device)
- AM_RANGE(0x00, 0x3f) AM_RAM
-ADDRESS_MAP_END
-
-
// device definitions
tms1000c_cpu_device::tms1000c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1000_cpu_device(mconfig, TMS1000C, tag, owner, clock, 8 /* o pins */, 10 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 10 /* prg width */, ADDRESS_MAP_NAME(program_10bit_8), 6 /* data width */, ADDRESS_MAP_NAME(data_64x4))
+ : tms1000_cpu_device(mconfig, TMS1000C, tag, owner, clock, 8 /* o pins */, 10 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 10 /* prg width */, address_map_constructor(FUNC(tms1000c_cpu_device::program_10bit_8), this), 6 /* data width */, address_map_constructor(FUNC(tms1000c_cpu_device::data_64x4), this))
{
}
diff --git a/src/devices/cpu/tms1000/tms1100.cpp b/src/devices/cpu/tms1000/tms1100.cpp
index 9f654009bbe..bc6f6cdc7bf 100644
--- a/src/devices/cpu/tms1000/tms1100.cpp
+++ b/src/devices/cpu/tms1000/tms1100.cpp
@@ -22,18 +22,18 @@ DEFINE_DEVICE_TYPE(TMS1370, tms1370_cpu_device, "tms1370", "TMS1370") // high vo
// internal memory maps
-static ADDRESS_MAP_START(program_11bit_8, AS_PROGRAM, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::program_11bit_8)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_128x4, AS_DATA, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::data_128x4)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
// device definitions
tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1100_cpu_device(mconfig, TMS1100, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 11 /* prg width */, ADDRESS_MAP_NAME(program_11bit_8), 7 /* data width */, ADDRESS_MAP_NAME(data_128x4))
+ : tms1100_cpu_device(mconfig, TMS1100, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 11 /* prg width */, address_map_constructor(FUNC(tms1100_cpu_device::program_11bit_8), this), 7 /* data width */, address_map_constructor(FUNC(tms1100_cpu_device::data_128x4), this))
{
}
@@ -43,17 +43,17 @@ tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, device_typ
}
tms1170_cpu_device::tms1170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1100_cpu_device(mconfig, TMS1170, tag, owner, clock, 8, 11, 6, 8, 3, 11, ADDRESS_MAP_NAME(program_11bit_8), 7, ADDRESS_MAP_NAME(data_128x4))
+ : tms1100_cpu_device(mconfig, TMS1170, tag, owner, clock, 8, 11, 6, 8, 3, 11, address_map_constructor(FUNC(tms1170_cpu_device::program_11bit_8), this), 7, address_map_constructor(FUNC(tms1170_cpu_device::data_128x4), this))
{
}
tms1300_cpu_device::tms1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1100_cpu_device(mconfig, TMS1300, tag, owner, clock, 8, 16, 6, 8, 3, 11, ADDRESS_MAP_NAME(program_11bit_8), 7, ADDRESS_MAP_NAME(data_128x4))
+ : tms1100_cpu_device(mconfig, TMS1300, tag, owner, clock, 8, 16, 6, 8, 3, 11, address_map_constructor(FUNC(tms1300_cpu_device::program_11bit_8), this), 7, address_map_constructor(FUNC(tms1300_cpu_device::data_128x4), this))
{
}
tms1370_cpu_device::tms1370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1100_cpu_device(mconfig, TMS1370, tag, owner, clock, 8, 16, 6, 8, 3, 11, ADDRESS_MAP_NAME(program_11bit_8), 7, ADDRESS_MAP_NAME(data_128x4))
+ : tms1100_cpu_device(mconfig, TMS1370, tag, owner, clock, 8, 16, 6, 8, 3, 11, address_map_constructor(FUNC(tms1370_cpu_device::program_11bit_8), this), 7, address_map_constructor(FUNC(tms1370_cpu_device::data_128x4), this))
{
}
diff --git a/src/devices/cpu/tms1000/tms1400.cpp b/src/devices/cpu/tms1000/tms1400.cpp
index dd36d4b6ee0..5f3f1ddc5df 100644
--- a/src/devices/cpu/tms1000/tms1400.cpp
+++ b/src/devices/cpu/tms1000/tms1400.cpp
@@ -27,18 +27,13 @@ DEFINE_DEVICE_TYPE(TMS1670, tms1670_cpu_device, "tms1670", "TMS1670") // high vo
// internal memory maps
-static ADDRESS_MAP_START(program_12bit_8, AS_PROGRAM, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::program_12bit_8)
AM_RANGE(0x000, 0xfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_128x4, AS_DATA, 8, tms1k_base_device)
- AM_RANGE(0x00, 0x7f) AM_RAM
-ADDRESS_MAP_END
-
-
// device definitions
tms1400_cpu_device::tms1400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1400_cpu_device(mconfig, TMS1400, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 12 /* prg width */, ADDRESS_MAP_NAME(program_12bit_8), 7 /* data width */, ADDRESS_MAP_NAME(data_128x4))
+ : tms1400_cpu_device(mconfig, TMS1400, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 12 /* prg width */, address_map_constructor(FUNC(tms1400_cpu_device::program_12bit_8), this), 7 /* data width */, address_map_constructor(FUNC(tms1400_cpu_device::data_128x4), this))
{
}
@@ -48,13 +43,13 @@ tms1400_cpu_device::tms1400_cpu_device(const machine_config &mconfig, device_typ
}
tms1470_cpu_device::tms1470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1400_cpu_device(mconfig, TMS1470, tag, owner, clock, 8, 10, 6, 8, 3, 12, ADDRESS_MAP_NAME(program_12bit_8), 7, ADDRESS_MAP_NAME(data_128x4))
+ : tms1400_cpu_device(mconfig, TMS1470, tag, owner, clock, 8, 10, 6, 8, 3, 12, address_map_constructor(FUNC(tms1470_cpu_device::program_12bit_8), this), 7, address_map_constructor(FUNC(tms1470_cpu_device::data_128x4), this))
{
}
tms1600_cpu_device::tms1600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1600_cpu_device(mconfig, TMS1600, tag, owner, clock, 8, 16, 6, 8, 3, 12, ADDRESS_MAP_NAME(program_12bit_8), 7, ADDRESS_MAP_NAME(data_128x4))
+ : tms1600_cpu_device(mconfig, TMS1600, tag, owner, clock, 8, 16, 6, 8, 3, 12, address_map_constructor(FUNC(tms1600_cpu_device::program_12bit_8), this), 7, address_map_constructor(FUNC(tms1600_cpu_device::data_128x4), this))
{
}
@@ -64,7 +59,7 @@ tms1600_cpu_device::tms1600_cpu_device(const machine_config &mconfig, device_typ
}
tms1670_cpu_device::tms1670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms1600_cpu_device(mconfig, TMS1670, tag, owner, clock, 8, 16, 6, 8, 3, 12, ADDRESS_MAP_NAME(program_12bit_8), 7, ADDRESS_MAP_NAME(data_128x4))
+ : tms1600_cpu_device(mconfig, TMS1670, tag, owner, clock, 8, 16, 6, 8, 3, 12, address_map_constructor(FUNC(tms1670_cpu_device::program_12bit_8), this), 7, address_map_constructor(FUNC(tms1670_cpu_device::data_128x4), this))
{
}
diff --git a/src/devices/cpu/tms1000/tms1k_base.h b/src/devices/cpu/tms1000/tms1k_base.h
index e34e93e7d1c..db7df7fc3e9 100644
--- a/src/devices/cpu/tms1000/tms1k_base.h
+++ b/src/devices/cpu/tms1000/tms1k_base.h
@@ -96,6 +96,16 @@ public:
u8 debug_peek_o_index() { return m_o_index; } // get output PLA index, for debugging (don't use in emulation)
+ void data_128x4(address_map &map);
+ void data_144x4(address_map &map);
+ void data_192x4(address_map &map);
+ void data_32x4(address_map &map);
+ void data_64x4(address_map &map);
+ void program_10bit_8(address_map &map);
+ void program_11bit_8(address_map &map);
+ void program_11bit_9(address_map &map);
+ void program_12bit_8(address_map &map);
+ void program_9bit_8(address_map &map);
protected:
// construction/destruction
tms1k_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data);
diff --git a/src/devices/cpu/tms1000/tp0320.cpp b/src/devices/cpu/tms1000/tp0320.cpp
index 16d2faa63f9..4231c69b804 100644
--- a/src/devices/cpu/tms1000/tp0320.cpp
+++ b/src/devices/cpu/tms1000/tp0320.cpp
@@ -27,11 +27,11 @@ DEFINE_DEVICE_TYPE(TP0320, tp0320_cpu_device, "tp0320", "TP0320") // 28-pin SDIP
// internal memory maps
-static ADDRESS_MAP_START(program_11bit_9, AS_PROGRAM, 16, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::program_11bit_9)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_192x4, AS_DATA, 8, tms1k_base_device)
+ADDRESS_MAP_START(tms1k_base_device::data_192x4)
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0xbf) AM_RAM AM_MIRROR(0x40) // DAM
ADDRESS_MAP_END
@@ -39,7 +39,7 @@ ADDRESS_MAP_END
// device definitions
tp0320_cpu_device::tp0320_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : tms0980_cpu_device(mconfig, TP0320, tag, owner, clock, 7 /* o pins */, 10 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 11 /* prg width */, ADDRESS_MAP_NAME(program_11bit_9), 8 /* data width */, ADDRESS_MAP_NAME(data_192x4))
+ : tms0980_cpu_device(mconfig, TP0320, tag, owner, clock, 7 /* o pins */, 10 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 11 /* prg width */, address_map_constructor(FUNC(tp0320_cpu_device::program_11bit_9), this), 8 /* data width */, address_map_constructor(FUNC(tp0320_cpu_device::data_192x4), this))
{
}
diff --git a/src/devices/cpu/tms32010/tms32010.cpp b/src/devices/cpu/tms32010/tms32010.cpp
index 968e7bde61f..e30ec15c254 100644
--- a/src/devices/cpu/tms32010/tms32010.cpp
+++ b/src/devices/cpu/tms32010/tms32010.cpp
@@ -83,7 +83,7 @@ DEFINE_DEVICE_TYPE(TMS32016, tms32016_device, "tms32016", "TMS32016")
* TMS32010 Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( tms32010_ram, AS_DATA, 16, tms32010_device )
+ADDRESS_MAP_START(tms32010_device::tms32010_ram)
AM_RANGE(0x00, 0x7f) AM_RAM /* Page 0 */
AM_RANGE(0x80, 0x8f) AM_RAM /* Page 1 */
ADDRESS_MAP_END
@@ -92,14 +92,14 @@ ADDRESS_MAP_END
* TMS32015/6 Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( tms32015_ram, AS_DATA, 16, tms32010_device )
+ADDRESS_MAP_START(tms32010_device::tms32015_ram)
AM_RANGE(0x00, 0x7f) AM_RAM /* Page 0 */
AM_RANGE(0x80, 0xff) AM_RAM /* Page 1 */
ADDRESS_MAP_END
tms32010_device::tms32010_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms32010_device(mconfig, TMS32010, tag, owner, clock, ADDRESS_MAP_NAME(tms32010_ram), 0x0fff)
+ : tms32010_device(mconfig, TMS32010, tag, owner, clock, address_map_constructor(FUNC(tms32010_device::tms32010_ram), this), 0x0fff)
{
}
@@ -116,13 +116,13 @@ tms32010_device::tms32010_device(const machine_config &mconfig, device_type type
tms32015_device::tms32015_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms32010_device(mconfig, TMS32015, tag, owner, clock, ADDRESS_MAP_NAME(tms32015_ram), 0x0fff)
+ : tms32010_device(mconfig, TMS32015, tag, owner, clock, address_map_constructor(FUNC(tms32015_device::tms32015_ram), this), 0x0fff)
{
}
tms32016_device::tms32016_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms32010_device(mconfig, TMS32016, tag, owner, clock, ADDRESS_MAP_NAME(tms32015_ram), 0xffff)
+ : tms32010_device(mconfig, TMS32016, tag, owner, clock, address_map_constructor(FUNC(tms32016_device::tms32015_ram), this), 0xffff)
{
}
diff --git a/src/devices/cpu/tms32010/tms32010.h b/src/devices/cpu/tms32010/tms32010.h
index eb1e40370e1..b7ed35d7853 100644
--- a/src/devices/cpu/tms32010/tms32010.h
+++ b/src/devices/cpu/tms32010/tms32010.h
@@ -47,6 +47,8 @@ public:
// static configuration helpers
template <class Object> static devcb_base & set_bio_in_cb(device_t &device, Object &&cb) { return downcast<tms32010_device &>(device).m_bio_in.set_callback(std::forward<Object>(cb)); }
+ void tms32010_ram(address_map &map);
+ void tms32015_ram(address_map &map);
protected:
tms32010_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor data_map, int addr_mask);
diff --git a/src/devices/cpu/tms32025/tms32025.cpp b/src/devices/cpu/tms32025/tms32025.cpp
index 74529d79894..9efad675aad 100644
--- a/src/devices/cpu/tms32025/tms32025.cpp
+++ b/src/devices/cpu/tms32025/tms32025.cpp
@@ -187,7 +187,7 @@ Table 3-2. TMS32025/26 Memory Blocks
DEFINE_DEVICE_TYPE(TMS32025, tms32025_device, "tms32025", "TMS32025")
DEFINE_DEVICE_TYPE(TMS32026, tms32026_device, "tms32026", "TMS32026")
-static ADDRESS_MAP_START( tms32025_data, AS_DATA, 16, tms32025_device )
+ADDRESS_MAP_START(tms32025_device::tms32025_data)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(drr_r, drr_w)
AM_RANGE(0x0001, 0x0001) AM_READWRITE(dxr_r, dxr_w)
AM_RANGE(0x0002, 0x0002) AM_READWRITE(tim_r, tim_w)
@@ -199,7 +199,7 @@ static ADDRESS_MAP_START( tms32025_data, AS_DATA, 16, tms32025_device )
AM_RANGE(0x0300, 0x03ff) AM_RAM AM_SHARE("b1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms32026_data, AS_DATA, 16, tms32025_device )
+ADDRESS_MAP_START(tms32025_device::tms32026_data)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(drr_r, drr_w)
AM_RANGE(0x0001, 0x0001) AM_READWRITE(dxr_r, dxr_w)
AM_RANGE(0x0002, 0x0002) AM_READWRITE(tim_r, tim_w)
@@ -214,7 +214,7 @@ ADDRESS_MAP_END
tms32025_device::tms32025_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms32025_device(mconfig, TMS32025, tag, owner, clock, ADDRESS_MAP_NAME(tms32025_data))
+ : tms32025_device(mconfig, TMS32025, tag, owner, clock, address_map_constructor(FUNC(tms32025_device::tms32025_data), this))
{
m_fixed_STR1 = 0x0180;
}
@@ -240,7 +240,7 @@ tms32025_device::tms32025_device(const machine_config &mconfig, device_type type
tms32026_device::tms32026_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms32025_device(mconfig, TMS32026, tag, owner, clock, ADDRESS_MAP_NAME(tms32026_data))
+ : tms32025_device(mconfig, TMS32026, tag, owner, clock, address_map_constructor(FUNC(tms32026_device::tms32026_data), this))
{
m_fixed_STR1 = 0x0100;
}
diff --git a/src/devices/cpu/tms32025/tms32025.h b/src/devices/cpu/tms32025/tms32025.h
index 66c76bc001b..ade0a0289d6 100644
--- a/src/devices/cpu/tms32025/tms32025.h
+++ b/src/devices/cpu/tms32025/tms32025.h
@@ -104,6 +104,8 @@ public:
DECLARE_READ16_MEMBER( greg_r);
DECLARE_WRITE16_MEMBER(greg_w);
+ void tms32025_data(address_map &map);
+ void tms32026_data(address_map &map);
protected:
tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map);
diff --git a/src/devices/cpu/tms32031/tms32031.cpp b/src/devices/cpu/tms32031/tms32031.cpp
index 6f75d3a82cb..baa8a3c8fbe 100644
--- a/src/devices/cpu/tms32031/tms32031.cpp
+++ b/src/devices/cpu/tms32031/tms32031.cpp
@@ -93,11 +93,11 @@ DEFINE_DEVICE_TYPE(TMS32032, tms32032_device, "tms32032", "TMS32032")
// internal memory maps
-static ADDRESS_MAP_START( internal_32031, AS_PROGRAM, 32, tms32031_device )
+ADDRESS_MAP_START(tms32031_device::internal_32031)
AM_RANGE(0x809800, 0x809fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( internal_32032, AS_PROGRAM, 32, tms32032_device )
+ADDRESS_MAP_START(tms32032_device::internal_32032)
AM_RANGE(0x87fe00, 0x87ffff) AM_RAM
ADDRESS_MAP_END
@@ -282,12 +282,12 @@ tms3203x_device::tms3203x_device(const machine_config &mconfig, device_type type
}
tms32031_device::tms32031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms3203x_device(mconfig, TMS32031, tag, owner, clock, CHIP_TYPE_TMS32031, ADDRESS_MAP_NAME(internal_32031))
+ : tms3203x_device(mconfig, TMS32031, tag, owner, clock, CHIP_TYPE_TMS32031, address_map_constructor(FUNC(tms32031_device::internal_32031), this))
{
}
tms32032_device::tms32032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms3203x_device(mconfig, TMS32032, tag, owner, clock, CHIP_TYPE_TMS32032, ADDRESS_MAP_NAME(internal_32032))
+ : tms3203x_device(mconfig, TMS32032, tag, owner, clock, CHIP_TYPE_TMS32032, address_map_constructor(FUNC(tms32032_device::internal_32032), this))
{
}
diff --git a/src/devices/cpu/tms32031/tms32031.h b/src/devices/cpu/tms32031/tms32031.h
index 14ac97cd6d0..be5ef8d3c42 100644
--- a/src/devices/cpu/tms32031/tms32031.h
+++ b/src/devices/cpu/tms32031/tms32031.h
@@ -791,6 +791,7 @@ class tms32031_device : public tms3203x_device
public:
// construction/destruction
tms32031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void internal_32031(address_map &map);
};
@@ -801,6 +802,7 @@ class tms32032_device : public tms3203x_device
public:
// construction/destruction
tms32032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void internal_32032(address_map &map);
};
diff --git a/src/devices/cpu/tms32051/tms32051.cpp b/src/devices/cpu/tms32051/tms32051.cpp
index 721d1fd1bcb..e70c1f54a39 100644
--- a/src/devices/cpu/tms32051/tms32051.cpp
+++ b/src/devices/cpu/tms32051/tms32051.cpp
@@ -55,13 +55,13 @@ DEFINE_DEVICE_TYPE(TMS32053, tms32053_device, "tms32053", "TMS32053")
* TMS32051 Internal memory map
**************************************************************************/
-static ADDRESS_MAP_START( tms32051_internal_pgm, AS_PROGRAM, 16, tms32051_device )
+ADDRESS_MAP_START(tms32051_device::tms32051_internal_pgm)
// AM_RANGE(0x0000, 0x1fff) AM_ROM // ROM TODO: is off-chip if MP/_MC = 0
AM_RANGE(0x2000, 0x23ff) AM_RAM AM_SHARE("saram") // SARAM TODO: is off-chip if RAM bit = 0
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("daram_b0") // DARAM B0 TODO: is off-chip if CNF = 0
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms32051_internal_data, AS_DATA, 16, tms32051_device )
+ADDRESS_MAP_START(tms32051_device::tms32051_internal_data)
AM_RANGE(0x0000, 0x005f) AM_READWRITE(cpuregs_r, cpuregs_w)
AM_RANGE(0x0060, 0x007f) AM_RAM // DARAM B2
AM_RANGE(0x0100, 0x02ff) AM_RAM AM_SHARE("daram_b0") // DARAM B0 TODO: is unconnected if CNF = 1
@@ -79,7 +79,7 @@ tms32051_device::tms32051_device(const machine_config &mconfig, device_type type
}
tms32051_device::tms32051_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms32051_device(mconfig, TMS32051, tag, owner, clock, ADDRESS_MAP_NAME(tms32051_internal_pgm), ADDRESS_MAP_NAME(tms32051_internal_data))
+ : tms32051_device(mconfig, TMS32051, tag, owner, clock, address_map_constructor(FUNC(tms32051_device::tms32051_internal_pgm), this), address_map_constructor(FUNC(tms32051_device::tms32051_internal_data), this))
{
}
@@ -97,13 +97,13 @@ device_memory_interface::space_config_vector tms32051_device::memory_space_confi
* TMS32053 Internal memory map
**************************************************************************/
-static ADDRESS_MAP_START( tms32053_internal_pgm, AS_PROGRAM, 16, tms32053_device )
+ADDRESS_MAP_START(tms32053_device::tms32053_internal_pgm)
// AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM TODO: is off-chip if MP/_MC = 0
AM_RANGE(0x4000, 0x4bff) AM_RAM AM_SHARE("saram") // SARAM TODO: is off-chip if RAM bit = 0
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("daram_b0") // DARAM B0 TODO: is off-chip if CNF = 0
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms32053_internal_data, AS_DATA, 16, tms32053_device )
+ADDRESS_MAP_START(tms32053_device::tms32053_internal_data)
AM_RANGE(0x0000, 0x005f) AM_READWRITE(cpuregs_r, cpuregs_w)
AM_RANGE(0x0060, 0x007f) AM_RAM // DARAM B2
AM_RANGE(0x0100, 0x02ff) AM_RAM AM_SHARE("daram_b0") // DARAM B0 TODO: is unconnected if CNF = 1
@@ -113,7 +113,7 @@ ADDRESS_MAP_END
tms32053_device::tms32053_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms32051_device(mconfig, TMS32053, tag, owner, clock, ADDRESS_MAP_NAME(tms32053_internal_pgm), ADDRESS_MAP_NAME(tms32053_internal_data))
+ : tms32051_device(mconfig, TMS32053, tag, owner, clock, address_map_constructor(FUNC(tms32053_device::tms32053_internal_pgm), this), address_map_constructor(FUNC(tms32053_device::tms32053_internal_data), this))
{
}
diff --git a/src/devices/cpu/tms32051/tms32051.h b/src/devices/cpu/tms32051/tms32051.h
index 2f64822d62c..6c1ab166263 100644
--- a/src/devices/cpu/tms32051/tms32051.h
+++ b/src/devices/cpu/tms32051/tms32051.h
@@ -62,6 +62,8 @@ public:
DECLARE_READ16_MEMBER( cpuregs_r );
DECLARE_WRITE16_MEMBER( cpuregs_w );
+ void tms32051_internal_data(address_map &map);
+ void tms32051_internal_pgm(address_map &map);
protected:
tms32051_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_pgm, address_map_constructor internal_data);
@@ -373,6 +375,8 @@ public:
// construction/destruction
tms32053_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void tms32053_internal_data(address_map &map);
+ void tms32053_internal_pgm(address_map &map);
protected:
virtual void device_reset() override;
};
diff --git a/src/devices/cpu/tms32082/tms32082.cpp b/src/devices/cpu/tms32082/tms32082.cpp
index 392cd0d8738..7d111e330da 100644
--- a/src/devices/cpu/tms32082/tms32082.cpp
+++ b/src/devices/cpu/tms32082/tms32082.cpp
@@ -22,7 +22,7 @@ DEFINE_DEVICE_TYPE(TMS32082_PP, tms32082_pp_device, "tms32082_pp", "TMS32082 PP"
// Master Processor
// internal memory map
-static ADDRESS_MAP_START(mp_internal_map, AS_PROGRAM, 32, tms32082_mp_device)
+ADDRESS_MAP_START(tms32082_mp_device::mp_internal_map)
AM_RANGE(0x00000000, 0x00000fff) AM_RAM AM_SHARE("pp0_data0")
AM_RANGE(0x00001000, 0x00001fff) AM_RAM AM_SHARE("pp1_data0")
AM_RANGE(0x00008000, 0x00008fff) AM_RAM AM_SHARE("pp0_data1")
@@ -45,7 +45,7 @@ const uint32_t tms32082_mp_device::SHIFT_MASK[] =
tms32082_mp_device::tms32082_mp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, TMS32082_MP, tag, owner, clock)
- , m_program_config("program", ENDIANNESS_BIG, 32, 32, 0, ADDRESS_MAP_NAME(mp_internal_map))
+ , m_program_config("program", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor(FUNC(tms32082_mp_device::mp_internal_map), this))
{
}
@@ -484,7 +484,7 @@ void tms32082_mp_device::execute_run()
// Parallel Processor
// internal memory map
-static ADDRESS_MAP_START(pp_internal_map, AS_PROGRAM, 32, tms32082_pp_device)
+ADDRESS_MAP_START(tms32082_pp_device::pp_internal_map)
AM_RANGE(0x00000000, 0x00000fff) AM_RAM AM_SHARE("pp0_data0")
AM_RANGE(0x00001000, 0x00001fff) AM_RAM AM_SHARE("pp1_data0")
AM_RANGE(0x00008000, 0x00008fff) AM_RAM AM_SHARE("pp0_data1")
@@ -495,7 +495,7 @@ ADDRESS_MAP_END
tms32082_pp_device::tms32082_pp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: cpu_device(mconfig, TMS32082_PP, tag, owner, clock)
- , m_program_config("program", ENDIANNESS_BIG, 32, 32, 0, ADDRESS_MAP_NAME(pp_internal_map))
+ , m_program_config("program", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor(FUNC(tms32082_pp_device::pp_internal_map), this))
{
}
diff --git a/src/devices/cpu/tms32082/tms32082.h b/src/devices/cpu/tms32082/tms32082.h
index 88f968584a7..77337c66171 100644
--- a/src/devices/cpu/tms32082/tms32082.h
+++ b/src/devices/cpu/tms32082/tms32082.h
@@ -74,6 +74,7 @@ public:
void set_command_callback(write32_delegate callback);
+ void mp_internal_map(address_map &map);
protected:
// device level overrides
virtual void device_start() override;
@@ -161,6 +162,7 @@ public:
PP_PC = 1
};
+ void pp_internal_map(address_map &map);
protected:
// device level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/tms57002/tms57002.cpp b/src/devices/cpu/tms57002/tms57002.cpp
index f98e0497acf..67c10d545a2 100644
--- a/src/devices/cpu/tms57002/tms57002.cpp
+++ b/src/devices/cpu/tms57002/tms57002.cpp
@@ -17,7 +17,7 @@
DEFINE_DEVICE_TYPE(TMS57002, tms57002_device, "tms57002", "TMS57002")
// Can't use a DEVICE_ADDRESS_MAP, not yet anyway
-static ADDRESS_MAP_START(internal_pgm, AS_PROGRAM, 32, tms57002_device)
+ADDRESS_MAP_START(tms57002_device::internal_pgm)
AM_RANGE(0x00, 0xff) AM_RAM
ADDRESS_MAP_END
@@ -25,7 +25,7 @@ tms57002_device::tms57002_device(const machine_config &mconfig, const char *tag,
: cpu_device(mconfig, TMS57002, tag, owner, clock)
, device_sound_interface(mconfig, *this)
, macc(0), st0(0), st1(0), sti(0), txrd(0)
- , program_config("program", ENDIANNESS_LITTLE, 32, 8, -2, ADDRESS_MAP_NAME(internal_pgm))
+ , program_config("program", ENDIANNESS_LITTLE, 32, 8, -2, address_map_constructor(FUNC(tms57002_device::internal_pgm), this))
, data_config("data", ENDIANNESS_LITTLE, 8, 20)
{
}
diff --git a/src/devices/cpu/tms57002/tms57002.h b/src/devices/cpu/tms57002/tms57002.h
index 120af046362..63376caaa79 100644
--- a/src/devices/cpu/tms57002/tms57002.h
+++ b/src/devices/cpu/tms57002/tms57002.h
@@ -26,6 +26,7 @@ public:
DECLARE_READ_LINE_MEMBER(pc0_r);
DECLARE_WRITE_LINE_MEMBER(sync_w);
+ void internal_pgm(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/cpu/tms7000/tms7000.cpp b/src/devices/cpu/tms7000/tms7000.cpp
index 92249095af0..6757cc66e45 100644
--- a/src/devices/cpu/tms7000/tms7000.cpp
+++ b/src/devices/cpu/tms7000/tms7000.cpp
@@ -52,47 +52,47 @@ DEFINE_DEVICE_TYPE(TMS70C46, tms70c46_device, "tms70c46", "TMC70C46")
// internal memory maps
-static ADDRESS_MAP_START(tms7000_mem, AS_PROGRAM, 8, tms7000_device )
+ADDRESS_MAP_START(tms7000_device::tms7000_mem)
AM_RANGE(0x0000, 0x007f) AM_RAM // 128 bytes internal RAM
AM_RANGE(0x0080, 0x00ff) AM_READWRITE(tms7000_unmapped_rf_r, tms7000_unmapped_rf_w)
AM_RANGE(0x0104, 0x0105) AM_WRITENOP // no port A write or ddr
AM_RANGE(0x0100, 0x010b) AM_READWRITE(tms7000_pf_r, tms7000_pf_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms7001_mem, AS_PROGRAM, 8, tms7000_device )
+ADDRESS_MAP_START(tms7000_device::tms7001_mem)
AM_RANGE(0x0000, 0x007f) AM_RAM // 128 bytes internal RAM
AM_RANGE(0x0080, 0x00ff) AM_READWRITE(tms7000_unmapped_rf_r, tms7000_unmapped_rf_w)
AM_RANGE(0x0100, 0x010b) AM_READWRITE(tms7000_pf_r, tms7000_pf_w)
AM_RANGE(0x0110, 0x0117) AM_READWRITE(tms7002_pf_r, tms7002_pf_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms7002_mem, AS_PROGRAM, 8, tms7000_device )
+ADDRESS_MAP_START(tms7000_device::tms7002_mem)
AM_RANGE(0x0000, 0x00ff) AM_RAM // 256 bytes internal RAM
AM_RANGE(0x0100, 0x010b) AM_READWRITE(tms7000_pf_r, tms7000_pf_w)
AM_RANGE(0x0110, 0x0117) AM_READWRITE(tms7002_pf_r, tms7002_pf_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms7020_mem, AS_PROGRAM, 8, tms7000_device )
+ADDRESS_MAP_START(tms7000_device::tms7020_mem)
AM_IMPORT_FROM( tms7000_mem )
AM_RANGE(0xf800, 0xffff) AM_ROM AM_REGION(DEVICE_SELF, 0) // 2kB internal ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms7040_mem, AS_PROGRAM, 8, tms7000_device )
+ADDRESS_MAP_START(tms7000_device::tms7040_mem)
AM_IMPORT_FROM( tms7000_mem )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(DEVICE_SELF, 0) // 4kB internal ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms7041_mem, AS_PROGRAM, 8, tms7000_device )
+ADDRESS_MAP_START(tms7000_device::tms7041_mem)
AM_IMPORT_FROM( tms7001_mem )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(DEVICE_SELF, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms7042_mem, AS_PROGRAM, 8, tms7000_device )
+ADDRESS_MAP_START(tms7000_device::tms7042_mem)
AM_IMPORT_FROM( tms7002_mem )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(DEVICE_SELF, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms70c46_mem, AS_PROGRAM, 8, tms70c46_device )
+ADDRESS_MAP_START(tms70c46_device::tms70c46_mem)
AM_IMPORT_FROM( tms7040_mem )
AM_RANGE(0x010c, 0x010c) AM_READWRITE(e_bus_data_r, e_bus_data_w)
AM_RANGE(0x010d, 0x010d) AM_NOP // ? always writes $FF before checking keyboard... maybe INT3 ack?
@@ -104,7 +104,7 @@ ADDRESS_MAP_END
// device definitions
tms7000_device::tms7000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7000, tag, owner, clock, ADDRESS_MAP_NAME(tms7000_mem), 0)
+ : tms7000_device(mconfig, TMS7000, tag, owner, clock, address_map_constructor(FUNC(tms7000_device::tms7000_mem), this), 0)
{
}
@@ -118,57 +118,57 @@ tms7000_device::tms7000_device(const machine_config &mconfig, device_type type,
}
tms7020_device::tms7020_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7020, tag, owner, clock, ADDRESS_MAP_NAME(tms7020_mem), 0)
+ : tms7000_device(mconfig, TMS7020, tag, owner, clock, address_map_constructor(FUNC(tms7020_device::tms7020_mem), this), 0)
{
}
tms7020_exl_device::tms7020_exl_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7020_EXL, tag, owner, clock, ADDRESS_MAP_NAME(tms7020_mem), 0)
+ : tms7000_device(mconfig, TMS7020_EXL, tag, owner, clock, address_map_constructor(FUNC(tms7020_exl_device::tms7020_mem), this), 0)
{
}
tms7040_device::tms7040_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7040, tag, owner, clock, ADDRESS_MAP_NAME(tms7040_mem), 0)
+ : tms7000_device(mconfig, TMS7040, tag, owner, clock, address_map_constructor(FUNC(tms7040_device::tms7040_mem), this), 0)
{
}
tms70c00_device::tms70c00_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS70C00, tag, owner, clock, ADDRESS_MAP_NAME(tms7000_mem), CHIP_IS_CMOS)
+ : tms7000_device(mconfig, TMS70C00, tag, owner, clock, address_map_constructor(FUNC(tms70c00_device::tms7000_mem), this), CHIP_IS_CMOS)
{
}
tms70c20_device::tms70c20_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS70C20, tag, owner, clock, ADDRESS_MAP_NAME(tms7020_mem), CHIP_IS_CMOS)
+ : tms7000_device(mconfig, TMS70C20, tag, owner, clock, address_map_constructor(FUNC(tms70c20_device::tms7020_mem), this), CHIP_IS_CMOS)
{
}
tms70c40_device::tms70c40_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS70C40, tag, owner, clock, ADDRESS_MAP_NAME(tms7040_mem), CHIP_IS_CMOS)
+ : tms7000_device(mconfig, TMS70C40, tag, owner, clock, address_map_constructor(FUNC(tms70c40_device::tms7040_mem), this), CHIP_IS_CMOS)
{
}
tms7001_device::tms7001_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7001, tag, owner, clock, ADDRESS_MAP_NAME(tms7001_mem), CHIP_FAMILY_70X2)
+ : tms7000_device(mconfig, TMS7001, tag, owner, clock, address_map_constructor(FUNC(tms7001_device::tms7001_mem), this), CHIP_FAMILY_70X2)
{
}
tms7041_device::tms7041_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7041, tag, owner, clock, ADDRESS_MAP_NAME(tms7041_mem), CHIP_FAMILY_70X2)
+ : tms7000_device(mconfig, TMS7041, tag, owner, clock, address_map_constructor(FUNC(tms7041_device::tms7041_mem), this), CHIP_FAMILY_70X2)
{
}
tms7002_device::tms7002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7002, tag, owner, clock, ADDRESS_MAP_NAME(tms7002_mem), CHIP_FAMILY_70X2)
+ : tms7000_device(mconfig, TMS7002, tag, owner, clock, address_map_constructor(FUNC(tms7002_device::tms7002_mem), this), CHIP_FAMILY_70X2)
{
}
tms7042_device::tms7042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS7042, tag, owner, clock, ADDRESS_MAP_NAME(tms7042_mem), CHIP_FAMILY_70X2)
+ : tms7000_device(mconfig, TMS7042, tag, owner, clock, address_map_constructor(FUNC(tms7042_device::tms7042_mem), this), CHIP_FAMILY_70X2)
{
}
tms70c46_device::tms70c46_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : tms7000_device(mconfig, TMS70C46, tag, owner, clock, ADDRESS_MAP_NAME(tms70c46_mem), CHIP_IS_CMOS)
+ : tms7000_device(mconfig, TMS70C46, tag, owner, clock, address_map_constructor(FUNC(tms70c46_device::tms70c46_mem), this), CHIP_IS_CMOS)
{
}
diff --git a/src/devices/cpu/tms7000/tms7000.h b/src/devices/cpu/tms7000/tms7000.h
index bd941fbf9ca..c42f7e3a758 100644
--- a/src/devices/cpu/tms7000/tms7000.h
+++ b/src/devices/cpu/tms7000/tms7000.h
@@ -76,6 +76,13 @@ public:
bool chip_is_family_70x2() const { return chip_get_family() == CHIP_FAMILY_70X2; }
bool chip_is_family_70cx2() const { return chip_get_family() == CHIP_FAMILY_70CX2; }
+ void tms7000_mem(address_map &map);
+ void tms7001_mem(address_map &map);
+ void tms7002_mem(address_map &map);
+ void tms7020_mem(address_map &map);
+ void tms7040_mem(address_map &map);
+ void tms7041_mem(address_map &map);
+ void tms7042_mem(address_map &map);
protected:
// chip info flags
static constexpr uint32_t CHIP_IS_CMOS = 0x01;
@@ -345,6 +352,7 @@ public:
DECLARE_READ8_MEMBER(e_bus_data_r) { return machine().side_effect_disabled() ? 0xff : ((m_control & 0x20) ? 0xff : m_port_in_cb[4]()); }
DECLARE_WRITE8_MEMBER(e_bus_data_w) { if (~m_control & 0x20) m_port_out_cb[4](data); }
+ void tms70c46_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/cpu/ucom4/ucom4.cpp b/src/devices/cpu/ucom4/ucom4.cpp
index 8d1523751a9..b9fb9f5e247 100644
--- a/src/devices/cpu/ucom4/ucom4.cpp
+++ b/src/devices/cpu/ucom4/ucom4.cpp
@@ -40,20 +40,20 @@ DEFINE_DEVICE_TYPE(NEC_D552, upd552_cpu_device, "upd552", "NEC uPD552") // 42
// internal memory maps
-static ADDRESS_MAP_START(program_1k, AS_PROGRAM, 8, ucom4_cpu_device)
+ADDRESS_MAP_START(ucom4_cpu_device::program_1k)
AM_RANGE(0x0000, 0x03ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_2k, AS_PROGRAM, 8, ucom4_cpu_device)
+ADDRESS_MAP_START(ucom4_cpu_device::program_2k)
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_64x4, AS_DATA, 8, ucom4_cpu_device)
+ADDRESS_MAP_START(ucom4_cpu_device::data_64x4)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_96x4, AS_DATA, 8, ucom4_cpu_device)
+ADDRESS_MAP_START(ucom4_cpu_device::data_96x4)
AM_RANGE(0x00, 0x3f) AM_RAM
AM_RANGE(0x40, 0x4f) AM_RAM
AM_RANGE(0x70, 0x7f) AM_RAM
@@ -84,27 +84,27 @@ ucom4_cpu_device::ucom4_cpu_device(const machine_config &mconfig, device_type ty
}
upd546_cpu_device::upd546_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : ucom4_cpu_device(mconfig, NEC_D546, tag, owner, clock, NEC_UCOM43, 3 /* stack levels */, 11 /* prg width */, ADDRESS_MAP_NAME(program_2k), 7 /* data width */, ADDRESS_MAP_NAME(data_96x4))
+ : ucom4_cpu_device(mconfig, NEC_D546, tag, owner, clock, NEC_UCOM43, 3 /* stack levels */, 11 /* prg width */, address_map_constructor(FUNC(upd546_cpu_device::program_2k), this), 7 /* data width */, address_map_constructor(FUNC(upd546_cpu_device::data_96x4), this))
{
}
upd553_cpu_device::upd553_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : ucom4_cpu_device(mconfig, NEC_D553, tag, owner, clock, NEC_UCOM43, 3, 11, ADDRESS_MAP_NAME(program_2k), 7, ADDRESS_MAP_NAME(data_96x4))
+ : ucom4_cpu_device(mconfig, NEC_D553, tag, owner, clock, NEC_UCOM43, 3, 11, address_map_constructor(FUNC(upd553_cpu_device::program_2k), this), 7, address_map_constructor(FUNC(upd553_cpu_device::data_96x4), this))
{
}
upd557l_cpu_device::upd557l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : ucom4_cpu_device(mconfig, NEC_D557L, tag, owner, clock, NEC_UCOM43, 3, 11, ADDRESS_MAP_NAME(program_2k), 7, ADDRESS_MAP_NAME(data_96x4))
+ : ucom4_cpu_device(mconfig, NEC_D557L, tag, owner, clock, NEC_UCOM43, 3, 11, address_map_constructor(FUNC(upd557l_cpu_device::program_2k), this), 7, address_map_constructor(FUNC(upd557l_cpu_device::data_96x4), this))
{
}
upd650_cpu_device::upd650_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : ucom4_cpu_device(mconfig, NEC_D650, tag, owner, clock, NEC_UCOM43, 3, 11, ADDRESS_MAP_NAME(program_2k), 7, ADDRESS_MAP_NAME(data_96x4))
+ : ucom4_cpu_device(mconfig, NEC_D650, tag, owner, clock, NEC_UCOM43, 3, 11, address_map_constructor(FUNC(upd650_cpu_device::program_2k), this), 7, address_map_constructor(FUNC(upd650_cpu_device::data_96x4), this))
{
}
upd552_cpu_device::upd552_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : ucom4_cpu_device(mconfig, NEC_D552, tag, owner, clock, NEC_UCOM44, 1, 10, ADDRESS_MAP_NAME(program_1k), 6, ADDRESS_MAP_NAME(data_64x4))
+ : ucom4_cpu_device(mconfig, NEC_D552, tag, owner, clock, NEC_UCOM44, 1, 10, address_map_constructor(FUNC(upd552_cpu_device::program_1k), this), 6, address_map_constructor(FUNC(upd552_cpu_device::data_64x4), this))
{
}
diff --git a/src/devices/cpu/ucom4/ucom4.h b/src/devices/cpu/ucom4/ucom4.h
index 6db82e1a41e..5a30c19f72e 100644
--- a/src/devices/cpu/ucom4/ucom4.h
+++ b/src/devices/cpu/ucom4/ucom4.h
@@ -113,6 +113,10 @@ public:
template <class Object> static devcb_base &set_write_h_callback(device_t &device, Object &&cb) { return downcast<ucom4_cpu_device &>(device).m_write_h.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_write_i_callback(device_t &device, Object &&cb) { return downcast<ucom4_cpu_device &>(device).m_write_i.set_callback(std::forward<Object>(cb)); }
+ void data_64x4(address_map &map);
+ void data_96x4(address_map &map);
+ void program_1k(address_map &map);
+ void program_2k(address_map &map);
protected:
// construction/destruction
ucom4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int family, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data);
diff --git a/src/devices/cpu/upd7810/upd7810.cpp b/src/devices/cpu/upd7810/upd7810.cpp
index 4871aaebcbd..56a5fda29ff 100644
--- a/src/devices/cpu/upd7810/upd7810.cpp
+++ b/src/devices/cpu/upd7810/upd7810.cpp
@@ -384,11 +384,11 @@ DEFINE_DEVICE_TYPE(UPD78C05, upd78c05_device, "upd78c05", "uPD78C05")
DEFINE_DEVICE_TYPE(UPD78C06, upd78c06_device, "upd78c06", "uPD78C06")
-static ADDRESS_MAP_START( upd_internal_128_ram_map, AS_PROGRAM, 8, upd7810_device )
+ADDRESS_MAP_START(upd7810_device::upd_internal_128_ram_map)
AM_RANGE(0xff80, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd_internal_256_ram_map, AS_PROGRAM, 8, upd7810_device )
+ADDRESS_MAP_START(upd7810_device::upd_internal_256_ram_map)
AM_RANGE(0xff00, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -435,7 +435,7 @@ void upd7810_device::configure_ops()
}
upd7810_device::upd7810_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : upd7810_device(mconfig, UPD7810, tag, owner, clock, ADDRESS_MAP_NAME(upd_internal_256_ram_map))
+ : upd7810_device(mconfig, UPD7810, tag, owner, clock, address_map_constructor(FUNC(upd7810_device::upd_internal_256_ram_map), this))
{
}
@@ -453,7 +453,7 @@ void upd7807_device::configure_ops()
upd7807_device::upd7807_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : upd7810_device(mconfig, UPD7807, tag, owner, clock, ADDRESS_MAP_NAME(upd_internal_256_ram_map))
+ : upd7810_device(mconfig, UPD7807, tag, owner, clock, address_map_constructor(FUNC(upd7807_device::upd_internal_256_ram_map), this))
{
}
@@ -470,7 +470,7 @@ void upd7801_device::configure_ops()
}
upd7801_device::upd7801_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : upd7810_device(mconfig, UPD7801, tag, owner, clock, ADDRESS_MAP_NAME(upd_internal_128_ram_map))
+ : upd7810_device(mconfig, UPD7801, tag, owner, clock, address_map_constructor(FUNC(upd7801_device::upd_internal_128_ram_map), this))
{
}
@@ -492,7 +492,7 @@ upd78c05_device::upd78c05_device(const machine_config &mconfig, const char *tag,
}
upd78c05_device::upd78c05_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
- : upd7810_device(mconfig, type, tag, owner, clock, ADDRESS_MAP_NAME(upd_internal_128_ram_map))
+ : upd7810_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(upd78c05_device::upd_internal_128_ram_map), this))
{
}
diff --git a/src/devices/cpu/upd7810/upd7810.h b/src/devices/cpu/upd7810/upd7810.h
index 427a4d2d52b..eb68f1b0537 100644
--- a/src/devices/cpu/upd7810/upd7810.h
+++ b/src/devices/cpu/upd7810/upd7810.h
@@ -164,6 +164,9 @@ public:
DECLARE_WRITE8_MEMBER(pd_w);
DECLARE_WRITE8_MEMBER(pf_w);
+ void upd_internal_128_ram_map(address_map &map);
+ void upd_internal_256_ram_map(address_map &map);
+ void upd_internal_4096_rom_map(address_map &map);
protected:
// flags
enum
diff --git a/src/devices/cpu/upd7810/upd7811.cpp b/src/devices/cpu/upd7810/upd7811.cpp
index d3e80a9fc67..82c89e24683 100644
--- a/src/devices/cpu/upd7810/upd7811.cpp
+++ b/src/devices/cpu/upd7810/upd7811.cpp
@@ -23,7 +23,7 @@
*/
-static ADDRESS_MAP_START( upd_internal_4096_rom_map, AS_PROGRAM, 8, upd7810_device )
+ADDRESS_MAP_START(upd7810_device::upd_internal_4096_rom_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0xff00, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -31,6 +31,6 @@ ADDRESS_MAP_END
DEFINE_DEVICE_TYPE(UPD7811, upd7811_device, "upd78c11", "uPD78C11")
upd7811_device::upd7811_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : upd7810_device(mconfig, UPD7811, tag, owner, clock, ADDRESS_MAP_NAME(upd_internal_4096_rom_map))
+ : upd7810_device(mconfig, UPD7811, tag, owner, clock, address_map_constructor(FUNC(upd7811_device::upd_internal_4096_rom_map), this))
{
}
diff --git a/src/devices/cpu/z8/z8.cpp b/src/devices/cpu/z8/z8.cpp
index 1f21ebbab49..8f5a00f748f 100644
--- a/src/devices/cpu/z8/z8.cpp
+++ b/src/devices/cpu/z8/z8.cpp
@@ -165,16 +165,16 @@ DEFINE_DEVICE_TYPE(Z8681, z8681_device, "z8681", "Z8681")
ADDRESS MAPS
***************************************************************************/
-DEVICE_ADDRESS_MAP_START( program_2kb, 8, z8_device )
+ADDRESS_MAP_START(z8_device::program_2kb)
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( program_4kb, 8, z8_device )
+ADDRESS_MAP_START(z8_device::program_4kb)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-z8_device::z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t rom_size, address_map_delegate map)
+z8_device::z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t rom_size, address_map_constructor map)
: cpu_device(mconfig, type, tag, owner, clock)
, m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, map)
, m_data_config("data", ENDIANNESS_LITTLE, 8, 16, 0)
@@ -186,25 +186,25 @@ z8_device::z8_device(const machine_config &mconfig, device_type type, const char
z8601_device::z8601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : z8_device(mconfig, Z8601, tag, owner, clock, 0x800, address_map_delegate(FUNC(z8601_device::program_2kb), this))
+ : z8_device(mconfig, Z8601, tag, owner, clock, 0x800, address_map_constructor(FUNC(z8601_device::program_2kb), this))
{
}
ub8830d_device::ub8830d_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : z8_device(mconfig, UB8830D, tag, owner, clock, 0x800, address_map_delegate(FUNC(ub8830d_device::program_2kb), this))
+ : z8_device(mconfig, UB8830D, tag, owner, clock, 0x800, address_map_constructor(FUNC(ub8830d_device::program_2kb), this))
{
}
z8611_device::z8611_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : z8_device(mconfig, Z8611, tag, owner, clock, 0x1000, address_map_delegate(FUNC(z8611_device::program_4kb), this))
+ : z8_device(mconfig, Z8611, tag, owner, clock, 0x1000, address_map_constructor(FUNC(z8611_device::program_4kb), this))
{
}
z8681_device::z8681_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : z8_device(mconfig, Z8681, tag, owner, clock, 0, address_map_delegate())
+ : z8_device(mconfig, Z8681, tag, owner, clock, 0, address_map_constructor())
{
}
diff --git a/src/devices/cpu/z8/z8.h b/src/devices/cpu/z8/z8.h
index 1f6f8a7c890..ad5bf2a1c42 100644
--- a/src/devices/cpu/z8/z8.h
+++ b/src/devices/cpu/z8/z8.h
@@ -67,7 +67,7 @@ protected:
};
// construction/destruction
- z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t rom_size, address_map_delegate map);
+ z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t rom_size, address_map_constructor map);
// device-level overrides
virtual void device_start() override;
@@ -93,8 +93,8 @@ protected:
// device_disasm_interface overrides
virtual util::disasm_interface *create_disassembler() override;
- DECLARE_ADDRESS_MAP(program_2kb, 8);
- DECLARE_ADDRESS_MAP(program_4kb, 8);
+ void program_2kb(address_map &map);
+ void program_4kb(address_map &map);
private:
address_space_config m_program_config;
diff --git a/src/devices/cpu/z80/tmpz84c011.cpp b/src/devices/cpu/z80/tmpz84c011.cpp
index ee5e643d42d..0b8bcf914ce 100644
--- a/src/devices/cpu/z80/tmpz84c011.cpp
+++ b/src/devices/cpu/z80/tmpz84c011.cpp
@@ -15,7 +15,7 @@
DEFINE_DEVICE_TYPE(TMPZ84C011, tmpz84c011_device, "tmpz84c011", "TMPZ84C011")
-static ADDRESS_MAP_START( tmpz84c011_internal_io_map, AS_IO, 8, tmpz84c011_device )
+ADDRESS_MAP_START(tmpz84c011_device::tmpz84c011_internal_io_map)
AM_RANGE(0x10, 0x13) AM_MIRROR(0xff00) AM_DEVREADWRITE("tmpz84c011_ctc", z80ctc_device, read, write)
AM_RANGE(0x50, 0x50) AM_MIRROR(0xff00) AM_READWRITE(tmpz84c011_pa_r, tmpz84c011_pa_w)
@@ -33,7 +33,7 @@ ADDRESS_MAP_END
tmpz84c011_device::tmpz84c011_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: z80_device(mconfig, TMPZ84C011, tag, owner, clock),
- m_io_space_config( "io", ENDIANNESS_LITTLE, 8, 16, 0, ADDRESS_MAP_NAME( tmpz84c011_internal_io_map ) ),
+ m_io_space_config( "io", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(tmpz84c011_device::tmpz84c011_internal_io_map), this)),
m_ctc(*this, "tmpz84c011_ctc"),
m_outportsa(*this),
m_outportsb(*this),
diff --git a/src/devices/cpu/z80/tmpz84c011.h b/src/devices/cpu/z80/tmpz84c011.h
index 032db241960..f54b639a7f2 100644
--- a/src/devices/cpu/z80/tmpz84c011.h
+++ b/src/devices/cpu/z80/tmpz84c011.h
@@ -123,6 +123,7 @@ public:
DECLARE_WRITE8_MEMBER( tmpz84c011_dir_pd_w ) { m_pio_dir[3] = data; }
DECLARE_WRITE8_MEMBER( tmpz84c011_dir_pe_w ) { m_pio_dir[4] = data; }
+ void tmpz84c011_internal_io_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/cpu/z80/tmpz84c015.cpp b/src/devices/cpu/z80/tmpz84c015.cpp
index f382920e5ee..f92864000c3 100644
--- a/src/devices/cpu/z80/tmpz84c015.cpp
+++ b/src/devices/cpu/z80/tmpz84c015.cpp
@@ -17,7 +17,7 @@
DEFINE_DEVICE_TYPE(TMPZ84C015, tmpz84c015_device, "tmpz84c015", "TMPZ84C015")
-static ADDRESS_MAP_START( tmpz84c015_internal_io_map, AS_IO, 8, tmpz84c015_device )
+ADDRESS_MAP_START(tmpz84c015_device::tmpz84c015_internal_io_map)
AM_RANGE(0x10, 0x13) AM_MIRROR(0xff00) AM_DEVREADWRITE("tmpz84c015_ctc", z80ctc_device, read, write)
AM_RANGE(0x18, 0x1b) AM_MIRROR(0xff00) AM_DEVREADWRITE("tmpz84c015_sio", z80dart_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x1c, 0x1f) AM_MIRROR(0xff00) AM_DEVREADWRITE("tmpz84c015_pio", z80pio_device, read_alt, write_alt)
@@ -27,7 +27,7 @@ ADDRESS_MAP_END
tmpz84c015_device::tmpz84c015_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: z80_device(mconfig, TMPZ84C015, tag, owner, clock),
- m_io_space_config( "io", ENDIANNESS_LITTLE, 8, 16, 0, ADDRESS_MAP_NAME( tmpz84c015_internal_io_map ) ),
+ m_io_space_config( "io", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(tmpz84c015_device::tmpz84c015_internal_io_map), this)),
m_ctc(*this, "tmpz84c015_ctc"),
m_sio(*this, "tmpz84c015_sio"),
m_pio(*this, "tmpz84c015_pio"),
diff --git a/src/devices/cpu/z80/tmpz84c015.h b/src/devices/cpu/z80/tmpz84c015.h
index 9343e3aa1a6..f1729207674 100644
--- a/src/devices/cpu/z80/tmpz84c015.h
+++ b/src/devices/cpu/z80/tmpz84c015.h
@@ -174,6 +174,7 @@ public:
DECLARE_WRITE8_MEMBER( irq_priority_w );
+ void tmpz84c015_internal_io_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/machine/6522via.cpp b/src/devices/machine/6522via.cpp
index a4ba3e58478..24fe04e6574 100644
--- a/src/devices/machine/6522via.cpp
+++ b/src/devices/machine/6522via.cpp
@@ -147,7 +147,7 @@ uint16_t via6522_device::get_counter1_value()
// device type definition
DEFINE_DEVICE_TYPE(VIA6522, via6522_device, "via6522", "6522 VIA")
-DEVICE_ADDRESS_MAP_START( map, 8, via6522_device )
+ADDRESS_MAP_START(via6522_device::map)
AM_RANGE(0x00, 0x0f) AM_READWRITE(read, write)
ADDRESS_MAP_END
diff --git a/src/devices/machine/6522via.h b/src/devices/machine/6522via.h
index 8dd3616778d..a06f1977469 100644
--- a/src/devices/machine/6522via.h
+++ b/src/devices/machine/6522via.h
@@ -95,7 +95,7 @@ public:
template <class Object> static devcb_base &set_cb2_handler(device_t &device, Object &&cb) { return downcast<via6522_device &>(device).m_cb2_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_irq_handler(device_t &device, Object &&cb) { return downcast<via6522_device &>(device).m_irq_handler.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(map, 8);
+ virtual void map(address_map &map);
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
diff --git a/src/devices/machine/68307.cpp b/src/devices/machine/68307.cpp
index 1a879b41eae..80466834e4e 100644
--- a/src/devices/machine/68307.cpp
+++ b/src/devices/machine/68307.cpp
@@ -34,7 +34,7 @@ WRITE8_MEMBER(m68307_cpu_device::m68307_internal_serial_w)
-static ADDRESS_MAP_START( m68307_internal_map, AS_PROGRAM, 16, m68307_cpu_device )
+ADDRESS_MAP_START(m68307_cpu_device::m68307_internal_map)
AM_RANGE(0x000000f0, 0x000000ff) AM_READWRITE(m68307_internal_base_r, m68307_internal_base_w)
ADDRESS_MAP_END
@@ -50,7 +50,7 @@ MACHINE_CONFIG_END
m68307_cpu_device::m68307_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : m68000_device(mconfig, tag, owner, clock, M68307, 16, 24, ADDRESS_MAP_NAME(m68307_internal_map)),
+ : m68000_device(mconfig, tag, owner, clock, M68307, 16, 24, address_map_constructor(FUNC(m68307_cpu_device::m68307_internal_map), this)),
m_write_irq(*this),
m_write_a_tx(*this),
m_write_b_tx(*this),
diff --git a/src/devices/machine/68307.h b/src/devices/machine/68307.h
index 4c4d9b90cb3..65ac214b7f3 100644
--- a/src/devices/machine/68307.h
+++ b/src/devices/machine/68307.h
@@ -68,6 +68,7 @@ public:
uint16_t get_cs(offs_t address);
void licr2_interrupt();
+ void m68307_internal_map(address_map &map);
protected:
class m68307_sim;
class m68307_mbus;
diff --git a/src/devices/machine/68340.cpp b/src/devices/machine/68340.cpp
index 8b0f1e8b977..6aaa8c92fa3 100644
--- a/src/devices/machine/68340.cpp
+++ b/src/devices/machine/68340.cpp
@@ -110,7 +110,7 @@ WRITE32_MEMBER( m68340_cpu_device::m68340_internal_base_w )
}
-static ADDRESS_MAP_START( m68340_internal_map, AS_PROGRAM, 32, m68340_cpu_device )
+ADDRESS_MAP_START(m68340_cpu_device::m68340_internal_map)
AM_RANGE(0x0003ff00, 0x0003ff03) AM_READWRITE( m68340_internal_base_r, m68340_internal_base_w)
ADDRESS_MAP_END
@@ -131,7 +131,7 @@ MACHINE_CONFIG_END
//**************************************************************************
m68340_cpu_device::m68340_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : fscpu32_device(mconfig, tag, owner, clock, M68340, 32,32, ADDRESS_MAP_NAME(m68340_internal_map))
+ : fscpu32_device(mconfig, tag, owner, clock, M68340, 32,32, address_map_constructor(FUNC(m68340_cpu_device::m68340_internal_map), this))
, m_serial(*this, "serial")
, m_timer1(*this, "timer1")
, m_timer2(*this, "timer2")
diff --git a/src/devices/machine/68340.h b/src/devices/machine/68340.h
index 9ced90bb241..3e463cb13fd 100644
--- a/src/devices/machine/68340.h
+++ b/src/devices/machine/68340.h
@@ -102,6 +102,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( tin2_w ) { m_timer2->tin_w(state); }
DECLARE_WRITE_LINE_MEMBER( tgate2_w ){ m_timer2->tgate_w(state); }
+ void m68340_internal_map(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/machine/at28c16.cpp b/src/devices/machine/at28c16.cpp
index dd24cc7faed..4f4b11002f8 100644
--- a/src/devices/machine/at28c16.cpp
+++ b/src/devices/machine/at28c16.cpp
@@ -22,7 +22,7 @@
// GLOBAL VARIABLES
//**************************************************************************
-static ADDRESS_MAP_START( at28c16_map8, AS_PROGRAM, 8, at28c16_device )
+ADDRESS_MAP_START(at28c16_device::at28c16_map8)
AM_RANGE(0x0000, 0x081f) AM_RAM
ADDRESS_MAP_END
@@ -43,7 +43,7 @@ at28c16_device::at28c16_device(const machine_config &mconfig, const char *tag, d
: device_t(mconfig, AT28C16, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_nvram_interface(mconfig, *this),
- m_space_config("at28c16", ENDIANNESS_BIG, 8, 12, 0, *ADDRESS_MAP_NAME(at28c16_map8)),
+ m_space_config("at28c16", ENDIANNESS_BIG, 8, 12, 0, address_map_constructor(FUNC(at28c16_device::at28c16_map8), this)),
m_a9_12v(0),
m_oe_12v(0),
m_last_write(-1),
diff --git a/src/devices/machine/at28c16.h b/src/devices/machine/at28c16.h
index 047d0d6a18a..83d5e37e9b6 100644
--- a/src/devices/machine/at28c16.h
+++ b/src/devices/machine/at28c16.h
@@ -43,6 +43,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( set_a9_12v );
DECLARE_WRITE_LINE_MEMBER( set_oe_12v );
+ void at28c16_map8(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/machine/atmel_arm_aic.cpp b/src/devices/machine/atmel_arm_aic.cpp
index 55be68d08b2..de18da3b132 100644
--- a/src/devices/machine/atmel_arm_aic.cpp
+++ b/src/devices/machine/atmel_arm_aic.cpp
@@ -20,7 +20,7 @@
DEFINE_DEVICE_TYPE(ARM_AIC, arm_aic_device, "arm_aic", "ARM Advanced Interrupt Controller")
-DEVICE_ADDRESS_MAP_START( regs_map, 32, arm_aic_device )
+ADDRESS_MAP_START(arm_aic_device::regs_map)
AM_RANGE(0x000, 0x07f) AM_READWRITE(aic_smr_r, aic_smr_w) // AIC_SMR[32] (AIC_SMR) Source Mode Register
AM_RANGE(0x080, 0x0ff) AM_READWRITE(aic_svr_r, aic_svr_w) // AIC_SVR[32] (AIC_SVR) Source Vector Register
AM_RANGE(0x100, 0x103) AM_READ(irq_vector_r) // AIC_IVR IRQ Vector Register
diff --git a/src/devices/machine/atmel_arm_aic.h b/src/devices/machine/atmel_arm_aic.h
index d524eda71e1..6214481af7d 100644
--- a/src/devices/machine/atmel_arm_aic.h
+++ b/src/devices/machine/atmel_arm_aic.h
@@ -27,7 +27,7 @@ public:
// configuration
template <class Object> static devcb_base &set_line_callback(device_t &device, Object &&cb) { return downcast<arm_aic_device &>(device).m_irq_out.set_callback(std::forward<Object>(cb)); }
- DECLARE_ADDRESS_MAP(regs_map, 32);
+ void regs_map(address_map &map);
DECLARE_READ32_MEMBER(irq_vector_r);
DECLARE_READ32_MEMBER(firq_vector_r);
diff --git a/src/devices/machine/bankdev.cpp b/src/devices/machine/bankdev.cpp
index c9b2c5fcfe5..27c3dc68449 100644
--- a/src/devices/machine/bankdev.cpp
+++ b/src/devices/machine/bankdev.cpp
@@ -25,19 +25,19 @@ device_memory_interface::space_config_vector address_map_bank_device::memory_spa
};
}
-DEVICE_ADDRESS_MAP_START(amap8, 8, address_map_bank_device)
+ADDRESS_MAP_START(address_map_bank_device::amap8)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read8, write8)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(amap16, 16, address_map_bank_device)
+ADDRESS_MAP_START(address_map_bank_device::amap16)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read16, write16)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(amap32, 32, address_map_bank_device)
+ADDRESS_MAP_START(address_map_bank_device::amap32)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read32, write32)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(amap64, 64, address_map_bank_device)
+ADDRESS_MAP_START(address_map_bank_device::amap64)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read64, write64)
ADDRESS_MAP_END
diff --git a/src/devices/machine/bankdev.h b/src/devices/machine/bankdev.h
index 6c6e036aaa5..162326a493a 100644
--- a/src/devices/machine/bankdev.h
+++ b/src/devices/machine/bankdev.h
@@ -32,10 +32,10 @@ public:
static void set_addr_width(device_t &device, uint8_t addr_width) { downcast<address_map_bank_device &>(device).m_addr_width = addr_width; }
static void set_stride(device_t &device, uint32_t stride) { downcast<address_map_bank_device &>(device).m_stride = stride; }
- DECLARE_ADDRESS_MAP(amap8, 8);
- DECLARE_ADDRESS_MAP(amap16, 16);
- DECLARE_ADDRESS_MAP(amap32, 32);
- DECLARE_ADDRESS_MAP(amap64, 64);
+ void amap8(address_map &map);
+ void amap16(address_map &map);
+ void amap32(address_map &map);
+ void amap64(address_map &map);
DECLARE_WRITE8_MEMBER(write8);
DECLARE_WRITE16_MEMBER(write16);
diff --git a/src/devices/machine/cs8221.cpp b/src/devices/machine/cs8221.cpp
index 61676abad65..476a68af212 100644
--- a/src/devices/machine/cs8221.cpp
+++ b/src/devices/machine/cs8221.cpp
@@ -108,7 +108,7 @@ void cs8221_device::device_reset()
//**************************************************************************
// READ/WRITE HANDLERS
//**************************************************************************
-DEVICE_ADDRESS_MAP_START( map, 16, cs8221_device )
+ADDRESS_MAP_START(cs8221_device::map)
AM_RANGE(0x0022, 0x0023) AM_DEVWRITE8("cs8221", cs8221_device, address_w, 0x00ff)
AM_RANGE(0x0022, 0x0023) AM_DEVREADWRITE8("cs8221", cs8221_device, data_r, data_w, 0xff00)
ADDRESS_MAP_END
diff --git a/src/devices/machine/cs8221.h b/src/devices/machine/cs8221.h
index 3354ebfdeef..5fd035e8853 100644
--- a/src/devices/machine/cs8221.h
+++ b/src/devices/machine/cs8221.h
@@ -48,7 +48,7 @@ public:
DECLARE_WRITE8_MEMBER( address_w );
DECLARE_READ8_MEMBER( data_r );
DECLARE_WRITE8_MEMBER( data_w );
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
// inline configuration
static void static_set_cputag(device_t &device, const char *tag);
diff --git a/src/devices/machine/er2055.cpp b/src/devices/machine/er2055.cpp
index 41ba56cfd91..1c338fbaa3d 100644
--- a/src/devices/machine/er2055.cpp
+++ b/src/devices/machine/er2055.cpp
@@ -19,7 +19,7 @@
// device type definition
DEFINE_DEVICE_TYPE(ER2055, er2055_device, "er2055", "ER2055 EAROM")
-static ADDRESS_MAP_START( er2055_map, AS_PROGRAM, 8, er2055_device )
+ADDRESS_MAP_START(er2055_device::er2055_map)
AM_RANGE(0x0000, 0x003f) AM_RAM
ADDRESS_MAP_END
@@ -38,7 +38,7 @@ er2055_device::er2055_device(const machine_config &mconfig, const char *tag, dev
device_memory_interface(mconfig, *this),
device_nvram_interface(mconfig, *this),
m_region(*this, DEVICE_SELF),
- m_space_config("EAROM", ENDIANNESS_BIG, 8, 6, 0, *ADDRESS_MAP_NAME(er2055_map)),
+ m_space_config("EAROM", ENDIANNESS_BIG, 8, 6, 0, address_map_constructor(FUNC(er2055_device::er2055_map), this)),
m_control_state(0),
m_address(0),
m_data(0)
diff --git a/src/devices/machine/er2055.h b/src/devices/machine/er2055.h
index 20becf662aa..a886abab81d 100644
--- a/src/devices/machine/er2055.h
+++ b/src/devices/machine/er2055.h
@@ -46,6 +46,7 @@ public:
// control lines -- all lines are specified as active-high (even CS2)
void set_control(uint8_t cs1, uint8_t cs2, uint8_t c1, uint8_t c2, uint8_t ck);
+ void er2055_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/machine/genpc.cpp b/src/devices/machine/genpc.cpp
index 58ff8a7ef21..66d46d81ebd 100644
--- a/src/devices/machine/genpc.cpp
+++ b/src/devices/machine/genpc.cpp
@@ -534,7 +534,7 @@ ibm5160_mb_device::ibm5160_mb_device(
{
}
-DEVICE_ADDRESS_MAP_START( map, 8, ibm5160_mb_device )
+ADDRESS_MAP_START(ibm5160_mb_device::map)
AM_RANGE(0x0000, 0x000f) AM_DEVREADWRITE("dma8237", am9517a_device, read, write)
AM_RANGE(0x0020, 0x002f) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
AM_RANGE(0x0040, 0x004f) AM_DEVREADWRITE("pit8253", pit8253_device, read, write)
@@ -916,7 +916,7 @@ ioport_constructor pc_noppi_mb_device::device_input_ports() const
return INPUT_PORTS_NAME( pc_noppi_mb );
}
-DEVICE_ADDRESS_MAP_START( map, 8, pc_noppi_mb_device )
+ADDRESS_MAP_START(pc_noppi_mb_device::map)
AM_RANGE(0x0000, 0x000f) AM_DEVREADWRITE("dma8237", am9517a_device, read, write)
AM_RANGE(0x0020, 0x002f) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
AM_RANGE(0x0040, 0x004f) AM_DEVREADWRITE("pit8253", pit8253_device, read, write)
diff --git a/src/devices/machine/genpc.h b/src/devices/machine/genpc.h
index 22e53130bf1..f6242f0a2ca 100644
--- a/src/devices/machine/genpc.h
+++ b/src/devices/machine/genpc.h
@@ -38,7 +38,7 @@ public:
// inline configuration
static void static_set_cputag(device_t &device, const char *tag);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
uint8_t m_pit_out2;
@@ -199,7 +199,7 @@ public:
pc_noppi_mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
uint8_t pit_out2() { return m_pit_out2; } // helper for near-clones with multifunction ics instead of 8255s
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
protected:
pc_noppi_mb_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/machine/gt64xxx.cpp b/src/devices/machine/gt64xxx.cpp
index 13ff469571e..b6e1b0687d0 100644
--- a/src/devices/machine/gt64xxx.cpp
+++ b/src/devices/machine/gt64xxx.cpp
@@ -149,18 +149,15 @@
DEFINE_DEVICE_TYPE(GT64XXX, gt64xxx_device, "gt64xxx", "Galileo GT-64XXX System Controller")
-DEVICE_ADDRESS_MAP_START(config_map, 32, gt64xxx_device)
- AM_INHERIT_FROM(pci_device::config_map)
+ADDRESS_MAP_START(gt64xxx_device::config_map)
+ AM_IMPORT_FROM(pci_device::config_map)
ADDRESS_MAP_END
// cpu i/f map
-DEVICE_ADDRESS_MAP_START(cpu_map, 32, gt64xxx_device)
+ADDRESS_MAP_START(gt64xxx_device::cpu_map)
AM_RANGE(0x00000000, 0x00000cff) AM_READWRITE( cpu_if_r, cpu_if_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(empty, 32, gt64xxx_device)
-ADDRESS_MAP_END
-
gt64xxx_device::gt64xxx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_host_device(mconfig, GT64XXX, tag, owner, clock),
m_be(0), m_autoconfig(0), m_irq_num(-1),
@@ -175,10 +172,9 @@ gt64xxx_device::gt64xxx_device(const machine_config &mconfig, const char *tag, d
}
}
-void gt64xxx_device::set_map(int id, const address_map_delegate &map, device_t *device)
+void gt64xxx_device::set_map(int id, const address_map_constructor &map, device_t *device)
{
m_cs_maps[id] = map;
- m_cs_devices[id] = device;
}
device_memory_interface::space_config_vector gt64xxx_device::memory_space_config() const
diff --git a/src/devices/machine/gt64xxx.h b/src/devices/machine/gt64xxx.h
index 852255b2687..57d79723136 100644
--- a/src/devices/machine/gt64xxx.h
+++ b/src/devices/machine/gt64xxx.h
@@ -36,7 +36,7 @@
downcast<gt64xxx_device *>(device)->set_irq_info(_irq_num);
#define MCFG_GT64XXX_SET_CS(_cs_num, _map) \
- downcast<gt64xxx_device *>(device)->set_map(_cs_num, address_map_delegate(ADDRESS_MAP_NAME(_map), #_map), this);
+ downcast<gt64xxx_device *>(device)->set_map(_cs_num, address_map_constructor(&_map, #_map, this), this);
#define MCFG_GT64XX_SET_SIMM(_index, _size) \
downcast<gt64xxx_device *>(device)->set_simm_size(_index, _size);
@@ -63,7 +63,7 @@ public:
void set_be(const int be) {m_be = be;}
void set_autoconfig(const int autoconfig) {m_autoconfig = autoconfig;}
void set_irq_num(const int irq_num) {m_irq_num = irq_num;}
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
void set_simm_size(const int index, const int size) { m_simm_size[index] = size; };
void set_simm0_size(const int size) { m_simm_size[0] = size; };
void set_simm1_size(const int size) { m_simm_size[1] = size; };
@@ -102,7 +102,7 @@ public:
// Enums
enum proc_addr_bank {ADDR_RAS1_0, ADDR_RAS3_2, ADDR_CS2_0, ADDR_CS3_BCS, ADDR_PCI_IO, ADDR_PCI_MEM0, ADDR_PCI_MEM1, ADDR_NUM};
- void set_map(int id, const address_map_delegate &map, device_t *device);
+ void set_map(int id, const address_map_constructor &map, device_t *device);
void postload();
protected:
@@ -154,8 +154,7 @@ private:
required_memory_region m_romRegion;
optional_memory_region m_updateRegion;
- DECLARE_ADDRESS_MAP(cpu_map, 32);
- DECLARE_ADDRESS_MAP(empty, 32);
+ void cpu_map(address_map &map);
void map_cpu_space();
@@ -175,7 +174,7 @@ private:
// Chip Select
device_t *m_cs_devices[4];
- address_map_delegate m_cs_maps[4];
+ address_map_constructor m_cs_maps[4];
void update_irqs();
diff --git a/src/devices/machine/i6300esb.cpp b/src/devices/machine/i6300esb.cpp
index 7a43cebc854..6c94e7c4f2a 100644
--- a/src/devices/machine/i6300esb.cpp
+++ b/src/devices/machine/i6300esb.cpp
@@ -6,7 +6,7 @@
DEFINE_DEVICE_TYPE(I6300ESB_WATCHDOG, i6300esb_watchdog_device, "i6300esb_watchdog", "i6300ESB southbridge watchdog")
DEFINE_DEVICE_TYPE(I6300ESB_LPC, i6300esb_lpc_device, "i6300esb_lpc", "i6300ESB southbridge ISA/LPC bridge")
-DEVICE_ADDRESS_MAP_START(map, 32, i6300esb_watchdog_device)
+ADDRESS_MAP_START(i6300esb_watchdog_device::map)
ADDRESS_MAP_END
i6300esb_watchdog_device::i6300esb_watchdog_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
@@ -29,8 +29,8 @@ void i6300esb_watchdog_device::device_reset()
}
-DEVICE_ADDRESS_MAP_START(config_map, 32, i6300esb_lpc_device)
- AM_INHERIT_FROM(pci_device::config_map)
+ADDRESS_MAP_START(i6300esb_lpc_device::config_map)
+ AM_IMPORT_FROM(pci_device::config_map)
AM_RANGE(0x40, 0x43) AM_READWRITE (pmbase_r, pmbase_w)
AM_RANGE(0x44, 0x47) AM_READWRITE8 (acpi_cntl_r, acpi_cntl_w, 0x000000ff)
AM_RANGE(0x4c, 0x4f) AM_READWRITE16(bios_cntl_r, bios_cntl_w, 0xffff0000)
@@ -73,7 +73,7 @@ DEVICE_ADDRESS_MAP_START(config_map, 32, i6300esb_lpc_device)
AM_RANGE(0xfc, 0xff) AM_READWRITE (unk_fc_r, unk_fc_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(internal_io_map, 32, i6300esb_lpc_device)
+ADDRESS_MAP_START(i6300esb_lpc_device::internal_io_map)
;
if(lpc_en & 0x2000) {
AM_RANGE(0x004c, 0x004f) AM_READWRITE8(siu_config_port_r, siu_config_port_w, 0x00ff0000)
diff --git a/src/devices/machine/i6300esb.h b/src/devices/machine/i6300esb.h
index 86dc542a897..77a9ce5210c 100644
--- a/src/devices/machine/i6300esb.h
+++ b/src/devices/machine/i6300esb.h
@@ -24,7 +24,7 @@ public:
virtual void map_extra(uint64_t memory_window_start, uint64_t memory_window_end, uint64_t memory_offset, address_space *memory_space,
uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
protected:
@@ -37,7 +37,7 @@ private:
required_device<lpc_pit_device> pit;
required_memory_region m_region;
- DECLARE_ADDRESS_MAP(internal_io_map, 32);
+ void internal_io_map(address_map &map);
uint32_t pmbase, gpio_base, fwh_sel1, gen_cntl, etr1, rst_cnt2, gpi_rout;
uint16_t bios_cntl, pci_dma_cfg, gen1_dec, lpc_en, gen2_dec, fwh_sel2, func_dis, gen_pmcon_1;
@@ -152,7 +152,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
};
DECLARE_DEVICE_TYPE(I6300ESB_LPC, i6300esb_lpc_device)
diff --git a/src/devices/machine/i80130.cpp b/src/devices/machine/i80130.cpp
index 4e5a1e1f479..a74aa577482 100644
--- a/src/devices/machine/i80130.cpp
+++ b/src/devices/machine/i80130.cpp
@@ -19,11 +19,11 @@
DEFINE_DEVICE_TYPE(I80130, i80130_device, "i80130", "I80130")
-DEVICE_ADDRESS_MAP_START( rom_map, 16, i80130_device )
+ADDRESS_MAP_START(i80130_device::rom_map)
//AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("rom", 0)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( io_map, 16, i80130_device )
+ADDRESS_MAP_START(i80130_device::io_map)
AM_RANGE(0x00, 0x0f) AM_READWRITE(io_r, io_w)
//AM_RANGE(0x00, 0x01) AM_MIRROR(0x2) AM_DEVREADWRITE8("pic", pic8259_device, read, write, 0x00ff)
//AM_RANGE(0x08, 0x0f) AM_DEVREADWRITE8("pit", pit8254_device, read, write, 0x00ff)
diff --git a/src/devices/machine/i80130.h b/src/devices/machine/i80130.h
index de6067961c7..e2c2dbd0fba 100644
--- a/src/devices/machine/i80130.h
+++ b/src/devices/machine/i80130.h
@@ -59,8 +59,8 @@ public:
template <class Object> static devcb_base &set_delay_wr_callback(device_t &device, Object &&cb) { return downcast<i80130_device &>(device).m_write_delay.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_baud_wr_callback(device_t &device, Object &&cb) { return downcast<i80130_device &>(device).m_write_baud.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(rom_map, 16);
- virtual DECLARE_ADDRESS_MAP(io_map, 16);
+ virtual void rom_map(address_map &map);
+ virtual void io_map(address_map &map);
uint8_t inta_r() { return m_pic->acknowledge(); }
diff --git a/src/devices/machine/i8155.cpp b/src/devices/machine/i8155.cpp
index 8fbcf1462ce..8af39eddffc 100644
--- a/src/devices/machine/i8155.cpp
+++ b/src/devices/machine/i8155.cpp
@@ -110,7 +110,7 @@ enum
//**************************************************************************
// default address map
-static ADDRESS_MAP_START( i8155, 0, 8, i8155_device )
+ADDRESS_MAP_START(i8155_device::i8155)
AM_RANGE(0x00, 0xff) AM_RAM
ADDRESS_MAP_END
@@ -286,7 +286,7 @@ i8155_device::i8155_device(const machine_config &mconfig, device_type type, cons
m_counter(0),
m_count_extra(false),
m_to(0),
- m_space_config("ram", ENDIANNESS_LITTLE, 8, 8, 0, nullptr, *ADDRESS_MAP_NAME(i8155))
+ m_space_config("ram", ENDIANNESS_LITTLE, 8, 8, 0, address_map_constructor(), address_map_constructor(FUNC(i8155_device::i8155), this))
{
}
diff --git a/src/devices/machine/i8155.h b/src/devices/machine/i8155.h
index f4220baa546..c5aa99172c2 100644
--- a/src/devices/machine/i8155.h
+++ b/src/devices/machine/i8155.h
@@ -93,6 +93,7 @@ public:
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
+ void i8155(address_map &map);
protected:
i8155_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/machine/i82371sb.cpp b/src/devices/machine/i82371sb.cpp
index d4369a111bb..8d63f390ab7 100644
--- a/src/devices/machine/i82371sb.cpp
+++ b/src/devices/machine/i82371sb.cpp
@@ -14,8 +14,8 @@
DEFINE_DEVICE_TYPE(I82371SB_ISA, i82371sb_isa_device, "i82371sb_isa", "Intel 82371 southbridge ISA bridge")
-DEVICE_ADDRESS_MAP_START(config_map, 32, i82371sb_isa_device)
- AM_INHERIT_FROM(pci_device::config_map)
+ADDRESS_MAP_START(i82371sb_isa_device::config_map)
+ AM_IMPORT_FROM(pci_device::config_map)
AM_RANGE(0x4c, 0x4f) AM_READWRITE8 (iort_r, iort_w, 0x000000ff)
AM_RANGE(0x4c, 0x4f) AM_READWRITE16(xbcs_r, xbcs_w, 0xffff0000)
AM_RANGE(0x60, 0x63) AM_READWRITE8 (pirqrc_r, pirqrc_w, 0xffffffff)
@@ -33,7 +33,7 @@ DEVICE_ADDRESS_MAP_START(config_map, 32, i82371sb_isa_device)
AM_RANGE(0xac, 0xaf) AM_READWRITE8 (cthtmr_r, cthtmr_w, 0x00ff0000)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(internal_io_map, 32, i82371sb_isa_device)
+ADDRESS_MAP_START(i82371sb_isa_device::internal_io_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", am9517a_device, read, write, 0xffffffff)
AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_master", pic8259_device, read, write, 0xffffffff)
AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8254_device, read, write, 0xffffffff)
diff --git a/src/devices/machine/i82371sb.h b/src/devices/machine/i82371sb.h
index dbee9b492e7..1764044f714 100644
--- a/src/devices/machine/i82371sb.h
+++ b/src/devices/machine/i82371sb.h
@@ -43,8 +43,8 @@ public:
virtual void map_extra(uint64_t memory_window_start, uint64_t memory_window_end, uint64_t memory_offset, address_space *memory_space,
uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
- DECLARE_ADDRESS_MAP(internal_io_map, 32);
+ virtual void config_map(address_map &map) override;
+ void internal_io_map(address_map &map);
DECLARE_WRITE8_MEMBER (boot_state_w);
DECLARE_WRITE8_MEMBER (nop_w);
diff --git a/src/devices/machine/i82439hx.cpp b/src/devices/machine/i82439hx.cpp
index b3fcc4b0eb2..25bd4b7e2c1 100644
--- a/src/devices/machine/i82439hx.cpp
+++ b/src/devices/machine/i82439hx.cpp
@@ -5,8 +5,8 @@
DEFINE_DEVICE_TYPE(I82439HX, i82439hx_host_device, "i82439hx", "Intel 82439HX northbridge")
-DEVICE_ADDRESS_MAP_START(config_map, 32, i82439hx_host_device)
- AM_INHERIT_FROM(pci_host_device::config_map)
+ADDRESS_MAP_START(i82439hx_host_device::config_map)
+ AM_IMPORT_FROM(pci_host_device::config_map)
AM_RANGE(0x50, 0x53) AM_READWRITE8(pcon_r, pcon_w, 0x000000ff)
AM_RANGE(0x50, 0x53) AM_READWRITE8(cc_r, cc_w, 0x00ff0000)
AM_RANGE(0x54, 0x57) AM_READWRITE8(dramec_r, dramec_w, 0x00ff0000)
diff --git a/src/devices/machine/i82439hx.h b/src/devices/machine/i82439hx.h
index 9df05ab4b0b..018739a8d86 100644
--- a/src/devices/machine/i82439hx.h
+++ b/src/devices/machine/i82439hx.h
@@ -52,7 +52,7 @@ public:
virtual void map_extra(uint64_t memory_window_start, uint64_t memory_window_end, uint64_t memory_offset, address_space *memory_space,
uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
protected:
virtual void device_start() override;
diff --git a/src/devices/machine/i82439tx.cpp b/src/devices/machine/i82439tx.cpp
index e3591d74b50..39555216497 100644
--- a/src/devices/machine/i82439tx.cpp
+++ b/src/devices/machine/i82439tx.cpp
@@ -5,8 +5,8 @@
DEFINE_DEVICE_TYPE(I82439TX_NEW, i82439tx_host_device, "i82439tx_new", "Intel 82439TX northbridge")
-DEVICE_ADDRESS_MAP_START(config_map, 32, i82439tx_host_device)
- AM_INHERIT_FROM(pci_host_device::config_map)
+ADDRESS_MAP_START(i82439tx_host_device::config_map)
+ AM_IMPORT_FROM(pci_host_device::config_map)
AM_RANGE(0x50, 0x53) AM_READWRITE8(pcon_r, pcon_w, 0x000000ff)
AM_RANGE(0x50, 0x53) AM_READWRITE8(cc_r, cc_w, 0x00ff0000)
AM_RANGE(0x54, 0x57) AM_READWRITE8(dramec_r, dramec_w, 0x00ff0000)
diff --git a/src/devices/machine/i82439tx.h b/src/devices/machine/i82439tx.h
index 77245d80048..eb472150f5a 100644
--- a/src/devices/machine/i82439tx.h
+++ b/src/devices/machine/i82439tx.h
@@ -52,7 +52,7 @@ public:
virtual void map_extra(uint64_t memory_window_start, uint64_t memory_window_end, uint64_t memory_offset, address_space *memory_space,
uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
protected:
virtual void device_start() override;
diff --git a/src/devices/machine/i82541.cpp b/src/devices/machine/i82541.cpp
index f93b2b3690d..649af270f92 100644
--- a/src/devices/machine/i82541.cpp
+++ b/src/devices/machine/i82541.cpp
@@ -5,13 +5,13 @@
DEFINE_DEVICE_TYPE(I82541, i82541_device, "i82541_device", "Intel 82541 Ethernet controller")
-DEVICE_ADDRESS_MAP_START(registers_map, 32, i82541_device)
+ADDRESS_MAP_START(i82541_device::registers_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(flash_map, 32, i82541_device)
+ADDRESS_MAP_START(i82541_device::flash_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(registers_io_map, 32, i82541_device)
+ADDRESS_MAP_START(i82541_device::registers_io_map)
ADDRESS_MAP_END
i82541_device::i82541_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/machine/i82541.h b/src/devices/machine/i82541.h
index 2ff0fb8cf3b..56ffa38c026 100644
--- a/src/devices/machine/i82541.h
+++ b/src/devices/machine/i82541.h
@@ -19,9 +19,9 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(registers_map, 32);
- DECLARE_ADDRESS_MAP(flash_map, 32);
- DECLARE_ADDRESS_MAP(registers_io_map, 32);
+ void registers_map(address_map &map);
+ void flash_map(address_map &map);
+ void registers_io_map(address_map &map);
};
DECLARE_DEVICE_TYPE(I82541, i82541_device)
diff --git a/src/devices/machine/i8271.cpp b/src/devices/machine/i8271.cpp
index 2146d5e6909..45902ee0f9d 100644
--- a/src/devices/machine/i8271.cpp
+++ b/src/devices/machine/i8271.cpp
@@ -18,7 +18,7 @@ i8271_device::i8271_device(const machine_config &mconfig, const char *tag, devic
external_ready = false;
}
-DEVICE_ADDRESS_MAP_START(map, 8, i8271_device)
+ADDRESS_MAP_START(i8271_device::map)
AM_RANGE(0x0, 0x0) AM_READWRITE(sr_r, cmd_w)
AM_RANGE(0x1, 0x1) AM_READWRITE(rr_r, param_w)
AM_RANGE(0x2, 0x2) AM_WRITE(reset_w)
diff --git a/src/devices/machine/i8271.h b/src/devices/machine/i8271.h
index f51c0f1e769..8997fd7e1d6 100644
--- a/src/devices/machine/i8271.h
+++ b/src/devices/machine/i8271.h
@@ -41,7 +41,7 @@ public:
DECLARE_WRITE8_MEMBER(param_w);
DECLARE_READ8_MEMBER (data_r);
DECLARE_WRITE8_MEMBER(data_w);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
void ready_w(bool val);
diff --git a/src/devices/machine/i82875p.cpp b/src/devices/machine/i82875p.cpp
index c8b4471ab28..6da6a0e59e3 100644
--- a/src/devices/machine/i82875p.cpp
+++ b/src/devices/machine/i82875p.cpp
@@ -7,11 +7,11 @@ DEFINE_DEVICE_TYPE(I82875P_HOST, i82875p_host_device, "i82875p_host",
DEFINE_DEVICE_TYPE(I82875P_AGP, i82875p_agp_device, "i82875p_agp", "Intel 82875P AGP Bridge")
DEFINE_DEVICE_TYPE(I82875P_OVERFLOW, i82875p_overflow_device, "i82875p_overflow", "Intel 82875P Configuration Overflow")
-DEVICE_ADDRESS_MAP_START(agp_translation_map, 32, i82875p_host_device)
+ADDRESS_MAP_START(i82875p_host_device::agp_translation_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(config_map, 32, i82875p_host_device)
- AM_INHERIT_FROM(pci_host_device::config_map)
+ADDRESS_MAP_START(i82875p_host_device::config_map)
+ AM_IMPORT_FROM(pci_host_device::config_map)
AM_RANGE(0x50, 0x53) AM_READWRITE8 (agpm_r, agpm_w, 0x0000ff00)
AM_RANGE(0x50, 0x53) AM_READ8 (gc_r, 0x00ff0000)
AM_RANGE(0x50, 0x53) AM_READ8 (csabcont_r, 0xff000000)
@@ -441,7 +441,7 @@ void i82875p_agp_device::device_reset()
agp_bridge_device::device_reset();
}
-DEVICE_ADDRESS_MAP_START(overflow_map, 32, i82875p_overflow_device)
+ADDRESS_MAP_START(i82875p_overflow_device::overflow_map)
AM_RANGE(0x000, 0x007) AM_READWRITE8(dram_row_boundary_r, dram_row_boundary_w, 0xffffffff)
AM_RANGE(0x010, 0x013) AM_READWRITE8(dram_row_attribute_r, dram_row_attribute_w, 0xffffffff)
AM_RANGE(0x060, 0x064) AM_READWRITE (dram_timing_r, dram_timing_w)
diff --git a/src/devices/machine/i82875p.h b/src/devices/machine/i82875p.h
index 9b212aa1cb1..ffbe360ce34 100644
--- a/src/devices/machine/i82875p.h
+++ b/src/devices/machine/i82875p.h
@@ -32,7 +32,7 @@ public:
virtual void map_extra(uint64_t memory_window_start, uint64_t memory_window_end, uint64_t memory_offset, address_space *memory_space,
uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
virtual DECLARE_READ8_MEMBER(capptr_r) override;
@@ -85,7 +85,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(agp_translation_map, 32);
+ void agp_translation_map(address_map &map);
const char *cpu_tag;
int ram_size;
@@ -126,7 +126,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(overflow_map, 32);
+ void overflow_map(address_map &map);
uint8_t dram_row_boundary[8], dram_row_attribute[4];
uint32_t dram_timing, dram_controller_mode;
diff --git a/src/devices/machine/ie15.cpp b/src/devices/machine/ie15.cpp
index 74459c34dac..a3ab866062f 100644
--- a/src/devices/machine/ie15.cpp
+++ b/src/devices/machine/ie15.cpp
@@ -332,12 +332,12 @@ WRITE8_MEMBER(ie15_device::flag_w)
}
}
-static ADDRESS_MAP_START( ie15_mem, AS_PROGRAM, 8, ie15_device )
+ADDRESS_MAP_START(ie15_device::ie15_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ie15_io, AS_IO, 8, ie15_device )
+ADDRESS_MAP_START(ie15_device::ie15_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(000, 000) AM_READWRITE(mem_r, mem_w) // 00h W: memory request, R: memory data [6.1.2.2]
AM_RANGE(001, 001) AM_READ(serial_rx_ready_r) AM_WRITENOP // 01h W: memory latch [6.1.2.2]
diff --git a/src/devices/machine/ie15.h b/src/devices/machine/ie15.h
index 447616de49e..82692cb0d65 100644
--- a/src/devices/machine/ie15.h
+++ b/src/devices/machine/ie15.h
@@ -40,6 +40,8 @@ public:
DECLARE_WRITE8_MEMBER(write) { term_write(data); }
+ void ie15_io(address_map &map);
+ void ie15_mem(address_map &map);
protected:
ie15_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/machine/k054321.cpp b/src/devices/machine/k054321.cpp
index d5a2bc58a7a..82da72097e2 100644
--- a/src/devices/machine/k054321.cpp
+++ b/src/devices/machine/k054321.cpp
@@ -37,7 +37,7 @@
DEFINE_DEVICE_TYPE(K054321, k054321_device, "k054321", "K054321 Maincpu-Soundcpu interface")
-DEVICE_ADDRESS_MAP_START(main_map, 8, k054321_device)
+ADDRESS_MAP_START(k054321_device::main_map)
AM_RANGE(0x0, 0x0) AM_WRITE(active_w)
AM_RANGE(0x2, 0x2) AM_WRITE(volume_reset_w)
AM_RANGE(0x3, 0x3) AM_WRITE(volume_up_w)
@@ -48,7 +48,7 @@ DEVICE_ADDRESS_MAP_START(main_map, 8, k054321_device)
AM_RANGE(0xa, 0xa) AM_READ(sound1_r)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(sound_map, 8, k054321_device)
+ADDRESS_MAP_START(k054321_device::sound_map)
AM_RANGE(0x0, 0x0) AM_WRITE(sound1_w)
AM_RANGE(0x2, 0x2) AM_READ(main1_r)
AM_RANGE(0x3, 0x3) AM_READ(main2_r)
diff --git a/src/devices/machine/k054321.h b/src/devices/machine/k054321.h
index a3d9ccef083..cea9ccdc23c 100644
--- a/src/devices/machine/k054321.h
+++ b/src/devices/machine/k054321.h
@@ -17,8 +17,8 @@ public:
void set_gain_devices(const char *_left, const char *_right);
- DECLARE_ADDRESS_MAP(main_map, 8);
- DECLARE_ADDRESS_MAP(sound_map, 8);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
DECLARE_READ8_MEMBER( main1_r);
DECLARE_WRITE8_MEMBER(main1_w);
diff --git a/src/devices/machine/ldpr8210.cpp b/src/devices/machine/ldpr8210.cpp
index f0e4fe732e9..58ab311d5ff 100644
--- a/src/devices/machine/ldpr8210.cpp
+++ b/src/devices/machine/ldpr8210.cpp
@@ -148,7 +148,7 @@ static const uint8_t text_bitmap[0x40][7] =
// PR-8210 ROM AND MACHINE INTERFACES
//**************************************************************************
-static ADDRESS_MAP_START( pr8210_portmap, AS_IO, 8, pioneer_pr8210_device )
+ADDRESS_MAP_START(pioneer_pr8210_device::pr8210_portmap)
AM_RANGE(0x00, 0xff) AM_READWRITE(i8049_pia_r, i8049_pia_w)
ADDRESS_MAP_END
@@ -837,7 +837,7 @@ void pioneer_pr8210_device::overlay_draw_char(bitmap_yuy16 &bitmap, uint8_t ch,
// SIMUTREK ROM AND MACHINE INTERFACES
//**************************************************************************
-static ADDRESS_MAP_START( simutrek_portmap, AS_IO, 8, simutrek_special_device )
+ADDRESS_MAP_START(simutrek_special_device::simutrek_portmap)
AM_RANGE(0x00, 0xff) AM_READ(i8748_data_r)
ADDRESS_MAP_END
diff --git a/src/devices/machine/ldpr8210.h b/src/devices/machine/ldpr8210.h
index ec3f14b9944..fdba5ce251c 100644
--- a/src/devices/machine/ldpr8210.h
+++ b/src/devices/machine/ldpr8210.h
@@ -53,6 +53,7 @@ public:
// input and output
void control_w(uint8_t data);
+ void pr8210_portmap(address_map &map);
protected:
// timer IDs
enum
@@ -150,6 +151,7 @@ public:
// external controls
void set_external_audio_squelch(int state);
+ void simutrek_portmap(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/devices/machine/ldv1000.cpp b/src/devices/machine/ldv1000.cpp
index 07116eb98ea..44624f1a618 100644
--- a/src/devices/machine/ldv1000.cpp
+++ b/src/devices/machine/ldv1000.cpp
@@ -60,7 +60,7 @@ DEFINE_DEVICE_TYPE(PIONEER_LDV1000, pioneer_ldv1000_device, "ldv1000", "Pioneer
// LD-V1000 ROM AND MACHINE INTERFACES
//**************************************************************************
-static ADDRESS_MAP_START( ldv1000_map, AS_PROGRAM, 8, pioneer_ldv1000_device )
+ADDRESS_MAP_START(pioneer_ldv1000_device::ldv1000_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x6000) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x3800) AM_RAM
AM_RANGE(0xc000, 0xc003) AM_MIRROR(0x1ff0) AM_DEVREADWRITE("ldvppi0", i8255_device, read, write)
@@ -68,7 +68,7 @@ static ADDRESS_MAP_START( ldv1000_map, AS_PROGRAM, 8, pioneer_ldv1000_device )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldv1000_portmap, AS_IO, 8, pioneer_ldv1000_device )
+ADDRESS_MAP_START(pioneer_ldv1000_device::ldv1000_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_MIRROR(0x38) AM_READWRITE(z80_decoder_display_port_r, z80_decoder_display_port_w)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_READ(z80_controller_r)
diff --git a/src/devices/machine/ldv1000.h b/src/devices/machine/ldv1000.h
index 2bd6726a729..0c1bd9fbbb9 100644
--- a/src/devices/machine/ldv1000.h
+++ b/src/devices/machine/ldv1000.h
@@ -62,6 +62,8 @@ public:
uint8_t status_strobe_r() const { return (m_portc1 & 0x20) ? ASSERT_LINE : CLEAR_LINE; }
uint8_t command_strobe_r() const { return (m_portc1 & 0x10) ? ASSERT_LINE : CLEAR_LINE; }
+ void ldv1000_map(address_map &map);
+ void ldv1000_portmap(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/devices/machine/ldvp931.cpp b/src/devices/machine/ldvp931.cpp
index 19dd7d41701..262993c826d 100644
--- a/src/devices/machine/ldvp931.cpp
+++ b/src/devices/machine/ldvp931.cpp
@@ -53,7 +53,7 @@ DEFINE_DEVICE_TYPE(PHILLIPS_22VP931, phillips_22vp931_device, "22vp931", "Philli
// 22VP931 ROM AND MACHINE INTERFACES
//**************************************************************************
-static ADDRESS_MAP_START( vp931_portmap, AS_IO, 8, phillips_22vp931_device )
+ADDRESS_MAP_START(phillips_22vp931_device::vp931_portmap)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xcf) AM_READWRITE(i8049_keypad_r, i8049_output0_w)
AM_RANGE(0x10, 0x10) AM_MIRROR(0xcf) AM_READWRITE(i8049_unknown_r, i8049_output1_w)
AM_RANGE(0x20, 0x20) AM_MIRROR(0xcf) AM_READWRITE(i8049_datic_r, i8049_lcd_w)
diff --git a/src/devices/machine/ldvp931.h b/src/devices/machine/ldvp931.h
index 2dbea3e8c35..3c11a910ff8 100644
--- a/src/devices/machine/ldvp931.h
+++ b/src/devices/machine/ldvp931.h
@@ -60,6 +60,7 @@ public:
// configuration
void set_data_ready_callback(data_ready_delegate callback) { m_data_ready = callback; }
+ void vp931_portmap(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/devices/machine/linflash.cpp b/src/devices/machine/linflash.cpp
index 5701c1af7ee..1f7a75051a8 100644
--- a/src/devices/machine/linflash.cpp
+++ b/src/devices/machine/linflash.cpp
@@ -42,7 +42,7 @@ WRITE16_MEMBER( linear_flash_pccard_device::write_memory )
}
-static ADDRESS_MAP_START(linear_flash_pccard_16mb, 0, 16, linear_flash_pccard_16mb_device)
+ADDRESS_MAP_START(linear_flash_pccard_16mb_device::linear_flash_pccard_16mb)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1l", intelfsh8_device, read, write, 0x00ff)
AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1u", intelfsh8_device, read, write, 0xff00)
@@ -57,7 +57,7 @@ ADDRESS_MAP_END
linear_flash_pccard_16mb_device::linear_flash_pccard_16mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
linear_flash_pccard_device(mconfig, LINEAR_FLASH_PCCARD_16MB, tag, owner, clock)
{
- m_space_config = address_space_config("memory", ENDIANNESS_LITTLE, 16, 26, 0, *ADDRESS_MAP_NAME( linear_flash_pccard_16mb ) );
+ m_space_config = address_space_config("memory", ENDIANNESS_LITTLE, 16, 26, 0, address_map_constructor(FUNC(linear_flash_pccard_16mb_device::linear_flash_pccard_16mb), this));
}
MACHINE_CONFIG_START(linear_flash_pccard_16mb_device::device_add_mconfig)
@@ -72,7 +72,7 @@ MACHINE_CONFIG_START(linear_flash_pccard_16mb_device::device_add_mconfig)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START(linear_flash_pccard_32mb, 0, 16, linear_flash_pccard_32mb_device)
+ADDRESS_MAP_START(linear_flash_pccard_32mb_device::linear_flash_pccard_32mb)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1l", intelfsh8_device, read, write, 0x00ff)
AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1u", intelfsh8_device, read, write, 0xff00)
@@ -95,7 +95,7 @@ ADDRESS_MAP_END
linear_flash_pccard_32mb_device::linear_flash_pccard_32mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
linear_flash_pccard_device(mconfig, LINEAR_FLASH_PCCARD_32MB, tag, owner, clock)
{
- m_space_config = address_space_config("memory", ENDIANNESS_LITTLE, 16, 26, 0, *ADDRESS_MAP_NAME( linear_flash_pccard_32mb ) );
+ m_space_config = address_space_config("memory", ENDIANNESS_LITTLE, 16, 26, 0, address_map_constructor(FUNC(linear_flash_pccard_32mb_device::linear_flash_pccard_32mb), this));
}
MACHINE_CONFIG_START(linear_flash_pccard_32mb_device::device_add_mconfig)
@@ -118,7 +118,7 @@ MACHINE_CONFIG_START(linear_flash_pccard_32mb_device::device_add_mconfig)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START(linear_flash_pccard_64mb, 0, 16, linear_flash_pccard_64mb_device)
+ADDRESS_MAP_START(linear_flash_pccard_64mb_device::linear_flash_pccard_64mb)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1l", intelfsh8_device, read, write, 0x00ff)
AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1u", intelfsh8_device, read, write, 0xff00)
@@ -157,7 +157,7 @@ ADDRESS_MAP_END
linear_flash_pccard_64mb_device::linear_flash_pccard_64mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
linear_flash_pccard_device(mconfig, LINEAR_FLASH_PCCARD_64MB, tag, owner, clock)
{
- m_space_config = address_space_config("memory", ENDIANNESS_LITTLE, 16, 26, 0, *ADDRESS_MAP_NAME( linear_flash_pccard_64mb ) );
+ m_space_config = address_space_config("memory", ENDIANNESS_LITTLE, 16, 26, 0, address_map_constructor(FUNC(linear_flash_pccard_64mb_device::linear_flash_pccard_64mb), this));
}
MACHINE_CONFIG_START(linear_flash_pccard_64mb_device::device_add_mconfig)
diff --git a/src/devices/machine/linflash.h b/src/devices/machine/linflash.h
index b877036446c..2eb498d93e0 100644
--- a/src/devices/machine/linflash.h
+++ b/src/devices/machine/linflash.h
@@ -36,6 +36,7 @@ class linear_flash_pccard_16mb_device : public linear_flash_pccard_device
public:
linear_flash_pccard_16mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void linear_flash_pccard_16mb(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -47,6 +48,7 @@ class linear_flash_pccard_32mb_device : public linear_flash_pccard_device
public:
linear_flash_pccard_32mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void linear_flash_pccard_32mb(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -58,6 +60,7 @@ class linear_flash_pccard_64mb_device : public linear_flash_pccard_device
public:
linear_flash_pccard_64mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void linear_flash_pccard_64mb(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/machine/lpc-acpi.cpp b/src/devices/machine/lpc-acpi.cpp
index 3d584c72cdd..3f977ad519d 100644
--- a/src/devices/machine/lpc-acpi.cpp
+++ b/src/devices/machine/lpc-acpi.cpp
@@ -5,7 +5,7 @@
DEFINE_DEVICE_TYPE(LPC_ACPI, lpc_acpi_device, "lpc_acpi", "LPC ACPI")
-DEVICE_ADDRESS_MAP_START(map, 32, lpc_acpi_device)
+ADDRESS_MAP_START(lpc_acpi_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE16(pm1_sts_r, pm1_sts_w, 0x0000ffff)
AM_RANGE(0x00, 0x03) AM_READWRITE16(pm1_en_r, pm1_en_w, 0xffff0000)
AM_RANGE(0x04, 0x07) AM_READWRITE (pm1_cnt_r, pm1_cnt_w)
diff --git a/src/devices/machine/lpc-acpi.h b/src/devices/machine/lpc-acpi.h
index 0159f974517..1a93980f957 100644
--- a/src/devices/machine/lpc-acpi.h
+++ b/src/devices/machine/lpc-acpi.h
@@ -82,7 +82,7 @@ private:
uint8_t tco_rld, tco_tmr, tco_dat_in, tco_dat_out, tco_message1, tco_message2;
uint8_t tco_wdstatus, sw_irq_gen;
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
};
DECLARE_DEVICE_TYPE(LPC_ACPI, lpc_acpi_device)
diff --git a/src/devices/machine/lpc-pit.cpp b/src/devices/machine/lpc-pit.cpp
index dea817513bf..57842c399b9 100644
--- a/src/devices/machine/lpc-pit.cpp
+++ b/src/devices/machine/lpc-pit.cpp
@@ -5,7 +5,7 @@
DEFINE_DEVICE_TYPE(LPC_PIT, lpc_pit_device, "lpc_pit", "LPC PIT")
-DEVICE_ADDRESS_MAP_START(map, 32, lpc_pit_device)
+ADDRESS_MAP_START(lpc_pit_device::map)
AM_RANGE(0x40, 0x43) AM_READWRITE8(status_r, access_w, 0x00ffffff)
AM_RANGE(0x40, 0x43) AM_WRITE8 ( control_w, 0xff000000)
AM_RANGE(0x50, 0x53) AM_READWRITE8(status_r, access_w, 0x00ffffff)
diff --git a/src/devices/machine/lpc-pit.h b/src/devices/machine/lpc-pit.h
index fd0046d1d7c..98d42caf1d5 100644
--- a/src/devices/machine/lpc-pit.h
+++ b/src/devices/machine/lpc-pit.h
@@ -26,7 +26,7 @@ protected:
void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
};
DECLARE_DEVICE_TYPE(LPC_PIT, lpc_pit_device)
diff --git a/src/devices/machine/lpc-rtc.cpp b/src/devices/machine/lpc-rtc.cpp
index ff9c942b50e..24e9f34652a 100644
--- a/src/devices/machine/lpc-rtc.cpp
+++ b/src/devices/machine/lpc-rtc.cpp
@@ -5,12 +5,12 @@
DEFINE_DEVICE_TYPE(LPC_RTC, lpc_rtc_device, "lpc_rpc", "LPC RTC")
-DEVICE_ADDRESS_MAP_START(map, 32, lpc_rtc_device)
+ADDRESS_MAP_START(lpc_rtc_device::map)
AM_RANGE(0x70, 0x77) AM_READWRITE8(index_r, index_w, 0x00ff00ff)
AM_RANGE(0x70, 0x77) AM_READWRITE8(target_r, target_w, 0xff00ff00)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(extmap, 32, lpc_rtc_device)
+ADDRESS_MAP_START(lpc_rtc_device::extmap)
AM_RANGE(0x70, 0x77) AM_READWRITE8(extindex_r, extindex_w, 0x00ff0000)
AM_RANGE(0x70, 0x77) AM_READWRITE8(exttarget_r, exttarget_w, 0xff000000)
ADDRESS_MAP_END
diff --git a/src/devices/machine/lpc-rtc.h b/src/devices/machine/lpc-rtc.h
index 2d00084dbd2..3f4580b0cd1 100644
--- a/src/devices/machine/lpc-rtc.h
+++ b/src/devices/machine/lpc-rtc.h
@@ -34,8 +34,8 @@ protected:
void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
- DECLARE_ADDRESS_MAP(extmap, 32);
+ void map(address_map &map);
+ void extmap(address_map &map);
uint8_t cur_index, cur_extindex;
uint8_t ram[256];
diff --git a/src/devices/machine/mb8795.cpp b/src/devices/machine/mb8795.cpp
index fa31b9aaf5e..c0cfb7157a5 100644
--- a/src/devices/machine/mb8795.cpp
+++ b/src/devices/machine/mb8795.cpp
@@ -6,7 +6,7 @@
DEFINE_DEVICE_TYPE(MB8795, mb8795_device, "mb8795", "Fujitsu MB8795")
-DEVICE_ADDRESS_MAP_START(map, 8, mb8795_device)
+ADDRESS_MAP_START(mb8795_device::map)
AM_RANGE(0x0, 0x0) AM_READWRITE(txstat_r, txstat_w)
AM_RANGE(0x1, 0x1) AM_READWRITE(txmask_r, txmask_w)
AM_RANGE(0x2, 0x2) AM_READWRITE(rxstat_r, rxstat_w)
diff --git a/src/devices/machine/mb8795.h b/src/devices/machine/mb8795.h
index 9120a20716b..fc56b568b8f 100644
--- a/src/devices/machine/mb8795.h
+++ b/src/devices/machine/mb8795.h
@@ -31,7 +31,7 @@ public:
template <class Object> static devcb_base &set_tx_drq_wr_callback(device_t &device, Object &&cb) { return downcast<mb8795_device &>(device).drq_tx_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_rx_drq_wr_callback(device_t &device, Object &&cb) { return downcast<mb8795_device &>(device).drq_rx_cb.set_callback(std::forward<Object>(cb)); }
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(txstat_r);
DECLARE_WRITE8_MEMBER(txstat_w);
diff --git a/src/devices/machine/mcf5206e.cpp b/src/devices/machine/mcf5206e.cpp
index 99d28a484ca..5278abbeadd 100644
--- a/src/devices/machine/mcf5206e.cpp
+++ b/src/devices/machine/mcf5206e.cpp
@@ -13,7 +13,7 @@
#include "logmacro.h"
-static ADDRESS_MAP_START( coldfire_regs_map, 0, 32, mcf5206e_peripheral_device )
+ADDRESS_MAP_START(mcf5206e_peripheral_device::coldfire_regs_map)
AM_RANGE(0x014, 0x017) AM_READWRITE8(ICR1_ICR2_ICR3_ICR4_r, ICR1_ICR2_ICR3_ICR4_w, 0xffffffff)
@@ -825,7 +825,7 @@ DEFINE_DEVICE_TYPE(MCF5206E_PERIPHERAL, mcf5206e_peripheral_device, "mcf5206e_pe
mcf5206e_peripheral_device::mcf5206e_peripheral_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, MCF5206E_PERIPHERAL, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("coldfire_regs", ENDIANNESS_BIG, 32,10, 0, nullptr, *ADDRESS_MAP_NAME(coldfire_regs_map))
+ m_space_config("coldfire_regs", ENDIANNESS_BIG, 32,10, 0, address_map_constructor(), address_map_constructor(FUNC(mcf5206e_peripheral_device::coldfire_regs_map), this))
{
}
diff --git a/src/devices/machine/mcf5206e.h b/src/devices/machine/mcf5206e.h
index c9c46baf672..e4c9d0845cc 100644
--- a/src/devices/machine/mcf5206e.h
+++ b/src/devices/machine/mcf5206e.h
@@ -155,6 +155,7 @@ public:
DECLARE_READ8_MEMBER( MBDR_r );
DECLARE_WRITE8_MEMBER( MBDR_w );
+ void coldfire_regs_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/machine/mos6530n.cpp b/src/devices/machine/mos6530n.cpp
index 6b49b5f0399..c05fc123309 100644
--- a/src/devices/machine/mos6530n.cpp
+++ b/src/devices/machine/mos6530n.cpp
@@ -28,17 +28,17 @@ DEFINE_DEVICE_TYPE(MOS6530_NEW, mos6530_new_device, "mos6530_new", "MOS 6530 (ne
DEFINE_DEVICE_TYPE(MOS6532_NEW, mos6532_new_device, "mos6532_new", "MOS 6532 (new)")
-DEVICE_ADDRESS_MAP_START( rom_map, 8, mos6530_new_device )
+ADDRESS_MAP_START(mos6530_new_device::rom_map)
ADDRESS_MAP_GLOBAL_MASK(0x3ff)
AM_RANGE(0x000, 0x3ff) AM_READ(rom_r)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( ram_map, 8, mos6530_new_device )
+ADDRESS_MAP_START(mos6530_new_device::ram_map)
ADDRESS_MAP_GLOBAL_MASK(0x3f)
AM_RANGE(0x00, 0x3f) AM_READWRITE(ram_r, ram_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( io_map, 8, mos6530_new_device )
+ADDRESS_MAP_START(mos6530_new_device::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xf)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x8) AM_READWRITE(pa_data_r, pa_data_w)
AM_RANGE(0x01, 0x01) AM_MIRROR(0x8) AM_READWRITE(pa_ddr_r, pa_ddr_w)
@@ -51,12 +51,12 @@ DEVICE_ADDRESS_MAP_START( io_map, 8, mos6530_new_device )
AM_RANGE(0x05, 0x05) AM_MIRROR(0xa) AM_READ(irq_r)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( ram_map, 8, mos6532_new_device )
+ADDRESS_MAP_START(mos6532_new_device::ram_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x7f) AM_READWRITE(ram_r, ram_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( io_map, 8, mos6532_new_device )
+ADDRESS_MAP_START(mos6532_new_device::io_map)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x18) AM_READWRITE(pa_data_r, pa_data_w) // SWCHA
AM_RANGE(0x01, 0x01) AM_MIRROR(0x18) AM_READWRITE(pa_ddr_r, pa_ddr_w) // SWACNT
diff --git a/src/devices/machine/mos6530n.h b/src/devices/machine/mos6530n.h
index d7395de94a8..3031e98d6eb 100644
--- a/src/devices/machine/mos6530n.h
+++ b/src/devices/machine/mos6530n.h
@@ -320,9 +320,9 @@ public:
// construction/destruction
mos6530_new_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(rom_map, 8);
- virtual DECLARE_ADDRESS_MAP(ram_map, 8);
- virtual DECLARE_ADDRESS_MAP(io_map, 8);
+ virtual void rom_map(address_map &map);
+ virtual void ram_map(address_map &map);
+ virtual void io_map(address_map &map);
protected:
// device-level overrides
@@ -340,8 +340,8 @@ public:
// construction/destruction
mos6532_new_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(ram_map, 8);
- virtual DECLARE_ADDRESS_MAP(io_map, 8);
+ virtual void ram_map(address_map &map);
+ virtual void io_map(address_map &map);
// is there a better way to access the memory map when not using AM_DEVICE?
DECLARE_READ8_MEMBER(io_r);
diff --git a/src/devices/machine/mpu401.cpp b/src/devices/machine/mpu401.cpp
index f738050a7b1..16849816535 100644
--- a/src/devices/machine/mpu401.cpp
+++ b/src/devices/machine/mpu401.cpp
@@ -57,7 +57,7 @@
#define STAT_TX_FULL (0x40) // indicates the PC has written a new byte we haven't read yet
#define STAT_RX_EMPTY (0x80) // indicates we've written a new byte the PC hasn't read yet
-static ADDRESS_MAP_START( mpu401_map, AS_PROGRAM, 8, mpu401_device )
+ADDRESS_MAP_START(mpu401_device::mpu401_map)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(regs_mode2_r, regs_mode2_w)
AM_RANGE(0x0020, 0x0021) AM_READWRITE(asic_r, asic_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM // on-chip RAM
@@ -65,7 +65,7 @@ static ADDRESS_MAP_START( mpu401_map, AS_PROGRAM, 8, mpu401_device )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(ROM_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpu401_io_map, AS_IO, 8, mpu401_device )
+ADDRESS_MAP_START(mpu401_device::mpu401_io_map)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(port1_r, port1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(port2_r, port2_w)
ADDRESS_MAP_END
diff --git a/src/devices/machine/mpu401.h b/src/devices/machine/mpu401.h
index d890a525bff..b570c2928bc 100644
--- a/src/devices/machine/mpu401.h
+++ b/src/devices/machine/mpu401.h
@@ -42,6 +42,8 @@ public:
DECLARE_READ8_MEMBER(mpu_r);
DECLARE_WRITE8_MEMBER(mpu_w);
+ void mpu401_io_map(address_map &map);
+ void mpu401_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/machine/ncr5380n.cpp b/src/devices/machine/ncr5380n.cpp
index c7d0492f73c..5b141df4e3b 100644
--- a/src/devices/machine/ncr5380n.cpp
+++ b/src/devices/machine/ncr5380n.cpp
@@ -19,7 +19,7 @@
DEFINE_DEVICE_TYPE(NCR5380N, ncr5380n_device, "ncr5380_new", "NCR 5380 SCSI (new)")
-DEVICE_ADDRESS_MAP_START(map, 8, ncr5380n_device)
+ADDRESS_MAP_START(ncr5380n_device::map)
AM_RANGE(0x0, 0x0) AM_READWRITE(scsidata_r, outdata_w)
AM_RANGE(0x1, 0x1) AM_READWRITE(icmd_r, icmd_w)
AM_RANGE(0x2, 0x2) AM_READWRITE(mode_r, mode_w)
diff --git a/src/devices/machine/ncr5380n.h b/src/devices/machine/ncr5380n.h
index 28f7f440925..1b3d80e2689 100644
--- a/src/devices/machine/ncr5380n.h
+++ b/src/devices/machine/ncr5380n.h
@@ -30,7 +30,7 @@ public:
template <class Object> static devcb_base &set_irq_handler(device_t &device, Object &&cb) { return downcast<ncr5380n_device &>(device).m_irq_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_drq_handler(device_t &device, Object &&cb) { return downcast<ncr5380n_device &>(device).m_drq_handler.set_callback(std::forward<Object>(cb)); }
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(scsidata_r);
DECLARE_WRITE8_MEMBER(outdata_w);
diff --git a/src/devices/machine/ncr5390.cpp b/src/devices/machine/ncr5390.cpp
index 72adb5d8f76..576bb5e4ced 100644
--- a/src/devices/machine/ncr5390.cpp
+++ b/src/devices/machine/ncr5390.cpp
@@ -10,7 +10,7 @@ DEFINE_DEVICE_TYPE(NCR5390, ncr5390_device, "ncr5390", "NCR 5390 SCSI")
DEFINE_DEVICE_TYPE(NCR53C90A, ncr53c90a_device, "ncr53c90a", "NCR 53C90A SCSI")
DEFINE_DEVICE_TYPE(NCR53C94, ncr53c94_device, "ncr53c94", "NCR 53C94 SCSI")
-DEVICE_ADDRESS_MAP_START(map, 8, ncr5390_device)
+ADDRESS_MAP_START(ncr5390_device::map)
AM_RANGE(0x0, 0x0) AM_READWRITE(tcounter_lo_r, tcount_lo_w)
AM_RANGE(0x1, 0x1) AM_READWRITE(tcounter_hi_r, tcount_hi_w)
AM_RANGE(0x2, 0x2) AM_READWRITE(fifo_r, fifo_w)
@@ -24,14 +24,14 @@ DEVICE_ADDRESS_MAP_START(map, 8, ncr5390_device)
AM_RANGE(0x9, 0x9) AM_WRITE(clock_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, ncr53c90a_device)
- AM_INHERIT_FROM(ncr5390_device::map)
+ADDRESS_MAP_START(ncr53c90a_device::map)
+ AM_IMPORT_FROM(ncr5390_device::map)
AM_RANGE(0xb, 0xb) AM_READWRITE(conf2_r, conf2_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, ncr53c94_device)
- AM_INHERIT_FROM(ncr53c90a_device::map)
+ADDRESS_MAP_START(ncr53c94_device::map)
+ AM_IMPORT_FROM(ncr53c90a_device::map)
AM_RANGE(0xc, 0xc) AM_READWRITE(conf3_r, conf3_w)
AM_RANGE(0xf, 0xf) AM_WRITE(fifo_align_w)
diff --git a/src/devices/machine/ncr5390.h b/src/devices/machine/ncr5390.h
index fb57114c6b6..294148d8890 100644
--- a/src/devices/machine/ncr5390.h
+++ b/src/devices/machine/ncr5390.h
@@ -22,7 +22,7 @@ public:
template <class Object> static devcb_base &set_irq_handler(device_t &device, Object &&cb) { return downcast<ncr5390_device &>(device).m_irq_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_drq_handler(device_t &device, Object &&cb) { return downcast<ncr5390_device &>(device).m_drq_handler.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(map, 8);
+ virtual void map(address_map &map);
DECLARE_READ8_MEMBER(tcounter_lo_r);
DECLARE_WRITE8_MEMBER(tcount_lo_w);
@@ -250,7 +250,7 @@ class ncr53c90a_device : public ncr5390_device
public:
ncr53c90a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
DECLARE_READ8_MEMBER(status_r);
@@ -277,7 +277,7 @@ class ncr53c94_device : public ncr53c90a_device
public:
ncr53c94_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
DECLARE_READ8_MEMBER(conf3_r) { return config3; };
DECLARE_WRITE8_MEMBER(conf3_w) { config3 = data; };
diff --git a/src/devices/machine/pc_fdc.cpp b/src/devices/machine/pc_fdc.cpp
index 32d19768d99..f59d8af4bc3 100644
--- a/src/devices/machine/pc_fdc.cpp
+++ b/src/devices/machine/pc_fdc.cpp
@@ -19,11 +19,11 @@
DEFINE_DEVICE_TYPE(PC_FDC_XT, pc_fdc_xt_device, "pc_fdc_xt", "PC FDC (XT)")
DEFINE_DEVICE_TYPE(PC_FDC_AT, pc_fdc_at_device, "pc_fdc_at", "PC FDC (AT)")
-DEVICE_ADDRESS_MAP_START(map, 8, pc_fdc_family_device)
+ADDRESS_MAP_START(pc_fdc_family_device::map)
ADDRESS_MAP_END
// The schematics show address decoding is minimal
-DEVICE_ADDRESS_MAP_START(map, 8, pc_fdc_xt_device)
+ADDRESS_MAP_START(pc_fdc_xt_device::map)
AM_RANGE(0x0, 0x0) AM_DEVREAD("upd765", upd765a_device, msr_r) AM_WRITE(dor_w)
AM_RANGE(0x1, 0x1) AM_DEVREAD("upd765", upd765a_device, fifo_r) AM_WRITE(dor_fifo_w)
AM_RANGE(0x2, 0x2) AM_WRITE(dor_w)
@@ -33,7 +33,7 @@ ADDRESS_MAP_END
// Decoding is through a PAL, so presumably complete
-DEVICE_ADDRESS_MAP_START(map, 8, pc_fdc_at_device)
+ADDRESS_MAP_START(pc_fdc_at_device::map)
AM_RANGE(0x2, 0x2) AM_READWRITE(dor_r, dor_w)
AM_RANGE(0x4, 0x5) AM_DEVICE("upd765", upd765a_device, map)
AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
diff --git a/src/devices/machine/pc_fdc.h b/src/devices/machine/pc_fdc.h
index 5881cfc6fce..8e430dace7a 100644
--- a/src/devices/machine/pc_fdc.h
+++ b/src/devices/machine/pc_fdc.h
@@ -30,7 +30,7 @@ public:
template <class Object> static devcb_base &set_intrq_wr_callback(device_t &device, Object &&cb) { return downcast<pc_fdc_family_device &>(device).intrq_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_drq_wr_callback(device_t &device, Object &&cb) { return downcast<pc_fdc_family_device &>(device).drq_cb.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
virtual void tc_w(bool state) override;
virtual uint8_t dma_r() override;
@@ -69,7 +69,7 @@ class pc_fdc_xt_device : public pc_fdc_family_device {
public:
pc_fdc_xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
WRITE8_MEMBER(dor_fifo_w);
};
@@ -77,7 +77,7 @@ class pc_fdc_at_device : public pc_fdc_family_device {
public:
pc_fdc_at_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
DECLARE_DEVICE_TYPE(PC_FDC_XT, pc_fdc_xt_device)
diff --git a/src/devices/machine/pci-ide.cpp b/src/devices/machine/pci-ide.cpp
index 636ce015cd0..4e542850b2f 100644
--- a/src/devices/machine/pci-ide.cpp
+++ b/src/devices/machine/pci-ide.cpp
@@ -16,8 +16,8 @@ ide_pci_device::ide_pci_device(const machine_config &mconfig, const char *tag, d
{
}
-DEVICE_ADDRESS_MAP_START(config_map, 32, ide_pci_device)
- AM_INHERIT_FROM(pci_device::config_map)
+ADDRESS_MAP_START(ide_pci_device::config_map)
+ AM_IMPORT_FROM(pci_device::config_map)
AM_RANGE(0x08, 0x0b) AM_WRITE8(prog_if_w, 0x0000ff00)
AM_RANGE(0x10, 0x1f) AM_READWRITE(address_base_r, address_base_w)
AM_RANGE(0x2c, 0x2f) AM_WRITE(subsystem_id_w);
@@ -26,23 +26,23 @@ DEVICE_ADDRESS_MAP_START(config_map, 32, ide_pci_device)
AM_RANGE(0x78, 0x7f) AM_DEVREADWRITE("ide2", bus_master_ide_controller_device, bmdma_r, bmdma_w) // PCI646
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(chan1_data_command_map, 32, ide_pci_device)
+ADDRESS_MAP_START(ide_pci_device::chan1_data_command_map)
AM_RANGE(0x0, 0x7) AM_DEVREADWRITE("ide", bus_master_ide_controller_device, read_cs0, write_cs0)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(chan1_control_map, 32, ide_pci_device)
+ADDRESS_MAP_START(ide_pci_device::chan1_control_map)
AM_RANGE(0x0, 0x3) AM_READWRITE(ide_read_cs1, ide_write_cs1)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(chan2_data_command_map, 32, ide_pci_device)
+ADDRESS_MAP_START(ide_pci_device::chan2_data_command_map)
AM_RANGE(0x0, 0x7) AM_DEVREADWRITE("ide2", bus_master_ide_controller_device, read_cs0, write_cs0)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(chan2_control_map, 32, ide_pci_device)
+ADDRESS_MAP_START(ide_pci_device::chan2_control_map)
AM_RANGE(0x0, 0x3) AM_READWRITE(ide2_read_cs1, ide2_write_cs1)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(bus_master_map, 32, ide_pci_device)
+ADDRESS_MAP_START(ide_pci_device::bus_master_map)
AM_RANGE(0x0, 0x7) AM_DEVREADWRITE("ide", bus_master_ide_controller_device, bmdma_r, bmdma_w)
AM_RANGE(0x8, 0xf) AM_DEVREADWRITE("ide2", bus_master_ide_controller_device, bmdma_r, bmdma_w)
ADDRESS_MAP_END
diff --git a/src/devices/machine/pci-ide.h b/src/devices/machine/pci-ide.h
index 58d6c3bd8db..a0b706f4972 100644
--- a/src/devices/machine/pci-ide.h
+++ b/src/devices/machine/pci-ide.h
@@ -42,7 +42,7 @@ public:
ide_pci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
required_device<bus_master_ide_controller_device> m_ide;
required_device<bus_master_ide_controller_device> m_ide2;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
DECLARE_READ32_MEMBER(ide_read_cs1);
DECLARE_WRITE32_MEMBER(ide_write_cs1);
DECLARE_READ32_MEMBER(ide2_read_cs1);
@@ -78,11 +78,11 @@ private:
uint32_t m_pif;
uint32_t m_config_data[0x10];
- DECLARE_ADDRESS_MAP(chan1_data_command_map, 32);
- DECLARE_ADDRESS_MAP(chan1_control_map, 32);
- DECLARE_ADDRESS_MAP(chan2_data_command_map, 32);
- DECLARE_ADDRESS_MAP(chan2_control_map, 32);
- DECLARE_ADDRESS_MAP(bus_master_map, 32);
+ void chan1_data_command_map(address_map &map);
+ void chan1_control_map(address_map &map);
+ void chan2_data_command_map(address_map &map);
+ void chan2_control_map(address_map &map);
+ void bus_master_map(address_map &map);
};
DECLARE_DEVICE_TYPE(IDE_PCI, ide_pci_device)
diff --git a/src/devices/machine/pci-sata.cpp b/src/devices/machine/pci-sata.cpp
index fa854f08520..70f2a49fa06 100644
--- a/src/devices/machine/pci-sata.cpp
+++ b/src/devices/machine/pci-sata.cpp
@@ -10,22 +10,22 @@ sata_device::sata_device(const machine_config &mconfig, const char *tag, device_
{
}
-DEVICE_ADDRESS_MAP_START(primary_command_map, 32, sata_device)
+ADDRESS_MAP_START(sata_device::primary_command_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(primary_control_map, 32, sata_device)
+ADDRESS_MAP_START(sata_device::primary_control_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(secondary_command_map, 32, sata_device)
+ADDRESS_MAP_START(sata_device::secondary_command_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(secondary_control_map, 32, sata_device)
+ADDRESS_MAP_START(sata_device::secondary_control_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(bus_master_map, 32, sata_device)
+ADDRESS_MAP_START(sata_device::bus_master_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(ide_command_posting_map, 32, sata_device)
+ADDRESS_MAP_START(sata_device::ide_command_posting_map)
ADDRESS_MAP_END
diff --git a/src/devices/machine/pci-sata.h b/src/devices/machine/pci-sata.h
index c4ad5f15aaf..f106674f4c3 100644
--- a/src/devices/machine/pci-sata.h
+++ b/src/devices/machine/pci-sata.h
@@ -19,12 +19,12 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(primary_command_map, 32);
- DECLARE_ADDRESS_MAP(primary_control_map, 32);
- DECLARE_ADDRESS_MAP(secondary_command_map, 32);
- DECLARE_ADDRESS_MAP(secondary_control_map, 32);
- DECLARE_ADDRESS_MAP(bus_master_map, 32);
- DECLARE_ADDRESS_MAP(ide_command_posting_map, 32);
+ void primary_command_map(address_map &map);
+ void primary_control_map(address_map &map);
+ void secondary_command_map(address_map &map);
+ void secondary_control_map(address_map &map);
+ void bus_master_map(address_map &map);
+ void ide_command_posting_map(address_map &map);
};
DECLARE_DEVICE_TYPE(SATA, sata_device)
diff --git a/src/devices/machine/pci-smbus.cpp b/src/devices/machine/pci-smbus.cpp
index 4a1c675b3f5..62f4f0570f7 100644
--- a/src/devices/machine/pci-smbus.cpp
+++ b/src/devices/machine/pci-smbus.cpp
@@ -5,7 +5,7 @@
DEFINE_DEVICE_TYPE(SMBUS, smbus_device, "smbus", "SMBus interface")
-DEVICE_ADDRESS_MAP_START(map, 32, smbus_device)
+ADDRESS_MAP_START(smbus_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE8 (hst_sts_r, hst_sts_w, 0x000000ff)
AM_RANGE(0x00, 0x03) AM_READWRITE8 (hst_cnt_r, hst_cnt_w, 0x00ff0000)
AM_RANGE(0x00, 0x03) AM_READWRITE8 (hst_cmd_r, hst_cmd_w, 0xff000000)
diff --git a/src/devices/machine/pci-smbus.h b/src/devices/machine/pci-smbus.h
index d61e45e2f25..7089fe7719b 100644
--- a/src/devices/machine/pci-smbus.h
+++ b/src/devices/machine/pci-smbus.h
@@ -53,7 +53,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
uint16_t slv_data;
diff --git a/src/devices/machine/pci-usb.cpp b/src/devices/machine/pci-usb.cpp
index 2a0c8098be1..d2a5604ff67 100644
--- a/src/devices/machine/pci-usb.cpp
+++ b/src/devices/machine/pci-usb.cpp
@@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(USB_OHCI, usb_ohci_device, "usb_ohci", "USB 1.1 OHCI interfac
DEFINE_DEVICE_TYPE(USB_UHCI, usb_uhci_device, "usb_uhci", "USB 1.1 UHCI interface")
DEFINE_DEVICE_TYPE(USB_EHCI, usb_ehci_device, "usb_ehci", "USB 2.0 EHCI interface")
-DEVICE_ADDRESS_MAP_START(map, 32, usb_ohci_device)
+ADDRESS_MAP_START(usb_ohci_device::map)
ADDRESS_MAP_END
usb_ohci_device::usb_ohci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
@@ -26,7 +26,7 @@ void usb_ohci_device::device_reset()
pci_device::device_reset();
}
-DEVICE_ADDRESS_MAP_START(map, 32, usb_uhci_device)
+ADDRESS_MAP_START(usb_uhci_device::map)
ADDRESS_MAP_END
usb_uhci_device::usb_uhci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
@@ -45,7 +45,7 @@ void usb_uhci_device::device_reset()
pci_device::device_reset();
}
-DEVICE_ADDRESS_MAP_START(map, 32, usb_ehci_device)
+ADDRESS_MAP_START(usb_ehci_device::map)
ADDRESS_MAP_END
usb_ehci_device::usb_ehci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/machine/pci-usb.h b/src/devices/machine/pci-usb.h
index 8eb7d3860ba..1c5c7aaff21 100644
--- a/src/devices/machine/pci-usb.h
+++ b/src/devices/machine/pci-usb.h
@@ -25,7 +25,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
};
class usb_uhci_device : public pci_device {
@@ -37,7 +37,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
};
class usb_ehci_device : public pci_device {
@@ -49,7 +49,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
};
DECLARE_DEVICE_TYPE(USB_OHCI, usb_ohci_device)
diff --git a/src/devices/machine/pci.cpp b/src/devices/machine/pci.cpp
index afebb141d6c..34314ce585e 100644
--- a/src/devices/machine/pci.cpp
+++ b/src/devices/machine/pci.cpp
@@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(PCI_ROOT, pci_root_device, "pci_root", "PCI virtual roo
DEFINE_DEVICE_TYPE(PCI_BRIDGE, pci_bridge_device, "pci_bridge", "PCI-PCI Bridge")
-DEVICE_ADDRESS_MAP_START(config_map, 32, pci_device)
+ADDRESS_MAP_START(pci_device::config_map)
AM_RANGE(0x00, 0x03) AM_READ16 (vendor_r, 0x0000ffff)
AM_RANGE(0x00, 0x03) AM_READ16 (device_r, 0xffff0000)
AM_RANGE(0x04, 0x07) AM_READWRITE16(command_r, command_w, 0x0000ffff)
@@ -29,7 +29,7 @@ DEVICE_ADDRESS_MAP_START(config_map, 32, pci_device)
AM_RANGE(0x3c, 0x3f) AM_READWRITE8(interrupt_pin_r, interrupt_pin_w, 0x0000ff00)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(config_map, 32, pci_bridge_device)
+ADDRESS_MAP_START(pci_bridge_device::config_map)
AM_RANGE(0x00, 0x03) AM_READ16 (vendor_r, 0x0000ffff)
AM_RANGE(0x00, 0x03) AM_READ16 (device_r, 0xffff0000)
AM_RANGE(0x04, 0x07) AM_READWRITE16(command_r, command_w, 0x0000ffff)
@@ -356,7 +356,7 @@ void pci_device::skip_map_regs(int count)
assert(bank_reg_count <= 6);
}
-void pci_device::add_map(uint64_t size, int flags, address_map_delegate &map, device_t *relative_to)
+void pci_device::add_map(uint64_t size, int flags, const address_map_constructor &map, device_t *relative_to)
{
assert(bank_count < 6);
int bid = bank_count++;
@@ -817,7 +817,7 @@ void agp_bridge_device::device_reset()
-DEVICE_ADDRESS_MAP_START(io_configuration_access_map, 32, pci_host_device)
+ADDRESS_MAP_START(pci_host_device::io_configuration_access_map)
AM_RANGE(0xcf8, 0xcfb) AM_READWRITE(config_address_r, config_address_w)
AM_RANGE(0xcfc, 0xcff) AM_READWRITE(config_data_r, config_data_w)
ADDRESS_MAP_END
diff --git a/src/devices/machine/pci.h b/src/devices/machine/pci.h
index 0a8333e074f..92ae8bf97db 100644
--- a/src/devices/machine/pci.h
+++ b/src/devices/machine/pci.h
@@ -43,7 +43,7 @@ public:
void map_config(uint8_t device, address_space *config_space);
- virtual DECLARE_ADDRESS_MAP(config_map, 32);
+ virtual void config_map(address_map &map);
uint32_t unmapped_r(offs_t offset, uint32_t mem_mask, int bank);
void unmapped_w(offs_t offset, uint32_t data, uint32_t mem_mask, int bank);
@@ -99,7 +99,7 @@ protected:
};
struct bank_info {
- address_map_delegate map;
+ address_map_constructor map;
device_t *device;
uint64_t adr;
@@ -129,9 +129,9 @@ protected:
virtual void device_reset() override;
void skip_map_regs(int count);
- void add_map(uint64_t size, int flags, address_map_delegate &map, device_t *relative_to = nullptr);
+ void add_map(uint64_t size, int flags, const address_map_constructor &map, device_t *relative_to = nullptr);
template <typename T> void add_map(uint64_t size, int flags, void (T::*map)(address_map &map), const char *name) {
- address_map_delegate delegate(map, name, static_cast<T *>(this));
+ address_map_constructor delegate(map, name, static_cast<T *>(this));
add_map(size, flags, delegate);
}
@@ -162,7 +162,7 @@ public:
virtual DECLARE_READ8_MEMBER(header_type_r) override;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
DECLARE_READ32_MEMBER (b_address_base_r);
DECLARE_WRITE32_MEMBER(b_address_base_w);
@@ -243,7 +243,7 @@ protected:
class pci_host_device : public pci_bridge_device {
public:
- DECLARE_ADDRESS_MAP(io_configuration_access_map, 32);
+ void io_configuration_access_map(address_map &map);
protected:
pci_host_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/machine/pci9050.cpp b/src/devices/machine/pci9050.cpp
index c2dcf46cea1..bcf747bd958 100644
--- a/src/devices/machine/pci9050.cpp
+++ b/src/devices/machine/pci9050.cpp
@@ -26,7 +26,7 @@
DEFINE_DEVICE_TYPE(PCI9050, pci9050_device, "pci9050", "PLX PCI9050 PCI to Local Bus Bridge")
-DEVICE_ADDRESS_MAP_START(map, 32, pci9050_device)
+ADDRESS_MAP_START(pci9050_device::map)
AM_RANGE(0x00, 0x0f) AM_READWRITE(lasrr_r, lasrr_w )
AM_RANGE(0x10, 0x13) AM_READWRITE(eromrr_r, eromrr_w )
AM_RANGE(0x14, 0x23) AM_READWRITE(lasba_r, lasba_w )
@@ -38,9 +38,6 @@ DEVICE_ADDRESS_MAP_START(map, 32, pci9050_device)
AM_RANGE(0x50, 0x53) AM_READWRITE(cntrl_r, cntrl_w )
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(empty, 32, pci9050_device)
-ADDRESS_MAP_END
-
pci9050_device::pci9050_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, PCI9050, tag, owner, clock),
m_user_input_handler(*this), m_user_output_handler(*this)
@@ -51,7 +48,7 @@ pci9050_device::pci9050_device(const machine_config &mconfig, const char *tag, d
}
}
-void pci9050_device::set_map(int id, const address_map_delegate &map, device_t *device)
+void pci9050_device::set_map(int id, const address_map_constructor &map, device_t *device)
{
m_maps[id] = map;
m_devices[id] = device;
@@ -68,7 +65,7 @@ void pci9050_device::device_start()
if(!m_maps[i].isnull())
add_map(0, M_MEM | M_DISABLED, m_maps[i], m_devices[i]);
else
- add_map(0, M_MEM | M_DISABLED, FUNC(pci9050_device::empty));
+ add_map(0, M_MEM | M_DISABLED, address_map_constructor(), nullptr);
m_user_input_handler.resolve();
m_user_output_handler.resolve();
diff --git a/src/devices/machine/pci9050.h b/src/devices/machine/pci9050.h
index 61e9b703aa8..a119f2b97b6 100644
--- a/src/devices/machine/pci9050.h
+++ b/src/devices/machine/pci9050.h
@@ -19,7 +19,7 @@
MCFG_PCI_DEVICE_ADD(_tag, PCI9050, 0x10b59050, 0x01, 0x06800000, 0x10b59050)
#define MCFG_PCI9050_SET_MAP(id, map) \
- downcast<pci9050_device *>(device)->set_map(id, address_map_delegate(ADDRESS_MAP_NAME(map), #map), this);
+ downcast<pci9050_device *>(device)->set_map(id, address_map_constructor(&map, #map, this), this);
#define MCFG_PCI9050_USER_INPUT_CALLBACK(_write) \
devcb = &pci9050_device::set_user_input_callback(*device, DEVCB_##_write);
@@ -55,7 +55,7 @@ public:
template <class Object> static devcb_base &set_user_input_callback(device_t &device, Object &&cb) { return downcast<pci9050_device &>(device).m_user_input_handler.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_user_output_callback(device_t &device, Object &&cb) { return downcast<pci9050_device &>(device).m_user_output_handler.set_callback(std::forward<Object>(cb)); }
- void set_map(int id, const address_map_delegate &map, device_t *device);
+ void set_map(int id, const address_map_constructor &map, device_t *device);
protected:
virtual void device_start() override;
@@ -64,12 +64,11 @@ protected:
void postload(void);
private:
- DECLARE_ADDRESS_MAP(map, 32);
- DECLARE_ADDRESS_MAP(empty, 32);
+ void map(address_map &map);
const char *m_names[4];
device_t *m_devices[4];
- address_map_delegate m_maps[4];
+ address_map_constructor m_maps[4];
uint32_t m_lasrr[4], m_lasba[4], m_lasbrd[4], m_csbase[4];
uint32_t m_eromrr, m_eromba, m_erombrd, m_intcsr, m_cntrl;
diff --git a/src/devices/machine/pdc.cpp b/src/devices/machine/pdc.cpp
index 69207aefbfd..220ea0cc881 100644
--- a/src/devices/machine/pdc.cpp
+++ b/src/devices/machine/pdc.cpp
@@ -137,7 +137,7 @@ const tiny_rom_entry *pdc_device::device_rom_region() const
// ADDRESS_MAP( pdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( pdc_mem, AS_PROGRAM, 8, pdc_device )
+ADDRESS_MAP_START(pdc_device::pdc_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("rom", 0)
AM_RANGE(0x8000, 0x9FFF) AM_RAM AM_SHARE("pdc_ram") // HM6264ALP-12 SRAM 8KB
AM_RANGE(0xC000, 0xC7FF) AM_RAM // HM6116P-2 SRAM 2KB
@@ -147,7 +147,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( pdc_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( pdc_io, AS_IO, 8, pdc_device )
+ADDRESS_MAP_START(pdc_device::pdc_io)
AM_RANGE(0x00, 0x07) AM_READWRITE(p0_7_r,p0_7_w) AM_MIRROR(0xFF00)
AM_RANGE(0x21, 0x2F) AM_READWRITE(fdd_68k_r,fdd_68k_w) AM_MIRROR(0xFF00)
AM_RANGE(0x38, 0x38) AM_READ(p38_r) AM_MIRROR(0xFF00) // Possibly UPD765 interrupt
diff --git a/src/devices/machine/pdc.h b/src/devices/machine/pdc.h
index 4f1ce7f7a2c..6f60acd92f6 100644
--- a/src/devices/machine/pdc.h
+++ b/src/devices/machine/pdc.h
@@ -65,6 +65,8 @@ public:
uint8_t reg_p38;
uint32_t fdd_68k_dma_address; /* FDD <-> m68k DMA read/write address */
+ void pdc_io(address_map &map);
+ void pdc_mem(address_map &map);
protected:
/* Device-level overrides */
virtual void device_start() override;
diff --git a/src/devices/machine/sega_scu.cpp b/src/devices/machine/sega_scu.cpp
index 7bdadcc5dbe..f45082ebb5b 100644
--- a/src/devices/machine/sega_scu.cpp
+++ b/src/devices/machine/sega_scu.cpp
@@ -116,7 +116,7 @@ DEFINE_DEVICE_TYPE(SEGA_SCU, sega_scu_device, "sega_scu", "Sega System Control U
//AM_RANGE(0x0010, 0x0013) DMA enable
//AM_RANGE(0x0014, 0x0017) DMA start factor
-DEVICE_ADDRESS_MAP_START( regs_map, 32, sega_scu_device )
+ADDRESS_MAP_START(sega_scu_device::regs_map)
AM_RANGE(0x0000, 0x0017) AM_READWRITE(dma_lv0_r,dma_lv0_w)
AM_RANGE(0x0020, 0x0037) AM_READWRITE(dma_lv1_r,dma_lv1_w)
AM_RANGE(0x0040, 0x0057) AM_READWRITE(dma_lv2_r,dma_lv2_w)
diff --git a/src/devices/machine/sega_scu.h b/src/devices/machine/sega_scu.h
index 519a15ed3fb..a88b1039d0d 100644
--- a/src/devices/machine/sega_scu.h
+++ b/src/devices/machine/sega_scu.h
@@ -52,7 +52,7 @@ public:
sega_scu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
- DECLARE_ADDRESS_MAP(regs_map, 32);
+ void regs_map(address_map &map);
// DMA
DECLARE_READ32_MEMBER(dma_lv0_r);
diff --git a/src/devices/machine/sis85c496.cpp b/src/devices/machine/sis85c496.cpp
index 7fad963a04f..3b50be61b9f 100644
--- a/src/devices/machine/sis85c496.cpp
+++ b/src/devices/machine/sis85c496.cpp
@@ -19,8 +19,8 @@
DEFINE_DEVICE_TYPE(SIS85C496, sis85c496_host_device, "sis85c496", "SiS 85C496/497 chipset")
-DEVICE_ADDRESS_MAP_START(config_map, 32, sis85c496_host_device)
- AM_INHERIT_FROM(pci_host_device::config_map)
+ADDRESS_MAP_START(sis85c496_host_device::config_map)
+ AM_IMPORT_FROM(pci_host_device::config_map)
AM_RANGE(0x40, 0x43) AM_READWRITE8(dram_config_r, dram_config_w, 0x000000ff)
AM_RANGE(0x44, 0x47) AM_READWRITE16(shadow_config_r, shadow_config_w, 0x0000ffff)
AM_RANGE(0x58, 0x5b) AM_READWRITE8(smram_ctrl_r, smram_ctrl_w, 0x00ff0000)
@@ -29,8 +29,8 @@ DEVICE_ADDRESS_MAP_START(config_map, 32, sis85c496_host_device)
AM_RANGE(0xd0, 0xd3) AM_READWRITE8(isa_decoder_r, isa_decoder_w, 0x0000ff00)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(internal_io_map, 32, sis85c496_host_device)
- AM_INHERIT_FROM(pci_host_device::io_configuration_access_map)
+ADDRESS_MAP_START(sis85c496_host_device::internal_io_map)
+ AM_IMPORT_FROM(pci_host_device::io_configuration_access_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", am9517a_device, read, write, 0xffffffff)
AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_master", pic8259_device, read, write, 0xffffffff)
AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8254_device, read, write, 0xffffffff)
diff --git a/src/devices/machine/sis85c496.h b/src/devices/machine/sis85c496.h
index 9da029506fb..ad162fb357d 100644
--- a/src/devices/machine/sis85c496.h
+++ b/src/devices/machine/sis85c496.h
@@ -57,8 +57,8 @@ public:
virtual void map_extra(uint64_t memory_window_start, uint64_t memory_window_end, uint64_t memory_offset, address_space *memory_space,
uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
- DECLARE_ADDRESS_MAP(internal_io_map, 32);
+ virtual void config_map(address_map &map) override;
+ void internal_io_map(address_map &map);
// southbridge
DECLARE_READ8_MEMBER(at_page8_r);
diff --git a/src/devices/machine/smioc.cpp b/src/devices/machine/smioc.cpp
index a9321952a8f..d512f7d490c 100644
--- a/src/devices/machine/smioc.cpp
+++ b/src/devices/machine/smioc.cpp
@@ -99,7 +99,7 @@ const tiny_rom_entry *smioc_device::device_rom_region() const
// ADDRESS_MAP( smioc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( smioc_mem, AS_PROGRAM, 8, smioc_device )
+ADDRESS_MAP_START(smioc_device::smioc_mem)
AM_RANGE(0x00000, 0x07FFF) AM_RAM AM_SHARE("smioc_ram")
AM_RANGE(0xC0080, 0xC008F) AM_DEVREADWRITE("dma8237_1",am9517a_device,read,write) // Probably RAM DMA
AM_RANGE(0xC0090, 0xC009F) AM_DEVREADWRITE("dma8237_2",am9517a_device,read,write) // Serial DMA
diff --git a/src/devices/machine/smioc.h b/src/devices/machine/smioc.h
index 83b4ab29d89..f1046fb94f8 100644
--- a/src/devices/machine/smioc.h
+++ b/src/devices/machine/smioc.h
@@ -30,6 +30,7 @@ class smioc_device : public device_t
public:
/* Constructor and Destructor */
smioc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void smioc_mem(address_map &map);
protected:
/* Device-level overrides */
virtual void device_start() override;
diff --git a/src/devices/machine/smpc.cpp b/src/devices/machine/smpc.cpp
index a508c3c344d..a6d497fb62b 100644
--- a/src/devices/machine/smpc.cpp
+++ b/src/devices/machine/smpc.cpp
@@ -178,7 +178,7 @@ DEFINE_DEVICE_TYPE(SMPC_HLE, smpc_hle_device, "smpc_hle", "Sega Saturn SMPC HLE
// TODO: use DEVICE_ADDRESS_MAP once this fatalerror is fixed:
// "uplift_submaps unhandled case: range straddling slots."
-static ADDRESS_MAP_START( smpc_regs, 0, 8, smpc_hle_device )
+ADDRESS_MAP_START(smpc_hle_device::smpc_regs)
// ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x0d) AM_WRITE(ireg_w)
AM_RANGE(0x1f, 0x1f) AM_WRITE(command_register_w)
@@ -204,7 +204,7 @@ ADDRESS_MAP_END
smpc_hle_device::smpc_hle_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, SMPC_HLE, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("regs", ENDIANNESS_LITTLE, 8, 7, 0, nullptr, *ADDRESS_MAP_NAME(smpc_regs)),
+ m_space_config("regs", ENDIANNESS_LITTLE, 8, 7, 0, address_map_constructor(), address_map_constructor(FUNC(smpc_hle_device::smpc_regs), this)),
m_mini_nvram(*this, "smem"),
m_mshres(*this),
m_mshnmi(*this),
diff --git a/src/devices/machine/smpc.h b/src/devices/machine/smpc.h
index c3977db9015..f73c468cbee 100644
--- a/src/devices/machine/smpc.h
+++ b/src/devices/machine/smpc.h
@@ -75,7 +75,7 @@ public:
smpc_hle_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
-// DECLARE_ADDRESS_MAP( io_map, 8);
+// void io_map(address_map &map);
DECLARE_READ8_MEMBER( read );
DECLARE_WRITE8_MEMBER( write );
@@ -121,6 +121,7 @@ public:
static void static_set_region_code(device_t &device, uint8_t rgn);
static void static_set_control_port_tags(device_t &device, const char *tag1, const char *tag2);
+ void smpc_regs(address_map &map);
protected:
// device-level overrides
// virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/devices/machine/tc009xlvc.cpp b/src/devices/machine/tc009xlvc.cpp
index 5816c094831..a0ca847f0cf 100644
--- a/src/devices/machine/tc009xlvc.cpp
+++ b/src/devices/machine/tc009xlvc.cpp
@@ -156,7 +156,7 @@ WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_spr_w)
tx_tilemap->mark_all_dirty();
}
-static ADDRESS_MAP_START( tc0091lvc_map8, 0, 8, tc0091lvc_device )
+ADDRESS_MAP_START(tc0091lvc_device::tc0091lvc_map8)
AM_RANGE(0x014000, 0x017fff) AM_READWRITE(tc0091lvc_pcg1_r, tc0091lvc_pcg1_w)
AM_RANGE(0x018000, 0x018fff) AM_READWRITE(tc0091lvc_vram0_r, tc0091lvc_vram0_w)
AM_RANGE(0x019000, 0x019fff) AM_READWRITE(tc0091lvc_vram1_r, tc0091lvc_vram1_w)
@@ -170,7 +170,7 @@ ADDRESS_MAP_END
tc0091lvc_device::tc0091lvc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, TC0091LVC, tag, owner, clock)
, device_memory_interface(mconfig, *this)
- , m_space_config("tc0091lvc", ENDIANNESS_LITTLE, 8,20, 0, nullptr, *ADDRESS_MAP_NAME(tc0091lvc_map8))
+ , m_space_config("tc0091lvc", ENDIANNESS_LITTLE, 8,20, 0, address_map_constructor(), address_map_constructor(FUNC(tc0091lvc_device::tc0091lvc_map8), this))
, m_gfxdecode(*this, finder_base::DUMMY_TAG)
{
}
diff --git a/src/devices/machine/tc009xlvc.h b/src/devices/machine/tc009xlvc.h
index b917dc4fc98..f846ede81ad 100644
--- a/src/devices/machine/tc009xlvc.h
+++ b/src/devices/machine/tc009xlvc.h
@@ -47,6 +47,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void screen_eof();
+ void tc0091lvc_map8(address_map &map);
protected:
virtual void device_start() override;
virtual space_config_vector memory_space_config() const override;
diff --git a/src/devices/machine/tmp68301.cpp b/src/devices/machine/tmp68301.cpp
index 69e18a85eb6..1b72596cb87 100644
--- a/src/devices/machine/tmp68301.cpp
+++ b/src/devices/machine/tmp68301.cpp
@@ -21,7 +21,7 @@
DEFINE_DEVICE_TYPE(TMP68301, tmp68301_device, "tmp68301", "Toshiba TMP68301")
-static ADDRESS_MAP_START( tmp68301_regs, 0, 16, tmp68301_device )
+ADDRESS_MAP_START(tmp68301_device::tmp68301_regs)
// AM_RANGE(0x000,0x3ff) AM_RAM
AM_RANGE(0x080,0x093) AM_READWRITE8(icr_r, icr_w,0x00ff)
@@ -127,7 +127,7 @@ tmp68301_device::tmp68301_device(const machine_config &mconfig, const char *tag,
m_scr(0),
m_pdir(0),
m_pdr(0),
- m_space_config("regs", ENDIANNESS_LITTLE, 16, 10, 0, nullptr, *ADDRESS_MAP_NAME(tmp68301_regs))
+ m_space_config("regs", ENDIANNESS_LITTLE, 16, 10, 0, address_map_constructor(), address_map_constructor(FUNC(tmp68301_device::tmp68301_regs), this))
{
memset(m_regs, 0, sizeof(m_regs));
memset(m_icr, 0, sizeof(m_icr));
diff --git a/src/devices/machine/tmp68301.h b/src/devices/machine/tmp68301.h
index db2bf0179e0..3a9c18a2b8f 100644
--- a/src/devices/machine/tmp68301.h
+++ b/src/devices/machine/tmp68301.h
@@ -64,6 +64,7 @@ public:
IRQ_CALLBACK_MEMBER(irq_callback);
+ void tmp68301_regs(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/machine/tms5501.cpp b/src/devices/machine/tms5501.cpp
index 6b287ccc60c..ed770be8cfb 100644
--- a/src/devices/machine/tms5501.cpp
+++ b/src/devices/machine/tms5501.cpp
@@ -31,7 +31,7 @@ DEFINE_DEVICE_TYPE(TMS5501, tms5501_device, "tms5501", "TMS5501 Multifunction I/
// I/O address map
-DEVICE_ADDRESS_MAP_START( io_map, 8, tms5501_device )
+ADDRESS_MAP_START(tms5501_device::io_map)
AM_RANGE(0x00, 0x00) AM_READ(rb_r)
AM_RANGE(0x01, 0x01) AM_READ(xi_r)
AM_RANGE(0x02, 0x02) AM_READ(rst_r)
diff --git a/src/devices/machine/tms5501.h b/src/devices/machine/tms5501.h
index b403b32b43d..ac55fb48c35 100644
--- a/src/devices/machine/tms5501.h
+++ b/src/devices/machine/tms5501.h
@@ -73,7 +73,7 @@ public:
template <class Object> static devcb_base &set_xi_rd_callback(device_t &device, Object &&cb) { return downcast<tms5501_device &>(device).m_read_xi.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_xo_wr_callback(device_t &device, Object &&cb) { return downcast<tms5501_device &>(device).m_write_xo.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(io_map, 8);
+ virtual void io_map(address_map &map);
DECLARE_WRITE_LINE_MEMBER( rcv_w );
diff --git a/src/devices/machine/upd765.cpp b/src/devices/machine/upd765.cpp
index c9f79cc72ac..28ce1cd8126 100644
--- a/src/devices/machine/upd765.cpp
+++ b/src/devices/machine/upd765.cpp
@@ -22,32 +22,32 @@ DEFINE_DEVICE_TYPE(WD37C65C, wd37c65c_device, "wd37c65c", "Wes
DEFINE_DEVICE_TYPE(MCS3201, mcs3201_device, "mcs3201", "Motorola MCS3201 FDC")
DEFINE_DEVICE_TYPE(TC8566AF, tc8566af_device, "tc8566af", "Toshiba TC8566AF FDC")
-DEVICE_ADDRESS_MAP_START(map, 8, upd765a_device)
+ADDRESS_MAP_START(upd765a_device::map)
AM_RANGE(0x0, 0x0) AM_READ(msr_r)
AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, upd765b_device)
+ADDRESS_MAP_START(upd765b_device::map)
AM_RANGE(0x0, 0x0) AM_READ(msr_r)
AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, i8272a_device)
+ADDRESS_MAP_START(i8272a_device::map)
AM_RANGE(0x0, 0x0) AM_READ(msr_r)
AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, upd72065_device)
+ADDRESS_MAP_START(upd72065_device::map)
AM_RANGE(0x0, 0x0) AM_READ(msr_r)
AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, i82072_device)
+ADDRESS_MAP_START(i82072_device::map)
AM_RANGE(0x0, 0x0) AM_READWRITE(msr_r, dsr_w)
AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, smc37c78_device)
+ADDRESS_MAP_START(smc37c78_device::map)
AM_RANGE(0x2, 0x2) AM_READWRITE(dor_r, dor_w)
AM_RANGE(0x3, 0x3) AM_READWRITE(tdr_r, tdr_w)
AM_RANGE(0x4, 0x4) AM_READWRITE(msr_r, dsr_w)
@@ -55,7 +55,7 @@ DEVICE_ADDRESS_MAP_START(map, 8, smc37c78_device)
AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, n82077aa_device)
+ADDRESS_MAP_START(n82077aa_device::map)
AM_RANGE(0x0, 0x0) AM_READ(sra_r)
AM_RANGE(0x1, 0x1) AM_READ(srb_r)
AM_RANGE(0x2, 0x2) AM_READWRITE(dor_r, dor_w)
@@ -65,7 +65,7 @@ DEVICE_ADDRESS_MAP_START(map, 8, n82077aa_device)
AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, pc_fdc_superio_device)
+ADDRESS_MAP_START(pc_fdc_superio_device::map)
AM_RANGE(0x0, 0x0) AM_READ(sra_r)
AM_RANGE(0x1, 0x1) AM_READ(srb_r)
AM_RANGE(0x2, 0x2) AM_READWRITE(dor_r, dor_w)
@@ -75,7 +75,7 @@ DEVICE_ADDRESS_MAP_START(map, 8, pc_fdc_superio_device)
AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, dp8473_device)
+ADDRESS_MAP_START(dp8473_device::map)
AM_RANGE(0x0, 0x0) AM_READ(sra_r)
AM_RANGE(0x1, 0x1) AM_READ(srb_r)
AM_RANGE(0x2, 0x2) AM_READWRITE(dor_r, dor_w)
@@ -85,7 +85,7 @@ DEVICE_ADDRESS_MAP_START(map, 8, dp8473_device)
AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, pc8477a_device)
+ADDRESS_MAP_START(pc8477a_device::map)
AM_RANGE(0x0, 0x0) AM_READ(sra_r)
AM_RANGE(0x1, 0x1) AM_READ(srb_r)
AM_RANGE(0x2, 0x2) AM_READWRITE(dor_r, dor_w)
@@ -95,12 +95,12 @@ DEVICE_ADDRESS_MAP_START(map, 8, pc8477a_device)
AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 8, wd37c65c_device)
+ADDRESS_MAP_START(wd37c65c_device::map)
AM_RANGE(0x0, 0x0) AM_READ(msr_r)
AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( map, 8, mcs3201_device )
+ADDRESS_MAP_START(mcs3201_device::map)
AM_RANGE(0x0, 0x0) AM_READ(input_r)
AM_RANGE(0x2, 0x2) AM_WRITE(dor_w)
AM_RANGE(0x4, 0x4) AM_READ(msr_r)
@@ -108,7 +108,7 @@ DEVICE_ADDRESS_MAP_START( map, 8, mcs3201_device )
AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( map, 8, tc8566af_device )
+ADDRESS_MAP_START(tc8566af_device::map)
AM_RANGE(0x2, 0x2) AM_WRITE(dor_w)
AM_RANGE(0x3, 0x3) AM_WRITE(cr1_w)
AM_RANGE(0x4, 0x4) AM_READ(msr_r)
diff --git a/src/devices/machine/upd765.h b/src/devices/machine/upd765.h
index dc7f7b181a2..9fc16fdc5a8 100644
--- a/src/devices/machine/upd765.h
+++ b/src/devices/machine/upd765.h
@@ -88,7 +88,7 @@ public:
* interface, is not eligible as a result.
*/
- virtual DECLARE_ADDRESS_MAP(map, 8) = 0;
+ virtual void map(address_map &map) = 0;
virtual uint8_t dma_r() = 0;
virtual void dma_w(uint8_t data) = 0;
@@ -105,7 +105,7 @@ public:
template <class Object> static devcb_base &set_drq_wr_callback(device_t &device, Object &&cb) { return downcast<upd765_family_device &>(device).drq_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_hdl_wr_callback(device_t &device, Object &&cb) { return downcast<upd765_family_device &>(device).hdl_cb.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(map, 8) override = 0;
+ virtual void map(address_map &map) override = 0;
DECLARE_READ8_MEMBER (sra_r);
DECLARE_READ8_MEMBER (srb_r);
@@ -435,28 +435,28 @@ class upd765a_device : public upd765_family_device {
public:
upd765a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class upd765b_device : public upd765_family_device {
public:
upd765b_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class i8272a_device : public upd765_family_device {
public:
i8272a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class i82072_device : public upd765_family_device {
public:
i82072_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
protected:
virtual void device_start() override;
@@ -485,49 +485,49 @@ class smc37c78_device : public upd765_family_device {
public:
smc37c78_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class upd72065_device : public upd765_family_device {
public:
upd72065_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class n82077aa_device : public upd765_family_device {
public:
n82077aa_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class pc_fdc_superio_device : public upd765_family_device {
public:
pc_fdc_superio_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class dp8473_device : public upd765_family_device {
public:
dp8473_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class pc8477a_device : public upd765_family_device {
public:
pc8477a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class wd37c65c_device : public upd765_family_device {
public:
wd37c65c_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
};
class mcs3201_device : public upd765_family_device {
@@ -537,7 +537,7 @@ public:
// static configuration helpers
template <class Object> static devcb_base &set_input_handler(device_t &device, Object &&cb) { return downcast<mcs3201_device &>(device).m_input_handler.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
DECLARE_READ8_MEMBER( input_r );
protected:
@@ -551,7 +551,7 @@ class tc8566af_device : public upd765_family_device {
public:
tc8566af_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8) override;
+ virtual void map(address_map &map) override;
DECLARE_WRITE8_MEMBER(cr1_w);
diff --git a/src/devices/machine/vrc4373.cpp b/src/devices/machine/vrc4373.cpp
index 6e33be29b0e..aaf2ff937d7 100644
--- a/src/devices/machine/vrc4373.cpp
+++ b/src/devices/machine/vrc4373.cpp
@@ -70,23 +70,23 @@
DEFINE_DEVICE_TYPE(VRC4373, vrc4373_device, "vrc4373", "NEC VRC4373 System Controller")
-DEVICE_ADDRESS_MAP_START(config_map, 32, vrc4373_device)
- AM_INHERIT_FROM(pci_bridge_device::config_map)
+ADDRESS_MAP_START(vrc4373_device::config_map)
+ AM_IMPORT_FROM(pci_bridge_device::config_map)
AM_RANGE(0x40, 0x43) AM_READWRITE (pcictrl_r, pcictrl_w)
ADDRESS_MAP_END
// cpu i/f map
-DEVICE_ADDRESS_MAP_START(cpu_map, 32, vrc4373_device)
+ADDRESS_MAP_START(vrc4373_device::cpu_map)
AM_RANGE(0x00000000, 0x0000007b) AM_READWRITE( cpu_if_r, cpu_if_w)
ADDRESS_MAP_END
// Target Window 1 map
-DEVICE_ADDRESS_MAP_START(target1_map, 32, vrc4373_device)
+ADDRESS_MAP_START(vrc4373_device::target1_map)
AM_RANGE(0x00000000, 0xFFFFFFFF) AM_READWRITE( target1_r, target1_w)
ADDRESS_MAP_END
// Target Window 2 map
-DEVICE_ADDRESS_MAP_START(target2_map, 32, vrc4373_device)
+ADDRESS_MAP_START(vrc4373_device::target2_map)
AM_RANGE(0x00000000, 0xFFFFFFFF) AM_READWRITE( target2_r, target2_w)
ADDRESS_MAP_END
diff --git a/src/devices/machine/vrc4373.h b/src/devices/machine/vrc4373.h
index 9572380fb8b..184e8ca6ac2 100644
--- a/src/devices/machine/vrc4373.h
+++ b/src/devices/machine/vrc4373.h
@@ -38,7 +38,7 @@ public:
void set_ram_size(const int size) { m_ram_size = size; };
void set_simm0_size(const int size) { m_simm0_size = size; };
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
DECLARE_READ32_MEMBER( pcictrl_r);
DECLARE_WRITE32_MEMBER( pcictrl_w);
@@ -55,11 +55,11 @@ public:
DECLARE_READ32_MEMBER (master_io_r);
DECLARE_WRITE32_MEMBER(master_io_w);
- virtual DECLARE_ADDRESS_MAP(target1_map, 32);
+ virtual void target1_map(address_map &map);
DECLARE_READ32_MEMBER (target1_r);
DECLARE_WRITE32_MEMBER(target1_w);
- virtual DECLARE_ADDRESS_MAP(target2_map, 32);
+ virtual void target2_map(address_map &map);
DECLARE_READ32_MEMBER (target2_r);
DECLARE_WRITE32_MEMBER(target2_w);
@@ -80,7 +80,7 @@ private:
AS_PCI_IO = 2
};
- DECLARE_ADDRESS_MAP(cpu_map, 32);
+ void cpu_map(address_map &map);
void map_cpu_space();
diff --git a/src/devices/machine/vrc5074.cpp b/src/devices/machine/vrc5074.cpp
index a1f210f36bf..ea6158171e6 100644
--- a/src/devices/machine/vrc5074.cpp
+++ b/src/devices/machine/vrc5074.cpp
@@ -120,22 +120,22 @@
DEFINE_DEVICE_TYPE(VRC5074, vrc5074_device, "vrc5074", "NEC VRC5074 System Controller")
-DEVICE_ADDRESS_MAP_START(config_map, 32, vrc5074_device)
- AM_INHERIT_FROM(pci_bridge_device::config_map)
+ADDRESS_MAP_START(vrc5074_device::config_map)
+ AM_IMPORT_FROM(pci_bridge_device::config_map)
AM_RANGE(0x00000018, 0x00000027) AM_READWRITE(sdram_addr_r, sdram_addr_w)
ADDRESS_MAP_END
// cpu i/f map
-DEVICE_ADDRESS_MAP_START(cpu_map, 32, vrc5074_device)
+ADDRESS_MAP_START(vrc5074_device::cpu_map)
AM_RANGE(0x00000000, 0x000001ff) AM_READWRITE(cpu_reg_r, cpu_reg_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(serial_map, 32, vrc5074_device)
+ADDRESS_MAP_START(vrc5074_device::serial_map)
AM_RANGE(0x00000000, 0x0000003f) AM_READWRITE(serial_r, serial_w)
ADDRESS_MAP_END
// Target Window 1 map
-DEVICE_ADDRESS_MAP_START(target1_map, 32, vrc5074_device)
+ADDRESS_MAP_START(vrc5074_device::target1_map)
AM_RANGE(0x00000000, 0xFFFFFFFF) AM_READWRITE(target1_r, target1_w)
ADDRESS_MAP_END
@@ -169,7 +169,7 @@ vrc5074_device::vrc5074_device(const machine_config &mconfig, const char *tag, d
}
}
-void vrc5074_device::set_map(int id, const address_map_delegate &map, device_t *device)
+void vrc5074_device::set_map(int id, const address_map_constructor &map, device_t *device)
{
if (id < 2)
fatalerror("set_map: chip select must be greater or equal to 2.\n");
diff --git a/src/devices/machine/vrc5074.h b/src/devices/machine/vrc5074.h
index 736f72f60fc..30ab8b2bea0 100644
--- a/src/devices/machine/vrc5074.h
+++ b/src/devices/machine/vrc5074.h
@@ -20,7 +20,7 @@
downcast<vrc5074_device *>(device)->set_sdram_size(_index, _size);
#define MCFG_VRC5074_SET_CS(_cs_num, _map) \
- downcast<vrc5074_device *>(device)->set_map(_cs_num, address_map_delegate(ADDRESS_MAP_NAME(_map), #_map), this);
+ downcast<vrc5074_device *>(device)->set_map(_cs_num, address_map_constructor(&_map, #_map, this), this);
class vrc5074_device : public pci_host_device {
public:
@@ -30,15 +30,15 @@ public:
virtual void device_add_mconfig(machine_config &config) override;
virtual void reset_all_mappings() override;
virtual void map_extra(uint64_t memory_window_start, uint64_t memory_window_end, uint64_t memory_offset, address_space *memory_space,
- uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
+ uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
void postload();
void set_cpu_tag(const char *tag);
void set_sdram_size(const int index, const int size) { m_sdram_size[index] = size; };
- void set_map(int id, const address_map_delegate &map, device_t *device);
+ void set_map(int id, const address_map_constructor &map, device_t *device);
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
DECLARE_READ32_MEMBER(sdram_addr_r);
DECLARE_WRITE32_MEMBER(sdram_addr_w);
@@ -63,7 +63,7 @@ public:
DECLARE_READ32_MEMBER (pci1_r);
DECLARE_WRITE32_MEMBER(pci1_w);
- virtual DECLARE_ADDRESS_MAP(target1_map, 32);
+ virtual void target1_map(address_map &map);
DECLARE_READ32_MEMBER (target1_r);
DECLARE_WRITE32_MEMBER(target1_w);
@@ -92,8 +92,8 @@ private:
address_space_config m_mem_config, m_io_config;
- DECLARE_ADDRESS_MAP(cpu_map, 32);
- DECLARE_ADDRESS_MAP(serial_map, 32);
+ void cpu_map(address_map &map);
+ void serial_map(address_map &map);
void map_cpu_space();
@@ -109,7 +109,7 @@ private:
// Chip Select
device_t *m_cs_devices[7];
- address_map_delegate m_cs_maps[7];
+ address_map_constructor m_cs_maps[7];
uint32_t m_cpu_regs[0x1ff / 4];
uint16_t m_nile_irq_state;
diff --git a/src/devices/machine/x2212.cpp b/src/devices/machine/x2212.cpp
index 9903762a5a0..c170a7597ed 100644
--- a/src/devices/machine/x2212.cpp
+++ b/src/devices/machine/x2212.cpp
@@ -16,11 +16,11 @@
// GLOBAL VARIABLES
//**************************************************************************
-static ADDRESS_MAP_START( x2212_sram_map, 0, 8, x2212_device )
+ADDRESS_MAP_START(x2212_device::x2212_sram_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x2212_e2prom_map, 1, 8, x2212_device )
+ADDRESS_MAP_START(x2212_device::x2212_e2prom_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
ADDRESS_MAP_END
@@ -48,8 +48,8 @@ x2212_device::x2212_device(const machine_config &mconfig, device_type type, cons
, device_memory_interface(mconfig, *this)
, device_nvram_interface(mconfig, *this)
, m_auto_save(false)
- , m_sram_space_config("SRAM", ENDIANNESS_BIG, 8, 8, 0, *ADDRESS_MAP_NAME(x2212_sram_map))
- , m_e2prom_space_config("E2PROM", ENDIANNESS_BIG, 8, 8, 0, *ADDRESS_MAP_NAME(x2212_e2prom_map))
+ , m_sram_space_config("SRAM", ENDIANNESS_BIG, 8, 8, 0, address_map_constructor(FUNC(x2212_device::x2212_sram_map), this))
+ , m_e2prom_space_config("E2PROM", ENDIANNESS_BIG, 8, 8, 0, address_map_constructor(FUNC(x2212_device::x2212_e2prom_map), this))
, m_store(false)
, m_array_recall(false)
, m_size_data(size_data)
diff --git a/src/devices/machine/x2212.h b/src/devices/machine/x2212.h
index 2b27ff71efb..d39c6ed8c42 100644
--- a/src/devices/machine/x2212.h
+++ b/src/devices/machine/x2212.h
@@ -60,6 +60,8 @@ public:
DECLARE_WRITE_LINE_MEMBER( store );
DECLARE_WRITE_LINE_MEMBER( recall );
+ void x2212_e2prom_map(address_map &map);
+ void x2212_sram_map(address_map &map);
protected:
x2212_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int size_data);
diff --git a/src/devices/sound/bsmt2000.cpp b/src/devices/sound/bsmt2000.cpp
index 1d725e898ba..1f43fbfb00f 100644
--- a/src/devices/sound/bsmt2000.cpp
+++ b/src/devices/sound/bsmt2000.cpp
@@ -26,14 +26,14 @@ DEFINE_DEVICE_TYPE(BSMT2000, bsmt2000_device, "bsmt2000", "BSMT2000")
//**************************************************************************
// program map for the DSP (points to internal ROM)
-static ADDRESS_MAP_START(tms_program_map, AS_PROGRAM, 16, bsmt2000_device)
+ADDRESS_MAP_START(bsmt2000_device::tms_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000, 0xfff) AM_ROM
ADDRESS_MAP_END
// I/O map for the DSP
-static ADDRESS_MAP_START(tms_io_map, AS_IO, 16, bsmt2000_device)
+ADDRESS_MAP_START(bsmt2000_device::tms_io_map)
AM_RANGE(0, 0) AM_READWRITE(tms_register_r, tms_rom_addr_w)
AM_RANGE(1, 1) AM_READWRITE(tms_data_r, tms_rom_bank_w)
AM_RANGE(2, 2) AM_READ(tms_rom_r)
diff --git a/src/devices/sound/bsmt2000.h b/src/devices/sound/bsmt2000.h
index 48380ad253f..785379bd259 100644
--- a/src/devices/sound/bsmt2000.h
+++ b/src/devices/sound/bsmt2000.h
@@ -53,6 +53,8 @@ public:
void write_reg(uint16_t data);
void write_data(uint16_t data);
+ void tms_io_map(address_map &map);
+ void tms_program_map(address_map &map);
protected:
// device-level overrides
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/sound/cdp1869.cpp b/src/devices/sound/cdp1869.cpp
index 529c948633c..3821d0fd7ef 100644
--- a/src/devices/sound/cdp1869.cpp
+++ b/src/devices/sound/cdp1869.cpp
@@ -64,7 +64,7 @@ constexpr XTAL cdp1869_device::CPU_CLK_PAL;
DEFINE_DEVICE_TYPE(CDP1869, cdp1869_device, "cdp1869", "RCA CDP1869 VIS")
// I/O map
-DEVICE_ADDRESS_MAP_START( io_map, 8, cdp1869_device )
+ADDRESS_MAP_START(cdp1869_device::io_map)
AM_RANGE(0x03, 0x03) AM_WRITE(out3_w)
AM_RANGE(0x04, 0x04) AM_WRITE(out4_w)
AM_RANGE(0x05, 0x05) AM_WRITE(out5_w)
@@ -73,17 +73,17 @@ DEVICE_ADDRESS_MAP_START( io_map, 8, cdp1869_device )
ADDRESS_MAP_END
// character RAM map
-DEVICE_ADDRESS_MAP_START( char_map, 8, cdp1869_device )
+ADDRESS_MAP_START(cdp1869_device::char_map)
AM_RANGE(0x000, 0x3ff) AM_READWRITE(char_ram_r, char_ram_w)
ADDRESS_MAP_END
// page RAM map
-DEVICE_ADDRESS_MAP_START( page_map, 8, cdp1869_device )
+ADDRESS_MAP_START(cdp1869_device::page_map)
AM_RANGE(0x000, 0x7ff) AM_READWRITE(page_ram_r, page_ram_w)
ADDRESS_MAP_END
// default address map
-static ADDRESS_MAP_START( cdp1869, 0, 8, cdp1869_device )
+ADDRESS_MAP_START(cdp1869_device::cdp1869)
AM_RANGE(0x000, 0x7ff) AM_RAM
ADDRESS_MAP_END
@@ -355,7 +355,7 @@ cdp1869_device::cdp1869_device(const machine_config &mconfig, const char *tag, d
m_color_clock(0),
m_stream(nullptr),
m_palette(*this, "palette"),
- m_space_config("pageram", ENDIANNESS_LITTLE, 8, 11, 0, nullptr, *ADDRESS_MAP_NAME(cdp1869))
+ m_space_config("pageram", ENDIANNESS_LITTLE, 8, 11, 0, address_map_constructor(), address_map_constructor(FUNC(cdp1869_device::cdp1869), this))
{
}
diff --git a/src/devices/sound/cdp1869.h b/src/devices/sound/cdp1869.h
index e7013d0eceb..95b1c1e9365 100644
--- a/src/devices/sound/cdp1869.h
+++ b/src/devices/sound/cdp1869.h
@@ -196,9 +196,9 @@ public:
static void static_set_color_clock(device_t &device, int color_clock) { downcast<cdp1869_device &>(device).m_color_clock = color_clock; }
static void static_set_color_clock(device_t &device, const XTAL &xtal) { xtal.validate("selecting cdp1869 clock"); static_set_color_clock(device, xtal.value()); }
- virtual DECLARE_ADDRESS_MAP(io_map, 8);
- virtual DECLARE_ADDRESS_MAP(char_map, 8);
- virtual DECLARE_ADDRESS_MAP(page_map, 8);
+ virtual void io_map(address_map &map);
+ virtual void char_map(address_map &map);
+ virtual void page_map(address_map &map);
DECLARE_WRITE8_MEMBER( out3_w );
DECLARE_WRITE8_MEMBER( out4_w );
@@ -217,6 +217,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void cdp1869(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/devices/sound/dave.cpp b/src/devices/sound/dave.cpp
index d66dc8ad003..20f0ef828e6 100644
--- a/src/devices/sound/dave.cpp
+++ b/src/devices/sound/dave.cpp
@@ -28,19 +28,19 @@
DEFINE_DEVICE_TYPE(DAVE, dave_device, "dave", "Inteligent Designs DAVE")
-DEVICE_ADDRESS_MAP_START( z80_program_map, 8, dave_device )
+ADDRESS_MAP_START(dave_device::z80_program_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(program_r, program_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( z80_io_map, 8, dave_device )
+ADDRESS_MAP_START(dave_device::z80_io_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, dave_device )
+ADDRESS_MAP_START(dave_device::program_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, dave_device )
+ADDRESS_MAP_START(dave_device::io_map)
ADDRESS_MAP_END
@@ -57,8 +57,8 @@ dave_device::dave_device(const machine_config &mconfig, const char *tag, device_
: device_t(mconfig, DAVE, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_sound_interface(mconfig, *this),
- m_program_space_config("program", ENDIANNESS_LITTLE, 8, 22, 0, *ADDRESS_MAP_NAME(program_map)),
- m_io_space_config("i/o", ENDIANNESS_LITTLE, 8, 16, 0, *ADDRESS_MAP_NAME(io_map)),
+ m_program_space_config("program", ENDIANNESS_LITTLE, 8, 22, 0, address_map_constructor(FUNC(dave_device::program_map), this)),
+ m_io_space_config("i/o", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(dave_device::io_map), this)),
m_write_irq(*this),
m_write_lh(*this),
m_write_rh(*this),
diff --git a/src/devices/sound/dave.h b/src/devices/sound/dave.h
index b6ce3827310..918c7bf26cd 100644
--- a/src/devices/sound/dave.h
+++ b/src/devices/sound/dave.h
@@ -59,12 +59,14 @@ public:
template <class Object> static devcb_base &set_lh_wr_callback(device_t &device, Object &&cb) { return downcast<dave_device &>(device).m_write_lh.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_rh_wr_callback(device_t &device, Object &&cb) { return downcast<dave_device &>(device).m_write_rh.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(z80_program_map, 8);
- virtual DECLARE_ADDRESS_MAP(z80_io_map, 8);
+ virtual void z80_program_map(address_map &map);
+ virtual void z80_io_map(address_map &map);
DECLARE_WRITE_LINE_MEMBER( int1_w );
DECLARE_WRITE_LINE_MEMBER( int2_w );
+ void io_map(address_map &map);
+ void program_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/sound/es1373.cpp b/src/devices/sound/es1373.cpp
index 15c274aab76..de41e0ca3d4 100644
--- a/src/devices/sound/es1373.cpp
+++ b/src/devices/sound/es1373.cpp
@@ -77,7 +77,7 @@ MACHINE_CONFIG_END
DEFINE_DEVICE_TYPE(ES1373, es1373_device, "es1373", "Creative Labs Ensoniq AudioPCI97 ES1373")
-DEVICE_ADDRESS_MAP_START(map, 32, es1373_device)
+ADDRESS_MAP_START(es1373_device::map)
AM_RANGE(0x00, 0x3f) AM_READWRITE (reg_r, reg_w)
ADDRESS_MAP_END
diff --git a/src/devices/sound/es1373.h b/src/devices/sound/es1373.h
index 49c728f6a10..bb07d72afd0 100644
--- a/src/devices/sound/es1373.h
+++ b/src/devices/sound/es1373.h
@@ -70,7 +70,7 @@ private:
const char *m_cpu_tag;
cpu_device *m_cpu;
int m_irq_num;
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
uint16_t m_ac97_regs[0x80];
uint32_t m_es_regs[0x10];
uint32_t m_sound_cache[0x40];
diff --git a/src/devices/sound/mos6560.cpp b/src/devices/sound/mos6560.cpp
index f6746750ec6..d8e40421ded 100644
--- a/src/devices/sound/mos6560.cpp
+++ b/src/devices/sound/mos6560.cpp
@@ -680,11 +680,11 @@ DEFINE_DEVICE_TYPE(MOS6561, mos6561_device, "mos6561",
DEFINE_DEVICE_TYPE(MOS656X_ATTACK_UFO, mos656x_attack_ufo_device, "mos656x_attack_ufo", "MOS 656X VIC (Attack UFO)")
// default address maps
-static ADDRESS_MAP_START( mos6560_videoram_map, 0, 8, mos6560_device )
+ADDRESS_MAP_START(mos6560_device::mos6560_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mos6560_colorram_map, 1, 8, mos6560_device )
+ADDRESS_MAP_START(mos6560_device::mos6560_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_RAM
ADDRESS_MAP_END
@@ -694,8 +694,8 @@ mos6560_device::mos6560_device(const machine_config &mconfig, device_type type,
device_sound_interface(mconfig, *this),
device_video_interface(mconfig, *this),
m_variant(variant),
- m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, nullptr, *ADDRESS_MAP_NAME(mos6560_videoram_map)),
- m_colorram_space_config("colorram", ENDIANNESS_LITTLE, 8, 10, 0, nullptr, *ADDRESS_MAP_NAME(mos6560_colorram_map)),
+ m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, address_map_constructor(), address_map_constructor(FUNC(mos6560_device::mos6560_videoram_map), this)),
+ m_colorram_space_config("colorram", ENDIANNESS_LITTLE, 8, 10, 0, address_map_constructor(), address_map_constructor(FUNC(mos6560_device::mos6560_colorram_map), this)),
m_read_potx(*this),
m_read_poty(*this)
{
diff --git a/src/devices/sound/mos6560.h b/src/devices/sound/mos6560.h
index 9f0ff2ee2c4..004f0ccf3ab 100644
--- a/src/devices/sound/mos6560.h
+++ b/src/devices/sound/mos6560.h
@@ -150,6 +150,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void mos6560_colorram_map(address_map &map);
+ void mos6560_videoram_map(address_map &map);
protected:
enum
{
diff --git a/src/devices/sound/mos7360.cpp b/src/devices/sound/mos7360.cpp
index 8f153ec9551..6b21cc4e493 100644
--- a/src/devices/sound/mos7360.cpp
+++ b/src/devices/sound/mos7360.cpp
@@ -170,7 +170,7 @@ DEFINE_DEVICE_TYPE(MOS7360, mos7360_device, "mos7360", "MOS 7360 TED")
// default address maps
-static ADDRESS_MAP_START( mos7360_videoram_map, 0, 8, mos7360_device )
+ADDRESS_MAP_START(mos7360_device::mos7360_videoram_map)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -264,7 +264,7 @@ mos7360_device::mos7360_device(const machine_config &mconfig, const char *tag, d
device_memory_interface(mconfig, *this),
device_sound_interface(mconfig, *this),
device_video_interface(mconfig, *this),
- m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(mos7360_videoram_map)),
+ m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(mos7360_device::mos7360_videoram_map), this)),
m_write_irq(*this),
m_read_k(*this),
m_stream(nullptr)
diff --git a/src/devices/sound/mos7360.h b/src/devices/sound/mos7360.h
index c2ee5ffc198..29150246e5b 100644
--- a/src/devices/sound/mos7360.h
+++ b/src/devices/sound/mos7360.h
@@ -109,6 +109,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void mos7360_videoram_map(address_map &map);
protected:
enum
{
diff --git a/src/devices/sound/pci-ac97.cpp b/src/devices/sound/pci-ac97.cpp
index daee927bc6b..b9804448611 100644
--- a/src/devices/sound/pci-ac97.cpp
+++ b/src/devices/sound/pci-ac97.cpp
@@ -5,16 +5,16 @@
DEFINE_DEVICE_TYPE(AC97, ac97_device, "ac97", "AC'97 Audio")
-DEVICE_ADDRESS_MAP_START(native_audio_mixer_map, 32, ac97_device)
+ADDRESS_MAP_START(ac97_device::native_audio_mixer_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(native_audio_bus_mastering_map, 32, ac97_device)
+ADDRESS_MAP_START(ac97_device::native_audio_bus_mastering_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(mixer_map, 32, ac97_device)
+ADDRESS_MAP_START(ac97_device::mixer_map)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(bus_mastering_map, 32, ac97_device)
+ADDRESS_MAP_START(ac97_device::bus_mastering_map)
ADDRESS_MAP_END
ac97_device::ac97_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/sound/pci-ac97.h b/src/devices/sound/pci-ac97.h
index 0f88f10f338..85f6df08bfe 100644
--- a/src/devices/sound/pci-ac97.h
+++ b/src/devices/sound/pci-ac97.h
@@ -19,10 +19,10 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(native_audio_mixer_map, 32);
- DECLARE_ADDRESS_MAP(native_audio_bus_mastering_map, 32);
- DECLARE_ADDRESS_MAP(mixer_map, 32);
- DECLARE_ADDRESS_MAP(bus_mastering_map, 32);
+ void native_audio_mixer_map(address_map &map);
+ void native_audio_bus_mastering_map(address_map &map);
+ void mixer_map(address_map &map);
+ void bus_mastering_map(address_map &map);
};
DECLARE_DEVICE_TYPE(AC97, ac97_device)
diff --git a/src/devices/sound/qs1000.cpp b/src/devices/sound/qs1000.cpp
index 77a1e25a29f..dbecc8e6d40 100644
--- a/src/devices/sound/qs1000.cpp
+++ b/src/devices/sound/qs1000.cpp
@@ -137,12 +137,12 @@ DEFINE_DEVICE_TYPE(QS1000, qs1000_device, "qs1000", "QS1000")
// GLOBAL VARIABLES
//**************************************************************************
-static ADDRESS_MAP_START( qs1000_prg_map, AS_PROGRAM, 8, qs1000_device )
+ADDRESS_MAP_START(qs1000_device::qs1000_prg_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qs1000_io_map, AS_IO, 8, qs1000_device )
+ADDRESS_MAP_START(qs1000_device::qs1000_io_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0200, 0x0211) AM_WRITE(wave_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(p1_r, p1_w)
diff --git a/src/devices/sound/qs1000.h b/src/devices/sound/qs1000.h
index 6f3bd099283..e6e9746f1ed 100644
--- a/src/devices/sound/qs1000.h
+++ b/src/devices/sound/qs1000.h
@@ -85,6 +85,8 @@ public:
DECLARE_READ8_MEMBER( p3_r );
DECLARE_WRITE8_MEMBER( p3_w );
+ void qs1000_io_map(address_map &map);
+ void qs1000_prg_map(address_map &map);
protected:
// device-level overrides
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/sound/qsound.cpp b/src/devices/sound/qsound.cpp
index 8d11dc3d51b..cda92b96f58 100644
--- a/src/devices/sound/qsound.cpp
+++ b/src/devices/sound/qsound.cpp
@@ -40,7 +40,7 @@ DEFINE_DEVICE_TYPE(QSOUND, qsound_device, "qsound", "Q-Sound")
// chip decapped by siliconpr0n clearly shows 3x as much ROM as that, a total
// of 12288 words of internal ROM.
// The older DSP16 non-a part has 2048 words of ROM.
-static ADDRESS_MAP_START( dsp16_program_map, AS_PROGRAM, 16, qsound_device )
+ADDRESS_MAP_START(qsound_device::dsp16_program_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
ADDRESS_MAP_END
@@ -50,7 +50,7 @@ ADDRESS_MAP_END
// As originally released, the DSP16A had 1024 words of internal RAM,
// but this was expanded to 2048 words in the DL-1425 decap.
// The older DSP16 non-a part has 512 words of RAM.
-static ADDRESS_MAP_START( dsp16_data_map, AS_DATA, 16, qsound_device )
+ADDRESS_MAP_START(qsound_device::dsp16_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/devices/sound/qsound.h b/src/devices/sound/qsound.h
index 6dd27481500..a206446f670 100644
--- a/src/devices/sound/qsound.h
+++ b/src/devices/sound/qsound.h
@@ -38,6 +38,8 @@ public:
DECLARE_WRITE8_MEMBER(qsound_w);
DECLARE_READ8_MEMBER(qsound_r);
+ void dsp16_data_map(address_map &map);
+ void dsp16_program_map(address_map &map);
protected:
// device-level overrides
const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/sound/sb0400.cpp b/src/devices/sound/sb0400.cpp
index 22b256ccfbe..3497419210f 100644
--- a/src/devices/sound/sb0400.cpp
+++ b/src/devices/sound/sb0400.cpp
@@ -5,7 +5,7 @@
DEFINE_DEVICE_TYPE(SB0400, sb0400_device, "sb0400", "Creative Labs SB0400 Audigy2 Value")
-DEVICE_ADDRESS_MAP_START(map, 32, sb0400_device)
+ADDRESS_MAP_START(sb0400_device::map)
ADDRESS_MAP_END
sb0400_device::sb0400_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/sound/sb0400.h b/src/devices/sound/sb0400.h
index b2d612a6dc9..2cf2fac1cc0 100644
--- a/src/devices/sound/sb0400.h
+++ b/src/devices/sound/sb0400.h
@@ -19,7 +19,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
};
DECLARE_DEVICE_TYPE(SB0400, sb0400_device)
diff --git a/src/devices/sound/upd7752.cpp b/src/devices/sound/upd7752.cpp
index 632aee6a0a0..d34554ceb19 100644
--- a/src/devices/sound/upd7752.cpp
+++ b/src/devices/sound/upd7752.cpp
@@ -29,7 +29,7 @@ DEFINE_DEVICE_TYPE(UPD7752, upd7752_device, "upd7752", "NEC uPD7752")
/* TODO: unknown exact size */
-static ADDRESS_MAP_START( upd7752_ram, 0, 8, upd7752_device )
+ADDRESS_MAP_START(upd7752_device::upd7752_ram)
// AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -46,7 +46,7 @@ upd7752_device::upd7752_device(const machine_config &mconfig, const char *tag, d
: device_t(mconfig, UPD7752, tag, owner, clock),
device_sound_interface(mconfig, *this),
device_memory_interface(mconfig, *this), m_stream(nullptr),
- m_space_config("ram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(upd7752_ram)), m_status(0), m_ram_addr(0), m_mode(0)
+ m_space_config("ram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(upd7752_device::upd7752_ram), this)), m_status(0), m_ram_addr(0), m_mode(0)
{
}
diff --git a/src/devices/sound/upd7752.h b/src/devices/sound/upd7752.h
index 5861238ca51..fe73763146b 100644
--- a/src/devices/sound/upd7752.h
+++ b/src/devices/sound/upd7752.h
@@ -29,6 +29,7 @@ public:
DECLARE_WRITE8_MEMBER( write );
DECLARE_READ8_MEMBER( read );
+ void upd7752_ram(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/315_5124.cpp b/src/devices/video/315_5124.cpp
index b773dcab8e3..f6d51ac84c6 100644
--- a/src/devices/video/315_5124.cpp
+++ b/src/devices/video/315_5124.cpp
@@ -160,7 +160,7 @@ PALETTE_INIT_MEMBER(sega315_5378_device, sega315_5378)
// default address map
-static ADDRESS_MAP_START( sega315_5124, 0, 8, sega315_5124_device )
+ADDRESS_MAP_START(sega315_5124_device::sega315_5124)
AM_RANGE(0x0000, VRAM_SIZE-1) AM_RAM
ADDRESS_MAP_END
@@ -182,7 +182,7 @@ sega315_5124_device::sega315_5124_device(const machine_config &mconfig, device_t
, m_int_cb(*this)
, m_csync_cb(*this)
, m_pause_cb(*this)
- , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, nullptr, *ADDRESS_MAP_NAME(sega315_5124))
+ , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, address_map_constructor(), address_map_constructor(FUNC(sega315_5124_device::sega315_5124), this))
, m_palette(*this, "palette")
{
}
diff --git a/src/devices/video/315_5124.h b/src/devices/video/315_5124.h
index ea0f68acb74..671d4ebeb92 100644
--- a/src/devices/video/315_5124.h
+++ b/src/devices/video/315_5124.h
@@ -79,6 +79,7 @@ public:
virtual void set_sega315_5124_compatibility_mode(bool sega315_5124_compatibility_mode) { }
+ void sega315_5124(address_map &map);
protected:
static constexpr unsigned SEGA315_5378_CRAM_SIZE = 0x40; /* 32 colors x 2 bytes per color = 64 bytes */
static constexpr unsigned SEGA315_5124_CRAM_SIZE = 0x20; /* 32 colors x 1 bytes per color = 32 bytes */
diff --git a/src/devices/video/bt459.cpp b/src/devices/video/bt459.cpp
index 4bf7d4c5236..2fffa53fda9 100644
--- a/src/devices/video/bt459.cpp
+++ b/src/devices/video/bt459.cpp
@@ -24,7 +24,7 @@
DEFINE_DEVICE_TYPE(BT459, bt459_device, "bt459", "Brooktree 150MHz Monolithic CMOS 256x24 Color Palette RAMDAC")
-DEVICE_ADDRESS_MAP_START(map, 8, bt459_device)
+ADDRESS_MAP_START(bt459_device::map)
AM_RANGE(0x00, 0x00) AM_READWRITE(address_lo_r, address_lo_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(address_hi_r, address_hi_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(register_r, register_w)
diff --git a/src/devices/video/bt459.h b/src/devices/video/bt459.h
index 78cdc5a2579..36f27e2cd7a 100644
--- a/src/devices/video/bt459.h
+++ b/src/devices/video/bt459.h
@@ -179,7 +179,7 @@ public:
CR4241_7PIX = 0x06 // cross hair thickness 7 pixels
};
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(address_lo_r);
DECLARE_WRITE8_MEMBER(address_lo_w);
diff --git a/src/devices/video/crt9007.cpp b/src/devices/video/crt9007.cpp
index 5d85a58df6f..0559483c80e 100644
--- a/src/devices/video/crt9007.cpp
+++ b/src/devices/video/crt9007.cpp
@@ -222,7 +222,7 @@ const int STATUS_LIGHT_PEN_UPDATE = 0x20;
//**************************************************************************
// default address map
-static ADDRESS_MAP_START( crt9007, 0, 8, crt9007_device )
+ADDRESS_MAP_START(crt9007_device::crt9007)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
@@ -453,7 +453,7 @@ crt9007_device::crt9007_device(const machine_config &mconfig, const char *tag, d
device_t(mconfig, CRT9007, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_video_interface(mconfig, *this),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, nullptr, *ADDRESS_MAP_NAME(crt9007)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, address_map_constructor(), address_map_constructor(FUNC(crt9007_device::crt9007), this)),
m_write_int(*this),
m_write_dmar(*this),
m_write_hs(*this),
diff --git a/src/devices/video/crt9007.h b/src/devices/video/crt9007.h
index 249333dc1dc..bef7187013c 100644
--- a/src/devices/video/crt9007.h
+++ b/src/devices/video/crt9007.h
@@ -114,6 +114,7 @@ public:
void set_character_width(int value);
+ void crt9007(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/ef9345.cpp b/src/devices/video/ef9345.cpp
index f3f867d6b1f..5d99fe7d7de 100644
--- a/src/devices/video/ef9345.cpp
+++ b/src/devices/video/ef9345.cpp
@@ -33,7 +33,7 @@ DEFINE_DEVICE_TYPE(EF9345, ef9345_device, "ef9345", "EF9345")
DEFINE_DEVICE_TYPE(TS9347, ts9347_device, "ts9347", "TS9347")
// default address map
-static ADDRESS_MAP_START( ef9345, 0, 8, ef9345_device )
+ADDRESS_MAP_START(ef9345_device::ef9345)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
@@ -112,7 +112,7 @@ ef9345_device::ef9345_device(const machine_config &mconfig, device_type type, co
device_t(mconfig, type, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_video_interface(mconfig, *this),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(ef9345)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(ef9345_device::ef9345), this)),
m_charset(*this, DEVICE_SELF),
m_variant(variant),
m_palette(*this, finder_base::DUMMY_TAG)
diff --git a/src/devices/video/ef9345.h b/src/devices/video/ef9345.h
index 9466f9a39d4..5556eb3103f 100644
--- a/src/devices/video/ef9345.h
+++ b/src/devices/video/ef9345.h
@@ -40,6 +40,7 @@ public:
void update_scanline(uint16_t scanline);
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void ef9345(address_map &map);
protected:
enum class EF9345_MODE {
diff --git a/src/devices/video/ef9364.cpp b/src/devices/video/ef9364.cpp
index bd9d5003448..729e8146ab3 100644
--- a/src/devices/video/ef9364.cpp
+++ b/src/devices/video/ef9364.cpp
@@ -33,7 +33,7 @@ DEFINE_DEVICE_TYPE(EF9364, ef9364_device, "ef9364", "Thomson EF9364")
//-------------------------------------------------
// default address map
//-------------------------------------------------
-static ADDRESS_MAP_START( ef9364, 0, 8, ef9364_device )
+ADDRESS_MAP_START(ef9364_device::ef9364)
AM_RANGE(0x00000, ( ( ef9364_device::TXTPLANE_MAX_SIZE * ef9364_device::MAX_TXTPLANES ) - 1 ) ) AM_RAM
ADDRESS_MAP_END
@@ -65,7 +65,7 @@ ef9364_device::ef9364_device(const machine_config &mconfig, const char *tag, dev
device_t(mconfig, EF9364, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_video_interface(mconfig, *this),
- m_space_config("textram", ENDIANNESS_LITTLE, 8, 12, 0, nullptr, *ADDRESS_MAP_NAME(ef9364)),
+ m_space_config("textram", ENDIANNESS_LITTLE, 8, 12, 0, address_map_constructor(), address_map_constructor(FUNC(ef9364_device::ef9364), this)),
m_charset(*this, DEVICE_SELF),
m_palette(*this, finder_base::DUMMY_TAG)
{
diff --git a/src/devices/video/ef9364.h b/src/devices/video/ef9364.h
index db61d2199fa..94e1d8aa87b 100644
--- a/src/devices/video/ef9364.h
+++ b/src/devices/video/ef9364.h
@@ -54,6 +54,7 @@ public:
void char_latch_w(uint8_t data);
void command_w(uint8_t cmd);
+ void ef9364(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/ef9365.cpp b/src/devices/video/ef9365.cpp
index 350305ed042..15539950443 100644
--- a/src/devices/video/ef9365.cpp
+++ b/src/devices/video/ef9365.cpp
@@ -166,7 +166,7 @@ const tiny_rom_entry *ef9365_device::device_rom_region() const
// default address map
// Up to 512*512 per bitplane, 8 bitplanes max.
//-------------------------------------------------
-static ADDRESS_MAP_START( ef9365, 0, 8, ef9365_device )
+ADDRESS_MAP_START(ef9365_device::ef9365)
AM_RANGE(0x00000, ( ( ef9365_device::BITPLANE_MAX_SIZE * ef9365_device::MAX_BITPLANES ) - 1 ) ) AM_RAM
ADDRESS_MAP_END
@@ -199,7 +199,7 @@ ef9365_device::ef9365_device(const machine_config &mconfig, const char *tag, dev
device_t(mconfig, EF9365, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_video_interface(mconfig, *this),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 18, 0, nullptr, *ADDRESS_MAP_NAME(ef9365)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 18, 0, address_map_constructor(), address_map_constructor(FUNC(ef9365_device::ef9365), this)),
m_charset(*this, "ef9365"),
m_palette(*this, finder_base::DUMMY_TAG),
m_irq_handler(*this)
diff --git a/src/devices/video/ef9365.h b/src/devices/video/ef9365.h
index 9d0903e7200..f324631a41e 100644
--- a/src/devices/video/ef9365.h
+++ b/src/devices/video/ef9365.h
@@ -66,6 +66,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void ef9365(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/gf7600gs.cpp b/src/devices/video/gf7600gs.cpp
index 407178ab73f..3274f74c95b 100644
--- a/src/devices/video/gf7600gs.cpp
+++ b/src/devices/video/gf7600gs.cpp
@@ -5,13 +5,13 @@
DEFINE_DEVICE_TYPE(GEFORCE_7600GS, geforce_7600gs_device, "geforce_7600gs", "NVIDIA GeForce 7600GS")
-DEVICE_ADDRESS_MAP_START(map1, 32, geforce_7600gs_device)
+ADDRESS_MAP_START(geforce_7600gs_device::map1)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map2, 32, geforce_7600gs_device)
+ADDRESS_MAP_START(geforce_7600gs_device::map2)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map3, 32, geforce_7600gs_device)
+ADDRESS_MAP_START(geforce_7600gs_device::map3)
ADDRESS_MAP_END
geforce_7600gs_device::geforce_7600gs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/video/gf7600gs.h b/src/devices/video/gf7600gs.h
index b2d21011c83..0242a5ec8a4 100644
--- a/src/devices/video/gf7600gs.h
+++ b/src/devices/video/gf7600gs.h
@@ -19,9 +19,9 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map1, 32);
- DECLARE_ADDRESS_MAP(map2, 32);
- DECLARE_ADDRESS_MAP(map3, 32);
+ void map1(address_map &map);
+ void map2(address_map &map);
+ void map3(address_map &map);
};
DECLARE_DEVICE_TYPE(GEFORCE_7600GS, geforce_7600gs_device)
diff --git a/src/devices/video/hd61830.cpp b/src/devices/video/hd61830.cpp
index 11c10f3b93b..d2d275f4217 100644
--- a/src/devices/video/hd61830.cpp
+++ b/src/devices/video/hd61830.cpp
@@ -25,7 +25,7 @@ const device_type HD61830B = HD61830;
// default address map
-static ADDRESS_MAP_START( hd61830, 0, 8, hd61830_device )
+ADDRESS_MAP_START(hd61830_device::hd61830)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -83,7 +83,7 @@ hd61830_device::hd61830_device(const machine_config &mconfig, const char *tag, d
m_cac(0),
m_blink(0),
m_cursor(0),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(hd61830)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(hd61830_device::hd61830), this)),
m_char_rom(*this, "hd61830")
{
}
diff --git a/src/devices/video/hd61830.h b/src/devices/video/hd61830.h
index b33a538a475..827e75ec647 100644
--- a/src/devices/video/hd61830.h
+++ b/src/devices/video/hd61830.h
@@ -47,6 +47,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void hd61830(address_map &map);
protected:
// device-level overrides
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/devices/video/hd66421.cpp b/src/devices/video/hd66421.cpp
index 3de7355d5f6..dd2198666a4 100644
--- a/src/devices/video/hd66421.cpp
+++ b/src/devices/video/hd66421.cpp
@@ -72,7 +72,7 @@ DEFINE_DEVICE_TYPE(HD66421, hd66421_device, "hd66421", "Hitachi HD66421 LCD Cont
// default address map
-static ADDRESS_MAP_START( hd66421, 0, 8, hd66421_device )
+ADDRESS_MAP_START(hd66421_device::hd66421)
AM_RANGE(0x0000, HD66421_RAM_SIZE) AM_RAM
ADDRESS_MAP_END
@@ -124,7 +124,7 @@ inline void hd66421_device::writebyte(offs_t address, uint8_t data)
hd66421_device::hd66421_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, HD66421, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, nullptr, *ADDRESS_MAP_NAME(hd66421)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, address_map_constructor(), address_map_constructor(FUNC(hd66421_device::hd66421), this)),
m_cmd(0),
m_x(0),
m_y(0),
diff --git a/src/devices/video/hd66421.h b/src/devices/video/hd66421.h
index a9248f65d09..675fd9d1b28 100644
--- a/src/devices/video/hd66421.h
+++ b/src/devices/video/hd66421.h
@@ -44,6 +44,7 @@ public:
uint32_t update_screen(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void hd66421(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/huc6271.cpp b/src/devices/video/huc6271.cpp
index d25ae59cd98..e6a1efde754 100644
--- a/src/devices/video/huc6271.cpp
+++ b/src/devices/video/huc6271.cpp
@@ -27,20 +27,20 @@ DEFINE_DEVICE_TYPE(HUC6271, huc6271_device, "huc6271", "Hudson HuC6271 \"Rainbow
// huc6271_device - constructor
//-------------------------------------------------
-static ADDRESS_MAP_START( data_map, AS_DATA, 32, huc6271_device )
+ADDRESS_MAP_START(huc6271_device::data_map)
AM_RANGE(0x000000, 0x0fffff) AM_RAM
ADDRESS_MAP_END
huc6271_device::huc6271_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, HUC6271, tag, owner, clock)
, device_memory_interface(mconfig, *this)
- , m_data_space_config("data", ENDIANNESS_LITTLE, 32, 32, 0, nullptr, *ADDRESS_MAP_NAME(data_map))
+ , m_data_space_config("data", ENDIANNESS_LITTLE, 32, 32, 0, address_map_constructor(), address_map_constructor(FUNC(huc6271_device::data_map), this))
{
}
-DEVICE_ADDRESS_MAP_START( regs, 16, huc6271_device )
+ADDRESS_MAP_START(huc6271_device::regs)
AM_RANGE(0x00, 0x01) AM_WRITENOP // hscroll
AM_RANGE(0x02, 0x03) AM_WRITENOP // control
AM_RANGE(0x04, 0x05) AM_WRITENOP // hsync
diff --git a/src/devices/video/huc6271.h b/src/devices/video/huc6271.h
index b578ae5f9ee..bb85146bbb8 100644
--- a/src/devices/video/huc6271.h
+++ b/src/devices/video/huc6271.h
@@ -34,9 +34,10 @@ public:
huc6271_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
- DECLARE_ADDRESS_MAP(regs, 16);
+ void regs(address_map &map);
//void data_transfer(uint32_t offset, uint32_t data);
+ void data_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/huc6272.cpp b/src/devices/video/huc6272.cpp
index 0d3360090ee..aa69a07f398 100644
--- a/src/devices/video/huc6272.cpp
+++ b/src/devices/video/huc6272.cpp
@@ -22,11 +22,11 @@
// device type definition
DEFINE_DEVICE_TYPE(HUC6272, huc6272_device, "huc6272", "Hudson HuC6272 \"King\"")
-static ADDRESS_MAP_START( microprg_map, AS_PROGRAM, 16, huc6272_device )
+ADDRESS_MAP_START(huc6272_device::microprg_map)
AM_RANGE(0x00, 0x0f) AM_RAM AM_SHARE("microprg_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kram_map, AS_DATA, 32, huc6272_device )
+ADDRESS_MAP_START(huc6272_device::kram_map)
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("kram_page0")
AM_RANGE(0x100000, 0x1fffff) AM_RAM AM_SHARE("kram_page1")
ADDRESS_MAP_END
@@ -43,8 +43,8 @@ ADDRESS_MAP_END
huc6272_device::huc6272_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, HUC6272, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_program_space_config("microprg", ENDIANNESS_LITTLE, 16, 4, 0, nullptr, *ADDRESS_MAP_NAME(microprg_map)),
- m_data_space_config("kram", ENDIANNESS_LITTLE, 32, 21, 0, nullptr, *ADDRESS_MAP_NAME(kram_map)),
+ m_program_space_config("microprg", ENDIANNESS_LITTLE, 16, 4, 0, address_map_constructor(), address_map_constructor(FUNC(huc6272_device::microprg_map), this)),
+ m_data_space_config("kram", ENDIANNESS_LITTLE, 32, 21, 0, address_map_constructor(), address_map_constructor(FUNC(huc6272_device::kram_map), this)),
m_microprg_ram(*this, "microprg_ram"),
m_kram_page0(*this, "kram_page0"),
m_kram_page1(*this, "kram_page1"),
diff --git a/src/devices/video/huc6272.h b/src/devices/video/huc6272.h
index bec5b0eba20..ff3a39c23db 100644
--- a/src/devices/video/huc6272.h
+++ b/src/devices/video/huc6272.h
@@ -50,6 +50,8 @@ public:
DECLARE_WRITE32_MEMBER( write );
DECLARE_READ32_MEMBER( read );
+ void kram_map(address_map &map);
+ void microprg_map(address_map &map);
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/devices/video/imagetek_i4100.cpp b/src/devices/video/imagetek_i4100.cpp
index c125f4b8dd4..567d316fa78 100644
--- a/src/devices/video/imagetek_i4100.cpp
+++ b/src/devices/video/imagetek_i4100.cpp
@@ -77,7 +77,7 @@ DEFINE_DEVICE_TYPE(I4100, imagetek_i4100_device, "i4100", "Imagetek I4100 052 VD
DEFINE_DEVICE_TYPE(I4220, imagetek_i4220_device, "i4220", "Imagetek I4220 071 VDP")
DEFINE_DEVICE_TYPE(I4300, imagetek_i4300_device, "i4300", "Imagetek I4300 095 VDP")
-DEVICE_ADDRESS_MAP_START( map, 16, imagetek_i4100_device)
+ADDRESS_MAP_START(imagetek_i4100_device::map)
AM_RANGE(0x00000, 0x1ffff) AM_READWRITE(vram_0_r, vram_0_w) AM_SHARE("vram_0")
AM_RANGE(0x20000, 0x3ffff) AM_READWRITE(vram_1_r, vram_1_w) AM_SHARE("vram_1")
AM_RANGE(0x40000, 0x5ffff) AM_READWRITE(vram_2_r, vram_2_w) AM_SHARE("vram_2")
@@ -112,7 +112,7 @@ DEVICE_ADDRESS_MAP_START( map, 16, imagetek_i4100_device)
ADDRESS_MAP_END
// same as above but with moved video registers (now at 0x797**)
-DEVICE_ADDRESS_MAP_START( v2_map, 16, imagetek_i4220_device)
+ADDRESS_MAP_START(imagetek_i4220_device::v2_map)
AM_RANGE(0x00000, 0x1ffff) AM_READWRITE(vram_0_r, vram_0_w) AM_SHARE("vram_0")
AM_RANGE(0x20000, 0x3ffff) AM_READWRITE(vram_1_r, vram_1_w) AM_SHARE("vram_1")
AM_RANGE(0x40000, 0x5ffff) AM_READWRITE(vram_2_r, vram_2_w) AM_SHARE("vram_2")
@@ -157,7 +157,7 @@ DEVICE_ADDRESS_MAP_START( v2_map, 16, imagetek_i4220_device)
ADDRESS_MAP_END
// more changes around, namely the screen offsets being reversed here
-DEVICE_ADDRESS_MAP_START( v3_map, 16, imagetek_i4300_device)
+ADDRESS_MAP_START(imagetek_i4300_device::v3_map)
AM_RANGE(0x00000, 0x1ffff) AM_READWRITE(vram_0_r, vram_0_w) AM_SHARE("vram_0")
AM_RANGE(0x20000, 0x3ffff) AM_READWRITE(vram_1_r, vram_1_w) AM_SHARE("vram_1")
AM_RANGE(0x40000, 0x5ffff) AM_READWRITE(vram_2_r, vram_2_w) AM_SHARE("vram_2")
diff --git a/src/devices/video/imagetek_i4100.h b/src/devices/video/imagetek_i4100.h
index 4e0d0108920..7a2aecd29aa 100644
--- a/src/devices/video/imagetek_i4100.h
+++ b/src/devices/video/imagetek_i4100.h
@@ -44,7 +44,7 @@ public:
// construction/destruction
imagetek_i4100_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
static void static_set_gfxdecode_tag(device_t &device, const char *tag);
static void static_set_tmap_xoffsets(device_t &device, int x1, int x2, int x3);
@@ -187,7 +187,7 @@ public:
// construction/destruction
imagetek_i4220_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(v2_map, 16);
+ void v2_map(address_map &map);
// needed by Blazing Tornado / Grand Striker 2 for mixing with PSAC
// (it's unknown how the chip enables external sync)
@@ -203,7 +203,7 @@ public:
// construction/destruction
imagetek_i4300_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(v3_map, 16);
+ void v3_map(address_map &map);
protected:
diff --git a/src/devices/video/jangou_blitter.cpp b/src/devices/video/jangou_blitter.cpp
index fd137c007d1..c0ec764e2d2 100644
--- a/src/devices/video/jangou_blitter.cpp
+++ b/src/devices/video/jangou_blitter.cpp
@@ -41,7 +41,7 @@ jangou_blitter_device::jangou_blitter_device(const machine_config &mconfig, cons
}
-DEVICE_ADDRESS_MAP_START( blit_v1_regs, 8, jangou_blitter_device )
+ADDRESS_MAP_START(jangou_blitter_device::blit_v1_regs)
AM_RANGE(0x00, 0x00) AM_WRITE(src_lo_address_w)
AM_RANGE(0x01, 0x01) AM_WRITE(src_md_address_w)
AM_RANGE(0x02, 0x02) AM_WRITE(x_w)
@@ -52,7 +52,7 @@ DEVICE_ADDRESS_MAP_START( blit_v1_regs, 8, jangou_blitter_device )
ADDRESS_MAP_END
// Sexy Gal and variants (v2) swaps around upper src address
-DEVICE_ADDRESS_MAP_START( blit_v2_regs, 8, jangou_blitter_device )
+ADDRESS_MAP_START(jangou_blitter_device::blit_v2_regs)
AM_RANGE(0x00, 0x00) AM_WRITE(src_lo_address_w)
AM_RANGE(0x01, 0x01) AM_WRITE(src_md_address_w)
AM_RANGE(0x02, 0x02) AM_WRITE(src_hi_address_w)
diff --git a/src/devices/video/jangou_blitter.h b/src/devices/video/jangou_blitter.h
index ff56e2f4285..14f866d0df5 100644
--- a/src/devices/video/jangou_blitter.h
+++ b/src/devices/video/jangou_blitter.h
@@ -28,8 +28,8 @@ public:
jangou_blitter_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
- DECLARE_ADDRESS_MAP(blit_v1_regs, 8);
- DECLARE_ADDRESS_MAP(blit_v2_regs, 8);
+ void blit_v1_regs(address_map &map);
+ void blit_v2_regs(address_map &map);
DECLARE_WRITE8_MEMBER( vregs_w );
DECLARE_WRITE8_MEMBER( bltflip_w );
diff --git a/src/devices/video/m50458.cpp b/src/devices/video/m50458.cpp
index 48128ecb095..93e98ce2642 100644
--- a/src/devices/video/m50458.cpp
+++ b/src/devices/video/m50458.cpp
@@ -29,7 +29,7 @@
// device type definition
DEFINE_DEVICE_TYPE(M50458, m50458_device, "m50458", "Mitsubishi M50458 OSD")
-static ADDRESS_MAP_START( m50458_vram, 0, 16, m50458_device )
+ADDRESS_MAP_START(m50458_device::m50458_vram)
AM_RANGE(0x0000, 0x023f) AM_RAM // vram
AM_RANGE(0x0240, 0x0241) AM_WRITE(vreg_120_w)
AM_RANGE(0x0242, 0x0243) AM_WRITE(vreg_121_w)
@@ -179,7 +179,7 @@ m50458_device::m50458_device(const machine_config &mconfig, const char *tag, dev
: device_t(mconfig, M50458, tag, owner, clock)
, device_memory_interface(mconfig, *this)
, device_video_interface(mconfig, *this)
- , m_space_config("videoram", ENDIANNESS_LITTLE, 16, 16, 0, nullptr, *ADDRESS_MAP_NAME(m50458_vram))
+ , m_space_config("videoram", ENDIANNESS_LITTLE, 16, 16, 0, address_map_constructor(), address_map_constructor(FUNC(m50458_device::m50458_vram), this))
{
}
diff --git a/src/devices/video/m50458.h b/src/devices/video/m50458.h
index 0d3d33bd9d2..6bff7a178c5 100644
--- a/src/devices/video/m50458.h
+++ b/src/devices/video/m50458.h
@@ -52,6 +52,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
virtual const tiny_rom_entry *device_rom_region() const override;
+ void m50458_vram(address_map &map);
protected:
enum m50458_state_t
{
diff --git a/src/devices/video/mb90082.cpp b/src/devices/video/mb90082.cpp
index 2afe3903593..30270c8255d 100644
--- a/src/devices/video/mb90082.cpp
+++ b/src/devices/video/mb90082.cpp
@@ -23,7 +23,7 @@
// device type definition
DEFINE_DEVICE_TYPE(MB90082, mb90082_device, "mb90082", "Fujitsu MB90082 OSD")
-static ADDRESS_MAP_START( mb90082_vram, 0, 16, mb90082_device )
+ADDRESS_MAP_START(mb90082_device::mb90082_vram)
AM_RANGE(0x0000, 0x023f) AM_RAM // main screen vram
AM_RANGE(0x0400, 0x063f) AM_RAM // main screen attr
// AM_RANGE(0x0800, 0x0a3f) AM_RAM // sub screen vram
@@ -90,7 +90,7 @@ inline void mb90082_device::write_word(offs_t address, uint16_t data)
mb90082_device::mb90082_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, MB90082, tag, owner, clock)
, device_memory_interface(mconfig, *this)
- , m_space_config("videoram", ENDIANNESS_LITTLE, 16, 16, 0, nullptr, *ADDRESS_MAP_NAME(mb90082_vram))
+ , m_space_config("videoram", ENDIANNESS_LITTLE, 16, 16, 0, address_map_constructor(), address_map_constructor(FUNC(mb90082_device::mb90082_vram), this))
{
}
diff --git a/src/devices/video/mb90082.h b/src/devices/video/mb90082.h
index b4de8293bc3..e9c342179b9 100644
--- a/src/devices/video/mb90082.h
+++ b/src/devices/video/mb90082.h
@@ -41,6 +41,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
virtual const tiny_rom_entry *device_rom_region() const override;
+ void mb90082_vram(address_map &map);
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/devices/video/mb_vcu.cpp b/src/devices/video/mb_vcu.cpp
index c0d7d805217..edbef283be4 100644
--- a/src/devices/video/mb_vcu.cpp
+++ b/src/devices/video/mb_vcu.cpp
@@ -46,12 +46,12 @@ void mb_vcu_device::static_set_palette_tag(device_t &device, const char *tag)
}
-static ADDRESS_MAP_START( mb_vcu_vram, 0, 8, mb_vcu_device )
+ADDRESS_MAP_START(mb_vcu_device::mb_vcu_vram)
AM_RANGE(0x00000,0x7ffff) AM_RAM // enough for a 256x256x4 x 2 pages of framebuffer with 4 layers (TODO: doubled for simplicity)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mb_vcu_pal_ram, 1, 8, mb_vcu_device )
+ADDRESS_MAP_START(mb_vcu_device::mb_vcu_pal_ram)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0200, 0x02ff) AM_RAM
AM_RANGE(0x0400, 0x04ff) AM_RAM
@@ -155,8 +155,8 @@ mb_vcu_device::mb_vcu_device(const machine_config &mconfig, const char *tag, dev
: device_t(mconfig, MB_VCU, tag, owner, clock)
, device_memory_interface(mconfig, *this)
, device_video_interface(mconfig, *this)
- , m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 19, 0, nullptr, *ADDRESS_MAP_NAME(mb_vcu_vram))
- , m_paletteram_space_config("palram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(mb_vcu_pal_ram))
+ , m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 19, 0, address_map_constructor(), address_map_constructor(FUNC(mb_vcu_device::mb_vcu_vram), this))
+ , m_paletteram_space_config("palram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(mb_vcu_device::mb_vcu_pal_ram), this))
, m_cpu(*this, finder_base::DUMMY_TAG)
, m_palette(*this, finder_base::DUMMY_TAG)
{
diff --git a/src/devices/video/mb_vcu.h b/src/devices/video/mb_vcu.h
index f75810cc16f..2b99c8847f6 100644
--- a/src/devices/video/mb_vcu.h
+++ b/src/devices/video/mb_vcu.h
@@ -41,6 +41,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void screen_eof(void);
+ void mb_vcu_pal_ram(address_map &map);
+ void mb_vcu_vram(address_map &map);
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/devices/video/mc6845.cpp b/src/devices/video/mc6845.cpp
index dfddcdfedb2..188b66d5c58 100644
--- a/src/devices/video/mc6845.cpp
+++ b/src/devices/video/mc6845.cpp
@@ -1438,7 +1438,7 @@ device_memory_interface::space_config_vector mos8563_device::memory_space_config
}
// default address maps
-static ADDRESS_MAP_START( mos8563_videoram_map, 0, 8, mos8563_device )
+ADDRESS_MAP_START(mos8563_device::mos8563_videoram_map)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -1505,7 +1505,7 @@ ams40489_device::ams40489_device(const machine_config &mconfig, const char *tag,
mos8563_device::mos8563_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
: mc6845_device(mconfig, type, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(mos8563_videoram_map)),
+ m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(mos8563_device::mos8563_videoram_map), this)),
m_palette(*this, "palette")
{
set_clock_scale(1.0/8);
diff --git a/src/devices/video/mc6845.h b/src/devices/video/mc6845.h
index bf08104f247..62a5d6ad063 100644
--- a/src/devices/video/mc6845.h
+++ b/src/devices/video/mc6845.h
@@ -447,6 +447,7 @@ public:
MC6845_UPDATE_ROW( vdc_update_row );
+ void mos8563_videoram_map(address_map &map);
protected:
mos8563_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/video/mos6566.cpp b/src/devices/video/mos6566.cpp
index e2d2101ccc9..75997c84d27 100644
--- a/src/devices/video/mos6566.cpp
+++ b/src/devices/video/mos6566.cpp
@@ -225,11 +225,11 @@ DEFINE_DEVICE_TYPE(MOS8566, mos8566_device, "mos8566", "MOS 8566 VIC-II")
// default address maps
-static ADDRESS_MAP_START( mos6566_videoram_map, 0, 8, mos6566_device )
+ADDRESS_MAP_START(mos6566_device::mos6566_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mos6566_colorram_map, 1, 8, mos6566_device )
+ADDRESS_MAP_START(mos6566_device::mos6566_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_RAM
ADDRESS_MAP_END
@@ -585,8 +585,8 @@ mos6566_device::mos6566_device(const machine_config &mconfig, device_type type,
device_execute_interface(mconfig, *this),
m_icount(0),
m_variant(variant),
- m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, nullptr, *ADDRESS_MAP_NAME(mos6566_videoram_map)),
- m_colorram_space_config("colorram", ENDIANNESS_LITTLE, 8, 10, 0, nullptr, *ADDRESS_MAP_NAME(mos6566_colorram_map)),
+ m_videoram_space_config("videoram", ENDIANNESS_LITTLE, 8, 14, 0, address_map_constructor(), address_map_constructor(FUNC(mos6566_device::mos6566_videoram_map), this)),
+ m_colorram_space_config("colorram", ENDIANNESS_LITTLE, 8, 10, 0, address_map_constructor(), address_map_constructor(FUNC(mos6566_device::mos6566_colorram_map), this)),
m_write_irq(*this),
m_write_ba(*this),
m_write_aec(*this),
diff --git a/src/devices/video/mos6566.h b/src/devices/video/mos6566.h
index 2f8e6b07771..dd9038b2610 100644
--- a/src/devices/video/mos6566.h
+++ b/src/devices/video/mos6566.h
@@ -233,6 +233,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void mos6566_colorram_map(address_map &map);
+ void mos6566_videoram_map(address_map &map);
protected:
enum
{
diff --git a/src/devices/video/msm6255.cpp b/src/devices/video/msm6255.cpp
index 1f546630e27..4513327160a 100644
--- a/src/devices/video/msm6255.cpp
+++ b/src/devices/video/msm6255.cpp
@@ -54,13 +54,13 @@
DEFINE_DEVICE_TYPE(MSM6255, msm6255_device, "msm6255", "Oki MSM6255 LCD Controller")
// I/O map
-DEVICE_ADDRESS_MAP_START( map, 8, msm6255_device )
+ADDRESS_MAP_START(msm6255_device::map)
AM_RANGE(0x00, 0x00) AM_READWRITE(dr_r, dr_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(ir_r, ir_w)
ADDRESS_MAP_END
// default address map
-static ADDRESS_MAP_START( msm6255, 0, 8, msm6255_device )
+ADDRESS_MAP_START(msm6255_device::msm6255)
AM_RANGE(0x00000, 0xfffff) AM_RAM
ADDRESS_MAP_END
@@ -78,7 +78,7 @@ msm6255_device::msm6255_device(const machine_config &mconfig, const char *tag, d
device_t(mconfig, MSM6255, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_video_interface(mconfig, *this),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 20, 0, nullptr, *ADDRESS_MAP_NAME(msm6255)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 20, 0, address_map_constructor(), address_map_constructor(FUNC(msm6255_device::msm6255), this)),
m_cursor(0)
{
}
diff --git a/src/devices/video/msm6255.h b/src/devices/video/msm6255.h
index 11c7d33996f..50d687f7d23 100644
--- a/src/devices/video/msm6255.h
+++ b/src/devices/video/msm6255.h
@@ -27,7 +27,7 @@ public:
// construction/destruction
msm6255_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 8);
+ virtual void map(address_map &map);
DECLARE_READ8_MEMBER( ir_r );
DECLARE_WRITE8_MEMBER( ir_w );
@@ -37,6 +37,7 @@ public:
uint32_t screen_update(screen_device &device, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void msm6255(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/ppu2c0x.cpp b/src/devices/video/ppu2c0x.cpp
index 4370d9328d4..21313029b65 100644
--- a/src/devices/video/ppu2c0x.cpp
+++ b/src/devices/video/ppu2c0x.cpp
@@ -87,7 +87,7 @@ DEFINE_DEVICE_TYPE(PPU_2C05_04, ppu2c05_04_device, "ppu2c05_04", "2C05_04 PPU")
// default address map
-static ADDRESS_MAP_START( ppu2c0x, 0, 8, ppu2c0x_device )
+ADDRESS_MAP_START(ppu2c0x_device::ppu2c0x)
AM_RANGE(0x0000, 0x3eff) AM_RAM
AM_RANGE(0x3f00, 0x3fff) AM_READWRITE(palette_read, palette_write)
// AM_RANGE(0x0000, 0x3fff) AM_RAM
@@ -129,7 +129,7 @@ ppu2c0x_device::ppu2c0x_device(const machine_config &mconfig, device_type type,
: device_t(mconfig, type, tag, owner, clock)
, device_memory_interface(mconfig, *this)
, device_video_interface(mconfig, *this)
- , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, nullptr, *ADDRESS_MAP_NAME(ppu2c0x))
+ , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, address_map_constructor(), address_map_constructor(FUNC(ppu2c0x_device::ppu2c0x), this))
, m_cpu(*this, finder_base::DUMMY_TAG)
, m_scanline(0) // reset the scanline count
, m_refresh_data(0)
diff --git a/src/devices/video/ppu2c0x.h b/src/devices/video/ppu2c0x.h
index 38218e28628..7d425c5ef34 100644
--- a/src/devices/video/ppu2c0x.h
+++ b/src/devices/video/ppu2c0x.h
@@ -161,6 +161,7 @@ public:
uint16_t get_vram_dest();
void set_vram_dest(uint16_t dest);
+ void ppu2c0x(address_map &map);
protected:
// registers definition
enum
diff --git a/src/devices/video/ramdac.cpp b/src/devices/video/ramdac.cpp
index b2852915bd0..4cb0ef2f383 100644
--- a/src/devices/video/ramdac.cpp
+++ b/src/devices/video/ramdac.cpp
@@ -17,7 +17,7 @@
#include "video/ramdac.h"
// default address map
-static ADDRESS_MAP_START( ramdac_palram, 0, 8, ramdac_device )
+ADDRESS_MAP_START(ramdac_device::ramdac_palram)
AM_RANGE(0x000, 0x0ff) AM_RAM // R bank
AM_RANGE(0x100, 0x1ff) AM_RAM // G bank
AM_RANGE(0x200, 0x2ff) AM_RAM // B bank
@@ -43,7 +43,7 @@ DEFINE_DEVICE_TYPE(RAMDAC, ramdac_device, "ramdac", "RAMDAC")
ramdac_device::ramdac_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, RAMDAC, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 10, 0, nullptr, *ADDRESS_MAP_NAME(ramdac_palram)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 10, 0, address_map_constructor(), address_map_constructor(FUNC(ramdac_device::ramdac_palram), this)),
m_palette(*this, finder_base::DUMMY_TAG),
m_color_base(0),
m_split_read_reg(0)
diff --git a/src/devices/video/ramdac.h b/src/devices/video/ramdac.h
index 36241c011fb..51abadaf6de 100644
--- a/src/devices/video/ramdac.h
+++ b/src/devices/video/ramdac.h
@@ -62,6 +62,7 @@ public:
virtual space_config_vector memory_space_config() const override;
+ void ramdac_palram(address_map &map);
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/devices/video/scn2674.cpp b/src/devices/video/scn2674.cpp
index 070cd82b3ab..fe3e8ab5df2 100644
--- a/src/devices/video/scn2674.cpp
+++ b/src/devices/video/scn2674.cpp
@@ -21,7 +21,7 @@ DEFINE_DEVICE_TYPE(SCN2674, scn2674_device, "scn2674", "Signetics SCN2674 AVDC")
// default address map
-static ADDRESS_MAP_START( scn2674_vram, 0, 8, scn2674_device )
+ADDRESS_MAP_START(scn2674_device::scn2674_vram)
AM_RANGE(0x0000, 0xffff) AM_NOP
ADDRESS_MAP_END
@@ -53,7 +53,7 @@ scn2674_device::scn2674_device(const machine_config &mconfig, const char *tag, d
, m_spl1(0), m_spl2(0), m_dbl1(0)
, m_buffer(0), m_linecounter(0), m_address(0), m_start1change(0), m_irq_state(0)
, m_scanline_timer(nullptr)
- , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(scn2674_vram))
+ , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(scn2674_device::scn2674_vram), this))
{
}
diff --git a/src/devices/video/scn2674.h b/src/devices/video/scn2674.h
index 96dc50c2fec..9b1932aab8d 100644
--- a/src/devices/video/scn2674.h
+++ b/src/devices/video/scn2674.h
@@ -43,6 +43,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
virtual space_config_vector memory_space_config() const override;
+ void scn2674_vram(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/devices/video/sed1330.cpp b/src/devices/video/sed1330.cpp
index f80d8405bdf..c3e87b68099 100644
--- a/src/devices/video/sed1330.cpp
+++ b/src/devices/video/sed1330.cpp
@@ -66,7 +66,7 @@ DEFINE_DEVICE_TYPE(SED1330, sed1330_device, "sed1330", "Epson SED1330")
// default address map
-static ADDRESS_MAP_START( sed1330, 0, 8, sed1330_device )
+ADDRESS_MAP_START(sed1330_device::sed1330)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -144,7 +144,7 @@ sed1330_device::sed1330_device(const machine_config &mconfig, const char *tag, d
device_memory_interface(mconfig, *this),
device_video_interface(mconfig, *this),
m_bf(0),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, nullptr, *ADDRESS_MAP_NAME(sed1330))
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(), address_map_constructor(FUNC(sed1330_device::sed1330), this))
{
}
diff --git a/src/devices/video/sed1330.h b/src/devices/video/sed1330.h
index 755d660f126..ce48264ce9c 100644
--- a/src/devices/video/sed1330.h
+++ b/src/devices/video/sed1330.h
@@ -50,6 +50,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void sed1330(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/tms3556.cpp b/src/devices/video/tms3556.cpp
index c2900da30cd..c5edfba7048 100644
--- a/src/devices/video/tms3556.cpp
+++ b/src/devices/video/tms3556.cpp
@@ -57,7 +57,7 @@ DEFINE_DEVICE_TYPE(TMS3556, tms3556_device, "tms3556", "Texas Instruments TMS355
// default address map
-static ADDRESS_MAP_START( tms3556, 0, 8, tms3556_device )
+ADDRESS_MAP_START(tms3556_device::tms3556)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -109,7 +109,7 @@ inline void tms3556_device::writebyte(offs_t address, uint8_t data)
tms3556_device::tms3556_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, TMS3556, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, nullptr, *ADDRESS_MAP_NAME(tms3556)),
+ m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, address_map_constructor(), address_map_constructor(FUNC(tms3556_device::tms3556), this)),
m_reg(0), m_reg2(0),
m_reg_access_phase(0),
m_row_col_written(0),
diff --git a/src/devices/video/tms3556.h b/src/devices/video/tms3556.h
index f445186e284..1657ec475b2 100644
--- a/src/devices/video/tms3556.h
+++ b/src/devices/video/tms3556.h
@@ -57,6 +57,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void tms3556(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/tms9928a.cpp b/src/devices/video/tms9928a.cpp
index 242d4a254e1..52a320815c7 100644
--- a/src/devices/video/tms9928a.cpp
+++ b/src/devices/video/tms9928a.cpp
@@ -49,7 +49,7 @@ DEFINE_DEVICE_TYPE(TMS9129, tms9129_device, "tms9129", "TMS9129 VDP")
/*
The TMS9928 has an own address space.
*/
-static ADDRESS_MAP_START(memmap, AS_DATA, 8, tms9928a_device)
+ADDRESS_MAP_START(tms9928a_device::memmap)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
@@ -64,9 +64,8 @@ tms9928a_device::tms9928a_device(const machine_config &mconfig, device_type type
, m_50hz(is_50hz)
, m_reva(is_reva)
, m_99(is_99)
- , m_space_config("vram", ENDIANNESS_BIG, 8, 14, 0, nullptr, *ADDRESS_MAP_NAME(memmap))
+ , m_space_config("vram", ENDIANNESS_BIG, 8, 14, 0, address_map_constructor(), address_map_constructor(FUNC(tms9928a_device::memmap), this))
{
-// static_set_addrmap(*this, AS_DATA, ADDRESS_MAP_NAME(memmap));
}
diff --git a/src/devices/video/tms9928a.h b/src/devices/video/tms9928a.h
index c9cafb3dc3e..c18e20d7bc0 100644
--- a/src/devices/video/tms9928a.h
+++ b/src/devices/video/tms9928a.h
@@ -112,6 +112,7 @@ public:
/* RESET pin */
void reset_line(int state) { if (state==ASSERT_LINE) device_reset(); }
+ void memmap(address_map &map);
protected:
tms9928a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool is_50hz, bool is_reva, bool is_99);
diff --git a/src/devices/video/upd7220.cpp b/src/devices/video/upd7220.cpp
index 1199ffe16f2..cb39dd436d0 100644
--- a/src/devices/video/upd7220.cpp
+++ b/src/devices/video/upd7220.cpp
@@ -149,7 +149,7 @@ DEFINE_DEVICE_TYPE(UPD7220, upd7220_device, "upd7220", "NEC uPD7220")
// default address map
-static ADDRESS_MAP_START( upd7220_vram, 0, 16, upd7220_device )
+ADDRESS_MAP_START(upd7220_device::upd7220_vram)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
@@ -649,7 +649,7 @@ upd7220_device::upd7220_device(const machine_config &mconfig, const char *tag, d
m_disp(0),
m_gchr(0),
m_bitmap_mod(0),
- m_space_config("videoram", ENDIANNESS_LITTLE, 16, 18, 0, nullptr, *ADDRESS_MAP_NAME(upd7220_vram))
+ m_space_config("videoram", ENDIANNESS_LITTLE, 16, 18, 0, address_map_constructor(), address_map_constructor(FUNC(upd7220_device::upd7220_vram), this))
{
for (int i = 0; i < 16; i++)
{
diff --git a/src/devices/video/upd7220.h b/src/devices/video/upd7220.h
index 1f8eab72a07..ea6fb3b259d 100644
--- a/src/devices/video/upd7220.h
+++ b/src/devices/video/upd7220.h
@@ -103,6 +103,7 @@ public:
virtual const tiny_rom_entry *device_rom_region() const override;
virtual space_config_vector memory_space_config() const override;
+ void upd7220_vram(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/upd7227.cpp b/src/devices/video/upd7227.cpp
index de456954d25..89a12408e05 100644
--- a/src/devices/video/upd7227.cpp
+++ b/src/devices/video/upd7227.cpp
@@ -21,7 +21,7 @@
DEFINE_DEVICE_TYPE(UPD7227, upd7227_device, "upd7227", "NEC uPD7227")
-static ADDRESS_MAP_START( upd7227_map, AS_PROGRAM, 8, upd7227_device )
+ADDRESS_MAP_START(upd7227_device::upd7227_map)
AM_RANGE(0x00, 0x27) AM_RAM
AM_RANGE(0x40, 0x67) AM_RAM
ADDRESS_MAP_END
@@ -39,7 +39,7 @@ ADDRESS_MAP_END
upd7227_device::upd7227_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, UPD7227, tag, owner, clock)
, device_memory_interface(mconfig, *this)
- , m_space_config("videoram", ENDIANNESS_BIG, 8, 7, 0, *ADDRESS_MAP_NAME(upd7227_map))
+ , m_space_config("videoram", ENDIANNESS_BIG, 8, 7, 0, address_map_constructor(FUNC(upd7227_device::upd7227_map), this))
, m_cs(1)
, m_cd(1)
, m_sck(1)
diff --git a/src/devices/video/upd7227.h b/src/devices/video/upd7227.h
index 9e8bb4a3647..a74e2e57943 100644
--- a/src/devices/video/upd7227.h
+++ b/src/devices/video/upd7227.h
@@ -47,6 +47,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void upd7227_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/devices/video/v9938.cpp b/src/devices/video/v9938.cpp
index c0edf2476f4..b36d592f32e 100644
--- a/src/devices/video/v9938.cpp
+++ b/src/devices/video/v9938.cpp
@@ -89,7 +89,7 @@ static const char *const v9938_modes[] = {
Similar to the TMS9928, the V9938 has an own address space. It can handle
at most 192 KiB RAM (128 KiB base, 64 KiB expansion).
*/
-static ADDRESS_MAP_START(memmap, AS_DATA, 8, v99x8_device)
+ADDRESS_MAP_START(v99x8_device::memmap)
ADDRESS_MAP_GLOBAL_MASK(0x3ffff)
AM_RANGE(0x00000, 0x2ffff) AM_RAM
ADDRESS_MAP_END
@@ -131,7 +131,7 @@ v99x8_device::v99x8_device(const machine_config &mconfig, device_type type, cons
m_vdp_engine(nullptr),
m_pal_ntsc(0)
{
- static_set_addrmap(*this, AS_DATA, ADDRESS_MAP_NAME(memmap));
+ set_addrmap(AS_DATA, address_map_constructor(FUNC(v99x8_device::memmap), this));
}
v9938_device::v9938_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/video/v9938.h b/src/devices/video/v9938.h
index 7644cd724b0..61af83b4ec9 100644
--- a/src/devices/video/v9938.h
+++ b/src/devices/video/v9938.h
@@ -110,6 +110,7 @@ public:
static constexpr int TOP_ERASE = 13;
static constexpr int VERTICAL_SYNC = 3;
+ void memmap(address_map &map);
protected:
// construction/destruction
v99x8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int model);
diff --git a/src/devices/video/voodoo_pci.cpp b/src/devices/video/voodoo_pci.cpp
index b65e2cabcbf..6ef3a938b1b 100644
--- a/src/devices/video/voodoo_pci.cpp
+++ b/src/devices/video/voodoo_pci.cpp
@@ -38,25 +38,25 @@ MACHINE_CONFIG_END
DEFINE_DEVICE_TYPE(VOODOO_PCI, voodoo_pci_device, "voodoo_pci", "Voodoo PCI")
-DEVICE_ADDRESS_MAP_START(config_map, 32, voodoo_pci_device)
- AM_INHERIT_FROM(pci_device::config_map)
+ADDRESS_MAP_START(voodoo_pci_device::config_map)
+ AM_IMPORT_FROM(pci_device::config_map)
AM_RANGE(0x40, 0x5f) AM_READWRITE (pcictrl_r, pcictrl_w)
ADDRESS_MAP_END
// VOODOO_1 & VOODOO_2 map
-DEVICE_ADDRESS_MAP_START(voodoo_reg_map, 32, voodoo_pci_device)
+ADDRESS_MAP_START(voodoo_pci_device::voodoo_reg_map)
AM_RANGE(0x0, 0x00ffffff) AM_DEVREADWRITE("voodoo", voodoo_device, voodoo_r, voodoo_w)
ADDRESS_MAP_END
// VOODOO_BANSHEE and VOODOO_3 maps
-DEVICE_ADDRESS_MAP_START(banshee_reg_map, 32, voodoo_pci_device)
+ADDRESS_MAP_START(voodoo_pci_device::banshee_reg_map)
AM_RANGE(0x0, 0x01ffffff) AM_DEVREADWRITE("voodoo", voodoo_banshee_device, banshee_r, banshee_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(lfb_map, 32, voodoo_pci_device)
+ADDRESS_MAP_START(voodoo_pci_device::lfb_map)
AM_RANGE(0x0, 0x01ffffff) AM_DEVREADWRITE("voodoo", voodoo_banshee_device, banshee_fb_r, banshee_fb_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(io_map, 32, voodoo_pci_device)
+ADDRESS_MAP_START(voodoo_pci_device::io_map)
AM_RANGE(0x000, 0x0ff) AM_DEVREADWRITE("voodoo", voodoo_banshee_device, banshee_io_r, banshee_io_w)
ADDRESS_MAP_END
diff --git a/src/devices/video/voodoo_pci.h b/src/devices/video/voodoo_pci.h
index 096524daf56..d6bbcf51cfa 100644
--- a/src/devices/video/voodoo_pci.h
+++ b/src/devices/video/voodoo_pci.h
@@ -28,7 +28,7 @@ public:
uint64_t io_window_start, uint64_t io_window_end, uint64_t io_offset, address_space *io_space) override;
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
void postload(void);
void set_cpu_tag(const char *tag);
@@ -54,10 +54,10 @@ private:
const char *m_cpu_tag;
uint32_t m_pcictrl_reg[0x20];
- DECLARE_ADDRESS_MAP(voodoo_reg_map, 32);
- DECLARE_ADDRESS_MAP(banshee_reg_map, 32);
- DECLARE_ADDRESS_MAP(lfb_map, 32);
- DECLARE_ADDRESS_MAP(io_map, 32);
+ void voodoo_reg_map(address_map &map);
+ void banshee_reg_map(address_map &map);
+ void lfb_map(address_map &map);
+ void io_map(address_map &map);
};
DECLARE_DEVICE_TYPE(VOODOO_PCI, voodoo_pci_device)
diff --git a/src/emu/addrmap.cpp b/src/emu/addrmap.cpp
index 1b9c5142a0a..679e9e926bf 100644
--- a/src/emu/addrmap.cpp
+++ b/src/emu/addrmap.cpp
@@ -18,6 +18,37 @@
#define DETECT_OVERLAPPING_MEMORY (0)
+/*-------------------------------------------------
+ core_i64_hex_format - i64 format printf helper
+ why isn't fatalerror going through the same
+ channels as logerror exactly?
+-------------------------------------------------*/
+
+static char *core_i64_hex_format(u64 value, u8 mindigits)
+{
+ static char buffer[16][64];
+ // TODO: this can overflow - e.g. when a lot of unmapped writes are logged
+ static int index;
+ char *bufbase = &buffer[index++ % 16][0];
+ char *bufptr = bufbase;
+ s8 curdigit;
+
+ for (curdigit = 15; curdigit >= 0; curdigit--)
+ {
+ int nibble = (value >> (curdigit * 4)) & 0xf;
+ if (nibble != 0 || curdigit < mindigits)
+ {
+ mindigits = curdigit;
+ *bufptr++ = "0123456789ABCDEF"[nibble];
+ }
+ }
+ if (bufptr == bufbase)
+ *bufptr++ = '0';
+ *bufptr = 0;
+
+ return bufbase;
+}
+
//**************************************************************************
@@ -37,17 +68,17 @@ address_map_entry::address_map_entry(device_t &device, address_map &map, offs_t
m_addrmirror(0),
m_addrmask(0),
m_addrselect(0),
+ m_mask(0),
m_share(nullptr),
m_region(nullptr),
m_rgnoffs(0),
- m_submap_bits(0),
m_memory(nullptr)
{
}
//-------------------------------------------------
-// set_mask - set the mask value
+// mask - set the address mask value
//-------------------------------------------------
address_map_entry &address_map_entry::mask(offs_t _mask)
@@ -60,181 +91,190 @@ address_map_entry &address_map_entry::mask(offs_t _mask)
//-------------------------------------------------
-// set_submap - set up a handler for
-// retrieve a submap from a device
+// umask16 - set a 16-bits unitmask value
+//-------------------------------------------------
+
+address_map_entry &address_map_entry::umask16(u16 _mask)
+{
+ m_mask = (u64(_mask) << 48) | (u64(_mask) << 32) | (_mask << 16) | _mask;
+ return *this;
+}
+
+
+//-------------------------------------------------
+// umask32 - set a 32-bits unitmask value
+//-------------------------------------------------
+
+address_map_entry &address_map_entry::umask32(u32 _mask)
+{
+ m_mask = (u64(_mask) << 32) | _mask;
+ return *this;
+}
+
+
+//-------------------------------------------------
+// umask64 - set a 64-bits unitmask value
//-------------------------------------------------
-address_map_entry &address_map_entry::set_submap(const char *tag, address_map_delegate func, int bits, u64 mask)
+address_map_entry &address_map_entry::umask64(u64 _mask)
{
- if(!bits)
- bits = m_map.m_databits;
+ m_mask = _mask;
+ return *this;
+}
- assert(unitmask_is_appropriate(bits, mask, func.name()));
+//-------------------------------------------------
+// m - set up a handler for
+// retrieve a submap from a device
+//-------------------------------------------------
+
+address_map_entry &address_map_entry::m(const char *tag, address_map_constructor func)
+{
m_read.m_type = AMH_DEVICE_SUBMAP;
m_read.m_tag = tag;
- m_read.m_mask = mask;
m_write.m_type = AMH_DEVICE_SUBMAP;
m_write.m_tag = tag;
- m_write.m_mask = mask;
m_submap_delegate = func;
- m_submap_bits = bits;
return *this;
}
//-------------------------------------------------
-// set_handler - handler setters for
+// r/w/rw - handler setters for
// 8-bit read/write delegates
//-------------------------------------------------
-address_map_entry &address_map_entry::r(read8_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::r(read8_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(8, unitmask, func.name()));
m_read.m_type = AMH_DEVICE_DELEGATE;
m_read.m_bits = 8;
- m_read.m_mask = unitmask;
m_read.m_name = func.name();
m_rproto8 = func;
return *this;
}
-address_map_entry &address_map_entry::w(write8_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::w(write8_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(8, unitmask, func.name()));
m_write.m_type = AMH_DEVICE_DELEGATE;
m_write.m_bits = 8;
- m_write.m_mask = unitmask;
m_write.m_name = func.name();
m_wproto8 = func;
return *this;
}
-address_map_entry &address_map_entry::rw(read8_delegate rfunc, write8_delegate wfunc, u64 unitmask)
+address_map_entry &address_map_entry::rw(read8_delegate rfunc, write8_delegate wfunc)
{
- r(rfunc, unitmask);
- w(wfunc, unitmask);
+ r(rfunc);
+ w(wfunc);
return *this;
}
//-------------------------------------------------
-// set_handler - handler setters for
+// r/w/rw - handler setters for
// 16-bit read/write delegates
//-------------------------------------------------
-address_map_entry &address_map_entry::r(read16_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::r(read16_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(16, unitmask, func.name()));
m_read.m_type = AMH_DEVICE_DELEGATE;
m_read.m_bits = 16;
- m_read.m_mask = unitmask;
m_read.m_name = func.name();
m_rproto16 = func;
return *this;
}
-address_map_entry &address_map_entry::w(write16_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::w(write16_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(16, unitmask, func.name()));
m_write.m_type = AMH_DEVICE_DELEGATE;
m_write.m_bits = 16;
- m_write.m_mask = unitmask;
m_write.m_name = func.name();
m_wproto16 = func;
return *this;
}
-address_map_entry &address_map_entry::rw(read16_delegate rfunc, write16_delegate wfunc, u64 unitmask)
+address_map_entry &address_map_entry::rw(read16_delegate rfunc, write16_delegate wfunc)
{
- r(rfunc, unitmask);
- w(wfunc, unitmask);
+ r(rfunc);
+ w(wfunc);
return *this;
}
//-------------------------------------------------
-// set_handler - handler setters for
+// r/w/rw - handler setters for
// 32-bit read/write delegates
//-------------------------------------------------
-address_map_entry &address_map_entry::r(read32_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::r(read32_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(32, unitmask, func.name()));
m_read.m_type = AMH_DEVICE_DELEGATE;
m_read.m_bits = 32;
- m_read.m_mask = unitmask;
m_read.m_name = func.name();
m_rproto32 = func;
return *this;
}
-address_map_entry &address_map_entry::w(write32_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::w(write32_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(32, unitmask, func.name()));
m_write.m_type = AMH_DEVICE_DELEGATE;
m_write.m_bits = 32;
- m_write.m_mask = unitmask;
m_write.m_name = func.name();
m_wproto32 = func;
return *this;
}
-address_map_entry &address_map_entry::rw(read32_delegate rfunc, write32_delegate wfunc, u64 unitmask)
+address_map_entry &address_map_entry::rw(read32_delegate rfunc, write32_delegate wfunc)
{
- r(rfunc, unitmask);
- w(wfunc, unitmask);
+ r(rfunc);
+ w(wfunc);
return *this;
}
//-------------------------------------------------
-// set_handler - handler setters for
+// r/w/rw - handler setters for
// 64-bit read/write delegates
//-------------------------------------------------
-address_map_entry &address_map_entry::r(read64_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::r(read64_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(64, unitmask, func.name()));
m_read.m_type = AMH_DEVICE_DELEGATE;
m_read.m_bits = 64;
- m_read.m_mask = 0;
m_read.m_name = func.name();
m_rproto64 = func;
return *this;
}
-address_map_entry &address_map_entry::w(write64_delegate func, u64 unitmask)
+address_map_entry &address_map_entry::w(write64_delegate func)
{
assert(!func.isnull());
- assert(unitmask_is_appropriate(64, unitmask, func.name()));
m_write.m_type = AMH_DEVICE_DELEGATE;
m_write.m_bits = 64;
- m_write.m_mask = 0;
m_write.m_name = func.name();
m_wproto64 = func;
return *this;
}
-address_map_entry &address_map_entry::rw(read64_delegate rfunc, write64_delegate wfunc, u64 unitmask)
+address_map_entry &address_map_entry::rw(read64_delegate rfunc, write64_delegate wfunc)
{
- r(rfunc, unitmask);
- w(wfunc, unitmask);
+ r(rfunc);
+ w(wfunc);
return *this;
}
@@ -248,7 +288,6 @@ address_map_entry &address_map_entry::set_handler(setoffset_delegate func)
assert(!func.isnull());
m_setoffsethd.m_type = AMH_DEVICE_DELEGATE;
m_setoffsethd.m_bits = 0;
- m_setoffsethd.m_mask = 0;
m_setoffsethd.m_name = func.name();
m_soproto = func;
return *this;
@@ -261,6 +300,7 @@ address_map_entry &address_map_entry::set_handler(setoffset_delegate func)
bool address_map_entry::unitmask_is_appropriate(u8 width, u64 unitmask, const char *string) const
{
+#if 0
// if no mask, this must match the default width of the map
if (unitmask == 0)
{
@@ -318,6 +358,7 @@ bool address_map_entry::unitmask_is_appropriate(u8 width, u64 unitmask, const ch
return false;
}
#endif
+#endif
return true;
}
@@ -334,7 +375,6 @@ bool address_map_entry::unitmask_is_appropriate(u8 width, u64 unitmask, const ch
address_map::address_map(device_t &device, int spacenum)
: m_spacenum(spacenum),
m_device(&device),
- m_databits(0xff),
m_unmapval(0),
m_globalmask(0)
{
@@ -349,26 +389,22 @@ address_map::address_map(device_t &device, int spacenum)
throw emu_fatalerror("No memory address space configuration found for device '%s', space %d\n", m_device->tag(), spacenum);
// append the map provided by the owner
- if (memintf->address_map(spacenum) != nullptr)
+ if (!memintf->get_addrmap(spacenum).isnull())
{
m_device = device.owner();
- (*memintf->address_map(spacenum))(*this);
+ memintf->get_addrmap(spacenum)(*this);
m_device = &device;
}
else
{
// if the owner didn't provide a map, use the default device map
- if (spaceconfig->m_default_map != nullptr)
- (*spaceconfig->m_default_map)(*this);
- if (!spaceconfig->m_default_map_delegate.isnull())
- spaceconfig->m_default_map_delegate(*this);
+ if (!spaceconfig->m_default_map.isnull())
+ spaceconfig->m_default_map(*this);
}
// construct the internal device map (last so it takes priority)
- if (spaceconfig->m_internal_map != nullptr)
- (*spaceconfig->m_internal_map)(*this);
- if (!spaceconfig->m_internal_map_delegate.isnull())
- spaceconfig->m_internal_map_delegate(*this);
+ if (!spaceconfig->m_internal_map.isnull())
+ spaceconfig->m_internal_map(*this);
}
@@ -380,7 +416,6 @@ address_map::address_map(device_t &device, int spacenum)
address_map::address_map(device_t &device, address_map_entry *entry)
: m_spacenum(AS_PROGRAM),
m_device(&device),
- m_databits(0xff),
m_unmapval(0),
m_globalmask(0)
{
@@ -395,14 +430,13 @@ address_map::address_map(device_t &device, address_map_entry *entry)
// address_map - constructor dynamic device mapping case
//----------------------------------------------------------
-address_map::address_map(const address_space &space, offs_t start, offs_t end, int bits, u64 unitmask, device_t &device, address_map_delegate submap_delegate)
+address_map::address_map(const address_space &space, offs_t start, offs_t end, u64 unitmask, device_t &device, address_map_constructor submap_delegate)
: m_spacenum(space.spacenum()),
m_device(&device),
- m_databits(space.data_width()),
m_unmapval(space.unmap()),
m_globalmask(space.addrmask())
{
- (*this)(start, end).set_submap(DEVICE_SELF, submap_delegate, bits, unitmask);
+ (*this)(start, end).m(DEVICE_SELF, submap_delegate).umask64(unitmask);
}
@@ -416,29 +450,12 @@ address_map::~address_map()
//-------------------------------------------------
-// configure - either configure the space and
-// databits, or verify they match previously-set
-// values
-//-------------------------------------------------
-
-void address_map::configure(int, u8 databits)
-{
- if (m_databits == 0xff)
- m_databits = databits;
- else if (databits != m_databits)
- osd_printf_error("Space %d configured with %d data bits when %d expected\n", m_spacenum, databits, m_databits);
-}
-
-
-//-------------------------------------------------
// append - append an entry to the end of the
// list
//-------------------------------------------------
void address_map::global_mask(offs_t mask)
{
-// if (m_entrylist != nullptr)
-// throw emu_fatalerror("AM_GLOBALMASK must be specified before any entries");
m_globalmask = mask;
}
@@ -457,13 +474,15 @@ address_map_entry &address_map::operator()(offs_t start, offs_t end)
//-------------------------------------------------
-// uplift_submaps - propagate in the device submaps
+// import_submaps - propagate in the device submaps
//-------------------------------------------------
-void address_map::uplift_submaps(running_machine &machine, device_t &owner, endianness_t endian)
+void address_map::import_submaps(running_machine &machine, device_t &owner, int data_width, endianness_t endian)
{
address_map_entry *prev = nullptr;
address_map_entry *entry = m_entrylist.first();
+ u64 base_unitmask = (~u64(0)) >> (64 - data_width);
+
while (entry)
{
if (entry->m_read.m_type == AMH_DEVICE_SUBMAP)
@@ -476,111 +495,94 @@ void address_map::uplift_submaps(running_machine &machine, device_t &owner, endi
// Grab the submap
address_map submap(*mapdevice, entry);
- // Recursively uplift it if needed
- submap.uplift_submaps(machine, *mapdevice, endian);
-
- // Compute the unit repartition characteristics
- int entry_bits = entry->m_submap_bits;
- if (!entry_bits)
- entry_bits = m_databits;
-
- if (submap.m_databits != entry_bits)
- throw emu_fatalerror("AM_DEVICE wants a %d bits large address map and got a %d bits large one instead.\n", entry_bits, submap.m_databits);
-
- int entry_bytes = entry_bits / 8;
- int databytes = m_databits / 8;
-
- offs_t mirror_address_mask = (databytes - 1) & ~(entry_bytes - 1);
-
- u64 entry_mask = (2ULL << (entry_bits-1)) - 1;
-
- int slot_offset[8];
- int slot_count = 0;
- int max_slot_count = m_databits / entry_bits;
- int slot_xor_mask = endian == ENDIANNESS_LITTLE ? 0 : max_slot_count - 1;
-
- u64 global_mask = entry->m_read.m_mask;
- // zero means all
- if (!global_mask)
- global_mask = ~global_mask;
+ // Recursively import if needed
+ submap.import_submaps(machine, *mapdevice, data_width, endian);
- // mask consistency has already been checked in
- // unitmask_is_appropriate, so one bit is enough
- for (int slot=0; slot < max_slot_count; slot++)
- if (global_mask & (1ULL << ((slot ^ slot_xor_mask) * entry_bits)))
- slot_offset[slot_count++] = (slot ^ slot_xor_mask) * entry_bits;
-
- // Merge in all the map contents in order
- while (submap.m_entrylist.count())
+ if(!entry->m_mask || (entry->m_mask & base_unitmask) == base_unitmask)
{
- address_map_entry *subentry = submap.m_entrylist.detach_head();
-
- // Remap start and end
-
- unsigned int start_offset = subentry->m_addrstart / entry_bytes;
- unsigned int start_slot = start_offset % slot_count;
- subentry->m_addrstart = entry->m_addrstart + (start_offset / slot_count) * databytes;
-
- // Drop the entry if it ends up outside the range
- if (subentry->m_addrstart > entry->m_addrend)
+ // Easy case, no unitmask at mapping level - Merge in all the map contents in order
+ while (submap.m_entrylist.count())
{
- global_free(subentry);
- continue;
- }
-
- unsigned int end_offset = subentry->m_addrend / entry_bytes;
- unsigned int end_slot = end_offset % slot_count;
- subentry->m_addrend = entry->m_addrstart + (end_offset / slot_count) * databytes + databytes - 1;
-
- // Clip the entry to the end of the range
- if (subentry->m_addrend > entry->m_addrend || subentry->m_addrend < entry->m_addrstart)
- subentry->m_addrend = entry->m_addrend;
-
- // Detect special unhandled case (range straddling
- // slots, requiring splitting in multiple entries and
- // unimplemented offset-add subunit handler)
- if (subentry->m_addrstart + databytes - 1 != subentry->m_addrend &&
- (start_slot != 0 || end_slot != slot_count - 1))
- throw emu_fatalerror("uplift_submaps unhandled case: range straddling slots.\n");
-
- if (entry->m_addrmask || subentry->m_addrmask)
- throw emu_fatalerror("uplift_submaps unhandled case: address masks.\n");
-
- if (entry->m_addrselect || subentry->m_addrselect)
- throw emu_fatalerror("uplift_submaps unhandled case: select masks.\n");
-
- if (subentry->m_addrmirror & mirror_address_mask)
- throw emu_fatalerror("uplift_submaps unhandled case: address mirror bit within subentry.\n");
+ address_map_entry *subentry = submap.m_entrylist.detach_head();
+ subentry->m_addrstart += entry->m_addrstart;
+ subentry->m_addrend += entry->m_addrstart;
+ subentry->m_addrmirror |= entry->m_addrmirror;
+ subentry->m_addrmask |= entry->m_addrmask;
+ subentry->m_addrselect |= entry->m_addrselect;
+
+ if (subentry->m_addrstart > entry->m_addrend)
+ {
+ delete subentry;
+ continue;
+ }
- subentry->m_addrmirror |= entry->m_addrmirror;
+ if (subentry->m_addrend > entry->m_addrend)
+ subentry->m_addrend = entry->m_addrend;
- // Twiddle the unitmask on the data accessors that need it
- for (int data_entry = 0; data_entry < 3; data_entry++)
+ // Insert the entry in the map
+ m_entrylist.insert_after(*subentry, prev);
+ prev = subentry;
+ }
+ }
+ else
+ {
+ // There is a unitmask, calculate its ratio
+ int ratio = 0;
+ for (int i=0; i != data_width; i++)
+ if ((entry->m_mask >> i) & 1)
+ ratio ++;
+ ratio = data_width / ratio;
+
+ // Then merge the contents taking the ratio into account
+ while (submap.m_entrylist.count())
{
- map_handler_data &mdata = (data_entry==0)? subentry->m_read : ((data_entry==1)? subentry->m_write : subentry->m_setoffsethd);
+ address_map_entry *subentry = submap.m_entrylist.detach_head();
- if (mdata.m_type == AMH_NONE)
- continue;
-
- if (mdata.m_type != AMH_DEVICE_DELEGATE && mdata.m_type != AMH_NOP)
- throw emu_fatalerror("Only normal read/write methods are accepted in device submaps.\n");
+ if (subentry->m_mask && (subentry->m_mask != 0xffffffffffffffffU))
+ {
+ // Check if the mask can actually fit
+ int subentry_ratio = 0;
+ for (int i=0; i != data_width; i++)
+ if ((subentry->m_mask >> i) & 1)
+ subentry_ratio ++;
+ subentry_ratio = data_width / subentry_ratio;
+ if (ratio * subentry_ratio > data_width / 8)
+ fatalerror("import_submap: In range %x-%x mask %x mirror %x select %x of device %s, the import unitmask of %s combined with an entry unitmask of %s does not fit in %d bits.\n", subentry->m_addrstart, subentry->m_addrend, subentry->m_addrmask, subentry->m_addrmirror, subentry->m_addrselect, entry->m_read.m_tag, core_i64_hex_format(entry->m_mask, data_width/4), core_i64_hex_format(subentry->m_mask, data_width/4), data_width);
+
+ // Regenerate the unitmask
+ u64 newmask = 0;
+ int bit_in_subentry = 0;
+ for (int i=0; i != data_width; i++)
+ if ((entry->m_mask >> i) & 1)
+ {
+ if ((subentry->m_mask >> bit_in_subentry) & 1)
+ newmask |= u64(1) << i;
+ bit_in_subentry ++;
+ }
+ subentry->m_mask = newmask;
+ }
+ else
+ subentry->m_mask = entry->m_mask;
- if (mdata.m_bits == 0 && entry_bits != m_databits)
- mdata.m_bits = entry_bits;
+ subentry->m_addrstart = subentry->m_addrstart * ratio + entry->m_addrstart;
+ subentry->m_addrend = (subentry->m_addrend + 1) * ratio - 1 + entry->m_addrstart;
+ subentry->m_addrmirror = (subentry->m_addrmirror / ratio) | entry->m_addrmirror;
+ subentry->m_addrmask = (subentry->m_addrmask / ratio) | entry->m_addrmask;
+ subentry->m_addrselect = (subentry->m_addrselect / ratio) | entry->m_addrselect;
- u64 mask = 0;
- if (mdata.m_bits != m_databits)
+ if (subentry->m_addrstart > entry->m_addrend)
{
- u64 unitmask = mdata.m_mask ? mdata.m_mask : entry_mask;
- for (int slot = start_slot; slot <= end_slot; slot++)
- mask |= unitmask << slot_offset[slot];
+ delete subentry;
+ continue;
}
- mdata.m_mask = mask;
- }
- // Insert the entry in the map
- m_entrylist.insert_after(*subentry, prev);
- prev = subentry;
+ if (subentry->m_addrend > entry->m_addrend)
+ subentry->m_addrend = entry->m_addrend;
+
+ // Insert the entry in the map
+ m_entrylist.insert_after(*subentry, prev);
+ prev = subentry;
+ }
}
address_map_entry *to_delete = entry;
@@ -605,8 +607,7 @@ void address_map::map_validity_check(validity_checker &valid, int spacenum) cons
{
// it's safe to assume here that the device has a memory interface and a config for this space
const address_space_config &spaceconfig = *m_device->memory().space_config(spacenum);
- int datawidth = spaceconfig.m_data_width;
- int alignunit = spaceconfig.alignment();
+ int default_alignunit = spaceconfig.alignment();
bool detected_overlap = DETECT_OVERLAPPING_MEMORY ? false : true;
@@ -617,8 +618,6 @@ void address_map::map_validity_check(validity_checker &valid, int spacenum) cons
// validate the global map parameters
if (m_spacenum != spacenum)
osd_printf_error("Space %d has address space %d handlers!\n", spacenum, m_spacenum);
- if (m_databits != datawidth)
- osd_printf_error("Wrong memory handlers provided for %s space! (width = %d, memory = %08x)\n", spaceconfig.m_name, datawidth, m_databits);
offs_t globalmask = 0xffffffffUL >> (32 - spaceconfig.m_addr_width);
if (m_globalmask != 0)
@@ -656,8 +655,22 @@ void address_map::map_validity_check(validity_checker &valid, int spacenum) cons
osd_printf_error("In %s memory range %x-%x, end address is outside of the global address mask %x\n", spaceconfig.m_name, entry.m_addrstart, entry.m_addrend, globalmask);
// look for misaligned entries
- if ((entry.m_addrstart & (alignunit - 1)) != 0 || (entry.m_addrend & (alignunit - 1)) != (alignunit - 1))
- osd_printf_error("Wrong %s memory read handler start = %08x, end = %08x ALIGN = %d\n", spaceconfig.m_name, entry.m_addrstart, entry.m_addrend, alignunit);
+ if (entry.m_read.m_type != AMH_NONE)
+ {
+ int alignunit = spaceconfig.byte2addr(entry.m_read.m_bits / 8);
+ if (!alignunit)
+ alignunit = default_alignunit;
+ if ((entry.m_addrstart & (alignunit - 1)) != 0 || (entry.m_addrend & (alignunit - 1)) != (alignunit - 1))
+ osd_printf_error("Wrong %s memory read handler start = %08x, end = %08x ALIGN = %d\n", spaceconfig.m_name, entry.m_addrstart, entry.m_addrend, alignunit);
+ }
+ if (entry.m_write.m_type != AMH_NONE)
+ {
+ int alignunit = spaceconfig.byte2addr(entry.m_write.m_bits / 8);
+ if (!alignunit)
+ alignunit = default_alignunit;
+ if ((entry.m_addrstart & (alignunit - 1)) != 0 || (entry.m_addrend & (alignunit - 1)) != (alignunit - 1))
+ osd_printf_error("Wrong %s memory write handler start = %08x, end = %08x ALIGN = %d\n", spaceconfig.m_name, entry.m_addrstart, entry.m_addrend, alignunit);
+ }
// verify mask/mirror/select
offs_t set_bits = entry.m_addrstart | entry.m_addrend;
@@ -736,7 +749,7 @@ void address_map::map_validity_check(validity_checker &valid, int spacenum) cons
osd_printf_error("%s space memory map entry reads from nonexistent device '%s'\n", spaceconfig.m_name,
devtag != nullptr ? devtag : "<unspecified>");
#ifndef MAME_DEBUG // assert will catch this earlier
- (void)entry.unitmask_is_appropriate(entry.m_read.m_bits, entry.m_read.m_mask, entry.m_read.m_name);
+ (void)entry.unitmask_is_appropriate(entry.m_read.m_bits, entry.m_mask, entry.m_read.m_name);
#endif
}
if (entry.m_write.m_type == AMH_DEVICE_DELEGATE)
@@ -754,7 +767,7 @@ void address_map::map_validity_check(validity_checker &valid, int spacenum) cons
osd_printf_error("%s space memory map entry writes to nonexistent device '%s'\n", spaceconfig.m_name,
devtag != nullptr ? devtag : "<unspecified>");
#ifndef MAME_DEBUG // assert will catch this earlier
- (void)entry.unitmask_is_appropriate(entry.m_write.m_bits, entry.m_write.m_mask, entry.m_write.m_name);
+ (void)entry.unitmask_is_appropriate(entry.m_write.m_bits, entry.m_mask, entry.m_write.m_name);
#endif
}
if (entry.m_setoffsethd.m_type == AMH_DEVICE_DELEGATE)
diff --git a/src/emu/addrmap.h b/src/emu/addrmap.h
index cb2906ad15f..da812dfc536 100644
--- a/src/emu/addrmap.h
+++ b/src/emu/addrmap.h
@@ -50,13 +50,11 @@ public:
map_handler_data()
: m_type(AMH_NONE),
m_bits(0),
- m_mask(0),
m_name(nullptr),
m_tag(nullptr) { }
map_handler_type m_type; // type of the handler
u8 m_bits; // width of the handler in bits, or 0 for default
- u64 m_mask; // mask for which lanes apply
const char * m_name; // name of the handler
const char * m_tag; // tag for I/O ports and banks
};
@@ -94,9 +92,14 @@ public:
address_map_entry &readnop() { m_read.m_type = AMH_NOP; return *this; }
address_map_entry &writenop() { m_write.m_type = AMH_NOP; return *this; }
- // mask setting
+ // address mask setting
address_map_entry &mask(offs_t _mask);
+ // unit mask setting
+ address_map_entry &umask16(u16 _mask);
+ address_map_entry &umask32(u32 _mask);
+ address_map_entry &umask64(u64 _mask);
+
// I/O port configuration
address_map_entry &read_port(const char *tag) { m_read.m_type = AMH_PORT; m_read.m_tag = tag; return *this; }
address_map_entry &write_port(const char *tag) { m_write.m_type = AMH_PORT; m_write.m_tag = tag; return *this; }
@@ -118,71 +121,188 @@ public:
address_map_entry &set_write_type(map_handler_type _type) { m_write.m_type = _type; return *this; }
// submap referencing
- address_map_entry &set_submap(const char *tag, address_map_delegate func, int bits, u64 mask);
+ address_map_entry &m(const char *tag, address_map_constructor func);
// device tag -> delegate converter
- template<typename _device> address_map_entry &r(const char *tag, uint8_t (_device::*read)(address_space &, offs_t, uint8_t), const char *read_name, uint64_t mask = 0) {
- return r(read8_delegate(read, read_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devr> address_map_entry &r(const char *tag, u8 (_devr::*read)(address_space &, offs_t, u8), const char *read_name) {
+ return r(read8_delegate(read, read_name, tag, (_devr *)nullptr));
+ }
+
+ template<typename _devr> address_map_entry &r(const char *tag, u16 (_devr::*read)(address_space &, offs_t, u16), const char *read_name) {
+ return r(read16_delegate(read, read_name, tag, (_devr *)nullptr));
+ }
+
+ template<typename _devr> address_map_entry &r(const char *tag, u32 (_devr::*read)(address_space &, offs_t, u32), const char *read_name) {
+ return r(read32_delegate(read, read_name, tag, (_devr *)nullptr));
+ }
+
+ template<typename _devr> address_map_entry &r(const char *tag, u64 (_devr::*read)(address_space &, offs_t, u64), const char *read_name) {
+ return r(read64_delegate(read, read_name, tag, (_devr *)nullptr));
+ }
+
+ template<typename _devw> address_map_entry &w(const char *tag, void (_devw::*write)(address_space &, offs_t, u8, u8), const char *write_name) {
+ return w(write8_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+ template<typename _devw> address_map_entry &w(const char *tag, void (_devw::*write)(address_space &, offs_t, u16, u16), const char *write_name) {
+ return w(write16_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+ template<typename _devw> address_map_entry &w(const char *tag, void (_devw::*write)(address_space &, offs_t, u32, u32), const char *write_name) {
+ return w(write32_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+ template<typename _devw> address_map_entry &w(const char *tag, void (_devw::*write)(address_space &, offs_t, u64, u64), const char *write_name) {
+ return w(write64_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+ template<typename _devr, typename _devw> address_map_entry &rw(const char *tag, u8 (_devr::*read)(address_space &, offs_t, u8), const char *read_name, void (_devw::*write)(address_space &, offs_t, u8, u8), const char *write_name) {
+ return rw(read8_delegate(read, read_name, tag, (_devr *)nullptr),
+ write8_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+ template<typename _devr, typename _devw> address_map_entry &rw(const char *tag, u16 (_devr::*read)(address_space &, offs_t, u16), const char *read_name, void (_devw::*write)(address_space &, offs_t, u16, u16), const char *write_name) {
+ return rw(read16_delegate(read, read_name, tag, (_devr *)nullptr),
+ write16_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+ template<typename _devr, typename _devw> address_map_entry &rw(const char *tag, u32 (_devr::*read)(address_space &, offs_t, u32), const char *read_name, void (_devw::*write)(address_space &, offs_t, u32, u32), const char *write_name) {
+ return rw(read32_delegate(read, read_name, tag, (_devr *)nullptr),
+ write32_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+ template<typename _devr, typename _devw> address_map_entry &rw(const char *tag, u64 (_devr::*read)(address_space &, offs_t, u64), const char *read_name, void (_devw::*write)(address_space &, offs_t, u64, u64), const char *write_name) {
+ return rw(read64_delegate(read, read_name, tag, (_devr *)nullptr),
+ write64_delegate(write, write_name, tag, (_devw *)nullptr));
+ }
+
+
+ // device pointer -> delegate converter
+ template<typename _devc, typename _devr> std::enable_if_t<std::is_base_of<_devr, _devc>::value, address_map_entry &> r(_devc *device, u8 (_devr::*read)(address_space &, offs_t, u8), const char *read_name) {
+ return r(read8_delegate(read, read_name, device->tag(), device));
+ }
+
+ template<typename _devc, typename _devr> std::enable_if_t<std::is_base_of<_devr, _devc>::value, address_map_entry &> r(_devc *device, u16 (_devr::*read)(address_space &, offs_t, u16), const char *read_name) {
+ return r(read16_delegate(read, read_name, device->tag(), device));
+ }
+
+ template<typename _devc, typename _devr> std::enable_if_t<std::is_base_of<_devr, _devc>::value, address_map_entry &> r(_devc *device, u32 (_devr::*read)(address_space &, offs_t, u32), const char *read_name) {
+ return r(read32_delegate(read, read_name, device->tag(), device));
+ }
+
+ template<typename _devc, typename _devr> std::enable_if_t<std::is_base_of<_devr, _devc>::value, address_map_entry &> r(_devc *device, u64 (_devr::*read)(address_space &, offs_t, u64), const char *read_name) {
+ return r(read64_delegate(read, read_name, device->tag(), device));
+ }
+
+ template<typename _devc, typename _devw> std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &> w(_devc *device, void (_devw::*write)(address_space &, offs_t, u8, u8), const char *write_name) {
+ return w(write8_delegate(write, write_name, device->tag(), device));
+ }
+
+ template<typename _devc, typename _devw> std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &> w(_devc *device, void (_devw::*write)(address_space &, offs_t, u16, u16), const char *write_name) {
+ return w(write16_delegate(write, write_name, device->tag(), device));
+ }
+
+ template<typename _devc, typename _devw> std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &> w(_devc *device, void (_devw::*write)(address_space &, offs_t, u32, u32), const char *write_name) {
+ return w(write32_delegate(write, write_name, device->tag(), device));
}
- template<typename _device> address_map_entry &r(const char *tag, uint16_t (_device::*read)(address_space &, offs_t, uint16_t), const char *read_name, uint64_t mask = 0) {
- return r(read16_delegate(read, read_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename _devw> std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &> w(_devc *device, void (_devw::*write)(address_space &, offs_t, u64, u64), const char *write_name) {
+ return w(write64_delegate(write, write_name, device->tag(), device));
}
- template<typename _device> address_map_entry &r(const char *tag, uint32_t (_device::*read)(address_space &, offs_t, uint32_t), const char *read_name, uint64_t mask = 0) {
- return r(read32_delegate(read, read_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename _devr, typename _devw> std::enable_if_t<std::is_base_of<_devr, _devc>::value, std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &>> rw(_devc *device, u8 (_devr::*read)(address_space &, offs_t, u8), const char *read_name, void (_devw::*write)(address_space &, offs_t, u8, u8), const char *write_name) {
+ return rw(read8_delegate(read, read_name, device->tag(), device),
+ write8_delegate(write, write_name, device->tag(), device));
}
- template<typename _device> address_map_entry &r(const char *tag, uint64_t (_device::*read)(address_space &, offs_t, uint64_t), const char *read_name, uint64_t mask = 0) {
- return r(read64_delegate(read, read_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename _devr, typename _devw> std::enable_if_t<std::is_base_of<_devr, _devc>::value, std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &>> rw(_devc *device, u16 (_devr::*read)(address_space &, offs_t, u16), const char *read_name, void (_devw::*write)(address_space &, offs_t, u16, u16), const char *write_name) {
+ return rw(read16_delegate(read, read_name, device->tag(), device),
+ write16_delegate(write, write_name, device->tag(), device));
}
- template<typename _device> address_map_entry &w(const char *tag, void (_device::*write)(address_space &, offs_t, uint8_t, uint8_t), const char *write_name, uint64_t mask = 0) {
- return w(write8_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename _devr, typename _devw> std::enable_if_t<std::is_base_of<_devr, _devc>::value, std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &>> rw(_devc *device, u32 (_devr::*read)(address_space &, offs_t, u32), const char *read_name, void (_devw::*write)(address_space &, offs_t, u32, u32), const char *write_name) {
+ return rw(read32_delegate(read, read_name, device->tag(), device),
+ write32_delegate(write, write_name, device->tag(), device));
}
- template<typename _device> address_map_entry &w(const char *tag, void (_device::*write)(address_space &, offs_t, uint16_t, uint16_t), const char *write_name, uint64_t mask = 0) {
- return w(write16_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename _devr, typename _devw> std::enable_if_t<std::is_base_of<_devr, _devc>::value, std::enable_if_t<std::is_base_of<_devw, _devc>::value, address_map_entry &>> rw(_devc *device, u64 (_devr::*read)(address_space &, offs_t, u64), const char *read_name, void (_devw::*write)(address_space &, offs_t, u64, u64), const char *write_name) {
+ return rw(read64_delegate(read, read_name, device->tag(), device),
+ write64_delegate(write, write_name, device->tag(), device));
}
- template<typename _device> address_map_entry &w(const char *tag, void (_device::*write)(address_space &, offs_t, uint32_t, uint32_t), const char *write_name, uint64_t mask = 0) {
- return w(write32_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ // device pointer unwrapping
+ template<typename _devc, typename R> address_map_entry &r(required_device<_devc> devptr, R read, const char *read_name) {
+ return r(devptr.target(), read, read_name);
}
- template<typename _device> address_map_entry &w(const char *tag, void (_device::*write)(address_space &, offs_t, uint64_t, uint64_t), const char *write_name, uint64_t mask = 0) {
- return w(write64_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename R> address_map_entry &r(optional_device<_devc> devptr, R read, const char *read_name) {
+ return r(devptr.target(), read, read_name);
}
- template<typename _device> address_map_entry &rw(const char *tag, uint8_t (_device::*read)(address_space &, offs_t, uint8_t), const char *read_name, void (_device::*write)(address_space &, offs_t, uint8_t, uint8_t), const char *write_name, uint64_t mask = 0) {
- return rw(read8_delegate(read, read_name, tag, (_device *)nullptr),
- write8_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename W> address_map_entry &w(required_device<_devc> devptr, W write, const char *write_name) {
+ return w(devptr.target(), write, write_name);
}
- template<typename _device> address_map_entry &rw(const char *tag, uint16_t (_device::*read)(address_space &, offs_t, uint16_t), const char *read_name, void (_device::*write)(address_space &, offs_t, uint16_t, uint16_t), const char *write_name, uint64_t mask = 0) {
- return rw(read16_delegate(read, read_name, tag, (_device *)nullptr),
- write16_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename W> address_map_entry &w(optional_device<_devc> devptr, W write, const char *write_name) {
+ return w(devptr.target(), write, write_name);
}
- template<typename _device> address_map_entry &rw(const char *tag, uint32_t (_device::*read)(address_space &, offs_t, uint32_t), const char *read_name, void (_device::*write)(address_space &, offs_t, uint32_t, uint32_t), const char *write_name, uint64_t mask = 0) {
- return rw(read32_delegate(read, read_name, tag, (_device *)nullptr),
- write32_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename R, typename W> address_map_entry &rw(required_device<_devc> devptr, R read, const char *read_name, W write, const char *write_name) {
+ return rw(devptr.target(), read, read_name, write, write_name);
}
- template<typename _device> address_map_entry &rw(const char *tag, uint64_t (_device::*read)(address_space &, offs_t, uint64_t), const char *read_name, void (_device::*write)(address_space &, offs_t, uint64_t, uint64_t), const char *write_name, uint64_t mask = 0) {
- return rw(read64_delegate(read, read_name, tag, (_device *)nullptr),
- write64_delegate(write, write_name, tag, (_device *)nullptr),
- mask);
+ template<typename _devc, typename R, typename W> address_map_entry &rw(optional_device<_devc> devptr, R read, const char *read_name, W write, const char *write_name) {
+ return rw(devptr.target(), read, read_name, write, write_name);
+ }
+
+
+ // lambda -> delegate converter
+ template<typename _lr> address_map_entry &lr8(const char *name, _lr &&read) {
+ return r(read8_delegate(read, name));
+ }
+
+ template<typename _lr> address_map_entry &lr16(const char *name, _lr &&read) {
+ return r(read16_delegate(read, name));
+ }
+
+ template<typename _lr> address_map_entry &lr32(const char *name, _lr &&read) {
+ return r(read32_delegate(read, name));
+ }
+
+ template<typename _lr> address_map_entry &lr64(const char *name, _lr &&read) {
+ return r(read64_delegate(read, name));
+ }
+
+ template<typename _lw> address_map_entry &lw8(const char *name, _lw &&write) {
+ return w(write8_delegate(write, name));
+ }
+
+ template<typename _lw> address_map_entry &lw16(const char *name, _lw &&write) {
+ return w(write16_delegate(write, name));
+ }
+
+ template<typename _lw> address_map_entry &lw32(const char *name, _lw &&write) {
+ return w(write32_delegate(write, name));
+ }
+
+ template<typename _lw> address_map_entry &lw64(const char *name, _lw &&write) {
+ return w(write64_delegate(write, name));
+ }
+
+ template<typename _lr, typename _lw> address_map_entry &lrw8(const char *name, _lr &&read, _lw &&write) {
+ return rw(read8_delegate(read, name), write8_delegate(write, name));
+ }
+
+ template<typename _lr, typename _lw> address_map_entry &lrw16(const char *name, _lr &&read, _lw &&write) {
+ return rw(read16_delegate(read, name), write16_delegate(write, name));
+ }
+
+ template<typename _lr, typename _lw> address_map_entry &lrw32(const char *name, _lr &&read, _lw &&write) {
+ return rw(read32_delegate(read, name), write32_delegate(write, name));
+ }
+
+ template<typename _lr, typename _lw> address_map_entry &lrw64(const char *name, _lr &&read, _lw &&write) {
+ return rw(read64_delegate(read, name), write64_delegate(write, name));
}
// public state
@@ -196,6 +316,7 @@ public:
offs_t m_addrmirror; // mirror bits
offs_t m_addrmask; // mask bits
offs_t m_addrselect; // select bits
+ u64 m_mask; // mask for which lanes apply
map_handler_data m_read; // data for read handler
map_handler_data m_write; // data for write handler
map_handler_data m_setoffsethd; // data for setoffset handler
@@ -214,31 +335,30 @@ public:
write64_delegate m_wproto64; // 64-bit write proto-delegate
setoffset_delegate m_soproto; // set offset proto-delegate
- address_map_delegate m_submap_delegate;
- int m_submap_bits;
+ address_map_constructor m_submap_delegate;
// information used during processing
void * m_memory; // pointer to memory backing this entry
// handler setters for 8-bit delegates
- address_map_entry &r(read8_delegate func, u64 mask = 0);
- address_map_entry &w(write8_delegate func, u64 mask = 0);
- address_map_entry &rw(read8_delegate rfunc, write8_delegate wfunc, u64 mask = 0);
+ address_map_entry &r(read8_delegate func);
+ address_map_entry &w(write8_delegate func);
+ address_map_entry &rw(read8_delegate rfunc, write8_delegate wfunc);
// handler setters for 16-bit delegates
- address_map_entry &r(read16_delegate func, u64 mask = 0);
- address_map_entry &w(write16_delegate func, u64 mask = 0);
- address_map_entry &rw(read16_delegate rfunc, write16_delegate wfunc, u64 mask = 0);
+ address_map_entry &r(read16_delegate func);
+ address_map_entry &w(write16_delegate func);
+ address_map_entry &rw(read16_delegate rfunc, write16_delegate wfunc);
// handler setters for 32-bit delegates
- address_map_entry &r(read32_delegate func, u64 mask = 0);
- address_map_entry &w(write32_delegate func, u64 mask = 0);
- address_map_entry &rw(read32_delegate rfunc, write32_delegate wfunc, u64 mask = 0);
+ address_map_entry &r(read32_delegate func);
+ address_map_entry &w(write32_delegate func);
+ address_map_entry &rw(read32_delegate rfunc, write32_delegate wfunc);
// handler setters for 64-bit delegates
- address_map_entry &r(read64_delegate func, u64 mask = 0);
- address_map_entry &w(write64_delegate func, u64 mask = 0);
- address_map_entry &rw(read64_delegate rfunc, write64_delegate wfunc, u64 mask = 0);
+ address_map_entry &r(read64_delegate func);
+ address_map_entry &w(write64_delegate func);
+ address_map_entry &rw(read64_delegate rfunc, write64_delegate wfunc);
private:
// helper functions
@@ -254,12 +374,9 @@ public:
// construction/destruction
address_map(device_t &device, int spacenum);
address_map(device_t &device, address_map_entry *entry);
- address_map(const address_space &space, offs_t start, offs_t end, int bits, u64 unitmask, device_t &device, address_map_delegate submap_delegate);
+ address_map(const address_space &space, offs_t start, offs_t end, u64 unitmask, device_t &device, address_map_constructor submap_delegate);
~address_map();
- // configuration
- void configure(int _spacenum, u8 _databits);
-
// setters
void global_mask(offs_t mask);
void unmap_value_low() { m_unmapval = 0; }
@@ -270,14 +387,13 @@ public:
address_map_entry &operator()(offs_t start, offs_t end);
// public data
- int m_spacenum; // space number of the map
+ int m_spacenum; // space number of the map
device_t * m_device; // associated device
- u8 m_databits; // data bits represented by the map
u8 m_unmapval; // unmapped memory value
offs_t m_globalmask; // global mask
simple_list<address_map_entry> m_entrylist; // list of entries
- void uplift_submaps(running_machine &machine, device_t &owner, endianness_t endian);
+ void import_submaps(running_machine &machine, device_t &owner, int data_width, endianness_t endian);
void map_validity_check(validity_checker &valid, int spacenum) const;
};
@@ -286,40 +402,8 @@ public:
// ADDRESS MAP MACROS
//**************************************************************************
-// so that "0" can be used for unneeded address maps
-#define construct_address_map_0 nullptr
-
-// start/end tags for the address map
-#define ADDRESS_MAP_NAME(_name) construct_address_map_##_name
-
-#define ADDRESS_MAP_START(_name, _space, _bits, _class) \
-void ADDRESS_MAP_NAME(_name)(address_map &map) \
-{ \
- typedef read##_bits##_delegate read_delegate ATTR_UNUSED; \
- typedef write##_bits##_delegate write_delegate ATTR_UNUSED; \
- typedef u##_bits native_type ATTR_UNUSED; \
- map.configure(_space, _bits); \
- typedef _class drivdata_class ATTR_UNUSED
-#define DEVICE_ADDRESS_MAP_START(_name, _bits, _class) \
-void _class :: _name(::address_map &map) \
-{ \
- typedef read##_bits##_delegate read_delegate ATTR_UNUSED; \
- typedef write##_bits##_delegate write_delegate ATTR_UNUSED; \
- typedef u##_bits native_type ATTR_UNUSED; \
- map.configure(AS_PROGRAM, _bits); \
- typedef _class drivdata_class ATTR_UNUSED
-#define ADDRESS_MAP_END \
-;}
-
-// use this to declare external references to an address map
-#define ADDRESS_MAP_EXTERN(_name, _bits) \
- extern void ADDRESS_MAP_NAME(_name)(address_map &map)
-
-// use this to declare an address map as a member of a modern device class
-// need to qualify with :: to avoid a collision with descendants of device_memory_interface
-#define DECLARE_ADDRESS_MAP(_name, _bits) \
- void _name(::address_map &map)
-
+#define ADDRESS_MAP_START(_name) void _name(address_map &map) {
+#define ADDRESS_MAP_END ;}
// global controls
#define ADDRESS_MAP_GLOBAL_MASK(_mask) \
@@ -331,9 +415,6 @@ void _class :: _name(::address_map &map) \
// importing data from other address maps
#define AM_IMPORT_FROM(_name) \
- ;ADDRESS_MAP_NAME(_name)(map)
-// importing data from inherited address maps
-#define AM_INHERIT_FROM(_name) \
;_name(map)
// address ranges
@@ -348,98 +429,68 @@ void _class :: _name(::address_map &map) \
// driver data reads
#define AM_READ(_handler) \
- .r(read_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr))
+ .r(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler)
#define AM_READ8(_handler, _unitmask) \
- .r(read8_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .r(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler).umask64(_unitmask)
#define AM_READ16(_handler, _unitmask) \
- .r(read16_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .r(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler).umask64(_unitmask)
#define AM_READ32(_handler, _unitmask) \
- .r(read32_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .r(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler).umask64(_unitmask)
// driver data writes
#define AM_WRITE(_handler) \
- .w(write_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr))
+ .w(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler)
#define AM_WRITE8(_handler, _unitmask) \
- .w(write8_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .w(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler).umask64(_unitmask)
#define AM_WRITE16(_handler, _unitmask) \
- .w(write16_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .w(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler).umask64(_unitmask)
#define AM_WRITE32(_handler, _unitmask) \
- .w(write32_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .w(this, &std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler).umask64(_unitmask)
// driver data reads/writes
#define AM_READWRITE(_rhandler, _whandler) \
- .rw(read_delegate(&drivdata_class::_rhandler, "driver_data::" #_rhandler, DEVICE_SELF, (drivdata_class *)nullptr), write_delegate(&drivdata_class::_whandler, "driver_data::" #_whandler, DEVICE_SELF, (drivdata_class *)nullptr))
+ .rw(this, &std::remove_pointer_t<decltype(this)>::_rhandler, "driver_data::" #_rhandler, &std::remove_pointer_t<decltype(this)>::_whandler, "driver_data::" #_whandler)
#define AM_READWRITE8(_rhandler, _whandler, _unitmask) \
- .rw(read8_delegate(&drivdata_class::_rhandler, "driver_data::" #_rhandler, DEVICE_SELF, (drivdata_class *)nullptr), write8_delegate(&drivdata_class::_whandler, "driver_data::" #_whandler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .rw(this, &std::remove_pointer_t<decltype(this)>::_rhandler, "driver_data::" #_rhandler, &std::remove_pointer_t<decltype(this)>::_whandler, "driver_data::" #_whandler).umask64(_unitmask)
#define AM_READWRITE16(_rhandler, _whandler, _unitmask) \
- .rw(read16_delegate(&drivdata_class::_rhandler, "driver_data::" #_rhandler, DEVICE_SELF, (drivdata_class *)nullptr), write16_delegate(&drivdata_class::_whandler, "driver_data::" #_whandler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .rw(this, &std::remove_pointer_t<decltype(this)>::_rhandler, "driver_data::" #_rhandler, &std::remove_pointer_t<decltype(this)>::_whandler, "driver_data::" #_whandler).umask64(_unitmask)
#define AM_READWRITE32(_rhandler, _whandler, _unitmask) \
- .rw(read32_delegate(&drivdata_class::_rhandler, "driver_data::" #_rhandler, DEVICE_SELF, (drivdata_class *)nullptr), write32_delegate(&drivdata_class::_whandler, "driver_data::" #_whandler, DEVICE_SELF, (drivdata_class *)nullptr), _unitmask)
+ .rw(this, &std::remove_pointer_t<decltype(this)>::_rhandler, "driver_data::" #_rhandler, &std::remove_pointer_t<decltype(this)>::_whandler, "driver_data::" #_whandler).umask64(_unitmask)
// driver set offset. Upcast to base class because there are no data width variants,
// and the compiler complains if we don't do it explicitly
#define AM_SETOFFSET(_handler) \
- .set_handler(setoffset_delegate(&drivdata_class::_handler, "driver_data::" #_handler, DEVICE_SELF, (drivdata_class *)nullptr))
+ .set_handler(setoffset_delegate(&std::remove_pointer_t<decltype(this)>::_handler, "driver_data::" #_handler, this))
// device reads
#define AM_DEVREAD(_tag, _class, _handler) \
.r(_tag, &_class::_handler, #_class "::" #_handler)
#define AM_DEVREAD8(_tag, _class, _handler, _unitmask) \
- .r(_tag, &_class::_handler, #_class "::" #_handler, _unitmask)
+ .r(_tag, &_class::_handler, #_class "::" #_handler).umask64(_unitmask)
#define AM_DEVREAD16(_tag, _class, _handler, _unitmask) \
- .r(_tag, &_class::_handler, #_class "::" #_handler, _unitmask)
+ .r(_tag, &_class::_handler, #_class "::" #_handler).umask64(_unitmask)
#define AM_DEVREAD32(_tag, _class, _handler, _unitmask) \
- .r(_tag, &_class::_handler, #_class "::" #_handler, _unitmask)
+ .r(_tag, &_class::_handler, #_class "::" #_handler).umask64(_unitmask)
// device writes
#define AM_DEVWRITE(_tag, _class, _handler) \
.w(_tag, &_class::_handler, #_class "::" #_handler)
#define AM_DEVWRITE8(_tag, _class, _handler, _unitmask) \
- .w(_tag, &_class::_handler, #_class "::" #_handler, _unitmask)
+ .w(_tag, &_class::_handler, #_class "::" #_handler).umask64(_unitmask)
#define AM_DEVWRITE16(_tag, _class, _handler, _unitmask) \
- .w(_tag, &_class::_handler, #_class "::" #_handler, _unitmask)
+ .w(_tag, &_class::_handler, #_class "::" #_handler).umask64(_unitmask)
#define AM_DEVWRITE32(_tag, _class, _handler, _unitmask) \
- .w(_tag, &_class::_handler, #_class "::" #_handler, _unitmask)
+ .w(_tag, &_class::_handler, #_class "::" #_handler).umask64(_unitmask)
// device reads/writes
#define AM_DEVREADWRITE(_tag, _class, _rhandler, _whandler) \
.rw(_tag, &_class::_rhandler, #_class "::" #_rhandler, &_class::_whandler, #_class "::" #_whandler)
#define AM_DEVREADWRITE8(_tag, _class, _rhandler, _whandler, _unitmask) \
- .rw(_tag, &_class::_rhandler, #_class "::" #_rhandler, &_class::_whandler, #_class "::" #_whandler, _unitmask)
+ .rw(_tag, &_class::_rhandler, #_class "::" #_rhandler, &_class::_whandler, #_class "::" #_whandler).umask64(_unitmask)
#define AM_DEVREADWRITE16(_tag, _class, _rhandler, _whandler, _unitmask) \
- .rw(_tag, &_class::_rhandler, #_class "::" #_rhandler, &_class::_whandler, #_class "::" #_whandler, _unitmask)
+ .rw(_tag, &_class::_rhandler, #_class "::" #_rhandler, &_class::_whandler, #_class "::" #_whandler).umask64(_unitmask)
#define AM_DEVREADWRITE32(_tag, _class, _rhandler, _whandler, _unitmask) \
- .rw(_tag, &_class::_rhandler, #_class "::" #_rhandler, &_class::_whandler, #_class "::" #_whandler, _unitmask)
-
-// device reads with modified offset
-#define AM_DEVREAD_MOD(_tag, _class, _handler, _modfn) \
- .r(read_delegate([](_class &device, address_space &space, offs_t offset, native_type mem_mask)->native_type { return device._handler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr))
-#define AM_DEVREAD8_MOD(_tag, _class, _handler, _modfn, _unitmask) \
- .r(read8_delegate([](_class &device, address_space &space, offs_t offset, u8 mem_mask)->u8 { return device._handler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr), _unitmask)
-#define AM_DEVREAD16_MOD(_tag, _class, _handler, _modfn, _unitmask) \
- .r(read16_delegate([](_class &device, address_space &space, offs_t offset, u16 mem_mask)->u16 { return device._handler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr), _unitmask)
-#define AM_DEVREAD32_MOD(_tag, _class, _handler, _modfn, _unitmask) \
- .r(read32_delegate([](_class &device, address_space &space, offs_t offset, u32 mem_mask)->u32 { return device._handler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr), _unitmask)
-
-// device writes with modified offset
-#define AM_DEVWRITE_MOD(_tag, _class, _handler, _modfn) \
- .w(write_delegate([](_class &device, address_space &space, offs_t offset, native_type data, native_type mem_mask) { device._handler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr))
-#define AM_DEVWRITE8_MOD(_tag, _class, _handler, _modfn, _unitmask) \
- .w(write8_delegate([](_class &device, address_space &space, offs_t offset, u8 data, u8 mem_mask) { device._handler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr), _unitmask)
-#define AM_DEVWRITE16_MOD(_tag, _class, _handler, _modfn, _unitmask) \
- .w(write16_delegate([](_class &device, address_space &space, offs_t offset, u16 data, u16 mem_mask) { device._handler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr), _unitmask)
-#define AM_DEVWRITE32_MOD(_tag, _class, _handler, _modfn, _unitmask) \
- .w(write32_delegate([](_class &device, address_space &space, offs_t offset, u32 data, u32 mem_mask) { device._handler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_handler, _tag, (_class *)nullptr), _unitmask)
-
-// device reads/writes with modified offset
-#define AM_DEVREADWRITE_MOD(_tag, _class, _rhandler, _whandler, _modfn) \
- .rw(read_delegate([](_class &device, address_space &space, offs_t offset, native_type mem_mask)->native_type { return device._rhandler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_rhandler, _tag, (_class *)nullptr), write_delegate([](_class &device, address_space &space, offs_t offset, native_type data, native_type mem_mask) { device._whandler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_whandler, _tag, (_class *)nullptr))
-#define AM_DEVREADWRITE8_MOD(_tag, _class, _rhandler, _whandler, _modfn, _unitmask) \
- .rw(read8_delegate([](_class &device, address_space &space, offs_t offset, u8 mem_mask)->u8 { return device._rhandler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_rhandler, _tag, (_class *)nullptr), write8_delegate([](_class &device, address_space &space, offs_t offset, u8 data, u8 mem_mask) { device._whandler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_whandler, _tag, (_class *)nullptr), _unitmask)
-#define AM_DEVREADWRITE16_MOD(_tag, _class, _rhandler, _whandler, _modfn, _unitmask) \
- .rw(read16_delegate([](_class &device, address_space &space, offs_t offset, u16 mem_mask)->u16 { return device._rhandler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_rhandler, _tag, (_class *)nullptr), write16_delegate([](_class &device, address_space &space, offs_t offset, u16 data, u16 mem_mask) { device._whandler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_whandler, _tag, (_class *)nullptr), _unitmask)
-#define AM_DEVREADWRITE32_MOD(_tag, _class, _rhandler, _whandler, _modfn, _unitmask) \
- .rw(read32_delegate([](_class &device, address_space &space, offs_t offset, u32 mem_mask)->u32 { return device._rhandler(space, emu::detail::offset_##_modfn(offset), mem_mask); }, #_class "::" #_rhandler, _tag, (_class *)nullptr), write32_delegate([](_class &device, address_space &space, offs_t offset, u32 data, u32 mem_mask) { device._whandler(space, emu::detail::offset_##_modfn(offset), data, mem_mask); }, #_class "::" #_whandler, _tag, (_class *)nullptr), _unitmask)
+ .rw(_tag, &_class::_rhandler, #_class "::" #_rhandler, &_class::_whandler, #_class "::" #_whandler).umask64(_unitmask)
// device set offset
#define AM_DEVSETOFFSET(_tag, _class, _handler) \
@@ -448,13 +499,13 @@ void _class :: _name(::address_map &map) \
// device mapping
#define AM_DEVICE(_tag, _class, _handler) \
- .set_submap(_tag, address_map_delegate(&_class::_handler, #_class "::" #_handler, (_class *)nullptr), 0, 0)
+ .m(_tag, address_map_constructor(&_class::_handler, #_class "::" #_handler, (_class *)nullptr))
#define AM_DEVICE8(_tag, _class, _handler, _unitmask) \
- .set_submap(_tag, address_map_delegate(&_class::_handler, #_class "::" #_handler, (_class *)nullptr), 8, _unitmask)
+ .m(_tag, address_map_constructor(&_class::_handler, #_class "::" #_handler, (_class *)nullptr)).umask64(_unitmask)
#define AM_DEVICE16(_tag, _class, _handler, _unitmask) \
- .set_submap(_tag, address_map_delegate(&_class::_handler, #_class "::" #_handler, (_class *)nullptr), 16, _unitmask)
+ .m(_tag, address_map_constructor(&_class::_handler, #_class "::" #_handler, (_class *)nullptr)).umask64(_unitmask)
#define AM_DEVICE32(_tag, _class, _handler, _unitmask) \
- .set_submap(_tag, address_map_delegate(&_class::_handler, #_class "::" #_handler, (_class *)nullptr), 32, _unitmask)
+ .m(_tag, address_map_constructor(&_class::_handler, #_class "::" #_handler, (_class *)nullptr)).umask64(_unitmask)
// special-case accesses
#define AM_ROM \
@@ -508,26 +559,4 @@ void _class :: _name(::address_map &map) \
#define AM_RAM_DEVREAD(_tag, _class, _read) AM_DEVREAD(_tag, _class, _read) AM_WRITEONLY
#define AM_RAM_DEVWRITE(_tag, _class, _write) AM_READONLY AM_DEVWRITE(_tag, _class, _write)
-
-// templated functions for modified offset
-namespace emu { namespace detail {
-
-template<int shift> offs_t offset_rshift(offs_t offset)
-{
- return offset >> shift;
-}
-
-template<offs_t xorval> offs_t offset_xor(offs_t offset)
-{
- return offset ^ xorval;
-}
-
-template<offs_t xorval, int shift> offs_t offset_xorshift(offs_t offset)
-{
- return (offset ^ xorval) >> shift;
-}
-
-} }
-
-
#endif /* __ADDRMAP_H__ */
diff --git a/src/emu/devcpu.h b/src/emu/devcpu.h
index 35c8c3b2a9e..1e392003730 100644
--- a/src/emu/devcpu.h
+++ b/src/emu/devcpu.h
@@ -30,7 +30,7 @@
#define MCFG_CPU_PROGRAM_MAP MCFG_DEVICE_PROGRAM_MAP
#define MCFG_CPU_DATA_MAP MCFG_DEVICE_DATA_MAP
#define MCFG_CPU_IO_MAP MCFG_DEVICE_IO_MAP
-#define MCFG_CPU_DECRYPTED_OPCODES_MAP MCFG_DEVICE_DECRYPTED_OPCODES_MAP
+#define MCFG_CPU_OPCODES_MAP MCFG_DEVICE_OPCODES_MAP
#define MCFG_CPU_VBLANK_INT_DRIVER MCFG_DEVICE_VBLANK_INT_DRIVER
#define MCFG_CPU_PERIODIC_INT_DRIVER MCFG_DEVICE_PERIODIC_INT_DRIVER
diff --git a/src/emu/dimemory.cpp b/src/emu/dimemory.cpp
index 9a78f88d6c4..84b161a5a13 100644
--- a/src/emu/dimemory.cpp
+++ b/src/emu/dimemory.cpp
@@ -36,8 +36,8 @@ address_space_config::address_space_config()
m_logaddr_width(0),
m_page_shift(0),
m_is_octal(false),
- m_internal_map(nullptr),
- m_default_map(nullptr)
+ m_internal_map(address_map_constructor()),
+ m_default_map(address_map_constructor())
{
}
@@ -78,38 +78,6 @@ address_space_config::address_space_config(const char *name, endianness_t endian
{
}
-address_space_config::address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift, address_map_delegate internal, address_map_delegate defmap)
- : m_name(name),
- m_endianness(endian),
- m_data_width(datawidth),
- m_addr_width(addrwidth),
- m_addr_shift(addrshift),
- m_logaddr_width(addrwidth),
- m_page_shift(0),
- m_is_octal(false),
- m_internal_map(nullptr),
- m_default_map(nullptr),
- m_internal_map_delegate(std::move(internal)),
- m_default_map_delegate(std::move(defmap))
-{
-}
-
-address_space_config::address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift, u8 logwidth, u8 pageshift, address_map_delegate internal, address_map_delegate defmap)
- : m_name(name),
- m_endianness(endian),
- m_data_width(datawidth),
- m_addr_width(addrwidth),
- m_addr_shift(addrshift),
- m_logaddr_width(logwidth),
- m_page_shift(pageshift),
- m_is_octal(false),
- m_internal_map(nullptr),
- m_default_map(nullptr),
- m_internal_map_delegate(std::move(internal)),
- m_default_map_delegate(std::move(defmap))
-{
-}
-
//**************************************************************************
// MEMORY DEVICE MANAGEMENT
@@ -137,27 +105,13 @@ device_memory_interface::~device_memory_interface()
//-------------------------------------------------
-// static_set_addrmap - configuration helper
-// to connect an address map to a device
-//-------------------------------------------------
-
-void device_memory_interface::static_set_addrmap(device_t &device, int spacenum, address_map_constructor map)
-{
- device_memory_interface *memory;
- if (!device.interface(memory))
- throw emu_fatalerror("MCFG_DEVICE_ADDRESS_MAP called on device '%s' with no memory interface", device.tag());
- memory->set_addrmap(spacenum, map);
-}
-
-
-//-------------------------------------------------
// set_addrmap - connect an address map to a device
//-------------------------------------------------
void device_memory_interface::set_addrmap(int spacenum, address_map_constructor map)
{
if (spacenum >= int(m_address_map.size()))
- m_address_map.resize(spacenum+1, nullptr);
+ m_address_map.resize(spacenum+1);
m_address_map[spacenum] = map;
}
diff --git a/src/emu/dimemory.h b/src/emu/dimemory.h
index 8abc5ff435d..ce3d857c98c 100644
--- a/src/emu/dimemory.h
+++ b/src/emu/dimemory.h
@@ -44,10 +44,10 @@ constexpr int TRANSLATE_FETCH_DEBUG = (TRANSLATE_FETCH | TRANSLATE_DEBUG_MAS
//**************************************************************************
#define MCFG_DEVICE_ADDRESS_MAP(_space, _map) \
- device_memory_interface::static_set_addrmap(*device, _space, ADDRESS_MAP_NAME(_map));
+ dynamic_cast<device_memory_interface *>(device)->set_addrmap(_space, address_map_constructor(&std::remove_pointer_t<decltype(this)>::_map, tag(), this));
#define MCFG_DEVICE_REMOVE_ADDRESS_MAP(_space) \
- device_memory_interface::static_set_addrmap(*device, _space, nullptr);
+ dynamic_cast<device_memory_interface *>(device)->set_addrmap(_space, address_map_constructor());
#define MCFG_DEVICE_PROGRAM_MAP(_map) \
MCFG_DEVICE_ADDRESS_MAP(AS_PROGRAM, _map)
@@ -58,7 +58,7 @@ constexpr int TRANSLATE_FETCH_DEBUG = (TRANSLATE_FETCH | TRANSLATE_DEBUG_MAS
#define MCFG_DEVICE_IO_MAP(_map) \
MCFG_DEVICE_ADDRESS_MAP(AS_IO, _map)
-#define MCFG_DEVICE_DECRYPTED_OPCODES_MAP(_map) \
+#define MCFG_DEVICE_OPCODES_MAP(_map) \
MCFG_DEVICE_ADDRESS_MAP(AS_OPCODES, _map)
@@ -79,17 +79,16 @@ public:
virtual ~device_memory_interface();
// configuration access
- address_map_constructor address_map(int spacenum = 0) const { return spacenum >= 0 && spacenum < int(m_address_map.size()) ? m_address_map[spacenum] : nullptr; }
+ address_map_constructor get_addrmap(int spacenum = 0) const { return spacenum >= 0 && spacenum < int(m_address_map.size()) ? m_address_map[spacenum] : address_map_constructor(); }
const address_space_config *space_config(int spacenum = 0) const { return spacenum >= 0 && spacenum < int(m_address_config.size()) ? m_address_config[spacenum] : nullptr; }
int max_space_count() const { return m_address_config.size(); }
// static inline configuration helpers
- static void static_set_addrmap(device_t &device, int spacenum, address_map_constructor map);
void set_addrmap(int spacenum, address_map_constructor map);
// basic information getters
bool has_space(int index = 0) const { return index >= 0 && index < int(m_addrspace.size()) && m_addrspace[index]; }
- bool has_configured_map(int index = 0) const { return index >= 0 && index < int(m_address_map.size()) && m_address_map[index]; }
+ bool has_configured_map(int index = 0) const { return index >= 0 && index < int(m_address_map.size()) && !m_address_map[index].isnull(); }
address_space &space(int index = 0) const { assert(index >= 0 && index < int(m_addrspace.size()) && m_addrspace[index]); return *m_addrspace[index]; }
// address translation
diff --git a/src/emu/drivers/testcpu.cpp b/src/emu/drivers/testcpu.cpp
index 64f24b729ce..6493471df4c 100644
--- a/src/emu/drivers/testcpu.cpp
+++ b/src/emu/drivers/testcpu.cpp
@@ -164,6 +164,7 @@ public:
void testcpu(machine_config &config);
+ void ppc_mem(address_map &map);
private:
// internal state
required_device<ppc603e_device> m_cpu;
@@ -177,7 +178,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( ppc_mem, AS_PROGRAM, 64, testcpu_state )
+ADDRESS_MAP_START(testcpu_state::ppc_mem)
AM_RANGE(RAM_BASE, RAM_BASE+7) AM_RAM AM_SHARE("ram")
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(general_r, general_w)
ADDRESS_MAP_END
diff --git a/src/emu/emu.h b/src/emu/emu.h
index e7ed73a7d6b..95b50de4ffa 100644
--- a/src/emu/emu.h
+++ b/src/emu/emu.h
@@ -49,7 +49,7 @@
// memory and address spaces
#include "emumem.h"
-#include "addrmap.h"
+class address_map; // Forward declaration
#include "memarray.h"
// machine-wide utilities
@@ -64,6 +64,7 @@
// devices and callbacks
#include "device.h"
#include "devfind.h"
+#include "addrmap.h" // Needs optional_device<> and required_device<>
#include "distate.h"
#include "dimemory.h"
#include "dirom.h"
diff --git a/src/emu/emumem.cpp b/src/emu/emumem.cpp
index bb1394c62b2..0ffda254a4c 100644
--- a/src/emu/emumem.cpp
+++ b/src/emu/emumem.cpp
@@ -2008,7 +2008,7 @@ inline void address_space::adjust_addresses(offs_t &start, offs_t &end, offs_t &
end &= ~mirror & m_addrmask;
}
-void address_space::check_optimize_all(const char *function, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, offs_t &nstart, offs_t &nend, offs_t &nmask, offs_t &nmirror)
+void address_space::check_optimize_all(const char *function, int width, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, u64 unitmask, offs_t &nstart, offs_t &nend, offs_t &nmask, offs_t &nmirror, u64 &nunitmask)
{
if (addrstart > addrend)
fatalerror("%s: In range %x-%x mask %x mirror %x select %x, start address is after the end address.\n", function, addrstart, addrend, addrmask, addrmirror, addrselect);
@@ -2017,12 +2017,21 @@ void address_space::check_optimize_all(const char *function, offs_t addrstart, o
if (addrend & ~m_addrmask)
fatalerror("%s: In range %x-%x mask %x mirror %x select %x, end address is outside of the global address mask %x, did you mean %x ?\n", function, addrstart, addrend, addrmask, addrmirror, addrselect, m_addrmask, addrend & m_addrmask);
- offs_t lowbits_mask = (m_config.data_width() >> (3 - m_config.m_addr_shift)) - 1;
+ // Check the relative data widths
+ if (width > m_config.data_width())
+ fatalerror("%s: In range %x-%x mask %x mirror %x select %x, cannot install a %d-bits wide handler in a %d-bits wide address space.\n", function, addrstart, addrend, addrmask, addrmirror, addrselect, width, m_config.data_width());
+
+ // Check the validity of the addresses given their intrinsic width
+ // We assume that busses with non-zero address shift have a data width matching the shift (reality says yes)
+ offs_t default_lowbits_mask = (m_config.data_width() >> (3 - m_config.m_addr_shift)) - 1;
+ offs_t lowbits_mask = width && !m_config.m_addr_shift ? (width >> 3) - 1 : default_lowbits_mask;
+
if (addrstart & lowbits_mask)
fatalerror("%s: In range %x-%x mask %x mirror %x select %x, start address has low bits set, did you mean %x ?\n", function, addrstart, addrend, addrmask, addrmirror, addrselect, addrstart & ~lowbits_mask);
if ((~addrend) & lowbits_mask)
fatalerror("%s: In range %x-%x mask %x mirror %x select %x, end address has low bits unset, did you mean %x ?\n", function, addrstart, addrend, addrmask, addrmirror, addrselect, addrend | lowbits_mask);
+
offs_t set_bits = addrstart | addrend;
offs_t changing_bits = addrstart ^ addrend;
// Round up to the nearest power-of-two-minus-one
@@ -2051,6 +2060,37 @@ void address_space::check_optimize_all(const char *function, offs_t addrstart, o
if (addrmirror & addrselect)
fatalerror("%s: In range %x-%x mask %x mirror %x select %x, mirror touches a select bit, did you mean %x ?\n", function, addrstart, addrend, addrmask, addrmirror, addrselect, addrmirror & ~addrselect);
+ // Check if the unitmask is structurally correct for the width
+ // Not sure what we can actually handle regularity-wise, so don't check that yet
+ if (width) {
+ // Check if the 1-blocks are of appropriate size
+ u64 block_mask = 0xffffffffffffffffU >> (64 - width);
+ for(int pos = 0; pos != 64; pos += width) {
+ u64 cmask = (unitmask >> pos) & block_mask;
+ if (cmask && cmask != block_mask)
+ fatalerror("%s: In range %x-%x mask %x mirror %x select %x, the unitmask of %s has incorrect granularity for a handler size of %d.\n", function, addrstart, addrend, addrmask, addrmirror, addrselect, core_i64_hex_format(unitmask, 16), width);
+ }
+ }
+
+ // Check if we have to adjust the unitmask and addresses
+ nunitmask = unitmask ? unitmask : 0xffffffffffffffffU;
+ if ((addrstart & default_lowbits_mask) || ((~addrend) & default_lowbits_mask)) {
+ if ((addrstart ^ addrend) & ~default_lowbits_mask)
+ fatalerror("%s: In range %x-%x mask %x mirror %x select %x, start or end is unaligned while the range spans more than one slot (granularity = %d).\n", function, addrstart, addrend, addrmask, addrmirror, addrselect, default_lowbits_mask + 1);
+ offs_t lowbyte = m_config.addr2byte(addrstart & default_lowbits_mask);
+ offs_t highbyte = m_config.addr2byte((addrend & default_lowbits_mask) + 1);
+ if (m_config.endianness() == ENDIANNESS_LITTLE) {
+ u64 hmask = 0xffffffffffffffffU >> (64 - 8*highbyte);
+ nunitmask = (nunitmask << (8*lowbyte)) & hmask;
+ } else {
+ u64 hmask = 0xffffffffffffffffU >> ((64 - m_config.data_width()) + 8*lowbyte);
+ nunitmask = (nunitmask << (m_config.data_width() - 8*highbyte)) & hmask;
+ }
+
+ addrstart &= ~default_lowbits_mask;
+ addrend |= default_lowbits_mask;
+ }
+
nstart = addrstart;
nend = addrend;
nmask = (addrmask ? addrmask : changing_bits) | addrselect;
@@ -2151,7 +2191,7 @@ void address_space::prepare_map()
m_map = std::make_unique<address_map>(m_device, m_spacenum);
// merge in the submaps
- m_map->uplift_submaps(m_manager.machine(), m_device.owner() ? *m_device.owner() : m_device, endianness());
+ m_map->import_submaps(m_manager.machine(), m_device.owner() ? *m_device.owner() : m_device, data_width(), endianness());
// extract global parameters specified by the map
m_unmap = (m_map->m_unmapval == 0) ? 0 : ~0;
@@ -2172,7 +2212,7 @@ void address_space::prepare_map()
if (m_manager.m_sharelist.find(fulltag.c_str()) == m_manager.m_sharelist.end())
{
VPRINTF(("Creating share '%s' of length 0x%X\n", fulltag.c_str(), entry.m_addrend + 1 - entry.m_addrstart));
- m_manager.m_sharelist.emplace(fulltag.c_str(), std::make_unique<memory_share>(m_map->m_databits, address_to_byte(entry.m_addrend + 1 - entry.m_addrstart), endianness()));
+ m_manager.m_sharelist.emplace(fulltag.c_str(), std::make_unique<memory_share>(m_config.data_width(), address_to_byte(entry.m_addrend + 1 - entry.m_addrstart), endianness()));
}
}
@@ -2284,18 +2324,18 @@ void address_space::populate_map_entry(const address_map_entry &entry, read_or_w
if (readorwrite == read_or_write::READ)
switch (data.m_bits)
{
- case 8: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read8_delegate(entry.m_rproto8, entry.m_devbase), data.m_mask); break;
- case 16: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read16_delegate(entry.m_rproto16, entry.m_devbase), data.m_mask); break;
- case 32: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read32_delegate(entry.m_rproto32, entry.m_devbase), data.m_mask); break;
- case 64: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read64_delegate(entry.m_rproto64, entry.m_devbase), data.m_mask); break;
+ case 8: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read8_delegate(entry.m_rproto8, entry.m_devbase), entry.m_mask); break;
+ case 16: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read16_delegate(entry.m_rproto16, entry.m_devbase), entry.m_mask); break;
+ case 32: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read32_delegate(entry.m_rproto32, entry.m_devbase), entry.m_mask); break;
+ case 64: install_read_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, read64_delegate(entry.m_rproto64, entry.m_devbase), entry.m_mask); break;
}
else
switch (data.m_bits)
{
- case 8: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write8_delegate(entry.m_wproto8, entry.m_devbase), data.m_mask); break;
- case 16: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write16_delegate(entry.m_wproto16, entry.m_devbase), data.m_mask); break;
- case 32: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write32_delegate(entry.m_wproto32, entry.m_devbase), data.m_mask); break;
- case 64: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write64_delegate(entry.m_wproto64, entry.m_devbase), data.m_mask); break;
+ case 8: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write8_delegate(entry.m_wproto8, entry.m_devbase), entry.m_mask); break;
+ case 16: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write16_delegate(entry.m_wproto16, entry.m_devbase), entry.m_mask); break;
+ case 32: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write32_delegate(entry.m_wproto32, entry.m_devbase), entry.m_mask); break;
+ case 64: install_write_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask, entry.m_addrmirror, entry.m_addrselect, write64_delegate(entry.m_wproto64, entry.m_devbase), entry.m_mask); break;
}
break;
@@ -2323,7 +2363,7 @@ void address_space::populate_map_entry(const address_map_entry &entry, read_or_w
void address_space::populate_map_entry_setoffset(const address_map_entry &entry)
{
install_setoffset_handler(entry.m_addrstart, entry.m_addrend, entry.m_addrmask,
- entry.m_addrmirror, entry.m_addrselect, setoffset_delegate(entry.m_soproto, entry.m_devbase), entry.m_setoffsethd.m_mask);
+ entry.m_addrmirror, entry.m_addrselect, setoffset_delegate(entry.m_soproto, entry.m_devbase), entry.m_mask);
}
//-------------------------------------------------
@@ -2559,11 +2599,11 @@ void address_space::unmap_generic(offs_t addrstart, offs_t addrend, offs_t addrm
// of a live device into this address space
//-------------------------------------------------
-void address_space::install_device_delegate(offs_t addrstart, offs_t addrend, device_t &device, address_map_delegate &delegate, int bits, u64 unitmask)
+void address_space::install_device_delegate(offs_t addrstart, offs_t addrend, device_t &device, address_map_constructor &delegate, u64 unitmask)
{
check_address("install_device_delegate", addrstart, addrend);
- address_map map(*this, addrstart, addrend, bits, unitmask, m_device, delegate);
- map.uplift_submaps(m_manager.machine(), device, endianness());
+ address_map map(*this, addrstart, addrend, unitmask, m_device, delegate);
+ map.import_submaps(m_manager.machine(), device, data_width(), endianness());
populate_from_map(&map);
}
@@ -2766,9 +2806,10 @@ void address_space::install_read_handler(offs_t addrstart, offs_t addrend, offs_
handler.name(), core_i64_hex_format(unitmask, data_width() / 4)));
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_read_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
+ u64 nunitmask;
+ check_optimize_all("install_read_handler", 8, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
- read().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ read().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
@@ -2780,9 +2821,10 @@ void address_space::install_write_handler(offs_t addrstart, offs_t addrend, offs
handler.name(), core_i64_hex_format(unitmask, data_width() / 4)));
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_write_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
+ u64 nunitmask;
+ check_optimize_all("install_write_handler", 8, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
- write().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ write().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
@@ -2801,16 +2843,18 @@ void address_space::install_readwrite_handler(offs_t addrstart, offs_t addrend,
void address_space::install_read_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, read16_delegate handler, u64 unitmask)
{
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_read_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
- read().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ u64 nunitmask;
+ check_optimize_all("install_read_handler", 16, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
+ read().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
void address_space::install_write_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, write16_delegate handler, u64 unitmask)
{
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_write_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
- write().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ u64 nunitmask;
+ check_optimize_all("install_write_handler", 16, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
+ write().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
@@ -2829,16 +2873,18 @@ void address_space::install_readwrite_handler(offs_t addrstart, offs_t addrend,
void address_space::install_read_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, read32_delegate handler, u64 unitmask)
{
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_read_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
- read().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ u64 nunitmask;
+ check_optimize_all("install_read_handler", 32, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
+ read().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
void address_space::install_write_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, write32_delegate handler, u64 unitmask)
{
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_write_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
- write().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ u64 nunitmask;
+ check_optimize_all("install_write_handler", 32, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
+ write().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
@@ -2857,16 +2903,18 @@ void address_space::install_readwrite_handler(offs_t addrstart, offs_t addrend,
void address_space::install_read_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, read64_delegate handler, u64 unitmask)
{
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_read_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
- read().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ u64 nunitmask;
+ check_optimize_all("install_read_handler", 64, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
+ read().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
void address_space::install_write_handler(offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, write64_delegate handler, u64 unitmask)
{
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_write_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
- write().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ u64 nunitmask;
+ check_optimize_all("install_write_handler", 64, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
+ write().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
generate_memdump(m_manager.machine());
}
@@ -2889,8 +2937,9 @@ void address_space::install_setoffset_handler(offs_t addrstart, offs_t addrend,
handler.name(), core_i64_hex_format(unitmask, data_width() / 4)));
offs_t nstart, nend, nmask, nmirror;
- check_optimize_all("install_setoffset_handler", addrstart, addrend, addrmask, addrmirror, addrselect, nstart, nend, nmask, nmirror);
- setoffset().handler_map_range(nstart, nend, nmask, nmirror, unitmask).set_delegate(handler);
+ u64 nunitmask;
+ check_optimize_all("install_setoffset_handler", 8, addrstart, addrend, addrmask, addrmirror, addrselect, unitmask, nstart, nend, nmask, nmirror, nunitmask);
+ setoffset().handler_map_range(nstart, nend, nmask, nmirror, nunitmask).set_delegate(handler);
}
//**************************************************************************
@@ -4558,7 +4607,7 @@ void handler_entry::configure_subunits(u64 handlermask, int handlerbits, int &st
count++;
}
if (count == 0 || count > maxunits)
- throw emu_fatalerror("Invalid subunit mask %s for %d-bit space", core_i64_hex_format(handlermask, m_datawidth / 4), m_datawidth);
+ throw emu_fatalerror("Invalid subunit mask %s for %d-bit handler in %d-bit space", core_i64_hex_format(handlermask, m_datawidth / 4), handlerbits, m_datawidth);
// make sure that the multiplier is a power of 2
int multiplier = count;
diff --git a/src/emu/emumem.h b/src/emu/emumem.h
index 9e5bd5fd3f6..24301da70fc 100644
--- a/src/emu/emumem.h
+++ b/src/emu/emumem.h
@@ -62,11 +62,8 @@ class address_table_write;
// offsets and addresses are 32-bit (for now...)
typedef u32 offs_t;
-// address map constructors are functions that build up an address_map
-typedef void (*address_map_constructor)(address_map &map);
-
-// submap retriever delegate
-typedef named_delegate<void (address_map &)> address_map_delegate;
+// address map constructors are delegates that build up an address_map
+using address_map_constructor = named_delegate<void (address_map &)>;
// struct with function pointers for accessors; use is generally discouraged unless necessary
struct data_accessors
@@ -188,10 +185,8 @@ class address_space_config
public:
// construction/destruction
address_space_config();
- address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift = 0, address_map_constructor internal = nullptr, address_map_constructor defmap = nullptr);
- address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift, u8 logwidth, u8 pageshift, address_map_constructor internal = nullptr, address_map_constructor defmap = nullptr);
- address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift, address_map_delegate internal, address_map_delegate defmap = address_map_delegate());
- address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift, u8 logwidth, u8 pageshift, address_map_delegate internal, address_map_delegate defmap = address_map_delegate());
+ address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift = 0, address_map_constructor internal = address_map_constructor(), address_map_constructor defmap = address_map_constructor());
+ address_space_config(const char *name, endianness_t endian, u8 datawidth, u8 addrwidth, s8 addrshift, u8 logwidth, u8 pageshift, address_map_constructor internal = address_map_constructor(), address_map_constructor defmap = address_map_constructor());
// getters
const char *name() const { return m_name; }
@@ -223,8 +218,6 @@ public:
address_map_constructor m_internal_map;
address_map_constructor m_default_map;
- address_map_delegate m_internal_map_delegate;
- address_map_delegate m_default_map_delegate;
};
@@ -369,12 +362,12 @@ public:
void install_ram(offs_t addrstart, offs_t addrend, offs_t addrmirror, void *baseptr = nullptr) { install_ram_generic(addrstart, addrend, addrmirror, read_or_write::READWRITE, baseptr); }
// install device memory maps
- template <typename T> void install_device(offs_t addrstart, offs_t addrend, T &device, void (T::*map)(address_map &map), int bits = 0, u64 unitmask = 0) {
- address_map_delegate delegate(map, "dynamic_device_install", &device);
- install_device_delegate(addrstart, addrend, device, delegate, bits, unitmask);
+ template <typename T> void install_device(offs_t addrstart, offs_t addrend, T &device, void (T::*map)(address_map &map), u64 unitmask = 0) {
+ address_map_constructor delegate(map, "dynamic_device_install", &device);
+ install_device_delegate(addrstart, addrend, device, delegate, unitmask);
}
- void install_device_delegate(offs_t addrstart, offs_t addrend, device_t &device, address_map_delegate &map, int bits = 0, u64 unitmask = 0);
+ void install_device_delegate(offs_t addrstart, offs_t addrend, device_t &device, address_map_constructor &map, u64 unitmask = 0);
// install setoffset handler
void install_setoffset_handler(offs_t addrstart, offs_t addrend, setoffset_delegate sohandler, u64 unitmask = 0) { install_setoffset_handler(addrstart, addrend, 0, 0, 0, sohandler, unitmask); }
@@ -436,7 +429,7 @@ private:
memory_bank &bank_find_or_allocate(const char *tag, offs_t addrstart, offs_t addrend, offs_t addrmirror, read_or_write readorwrite);
memory_bank *bank_find_anonymous(offs_t bytestart, offs_t byteend) const;
address_map_entry *block_assign_intersecting(offs_t bytestart, offs_t byteend, u8 *base);
- void check_optimize_all(const char *function, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, offs_t &nstart, offs_t &nend, offs_t &nmask, offs_t &nmirror);
+ void check_optimize_all(const char *function, int width, offs_t addrstart, offs_t addrend, offs_t addrmask, offs_t addrmirror, offs_t addrselect, u64 unitmask, offs_t &nstart, offs_t &nend, offs_t &nmask, offs_t &nmirror, u64 &nunitmask);
void check_optimize_mirror(const char *function, offs_t addrstart, offs_t addrend, offs_t addrmirror, offs_t &nstart, offs_t &nend, offs_t &nmask, offs_t &nmirror);
void check_address(const char *function, offs_t addrstart, offs_t addrend);
diff --git a/src/emu/machine.cpp b/src/emu/machine.cpp
index 72e78e96759..2fa926afb15 100644
--- a/src/emu/machine.cpp
+++ b/src/emu/machine.cpp
@@ -1318,7 +1318,7 @@ WRITE8_MEMBER(dummy_space_device::write)
throw emu_fatalerror("Attempted to write to generic address space (offs %X = %02X)\n", offset, data);
}
-static ADDRESS_MAP_START(dummy, 0, 8, dummy_space_device)
+ADDRESS_MAP_START(dummy_space_device::dummy)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -1327,7 +1327,7 @@ DEFINE_DEVICE_TYPE(DUMMY_SPACE, dummy_space_device, "dummy_space", "Dummy Space"
dummy_space_device::dummy_space_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) :
device_t(mconfig, DUMMY_SPACE, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("dummy", ENDIANNESS_LITTLE, 8, 32, 0, nullptr, *ADDRESS_MAP_NAME(dummy))
+ m_space_config("dummy", ENDIANNESS_LITTLE, 8, 32, 0, address_map_constructor(), address_map_constructor(FUNC(dummy_space_device::dummy), this))
{
}
diff --git a/src/emu/machine.h b/src/emu/machine.h
index adc755aab03..bdc4bb6c520 100644
--- a/src/emu/machine.h
+++ b/src/emu/machine.h
@@ -122,6 +122,7 @@ public:
DECLARE_READ8_MEMBER(read);
DECLARE_WRITE8_MEMBER(write);
+ void dummy(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/atarijsa.cpp b/src/mame/audio/atarijsa.cpp
index a83987fc8d8..fe781118588 100644
--- a/src/mame/audio/atarijsa.cpp
+++ b/src/mame/audio/atarijsa.cpp
@@ -95,7 +95,7 @@ DEFINE_DEVICE_TYPE(ATARI_JSA_IIIS, atari_jsa_iiis_device, "atjsa3s", "Atari JSA
// MEMORY MAPS
//**************************************************************************
-static ADDRESS_MAP_START( atarijsa1_map, AS_PROGRAM, 8, atari_jsa_i_device )
+ADDRESS_MAP_START(atari_jsa_i_device::atarijsa1_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x2800, 0x2800) AM_MIRROR(0x01f9) // N/C
@@ -112,7 +112,7 @@ static ADDRESS_MAP_START( atarijsa1_map, AS_PROGRAM, 8, atari_jsa_i_device )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atarijsa2_map, AS_PROGRAM, 8, atari_jsa_ii_device )
+ADDRESS_MAP_START(atari_jsa_ii_device::atarijsa2_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x2800, 0x2800) AM_MIRROR(0x01f9) AM_READ(oki_r) // /RDV
@@ -129,7 +129,7 @@ ADDRESS_MAP_END
// full map verified from schematics and Batman GALs
-static ADDRESS_MAP_START( atarijsa3_map, AS_PROGRAM, 8, atari_jsa_iii_device )
+ADDRESS_MAP_START(atari_jsa_iii_device::atarijsa3_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x07fe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x2800, 0x2801) AM_MIRROR(0x05f8) AM_READWRITE(oki_r, overall_volume_w) // /RDV
@@ -145,13 +145,13 @@ static ADDRESS_MAP_START( atarijsa3_map, AS_PROGRAM, 8, atari_jsa_iii_device )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jsa3_oki1_map, 0, 8, atari_jsa_iii_device )
+ADDRESS_MAP_START(atari_jsa_iii_device::jsa3_oki1_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("oki1lo")
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("oki1hi")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jsa3_oki2_map, 0, 8, atari_jsa_iiis_device )
+ADDRESS_MAP_START(atari_jsa_iiis_device::jsa3_oki2_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("oki2lo")
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("oki2hi")
ADDRESS_MAP_END
diff --git a/src/mame/audio/atarijsa.h b/src/mame/audio/atarijsa.h
index 83dc2ec0cb2..0bcc1d26d44 100644
--- a/src/mame/audio/atarijsa.h
+++ b/src/mame/audio/atarijsa.h
@@ -194,6 +194,7 @@ public:
DECLARE_READ8_MEMBER( pokey_r );
DECLARE_WRITE8_MEMBER( pokey_w );
+ void atarijsa1_map(address_map &map);
protected:
// device level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -226,6 +227,7 @@ public:
// read/write handlers
DECLARE_READ8_MEMBER( rdio_r );
+ void atarijsa2_map(address_map &map);
protected:
// device level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -243,6 +245,8 @@ public:
// construction/destruction
atari_jsa_iii_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void atarijsa3_map(address_map &map);
+ void jsa3_oki1_map(address_map &map);
protected:
// derived construction/destruction
atari_jsa_iii_device(const machine_config &mconfig, device_type devtype, const char *tag, device_t *owner, uint32_t clock, int channels);
@@ -268,6 +272,7 @@ public:
// construction/destruction
atari_jsa_iiis_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void jsa3_oki2_map(address_map &map);
protected:
// device level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/audio/cage.cpp b/src/mame/audio/cage.cpp
index 4114c484ad5..7fb419653db 100644
--- a/src/mame/audio/cage.cpp
+++ b/src/mame/audio/cage.cpp
@@ -595,7 +595,7 @@ WRITE32_MEMBER( atari_cage_device::speedup_w )
*
*************************************/
-static ADDRESS_MAP_START( cage_map, AS_PROGRAM, 32, atari_cage_device )
+ADDRESS_MAP_START(atari_cage_device::cage_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("cageram")
AM_RANGE(0x200000, 0x200000) AM_WRITENOP
AM_RANGE(0x400000, 0x47ffff) AM_ROMBANK("bank10")
@@ -606,7 +606,7 @@ static ADDRESS_MAP_START( cage_map, AS_PROGRAM, 32, atari_cage_device )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cage_map_seattle, AS_PROGRAM, 32, atari_cage_seattle_device )
+ADDRESS_MAP_START(atari_cage_seattle_device::cage_map_seattle)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("cageram")
AM_RANGE(0x200000, 0x200000) AM_WRITENOP
AM_RANGE(0x400000, 0x47ffff) AM_ROMBANK("bank10")
diff --git a/src/mame/audio/cage.h b/src/mame/audio/cage.h
index 332b4e5bdb8..a731567f970 100644
--- a/src/mame/audio/cage.h
+++ b/src/mame/audio/cage.h
@@ -54,6 +54,7 @@ public:
TIMER_CALLBACK_MEMBER( cage_deferred_w );
WRITE32_MEMBER( speedup_w );
+ void cage_map(address_map &map);
protected:
atari_cage_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -105,6 +106,7 @@ public:
// construction/destruction
atari_cage_seattle_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void cage_map_seattle(address_map &map);
protected:
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/audio/carnival.cpp b/src/mame/audio/carnival.cpp
index ecc2c5ec84c..ab5127cdf18 100644
--- a/src/mame/audio/carnival.cpp
+++ b/src/mame/audio/carnival.cpp
@@ -191,7 +191,7 @@ READ_LINE_MEMBER( vicdual_state::carnival_music_port_t1_r )
}
-static ADDRESS_MAP_START( mboard_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::mboard_map)
AM_RANGE(0x0000, 0x03ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/audio/cinemat.cpp b/src/mame/audio/cinemat.cpp
index 8211e4d2c39..64028418485 100644
--- a/src/mame/audio/cinemat.cpp
+++ b/src/mame/audio/cinemat.cpp
@@ -1368,7 +1368,7 @@ SOUND_RESET_MEMBER( cinemat_state, demon )
}
-static ADDRESS_MAP_START( demon_sound_map, AS_PROGRAM, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::demon_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3000, 0x33ff) AM_RAM
AM_RANGE(0x4000, 0x4001) AM_DEVREAD("ay1", ay8910_device, data_r)
@@ -1381,7 +1381,7 @@ static ADDRESS_MAP_START( demon_sound_map, AS_PROGRAM, 8, cinemat_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( demon_sound_ports, AS_IO, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::demon_sound_ports)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVWRITE("ctc", z80ctc_device, write)
AM_RANGE(0x1c, 0x1f) AM_DEVWRITE("ctc", z80ctc_device, write)
diff --git a/src/mame/audio/csd.cpp b/src/mame/audio/csd.cpp
index e90a1287f4c..0ae16955aec 100644
--- a/src/mame/audio/csd.cpp
+++ b/src/mame/audio/csd.cpp
@@ -22,7 +22,7 @@ DEFINE_DEVICE_TYPE(MIDWAY_CHEAP_SQUEAK_DELUXE, midway_cheap_squeak_deluxe_device
//-------------------------------------------------
// address map determined by PAL; verified
-static ADDRESS_MAP_START( csdeluxe_map, AS_PROGRAM, 16, midway_cheap_squeak_deluxe_device )
+ADDRESS_MAP_START(midway_cheap_squeak_deluxe_device::csdeluxe_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1ffff)
AM_RANGE(0x00000, 0x07fff) AM_ROM
diff --git a/src/mame/audio/csd.h b/src/mame/audio/csd.h
index 4af49a552bc..100aa272eac 100644
--- a/src/mame/audio/csd.h
+++ b/src/mame/audio/csd.h
@@ -34,6 +34,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(sirq_w);
DECLARE_WRITE_LINE_MEMBER(reset_w);
+ void csdeluxe_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/audio/dcs.cpp b/src/mame/audio/dcs.cpp
index 5bb3ad93019..47aa4ad87b1 100644
--- a/src/mame/audio/dcs.cpp
+++ b/src/mame/audio/dcs.cpp
@@ -267,14 +267,14 @@ enum
*************************************/
/* DCS 2k memory map */
-static ADDRESS_MAP_START( dcs_2k_program_map, AS_PROGRAM, 32, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs_2k_program_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dcsint")
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("dcsext")
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("dcsext")
AM_RANGE(0x1800, 0x1fff) AM_RAM AM_SHARE("dcsext")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dcs_2k_data_map, AS_DATA, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs_2k_data_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_READWRITE(dcs_dataram_r, dcs_dataram_w)
AM_RANGE(0x2000, 0x2fff) AM_ROMBANK("databank")
AM_RANGE(0x3000, 0x33ff) AM_WRITE(dcs_data_bank_select_w)
@@ -285,7 +285,7 @@ ADDRESS_MAP_END
/* DCS 2k with UART memory map */
-static ADDRESS_MAP_START( dcs_2k_uart_data_map, AS_DATA, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs_2k_uart_data_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_READWRITE(dcs_dataram_r, dcs_dataram_w)
AM_RANGE(0x2000, 0x2fff) AM_ROMBANK("databank")
AM_RANGE(0x3000, 0x33ff) AM_WRITE(dcs_data_bank_select_w)
@@ -298,13 +298,13 @@ ADDRESS_MAP_END
/* DCS 8k memory map */
-static ADDRESS_MAP_START( dcs_8k_program_map, AS_PROGRAM, 32, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs_8k_program_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dcsint")
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("dcsext")
AM_RANGE(0x3000, 0x3003) AM_READWRITE(input_latch32_r, output_latch32_w) // why?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dcs_8k_data_map, AS_DATA, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs_8k_data_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x1fff) AM_READWRITE(dcs_dataram_r, dcs_dataram_w)
AM_RANGE(0x2000, 0x2fff) AM_ROMBANK("databank")
@@ -315,12 +315,12 @@ static ADDRESS_MAP_START( dcs_8k_data_map, AS_DATA, 16, dcs_audio_device )
ADDRESS_MAP_END
/* Williams WPC DCS/Security Pinball */
-static ADDRESS_MAP_START( dcs_wpc_program_map, AS_PROGRAM, 32, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs_wpc_program_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dcsint")
AM_RANGE(0x1000, 0x3fff) AM_RAM AM_SHARE("dcsext")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dcs_wpc_data_map, AS_DATA, 16, dcs_audio_wpc_device )
+ADDRESS_MAP_START(dcs_audio_wpc_device::dcs_wpc_data_map)
AM_RANGE(0x0000, 0x07ff) AM_ROMBANK("databank")
AM_RANGE(0x1000, 0x2fff) AM_READWRITE(dcs_dataram_r, dcs_dataram_w)
AM_RANGE(0x3000, 0x3000) AM_WRITE(dcs_data_bank_select_w)
@@ -336,18 +336,18 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dcs2_2115_program_map, AS_PROGRAM, 32, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs2_2115_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dcsint")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dcs2_2104_program_map, AS_PROGRAM, 32, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs2_2104_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x01ff) AM_RAM AM_SHARE("dcsint")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dcs2_2115_data_map, AS_DATA, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs2_2115_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w)
AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w)
@@ -359,7 +359,7 @@ static ADDRESS_MAP_START( dcs2_2115_data_map, AS_DATA, 16, dcs_audio_device )
AM_RANGE(0x3fe0, 0x3fff) AM_READWRITE(adsp_control_r, adsp_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dcs2_2104_data_map, AS_DATA, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dcs2_2104_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w)
AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w)
@@ -379,25 +379,25 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsio_program_map, AS_PROGRAM, 32, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dsio_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("dcsint")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsio_data_map, AS_DATA, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dsio_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_DEVICE("data_map_bank", address_map_bank_device, amap16)
AM_RANGE(0x2000, 0x3fdf) AM_RAM AM_SHARE("dcsint_data")
AM_RANGE(0x3fe0, 0x3fff) AM_READWRITE(adsp_control_r, adsp_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsio_rambank_map, AS_PROGRAM, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dsio_rambank_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAMBANK("databank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsio_io_map, AS_IO, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::dsio_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w)
AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w)
@@ -415,26 +415,26 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( denver_program_map, AS_PROGRAM, 32, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::denver_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("dcsint")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( denver_data_map, AS_DATA, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::denver_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_DEVICE("data_map_bank", address_map_bank_device, amap16)
AM_RANGE(0x2000, 0x3fdf) AM_RAM AM_SHARE("dcsint_data")
AM_RANGE(0x3fe0, 0x3fff) AM_READWRITE(adsp_control_r, adsp_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(denver_rambank_map, AS_PROGRAM, 16, dcs_audio_device)
+ADDRESS_MAP_START(dcs_audio_device::denver_rambank_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAMBANK("databank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( denver_io_map, AS_IO, 16, dcs_audio_device )
+ADDRESS_MAP_START(dcs_audio_device::denver_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w)
AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w)
diff --git a/src/mame/audio/dcs.h b/src/mame/audio/dcs.h
index aa137621fb9..e53ff616242 100644
--- a/src/mame/audio/dcs.h
+++ b/src/mame/audio/dcs.h
@@ -110,6 +110,24 @@ public:
int preprocess_stage_2(uint16_t data);
int preprocess_write(uint16_t data);
+ void dcs2_2104_data_map(address_map &map);
+ void dcs2_2104_program_map(address_map &map);
+ void dcs2_2115_data_map(address_map &map);
+ void dcs2_2115_program_map(address_map &map);
+ void dcs_2k_data_map(address_map &map);
+ void dcs_2k_program_map(address_map &map);
+ void dcs_2k_uart_data_map(address_map &map);
+ void dcs_8k_data_map(address_map &map);
+ void dcs_8k_program_map(address_map &map);
+ void dcs_wpc_program_map(address_map &map);
+ void denver_data_map(address_map &map);
+ void denver_io_map(address_map &map);
+ void denver_program_map(address_map &map);
+ void denver_rambank_map(address_map &map);
+ void dsio_data_map(address_map &map);
+ void dsio_io_map(address_map &map);
+ void dsio_program_map(address_map &map);
+ void dsio_rambank_map(address_map &map);
protected:
// construction/destruction
dcs_audio_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int rev);
@@ -289,6 +307,7 @@ public:
// construction/destruction
dcs_audio_wpc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void dcs_wpc_data_map(address_map &map);
protected:
// optional information overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/audio/decobsmt.cpp b/src/mame/audio/decobsmt.cpp
index 6c2f07d2456..fb4b2521f2c 100644
--- a/src/mame/audio/decobsmt.cpp
+++ b/src/mame/audio/decobsmt.cpp
@@ -16,7 +16,7 @@
#define M6809_TAG "soundcpu"
#define BSMT_TAG "bsmt"
-static ADDRESS_MAP_START( decobsmt_map, AS_PROGRAM, 8, decobsmt_device )
+ADDRESS_MAP_START(decobsmt_device::decobsmt_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0xffff) AM_ROM AM_REGION(":soundcpu", 0x2000)
AM_RANGE(0x2000, 0x2001) AM_WRITE(bsmt_reset_w)
@@ -26,7 +26,7 @@ static ADDRESS_MAP_START( decobsmt_map, AS_PROGRAM, 8, decobsmt_device )
AM_RANGE(0xa000, 0xa0ff) AM_WRITE(bsmt1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bsmt_map, 0, 8, decobsmt_device )
+ADDRESS_MAP_START(decobsmt_device::bsmt_map)
AM_RANGE(0x000000, 0xffffff) AM_ROM AM_REGION(":bsmt", 0)
ADDRESS_MAP_END
diff --git a/src/mame/audio/decobsmt.h b/src/mame/audio/decobsmt.h
index 41cce0e3282..2aa68f4dc39 100644
--- a/src/mame/audio/decobsmt.h
+++ b/src/mame/audio/decobsmt.h
@@ -32,6 +32,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(bsmt_reset_line);
+ void bsmt_map(address_map &map);
+ void decobsmt_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/dkong.cpp b/src/mame/audio/dkong.cpp
index fd6a8f4a0c2..75fc524a730 100644
--- a/src/mame/audio/dkong.cpp
+++ b/src/mame/audio/dkong.cpp
@@ -1273,31 +1273,31 @@ WRITE8_MEMBER(dkong_state::dkong_audio_irq_w)
*
*************************************/
-static ADDRESS_MAP_START( dkong_sound_map, AS_PROGRAM, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkong_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkong_sound_io_map, AS_IO, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkong_sound_io_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(dkong_tune_r, dkong_voice_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkongjr_sound_io_map, AS_IO, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkongjr_sound_io_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_DEVREAD("ls174.3d", latch8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( radarscp1_sound_io_map, AS_IO, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::radarscp1_sound_io_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_DEVREAD("ls175.3d", latch8_device, read)
AM_RANGE(0x00, 0xff) AM_WRITE(dkong_p1_w) /* DAC here */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkong3_sound1_map, AS_PROGRAM, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkong3_sound1_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x4016, 0x4016) AM_DEVREAD("latch1", latch8_device, read) /* overwrite default */
AM_RANGE(0x4017, 0x4017) AM_DEVREAD("latch2", latch8_device, read)
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkong3_sound2_map, AS_PROGRAM, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkong3_sound2_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x4016, 0x4016) AM_DEVREAD("latch3", latch8_device, read) /* overwrite default */
AM_RANGE(0xe000, 0xffff) AM_ROM
diff --git a/src/mame/audio/dsbz80.cpp b/src/mame/audio/dsbz80.cpp
index b655354d357..53b554955a1 100644
--- a/src/mame/audio/dsbz80.cpp
+++ b/src/mame/audio/dsbz80.cpp
@@ -15,12 +15,12 @@
#define Z80_TAG "mpegcpu"
-static ADDRESS_MAP_START( dsbz80_map, AS_PROGRAM, 8, dsbz80_device )
+ADDRESS_MAP_START(dsbz80_device::dsbz80_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION(":mpegcpu", 0)
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsbz80io_map, AS_IO, 8, dsbz80_device )
+ADDRESS_MAP_START(dsbz80_device::dsbz80io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mpeg_trigger_w)
AM_RANGE(0xe2, 0xe4) AM_READWRITE(mpeg_pos_r, mpeg_start_w)
diff --git a/src/mame/audio/dsbz80.h b/src/mame/audio/dsbz80.h
index 018232c4b9c..c65dbdc6dd3 100644
--- a/src/mame/audio/dsbz80.h
+++ b/src/mame/audio/dsbz80.h
@@ -42,6 +42,8 @@ public:
DECLARE_WRITE8_MEMBER(mpeg_stereo_w);
DECLARE_READ8_MEMBER(mpeg_pos_r);
+ void dsbz80_map(address_map &map);
+ void dsbz80io_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/efo_zsu.cpp b/src/mame/audio/efo_zsu.cpp
index 74b1f0098c8..21fc1e3c3c5 100644
--- a/src/mame/audio/efo_zsu.cpp
+++ b/src/mame/audio/efo_zsu.cpp
@@ -83,17 +83,17 @@ WRITE8_MEMBER(efo_zsu_device::sound_command_w)
-static ADDRESS_MAP_START( zsu_map, AS_PROGRAM, 8, efo_zsu_device )
+ADDRESS_MAP_START(efo_zsu_device::zsu_map)
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x77ff) AM_MIRROR(0x0800) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("rombank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cedar_magnet_sound_map, AS_PROGRAM, 8, cedar_magnet_sound_device )
+ADDRESS_MAP_START(cedar_magnet_sound_device::cedar_magnet_sound_map)
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zsu_io, AS_IO, 8, efo_zsu_device )
+ADDRESS_MAP_START(efo_zsu_device::zsu_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
diff --git a/src/mame/audio/efo_zsu.h b/src/mame/audio/efo_zsu.h
index 1b32dde43e8..219cc1beb91 100644
--- a/src/mame/audio/efo_zsu.h
+++ b/src/mame/audio/efo_zsu.h
@@ -38,6 +38,8 @@ public:
DECLARE_WRITE8_MEMBER(sound_command_w);
DECLARE_WRITE8_MEMBER(adpcm_fifo_w);
+ void zsu_io(address_map &map);
+ void zsu_map(address_map &map);
protected:
efo_zsu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock);
@@ -76,6 +78,7 @@ public:
TIMER_CALLBACK_MEMBER(reset_assert_callback) override;
+ void cedar_magnet_sound_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/audio/exidy.cpp b/src/mame/audio/exidy.cpp
index ad8f4470ef2..c12df091648 100644
--- a/src/mame/audio/exidy.cpp
+++ b/src/mame/audio/exidy.cpp
@@ -726,7 +726,7 @@ void venture_sound_device::sound_stream_update(sound_stream &stream, stream_samp
-static ADDRESS_MAP_START( venture_audio_map, AS_PROGRAM, 8, venture_sound_device )
+ADDRESS_MAP_START(exidy_state::venture_audio_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0780) AM_RAM
AM_RANGE(0x0800, 0x087f) AM_MIRROR(0x0780) AM_DEVREADWRITE("riot", riot6532_device, read, write)
@@ -806,13 +806,13 @@ READ8_MEMBER( venture_sound_device::mtrap_voiceio_r )
}
-static ADDRESS_MAP_START( cvsd_map, AS_PROGRAM, 8, venture_sound_device )
+ADDRESS_MAP_START(exidy_state::cvsd_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cvsd_iomap, AS_IO, 8, venture_sound_device )
+ADDRESS_MAP_START(exidy_state::cvsd_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_DEVREADWRITE("custom", venture_sound_device, mtrap_voiceio_r, mtrap_voiceio_w)
ADDRESS_MAP_END
@@ -980,7 +980,7 @@ void victory_sound_device::sound_stream_update(sound_stream &stream, stream_samp
-static ADDRESS_MAP_START( victory_audio_map, AS_PROGRAM, 8, venture_sound_device )
+ADDRESS_MAP_START(victory_state::victory_audio_map)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0f00) AM_RAM
AM_RANGE(0x1000, 0x107f) AM_MIRROR(0x0f80) AM_DEVREADWRITE("riot", riot6532_device, read, write)
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
diff --git a/src/mame/audio/exidy440.cpp b/src/mame/audio/exidy440.cpp
index dfa6393db45..5b5a84297d4 100644
--- a/src/mame/audio/exidy440.cpp
+++ b/src/mame/audio/exidy440.cpp
@@ -852,7 +852,7 @@ void exidy440_sound_device::sound_stream_update(sound_stream &stream, stream_sam
*
*************************************/
-static ADDRESS_MAP_START( exidy440_audio_map, AS_PROGRAM, 8, exidy440_sound_device )
+ADDRESS_MAP_START(exidy440_state::exidy440_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_NOP
AM_RANGE(0x8000, 0x801f) AM_MIRROR(0x03e0) AM_DEVREADWRITE("custom", exidy440_sound_device, m6844_r, m6844_w)
AM_RANGE(0x8400, 0x840f) AM_MIRROR(0x03f0) AM_DEVREADWRITE("custom", exidy440_sound_device, sound_volume_r, sound_volume_w)
diff --git a/src/mame/audio/exidy440.h b/src/mame/audio/exidy440.h
index 739bf96f71a..6e90cdf9cb1 100644
--- a/src/mame/audio/exidy440.h
+++ b/src/mame/audio/exidy440.h
@@ -21,9 +21,6 @@ public:
void exidy440_sound_command(uint8_t param);
uint8_t exidy440_sound_command_ack();
-
- void exidy440_audio(machine_config &config);
-
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/flower.cpp b/src/mame/audio/flower.cpp
index 24c1db54ed5..23a109e1b24 100644
--- a/src/mame/audio/flower.cpp
+++ b/src/mame/audio/flower.cpp
@@ -24,7 +24,7 @@
DEFINE_DEVICE_TYPE(FLOWER_CUSTOM, flower_sound_device, "flower_sound", "Flower Custom Sound")
// TODO: AM_SELECT unsupported by DEVICE_ADDRESS_MAP, so we need a trampoline here
-static ADDRESS_MAP_START( regs_map, AS_IO, 8, flower_sound_device )
+ADDRESS_MAP_START(flower_sound_device::regs_map)
AM_RANGE(0x00, 0x03) AM_SELECT(0x38) AM_WRITE(frequency_w)
AM_RANGE(0x04, 0x04) AM_SELECT(0x38) AM_WRITE(repeat_w)
AM_RANGE(0x05, 0x05) AM_SELECT(0x38) AM_WRITE(unk_w)
@@ -45,7 +45,7 @@ flower_sound_device::flower_sound_device(const machine_config &mconfig, const ch
: device_t(mconfig, FLOWER_CUSTOM, tag, owner, clock),
device_sound_interface(mconfig, *this),
device_memory_interface(mconfig, *this),
- m_io_space_config("io", ENDIANNESS_LITTLE, 8, 7, 0, *ADDRESS_MAP_NAME(regs_map)),
+ m_io_space_config("io", ENDIANNESS_LITTLE, 8, 7, 0, address_map_constructor(FUNC(flower_sound_device::regs_map), this)),
m_stream(nullptr),
m_mixer_table(nullptr),
m_mixer_lookup(nullptr),
diff --git a/src/mame/audio/flower.h b/src/mame/audio/flower.h
index 7c3f02da773..ff57de1cb9d 100644
--- a/src/mame/audio/flower.h
+++ b/src/mame/audio/flower.h
@@ -28,8 +28,8 @@ public:
// I/O operations
DECLARE_WRITE8_MEMBER( lower_write );
DECLARE_WRITE8_MEMBER( upper_write );
-// virtual DECLARE_ADDRESS_MAP(lower_map, 8);
-// virtual DECLARE_ADDRESS_MAP(upper_map, 8);
+// virtual void lower_map(address_map &map);
+// virtual void upper_map(address_map &map);
DECLARE_WRITE8_MEMBER( frequency_w );
DECLARE_WRITE8_MEMBER( repeat_w );
DECLARE_WRITE8_MEMBER( unk_w );
@@ -37,6 +37,7 @@ public:
DECLARE_WRITE8_MEMBER( start_address_w );
DECLARE_WRITE8_MEMBER( sample_trigger_w );
+ void regs_map(address_map &map);
protected:
// device-level overrides
//virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/mame/audio/gottlieb.cpp b/src/mame/audio/gottlieb.cpp
index 3e7234a847f..3880398d853 100644
--- a/src/mame/audio/gottlieb.cpp
+++ b/src/mame/audio/gottlieb.cpp
@@ -77,7 +77,7 @@ WRITE8_MEMBER( gottlieb_sound_r0_device::write )
// audio CPU map
//-------------------------------------------------
-static ADDRESS_MAP_START( gottlieb_sound_r0_map, AS_PROGRAM, 8, gottlieb_sound_r0_device )
+ADDRESS_MAP_START(gottlieb_sound_r0_device::gottlieb_sound_r0_map)
ADDRESS_MAP_GLOBAL_MASK(0x0fff)
AM_RANGE(0x0000, 0x003f) AM_RAM AM_MIRROR(0x1c0)
AM_RANGE(0x0200, 0x020f) AM_DEVREADWRITE("r6530", mos6530_device, read, write)
@@ -265,7 +265,7 @@ WRITE_LINE_MEMBER( gottlieb_sound_r1_device::votrax_request )
// audio CPU map
//-------------------------------------------------
-static ADDRESS_MAP_START( gottlieb_sound_r1_map, AS_PROGRAM, 8, gottlieb_sound_r1_device )
+ADDRESS_MAP_START(gottlieb_sound_r1_device::gottlieb_sound_r1_map)
// A15 not decoded except in expansion socket
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0d80) AM_RAM
@@ -615,7 +615,7 @@ WRITE8_MEMBER( gottlieb_sound_r2_device::sp0250_latch_w )
// sound CPU address map
//-------------------------------------------------
-static ADDRESS_MAP_START( gottlieb_sound_r2_map, AS_PROGRAM, 8, gottlieb_sound_r2_device )
+ADDRESS_MAP_START(gottlieb_sound_r2_device::gottlieb_sound_r2_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x3c00) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x3ffe) AM_DEVWRITE("dacvol", dac_byte_interface, write)
AM_RANGE(0x4001, 0x4001) AM_MIRROR(0x3ffe) AM_DEVWRITE("dac", dac_byte_interface, write)
@@ -628,7 +628,7 @@ ADDRESS_MAP_END
// sppech CPU address map
//-------------------------------------------------
-static ADDRESS_MAP_START( gottlieb_speech_r2_map, AS_PROGRAM, 8, gottlieb_sound_r2_device )
+ADDRESS_MAP_START(gottlieb_sound_r2_device::gottlieb_speech_r2_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x1fff) AM_WRITE(sp0250_latch_w)
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x1fff) AM_WRITE(speech_control_w)
diff --git a/src/mame/audio/gottlieb.h b/src/mame/audio/gottlieb.h
index 53442656997..4b444185879 100644
--- a/src/mame/audio/gottlieb.h
+++ b/src/mame/audio/gottlieb.h
@@ -52,6 +52,7 @@ public:
// internal communications
DECLARE_INPUT_CHANGED_MEMBER(audio_nmi);
+ void gottlieb_sound_r0_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -85,6 +86,7 @@ public:
DECLARE_WRITE8_MEMBER( speech_clock_dac_w );
DECLARE_WRITE_LINE_MEMBER( votrax_request );
+ void gottlieb_sound_r1_map(address_map &map);
protected:
gottlieb_sound_r1_device(
const machine_config &mconfig,
@@ -151,6 +153,8 @@ public:
DECLARE_WRITE8_MEMBER( sp0250_latch_w );
DECLARE_WRITE8_MEMBER( psg_latch_w );
+ void gottlieb_sound_r2_map(address_map &map);
+ void gottlieb_speech_r2_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/audio/harddriv.cpp b/src/mame/audio/harddriv.cpp
index d5025bcce21..93942157988 100644
--- a/src/mame/audio/harddriv.cpp
+++ b/src/mame/audio/harddriv.cpp
@@ -391,7 +391,7 @@ READ16_MEMBER(harddriv_sound_board_device::hdsnddsp_compare_r)
return 0;
}
-static ADDRESS_MAP_START( driversnd_68k_map, AS_PROGRAM, 16, harddriv_sound_board_device )
+ADDRESS_MAP_START(harddriv_sound_board_device::driversnd_68k_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0xff0000, 0xff0fff) AM_READWRITE(hdsnd68k_data_r, hdsnd68k_data_w)
@@ -405,7 +405,7 @@ static ADDRESS_MAP_START( driversnd_68k_map, AS_PROGRAM, 16, harddriv_sound_boar
ADDRESS_MAP_END
-static ADDRESS_MAP_START( driversnd_dsp_program_map, AS_PROGRAM, 16, harddriv_sound_board_device )
+ADDRESS_MAP_START(harddriv_sound_board_device::driversnd_dsp_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000, 0xfff) AM_RAM AM_SHARE("sounddsp_ram")
ADDRESS_MAP_END
@@ -413,7 +413,7 @@ ADDRESS_MAP_END
/* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */
-static ADDRESS_MAP_START( driversnd_dsp_io_map, AS_IO, 16, harddriv_sound_board_device )
+ADDRESS_MAP_START(harddriv_sound_board_device::driversnd_dsp_io_map)
AM_RANGE(0, 0) AM_READ(hdsnddsp_rom_r) AM_WRITE(hdsnddsp_dac_w)
AM_RANGE(1, 1) AM_READ(hdsnddsp_comram_r)
AM_RANGE(2, 2) AM_READ(hdsnddsp_compare_r)
diff --git a/src/mame/audio/hng64.cpp b/src/mame/audio/hng64.cpp
index e6f1c8a89b2..ca9cc49cf92 100644
--- a/src/mame/audio/hng64.cpp
+++ b/src/mame/audio/hng64.cpp
@@ -175,7 +175,7 @@ void hng64_state::reset_sound()
// ----------------------------------------------
-static ADDRESS_MAP_START( hng_sound_map, AS_PROGRAM, 16, hng64_state )
+ADDRESS_MAP_START(hng64_state::hng_sound_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAMBANK("bank0")
AM_RANGE(0x10000, 0x1ffff) AM_RAMBANK("bank1")
AM_RANGE(0x20000, 0x2ffff) AM_RAMBANK("bank2")
@@ -301,7 +301,7 @@ READ16_MEMBER(hng64_state::sound_comms_r)
return 0;
}
-static ADDRESS_MAP_START( hng_sound_io, AS_IO, 16, hng64_state )
+ADDRESS_MAP_START(hng64_state::hng_sound_io)
AM_RANGE(0x0000, 0x0007) AM_DEVREADWRITE("l7a1045", l7a1045_sound_device, l7a1045_sound_r, l7a1045_sound_w )
AM_RANGE(0x0008, 0x0009) AM_READWRITE( hng64_sound_port_0008_r, hng64_sound_port_0008_w )
diff --git a/src/mame/audio/hyprolyb.h b/src/mame/audio/hyprolyb.h
index ca87ee7f022..6c5bcc177b3 100644
--- a/src/mame/audio/hyprolyb.h
+++ b/src/mame/audio/hyprolyb.h
@@ -23,7 +23,6 @@ public:
void vck_callback( int st );
void hyprolyb_adpcm(machine_config &config);
-
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/irem.cpp b/src/mame/audio/irem.cpp
index 5aa0dd025d2..57940dfe1db 100644
--- a/src/mame/audio/irem.cpp
+++ b/src/mame/audio/irem.cpp
@@ -358,14 +358,14 @@ DISCRETE_SOUND_END
/* complete address map verified from Moon Patrol/10 Yard Fight schematics */
/* large map uses 8k ROMs, small map uses 4k ROMs; this is selected via a jumper */
-static ADDRESS_MAP_START( m52_small_sound_map, AS_PROGRAM, 8, irem_audio_device )
+ADDRESS_MAP_START(irem_audio_device::m52_small_sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x0fff) AM_WRITE(m52_adpcm_w)
AM_RANGE(0x1000, 0x1fff) AM_WRITE(sound_irq_ack_w)
AM_RANGE(0x2000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m52_large_sound_map, AS_PROGRAM, 8, irem_audio_device )
+ADDRESS_MAP_START(irem_audio_device::m52_large_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_WRITE(m52_adpcm_w)
AM_RANGE(0x2000, 0x3fff) AM_WRITE(sound_irq_ack_w)
AM_RANGE(0x4000, 0xffff) AM_ROM
@@ -373,14 +373,14 @@ ADDRESS_MAP_END
/* complete address map verified from Kid Niki schematics */
-static ADDRESS_MAP_START( m62_sound_map, AS_PROGRAM, 8, irem_audio_device )
+ADDRESS_MAP_START(irem_audio_device::m62_sound_map)
AM_RANGE(0x0800, 0x0800) AM_MIRROR(0xf7fc) AM_WRITE(sound_irq_ack_w)
AM_RANGE(0x0801, 0x0802) AM_MIRROR(0xf7fc) AM_WRITE(m62_adpcm_w)
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( irem_sound_portmap, AS_IO, 8, irem_audio_device )
+ADDRESS_MAP_START(irem_audio_device::irem_sound_portmap)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(m6803_port1_r, m6803_port1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(m6803_port2_r, m6803_port2_w)
ADDRESS_MAP_END
diff --git a/src/mame/audio/irem.h b/src/mame/audio/irem.h
index 7f16f5b95c4..cbe85dd2853 100644
--- a/src/mame/audio/irem.h
+++ b/src/mame/audio/irem.h
@@ -28,6 +28,10 @@ public:
DECLARE_WRITE8_MEMBER( ay8910_45M_portb_w );
DECLARE_WRITE8_MEMBER( ay8910_45L_porta_w );
+ void irem_sound_portmap(address_map &map);
+ void m52_large_sound_map(address_map &map);
+ void m52_small_sound_map(address_map &map);
+ void m62_sound_map(address_map &map);
protected:
irem_audio_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/mame/audio/jedi.cpp b/src/mame/audio/jedi.cpp
index d912fc821a2..7b41e5f166b 100644
--- a/src/mame/audio/jedi.cpp
+++ b/src/mame/audio/jedi.cpp
@@ -163,7 +163,7 @@ WRITE8_MEMBER(jedi_state::speech_reset_w)
*
*************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, jedi_state )
+ADDRESS_MAP_START(jedi_state::audio_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x080f) AM_MIRROR(0x07c0) AM_DEVREADWRITE("pokey1", pokey_device, read, write)
AM_RANGE(0x0810, 0x081f) AM_MIRROR(0x07c0) AM_DEVREADWRITE("pokey2", pokey_device, read, write)
diff --git a/src/mame/audio/leland.cpp b/src/mame/audio/leland.cpp
index d3c8705045c..bca2b1dd62c 100644
--- a/src/mame/audio/leland.cpp
+++ b/src/mame/audio/leland.cpp
@@ -809,54 +809,3 @@ WRITE8_MEMBER( leland_80186_sound_device::ataxx_80186_control_w )
((data & 0x08) << 1);
leland_80186_control_w(space, offset, modified);
}
-
-
-
-/*************************************
- *
- * Sound CPU memory handlers
- *
- *************************************/
-
-ADDRESS_MAP_START( leland_80186_map_program, AS_PROGRAM, 16, leland_80186_sound_device )
- AM_RANGE(0x00000, 0x03fff) AM_MIRROR(0x1c000) AM_RAM
- AM_RANGE(0x20000, 0xfffff) AM_ROM
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START( ataxx_80186_map_io, AS_IO, 16, leland_80186_sound_device )
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START( redline_80186_map_io, AS_IO, 16, leland_80186_sound_device )
- AM_RANGE(0x0000, 0xffff) AM_DEVWRITE("custom", redline_80186_sound_device, redline_dac_w)
-ADDRESS_MAP_END
-
-
-ADDRESS_MAP_START( leland_80186_map_io, AS_IO, 16, leland_80186_sound_device )
- AM_RANGE(0x0000, 0xffff) AM_DEVWRITE("custom", leland_80186_sound_device, dac_w)
-ADDRESS_MAP_END
-
-
-/************************************************************************
-
-Memory configurations:
-
- Redline Racer:
- FFDF7:80186 upper chip select = E03C -> E0000-FFFFF, 128k long
- FFDF7:80186 lower chip select = 00FC -> 00000-00FFF, 4k long
- FFDF7:80186 peripheral chip select = 013C -> 01000, 01080, 01100, 01180, 01200, 01280, 01300
- FFDF7:80186 middle chip select = 81FC -> 80000-C0000, 64k chunks, 256k total
- FFDF7:80186 middle P chip select = A0FC
-
- Quarterback, Team Quarterback, AAFB, Super Offroad, Track Pack, Pigout, Viper:
- FFDFA:80186 upper chip select = E03C -> E0000-FFFFF, 128k long
- FFDFA:80186 peripheral chip select = 203C -> 20000, 20080, 20100, 20180, 20200, 20280, 20300
- FFDFA:80186 middle chip select = 01FC -> 00000-7FFFF, 128k chunks, 512k total
- FFDFA:80186 middle P chip select = C0FC
-
- Ataxx, Indy Heat, World Soccer Finals:
- FFD9D:80186 upper chip select = E03C -> E0000-FFFFF, 128k long
- FFD9D:80186 peripheral chip select = 043C -> 04000, 04080, 04100, 04180, 04200, 04280, 04300
- FFD9D:80186 middle chip select = 01FC -> 00000-7FFFF, 128k chunks, 512k total
- FFD9D:80186 middle P chip select = C0BC
-
-************************************************************************/
diff --git a/src/mame/audio/leland.h b/src/mame/audio/leland.h
index 657d907affa..b8c98da6f45 100644
--- a/src/mame/audio/leland.h
+++ b/src/mame/audio/leland.h
@@ -134,9 +134,4 @@ DECLARE_DEVICE_TYPE(REDLINE_80186, redline_80186_sound_device)
DECLARE_DEVICE_TYPE(ATAXX_80186, ataxx_80186_sound_device)
DECLARE_DEVICE_TYPE(WSF_80186, wsf_80186_sound_device)
-ADDRESS_MAP_EXTERN(leland_80186_map_program, 16);
-ADDRESS_MAP_EXTERN(leland_80186_map_io, 16);
-ADDRESS_MAP_EXTERN(redline_80186_map_io, 16);
-ADDRESS_MAP_EXTERN(ataxx_80186_map_io, 16);
-
#endif // MAME_AUDIO_LELAND_H
diff --git a/src/mame/audio/mario.cpp b/src/mame/audio/mario.cpp
index d56d87377fa..e84a3c62504 100644
--- a/src/mame/audio/mario.cpp
+++ b/src/mame/audio/mario.cpp
@@ -604,16 +604,16 @@ WRITE8_MEMBER(mario_state::mario_sh3_w)
*
*************************************/
-static ADDRESS_MAP_START( mario_sound_map, AS_PROGRAM, 8, mario_state )
+ADDRESS_MAP_START(mario_state::mario_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_ROMBANK("bank1") AM_REGION("audiocpu", 0)
AM_RANGE(0x0800, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mario_sound_io_map, AS_IO, 8, mario_state )
+ADDRESS_MAP_START(mario_state::mario_sound_io_map)
AM_RANGE(0x00, 0xff) AM_READ(mario_sh_tune_r) AM_WRITE(mario_sh_sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( masao_sound_map, AS_PROGRAM, 8, mario_state )
+ADDRESS_MAP_START(mario_state::masao_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
diff --git a/src/mame/audio/midway.cpp b/src/mame/audio/midway.cpp
index 3fb238f7903..aa1aa91b51e 100644
--- a/src/mame/audio/midway.cpp
+++ b/src/mame/audio/midway.cpp
@@ -354,7 +354,7 @@ void midway_ssio_device::update_volumes()
//-------------------------------------------------
// address map verified from schematics
-static ADDRESS_MAP_START( ssio_map, AS_PROGRAM, 8, midway_ssio_device )
+ADDRESS_MAP_START(midway_ssio_device::ssio_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x0c00) AM_RAM
@@ -561,7 +561,7 @@ WRITE_LINE_MEMBER(midway_sounds_good_device::irq_w)
//-------------------------------------------------
// address map determined by PAL; not verified
-static ADDRESS_MAP_START( soundsgood_map, AS_PROGRAM, 16, midway_sounds_good_device )
+ADDRESS_MAP_START(midway_sounds_good_device::soundsgood_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x7ffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
@@ -716,7 +716,7 @@ WRITE_LINE_MEMBER(midway_turbo_cheap_squeak_device::irq_w)
//-------------------------------------------------
// address map verified from schematics
-static ADDRESS_MAP_START( turbocs_map, AS_PROGRAM, 8, midway_turbo_cheap_squeak_device )
+ADDRESS_MAP_START(midway_turbo_cheap_squeak_device::turbocs_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x3800) AM_RAM
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x3ffc) AM_DEVREADWRITE("pia", pia6821_device, read_alt, write_alt)
@@ -903,7 +903,7 @@ WRITE_LINE_MEMBER(midway_squawk_n_talk_device::irq_w)
// address map verified from schematics
// note that jumpers control the ROM sizes; if these are changed, use the alternate
// address map below
-static ADDRESS_MAP_START( squawkntalk_map, AS_PROGRAM, 8, midway_squawk_n_talk_device )
+ADDRESS_MAP_START(midway_squawk_n_talk_device::squawkntalk_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM // internal RAM
AM_RANGE(0x0080, 0x0083) AM_MIRROR(0x4f6c) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
@@ -915,7 +915,7 @@ ADDRESS_MAP_END
// alternate address map if the ROM jumpers are changed to support a smaller
// ROM size of 2k
#ifdef UNUSED_FUNCTION
-static ADDRESS_MAP_START( squawkntalk_alt_map, AS_PROGRAM, 8, midway_squawk_n_talk_device )
+ADDRESS_MAP_START(midway_squawk_n_talk_device::squawkntalk_alt_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM // internal RAM
AM_RANGE(0x0080, 0x0083) AM_MIRROR(0x676c) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
diff --git a/src/mame/audio/midway.h b/src/mame/audio/midway.h
index 1637c79d4ed..006e0518c25 100644
--- a/src/mame/audio/midway.h
+++ b/src/mame/audio/midway.h
@@ -63,6 +63,7 @@ public:
DECLARE_WRITE8_MEMBER(status_w);
DECLARE_READ8_MEMBER(data_r);
+ void ssio_map(address_map &map);
protected:
// device-level overrides
virtual const tiny_rom_entry *device_rom_region() const override;
@@ -123,6 +124,7 @@ public:
DECLARE_WRITE8_MEMBER(write);
DECLARE_WRITE_LINE_MEMBER(reset_write);
+ void soundsgood_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -161,6 +163,7 @@ public:
DECLARE_WRITE8_MEMBER(write);
DECLARE_WRITE_LINE_MEMBER(reset_write);
+ void turbocs_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -201,6 +204,8 @@ public:
// internal communications
DECLARE_WRITE8_MEMBER(dac_w);
+ void squawkntalk_alt_map(address_map &map);
+ void squawkntalk_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/audio/n8080.cpp b/src/mame/audio/n8080.cpp
index 0840c486d0a..7e42395a33d 100644
--- a/src/mame/audio/n8080.cpp
+++ b/src/mame/audio/n8080.cpp
@@ -460,13 +460,13 @@ SOUND_RESET_MEMBER(n8080_state,helifire)
}
-static ADDRESS_MAP_START( n8080_sound_cpu_map, AS_PROGRAM, 8, n8080_state )
+ADDRESS_MAP_START(n8080_state::n8080_sound_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x3ff)
AM_RANGE(0x0000, 0x03ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( helifire_sound_io_map, AS_IO, 8, n8080_state )
+ADDRESS_MAP_START(n8080_state::helifire_sound_io_map)
AM_RANGE(0x00, 0x7f) AM_READ(helifire_8035_external_ram_r)
ADDRESS_MAP_END
diff --git a/src/mame/audio/nichisnd.cpp b/src/mame/audio/nichisnd.cpp
index 5d9fedf432e..e00359b8a5b 100644
--- a/src/mame/audio/nichisnd.cpp
+++ b/src/mame/audio/nichisnd.cpp
@@ -41,13 +41,13 @@ nichisnd_device::nichisnd_device(const machine_config &mconfig, const char *tag,
{
}
-static ADDRESS_MAP_START( nichisnd_map, AS_PROGRAM, 8, nichisnd_device )
+ADDRESS_MAP_START(nichisnd_device::nichisnd_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM AM_REGION("audiorom",0)
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nichisnd_io_map, AS_IO, 8, nichisnd_device )
+ADDRESS_MAP_START(nichisnd_device::nichisnd_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_DEVWRITE("ymsnd", ym3812_device, write)
ADDRESS_MAP_END
diff --git a/src/mame/audio/nichisnd.h b/src/mame/audio/nichisnd.h
index 6343a3832dd..d653194e1a3 100644
--- a/src/mame/audio/nichisnd.h
+++ b/src/mame/audio/nichisnd.h
@@ -45,6 +45,8 @@ public:
DECLARE_WRITE8_MEMBER( soundbank_w );
DECLARE_WRITE8_MEMBER( sound_host_command_w );
+ void nichisnd_io_map(address_map &map);
+ void nichisnd_map(address_map &map);
protected:
// device-level overrides
//virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/mame/audio/qix.cpp b/src/mame/audio/qix.cpp
index aebf53611e7..49d779f4e93 100644
--- a/src/mame/audio/qix.cpp
+++ b/src/mame/audio/qix.cpp
@@ -154,7 +154,7 @@ WRITE_LINE_MEMBER(qix_state::qix_pia_sint)
*
*************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::audio_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x5ffc) AM_DEVREADWRITE("sndpia2", pia6821_device, read, write)
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x3ffc) AM_DEVREADWRITE("sndpia1", pia6821_device, read, write)
diff --git a/src/mame/audio/rax.cpp b/src/mame/audio/rax.cpp
index bc62cfa53dd..7e810132b78 100644
--- a/src/mame/audio/rax.cpp
+++ b/src/mame/audio/rax.cpp
@@ -272,19 +272,19 @@ WRITE16_MEMBER( acclaim_rax_device::host_w )
*
*************************************/
-static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, acclaim_rax_device )
+ADDRESS_MAP_START(acclaim_rax_device::adsp_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("adsp_pram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, acclaim_rax_device )
+ADDRESS_MAP_START(acclaim_rax_device::adsp_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("databank")
AM_RANGE(0x2000, 0x3fdf) AM_RAM // Internal RAM
AM_RANGE(0x3fe0, 0x3fff) AM_READWRITE(adsp_control_r, adsp_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_io_map, AS_IO, 16, acclaim_rax_device )
+ADDRESS_MAP_START(acclaim_rax_device::adsp_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0000) AM_WRITE(ram_bank_w)
AM_RANGE(0x0001, 0x0001) AM_WRITE(rom_bank_w)
diff --git a/src/mame/audio/rax.h b/src/mame/audio/rax.h
index a5ef5079061..7937523ddce 100644
--- a/src/mame/audio/rax.h
+++ b/src/mame/audio/rax.h
@@ -39,6 +39,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER( dma_timer_callback );
+ void adsp_data_map(address_map &map);
+ void adsp_io_map(address_map &map);
+ void adsp_program_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/redalert.cpp b/src/mame/audio/redalert.cpp
index ac54ee242d7..c17def98da4 100644
--- a/src/mame/audio/redalert.cpp
+++ b/src/mame/audio/redalert.cpp
@@ -114,7 +114,7 @@ WRITE8_MEMBER(redalert_state::redalert_ay8910_latch_2_w)
m_ay8910_latch_2 = data;
}
-static ADDRESS_MAP_START( redalert_audio_map, AS_PROGRAM, 8, redalert_state )
+ADDRESS_MAP_START(redalert_state::redalert_audio_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_MIRROR(0x0ffe) AM_READNOP AM_WRITE(redalert_AY8910_w)
@@ -161,7 +161,7 @@ READ_LINE_MEMBER(redalert_state::sid_callback)
}
-static ADDRESS_MAP_START( redalert_voice_map, AS_PROGRAM, 8, redalert_state )
+ADDRESS_MAP_START(redalert_state::redalert_voice_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_NOP
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x3c00) AM_RAM
@@ -313,7 +313,7 @@ WRITE8_MEMBER(redalert_state::demoneye_ay8910_data_w)
}
-static ADDRESS_MAP_START( demoneye_audio_map, AS_PROGRAM, 8, redalert_state )
+ADDRESS_MAP_START(redalert_state::demoneye_audio_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0500, 0x0503) AM_DEVREADWRITE("sndpia", pia6821_device, read, write)
diff --git a/src/mame/audio/s11c_bg.cpp b/src/mame/audio/s11c_bg.cpp
index aef8dce6e48..0d7d2842feb 100644
--- a/src/mame/audio/s11c_bg.cpp
+++ b/src/mame/audio/s11c_bg.cpp
@@ -26,7 +26,7 @@ s11c_bg_device::s11c_bg_device(const machine_config &mconfig, const char *tag, d
{
}
-static ADDRESS_MAP_START( s11c_bg_map, AS_PROGRAM, 8, s11c_bg_device )
+ADDRESS_MAP_START(s11c_bg_device::s11c_bg_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia40", pia6821_device, read, write)
diff --git a/src/mame/audio/s11c_bg.h b/src/mame/audio/s11c_bg.h
index b333049e153..41b443551f2 100644
--- a/src/mame/audio/s11c_bg.h
+++ b/src/mame/audio/s11c_bg.h
@@ -44,6 +44,7 @@ public:
static void static_set_romregion(device_t &device, const char *tag);
+ void s11c_bg_map(address_map &map);
protected:
// overrides
virtual void device_start() override;
diff --git a/src/mame/audio/scramble.cpp b/src/mame/audio/scramble.cpp
index e079f4051a1..4864b4e3b4f 100644
--- a/src/mame/audio/scramble.cpp
+++ b/src/mame/audio/scramble.cpp
@@ -276,12 +276,12 @@ WRITE8_MEMBER( scramble_state::ad2083_tms5110_ctrl_w )
m_tmsprom->enable_w(1);
}
-static ADDRESS_MAP_START( ad2083_sound_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::ad2083_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ad2083_sound_io_map, AS_IO, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::ad2083_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_WRITE(ad2083_tms5110_ctrl_w)
AM_RANGE(0x10, 0x10) AM_DEVWRITE("ay1", ay8910_device, address_w)
diff --git a/src/mame/audio/segam1audio.cpp b/src/mame/audio/segam1audio.cpp
index bdcaa138877..c6abf062f49 100644
--- a/src/mame/audio/segam1audio.cpp
+++ b/src/mame/audio/segam1audio.cpp
@@ -22,7 +22,7 @@
#define MPCMBANK1_TAG "m1pcm1_bank"
#define MPCMBANK2_TAG "m1pcm2_bank"
-static ADDRESS_MAP_START( segam1audio_map, AS_PROGRAM, 16, segam1audio_device )
+ADDRESS_MAP_START(segam1audio_device::segam1audio_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x09ffff) AM_ROM AM_REGION(M68000_TAG, 0x20000) // mirror of upper ROM socket
AM_RANGE(0xc20000, 0xc20001) AM_DEVREADWRITE8(UART_TAG, i8251_device, data_r, data_w, 0x00ff)
@@ -36,12 +36,12 @@ static ADDRESS_MAP_START( segam1audio_map, AS_PROGRAM, 16, segam1audio_device )
AM_RANGE(0xf00000, 0xf0ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpcm1_map, 0, 8, segam1audio_device )
+ADDRESS_MAP_START(segam1audio_device::mpcm1_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK(MPCMBANK1_TAG)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpcm2_map, 0, 8, segam1audio_device )
+ADDRESS_MAP_START(segam1audio_device::mpcm2_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK(MPCMBANK2_TAG)
ADDRESS_MAP_END
diff --git a/src/mame/audio/segam1audio.h b/src/mame/audio/segam1audio.h
index 2d3506dfd6b..5b793d388b6 100644
--- a/src/mame/audio/segam1audio.h
+++ b/src/mame/audio/segam1audio.h
@@ -40,6 +40,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_txd);
+ void mpcm1_map(address_map &map);
+ void mpcm2_map(address_map &map);
+ void segam1audio_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/segasnd.cpp b/src/mame/audio/segasnd.cpp
index 3d6549f7e4c..4b30c819844 100644
--- a/src/mame/audio/segasnd.cpp
+++ b/src/mame/audio/segasnd.cpp
@@ -200,12 +200,12 @@ void speech_sound_device::sound_stream_update(sound_stream &stream, stream_sampl
*
*************************************/
-static ADDRESS_MAP_START( speech_map, AS_PROGRAM, 8, speech_sound_device )
+ADDRESS_MAP_START(segag80snd_common::speech_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( speech_portmap, AS_IO, 8, speech_sound_device )
+ADDRESS_MAP_START(segag80snd_common::speech_portmap)
AM_RANGE(0x00, 0xff) AM_DEVREAD("segaspeech", speech_sound_device, rom_r)
AM_RANGE(0x00, 0xff) AM_DEVWRITE("speech", sp0250_device, write)
ADDRESS_MAP_END
@@ -217,26 +217,7 @@ ADDRESS_MAP_END
*
*************************************/
-MACHINE_CONFIG_START(segag80r_state::sega_speech_board)
-
- /* CPU for the speech board */
- MCFG_CPU_ADD("audiocpu", I8035, SPEECH_MASTER_CLOCK) /* divide by 15 in CPU */
- MCFG_CPU_PROGRAM_MAP(speech_map)
- MCFG_CPU_IO_MAP(speech_portmap)
- MCFG_MCS48_PORT_P1_IN_CB(DEVREAD8("segaspeech", speech_sound_device, p1_r))
- MCFG_MCS48_PORT_P1_OUT_CB(DEVWRITE8("segaspeech", speech_sound_device, p1_w))
- MCFG_MCS48_PORT_P2_OUT_CB(DEVWRITE8("segaspeech", speech_sound_device, p2_w))
- MCFG_MCS48_PORT_T0_IN_CB(DEVREADLINE("segaspeech", speech_sound_device, t0_r))
- MCFG_MCS48_PORT_T1_IN_CB(DEVREADLINE("segaspeech", speech_sound_device, t1_r))
-
- /* sound hardware */
- MCFG_SOUND_ADD("segaspeech", SEGASPEECH, 0)
- MCFG_SOUND_ADD("speech", SP0250, SPEECH_MASTER_CLOCK)
- MCFG_SP0250_DRQ_CALLBACK(DEVWRITELINE("segaspeech", speech_sound_device, drq_w))
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
-MACHINE_CONFIG_END
-
-MACHINE_CONFIG_START(segag80v_state::sega_speech_board)
+MACHINE_CONFIG_START(segag80snd_common::sega_speech_board)
/* CPU for the speech board */
MCFG_CPU_ADD("audiocpu", I8035, SPEECH_MASTER_CLOCK) /* divide by 15 in CPU */
@@ -865,11 +846,11 @@ void usb_sound_device::sound_stream_update(sound_stream &stream, stream_sample_t
*
*************************************/
-static ADDRESS_MAP_START( usb_map, AS_PROGRAM, 8, usb_sound_device )
+ADDRESS_MAP_START(usb_sound_device::usb_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("pgmram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( usb_portmap, AS_IO, 8, usb_sound_device )
+ADDRESS_MAP_START(usb_sound_device::usb_portmap)
AM_RANGE(0x00, 0xff) AM_READWRITE(workram_r, workram_w) AM_SHARE("workram")
ADDRESS_MAP_END
@@ -900,7 +881,7 @@ usb_rom_sound_device::usb_rom_sound_device(const machine_config &mconfig, const
{
}
-static ADDRESS_MAP_START( usb_map_rom, AS_PROGRAM, 8, usb_sound_device )
+ADDRESS_MAP_START(usb_sound_device::usb_map_rom)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION(":usbcpu", 0)
ADDRESS_MAP_END
diff --git a/src/mame/audio/segasnd.h b/src/mame/audio/segasnd.h
index c40a68afa3c..36f526eab41 100644
--- a/src/mame/audio/segasnd.h
+++ b/src/mame/audio/segasnd.h
@@ -13,6 +13,19 @@
#include "cpu/mcs48/mcs48.h"
#include "machine/timer.h"
+class segag80snd_common : public driver_device {
+public:
+ segag80snd_common(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ {}
+
+ virtual ~segag80snd_common() = default;
+
+ void sega_speech_board(machine_config &config);
+
+ void speech_map(address_map &map);
+ void speech_portmap(address_map &map);
+};
class speech_sound_device : public device_t, public device_sound_interface
{
@@ -31,8 +44,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(drq_w);
- void sega_speech_board(machine_config &config);
-
protected:
// device-level overrides
virtual void device_start() override;
@@ -70,6 +81,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER( increment_t1_clock_timer_cb );
+ void usb_map(address_map &map);
+ void usb_map_rom(address_map &map);
+ void usb_portmap(address_map &map);
protected:
usb_sound_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock);
diff --git a/src/mame/audio/seibu.cpp b/src/mame/audio/seibu.cpp
index 2a236468b58..f981c8b818c 100644
--- a/src/mame/audio/seibu.cpp
+++ b/src/mame/audio/seibu.cpp
@@ -297,7 +297,7 @@ WRITE16_MEMBER( seibu_sound_device::main_mustb_w )
/***************************************************************************/
-ADDRESS_MAP_START( seibu_sound_map, AS_PROGRAM, 8, seibu_sound_device )
+ADDRESS_MAP_START(seibu_sound_common::seibu_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
diff --git a/src/mame/audio/seibu.h b/src/mame/audio/seibu.h
index edbd755edec..451ef63fc96 100644
--- a/src/mame/audio/seibu.h
+++ b/src/mame/audio/seibu.h
@@ -32,7 +32,11 @@
#include "cpu/z80/z80.h"
#include "sound/okiadpcm.h"
-ADDRESS_MAP_EXTERN(seibu_sound_map, 8);
+class seibu_sound_common {
+public:
+ virtual ~seibu_sound_common() = default;
+ void seibu_sound_map(address_map &map);
+};
class seibu_sound_device : public device_t
{
diff --git a/src/mame/audio/t5182.cpp b/src/mame/audio/t5182.cpp
index fc209d47f94..d4fb0b597d0 100644
--- a/src/mame/audio/t5182.cpp
+++ b/src/mame/audio/t5182.cpp
@@ -335,7 +335,7 @@ ioport_constructor t5182_device::device_input_ports() const
// 90XX reset
// A0XX
// rest unused
-ADDRESS_MAP_START( t5182_map, AS_PROGRAM, 8, t5182_device )
+ADDRESS_MAP_START(t5182_device::t5182_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("cpu", 0) // internal ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_MIRROR(0x1800) // internal RAM
AM_RANGE(0x4000, 0x40ff) AM_RAM AM_MIRROR(0x3F00) AM_SHARE("sharedram") // 2016 with four 74ls245s, one each for main and t5182 address and data. pins 23, 22, 20, 19, 18 are all tied low so only 256 bytes are usable
@@ -353,7 +353,7 @@ ADDRESS_MAP_END
// 30 R coin inputs (bits 0 and 1, active high)
// 40 W external ROM banking? (the only 0 bit enables a ROM)
// 50 W test mode status flags (bit 0 = ROM test fail, bit 1 = RAM test fail, bit 2 = YM2151 IRQ not received)
-ADDRESS_MAP_START( t5182_io, AS_IO, 8, t5182_device )
+ADDRESS_MAP_START(t5182_device::t5182_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE(":ymsnd", ym2151_device, read, write)
AM_RANGE(0x10, 0x10) AM_WRITE(sharedram_semaphore_snd_acquire_w)
diff --git a/src/mame/audio/t5182.h b/src/mame/audio/t5182.h
index d4d8f341f59..d104e41d989 100644
--- a/src/mame/audio/t5182.h
+++ b/src/mame/audio/t5182.h
@@ -42,6 +42,8 @@ public:
DECLARE_WRITE8_MEMBER(ym2151_irq_ack_w);
DECLARE_WRITE8_MEMBER(cpu_irq_ack_w);
+ void t5182_io(address_map &map);
+ void t5182_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/taito_en.cpp b/src/mame/audio/taito_en.cpp
index af48cd7c95f..8c91730d351 100644
--- a/src/mame/audio/taito_en.cpp
+++ b/src/mame/audio/taito_en.cpp
@@ -197,7 +197,7 @@ WRITE16_MEMBER( taito_en_device::es5510_dsp_w )
*
*************************************/
-static ADDRESS_MAP_START( en_sound_map, AS_PROGRAM, 16, taito_en_device )
+ADDRESS_MAP_START(taito_en_device::en_sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_MIRROR(0x30000) AM_SHARE("share1")
AM_RANGE(0x140000, 0x140fff) AM_DEVREADWRITE8("dpram", mb8421_device, right_r, right_w, 0xff00)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE("ensoniq", es5505_device, read, write)
diff --git a/src/mame/audio/taito_en.h b/src/mame/audio/taito_en.h
index 8f71884484b..d4b20b3103a 100644
--- a/src/mame/audio/taito_en.h
+++ b/src/mame/audio/taito_en.h
@@ -29,6 +29,7 @@ public:
DECLARE_READ16_MEMBER( es5510_dsp_r );
DECLARE_WRITE16_MEMBER( es5510_dsp_w );
+ void en_sound_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/taito_zm.cpp b/src/mame/audio/taito_zm.cpp
index 8e8f0b59b67..28c1063ec5f 100644
--- a/src/mame/audio/taito_zm.cpp
+++ b/src/mame/audio/taito_zm.cpp
@@ -28,6 +28,7 @@ TODO:
#include "emu.h"
#include "taito_zm.h"
+#include "machine/intelfsh.h"
/**************************************************************************/
@@ -42,7 +43,8 @@ taito_zoom_device::taito_zoom_device(const machine_config &mconfig, const char *
m_soundcpu(*this, "mn10200"),
m_zsg2(*this, "zsg2"),
m_reg_address(0),
- m_tms_ctrl(0)
+ m_tms_ctrl(0),
+ m_use_flash(false)
{
}
@@ -106,8 +108,12 @@ WRITE8_MEMBER(taito_zoom_device::tms_ctrl_w)
}
-ADDRESS_MAP_START( taitozoom_mn_map, AS_PROGRAM, 16, taito_zoom_device )
- AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("mn10200", 0)
+ADDRESS_MAP_START(taito_zoom_device::taitozoom_mn_map)
+ if(m_use_flash) {
+ AM_RANGE(0x080000, 0x0fffff) AM_DEVREAD(":pgmflash", intelfsh16_device, read);
+ } else {
+ AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("mn10200", 0);
+ }
AM_RANGE(0x400000, 0x41ffff) AM_RAM
AM_RANGE(0x800000, 0x8007ff) AM_DEVREADWRITE("zsg2", zsg2_device, read, write)
AM_RANGE(0xc00000, 0xc00001) AM_RAM // TMS57002 comms
diff --git a/src/mame/audio/taito_zm.h b/src/mame/audio/taito_zm.h
index f30fcc27029..259de01eae6 100644
--- a/src/mame/audio/taito_zm.h
+++ b/src/mame/audio/taito_zm.h
@@ -14,7 +14,6 @@
#include "cpu/tms57002/tms57002.h"
#include "sound/zsg2.h"
-ADDRESS_MAP_EXTERN(taitozoom_mn_map, 16);
class taito_zoom_device : public device_t
@@ -31,6 +30,10 @@ public:
DECLARE_WRITE8_MEMBER(shared_ram_w);
DECLARE_READ8_MEMBER(tms_ctrl_r);
DECLARE_WRITE8_MEMBER(tms_ctrl_w);
+
+ void set_use_flash() { m_use_flash = true; }
+
+ void taitozoom_mn_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
@@ -45,6 +48,7 @@ private:
// internal state
uint16_t m_reg_address;
uint8_t m_tms_ctrl;
+ bool m_use_flash;
std::unique_ptr<uint8_t[]> m_snd_shared_ram;
};
@@ -53,4 +57,7 @@ DECLARE_DEVICE_TYPE(TAITO_ZOOM, taito_zoom_device)
#define MCFG_TAITO_ZOOM_ADD(_tag) \
MCFG_DEVICE_ADD(_tag, TAITO_ZOOM, 0)
+#define MCFG_TAITO_ZOOM_USE_FLASH \
+ downcast<taito_zoom_device *>(device)->set_use_flash();
+
#endif // MAME_AUDIO_TAITO_ZM_H
diff --git a/src/mame/audio/timeplt.cpp b/src/mame/audio/timeplt.cpp
index 5e92caca4f5..41c149031c6 100644
--- a/src/mame/audio/timeplt.cpp
+++ b/src/mame/audio/timeplt.cpp
@@ -151,7 +151,7 @@ WRITE_LINE_MEMBER(timeplt_audio_device::mute_w)
*
*************************************/
-static ADDRESS_MAP_START( timeplt_sound_map, AS_PROGRAM, 8, timeplt_audio_device )
+ADDRESS_MAP_START(timeplt_audio_device::timeplt_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x33ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x0fff) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
@@ -162,7 +162,7 @@ static ADDRESS_MAP_START( timeplt_sound_map, AS_PROGRAM, 8, timeplt_audio_device
ADDRESS_MAP_END
-static ADDRESS_MAP_START( locomotn_sound_map, AS_PROGRAM, 8, timeplt_audio_device )
+ADDRESS_MAP_START(timeplt_audio_device::locomotn_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x3000, 0x3fff) AM_WRITE(filter_w)
diff --git a/src/mame/audio/timeplt.h b/src/mame/audio/timeplt.h
index ecaef15f8b7..329a703c1c8 100644
--- a/src/mame/audio/timeplt.h
+++ b/src/mame/audio/timeplt.h
@@ -24,6 +24,8 @@ public:
void timeplt_sound(machine_config &config);
void locomotn_sound(machine_config &config);
+ void locomotn_sound_map(address_map &map);
+ void timeplt_sound_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/audio/turrett.cpp b/src/mame/audio/turrett.cpp
index 760e98259a4..ce7991e755f 100644
--- a/src/mame/audio/turrett.cpp
+++ b/src/mame/audio/turrett.cpp
@@ -20,7 +20,7 @@ turrett_device::turrett_device(const machine_config &mconfig, const char *tag, d
: device_t(mconfig, TURRETT, tag, owner, clock)
, device_sound_interface(mconfig, *this)
, device_memory_interface(mconfig, *this)
- , m_space_config("ttsound", ENDIANNESS_LITTLE, 16, 28, 0, nullptr)
+ , m_space_config("ttsound", ENDIANNESS_LITTLE, 16, 28, 0)
{
}
diff --git a/src/mame/audio/williams.cpp b/src/mame/audio/williams.cpp
index eee3eb58b26..74bf40c525a 100644
--- a/src/mame/audio/williams.cpp
+++ b/src/mame/audio/williams.cpp
@@ -159,7 +159,7 @@ WRITE8_MEMBER(williams_cvsd_sound_device::cvsd_clock_set_w)
// audio CPU map
//-------------------------------------------------
-static ADDRESS_MAP_START( williams_cvsd_map, AS_PROGRAM, 8, williams_cvsd_sound_device )
+ADDRESS_MAP_START(williams_cvsd_sound_device::williams_cvsd_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia", pia6821_device, read, write)
@@ -455,7 +455,7 @@ WRITE8_MEMBER(williams_narc_sound_device::cvsd_clock_set_w)
// master CPU map
//-------------------------------------------------
-static ADDRESS_MAP_START( williams_narc_master_map, AS_PROGRAM, 8, williams_narc_sound_device )
+ADDRESS_MAP_START(williams_narc_sound_device::williams_narc_master_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x03fe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x2800, 0x2800) AM_MIRROR(0x03ff) AM_WRITE(master_talkback_w)
@@ -473,7 +473,7 @@ ADDRESS_MAP_END
// slave CPU map
//-------------------------------------------------
-static ADDRESS_MAP_START( williams_narc_slave_map, AS_PROGRAM, 8, williams_narc_sound_device )
+ADDRESS_MAP_START(williams_narc_sound_device::williams_narc_slave_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x03ff) AM_WRITE(cvsd_clock_set_w)
AM_RANGE(0x2400, 0x2400) AM_MIRROR(0x03ff) AM_WRITE(cvsd_digit_clock_clear_w)
@@ -717,7 +717,7 @@ WRITE8_MEMBER(williams_adpcm_sound_device::talkback_w)
// audio CPU map
//-------------------------------------------------
-static ADDRESS_MAP_START( williams_adpcm_map, AS_PROGRAM, 8, williams_adpcm_sound_device )
+ADDRESS_MAP_START(williams_adpcm_sound_device::williams_adpcm_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x03ff) AM_WRITE(bank_select_w)
AM_RANGE(0x2400, 0x2401) AM_MIRROR(0x03fe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
@@ -735,7 +735,7 @@ ADDRESS_MAP_END
// OKI6295 map
//-------------------------------------------------
-static ADDRESS_MAP_START( williams_adpcm_oki_map, 0, 8, williams_adpcm_sound_device )
+ADDRESS_MAP_START(williams_adpcm_sound_device::williams_adpcm_oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("okibank")
AM_RANGE(0x20000, 0x3ffff) AM_ROM AM_REGION("oki", 0x60000)
ADDRESS_MAP_END
diff --git a/src/mame/audio/williams.h b/src/mame/audio/williams.h
index e2d564b462c..f7c02996e77 100644
--- a/src/mame/audio/williams.h
+++ b/src/mame/audio/williams.h
@@ -48,6 +48,7 @@ public:
DECLARE_WRITE8_MEMBER(cvsd_digit_clock_clear_w);
DECLARE_WRITE8_MEMBER(cvsd_clock_set_w);
+ void williams_cvsd_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -95,6 +96,8 @@ public:
DECLARE_WRITE8_MEMBER(cvsd_digit_clock_clear_w);
DECLARE_WRITE8_MEMBER(cvsd_clock_set_w);
+ void williams_narc_master_map(address_map &map);
+ void williams_narc_slave_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
@@ -145,6 +148,8 @@ public:
DECLARE_READ8_MEMBER(command_r);
DECLARE_WRITE8_MEMBER(talkback_w);
+ void williams_adpcm_map(address_map &map);
+ void williams_adpcm_oki_map(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/mame/audio/wpcsnd.cpp b/src/mame/audio/wpcsnd.cpp
index 3564ef176e9..e487b46316f 100644
--- a/src/mame/audio/wpcsnd.cpp
+++ b/src/mame/audio/wpcsnd.cpp
@@ -29,7 +29,7 @@ wpcsnd_device::wpcsnd_device(const machine_config &mconfig, const char *tag, dev
{
}
-static ADDRESS_MAP_START( wpcsnd_map, AS_PROGRAM, 8, wpcsnd_device )
+ADDRESS_MAP_START(wpcsnd_device::wpcsnd_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x03ff) AM_WRITE(rombank_w)
AM_RANGE(0x2400, 0x2401) AM_MIRROR(0x03fe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
diff --git a/src/mame/audio/wpcsnd.h b/src/mame/audio/wpcsnd.h
index 7d52155678d..9b4de964969 100644
--- a/src/mame/audio/wpcsnd.h
+++ b/src/mame/audio/wpcsnd.h
@@ -54,6 +54,7 @@ public:
// callbacks
template <class Reply> void set_reply_callback(Reply &&cb) { m_reply_cb.set_callback(std::forward<Reply>(cb)); }
+ void wpcsnd_map(address_map &map);
protected:
// overrides
virtual void device_start() override;
diff --git a/src/mame/audio/zaccaria.cpp b/src/mame/audio/zaccaria.cpp
index fa031b72f0d..16abe5b5799 100644
--- a/src/mame/audio/zaccaria.cpp
+++ b/src/mame/audio/zaccaria.cpp
@@ -28,7 +28,7 @@ DEFINE_DEVICE_TYPE(ZACCARIA_1B11142, zac1b11142_audio_device, "zac1b11142", "Zac
base melody/SFX generator CPU map
1B11107 and 1B11142 both have a 6802 with internal RAM and a PIA accessed at 0x500c
*/
-static ADDRESS_MAP_START(zac1b111xx_melody_base_map, AS_PROGRAM, 8, zac1b111xx_melody_base)
+ADDRESS_MAP_START(zac1b111xx_melody_base::zac1b111xx_melody_base_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM // 6802 internal RAM
AM_RANGE(0x400c, 0x400f) AM_MIRROR(0x1ff0) AM_DEVREADWRITE("melodypia", pia6821_device, read, write)
@@ -60,7 +60,7 @@ ADDRESS_MAP_END
* PB0 and PB1 connect to the BC1 and BDIR pins of the AY chip at 1H
* PB2 and PB3 connect to the BC1 and BDIR pins of the AY chip at 1I
*/
-static ADDRESS_MAP_START(zac1b11107_melody_map, AS_PROGRAM, 8, zac1b11107_audio_device)
+ADDRESS_MAP_START(zac1b11107_audio_device::zac1b11107_melody_map)
AM_IMPORT_FROM(zac1b111xx_melody_base_map)
AM_RANGE(0xc000, 0xcfff) AM_ROM // ROM @ 1F
AM_RANGE(0xe000, 0xffff) AM_ROM // ROM @ 1D, 1E
@@ -95,7 +95,7 @@ ADDRESS_MAP_END
* PB0 and PB1 connect to the BC1 and BDIR pins of the AY chip at 4G
* PB2 and PB3 connect to the BC1 and BDIR pins of the AY chip at 4H
*/
-static ADDRESS_MAP_START(zac1b11142_melody_map, AS_PROGRAM, 8, zac1b11142_audio_device)
+ADDRESS_MAP_START(zac1b11142_audio_device::zac1b11142_melody_map)
AM_IMPORT_FROM(zac1b111xx_melody_base_map)
AM_RANGE(0x8000, 0x9fff) AM_MIRROR(0x2000) AM_ROM // ROM 13
AM_RANGE(0xc000, 0xdfff) AM_MIRROR(0x2000) AM_ROM // ROM 9
@@ -126,7 +126,7 @@ ADDRESS_MAP_END
CA1 and CB2 are not connected, though the test mode assumes there's something connected to CB2 (possibly another LED like the one connected to PB4)
PB3 connects to 'ACS' which goes to the Z80
*/
-static ADDRESS_MAP_START(zac1b11142_audio_map, AS_PROGRAM, 8, zac1b11142_audio_device)
+ADDRESS_MAP_START(zac1b11142_audio_device::zac1b11142_audio_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM // 6802 internal RAM
AM_RANGE(0x0090, 0x0093) AM_MIRROR(0x8f6c) AM_DEVREADWRITE("pia_1i", pia6821_device, read, write)
diff --git a/src/mame/audio/zaccaria.h b/src/mame/audio/zaccaria.h
index fc73cb06592..b6f9b5301fc 100644
--- a/src/mame/audio/zaccaria.h
+++ b/src/mame/audio/zaccaria.h
@@ -58,6 +58,7 @@ protected:
required_device<ay8910_device> m_melodypsg2;
u8 m_melody_command;
+ void zac1b111xx_melody_base_map(address_map &map);
};
@@ -70,6 +71,7 @@ public:
DECLARE_WRITE8_MEMBER(sound_w);
DECLARE_WRITE_LINE_MEMBER(reset_w);
+ void zac1b11107_melody_map(address_map &map);
protected:
// PSG output handlers
DECLARE_WRITE8_MEMBER(melodypsg1_porta_w);
@@ -97,6 +99,8 @@ public:
DECLARE_WRITE8_MEMBER(melody_command_w);
DECLARE_INPUT_CHANGED_MEMBER(p1_changed);
+ void zac1b11142_audio_map(address_map &map);
+ void zac1b11142_melody_map(address_map &map);
protected:
// melody section handlers
DECLARE_WRITE8_MEMBER(ay_4g_porta_w);
diff --git a/src/mame/drivers/1942.cpp b/src/mame/drivers/1942.cpp
index b2cdaf43952..2a0de5e5280 100644
--- a/src/mame/drivers/1942.cpp
+++ b/src/mame/drivers/1942.cpp
@@ -180,7 +180,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(_1942_state::c1942_scanline)
-static ADDRESS_MAP_START( c1942_map, AS_PROGRAM, 8, _1942_state )
+ADDRESS_MAP_START(_1942_state::c1942_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
@@ -215,7 +215,7 @@ WRITE8_MEMBER(_1942_state::c1942p_palette_w)
m_palette->set_indirect_color(offset, rgb_t(r<<5,g<<5,b<<6));
}
-static ADDRESS_MAP_START( c1942p_map, AS_PROGRAM, 8, _1942_state )
+ADDRESS_MAP_START(_1942_state::c1942p_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
@@ -244,13 +244,13 @@ static ADDRESS_MAP_START( c1942p_map, AS_PROGRAM, 8, _1942_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(c1942p_sound_map, AS_PROGRAM, 8, _1942_state )
+ADDRESS_MAP_START(_1942_state::c1942p_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0xc000, 0xc000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c1942p_sound_io, AS_IO, 8, _1942_state )
+ADDRESS_MAP_START(_1942_state::c1942p_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_WRITENOP
AM_RANGE(0x0014, 0x0015) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
@@ -259,7 +259,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, _1942_state )
+ADDRESS_MAP_START(_1942_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/1943.cpp b/src/mame/drivers/1943.cpp
index 4ff2f24c5de..9414b112bc1 100644
--- a/src/mame/drivers/1943.cpp
+++ b/src/mame/drivers/1943.cpp
@@ -102,7 +102,7 @@ READ8_MEMBER(_1943_state::_1943b_c007_r)
/* Memory Maps */
-static ADDRESS_MAP_START( c1943_map, AS_PROGRAM, 8, _1943_state )
+ADDRESS_MAP_START(_1943_state::c1943_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
@@ -129,7 +129,7 @@ static ADDRESS_MAP_START( c1943_map, AS_PROGRAM, 8, _1943_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, _1943_state )
+ADDRESS_MAP_START(_1943_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/1945kiii.cpp b/src/mame/drivers/1945kiii.cpp
index c6efa99b79b..c28a286a876 100644
--- a/src/mame/drivers/1945kiii.cpp
+++ b/src/mame/drivers/1945kiii.cpp
@@ -93,6 +93,9 @@ public:
required_device<palette_device> m_palette;
void flagrall(machine_config &config);
void k3(machine_config &config);
+ void flagrall_map(address_map &map);
+ void k3_base_map(address_map &map);
+ void k3_map(address_map &map);
};
@@ -185,7 +188,7 @@ WRITE16_MEMBER(k3_state::flagrall_soundbanks_w)
}
-static ADDRESS_MAP_START( k3_base_map, AS_PROGRAM, 16, k3_state )
+ADDRESS_MAP_START(k3_state::k3_base_map)
AM_RANGE(0x0009ce, 0x0009cf) AM_WRITENOP // k3 - bug in code? (clean up log)
AM_RANGE(0x0009d2, 0x0009d3) AM_WRITENOP // l3 - bug in code? (clean up log)
@@ -203,7 +206,7 @@ static ADDRESS_MAP_START( k3_base_map, AS_PROGRAM, 16, k3_state )
AM_RANGE(0x480000, 0x480001) AM_READ_PORT("DSW")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( k3_map, AS_PROGRAM, 16, k3_state )
+ADDRESS_MAP_START(k3_state::k3_map)
AM_IMPORT_FROM( k3_base_map )
AM_RANGE(0x3c0000, 0x3c0001) AM_WRITE(k3_soundbanks_w)
@@ -214,7 +217,7 @@ static ADDRESS_MAP_START( k3_map, AS_PROGRAM, 16, k3_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flagrall_map, AS_PROGRAM, 16, k3_state )
+ADDRESS_MAP_START(k3_state::flagrall_map)
AM_IMPORT_FROM( k3_base_map )
AM_RANGE(0x3c0000, 0x3c0001) AM_WRITE(flagrall_soundbanks_w)
diff --git a/src/mame/drivers/20pacgal.cpp b/src/mame/drivers/20pacgal.cpp
index b1656b5952d..571f6111e80 100644
--- a/src/mame/drivers/20pacgal.cpp
+++ b/src/mame/drivers/20pacgal.cpp
@@ -186,7 +186,7 @@ WRITE8_MEMBER(_20pacgal_state::sprite_lookup_w)
// where does the clut (sprite_lookup_w) get uploaded? even if I set a WP on that data in ROM it isn't hit?
// likewise the sound table.. is it being uploaded in a different format at 0x0c000?
// we also need the palette data because there is only a single rom on this pcb?
-static ADDRESS_MAP_START( 25pacman_map, AS_PROGRAM, 8, _25pacman_state )
+ADDRESS_MAP_START(_25pacman_state::_25pacman_map)
AM_RANGE(0x00000, 0x3ffff) AM_DEVREADWRITE("flash", amd_29lv200t_device, read, write ) // (always fall through if nothing else is mapped?)
AM_RANGE(0x04000, 0x047ff) AM_RAM AM_SHARE("video_ram")
@@ -201,7 +201,7 @@ static ADDRESS_MAP_START( 25pacman_map, AS_PROGRAM, 8, _25pacman_state )
AM_RANGE(0x1c000, 0x1ffff) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 20pacgal_map, AS_PROGRAM, 8, _20pacgal_state )
+ADDRESS_MAP_START(_20pacgal_state::_20pacgal_map)
AM_RANGE(0x00000, 0x03fff) AM_ROM
AM_RANGE(0x04000, 0x07fff) AM_ROM
AM_RANGE(0x08000, 0x09fff) AM_ROM
@@ -232,7 +232,7 @@ READ8_MEMBER( _25pacman_state::_25pacman_io_87_r )
return 0xff;
}
- static ADDRESS_MAP_START( 25pacman_io_map, AS_IO, 8, _25pacman_state )
+ADDRESS_MAP_START(_25pacman_state::_25pacman_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_NOP /* Z180 internal registers */
AM_RANGE(0x40, 0x7f) AM_NOP /* Z180 internal registers */
@@ -254,7 +254,7 @@ READ8_MEMBER( _25pacman_state::_25pacman_io_87_r )
AM_RANGE(0x8f, 0x8f) AM_WRITE(_20pacgal_coin_counter_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 20pacgal_io_map, AS_IO, 8, _20pacgal_state )
+ADDRESS_MAP_START(_20pacgal_state::_20pacgal_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_NOP /* Z180 internal registers */
AM_RANGE(0x40, 0x7f) AM_NOP /* Z180 internal registers */
@@ -393,8 +393,8 @@ MACHINE_CONFIG_START(_20pacgal_state::_20pacgal)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z180, MAIN_CPU_CLOCK)
- MCFG_CPU_PROGRAM_MAP(20pacgal_map)
- MCFG_CPU_IO_MAP(20pacgal_io_map)
+ MCFG_CPU_PROGRAM_MAP(_20pacgal_map)
+ MCFG_CPU_IO_MAP(_20pacgal_io_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", _20pacgal_state, vblank_irq)
MCFG_EEPROM_SERIAL_93C46_8BIT_ADD("eeprom")
@@ -421,8 +421,8 @@ MACHINE_CONFIG_DERIVED(_25pacman_state::_25pacman, _20pacgal)
/* basic machine hardware */
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_PROGRAM_MAP(25pacman_map)
- MCFG_CPU_IO_MAP(25pacman_io_map)
+ MCFG_CPU_PROGRAM_MAP(_25pacman_map)
+ MCFG_CPU_IO_MAP(_25pacman_io_map)
MCFG_AMD_29LV200T_ADD("flash")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/24cdjuke.cpp b/src/mame/drivers/24cdjuke.cpp
index b326b4f499d..a87690c45cb 100644
--- a/src/mame/drivers/24cdjuke.cpp
+++ b/src/mame/drivers/24cdjuke.cpp
@@ -87,6 +87,8 @@ public:
DECLARE_READ8_MEMBER(unknown_r) { return machine().rand(); }
void midcoin24cdjuke(machine_config &config);
+ void midcoin24cdjuke_io(address_map &map);
+ void midcoin24cdjuke_map(address_map &map);
private:
uint8_t m_kb_col;
};
@@ -123,13 +125,13 @@ WRITE8_MEMBER(midcoin24cdjuke_state::digit_w)
}
-static ADDRESS_MAP_START( midcoin24cdjuke_map, AS_PROGRAM, 8, midcoin24cdjuke_state )
+ADDRESS_MAP_START(midcoin24cdjuke_state::midcoin24cdjuke_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x7800, 0x780f) AM_WRITE(digit_w)
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( midcoin24cdjuke_io, AS_IO, 8, midcoin24cdjuke_state )
+ADDRESS_MAP_START(midcoin24cdjuke_state::midcoin24cdjuke_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ic31", i8255_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ic11", i8255_device, read, write)
diff --git a/src/mame/drivers/2mindril.cpp b/src/mame/drivers/2mindril.cpp
index 2a398f93978..2c53c24d638 100644
--- a/src/mame/drivers/2mindril.cpp
+++ b/src/mame/drivers/2mindril.cpp
@@ -72,6 +72,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(irqhandler);
void drill(machine_config &config);
+ void drill_map(address_map &map);
+
#ifdef UNUSED_FUNCTION
enum
{
@@ -192,7 +194,7 @@ WRITE16_MEMBER(_2mindril_state::drill_irq_w)
COMBINE_DATA(&m_irq_reg);
}
-static ADDRESS_MAP_START( drill_map, AS_PROGRAM, 16, _2mindril_state )
+ADDRESS_MAP_START(_2mindril_state::drill_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x300000, 0x3000ff) AM_RAM
diff --git a/src/mame/drivers/30test.cpp b/src/mame/drivers/30test.cpp
index 0535b081243..2c25f09ee04 100644
--- a/src/mame/drivers/30test.cpp
+++ b/src/mame/drivers/30test.cpp
@@ -75,6 +75,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<okim6295_device> m_oki;
void _30test(machine_config &config);
+ void namco_30test_io(address_map &map);
+ void namco_30test_map(address_map &map);
};
@@ -137,7 +139,7 @@ WRITE8_MEMBER(namco_30test_state::hc11_okibank_w)
}
-static ADDRESS_MAP_START( namco_30test_map, AS_PROGRAM, 8, namco_30test_state )
+ADDRESS_MAP_START(namco_30test_state::namco_30test_map)
AM_RANGE(0x0000, 0x003f) AM_RAM // internal I/O
AM_RANGE(0x0040, 0x007f) AM_RAM // more internal I/O, HC11 change pending
AM_RANGE(0x007c, 0x007c) AM_READWRITE(hc11_mux_r,hc11_mux_w)
@@ -157,7 +159,7 @@ static ADDRESS_MAP_START( namco_30test_map, AS_PROGRAM, 8, namco_30test_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( namco_30test_io, AS_IO, 8, namco_30test_state )
+ADDRESS_MAP_START(namco_30test_state::namco_30test_io)
AM_RANGE(MC68HC11_IO_PORTA,MC68HC11_IO_PORTA) AM_READ(namco_30test_mux_r)
// AM_RANGE(MC68HC11_IO_PORTD,MC68HC11_IO_PORTD) AM_RAM
AM_RANGE(MC68HC11_IO_PORTE,MC68HC11_IO_PORTE) AM_READ_PORT("SYSTEM")
diff --git a/src/mame/drivers/39in1.cpp b/src/mame/drivers/39in1.cpp
index 1d0a56c2d4c..d8ab13950e0 100644
--- a/src/mame/drivers/39in1.cpp
+++ b/src/mame/drivers/39in1.cpp
@@ -100,6 +100,7 @@ public:
required_device<palette_device> m_palette;
void _60in1(machine_config &config);
void _39in1(machine_config &config);
+ void _39in1_map(address_map &map);
};
@@ -1453,7 +1454,7 @@ DRIVER_INIT_MEMBER(_39in1_state,39in1)
-static ADDRESS_MAP_START( 39in1_map, AS_PROGRAM, 32, _39in1_state )
+ADDRESS_MAP_START(_39in1_state::_39in1_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM
AM_RANGE(0x00400000, 0x005fffff) AM_ROM AM_REGION("data", 0)
AM_RANGE(0x04000000, 0x047fffff) AM_READWRITE(cpld_r, cpld_w )
@@ -1577,7 +1578,7 @@ MACHINE_START_MEMBER(_39in1_state,60in1)
MACHINE_CONFIG_START(_39in1_state::_39in1)
MCFG_CPU_ADD("maincpu", PXA255, 200000000)
- MCFG_CPU_PROGRAM_MAP(39in1_map)
+ MCFG_CPU_PROGRAM_MAP(_39in1_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", _39in1_state, pxa255_vblank_start)
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/3do.cpp b/src/mame/drivers/3do.cpp
index ea5a19ae4a3..ef2a57051a3 100644
--- a/src/mame/drivers/3do.cpp
+++ b/src/mame/drivers/3do.cpp
@@ -107,7 +107,7 @@ Part list of Goldstar 3DO Interactive Multiplayer
#define X601_CLOCK XTAL(16'934'400)
-static ADDRESS_MAP_START( 3do_mem, AS_PROGRAM, 32, _3do_state )
+ADDRESS_MAP_START(_3do_state::_3do_mem)
AM_RANGE(0x00000000, 0x001FFFFF) AM_RAMBANK("bank1") AM_SHARE("dram") /* DRAM */
AM_RANGE(0x00200000, 0x003FFFFF) AM_RAM AM_SHARE("vram") /* VRAM */
AM_RANGE(0x03000000, 0x030FFFFF) AM_ROMBANK("bank2") /* BIOS */
@@ -158,7 +158,7 @@ MACHINE_CONFIG_START(_3do_state::_3do)
/* Basic machine hardware */
MCFG_CPU_ADD( "maincpu", ARM7_BE, XTAL(50'000'000)/4 )
- MCFG_CPU_PROGRAM_MAP( 3do_mem)
+ MCFG_CPU_PROGRAM_MAP( _3do_mem)
MCFG_NVRAM_ADD_1FILL("nvram")
@@ -178,7 +178,7 @@ MACHINE_CONFIG_START(_3do_state::_3do_pal)
/* Basic machine hardware */
MCFG_CPU_ADD("maincpu", ARM7_BE, XTAL(50'000'000)/4 )
- MCFG_CPU_PROGRAM_MAP( 3do_mem)
+ MCFG_CPU_PROGRAM_MAP( _3do_mem)
MCFG_NVRAM_ADD_1FILL("nvram")
diff --git a/src/mame/drivers/3x3puzzl.cpp b/src/mame/drivers/3x3puzzl.cpp
index 419b01b8762..86dd7742ef0 100644
--- a/src/mame/drivers/3x3puzzl.cpp
+++ b/src/mame/drivers/3x3puzzl.cpp
@@ -97,6 +97,7 @@ public:
DECLARE_WRITE16_MEMBER(tilemap1_scrolly_w);
void _3x3puzzle(machine_config &config);
+ void _3x3puzzle_map(address_map &map);
protected:
virtual void video_start() override;
virtual void machine_start() override;
@@ -208,7 +209,7 @@ uint32_t _3x3puzzle_state::screen_update( screen_device &screen, bitmap_rgb32 &b
return 0;
}
-static ADDRESS_MAP_START( _3x3puzzle_map, AS_PROGRAM, 16, _3x3puzzle_state )
+ADDRESS_MAP_START(_3x3puzzle_state::_3x3puzzle_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x2007ff) AM_RAM AM_SHARE("videoram1")
diff --git a/src/mame/drivers/4004clk.cpp b/src/mame/drivers/4004clk.cpp
index 5b087e2b5a1..45d4fd4b217 100644
--- a/src/mame/drivers/4004clk.cpp
+++ b/src/mame/drivers/4004clk.cpp
@@ -27,6 +27,11 @@ public:
DECLARE_WRITE8_MEMBER( neon_w );
void _4004clk(machine_config &config);
+ void _4004clk_mem(address_map &map);
+ void _4004clk_mp(address_map &map);
+ void _4004clk_rom(address_map &map);
+ void _4004clk_rp(address_map &map);
+ void _4004clk_stat(address_map &map);
protected:
virtual void machine_start() override;
@@ -79,28 +84,28 @@ WRITE8_MEMBER(nixieclock_state::neon_w)
output_set_neon_value(3, BIT(data,0));
}
-static ADDRESS_MAP_START(4004clk_rom, i4004_cpu_device::AS_ROM, 8, nixieclock_state)
+ADDRESS_MAP_START(nixieclock_state::_4004clk_rom)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(4004clk_mem, i4004_cpu_device::AS_RAM_MEMORY, 8, nixieclock_state)
+ADDRESS_MAP_START(nixieclock_state::_4004clk_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(4004clk_stat, i4004_cpu_device::AS_RAM_STATUS, 8, nixieclock_state)
+ADDRESS_MAP_START(nixieclock_state::_4004clk_stat)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x001f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(4004clk_rp, i4004_cpu_device::AS_ROM_PORTS, 8, nixieclock_state)
+ADDRESS_MAP_START(nixieclock_state::_4004clk_rp)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x000f) AM_MIRROR(0x0700) AM_READ_PORT("INPUT")
AM_RANGE(0x0000, 0x00ef) AM_MIRROR(0x0700) AM_WRITE(nixie_w)
AM_RANGE(0x00f0, 0x00ff) AM_MIRROR(0x0700) AM_WRITE(neon_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(4004clk_mp, i4004_cpu_device::AS_RAM_PORTS, 8, nixieclock_state)
+ADDRESS_MAP_START(nixieclock_state::_4004clk_mp)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_bit_interface, write)
ADDRESS_MAP_END
@@ -128,11 +133,11 @@ MACHINE_CONFIG_START(nixieclock_state::_4004clk)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", I4004, XTAL(5'000'000) / 8)
- MCFG_I4004_ROM_MAP(4004clk_rom)
- MCFG_I4004_RAM_MEMORY_MAP(4004clk_mem)
- MCFG_I4004_ROM_PORTS_MAP(4004clk_rp)
- MCFG_I4004_RAM_STATUS_MAP(4004clk_stat)
- MCFG_I4004_RAM_PORTS_MAP(4004clk_mp)
+ MCFG_I4004_ROM_MAP(_4004clk_rom)
+ MCFG_I4004_RAM_MEMORY_MAP(_4004clk_mem)
+ MCFG_I4004_ROM_PORTS_MAP(_4004clk_rp)
+ MCFG_I4004_RAM_STATUS_MAP(_4004clk_stat)
+ MCFG_I4004_RAM_PORTS_MAP(_4004clk_mp)
/* video hardware */
MCFG_DEFAULT_LAYOUT(layout_4004clk)
diff --git a/src/mame/drivers/40love.cpp b/src/mame/drivers/40love.cpp
index c1b3d037a2e..04942d08bea 100644
--- a/src/mame/drivers/40love.cpp
+++ b/src/mame/drivers/40love.cpp
@@ -398,7 +398,7 @@ WRITE8_MEMBER(fortyl_state::to_main_w)
/***************************************************************************/
-static ADDRESS_MAP_START( 40love_map, AS_PROGRAM, 8, fortyl_state )
+ADDRESS_MAP_START(fortyl_state::_40love_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* M5517P on main board */
AM_RANGE(0x8800, 0x8800) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
@@ -424,7 +424,7 @@ static ADDRESS_MAP_START( 40love_map, AS_PROGRAM, 8, fortyl_state )
AM_RANGE(0xc000, 0xffff) AM_READWRITE(fortyl_pixram_r, fortyl_pixram_w) /* banked pixel layer */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( undoukai_map, AS_PROGRAM, 8, fortyl_state )
+ADDRESS_MAP_START(fortyl_state::undoukai_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("mcu_ram") /* M5517P on main board */
@@ -491,7 +491,7 @@ WRITE8_MEMBER(fortyl_state::sound_control_3_w)/* unknown */
// popmessage("SND3 0=%02x 1=%02x 2=%02x 3=%02x", m_snd_ctrl0, m_snd_ctrl1, m_snd_ctrl2, m_snd_ctrl3);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fortyl_state )
+ADDRESS_MAP_START(fortyl_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -756,7 +756,7 @@ MACHINE_CONFIG_START(fortyl_state::_40love)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu",Z80,8000000/2) /* OK */
- MCFG_CPU_PROGRAM_MAP(40love_map)
+ MCFG_CPU_PROGRAM_MAP(_40love_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", fortyl_state, irq0_line_hold)
MCFG_CPU_ADD("audiocpu",Z80,8000000/2) /* OK */
diff --git a/src/mame/drivers/4dpi.cpp b/src/mame/drivers/4dpi.cpp
index 6bdc064df0a..a86e832b186 100644
--- a/src/mame/drivers/4dpi.cpp
+++ b/src/mame/drivers/4dpi.cpp
@@ -50,6 +50,7 @@ public:
inline void ATTR_PRINTF(3,4) verboselog( int n_level, const char *s_fmt, ... );
required_device<cpu_device> m_maincpu;
void sgi_ip6(machine_config &config);
+ void sgi_ip6_map(address_map &map);
};
@@ -217,7 +218,7 @@ void sgi_ip6_state::machine_reset()
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( sgi_ip6_map, AS_PROGRAM, 32, sgi_ip6_state )
+ADDRESS_MAP_START(sgi_ip6_state::sgi_ip6_map)
AM_RANGE( 0x1f880000, 0x1f880003 ) AM_READWRITE(ip6_unk1_r, ip6_unk1_w)
AM_RANGE( 0x1fb00000, 0x1fb00003 ) AM_READWRITE(ip6_unk3_r, ip6_unk3_w)
AM_RANGE( 0x1fbc004c, 0x1fbc004f ) AM_READWRITE(ip6_unk2_r, ip6_unk2_w)
diff --git a/src/mame/drivers/4enlinea.cpp b/src/mame/drivers/4enlinea.cpp
index 95cb86b981d..df0a407dbb9 100644
--- a/src/mame/drivers/4enlinea.cpp
+++ b/src/mame/drivers/4enlinea.cpp
@@ -234,6 +234,10 @@ public:
required_device<cpu_device> m_maincpu;
void _4enlinea(machine_config &config);
+ void audio_map(address_map &map);
+ void audio_portmap(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
};
@@ -346,7 +350,7 @@ READ8_MEMBER(_4enlinea_state::serial_r)
* Memory Map Information *
***********************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, _4enlinea_state )
+ADDRESS_MAP_START(_4enlinea_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
// AM_RANGE(0x8000, 0xbfff) AM_RAM // CGA VRAM
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -354,7 +358,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, _4enlinea_state )
AM_RANGE(0xe000, 0xe001) AM_READ(serial_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, _4enlinea_state )
+ADDRESS_MAP_START(_4enlinea_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0x3ff)
// AM_RANGE(0x3d4, 0x3df) CGA regs
@@ -384,7 +388,7 @@ READ8_MEMBER(_4enlinea_state::hack_r)
return machine().rand();
}
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, _4enlinea_state )
+ADDRESS_MAP_START(_4enlinea_state::audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf800, 0xfbff) AM_RAM
AM_RANGE(0xfc24, 0xfc24) AM_READ(hack_r)
@@ -396,7 +400,7 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, _4enlinea_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_portmap, AS_IO, 8, _4enlinea_state )
+ADDRESS_MAP_START(_4enlinea_state::audio_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/4enraya.cpp b/src/mame/drivers/4enraya.cpp
index ad1586deb54..b728bcfd5f3 100644
--- a/src/mame/drivers/4enraya.cpp
+++ b/src/mame/drivers/4enraya.cpp
@@ -250,11 +250,11 @@ WRITE8_MEMBER(_4enraya_state::fenraya_custom_map_w)
* Memory Map Information *
***********************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, _4enraya_state )
+ADDRESS_MAP_START(_4enraya_state::main_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(fenraya_custom_map_r, fenraya_custom_map_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, _4enraya_state )
+ADDRESS_MAP_START(_4enraya_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW")
AM_RANGE(0x01, 0x01) AM_READ_PORT("INPUTS")
@@ -264,14 +264,14 @@ static ADDRESS_MAP_START( main_portmap, AS_IO, 8, _4enraya_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( unkpacg_main_map, AS_PROGRAM, 8, _4enraya_state )
+ADDRESS_MAP_START(_4enraya_state::unkpacg_main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x7000, 0x7fff) AM_WRITE(fenraya_videoram_w)
AM_RANGE(0x8000, 0x9fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( unkpacg_main_portmap, AS_IO, 8, _4enraya_state )
+ADDRESS_MAP_START(_4enraya_state::unkpacg_main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/4roses.cpp b/src/mame/drivers/4roses.cpp
index 1b1c1b06736..49ad743baa5 100644
--- a/src/mame/drivers/4roses.cpp
+++ b/src/mame/drivers/4roses.cpp
@@ -194,6 +194,7 @@ public:
DECLARE_DRIVER_INIT(4roses);
void _4roses(machine_config &config);
+ void _4roses_map(address_map &map);
};
@@ -207,7 +208,7 @@ public:
* Memory map information *
*************************/
-static ADDRESS_MAP_START( 4roses_map, AS_PROGRAM, 8, _4roses_state )
+ADDRESS_MAP_START(_4roses_state::_4roses_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM // AM_SHARE("nvram")
AM_RANGE(0x6000, 0x6fff) AM_RAM_WRITE(funworld_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x7000, 0x7fff) AM_RAM_WRITE(funworld_colorram_w) AM_SHARE("colorram")
@@ -357,7 +358,7 @@ GFXDECODE_END
MACHINE_CONFIG_START(_4roses_state::_4roses)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M65C02, MASTER_CLOCK/8) /* 2MHz, guess */
- MCFG_CPU_PROGRAM_MAP(4roses_map)
+ MCFG_CPU_PROGRAM_MAP(_4roses_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", _4roses_state, nmi_line_pulse)
// MCFG_NVRAM_ADD_0FILL("nvram")
diff --git a/src/mame/drivers/5clown.cpp b/src/mame/drivers/5clown.cpp
index 8ec6f6f2be3..d95b88e9fee 100644
--- a/src/mame/drivers/5clown.cpp
+++ b/src/mame/drivers/5clown.cpp
@@ -507,6 +507,8 @@ public:
DECLARE_PALETTE_INIT(_5clown);
uint32_t screen_update_fclown(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void fclown(machine_config &config);
+ void fcaudio_map(address_map &map);
+ void fclown_map(address_map &map);
};
void _5clown_state::machine_start()
@@ -754,7 +756,7 @@ WRITE8_MEMBER(_5clown_state::snd_a02_w)
* Memory map information *
*************************/
-static ADDRESS_MAP_START( fclown_map, AS_PROGRAM, 8, _5clown_state )
+ADDRESS_MAP_START(_5clown_state::fclown_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
@@ -829,7 +831,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( fcaudio_map, AS_PROGRAM, 8, _5clown_state )
+ADDRESS_MAP_START(_5clown_state::fcaudio_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_WRITE(snd_800_w)
AM_RANGE(0x0a02, 0x0a02) AM_WRITE(snd_a02_w)
diff --git a/src/mame/drivers/68ksbc.cpp b/src/mame/drivers/68ksbc.cpp
index 46aac1ed08c..90353a42662 100644
--- a/src/mame/drivers/68ksbc.cpp
+++ b/src/mame/drivers/68ksbc.cpp
@@ -42,11 +42,12 @@ public:
{ }
void c68ksbc(machine_config &config);
+ void c68ksbc_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(c68ksbc_mem, AS_PROGRAM, 16, c68ksbc_state)
+ADDRESS_MAP_START(c68ksbc_state::c68ksbc_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x002fff) AM_ROM
AM_RANGE(0x003000, 0x5fffff) AM_RAM
diff --git a/src/mame/drivers/8080bw.cpp b/src/mame/drivers/8080bw.cpp
index 254de8d1d28..a6f1bd2d46d 100644
--- a/src/mame/drivers/8080bw.cpp
+++ b/src/mame/drivers/8080bw.cpp
@@ -372,7 +372,7 @@ INPUT_PORTS_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( invadpt2_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::invadpt2_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -441,7 +441,7 @@ MACHINE_CONFIG_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( spacerng_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::spacerng_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -466,7 +466,7 @@ MACHINE_CONFIG_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( spcewars_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::spcewars_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -523,7 +523,7 @@ MACHINE_CONFIG_END
// has a slightly rearranged io map and has PROMs and watchdog
-static ADDRESS_MAP_START( spcewarla_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::spcewarla_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2")
@@ -553,7 +553,7 @@ MACHINE_CONFIG_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( astropal_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::astropal_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -616,7 +616,7 @@ MACHINE_CONFIG_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( cosmo_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::cosmo_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x4000, 0x57ff) AM_ROM
@@ -624,7 +624,7 @@ static ADDRESS_MAP_START( cosmo_map, AS_PROGRAM, 8, _8080bw_state )
ADDRESS_MAP_END
/* at least one of these MWA8_NOPs must be sound related */
-static ADDRESS_MAP_START( cosmo_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::cosmo_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITENOP
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITENOP
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_WRITENOP
@@ -797,12 +797,12 @@ static INPUT_PORTS_START( spacecom )
INPUT_PORTS_END
-static ADDRESS_MAP_START( spacecom_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::spacecom_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("main_ram") // other RAM not hooked up?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacecom_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::spacecom_io_map)
AM_RANGE(0x41, 0x41) AM_READ_PORT("IN0")
AM_RANGE(0x42, 0x42) AM_READ_PORT("IN1") AM_WRITE(invaders_audio_1_w)
AM_RANGE(0x44, 0x44) AM_READ_PORT("IN2") AM_WRITE(invaders_audio_2_w)
@@ -856,7 +856,7 @@ READ8_MEMBER(_8080bw_state::invrvnge_02_r)
return (data & 0x8f) | (ioport("IN1")->read() & 0x70);
}
-static ADDRESS_MAP_START( invrvnge_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::invrvnge_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ(invrvnge_02_r) AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -866,7 +866,7 @@ static ADDRESS_MAP_START( invrvnge_io_map, AS_IO, 8, _8080bw_state )
AM_RANGE(0x06, 0x06) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( invrvnge_sound_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::invrvnge_sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_ROM // dummy prg map, TODO: decrypt ROM
ADDRESS_MAP_END
@@ -1048,7 +1048,7 @@ static INPUT_PORTS_START( galxwars )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
INPUT_PORTS_END
-static ADDRESS_MAP_START( starw1_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::starw1_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2")
AM_RANGE(0x03, 0x03) AM_WRITENOP /* writes 9B at boot */
@@ -1069,13 +1069,13 @@ MACHINE_CONFIG_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( escmars_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::escmars_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x4000, 0x4fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lrescue_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::lrescue_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -1210,7 +1210,7 @@ WRITE8_MEMBER(_8080bw_state::cosmicmo_05_w)
m_flip_screen = BIT(data, 5) & BIT(ioport("IN2")->read(), 2);
}
-static ADDRESS_MAP_START( cosmicmo_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::cosmicmo_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -1330,7 +1330,7 @@ WRITE8_MEMBER(_8080bw_state::rollingc_scattered_colorram2_w)
m_scattered_colorram2[(offset & 0x1f) | ((offset & 0x1f00) >> 3)] = data;
}
-static ADDRESS_MAP_START( rollingc_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::rollingc_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x4000, 0x5fff) AM_ROM
@@ -1339,7 +1339,7 @@ static ADDRESS_MAP_START( rollingc_map, AS_PROGRAM, 8, _8080bw_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rollingc_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::rollingc_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(rollingc_sh_port_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -1416,7 +1416,7 @@ WRITE8_MEMBER(_8080bw_state::schaser_scattered_colorram_w)
m_scattered_colorram[(offset & 0x1f) | ((offset & 0x1f80) >> 2)] = data;
}
-static ADDRESS_MAP_START( schaser_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::schaser_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x4000, 0x5fff) AM_ROM
@@ -1424,7 +1424,7 @@ static ADDRESS_MAP_START( schaser_map, AS_PROGRAM, 8, _8080bw_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( schaser_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::schaser_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -1578,7 +1578,7 @@ READ8_MEMBER(_8080bw_state::schasercv_02_r)
return (data & 0x89) | (in1 & 0x70) | (BIT(in1, 3) << 1) | (BIT(in1, 7) << 2);
}
-static ADDRESS_MAP_START( schasercv_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::schasercv_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ(schasercv_02_r) AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -1674,7 +1674,7 @@ CUSTOM_INPUT_MEMBER(_8080bw_state::sflush_80_r)
return (m_screen->vpos() & 0x80) ? 1 : 0;
}
-static ADDRESS_MAP_START( sflush_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::sflush_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x8008, 0x8008) AM_READ_PORT("PADDLE")
@@ -1766,7 +1766,7 @@ MACHINE_CONFIG_END
/* */
/*******************************************************************************************/
-static ADDRESS_MAP_START( lupin3_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::lupin3_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(lupin3_00_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -1930,7 +1930,7 @@ READ8_MEMBER(_8080bw_state::polaris_port00_r)
// you will get a nice sound that accurately follows the plane.
// It sounds better then the actual circuit used.
// Probably an unfinished feature.
-static ADDRESS_MAP_START( polaris_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::polaris_io_map)
AM_RANGE(0x00, 0x00) AM_READ(polaris_port00_r) AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_WRITE(polaris_sh_port_1_w)
@@ -2106,7 +2106,7 @@ INPUT_PORTS_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( ballbomb_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::ballbomb_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(ballbomb_01_w)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -2159,13 +2159,13 @@ MACHINE_CONFIG_END
/* */
/*******************************************************/
-static ADDRESS_MAP_START( yosakdon_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::yosakdon_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x4000, 0x43ff) AM_WRITEONLY /* what's this? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yosakdon_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::yosakdon_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1")
AM_RANGE(0x03, 0x03) AM_WRITE(yosakdon_sh_port_1_w)
@@ -2347,7 +2347,7 @@ READ8_MEMBER(_8080bw_state::indianbtbr_01_r)
return (data & 0x8f) | (ioport("IN2")->read() & 0x70);
}
-static ADDRESS_MAP_START( indianbt_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::indianbt_io_map)
AM_RANGE(0x00, 0x00) AM_READ(indianbt_r)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ(invrvnge_02_r) AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -2358,7 +2358,7 @@ static ADDRESS_MAP_START( indianbt_io_map, AS_IO, 8, _8080bw_state )
AM_RANGE(0x07, 0x07) AM_WRITE(indianbt_sh_port_3_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( indianbtbr_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::indianbtbr_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ(indianbtbr_01_r)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
@@ -2430,7 +2430,7 @@ WRITE8_MEMBER(_8080bw_state::steelwkr_sh_port_3_w)
machine().bookkeeping().coin_lockout_global_w(!(~data & 0x03)); /* possibly */
}
-static ADDRESS_MAP_START( steelwkr_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::steelwkr_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x02, 0x02) AM_READ(invrvnge_02_r) AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
AM_RANGE(0x03, 0x03) AM_DEVREAD("mb14241", mb14241_device, shift_result_r) AM_WRITE(invadpt2_sh_port_1_w)
@@ -2626,7 +2626,7 @@ WRITE8_MEMBER(_8080bw_state::shuttlei_ff_w)
m_flip_screen = BIT(data, 2) & BIT(ioport(CABINET_PORT_TAG)->read(), 0);
}
-static ADDRESS_MAP_START( shuttlei_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::shuttlei_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x37ff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x3800, 0x3fff) AM_RAM
@@ -2634,7 +2634,7 @@ static ADDRESS_MAP_START( shuttlei_map, AS_PROGRAM, 8, _8080bw_state )
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") // skylove (is it mirrored, or different PCB hookup?)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shuttlei_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::shuttlei_io_map)
AM_RANGE(0xfc, 0xfc) AM_WRITENOP /* game writes 0xAA every so often (perhaps when base hit?) */
AM_RANGE(0xfd, 0xfd) AM_WRITE(shuttlei_sh_port_1_w)
AM_RANGE(0xfe, 0xfe) AM_READ_PORT("DSW") AM_WRITE(shuttlei_sh_port_2_w)
@@ -2711,13 +2711,13 @@ READ8_MEMBER(_8080bw_state::darthvdr_01_r)
return (data & 0xe1) | (ioport("P1")->read() & 0x0e);
}
-static ADDRESS_MAP_START( darthvdr_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::darthvdr_map)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x1800, 0x1fff) AM_RAM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("main_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( darthvdr_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::darthvdr_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x01, 0x01) AM_READ(darthvdr_01_r)
@@ -2799,7 +2799,7 @@ MACHINE_CONFIG_END
*
*************************************/
-static ADDRESS_MAP_START( vortex_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::vortex_io_map)
// I/O map is same as invaders but with A9 (used as A1 for I/O) inverted
ADDRESS_MAP_GLOBAL_MASK(0xFF)
AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN0")
@@ -3086,7 +3086,7 @@ READ8_MEMBER(_8080bw_state::claybust_gun_hi_r)
return m_claybust_gun_pos >> 8;
}
-static ADDRESS_MAP_START( claybust_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::claybust_io_map)
//AM_RANGE(0x00, 0x00) AM_WRITENOP // ?
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
AM_RANGE(0x02, 0x02) AM_READ(claybust_gun_lo_r) AM_DEVWRITE("mb14241", mb14241_device, shift_data_w)
@@ -3238,7 +3238,7 @@ INPUT_PORTS_END
*****************************************************/
-static ADDRESS_MAP_START( attackfc_io_map, AS_IO, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::attackfc_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x02) AM_WRITENOP // lamp?
AM_RANGE(0x03, 0x03) AM_DEVREADWRITE("mb14241", mb14241_device, shift_result_r, shift_data_w)
@@ -3367,7 +3367,7 @@ static INPUT_PORTS_START( invmulti )
PORT_BIT( 0xf8, IP_ACTIVE_HIGH, IPT_UNUSED )
INPUT_PORTS_END
-static ADDRESS_MAP_START( invmulti_map, AS_PROGRAM, 8, _8080bw_state )
+ADDRESS_MAP_START(_8080bw_state::invmulti_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x8000) AM_ROMBANK("bank1")
AM_RANGE(0x2000, 0x3fff) AM_MIRROR(0x8000) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x4000, 0x5fff) AM_MIRROR(0x8000) AM_ROMBANK("bank2")
diff --git a/src/mame/drivers/88games.cpp b/src/mame/drivers/88games.cpp
index 11f6005d1b5..9633f178e84 100644
--- a/src/mame/drivers/88games.cpp
+++ b/src/mame/drivers/88games.cpp
@@ -121,7 +121,7 @@ WRITE8_MEMBER(_88games_state::k052109_051960_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, _88games_state )
+ADDRESS_MAP_START(_88games_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("bank0000") /* banked ROM */
AM_RANGE(0x1000, 0x1fff) AM_READ_BANK("bank1000") /* banked ROM + palette RAM */
AM_RANGE(0x1000, 0x1fff) AM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -142,7 +142,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, _88games_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, _88games_state )
+ADDRESS_MAP_START(_88games_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(speech_msg_w)
diff --git a/src/mame/drivers/a2600.cpp b/src/mame/drivers/a2600.cpp
index 71a10b6ffd2..1b0b17b5554 100644
--- a/src/mame/drivers/a2600.cpp
+++ b/src/mame/drivers/a2600.cpp
@@ -29,7 +29,7 @@ TODO:
static const uint16_t supported_screen_heights[4] = { 262, 312, 328, 342 };
-static ADDRESS_MAP_START(a2600_mem, AS_PROGRAM, 8, a2600_state ) // 6507 has 13-bit address space, 0x0000 - 0x1fff
+ADDRESS_MAP_START(a2600_state::a2600_mem) // 6507 has 13-bit address space, 0x0000 - 0x1fff
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0f00) AM_DEVREADWRITE("tia_video", tia_video_device, read, write)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x0d00) AM_RAM AM_SHARE("riot_ram")
#if USE_NEW_RIOT
diff --git a/src/mame/drivers/a5105.cpp b/src/mame/drivers/a5105.cpp
index 0fb48d07aef..e7f3a8885c8 100644
--- a/src/mame/drivers/a5105.cpp
+++ b/src/mame/drivers/a5105.cpp
@@ -72,6 +72,9 @@ public:
UPD7220_DRAW_TEXT_LINE_MEMBER( hgdc_draw_text );
void a5105(machine_config &config);
+ void a5105_io(address_map &map);
+ void a5105_mem(address_map &map);
+ void upd7220_map(address_map &map);
private:
uint8_t *m_ram_base;
uint8_t *m_rom_base;
@@ -154,7 +157,7 @@ UPD7220_DRAW_TEXT_LINE_MEMBER( a5105_state::hgdc_draw_text )
}
}
-static ADDRESS_MAP_START(a5105_mem, AS_PROGRAM, 8, a5105_state)
+ADDRESS_MAP_START(a5105_state::a5105_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_READ_BANK("bank2")
@@ -347,7 +350,7 @@ WRITE8_MEMBER( a5105_state::a5105_upd765_w )
m_fdc->tc_w(BIT(data, 4));
}
-static ADDRESS_MAP_START(a5105_io, AS_IO, 8, a5105_state)
+ADDRESS_MAP_START(a5105_state::a5105_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x41) AM_DEVICE("upd765a", upd765a_device, map)
@@ -537,7 +540,7 @@ void a5105_state::video_start()
m_char_ram = memregion("pcg")->base();
}
-static ADDRESS_MAP_START( upd7220_map, 0, 16, a5105_state)
+ADDRESS_MAP_START(a5105_state::upd7220_map)
ADDRESS_MAP_GLOBAL_MASK(0x1ffff)
AM_RANGE(0x00000, 0x1ffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/a51xx.cpp b/src/mame/drivers/a51xx.cpp
index aabb433950f..750f1971e55 100644
--- a/src/mame/drivers/a51xx.cpp
+++ b/src/mame/drivers/a51xx.cpp
@@ -33,27 +33,31 @@ public:
required_device<cpu_device> m_maincpu;
void a5130(machine_config &config);
void a5120(machine_config &config);
+ void a5120_io(address_map &map);
+ void a5120_mem(address_map &map);
+ void a5130_io(address_map &map);
+ void a5130_mem(address_map &map);
};
-static ADDRESS_MAP_START(a5120_mem, AS_PROGRAM, 8, a51xx_state)
+ADDRESS_MAP_START(a51xx_state::a5120_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x03ff ) AM_ROM
AM_RANGE( 0x0400, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a5120_io, AS_IO, 8, a51xx_state)
+ADDRESS_MAP_START(a51xx_state::a5120_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(a5130_mem, AS_PROGRAM, 8, a51xx_state)
+ADDRESS_MAP_START(a51xx_state::a5130_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_ROM
AM_RANGE( 0x1000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a5130_io, AS_IO, 8, a51xx_state)
+ADDRESS_MAP_START(a51xx_state::a5130_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/a6809.cpp b/src/mame/drivers/a6809.cpp
index ccb87364c00..bec0a062dd7 100644
--- a/src/mame/drivers/a6809.cpp
+++ b/src/mame/drivers/a6809.cpp
@@ -86,6 +86,8 @@ public:
uint16_t m_start_address;
uint16_t m_cursor_address;
void a6809(machine_config &config);
+ void a6809_io(address_map &map);
+ void a6809_mem(address_map &map);
private:
uint8_t m_cass_data[4];
bool m_cass_state;
@@ -98,7 +100,7 @@ private:
};
-static ADDRESS_MAP_START(a6809_mem, AS_PROGRAM, 8, a6809_state)
+ADDRESS_MAP_START(a6809_state::a6809_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x03ff) AM_RAM
AM_RANGE(0x0400,0x07ff) AM_RAM AM_SHARE("videoram")
@@ -109,7 +111,7 @@ static ADDRESS_MAP_START(a6809_mem, AS_PROGRAM, 8, a6809_state)
AM_RANGE(0xf800,0xffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a6809_io, AS_IO, 8, a6809_state)
+ADDRESS_MAP_START(a6809_state::a6809_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/a7150.cpp b/src/mame/drivers/a7150.cpp
index 0c7b9afca88..d1f91c5daff 100644
--- a/src/mame/drivers/a7150.cpp
+++ b/src/mame/drivers/a7150.cpp
@@ -95,6 +95,11 @@ public:
required_device<address_map_bank_device> m_video_bankdev;
required_device<palette_device> m_palette;
void a7150(machine_config &config);
+ void a7150_io(address_map &map);
+ void a7150_mem(address_map &map);
+ void k7070_cpu_banked(address_map &map);
+ void k7070_cpu_io(address_map &map);
+ void k7070_cpu_mem(address_map &map);
};
@@ -276,13 +281,13 @@ WRITE8_MEMBER(a7150_state::a7150_kgs_w)
}
-static ADDRESS_MAP_START(a7150_mem, AS_PROGRAM, 16, a7150_state)
+ADDRESS_MAP_START(a7150_state::a7150_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0xf7fff) AM_RAM
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(a7150_io, AS_IO, 16, a7150_state)
+ADDRESS_MAP_START(a7150_state::a7150_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x004a, 0x004b) AM_DEVWRITE8("isbc_215g", isbc_215g_device, write, 0x00ff) // KES board
AM_RANGE(0x00c0, 0x00c3) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0x00ff)
@@ -295,7 +300,7 @@ static ADDRESS_MAP_START(a7150_io, AS_IO, 16, a7150_state)
AM_RANGE(0x0320, 0x033f) AM_UNMAP // ASP board #2
ADDRESS_MAP_END
-static ADDRESS_MAP_START(k7070_cpu_banked, AS_PROGRAM, 8, a7150_state)
+ADDRESS_MAP_START(a7150_state::k7070_cpu_banked)
ADDRESS_MAP_UNMAP_HIGH
// default map: IML=0, MSEL=0. ROM + local RAM.
AM_RANGE(0x00000, 0x01fff) AM_ROM AM_REGION("user2", 0)
@@ -314,13 +319,13 @@ static ADDRESS_MAP_START(k7070_cpu_banked, AS_PROGRAM, 8, a7150_state)
AM_RANGE(0x38000, 0x3ffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(k7070_cpu_mem, AS_PROGRAM, 8, a7150_state)
+ADDRESS_MAP_START(a7150_state::k7070_cpu_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE("video_bankdev", address_map_bank_device, read8, write8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(k7070_cpu_io, AS_IO, 8, a7150_state)
+ADDRESS_MAP_START(a7150_state::k7070_cpu_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0003) AM_DEVREADWRITE(Z80CTC_TAG, z80ctc_device, read, write)
diff --git a/src/mame/drivers/a7800.cpp b/src/mame/drivers/a7800.cpp
index bf7b5203236..62fd68ad661 100644
--- a/src/mame/drivers/a7800.cpp
+++ b/src/mame/drivers/a7800.cpp
@@ -154,6 +154,7 @@ public:
void a7800_ntsc(machine_config &config);
void a7800_pal(machine_config &config);
+ void a7800_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<tia_device> m_tia;
@@ -281,7 +282,7 @@ READ8_MEMBER(a7800_state::bios_or_cart_r)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( a7800_mem, AS_PROGRAM, 8, a7800_state )
+ADDRESS_MAP_START(a7800_state::a7800_mem)
AM_RANGE(0x0000, 0x001f) AM_MIRROR(0x300) AM_READWRITE(tia_r, tia_w)
AM_RANGE(0x0020, 0x003f) AM_MIRROR(0x300) AM_DEVREADWRITE("maria", atari_maria_device, read, write)
AM_RANGE(0x0040, 0x00ff) AM_RAMBANK("zpmirror") // mirror of 0x2040-0x20ff, for zero page
diff --git a/src/mame/drivers/aa310.cpp b/src/mame/drivers/aa310.cpp
index 84b334394d8..76bddacf57d 100644
--- a/src/mame/drivers/aa310.cpp
+++ b/src/mame/drivers/aa310.cpp
@@ -135,6 +135,7 @@ public:
void aa540(machine_config &config);
void aa440(machine_config &config);
void aa4201(machine_config &config);
+ void aa310_mem(address_map &map);
protected:
required_device<ram_device> m_ram;
};
@@ -187,7 +188,7 @@ void aa310_state::machine_reset()
archimedes_reset();
}
-static ADDRESS_MAP_START( aa310_mem, AS_PROGRAM, 32, aa310_state )
+ADDRESS_MAP_START(aa310_state::aa310_mem)
AM_RANGE(0x00000000, 0x01ffffff) AM_READWRITE(archimedes_memc_logical_r, archimedes_memc_logical_w)
AM_RANGE(0x02000000, 0x02ffffff) AM_RAM AM_SHARE("physicalram") /* physical RAM - 16 MB for now, should be 512k for the A310 */
AM_RANGE(0x03000000, 0x033fffff) AM_READWRITE(archimedes_ioc_r, archimedes_ioc_w)
diff --git a/src/mame/drivers/abc1600.cpp b/src/mame/drivers/abc1600.cpp
index 0b0fee776be..af001a435ce 100644
--- a/src/mame/drivers/abc1600.cpp
+++ b/src/mame/drivers/abc1600.cpp
@@ -491,7 +491,7 @@ WRITE8_MEMBER( abc1600_state::spec_contr_reg_w )
// ADDRESS_MAP( abc1600_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc1600_mem, AS_PROGRAM, 8, abc1600_state )
+ADDRESS_MAP_START(abc1600_state::abc1600_mem)
AM_RANGE(0x00000, 0xfffff) AM_DEVICE(ABC1600_MAC_TAG, abc1600_mac_device, map)
ADDRESS_MAP_END
@@ -500,7 +500,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( mac_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( mac_mem, AS_PROGRAM, 8, abc1600_state )
+ADDRESS_MAP_START(abc1600_state::mac_mem)
AM_RANGE(0x000000, 0x0fffff) AM_RAM
AM_RANGE(0x100000, 0x17ffff) AM_DEVICE(ABC1600_MOVER_TAG, abc1600_mover_device, vram_map)
AM_RANGE(0x1fe000, 0x1fefff) AM_READWRITE(bus_r, bus_w)
diff --git a/src/mame/drivers/abc80.cpp b/src/mame/drivers/abc80.cpp
index 333289cc441..7b108729cbe 100644
--- a/src/mame/drivers/abc80.cpp
+++ b/src/mame/drivers/abc80.cpp
@@ -177,7 +177,7 @@ WRITE8_MEMBER( abc80_state::csg_w )
// ADDRESS_MAP( abc80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc80_mem, AS_PROGRAM, 8, abc80_state )
+ADDRESS_MAP_START(abc80_state::abc80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -187,7 +187,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc80_io, AS_IO, 8, abc80_state )
+ADDRESS_MAP_START(abc80_state::abc80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x17)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE(ABCBUS_TAG, abcbus_slot_device, inp_r, out_w)
diff --git a/src/mame/drivers/abc80x.cpp b/src/mame/drivers/abc80x.cpp
index 0876ae88d72..8a89b4cedeb 100644
--- a/src/mame/drivers/abc80x.cpp
+++ b/src/mame/drivers/abc80x.cpp
@@ -429,7 +429,7 @@ WRITE8_MEMBER( abc806_state::mao_w )
// ADDRESS_MAP( abc800c_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc800c_mem, AS_PROGRAM, 8, abc800c_state )
+ADDRESS_MAP_START(abc800c_state::abc800c_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("video_ram")
AM_RANGE(0x4000, 0x7bff) AM_ROM
@@ -442,7 +442,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc800c_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc800c_io, AS_IO, 8, abc800_state )
+ADDRESS_MAP_START(abc800_state::abc800c_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x18) AM_DEVREADWRITE(ABCBUS_TAG, abcbus_slot_device, inp_r, out_w)
@@ -464,7 +464,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc800m_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc800m_mem, AS_PROGRAM, 8, abc800_state )
+ADDRESS_MAP_START(abc800_state::abc800m_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("video_ram")
AM_RANGE(0x4000, 0x77ff) AM_ROM
@@ -477,7 +477,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc800m_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc800m_io, AS_IO, 8, abc800_state )
+ADDRESS_MAP_START(abc800_state::abc800m_io)
AM_IMPORT_FROM( abc800c_io )
AM_RANGE(0x31, 0x31) AM_MIRROR(0x06) AM_DEVREAD(MC6845_TAG, mc6845_device, register_r)
AM_RANGE(0x38, 0x38) AM_MIRROR(0x06) AM_DEVWRITE(MC6845_TAG, mc6845_device, address_w)
@@ -489,7 +489,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc802_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc802_mem, AS_PROGRAM, 8, abc802_state )
+ADDRESS_MAP_START(abc802_state::abc802_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("char_ram")
@@ -501,7 +501,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc802_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc802_io, AS_IO, 8, abc802_state )
+ADDRESS_MAP_START(abc802_state::abc802_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x18) AM_DEVREADWRITE(ABCBUS_TAG, abcbus_slot_device, inp_r, out_w)
@@ -525,7 +525,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc806_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc806_mem, AS_PROGRAM, 8, abc806_state )
+ADDRESS_MAP_START(abc806_state::abc806_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("bank1")
AM_RANGE(0x1000, 0x1fff) AM_RAMBANK("bank2")
@@ -550,7 +550,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( abc806_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc806_io, AS_IO, 8, abc806_state )
+ADDRESS_MAP_START(abc806_state::abc806_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff18) AM_DEVREADWRITE(ABCBUS_TAG, abcbus_slot_device, inp_r, out_w)
AM_RANGE(0x01, 0x01) AM_MIRROR(0xff18) AM_DEVREADWRITE(ABCBUS_TAG, abcbus_slot_device, stat_r, cs_w)
diff --git a/src/mame/drivers/ac1.cpp b/src/mame/drivers/ac1.cpp
index 7dfec2d39b0..f77630cfd8f 100644
--- a/src/mame/drivers/ac1.cpp
+++ b/src/mame/drivers/ac1.cpp
@@ -34,7 +34,7 @@ static GFXDECODE_START( ac1 )
GFXDECODE_END
/* Address maps */
-static ADDRESS_MAP_START(ac1_mem, AS_PROGRAM, 8, ac1_state )
+ADDRESS_MAP_START(ac1_state::ac1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x07ff ) AM_ROM // Monitor
AM_RANGE( 0x0800, 0x0fff ) AM_ROM // BASIC
@@ -42,7 +42,7 @@ static ADDRESS_MAP_START(ac1_mem, AS_PROGRAM, 8, ac1_state )
AM_RANGE( 0x1800, 0x1fff ) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ac1_32_mem, AS_PROGRAM, 8, ac1_state )
+ADDRESS_MAP_START(ac1_state::ac1_32_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x07ff ) AM_ROM // Monitor
AM_RANGE( 0x0800, 0x0fff ) AM_ROM // BASIC
@@ -50,7 +50,7 @@ static ADDRESS_MAP_START(ac1_32_mem, AS_PROGRAM, 8, ac1_state )
AM_RANGE( 0x1800, 0xffff ) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ac1_io, AS_IO, 8, ac1_state )
+ADDRESS_MAP_START(ac1_state::ac1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("z80pio", z80pio_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/accomm.cpp b/src/mame/drivers/accomm.cpp
index 7e631ac19a5..bbd85274544 100644
--- a/src/mame/drivers/accomm.cpp
+++ b/src/mame/drivers/accomm.cpp
@@ -76,6 +76,7 @@ public:
INTERRUPT_GEN_MEMBER(vbl_int);
void accomm(machine_config &config);
+ void main_map(address_map &map);
protected:
// devices
required_device<g65816_device> m_maincpu;
@@ -633,7 +634,7 @@ WRITE_LINE_MEMBER(accomm_state::econet_clk_w)
m_adlc->txc_w(state);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, accomm_state )
+ADDRESS_MAP_START(accomm_state::main_map)
AM_RANGE(0x000000, 0x1fffff) AM_READWRITE(ram_r, ram_w) /* System RAM */
AM_RANGE(0x200000, 0x3fffff) AM_NOP /* External expansion RAM */
AM_RANGE(0x400000, 0x400000) AM_NOP /* MODEM */
diff --git a/src/mame/drivers/ace.cpp b/src/mame/drivers/ace.cpp
index 61f40af6a23..81d7c3f2db2 100644
--- a/src/mame/drivers/ace.cpp
+++ b/src/mame/drivers/ace.cpp
@@ -83,6 +83,7 @@ public:
uint32_t screen_update_ace(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ace_postload();
void ace(machine_config &config);
+ void main_map(address_map &map);
};
@@ -144,7 +145,7 @@ READ8_MEMBER(aceal_state::unk_r)
/* 3x3106 - SRAM 256x1 */
/* 1x3622 - ROM 512x4 - doesn't seem to be used ????????????*/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, aceal_state )
+ADDRESS_MAP_START(aceal_state::main_map)
AM_RANGE(0x0000, 0x09ff) AM_ROM
AM_RANGE(0x2000, 0x20ff) AM_RAM_WRITE(ace_scoreram_w) AM_SHARE("scoreram") /* 2x2101 */
diff --git a/src/mame/drivers/aceex.cpp b/src/mame/drivers/aceex.cpp
index 8e74d630901..21746c32796 100644
--- a/src/mame/drivers/aceex.cpp
+++ b/src/mame/drivers/aceex.cpp
@@ -60,9 +60,10 @@ public:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
void aceex2814(machine_config &config);
+ void aceex2814_map(address_map &map);
};
-static ADDRESS_MAP_START( aceex2814_map, AS_PROGRAM, 8, aceex2814_state )
+ADDRESS_MAP_START(aceex2814_state::aceex2814_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/acefruit.cpp b/src/mame/drivers/acefruit.cpp
index 483db69c0d4..fb5d893f686 100644
--- a/src/mame/drivers/acefruit.cpp
+++ b/src/mame/drivers/acefruit.cpp
@@ -61,6 +61,8 @@ public:
};
void acefruit(machine_config &config);
+ void acefruit_io(address_map &map);
+ void acefruit_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -314,7 +316,7 @@ PALETTE_INIT_MEMBER(acefruit_state, acefruit)
palette.set_pen_color( 15, rgb_t(0xff, 0x00, 0x00) );
}
-static ADDRESS_MAP_START( acefruit_map, AS_PROGRAM, 8, acefruit_state )
+ADDRESS_MAP_START(acefruit_state::acefruit_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x20ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("videoram")
@@ -336,7 +338,7 @@ static ADDRESS_MAP_START( acefruit_map, AS_PROGRAM, 8, acefruit_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( acefruit_io, AS_IO, 8, acefruit_state )
+ADDRESS_MAP_START(acefruit_state::acefruit_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_NOP /* ? */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/aces1.cpp b/src/mame/drivers/aces1.cpp
index 279e7b1b260..3ad27e0a4a1 100644
--- a/src/mame/drivers/aces1.cpp
+++ b/src/mame/drivers/aces1.cpp
@@ -230,6 +230,8 @@ public:
TIMER_CALLBACK_MEMBER(m_aces1_irq_timer_callback);
TIMER_CALLBACK_MEMBER(m_aces1_nmi_timer_callback);
void aces1(machine_config &config);
+ void aces1_map(address_map &map);
+ void aces1_portmap(address_map &map);
};
@@ -267,7 +269,7 @@ void aces1_state::machine_reset()
aces1_reset_irq_timer();
}
-static ADDRESS_MAP_START( aces1_map, AS_PROGRAM, 8, aces1_state )
+ADDRESS_MAP_START(aces1_state::aces1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0xadf0, 0xadf3) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, address_data_w) // Dips, Sound
@@ -279,7 +281,7 @@ static ADDRESS_MAP_START( aces1_map, AS_PROGRAM, 8, aces1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aces1_portmap, AS_IO, 8, aces1_state )
+ADDRESS_MAP_START(aces1_state::aces1_portmap)
AM_RANGE(0x00, 0x00) AM_READ(aces1_unk_port00_r) // read before enabling interrupts?
ADDRESS_MAP_END
diff --git a/src/mame/drivers/acesp.cpp b/src/mame/drivers/acesp.cpp
index fb104d13cec..954ed36bd12 100644
--- a/src/mame/drivers/acesp.cpp
+++ b/src/mame/drivers/acesp.cpp
@@ -29,6 +29,8 @@ public:
{ }
void ace_sp(machine_config &config);
+ void ace_sp_map(address_map &map);
+ void ace_sp_portmap(address_map &map);
protected:
// devices
@@ -42,7 +44,7 @@ public:
-static ADDRESS_MAP_START( ace_sp_map, AS_PROGRAM, 8, ace_sp_state )
+ADDRESS_MAP_START(ace_sp_state::ace_sp_map)
/**** 6303Y internal area ****/
//----- 0x0000 - 0x0027 is internal registers -----
AM_RANGE(0x0000, 0x0027) AM_RAM
@@ -70,7 +72,7 @@ static ADDRESS_MAP_START( ace_sp_map, AS_PROGRAM, 8, ace_sp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ace_sp_portmap, AS_IO, 8, ace_sp_state )
+ADDRESS_MAP_START(ace_sp_state::ace_sp_portmap)
//AM_RANGE(0x02, 0x02) // misc
//AM_RANGE(0x05, 0x06) // AYs
ADDRESS_MAP_END
diff --git a/src/mame/drivers/acommand.cpp b/src/mame/drivers/acommand.cpp
index 36122e4e48b..82c094d3b68 100644
--- a/src/mame/drivers/acommand.cpp
+++ b/src/mame/drivers/acommand.cpp
@@ -100,6 +100,7 @@ public:
void acommand(machine_config &config);
+ void acommand_map(address_map &map);
protected:
// virtual void video_start() override;
@@ -319,7 +320,7 @@ WRITE16_MEMBER(acommand_state::output_lamps_w)
// --xx --xx lamps
}
-static ADDRESS_MAP_START( acommand_map, AS_PROGRAM, 16, acommand_state )
+ADDRESS_MAP_START(acommand_state::acommand_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x082000, 0x082005) AM_DEVWRITE("bgtmap", megasys1_tilemap_device, scroll_w)
AM_RANGE(0x082100, 0x082105) AM_DEVWRITE("txtmap", megasys1_tilemap_device, scroll_w)
diff --git a/src/mame/drivers/acrnsys1.cpp b/src/mame/drivers/acrnsys1.cpp
index a5d376d84df..629deb5dfe6 100644
--- a/src/mame/drivers/acrnsys1.cpp
+++ b/src/mame/drivers/acrnsys1.cpp
@@ -75,6 +75,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(acrnsys1_c);
TIMER_DEVICE_CALLBACK_MEMBER(acrnsys1_p);
void acrnsys1(machine_config &config);
+ void acrnsys1_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<ttl74145_device> m_ttl74145;
@@ -163,7 +164,7 @@ WRITE8_MEMBER( acrnsys1_state::acrnsys1_led_segment_w )
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( acrnsys1_map, AS_PROGRAM, 8, acrnsys1_state )
+ADDRESS_MAP_START(acrnsys1_state::acrnsys1_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0e00, 0x0e7f) AM_MIRROR(0x100) AM_DEVREADWRITE("b1", ins8154_device, ins8154_r, ins8154_w)
AM_RANGE(0x0e80, 0x0eff) AM_MIRROR(0x100) AM_RAM
diff --git a/src/mame/drivers/actfancr.cpp b/src/mame/drivers/actfancr.cpp
index 8d35c97a4de..b162474a2e6 100644
--- a/src/mame/drivers/actfancr.cpp
+++ b/src/mame/drivers/actfancr.cpp
@@ -68,7 +68,7 @@ WRITE8_MEMBER(actfancr_state::actfancr_buffer_spriteram_w)
}
}
-static ADDRESS_MAP_START( actfan_map, AS_PROGRAM, 8, actfancr_state )
+ADDRESS_MAP_START(actfancr_state::actfan_map)
AM_RANGE(0x000000, 0x02ffff) AM_ROM
AM_RANGE(0x060000, 0x060007) AM_DEVWRITE("tilegen1", deco_bac06_device, pf_control0_8bit_w)
AM_RANGE(0x060010, 0x06001f) AM_DEVWRITE("tilegen1", deco_bac06_device, pf_control1_8bit_swap_w)
@@ -88,7 +88,7 @@ static ADDRESS_MAP_START( actfan_map, AS_PROGRAM, 8, actfancr_state )
AM_RANGE(0x1f0000, 0x1f3fff) AM_RAM AM_SHARE("main_ram") /* Main ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( triothep_map, AS_PROGRAM, 8, actfancr_state )
+ADDRESS_MAP_START(actfancr_state::triothep_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x040007) AM_DEVWRITE("tilegen2", deco_bac06_device, pf_control0_8bit_w)
AM_RANGE(0x040010, 0x04001f) AM_DEVWRITE("tilegen2", deco_bac06_device, pf_control1_8bit_swap_w)
@@ -110,7 +110,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8, actfancr_state )
+ADDRESS_MAP_START(actfancr_state::dec0_s_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_device, write)
diff --git a/src/mame/drivers/acvirus.cpp b/src/mame/drivers/acvirus.cpp
index 139524404e6..df0cad340b7 100644
--- a/src/mame/drivers/acvirus.cpp
+++ b/src/mame/drivers/acvirus.cpp
@@ -84,6 +84,7 @@ public:
DECLARE_DRIVER_INIT(virus);
void virus(machine_config &config);
+ void virus_map(address_map &map);
};
void acvirus_state::machine_start()
@@ -96,7 +97,7 @@ void acvirus_state::machine_reset()
{
}
-static ADDRESS_MAP_START( virus_map, AS_PROGRAM, 8, acvirus_state )
+ADDRESS_MAP_START(acvirus_state::virus_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0) // fixed 32K of flash image
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("rombank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/adam.cpp b/src/mame/drivers/adam.cpp
index 9c70eb07797..6c82f040866 100644
--- a/src/mame/drivers/adam.cpp
+++ b/src/mame/drivers/adam.cpp
@@ -874,7 +874,7 @@ WRITE8_MEMBER( adam_state::m6801_p4_w )
// ADDRESS_MAP( adam_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_mem, AS_PROGRAM, 8, adam_state )
+ADDRESS_MAP_START(adam_state::adam_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mreq_r, mreq_w)
ADDRESS_MAP_END
@@ -883,7 +883,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( adam_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( adam_io, AS_IO, 8, adam_state )
+ADDRESS_MAP_START(adam_state::adam_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(iorq_r, iorq_w)
ADDRESS_MAP_END
@@ -892,7 +892,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( m6801_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( m6801_mem, AS_PROGRAM, 8, adam_state )
+ADDRESS_MAP_START(adam_state::m6801_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(M6801_TAG, m6801_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_ROM AM_REGION(M6801_TAG, 0)
@@ -903,7 +903,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( m6801_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( m6801_io, AS_IO, 8, adam_state )
+ADDRESS_MAP_START(adam_state::m6801_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(m6801_p1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(m6801_p2_r, m6801_p2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3) AM_READWRITE(m6801_p3_r, m6801_p3_w)
diff --git a/src/mame/drivers/adp.cpp b/src/mame/drivers/adp.cpp
index 2820e2be70d..8bbe9b85bc9 100644
--- a/src/mame/drivers/adp.cpp
+++ b/src/mame/drivers/adp.cpp
@@ -205,6 +205,15 @@ public:
void fstation(machine_config &config);
void funland(machine_config &config);
void skattva(machine_config &config);
+ void adp_hd63484_map(address_map &map);
+ void fashiong_hd63484_map(address_map &map);
+ void fstation_hd63484_map(address_map &map);
+ void fstation_mem(address_map &map);
+ void funland_mem(address_map &map);
+ void quickjac_mem(address_map &map);
+ void ramdac_map(address_map &map);
+ void skattv_mem(address_map &map);
+ void skattva_mem(address_map &map);
};
void adp_state::skattva_nvram_init(nvram_device &nvram, void *base, size_t size)
@@ -295,7 +304,7 @@ WRITE16_MEMBER(adp_state::input_w)
m_mux_data &= 0x0f;
}
-static ADDRESS_MAP_START( skattv_mem, AS_PROGRAM, 16, adp_state )
+ADDRESS_MAP_START(adp_state::skattv_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("acrtc", hd63484_device, status16_r, address16_w)
AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE("acrtc", hd63484_device, data16_r, data16_w)
@@ -305,7 +314,7 @@ static ADDRESS_MAP_START( skattv_mem, AS_PROGRAM, 16, adp_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( skattva_mem, AS_PROGRAM, 16, adp_state )
+ADDRESS_MAP_START(adp_state::skattva_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("acrtc", hd63484_device, status16_r, address16_w)
@@ -316,7 +325,7 @@ static ADDRESS_MAP_START( skattva_mem, AS_PROGRAM, 16, adp_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quickjac_mem, AS_PROGRAM, 16, adp_state )
+ADDRESS_MAP_START(adp_state::quickjac_mem)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("acrtc", hd63484_device, status16_r, address16_w) // bad
@@ -327,7 +336,7 @@ static ADDRESS_MAP_START( quickjac_mem, AS_PROGRAM, 16, adp_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( funland_mem, AS_PROGRAM, 16, adp_state )
+ADDRESS_MAP_START(adp_state::funland_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("acrtc", hd63484_device, status16_r, address16_w)
@@ -341,7 +350,7 @@ static ADDRESS_MAP_START( funland_mem, AS_PROGRAM, 16, adp_state )
AM_RANGE(0xfc0000, 0xffffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fstation_mem, AS_PROGRAM, 16, adp_state )
+ADDRESS_MAP_START(adp_state::fstation_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE("acrtc", hd63484_device, status16_r, address16_w)
AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE("acrtc", hd63484_device, data16_r, data16_w)
@@ -516,17 +525,17 @@ INTERRUPT_GEN_MEMBER(adp_state::adp_int)
}
*/
-static ADDRESS_MAP_START( adp_hd63484_map, 0, 16, adp_state )
+ADDRESS_MAP_START(adp_state::adp_hd63484_map)
AM_RANGE(0x00000, 0x1ffff) AM_MIRROR(0x60000) AM_RAM
AM_RANGE(0x80000, 0x9ffff) AM_MIRROR(0x60000) AM_ROM AM_REGION("gfx1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fashiong_hd63484_map, 0, 16, adp_state )
+ADDRESS_MAP_START(adp_state::fashiong_hd63484_map)
AM_RANGE(0x00000, 0x1ffff) AM_MIRROR(0x60000) AM_RAM
AM_RANGE(0x80000, 0xfffff) AM_ROM AM_REGION("gfx1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fstation_hd63484_map, 0, 16, adp_state )
+ADDRESS_MAP_START(adp_state::fstation_hd63484_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_REGION("gfx1", 0)
AM_RANGE(0x80000, 0xfffff) AM_RAM
ADDRESS_MAP_END
@@ -590,7 +599,7 @@ MACHINE_CONFIG_DERIVED(adp_state::fashiong, skattv)
MCFG_HD63484_ADDRESS_MAP(fashiong_hd63484_map)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, adp_state )
+ADDRESS_MAP_START(adp_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/advision.cpp b/src/mame/drivers/advision.cpp
index 55665727133..8d6b9f1b6b9 100644
--- a/src/mame/drivers/advision.cpp
+++ b/src/mame/drivers/advision.cpp
@@ -36,12 +36,12 @@ READ8_MEMBER( advision_state::rom_r )
return m_cart->read_rom(space, offset & 0xfff);
}
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, advision_state )
+ADDRESS_MAP_START(advision_state::program_map)
AM_RANGE(0x0000, 0x03ff) AM_ROMBANK("bank1")
AM_RANGE(0x0400, 0x0fff) AM_READ(rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, advision_state )
+ADDRESS_MAP_START(advision_state::io_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(ext_ram_r, ext_ram_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/aeroboto.cpp b/src/mame/drivers/aeroboto.cpp
index 9eb8bc773ea..fc3b93ab26f 100644
--- a/src/mame/drivers/aeroboto.cpp
+++ b/src/mame/drivers/aeroboto.cpp
@@ -74,7 +74,7 @@ WRITE8_MEMBER(aeroboto_state::aeroboto_1a2_w)
m_disable_irq = 1;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, aeroboto_state )
+ADDRESS_MAP_START(aeroboto_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("mainram") // main RAM
AM_RANGE(0x01a2, 0x01a2) AM_WRITE(aeroboto_1a2_w) // affects IRQ line (more protection?)
AM_RANGE(0x0800, 0x08ff) AM_RAM // tile color buffer; copied to 0x2000
@@ -97,7 +97,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, aeroboto_state )
AM_RANGE(0x4000, 0xffff) AM_ROM // main ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aeroboto_state )
+ADDRESS_MAP_START(aeroboto_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x9000, 0x9001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x9002, 0x9002) AM_DEVREAD("ay1", ay8910_device, data_r)
diff --git a/src/mame/drivers/aerofgt.cpp b/src/mame/drivers/aerofgt.cpp
index 5e59706a838..778b80f3614 100644
--- a/src/mame/drivers/aerofgt.cpp
+++ b/src/mame/drivers/aerofgt.cpp
@@ -128,7 +128,7 @@ WRITE8_MEMBER(aerofgt_state::karatblzbl_d7759_reset_w)
m_upd7759->reset_w(data & 0x80);
}
-static ADDRESS_MAP_START( pspikes_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::pspikes_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("spriteram1")
@@ -143,7 +143,7 @@ static ADDRESS_MAP_START( pspikes_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xfff400, 0xfff403) AM_DEVWRITE8("gga", vsystem_gga_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pspikesb_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::pspikesb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("spriteram1")
@@ -161,7 +161,7 @@ static ADDRESS_MAP_START( pspikesb_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xfff400, 0xfff403) AM_WRITENOP // GGA access
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spikes91_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::spikes91_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("spriteram1")
@@ -181,7 +181,7 @@ static ADDRESS_MAP_START( spikes91_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xfff008, 0xfff009) AM_WRITE(spikes91_lookup_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pspikesc_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::pspikesc_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("spriteram1")
@@ -197,7 +197,7 @@ static ADDRESS_MAP_START( pspikesc_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xfff400, 0xfff403) AM_WRITENOP // GGA access
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kickball_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::kickball_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("spriteram1")
@@ -212,7 +212,7 @@ static ADDRESS_MAP_START( kickball_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xfff400, 0xfff403) AM_WRITENOP // GGA access
ADDRESS_MAP_END
-static ADDRESS_MAP_START( karatblz_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::karatblz_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x081fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_SHARE("bg1videoram")
@@ -234,7 +234,7 @@ static ADDRESS_MAP_START( karatblz_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0x0ff400, 0x0ff403) AM_DEVWRITE8("gga", vsystem_gga_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( karatblzbl_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::karatblzbl_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x081fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_SHARE("bg1videoram")
@@ -256,7 +256,7 @@ static ADDRESS_MAP_START( karatblzbl_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0x0ff400, 0x0ff403) AM_WRITENOP // GGA access
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spinlbrk_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::spinlbrk_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_SHARE("bg1videoram")
AM_RANGE(0x082000, 0x082fff) AM_RAM_WRITE(aerofgt_bg2videoram_w) AM_SHARE("bg2videoram")
@@ -274,7 +274,7 @@ static ADDRESS_MAP_START( spinlbrk_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xfff400, 0xfff403) AM_DEVWRITE8("gga", vsystem_gga_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( turbofrc_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::turbofrc_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */
@@ -297,7 +297,7 @@ static ADDRESS_MAP_START( turbofrc_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0x0ff400, 0x0ff403) AM_DEVWRITE8("gga", vsystem_gga_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aerofgtb_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::aerofgtb_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */
AM_RANGE(0x0d0000, 0x0d1fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_SHARE("bg1videoram")
@@ -318,7 +318,7 @@ static ADDRESS_MAP_START( aerofgtb_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0x0ff000, 0x0fffff) AM_RAM AM_SHARE("rasterram") /* used only for the scroll registers */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aerofgt_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::aerofgt_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x1a0000, 0x1a07ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x1b0000, 0x1b07ff) AM_RAM AM_SHARE("rasterram") /* used only for the scroll registers */
@@ -336,7 +336,7 @@ static ADDRESS_MAP_START( aerofgt_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xffffc0, 0xffffc1) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aerfboot_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::aerfboot_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */
AM_RANGE(0x0d0000, 0x0d1fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_SHARE("bg1videoram")
@@ -364,7 +364,7 @@ static ADDRESS_MAP_START( aerfboot_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0x10c000, 0x117fff) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aerfboo2_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::aerfboo2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */
AM_RANGE(0x0d0000, 0x0d1fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_SHARE("bg1videoram")
@@ -391,7 +391,7 @@ static ADDRESS_MAP_START( aerfboo2_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0x0ff000, 0x0fffff) AM_RAM AM_SHARE("rasterram") /* used only for the scroll registers */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wbbc97_map, AS_PROGRAM, 16, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::wbbc97_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x500000, 0x50ffff) AM_RAM /* work RAM */
AM_RANGE(0x600000, 0x605fff) AM_RAM AM_SHARE("spriteram1")
@@ -408,27 +408,27 @@ static ADDRESS_MAP_START( wbbc97_map, AS_PROGRAM, 16, aerofgt_state )
AM_RANGE(0xfff400, 0xfff403) AM_WRITENOP // GGA access
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spinlbrk_sound_portmap, AS_IO, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::spinlbrk_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(spinlbrk_sh_bankswitch_w)
AM_RANGE(0x14, 0x14) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( turbofrc_sound_portmap, AS_IO, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::turbofrc_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(aerofgt_sh_bankswitch_w)
AM_RANGE(0x14, 0x14) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aerofgt_sound_portmap, AS_IO, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::aerofgt_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(aerofgt_sh_bankswitch_w)
@@ -436,7 +436,7 @@ static ADDRESS_MAP_START( aerofgt_sound_portmap, AS_IO, 8, aerofgt_state )
AM_RANGE(0x0c, 0x0c) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aerfboot_sound_map, AS_PROGRAM, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::aerfboot_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(aerfboot_okim6295_banking_w)
@@ -444,7 +444,7 @@ static ADDRESS_MAP_START( aerfboot_sound_map, AS_PROGRAM, 8, aerofgt_state )
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wbbc97_sound_map, AS_PROGRAM, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::wbbc97_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -453,13 +453,13 @@ static ADDRESS_MAP_START( wbbc97_sound_map, AS_PROGRAM, 8, aerofgt_state )
AM_RANGE(0xfc20, 0xfc20) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( karatblzbl_sound_map, AS_PROGRAM, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::karatblzbl_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read) //AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( karatblzbl_sound_portmap, AS_IO, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::karatblzbl_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_device, status_port_r, control_port_w)
AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_device, write_port_w)
@@ -467,13 +467,13 @@ static ADDRESS_MAP_START( karatblzbl_sound_portmap, AS_IO, 8, aerofgt_state )
AM_RANGE(0x80, 0x80) AM_WRITE(karatblzbl_d7759_reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kickball_sound_map, AS_PROGRAM, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::kickball_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kickball_sound_portmap, AS_IO, 8, aerofgt_state )
+ADDRESS_MAP_START(aerofgt_state::kickball_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_device, status_port_r, control_port_w)
AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_device, write_port_w)
@@ -482,7 +482,7 @@ static ADDRESS_MAP_START( kickball_sound_portmap, AS_IO, 8, aerofgt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, aerofgt_state ) //only for aerfboot for now
+ADDRESS_MAP_START(aerofgt_state::oki_map) //only for aerfboot for now
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/agat.cpp b/src/mame/drivers/agat.cpp
index aa4732111ce..ac1576c3b59 100644
--- a/src/mame/drivers/agat.cpp
+++ b/src/mame/drivers/agat.cpp
@@ -154,6 +154,8 @@ public:
DECLARE_WRITE8_MEMBER(controller_strobe_w);
void agat7(machine_config &config);
+ void agat7_map(address_map &map);
+ void inhbank_map(address_map &map);
private:
int m_speaker_state;
int m_cassette_state;
@@ -680,7 +682,7 @@ WRITE8_MEMBER(agat7_state::agat7_ram_w)
* and are supported only on motherboards with 32K onboard.
* all extra RAM (onboard or addon) is accessible via 16K window at 0x8000.
*/
-static ADDRESS_MAP_START( agat7_map, AS_PROGRAM, 8, agat7_state )
+ADDRESS_MAP_START(agat7_state::agat7_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xbfff) AM_READWRITE(agat7_ram_r, agat7_ram_w)
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0xf) AM_READ(keyb_data_r) AM_WRITENOP
@@ -699,7 +701,7 @@ static ADDRESS_MAP_START( agat7_map, AS_PROGRAM, 8, agat7_state )
AM_RANGE(0xd000, 0xffff) AM_DEVICE(A7_UPPERBANK_TAG, address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( inhbank_map, AS_PROGRAM, 8, agat7_state )
+ADDRESS_MAP_START(agat7_state::inhbank_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM AM_REGION("maincpu", 0x1000) AM_WRITE(inh_w)
AM_RANGE(0x3000, 0x5fff) AM_READWRITE(inh_r, inh_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/age_candy.cpp b/src/mame/drivers/age_candy.cpp
index 1304cd5a456..761b334d7f9 100644
--- a/src/mame/drivers/age_candy.cpp
+++ b/src/mame/drivers/age_candy.cpp
@@ -28,6 +28,7 @@ public:
virtual void machine_reset() override;
void age_candy(machine_config &config);
+ void age_candy_map(address_map &map);
// required_device<mcs51_cpu_device> m_maincpu;
};
@@ -46,7 +47,7 @@ void age_candy_state::machine_reset()
#ifdef UNUSED_DEFINITION
-static ADDRESS_MAP_START(age_candy_map, AS_PROGRAM, 8, age_candy_state)
+ADDRESS_MAP_START(age_candy_state::age_candy_map)
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("maincpu", 0x4000)
ADDRESS_MAP_END
#endif
diff --git a/src/mame/drivers/aim65.cpp b/src/mame/drivers/aim65.cpp
index 662dce5ba5e..5ea1a041410 100644
--- a/src/mame/drivers/aim65.cpp
+++ b/src/mame/drivers/aim65.cpp
@@ -38,7 +38,7 @@ Bugs
***************************************************************************/
/* Note: RAM is mapped dynamically in machine/aim65.c */
-static ADDRESS_MAP_START( aim65_mem, AS_PROGRAM, 8, aim65_state )
+ADDRESS_MAP_START(aim65_state::aim65_mem)
AM_RANGE( 0x1000, 0x3fff ) AM_NOP /* User available expansions */
AM_RANGE( 0x4000, 0x7fff ) AM_ROM /* 4 ROM sockets in 16K PROM/ROM module */
AM_RANGE( 0x8000, 0x9fff ) AM_NOP /* User available expansions */
diff --git a/src/mame/drivers/aim65_40.cpp b/src/mame/drivers/aim65_40.cpp
index d967c3acf64..ac07ed6be62 100644
--- a/src/mame/drivers/aim65_40.cpp
+++ b/src/mame/drivers/aim65_40.cpp
@@ -77,6 +77,7 @@ public:
{ }
void aim65_40(machine_config &config);
+ void aim65_40_mem(address_map &map);
// devices
//device_t *m_via0;
//device_t *m_via1;
@@ -90,7 +91,7 @@ private:
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( aim65_40_mem, AS_PROGRAM, 8, aim65_40_state )
+ADDRESS_MAP_START(aim65_40_state::aim65_40_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0xa000, 0xcfff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0xf000, 0xff7f) AM_ROM AM_REGION("roms", 0x3000)
diff --git a/src/mame/drivers/airbustr.cpp b/src/mame/drivers/airbustr.cpp
index 9a3d54c1120..b51e771cbb6 100644
--- a/src/mame/drivers/airbustr.cpp
+++ b/src/mame/drivers/airbustr.cpp
@@ -305,7 +305,7 @@ WRITE8_MEMBER(airbustr_state::coin_counter_w)
}
/* Memory Maps */
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, airbustr_state )
+ADDRESS_MAP_START(airbustr_state::master_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("masterbank")
AM_RANGE(0xc000, 0xcfff) AM_DEVREADWRITE("pandora", kaneko_pandora_device, spriteram_r, spriteram_w)
@@ -314,14 +314,14 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, airbustr_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_io_map, AS_IO, 8, airbustr_state )
+ADDRESS_MAP_START(airbustr_state::master_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(master_bankswitch_w)
AM_RANGE(0x01, 0x01) AM_WRITENOP // ???
AM_RANGE(0x02, 0x02) AM_WRITE(master_nmi_trigger_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, airbustr_state )
+ADDRESS_MAP_START(airbustr_state::slave_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("slavebank")
AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -334,7 +334,7 @@ static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, airbustr_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_io_map, AS_IO, 8, airbustr_state )
+ADDRESS_MAP_START(airbustr_state::slave_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(slave_bankswitch_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -347,13 +347,13 @@ static ADDRESS_MAP_START( slave_io_map, AS_IO, 8, airbustr_state )
AM_RANGE(0x38, 0x38) AM_WRITENOP // irq ack / irq mask
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, airbustr_state )
+ADDRESS_MAP_START(airbustr_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("audiobank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, airbustr_state )
+ADDRESS_MAP_START(airbustr_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sound_bankswitch_w)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
diff --git a/src/mame/drivers/airraid.cpp b/src/mame/drivers/airraid.cpp
index 6998818a50b..0092c7e31bb 100644
--- a/src/mame/drivers/airraid.cpp
+++ b/src/mame/drivers/airraid.cpp
@@ -190,6 +190,10 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(cshooter_scanline);
void airraid(machine_config &config);
void airraid_crypt(machine_config &config);
+ void airraid_map(address_map &map);
+ void airraid_sound_decrypted_opcodes_map(address_map &map);
+ void airraid_sound_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
};
@@ -240,7 +244,7 @@ WRITE8_MEMBER(airraid_state::bank_w)
-static ADDRESS_MAP_START( airraid_map, AS_PROGRAM, 8, airraid_state )
+ADDRESS_MAP_START(airraid_state::airraid_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_WRITENOP // rld result write-back
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
@@ -267,11 +271,11 @@ static ADDRESS_MAP_START( airraid_map, AS_PROGRAM, 8, airraid_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("sprite_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, airraid_state )
+ADDRESS_MAP_START(airraid_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( airraid_sound_map, AS_PROGRAM, 8, airraid_state )
+ADDRESS_MAP_START(airraid_state::airraid_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, data_r)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -288,7 +292,7 @@ static ADDRESS_MAP_START( airraid_sound_map, AS_PROGRAM, 8, airraid_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( airraid_sound_decrypted_opcodes_map, AS_OPCODES, 8, airraid_state )
+ADDRESS_MAP_START(airraid_state::airraid_sound_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("audiocpu", 0x8000)
ADDRESS_MAP_END
@@ -386,7 +390,7 @@ MACHINE_CONFIG_START(airraid_state::airraid)
MCFG_CPU_ADD("audiocpu", Z80, XTAL(14'318'181)/4) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(airraid_sound_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(airraid_sound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(airraid_sound_decrypted_opcodes_map)
MCFG_QUANTUM_PERFECT_CPU("maincpu")
@@ -415,7 +419,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(airraid_state::airraid_crypt, airraid)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ajax.cpp b/src/mame/drivers/ajax.cpp
index 4c7bb289c3f..fb4dd2cc4d6 100644
--- a/src/mame/drivers/ajax.cpp
+++ b/src/mame/drivers/ajax.cpp
@@ -23,7 +23,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START( ajax_main_map, AS_PROGRAM, 8, ajax_state )
+ADDRESS_MAP_START(ajax_state::ajax_main_map)
AM_RANGE(0x0000, 0x01c0) AM_READWRITE(ls138_f10_r, ls138_f10_w) /* bankswitch + sound command + FIRQ command */
AM_RANGE(0x0800, 0x0807) AM_DEVREADWRITE("k051960", k051960_device, k051937_r, k051937_w) /* sprite control registers */
AM_RANGE(0x0c00, 0x0fff) AM_DEVREADWRITE("k051960", k051960_device, k051960_r, k051960_w) /* sprite RAM 2128SL at J7 */
@@ -34,7 +34,7 @@ static ADDRESS_MAP_START( ajax_main_map, AS_PROGRAM, 8, ajax_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM N11 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ajax_sub_map, AS_PROGRAM, 8, ajax_state )
+ADDRESS_MAP_START(ajax_state::ajax_sub_map)
AM_RANGE(0x0000, 0x07ff) AM_DEVREADWRITE("k051316", k051316_device, read, write) /* 051316 zoom/rotation layer */
AM_RANGE(0x0800, 0x080f) AM_DEVWRITE("k051316", k051316_device, ctrl_w) /* 051316 control registers */
AM_RANGE(0x1000, 0x17ff) AM_DEVREAD("k051316", k051316_device, rom_r) /* 051316 (ROM test) */
@@ -45,7 +45,7 @@ static ADDRESS_MAP_START( ajax_sub_map, AS_PROGRAM, 8, ajax_state )
AM_RANGE(0xa000, 0xffff) AM_ROM AM_REGION ("sub", 0x12000) /* ROM I16 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ajax_sound_map, AS_PROGRAM, 8, ajax_state )
+ADDRESS_MAP_START(ajax_state::ajax_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM F6 */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM 2128SL at D16 */
AM_RANGE(0x9000, 0x9000) AM_WRITE(sound_bank_w) /* 007232 bankswitch */
diff --git a/src/mame/drivers/akaiax80.cpp b/src/mame/drivers/akaiax80.cpp
index 0e88bb88b0e..81286ef059b 100644
--- a/src/mame/drivers/akaiax80.cpp
+++ b/src/mame/drivers/akaiax80.cpp
@@ -60,6 +60,7 @@ public:
{ }
void ax80(machine_config &config);
+ void ax80_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<upd7810_device> m_maincpu;
@@ -69,7 +70,7 @@ void ax80_state::machine_reset()
{
}
-static ADDRESS_MAP_START( ax80_map, AS_PROGRAM, 8, ax80_state )
+ADDRESS_MAP_START(ax80_state::ax80_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("maincpu", 0) // internal ROM
AM_RANGE(0x1000, 0x1003) AM_MIRROR(0x000c) AM_DEVREADWRITE(PIT0_TAG, pit8253_device, read, write) // IC20
AM_RANGE(0x1010, 0x1013) AM_MIRROR(0x000c) AM_DEVREADWRITE(PIT1_TAG, pit8253_device, read, write) // IC21
diff --git a/src/mame/drivers/albazc.cpp b/src/mame/drivers/albazc.cpp
index 2c26993e08b..1dc1c725220 100644
--- a/src/mame/drivers/albazc.cpp
+++ b/src/mame/drivers/albazc.cpp
@@ -51,6 +51,7 @@ public:
required_device<palette_device> m_palette;
required_device<ticket_dispenser_device> m_hopper;
void hanaroku(machine_config &config);
+ void hanaroku_map(address_map &map);
};
@@ -175,7 +176,7 @@ WRITE8_MEMBER(albazc_state::albazc_vregs_w)
/* main cpu */
-static ADDRESS_MAP_START( hanaroku_map, AS_PROGRAM, 8, albazc_state )
+ADDRESS_MAP_START(albazc_state::hanaroku_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("spriteram1")
AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("spriteram2")
diff --git a/src/mame/drivers/albazg.cpp b/src/mame/drivers/albazg.cpp
index 15537b9bac2..53f985e38f7 100644
--- a/src/mame/drivers/albazg.cpp
+++ b/src/mame/drivers/albazg.cpp
@@ -85,6 +85,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void yumefuda(machine_config &config);
+ void main_map(address_map &map);
+ void port_map(address_map &map);
};
TILE_GET_INFO_MEMBER(albazg_state::y_get_bg_tile_info)
@@ -206,7 +208,7 @@ WRITE8_MEMBER(albazg_state::yumefuda_output_w)
/***************************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, albazg_state )
+ADDRESS_MAP_START(albazg_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa7fc, 0xa7fc) AM_WRITE(prot_lock_w)
@@ -219,7 +221,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, albazg_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map, AS_IO, 8, albazg_state )
+ADDRESS_MAP_START(albazg_state::port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("crtc", mc6845_device, register_w)
diff --git a/src/mame/drivers/aleck64.cpp b/src/mame/drivers/aleck64.cpp
index 2d4222eb6f0..bd42ecbc8a8 100644
--- a/src/mame/drivers/aleck64.cpp
+++ b/src/mame/drivers/aleck64.cpp
@@ -202,6 +202,9 @@ public:
void aleck64(machine_config &config);
void a64_e90(machine_config &config);
+ void e90_map(address_map &map);
+ void n64_map(address_map &map);
+ void rsp_map(address_map &map);
protected:
optional_shared_ptr<uint32_t> m_e90_vram;
optional_shared_ptr<uint32_t> m_e90_pal;
@@ -312,7 +315,7 @@ READ32_MEMBER(aleck64_state::aleck_dips_r)
4MB @ 0xd0800000 - 0xd0bfffff doncdoon, hipai, kurufev, twrshaft, srmvs : unused
*/
-static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32, aleck64_state )
+ADDRESS_MAP_START(aleck64_state::n64_map)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM /*AM_MIRROR(0xc0000000)*/ AM_SHARE("rdram") // RDRAM
AM_RANGE(0x03f00000, 0x03f00027) AM_DEVREADWRITE("rcp", n64_periphs, rdram_reg_r, rdram_reg_w)
@@ -366,14 +369,14 @@ WRITE16_MEMBER(aleck64_state::e90_prot_w)
}
}
-static ADDRESS_MAP_START( e90_map, AS_PROGRAM, 32, aleck64_state )
+ADDRESS_MAP_START(aleck64_state::e90_map)
AM_IMPORT_FROM( n64_map )
AM_RANGE(0xd0000000, 0xd0000fff) AM_RAM AM_SHARE("e90vram")// x/y offsets
AM_RANGE(0xd0010000, 0xd0010fff) AM_RAM AM_SHARE("e90pal")// RGB555 palette
AM_RANGE(0xd0030000, 0xd003001f) AM_READWRITE16(e90_prot_r, e90_prot_w,0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rsp_map, AS_PROGRAM, 32, aleck64_state )
+ADDRESS_MAP_START(aleck64_state::rsp_map)
AM_RANGE(0x00000000, 0x00000fff) AM_RAM AM_SHARE("rsp_dmem")
AM_RANGE(0x00001000, 0x00001fff) AM_RAM AM_SHARE("rsp_imem")
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_SHARE("rsp_dmem")
diff --git a/src/mame/drivers/alesis.cpp b/src/mame/drivers/alesis.cpp
index 9dd05353191..dfe6951b2d0 100644
--- a/src/mame/drivers/alesis.cpp
+++ b/src/mame/drivers/alesis.cpp
@@ -118,12 +118,12 @@ WRITE8_MEMBER( alesis_state::mmt8_p3_w )
m_cassette->output(data & 0x10 ? -1.0 : +1.0);
}
-static ADDRESS_MAP_START(hr16_mem, AS_PROGRAM, 8, alesis_state)
+ADDRESS_MAP_START(alesis_state::hr16_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_MIRROR(0x8000) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(hr16_io, AS_IO, 8, alesis_state)
+ADDRESS_MAP_START(alesis_state::hr16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0000) AM_READ(kb_r)
AM_RANGE(0x0002, 0x0002) AM_DEVWRITE("dm3ag", alesis_dm3ag_device, write)
@@ -136,12 +136,12 @@ static ADDRESS_MAP_START(hr16_io, AS_IO, 8, alesis_state)
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("nvram") // 32Kx8 SRAM, (battery-backed)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sr16_mem, AS_PROGRAM, 8, alesis_state)
+ADDRESS_MAP_START(alesis_state::sr16_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sr16_io, AS_IO, 8, alesis_state)
+ADDRESS_MAP_START(alesis_state::sr16_io)
//ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0000) AM_MIRROR(0xff) AM_DEVWRITE("dm3ag", alesis_dm3ag_device, write)
AM_RANGE(0x0200, 0x0200) AM_MIRROR(0xff) AM_WRITE(sr16_lcd_w)
@@ -153,7 +153,7 @@ static ADDRESS_MAP_START(sr16_io, AS_IO, 8, alesis_state)
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("nvram") // 32Kx8 SRAM, (battery-backed)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mmt8_io, AS_IO, 8, alesis_state)
+ADDRESS_MAP_START(alesis_state::mmt8_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("nvram") // 2x32Kx8 SRAM, (battery-backed)
AM_RANGE(0xff02, 0xff02) AM_WRITE(track_led_w)
diff --git a/src/mame/drivers/alesis_qs.cpp b/src/mame/drivers/alesis_qs.cpp
index 12ea0764cb2..8a273db943d 100644
--- a/src/mame/drivers/alesis_qs.cpp
+++ b/src/mame/drivers/alesis_qs.cpp
@@ -25,6 +25,7 @@ public:
{ }
void qs7(machine_config &config);
+ void qs7_prog_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
};
@@ -42,7 +43,7 @@ static INPUT_PORTS_START( qs7 )
// PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("?") PORT_CODE(KEYCODE_)
INPUT_PORTS_END
-static ADDRESS_MAP_START( qs7_prog_map, AS_PROGRAM, 16, qs_state )
+ADDRESS_MAP_START(qs_state::qs7_prog_map)
//ADDRESS_MAP_GLOBAL_MASK(0x3ffff)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/alg.cpp b/src/mame/drivers/alg.cpp
index 85163ed23a8..b0f71139617 100644
--- a/src/mame/drivers/alg.cpp
+++ b/src/mame/drivers/alg.cpp
@@ -61,6 +61,11 @@ public:
void alg_r2(machine_config &config);
void picmatic(machine_config &config);
void alg_r1(machine_config &config);
+ void a500_mem(address_map &map);
+ void main_map_picmatic(address_map &map);
+ void main_map_r1(address_map &map);
+ void main_map_r2(address_map &map);
+ void overlay_512kb_map(address_map &map);
protected:
// amiga_state overrides
virtual void potgo_w(uint16_t data) override;
@@ -170,13 +175,13 @@ CUSTOM_INPUT_MEMBER(alg_state::lightgun_holster_r)
*
*************************************/
-static ADDRESS_MAP_START( overlay_512kb_map, AS_PROGRAM, 16, alg_state )
+ADDRESS_MAP_START(alg_state::overlay_512kb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x180000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, alg_state )
+ADDRESS_MAP_START(alg_state::a500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -189,19 +194,19 @@ static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, alg_state )
AM_RANGE(0xf80000, 0xffffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map_r1, AS_PROGRAM, 16, alg_state )
+ADDRESS_MAP_START(alg_state::main_map_r1)
AM_IMPORT_FROM(a500_mem)
AM_RANGE(0xf00000, 0xf1ffff) AM_ROM AM_REGION("user2", 0) /* Custom ROM */
AM_RANGE(0xf54000, 0xf55fff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map_r2, AS_PROGRAM, 16, alg_state )
+ADDRESS_MAP_START(alg_state::main_map_r2)
AM_IMPORT_FROM(a500_mem)
AM_RANGE(0xf00000, 0xf3ffff) AM_ROM AM_REGION("user2", 0) /* Custom ROM */
AM_RANGE(0xf7c000, 0xf7dfff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map_picmatic, AS_PROGRAM, 16, alg_state )
+ADDRESS_MAP_START(alg_state::main_map_picmatic)
AM_IMPORT_FROM(a500_mem)
AM_RANGE(0xf00000, 0xf1ffff) AM_ROM AM_REGION("user2", 0) /* Custom ROM */
AM_RANGE(0xf40000, 0xf41fff) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/alien.cpp b/src/mame/drivers/alien.cpp
index a2dbf1822a4..2e669dcb2c4 100644
--- a/src/mame/drivers/alien.cpp
+++ b/src/mame/drivers/alien.cpp
@@ -43,6 +43,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void alien(machine_config &config);
+ void alien_map(address_map &map);
protected:
// devices
@@ -67,7 +68,7 @@ READ64_MEMBER( alien_state::test_r )
return machine().rand();
}
-static ADDRESS_MAP_START( alien_map, AS_PROGRAM, 64, alien_state )
+ADDRESS_MAP_START(alien_state::alien_map)
AM_RANGE(0x00000000, 0x0003ffff) AM_ROM
AM_RANGE(0x08000000, 0x08000007) AM_READ(test_r) //hangs if zero
AM_RANGE(0x0cfe0000, 0x0cffffff) AM_RAM
diff --git a/src/mame/drivers/aliens.cpp b/src/mame/drivers/aliens.cpp
index 06114a773e0..64f9d1928f7 100644
--- a/src/mame/drivers/aliens.cpp
+++ b/src/mame/drivers/aliens.cpp
@@ -85,7 +85,7 @@ WRITE8_MEMBER(aliens_state::k052109_051960_w)
m_k051960->k051960_w(space, offset - 0x3c00, data);
}
-static ADDRESS_MAP_START( aliens_map, AS_PROGRAM, 8, aliens_state )
+ADDRESS_MAP_START(aliens_state::aliens_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVICE("bank0000", address_map_bank_device, amap8)
AM_RANGE(0x0400, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("rombank") /* banked ROM */
@@ -100,12 +100,12 @@ static ADDRESS_MAP_START( aliens_map, AS_PROGRAM, 8, aliens_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x28000) /* ROM e24_j02.bin */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank0000_map, AS_PROGRAM, 8, aliens_state )
+ADDRESS_MAP_START(aliens_state::bank0000_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aliens_sound_map, AS_PROGRAM, 8, aliens_state )
+ADDRESS_MAP_START(aliens_state::aliens_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM g04_b03.bin */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/alinvade.cpp b/src/mame/drivers/alinvade.cpp
index 44f0bde4c35..490e70d7914 100644
--- a/src/mame/drivers/alinvade.cpp
+++ b/src/mame/drivers/alinvade.cpp
@@ -46,6 +46,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void alinvade(machine_config &config);
+ void alinvade_map(address_map &map);
private:
uint8_t m_irqmask;
uint8_t m_irqff;
@@ -101,7 +102,7 @@ WRITE8_MEMBER(alinvade_state::irqmask_w)
m_irqff = data;
}
-static ADDRESS_MAP_START( alinvade_map, AS_PROGRAM, 8, alinvade_state )
+ADDRESS_MAP_START(alinvade_state::alinvade_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0400, 0x0bff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x0c00, 0x0dff) AM_RAM
diff --git a/src/mame/drivers/allied.cpp b/src/mame/drivers/allied.cpp
index 2f9514e21e8..75c0b4c33c8 100644
--- a/src/mame/drivers/allied.cpp
+++ b/src/mame/drivers/allied.cpp
@@ -86,6 +86,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(ic8_cb2_w);
TIMER_DEVICE_CALLBACK_MEMBER(timer_a);
void allied(machine_config &config);
+ void allied_map(address_map &map);
private:
uint32_t m_player_score[6];
uint8_t m_display;
@@ -109,7 +110,7 @@ private:
};
-static ADDRESS_MAP_START( allied_map, AS_PROGRAM, 8, allied_state )
+ADDRESS_MAP_START(allied_state::allied_map)
AM_RANGE(0x0000, 0x003f) AM_RAM // ic6
AM_RANGE(0x0044, 0x0047) AM_DEVREADWRITE("ic2", pia6821_device, read, write)
AM_RANGE(0x0048, 0x004b) AM_DEVREADWRITE("ic1", pia6821_device, read, write)
diff --git a/src/mame/drivers/alpha68k.cpp b/src/mame/drivers/alpha68k.cpp
index 1fa77937d16..633227ff1d0 100644
--- a/src/mame/drivers/alpha68k.cpp
+++ b/src/mame/drivers/alpha68k.cpp
@@ -644,7 +644,7 @@ READ16_MEMBER(alpha68k_state::alpha_V_trigger_r)
/******************************************************************************/
-static ADDRESS_MAP_START( kyros_map, AS_PROGRAM, 16, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::kyros_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM // main program
AM_RANGE(0x020000, 0x020fff) AM_RAM AM_SHARE("shared_ram") // work RAM
AM_RANGE(0x040000, 0x041fff) AM_RAM AM_SHARE("spriteram") // sprite RAM
@@ -654,7 +654,7 @@ static ADDRESS_MAP_START( kyros_map, AS_PROGRAM, 16, alpha68k_state )
AM_RANGE(0x0e0000, 0x0e0001) AM_READWRITE(kyros_dip_r, kyros_sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alpha68k_I_map, AS_PROGRAM, 16, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::alpha68k_I_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // main program
AM_RANGE(0x080000, 0x083fff) AM_RAM // work RAM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // video RAM
@@ -665,7 +665,7 @@ static ADDRESS_MAP_START( alpha68k_I_map, AS_PROGRAM, 16, alpha68k_state )
AM_RANGE(0x380000, 0x380001) AM_READ_PORT("IN2") AM_WRITE(paddlema_soundlatch_w) // LSB: sound latch write and RST38 trigger, joy3, joy4
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alpha68k_II_map, AS_PROGRAM, 16, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::alpha68k_II_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x040fff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x080000, 0x080001) AM_READ(control_1_r) /* Joysticks */
@@ -684,7 +684,7 @@ static ADDRESS_MAP_START( alpha68k_II_map, AS_PROGRAM, 16, alpha68k_state )
AM_RANGE(0x800000, 0x83ffff) AM_ROMBANK("bank8")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alpha68k_V_map, AS_PROGRAM, 16, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::alpha68k_V_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x080000, 0x080001) AM_READWRITE(control_1_r, alpha68k_V_sound_w) /* Joysticks */
@@ -704,7 +704,7 @@ ADDRESS_MAP_END
READ16_MEMBER(alpha68k_state::sound_cpu_r){ return 1; }
-static ADDRESS_MAP_START( tnextspc_map, AS_PROGRAM, 16, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::tnextspc_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x070000, 0x073fff) AM_RAM
AM_RANGE(0x0a0000, 0x0a3fff) AM_RAM AM_SHARE("spriteram")
@@ -729,13 +729,13 @@ WRITE8_MEMBER(alpha68k_state::sound_bank_w)
membank("bank7")->set_entry(data);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank7")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kyros_sound_map, AS_PROGRAM, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::kyros_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -751,7 +751,7 @@ static ADDRESS_MAP_START( kyros_sound_map, AS_PROGRAM, 8, alpha68k_state )
*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sstingry_sound_map, AS_PROGRAM, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::sstingry_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc100, 0xc100) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -760,12 +760,12 @@ static ADDRESS_MAP_START( sstingry_sound_map, AS_PROGRAM, 8, alpha68k_state )
AM_RANGE(0xc106, 0xc10e) AM_WRITENOP // soundboard I/O's, ignored
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jongbou_sound_map, AS_PROGRAM, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::jongbou_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alpha68k_I_s_map, AS_PROGRAM, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::alpha68k_I_s_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xe000, 0xe000) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, clear_w)
AM_RANGE(0xe800, 0xe800) AM_DEVREADWRITE("ymsnd", ym3812_device, status_port_r, control_port_w)
@@ -775,13 +775,13 @@ static ADDRESS_MAP_START( alpha68k_I_s_map, AS_PROGRAM, 8, alpha68k_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnextspc_sound_map, AS_PROGRAM, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::tnextspc_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, clear_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, clear_w)
AM_RANGE(0x08, 0x08) AM_DEVWRITE("dac", dac_byte_interface, write)
@@ -790,7 +790,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, alpha68k_state )
AM_RANGE(0x0e, 0x0e) AM_WRITE(sound_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kyros_sound_portmap, AS_IO, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::kyros_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x80, 0x80) AM_DEVWRITE("ym2", ym2203_device, write_port_w)
@@ -799,7 +799,7 @@ static ADDRESS_MAP_START( kyros_sound_portmap, AS_IO, 8, alpha68k_state )
AM_RANGE(0x91, 0x91) AM_DEVWRITE("ym3", ym2203_device, control_port_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jongbou_sound_portmap, AS_IO, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::jongbou_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
@@ -807,7 +807,7 @@ static ADDRESS_MAP_START( jongbou_sound_portmap, AS_IO, 8, alpha68k_state )
AM_RANGE(0x06, 0x06) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnextspc_sound_portmap, AS_IO, 8, alpha68k_state )
+ADDRESS_MAP_START(alpha68k_state::tnextspc_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_device, status_port_r, control_port_w)
AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_device, write_port_w)
diff --git a/src/mame/drivers/alphasma.cpp b/src/mame/drivers/alphasma.cpp
index 2beb9a5ecbc..792c508daff 100644
--- a/src/mame/drivers/alphasma.cpp
+++ b/src/mame/drivers/alphasma.cpp
@@ -61,6 +61,8 @@ public:
void update_lcdc(address_space &space, bool lcdc0, bool lcdc1);
void alphasmart(machine_config &config);
+ void alphasmart_io(address_map &map);
+ void alphasmart_mem(address_map &map);
protected:
uint8_t m_matrix[2];
uint8_t m_port_a;
@@ -84,6 +86,7 @@ public:
virtual DECLARE_WRITE8_MEMBER(port_a_w) override;
void asma2k(machine_config &config);
+ void asma2k_mem(address_map &map);
private:
uint8_t m_lcd_ctrl;
};
@@ -165,7 +168,7 @@ WRITE8_MEMBER(alphasmart_state::port_d_w)
}
-static ADDRESS_MAP_START(alphasmart_mem, AS_PROGRAM, 8, alphasmart_state)
+ADDRESS_MAP_START(alphasmart_state::alphasmart_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_RAMBANK("rambank")
AM_RANGE( 0x0000, 0x003f ) AM_NOP // internal registers
@@ -175,7 +178,7 @@ static ADDRESS_MAP_START(alphasmart_mem, AS_PROGRAM, 8, alphasmart_state)
AM_RANGE( 0xc000, 0xc000 ) AM_WRITE(kb_matrixl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(alphasmart_io, AS_IO, 8, alphasmart_state)
+ADDRESS_MAP_START(alphasmart_state::alphasmart_io)
AM_RANGE( MC68HC11_IO_PORTA, MC68HC11_IO_PORTA ) AM_READWRITE(port_a_r, port_a_w)
AM_RANGE( MC68HC11_IO_PORTD, MC68HC11_IO_PORTD ) AM_READWRITE(port_d_r, port_d_w)
ADDRESS_MAP_END
@@ -225,7 +228,7 @@ WRITE8_MEMBER(asma2k_state::port_a_w)
}
-static ADDRESS_MAP_START(asma2k_mem, AS_PROGRAM, 8, asma2k_state)
+ADDRESS_MAP_START(asma2k_state::asma2k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_RAMBANK("rambank")
AM_RANGE( 0x0000, 0x003f ) AM_NOP // internal registers
diff --git a/src/mame/drivers/alphatpx.cpp b/src/mame/drivers/alphatpx.cpp
index a5953069988..fff48714d8e 100644
--- a/src/mame/drivers/alphatpx.cpp
+++ b/src/mame/drivers/alphatpx.cpp
@@ -123,6 +123,9 @@ public:
void alphatp2(machine_config &config);
void alphatp2u(machine_config &config);
+ void alphatp2_io(address_map &map);
+ void alphatp2_map(address_map &map);
+ void alphatp2_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -190,6 +193,11 @@ public:
void alphatp3(machine_config &config);
void alphatp30(machine_config &config);
+ void alphatp30_8088_io(address_map &map);
+ void alphatp30_8088_map(address_map &map);
+ void alphatp3_io(address_map &map);
+ void alphatp3_map(address_map &map);
+ void alphatp3_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -217,11 +225,11 @@ private:
// ADDRESS MAPS - Alphatronic P1, P2, P2S, P2U and Hell 2069
//**************************************************************************
-static ADDRESS_MAP_START( alphatp2_mem, AS_PROGRAM, 8, alphatp_12_state )
+ADDRESS_MAP_START(alphatp_12_state::alphatp2_mem)
AM_RANGE(0x0000, 0xffff) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphatp2_map, AS_PROGRAM, 8, alphatp_12_state )
+ADDRESS_MAP_START(alphatp_12_state::alphatp2_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAMBANK("ram_0000")
AM_RANGE(0x00000, 0x017ff) AM_ROM AM_REGION("boot", 0) // P2 0x0000 , 0x17ff -hw 6kB, P3 only 4 kB
AM_RANGE(0x01800, 0x01c00) AM_RAM // boot rom variables
@@ -231,7 +239,7 @@ static ADDRESS_MAP_START( alphatp2_map, AS_PROGRAM, 8, alphatp_12_state )
AM_RANGE(0x10000, 0x1ffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphatp2_io, AS_IO, 8, alphatp_12_state )
+ADDRESS_MAP_START(alphatp_12_state::alphatp2_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x04, 0x04) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
AM_RANGE(0x05, 0x05) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
@@ -253,11 +261,11 @@ WRITE8_MEMBER(alphatp_12_state::bank_w)
// ADDRESS MAPS - Alphatronic P3, P4, P30 and P40
//**************************************************************************
-static ADDRESS_MAP_START( alphatp3_mem, AS_PROGRAM, 8, alphatp_34_state )
+ADDRESS_MAP_START(alphatp_34_state::alphatp3_mem)
AM_RANGE(0x0000, 0xffff) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphatp3_map, AS_PROGRAM, 8, alphatp_34_state )
+ADDRESS_MAP_START(alphatp_34_state::alphatp3_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAMBANK("ram_0000")
AM_RANGE(0x00000, 0x017ff) AM_ROM AM_REGION("boot", 0) // P2 0x0000 , 0x17ff -hw 6kB, P3 only 4 kB
AM_RANGE(0x01800, 0x01c00) AM_RAM // boot rom variables
@@ -267,7 +275,7 @@ static ADDRESS_MAP_START( alphatp3_map, AS_PROGRAM, 8, alphatp_34_state )
AM_RANGE(0x10000, 0x1ffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphatp3_io, AS_IO, 8, alphatp_34_state )
+ADDRESS_MAP_START(alphatp_34_state::alphatp3_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x04, 0x04) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
AM_RANGE(0x05, 0x05) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
@@ -279,12 +287,12 @@ static ADDRESS_MAP_START( alphatp3_io, AS_IO, 8, alphatp_34_state )
AM_RANGE(0x78, 0x78) AM_WRITE(bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphatp30_8088_map, AS_PROGRAM, 8, alphatp_34_state )
+ADDRESS_MAP_START(alphatp_34_state::alphatp30_8088_map)
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("16bit", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphatp30_8088_io, AS_IO, 8, alphatp_34_state )
+ADDRESS_MAP_START(alphatp_34_state::alphatp30_8088_io)
AM_RANGE(0xffe0, 0xffe1) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/alphatro.cpp b/src/mame/drivers/alphatro.cpp
index c4e11a7b684..6b892dffae5 100644
--- a/src/mame/drivers/alphatro.cpp
+++ b/src/mame/drivers/alphatro.cpp
@@ -106,6 +106,11 @@ public:
DECLARE_FLOPPY_FORMATS( floppy_formats );
void alphatro(machine_config &config);
+ void alphatro_io(address_map &map);
+ void alphatro_map(address_map &map);
+ void cartbank_map(address_map &map);
+ void monbank_map(address_map &map);
+ void rombank_map(address_map &map);
private:
uint8_t *m_ram_ptr;
required_device<ram_device> m_ram;
@@ -383,7 +388,7 @@ INPUT_CHANGED_MEMBER( alphatro_state::alphatro_break )
m_maincpu->set_input_line(INPUT_LINE_IRQ0, HOLD_LINE);
}
-static ADDRESS_MAP_START( alphatro_map, AS_PROGRAM, 8, alphatro_state )
+ADDRESS_MAP_START(alphatro_state::alphatro_map)
AM_RANGE(0x0000, 0x5fff) AM_DEVICE("lowbank", address_map_bank_device, amap8)
AM_RANGE(0x6000, 0x9fff) AM_READWRITE(ram6000_r, ram6000_w)
AM_RANGE(0xa000, 0xdfff) AM_DEVICE("cartbank", address_map_bank_device, amap8)
@@ -392,23 +397,23 @@ static ADDRESS_MAP_START( alphatro_map, AS_PROGRAM, 8, alphatro_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rombank_map, AS_PROGRAM, 8, alphatro_state )
+ADDRESS_MAP_START(alphatro_state::rombank_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_REGION("roms", 0x0000) AM_WRITE(ram0000_w)
AM_RANGE(0x6000, 0xbfff) AM_READWRITE(ram0000_r, ram0000_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cartbank_map, AS_PROGRAM, 8, alphatro_state )
+ADDRESS_MAP_START(alphatro_state::cartbank_map)
AM_RANGE(0x0000, 0x3fff) AM_DEVREAD("cartslot", generic_slot_device, read_rom) AM_WRITE(rama000_w)
AM_RANGE(0x4000, 0x7fff) AM_READWRITE(rama000_r, rama000_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( monbank_map, AS_PROGRAM, 8, alphatro_state )
+ADDRESS_MAP_START(alphatro_state::monbank_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x1000, 0x1fff) AM_ROM AM_REGION("roms", 0x8000)
AM_RANGE(0x2000, 0x2fff) AM_ROM AM_REGION("roms", 0x9000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphatro_io, AS_IO, 8, alphatro_state )
+ADDRESS_MAP_START(alphatro_state::alphatro_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x10, 0x10) AM_READWRITE(port10_r, port10_w)
diff --git a/src/mame/drivers/altair.cpp b/src/mame/drivers/altair.cpp
index a7735e6abec..a28507f8267 100644
--- a/src/mame/drivers/altair.cpp
+++ b/src/mame/drivers/altair.cpp
@@ -44,6 +44,8 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER(altair);
void altair(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -52,14 +54,14 @@ private:
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, altair_state)
+ADDRESS_MAP_START(altair_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xfcff ) AM_RAM AM_SHARE("ram")
AM_RANGE( 0xfd00, 0xfdff ) AM_ROM
AM_RANGE( 0xff00, 0xffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, altair_state)
+ADDRESS_MAP_START(altair_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// TODO: Remove AM_MIRROR() and use SIO address S0-S7
diff --git a/src/mame/drivers/alto2.cpp b/src/mame/drivers/alto2.cpp
index d06368e5861..3a66a2bacad 100644
--- a/src/mame/drivers/alto2.cpp
+++ b/src/mame/drivers/alto2.cpp
@@ -34,6 +34,9 @@ public:
DECLARE_MACHINE_RESET(alto2);
void alto2(machine_config &config);
+ void alto2_const_map(address_map &map);
+ void alto2_iomem_map(address_map &map);
+ void alto2_ucode_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<speaker_sound_device> m_speaker;
@@ -261,15 +264,15 @@ ROM_END
// ADDRESS MAPS
//**************************************************************************
-ADDRESS_MAP_START( alto2_ucode_map, 0, 32, alto2_state )
+ADDRESS_MAP_START(alto2_state::alto2_ucode_map)
AM_RANGE(0, 4*ALTO2_UCODE_PAGE_SIZE-1) AM_DEVICE32( "maincpu", alto2_cpu_device, ucode_map, 0xffffffffUL )
ADDRESS_MAP_END
-ADDRESS_MAP_START( alto2_const_map, 1, 16, alto2_state )
+ADDRESS_MAP_START(alto2_state::alto2_const_map)
AM_RANGE(0, ALTO2_CONST_SIZE-1) AM_DEVICE16( "maincpu", alto2_cpu_device, const_map, 0xffffU )
ADDRESS_MAP_END
-ADDRESS_MAP_START( alto2_iomem_map, 2, 16, alto2_state )
+ADDRESS_MAP_START(alto2_state::alto2_iomem_map)
AM_RANGE(0, 2*ALTO2_RAM_SIZE-1) AM_DEVICE16( "maincpu", alto2_cpu_device, iomem_map, 0xffffU )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/altos2.cpp b/src/mame/drivers/altos2.cpp
index e570b3542c5..928a602bc3e 100644
--- a/src/mame/drivers/altos2.cpp
+++ b/src/mame/drivers/altos2.cpp
@@ -41,6 +41,8 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void altos2(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
@@ -68,12 +70,12 @@ u32 altos2_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, con
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, altos2_state )
+ADDRESS_MAP_START(altos2_state::mem_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, altos2_state)
+ADDRESS_MAP_START(altos2_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("dart1", z80dart_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/altos486.cpp b/src/mame/drivers/altos486.cpp
index e7a8eae4f79..ff4589e7f51 100644
--- a/src/mame/drivers/altos486.cpp
+++ b/src/mame/drivers/altos486.cpp
@@ -40,6 +40,10 @@ public:
uint8_t m_prot[256];
uint16_t m_viol[16];
void altos486(machine_config &config);
+ void altos486_io(address_map &map);
+ void altos486_mem(address_map &map);
+ void altos486_z80_io(address_map &map);
+ void altos486_z80_mem(address_map &map);
};
READ8_MEMBER(altos486_state::read_rmx_ack)
@@ -98,23 +102,23 @@ static SLOT_INTERFACE_START( altos486_floppies )
SLOT_INTERFACE( "525qd", FLOPPY_525_QD )
SLOT_INTERFACE_END
-static ADDRESS_MAP_START(altos486_mem, AS_PROGRAM, 16, altos486_state)
+ADDRESS_MAP_START(altos486_state::altos486_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(mmu_ram_r, mmu_ram_w) AM_SHARE("main_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(altos486_io, AS_IO, 16, altos486_state)
+ADDRESS_MAP_START(altos486_state::altos486_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mmu_io_r, mmu_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(altos486_z80_mem, AS_PROGRAM, 8, altos486_state)
+ADDRESS_MAP_START(altos486_state::altos486_z80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("iocpu", 0)
AM_RANGE(0x2000, 0x27ff) AM_RAM
//AM_RANGE(0x8000, 0xffff) AM_READWRITE(z80_shared_r, z80_shared_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(altos486_z80_io, AS_IO, 8, altos486_state)
+ADDRESS_MAP_START(altos486_state::altos486_z80_io)
//AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("sio0", z80sio0_device, read, write)
//AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("sio1", z80sio0_device, read, write)
//AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("sio2", z80sio0_device, read, write)
diff --git a/src/mame/drivers/altos5.cpp b/src/mame/drivers/altos5.cpp
index f08b004b689..5316510cac0 100644
--- a/src/mame/drivers/altos5.cpp
+++ b/src/mame/drivers/altos5.cpp
@@ -49,6 +49,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(fdc_intrq_w);
void altos5(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_port08;
uint8_t m_port09;
@@ -67,7 +69,7 @@ private:
required_device<floppy_connector> m_floppy1;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, altos5_state)
+ADDRESS_MAP_START(altos5_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE( 0x1000, 0x1fff ) AM_READ_BANK("bankr1") AM_WRITE_BANK("bankw1")
@@ -87,7 +89,7 @@ static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, altos5_state)
AM_RANGE( 0xf000, 0xffff ) AM_READ_BANK("bankrf") AM_WRITE_BANK("bankwf")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, altos5_state)
+ADDRESS_MAP_START(altos5_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("dma", z80dma_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("fdc", fd1797_device, read, write)
diff --git a/src/mame/drivers/altos8600.cpp b/src/mame/drivers/altos8600.cpp
index 80a08730e22..c518e5c14a6 100644
--- a/src/mame/drivers/altos8600.cpp
+++ b/src/mame/drivers/altos8600.cpp
@@ -67,6 +67,13 @@ public:
DECLARE_WRITE8_MEMBER(ics_attn_w);
IRQ_CALLBACK_MEMBER(inta);
void altos8600(machine_config &config);
+ void code_mem(address_map &map);
+ void cpu_io(address_map &map);
+ void cpu_mem(address_map &map);
+ void dmac_io(address_map &map);
+ void dmac_mem(address_map &map);
+ void extra_mem(address_map &map);
+ void stack_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -626,31 +633,31 @@ IRQ_CALLBACK_MEMBER(altos8600_state::inta)
return m_pic1->acknowledge();
}
-static ADDRESS_MAP_START(cpu_mem, AS_PROGRAM, 16, altos8600_state)
+ADDRESS_MAP_START(altos8600_state::cpu_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(cpuram_r, cpuram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(stack_mem, i8086_cpu_device::AS_STACK, 16, altos8600_state)
+ADDRESS_MAP_START(altos8600_state::stack_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(stkram_r, stkram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(code_mem, i8086_cpu_device::AS_CODE, 16, altos8600_state)
+ADDRESS_MAP_START(altos8600_state::code_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(coderam_r, coderam_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(extra_mem, i8086_cpu_device::AS_EXTRA, 16, altos8600_state)
+ADDRESS_MAP_START(altos8600_state::extra_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(xtraram_r, xtraram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(cpu_io, AS_IO, 16, altos8600_state)
+ADDRESS_MAP_START(altos8600_state::cpu_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(cpuio_r, cpuio_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dmac_mem, AS_PROGRAM, 16, altos8600_state)
+ADDRESS_MAP_START(altos8600_state::dmac_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(dmacram_r, dmacram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dmac_io, AS_IO, 16, altos8600_state)
+ADDRESS_MAP_START(altos8600_state::dmac_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(nmi_r, nmi_w)
AM_RANGE(0x0000, 0x0007) AM_READ(fault_r)
AM_RANGE(0x0008, 0x000f) AM_WRITE(clear_w)
@@ -682,7 +689,7 @@ MACHINE_CONFIG_START(altos8600_state::altos8600)
MCFG_CPU_ADD("maincpu", I8086, XTAL(5'000'000))
MCFG_CPU_PROGRAM_MAP(cpu_mem)
MCFG_CPU_IO_MAP(cpu_io)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(code_mem)
+ MCFG_CPU_OPCODES_MAP(code_mem)
MCFG_I8086_STACK_MAP(stack_mem)
MCFG_I8086_CODE_MAP(code_mem)
MCFG_I8086_EXTRA_MAP(extra_mem)
diff --git a/src/mame/drivers/alvg.cpp b/src/mame/drivers/alvg.cpp
index 44388c2aef3..ac27c198432 100644
--- a/src/mame/drivers/alvg.cpp
+++ b/src/mame/drivers/alvg.cpp
@@ -13,6 +13,7 @@ public:
{ }
void alvg(machine_config &config);
+ void alvg_map(address_map &map);
protected:
// devices
@@ -25,7 +26,7 @@ public:
};
-static ADDRESS_MAP_START( alvg_map, AS_PROGRAM, 8, alvg_state )
+ADDRESS_MAP_START(alvg_state::alvg_map)
AM_RANGE(0x0000, 0xffff) AM_NOP
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0xffff) AM_ROM
diff --git a/src/mame/drivers/amaticmg.cpp b/src/mame/drivers/amaticmg.cpp
index 00c5ef87eb7..ff0b65c3e21 100644
--- a/src/mame/drivers/amaticmg.cpp
+++ b/src/mame/drivers/amaticmg.cpp
@@ -469,6 +469,10 @@ public:
void amaticmg2(machine_config &config);
void amaticmg(machine_config &config);
void amaticmg4(machine_config &config);
+ void amaticmg2_portmap(address_map &map);
+ void amaticmg4_portmap(address_map &map);
+ void amaticmg_map(address_map &map);
+ void amaticmg_portmap(address_map &map);
};
@@ -641,7 +645,7 @@ WRITE8_MEMBER( amaticmg_state::unk80_w )
* Memory Map Information *
************************************/
-static ADDRESS_MAP_START( amaticmg_map, AS_PROGRAM, 8, amaticmg_state )
+ADDRESS_MAP_START(amaticmg_state::amaticmg_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM // AM_SHARE("nvram")
AM_RANGE(0xa000, 0xafff) AM_RAM AM_SHARE("vram")
@@ -649,7 +653,7 @@ static ADDRESS_MAP_START( amaticmg_map, AS_PROGRAM, 8, amaticmg_state )
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amaticmg_portmap, AS_IO, 8, amaticmg_state )
+ADDRESS_MAP_START(amaticmg_state::amaticmg_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
@@ -662,7 +666,7 @@ static ADDRESS_MAP_START( amaticmg_portmap, AS_IO, 8, amaticmg_state )
// AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac2", dac_byte_interface, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amaticmg2_portmap, AS_IO, 8, amaticmg_state )
+ADDRESS_MAP_START(amaticmg_state::amaticmg2_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -675,7 +679,7 @@ static ADDRESS_MAP_START( amaticmg2_portmap, AS_IO, 8, amaticmg_state )
AM_RANGE(0xe8, 0xeb) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amaticmg4_portmap, AS_IO, 8, amaticmg_state )
+ADDRESS_MAP_START(amaticmg_state::amaticmg4_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
diff --git a/src/mame/drivers/ambush.cpp b/src/mame/drivers/ambush.cpp
index fccfbf1f12c..55029fbb325 100644
--- a/src/mame/drivers/ambush.cpp
+++ b/src/mame/drivers/ambush.cpp
@@ -98,6 +98,9 @@ public:
void mariobl(machine_config &config);
void ambush(machine_config &config);
void dkong3abl(machine_config &config);
+ void bootleg_map(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
private:
void register_save_states();
@@ -117,7 +120,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, ambush_state )
+ADDRESS_MAP_START(ambush_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
@@ -131,7 +134,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, ambush_state )
AM_RANGE(0xcc00, 0xcc07) AM_WRITE(output_latches_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, ambush_state )
+ADDRESS_MAP_START(ambush_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ay1", ay8910_device, data_r, address_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_w)
@@ -139,7 +142,7 @@ static ADDRESS_MAP_START( main_portmap, AS_IO, 8, ambush_state )
AM_RANGE(0x81, 0x81) AM_DEVWRITE("ay2", ay8910_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, ambush_state )
+ADDRESS_MAP_START(ambush_state::bootleg_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x77ff) AM_RAM
diff --git a/src/mame/drivers/amerihok.cpp b/src/mame/drivers/amerihok.cpp
index 96ff255301d..2852376444a 100644
--- a/src/mame/drivers/amerihok.cpp
+++ b/src/mame/drivers/amerihok.cpp
@@ -41,6 +41,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<okim6376_device> m_oki;
void amerihok(machine_config &config);
+ void amerihok_data_map(address_map &map);
+ void amerihok_map(address_map &map);
};
WRITE8_MEMBER(amerihok_state::control_w)
@@ -49,11 +51,11 @@ WRITE8_MEMBER(amerihok_state::control_w)
m_oki->ch2_w(!BIT(data, 7));
}
-static ADDRESS_MAP_START(amerihok_map, AS_PROGRAM, 8, amerihok_state)
+ADDRESS_MAP_START(amerihok_state::amerihok_map)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(amerihok_data_map, AS_DATA, 8, amerihok_state)
+ADDRESS_MAP_START(amerihok_state::amerihok_data_map)
AM_RANGE(0x2000, 0x2000) AM_WRITE(control_w)
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("oki", okim6376_device, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/amico2k.cpp b/src/mame/drivers/amico2k.cpp
index 19d78817b5b..78a1bd35aac 100644
--- a/src/mame/drivers/amico2k.cpp
+++ b/src/mame/drivers/amico2k.cpp
@@ -58,10 +58,11 @@ public:
TIMER_CALLBACK_MEMBER(led_refresh);
required_device<cpu_device> m_maincpu;
void amico2k(machine_config &config);
+ void amico2k_mem(address_map &map);
};
-static ADDRESS_MAP_START( amico2k_mem, AS_PROGRAM, 8, amico2k_state )
+ADDRESS_MAP_START(amico2k_state::amico2k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM
// AM_RANGE(0x0400, 0x07ff) AM_RAM // optional expansion RAM
diff --git a/src/mame/drivers/amiga.cpp b/src/mame/drivers/amiga.cpp
index ef3731da8ee..94ebe009ce8 100644
--- a/src/mame/drivers/amiga.cpp
+++ b/src/mame/drivers/amiga.cpp
@@ -47,6 +47,9 @@ public:
void a1000(machine_config &config);
void a1000n(machine_config &config);
+ void a1000_bootrom_map(address_map &map);
+ void a1000_mem(address_map &map);
+ void a1000_overlay_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -79,6 +82,7 @@ public:
void a2000(machine_config &config);
void a2000n(machine_config &config);
+ void a2000_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -114,6 +118,7 @@ public:
void a500n(machine_config &config);
void a500(machine_config &config);
+ void a500_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -160,6 +165,8 @@ public:
void cdtv(machine_config &config);
void cdtvn(machine_config &config);
+ void cdtv_mem(address_map &map);
+ void cdtv_rc_mem(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -197,6 +204,7 @@ public:
void a3000(machine_config &config);
void a3000n(machine_config &config);
+ void a3000_mem(address_map &map);
protected:
private:
@@ -221,6 +229,7 @@ public:
void a500pn(machine_config &config);
void a500p(machine_config &config);
+ void a500p_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -255,6 +264,7 @@ public:
void a600n(machine_config &config);
void a600(machine_config &config);
+ void a600_mem(address_map &map);
protected:
virtual bool int2_pending() override;
@@ -279,6 +289,7 @@ public:
void a1200(machine_config &config);
void a1200n(machine_config &config);
+ void a1200_mem(address_map &map);
protected:
virtual bool int2_pending() override;
@@ -316,6 +327,9 @@ public:
void a4000n(machine_config &config);
void a4000(machine_config &config);
void a400030(machine_config &config);
+ void a400030_mem(address_map &map);
+ void a4000_mem(address_map &map);
+ void a4000t_mem(address_map &map);
protected:
private:
@@ -357,6 +371,7 @@ public:
void cd32n(machine_config &config);
void cd32(machine_config &config);
+ void cd32_mem(address_map &map);
protected:
// amiga_state overrides
virtual void potgo_w(uint16_t data) override;
@@ -965,7 +980,7 @@ WRITE8_MEMBER( cd32_state::akiko_cia_0_port_a_write )
// Akiko custom chip.
#if 0
-static ADDRESS_MAP_START( a1000_overlay_map, AS_PROGRAM, 16, a1000_state )
+ADDRESS_MAP_START(a1000_state::a1000_overlay_map)
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x1c0000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x20ffff) AM_MIRROR(0x030000) AM_ROM AM_REGION("bootrom", 0)
AM_RANGE(0x280000, 0x2bffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("chip_ram")
@@ -974,7 +989,7 @@ static ADDRESS_MAP_START( a1000_overlay_map, AS_PROGRAM, 16, a1000_state )
ADDRESS_MAP_END
#endif
-static ADDRESS_MAP_START( a1000_overlay_map, AS_PROGRAM, 16, a1000_state )
+ADDRESS_MAP_START(a1000_state::a1000_overlay_map)
AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x180000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x20ffff) AM_MIRROR(0x030000) AM_ROM AM_REGION("bootrom", 0)
AM_RANGE(0x280000, 0x2fffff) AM_RAM AM_SHARE("chip_ram")
@@ -982,12 +997,12 @@ static ADDRESS_MAP_START( a1000_overlay_map, AS_PROGRAM, 16, a1000_state )
AM_RANGE(0x380000, 0x38ffff) AM_MIRROR(0x030000) AM_ROM AM_REGION("bootrom", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a1000_bootrom_map, AS_PROGRAM, 16, a1000_state )
+ADDRESS_MAP_START(a1000_state::a1000_bootrom_map)
AM_RANGE(0x000000, 0x00ffff) AM_MIRROR(0x30000) AM_ROM AM_REGION("bootrom", 0) AM_WRITE(write_protect_w)
AM_RANGE(0x040000, 0x07ffff) AM_ROMBANK("wom")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a1000_mem, AS_PROGRAM, 16, a1000_state )
+ADDRESS_MAP_START(a1000_state::a1000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -999,42 +1014,42 @@ static ADDRESS_MAP_START( a1000_mem, AS_PROGRAM, 16, a1000_state )
ADDRESS_MAP_END
// Gary/Super Gary/Gayle with 512KB chip RAM
-static ADDRESS_MAP_START( overlay_512kb_map, AS_PROGRAM, 16, amiga_state )
+ADDRESS_MAP_START(amiga_state::overlay_512kb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x180000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
// Gary/Super Gary/Gayle with 1MB chip RAM
-static ADDRESS_MAP_START( overlay_1mb_map, AS_PROGRAM, 16, amiga_state )
+ADDRESS_MAP_START(amiga_state::overlay_1mb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_MIRROR(0x100000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
// Gary/Super Gary/Gayle with 1MB chip RAM (32 bit system)
-static ADDRESS_MAP_START( overlay_1mb_map32, AS_PROGRAM, 32, amiga_state )
+ADDRESS_MAP_START(amiga_state::overlay_1mb_map32)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_MIRROR(0x100000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
// Gary/Super Gary/Gayle with 2MB chip RAM (32 bit system)
-static ADDRESS_MAP_START( overlay_2mb_map16, AS_PROGRAM, 16, amiga_state )
+ADDRESS_MAP_START(amiga_state::overlay_2mb_map16)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
// Gary/Super Gary/Gayle with 2MB chip RAM (32 bit system)
-static ADDRESS_MAP_START( overlay_2mb_map32, AS_PROGRAM, 32, amiga_state )
+ADDRESS_MAP_START(amiga_state::overlay_2mb_map32)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
// 512KB chip RAM, 512KB slow RAM, RTC
-static ADDRESS_MAP_START( a2000_mem, AS_PROGRAM, 16, a2000_state )
+ADDRESS_MAP_START(a2000_state::a2000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -1052,7 +1067,7 @@ static ADDRESS_MAP_START( a2000_mem, AS_PROGRAM, 16, a2000_state )
ADDRESS_MAP_END
// 512KB chip RAM and no clock
-static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, a500_state )
+ADDRESS_MAP_START(a500_state::a500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -1067,7 +1082,7 @@ static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, a500_state )
ADDRESS_MAP_END
// 1MB chip RAM, RTC and CDTV specific hardware
-static ADDRESS_MAP_START( cdtv_mem, AS_PROGRAM, 16, cdtv_state )
+ADDRESS_MAP_START(cdtv_state::cdtv_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -1084,11 +1099,11 @@ static ADDRESS_MAP_START( cdtv_mem, AS_PROGRAM, 16, cdtv_state )
AM_RANGE(0xf80000, 0xffffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cdtv_rc_mem, AS_PROGRAM, 8, cdtv_state )
+ADDRESS_MAP_START(cdtv_state::cdtv_rc_mem)
AM_RANGE(0x0800, 0x0fff) AM_ROM AM_REGION("rcmcu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a3000_mem, AS_PROGRAM, 32, a3000_state )
+ADDRESS_MAP_START(a3000_state::a3000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x001fffff) AM_DEVICE("overlay", address_map_bank_device, amap32)
AM_RANGE(0x00b80000, 0x00bfffff) AM_READWRITE16(cia_r, cia_w, 0xffffffff)
@@ -1105,7 +1120,7 @@ static ADDRESS_MAP_START( a3000_mem, AS_PROGRAM, 32, a3000_state )
ADDRESS_MAP_END
// 1MB chip RAM and RTC
-static ADDRESS_MAP_START( a500p_mem, AS_PROGRAM, 16, a500p_state )
+ADDRESS_MAP_START(a500p_state::a500p_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -1122,7 +1137,7 @@ static ADDRESS_MAP_START( a500p_mem, AS_PROGRAM, 16, a500p_state )
ADDRESS_MAP_END
// 1MB chip RAM, IDE and PCMCIA
-static ADDRESS_MAP_START( a600_mem, AS_PROGRAM, 16, a600_state )
+ADDRESS_MAP_START(a600_state::a600_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0x200000, 0xa7ffff) AM_NOP
@@ -1146,7 +1161,7 @@ static ADDRESS_MAP_START( a600_mem, AS_PROGRAM, 16, a600_state )
ADDRESS_MAP_END
// 2MB chip RAM, IDE and PCMCIA
-static ADDRESS_MAP_START( a1200_mem, AS_PROGRAM, 32, a1200_state )
+ADDRESS_MAP_START(a1200_state::a1200_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap32)
AM_RANGE(0x200000, 0xa7ffff) AM_NOP
@@ -1170,7 +1185,7 @@ static ADDRESS_MAP_START( a1200_mem, AS_PROGRAM, 32, a1200_state )
ADDRESS_MAP_END
// 2MB chip RAM, 4 MB fast RAM, RTC and IDE
-static ADDRESS_MAP_START( a4000_mem, AS_PROGRAM, 32, a4000_state )
+ADDRESS_MAP_START(a4000_state::a4000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x001fffff) AM_DEVICE("overlay", address_map_bank_device, amap32)
AM_RANGE(0x00200000, 0x009fffff) AM_NOP // zorro2 expansion
@@ -1197,7 +1212,7 @@ static ADDRESS_MAP_START( a4000_mem, AS_PROGRAM, 32, a4000_state )
ADDRESS_MAP_END
// 2MB chip RAM, 2 MB fast RAM, RTC and IDE
-static ADDRESS_MAP_START( a400030_mem, AS_PROGRAM, 32, a4000_state )
+ADDRESS_MAP_START(a4000_state::a400030_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(a4000_mem)
AM_RANGE(0x07000000, 0x07dfffff) AM_NOP // motherboard ram
@@ -1205,7 +1220,7 @@ static ADDRESS_MAP_START( a400030_mem, AS_PROGRAM, 32, a4000_state )
ADDRESS_MAP_END
// 2MB chip RAM and CD-ROM
-static ADDRESS_MAP_START( cd32_mem, AS_PROGRAM, 32, cd32_state )
+ADDRESS_MAP_START(cd32_state::cd32_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap32)
AM_RANGE(0xb80000, 0xb8003f) AM_DEVREADWRITE("akiko", akiko_device, read, write)
@@ -1217,7 +1232,7 @@ static ADDRESS_MAP_START( cd32_mem, AS_PROGRAM, 32, cd32_state )
ADDRESS_MAP_END
// 2 MB chip RAM, IDE, RTC and SCSI
-static ADDRESS_MAP_START( a4000t_mem, AS_PROGRAM, 32, a4000_state )
+ADDRESS_MAP_START(a4000_state::a4000t_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(a4000_mem)
AM_RANGE(0x00dd0000, 0x00dd0fff) AM_READWRITE(scsi_r, scsi_w)
diff --git a/src/mame/drivers/ampex.cpp b/src/mame/drivers/ampex.cpp
index 13b5d8951f6..651a7389678 100644
--- a/src/mame/drivers/ampex.cpp
+++ b/src/mame/drivers/ampex.cpp
@@ -56,6 +56,7 @@ public:
DECLARE_WRITE8_MEMBER(uart_status_update);
void ampex(machine_config &config);
+ void mem_map(address_map &map);
private:
virtual void machine_start() override;
@@ -164,7 +165,7 @@ WRITE8_MEMBER(ampex_state::uart_status_update)
// DAV should generate RST 7
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, ampex_state )
+ADDRESS_MAP_START(ampex_state::mem_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x4000, 0x43ff) AM_RAM // main RAM
AM_RANGE(0x4400, 0x57ff) AM_RAM // expansion RAM
diff --git a/src/mame/drivers/ampoker2.cpp b/src/mame/drivers/ampoker2.cpp
index d7d51cc8a2b..5a266a8e87c 100644
--- a/src/mame/drivers/ampoker2.cpp
+++ b/src/mame/drivers/ampoker2.cpp
@@ -591,13 +591,13 @@ WRITE8_MEMBER(ampoker2_state::ampoker2_watchdog_reset_w)
* Memory map information *
*************************/
-static ADDRESS_MAP_START( ampoker2_map, AS_PROGRAM, 8, ampoker2_state )
+ADDRESS_MAP_START(ampoker2_state::ampoker2_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(ampoker2_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ampoker2_io_map, AS_IO, 8, ampoker2_state )
+ADDRESS_MAP_START(ampoker2_state::ampoker2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x0f) AM_WRITENOP /* inexistent in the real hardware */
AM_RANGE(0x10, 0x10) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/ampro.cpp b/src/mame/drivers/ampro.cpp
index 1e89e9a2ca4..cf31b75d42e 100644
--- a/src/mame/drivers/ampro.cpp
+++ b/src/mame/drivers/ampro.cpp
@@ -52,6 +52,8 @@ public:
DECLARE_WRITE8_MEMBER(io_w);
void ampro(machine_config &config);
+ void ampro_io(address_map &map);
+ void ampro_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<z80dart_device> m_dart;
@@ -94,13 +96,13 @@ WRITE8_MEMBER( ampro_state::io_w )
m_dart->ba_cd_w(space, offset>>2, data);
}
-static ADDRESS_MAP_START(ampro_mem, AS_PROGRAM, 8, ampro_state)
+ADDRESS_MAP_START(ampro_state::ampro_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x1000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ampro_io, AS_IO, 8, ampro_state)
+ADDRESS_MAP_START(ampro_state::ampro_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(port00_w) // system
diff --git a/src/mame/drivers/amspdwy.cpp b/src/mame/drivers/amspdwy.cpp
index 012ccfd5211..62afe73e49e 100644
--- a/src/mame/drivers/amspdwy.cpp
+++ b/src/mame/drivers/amspdwy.cpp
@@ -71,7 +71,7 @@ READ8_MEMBER(amspdwy_state::amspdwy_sound_r)
return (m_ym2151->status_r(space, 0) & ~0x30) | ioport("IN0")->read();
}
-static ADDRESS_MAP_START( amspdwy_map, AS_PROGRAM, 8, amspdwy_state )
+ADDRESS_MAP_START(amspdwy_state::amspdwy_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x801f) AM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0400) AM_RAM_WRITE(amspdwy_videoram_w) AM_SHARE("videoram")
@@ -88,7 +88,7 @@ static ADDRESS_MAP_START( amspdwy_map, AS_PROGRAM, 8, amspdwy_state )
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amspdwy_portmap, AS_IO, 8, amspdwy_state )
+ADDRESS_MAP_START(amspdwy_state::amspdwy_portmap)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("tracks", 0)
ADDRESS_MAP_END
@@ -102,7 +102,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( amspdwy_sound_map, AS_PROGRAM, 8, amspdwy_state )
+ADDRESS_MAP_START(amspdwy_state::amspdwy_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
// AM_RANGE(0x8000, 0x8000) AM_WRITENOP // ? writes 0 at start
AM_RANGE(0x9000, 0x9000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/amstr_pc.cpp b/src/mame/drivers/amstr_pc.cpp
index 8b74351e5ce..de960a821ea 100644
--- a/src/mame/drivers/amstr_pc.cpp
+++ b/src/mame/drivers/amstr_pc.cpp
@@ -90,18 +90,22 @@ public:
void pc2086(machine_config &config);
void ppc640(machine_config &config);
void ppc512(machine_config &config);
+ void pc200_io(address_map &map);
+ void pc2086_map(address_map &map);
+ void ppc512_io(address_map &map);
+ void ppc640_map(address_map &map);
};
-static ADDRESS_MAP_START( ppc640_map, AS_PROGRAM, 16, amstrad_pc_state )
+ADDRESS_MAP_START(amstrad_pc_state::ppc640_map)
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc2086_map, AS_PROGRAM, 16, amstrad_pc_state )
+ADDRESS_MAP_START(amstrad_pc_state::pc2086_map)
AM_RANGE(0xc0000, 0xc9fff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0x10000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pc200_io, AS_IO, 16, amstrad_pc_state )
+ADDRESS_MAP_START(amstrad_pc_state::pc200_io)
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", pc_noppi_mb_device, map, 0xffff)
AM_RANGE(0x0060, 0x0065) AM_READWRITE8(pc1640_port60_r, pc1640_port60_w, 0xffff)
AM_RANGE(0x0078, 0x0079) AM_READWRITE8(pc1640_mouse_x_r, pc1640_mouse_x_w, 0xffff)
@@ -112,7 +116,7 @@ static ADDRESS_MAP_START(pc200_io, AS_IO, 16, amstrad_pc_state )
AM_RANGE(0x03bc, 0x03bf) AM_DEVREADWRITE8("lpt_0", pc_lpt_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ppc512_io, AS_IO, 16, amstrad_pc_state )
+ADDRESS_MAP_START(amstrad_pc_state::ppc512_io)
AM_IMPORT_FROM(pc200_io)
AM_RANGE(0x0070, 0x0071) AM_DEVREADWRITE8("rtc", mc146818_device, read, write, 0xffff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/amstrad.cpp b/src/mame/drivers/amstrad.cpp
index 37e268f7466..e83284ec119 100644
--- a/src/mame/drivers/amstrad.cpp
+++ b/src/mame/drivers/amstrad.cpp
@@ -123,7 +123,7 @@ Some bugs left :
/* Memory is banked in 16k blocks. However, the multiface
pages the memory in 8k blocks! The ROM can
be paged into bank 0 and bank 3. */
-static ADDRESS_MAP_START(amstrad_mem, AS_PROGRAM, 8, amstrad_state )
+ADDRESS_MAP_START(amstrad_state::amstrad_mem)
AM_RANGE(0x00000, 0x01fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank9")
AM_RANGE(0x02000, 0x03fff) AM_READ_BANK("bank2") AM_WRITE_BANK("bank10")
AM_RANGE(0x04000, 0x05fff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank11")
@@ -137,7 +137,7 @@ ADDRESS_MAP_END
/* I've handled the I/O ports in this way, because the ports
are not fully decoded by the CPC h/w. Doing it this way means
I can decode it myself and a lot of software should work */
-static ADDRESS_MAP_START(amstrad_io, AS_IO, 8, amstrad_state )
+ADDRESS_MAP_START(amstrad_state::amstrad_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(amstrad_cpc_io_r, amstrad_cpc_io_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/amusco.cpp b/src/mame/drivers/amusco.cpp
index ca83c71a86c..a8c55d35b72 100644
--- a/src/mame/drivers/amusco.cpp
+++ b/src/mame/drivers/amusco.cpp
@@ -129,6 +129,8 @@ public:
DECLARE_PALETTE_INIT(amusco);
void amusco(machine_config &config);
void draw88pkr(machine_config &config);
+ void amusco_io_map(address_map &map);
+ void amusco_mem_map(address_map &map);
protected:
virtual void video_start() override;
virtual void machine_start() override;
@@ -197,7 +199,7 @@ void amusco_state::machine_start()
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( amusco_mem_map, AS_PROGRAM, 8, amusco_state )
+ADDRESS_MAP_START(amusco_state::amusco_mem_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM
AM_RANGE(0xf8000, 0xfffff) AM_ROM
ADDRESS_MAP_END
@@ -356,7 +358,7 @@ WRITE8_MEMBER(amusco_state::rtc_control_w)
m_rtc->read_w(BIT(data, 4));
}
-static ADDRESS_MAP_START( amusco_io_map, AS_IO, 8, amusco_state )
+ADDRESS_MAP_START(amusco_state::amusco_io_map)
AM_RANGE(0x0000, 0x0001) AM_READWRITE(mc6845_r, mc6845_w)
AM_RANGE(0x0010, 0x0011) AM_DEVWRITE("pic8259", pic8259_device, write)
AM_RANGE(0x0020, 0x0023) AM_DEVWRITE("pit8253", pit8253_device, write)
diff --git a/src/mame/drivers/amust.cpp b/src/mame/drivers/amust.cpp
index fbba23ce7a3..bf770d4e8ba 100644
--- a/src/mame/drivers/amust.cpp
+++ b/src/mame/drivers/amust.cpp
@@ -132,6 +132,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void amust(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
u8 m_port04;
u8 m_port06;
@@ -172,13 +174,13 @@ void amust_state::device_timer(emu_timer &timer, device_timer_id id, int param,
// floppy->ss_w(BIT(data, 4));
//}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, amust_state )
+ADDRESS_MAP_START(amust_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, amust_state )
+ADDRESS_MAP_START(amust_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("uart1", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/anes.cpp b/src/mame/drivers/anes.cpp
index 2f223df67ea..f09051f21bb 100644
--- a/src/mame/drivers/anes.cpp
+++ b/src/mame/drivers/anes.cpp
@@ -42,6 +42,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void anes(machine_config &config);
+ void io_map(address_map &map);
+ void prg_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -74,12 +76,12 @@ WRITE8_MEMBER(anes_state::blit_trigger_w)
//printf("%02x%02x%02x\n",m_vram_offset[0],m_vram_offset[1],m_vram_offset[2]);
}
-static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, anes_state )
+ADDRESS_MAP_START(anes_state::prg_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, anes_state )
+ADDRESS_MAP_START(anes_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
diff --git a/src/mame/drivers/angelkds.cpp b/src/mame/drivers/angelkds.cpp
index 8fd41668baf..4621014362a 100644
--- a/src/mame/drivers/angelkds.cpp
+++ b/src/mame/drivers/angelkds.cpp
@@ -165,7 +165,7 @@ contain a level.
*/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, angelkds_state )
+ADDRESS_MAP_START(angelkds_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -184,12 +184,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, angelkds_state )
AM_RANGE(0xf005, 0xf005) AM_WRITE(angelkds_layer_ctrl_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, angelkds_state )
+ADDRESS_MAP_START(angelkds_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, angelkds_state )
+ADDRESS_MAP_START(angelkds_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP // 00 on start-up, not again
@@ -205,7 +205,7 @@ ADDRESS_MAP_END
/* sub cpu */
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, angelkds_state )
+ADDRESS_MAP_START(angelkds_state::sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xaaa9, 0xaaa9) AM_READNOP
@@ -213,7 +213,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, angelkds_state )
AM_RANGE(0xaaac, 0xaaac) AM_READNOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_portmap, AS_IO, 8, angelkds_state )
+ADDRESS_MAP_START(angelkds_state::sub_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
@@ -571,7 +571,7 @@ MACHINE_CONFIG_DERIVED(angelkds_state::spcpostn, angelkds)
MCFG_CPU_PROGRAM_MAP(main_map)
MCFG_CPU_IO_MAP(main_portmap)
MCFG_CPU_VBLANK_INT_DRIVER("screen", angelkds_state, irq0_line_hold)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGAZ80_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/anzterm.cpp b/src/mame/drivers/anzterm.cpp
index eb491fa3a4a..6e588e1f21b 100644
--- a/src/mame/drivers/anzterm.cpp
+++ b/src/mame/drivers/anzterm.cpp
@@ -368,6 +368,7 @@ public:
return 0;
}
void anzterm(machine_config &config);
+ void anzterm(address_map &map);
};
@@ -400,7 +401,7 @@ GFXDECODE_START( anzterm )
GFXDECODE_END
-ADDRESS_MAP_START( anzterm, AS_PROGRAM, 8, anzterm_state )
+ADDRESS_MAP_START(anzterm_state::anzterm)
// There are two battery-backed 2kB SRAM chips with a 4kb SRAM chip for parity
// There are two 64kB DRAM banks (with parity)
// There's also a whole lot of ROM
diff --git a/src/mame/drivers/apc.cpp b/src/mame/drivers/apc.cpp
index a02ba94bcf1..0b9aac3a046 100644
--- a/src/mame/drivers/apc.cpp
+++ b/src/mame/drivers/apc.cpp
@@ -154,6 +154,10 @@ public:
UPD7220_DRAW_TEXT_LINE_MEMBER( hgdc_draw_text );
void apc(machine_config &config);
+ void apc_io(address_map &map);
+ void apc_map(address_map &map);
+ void upd7220_1_map(address_map &map);
+ void upd7220_2_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -464,7 +468,7 @@ RTC write bits: 76543210
m_rtc->oe_w(1);
}
-static ADDRESS_MAP_START( apc_map, AS_PROGRAM, 16, apc_state )
+ADDRESS_MAP_START(apc_state::apc_map)
AM_RANGE(0x00000, 0x9ffff) AM_RAM
AM_RANGE(0xa0000, 0xa0fff) AM_RAM AM_SHARE("cmos")
// AM_RANGE(0xa1000, 0xbffff) mirror CMOS
@@ -474,7 +478,7 @@ static ADDRESS_MAP_START( apc_map, AS_PROGRAM, 16, apc_state )
AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apc_io, AS_IO, 16, apc_state )
+ADDRESS_MAP_START(apc_state::apc_io)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x1f) AM_READWRITE8(apc_dma_r, apc_dma_w,0xff00)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE8("pic8259_master", pic8259_device, read, write, 0x00ff) // i8259
@@ -786,11 +790,11 @@ GFXDECODE_END
-static ADDRESS_MAP_START( upd7220_1_map, 0, 16, apc_state)
+ADDRESS_MAP_START(apc_state::upd7220_1_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("video_ram_1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd7220_2_map, 0, 16, apc_state )
+ADDRESS_MAP_START(apc_state::upd7220_2_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("video_ram_2")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/apexc.cpp b/src/mame/drivers/apexc.cpp
index 95443f9ddbc..a1804dde795 100644
--- a/src/mame/drivers/apexc.cpp
+++ b/src/mame/drivers/apexc.cpp
@@ -53,6 +53,7 @@ public:
required_device<palette_device> m_palette;
required_device<screen_device> m_screen;
void apexc(machine_config &config);
+ void apexc_mem_map(address_map &map);
};
void apexc_state::machine_start()
@@ -843,7 +844,7 @@ static GFXDECODE_START( apexc )
GFXDECODE_END
-static ADDRESS_MAP_START(apexc_mem_map, AS_PROGRAM, 32, apexc_state )
+ADDRESS_MAP_START(apexc_state::apexc_mem_map)
#if 0
AM_RANGE(0x0000, 0x03ff) AM_RAM /* 1024 32-bit words (expandable to 8192) */
AM_RANGE(0x0400, 0x1fff) AM_NOP
diff --git a/src/mame/drivers/apf.cpp b/src/mame/drivers/apf.cpp
index d381df67c79..64973311355 100644
--- a/src/mame/drivers/apf.cpp
+++ b/src/mame/drivers/apf.cpp
@@ -123,6 +123,8 @@ public:
void apfm1000(machine_config &config);
void apfimag(machine_config &config);
+ void apfimag_map(address_map &map);
+ void apfm1000_map(address_map &map);
private:
uint8_t m_latch;
uint8_t m_keyboard_data;
@@ -312,7 +314,7 @@ WRITE8_MEMBER( apf_state::serial_w)
logerror("serial w %04x %04x\n",offset,data);
}
-static ADDRESS_MAP_START( apfm1000_map, AS_PROGRAM, 8, apf_state )
+ADDRESS_MAP_START(apf_state::apfm1000_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x4000, 0x4fff) AM_MIRROR(0x1000) AM_ROM AM_REGION("roms", 0)
@@ -321,7 +323,7 @@ static ADDRESS_MAP_START( apfm1000_map, AS_PROGRAM, 8, apf_state )
AM_RANGE(0xe000, 0xefff) AM_MIRROR(0x1000) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apfimag_map, AS_PROGRAM, 8, apf_state )
+ADDRESS_MAP_START(apf_state::apfimag_map)
AM_IMPORT_FROM(apfm1000_map)
AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x03fc) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
// These need to be confirmed, disk does not work
diff --git a/src/mame/drivers/apogee.cpp b/src/mame/drivers/apogee.cpp
index 8ccee7f2fb3..707632de396 100644
--- a/src/mame/drivers/apogee.cpp
+++ b/src/mame/drivers/apogee.cpp
@@ -43,11 +43,12 @@ public:
required_device<speaker_sound_device> m_speaker;
void apogee(machine_config &config);
+ void apogee_mem(address_map &map);
};
/* Address maps */
-static ADDRESS_MAP_START(apogee_mem, AS_PROGRAM, 8, apogee_state )
+ADDRESS_MAP_START(apogee_state::apogee_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0xebff ) AM_RAM // RAM
AM_RANGE( 0xec00, 0xec03 ) AM_DEVREADWRITE("pit8253", pit8253_device, read, write) AM_MIRROR(0x00fc)
diff --git a/src/mame/drivers/apollo.cpp b/src/mame/drivers/apollo.cpp
index 0d9f540f1f3..f4aac203fbb 100644
--- a/src/mame/drivers/apollo.cpp
+++ b/src/mame/drivers/apollo.cpp
@@ -678,7 +678,7 @@ WRITE32_MEMBER(apollo_state::apollo_f8_w){
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(dn3500_map, AS_PROGRAM, 32, apollo_state )
+ADDRESS_MAP_START(apollo_state::dn3500_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(apollo_unmapped_r, apollo_unmapped_w)
AM_RANGE(0x000000, 0x00ffff) AM_ROM /* boot ROM */
@@ -722,7 +722,7 @@ static ADDRESS_MAP_START(dn3500_map, AS_PROGRAM, 32, apollo_state )
// AM_RANGE(0xf8000000, 0xffffffff) AM_READWRITE(apollo_f8_r, apollo_f8_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dsp3500_map, AS_PROGRAM, 32, apollo_state )
+ADDRESS_MAP_START(apollo_state::dsp3500_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(apollo_unmapped_r, apollo_unmapped_w)
AM_RANGE(0x000000, 0x00ffff) AM_ROM /* boot ROM */
AM_RANGE(0x000000, 0x00ffff) AM_WRITE(apollo_rom_w)
@@ -754,7 +754,7 @@ static ADDRESS_MAP_START(dsp3500_map, AS_PROGRAM, 32, apollo_state )
// AM_RANGE(0xf8000000, 0xffffffff) AM_READWRITE(apollo_f8_r, apollo_f8_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dn3000_map, AS_PROGRAM, 32, apollo_state )
+ADDRESS_MAP_START(apollo_state::dn3000_map)
AM_RANGE(0x000000, 0xffffff) AM_READWRITE(apollo_unmapped_r, apollo_unmapped_w)
AM_RANGE(0x000000, 0x007fff) AM_ROM /* boot ROM */
@@ -786,7 +786,7 @@ static ADDRESS_MAP_START(dn3000_map, AS_PROGRAM, 32, apollo_state )
AM_RANGE(0x0a0000, 0x0bffff) AM_DEVREADWRITE16(APOLLO_SCREEN_TAG, apollo_graphics_15i, apollo_cgm_r, apollo_cgm_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dsp3000_map, AS_PROGRAM, 32, apollo_state )
+ADDRESS_MAP_START(apollo_state::dsp3000_map)
AM_RANGE(0x000000, 0xffffff) AM_READWRITE(apollo_unmapped_r, apollo_unmapped_w)
AM_RANGE(0x000000, 0x007fff) AM_ROM /* boot ROM */
@@ -815,7 +815,7 @@ static ADDRESS_MAP_START(dsp3000_map, AS_PROGRAM, 32, apollo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dn5500_map, AS_PROGRAM, 32, apollo_state )
+ADDRESS_MAP_START(apollo_state::dn5500_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(apollo_unmapped_r, apollo_unmapped_w)
AM_RANGE(0x000000, 0x00ffff) AM_ROM /* boot ROM */
AM_RANGE(0x000000, 0x00ffff) AM_WRITE(apollo_rom_w)
@@ -861,7 +861,7 @@ static ADDRESS_MAP_START(dn5500_map, AS_PROGRAM, 32, apollo_state )
// AM_RANGE(0xf8000000, 0xffffffff) AM_READWRITE(apollo_f8_r, apollo_f8_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dsp5500_map, AS_PROGRAM, 32, apollo_state )
+ADDRESS_MAP_START(apollo_state::dsp5500_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(apollo_unmapped_r, apollo_unmapped_w)
AM_RANGE(0x000000, 0x00ffff) AM_ROM /* boot ROM */
AM_RANGE(0x000000, 0x00ffff) AM_WRITE(apollo_rom_w)
diff --git a/src/mame/drivers/apple1.cpp b/src/mame/drivers/apple1.cpp
index 903a3b598c6..46396fcc91e 100644
--- a/src/mame/drivers/apple1.cpp
+++ b/src/mame/drivers/apple1.cpp
@@ -127,6 +127,7 @@ public:
TIMER_CALLBACK_MEMBER(keyboard_strobe_cb);
void apple1(machine_config &config);
+ void apple1_map(address_map &map);
private:
uint8_t *m_ram_ptr, *m_char_ptr;
int m_ram_size, m_char_size;
@@ -426,7 +427,7 @@ WRITE8_MEMBER(apple1_state::ram_w)
}
}
-static ADDRESS_MAP_START( apple1_map, AS_PROGRAM, 8, apple1_state )
+ADDRESS_MAP_START(apple1_state::apple1_map)
AM_RANGE(0x0000, 0xbfff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0xd010, 0xd013) AM_MIRROR(0x0fec) AM_DEVREADWRITE(A1_PIA_TAG, pia6821_device, read, write)
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE(A1_BASICRAM_TAG)
diff --git a/src/mame/drivers/apple2.cpp b/src/mame/drivers/apple2.cpp
index bdd1d117e87..a6b95ef52ae 100644
--- a/src/mame/drivers/apple2.cpp
+++ b/src/mame/drivers/apple2.cpp
@@ -189,6 +189,8 @@ public:
void apple2(machine_config &config);
void space84(machine_config &config);
void apple2p(machine_config &config);
+ void apple2_map(address_map &map);
+ void inhbank_map(address_map &map);
private:
int m_speaker_state;
int m_cassette_state;
@@ -948,7 +950,7 @@ WRITE8_MEMBER(napple2_state::ram_w)
}
}
-static ADDRESS_MAP_START( apple2_map, AS_PROGRAM, 8, napple2_state )
+ADDRESS_MAP_START(napple2_state::apple2_map)
AM_RANGE(0x0000, 0xbfff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0xf) AM_READ(keyb_data_r) AM_WRITENOP
AM_RANGE(0xc010, 0xc010) AM_MIRROR(0xf) AM_READWRITE(keyb_strobe_r, keyb_strobe_w)
@@ -964,7 +966,7 @@ static ADDRESS_MAP_START( apple2_map, AS_PROGRAM, 8, napple2_state )
AM_RANGE(0xd000, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( inhbank_map, AS_PROGRAM, 8, napple2_state )
+ADDRESS_MAP_START(napple2_state::inhbank_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM AM_REGION("maincpu", 0x1000) AM_WRITE(inh_w)
AM_RANGE(0x3000, 0x5fff) AM_READWRITE(inh_r, inh_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/apple2e.cpp b/src/mame/drivers/apple2e.cpp
index b5cc3e937b8..8544b8d9d8e 100644
--- a/src/mame/drivers/apple2e.cpp
+++ b/src/mame/drivers/apple2e.cpp
@@ -374,6 +374,23 @@ public:
void apple2c(machine_config &config);
void tk3000(machine_config &config);
void apple2ee(machine_config &config);
+ void apple2c_map(address_map &map);
+ void apple2c_memexp_map(address_map &map);
+ void apple2e_map(address_map &map);
+ void c100bank_map(address_map &map);
+ void c300bank_map(address_map &map);
+ void c400bank_map(address_map &map);
+ void c800bank_map(address_map &map);
+ void inhbank_map(address_map &map);
+ void laser128_map(address_map &map);
+ void lcbank_map(address_map &map);
+ void r0000bank_map(address_map &map);
+ void r0200bank_map(address_map &map);
+ void r0400bank_map(address_map &map);
+ void r0800bank_map(address_map &map);
+ void r2000bank_map(address_map &map);
+ void r4000bank_map(address_map &map);
+ void spectred_keyb_map(address_map &map);
private:
int m_speaker_state;
int m_cassette_state, m_cassette_out;
@@ -2672,7 +2689,7 @@ WRITE8_MEMBER(apple2e_state::auxram2000_w) { if (m_aux_bank_ptr) { m_aux_bank_pt
READ8_MEMBER(apple2e_state::auxram4000_r) { if (m_aux_bank_ptr) { return m_aux_bank_ptr[offset+0x4000]; } else { return read_floatingbus(); } }
WRITE8_MEMBER(apple2e_state::auxram4000_w) { if (m_aux_bank_ptr) { m_aux_bank_ptr[offset+0x4000] = data; } }
-static ADDRESS_MAP_START( apple2e_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::apple2e_map)
AM_RANGE(0x0000, 0x01ff) AM_DEVICE(A2_0000_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0200, 0x03ff) AM_DEVICE(A2_0200_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0400, 0x07ff) AM_DEVICE(A2_0400_TAG, address_map_bank_device, amap8)
@@ -2688,7 +2705,7 @@ static ADDRESS_MAP_START( apple2e_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0xd000, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apple2c_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::apple2c_map)
AM_RANGE(0x0000, 0x01ff) AM_DEVICE(A2_0000_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0200, 0x03ff) AM_DEVICE(A2_0200_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0400, 0x07ff) AM_DEVICE(A2_0400_TAG, address_map_bank_device, amap8)
@@ -2706,7 +2723,7 @@ static ADDRESS_MAP_START( apple2c_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0xd000, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apple2c_memexp_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::apple2c_memexp_map)
AM_RANGE(0x0000, 0x01ff) AM_DEVICE(A2_0000_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0200, 0x03ff) AM_DEVICE(A2_0200_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0400, 0x07ff) AM_DEVICE(A2_0400_TAG, address_map_bank_device, amap8)
@@ -2725,7 +2742,7 @@ static ADDRESS_MAP_START( apple2c_memexp_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0xd000, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( laser128_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::laser128_map)
AM_RANGE(0x0000, 0x01ff) AM_DEVICE(A2_0000_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0200, 0x03ff) AM_DEVICE(A2_0200_TAG, address_map_bank_device, amap8)
AM_RANGE(0x0400, 0x07ff) AM_DEVICE(A2_0400_TAG, address_map_bank_device, amap8)
@@ -2745,40 +2762,40 @@ static ADDRESS_MAP_START( laser128_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0xd000, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( r0000bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::r0000bank_map)
AM_RANGE(0x0000, 0x01ff) AM_READWRITE(ram0000_r, ram0000_w)
AM_RANGE(0x0200, 0x03ff) AM_READWRITE(auxram0000_r, auxram0000_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( r0200bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::r0200bank_map)
AM_RANGE(0x0000, 0x01ff) AM_READWRITE(ram0200_r, ram0200_w) // wr 0 rd 0
AM_RANGE(0x0200, 0x03ff) AM_READWRITE(auxram0200_r, ram0200_w) // wr 0 rd 1
AM_RANGE(0x0400, 0x05ff) AM_READWRITE(ram0200_r, auxram0200_w) // wr 1 rd 0
AM_RANGE(0x0600, 0x07ff) AM_READWRITE(auxram0200_r, auxram0200_w) // wr 1 rd 1
ADDRESS_MAP_END
-static ADDRESS_MAP_START( r0400bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::r0400bank_map)
AM_RANGE(0x0000, 0x03ff) AM_READWRITE(ram0400_r, ram0400_w) // wr 0 rd 0
AM_RANGE(0x0400, 0x07ff) AM_READWRITE(auxram0400_r, ram0400_w) // wr 0 rd 1
AM_RANGE(0x0800, 0x0bff) AM_READWRITE(ram0400_r, auxram0400_w) // wr 1 rd 0
AM_RANGE(0x0c00, 0x0fff) AM_READWRITE(auxram0400_r, auxram0400_w) // wr 1 rd 1
ADDRESS_MAP_END
-static ADDRESS_MAP_START( r0800bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::r0800bank_map)
AM_RANGE(0x0000, 0x17ff) AM_READWRITE(ram0800_r, ram0800_w)
AM_RANGE(0x2000, 0x37ff) AM_READWRITE(auxram0800_r, ram0800_w)
AM_RANGE(0x4000, 0x57ff) AM_READWRITE(ram0800_r, auxram0800_w)
AM_RANGE(0x6000, 0x77ff) AM_READWRITE(auxram0800_r, auxram0800_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( r2000bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::r2000bank_map)
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(ram2000_r, ram2000_w)
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(auxram2000_r, ram2000_w)
AM_RANGE(0x4000, 0x5fff) AM_READWRITE(ram2000_r, auxram2000_w)
AM_RANGE(0x6000, 0x7fff) AM_READWRITE(auxram2000_r, auxram2000_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( r4000bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::r4000bank_map)
AM_RANGE(0x00000, 0x07fff) AM_READWRITE(ram4000_r, ram4000_w)
AM_RANGE(0x08000, 0x0ffff) AM_READWRITE(auxram4000_r, ram4000_w)
AM_RANGE(0x10000, 0x17fff) AM_READWRITE(ram4000_r, auxram4000_w)
@@ -2787,7 +2804,7 @@ static ADDRESS_MAP_START( r4000bank_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0x24000, 0x27fff) AM_READWRITE(cec8000_r, ram8000_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c100bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::c100bank_map)
AM_RANGE(0x0000, 0x01ff) AM_READWRITE(c100_r, c100_w)
AM_RANGE(0x0200, 0x03ff) AM_READ(c100_int_r) AM_WRITENOP
AM_RANGE(0x0400, 0x05ff) AM_READ(c100_int_bank_r) AM_WRITENOP
@@ -2796,7 +2813,7 @@ static ADDRESS_MAP_START( c100bank_map, AS_PROGRAM, 8, apple2e_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c300bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::c300bank_map)
AM_RANGE(0x0000, 0x00ff) AM_READWRITE(c300_r, c300_w)
AM_RANGE(0x0100, 0x01ff) AM_READ(c300_int_r) AM_WRITENOP
AM_RANGE(0x0200, 0x02ff) AM_READ(c300_int_bank_r) AM_WRITENOP
@@ -2804,7 +2821,7 @@ static ADDRESS_MAP_START( c300bank_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0x0400, 0x04ff) AM_READ(c300_cec_bank_r) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c400bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::c400bank_map)
AM_RANGE(0x0000, 0x03ff) AM_READWRITE(c400_r, c400_w)
AM_RANGE(0x0400, 0x07ff) AM_READWRITE(c400_int_r, c400_w)
AM_RANGE(0x0800, 0x0bff) AM_READWRITE(c400_int_bank_r, c400_w)
@@ -2812,7 +2829,7 @@ static ADDRESS_MAP_START( c400bank_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0x1000, 0x13ff) AM_READ(c400_cec_bank_r) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c800bank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::c800bank_map)
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(c800_r, c800_w)
AM_RANGE(0x0800, 0x0fff) AM_READWRITE(c800_int_r, c800_w)
AM_RANGE(0x1000, 0x17ff) AM_READWRITE(c800_b2_int_r, c800_w)
@@ -2820,12 +2837,12 @@ static ADDRESS_MAP_START( c800bank_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0x2000, 0x27ff) AM_READ(c800_cec_bank_r) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( inhbank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::inhbank_map)
AM_RANGE(0x0000, 0x2fff) AM_DEVICE(A2_LCBANK_TAG, address_map_bank_device, amap8)
AM_RANGE(0x3000, 0x5fff) AM_READWRITE(inh_r, inh_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lcbank_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::lcbank_map)
AM_RANGE(0x00000, 0x02fff) AM_ROM AM_REGION("maincpu", 0x1000) AM_WRITE(lc_w)
AM_RANGE(0x03000, 0x05fff) AM_READWRITE(lc_r, lc_w)
AM_RANGE(0x06000, 0x08fff) AM_READWRITE(lc_romswitch_r, lc_romswitch_w)
@@ -2834,7 +2851,7 @@ static ADDRESS_MAP_START( lcbank_map, AS_PROGRAM, 8, apple2e_state )
AM_RANGE(0x0f000, 0x11fff) AM_ROM AM_REGION("maincpu", 0xd000) AM_WRITE(lc_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spectred_keyb_map, AS_PROGRAM, 8, apple2e_state )
+ADDRESS_MAP_START(apple2e_state::spectred_keyb_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x0fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/apple2gs.cpp b/src/mame/drivers/apple2gs.cpp
index e1ece633c59..82d6bdf3348 100644
--- a/src/mame/drivers/apple2gs.cpp
+++ b/src/mame/drivers/apple2gs.cpp
@@ -182,7 +182,7 @@ static const floppy_interface apple2gs_floppy525_floppy_interface =
};
-static ADDRESS_MAP_START( apple2gs_map, AS_PROGRAM, 8, apple2gs_state )
+ADDRESS_MAP_START(apple2gs_state::apple2gs_map)
/* nothing in the address map - everything is added dynamically */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/apple3.cpp b/src/mame/drivers/apple3.cpp
index 879a30c77fb..53988c5389b 100644
--- a/src/mame/drivers/apple3.cpp
+++ b/src/mame/drivers/apple3.cpp
@@ -33,7 +33,7 @@
#include "softlist.h"
#include "speaker.h"
-static ADDRESS_MAP_START( apple3_map, AS_PROGRAM, 8, apple3_state )
+ADDRESS_MAP_START(apple3_state::apple3_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(apple3_memory_r, apple3_memory_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/applix.cpp b/src/mame/drivers/applix.cpp
index bfe3dfcf0d8..05741befb69 100644
--- a/src/mame/drivers/applix.cpp
+++ b/src/mame/drivers/applix.cpp
@@ -144,6 +144,11 @@ public:
uint8_t m_palette_latch[4];
required_shared_ptr<uint16_t> m_base;
void applix(machine_config &config);
+ void applix_mem(address_map &map);
+ void keytronic_pc3270_io(address_map &map);
+ void keytronic_pc3270_program(address_map &map);
+ void subcpu_io(address_map &map);
+ void subcpu_mem(address_map &map);
private:
uint8_t m_pb;
uint8_t m_analog_latch;
@@ -439,7 +444,7 @@ WRITE16_MEMBER( applix_state::fdc_cmd_w )
m_data_or_cmd = 1;
}
-static ADDRESS_MAP_START(applix_mem, AS_PROGRAM, 16, applix_state)
+ADDRESS_MAP_START(applix_state::applix_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x3fffff) AM_RAM AM_SHARE("expansion") // Expansion
@@ -464,13 +469,13 @@ static ADDRESS_MAP_START(applix_mem, AS_PROGRAM, 16, applix_state)
//FFFFC0, FFFFFF disk controller board
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subcpu_mem, AS_PROGRAM, 8, applix_state )
+ADDRESS_MAP_START(applix_state::subcpu_mem)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subcpu_io, AS_IO, 8, applix_state )
+ADDRESS_MAP_START(applix_state::subcpu_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_READ(port00_r) //PORTR
AM_RANGE(0x08, 0x0f) AM_READWRITE(port08_r,port08_w) //Disk select
@@ -481,11 +486,11 @@ static ADDRESS_MAP_START( subcpu_io, AS_IO, 8, applix_state )
AM_RANGE(0x60, 0x63) AM_MIRROR(0x1c) AM_READWRITE(port60_r,port60_w) //anotherZ80SCC
ADDRESS_MAP_END
-static ADDRESS_MAP_START( keytronic_pc3270_program, AS_PROGRAM, 8, applix_state )
+ADDRESS_MAP_START(applix_state::keytronic_pc3270_program)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("kbdcpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( keytronic_pc3270_io, AS_IO, 8, applix_state )
+ADDRESS_MAP_START(applix_state::keytronic_pc3270_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(internal_data_read, internal_data_write)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(p1_read, p1_write)
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_READWRITE(p2_read, p2_write)
diff --git a/src/mame/drivers/appoooh.cpp b/src/mame/drivers/appoooh.cpp
index 01da0719993..93b8dad8828 100644
--- a/src/mame/drivers/appoooh.cpp
+++ b/src/mame/drivers/appoooh.cpp
@@ -213,7 +213,7 @@ WRITE8_MEMBER(appoooh_state::adpcm_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, appoooh_state )
+ADDRESS_MAP_START(appoooh_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xdfff) AM_ROMBANK("bank1")
@@ -229,13 +229,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, appoooh_state )
AM_RANGE(0xfc20, 0xffff) AM_WRITE(bg_colorram_w) AM_SHARE("bg_colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, appoooh_state )
+ADDRESS_MAP_START(appoooh_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0x9fff) AM_ROM AM_REGION("maincpu", 0x8000)
AM_RANGE(0xa000, 0xdfff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, appoooh_state )
+ADDRESS_MAP_START(appoooh_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76489_device, write)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76489_device, write)
@@ -466,7 +466,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(appoooh_state::robowres, appoooh_common)
MCFG_DEVICE_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
@@ -490,7 +490,7 @@ MACHINE_CONFIG_DERIVED(appoooh_state::robowrese, robowres)
MCFG_CPU_PROGRAM_MAP(main_map)
MCFG_CPU_IO_MAP(main_portmap)
MCFG_CPU_VBLANK_INT_DRIVER("screen", appoooh_state, vblank_irq)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGAZ80_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/apricot.cpp b/src/mame/drivers/apricot.cpp
index 774d48d7058..14490c3cf9e 100644
--- a/src/mame/drivers/apricot.cpp
+++ b/src/mame/drivers/apricot.cpp
@@ -91,6 +91,8 @@ public:
void apricot(machine_config &config);
void apricotxi(machine_config &config);
+ void apricot_io(address_map &map);
+ void apricot_mem(address_map &map);
protected:
virtual void machine_start() override;
@@ -322,13 +324,13 @@ WRITE_LINE_MEMBER( apricot_state::i8086_lock_w )
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( apricot_mem, AS_PROGRAM, 16, apricot_state )
+ADDRESS_MAP_START(apricot_state::apricot_mem)
AM_RANGE(0x00000, 0x3ffff) AM_RAMBANK("ram")
AM_RANGE(0xf0000, 0xf0fff) AM_MIRROR(0x7000) AM_RAM AM_SHARE("screen_buffer")
AM_RANGE(0xf8000, 0xfbfff) AM_MIRROR(0x4000) AM_ROM AM_REGION("bootstrap", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apricot_io, AS_IO, 16, apricot_state )
+ADDRESS_MAP_START(apricot_state::apricot_io)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE8("ic31", pic8259_device, read, write, 0x00ff)
AM_RANGE(0x40, 0x47) AM_DEVREADWRITE8("ic68", wd2797_device, read, write, 0x00ff)
AM_RANGE(0x48, 0x4f) AM_DEVREADWRITE8("ic17", i8255_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/apricotf.cpp b/src/mame/drivers/apricotf.cpp
index 1a0369f40fd..ceaaa7b7e1a 100644
--- a/src/mame/drivers/apricotf.cpp
+++ b/src/mame/drivers/apricotf.cpp
@@ -104,6 +104,8 @@ public:
int m_40_80;
int m_200_256;
void act_f1(machine_config &config);
+ void act_f1_io(address_map &map);
+ void act_f1_mem(address_map &map);
};
@@ -249,7 +251,7 @@ void f1_state::machine_start()
// ADDRESS_MAP( act_f1_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( act_f1_mem, AS_PROGRAM, 16, f1_state )
+ADDRESS_MAP_START(f1_state::act_f1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x01dff) AM_RAM
AM_RANGE(0x01e00, 0x01fff) AM_RAM AM_SHARE("p_scrollram")
@@ -263,7 +265,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( act_f1_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( act_f1_io, AS_IO, 16, f1_state )
+ADDRESS_MAP_START(f1_state::act_f1_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x000f) AM_WRITE8(system_w, 0xffff)
AM_RANGE(0x0010, 0x0017) AM_DEVREADWRITE8(Z80CTC_TAG, z80ctc_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/apricotp.cpp b/src/mame/drivers/apricotp.cpp
index 38fb1e435d0..983fb95b892 100644
--- a/src/mame/drivers/apricotp.cpp
+++ b/src/mame/drivers/apricotp.cpp
@@ -155,6 +155,10 @@ public:
DECLARE_WRITE_LINE_MEMBER( write_centronics_fault );
DECLARE_WRITE_LINE_MEMBER( write_centronics_perror );
void fp(machine_config &config);
+ void fp_io(address_map &map);
+ void fp_mem(address_map &map);
+ void sound_io(address_map &map);
+ void sound_mem(address_map &map);
};
@@ -421,7 +425,7 @@ WRITE16_MEMBER( fp_state::mem_w )
// ADDRESS_MAP( fp_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( fp_mem, AS_PROGRAM, 16, fp_state )
+ADDRESS_MAP_START(fp_state::fp_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0xf7fff) AM_READWRITE(mem_r, mem_w)
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION(I8086_TAG, 0)
@@ -432,7 +436,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( fp_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( fp_io, AS_IO, 16, fp_state )
+ADDRESS_MAP_START(fp_state::fp_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000, 0x007) AM_DEVREADWRITE8(WD2797_TAG, wd2797_device, read, write, 0x00ff)
AM_RANGE(0x008, 0x00f) AM_DEVREADWRITE8(I8253A5_TAG, pit8253_device, read, write, 0x00ff)
@@ -455,7 +459,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( sound_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8, fp_state )
+ADDRESS_MAP_START(fp_state::sound_mem)
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(HD63B01V1_TAG, 0)
ADDRESS_MAP_END
@@ -464,7 +468,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( sound_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, fp_state )
+ADDRESS_MAP_START(fp_state::sound_io)
AM_RANGE(M6801_PORT1, M6801_PORT1)
AM_RANGE(M6801_PORT2, M6801_PORT2)
AM_RANGE(M6801_PORT3, M6801_PORT3)
diff --git a/src/mame/drivers/aquarium.cpp b/src/mame/drivers/aquarium.cpp
index f502b90a23d..86bb87cc2a6 100644
--- a/src/mame/drivers/aquarium.cpp
+++ b/src/mame/drivers/aquarium.cpp
@@ -99,7 +99,7 @@ WRITE8_MEMBER(aquarium_state::aquarium_oki_w)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, aquarium_state )
+ADDRESS_MAP_START(aquarium_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0xc00000, 0xc00fff) AM_RAM_WRITE(aquarium_mid_videoram_w) AM_SHARE("mid_videoram")
AM_RANGE(0xc01000, 0xc01fff) AM_RAM_WRITE(aquarium_bak_videoram_w) AM_SHARE("bak_videoram")
@@ -117,13 +117,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, aquarium_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8, aquarium_state )
+ADDRESS_MAP_START(aquarium_state::snd_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( snd_portmap, AS_IO, 8, aquarium_state )
+ADDRESS_MAP_START(aquarium_state::snd_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x02, 0x02) AM_READWRITE(aquarium_oki_r, aquarium_oki_w)
diff --git a/src/mame/drivers/aquarius.cpp b/src/mame/drivers/aquarius.cpp
index 95977aca0a8..9b1ed1073aa 100644
--- a/src/mame/drivers/aquarius.cpp
+++ b/src/mame/drivers/aquarius.cpp
@@ -207,7 +207,7 @@ DRIVER_INIT_MEMBER(aquarius_state,aquarius)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( aquarius_mem, AS_PROGRAM, 8, aquarius_state )
+ADDRESS_MAP_START(aquarius_state::aquarius_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3000, 0x33ff) AM_RAM_WRITE(aquarius_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x3400, 0x37ff) AM_RAM_WRITE(aquarius_colorram_w) AM_SHARE("colorram")
@@ -216,7 +216,7 @@ static ADDRESS_MAP_START( aquarius_mem, AS_PROGRAM, 8, aquarius_state )
AM_RANGE(0xc000, 0xffff) AM_READ(cartridge_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aquarius_io, AS_IO, 8, aquarius_state )
+ADDRESS_MAP_START(aquarius_state::aquarius_io)
// AM_RANGE(0x7e, 0x7f) AM_MIRROR(0xff00) AM_READWRITE(modem_r, modem_w)
AM_RANGE(0xf6, 0xf6) AM_MIRROR(0xff00) AM_DEVREADWRITE("ay8910", ay8910_device, data_r, data_w)
AM_RANGE(0xf7, 0xf7) AM_MIRROR(0xff00) AM_DEVWRITE("ay8910", ay8910_device, address_w)
diff --git a/src/mame/drivers/arabian.cpp b/src/mame/drivers/arabian.cpp
index d12ecc3ff8a..facfc026b49 100644
--- a/src/mame/drivers/arabian.cpp
+++ b/src/mame/drivers/arabian.cpp
@@ -211,7 +211,7 @@ WRITE8_MEMBER(arabian_state::mcu_port_p_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, arabian_state )
+ADDRESS_MAP_START(arabian_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_WRITE(arabian_videoram_w)
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x01ff) AM_READ_PORT("IN0")
@@ -228,7 +228,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, arabian_state )
+ADDRESS_MAP_START(arabian_state::main_io_map)
AM_RANGE(0xc800, 0xc800) AM_MIRROR(0x01ff) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0xca00, 0xca00) AM_MIRROR(0x01ff) AM_DEVWRITE("aysnd", ay8910_device, data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/arachnid.cpp b/src/mame/drivers/arachnid.cpp
index 2954a7185ad..27cc53605f1 100644
--- a/src/mame/drivers/arachnid.cpp
+++ b/src/mame/drivers/arachnid.cpp
@@ -110,6 +110,7 @@ public:
uint8_t read_keyboard(int pa);
void arachnid(machine_config &config);
+ void arachnid_map(address_map &map);
};
/***************************************************************************
@@ -120,7 +121,7 @@ public:
ADDRESS_MAP( arachnid_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( arachnid_map, AS_PROGRAM, 8, arachnid_state )
+ADDRESS_MAP_START(arachnid_state::arachnid_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2007) AM_DEVREADWRITE(PTM6840_TAG, ptm6840_device, read, write)
AM_RANGE(0x4004, 0x4007) AM_DEVREADWRITE(PIA6821_U4_TAG, pia6821_device, read, write)
diff --git a/src/mame/drivers/arcadecl.cpp b/src/mame/drivers/arcadecl.cpp
index 9e7a561dc46..0e82c656855 100644
--- a/src/mame/drivers/arcadecl.cpp
+++ b/src/mame/drivers/arcadecl.cpp
@@ -146,7 +146,7 @@ WRITE16_MEMBER(arcadecl_state::latch_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, arcadecl_state )
+ADDRESS_MAP_START(arcadecl_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_SHARE("bitmap")
AM_RANGE(0x3c0000, 0x3c07ff) AM_DEVREADWRITE8("palette", palette_device, read8, write8, 0xff00) AM_SHARE("palette")
diff --git a/src/mame/drivers/arcadia.cpp b/src/mame/drivers/arcadia.cpp
index cfa4d617fbc..cb2b074f524 100644
--- a/src/mame/drivers/arcadia.cpp
+++ b/src/mame/drivers/arcadia.cpp
@@ -124,7 +124,7 @@ anything in hardware. No cartridge has been found which uses them.
#include "softlist.h"
#include "speaker.h"
-static ADDRESS_MAP_START( arcadia_mem, AS_PROGRAM, 8, arcadia_state )
+ADDRESS_MAP_START(arcadia_state::arcadia_mem)
AM_RANGE( 0x0000, 0x0fff) AM_DEVREAD("cartslot", arcadia_cart_slot_device, read_rom)
AM_RANGE( 0x1800, 0x1aff) AM_READWRITE(video_r, video_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/argo.cpp b/src/mame/drivers/argo.cpp
index df24ad5f9b2..1f7213e9b7d 100644
--- a/src/mame/drivers/argo.cpp
+++ b/src/mame/drivers/argo.cpp
@@ -50,6 +50,8 @@ public:
DECLARE_DRIVER_INIT(argo);
void argo(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_shared_ptr<uint8_t> m_p_videoram;
@@ -142,7 +144,7 @@ WRITE8_MEMBER(argo_state::argo_io_w)
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, argo_state)
+ADDRESS_MAP_START(argo_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("boot")
AM_RANGE(0x0800, 0xf7af) AM_RAM
@@ -150,7 +152,7 @@ static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, argo_state)
AM_RANGE(0xf800, 0xffff) AM_ROM AM_WRITE(argo_videoram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, argo_state)
+ADDRESS_MAP_START(argo_state::io_map)
AM_RANGE(0x0000, 0xFFFF) AM_READWRITE(argo_io_r,argo_io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/argox.cpp b/src/mame/drivers/argox.cpp
index 3bb61dc086b..8e6d56e240e 100644
--- a/src/mame/drivers/argox.cpp
+++ b/src/mame/drivers/argox.cpp
@@ -54,13 +54,15 @@ public:
DECLARE_DRIVER_INIT(os214);
required_device<cpu_device> m_maincpu;
void os214(machine_config &config);
+ void os214_io_map(address_map &map);
+ void os214_prg_map(address_map &map);
};
-static ADDRESS_MAP_START( os214_prg_map, AS_PROGRAM, 16, os214_state )
+ADDRESS_MAP_START(os214_state::os214_prg_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( os214_io_map, AS_IO, 8, os214_state )
+ADDRESS_MAP_START(os214_state::os214_io_map)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/argus.cpp b/src/mame/drivers/argus.cpp
index 8c4327c7684..ef6b9c75137 100644
--- a/src/mame/drivers/argus.cpp
+++ b/src/mame/drivers/argus.cpp
@@ -180,7 +180,7 @@ WRITE8_MEMBER(argus_state::bankselect_w)
***************************************************************************/
-static ADDRESS_MAP_START( argus_map, AS_PROGRAM, 8, argus_state )
+ADDRESS_MAP_START(argus_state::argus_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
@@ -204,7 +204,7 @@ static ADDRESS_MAP_START( argus_map, AS_PROGRAM, 8, argus_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( valtric_map, AS_PROGRAM, 8, argus_state )
+ADDRESS_MAP_START(argus_state::valtric_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
@@ -228,7 +228,7 @@ static ADDRESS_MAP_START( valtric_map, AS_PROGRAM, 8, argus_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( butasan_map, AS_PROGRAM, 8, argus_state )
+ADDRESS_MAP_START(argus_state::butasan_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
@@ -255,26 +255,26 @@ static ADDRESS_MAP_START( butasan_map, AS_PROGRAM, 8, argus_state )
AM_RANGE(0xf680, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map_a, AS_PROGRAM, 8, argus_state )
+ADDRESS_MAP_START(argus_state::sound_map_a)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc000, 0xc000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8, argus_state )
+ADDRESS_MAP_START(argus_state::sound_map_b)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
#if 0
-static ADDRESS_MAP_START( sound_portmap_1, AS_IO, 8, argus_state )
+ADDRESS_MAP_START(argus_state::sound_portmap_1)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
ADDRESS_MAP_END
#endif
-static ADDRESS_MAP_START( sound_portmap_2, AS_IO, 8, argus_state )
+ADDRESS_MAP_START(argus_state::sound_portmap_2)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x80, 0x81) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
diff --git a/src/mame/drivers/aristmk4.cpp b/src/mame/drivers/aristmk4.cpp
index 3d14c757d8c..49471155ead 100644
--- a/src/mame/drivers/aristmk4.cpp
+++ b/src/mame/drivers/aristmk4.cpp
@@ -435,6 +435,8 @@ public:
void aristmk4_poker(machine_config &config);
void aristmk4(machine_config &config);
void _86lions(machine_config &config);
+ void aristmk4_map(address_map &map);
+ void aristmk4_poker_map(address_map &map);
};
/* Partial Cashcade protocol */
@@ -998,7 +1000,7 @@ ADDRESS MAP - SLOT GAMES
******************************************************************************/
-static ADDRESS_MAP_START( aristmk4_map, AS_PROGRAM, 8, aristmk4_state )
+ADDRESS_MAP_START(aristmk4_state::aristmk4_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("mkiv_vram") // video ram - chips U49 / U50
AM_RANGE(0x0800, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1800) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
@@ -1042,7 +1044,7 @@ The graphics rom is mapped from 0x4000 - 0x4fff
The U87 personality rom is not required, therefore game rom code mapping is from 0x8000-0xffff
*/
-static ADDRESS_MAP_START( aristmk4_poker_map, AS_PROGRAM, 8, aristmk4_state )
+ADDRESS_MAP_START(aristmk4_state::aristmk4_poker_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("mkiv_vram") // video ram - chips U49 / U50
AM_RANGE(0x0800, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1800) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
diff --git a/src/mame/drivers/aristmk5.cpp b/src/mame/drivers/aristmk5.cpp
index 83ed1e27ac9..317df5efc7f 100644
--- a/src/mame/drivers/aristmk5.cpp
+++ b/src/mame/drivers/aristmk5.cpp
@@ -522,6 +522,9 @@ public:
void aristmk5_touch(machine_config &config);
void aristmk5_usa_touch(machine_config &config);
void aristmk5_usa(machine_config &config);
+ void aristmk5_drame_map(address_map &map);
+ void aristmk5_map(address_map &map);
+ void aristmk5_usa_map(address_map &map);
private:
required_device_array<eeprom_serial_93cxx_device, 2> m_eeprom;
required_device<ds1302_device> m_rtc;
@@ -902,7 +905,7 @@ WRITE8_MEMBER(aristmk5_state::bill_acceptor_lamps_w)
output().set_lamp_value(24 + i, BIT(data, i));
}
-static ADDRESS_MAP_START( aristmk5_map, AS_PROGRAM, 32, aristmk5_state )
+ADDRESS_MAP_START(aristmk5_state::aristmk5_map)
AM_RANGE(0x02000000, 0x02ffffff) AM_RAM AM_SHARE("physicalram") /* physical RAM - 16 MB for now, should be 512k for the A310 */
AM_RANGE(0x03000000, 0x0331ffff) AM_READWRITE(archimedes_ioc_r, archimedes_ioc_w)
@@ -936,7 +939,7 @@ static ADDRESS_MAP_START( aristmk5_map, AS_PROGRAM, 32, aristmk5_state )
ADDRESS_MAP_END
/* U.S games have no dram emulator enabled */
-static ADDRESS_MAP_START( aristmk5_usa_map, AS_PROGRAM, 32, aristmk5_state )
+ADDRESS_MAP_START(aristmk5_state::aristmk5_usa_map)
AM_IMPORT_FROM(aristmk5_map)
AM_RANGE(0x00000000, 0x01ffffff) AM_READWRITE(archimedes_memc_logical_r, archimedes_memc_logical_w)
@@ -965,7 +968,7 @@ static ADDRESS_MAP_START( aristmk5_usa_map, AS_PROGRAM, 32, aristmk5_state )
ADDRESS_MAP_END
/* with dram emulator enabled */
-static ADDRESS_MAP_START( aristmk5_drame_map, AS_PROGRAM, 32, aristmk5_state )
+ADDRESS_MAP_START(aristmk5_state::aristmk5_drame_map)
AM_IMPORT_FROM(aristmk5_map)
AM_RANGE(0x00000000, 0x01ffffff) AM_READWRITE(aristmk5_drame_memc_logical_r, archimedes_memc_logical_w)
diff --git a/src/mame/drivers/aristmk6.cpp b/src/mame/drivers/aristmk6.cpp
index f54d56f482f..5844aca7d36 100644
--- a/src/mame/drivers/aristmk6.cpp
+++ b/src/mame/drivers/aristmk6.cpp
@@ -69,6 +69,8 @@ public:
required_device<palette_device> m_palette;
required_shared_ptr<uint64_t> m_vram;
void aristmk6(machine_config &config);
+ void aristmk6_map(address_map &map);
+ void aristmk6_port(address_map &map);
};
@@ -289,7 +291,7 @@ READ64_MEMBER(aristmk6_state::hwver_r)
return 0;
}
-static ADDRESS_MAP_START( aristmk6_map, AS_PROGRAM, 64, aristmk6_state )
+ADDRESS_MAP_START(aristmk6_state::aristmk6_map)
AM_RANGE(0x00000000, 0x003fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x04000000, 0x05ffffff) AM_RAM AM_SHARE("vram") // VRAM 32MB
AM_RANGE(0x08000000, 0x0bffffff) AM_ROM AM_REGION("game_rom", 0)
@@ -309,7 +311,7 @@ static ADDRESS_MAP_START( aristmk6_map, AS_PROGRAM, 64, aristmk6_state )
AM_RANGE(0x13800000, 0x13800007) AM_READ8(test_r, 0xffffffffffffffffU)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aristmk6_port, AS_IO, 64, aristmk6_state )
+ADDRESS_MAP_START(aristmk6_state::aristmk6_port)
ADDRESS_MAP_END
static INPUT_PORTS_START( aristmk6 )
diff --git a/src/mame/drivers/arkanoid.cpp b/src/mame/drivers/arkanoid.cpp
index bd4df7e52d3..ac3fd706487 100644
--- a/src/mame/drivers/arkanoid.cpp
+++ b/src/mame/drivers/arkanoid.cpp
@@ -824,7 +824,7 @@ a15 a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4 a3 a2 a1 a0
1 1 1 1 x x x x x x x x x x x x OPEN BUS
| | |
*/
-static ADDRESS_MAP_START( arkanoid_map, AS_PROGRAM, 8, arkanoid_state )
+ADDRESS_MAP_START(arkanoid_state::arkanoid_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_MIRROR(0x0800)
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) AM_MIRROR(0x0fe6)
@@ -840,7 +840,7 @@ static ADDRESS_MAP_START( arkanoid_map, AS_PROGRAM, 8, arkanoid_state )
AM_RANGE(0xf000, 0xffff) AM_READNOP /* fixes instant death in final level */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, arkanoid_state )
+ADDRESS_MAP_START(arkanoid_state::bootleg_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd000) AM_DEVWRITE("aysnd", ay8910_device, address_w)
@@ -855,7 +855,7 @@ static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, arkanoid_state )
AM_RANGE(0xf000, 0xffff) AM_READNOP /* fixes instant death in final level */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hexa_map, AS_PROGRAM, 8, arkanoid_state )
+ADDRESS_MAP_START(arkanoid_state::hexa_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -877,7 +877,7 @@ WRITE8_MEMBER(arkanoid_state::hexaa_f000_w)
m_hexaa_from_main = data;
}
-static ADDRESS_MAP_START( hexaa_map, AS_PROGRAM, 8, arkanoid_state )
+ADDRESS_MAP_START(arkanoid_state::hexaa_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -890,7 +890,7 @@ static ADDRESS_MAP_START( hexaa_map, AS_PROGRAM, 8, arkanoid_state )
AM_RANGE(0xf000, 0xf000) AM_READWRITE(hexaa_f000_r, hexaa_f000_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hexaa_sub_map, AS_PROGRAM, 8, arkanoid_state )
+ADDRESS_MAP_START(arkanoid_state::hexaa_sub_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
@@ -906,7 +906,7 @@ READ8_MEMBER(arkanoid_state::hexaa_sub_90_r)
// return machine().rand();
}
-static ADDRESS_MAP_START( hexaa_sub_iomap, AS_IO, 8, arkanoid_state )
+ADDRESS_MAP_START(arkanoid_state::hexaa_sub_iomap)
ADDRESS_MAP_GLOBAL_MASK(0x9f)
AM_RANGE(0x00, 0x0f) AM_RAM // ?? could be communication with the other chip (protection?)
AM_RANGE(0x80, 0x80) AM_WRITE(hexaa_sub_80_w)
@@ -915,7 +915,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( brixian_map, AS_PROGRAM, 8, arkanoid_state )
+ADDRESS_MAP_START(arkanoid_state::brixian_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("protram")
AM_RANGE(0xd000, 0xd000) AM_DEVWRITE("aysnd", ay8910_device, address_w)
diff --git a/src/mame/drivers/armedf.cpp b/src/mame/drivers/armedf.cpp
index c09b452001f..12d8cb5e157 100644
--- a/src/mame/drivers/armedf.cpp
+++ b/src/mame/drivers/armedf.cpp
@@ -418,7 +418,7 @@ WRITE16_MEMBER(armedf_state::irq_lv2_ack_w)
*
*************************************/
-static ADDRESS_MAP_START( terraf_map, AS_PROGRAM, 16, armedf_state )
+ADDRESS_MAP_START(armedf_state::terraf_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x0603ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x060400, 0x063fff) AM_RAM
@@ -440,7 +440,7 @@ static ADDRESS_MAP_START( terraf_map, AS_PROGRAM, 16, armedf_state )
AM_RANGE(0x07c00e, 0x07c00f) AM_WRITE(irq_lv1_ack_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kozure_map, AS_PROGRAM, 16, armedf_state )
+ADDRESS_MAP_START(armedf_state::kozure_map)
AM_IMPORT_FROM( terraf_map )
AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x061000, 0x063fff) AM_RAM
@@ -449,7 +449,7 @@ static ADDRESS_MAP_START( kozure_map, AS_PROGRAM, 16, armedf_state )
// AM_RANGE(0xffd000, 0xffd001) AM_WRITENOP /* passes crc ROM information to MCU, I guess */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cclimbr2_map, AS_PROGRAM, 16, armedf_state )
+ADDRESS_MAP_START(armedf_state::cclimbr2_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x061000, 0x063fff) AM_RAM
@@ -471,7 +471,7 @@ static ADDRESS_MAP_START( cclimbr2_map, AS_PROGRAM, 16, armedf_state )
AM_RANGE(0x07c00e, 0x07c00f) AM_WRITE(irq_lv2_ack_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( legion_map, AS_PROGRAM, 16, armedf_state )
+ADDRESS_MAP_START(armedf_state::legion_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x061000, 0x063fff) AM_RAM
@@ -502,7 +502,7 @@ WRITE8_MEMBER(armedf_state::legionjb_fg_scroll_w)
m_fg_scrolly = (m_legion_cmd[0x00] & 0xff) | ((m_legion_cmd[0x01] & 0x3) << 8);
}
-static ADDRESS_MAP_START( legionjb_map, AS_PROGRAM, 16, armedf_state )
+ADDRESS_MAP_START(armedf_state::legionjb_map)
AM_RANGE(0x040000, 0x04003f) AM_WRITE8(legionjb_fg_scroll_w,0x00ff)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram")
@@ -525,7 +525,7 @@ static ADDRESS_MAP_START( legionjb_map, AS_PROGRAM, 16, armedf_state )
AM_RANGE(0x07c00e, 0x07c00f) AM_WRITE(irq_lv2_ack_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( armedf_map, AS_PROGRAM, 16, armedf_state )
+ADDRESS_MAP_START(armedf_state::armedf_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x061000, 0x065fff) AM_RAM
@@ -717,7 +717,7 @@ WRITE8_MEMBER(bigfghtr_state::mcu_spritelist_w)
popmessage("MCU access spritelist %04x = %02x, contact MAMEdev",offset,data);
}
-static ADDRESS_MAP_START( bigfghtr_map, AS_PROGRAM, 16, bigfghtr_state )
+ADDRESS_MAP_START(bigfghtr_state::bigfghtr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x0805ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x080600, 0x083fff) AM_READWRITE8(main_sharedram_r,main_sharedram_w,0xffff)
@@ -743,23 +743,23 @@ static ADDRESS_MAP_START( bigfghtr_map, AS_PROGRAM, 16, bigfghtr_state )
AM_RANGE(0x400000, 0x400001) AM_READ(latch_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigfghtr_mcu_map, AS_PROGRAM, 8, bigfghtr_state )
+ADDRESS_MAP_START(bigfghtr_state::bigfghtr_mcu_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigfghtr_mcu_io_map, AS_IO, 8, bigfghtr_state )
+ADDRESS_MAP_START(bigfghtr_state::bigfghtr_mcu_io_map)
AM_RANGE(0x00000, 0x005ff) AM_WRITE(mcu_spritelist_w) //Sprite RAM, guess shared as well
AM_RANGE(0x00600, 0x03fff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(MCS51_PORT_P1,MCS51_PORT_P1) AM_READNOP // bit 5: bus contention related?
AM_RANGE(MCS51_PORT_P3,MCS51_PORT_P3) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, armedf_state )
+ADDRESS_MAP_START(armedf_state::sound_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cclimbr2_soundmap, AS_PROGRAM, 8, armedf_state )
+ADDRESS_MAP_START(armedf_state::cclimbr2_soundmap)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -792,20 +792,20 @@ WRITE8_MEMBER(armedf_state::fg_scroll_msb_w)
}
-static ADDRESS_MAP_START( terrafjb_extraz80_map, AS_PROGRAM, 8, armedf_state )
+ADDRESS_MAP_START(armedf_state::terrafjb_extraz80_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_READWRITE(blitter_txram_r,blitter_txram_w)
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( terrafjb_extraz80_portmap, AS_IO, 8, armedf_state )
+ADDRESS_MAP_START(armedf_state::terrafjb_extraz80_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_WRITE(fg_scrollx_w)
AM_RANGE(0x01,0x01) AM_WRITE(fg_scrolly_w)
AM_RANGE(0x02,0x02) AM_WRITE(fg_scroll_msb_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, armedf_state )
+ADDRESS_MAP_START(armedf_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0, 0x1) AM_DEVWRITE("ymsnd", ym3812_device, write)
AM_RANGE(0x2, 0x2) AM_DEVWRITE("dac1", dac_byte_interface, write)
@@ -814,7 +814,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, armedf_state )
AM_RANGE(0x6, 0x6) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_3526_portmap, AS_IO, 8, armedf_state )
+ADDRESS_MAP_START(armedf_state::sound_3526_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0, 0x1) AM_DEVWRITE("ymsnd", ym3526_device, write)
AM_RANGE(0x2, 0x2) AM_DEVWRITE("dac1", dac_byte_interface, write)
diff --git a/src/mame/drivers/arsystems.cpp b/src/mame/drivers/arsystems.cpp
index 9b0cefff927..422c62ee991 100644
--- a/src/mame/drivers/arsystems.cpp
+++ b/src/mame/drivers/arsystems.cpp
@@ -94,6 +94,10 @@ public:
void arcadia(machine_config &config);
void argh(machine_config &config);
+ void a500_mem(address_map &map);
+ void arcadia_map(address_map &map);
+ void argh_map(address_map &map);
+ void overlay_512kb_map(address_map &map);
protected:
virtual void machine_reset() override;
@@ -192,13 +196,13 @@ void arcadia_amiga_state::machine_reset()
*
*************************************/
-static ADDRESS_MAP_START( overlay_512kb_map, AS_PROGRAM, 16, arcadia_amiga_state )
+ADDRESS_MAP_START(arcadia_amiga_state::overlay_512kb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x180000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, arcadia_amiga_state )
+ADDRESS_MAP_START(arcadia_amiga_state::a500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -211,7 +215,7 @@ static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, arcadia_amiga_state )
AM_RANGE(0xf80000, 0xffffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( arcadia_map, AS_PROGRAM, 16, arcadia_amiga_state )
+ADDRESS_MAP_START(arcadia_amiga_state::arcadia_map)
AM_IMPORT_FROM(a500_mem)
AM_RANGE(0x800000, 0x97ffff) AM_ROMBANK("bank2") AM_REGION("user3", 0)
AM_RANGE(0x980000, 0x9fbfff) AM_ROM AM_REGION("user2", 0)
@@ -220,7 +224,7 @@ static ADDRESS_MAP_START( arcadia_map, AS_PROGRAM, 16, arcadia_amiga_state )
AM_RANGE(0xf00000, 0xf7ffff) AM_ROM AM_REGION("user2", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( argh_map, AS_PROGRAM, 16, arcadia_amiga_state )
+ADDRESS_MAP_START(arcadia_amiga_state::argh_map)
AM_IMPORT_FROM(a500_mem)
AM_RANGE(0x800000, 0x97ffff) AM_ROMBANK("bank2") AM_REGION("user3", 0)
// AM_RANGE(0x980000, 0x9fefff) AM_ROM AM_REGION("user3", 0)
diff --git a/src/mame/drivers/artmagic.cpp b/src/mame/drivers/artmagic.cpp
index ee7022c0884..3e1fba50f1f 100644
--- a/src/mame/drivers/artmagic.cpp
+++ b/src/mame/drivers/artmagic.cpp
@@ -408,7 +408,7 @@ WRITE16_MEMBER(artmagic_state::protection_bit_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x220000, 0x23ffff) AM_RAM
AM_RANGE(0x240000, 0x240fff) AM_RAM AM_SHARE("nvram")
@@ -425,7 +425,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, artmagic_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stonebal_map, AS_PROGRAM, 16, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::stonebal_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x27ffff) AM_RAM
AM_RANGE(0x280000, 0x280fff) AM_RAM AM_SHARE("nvram")
@@ -444,7 +444,7 @@ static ADDRESS_MAP_START( stonebal_map, AS_PROGRAM, 16, artmagic_state )
ADDRESS_MAP_END
// TODO: jumps to undefined area at PC=33a0 -> 230000, presumably protection device provides a code snippet
-static ADDRESS_MAP_START( shtstar_map, AS_PROGRAM, 16, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::shtstar_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x27ffff) AM_RAM
AM_RANGE(0x280000, 0x280fff) AM_RAM AM_SHARE("nvram")
@@ -464,7 +464,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 16, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::tms_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram0")
AM_RANGE(0x00400000, 0x005fffff) AM_RAM AM_SHARE("vram1")
AM_RANGE(0x00800000, 0x0080007f) AM_READWRITE(artmagic_blitter_r, artmagic_blitter_w)
@@ -474,7 +474,7 @@ static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 16, artmagic_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stonebal_tms_map, AS_PROGRAM, 16, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::stonebal_tms_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram0")
AM_RANGE(0x00400000, 0x005fffff) AM_RAM AM_SHARE("vram1")
AM_RANGE(0x00800000, 0x0080007f) AM_READWRITE(artmagic_blitter_r, artmagic_blitter_w)
@@ -491,7 +491,7 @@ ADDRESS_MAP_END
*************************************/
/* see adp.c */
-static ADDRESS_MAP_START( shtstar_subcpu_map, AS_PROGRAM, 16, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::shtstar_subcpu_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x800140, 0x800141) AM_DEVWRITE8("aysnd", ym2149_device, address_w, 0x00ff)
AM_RANGE(0x800142, 0x800143) AM_DEVREADWRITE8("aysnd", ym2149_device, data_r, data_w, 0x00ff)
@@ -499,11 +499,11 @@ static ADDRESS_MAP_START( shtstar_subcpu_map, AS_PROGRAM, 16, artmagic_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shtstar_guncpu_map, AS_PROGRAM, 8, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::shtstar_guncpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shtstar_guncpu_io_map, AS_IO, 8, artmagic_state )
+ADDRESS_MAP_START(artmagic_state::shtstar_guncpu_io_map)
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READNOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ashnojoe.cpp b/src/mame/drivers/ashnojoe.cpp
index 02b2324fd44..522d5e7cb8f 100644
--- a/src/mame/drivers/ashnojoe.cpp
+++ b/src/mame/drivers/ashnojoe.cpp
@@ -91,7 +91,7 @@ READ16_MEMBER(ashnojoe_state::fake_4a00a_r)
return 0;
}
-static ADDRESS_MAP_START( ashnojoe_map, AS_PROGRAM, 16, ashnojoe_state )
+ADDRESS_MAP_START(ashnojoe_state::ashnojoe_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x041fff) AM_RAM_WRITE(ashnojoe_tileram3_w) AM_SHARE("tileram_3")
AM_RANGE(0x042000, 0x043fff) AM_RAM_WRITE(ashnojoe_tileram4_w) AM_SHARE("tileram_4")
@@ -124,13 +124,13 @@ READ8_MEMBER(ashnojoe_state::sound_latch_status_r)
return m_soundlatch->pending_r();
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ashnojoe_state )
+ADDRESS_MAP_START(ashnojoe_state::sound_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, ashnojoe_state )
+ADDRESS_MAP_START(ashnojoe_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x02, 0x02) AM_WRITE(adpcm_w)
diff --git a/src/mame/drivers/asst128.cpp b/src/mame/drivers/asst128.cpp
index 96c64ef5cd4..27d12505463 100644
--- a/src/mame/drivers/asst128.cpp
+++ b/src/mame/drivers/asst128.cpp
@@ -22,10 +22,10 @@ public:
{
}
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
};
-DEVICE_ADDRESS_MAP_START( map, 8, asst128_mb_device )
+ADDRESS_MAP_START(asst128_mb_device::map)
AM_RANGE(0x0020, 0x002f) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
AM_RANGE(0x0040, 0x004f) AM_DEVREADWRITE("pit8253", pit8253_device, read, write)
AM_RANGE(0x0060, 0x006f) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
@@ -53,6 +53,8 @@ public:
void machine_start() override;
void asst128(machine_config &config);
+ void asst128_io(address_map &map);
+ void asst128_map(address_map &map);
};
void asst128_state::machine_start()
@@ -68,12 +70,12 @@ WRITE8_MEMBER(asst128_state::asst128_fdc_dor_w)
m_fdc->dor_w(space, offset, data, mem_mask);
}
-static ADDRESS_MAP_START( asst128_map, AS_PROGRAM, 16, asst128_state)
+ADDRESS_MAP_START(asst128_state::asst128_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(asst128_io, AS_IO, 16, asst128_state)
+ADDRESS_MAP_START(asst128_state::asst128_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", asst128_mb_device, map, 0xffff)
AM_RANGE(0x0200, 0x0207) AM_DEVREADWRITE8("pc_joy", pc_joy_device, joy_port_r, joy_port_w, 0xffff)
diff --git a/src/mame/drivers/asterix.cpp b/src/mame/drivers/asterix.cpp
index bdd067c4775..52919e96633 100644
--- a/src/mame/drivers/asterix.cpp
+++ b/src/mame/drivers/asterix.cpp
@@ -168,7 +168,7 @@ WRITE16_MEMBER(asterix_state::protection_w)
}
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, asterix_state )
+ADDRESS_MAP_START(asterix_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x107fff) AM_RAM
AM_RANGE(0x180000, 0x1807ff) AM_DEVREADWRITE("k053244", k05324x_device, k053245_word_r, k053245_word_w)
@@ -191,7 +191,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, asterix_state )
AM_RANGE(0x440000, 0x44003f) AM_DEVWRITE("k056832", k056832_device, word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, asterix_state )
+ADDRESS_MAP_START(asterix_state::sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf801, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device, status_r, data_w)
diff --git a/src/mame/drivers/asteroid.cpp b/src/mame/drivers/asteroid.cpp
index af1671e45a0..c95a3789dad 100644
--- a/src/mame/drivers/asteroid.cpp
+++ b/src/mame/drivers/asteroid.cpp
@@ -248,7 +248,7 @@ WRITE8_MEMBER(asteroid_state::llander_led_w)
*
*************************************/
-static ADDRESS_MAP_START( asteroid_map, AS_PROGRAM, 8, asteroid_state )
+ADDRESS_MAP_START(asteroid_state::asteroid_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x02ff) AM_RAMBANK("ram1") AM_SHARE("ram1")
@@ -269,7 +269,7 @@ static ADDRESS_MAP_START( asteroid_map, AS_PROGRAM, 8, asteroid_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( astdelux_map, AS_PROGRAM, 8, asteroid_state )
+ADDRESS_MAP_START(asteroid_state::astdelux_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x02ff) AM_RAMBANK("ram1") AM_SHARE("ram1")
@@ -292,7 +292,7 @@ static ADDRESS_MAP_START( astdelux_map, AS_PROGRAM, 8, asteroid_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( llander_map, AS_PROGRAM, 8, asteroid_state )
+ADDRESS_MAP_START(asteroid_state::llander_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x1f00)
AM_RANGE(0x2000, 0x2000) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/astinvad.cpp b/src/mame/drivers/astinvad.cpp
index 4c435e128e1..d219cf82ecb 100644
--- a/src/mame/drivers/astinvad.cpp
+++ b/src/mame/drivers/astinvad.cpp
@@ -95,6 +95,10 @@ public:
void spcking2(machine_config &config);
void spaceint(machine_config &config);
void kamikaze(machine_config &config);
+ void kamikaze_map(address_map &map);
+ void kamikaze_portmap(address_map &map);
+ void spaceint_map(address_map &map);
+ void spaceint_portmap(address_map &map);
private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
void plot_byte( bitmap_rgb32 &bitmap, uint8_t y, uint8_t x, uint8_t data, uint8_t color );
@@ -471,7 +475,7 @@ WRITE8_MEMBER(astinvad_state::spaceint_sound2_w)
*
*************************************/
-static ADDRESS_MAP_START( kamikaze_map, AS_PROGRAM, 8, astinvad_state )
+ADDRESS_MAP_START(astinvad_state::kamikaze_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x1bff) AM_ROM
AM_RANGE(0x1c00, 0x1fff) AM_RAM
@@ -479,20 +483,20 @@ static ADDRESS_MAP_START( kamikaze_map, AS_PROGRAM, 8, astinvad_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spaceint_map, AS_PROGRAM, 8, astinvad_state )
+ADDRESS_MAP_START(astinvad_state::spaceint_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(spaceint_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kamikaze_portmap, AS_IO, 8, astinvad_state )
+ADDRESS_MAP_START(astinvad_state::kamikaze_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(kamikaze_ppi_r, kamikaze_ppi_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spaceint_portmap, AS_IO, 8, astinvad_state )
+ADDRESS_MAP_START(astinvad_state::spaceint_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/astrafr.cpp b/src/mame/drivers/astrafr.cpp
index 88ebb62f48f..7c335303b37 100644
--- a/src/mame/drivers/astrafr.cpp
+++ b/src/mame/drivers/astrafr.cpp
@@ -129,6 +129,10 @@ public:
void astra_single_37(machine_config &config);
void astrafr_dual_2e(machine_config &config);
void astrafr_dual_37(machine_config &config);
+ void astra_map(address_map &map);
+ void astrafr_master_alt_map(address_map &map);
+ void astrafr_master_map(address_map &map);
+ void astrafr_slave_map(address_map &map);
};
@@ -243,21 +247,21 @@ WRITE32_MEMBER(astrafr_state::astrafr_slave_mem_w)
-static ADDRESS_MAP_START( astrafr_master_map, AS_PROGRAM, 32, astrafr_state )
+ADDRESS_MAP_START(astrafr_state::astrafr_master_map)
AM_RANGE(0x000000, 0xffffffff) AM_READWRITE(astrafr_mem_r, astrafr_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( astrafr_master_alt_map, AS_PROGRAM, 32, astrafr_state )
+ADDRESS_MAP_START(astrafr_state::astrafr_master_alt_map)
AM_RANGE(0x000000, 0xffffffff) AM_READWRITE(astrafr_mem_r, astrafr_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( astra_map, AS_PROGRAM, 32, astrafr_state )
+ADDRESS_MAP_START(astrafr_state::astra_map)
AM_RANGE(0x000000, 0xffffffff) AM_READWRITE(astrafr_mem_r, astrafr_mem_w)
ADDRESS_MAP_END
// probably identical, afaik they're linked units..
-static ADDRESS_MAP_START( astrafr_slave_map, AS_PROGRAM, 32, astrafr_state )
+ADDRESS_MAP_START(astrafr_state::astrafr_slave_map)
AM_RANGE(0x000000, 0xffffffff) AM_READWRITE(astrafr_slave_mem_r, astrafr_slave_mem_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/astrcorp.cpp b/src/mame/drivers/astrcorp.cpp
index 76146864009..c02cbf4b09c 100644
--- a/src/mame/drivers/astrcorp.cpp
+++ b/src/mame/drivers/astrcorp.cpp
@@ -97,6 +97,10 @@ public:
void showhand(machine_config &config);
void speeddrp(machine_config &config);
void showhanc(machine_config &config);
+ void showhanc_map(address_map &map);
+ void showhand_map(address_map &map);
+ void skilldrp_map(address_map &map);
+ void speeddrp_map(address_map &map);
};
/***************************************************************************
@@ -307,7 +311,7 @@ READ16_MEMBER(astrocorp_state::astrocorp_unk_r)
}
-static ADDRESS_MAP_START( showhand_map, AS_PROGRAM, 16, astrocorp_state )
+ADDRESS_MAP_START(astrocorp_state::showhand_map)
AM_RANGE( 0x000000, 0x01ffff ) AM_ROM
AM_RANGE( 0x050000, 0x050fff ) AM_RAM AM_SHARE("spriteram")
AM_RANGE( 0x052000, 0x052001 ) AM_WRITE(astrocorp_draw_sprites_w)
@@ -322,7 +326,7 @@ static ADDRESS_MAP_START( showhand_map, AS_PROGRAM, 16, astrocorp_state )
AM_RANGE( 0x0d0000, 0x0d0001 ) AM_READ(astrocorp_unk_r) AM_DEVWRITE8("oki", okim6295_device, write, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( showhanc_map, AS_PROGRAM, 16, astrocorp_state )
+ADDRESS_MAP_START(astrocorp_state::showhanc_map)
AM_RANGE( 0x000000, 0x01ffff ) AM_ROM
AM_RANGE( 0x060000, 0x0601ff ) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE( 0x070000, 0x070001 ) AM_WRITE(astrocorp_sound_bank_w)
@@ -337,7 +341,7 @@ static ADDRESS_MAP_START( showhanc_map, AS_PROGRAM, 16, astrocorp_state )
AM_RANGE( 0x0e0000, 0x0e0001 ) AM_READ(astrocorp_unk_r) AM_DEVWRITE8("oki", okim6295_device, write, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( skilldrp_map, AS_PROGRAM, 16, astrocorp_state )
+ADDRESS_MAP_START(astrocorp_state::skilldrp_map)
AM_RANGE( 0x000000, 0x03ffff ) AM_ROM
AM_RANGE( 0x200000, 0x200fff ) AM_RAM AM_SHARE("spriteram")
AM_RANGE( 0x202000, 0x202001 ) AM_WRITE(astrocorp_draw_sprites_w)
@@ -352,7 +356,7 @@ static ADDRESS_MAP_START( skilldrp_map, AS_PROGRAM, 16, astrocorp_state )
AM_RANGE( 0x600000, 0x600001 ) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( speeddrp_map, AS_PROGRAM, 16, astrocorp_state )
+ADDRESS_MAP_START(astrocorp_state::speeddrp_map)
AM_RANGE( 0x000000, 0x01ffff ) AM_ROM
AM_RANGE( 0x280000, 0x283fff ) AM_RAM AM_SHARE("nvram") // battery
AM_RANGE( 0x380000, 0x380fff ) AM_RAM AM_SHARE("spriteram")
diff --git a/src/mame/drivers/astrocde.cpp b/src/mame/drivers/astrocde.cpp
index 311d333aeac..8d61fd4df12 100644
--- a/src/mame/drivers/astrocde.cpp
+++ b/src/mame/drivers/astrocde.cpp
@@ -530,7 +530,7 @@ CUSTOM_INPUT_MEMBER( astrocde_state::votrax_speech_status_r )
*
*************************************/
-static ADDRESS_MAP_START( seawolf2_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::seawolf2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w)
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("videoram")
@@ -538,14 +538,14 @@ static ADDRESS_MAP_START( seawolf2_map, AS_PROGRAM, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ebases_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::ebases_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w)
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacezap_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::spacezap_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w)
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("videoram")
@@ -554,7 +554,7 @@ static ADDRESS_MAP_START( spacezap_map, AS_PROGRAM, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wow_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::wow_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w)
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("videoram")
@@ -564,7 +564,7 @@ static ADDRESS_MAP_START( wow_map, AS_PROGRAM, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( robby_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::robby_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w)
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("videoram")
@@ -575,7 +575,7 @@ static ADDRESS_MAP_START( robby_map, AS_PROGRAM, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( demndrgn_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::demndrgn_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w)
AM_RANGE(0x4000, 0x7fff) AM_DEVREAD("bank4000", address_map_bank_device, read8) AM_WRITE(profpac_videoram_w)
@@ -586,13 +586,13 @@ static ADDRESS_MAP_START( demndrgn_map, AS_PROGRAM, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( profpac_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::profpac_map)
AM_IMPORT_FROM(demndrgn_map)
AM_RANGE(0xe000, 0xe1ff) AM_READWRITE(protected_ram_r, protected_ram_w) AM_SHARE("protected_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank4000_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::bank4000_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(profpac_videoram_r)
AM_RANGE(0x4000, 0x7fff) AM_ROM AM_REGION("banks", 0x08000)
AM_RANGE(0x8000, 0xbfff) AM_ROM AM_REGION("banks", 0x10000)
@@ -600,14 +600,14 @@ static ADDRESS_MAP_START( bank4000_map, AS_PROGRAM, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( profpac_bank4000_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::profpac_bank4000_map)
AM_IMPORT_FROM(bank4000_map)
AM_RANGE(0x10000, 0xaffff) AM_ROM AM_REGION("epromboard", 0)
AM_RANGE(0xb0000, 0xb3fff) AM_READNOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tenpin_sub_map, AS_PROGRAM, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::tenpin_sub_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -621,19 +621,19 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( port_map, AS_IO, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::port_map)
AM_RANGE(0x0000, 0x0019) AM_SELECT(0xff00) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map_mono_pattern, AS_IO, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::port_map_mono_pattern)
AM_RANGE(0x0000, 0x0019) AM_SELECT(0xff00) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w)
AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w)
AM_RANGE(0xa55b, 0xa55b) AM_WRITE(protected_ram_enable_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map_stereo_pattern, AS_IO, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::port_map_stereo_pattern)
AM_RANGE(0x0000, 0x0019) AM_SELECT(0xff00) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w)
AM_RANGE(0x0050, 0x0058) AM_SELECT(0xff00) AM_DEVWRITE("astrocade2", astrocade_device, astrocade_sound_w)
AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w)
@@ -641,7 +641,7 @@ static ADDRESS_MAP_START( port_map_stereo_pattern, AS_IO, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map_16col_pattern, AS_IO, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::port_map_16col_pattern)
AM_RANGE(0x0000, 0x0019) AM_SELECT(0xff00) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w)
AM_RANGE(0x0050, 0x0058) AM_SELECT(0xff00) AM_DEVWRITE("astrocade2", astrocade_device, astrocade_sound_w)
AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w)
@@ -653,7 +653,7 @@ static ADDRESS_MAP_START( port_map_16col_pattern, AS_IO, 8, astrocde_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map_16col_pattern_nosound, AS_IO, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::port_map_16col_pattern_nosound)
AM_RANGE(0x0000, 0x0019) AM_SELECT(0xff00) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w)
AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w)
AM_RANGE(0x00bf, 0x00bf) AM_MIRROR(0xff00) AM_WRITE(profpac_page_select_w)
@@ -664,7 +664,7 @@ static ADDRESS_MAP_START( port_map_16col_pattern_nosound, AS_IO, 8, astrocde_sta
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map_16col_pattern_tenpindx, AS_IO, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::port_map_16col_pattern_tenpindx)
AM_IMPORT_FROM(port_map_16col_pattern_nosound)
AM_RANGE(0x0060, 0x0060) AM_MIRROR(0xff00) AM_READ_PORT("P60")
AM_RANGE(0x0061, 0x0061) AM_MIRROR(0xff00) AM_READ_PORT("P61")
@@ -678,7 +678,7 @@ static ADDRESS_MAP_START( port_map_16col_pattern_tenpindx, AS_IO, 8, astrocde_st
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tenpin_sub_io_map, AS_IO, 8, astrocde_state )
+ADDRESS_MAP_START(astrocde_state::tenpin_sub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x90, 0x93) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
AM_RANGE(0x97, 0x97) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/astrof.cpp b/src/mame/drivers/astrof.cpp
index 94ff5a56639..0ccea52ba9d 100644
--- a/src/mame/drivers/astrof.cpp
+++ b/src/mame/drivers/astrof.cpp
@@ -539,7 +539,7 @@ MACHINE_RESET_MEMBER(astrof_state,abattle)
*
*************************************/
-static ADDRESS_MAP_START( astrof_map, AS_PROGRAM, 8, astrof_state )
+ADDRESS_MAP_START(astrof_state::astrof_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_NOP
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(astrof_videoram_w) AM_SHARE("videoram")
@@ -558,7 +558,7 @@ static ADDRESS_MAP_START( astrof_map, AS_PROGRAM, 8, astrof_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spfghmk2_map, AS_PROGRAM, 8, astrof_state )
+ADDRESS_MAP_START(astrof_state::spfghmk2_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_NOP
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(astrof_videoram_w) AM_SHARE("videoram")
@@ -577,7 +577,7 @@ static ADDRESS_MAP_START( spfghmk2_map, AS_PROGRAM, 8, astrof_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tomahawk_map, AS_PROGRAM, 8, astrof_state )
+ADDRESS_MAP_START(astrof_state::tomahawk_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_NOP
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(tomahawk_videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/astrohome.cpp b/src/mame/drivers/astrohome.cpp
index 3626fd37fa7..0a4a454839f 100644
--- a/src/mame/drivers/astrohome.cpp
+++ b/src/mame/drivers/astrohome.cpp
@@ -35,6 +35,8 @@ public:
required_device<astrocade_exp_device> m_exp;
DECLARE_MACHINE_START(astrocde);
void astrocde(machine_config &config);
+ void astrocade_io(address_map &map);
+ void astrocade_mem(address_map &map);
};
/*********************************************************************************
@@ -51,7 +53,7 @@ public:
*
*********************************************************************************/
-static ADDRESS_MAP_START( astrocade_mem, AS_PROGRAM, 8, astrocde_mess_state )
+ADDRESS_MAP_START(astrocde_mess_state::astrocade_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_WRITE(astrocade_funcgen_w)
AM_RANGE(0x1000, 0x3fff) AM_ROM /* Star Fortress writes in here?? */
AM_RANGE(0x4000, 0x4fff) AM_RAM AM_SHARE("videoram") /* ASG */
@@ -59,7 +61,7 @@ static ADDRESS_MAP_START( astrocade_mem, AS_PROGRAM, 8, astrocde_mess_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( astrocade_io, AS_IO, 8, astrocde_mess_state )
+ADDRESS_MAP_START(astrocde_mess_state::astrocade_io)
AM_RANGE(0x00, 0x1f) AM_SELECT(0xff00) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/astropc.cpp b/src/mame/drivers/astropc.cpp
index f7653508979..d139da1bb02 100644
--- a/src/mame/drivers/astropc.cpp
+++ b/src/mame/drivers/astropc.cpp
@@ -24,6 +24,8 @@ public:
{ }
void astropc(machine_config &config);
+ void astropc_io(address_map &map);
+ void astropc_map(address_map &map);
protected:
// devices
@@ -32,12 +34,12 @@ public:
DECLARE_DRIVER_INIT(astropc);
};
-static ADDRESS_MAP_START( astropc_map, AS_PROGRAM, 32, astropc_state )
+ADDRESS_MAP_START(astropc_state::astropc_map)
AM_RANGE(0x000c0000, 0x000fffff) AM_ROM AM_REGION("bios", 0 )
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( astropc_io, AS_IO, 32, astropc_state )
+ADDRESS_MAP_START(astropc_state::astropc_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/asuka.cpp b/src/mame/drivers/asuka.cpp
index 24462e078ef..d28fc60ca69 100644
--- a/src/mame/drivers/asuka.cpp
+++ b/src/mame/drivers/asuka.cpp
@@ -328,7 +328,7 @@ WRITE8_MEMBER(asuka_state::coin_control_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( bonzeadv_map, AS_PROGRAM, 16, asuka_state )
+ADDRESS_MAP_START(asuka_state::bonzeadv_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_ROM
AM_RANGE(0x10c000, 0x10ffff) AM_RAM
@@ -348,7 +348,7 @@ static ADDRESS_MAP_START( bonzeadv_map, AS_PROGRAM, 16, asuka_state )
AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("pc090oj", pc090oj_device, word_r, word_w) /* sprite ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( asuka_map, AS_PROGRAM, 16, asuka_state )
+ADDRESS_MAP_START(asuka_state::asuka_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x1076f0, 0x1076f1) AM_READNOP /* Mofflott init does dummy reads here */
@@ -363,7 +363,7 @@ static ADDRESS_MAP_START( asuka_map, AS_PROGRAM, 16, asuka_state )
AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("pc090oj", pc090oj_device, word_r, word_w) /* sprite ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cadash_map, AS_PROGRAM, 16, asuka_state )
+ADDRESS_MAP_START(asuka_state::cadash_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080003) AM_WRITE(asuka_spritectrl_w)
AM_RANGE(0x0c0000, 0x0c0001) AM_READNOP AM_DEVWRITE8("ciu", pc060ha_device, master_port_w, 0x00ff)
@@ -377,7 +377,7 @@ static ADDRESS_MAP_START( cadash_map, AS_PROGRAM, 16, asuka_state )
AM_RANGE(0xc20000, 0xc2000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_device, ctrl_word_r, ctrl_word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eto_map, AS_PROGRAM, 16 /* N.B. tc100scn mirror overlaps spriteram */, asuka_state )
+ADDRESS_MAP_START(asuka_state::eto_map) /* N.B. tc100scn mirror overlaps spriteram */
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10000f) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_device, word_r, step1_word_w)
AM_RANGE(0x200000, 0x203fff) AM_RAM
@@ -395,7 +395,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( bonzeadv_z80_map, AS_PROGRAM, 8, asuka_state )
+ADDRESS_MAP_START(asuka_state::bonzeadv_z80_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("audiobank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -409,7 +409,7 @@ static ADDRESS_MAP_START( bonzeadv_z80_map, AS_PROGRAM, 8, asuka_state )
AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, asuka_state )
+ADDRESS_MAP_START(asuka_state::z80_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("audiobank")
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -423,7 +423,7 @@ static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, asuka_state )
ADDRESS_MAP_END
/* no MSM5205 */
-static ADDRESS_MAP_START( cadash_z80_map, AS_PROGRAM, 8, asuka_state )
+ADDRESS_MAP_START(asuka_state::cadash_z80_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("audiobank")
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -448,12 +448,12 @@ communicates with m68k S with its own shared ram. In short:
m68k M -> z180 M <-> z180 S <- m68k S
*/
-static ADDRESS_MAP_START( cadash_sub_map, AS_PROGRAM, 8, asuka_state )
+ADDRESS_MAP_START(asuka_state::cadash_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cadash_sub_io, AS_IO, 8, asuka_state )
+ADDRESS_MAP_START(asuka_state::cadash_sub_io)
AM_RANGE(0x00, 0x3f) AM_RAM // z180 internal I/O regs
ADDRESS_MAP_END
diff --git a/src/mame/drivers/at.cpp b/src/mame/drivers/at.cpp
index e8c6f501f50..79388ad3203 100644
--- a/src/mame/drivers/at.cpp
+++ b/src/mame/drivers/at.cpp
@@ -146,6 +146,16 @@ public:
static void cfg_single_360K(device_t *device);
static void cfg_single_1200K(device_t *device);
+ void at16_io(address_map &map);
+ void at16_map(address_map &map);
+ void at16l_map(address_map &map);
+ void at32_io(address_map &map);
+ void at32_map(address_map &map);
+ void at32l_map(address_map &map);
+ void ficpio_io(address_map &map);
+ void ficpio_map(address_map &map);
+ void neat_io(address_map &map);
+ void ps1_16_io(address_map &map);
};
class megapc_state : public driver_device
@@ -175,24 +185,28 @@ public:
DECLARE_WRITE_LINE_MEMBER( wd7600_spkr ) { m_speaker->level_w(state); }
void megapcpl(machine_config &config);
void megapc(machine_config &config);
+ void megapc_io(address_map &map);
+ void megapc_map(address_map &map);
+ void megapcpl_io(address_map &map);
+ void megapcpl_map(address_map &map);
};
-static ADDRESS_MAP_START( at16_map, AS_PROGRAM, 16, at_state )
+ADDRESS_MAP_START(at_state::at16_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x09ffff) AM_RAMBANK("bank10")
AM_RANGE(0x0e0000, 0x0fffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0xfe0000, 0xffffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at16l_map, AS_PROGRAM, 16, at_state )
+ADDRESS_MAP_START(at_state::at16l_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x09ffff) AM_RAMBANK("bank10")
AM_RANGE(0x0e0000, 0x0fffff) AM_ROM AM_REGION("bios", 0x20000)
AM_RANGE(0xfe0000, 0xffffff) AM_ROM AM_REGION("bios", 0x20000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at32_map, AS_PROGRAM, 32, at_state )
+ADDRESS_MAP_START(at_state::at32_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("bank10")
AM_RANGE(0x000e0000, 0x000fffff) AM_ROM AM_REGION("bios", 0)
@@ -200,7 +214,7 @@ static ADDRESS_MAP_START( at32_map, AS_PROGRAM, 32, at_state )
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at32l_map, AS_PROGRAM, 32, at_state )
+ADDRESS_MAP_START(at_state::at32l_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("bank10")
AM_RANGE(0x000e0000, 0x000fffff) AM_ROM AM_REGION("bios", 0x20000)
@@ -208,14 +222,14 @@ static ADDRESS_MAP_START( at32l_map, AS_PROGRAM, 32, at_state )
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0x20000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ficpio_map, AS_PROGRAM, 32, at_state )
+ADDRESS_MAP_START(at_state::ficpio_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("bank10")
AM_RANGE(0x00800000, 0x00800bff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("isa", 0x20000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at16_io, AS_IO, 16, at_state )
+ADDRESS_MAP_START(at_state::at16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", at_mb_device, map)
ADDRESS_MAP_END
@@ -242,25 +256,25 @@ READ8_MEMBER( at_state::ps1_portb_r )
return data;
}
-static ADDRESS_MAP_START(ps1_16_io, AS_IO, 16, at_state )
+ADDRESS_MAP_START(at_state::ps1_16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", at_mb_device, map)
AM_RANGE(0x0060, 0x0061) AM_READ8(ps1_portb_r, 0xff00)
AM_RANGE(0x0102, 0x0105) AM_READWRITE(ps1_unk_r, ps1_unk_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( neat_io, AS_IO, 16, at_state )
+ADDRESS_MAP_START(at_state::neat_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", at_mb_device, map)
AM_RANGE(0x0022, 0x0023) AM_DEVICE("cs8221", cs8221_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at32_io, AS_IO, 32, at_state )
+ADDRESS_MAP_START(at_state::at32_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE16("mb", at_mb_device, map, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ficpio_io, AS_IO, 32, at_state )
+ADDRESS_MAP_START(at_state::ficpio_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE16("mb", at_mb_device, map, 0xffffffff)
AM_RANGE(0x00a8, 0x00af) AM_DEVREADWRITE8("chipset", vt82c496_device, read, write, 0xffffffff)
@@ -323,17 +337,17 @@ WRITE_LINE_MEMBER( megapc_state::wd7600_hold )
m_wd7600->hlda_w(state);
}
-static ADDRESS_MAP_START( megapc_map, AS_PROGRAM, 16, at_state )
+ADDRESS_MAP_START(megapc_state::megapc_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megapcpl_map, AS_PROGRAM, 32, at_state )
+ADDRESS_MAP_START(megapc_state::megapcpl_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megapc_io, AS_IO, 16, at_state )
+ADDRESS_MAP_START(megapc_state::megapc_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megapcpl_io, AS_IO, 32, at_state )
+ADDRESS_MAP_START(megapc_state::megapcpl_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/atari400.cpp b/src/mame/drivers/atari400.cpp
index 6994ea0755f..028688a9b1b 100644
--- a/src/mame/drivers/atari400.cpp
+++ b/src/mame/drivers/atari400.cpp
@@ -313,6 +313,13 @@ public:
void a600xl(machine_config &config);
void xegs(machine_config &config);
void a400(machine_config &config);
+ void a1200xl_mem(address_map &map);
+ void a130xe_mem(address_map &map);
+ void a400_mem(address_map &map);
+ void a5200_mem(address_map &map);
+ void a600xl_mem(address_map &map);
+ void a800xl_mem(address_map &map);
+ void xegs_mem(address_map &map);
protected:
//required_device<cpu_device> m_maincpu; // maincpu is already contained in atari_common_state
required_device<ram_device> m_ram;
@@ -551,7 +558,7 @@ WRITE8_MEMBER(a400_state::xegs_low_w)
**************************************************************/
-static ADDRESS_MAP_START(a400_mem, AS_PROGRAM, 8, a400_state)
+ADDRESS_MAP_START(a400_state::a400_mem)
AM_RANGE(0x0000, 0xbfff) AM_NOP // RAM installed at runtime
AM_RANGE(0xc000, 0xcfff) AM_ROM
AM_RANGE(0xd000, 0xd0ff) AM_DEVREADWRITE("gtia", gtia_device, read, write)
@@ -564,7 +571,7 @@ static ADDRESS_MAP_START(a400_mem, AS_PROGRAM, 8, a400_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(a600xl_mem, AS_PROGRAM, 8, a400_state)
+ADDRESS_MAP_START(a400_state::a600xl_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x5000, 0x57ff) AM_READ(a600xl_low_r) // self test or NOP
AM_RANGE(0xa000, 0xbfff) AM_ROM // BASIC
@@ -579,7 +586,7 @@ static ADDRESS_MAP_START(a600xl_mem, AS_PROGRAM, 8, a400_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(a1200xl_mem, AS_PROGRAM, 8, a400_state)
+ADDRESS_MAP_START(a400_state::a1200xl_mem)
AM_RANGE(0x0000, 0xcfff) AM_READWRITE(a1200xl_low_r, xegs_low_w)
AM_RANGE(0xd000, 0xd0ff) AM_DEVREADWRITE("gtia", gtia_device, read, write)
AM_RANGE(0xd100, 0xd1ff) AM_NOP
@@ -591,7 +598,7 @@ static ADDRESS_MAP_START(a1200xl_mem, AS_PROGRAM, 8, a400_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(a800xl_mem, AS_PROGRAM, 8, a400_state)
+ADDRESS_MAP_START(a400_state::a800xl_mem)
AM_RANGE(0x0000, 0xcfff) AM_READWRITE(a800xl_low_r, a800xl_low_w)
AM_RANGE(0xd000, 0xd0ff) AM_DEVREADWRITE("gtia", gtia_device, read, write)
AM_RANGE(0xd100, 0xd1ff) AM_NOP
@@ -603,7 +610,7 @@ static ADDRESS_MAP_START(a800xl_mem, AS_PROGRAM, 8, a400_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(a130xe_mem, AS_PROGRAM, 8, a400_state)
+ADDRESS_MAP_START(a400_state::a130xe_mem)
AM_RANGE(0x0000, 0xcfff) AM_READWRITE(a130xe_low_r, a800xl_low_w)
AM_RANGE(0xd000, 0xd0ff) AM_DEVREADWRITE("gtia", gtia_device, read, write)
AM_RANGE(0xd100, 0xd1ff) AM_NOP
@@ -615,7 +622,7 @@ static ADDRESS_MAP_START(a130xe_mem, AS_PROGRAM, 8, a400_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(xegs_mem, AS_PROGRAM, 8, a400_state)
+ADDRESS_MAP_START(a400_state::xegs_mem)
AM_RANGE(0x0000, 0xcfff) AM_READWRITE(xegs_low_r, xegs_low_w)
AM_RANGE(0xd000, 0xd0ff) AM_DEVREADWRITE("gtia", gtia_device, read, write)
AM_RANGE(0xd100, 0xd1ff) AM_NOP
@@ -627,7 +634,7 @@ static ADDRESS_MAP_START(xegs_mem, AS_PROGRAM, 8, a400_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(a5200_mem, AS_PROGRAM, 8, a400_state)
+ADDRESS_MAP_START(a400_state::a5200_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0xbfff) AM_NOP // ROM installed at machine start
AM_RANGE(0xc000, 0xcfff) AM_DEVREADWRITE("gtia", gtia_device, read, write)
diff --git a/src/mame/drivers/atari_s1.cpp b/src/mame/drivers/atari_s1.cpp
index fde4c670d00..e5df8554419 100644
--- a/src/mame/drivers/atari_s1.cpp
+++ b/src/mame/drivers/atari_s1.cpp
@@ -92,6 +92,9 @@ public:
void midearth(machine_config &config);
void atari_s1(machine_config &config);
void atarians(machine_config &config);
+ void atari_s1_map(address_map &map);
+ void atarians_map(address_map &map);
+ void midearth_map(address_map &map);
private:
bool m_audiores;
uint8_t m_timer_s[3];
@@ -111,7 +114,7 @@ private:
required_ioport_array<10> m_switch;
};
-static ADDRESS_MAP_START( atari_s1_map, AS_PROGRAM, 8, atari_s1_state )
+ADDRESS_MAP_START(atari_s1_state::atari_s1_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x1080, 0x1083) AM_READWRITE(m1080_r,m1080_w)
@@ -126,7 +129,7 @@ static ADDRESS_MAP_START( atari_s1_map, AS_PROGRAM, 8, atari_s1_state )
AM_RANGE(0x7000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atarians_map, AS_PROGRAM, 8, atari_s1_state ) // more ram
+ADDRESS_MAP_START(atari_s1_state::atarians_map) // more ram
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x1080, 0x1083) AM_READWRITE(m1080_r,m1080_w)
@@ -140,7 +143,7 @@ static ADDRESS_MAP_START( atarians_map, AS_PROGRAM, 8, atari_s1_state ) // more
AM_RANGE(0x7000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( midearth_map, AS_PROGRAM, 8, atari_s1_state )
+ADDRESS_MAP_START(atari_s1_state::midearth_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x1000, 0x11ff) AM_WRITE(midearth_w)
diff --git a/src/mame/drivers/atari_s2.cpp b/src/mame/drivers/atari_s2.cpp
index af72ef03f47..c6e87417559 100644
--- a/src/mame/drivers/atari_s2.cpp
+++ b/src/mame/drivers/atari_s2.cpp
@@ -55,6 +55,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_s);
void atari_s2(machine_config &config);
void atari_s3(machine_config &config);
+ void atari_s2_map(address_map &map);
+ void atari_s3_map(address_map &map);
private:
bool m_timer_sb;
uint8_t m_timer_s[5];
@@ -71,7 +73,7 @@ private:
};
-static ADDRESS_MAP_START( atari_s2_map, AS_PROGRAM, 8, atari_s2_state )
+ADDRESS_MAP_START(atari_s2_state::atari_s2_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM
AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0700) AM_RAM AM_SHARE("nvram") // battery backed
@@ -98,7 +100,7 @@ static ADDRESS_MAP_START( atari_s2_map, AS_PROGRAM, 8, atari_s2_state )
AM_RANGE(0x2800, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atari_s3_map, AS_PROGRAM, 8, atari_s2_state )
+ADDRESS_MAP_START(atari_s2_state::atari_s3_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM
AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0700) AM_RAM AM_SHARE("nvram") // battery backed
diff --git a/src/mame/drivers/atarifb.cpp b/src/mame/drivers/atarifb.cpp
index f935090a5ad..983938f1135 100644
--- a/src/mame/drivers/atarifb.cpp
+++ b/src/mame/drivers/atarifb.cpp
@@ -150,7 +150,7 @@ PALETTE_INIT_MEMBER(atarifb_state, atarifb)
*
*************************************/
-static ADDRESS_MAP_START( atarifb_map, AS_PROGRAM, 8, atarifb_state )
+ADDRESS_MAP_START(atarifb_state::atarifb_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_SHARE("p1_videoram")
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( atarifb_map, AS_PROGRAM, 8, atarifb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atarifb4_map, AS_PROGRAM, 8, atarifb_state )
+ADDRESS_MAP_START(atarifb_state::atarifb4_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_SHARE("p1_videoram")
@@ -191,7 +191,7 @@ static ADDRESS_MAP_START( atarifb4_map, AS_PROGRAM, 8, atarifb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( abaseb_map, AS_PROGRAM, 8, atarifb_state )
+ADDRESS_MAP_START(atarifb_state::abaseb_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_SHARE("p1_videoram")
@@ -211,7 +211,7 @@ static ADDRESS_MAP_START( abaseb_map, AS_PROGRAM, 8, atarifb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soccer_map, AS_PROGRAM, 8, atarifb_state )
+ADDRESS_MAP_START(atarifb_state::soccer_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_SHARE("p1_videoram")
diff --git a/src/mame/drivers/atarig1.cpp b/src/mame/drivers/atarig1.cpp
index fa9f1a7fd47..3920ea683c1 100644
--- a/src/mame/drivers/atarig1.cpp
+++ b/src/mame/drivers/atarig1.cpp
@@ -190,7 +190,7 @@ void atarig1_state::pitfightb_cheap_slapstic_init()
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarig1_state )
+ADDRESS_MAP_START(atarig1_state::main_map)
AM_RANGE(0x000000, 0x037fff) AM_ROM
AM_RANGE(0x038000, 0x03ffff) AM_ROM /* pitfight slapstic goes here */
AM_RANGE(0x040000, 0x077fff) AM_ROM
diff --git a/src/mame/drivers/atarig42.cpp b/src/mame/drivers/atarig42.cpp
index 5dff3b19037..fb60d4653b0 100644
--- a/src/mame/drivers/atarig42.cpp
+++ b/src/mame/drivers/atarig42.cpp
@@ -320,7 +320,7 @@ WRITE16_MEMBER(atarig42_state::guardians_sloop_data_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarig42_state )
+ADDRESS_MAP_START(atarig42_state::main_map)
AM_RANGE(0x000000, 0x080001) AM_ROM
AM_RANGE(0xe00000, 0xe00001) AM_READ_PORT("IN0")
AM_RANGE(0xe00002, 0xe00003) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/atarigt.cpp b/src/mame/drivers/atarigt.cpp
index bcfb4374d27..56152effccf 100644
--- a/src/mame/drivers/atarigt.cpp
+++ b/src/mame/drivers/atarigt.cpp
@@ -596,7 +596,7 @@ WRITE32_MEMBER(atarigt_state::colorram_protection_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, atarigt_state )
+ADDRESS_MAP_START(atarigt_state::main_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0xc00000, 0xc00003) AM_READWRITE(sound_data_r, sound_data_w)
AM_RANGE(0xd00014, 0xd00017) AM_READ(analog_port0_r)
diff --git a/src/mame/drivers/atarigx2.cpp b/src/mame/drivers/atarigx2.cpp
index 1e0c94bf149..b149f7fe9bd 100644
--- a/src/mame/drivers/atarigx2.cpp
+++ b/src/mame/drivers/atarigx2.cpp
@@ -1196,7 +1196,7 @@ READ32_MEMBER( atarigx2_state::rrreveng_prot_r )
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, atarigx2_state )
+ADDRESS_MAP_START(atarigx2_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0xc80000, 0xc80fff) AM_RAM
diff --git a/src/mame/drivers/atarist.cpp b/src/mame/drivers/atarist.cpp
index b7f8252fc9b..259d06ca2bc 100644
--- a/src/mame/drivers/atarist.cpp
+++ b/src/mame/drivers/atarist.cpp
@@ -1203,7 +1203,7 @@ WRITE16_MEMBER( stbook_state::lcd_control_w )
// ADDRESS_MAP( ikbd_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( ikbd_map, AS_PROGRAM, 8, st_state )
+ADDRESS_MAP_START(st_state::ikbd_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(HD6301V1_TAG, hd6301_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(HD6301V1_TAG, 0)
@@ -1214,7 +1214,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ikbd_io_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( ikbd_io_map, AS_IO, 8, st_state )
+ADDRESS_MAP_START(st_state::ikbd_io_map)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ(ikbd_port1_r)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(ikbd_port2_r, ikbd_port2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3) AM_WRITE(ikbd_port3_w)
@@ -1226,7 +1226,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( st_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( st_map, AS_PROGRAM, 16, st_state )
+ADDRESS_MAP_START(st_state::st_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x000007) AM_ROM AM_REGION(M68000_TAG, 0) AM_WRITE(berr_w)
AM_RANGE(0x000008, 0x1fffff) AM_RAM
@@ -1269,7 +1269,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( megast_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( megast_map, AS_PROGRAM, 16, megast_state )
+ADDRESS_MAP_START(megast_state::megast_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x000007) AM_ROM AM_REGION(M68000_TAG, 0)
AM_RANGE(0x000008, 0x1fffff) AM_RAM
@@ -1312,7 +1312,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ste_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( ste_map, AS_PROGRAM, 16, ste_state )
+ADDRESS_MAP_START(ste_state::ste_map)
AM_IMPORT_FROM(st_map)
/* AM_RANGE(0xe00000, 0xe3ffff) AM_ROM AM_REGION(M68000_TAG, 0)
AM_RANGE(0xff8204, 0xff8209) AM_READWRITE8(shifter_counter_r, shifter_counter_w, 0x00ff)
@@ -1353,7 +1353,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( megaste_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( megaste_map, AS_PROGRAM, 16, megaste_state )
+ADDRESS_MAP_START(megaste_state::megaste_map)
AM_IMPORT_FROM(st_map)
/* AM_RANGE(0xff8204, 0xff8209) AM_READWRITE(shifter_counter_r, shifter_counter_w)
AM_RANGE(0xff820c, 0xff820d) AM_READWRITE(shifter_base_low_r, shifter_base_low_w)
@@ -1390,7 +1390,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( stbook_map )
//-------------------------------------------------
#if 0
-static ADDRESS_MAP_START( stbook_map, AS_PROGRAM, 16, stbook_state )
+ADDRESS_MAP_START(stbook_state::stbook_map)
AM_RANGE(0x000000, 0x1fffff) AM_RAM
AM_RANGE(0x200000, 0x3fffff) AM_RAM
// AM_RANGE(0xd40000, 0xd7ffff) AM_ROM
diff --git a/src/mame/drivers/atarisy1.cpp b/src/mame/drivers/atarisy1.cpp
index 6541e19297f..c80bed7dea7 100644
--- a/src/mame/drivers/atarisy1.cpp
+++ b/src/mame/drivers/atarisy1.cpp
@@ -445,7 +445,7 @@ WRITE_LINE_MEMBER(atarisy1_state::coin_counter_left_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarisy1_state )
+ADDRESS_MAP_START(atarisy1_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x087fff) AM_ROM /* slapstic maps here */
AM_RANGE(0x2e0000, 0x2e0001) AM_READ(atarisy1_int3state_r)
@@ -479,7 +479,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, atarisy1_state )
+ADDRESS_MAP_START(atarisy1_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x100f) AM_DEVREADWRITE("via6522_0", via6522_device, read, write)
AM_RANGE(0x1800, 0x1801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/atarisy2.cpp b/src/mame/drivers/atarisy2.cpp
index 614c585fece..7591f8a47dc 100644
--- a/src/mame/drivers/atarisy2.cpp
+++ b/src/mame/drivers/atarisy2.cpp
@@ -753,7 +753,7 @@ WRITE8_MEMBER(atarisy2_state::coincount_w)
*************************************/
/* full memory map derived from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarisy2_state )
+ADDRESS_MAP_START(atarisy2_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x11ff) AM_MIRROR(0x0200) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x1400, 0x1403) AM_MIRROR(0x007c) AM_READWRITE(adc_r, bankselect_w)
@@ -784,7 +784,7 @@ ADDRESS_MAP_END
*************************************/
/* full memory map derived from schematics */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, atarisy2_state )
+ADDRESS_MAP_START(atarisy2_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x2000) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_MIRROR(0x2000) AM_DEVREADWRITE("eeprom", eeprom_parallel_28xx_device, read, write)
AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x2780) AM_DEVREADWRITE("pokey1", pokey_device, read, write)
diff --git a/src/mame/drivers/atarisy4.cpp b/src/mame/drivers/atarisy4.cpp
index b53c6607f1d..f872a3b5bd6 100644
--- a/src/mame/drivers/atarisy4.cpp
+++ b/src/mame/drivers/atarisy4.cpp
@@ -109,6 +109,11 @@ public:
void load_hexfile(address_space &space, const uint8_t *file);
void airrace(machine_config &config);
void atarisy4(machine_config &config);
+ void dsp0_io_map(address_map &map);
+ void dsp0_map(address_map &map);
+ void dsp1_io_map(address_map &map);
+ void dsp1_map(address_map &map);
+ void main_map(address_map &map);
};
@@ -666,7 +671,7 @@ WRITE16_MEMBER(atarisy4_state::dsp1_bank_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarisy4_state )
+ADDRESS_MAP_START(atarisy4_state::main_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("m68k_ram")
AM_RANGE(0x010000, 0x01ffff) AM_RAM
AM_RANGE(0x580000, 0x580001) AM_READ_PORT("JOYSTICK")
@@ -687,13 +692,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsp0_map, AS_PROGRAM, 16, atarisy4_state )
+ADDRESS_MAP_START(atarisy4_state::dsp0_map)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("dsp0_bank0")
AM_RANGE(0x0800, 0x0fff) AM_RAMBANK("dsp0_bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp0_io_map, AS_IO, 16, atarisy4_state )
+ADDRESS_MAP_START(atarisy4_state::dsp0_io_map)
AM_RANGE(0x00, 0x01) AM_WRITE(dsp0_bank_w)
ADDRESS_MAP_END
@@ -704,13 +709,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsp1_map, AS_PROGRAM, 16, atarisy4_state )
+ADDRESS_MAP_START(atarisy4_state::dsp1_map)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("dsp1_bank0")
AM_RANGE(0x0800, 0x0fff) AM_RAMBANK("dsp1_bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp1_io_map, AS_IO, 16, atarisy4_state )
+ADDRESS_MAP_START(atarisy4_state::dsp1_io_map)
AM_RANGE(0x00, 0x01) AM_WRITE(dsp1_bank_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/atetris.cpp b/src/mame/drivers/atetris.cpp
index bdac29bac25..d826a5ca48e 100644
--- a/src/mame/drivers/atetris.cpp
+++ b/src/mame/drivers/atetris.cpp
@@ -193,7 +193,7 @@ WRITE8_MEMBER(atetris_state::nvram_enable_w)
*************************************/
/* full address map derived from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, atetris_state )
+ADDRESS_MAP_START(atetris_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x2000, 0x20ff) AM_MIRROR(0x0300) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -210,7 +210,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, atetris_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atetrisb2_map, AS_PROGRAM, 8, atetris_state )
+ADDRESS_MAP_START(atetris_state::atetrisb2_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x2000, 0x20ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -230,7 +230,7 @@ static ADDRESS_MAP_START( atetrisb2_map, AS_PROGRAM, 8, atetris_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atetrisb3_map, AS_PROGRAM, 8, atetris_state )
+ADDRESS_MAP_START(atetris_state::atetrisb3_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x2000, 0x20ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
diff --git a/src/mame/drivers/atlantis.cpp b/src/mame/drivers/atlantis.cpp
index a3210de8912..e28163e268f 100644
--- a/src/mame/drivers/atlantis.cpp
+++ b/src/mame/drivers/atlantis.cpp
@@ -183,6 +183,10 @@ public:
DECLARE_READ8_MEMBER(parallel_r);
DECLARE_WRITE8_MEMBER(parallel_w);
void mwskins(machine_config &config);
+ void map0(address_map &map);
+ void map1(address_map &map);
+ void map2(address_map &map);
+ void map3(address_map &map);
};
// Parallel Port
@@ -661,7 +665,7 @@ void atlantis_state::device_timer(emu_timer &timer, device_timer_id id, int para
/*************************************
* Address Maps
*************************************/
-static ADDRESS_MAP_START( map0, AS_PROGRAM, 32, atlantis_state )
+ADDRESS_MAP_START(atlantis_state::map0)
AM_RANGE(0x00000000, 0x0001ffff) AM_READWRITE8(cmos_r, cmos_w, 0xff)
//AM_RANGE(0x00080000, 0x000?0000) AM_READWRITE8(zeus debug)
AM_RANGE(0x00100000, 0x0010001f) AM_DEVREADWRITE8("uart1", ns16550_device, ins8250_r, ins8250_w, 0xff) // Serial UART1 (TL16C552 CS0)
@@ -675,7 +679,7 @@ static ADDRESS_MAP_START( map0, AS_PROGRAM, 32, atlantis_state )
//AM_RANGE(0x00f00000, 0x00f00003) AM_NOP // Trackball ctrl
ADDRESS_MAP_END
-static ADDRESS_MAP_START( map1, AS_PROGRAM, 32, atlantis_state )
+ADDRESS_MAP_START(atlantis_state::map1)
AM_RANGE(0x00000000, 0x0000003f) AM_DEVREADWRITE("ioasic", midway_ioasic_device, read, write)
AM_RANGE(0x00200000, 0x00200003) AM_WRITE(dcs3_fifo_full_w)
AM_RANGE(0x00400000, 0x00400003) AM_DEVWRITE("dcs", dcs_audio_device, dsio_idma_addr_w)
@@ -691,11 +695,11 @@ static ADDRESS_MAP_START( map1, AS_PROGRAM, 32, atlantis_state )
//AM_RANGE(0x00c00000, 0x00c00003) // Trackball Pins 16 bits
ADDRESS_MAP_END
-static ADDRESS_MAP_START(map2, AS_PROGRAM, 32, atlantis_state)
+ADDRESS_MAP_START(atlantis_state::map2)
AM_RANGE(0x00000000, 0x000001ff) AM_DEVREADWRITE("zeus2", zeus2_device, zeus2_r, zeus2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( map3, AS_PROGRAM, 32, atlantis_state )
+ADDRESS_MAP_START(atlantis_state::map3)
//AM_RANGE(0x000000, 0xffffff) ROMBUS
ADDRESS_MAP_END
@@ -807,10 +811,10 @@ MACHINE_CONFIG_START(atlantis_state::mwskins)
MCFG_VRC4373_ADD( PCI_ID_NILE, ":maincpu")
MCFG_VRC4373_SET_RAM(0x00800000)
MCFG_PCI9050_ADD( PCI_ID_9050)
- MCFG_PCI9050_SET_MAP(0, map0)
- MCFG_PCI9050_SET_MAP(1, map1)
- MCFG_PCI9050_SET_MAP(2, map2)
- MCFG_PCI9050_SET_MAP(3, map3)
+ MCFG_PCI9050_SET_MAP(0, atlantis_state::map0)
+ MCFG_PCI9050_SET_MAP(1, atlantis_state::map1)
+ MCFG_PCI9050_SET_MAP(2, atlantis_state::map2)
+ MCFG_PCI9050_SET_MAP(3, atlantis_state::map3)
MCFG_PCI9050_USER_OUTPUT_CALLBACK(DEVWRITE32(":", atlantis_state, user_io_output))
MCFG_PCI9050_USER_INPUT_CALLBACK(DEVREAD32(":", atlantis_state, user_io_input))
diff --git a/src/mame/drivers/atm.cpp b/src/mame/drivers/atm.cpp
index 2fe22db449a..8cef5ca9b6d 100644
--- a/src/mame/drivers/atm.cpp
+++ b/src/mame/drivers/atm.cpp
@@ -37,6 +37,9 @@ public:
void atm(machine_config &config);
void atmtb2(machine_config &config);
+ void atm_io(address_map &map);
+ void atm_mem(address_map &map);
+ void atm_switch(address_map &map);
protected:
required_memory_bank m_bank1;
required_memory_bank m_bank2;
@@ -108,14 +111,14 @@ READ8_MEMBER(atm_state::beta_disable_r)
return m_program->read_byte(offset + 0x4000);
}
-static ADDRESS_MAP_START(atm_mem, AS_PROGRAM, 8, atm_state)
+ADDRESS_MAP_START(atm_state::atm_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START (atm_io, AS_IO, 8, atm_state )
+ADDRESS_MAP_START(atm_state::atm_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x001f, 0x001f) AM_DEVREADWRITE(BETA_DISK_TAG, beta_disk_device, status_r, command_w) AM_MIRROR(0xff00)
AM_RANGE(0x003f, 0x003f) AM_DEVREADWRITE(BETA_DISK_TAG, beta_disk_device, track_r, track_w) AM_MIRROR(0xff00)
@@ -128,7 +131,7 @@ static ADDRESS_MAP_START (atm_io, AS_IO, 8, atm_state )
AM_RANGE(0xc000, 0xc000) AM_DEVREADWRITE("ay8912", ay8910_device, data_r, address_w) AM_MIRROR(0x3ffd)
ADDRESS_MAP_END
-static ADDRESS_MAP_START (atm_switch, AS_OPCODES, 8, atm_state)
+ADDRESS_MAP_START(atm_state::atm_switch)
AM_RANGE(0x0000, 0x3fff) AM_READ(beta_neutral_r) // Overlap with previous because we want real addresses on the 3e00-3fff range
AM_RANGE(0x3d00, 0x3dff) AM_READ(beta_enable_r)
AM_RANGE(0x4000, 0xffff) AM_READ(beta_disable_r)
@@ -184,7 +187,7 @@ MACHINE_CONFIG_DERIVED(atm_state::atm, spectrum_128)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(atm_mem)
MCFG_CPU_IO_MAP(atm_io)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(atm_switch)
+ MCFG_CPU_OPCODES_MAP(atm_switch)
MCFG_MACHINE_RESET_OVERRIDE(atm_state, atm )
MCFG_BETA_DISK_ADD(BETA_DISK_TAG)
diff --git a/src/mame/drivers/atom.cpp b/src/mame/drivers/atom.cpp
index 9a5d0b8bcfb..51171ce91f3 100644
--- a/src/mame/drivers/atom.cpp
+++ b/src/mame/drivers/atom.cpp
@@ -248,7 +248,7 @@ READ8_MEMBER( atomeb_state::dos_r )
ADDRESS_MAP( atom_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( atom_mem, AS_PROGRAM, 8, atom_state )
+ADDRESS_MAP_START(atom_state::atom_mem)
AM_RANGE(0x0000, 0x09ff) AM_RAM
AM_RANGE(0x0a00, 0x0a03) AM_MIRROR(0x1f8) AM_DEVICE(I8271_TAG, i8271_device, map)
AM_RANGE(0x0a04, 0x0a04) AM_MIRROR(0x1f8) AM_DEVREADWRITE(I8271_TAG, i8271_device, data_r, data_w)
@@ -267,7 +267,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( atomeb_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( atomeb_mem, AS_PROGRAM, 8, atomeb_state )
+ADDRESS_MAP_START(atomeb_state::atomeb_mem)
AM_IMPORT_FROM(atom_mem)
AM_RANGE(0xa000, 0xafff) AM_READ(ext_r)
AM_RANGE(0xbfff, 0xbfff) AM_READWRITE(eprom_r, eprom_w)
@@ -278,7 +278,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( atombb_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( atombb_mem, AS_PROGRAM, 8, atom_state )
+ADDRESS_MAP_START(atom_state::atombb_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0x57ff) AM_RAM AM_SHARE("video_ram")
diff --git a/src/mame/drivers/atpci.cpp b/src/mame/drivers/atpci.cpp
index 13d50d183f3..06ed0cab4ee 100644
--- a/src/mame/drivers/atpci.cpp
+++ b/src/mame/drivers/atpci.cpp
@@ -27,6 +27,8 @@ public:
static void tx_config(device_t *device);
static void sb_config(device_t *device);
+ void at586_io(address_map &map);
+ void at586_map(address_map &map);
};
WRITE8_MEMBER(at586_state::boot_state_w)
@@ -53,14 +55,14 @@ static SLOT_INTERFACE_START( pci_devices )
SLOT_INTERFACE_INTERNAL("i82371sb", I82371SB)
SLOT_INTERFACE_END
-static ADDRESS_MAP_START( at586_map, AS_PROGRAM, 32, at586_state )
+ADDRESS_MAP_START(at586_state::at586_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("bank10")
AM_RANGE(0x000a0000, 0x000bffff) AM_NOP
AM_RANGE(0x00800000, 0x00800bff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("isa", 0x20000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at586_io, AS_IO, 32, at586_state )
+ADDRESS_MAP_START(at586_state::at586_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/atronic.cpp b/src/mame/drivers/atronic.cpp
index 05ccf71dc35..968af2617c7 100644
--- a/src/mame/drivers/atronic.cpp
+++ b/src/mame/drivers/atronic.cpp
@@ -30,6 +30,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void atronic(machine_config &config);
+ void atronic_map(address_map &map);
+ void atronic_portmap(address_map &map);
protected:
// devices
@@ -42,13 +44,13 @@ uint32_t atronic_state::screen_update( screen_device &screen, bitmap_ind16 &bitm
}
-static ADDRESS_MAP_START( atronic_map, AS_PROGRAM, 8, atronic_state )
+ADDRESS_MAP_START(atronic_state::atronic_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0xf8000, 0xfffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atronic_portmap, AS_IO, 8, atronic_state )
+ADDRESS_MAP_START(atronic_state::atronic_portmap)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x3f) AM_RAM
diff --git a/src/mame/drivers/att4425.cpp b/src/mame/drivers/att4425.cpp
index c48cf8f8418..ac23737d76b 100644
--- a/src/mame/drivers/att4425.cpp
+++ b/src/mame/drivers/att4425.cpp
@@ -61,6 +61,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void att4425(machine_config &config);
+ void att4425_io(address_map &map);
+ void att4425_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void video_start() override;
@@ -97,12 +99,12 @@ READ8_MEMBER(att4425_state::port15_r)
return 0;
}
-static ADDRESS_MAP_START( att4425_mem, AS_PROGRAM, 8, att4425_state )
+ADDRESS_MAP_START(att4425_state::att4425_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("videoram") // c000..f7af?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( att4425_io, AS_IO, 8, att4425_state )
+ADDRESS_MAP_START(att4425_state::att4425_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE(I8251_TAG, i8251_device, data_r, data_w)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE(I8251_TAG, i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/att630.cpp b/src/mame/drivers/att630.cpp
index 1951e0cf46f..9ede731e85c 100644
--- a/src/mame/drivers/att630.cpp
+++ b/src/mame/drivers/att630.cpp
@@ -22,6 +22,7 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void att630(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
@@ -31,7 +32,7 @@ u32 att630_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, con
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, att630_state )
+ADDRESS_MAP_START(att630_state::mem_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE8("duart1", scn2681_device, read, write, 0x00ff)
AM_RANGE(0x200020, 0x20003f) AM_DEVREADWRITE8("duart2", scn2681_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/attache.cpp b/src/mame/drivers/attache.cpp
index d86bc478d96..d63ab493a30 100644
--- a/src/mame/drivers/attache.cpp
+++ b/src/mame/drivers/attache.cpp
@@ -181,6 +181,8 @@ public:
uint8_t keyboard_data_r();
uint16_t get_key();
void attache(machine_config &config);
+ void attache_io(address_map &map);
+ void attache_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_memory_region m_rom;
@@ -259,6 +261,9 @@ public:
virtual void machine_reset() override;
void attache816(machine_config &config);
+ void attache816_io(address_map &map);
+ void attache_x86_io(address_map &map);
+ void attache_x86_map(address_map &map);
private:
required_device<cpu_device> m_extcpu;
required_device<i8255_device> m_ppi;
@@ -895,7 +900,7 @@ WRITE_LINE_MEMBER(attache816_state::x86_dsr)
// TODO: /DSR to Z8530 SCC
}
-static ADDRESS_MAP_START( attache_map, AS_PROGRAM, 8, attache_state)
+ADDRESS_MAP_START(attache_state::attache_map)
AM_RANGE(0x0000,0x1fff) AM_RAMBANK("bank1")
AM_RANGE(0x2000,0x3fff) AM_RAMBANK("bank2")
AM_RANGE(0x4000,0x5fff) AM_RAMBANK("bank3")
@@ -906,7 +911,7 @@ static ADDRESS_MAP_START( attache_map, AS_PROGRAM, 8, attache_state)
AM_RANGE(0xe000,0xffff) AM_RAMBANK("bank8")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( attache_io, AS_IO, 8, attache_state)
+ADDRESS_MAP_START(attache_state::attache_io)
AM_RANGE(0xe0, 0xed) AM_DEVREADWRITE("dma",am9517a_device,read,write) AM_MIRROR(0xff00)
AM_RANGE(0xee, 0xee) AM_WRITE(display_command_w) AM_MIRROR(0xff00)
AM_RANGE(0xef, 0xef) AM_READWRITE(dma_mask_r, dma_mask_w) AM_MIRROR(0xff00)
@@ -918,7 +923,7 @@ static ADDRESS_MAP_START( attache_io, AS_IO, 8, attache_state)
AM_RANGE(0xff, 0xff) AM_READWRITE(memmap_r, memmap_w) AM_MIRROR(0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( attache816_io, AS_IO, 8, attache816_state)
+ADDRESS_MAP_START(attache816_state::attache816_io)
AM_RANGE(0xb8, 0xb8) AM_READWRITE(z80_comms_status_r, z80_comms_ctrl_w) AM_MIRROR(0xff00)
AM_RANGE(0xb9, 0xb9) AM_READWRITE(z80_comms_r, z80_comms_w) AM_MIRROR(0xff00)
AM_RANGE(0xe0, 0xed) AM_DEVREADWRITE("dma",am9517a_device,read,write) AM_MIRROR(0xff00)
@@ -932,13 +937,13 @@ static ADDRESS_MAP_START( attache816_io, AS_IO, 8, attache816_state)
AM_RANGE(0xff, 0xff) AM_READWRITE(memmap_r, memmap_w) AM_MIRROR(0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( attache_x86_map, AS_PROGRAM, 16, attache816_state)
+ADDRESS_MAP_START(attache816_state::attache_x86_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
AM_RANGE(0xb0000, 0xbffff) AM_NOP // triggers IRQ?
AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("x86bios",0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( attache_x86_io, AS_IO, 16, attache816_state)
+ADDRESS_MAP_START(attache816_state::attache_x86_io)
AM_RANGE(0x100, 0x107) AM_DEVREADWRITE8("ppi",i8255_device,read,write,0x00ff)
AM_RANGE(0x108, 0x10d) AM_WRITE8(x86_iobf_enable_w,0xffff);
// 0x140/2/4/6 - Z8530 SCC serial
diff --git a/src/mame/drivers/attckufo.cpp b/src/mame/drivers/attckufo.cpp
index 7fe822ba16d..2926707dc3c 100644
--- a/src/mame/drivers/attckufo.cpp
+++ b/src/mame/drivers/attckufo.cpp
@@ -33,6 +33,9 @@ public:
DECLARE_READ8_MEMBER( vic_colorram_r );
void attckufo(machine_config &config);
+ void cpu_map(address_map &map);
+ void vic_colorram_map(address_map &map);
+ void vic_videoram_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
@@ -42,7 +45,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, attckufo_state )
+ADDRESS_MAP_START(attckufo_state::cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x100f) AM_DEVREADWRITE("mos6560", mos6560_device, read, write)
@@ -51,11 +54,11 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, attckufo_state )
AM_RANGE(0x2000, 0x3fff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vic_videoram_map, 0, 8, attckufo_state )
+ADDRESS_MAP_START(attckufo_state::vic_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(vic_videoram_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vic_colorram_map, 1, 8, attckufo_state )
+ADDRESS_MAP_START(attckufo_state::vic_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_READ(vic_colorram_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/atvtrack.cpp b/src/mame/drivers/atvtrack.cpp
index bf5c5e66386..261354b9c0b 100644
--- a/src/mame/drivers/atvtrack.cpp
+++ b/src/mame/drivers/atvtrack.cpp
@@ -145,6 +145,10 @@ public:
void gpu_irq_test();
void gpu_irq_set(int);
void atvtrack(machine_config &config);
+ void atvtrack_main_map(address_map &map);
+ void atvtrack_main_port(address_map &map);
+ void atvtrack_sub_map(address_map &map);
+ void atvtrack_sub_port(address_map &map);
protected:
bool m_slaverun;
};
@@ -159,6 +163,8 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void smashdrv(machine_config &config);
+ void smashdrv_main_map(address_map &map);
+ void smashdrv_main_port(address_map &map);
};
void atvtrack_state::logbinary(uint32_t data,int high=31,int low=0)
@@ -501,7 +507,7 @@ void smashdrv_state::machine_reset()
// ATV Track
-static ADDRESS_MAP_START( atvtrack_main_map, AS_PROGRAM, 64, atvtrack_state )
+ADDRESS_MAP_START(atvtrack_state::atvtrack_main_map)
AM_RANGE(0x00000000, 0x000003ff) AM_RAM AM_SHARE("sharedmem")
AM_RANGE(0x00020000, 0x00020007) AM_READWRITE(control_r, control_w) // control registers
// AM_RANGE(0x00020040, 0x0002007f) // audio DAC buffer
@@ -511,13 +517,13 @@ static ADDRESS_MAP_START( atvtrack_main_map, AS_PROGRAM, 64, atvtrack_state )
AM_RANGE(0x0c000000, 0x0c7fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atvtrack_main_port, AS_IO, 64, atvtrack_state )
+ADDRESS_MAP_START(atvtrack_state::atvtrack_main_port)
AM_RANGE(0x00, 0x1f) AM_READWRITE(ioport_r, ioport_w)
ADDRESS_MAP_END
// Smashing Drive
-static ADDRESS_MAP_START( smashdrv_main_map, AS_PROGRAM, 64, smashdrv_state )
+ADDRESS_MAP_START(smashdrv_state::smashdrv_main_map)
AM_RANGE(0x00000000, 0x03ffffff) AM_ROM
AM_RANGE(0x0c000000, 0x0c7fffff) AM_RAM
AM_RANGE(0x10000000, 0x100003ff) AM_RAM AM_SHARE("sharedmem")
@@ -528,13 +534,13 @@ static ADDRESS_MAP_START( smashdrv_main_map, AS_PROGRAM, 64, smashdrv_state )
AM_RANGE(0x14000000, 0x143fffff) AM_ROM AM_REGION("data", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( smashdrv_main_port, AS_IO, 64, smashdrv_state )
+ADDRESS_MAP_START(smashdrv_state::smashdrv_main_port)
AM_RANGE(0x00, 0x1f) AM_READWRITE(ioport_r, ioport_w)
ADDRESS_MAP_END
// Sub CPU (same for both games)
-static ADDRESS_MAP_START( atvtrack_sub_map, AS_PROGRAM, 64, atvtrack_state )
+ADDRESS_MAP_START(atvtrack_state::atvtrack_sub_map)
AM_RANGE(0x00000000, 0x000003ff) AM_RAM AM_SHARE("sharedmem")
AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM
AM_RANGE(0x14000000, 0x14003fff) AM_READWRITE32(gpu_r, gpu_w, 0xffffffffffffffffU)
@@ -543,7 +549,7 @@ static ADDRESS_MAP_START( atvtrack_sub_map, AS_PROGRAM, 64, atvtrack_state )
// 0x18000000 - 0x19FFFFFF GPU RAM (32MB)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atvtrack_sub_port, AS_IO, 64, atvtrack_state )
+ADDRESS_MAP_START(atvtrack_state::atvtrack_sub_port)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/aussiebyte.cpp b/src/mame/drivers/aussiebyte.cpp
index dde11c4ff0e..e89421bfbca 100644
--- a/src/mame/drivers/aussiebyte.cpp
+++ b/src/mame/drivers/aussiebyte.cpp
@@ -43,14 +43,14 @@
************************************************************/
-static ADDRESS_MAP_START( aussiebyte_map, AS_PROGRAM, 8, aussiebyte_state )
+ADDRESS_MAP_START(aussiebyte_state::aussiebyte_map)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank1")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank2")
AM_RANGE(0xc000, 0xffff) AM_RAM AM_REGION("mram", 0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aussiebyte_io, AS_IO, 8, aussiebyte_state )
+ADDRESS_MAP_START(aussiebyte_state::aussiebyte_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("sio1", z80sio_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/avalnche.cpp b/src/mame/drivers/avalnche.cpp
index c19e1b6051c..2712fb9efaf 100644
--- a/src/mame/drivers/avalnche.cpp
+++ b/src/mame/drivers/avalnche.cpp
@@ -112,7 +112,7 @@ WRITE_LINE_MEMBER(avalnche_state::start_lamp_w)
output().set_led_value(2, state);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, avalnche_state )
+ADDRESS_MAP_START(avalnche_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x0ffc) AM_READ_PORT("IN0")
@@ -125,7 +125,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, avalnche_state )
AM_RANGE(0x6000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( catch_map, AS_PROGRAM, 8, avalnche_state )
+ADDRESS_MAP_START(avalnche_state::catch_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x0ffc) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/avigo.cpp b/src/mame/drivers/avigo.cpp
index 75bc83c881b..5dfec009077 100644
--- a/src/mame/drivers/avigo.cpp
+++ b/src/mame/drivers/avigo.cpp
@@ -165,7 +165,7 @@ void avigo_state::machine_start()
save_item(NAME(m_warm_start));
}
-static ADDRESS_MAP_START(avigo_banked_map, AS_PROGRAM, 8, avigo_state)
+ADDRESS_MAP_START(avigo_state::avigo_banked_map)
AM_RANGE(0x0000000, 0x00fffff) AM_MIRROR(0x0300000) AM_DEVREADWRITE("flash0", intelfsh8_device, read, write)
AM_RANGE(0x0400000, 0x041ffff) AM_MIRROR(0x03e0000) AM_RAM AM_SHARE("nvram")
@@ -176,7 +176,7 @@ static ADDRESS_MAP_START(avigo_banked_map, AS_PROGRAM, 8, avigo_state)
AM_RANGE(0x1800000, 0x1803fff) AM_MIRROR(0x03fc000) AM_READWRITE(vid_memory_r, vid_memory_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( avigo_mem , AS_PROGRAM, 8, avigo_state)
+ADDRESS_MAP_START(avigo_state::avigo_mem)
AM_RANGE(0x0000, 0x3fff) AM_DEVREADWRITE("flash0", intelfsh8_device, read, write)
AM_RANGE(0x4000, 0x7fff) AM_DEVREADWRITE("bank0", address_map_bank_device, read8, write8)
AM_RANGE(0x8000, 0xbfff) AM_DEVREADWRITE("bank1", address_map_bank_device, read8, write8)
@@ -496,7 +496,7 @@ READ8_MEMBER(avigo_state::port_04_r)
-static ADDRESS_MAP_START( avigo_io, AS_IO, 8, avigo_state)
+ADDRESS_MAP_START(avigo_state::avigo_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x001, 0x001) AM_READWRITE( key_data_read_r, set_key_line_w )
diff --git a/src/mame/drivers/avt.cpp b/src/mame/drivers/avt.cpp
index b0153799bc1..f34373ca525 100644
--- a/src/mame/drivers/avt.cpp
+++ b/src/mame/drivers/avt.cpp
@@ -461,6 +461,8 @@ public:
void avtnfl(machine_config &config);
void avt(machine_config &config);
+ void avt_map(address_map &map);
+ void avt_portmap(address_map &map);
private:
tilemap_t *m_bg_tilemap;
uint8_t m_crtc_vreg[0x100],m_crtc_index;
@@ -644,7 +646,7 @@ READ8_MEMBER( avt_state::avt_6845_data_r )
*********************************************/
/* avtnfl, avtbingo */
-static ADDRESS_MAP_START( avt_map, AS_PROGRAM, 8, avt_state )
+ADDRESS_MAP_START(avt_state::avt_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x9fff) AM_RAM // AM_SHARE("nvram")
@@ -652,7 +654,7 @@ static ADDRESS_MAP_START( avt_map, AS_PROGRAM, 8, avt_state )
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(avt_colorram_w) AM_SHARE("colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( avt_portmap, AS_IO, 8, avt_state )
+ADDRESS_MAP_START(avt_state::avt_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pio0", z80pio_device, read_alt, write_alt)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("pio1", z80pio_device, read_alt, write_alt)
diff --git a/src/mame/drivers/ax20.cpp b/src/mame/drivers/ax20.cpp
index fc75f4ff6c3..44036174bd2 100644
--- a/src/mame/drivers/ax20.cpp
+++ b/src/mame/drivers/ax20.cpp
@@ -45,6 +45,8 @@ public:
DECLARE_WRITE8_MEMBER(tc_w);
DECLARE_WRITE8_MEMBER(ctl_w);
void ax20(machine_config &config);
+ void ax20_io(address_map &map);
+ void ax20_map(address_map &map);
};
READ8_MEMBER(ax20_state::unk_r)
@@ -78,7 +80,7 @@ uint32_t ax20_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap,
}
-static ADDRESS_MAP_START(ax20_map, AS_PROGRAM, 8, ax20_state)
+ADDRESS_MAP_START(ax20_state::ax20_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0x1ffff) AM_RAM
AM_RANGE(0x20000,0x3ffff) AM_RAM //optional RAM
@@ -86,7 +88,7 @@ static ADDRESS_MAP_START(ax20_map, AS_PROGRAM, 8, ax20_state)
AM_RANGE(0xff800,0xfffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ax20_io, AS_IO, 8, ax20_state)
+ADDRESS_MAP_START(ax20_state::ax20_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xffc0, 0xffc0) AM_WRITE(tc_w)
AM_RANGE(0xffd0, 0xffd0) AM_WRITE(ctl_w)
diff --git a/src/mame/drivers/aztarac.cpp b/src/mame/drivers/aztarac.cpp
index 3804241c1ff..7e2c0a6ef7d 100644
--- a/src/mame/drivers/aztarac.cpp
+++ b/src/mame/drivers/aztarac.cpp
@@ -78,7 +78,7 @@ READ16_MEMBER(aztarac_state::joystick_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, aztarac_state )
+ADDRESS_MAP_START(aztarac_state::main_map)
AM_RANGE(0x000000, 0x00bfff) AM_ROM
AM_RANGE(0x022000, 0x0220ff) AM_READ(nvram_r) AM_WRITEONLY AM_SHARE("nvram")
AM_RANGE(0x027000, 0x027001) AM_READ(joystick_r)
@@ -99,7 +99,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aztarac_state )
+ADDRESS_MAP_START(aztarac_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8800) AM_READ(snd_command_r)
diff --git a/src/mame/drivers/b16.cpp b/src/mame/drivers/b16.cpp
index 5ae948eb4ed..dbb561a0c03 100644
--- a/src/mame/drivers/b16.cpp
+++ b/src/mame/drivers/b16.cpp
@@ -56,6 +56,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void b16(machine_config &config);
+ void b16_io(address_map &map);
+ void b16_map(address_map &map);
};
#define mc6845_h_char_total (m_crtc_vreg[0])
@@ -120,7 +122,7 @@ WRITE8_MEMBER( b16_state::b16_pcg_w )
m_gfxdecode->gfx(0)->mark_dirty(offset >> 4);
}
-static ADDRESS_MAP_START( b16_map, AS_PROGRAM, 16, b16_state)
+ADDRESS_MAP_START(b16_state::b16_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00000, 0x9ffff ) AM_RAM // probably not all of it.
AM_RANGE( 0xa0000, 0xaffff ) AM_RAM // bitmap?
@@ -213,7 +215,7 @@ WRITE8_MEMBER( b16_state::unk_dev_w )
}
-static ADDRESS_MAP_START( b16_io, AS_IO, 16, b16_state)
+ADDRESS_MAP_START(b16_state::b16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x0f) AM_READWRITE8(unk_dev_r,unk_dev_w,0x00ff) // DMA device?
AM_RANGE(0x20, 0x21) AM_WRITE8(b16_6845_address_w,0x00ff)
diff --git a/src/mame/drivers/b2m.cpp b/src/mame/drivers/b2m.cpp
index daf7193ce0b..0333e529306 100644
--- a/src/mame/drivers/b2m.cpp
+++ b/src/mame/drivers/b2m.cpp
@@ -24,7 +24,7 @@
#include "speaker.h"
/* Address maps */
-static ADDRESS_MAP_START(b2m_mem, AS_PROGRAM, 8, b2m_state )
+ADDRESS_MAP_START(b2m_state::b2m_mem)
AM_RANGE (0x0000, 0x27ff) AM_RAMBANK("bank1")
AM_RANGE (0x2800, 0x2fff) AM_RAMBANK("bank2")
AM_RANGE (0x3000, 0x6fff) AM_RAMBANK("bank3")
@@ -32,7 +32,7 @@ static ADDRESS_MAP_START(b2m_mem, AS_PROGRAM, 8, b2m_state )
AM_RANGE (0xe000, 0xffff) AM_RAMBANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( b2m_io, AS_IO, 8, b2m_state )
+ADDRESS_MAP_START(b2m_state::b2m_io)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pit8253", pit8253_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write)
@@ -45,7 +45,7 @@ static ADDRESS_MAP_START( b2m_io, AS_IO, 8, b2m_state )
AM_RANGE(0x1c, 0x1f) AM_DEVREADWRITE("fd1793", fd1793_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( b2m_rom_io, AS_IO, 8, b2m_state )
+ADDRESS_MAP_START(b2m_state::b2m_rom_io)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pit8253", pit8253_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ppi8255_3", i8255_device, read, write)
diff --git a/src/mame/drivers/babbage.cpp b/src/mame/drivers/babbage.cpp
index f55491bbda6..85745754097 100644
--- a/src/mame/drivers/babbage.cpp
+++ b/src/mame/drivers/babbage.cpp
@@ -53,6 +53,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(keyboard_callback);
void babbage(machine_config &config);
+ void babbage_io(address_map &map);
+ void babbage_map(address_map &map);
private:
uint8_t m_segment;
uint8_t m_key;
@@ -73,13 +75,13 @@ private:
***************************************************************************/
-static ADDRESS_MAP_START( babbage_map, AS_PROGRAM, 8, babbage_state )
+ADDRESS_MAP_START(babbage_state::babbage_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x1000, 0x17ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( babbage_io, AS_IO, 8, babbage_state )
+ADDRESS_MAP_START(babbage_state::babbage_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("z80ctc", z80ctc_device, read, write)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("z80pio_1", z80pio_device, read_alt, write_alt)
diff --git a/src/mame/drivers/backfire.cpp b/src/mame/drivers/backfire.cpp
index 620f934a3bc..2882c465285 100644
--- a/src/mame/drivers/backfire.cpp
+++ b/src/mame/drivers/backfire.cpp
@@ -105,6 +105,7 @@ public:
required_ioport m_io_in3;
required_device<palette_device> m_palette;
void backfire(machine_config &config);
+ void backfire_map(address_map &map);
};
//uint32_t *backfire_180010, *backfire_188010;
@@ -291,7 +292,7 @@ WRITE32_MEMBER(backfire_state::backfire_spriteram2_w)
-static ADDRESS_MAP_START( backfire_map, AS_PROGRAM, 32, backfire_state )
+ADDRESS_MAP_START(backfire_state::backfire_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10001f) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf_control_dword_r, pf_control_dword_w)
AM_RANGE(0x110000, 0x111fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_dword_r, pf1_data_dword_w)
diff --git a/src/mame/drivers/badlands.cpp b/src/mame/drivers/badlands.cpp
index 8f8b4aa0c65..4c2e92e7907 100644
--- a/src/mame/drivers/badlands.cpp
+++ b/src/mame/drivers/badlands.cpp
@@ -375,7 +375,7 @@ WRITE8_MEMBER(badlands_state::audio_io_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, badlands_state )
+ADDRESS_MAP_START(badlands_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0xfc0000, 0xfc1fff) AM_READ(sound_busy_r) AM_DEVWRITE("soundcomm", atari_sound_comm_device, sound_reset_w)
AM_RANGE(0xfd0000, 0xfd1fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
@@ -404,7 +404,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, badlands_state )
+ADDRESS_MAP_START(badlands_state::audio_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x2800, 0x2bff) AM_READWRITE(audio_io_r, audio_io_w)
@@ -654,7 +654,7 @@ WRITE8_MEMBER(badlands_state::bootleg_shared_w)
m_b_sharedram[offset] = data;
}
-static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 16, badlands_state )
+ADDRESS_MAP_START(badlands_state::bootleg_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
// only 0-0xff accessed, assume all range is shared
@@ -685,7 +685,7 @@ WRITE8_MEMBER(badlands_state::bootleg_main_irq_w)
m_maincpu->set_input_line(2, HOLD_LINE);
}
-static ADDRESS_MAP_START( bootleg_audio_map, AS_PROGRAM, 8, badlands_state )
+ADDRESS_MAP_START(badlands_state::bootleg_audio_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("audiorom", 0)
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("b_sharedram")
AM_RANGE(0x4000, 0xcfff) AM_ROM AM_REGION("audiorom", 0x4000)
diff --git a/src/mame/drivers/bagman.cpp b/src/mame/drivers/bagman.cpp
index 693405f8693..c1277954425 100644
--- a/src/mame/drivers/bagman.cpp
+++ b/src/mame/drivers/bagman.cpp
@@ -129,7 +129,7 @@ WRITE_LINE_MEMBER(bagman_state::irq_mask_w)
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bagman_state )
+ADDRESS_MAP_START(bagman_state::main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -153,7 +153,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( pickin_map, AS_PROGRAM, 8, bagman_state )
+ADDRESS_MAP_START(bagman_state::pickin_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x7000, 0x77ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( pickin_map, AS_PROGRAM, 8, bagman_state )
AM_RANGE(0xb800, 0xb800) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, bagman_state )
+ADDRESS_MAP_START(bagman_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x09) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x0c, 0x0c) AM_DEVREAD("aysnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/balsente.cpp b/src/mame/drivers/balsente.cpp
index 66baf414bf6..6562d656a94 100644
--- a/src/mame/drivers/balsente.cpp
+++ b/src/mame/drivers/balsente.cpp
@@ -231,7 +231,6 @@ DIP locations verified for:
#include "cpu/z80/z80.h"
#include "cpu/m6809/m6809.h"
#include "cpu/m68000/m68000.h"
-#include "machine/74259.h"
#include "machine/nvram.h"
#include "machine/watchdog.h"
#include "sound/cem3394.h"
@@ -247,13 +246,13 @@ DIP locations verified for:
*
*************************************/
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, balsente_state )
+ADDRESS_MAP_START(balsente_state::cpu1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x0800, 0x7fff) AM_RAM_WRITE(balsente_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(balsente_paletteram_w) AM_SHARE("paletteram")
AM_RANGE(0x9000, 0x9007) AM_WRITE(balsente_adc_select_w)
AM_RANGE(0x9400, 0x9401) AM_READ(balsente_adc_data_r)
- AM_RANGE(0x9800, 0x981f) AM_MIRROR(0x0060) AM_DEVWRITE_MOD("outlatch", ls259_device, write_d7, rshift<2>)
+ ;map(0x9800, 0x981f).mirror(0x0060).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d7(space, offset >> 2, data, mem_mask); });
AM_RANGE(0x9880, 0x989f) AM_WRITE(balsente_random_reset_w)
AM_RANGE(0x98a0, 0x98bf) AM_WRITE(balsente_rombank_select_w)
AM_RANGE(0x98c0, 0x98df) AM_WRITE(balsente_palette_select_w)
@@ -277,7 +276,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, balsente_state )
+ADDRESS_MAP_START(balsente_state::cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x7fff) AM_WRITE(balsente_m6850_sound_w)
@@ -285,7 +284,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, balsente_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_io_map, AS_IO, 8, balsente_state )
+ADDRESS_MAP_START(balsente_state::cpu2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_READWRITE(balsente_counter_8253_r, balsente_counter_8253_w)
AM_RANGE(0x08, 0x0f) AM_READ(balsente_counter_state_r)
@@ -304,7 +303,7 @@ ADDRESS_MAP_END
*************************************/
/* CPU 1 read addresses */
-static ADDRESS_MAP_START( shrike68k_map, AS_PROGRAM, 16, balsente_state )
+ADDRESS_MAP_START(balsente_state::shrike68k_map)
AM_RANGE(0x000000, 0x003fff) AM_ROM
AM_RANGE(0x010000, 0x01001f) AM_RAM AM_SHARE("shrike_io")
AM_RANGE(0x018000, 0x018fff) AM_RAM AM_SHARE("shrike_shared")
diff --git a/src/mame/drivers/banctec.cpp b/src/mame/drivers/banctec.cpp
index 57ad4b392d5..c688652cb5c 100644
--- a/src/mame/drivers/banctec.cpp
+++ b/src/mame/drivers/banctec.cpp
@@ -39,6 +39,8 @@ public:
required_device<palette_device> m_palette;
void banctec(machine_config &config);
+ void banctec_mcu_mem(address_map &map);
+ void banctec_mem(address_map &map);
private:
u8 m_video_address;
virtual void machine_reset() override;
@@ -47,12 +49,12 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START( banctec_mem , AS_PROGRAM, 8, banctec_state )
+ADDRESS_MAP_START(banctec_state::banctec_mem)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0xffff) AM_RAM /* Probably wrong. Must be verified on pcb! */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( banctec_mcu_mem , AS_PROGRAM, 8, banctec_state )
+ADDRESS_MAP_START(banctec_state::banctec_mcu_mem)
AM_RANGE(0x0000, 0x00ff) AM_RAM /* Probably wrong. Must be verified on pcb! */
AM_RANGE(0x2000, 0x2000) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
AM_RANGE(0x2001, 0x2001) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
diff --git a/src/mame/drivers/bankp.cpp b/src/mame/drivers/bankp.cpp
index ab1a8e4b422..e0caba864d5 100644
--- a/src/mame/drivers/bankp.cpp
+++ b/src/mame/drivers/bankp.cpp
@@ -124,7 +124,7 @@
*
*************************************/
-static ADDRESS_MAP_START( bankp_map, AS_PROGRAM, 8, bankp_state )
+ADDRESS_MAP_START(bankp_state::bankp_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xf3ff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( bankp_map, AS_PROGRAM, 8, bankp_state )
AM_RANGE(0xfc00, 0xffff) AM_RAM_WRITE(colorram2_w) AM_SHARE("colorram2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bankp_io_map, AS_IO, 8, bankp_state )
+ADDRESS_MAP_START(bankp_state::bankp_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("sn1", sn76489_device, write)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_DEVWRITE("sn2", sn76489_device, write)
diff --git a/src/mame/drivers/baraduke.cpp b/src/mame/drivers/baraduke.cpp
index 46f0eb432e4..0b47b5fd2ec 100644
--- a/src/mame/drivers/baraduke.cpp
+++ b/src/mame/drivers/baraduke.cpp
@@ -165,7 +165,7 @@ WRITE8_MEMBER(baraduke_state::baraduke_irq_ack_w)
-static ADDRESS_MAP_START( baraduke_map, AS_PROGRAM, 8, baraduke_state )
+ADDRESS_MAP_START(baraduke_state::baraduke_map)
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(baraduke_spriteram_r,baraduke_spriteram_w) AM_SHARE("spriteram") /* Sprite RAM */
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(baraduke_videoram_r,baraduke_videoram_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE("namco", namco_cus30_device, namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */
@@ -182,7 +182,7 @@ READ8_MEMBER(baraduke_state::soundkludge_r)
return ((m_counter++) >> 4) & 0xff;
}
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, baraduke_state )
+ADDRESS_MAP_START(baraduke_state::mcu_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("mcu", hd63701_cpu_device, m6801_io_r,m6801_io_w)/* internal registers */
AM_RANGE(0x0080, 0x00ff) AM_RAM /* built in RAM */
AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namco_cus30_device, namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */
@@ -200,7 +200,7 @@ READ8_MEMBER(baraduke_state::readFF)
return 0xff;
}
-static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, baraduke_state )
+ADDRESS_MAP_START(baraduke_state::mcu_port_map)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ(inputport_r) /* input ports read */
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(inputport_select_w) /* input port select */
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */
diff --git a/src/mame/drivers/barata.cpp b/src/mame/drivers/barata.cpp
index 61341adf869..7979c669b43 100644
--- a/src/mame/drivers/barata.cpp
+++ b/src/mame/drivers/barata.cpp
@@ -57,6 +57,7 @@ public:
required_device<cpu_device> m_maincpu;
void barata(machine_config &config);
+ void i8051_io_port(address_map &map);
private:
unsigned char row_selection;
};
@@ -294,7 +295,7 @@ READ8_MEMBER(barata_state::port2_r)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( i8051_io_port, AS_IO, 8, barata_state )
+ADDRESS_MAP_START(barata_state::i8051_io_port)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0 ) AM_WRITE(port0_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1 ) AM_READ_PORT("PORT1")
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2 ) AM_READWRITE(port2_r, port2_w)
diff --git a/src/mame/drivers/barni.cpp b/src/mame/drivers/barni.cpp
index 6d993a5683d..83e269b9e97 100644
--- a/src/mame/drivers/barni.cpp
+++ b/src/mame/drivers/barni.cpp
@@ -31,24 +31,27 @@ public:
, m_maincpu(*this, "maincpu") { }
void barni(machine_config &config);
+ void audiocpu_map(address_map &map);
+ void maincpu_map(address_map &map);
+ void subcpu_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, barni_state )
+ADDRESS_MAP_START(barni_state::maincpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0xa100, 0xa7ff) AM_RAM
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subcpu_map, AS_PROGRAM, 8, barni_state )
+ADDRESS_MAP_START(barni_state::subcpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audiocpu_map, AS_PROGRAM, 8, barni_state )
+ADDRESS_MAP_START(barni_state::audiocpu_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bartop52.cpp b/src/mame/drivers/bartop52.cpp
index d1be82ff465..0a05694af39 100644
--- a/src/mame/drivers/bartop52.cpp
+++ b/src/mame/drivers/bartop52.cpp
@@ -41,10 +41,11 @@ public:
virtual void machine_reset() override;
void a5200(machine_config &config);
+ void a5200_mem(address_map &map);
};
-static ADDRESS_MAP_START(a5200_mem, AS_PROGRAM, 8, bartop52_state )
+ADDRESS_MAP_START(bartop52_state::a5200_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc0ff) AM_DEVREADWRITE("gtia", gtia_device, read, write)
diff --git a/src/mame/drivers/basic52.cpp b/src/mame/drivers/basic52.cpp
index 0afa43daf99..c134280af7c 100644
--- a/src/mame/drivers/basic52.cpp
+++ b/src/mame/drivers/basic52.cpp
@@ -52,13 +52,15 @@ public:
void basic52(machine_config &config);
void basic31(machine_config &config);
+ void basic52_io(address_map &map);
+ void basic52_mem(address_map &map);
private:
uint8_t m_term_data;
required_device<mcs51_cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(basic52_mem, AS_PROGRAM, 8, basic52_state)
+ADDRESS_MAP_START(basic52_state::basic52_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x7fff) AM_RAM
@@ -67,7 +69,7 @@ static ADDRESS_MAP_START(basic52_mem, AS_PROGRAM, 8, basic52_state)
//AM_RANGE(0xe000, 0xffff) // Expansion block
ADDRESS_MAP_END
-static ADDRESS_MAP_START(basic52_io, AS_IO, 8, basic52_state)
+ADDRESS_MAP_START(basic52_state::basic52_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x9fff) AM_ROM // EPROM
diff --git a/src/mame/drivers/batman.cpp b/src/mame/drivers/batman.cpp
index c18d1d191c8..1bb4beb73ab 100644
--- a/src/mame/drivers/batman.cpp
+++ b/src/mame/drivers/batman.cpp
@@ -95,7 +95,7 @@ WRITE16_MEMBER(batman_state::latch_w)
/* full map verified from schematics and GALs */
/* addresses in the 1xxxxx region map to /WAIT */
/* addresses in the 2xxxxx region map to /WAIT2 */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, batman_state )
+ADDRESS_MAP_START(batman_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fffff)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
diff --git a/src/mame/drivers/battlane.cpp b/src/mame/drivers/battlane.cpp
index 2cf644b5651..650572e8f3f 100644
--- a/src/mame/drivers/battlane.cpp
+++ b/src/mame/drivers/battlane.cpp
@@ -100,7 +100,7 @@ INTERRUPT_GEN_MEMBER(battlane_state::battlane_cpu1_interrupt)
*
*************************************/
-static ADDRESS_MAP_START( battlane_map, AS_PROGRAM, 8, battlane_state )
+ADDRESS_MAP_START(battlane_state::battlane_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(battlane_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x1800, 0x18ff) AM_RAM_WRITE(battlane_spriteram_w) AM_SHARE("spriteram")
diff --git a/src/mame/drivers/battlera.cpp b/src/mame/drivers/battlera.cpp
index 03acaba566e..80fc8a20f93 100644
--- a/src/mame/drivers/battlera.cpp
+++ b/src/mame/drivers/battlera.cpp
@@ -141,7 +141,7 @@ READ8_MEMBER(battlera_state::control_data_r)
/******************************************************************************/
-static ADDRESS_MAP_START( battlera_map, AS_PROGRAM, 8, battlera_state )
+ADDRESS_MAP_START(battlera_state::battlera_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x1e0800, 0x1e0801) AM_WRITE(sound_w)
AM_RANGE(0x1e1000, 0x1e13ff) AM_DEVREADWRITE( "huc6260", huc6260_device, palette_direct_read, palette_direct_write) AM_SHARE("paletteram")
@@ -155,7 +155,7 @@ static ADDRESS_MAP_START( battlera_map, AS_PROGRAM, 8, battlera_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( battlera_portmap, AS_IO, 8, battlera_state )
+ADDRESS_MAP_START(battlera_state::battlera_portmap)
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
ADDRESS_MAP_END
@@ -182,7 +182,7 @@ WRITE8_MEMBER(battlera_state::adpcm_reset_w)
m_msm->reset_w(0);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, battlera_state )
+ADDRESS_MAP_START(battlera_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x040001) AM_DEVWRITE("ymsnd", ym2203_device, write)
AM_RANGE(0x080000, 0x080001) AM_WRITE(adpcm_data_w)
diff --git a/src/mame/drivers/battlex.cpp b/src/mame/drivers/battlex.cpp
index 7ff7e72b081..458caf06d0d 100644
--- a/src/mame/drivers/battlex.cpp
+++ b/src/mame/drivers/battlex.cpp
@@ -115,7 +115,7 @@ CUSTOM_INPUT_MEMBER(battlex_state::battlex_in0_b4_r)
*
*************************************/
-static ADDRESS_MAP_START( battlex_map, AS_PROGRAM, 8, battlex_state )
+ADDRESS_MAP_START(battlex_state::battlex_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(battlex_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9000, 0x91ff) AM_RAM AM_SHARE("spriteram")
@@ -124,7 +124,7 @@ static ADDRESS_MAP_START( battlex_map, AS_PROGRAM, 8, battlex_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, battlex_state )
+ADDRESS_MAP_START(battlex_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM")
@@ -139,7 +139,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, battlex_state )
AM_RANGE(0x33, 0x33) AM_WRITE(battlex_scroll_x_msb_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dodgeman_io_map, AS_IO, 8, battlex_state )
+ADDRESS_MAP_START(battlex_state::dodgeman_io_map)
AM_IMPORT_FROM(io_map)
AM_RANGE(0x26, 0x27) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/battlnts.cpp b/src/mame/drivers/battlnts.cpp
index eb458792b63..e99599a3de7 100644
--- a/src/mame/drivers/battlnts.cpp
+++ b/src/mame/drivers/battlnts.cpp
@@ -61,7 +61,7 @@ WRITE8_MEMBER(battlnts_state::battlnts_bankswitch_w)
*
*************************************/
-static ADDRESS_MAP_START( battlnts_map, AS_PROGRAM, 8, battlnts_state )
+ADDRESS_MAP_START(battlnts_state::battlnts_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("k007342", k007342_device, read, write) /* Color RAM + Video RAM */
AM_RANGE(0x2000, 0x21ff) AM_DEVREADWRITE("k007420", k007420_device, read, write) /* Sprite RAM */
AM_RANGE(0x2200, 0x23ff) AM_DEVREADWRITE("k007342", k007342_device, scroll_r, scroll_w) /* Scroll RAM */
@@ -81,7 +81,7 @@ static ADDRESS_MAP_START( battlnts_map, AS_PROGRAM, 8, battlnts_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM 777e02.bin */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( battlnts_sound_map, AS_PROGRAM, 8, battlnts_state )
+ADDRESS_MAP_START(battlnts_state::battlnts_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM 777c01.rom */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ym1", ym3812_device, read, write) /* YM3812 (chip 1) */
diff --git a/src/mame/drivers/bbc.cpp b/src/mame/drivers/bbc.cpp
index 4c5eef683a1..2bb36d57976 100644
--- a/src/mame/drivers/bbc.cpp
+++ b/src/mame/drivers/bbc.cpp
@@ -142,7 +142,7 @@ READ8_MEMBER(bbc_state::bbc_fe_r)
return 0xfe;
}
-static ADDRESS_MAP_START( bbca_mem, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::bbca_mem)
ADDRESS_MAP_UNMAP_HIGH /* Hardware marked with a # is not present in a Model A */
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE(bbc_memorya1_w) /* 0000-3fff Regular Ram */
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( bbca_mem, AS_PROGRAM, 8, bbc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbc_base, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::bbc_base)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xc000, 0xfbff) AM_READ_BANK("bank7") /* c000-fbff OS ROM */
@@ -193,7 +193,7 @@ static ADDRESS_MAP_START( bbc_base, AS_PROGRAM, 8, bbc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbcb_mem, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::bbcb_mem)
AM_IMPORT_FROM(bbc_base)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE(bbc_memorya1_w) /* 0000-3fff Regular Ram */
@@ -206,7 +206,7 @@ static ADDRESS_MAP_START( bbcb_mem, AS_PROGRAM, 8, bbc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbcb_nofdc_mem, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::bbcb_nofdc_mem)
AM_IMPORT_FROM(bbc_base)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE(bbc_memorya1_w) /* 0000-3fff Regular Ram */
@@ -218,7 +218,7 @@ static ADDRESS_MAP_START( bbcb_nofdc_mem, AS_PROGRAM, 8, bbc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbcbp_mem, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::bbcbp_mem)
AM_IMPORT_FROM(bbc_base)
AM_RANGE(0x0000, 0x2fff) AM_READ_BANK("bank1") AM_WRITE(bbc_memorybp1_w) /* 0000-2fff Regular Ram */
AM_RANGE(0x3000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE(bbc_memorybp2_w) /* 3000-7fff Video/Shadow Ram */
@@ -232,7 +232,7 @@ static ADDRESS_MAP_START( bbcbp_mem, AS_PROGRAM, 8, bbc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbcbp128_mem, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::bbcbp128_mem)
AM_IMPORT_FROM(bbc_base)
AM_RANGE(0x0000, 0x2fff) AM_READ_BANK("bank1") AM_WRITE(bbc_memorybp1_w) /* 0000-2fff Regular Ram */
AM_RANGE(0x3000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE(bbc_memorybp2_w) /* 3000-7fff Video/Shadow Ram */
@@ -246,7 +246,7 @@ static ADDRESS_MAP_START( bbcbp128_mem, AS_PROGRAM, 8, bbc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( reutapm_mem, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::reutapm_mem)
AM_IMPORT_FROM(bbc_base)
AM_RANGE(0x0000, 0x2fff) AM_READ_BANK("bank1") AM_WRITE(bbc_memorybp1_w) /* 0000-2fff Regular Ram */
AM_RANGE(0x3000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE(bbc_memorybp2_w) /* 3000-7fff Video/Shadow Ram */
@@ -283,7 +283,7 @@ ADDRESS_MAP_END
******************************************************************************/
-static ADDRESS_MAP_START(bbcm_mem, AS_PROGRAM, 8, bbc_state )
+ADDRESS_MAP_START(bbc_state::bbcm_mem)
AM_RANGE(0x0000, 0x2fff) AM_READ_BANK("bank1") AM_WRITE(bbc_memorybm1_w) /* 0000-2fff Regular Ram */
AM_RANGE(0x3000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE(bbc_memorybm2_w) /* 3000-7fff Video/Shadow Ram */
AM_RANGE(0x8000, 0x8fff) AM_READ_BANK("bank4") AM_WRITE(bbc_memorybm4_w) /* 8000-8fff Paged ROM/RAM or 4K of RAM ANDY */
diff --git a/src/mame/drivers/bbcbc.cpp b/src/mame/drivers/bbcbc.cpp
index 51ea1fa81b7..2afccb95149 100644
--- a/src/mame/drivers/bbcbc.cpp
+++ b/src/mame/drivers/bbcbc.cpp
@@ -42,6 +42,7 @@ public:
bbcbc_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
, m_maincpu(*this, "maincpu")
+ , m_z80pio(*this, "z80pio")
, m_buttons(*this, "BUTTONS.%u", 0)
{ }
@@ -49,11 +50,14 @@ public:
DECLARE_WRITE8_MEMBER(input_select_w);
void bbcbc(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_input_select;
virtual void machine_start() override;
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
+ required_device<z80pio_device> m_z80pio;
required_ioport_array<3> m_buttons;
};
@@ -61,15 +65,15 @@ private:
#define MAIN_CLOCK XTAL(4'433'619)
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, bbcbc_state )
+ADDRESS_MAP_START(bbcbc_state::mem_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0xbfff) AM_DEVREAD("cartslot", generic_slot_device, read_rom)
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, bbcbc_state )
+ADDRESS_MAP_START(bbcbc_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x7f) AM_DEVREADWRITE_MOD("z80pio", z80pio_device, read, write, rshift<5>)
+ ;map(0x00, 0x7f).lrw8("z80pio_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_z80pio->read(space, offset >> 5, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_z80pio->write(space, offset >> 5, data, mem_mask); });
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("tms9129", tms9129_device, vram_read, vram_write)
AM_RANGE(0x81, 0x81) AM_DEVREADWRITE("tms9129", tms9129_device, register_read, register_write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bbusters.cpp b/src/mame/drivers/bbusters.cpp
index 9dd9e2edc5e..1d01bf14713 100644
--- a/src/mame/drivers/bbusters.cpp
+++ b/src/mame/drivers/bbusters.cpp
@@ -324,7 +324,7 @@ READ16_MEMBER(bbusters_state::mechatt_gun_r)
/*******************************************************************************/
-static ADDRESS_MAP_START( bbusters_map, AS_PROGRAM, 16, bbusters_state )
+ADDRESS_MAP_START(bbusters_state::bbusters_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x090000, 0x090fff) AM_RAM_WRITE(video_w) AM_SHARE("videoram")
@@ -354,7 +354,7 @@ ADDRESS_MAP_END
/*******************************************************************************/
-static ADDRESS_MAP_START( mechatt_map, AS_PROGRAM, 16, bbusters_state )
+ADDRESS_MAP_START(bbusters_state::mechatt_map)
AM_RANGE(0x000000, 0x06ffff) AM_ROM
AM_RANGE(0x070000, 0x07ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x090000, 0x090fff) AM_RAM_WRITE(video_w) AM_SHARE("videoram")
@@ -375,19 +375,19 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bbusters_state )
+ADDRESS_MAP_START(bbusters_state::sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(sound_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, bbusters_state )
+ADDRESS_MAP_START(bbusters_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0xc0, 0xc1) AM_WRITENOP /* -> Main CPU */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sounda_portmap, AS_IO, 8, bbusters_state )
+ADDRESS_MAP_START(bbusters_state::sounda_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2608_device, read, write)
AM_RANGE(0xc0, 0xc1) AM_WRITENOP /* -> Main CPU */
diff --git a/src/mame/drivers/bcs3.cpp b/src/mame/drivers/bcs3.cpp
index 9d66b5f8bf3..e2c2987f5cb 100644
--- a/src/mame/drivers/bcs3.cpp
+++ b/src/mame/drivers/bcs3.cpp
@@ -85,6 +85,9 @@ public:
void bcs3a(machine_config &config);
void bcs3(machine_config &config);
void bcs3b(machine_config &config);
+ void bcs3_io(address_map &map);
+ void bcs3_mem(address_map &map);
+ void bcs3a_mem(address_map &map);
private:
bool m_cass_bit;
u8 s_curs;
@@ -130,7 +133,7 @@ READ8_MEMBER( bcs3_state::zx_r )
return 0xf7;
}
-static ADDRESS_MAP_START(bcs3_mem, AS_PROGRAM, 8, bcs3_state)
+ADDRESS_MAP_START(bcs3_state::bcs3_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_MIRROR(0x2000) AM_ROM AM_REGION("roms", 0)
AM_RANGE( 0x1000, 0x13ff ) AM_MIRROR(0x2000) AM_READ(keyboard_r)
@@ -139,7 +142,7 @@ static ADDRESS_MAP_START(bcs3_mem, AS_PROGRAM, 8, bcs3_state)
AM_RANGE( 0x1c00, 0x1fff ) AM_MIRROR(0x2000) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(bcs3a_mem, AS_PROGRAM, 8, bcs3_state)
+ADDRESS_MAP_START(bcs3_state::bcs3a_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_MIRROR(0x2000) AM_ROM AM_REGION("roms", 0)
AM_RANGE( 0x1000, 0x13ff ) AM_MIRROR(0x2000) AM_READ(keyboard_r)
@@ -149,7 +152,7 @@ static ADDRESS_MAP_START(bcs3a_mem, AS_PROGRAM, 8, bcs3_state)
AM_RANGE( 0xf000, 0xf3ff ) AM_ROM AM_REGION("roms", 0x1000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bcs3_io, AS_IO, 8, bcs3_state)
+ADDRESS_MAP_START(bcs3_state::bcs3_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(3)
// coded in the rom as F8 to FB
diff --git a/src/mame/drivers/beaminv.cpp b/src/mame/drivers/beaminv.cpp
index 04ca90dec71..8ac1f374335 100644
--- a/src/mame/drivers/beaminv.cpp
+++ b/src/mame/drivers/beaminv.cpp
@@ -91,6 +91,8 @@ public:
void create_interrupt_timer();
void start_interrupt_timer();
void beaminv(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
};
@@ -239,7 +241,7 @@ READ8_MEMBER(beaminv_state::controller_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, beaminv_state )
+ADDRESS_MAP_START(beaminv_state::main_map)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x1800, 0x1fff) AM_RAM
AM_RANGE(0x2400, 0x2400) AM_MIRROR(0x03ff) AM_READ_PORT("DSW")
@@ -257,7 +259,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, beaminv_state )
+ADDRESS_MAP_START(beaminv_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(controller_select_w) /* to be confirmed */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/beathead.cpp b/src/mame/drivers/beathead.cpp
index e2c951aa84e..673b4fa4e29 100644
--- a/src/mame/drivers/beathead.cpp
+++ b/src/mame/drivers/beathead.cpp
@@ -274,7 +274,7 @@ WRITE32_MEMBER( beathead_state::coin_count_w )
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, beathead_state)
+ADDRESS_MAP_START(beathead_state::main_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_SHARE("ram_base")
AM_RANGE(0x01800000, 0x01bfffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("rom_base")
AM_RANGE(0x40000000, 0x400007ff) AM_RAM_WRITE(eeprom_data_w) AM_SHARE("nvram")
diff --git a/src/mame/drivers/bebox.cpp b/src/mame/drivers/bebox.cpp
index e55f4394fda..c745c8fe143 100644
--- a/src/mame/drivers/bebox.cpp
+++ b/src/mame/drivers/bebox.cpp
@@ -32,7 +32,7 @@
READ8_MEMBER(bebox_state::at_dma8237_1_r) { return m_dma8237_2->read(space, offset / 2); }
WRITE8_MEMBER(bebox_state::at_dma8237_1_w) { m_dma8237_2->write(space, offset / 2, data); }
-static ADDRESS_MAP_START( bebox_mem, AS_PROGRAM, 64, bebox_state )
+ADDRESS_MAP_START(bebox_state::bebox_mem)
AM_RANGE(0x7FFFF0F0, 0x7FFFF0F7) AM_READWRITE(bebox_cpu0_imask_r, bebox_cpu0_imask_w )
AM_RANGE(0x7FFFF1F0, 0x7FFFF1F7) AM_READWRITE(bebox_cpu1_imask_r, bebox_cpu1_imask_w )
AM_RANGE(0x7FFFF2F0, 0x7FFFF2F7) AM_READ(bebox_interrupt_sources_r )
@@ -82,7 +82,7 @@ READ64_MEMBER(bebox_state::bb_slave_64be_r)
return m_pcibus->read_64be(space, offset, mem_mask);
}
-static ADDRESS_MAP_START( bebox_slave_mem, AS_PROGRAM, 64, bebox_state )
+ADDRESS_MAP_START(bebox_state::bebox_slave_mem)
AM_IMPORT_FROM(bebox_mem)
AM_RANGE(0x80000cf8, 0x80000cff) AM_READ(bb_slave_64be_r)
AM_RANGE(0x80000cf8, 0x80000cff) AM_DEVWRITE("pcibus", pci_bus_device, write_64be )
diff --git a/src/mame/drivers/beehive.cpp b/src/mame/drivers/beehive.cpp
index 96784d6278a..67a47ffffbe 100644
--- a/src/mame/drivers/beehive.cpp
+++ b/src/mame/drivers/beehive.cpp
@@ -40,6 +40,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void beehive(machine_config &config);
+ void beehive_io(address_map &map);
+ void beehive_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_shared_ptr<uint8_t> m_p_videoram;
@@ -65,13 +67,13 @@ WRITE8_MEMBER(beehive_state::beehive_62_w)
m_keyline = data;
}
-static ADDRESS_MAP_START(beehive_mem, AS_PROGRAM, 8, beehive_state)
+ADDRESS_MAP_START(beehive_state::beehive_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x17ff ) AM_ROM
AM_RANGE( 0x8000, 0x8fff ) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( beehive_io, AS_IO, 8, beehive_state)
+ADDRESS_MAP_START(beehive_state::beehive_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x11, 0x11) AM_READ_PORT("DIPS")
diff --git a/src/mame/drivers/beezer.cpp b/src/mame/drivers/beezer.cpp
index 590d67d2e50..9c1b553df2d 100644
--- a/src/mame/drivers/beezer.cpp
+++ b/src/mame/drivers/beezer.cpp
@@ -91,6 +91,9 @@ public:
DECLARE_WRITE8_MEMBER(bankswitch_w);
void beezer(machine_config &config);
+ void banked_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -130,7 +133,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, beezer_state )
+ADDRESS_MAP_START(beezer_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xc000, 0xcfff) AM_DEVICE("sysbank", address_map_bank_device, amap8)
AM_RANGE(0xd000, 0xdfff) AM_ROM AM_REGION("maincpu", 0x0000) AM_WRITE(bankswitch_w) // g1
@@ -138,7 +141,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, beezer_state )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("maincpu", 0x2000) // g5
ADDRESS_MAP_END
-static ADDRESS_MAP_START( banked_map, AS_PROGRAM, 8, beezer_state )
+ADDRESS_MAP_START(beezer_state::banked_map)
AM_RANGE(0x0600, 0x0600) AM_MIRROR(0x1ff) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x0800, 0x080f) AM_MIRROR(0x1f0) AM_WRITE(palette_w)
AM_RANGE(0x0a00, 0x0a00) AM_MIRROR(0x1ff) AM_READ(line_r)
@@ -152,7 +155,7 @@ static ADDRESS_MAP_START( banked_map, AS_PROGRAM, 8, beezer_state )
AM_RANGE(0x7000, 0x7fff) AM_ROMBANK("rombank_f7")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, beezer_state )
+ADDRESS_MAP_START(beezer_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM // 0d
AM_RANGE(0x0800, 0x0fff) AM_RAM // 2d, optional (can be rom)
AM_RANGE(0x1000, 0x1007) AM_MIRROR(0x07f8) AM_DEVREADWRITE("ptm", ptm6840_device, read, write)
diff --git a/src/mame/drivers/belatra.cpp b/src/mame/drivers/belatra.cpp
index d8c5d70a67d..357a2f33ed9 100644
--- a/src/mame/drivers/belatra.cpp
+++ b/src/mame/drivers/belatra.cpp
@@ -55,13 +55,14 @@ public:
{ }
void belatra(machine_config &config);
+ void belatra_map(address_map &map);
protected:
// devices
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( belatra_map, AS_PROGRAM, 32, belatra_state )
+ADDRESS_MAP_START(belatra_state::belatra_map)
AM_RANGE(0x00000000, 0x003fffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/berzerk.cpp b/src/mame/drivers/berzerk.cpp
index 18a64937d1b..29d58355ba1 100644
--- a/src/mame/drivers/berzerk.cpp
+++ b/src/mame/drivers/berzerk.cpp
@@ -95,6 +95,9 @@ public:
void get_pens(rgb_t *pens);
void berzerk(machine_config &config);
void frenzy(machine_config &config);
+ void berzerk_io_map(address_map &map);
+ void berzerk_map(address_map &map);
+ void frenzy_map(address_map &map);
};
@@ -601,7 +604,7 @@ void berzerk_state::sound_reset()
*
*************************************/
-static ADDRESS_MAP_START( berzerk_map, AS_PROGRAM, 8, berzerk_state )
+ADDRESS_MAP_START(berzerk_state::berzerk_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x0bff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x1000, 0x3fff) AM_ROM
@@ -612,7 +615,7 @@ static ADDRESS_MAP_START( berzerk_map, AS_PROGRAM, 8, berzerk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( frenzy_map, AS_PROGRAM, 8, berzerk_state )
+ADDRESS_MAP_START(berzerk_state::frenzy_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(magicram_w) AM_SHARE("videoram")
@@ -629,7 +632,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( berzerk_io_map, AS_IO, 8, berzerk_state )
+ADDRESS_MAP_START(berzerk_state::berzerk_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_NOP
AM_RANGE(0x40, 0x47) AM_READWRITE(audio_r, audio_w)
diff --git a/src/mame/drivers/besta.cpp b/src/mame/drivers/besta.cpp
index 95ca127aec3..8b7c3bcf4ee 100644
--- a/src/mame/drivers/besta.cpp
+++ b/src/mame/drivers/besta.cpp
@@ -45,6 +45,7 @@ public:
void kbd_put(u8 data);
void besta(machine_config &config);
+ void besta_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -101,7 +102,7 @@ void besta_state::kbd_put(u8 data)
m_term_data = data;
}
-static ADDRESS_MAP_START(besta_mem, AS_PROGRAM, 32, besta_state)
+ADDRESS_MAP_START(besta_state::besta_mem)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("p_ram") // local bus DRAM, 4MB
// AM_RANGE(0x08010000, 0x08011fff) AM_RAM // unknown -- accessed by cp31dssp
// AM_RANGE(0xfca03500, 0xfca0350f) AM_READWRITE8(iscsi_reg_r, iscsi_reg_w, 0xffffffff)
diff --git a/src/mame/drivers/bestleag.cpp b/src/mame/drivers/bestleag.cpp
index a1e3ad45df1..11b33075e9f 100644
--- a/src/mame/drivers/bestleag.cpp
+++ b/src/mame/drivers/bestleag.cpp
@@ -74,6 +74,7 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void bestleag(machine_config &config);
void bestleaw(machine_config &config);
+ void bestleag_map(address_map &map);
};
@@ -249,7 +250,7 @@ WRITE16_MEMBER(bestleag_state::oki_bank_w)
/* Memory Map */
-static ADDRESS_MAP_START( bestleag_map, AS_PROGRAM, 16, bestleag_state )
+ADDRESS_MAP_START(bestleag_state::bestleag_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0d2000, 0x0d3fff) AM_NOP // left over from the original game (only read / written in memory test)
AM_RANGE(0x0e0000, 0x0e3fff) AM_RAM_WRITE(bgram_w) AM_SHARE("bgram")
diff --git a/src/mame/drivers/beta.cpp b/src/mame/drivers/beta.cpp
index 16cc503da3d..7d8513e3fed 100644
--- a/src/mame/drivers/beta.cpp
+++ b/src/mame/drivers/beta.cpp
@@ -97,12 +97,13 @@ public:
emu_timer *m_led_refresh_timer;
TIMER_CALLBACK_MEMBER(led_refresh);
void beta(machine_config &config);
+ void beta_mem(address_map &map);
};
/* Memory Maps */
-static ADDRESS_MAP_START( beta_mem, AS_PROGRAM, 8, beta_state )
+ADDRESS_MAP_START(beta_state::beta_mem)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x7f00) AM_DEVICE(M6532_TAG, mos6532_new_device, ram_map)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x7f00) AM_DEVICE(M6532_TAG, mos6532_new_device, io_map)
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x7800) AM_ROM
diff --git a/src/mame/drivers/bfcobra.cpp b/src/mame/drivers/bfcobra.cpp
index 287a04efb82..bcc37a85759 100644
--- a/src/mame/drivers/bfcobra.cpp
+++ b/src/mame/drivers/bfcobra.cpp
@@ -299,6 +299,10 @@ public:
required_device<palette_device> m_palette;
required_device<meters_device> m_meters;
void bfcobra(machine_config &config);
+ void m6809_prog_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void z80_io_map(address_map &map);
+ void z80_prog_map(address_map &map);
};
@@ -1253,14 +1257,14 @@ void bfcobra_state::machine_reset()
***************************************************************************/
-static ADDRESS_MAP_START( z80_prog_map, AS_PROGRAM, 8, bfcobra_state )
+ADDRESS_MAP_START(bfcobra_state::z80_prog_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank4")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank1")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank2")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_io_map, AS_IO, 8, bfcobra_state )
+ADDRESS_MAP_START(bfcobra_state::z80_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x23) AM_READWRITE(chipset_r, chipset_w)
AM_RANGE(0x24, 0x25) AM_DEVWRITE("acia6850_0", acia6850_device, write)
@@ -1275,7 +1279,7 @@ ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, bfcobra_state )
+ADDRESS_MAP_START(bfcobra_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
@@ -1389,7 +1393,7 @@ WRITE8_MEMBER(bfcobra_state::upd_w)
m_upd7759->start_w(data & 0x40 ? 0 : 1);
}
-static ADDRESS_MAP_START( m6809_prog_map, AS_PROGRAM, 8, bfcobra_state )
+ADDRESS_MAP_START(bfcobra_state::m6809_prog_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x2000) AM_RAM // W 'B', 6F
AM_RANGE(0x2200, 0x2200) AM_RAM // W 'F'
diff --git a/src/mame/drivers/bfm_ad5.cpp b/src/mame/drivers/bfm_ad5.cpp
index a683181bb67..e08f48b6f72 100644
--- a/src/mame/drivers/bfm_ad5.cpp
+++ b/src/mame/drivers/bfm_ad5.cpp
@@ -58,7 +58,7 @@ DRIVER_INIT_MEMBER(adder5_state,ad5)
}
-static ADDRESS_MAP_START( ad5_map, AS_PROGRAM, 32, adder5_state )
+ADDRESS_MAP_START(adder5_state::ad5_map)
AM_RANGE(0x00000000, 0x00ffffff) AM_ROM
AM_RANGE(0x01000000, 0x0100ffff) AM_RAM
AM_RANGE(0x40000000, 0x40000fff) AM_RAM
diff --git a/src/mame/drivers/bfm_sc1.cpp b/src/mame/drivers/bfm_sc1.cpp
index 07df0cc9ff8..47b04924f12 100644
--- a/src/mame/drivers/bfm_sc1.cpp
+++ b/src/mame/drivers/bfm_sc1.cpp
@@ -218,6 +218,9 @@ public:
void scorpion1_adder2(machine_config &config);
void scorpion1(machine_config &config);
void scorpion1_viper(machine_config &config);
+ void sc1_adder2(address_map &map);
+ void sc1_base(address_map &map);
+ void sc1_viper(address_map &map);
};
#define VFD_RESET 0x20
@@ -675,7 +678,7 @@ void bfm_sc1_state::machine_reset()
// scorpion1 board memory map ///////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
-static ADDRESS_MAP_START( sc1_base, AS_PROGRAM, 8, bfm_sc1_state )
+ADDRESS_MAP_START(bfm_sc1_state::sc1_base)
AM_RANGE(0x0000, 0x1FFF) AM_RAM AM_SHARE("nvram") //8k RAM
AM_RANGE(0x2000, 0x21FF) AM_WRITE(reel34_w) // reel 2+3 latch
@@ -715,7 +718,7 @@ ADDRESS_MAP_END
// scorpion1 board + adder2 expansion memory map ////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
-static ADDRESS_MAP_START( sc1_adder2, AS_PROGRAM, 8, bfm_sc1_state )
+ADDRESS_MAP_START(bfm_sc1_state::sc1_adder2)
AM_IMPORT_FROM( sc1_base )
AM_RANGE(0x3E00, 0x3E00) AM_DEVREADWRITE("adder2", bfm_adder2_device, vid_uart_ctrl_r,vid_uart_ctrl_w) // video uart control reg read
@@ -727,7 +730,7 @@ ADDRESS_MAP_END
// scorpion1 board + upd7759 soundcard memory map ///////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
-static ADDRESS_MAP_START( sc1_viper, AS_PROGRAM, 8, bfm_sc1_state )
+ADDRESS_MAP_START(bfm_sc1_state::sc1_viper)
AM_IMPORT_FROM( sc1_base )
AM_RANGE(0x3404, 0x3404) AM_READ(dipcoin_r ) // coin input on gamecard
diff --git a/src/mame/drivers/bfm_sc2.cpp b/src/mame/drivers/bfm_sc2.cpp
index d9acd631343..7286e3dcd43 100644
--- a/src/mame/drivers/bfm_sc2.cpp
+++ b/src/mame/drivers/bfm_sc2.cpp
@@ -375,6 +375,9 @@ public:
void scorpion2_dm01_3m(machine_config &config);
void scorpion2_vidm(machine_config &config);
void scorpion2(machine_config &config);
+ void memmap_no_vid(address_map &map);
+ void memmap_vid(address_map &map);
+ void sc2_basemap(address_map &map);
};
@@ -1481,7 +1484,7 @@ void bfm_sc2_state::save_state()
}
-static ADDRESS_MAP_START( sc2_basemap, AS_PROGRAM, 8, bfm_sc2_state )
+ADDRESS_MAP_START(bfm_sc2_state::sc2_basemap)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") //8k
AM_RANGE(0x2300, 0x230B) AM_READ(mux_input_r)
@@ -1526,7 +1529,7 @@ static ADDRESS_MAP_START( sc2_basemap, AS_PROGRAM, 8, bfm_sc2_state )
AM_RANGE(0x8000, 0xFFFF) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memmap_no_vid, AS_PROGRAM, 8, bfm_sc2_state )
+ADDRESS_MAP_START(bfm_sc2_state::memmap_no_vid)
AM_IMPORT_FROM( sc2_basemap )
AM_RANGE(0x2000, 0x2000) AM_READ(vfd_status_r)
AM_RANGE(0x2000, 0x20FF) AM_WRITE(reel12_w)
@@ -1536,7 +1539,7 @@ ADDRESS_MAP_END
// memory map for scorpion2 board video addon /////////////////////////////
-static ADDRESS_MAP_START( memmap_vid, AS_PROGRAM, 8, bfm_sc2_state )
+ADDRESS_MAP_START(bfm_sc2_state::memmap_vid)
AM_IMPORT_FROM( sc2_basemap )
AM_RANGE(0x2000, 0x2000) AM_READ(vfd_status_hop_r) // vfd status register
diff --git a/src/mame/drivers/bfm_sc4.cpp b/src/mame/drivers/bfm_sc4.cpp
index fce3852d181..2cbfab07ce6 100644
--- a/src/mame/drivers/bfm_sc4.cpp
+++ b/src/mame/drivers/bfm_sc4.cpp
@@ -616,7 +616,7 @@ WRITE16_MEMBER(sc4_state::sc4_mem_w)
}
}
-static ADDRESS_MAP_START( sc4_map, AS_PROGRAM, 16, sc4_state )
+ADDRESS_MAP_START(sc4_state::sc4_map)
AM_RANGE(0x0000000, 0xffffff) AM_READWRITE(sc4_mem_r, sc4_mem_w)
AM_RANGE(0x0000000, 0x0fffff) AM_READ(sc4_cs1_r) // technically we should be going through the cs handler, but this is always set to ROM, and assuming that is a lot faster
ADDRESS_MAP_END
@@ -666,7 +666,7 @@ WRITE32_MEMBER(sc4_adder4_state::adder4_mem_w)
}
-static ADDRESS_MAP_START( sc4_adder4_map, AS_PROGRAM, 32, sc4_adder4_state )
+ADDRESS_MAP_START(sc4_adder4_state::sc4_adder4_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(adder4_mem_r, adder4_mem_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bfm_sc5.cpp b/src/mame/drivers/bfm_sc5.cpp
index 5e76fe3c237..1f44cc6939c 100644
--- a/src/mame/drivers/bfm_sc5.cpp
+++ b/src/mame/drivers/bfm_sc5.cpp
@@ -80,7 +80,7 @@ WRITE8_MEMBER( bfm_sc5_state::sc5_mux2_w )
}
-static ADDRESS_MAP_START( sc5_map, AS_PROGRAM, 32, bfm_sc5_state )
+ADDRESS_MAP_START(bfm_sc5_state::sc5_map)
// ROM (max size?)
AM_RANGE(0x00000000, 0x002fffff) AM_ROM
// ?
diff --git a/src/mame/drivers/bfm_swp.cpp b/src/mame/drivers/bfm_swp.cpp
index 5b2e491071d..3cf477b0cbe 100644
--- a/src/mame/drivers/bfm_swp.cpp
+++ b/src/mame/drivers/bfm_swp.cpp
@@ -128,6 +128,7 @@ public:
}
void bfm_swp(machine_config &config);
+ void bfm_swp_map(address_map &map);
protected:
// devices
@@ -181,7 +182,7 @@ WRITE32_MEMBER(bfm_swp_state::bfm_swp_mem_w)
-static ADDRESS_MAP_START( bfm_swp_map, AS_PROGRAM, 32, bfm_swp_state )
+ADDRESS_MAP_START(bfm_swp_state::bfm_swp_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(bfm_swp_mem_r, bfm_swp_mem_w)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bfmsys83.cpp b/src/mame/drivers/bfmsys83.cpp
index e775074c06c..e46f8cff074 100644
--- a/src/mame/drivers/bfmsys83.cpp
+++ b/src/mame/drivers/bfmsys83.cpp
@@ -19,11 +19,12 @@ public:
uint8_t m_codec_data[256];
required_device<cpu_device> m_maincpu;
void bfmsys83(machine_config &config);
+ void memmap(address_map &map);
};
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, bfmsys83_state )
+ADDRESS_MAP_START(bfmsys83_state::memmap)
AM_RANGE(0x4000, 0xffff) AM_ROM // 32K ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bfmsys85.cpp b/src/mame/drivers/bfmsys85.cpp
index 22b95111fb7..a6333d60108 100644
--- a/src/mame/drivers/bfmsys85.cpp
+++ b/src/mame/drivers/bfmsys85.cpp
@@ -135,6 +135,7 @@ public:
required_device<acia6850_device> m_acia6850_0;
required_device<meters_device> m_meters;
void bfmsys85(machine_config &config);
+ void memmap(address_map &map);
};
#define MASTER_CLOCK (XTAL(4'000'000))
@@ -355,7 +356,7 @@ void bfmsys85_state::machine_start()
// memory map for bellfruit system85 board ////////////////////////////////
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, bfmsys85_state )
+ADDRESS_MAP_START(bfmsys85_state::memmap)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") //8k RAM
AM_RANGE(0x2000, 0x21FF) AM_WRITE(reel34_w) // reel 3+4 latch
diff --git a/src/mame/drivers/bgt.cpp b/src/mame/drivers/bgt.cpp
index 9718524fb75..8431c0bfc97 100644
--- a/src/mame/drivers/bgt.cpp
+++ b/src/mame/drivers/bgt.cpp
@@ -22,6 +22,8 @@ public:
{ }
void bgt(machine_config &config);
+ void bgt_io(address_map &map);
+ void bgt_map(address_map &map);
protected:
// devices
@@ -29,14 +31,14 @@ protected:
};
-static ADDRESS_MAP_START( bgt_map, AS_PROGRAM, 16, bgt_state )
+ADDRESS_MAP_START(bgt_state::bgt_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0xf8000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bgt_io, AS_IO, 16, bgt_state )
+ADDRESS_MAP_START(bgt_state::bgt_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/big10.cpp b/src/mame/drivers/big10.cpp
index c039d67e6da..63c30c81f59 100644
--- a/src/mame/drivers/big10.cpp
+++ b/src/mame/drivers/big10.cpp
@@ -83,6 +83,8 @@ public:
required_device<ticket_dispenser_device> m_hopper;
required_ioport_array<6> m_in;
void big10(machine_config &config);
+ void main_io(address_map &map);
+ void main_map(address_map &map);
};
@@ -117,13 +119,13 @@ READ8_MEMBER(big10_state::mux_r)
* Memory Map *
**************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, big10_state )
+ADDRESS_MAP_START(big10_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io, AS_IO, 8, big10_state )
+ADDRESS_MAP_START(big10_state::main_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(mux_r) /* present in test mode */
AM_RANGE(0x02, 0x02) AM_READ_PORT("SYSTEM") /* coins and service */
diff --git a/src/mame/drivers/bigbord2.cpp b/src/mame/drivers/bigbord2.cpp
index b735cdacfc3..3b7921d5b02 100644
--- a/src/mame/drivers/bigbord2.cpp
+++ b/src/mame/drivers/bigbord2.cpp
@@ -133,6 +133,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void bigbord2(machine_config &config);
+ void bigbord2_io(address_map &map);
+ void bigbord2_mem(address_map &map);
private:
u8 crt8002(u8 ac_ra, u8 ac_chr, u8 ac_attr, uint16_t ac_cnt, bool ac_curs);
u8 m_term_data;
@@ -320,7 +322,7 @@ WRITE8_MEMBER(bigbord2_state::syslatch2_w)
/* Memory Maps */
-static ADDRESS_MAP_START( bigbord2_mem, AS_PROGRAM, 8, bigbord2_state )
+ADDRESS_MAP_START(bigbord2_state::bigbord2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("bankr")
AM_RANGE(0x1000, 0x5fff) AM_RAM
@@ -329,7 +331,7 @@ static ADDRESS_MAP_START( bigbord2_mem, AS_PROGRAM, 8, bigbord2_state )
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigbord2_io, AS_IO, 8, bigbord2_state )
+ADDRESS_MAP_START(bigbord2_state::bigbord2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("sio", z80sio_device, ba_cd_r, ba_cd_w) // u16
diff --git a/src/mame/drivers/bigevglf.cpp b/src/mame/drivers/bigevglf.cpp
index 87d46624c3a..be5a949bb21 100644
--- a/src/mame/drivers/bigevglf.cpp
+++ b/src/mame/drivers/bigevglf.cpp
@@ -294,7 +294,7 @@ INPUT_PORTS_END
/*****************************************************************************/
/* Main CPU */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bigevglf_state )
+ADDRESS_MAP_START(bigevglf_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_ROMBANK("bank1")
@@ -305,7 +305,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bigevglf_state )
AM_RANGE(0xf840, 0xf8ff) AM_RAM AM_SHARE("spriteram2") /* spriteram (x,y,offset in spriteram1,palette) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigevglf_portmap, AS_IO, 8, bigevglf_state )
+ADDRESS_MAP_START(bigevglf_state::bigevglf_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* video ram enable ???*/
AM_RANGE(0x01, 0x01) AM_WRITE(bigevglf_gfxcontrol_w) /* plane select */
@@ -320,7 +320,7 @@ ADDRESS_MAP_END
/*********************************************************************************/
/* Sub CPU */
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, bigevglf_state )
+ADDRESS_MAP_START(bigevglf_state::sub_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1") /* shared with main CPU */
@@ -343,7 +343,7 @@ READ8_MEMBER(bigevglf_state::sub_cpu_mcu_coin_port_r)
m_mcu_coin_bit5; /* bit 0 and bit 1 - coin inputs */
}
-static ADDRESS_MAP_START( bigevglf_sub_portmap, AS_IO, 8, bigevglf_state )
+ADDRESS_MAP_START(bigevglf_state::bigevglf_sub_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("PORT00")
AM_RANGE(0x01, 0x01) AM_READNOP
@@ -369,7 +369,7 @@ ADDRESS_MAP_END
/*********************************************************************************/
/* Sound CPU */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bigevglf_state )
+ADDRESS_MAP_START(bigevglf_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ym2149_device, address_data_w)
diff --git a/src/mame/drivers/bigstrkb.cpp b/src/mame/drivers/bigstrkb.cpp
index abff7d960d9..95e020a292e 100644
--- a/src/mame/drivers/bigstrkb.cpp
+++ b/src/mame/drivers/bigstrkb.cpp
@@ -39,7 +39,7 @@ lev 7 : 0x7c : 0000 05be - xxx
/* some regions might be too large */
-static ADDRESS_MAP_START( bigstrkb_map, AS_PROGRAM, 16, bigstrkb_state )
+ADDRESS_MAP_START(bigstrkb_state::bigstrkb_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
// AM_RANGE(0x0c0000, 0x0cffff) AM_READWRITE_LEGACY(megasys1_vregs_C_r, megasys1_vregs_C_w) AM_SHARE("megasys1_vregs")
diff --git a/src/mame/drivers/binbug.cpp b/src/mame/drivers/binbug.cpp
index 4ae385d6e8b..18dda0e979e 100644
--- a/src/mame/drivers/binbug.cpp
+++ b/src/mame/drivers/binbug.cpp
@@ -89,6 +89,8 @@ public:
required_device<cassette_image_device> m_cass;
void binbug(machine_config &config);
+ void binbug_data(address_map &map);
+ void binbug_mem(address_map &map);
private:
uint8_t m_framecnt;
required_shared_ptr<uint8_t> m_p_videoram;
@@ -111,7 +113,7 @@ WRITE_LINE_MEMBER( binbug_state::binbug_serial_w )
m_cass->output(state ? -1.0 : +1.0);
}
-static ADDRESS_MAP_START(binbug_mem, AS_PROGRAM, 8, binbug_state)
+ADDRESS_MAP_START(binbug_state::binbug_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x03ff) AM_ROM
AM_RANGE( 0x0400, 0x77ff) AM_RAM
@@ -119,7 +121,7 @@ static ADDRESS_MAP_START(binbug_mem, AS_PROGRAM, 8, binbug_state)
AM_RANGE( 0x7c00, 0x7fff) AM_RAM AM_SHARE("attribram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(binbug_data, AS_DATA, 8, binbug_state)
+ADDRESS_MAP_START(binbug_state::binbug_data)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_WRITE(binbug_ctrl_w)
ADDRESS_MAP_END
@@ -424,6 +426,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(uart_tick);
void dg680(machine_config &config);
+ void dg680_io(address_map &map);
+ void dg680_mem(address_map &map);
private:
uint8_t m_pio_b;
uint8_t m_term_data;
@@ -433,7 +437,7 @@ private:
required_device<z80pio_device> m_pio;
};
-static ADDRESS_MAP_START(dg680_mem, AS_PROGRAM, 8, dg680_state)
+ADDRESS_MAP_START(dg680_state::dg680_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xcfff) AM_RAM
AM_RANGE( 0xd000, 0xd7ff) AM_ROM
@@ -442,7 +446,7 @@ static ADDRESS_MAP_START(dg680_mem, AS_PROGRAM, 8, dg680_state)
AM_RANGE( 0xf400, 0xf7ff) AM_RAM AM_SHARE("attribram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dg680_io, AS_IO, 8, dg680_state)
+ADDRESS_MAP_START(dg680_state::dg680_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x03) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
diff --git a/src/mame/drivers/bingo.cpp b/src/mame/drivers/bingo.cpp
index 9efd1ac6a03..3e9b400d578 100644
--- a/src/mame/drivers/bingo.cpp
+++ b/src/mame/drivers/bingo.cpp
@@ -15,6 +15,7 @@ public:
{ }
void bingo(machine_config &config);
+ void bingo_map(address_map &map);
protected:
// devices
@@ -27,7 +28,7 @@ public:
};
-static ADDRESS_MAP_START( bingo_map, AS_PROGRAM, 8, bingo_state )
+ADDRESS_MAP_START(bingo_state::bingo_map)
AM_RANGE(0x0000, 0x7fff) AM_NOP
AM_RANGE(0x0000, 0x1eff) AM_ROM
AM_RANGE(0x1f00, 0x1fff) AM_RAM
@@ -59,6 +60,7 @@ public:
{ }
void seeben(machine_config &config);
+ void seeben_map(address_map &map);
protected:
// devices
@@ -71,7 +73,7 @@ public:
};
-static ADDRESS_MAP_START( seeben_map, AS_PROGRAM, 8, seeben_state )
+ADDRESS_MAP_START(seeben_state::seeben_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( seeben )
@@ -100,6 +102,7 @@ public:
{ }
void splin(machine_config &config);
+ void splin_map(address_map &map);
protected:
// devices
@@ -111,7 +114,7 @@ public:
DECLARE_DRIVER_INIT(splin);
};
-static ADDRESS_MAP_START( splin_map, AS_PROGRAM, 16, splin_state )
+ADDRESS_MAP_START(splin_state::splin_map)
AM_RANGE(0x00000, 0x0bfff) AM_RAM
AM_RANGE(0x0d900, 0x0d9ff) AM_RAM
AM_RANGE(0xe0000, 0xfffff) AM_ROM
diff --git a/src/mame/drivers/bingoc.cpp b/src/mame/drivers/bingoc.cpp
index 7fee69375f5..30377225a85 100644
--- a/src/mame/drivers/bingoc.cpp
+++ b/src/mame/drivers/bingoc.cpp
@@ -61,6 +61,9 @@ public:
required_device<upd7759_device> m_upd7759;
required_device<generic_latch_8_device> m_soundlatch;
void bingoc(machine_config &config);
+ void main_map(address_map &map);
+ void sound_io(address_map &map);
+ void sound_map(address_map &map);
};
@@ -121,7 +124,7 @@ WRITE8_MEMBER(bingoc_state::sound_play_w)
// printf("%02x\n",data);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bingoc_state )
+ADDRESS_MAP_START(bingoc_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE8("uart1", i8251_device, data_r, data_w, 0x00ff)
AM_RANGE(0x100002, 0x100003) AM_DEVREADWRITE8("uart1", i8251_device, status_r, control_w, 0x00ff)
@@ -146,12 +149,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bingoc_state )
AM_RANGE(0xff8000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bingoc_state )
+ADDRESS_MAP_START(bingoc_state::sound_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, bingoc_state )
+ADDRESS_MAP_START(bingoc_state::sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x40, 0x40) AM_WRITE(sound_play_w)
diff --git a/src/mame/drivers/bingoman.cpp b/src/mame/drivers/bingoman.cpp
index 645963c3367..e7e81f163d8 100644
--- a/src/mame/drivers/bingoman.cpp
+++ b/src/mame/drivers/bingoman.cpp
@@ -260,6 +260,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_PALETTE_INIT(bingoman);
void bingoman(machine_config &config);
+ void bingoman_io_map(address_map &map);
+ void bingoman_prg_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -277,11 +279,11 @@ uint32_t bingoman_state::screen_update( screen_device &screen, bitmap_ind16 &bit
return 0;
}
-static ADDRESS_MAP_START( bingoman_prg_map, AS_PROGRAM, 16, bingoman_state )
+ADDRESS_MAP_START(bingoman_state::bingoman_prg_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bingoman_io_map, AS_IO, 8, bingoman_state )
+ADDRESS_MAP_START(bingoman_state::bingoman_io_map)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bingor.cpp b/src/mame/drivers/bingor.cpp
index 7142c63f857..7a74ac64bff 100644
--- a/src/mame/drivers/bingor.cpp
+++ b/src/mame/drivers/bingor.cpp
@@ -544,6 +544,13 @@ public:
void bingor(machine_config &config);
void bingor2(machine_config &config);
void vip2000(machine_config &config);
+ void bingor2_map(address_map &map);
+ void bingor_io(address_map &map);
+ void bingor_map(address_map &map);
+ void slave_io(address_map &map);
+ void slave_map(address_map &map);
+ void vip2000_io(address_map &map);
+ void vip2000_map(address_map &map);
};
@@ -593,7 +600,7 @@ uint32_t bingor_state::screen_update_bingor(screen_device &screen, bitmap_rgb32
}
-static ADDRESS_MAP_START( bingor_map, AS_PROGRAM, 16, bingor_state )
+ADDRESS_MAP_START(bingor_state::bingor_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM
AM_RANGE(0x90000, 0x9ffff) AM_ROM AM_REGION("gfx", 0)
AM_RANGE(0xa0000, 0xaffff) AM_RAM AM_SHARE("blit_ram")
@@ -601,12 +608,12 @@ static ADDRESS_MAP_START( bingor_map, AS_PROGRAM, 16, bingor_state )
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("boot_prg", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bingor2_map, AS_PROGRAM, 16, bingor_state )
+ADDRESS_MAP_START(bingor_state::bingor2_map)
AM_IMPORT_FROM(bingor_map)
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("boot_prg", 0) // banked?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bingor_io, AS_IO, 16, bingor_state )
+ADDRESS_MAP_START(bingor_state::bingor_io)
AM_RANGE(0x0100, 0x0103) AM_DEVWRITE8("saa", saa1099_device, write, 0x00ff)
ADDRESS_MAP_END
@@ -713,7 +720,7 @@ MACHINE_CONFIG_DERIVED(bingor_state::bingor2, bingor)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( vip2000_map, AS_PROGRAM, 16, bingor_state )
+ADDRESS_MAP_START(bingor_state::vip2000_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM
AM_RANGE(0x40000, 0x4ffff) AM_RAM AM_SHARE("blit_ram")
AM_RANGE(0x40300, 0x4031f) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette") //wrong
@@ -723,7 +730,7 @@ static ADDRESS_MAP_START( vip2000_map, AS_PROGRAM, 16, bingor_state )
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("boot_prg", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vip2000_io, AS_IO, 16, bingor_state )
+ADDRESS_MAP_START(bingor_state::vip2000_io)
AM_RANGE(0x0000, 0x0001) AM_READNOP // watchdog
AM_RANGE(0x0080, 0x009f) AM_DEVREADWRITE8("rtc", msm6242_device, read, write, 0x00ff)
AM_RANGE(0x0100, 0x0101) AM_READWRITE8(fromslave_r, toslave_w, 0x00ff)
@@ -755,11 +762,11 @@ WRITE16_MEMBER(bingor_state::vip2000_outputs_w)
m_slavecpu->set_input_line(MCS51_INT0_LINE, BIT(data, 15) ? CLEAR_LINE : ASSERT_LINE);
}
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, bingor_state )
+ADDRESS_MAP_START(bingor_state::slave_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_io, AS_IO, 8, bingor_state)
+ADDRESS_MAP_START(bingor_state::slave_io)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(toslave_r, fromslave_w)
AM_RANGE(0xc000, 0xcfff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bingowav.cpp b/src/mame/drivers/bingowav.cpp
index c2bcb01d45d..990e6b4e5b6 100644
--- a/src/mame/drivers/bingowav.cpp
+++ b/src/mame/drivers/bingowav.cpp
@@ -56,6 +56,10 @@ public:
{ }
void bingowav(machine_config &config);
+ void bingowav_audio_map(address_map &map);
+ void bingowav_control_map(address_map &map);
+ void bingowav_drive_map(address_map &map);
+ void bingowav_main_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -69,7 +73,7 @@ void bingowav_state::machine_start()
}
-static ADDRESS_MAP_START( bingowav_main_map, AS_PROGRAM, 16, bingowav_state )
+ADDRESS_MAP_START(bingowav_state::bingowav_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x120000, 0x12001f) AM_DEVREADWRITE8("mainioh", te7750_device, read, write, 0xff00)
@@ -80,7 +84,7 @@ static ADDRESS_MAP_START( bingowav_main_map, AS_PROGRAM, 16, bingowav_state )
AM_RANGE(0xfffc00, 0xffffff) AM_DEVREADWRITE("maintmp", tmp68301_device, regs_r, regs_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bingowav_audio_map, AS_PROGRAM, 8, bingowav_state )
+ADDRESS_MAP_START(bingowav_state::bingowav_audio_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
@@ -89,11 +93,11 @@ static ADDRESS_MAP_START( bingowav_audio_map, AS_PROGRAM, 8, bingowav_state )
AM_RANGE(0xf200, 0xf200) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bingowav_drive_map, AS_PROGRAM, 16, bingowav_state )
+ADDRESS_MAP_START(bingowav_state::bingowav_drive_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bingowav_control_map, AS_PROGRAM, 8, bingowav_state )
+ADDRESS_MAP_START(bingowav_state::bingowav_control_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xf000, 0xf000) AM_WRITENOP
diff --git a/src/mame/drivers/bionicc.cpp b/src/mame/drivers/bionicc.cpp
index 753f3db252d..04a56ed1ef8 100644
--- a/src/mame/drivers/bionicc.cpp
+++ b/src/mame/drivers/bionicc.cpp
@@ -162,7 +162,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(bionicc_state::scanline)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bionicc_state )
+ADDRESS_MAP_START(bionicc_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0xfe0000, 0xfe07ff) AM_RAM /* RAM? */
AM_RANGE(0xfe0800, 0xfe0cff) AM_RAM AM_SHARE("spriteram")
@@ -183,7 +183,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bionicc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bionicc_state )
+ADDRESS_MAP_START(bionicc_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/bishi.cpp b/src/mame/drivers/bishi.cpp
index bb940bc6fcf..444e6f1fc24 100644
--- a/src/mame/drivers/bishi.cpp
+++ b/src/mame/drivers/bishi.cpp
@@ -144,7 +144,7 @@ READ16_MEMBER(bishi_state::bishi_K056832_rom_r)
return m_k056832->bishi_rom_word_r(space, ouroffs, mem_mask);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bishi_state )
+ADDRESS_MAP_START(bishi_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x407fff) AM_RAM // Work RAM
AM_RANGE(0x800000, 0x800001) AM_READWRITE(control_r, control_w)
diff --git a/src/mame/drivers/bitgraph.cpp b/src/mame/drivers/bitgraph.cpp
index 49b812fdeac..702e28133a5 100644
--- a/src/mame/drivers/bitgraph.cpp
+++ b/src/mame/drivers/bitgraph.cpp
@@ -142,6 +142,9 @@ public:
void bg_motherboard(machine_config &config);
void bitgrpha(machine_config &config);
void bitgrphb(machine_config &config);
+ void bitgrapha_mem(address_map &map);
+ void bitgraphb_mem(address_map &map);
+ void ppu_io(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -167,7 +170,7 @@ private:
uint8_t m_ppu[4];
};
-static ADDRESS_MAP_START(bitgrapha_mem, AS_PROGRAM, 16, bitgraph_state)
+ADDRESS_MAP_START(bitgraph_state::bitgrapha_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x007fff) AM_ROM
AM_RANGE(0x010000, 0x010001) AM_DEVREADWRITE8(ACIA0_TAG, acia6850_device, data_r, data_w, 0xff00) // HOST
@@ -184,7 +187,7 @@ static ADDRESS_MAP_START(bitgrapha_mem, AS_PROGRAM, 16, bitgraph_state)
AM_RANGE(0x3e0000, 0x3fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(bitgraphb_mem, AS_PROGRAM, 16, bitgraph_state)
+ADDRESS_MAP_START(bitgraph_state::bitgraphb_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x007fff) AM_ROM
AM_RANGE(0x010000, 0x010001) AM_DEVREADWRITE8(ACIA0_TAG, acia6850_device, data_r, data_w, 0xff00) // HOST
@@ -427,7 +430,7 @@ WRITE8_MEMBER(bitgraph_state::ppu_write)
}
#ifdef UNUSED_FUNCTION
-static ADDRESS_MAP_START(ppu_io, AS_IO, 8, bitgraph_state)
+ADDRESS_MAP_START(bitgraph_state::ppu_io)
// AM_RANGE(0x00, 0x00) AM_READ(ppu_irq)
ADDRESS_MAP_END
#endif
diff --git a/src/mame/drivers/bk.cpp b/src/mame/drivers/bk.cpp
index 453ad84f7ef..fe1c57df30d 100644
--- a/src/mame/drivers/bk.cpp
+++ b/src/mame/drivers/bk.cpp
@@ -22,7 +22,7 @@
/* Address maps */
-static ADDRESS_MAP_START(bk0010_mem, AS_PROGRAM, 16, bk_state )
+ADDRESS_MAP_START(bk_state::bk0010_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_RAM // RAM
AM_RANGE( 0x4000, 0x7fff ) AM_RAM AM_SHARE("video_ram") // Video RAM
@@ -36,7 +36,7 @@ static ADDRESS_MAP_START(bk0010_mem, AS_PROGRAM, 16, bk_state )
AM_RANGE( 0xffce, 0xffcf ) AM_READWRITE(bk_key_press_r,bk_key_press_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(bk0010fd_mem, AS_PROGRAM, 16, bk_state )
+ADDRESS_MAP_START(bk_state::bk0010fd_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_RAM // RAM
AM_RANGE( 0x4000, 0x7fff ) AM_RAM AM_SHARE("video_ram") // Video RAM
diff --git a/src/mame/drivers/bking.cpp b/src/mame/drivers/bking.cpp
index b60301fcd6b..8f618f5096f 100644
--- a/src/mame/drivers/bking.cpp
+++ b/src/mame/drivers/bking.cpp
@@ -81,13 +81,13 @@ READ8_MEMBER(bking_state::bking3_mcu_status_r)
((CLEAR_LINE != m_bmcu->mcu_semaphore_r()) ? 0x02 : 0x00);
}
-static ADDRESS_MAP_START( bking_map, AS_PROGRAM, 8, bking_state )
+ADDRESS_MAP_START(bking_state::bking_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0x9000, 0x97ff) AM_RAM_WRITE(bking_playfield_w) AM_SHARE("playfield_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bking_io_map, AS_IO, 8, bking_state )
+ADDRESS_MAP_START(bking_state::bking_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(bking_xld1_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(bking_yld1_w)
@@ -106,7 +106,7 @@ static ADDRESS_MAP_START( bking_io_map, AS_IO, 8, bking_state )
AM_RANGE(0x07, 0x1f) AM_READ(bking_pos_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bking3_io_map, AS_IO, 8, bking_state )
+ADDRESS_MAP_START(bking_state::bking3_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(bking_xld1_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(bking_yld1_w)
@@ -130,7 +130,7 @@ static ADDRESS_MAP_START( bking3_io_map, AS_IO, 8, bking_state )
AM_RANGE(0x8f, 0x8f) AM_WRITE(bking3_addr_l_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bking_audio_map, AS_PROGRAM, 8, bking_state )
+ADDRESS_MAP_START(bking_state::bking_audio_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x2fff) AM_ROM //only bking3
AM_RANGE(0x4000, 0x43ff) AM_RAM
diff --git a/src/mame/drivers/blackt96.cpp b/src/mame/drivers/blackt96.cpp
index b41233409f4..17090d5ad26 100644
--- a/src/mame/drivers/blackt96.cpp
+++ b/src/mame/drivers/blackt96.cpp
@@ -122,6 +122,8 @@ public:
void tile_callback(int &tile, int& fx, int& fy, int& region);
void blackt96(machine_config &config);
+ void blackt96_map(address_map &map);
+ void oki1_map(address_map &map);
protected:
// overrides
virtual void machine_start() override;
@@ -238,7 +240,7 @@ WRITE16_MEMBER(blackt96_state::tx_vram_w)
m_tx_tilemap->mark_tile_dirty(offset/2);
}
-static ADDRESS_MAP_START( blackt96_map, AS_PROGRAM, 16, blackt96_state )
+ADDRESS_MAP_START(blackt96_state::blackt96_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("P1_P2") AM_WRITE8(sound_cmd_w,0xff00) // soundlatch
AM_RANGE(0x0c0000, 0x0c0001) AM_READ_PORT("IN1") AM_WRITE8(output_w,0x00ff) // COIN INPUT
@@ -254,7 +256,7 @@ static ADDRESS_MAP_START( blackt96_map, AS_PROGRAM, 16, blackt96_state )
AM_RANGE(0xc00000, 0xc03fff) AM_RAM // main ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki1_map, 0, 8, blackt96_state )
+ADDRESS_MAP_START(blackt96_state::oki1_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("oki1bank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bladestl.cpp b/src/mame/drivers/bladestl.cpp
index 3ba43e7b4e1..0f284c6d3f3 100644
--- a/src/mame/drivers/bladestl.cpp
+++ b/src/mame/drivers/bladestl.cpp
@@ -125,7 +125,7 @@ WRITE8_MEMBER(bladestl_state::bladestl_speech_ctrl_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bladestl_state )
+ADDRESS_MAP_START(bladestl_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("k007342", k007342_device, read, write) /* Color RAM + Video RAM */
AM_RANGE(0x2000, 0x21ff) AM_DEVREADWRITE("k007420", k007420_device, read, write) /* Sprite RAM */
AM_RANGE(0x2200, 0x23ff) AM_DEVREADWRITE("k007342", k007342_device, scroll_r, scroll_w) /* Scroll RAM */
@@ -147,7 +147,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bladestl_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bladestl_state )
+ADDRESS_MAP_START(bladestl_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write) /* YM2203 */
AM_RANGE(0x3000, 0x3000) AM_WRITE(bladestl_speech_ctrl_w) /* UPD7759 */
diff --git a/src/mame/drivers/blitz68k.cpp b/src/mame/drivers/blitz68k.cpp
index ac86656986e..41121acd01b 100644
--- a/src/mame/drivers/blitz68k.cpp
+++ b/src/mame/drivers/blitz68k.cpp
@@ -193,6 +193,16 @@ public:
void maxidbl(machine_config &config);
void dualgame(machine_config &config);
void bankroba(machine_config &config);
+ void bankrob_map(address_map &map);
+ void bankroba_map(address_map &map);
+ void cjffruit_map(address_map &map);
+ void deucesw2_map(address_map &map);
+ void dualgame_map(address_map &map);
+ void hermit_map(address_map &map);
+ void ilpag_map(address_map &map);
+ void maxidbl_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void steaser_map(address_map &map);
};
/*************************************************************************************************************
@@ -610,7 +620,7 @@ WRITE16_MEMBER(blitz68k_state::sound_write_w)
}
#endif
-static ADDRESS_MAP_START( ilpag_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::ilpag_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1fffff) AM_ROM AM_REGION("blitter", 0)
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram")
@@ -637,7 +647,7 @@ static ADDRESS_MAP_START( ilpag_map, AS_PROGRAM, 16, blitz68k_state )
// AM_RANGE(0xc00300, 0xc00301) AM_WRITE(irq_callback_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( steaser_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::steaser_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x1fffff) AM_ROM AM_REGION("blitter", 0)
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram")
@@ -707,7 +717,7 @@ WRITE8_MEMBER(blitz68k_state::bankrob_mcu2_w)
logerror("%s: mcu2 written with %02x\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( bankrob_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::bankrob_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
@@ -792,7 +802,7 @@ WRITE8_MEMBER(blitz68k_state::bankroba_mcu2_w)
logerror("%s: mcu2 written with %02x\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( bankroba_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::bankroba_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -935,7 +945,7 @@ WRITE16_MEMBER(blitz68k_state::cjffruit_mcu_w)
logerror("%s: mcu written with %02x\n", machine().describe_context(),data >> 8);
}
-static ADDRESS_MAP_START( cjffruit_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::cjffruit_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x480000, 0x4807ff) AM_RAM
@@ -1034,7 +1044,7 @@ WRITE16_MEMBER(blitz68k_state::deucesw2_leds3_w)
}
}
-static ADDRESS_MAP_START( deucesw2_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::deucesw2_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x41ffff) AM_RAM
@@ -1108,7 +1118,7 @@ WRITE8_MEMBER(blitz68k_state::dualgame_mcu2_w)
logerror("%s: mcu2 written with %02x\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( dualgame_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::dualgame_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
@@ -1210,7 +1220,7 @@ READ16_MEMBER(blitz68k_state::hermit_track_r)
((0xf - ((ioport("TRACK_X")->read() + 0x7) & 0xf)) << 8) ;
}
-static ADDRESS_MAP_START( hermit_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::hermit_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x400000, 0x41ffff) AM_RAM
@@ -1284,7 +1294,7 @@ WRITE8_MEMBER(blitz68k_state::maxidbl_mcu2_w)
logerror("%s: mcu2 written with %02x\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( maxidbl_map, AS_PROGRAM, 16, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::maxidbl_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -1679,7 +1689,7 @@ MC6845_ON_UPDATE_ADDR_CHANGED(blitz68k_state::crtc_addr)
{
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, blitz68k_state )
+ADDRESS_MAP_START(blitz68k_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/blktiger.cpp b/src/mame/drivers/blktiger.cpp
index b19291d24a7..2ddc43717a4 100644
--- a/src/mame/drivers/blktiger.cpp
+++ b/src/mame/drivers/blktiger.cpp
@@ -74,7 +74,7 @@ WRITE8_MEMBER(blktiger_state::blktiger_coinlockout_w)
}
-static ADDRESS_MAP_START( blktiger_map, AS_PROGRAM, 8, blktiger_state )
+ADDRESS_MAP_START(blktiger_state::blktiger_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_READWRITE(blktiger_bgvideoram_r, blktiger_bgvideoram_w)
@@ -85,7 +85,7 @@ static ADDRESS_MAP_START( blktiger_map, AS_PROGRAM, 8, blktiger_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blktiger_io_map, AS_IO, 8, blktiger_state )
+ADDRESS_MAP_START(blktiger_state::blktiger_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(blktiger_bankswitch_w)
@@ -102,7 +102,7 @@ static ADDRESS_MAP_START( blktiger_io_map, AS_IO, 8, blktiger_state )
AM_RANGE(0x0e, 0x0e) AM_WRITE(blktiger_screen_layout_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blktigerbl_io_map, AS_IO, 8, blktiger_state )
+ADDRESS_MAP_START(blktiger_state::blktigerbl_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(blktiger_bankswitch_w)
@@ -119,7 +119,7 @@ static ADDRESS_MAP_START( blktigerbl_io_map, AS_IO, 8, blktiger_state )
AM_RANGE(0x0e, 0x0e) AM_WRITE(blktiger_screen_layout_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blktiger_sound_map, AS_PROGRAM, 8, blktiger_state )
+ADDRESS_MAP_START(blktiger_state::blktiger_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -127,11 +127,11 @@ static ADDRESS_MAP_START( blktiger_sound_map, AS_PROGRAM, 8, blktiger_state )
AM_RANGE(0xe002, 0xe003) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blktiger_mcu_map, AS_PROGRAM, 8, blktiger_state )
+ADDRESS_MAP_START(blktiger_state::blktiger_mcu_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blktiger_mcu_io_map, AS_IO, 8, blktiger_state )
+ADDRESS_MAP_START(blktiger_state::blktiger_mcu_io_map)
AM_RANGE(MCS51_PORT_P0,MCS51_PORT_P0) AM_READWRITE(blktiger_from_main_r,blktiger_to_main_w)
AM_RANGE(MCS51_PORT_P1,MCS51_PORT_P3) AM_WRITENOP /* other ports unknown */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/blmbycar.cpp b/src/mame/drivers/blmbycar.cpp
index 44505469126..072b23517d5 100644
--- a/src/mame/drivers/blmbycar.cpp
+++ b/src/mame/drivers/blmbycar.cpp
@@ -100,7 +100,7 @@ READ16_MEMBER(blmbycar_state::blmbycar_opt_wheel_r)
***************************************************************************/
-static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, blmbycar_state )
+ADDRESS_MAP_START(blmbycar_state::common_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0xfec000, 0xfeffff) AM_RAM
AM_RANGE(0x100000, 0x103fff) AM_WRITEONLY // ???
@@ -119,7 +119,7 @@ static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, blmbycar_state )
AM_RANGE(0x70000e, 0x70000f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) // Sound
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blmbycar_map, AS_PROGRAM, 16, blmbycar_state )
+ADDRESS_MAP_START(blmbycar_state::blmbycar_map)
AM_IMPORT_FROM(common_map)
AM_RANGE(0x700004, 0x700005) AM_READ(blmbycar_opt_wheel_r) // Wheel (optical)
@@ -136,7 +136,7 @@ READ16_MEMBER(blmbycar_state::waterball_unk_r)
return m_retvalue;
}
-static ADDRESS_MAP_START( watrball_map, AS_PROGRAM, 16, blmbycar_state )
+ADDRESS_MAP_START(blmbycar_state::watrball_map)
AM_IMPORT_FROM(common_map)
AM_RANGE(0x700006, 0x700007) AM_READNOP // read
@@ -144,7 +144,7 @@ static ADDRESS_MAP_START( watrball_map, AS_PROGRAM, 16, blmbycar_state )
AM_RANGE(0x70000a, 0x70000b) AM_WRITEONLY // ?? busy
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blmbycar_oki_map, 0, 8, blmbycar_state )
+ADDRESS_MAP_START(blmbycar_state::blmbycar_oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/blockade.cpp b/src/mame/drivers/blockade.cpp
index efaeef97b9d..cf9b784fd8a 100644
--- a/src/mame/drivers/blockade.cpp
+++ b/src/mame/drivers/blockade.cpp
@@ -54,6 +54,8 @@ public:
DECLARE_WRITE8_MEMBER(env_off_w);
void blockade(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -79,14 +81,14 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, blockade_state )
+ADDRESS_MAP_START(blockade_state::main_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x6000) AM_ROM
AM_RANGE(0x0400, 0x07ff) AM_MIRROR(0x6000) AM_ROM // comotion, blasto, hustle
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x6c00) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9000, 0x90ff) AM_MIRROR(0x6f00) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, blockade_state )
+ADDRESS_MAP_START(blockade_state::main_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_WRITE(coin_latch_w)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_WRITE(sound_freq_w)
AM_RANGE(0x04, 0x04) AM_READ_PORT("IN2") AM_WRITE(env_on_w)
diff --git a/src/mame/drivers/blockhl.cpp b/src/mame/drivers/blockhl.cpp
index e91f63f34d9..30d3263ea64 100644
--- a/src/mame/drivers/blockhl.cpp
+++ b/src/mame/drivers/blockhl.cpp
@@ -59,6 +59,9 @@ public:
DECLARE_WRITE8_MEMBER(banking_callback);
void blockhl(machine_config &config);
+ void audio_map(address_map &map);
+ void bank5800_map(address_map &map);
+ void main_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -76,7 +79,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, blockhl_state )
+ADDRESS_MAP_START(blockhl_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w)
AM_RANGE(0x1f84, 0x1f84) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x1f88, 0x1f88) AM_WRITE(sound_irq_w)
@@ -92,12 +95,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, blockhl_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank5800_map, AS_PROGRAM, 8, blockhl_state )
+ADDRESS_MAP_START(blockhl_state::bank5800_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x0800, 0x0fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, blockhl_state )
+ADDRESS_MAP_START(blockhl_state::audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/blockout.cpp b/src/mame/drivers/blockout.cpp
index f93a8a10e2c..64b723b80fe 100644
--- a/src/mame/drivers/blockout.cpp
+++ b/src/mame/drivers/blockout.cpp
@@ -95,7 +95,7 @@ WRITE16_MEMBER(blockout_state::blockout_irq5_ack_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, blockout_state )
+ADDRESS_MAP_START(blockout_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P1")
AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P2")
@@ -115,7 +115,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, blockout_state )
AM_RANGE(0x280200, 0x2805ff) AM_RAM_WRITE(blockout_paletteram_w) AM_SHARE("paletteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( agress_map, AS_PROGRAM, 16, blockout_state )
+ADDRESS_MAP_START(blockout_state::agress_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P1")
AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P2")
@@ -135,7 +135,7 @@ static ADDRESS_MAP_START( agress_map, AS_PROGRAM, 16, blockout_state )
AM_RANGE(0x280200, 0x2805ff) AM_RAM_WRITE(blockout_paletteram_w) AM_SHARE("paletteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, blockout_state )
+ADDRESS_MAP_START(blockout_state::audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/bloodbro.cpp b/src/mame/drivers/bloodbro.cpp
index 786837880d1..87d37e476c4 100644
--- a/src/mame/drivers/bloodbro.cpp
+++ b/src/mame/drivers/bloodbro.cpp
@@ -149,7 +149,7 @@ Video:
/* Memory Maps */
-static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, bloodbro_state )
+ADDRESS_MAP_START(bloodbro_state::common_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08afff) AM_RAM
AM_RANGE(0x08b000, 0x08bfff) AM_RAM AM_SHARE("spriteram")
@@ -171,12 +171,12 @@ static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, bloodbro_state )
AM_RANGE(0x0e0004, 0x0e0005) AM_READ_PORT("IN1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bloodbro_map, AS_PROGRAM, 16, bloodbro_state )
+ADDRESS_MAP_START(bloodbro_state::bloodbro_map)
AM_IMPORT_FROM(common_map)
AM_RANGE(0xc0000, 0xc004f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( skysmash_map, AS_PROGRAM, 16, bloodbro_state )
+ADDRESS_MAP_START(bloodbro_state::skysmash_map)
AM_IMPORT_FROM(common_map)
AM_RANGE(0xc0000, 0xc004f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read_alt, write_alt)
ADDRESS_MAP_END
@@ -189,7 +189,7 @@ WRITE8_MEMBER(bloodbro_state::weststry_soundlatch_w)
m_audiocpu->set_input_line(0, ASSERT_LINE);
}
-static ADDRESS_MAP_START( weststry_map, AS_PROGRAM, 16, bloodbro_state )
+ADDRESS_MAP_START(bloodbro_state::weststry_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM // old VRAM areas still used, but bootleg code copies them to higher addresses
AM_RANGE(0x0c1000, 0x0c1001) AM_READ_PORT("DSW")
@@ -234,7 +234,7 @@ void bloodbro_state::weststry_soundnmi_update()
m_audiocpu->set_input_line(INPUT_LINE_NMI, ASSERT_LINE);
}
-static ADDRESS_MAP_START( weststry_sound_map, AS_PROGRAM, 8, bloodbro_state )
+ADDRESS_MAP_START(bloodbro_state::weststry_sound_map)
AM_IMPORT_FROM(seibu_sound_map)
AM_RANGE(0x4002, 0x4002) AM_WRITE(weststry_soundnmi_ack_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/blstroid.cpp b/src/mame/drivers/blstroid.cpp
index f14e66f9d8e..cd05da11241 100644
--- a/src/mame/drivers/blstroid.cpp
+++ b/src/mame/drivers/blstroid.cpp
@@ -64,7 +64,7 @@ MACHINE_RESET_MEMBER(blstroid_state,blstroid)
*************************************/
/* full map verified from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, blstroid_state )
+ADDRESS_MAP_START(blstroid_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x83ffff)
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x000000) AM_ROM
diff --git a/src/mame/drivers/blueprnt.cpp b/src/mame/drivers/blueprnt.cpp
index f3dd658b939..3d42d32070b 100644
--- a/src/mame/drivers/blueprnt.cpp
+++ b/src/mame/drivers/blueprnt.cpp
@@ -101,7 +101,7 @@ WRITE8_MEMBER(blueprnt_state::blueprnt_coin_counter_w)
*
*************************************/
-static ADDRESS_MAP_START( blueprnt_map, AS_PROGRAM, 8, blueprnt_state )
+ADDRESS_MAP_START(blueprnt_state::blueprnt_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // service mode checks for 8 chips = 64K
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(blueprnt_videoram_w) AM_MIRROR(0x400) AM_SHARE("videoram")
@@ -115,13 +115,13 @@ static ADDRESS_MAP_START( blueprnt_map, AS_PROGRAM, 8, blueprnt_state )
AM_RANGE(0xf000, 0xf3ff) AM_RAM_WRITE(blueprnt_colorram_w) AM_MIRROR(0x400) AM_SHARE("colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( grasspin_map, AS_PROGRAM, 8, blueprnt_state )
+ADDRESS_MAP_START(blueprnt_state::grasspin_map)
AM_IMPORT_FROM( blueprnt_map )
AM_RANGE(0xc003, 0xc003) AM_READ(grasspin_sh_dipsw_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, blueprnt_state )
+ADDRESS_MAP_START(blueprnt_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_MIRROR(0x1000)
AM_RANGE(0x2000, 0x2fff) AM_ROM AM_MIRROR(0x1000)
AM_RANGE(0x4000, 0x43ff) AM_RAM
@@ -131,7 +131,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, blueprnt_state )
AM_RANGE(0x8002, 0x8002) AM_DEVREAD("ay2", ay8910_device, data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, blueprnt_state )
+ADDRESS_MAP_START(blueprnt_state::sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x02) AM_NOP // nmi mask maybe? grasspin writes it 0/1
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bmcbowl.cpp b/src/mame/drivers/bmcbowl.cpp
index 55acb371e40..0fb0dd94485 100644
--- a/src/mame/drivers/bmcbowl.cpp
+++ b/src/mame/drivers/bmcbowl.cpp
@@ -147,6 +147,8 @@ public:
uint32_t screen_update_bmcbowl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void init_stats(const uint8_t *table, int table_len, int address);
void bmcbowl(machine_config &config);
+ void bmcbowl_mem(address_map &map);
+ void ramdac_map(address_map &map);
};
@@ -310,7 +312,7 @@ void bmcbowl_state::machine_reset()
#endif
}
-static ADDRESS_MAP_START( bmcbowl_mem, AS_PROGRAM, 16, bmcbowl_state )
+ADDRESS_MAP_START(bmcbowl_state::bmcbowl_mem)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x090000, 0x090001) AM_DEVWRITE8("ramdac", ramdac_device, index_w, 0x00ff)
@@ -447,7 +449,7 @@ WRITE8_MEMBER(bmcbowl_state::input_mux_w)
m_bmc_input=data;
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, bmcbowl_state )
+ADDRESS_MAP_START(bmcbowl_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bmcpokr.cpp b/src/mame/drivers/bmcpokr.cpp
index 24cd9425658..d98e425ed91 100644
--- a/src/mame/drivers/bmcpokr.cpp
+++ b/src/mame/drivers/bmcpokr.cpp
@@ -107,6 +107,9 @@ public:
}
void bmcpokr(machine_config &config);
void mjmaglmp(machine_config &config);
+ void bmcpokr_mem(address_map &map);
+ void mjmaglmp_map(address_map &map);
+ void ramdac_map(address_map &map);
};
/***************************************************************************
@@ -377,7 +380,7 @@ WRITE16_MEMBER(bmcpokr_state::irq_ack_w)
}
}
-static ADDRESS_MAP_START( bmcpokr_mem, AS_PROGRAM, 16, bmcpokr_state )
+ADDRESS_MAP_START(bmcpokr_state::bmcpokr_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("nvram")
@@ -449,7 +452,7 @@ READ16_MEMBER(bmcpokr_state::mjmaglmp_key_r)
return ioport("INPUTS")->read() | (key & 0x3f);
}
-static ADDRESS_MAP_START( mjmaglmp_map, AS_PROGRAM, 16, bmcpokr_state )
+ADDRESS_MAP_START(bmcpokr_state::mjmaglmp_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("nvram")
@@ -798,7 +801,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(bmcpokr_state::interrupt)
if (m_irq_enable & (1<<6)) m_maincpu->set_input_line(6, ASSERT_LINE);
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, bmcpokr_state )
+ADDRESS_MAP_START(bmcpokr_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bmjr.cpp b/src/mame/drivers/bmjr.cpp
index 722ffb97786..e89e758d02a 100644
--- a/src/mame/drivers/bmjr.cpp
+++ b/src/mame/drivers/bmjr.cpp
@@ -48,6 +48,7 @@ public:
u32 screen_update_bmjr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void bmjr(machine_config &config);
+ void bmjr_mem(address_map &map);
private:
bool m_tape_switch;
u8 m_xor_display;
@@ -163,7 +164,7 @@ WRITE8_MEMBER( bmjr_state::xor_display_w )
m_xor_display = data;
}
-static ADDRESS_MAP_START(bmjr_mem, AS_PROGRAM, 8, bmjr_state)
+ADDRESS_MAP_START(bmjr_state::bmjr_mem)
ADDRESS_MAP_UNMAP_HIGH
//0x0100, 0x03ff basic vram
//0x0900, 0x20ff vram, modes 0x40 / 0xc0
diff --git a/src/mame/drivers/bml3.cpp b/src/mame/drivers/bml3.cpp
index 028be77ad54..9c4e5f13854 100644
--- a/src/mame/drivers/bml3.cpp
+++ b/src/mame/drivers/bml3.cpp
@@ -133,6 +133,9 @@ public:
void bml3mk5(machine_config &config);
void bml3(machine_config &config);
void bml3_common(machine_config &config);
+ void bml3_mem(address_map &map);
+ void bml3mk2_mem(address_map &map);
+ void bml3mk5_mem(address_map &map);
private:
u8 m_hres_reg;
u8 m_crtc_vreg[0x100];
@@ -398,7 +401,7 @@ WRITE_LINE_MEMBER(bml3_state::bml3bus_firq_w)
}
-static ADDRESS_MAP_START(bml3_mem, AS_PROGRAM, 8, bml3_state)
+ADDRESS_MAP_START(bml3_state::bml3_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x43ff) AM_READWRITE(bml3_vram_r,bml3_vram_w)
@@ -451,13 +454,13 @@ static ADDRESS_MAP_START(bml3_mem, AS_PROGRAM, 8, bml3_state)
#endif
ADDRESS_MAP_END
-static ADDRESS_MAP_START(bml3mk2_mem, AS_PROGRAM, 8, bml3_state)
+ADDRESS_MAP_START(bml3_state::bml3mk2_mem)
AM_IMPORT_FROM(bml3_mem)
// TODO: anything to add here?
ADDRESS_MAP_END
-static ADDRESS_MAP_START(bml3mk5_mem, AS_PROGRAM, 8, bml3_state)
+ADDRESS_MAP_START(bml3_state::bml3mk5_mem)
AM_IMPORT_FROM(bml3_mem)
// TODO: anything to add here?
diff --git a/src/mame/drivers/bnstars.cpp b/src/mame/drivers/bnstars.cpp
index f80efce6e77..97f2d7a05d1 100644
--- a/src/mame/drivers/bnstars.cpp
+++ b/src/mame/drivers/bnstars.cpp
@@ -162,6 +162,8 @@ public:
void draw_roz(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int priority, int chip);
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, uint32_t *sprram_top, size_t sprram_size);
void bnstars(machine_config &config);
+ void bnstars_map(address_map &map);
+ void bnstars_sound_map(address_map &map);
};
@@ -741,7 +743,7 @@ WRITE32_MEMBER(bnstars_state::bnstars1_mahjong_select_w)
}
-static ADDRESS_MAP_START( bnstars_map, AS_PROGRAM, 32, bnstars_state )
+ADDRESS_MAP_START(bnstars_state::bnstars_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM
AM_RANGE(0xfc800000, 0xfc800003) AM_WRITE(ms32_sound_w)
@@ -786,7 +788,7 @@ static ADDRESS_MAP_START( bnstars_map, AS_PROGRAM, 32, bnstars_state )
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bnstars_sound_map, AS_PROGRAM, 8, bnstars_state )
+ADDRESS_MAP_START(bnstars_state::bnstars_sound_map)
AM_RANGE(0x0000, 0x3eff) AM_ROM
AM_RANGE(0x3f00, 0x3f0f) AM_DEVREADWRITE("ymf2", ymf271_device, read, write)
AM_RANGE(0x3f10, 0x3f10) AM_READWRITE(latch_r,to_main_w)
diff --git a/src/mame/drivers/bntyhunt.cpp b/src/mame/drivers/bntyhunt.cpp
index 08cd3d2eea1..99dbba77831 100644
--- a/src/mame/drivers/bntyhunt.cpp
+++ b/src/mame/drivers/bntyhunt.cpp
@@ -23,6 +23,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void bntyhunt(machine_config &config);
+ void bntyhunt_map(address_map &map);
protected:
// devices
@@ -42,7 +43,7 @@ uint32_t bntyhunt_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
return 0;
}
-static ADDRESS_MAP_START( bntyhunt_map, AS_PROGRAM, 32, bntyhunt_state )
+ADDRESS_MAP_START(bntyhunt_state::bntyhunt_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bob85.cpp b/src/mame/drivers/bob85.cpp
index 3484575f637..bddcf97a0a1 100644
--- a/src/mame/drivers/bob85.cpp
+++ b/src/mame/drivers/bob85.cpp
@@ -49,6 +49,8 @@ public:
virtual void machine_reset() override;
void bob85(machine_config &config);
+ void bob85_io(address_map &map);
+ void bob85_mem(address_map &map);
protected:
required_ioport m_line0;
required_ioport m_line1;
@@ -141,13 +143,13 @@ WRITE8_MEMBER(bob85_state::bob85_7seg_w)
output().set_digit_value(offset, bitswap<8>( data,3,2,1,0,7,6,5,4 ));
}
-static ADDRESS_MAP_START( bob85_mem, AS_PROGRAM, 8, bob85_state )
+ADDRESS_MAP_START(bob85_state::bob85_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x02ff) AM_ROM
AM_RANGE(0x0600, 0x09ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bob85_io, AS_IO, 8, bob85_state )
+ADDRESS_MAP_START(bob85_state::bob85_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0a, 0x0a) AM_READ(bob85_keyboard_r)
AM_RANGE(0x0a, 0x0f) AM_WRITE(bob85_7seg_w)
diff --git a/src/mame/drivers/bogeyman.cpp b/src/mame/drivers/bogeyman.cpp
index 3eb6467e7bd..8c10a6efd21 100644
--- a/src/mame/drivers/bogeyman.cpp
+++ b/src/mame/drivers/bogeyman.cpp
@@ -48,7 +48,7 @@ WRITE8_MEMBER(bogeyman_state::ay8910_control_w)
/* Memory Map */
-static ADDRESS_MAP_START( bogeyman_map, AS_PROGRAM, 8, bogeyman_state )
+ADDRESS_MAP_START(bogeyman_state::bogeyman_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(colorram2_w) AM_SHARE("colorram2")
diff --git a/src/mame/drivers/bombjack.cpp b/src/mame/drivers/bombjack.cpp
index 32320841d74..54822afb7cb 100644
--- a/src/mame/drivers/bombjack.cpp
+++ b/src/mame/drivers/bombjack.cpp
@@ -128,7 +128,7 @@ WRITE8_MEMBER(bombjack_state::irq_mask_w)
m_nmi_mask = data & 1;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bombjack_state )
+ADDRESS_MAP_START(bombjack_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(bombjack_videoram_w) AM_SHARE("videoram")
@@ -149,13 +149,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bombjack_state )
AM_RANGE(0xc000, 0xdfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, bombjack_state )
+ADDRESS_MAP_START(bombjack_state::audio_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_read_and_clear)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, bombjack_state )
+ADDRESS_MAP_START(bombjack_state::audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/boogwing.cpp b/src/mame/drivers/boogwing.cpp
index 93f33d66935..a71f71641d9 100644
--- a/src/mame/drivers/boogwing.cpp
+++ b/src/mame/drivers/boogwing.cpp
@@ -123,7 +123,7 @@ WRITE16_MEMBER( boogwing_state::priority_w )
}
-static ADDRESS_MAP_START( boogwing_map, AS_PROGRAM, 16, boogwing_state )
+ADDRESS_MAP_START(boogwing_state::boogwing_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -160,11 +160,11 @@ static ADDRESS_MAP_START( boogwing_map, AS_PROGRAM, 16, boogwing_state )
AM_RANGE(0x3c0000, 0x3c004f) AM_DEVREADWRITE("deco_ace", deco_ace_device, ace_r, ace_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, boogwing_state )
+ADDRESS_MAP_START(boogwing_state::decrypted_opcodes_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, boogwing_state )
+ADDRESS_MAP_START(boogwing_state::audio_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_NOP
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -342,7 +342,7 @@ MACHINE_CONFIG_START(boogwing_state::boogwing)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M68000, MAIN_XTAL/2) /* DE102 */
MCFG_CPU_PROGRAM_MAP(boogwing_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", boogwing_state, irq6_line_hold)
MCFG_CPU_ADD("audiocpu", H6280, SOUND_XTAL/4)
diff --git a/src/mame/drivers/bottom9.cpp b/src/mame/drivers/bottom9.cpp
index acf4f3a2d8a..4f283a06cd9 100644
--- a/src/mame/drivers/bottom9.cpp
+++ b/src/mame/drivers/bottom9.cpp
@@ -159,7 +159,7 @@ WRITE8_MEMBER(bottom9_state::sound_bank_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bottom9_state )
+ADDRESS_MAP_START(bottom9_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w)
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(bottom9_bankedram1_r, bottom9_bankedram1_w)
AM_RANGE(0x1f80, 0x1f80) AM_WRITE(bankswitch_w)
@@ -179,7 +179,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bottom9_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, bottom9_state )
+ADDRESS_MAP_START(bottom9_state::audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(sound_bank_w)
diff --git a/src/mame/drivers/bowltry.cpp b/src/mame/drivers/bowltry.cpp
index 60cf6d77538..b9b91a20127 100644
--- a/src/mame/drivers/bowltry.cpp
+++ b/src/mame/drivers/bowltry.cpp
@@ -53,6 +53,7 @@ public:
#endif
void bowltry(machine_config &config);
+void bowltry_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
public:
@@ -74,7 +75,7 @@ WRITE16_MEMBER(bowltry_state::hack_w)
}
#endif
-static ADDRESS_MAP_START( bowltry_map, AS_PROGRAM, 16, bowltry_state )
+ADDRESS_MAP_START(bowltry_state::bowltry_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE( 0x080000, 0x083fff ) AM_RAM
diff --git a/src/mame/drivers/boxer.cpp b/src/mame/drivers/boxer.cpp
index 381dc41eeeb..013e69853cd 100644
--- a/src/mame/drivers/boxer.cpp
+++ b/src/mame/drivers/boxer.cpp
@@ -74,6 +74,7 @@ public:
void draw(bitmap_ind16 &bitmap, const rectangle &cliprect);
void boxer(machine_config &config);
+ void boxer_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -337,7 +338,7 @@ WRITE8_MEMBER(boxer_state::led_w)
*
*************************************/
-static ADDRESS_MAP_START( boxer_map, AS_PROGRAM, 8, boxer_state )
+ADDRESS_MAP_START(boxer_state::boxer_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x03ff) AM_RAM AM_SHARE("tile_ram")
diff --git a/src/mame/drivers/bpmmicro.cpp b/src/mame/drivers/bpmmicro.cpp
index 2ca45d8f263..f2c716b60be 100644
--- a/src/mame/drivers/bpmmicro.cpp
+++ b/src/mame/drivers/bpmmicro.cpp
@@ -185,6 +185,8 @@ public:
DECLARE_WRITE16_MEMBER(eeprom_8401c_w);
virtual void machine_start() override;
void bpmmicro(machine_config &config);
+ void i286_io(address_map &map);
+ void i286_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<eeprom_serial_93cxx_device> m_eeprom_u38;
@@ -328,7 +330,7 @@ read <- 00
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(i286_mem, AS_PROGRAM, 16, bpmmicro_state)
+ADDRESS_MAP_START(bpmmicro_state::i286_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_RAM // 512k ram
AM_RANGE(0x082200, 0x82201) AM_WRITE(unknown_82200_w)
@@ -343,7 +345,7 @@ static ADDRESS_MAP_START(i286_mem, AS_PROGRAM, 16, bpmmicro_state)
AM_RANGE(0xfffff0, 0xffffff) AM_ROM AM_REGION("bios", 0x1fff0) //?
ADDRESS_MAP_END
-static ADDRESS_MAP_START(i286_io, AS_IO, 16, bpmmicro_state)
+ADDRESS_MAP_START(bpmmicro_state::i286_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/br8641.cpp b/src/mame/drivers/br8641.cpp
index 02fb9b02d7e..353351ea705 100644
--- a/src/mame/drivers/br8641.cpp
+++ b/src/mame/drivers/br8641.cpp
@@ -49,6 +49,8 @@ public:
DECLARE_WRITE8_MEMBER(port09_w);
void brandt8641(machine_config &config);
+ void brandt8641_io(address_map &map);
+ void brandt8641_mem(address_map &map);
private:
uint8_t m_port08;
uint8_t m_port09;
@@ -61,13 +63,13 @@ private:
required_device<beep_device> m_beep;
};
-static ADDRESS_MAP_START(brandt8641_mem, AS_PROGRAM, 8, brandt8641_state)
+ADDRESS_MAP_START(brandt8641_state::brandt8641_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM // 27256 at U12
AM_RANGE(0x8000, 0x9fff) AM_RAM // 8KB static ram 6264 at U12
ADDRESS_MAP_END
-static ADDRESS_MAP_START(brandt8641_io, AS_IO, 8, brandt8641_state)
+ADDRESS_MAP_START(brandt8641_state::brandt8641_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("pio1", z80pio_device, read, write)
diff --git a/src/mame/drivers/brkthru.cpp b/src/mame/drivers/brkthru.cpp
index 9a0d89767a1..8018dd480bd 100644
--- a/src/mame/drivers/brkthru.cpp
+++ b/src/mame/drivers/brkthru.cpp
@@ -108,7 +108,7 @@ INPUT_CHANGED_MEMBER(brkthru_state::coin_inserted)
*
*************************************/
-static ADDRESS_MAP_START( brkthru_map, AS_PROGRAM, 8, brkthru_state )
+ADDRESS_MAP_START(brkthru_state::brkthru_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM_WRITE(brkthru_fgram_w) AM_SHARE("fg_videoram")
AM_RANGE(0x0400, 0x0bff) AM_RAM
AM_RANGE(0x0c00, 0x0fff) AM_RAM_WRITE(brkthru_bgram_w) AM_SHARE("videoram")
@@ -126,7 +126,7 @@ static ADDRESS_MAP_START( brkthru_map, AS_PROGRAM, 8, brkthru_state )
ADDRESS_MAP_END
/* same as brktrhu, but xor 0x1000 below 8k */
-static ADDRESS_MAP_START( darwin_map, AS_PROGRAM, 8, brkthru_state )
+ADDRESS_MAP_START(brkthru_state::darwin_map)
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(brkthru_fgram_w) AM_SHARE("fg_videoram")
AM_RANGE(0x1400, 0x1bff) AM_RAM
AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(brkthru_bgram_w) AM_SHARE("videoram")
@@ -144,7 +144,7 @@ static ADDRESS_MAP_START( darwin_map, AS_PROGRAM, 8, brkthru_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, brkthru_state )
+ADDRESS_MAP_START(brkthru_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym2", ym3526_device, write)
AM_RANGE(0x4000, 0x4000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/bsktball.cpp b/src/mame/drivers/bsktball.cpp
index b02347416ed..f7b6b71c60c 100644
--- a/src/mame/drivers/bsktball.cpp
+++ b/src/mame/drivers/bsktball.cpp
@@ -76,7 +76,7 @@ PALETTE_INIT_MEMBER(bsktball_state, bsktball)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bsktball_state )
+ADDRESS_MAP_START(bsktball_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM /* Zero Page RAM */
AM_RANGE(0x0800, 0x0800) AM_READ(bsktball_in0_r)
diff --git a/src/mame/drivers/btime.cpp b/src/mame/drivers/btime.cpp
index c9aee299e49..ca6a84933f6 100644
--- a/src/mame/drivers/btime.cpp
+++ b/src/mame/drivers/btime.cpp
@@ -184,7 +184,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(btime_state::audio_nmi_gen)
m_audionmi->in_w<1>((scanline & 8) >> 3);
}
-static ADDRESS_MAP_START( btime_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::btime_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x0c00, 0x0c0f) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x1000, 0x13ff) AM_RAM AM_SHARE("videoram")
@@ -199,7 +199,7 @@ static ADDRESS_MAP_START( btime_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0xb000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cookrace_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::cookrace_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x0500, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("videoram")
@@ -219,7 +219,7 @@ static ADDRESS_MAP_START( cookrace_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0xfff9, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tisland_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::tisland_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x0c00, 0x0c0f) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x1000, 0x13ff) AM_RAM AM_SHARE("videoram")
@@ -235,7 +235,7 @@ static ADDRESS_MAP_START( tisland_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0x9000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zoar_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::zoar_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x8000, 0x83ff) AM_WRITEONLY AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_WRITEONLY AM_SHARE("colorram")
@@ -253,7 +253,7 @@ static ADDRESS_MAP_START( zoar_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0xd000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lnc_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::lnc_map)
AM_RANGE(0x0000, 0x3bff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x3c00, 0x3fff) AM_RAM_WRITE(lnc_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x7800, 0x7bff) AM_WRITEONLY AM_SHARE("colorram") /* this is just here to initialize the pointer */
@@ -268,7 +268,7 @@ static ADDRESS_MAP_START( lnc_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmonkey_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::mmonkey_map)
AM_RANGE(0x0000, 0x3bff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x3c00, 0x3fff) AM_RAM_WRITE(lnc_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x7800, 0x7bff) AM_WRITEONLY AM_SHARE("colorram") /* this is just here to initialize the pointer */
@@ -283,7 +283,7 @@ static ADDRESS_MAP_START( mmonkey_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bnj_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::bnj_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("DSW1")
AM_RANGE(0x1001, 0x1001) AM_READ_PORT("DSW2") AM_WRITE(bnj_video_control_w)
@@ -302,7 +302,7 @@ static ADDRESS_MAP_START( bnj_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0xa000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( disco_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::disco_map)
AM_RANGE(0x0000, 0x04ff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x2000, 0x7fff) AM_RAM_WRITE(deco_charram_w) AM_SHARE("deco_charram")
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("videoram")
@@ -319,7 +319,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::audio_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_SHARE("audio_rambase")
AM_RANGE(0x2000, 0x3fff) AM_DEVWRITE("ay1", ay8910_device, data_w)
AM_RANGE(0x4000, 0x5fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
@@ -330,7 +330,7 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, btime_state )
AM_RANGE(0xe000, 0xefff) AM_MIRROR(0x1000) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( disco_audio_map, AS_PROGRAM, 8, btime_state )
+ADDRESS_MAP_START(btime_state::disco_audio_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE("ay1", ay8910_device, data_w)
AM_RANGE(0x5000, 0x5fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
diff --git a/src/mame/drivers/btoads.cpp b/src/mame/drivers/btoads.cpp
index 182e3001820..a6fb2a890ed 100644
--- a/src/mame/drivers/btoads.cpp
+++ b/src/mame/drivers/btoads.cpp
@@ -166,7 +166,7 @@ WRITE8_MEMBER( btoads_state::bsmt2000_port_w )
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, btoads_state )
+ADDRESS_MAP_START(btoads_state::main_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM
AM_RANGE(0x20000000, 0x2000007f) AM_READ_PORT("P1")
AM_RANGE(0x20000080, 0x200000ff) AM_READ_PORT("P2")
@@ -202,12 +202,12 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, btoads_state )
+ADDRESS_MAP_START(btoads_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, btoads_state )
+ADDRESS_MAP_START(btoads_state::sound_io_map)
AM_RANGE(0x0000, 0x7fff) AM_WRITE(bsmt2000_port_w)
AM_RANGE(0x8000, 0x8000) AM_READWRITE(sound_data_r, sound_data_w)
AM_RANGE(0x8002, 0x8002) AM_WRITE(sound_int_state_w)
diff --git a/src/mame/drivers/bublbobl.cpp b/src/mame/drivers/bublbobl.cpp
index ec482967cda..df775e23d48 100644
--- a/src/mame/drivers/bublbobl.cpp
+++ b/src/mame/drivers/bublbobl.cpp
@@ -292,7 +292,7 @@ TODO:
* Address maps
*
*************************************/
-static ADDRESS_MAP_START( common_maincpu_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::common_maincpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdcff) AM_RAM AM_SHARE("videoram")
@@ -301,7 +301,7 @@ static ADDRESS_MAP_START( common_maincpu_map, AS_PROGRAM, 8, bublbobl_state )
AM_RANGE(0xf800, 0xf9ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bublbobl_maincpu_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::bublbobl_maincpu_map)
AM_IMPORT_FROM(common_maincpu_map)
AM_RANGE(0xfa00, 0xfa00) AM_MIRROR(0x007c) AM_DEVREAD("sound_to_main", generic_latch_8_device, read) AM_DEVWRITE("main_to_sound", generic_latch_8_device, write)
AM_RANGE(0xfa01, 0xfa01) AM_MIRROR(0x007c) AM_READ(common_sound_semaphores_r)
@@ -312,7 +312,7 @@ static ADDRESS_MAP_START( bublbobl_maincpu_map, AS_PROGRAM, 8, bublbobl_state )
AM_RANGE(0xfc00, 0xffff) AM_RAM AM_SHARE("mcu_sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subcpu_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::subcpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
@@ -343,7 +343,7 @@ Sound cpu semaphores are both active low:
74ls74@ic9 [1/2] 'sound_has_written', appears on d0
74ls74@ic10 [2/2] 'maincpu_has_written', appears on d1
*/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9001) AM_MIRROR(0x0ffe) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
@@ -354,7 +354,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bublbobl_state )
AM_RANGE(0xe000, 0xffff) AM_ROM // space for diagnostic ROM?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::mcu_map)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(bublbobl_mcu_ddr1_r, bublbobl_mcu_ddr1_w)
AM_RANGE(0x0001, 0x0001) AM_READWRITE(bublbobl_mcu_ddr2_r, bublbobl_mcu_ddr2_w)
AM_RANGE(0x0002, 0x0002) AM_READWRITE(bublbobl_mcu_port1_r, bublbobl_mcu_port1_w)
@@ -367,7 +367,7 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, bublbobl_state )
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::bootleg_map)
AM_IMPORT_FROM(common_maincpu_map)
AM_RANGE(0xfa00, 0xfa00) AM_MIRROR(0x007c) AM_DEVREAD("sound_to_main", generic_latch_8_device, read) AM_DEVWRITE("main_to_sound", generic_latch_8_device, write)
AM_RANGE(0xfa01, 0xfa01) AM_MIRROR(0x007c) AM_READ(common_sound_semaphores_r)
@@ -389,7 +389,7 @@ static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, bublbobl_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tokio_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::tokio_map)
AM_IMPORT_FROM(common_maincpu_map)
AM_RANGE(0xfa00, 0xfa00) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0xfa03, 0xfa03) AM_READ_PORT("DSW0")
@@ -403,23 +403,23 @@ static ADDRESS_MAP_START( tokio_map, AS_PROGRAM, 8, bublbobl_state )
AM_RANGE(0xfc00, 0xfc00) AM_DEVREAD("sound_to_main", generic_latch_8_device, read) AM_DEVWRITE("main_to_sound", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tokio_map_mcu, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::tokio_map_mcu)
AM_IMPORT_FROM(tokio_map)
AM_RANGE(0xfe00, 0xfe00) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tokio_map_bootleg, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::tokio_map_bootleg)
AM_IMPORT_FROM(tokio_map)
AM_RANGE(0xfe00, 0xfe00) AM_READ( tokiob_mcu_r )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tokio_subcpu_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::tokio_subcpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x97ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tokio_sound_map, AS_PROGRAM, 8, bublbobl_state )
+ADDRESS_MAP_START(bublbobl_state::tokio_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_DEVREAD("main_to_sound", generic_latch_8_device, read) AM_DEVWRITE("sound_to_main", generic_latch_8_device, write)
diff --git a/src/mame/drivers/buggychl.cpp b/src/mame/drivers/buggychl.cpp
index 5c56cf9e93e..373c56ee42e 100644
--- a/src/mame/drivers/buggychl.cpp
+++ b/src/mame/drivers/buggychl.cpp
@@ -194,7 +194,7 @@ READ8_MEMBER(buggychl_state::sound_status_sound_r)
1 1 1 0 ? ? ? ? ? ? ? ? ? ? ? ? ? (unknown, cut off on schematic)
1 1 1 1 ? ? ? ? ? ? ? ? ? ? ? ? ? (unknown, cut off on schematic)
*/
-static ADDRESS_MAP_START( buggychl_map, AS_PROGRAM, 8, buggychl_state )
+ADDRESS_MAP_START(buggychl_state::buggychl_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM /* A22-04 (23) */
AM_RANGE(0x4000, 0x7fff) AM_ROM /* A22-05 (22) */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* 6116 SRAM (36) */
@@ -237,7 +237,7 @@ ADDRESS_MAP_END
(The schematic is for an unknown taito game, possibly never released.)
The final buggy challenge sound board is more similar to Fairyland Story sound
hardware, except it has two YM2149 chips instead of one, and much less ROM space. */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, buggychl_state )
+ADDRESS_MAP_START(buggychl_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4801) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/bullet.cpp b/src/mame/drivers/bullet.cpp
index da830a9f641..938c7b4759d 100644
--- a/src/mame/drivers/bullet.cpp
+++ b/src/mame/drivers/bullet.cpp
@@ -607,7 +607,7 @@ READ8_MEMBER( bulletf_state::hwsts_r )
// ADDRESS_MAP( bullet_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( bullet_mem, AS_PROGRAM, 8, bullet_state )
+ADDRESS_MAP_START(bullet_state::bullet_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mreq_r, mreq_w)
ADDRESS_MAP_END
@@ -616,7 +616,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( bullet_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( bullet_io, AS_IO, 8, bullet_state )
+ADDRESS_MAP_START(bullet_state::bullet_io)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(Z80DART_TAG, z80dart_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read, write)
@@ -637,7 +637,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( bulletf_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( bulletf_mem, AS_PROGRAM, 8, bulletf_state )
+ADDRESS_MAP_START(bulletf_state::bulletf_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mreq_r, mreq_w)
ADDRESS_MAP_END
@@ -646,7 +646,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( bulletf_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( bulletf_io, AS_IO, 8, bulletf_state )
+ADDRESS_MAP_START(bulletf_state::bulletf_io)
ADDRESS_MAP_GLOBAL_MASK(0x3f)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(Z80DART_TAG, z80dart_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read, write)
diff --git a/src/mame/drivers/busicom.cpp b/src/mame/drivers/busicom.cpp
index 87b241cc11a..ae6cfa4cf86 100644
--- a/src/mame/drivers/busicom.cpp
+++ b/src/mame/drivers/busicom.cpp
@@ -99,29 +99,29 @@ WRITE8_MEMBER(busicom_state::printer_ctrl_w)
{
}
-static ADDRESS_MAP_START(busicom_rom, i4004_cpu_device::AS_ROM, 8, busicom_state )
+ADDRESS_MAP_START(busicom_state::busicom_rom)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x04FF) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(busicom_mem, i4004_cpu_device::AS_RAM_MEMORY, 8, busicom_state )
+ADDRESS_MAP_START(busicom_state::busicom_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07F) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(busicom_stat, i4004_cpu_device::AS_RAM_STATUS, 8, busicom_state )
+ADDRESS_MAP_START(busicom_state::busicom_stat)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x01F) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( busicom_rp, i4004_cpu_device::AS_ROM_PORTS, 8, busicom_state )
+ADDRESS_MAP_START(busicom_state::busicom_rp)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x000f) AM_MIRROR(0x0700) AM_WRITE(shifter_w) // ROM0 I/O
AM_RANGE(0x0010, 0x001f) AM_MIRROR(0x0700) AM_READWRITE(keyboard_r,printer_ctrl_w) // ROM1 I/O
AM_RANGE(0x0020, 0x002f) AM_MIRROR(0x0700) AM_READ(printer_r) // ROM2 I/O
ADDRESS_MAP_END
-static ADDRESS_MAP_START( busicom_mp, i4004_cpu_device::AS_RAM_PORTS, 8, busicom_state )
+ADDRESS_MAP_START(busicom_state::busicom_mp)
AM_RANGE(0x00, 0x00) AM_WRITE(printer_w) // RAM0 output
AM_RANGE(0x01, 0x01) AM_WRITE(status_w) // RAM1 output
ADDRESS_MAP_END
diff --git a/src/mame/drivers/buster.cpp b/src/mame/drivers/buster.cpp
index ddea6ffa18b..a9e68e6fba2 100644
--- a/src/mame/drivers/buster.cpp
+++ b/src/mame/drivers/buster.cpp
@@ -33,6 +33,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void buster(machine_config &config);
+ void mainmap(address_map &map);
};
@@ -69,7 +70,7 @@ READ8_MEMBER(buster_state::test_r)
}
#endif
-static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8, buster_state )
+ADDRESS_MAP_START(buster_state::mainmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM// AM_SHARE("rom")
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("wram")
AM_RANGE(0x5000, 0x5fff) AM_RAM AM_SHARE("vram")
diff --git a/src/mame/drivers/bw12.cpp b/src/mame/drivers/bw12.cpp
index 666dcd45574..91bf1702f94 100644
--- a/src/mame/drivers/bw12.cpp
+++ b/src/mame/drivers/bw12.cpp
@@ -168,13 +168,13 @@ READ8_MEMBER( bw12_state::ls259_r )
/* Memory Maps */
-static ADDRESS_MAP_START( bw12_mem, AS_PROGRAM, 8, bw12_state )
+ADDRESS_MAP_START(bw12_state::bw12_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAMBANK("bank1")
AM_RANGE(0x8000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bw12_io, AS_IO, 8, bw12_state )
+ADDRESS_MAP_START(bw12_state::bw12_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_READWRITE(ls259_r, ls259_w)
AM_RANGE(0x10, 0x10) AM_MIRROR(0x0e) AM_DEVWRITE(MC6845_TAG, mc6845_device, address_w)
diff --git a/src/mame/drivers/bw2.cpp b/src/mame/drivers/bw2.cpp
index 546c00cce97..67366d42591 100644
--- a/src/mame/drivers/bw2.cpp
+++ b/src/mame/drivers/bw2.cpp
@@ -202,7 +202,7 @@ WRITE8_MEMBER( bw2_state::write )
// ADDRESS_MAP( bw2_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( bw2_mem, AS_PROGRAM, 8, bw2_state )
+ADDRESS_MAP_START(bw2_state::bw2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -212,7 +212,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( bw2_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( bw2_io, AS_IO, 8, bw2_state )
+ADDRESS_MAP_START(bw2_state::bw2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(I8255A_TAG, i8255_device, read, write)
@@ -231,7 +231,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( lcdc_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( lcdc_map, 0, 8, bw2_state )
+ADDRESS_MAP_START(bw2_state::lcdc_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bwidow.cpp b/src/mame/drivers/bwidow.cpp
index 447f79c95ee..dd214b14df2 100644
--- a/src/mame/drivers/bwidow.cpp
+++ b/src/mame/drivers/bwidow.cpp
@@ -375,7 +375,7 @@ WRITE8_MEMBER(bwidow_state::irq_ack_w)
*
*************************************/
-static ADDRESS_MAP_START( bwidow_map, AS_PROGRAM, 8, bwidow_state )
+ADDRESS_MAP_START(bwidow_state::bwidow_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_SHARE("vectorram") AM_REGION("maincpu", 0x2000)
AM_RANGE(0x2800, 0x5fff) AM_ROM
@@ -395,7 +395,7 @@ static ADDRESS_MAP_START( bwidow_map, AS_PROGRAM, 8, bwidow_state )
AM_RANGE(0x9000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bwidowp_map, AS_PROGRAM, 8, bwidow_state )
+ADDRESS_MAP_START(bwidow_state::bwidowp_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x080f) AM_DEVREADWRITE("pokey1", pokey_device, read, write)
AM_RANGE(0x0810, 0x081f) AM_DEVREADWRITE("pokey2", pokey_device, read, write)
@@ -415,7 +415,7 @@ static ADDRESS_MAP_START( bwidowp_map, AS_PROGRAM, 8, bwidow_state )
AM_RANGE(0xa000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacduel_map, AS_PROGRAM, 8, bwidow_state )
+ADDRESS_MAP_START(bwidow_state::spacduel_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0")
AM_RANGE(0x0900, 0x0907) AM_READ(spacduel_IN3_r) /* IN1 */
diff --git a/src/mame/drivers/bwing.cpp b/src/mame/drivers/bwing.cpp
index 34b9b9eb642..dce69387386 100644
--- a/src/mame/drivers/bwing.cpp
+++ b/src/mame/drivers/bwing.cpp
@@ -121,7 +121,7 @@ WRITE8_MEMBER(bwing_state::bwp2_ctrl_w)
// CPU Memory Maps
// Main CPU
-static ADDRESS_MAP_START( bwp1_map, AS_PROGRAM, 8, bwing_state )
+ADDRESS_MAP_START(bwing_state::bwp1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x0800, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -140,14 +140,14 @@ static ADDRESS_MAP_START( bwp1_map, AS_PROGRAM, 8, bwing_state )
ADDRESS_MAP_END
// Banked video RAM
-static ADDRESS_MAP_START( bank_map, AS_PROGRAM, 8, bwing_state )
+ADDRESS_MAP_START(bwing_state::bank_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(fgscrollram_w) AM_SHARE("fgscrollram")
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(bgscrollram_w) AM_SHARE("bgscrollram")
AM_RANGE(0x2000, 0x7fff) AM_RAM_WRITE(gfxram_w) AM_SHARE("gfxram")
ADDRESS_MAP_END
// Sub CPU
-static ADDRESS_MAP_START( bwp2_map, AS_PROGRAM, 8, bwing_state )
+ADDRESS_MAP_START(bwing_state::bwp2_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x0800, 0x0fff) AM_RAM
AM_RANGE(0x1800, 0x1803) AM_WRITE(bwp2_ctrl_w)
@@ -156,7 +156,7 @@ ADDRESS_MAP_END
// Sound CPU
-static ADDRESS_MAP_START( bwp3_map, AS_PROGRAM, 8, bwing_state )
+ADDRESS_MAP_START(bwing_state::bwp3_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x0200) AM_DEVWRITE("dac", dac_byte_interface, write)
AM_RANGE(0x1000, 0x1000) AM_WRITE(bwp3_nmiack_w)
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( bwp3_map, AS_PROGRAM, 8, bwing_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bwp3_io_map, AS_IO, 8, bwing_state )
+ADDRESS_MAP_START(bwing_state::bwp3_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("VBLANK") AM_WRITE(bwp3_u8F_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/by17.cpp b/src/mame/drivers/by17.cpp
index 345ec4a1b61..f77ade93520 100644
--- a/src/mame/drivers/by17.cpp
+++ b/src/mame/drivers/by17.cpp
@@ -80,6 +80,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(u11_timer);
TIMER_DEVICE_CALLBACK_MEMBER(timer_d_pulse);
void by17(machine_config &config);
+ void by17_map(address_map &map);
private:
uint8_t m_u10a;
uint8_t m_u10b;
@@ -112,7 +113,7 @@ private:
};
-static ADDRESS_MAP_START( by17_map, AS_PROGRAM, 8, by17_state )
+ADDRESS_MAP_START(by17_state::by17_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("pia_u10", pia6821_device, read, write)
diff --git a/src/mame/drivers/by35.cpp b/src/mame/drivers/by35.cpp
index 50ec0f7a503..df50eda822f 100644
--- a/src/mame/drivers/by35.cpp
+++ b/src/mame/drivers/by35.cpp
@@ -142,6 +142,8 @@ public:
void nuovo(machine_config &config);
void as2888(machine_config &config);
void as2888_audio(machine_config &config);
+ void by35_map(address_map &map);
+ void nuovo_map(address_map &map);
private:
uint8_t m_u10a;
uint8_t m_u10b;
@@ -182,7 +184,7 @@ private:
};
-static ADDRESS_MAP_START( by35_map, AS_PROGRAM, 8, by35_state )
+ADDRESS_MAP_START(by35_state::by35_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff) // A15 is not connected
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("pia_u10", pia6821_device, read, write)
@@ -191,7 +193,7 @@ static ADDRESS_MAP_START( by35_map, AS_PROGRAM, 8, by35_state )
AM_RANGE(0x1000, 0x7fff) AM_ROM // AM_REGION("roms", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nuovo_map, AS_PROGRAM, 8, by35_state )
+ADDRESS_MAP_START(by35_state::nuovo_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
// AM_RANGE(0x0000, 0x007f) AM_RAM // Schematics infer that the M6802 internal RAM is disabled.
AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("pia_u10", pia6821_device, read, write)
diff --git a/src/mame/drivers/by6803.cpp b/src/mame/drivers/by6803.cpp
index e7de817e37e..8b01220037d 100644
--- a/src/mame/drivers/by6803.cpp
+++ b/src/mame/drivers/by6803.cpp
@@ -65,6 +65,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(self_test);
TIMER_DEVICE_CALLBACK_MEMBER(pia0_timer);
void by6803(machine_config &config);
+ void by6803_io(address_map &map);
+ void by6803_map(address_map &map);
private:
uint8_t m_pia0_a;
uint8_t m_pia0_b;
@@ -88,14 +90,14 @@ private:
};
-static ADDRESS_MAP_START( by6803_map, AS_PROGRAM, 8, by6803_state )
+ADDRESS_MAP_START(by6803_state::by6803_map)
AM_RANGE(0x0020, 0x0023) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0040, 0x0043) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("nvram") // 6116 ram
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( by6803_io, AS_IO, 8, by6803_state )
+ADDRESS_MAP_START(by6803_state::by6803_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(port1_r, port1_w) // P10-P17
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(port2_r, port2_w) // P20-P24
ADDRESS_MAP_END
diff --git a/src/mame/drivers/by68701.cpp b/src/mame/drivers/by68701.cpp
index 425bfd15651..9e1bf7b5be0 100644
--- a/src/mame/drivers/by68701.cpp
+++ b/src/mame/drivers/by68701.cpp
@@ -13,6 +13,7 @@ public:
{ }
void by68701(machine_config &config);
+ void by68701_map(address_map &map);
protected:
// devices
@@ -25,7 +26,7 @@ public:
};
-static ADDRESS_MAP_START( by68701_map, AS_PROGRAM, 8, by68701_state )
+ADDRESS_MAP_START(by68701_state::by68701_map)
AM_RANGE(0x0000, 0xffff) AM_NOP
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x04ff) AM_RAM
diff --git a/src/mame/drivers/byvid.cpp b/src/mame/drivers/byvid.cpp
index 4745b9f3894..bfad98d992d 100644
--- a/src/mame/drivers/byvid.cpp
+++ b/src/mame/drivers/byvid.cpp
@@ -108,6 +108,11 @@ public:
uint32_t screen_update_granny(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void babypac(machine_config &config);
void granny(machine_config &config);
+ void granny_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void video_map(address_map &map);
private:
uint8_t m_mpu_to_vid;
uint8_t m_vid_to_mpu;
@@ -144,7 +149,7 @@ private:
};
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, by133_state ) // U9 MPU
+ADDRESS_MAP_START(by133_state::main_map) // U9 MPU
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // 128x8 in MC6810 U7 MPU
AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("pia_u10", pia6821_device, read, write) // PIA U10 MPU
@@ -157,7 +162,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, by133_state ) // U9 MPU
AM_RANGE(0x7000, 0x7fff) AM_ROM AM_REGION("roms", 0x1000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( video_map, AS_PROGRAM, 8, by133_state ) // U8 Vidiot
+ADDRESS_MAP_START(by133_state::video_map) // U8 Vidiot
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(sound_data_r,sound_data_w)
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pia_u7", pia6821_device, read, write) // PIA U7 Vidiot
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x0ffe) AM_DEVREADWRITE("crtc", tms9928a_device, vram_read, vram_write)
@@ -166,7 +171,7 @@ static ADDRESS_MAP_START( video_map, AS_PROGRAM, 8, by133_state ) // U8 Vidiot
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( granny_map, AS_PROGRAM, 8, by133_state )
+ADDRESS_MAP_START(by133_state::granny_map)
AM_RANGE(0x0000, 0x0001) AM_READWRITE(sound_data_r,sound_data_w)
AM_RANGE(0x0002, 0x0002) AM_DEVREADWRITE("crtc", tms9928a_device, vram_read, vram_write)
AM_RANGE(0x0003, 0x0003) AM_DEVREADWRITE("crtc", tms9928a_device, register_read, register_write)
@@ -179,11 +184,11 @@ static ADDRESS_MAP_START( granny_map, AS_PROGRAM, 8, by133_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, by133_state ) // U27 Vidiot
+ADDRESS_MAP_START(by133_state::sound_map) // U27 Vidiot
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, by133_state )
+ADDRESS_MAP_START(by133_state::sound_portmap)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_DEVWRITE("dac", dac_byte_interface, write) // P10-P17
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(m6803_port2_r, m6803_port2_w) // P20-P24 sound command in
ADDRESS_MAP_END
diff --git a/src/mame/drivers/bzone.cpp b/src/mame/drivers/bzone.cpp
index de95eb839d5..b2d60a47911 100644
--- a/src/mame/drivers/bzone.cpp
+++ b/src/mame/drivers/bzone.cpp
@@ -300,7 +300,7 @@ WRITE8_MEMBER(bzone_state::redbaron_joysound_w)
*
*************************************/
-static ADDRESS_MAP_START( bzone_map, AS_PROGRAM, 8, bzone_state )
+ADDRESS_MAP_START(bzone_state::bzone_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0")
@@ -320,7 +320,7 @@ static ADDRESS_MAP_START( bzone_map, AS_PROGRAM, 8, bzone_state )
AM_RANGE(0x3000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( redbaron_map, AS_PROGRAM, 8, bzone_state )
+ADDRESS_MAP_START(bzone_state::redbaron_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/c10.cpp b/src/mame/drivers/c10.cpp
index 6df6c1ee77b..32b2732b87b 100644
--- a/src/mame/drivers/c10.cpp
+++ b/src/mame/drivers/c10.cpp
@@ -40,6 +40,8 @@ public:
DECLARE_DRIVER_INIT(c10);
void c10(machine_config &config);
+ void c10_io(address_map &map);
+ void c10_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_shared_ptr<uint8_t> m_p_videoram;
@@ -50,7 +52,7 @@ private:
-static ADDRESS_MAP_START(c10_mem, AS_PROGRAM, 8, c10_state)
+ADDRESS_MAP_START(c10_state::c10_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("boot")
AM_RANGE(0x1000, 0x7fff) AM_RAM
@@ -59,7 +61,7 @@ static ADDRESS_MAP_START(c10_mem, AS_PROGRAM, 8, c10_state)
AM_RANGE(0xf0a2, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c10_io, AS_IO, 8, c10_state)
+ADDRESS_MAP_START(c10_state::c10_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/c128.cpp b/src/mame/drivers/c128.cpp
index f5df2eadbe3..d6e8e41db25 100644
--- a/src/mame/drivers/c128.cpp
+++ b/src/mame/drivers/c128.cpp
@@ -245,6 +245,12 @@ public:
void c128dcr(machine_config &config);
void c128dcrp(machine_config &config);
void c128d81(machine_config &config);
+ void m8502_mem(address_map &map);
+ void vdc_videoram_map(address_map &map);
+ void vic_colorram_map(address_map &map);
+ void vic_videoram_map(address_map &map);
+ void z80_io(address_map &map);
+ void z80_mem(address_map &map);
};
@@ -664,7 +670,7 @@ READ8_MEMBER( c128_state::vic_colorram_r )
// ADDRESS_MAP( z80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( z80_mem, AS_PROGRAM, 8, c128_state )
+ADDRESS_MAP_START(c128_state::z80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(z80_r, z80_w)
ADDRESS_MAP_END
@@ -673,7 +679,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( z80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( z80_io, AS_IO, 8, c128_state )
+ADDRESS_MAP_START(c128_state::z80_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(z80_io_r, z80_io_w)
ADDRESS_MAP_END
@@ -682,7 +688,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( m8502_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( m8502_mem, AS_PROGRAM, 8, c128_state )
+ADDRESS_MAP_START(c128_state::m8502_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -691,7 +697,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_videoram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_videoram_map, 0, 8, c128_state )
+ADDRESS_MAP_START(c128_state::vic_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(vic_videoram_r)
ADDRESS_MAP_END
@@ -700,7 +706,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_colorram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_colorram_map, 1, 8, c128_state )
+ADDRESS_MAP_START(c128_state::vic_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_READ(vic_colorram_r)
ADDRESS_MAP_END
@@ -709,7 +715,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vdc_videoram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vdc_videoram_map, 0, 8, c128_state )
+ADDRESS_MAP_START(c128_state::vdc_videoram_map)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/c64.cpp b/src/mame/drivers/c64.cpp
index f82a1aab10b..a713f146419 100644
--- a/src/mame/drivers/c64.cpp
+++ b/src/mame/drivers/c64.cpp
@@ -176,6 +176,9 @@ public:
void pal(machine_config &config);
void ntsc(machine_config &config);
void pet64(machine_config &config);
+ void c64_mem(address_map &map);
+ void vic_colorram_map(address_map &map);
+ void vic_videoram_map(address_map &map);
};
@@ -533,7 +536,7 @@ READ8_MEMBER( c64_state::vic_colorram_r )
// ADDRESS_MAP( c64_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( c64_mem, AS_PROGRAM, 8, c64_state )
+ADDRESS_MAP_START(c64_state::c64_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -542,7 +545,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_videoram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_videoram_map, 0, 8, c64_state )
+ADDRESS_MAP_START(c64_state::vic_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(vic_videoram_r)
ADDRESS_MAP_END
@@ -551,7 +554,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_colorram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_colorram_map, 1, 8, c64_state )
+ADDRESS_MAP_START(c64_state::vic_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_READ(vic_colorram_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/c65.cpp b/src/mame/drivers/c65.cpp
index d3bd76c4f4e..9aeca09fbd4 100644
--- a/src/mame/drivers/c65.cpp
+++ b/src/mame/drivers/c65.cpp
@@ -99,6 +99,7 @@ public:
INTERRUPT_GEN_MEMBER(vic3_vblank_irq);
void c65(machine_config &config);
+ void c65_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -483,7 +484,7 @@ READ8_MEMBER(c65_state::dummy_r)
return 0;
}
-static ADDRESS_MAP_START( c65_map, AS_PROGRAM, 8, c65_state )
+ADDRESS_MAP_START(c65_state::c65_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM AM_SHARE("wram") // TODO: bank
AM_RANGE(0x0c800, 0x0cfff) AM_ROM AM_REGION("maincpu", 0xc800)
AM_RANGE(0x0d000, 0x0d07f) AM_READWRITE(vic4567_dummy_r,vic4567_dummy_w) // 0x0d000, 0x0d07f VIC-4567
diff --git a/src/mame/drivers/c80.cpp b/src/mame/drivers/c80.cpp
index 3b66b0f06cc..3411bf15fda 100644
--- a/src/mame/drivers/c80.cpp
+++ b/src/mame/drivers/c80.cpp
@@ -63,13 +63,13 @@ data of next byte, and so on.
/* Memory Maps */
-static ADDRESS_MAP_START( c80_mem, AS_PROGRAM, 8, c80_state )
+ADDRESS_MAP_START(c80_state::c80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x0bff) AM_MIRROR(0x400) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c80_io, AS_IO, 8, c80_state )
+ADDRESS_MAP_START(c80_state::c80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7c, 0x7f) AM_DEVREADWRITE(Z80PIO2_TAG, z80pio_device, read, write)
AM_RANGE(0xbc, 0xbf) AM_DEVREADWRITE(Z80PIO1_TAG, z80pio_device, read, write)
diff --git a/src/mame/drivers/c900.cpp b/src/mame/drivers/c900.cpp
index 34e77eff3d0..afca5e905a1 100644
--- a/src/mame/drivers/c900.cpp
+++ b/src/mame/drivers/c900.cpp
@@ -47,22 +47,25 @@ public:
void kbd_put(u8 data);
void c900(machine_config &config);
+ void data_map(address_map &map);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_term_data;
required_device<cpu_device> m_maincpu;
required_device<generic_terminal_device> m_terminal;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 16, c900_state)
+ADDRESS_MAP_START(c900_state::mem_map)
AM_RANGE(0x00000, 0x07fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_map, AS_DATA, 16, c900_state)
+ADDRESS_MAP_START(c900_state::data_map)
AM_RANGE(0x00000, 0x07fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x08000, 0x6ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 16, c900_state)
+ADDRESS_MAP_START(c900_state::io_map)
AM_RANGE(0x0000, 0x007f) AM_DEVREADWRITE8("cio", z8036_device, read, write, 0x00ff)
//AM_RANGE(0x0100, 0x011f) AM_DEVREADWRITE8("scc", scc8030_device, zbus_r, zbus_w, 0x00ff) // range for one channel
AM_RANGE(0x0100, 0x0101) AM_READ(stat_r)
diff --git a/src/mame/drivers/cabal.cpp b/src/mame/drivers/cabal.cpp
index 2dba4a9880f..3a765ee23a4 100644
--- a/src/mame/drivers/cabal.cpp
+++ b/src/mame/drivers/cabal.cpp
@@ -102,7 +102,7 @@ WRITE16_MEMBER(cabal_state::cabalbl_sound_irq_trigger_word_w)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, cabal_state )
+ADDRESS_MAP_START(cabal_state::main_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x40000, 0x437ff) AM_RAM
AM_RANGE(0x43800, 0x43fff) AM_RAM AM_SHARE("spriteram")
@@ -122,7 +122,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( trackball_main_map, AS_PROGRAM, 16, cabal_state )
+ADDRESS_MAP_START(cabal_state::trackball_main_map)
AM_IMPORT_FROM(main_map)
AM_RANGE(0xa0008, 0xa000f) AM_DEVREAD8("upd4701l", upd4701_device, read_xy, 0x00ff)
AM_RANGE(0xa0008, 0xa000f) AM_DEVREAD8("upd4701h", upd4701_device, read_xy, 0xff00)
@@ -132,7 +132,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabalbl_main_map, AS_PROGRAM, 16, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl_main_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x40000, 0x437ff) AM_RAM
AM_RANGE(0x43800, 0x43fff) AM_RAM AM_SHARE("spriteram")
@@ -172,7 +172,7 @@ WRITE8_MEMBER(cabal_state::cabalbl_coin_w)
//data & 0x40? video enable?
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, data_r)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4001, 0x4001) AM_DEVWRITE("seibu_sound", seibu_sound_device, irq_clear_w)
@@ -191,12 +191,12 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cabal_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_decrypted_opcodes_map, AS_OPCODES, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::sound_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("audiocpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabalbl_sound_map, AS_PROGRAM, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x2fff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
@@ -211,7 +211,7 @@ static ADDRESS_MAP_START( cabalbl_sound_map, AS_PROGRAM, 8, cabal_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabalbl2_sound_map, AS_PROGRAM, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl2_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4001, 0x4001) AM_DEVWRITE("seibu_sound", seibu_sound_device, irq_clear_w)
@@ -230,7 +230,7 @@ static ADDRESS_MAP_START( cabalbl2_sound_map, AS_PROGRAM, 8, cabal_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabalbl2_predecrypted_opcodes_map, AS_OPCODES, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl2_predecrypted_opcodes_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("audiocpu", 0x2000)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("audiocpu", 0x8000)
ADDRESS_MAP_END
@@ -253,21 +253,21 @@ WRITE8_MEMBER(cabal_state::cabalbl_2_adpcm_w)
m_msm2->vclk_w(1);
m_msm2->vclk_w(0);
}
-static ADDRESS_MAP_START( cabalbl_talk1_map, AS_PROGRAM, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl_talk1_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabalbl_talk1_portmap, AS_IO, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl_talk1_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
AM_RANGE(0x01, 0x01) AM_WRITE(cabalbl_1_adpcm_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabalbl_talk2_map, AS_PROGRAM, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl_talk2_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabalbl_talk2_portmap, AS_IO, 8, cabal_state )
+ADDRESS_MAP_START(cabal_state::cabalbl_talk2_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch3", generic_latch_8_device, read)
AM_RANGE(0x01, 0x01) AM_WRITE(cabalbl_2_adpcm_w)
@@ -498,7 +498,7 @@ MACHINE_CONFIG_START(cabal_state::cabal)
MCFG_CPU_ADD("audiocpu", Z80, XTAL(3'579'545)) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(sound_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(sound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(sound_decrypted_opcodes_map)
MCFG_DEVICE_ADD("sei80bu", SEI80BU, 0)
MCFG_DEVICE_ROM("audiocpu")
@@ -553,7 +553,7 @@ MACHINE_CONFIG_DERIVED(cabal_state::cabalbl2, cabal)
MCFG_DEVICE_MODIFY("audiocpu")
MCFG_CPU_PROGRAM_MAP(cabalbl2_sound_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(cabalbl2_predecrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(cabalbl2_predecrypted_opcodes_map)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cabaret.cpp b/src/mame/drivers/cabaret.cpp
index 988b29f111d..83587feb178 100644
--- a/src/mame/drivers/cabaret.cpp
+++ b/src/mame/drivers/cabaret.cpp
@@ -71,6 +71,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void cabaret(machine_config &config);
+ void cabaret_map(address_map &map);
+ void cabaret_portmap(address_map &map);
};
@@ -187,12 +189,12 @@ WRITE8_MEMBER(cabaret_state::ppi2_c_w)
-static ADDRESS_MAP_START( cabaret_map, AS_PROGRAM, 8, cabaret_state )
+ADDRESS_MAP_START(cabaret_state::cabaret_map)
AM_RANGE( 0x00000, 0x0efff ) AM_ROM
AM_RANGE( 0x0f000, 0x0ffff ) AM_RAM AM_REGION("maincpu", 0xf000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cabaret_portmap, AS_IO, 8, cabaret_state )
+ADDRESS_MAP_START(cabaret_state::cabaret_portmap)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs
AM_RANGE( 0x0080, 0x0083 ) AM_DEVREADWRITE("ppi1", i8255_device, read, write)
diff --git a/src/mame/drivers/calchase.cpp b/src/mame/drivers/calchase.cpp
index 6c6a757af6a..fcf7e4a9bb7 100644
--- a/src/mame/drivers/calchase.cpp
+++ b/src/mame/drivers/calchase.cpp
@@ -175,6 +175,8 @@ public:
void intel82439tx_init();
void calchase(machine_config &config);
void hostinv(machine_config &config);
+ void calchase_io(address_map &map);
+ void calchase_map(address_map &map);
};
// Intel 82439TX System Controller (MTXC)
@@ -380,7 +382,7 @@ READ16_MEMBER(calchase_state::calchase_iocard5_r)
}
-static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32, calchase_state )
+ADDRESS_MAP_START(calchase_state::calchase_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", trident_vga_device, mem_r, mem_w, 0xffffffff) // VGA VRAM
AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
@@ -415,7 +417,7 @@ static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32, calchase_state )
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( calchase_io, AS_IO, 32, calchase_state )
+ADDRESS_MAP_START(calchase_state::calchase_io)
AM_IMPORT_FROM(pcat32_io_common)
//AM_RANGE(0x00e8, 0x00eb) AM_NOP
AM_RANGE(0x00e8, 0x00ef) AM_NOP //AMI BIOS write to this ports as delays between I/O ports operations sending al value -> NEWIODELAY
diff --git a/src/mame/drivers/calcune.cpp b/src/mame/drivers/calcune.cpp
index 0852f2b2422..d71431ae52b 100644
--- a/src/mame/drivers/calcune.cpp
+++ b/src/mame/drivers/calcune.cpp
@@ -55,6 +55,7 @@ public:
uint32_t screen_update_calcune(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void calcune(machine_config &config);
+ void calcune_map(address_map &map);
private:
int vdp_state;
@@ -122,7 +123,7 @@ WRITE16_MEMBER(calcune_state::cal_vdp_w)
m_vdp2->vdp_w(space, offset, data, mem_mask);
}
-static ADDRESS_MAP_START( calcune_map, AS_PROGRAM, 16, calcune_state )
+ADDRESS_MAP_START(calcune_state::calcune_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x700000, 0x700001) AM_READ(cal_700000_r)
diff --git a/src/mame/drivers/calomega.cpp b/src/mame/drivers/calomega.cpp
index fa2fcfb8f9e..6760a72f17b 100644
--- a/src/mame/drivers/calomega.cpp
+++ b/src/mame/drivers/calomega.cpp
@@ -822,7 +822,7 @@ WRITE8_MEMBER(calomega_state::lamps_905_w)
* Memory map information *
*************************************************/
-static ADDRESS_MAP_START( sys903_map, AS_PROGRAM, 8, calomega_state )
+ADDRESS_MAP_START(calomega_state::sys903_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0840, 0x0841) AM_DEVWRITE("ay8912", ay8910_device, address_data_w)
@@ -836,7 +836,7 @@ static ADDRESS_MAP_START( sys903_map, AS_PROGRAM, 8, calomega_state )
AM_RANGE(0x1800, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s903mod_map, AS_PROGRAM, 8, calomega_state )
+ADDRESS_MAP_START(calomega_state::s903mod_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0840, 0x0841) AM_DEVWRITE("ay8912", ay8910_device, address_data_w)
@@ -849,7 +849,7 @@ static ADDRESS_MAP_START( s903mod_map, AS_PROGRAM, 8, calomega_state )
AM_RANGE(0x1800, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sys905_map, AS_PROGRAM, 8, calomega_state )
+ADDRESS_MAP_START(calomega_state::sys905_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x1040, 0x1041) AM_DEVWRITE("ay8912", ay8910_device, address_data_w)
@@ -862,7 +862,7 @@ static ADDRESS_MAP_START( sys905_map, AS_PROGRAM, 8, calomega_state )
AM_RANGE(0x2800, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sys906_map, AS_PROGRAM, 8, calomega_state )
+ADDRESS_MAP_START(calomega_state::sys906_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x280c, 0x280f) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x2824, 0x2827) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
diff --git a/src/mame/drivers/calorie.cpp b/src/mame/drivers/calorie.cpp
index 54fc318a2d0..91670af1a29 100644
--- a/src/mame/drivers/calorie.cpp
+++ b/src/mame/drivers/calorie.cpp
@@ -128,6 +128,10 @@ public:
optional_shared_ptr<uint8_t> m_decrypted_opcodes;
void caloriee(machine_config &config);
void calorie(machine_config &config);
+ void calorie_map(address_map &map);
+ void calorie_sound_io_map(address_map &map);
+ void calorie_sound_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
};
@@ -260,7 +264,7 @@ WRITE8_MEMBER(calorie_state::bogus_w)
*
*************************************/
-static ADDRESS_MAP_START( calorie_map, AS_PROGRAM, 8, calorie_state )
+ADDRESS_MAP_START(calorie_state::calorie_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("ram")
@@ -276,19 +280,19 @@ static ADDRESS_MAP_START( calorie_map, AS_PROGRAM, 8, calorie_state )
AM_RANGE(0xf800, 0xf800) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, calorie_state )
+ADDRESS_MAP_START(calorie_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( calorie_sound_map, AS_PROGRAM, 8, calorie_state )
+ADDRESS_MAP_START(calorie_state::calorie_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc000, 0xc000) AM_READ(calorie_soundlatch_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( calorie_sound_io_map, AS_IO, 8, calorie_state )
+ADDRESS_MAP_START(calorie_state::calorie_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// 3rd ?
AM_RANGE(0x00, 0xff) AM_WRITE(bogus_w)
@@ -460,7 +464,7 @@ MACHINE_CONFIG_START(calorie_state::calorie)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80,4000000) /* 4 MHz */
MCFG_CPU_PROGRAM_MAP(calorie_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", calorie_state, irq0_line_hold)
MCFG_CPU_ADD("audiocpu", Z80,3000000) /* 3 MHz */
@@ -500,7 +504,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(calorie_state::caloriee, calorie)
MCFG_CPU_REPLACE("maincpu", SEGA_317_0004,4000000) /* 4 MHz */
MCFG_CPU_PROGRAM_MAP(calorie_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", calorie_state, irq0_line_hold)
MCFG_SEGAZ80_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/camplynx.cpp b/src/mame/drivers/camplynx.cpp
index c6031aca3d8..6e16b21cb9d 100644
--- a/src/mame/drivers/camplynx.cpp
+++ b/src/mame/drivers/camplynx.cpp
@@ -172,6 +172,11 @@ public:
void lynx128k(machine_config &config);
void lynx48k(machine_config &config);
void lynx96k(machine_config &config);
+ void lynx128k_io(address_map &map);
+ void lynx128k_mem(address_map &map);
+ void lynx48k_io(address_map &map);
+ void lynx48k_mem(address_map &map);
+ void lynx96k_io(address_map &map);
private:
uint8_t m_port58;
uint8_t m_port80;
@@ -416,7 +421,7 @@ d0 = read from bank 4 */
}
}
-static ADDRESS_MAP_START( lynx48k_mem, AS_PROGRAM, 8, camplynx_state )
+ADDRESS_MAP_START(camplynx_state::lynx48k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x1fff) AM_READ_BANK("bankr1")
AM_RANGE(0x2000,0x3fff) AM_READ_BANK("bankr2")
@@ -429,7 +434,7 @@ static ADDRESS_MAP_START( lynx48k_mem, AS_PROGRAM, 8, camplynx_state )
AM_RANGE(0x0000,0xffff) AM_WRITE(bank6_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lynx128k_mem, AS_PROGRAM, 8, camplynx_state )
+ADDRESS_MAP_START(camplynx_state::lynx128k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x1fff) AM_READ_BANK("bankr1")
AM_RANGE(0x2000,0x3fff) AM_READ_BANK("bankr2")
@@ -442,7 +447,7 @@ static ADDRESS_MAP_START( lynx128k_mem, AS_PROGRAM, 8, camplynx_state )
AM_RANGE(0x0000,0xffff) AM_WRITE(bank1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lynx48k_io, AS_IO, 8, camplynx_state )
+ADDRESS_MAP_START(camplynx_state::lynx48k_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x007f,0x007f) AM_MIRROR(0xff80) AM_WRITE(port7f_w)
AM_RANGE(0x0080,0x0080) AM_MIRROR(0xff00) AM_WRITE(port80_w)
@@ -461,14 +466,14 @@ static ADDRESS_MAP_START( lynx48k_io, AS_IO, 8, camplynx_state )
AM_RANGE(0x0087,0x0087) AM_MIRROR(0xff00) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lynx96k_io, AS_IO, 8, camplynx_state )
+ADDRESS_MAP_START(camplynx_state::lynx96k_io)
AM_IMPORT_FROM(lynx48k_io)
AM_RANGE(0x0050,0x0053) AM_MIRROR(0xff80) AM_DEVREAD("fdc", fd1793_device, read)
AM_RANGE(0x0054,0x0057) AM_MIRROR(0xff80) AM_DEVWRITE("fdc", fd1793_device, write)
AM_RANGE(0x0058,0x0058) AM_MIRROR(0xff80) AM_WRITE(port58_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lynx128k_io, AS_IO, 8, camplynx_state )
+ADDRESS_MAP_START(camplynx_state::lynx128k_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0050,0x0053) AM_MIRROR(0xff80) AM_DEVREAD("fdc", fd1793_device, read)
AM_RANGE(0x0054,0x0057) AM_MIRROR(0xff80) AM_DEVWRITE("fdc", fd1793_device, write)
diff --git a/src/mame/drivers/candela.cpp b/src/mame/drivers/candela.cpp
index 75cd513e762..50becbb886b 100644
--- a/src/mame/drivers/candela.cpp
+++ b/src/mame/drivers/candela.cpp
@@ -156,6 +156,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( usrpia_cb2_w);
DECLARE_WRITE_LINE_MEMBER (write_acia_clock);
void can09t(machine_config &config);
+ void can09t_map(address_map &map);
protected:
required_device<pia6821_device> m_syspia;
required_device<pia6821_device> m_usrpia;
@@ -470,7 +471,7 @@ WRITE_LINE_MEMBER (can09t_state::write_acia_clock){
* *0xe000-0xffff PROM monitor 0xe000-0xffff PROM monitor
*/
-static ADDRESS_MAP_START( can09t_map, AS_PROGRAM, 8, can09t_state )
+ADDRESS_MAP_START(can09t_state::can09t_map)
// Everything is dynamically and asymetrically mapped through the PAL decoded by read/write
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -511,6 +512,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( pia1_cb2_w);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void can09(machine_config &config);
+ void can09_map(address_map &map);
protected:
required_device<pia6821_device> m_pia1;
required_device<ram_device> m_ram;
@@ -623,7 +625,7 @@ INPUT_PORTS_END
// traced and guessed from pcb images and debugger
// It is very likelly that this is a PIA based dynamic address map, needs more analysis
-static ADDRESS_MAP_START( can09_map, AS_PROGRAM, 8, can09_state )
+ADDRESS_MAP_START(can09_state::can09_map)
/*
* Port A=0x18 B=0x20 erase 0-7fff
* Port A=0x18 B=0x30 erase 0-7fff
diff --git a/src/mame/drivers/canon_s80.cpp b/src/mame/drivers/canon_s80.cpp
index cf406de250e..3ace908cbbf 100644
--- a/src/mame/drivers/canon_s80.cpp
+++ b/src/mame/drivers/canon_s80.cpp
@@ -29,10 +29,11 @@ public:
DECLARE_DRIVER_INIT(canons80);
void canons80(machine_config &config);
+ void canons80_map(address_map &map);
};
-static ADDRESS_MAP_START(canons80_map, AS_PROGRAM, 8, canons80_state )
+ADDRESS_MAP_START(canons80_state::canons80_map)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/canyon.cpp b/src/mame/drivers/canyon.cpp
index 2a23f89dd2e..f738a160ea9 100644
--- a/src/mame/drivers/canyon.cpp
+++ b/src/mame/drivers/canyon.cpp
@@ -120,7 +120,7 @@ WRITE_LINE_MEMBER(canyon_state::led2_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, canyon_state )
+ADDRESS_MAP_START(canyon_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x100) AM_RAM
AM_RANGE(0x0400, 0x0401) AM_WRITE(canyon_motor_w)
diff --git a/src/mame/drivers/capbowl.cpp b/src/mame/drivers/capbowl.cpp
index f716a011ab2..e2bf287c181 100644
--- a/src/mame/drivers/capbowl.cpp
+++ b/src/mame/drivers/capbowl.cpp
@@ -208,7 +208,7 @@ WRITE8_MEMBER(capbowl_state::sndcmd_w)
*
*************************************/
-static ADDRESS_MAP_START( capbowl_map, AS_PROGRAM, 8, capbowl_state )
+ADDRESS_MAP_START(capbowl_state::capbowl_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x4000) AM_WRITEONLY AM_SHARE("rowaddress")
AM_RANGE(0x4800, 0x4800) AM_WRITE(capbowl_rom_select_w)
@@ -222,7 +222,7 @@ static ADDRESS_MAP_START( capbowl_map, AS_PROGRAM, 8, capbowl_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bowlrama_map, AS_PROGRAM, 8, capbowl_state )
+ADDRESS_MAP_START(capbowl_state::bowlrama_map)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(bowlrama_blitter_r, bowlrama_blitter_w)
AM_RANGE(0x4000, 0x4000) AM_WRITEONLY AM_SHARE("rowaddress")
AM_RANGE(0x5000, 0x57ff) AM_RAM AM_SHARE("nvram")
@@ -242,7 +242,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, capbowl_state )
+ADDRESS_MAP_START(capbowl_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x2000, 0x2000) AM_WRITENOP /* watchdog */
diff --git a/src/mame/drivers/capcom.cpp b/src/mame/drivers/capcom.cpp
index cbaac156f1e..ce5385cdfce 100644
--- a/src/mame/drivers/capcom.cpp
+++ b/src/mame/drivers/capcom.cpp
@@ -17,6 +17,7 @@ public:
{ }
void capcom(machine_config &config);
+ void capcom_map(address_map &map);
protected:
// devices
@@ -29,7 +30,7 @@ public:
};
-static ADDRESS_MAP_START( capcom_map, AS_PROGRAM, 16, capcom_state )
+ADDRESS_MAP_START(capcom_state::capcom_map)
AM_RANGE(0x0000, 0xffffff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/capr1.cpp b/src/mame/drivers/capr1.cpp
index 4b7b5aba454..77aa5e1ae58 100644
--- a/src/mame/drivers/capr1.cpp
+++ b/src/mame/drivers/capr1.cpp
@@ -51,6 +51,7 @@ public:
required_device<cpu_device> m_maincpu;
void cspin2(machine_config &config);
+ void cspin2_map(address_map &map);
};
WRITE8_MEMBER(capr1_state::output_w)
@@ -65,7 +66,7 @@ WRITE8_MEMBER(capr1_state::output_w)
***************************************************************************/
-static ADDRESS_MAP_START( cspin2_map, AS_PROGRAM, 8, capr1_state )
+ADDRESS_MAP_START(capr1_state::cspin2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa00f) AM_DEVREADWRITE("te7750", te7750_device, read, write)
diff --git a/src/mame/drivers/caprcyc.cpp b/src/mame/drivers/caprcyc.cpp
index e2dbaa2e570..1102705697f 100644
--- a/src/mame/drivers/caprcyc.cpp
+++ b/src/mame/drivers/caprcyc.cpp
@@ -29,6 +29,7 @@ public:
required_device<cpu_device> m_maincpu;
void caprcyc(machine_config &config);
+ void caprcyc_map(address_map &map);
};
@@ -38,7 +39,7 @@ public:
***************************************************************************/
-static ADDRESS_MAP_START( caprcyc_map, AS_PROGRAM, 32, caprcyc_state ) // TODO...
+ADDRESS_MAP_START(caprcyc_state::caprcyc_map) // TODO...
AM_RANGE(0x00000000, 0x0003ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cardline.cpp b/src/mame/drivers/cardline.cpp
index 6a9a5cd0839..2c3e4d3ce8b 100644
--- a/src/mame/drivers/cardline.cpp
+++ b/src/mame/drivers/cardline.cpp
@@ -76,6 +76,8 @@ public:
required_device<palette_device> m_palette;
required_device<screen_device> m_screen;
void cardline(machine_config &config);
+ void mem_io(address_map &map);
+ void mem_prg(address_map &map);
};
void cardline_state::machine_start()
@@ -210,11 +212,11 @@ WRITE8_MEMBER(cardline_state::lamps_w)
output().set_lamp_value(7,(data >> 7) & 1);
}
-static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8, cardline_state )
+ADDRESS_MAP_START(cardline_state::mem_prg)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mem_io, AS_IO, 8, cardline_state )
+ADDRESS_MAP_START(cardline_state::mem_io)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2003, 0x2003) AM_READ_PORT("IN0")
AM_RANGE(0x2005, 0x2005) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/carjmbre.cpp b/src/mame/drivers/carjmbre.cpp
index 7feb0502cf3..6840af31d14 100644
--- a/src/mame/drivers/carjmbre.cpp
+++ b/src/mame/drivers/carjmbre.cpp
@@ -86,6 +86,9 @@ public:
TILE_GET_INFO_MEMBER(get_tile_info);
void carjmbre(machine_config &config);
+ void main_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
@@ -238,7 +241,7 @@ WRITE8_MEMBER(carjmbre_state::flipscreen_w)
flip_screen_set(data & 1);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, carjmbre_state )
+ADDRESS_MAP_START(carjmbre_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8803, 0x8803) AM_WRITE(nmi_enable_w)
AM_RANGE(0x8805, 0x8805) AM_WRITE(bgcolor_w)
@@ -254,12 +257,12 @@ ADDRESS_MAP_END
// audiocpu side
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, carjmbre_state )
+ADDRESS_MAP_START(carjmbre_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM // 6116
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, carjmbre_state )
+ADDRESS_MAP_START(carjmbre_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x20, 0x21) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/carpolo.cpp b/src/mame/drivers/carpolo.cpp
index 8dada9fdc6d..e2a2c6ecf44 100644
--- a/src/mame/drivers/carpolo.cpp
+++ b/src/mame/drivers/carpolo.cpp
@@ -34,7 +34,7 @@
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, carpolo_state )
+ADDRESS_MAP_START(carpolo_state::main_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x3000, 0x30ff) AM_WRITEONLY AM_SHARE("alpharam")
AM_RANGE(0x4000, 0x400f) AM_WRITEONLY AM_SHARE("spriteram")
diff --git a/src/mame/drivers/carrera.cpp b/src/mame/drivers/carrera.cpp
index ee1657613d0..b7a9cce6b41 100644
--- a/src/mame/drivers/carrera.cpp
+++ b/src/mame/drivers/carrera.cpp
@@ -74,10 +74,12 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void carrera(machine_config &config);
+ void carrera_map(address_map &map);
+ void io_map(address_map &map);
};
-static ADDRESS_MAP_START( carrera_map, AS_PROGRAM, 8, carrera_state )
+ADDRESS_MAP_START(carrera_state::carrera_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
AM_RANGE(0xe800, 0xe800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -85,7 +87,7 @@ static ADDRESS_MAP_START( carrera_map, AS_PROGRAM, 8, carrera_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("tileram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, carrera_state )
+ADDRESS_MAP_START(carrera_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/casloopy.cpp b/src/mame/drivers/casloopy.cpp
index f452fb937c9..7c4eaf05e1b 100644
--- a/src/mame/drivers/casloopy.cpp
+++ b/src/mame/drivers/casloopy.cpp
@@ -199,6 +199,8 @@ public:
DECLARE_WRITE8_MEMBER(bitmap_w);
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(loopy_cart);
void casloopy(machine_config &config);
+ void casloopy_map(address_map &map);
+ void casloopy_sub_map(address_map &map);
};
@@ -413,7 +415,7 @@ READ32_MEMBER(casloopy_state::cart_r)
}
-static ADDRESS_MAP_START( casloopy_map, AS_PROGRAM, 32, casloopy_state )
+ADDRESS_MAP_START(casloopy_state::casloopy_map)
AM_RANGE(0x00000000, 0x00007fff) AM_RAM AM_SHARE("bios_rom")
AM_RANGE(0x01000000, 0x0107ffff) AM_RAM AM_SHARE("wram")// stack pointer points here
AM_RANGE(0x04000000, 0x0401ffff) AM_READWRITE8(bitmap_r, bitmap_w, 0xffffffff)
@@ -432,7 +434,7 @@ static ADDRESS_MAP_START( casloopy_map, AS_PROGRAM, 32, casloopy_state )
ADDRESS_MAP_END
#if 0
-static ADDRESS_MAP_START( casloopy_sub_map, AS_PROGRAM, 16, casloopy_state )
+ADDRESS_MAP_START(casloopy_state::casloopy_sub_map)
AM_RANGE(0xf80000, 0xffffff) AM_ROM AM_REGION("subcpu",0)
ADDRESS_MAP_END
#endif
diff --git a/src/mame/drivers/castle.cpp b/src/mame/drivers/castle.cpp
index 5169120e7f0..4fc65727059 100644
--- a/src/mame/drivers/castle.cpp
+++ b/src/mame/drivers/castle.cpp
@@ -57,6 +57,9 @@ public:
void castle_V1rvE(machine_config &config);
void castle_V2rvA(machine_config &config);
+ void V1rvE_mastermap(address_map &map);
+ void V1rvE_slavemap(address_map &map);
+ void V2rvA_map(address_map &map);
protected:
// devices
@@ -64,11 +67,11 @@ protected:
};
-static ADDRESS_MAP_START( V1rvE_mastermap, AS_PROGRAM, 8, castle_state )
+ADDRESS_MAP_START(castle_state::V1rvE_mastermap)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( V1rvE_slavemap, AS_PROGRAM, 8, castle_state )
+ADDRESS_MAP_START(castle_state::V1rvE_slavemap)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
@@ -88,7 +91,7 @@ MACHINE_CONFIG_END
-static ADDRESS_MAP_START( V2rvA_map, AS_PROGRAM, 8, castle_state )
+ADDRESS_MAP_START(castle_state::V2rvA_map)
AM_RANGE(0x2000, 0xffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/caswin.cpp b/src/mame/drivers/caswin.cpp
index 282b40962b2..bdd3bdd3783 100644
--- a/src/mame/drivers/caswin.cpp
+++ b/src/mame/drivers/caswin.cpp
@@ -102,6 +102,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void vvillage(machine_config &config);
+ void vvillage_io(address_map &map);
+ void vvillage_mem(address_map &map);
};
@@ -189,7 +191,7 @@ WRITE8_MEMBER(caswin_state::vvillage_lamps_w)
output().set_led_value(4, data & 0x10);
}
-static ADDRESS_MAP_START( vvillage_mem, AS_PROGRAM, 8, caswin_state )
+ADDRESS_MAP_START(caswin_state::vvillage_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_READ(vvillage_rng_r) //accessed by caswin only
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram")
@@ -197,7 +199,7 @@ static ADDRESS_MAP_START( vvillage_mem, AS_PROGRAM, 8, caswin_state )
AM_RANGE(0xf800, 0xfbff) AM_RAM_WRITE(sc0_attr_w) AM_SHARE("sc0_attr")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vvillage_io, AS_IO, 8, caswin_state )
+ADDRESS_MAP_START(caswin_state::vvillage_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/cat.cpp b/src/mame/drivers/cat.cpp
index 1044567d260..ddb9b0ac99c 100644
--- a/src/mame/drivers/cat.cpp
+++ b/src/mame/drivers/cat.cpp
@@ -353,6 +353,7 @@ public:
IRQ_CALLBACK_MEMBER(cat_int_ack);
void cat(machine_config &config);
+ void cat_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -751,7 +752,7 @@ a23 a22 a21 a20 a19 a18 a17 a16 a15 a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4
*/
-static ADDRESS_MAP_START(cat_mem, AS_PROGRAM, 16, cat_state)
+ADDRESS_MAP_START(cat_state::cat_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_MIRROR(0x180000) // 256 KB ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("svram") AM_MIRROR(0x18C000)// SRAM powered by battery
diff --git a/src/mame/drivers/cave.cpp b/src/mame/drivers/cave.cpp
index 65281f7109a..b9f728aa172 100644
--- a/src/mame/drivers/cave.cpp
+++ b/src/mame/drivers/cave.cpp
@@ -434,7 +434,7 @@ WRITE16_MEMBER(cave_state::metmqstr_eeprom_msb_w)
Dangun Feveron
***************************************************************************/
-static ADDRESS_MAP_START( dfeveron_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::dfeveron_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x00ff) // YMZ280
@@ -459,7 +459,7 @@ ADDRESS_MAP_END
Dodonpachi
***************************************************************************/
-static ADDRESS_MAP_START( ddonpach_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::ddonpach_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x00ff) // YMZ280
@@ -497,7 +497,7 @@ READ16_MEMBER(cave_state::donpachi_videoregs_r)
}
}
-static ADDRESS_MAP_START( donpachi_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::donpachi_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x200000, 0x207fff) AM_RAM_WRITE(cave_vram_1_w) AM_SHARE("vram.1") // Layer 1
@@ -523,7 +523,7 @@ ADDRESS_MAP_END
Esprade
***************************************************************************/
-static ADDRESS_MAP_START( esprade_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::esprade_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x00ff) // YMZ280
@@ -548,7 +548,7 @@ ADDRESS_MAP_END
Gaia Crusaders
***************************************************************************/
-static ADDRESS_MAP_START( gaia_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::gaia_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x00ff) // YMZ280
@@ -578,7 +578,7 @@ ADDRESS_MAP_END
Guwange
***************************************************************************/
-static ADDRESS_MAP_START( guwange_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::guwange_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x30007f) AM_WRITEONLY AM_SHARE("videoregs.0") // Video Regs
@@ -605,7 +605,7 @@ ADDRESS_MAP_END
Hotdog Storm
***************************************************************************/
-static ADDRESS_MAP_START( hotdogst_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::hotdogst_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x300000, 0x30ffff) AM_RAM // RAM
/**/AM_RANGE(0x408000, 0x408fff) AM_RAM AM_SHARE("paletteram.0") // Palette
@@ -693,7 +693,7 @@ CUSTOM_INPUT_MEMBER(cave_state::korokoro_hopper_r)
}
-static ADDRESS_MAP_START( korokoro_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::korokoro_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x107fff) AM_WRITE(cave_vram_0_w) AM_SHARE("vram.0") // Layer 0
AM_RANGE(0x140000, 0x140005) AM_WRITEONLY AM_SHARE("vctrl.0") // Layer 0 Control
@@ -711,7 +711,7 @@ static ADDRESS_MAP_START( korokoro_map, AS_PROGRAM, 16, cave_state )
AM_RANGE(0x300000, 0x30ffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crusherm_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::crusherm_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x107fff) AM_WRITE(cave_vram_0_w) AM_SHARE("vram.0") // Layer 0
AM_RANGE(0x140000, 0x140005) AM_WRITEONLY AM_SHARE("vctrl.0") // Layer 0 Control
@@ -732,7 +732,7 @@ ADDRESS_MAP_END
Mazinger Z
***************************************************************************/
-static ADDRESS_MAP_START( mazinger_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::mazinger_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
/**/AM_RANGE(0x200000, 0x207fff) AM_RAM AM_SHARE("spriteram.0") // Sprites
@@ -757,7 +757,7 @@ ADDRESS_MAP_END
Metamoqester
***************************************************************************/
-static ADDRESS_MAP_START( metmqstr_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::metmqstr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x17ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x27ffff) AM_ROM // ROM
@@ -866,7 +866,7 @@ WRITE16_MEMBER(cave_state::ppsatan_out_w)
// popmessage("OUT %04x", data);
}
-static ADDRESS_MAP_START( ppsatan_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::ppsatan_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040000, 0x04ffff) AM_RAM // RAM
@@ -938,7 +938,7 @@ WRITE16_MEMBER(cave_state::pwrinst2_vctrl_1_w){ vctrl_w(space, offset, data, mem
WRITE16_MEMBER(cave_state::pwrinst2_vctrl_2_w){ vctrl_w(space, offset, data, mem_mask, 2); }
WRITE16_MEMBER(cave_state::pwrinst2_vctrl_3_w){ vctrl_w(space, offset, data, mem_mask, 3); }
-static ADDRESS_MAP_START( pwrinst2_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::pwrinst2_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM // RAM
AM_RANGE(0x500000, 0x500001) AM_READ_PORT("IN0") // Inputs
@@ -974,7 +974,7 @@ READ16_MEMBER(cave_state::sailormn_input0_r)
return ioport("IN0")->read();
}
-static ADDRESS_MAP_START( sailormn_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::sailormn_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x110000, 0x110001) AM_RAM // (agallet)
@@ -1008,7 +1008,7 @@ ADDRESS_MAP_END
Tekken Card World
***************************************************************************/
-static ADDRESS_MAP_START( tekkencw_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::tekkencw_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") // RAM (battery)
AM_RANGE(0x200000, 0x207fff) AM_RAM AM_SHARE("spriteram.0") // Sprites
@@ -1031,7 +1031,7 @@ ADDRESS_MAP_END
Tekken Battle Scratch
***************************************************************************/
-static ADDRESS_MAP_START( tekkenbs_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::tekkenbs_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") // RAM (battery)
AM_RANGE(0x200000, 0x207fff) AM_RAM AM_SHARE("spriteram.0") // Sprites
@@ -1094,7 +1094,7 @@ CUSTOM_INPUT_MEMBER(cave_state::tjumpman_hopper_r)
return (m_hopper && !(m_screen->frame_number() % 10)) ? 0 : 1;
}
-static ADDRESS_MAP_START( tjumpman_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::tjumpman_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") // RAM (battery)
AM_RANGE(0x200000, 0x207fff) AM_RAM AM_SHARE("spriteram.0") // Sprites
@@ -1134,7 +1134,7 @@ WRITE16_MEMBER(cave_state::pacslot_leds_w)
// popmessage("led %04X", data);
}
-static ADDRESS_MAP_START( pacslot_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::pacslot_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") // RAM (battery)
AM_RANGE(0x200000, 0x207fff) AM_RAM AM_SHARE("spriteram.0") // Sprites
@@ -1159,7 +1159,7 @@ ADDRESS_MAP_END
//TODO: leds need verifying
-static ADDRESS_MAP_START( paceight_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::paceight_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") // RAM (battery)
AM_RANGE(0x200000, 0x207fff) AM_RAM AM_SHARE("spriteram.0") // Sprites
@@ -1181,7 +1181,7 @@ ADDRESS_MAP_END
Uo Poko
***************************************************************************/
-static ADDRESS_MAP_START( uopoko_map, AS_PROGRAM, 16, cave_state )
+ADDRESS_MAP_START(cave_state::uopoko_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x00ff) // YMZ280
@@ -1208,12 +1208,12 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( oki_map, 0, 8, cave_state )
+ADDRESS_MAP_START(cave_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("okibank1")
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki2_map, 0, 8, cave_state )
+ADDRESS_MAP_START(cave_state::oki2_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("oki2bank1")
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("oki2bank2")
ADDRESS_MAP_END
@@ -1239,13 +1239,13 @@ WRITE8_MEMBER(cave_state::hotdogst_okibank_w)
membank("okibank2")->set_entry(bank2);
}
-static ADDRESS_MAP_START( hotdogst_sound_map, AS_PROGRAM, 8, cave_state )
+ADDRESS_MAP_START(cave_state::hotdogst_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank") // ROM (Banked)
AM_RANGE(0xe000, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotdogst_sound_portmap, AS_IO, 8, cave_state )
+ADDRESS_MAP_START(cave_state::hotdogst_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(hotdogst_rombank_w) // ROM bank
AM_RANGE(0x30, 0x30) AM_READ(soundlatch_lo_r) // From Main CPU
@@ -1268,14 +1268,14 @@ WRITE8_MEMBER(cave_state::mazinger_rombank_w)
membank("z80bank")->set_entry(data & 0x07);
}
-static ADDRESS_MAP_START( mazinger_sound_map, AS_PROGRAM, 8, cave_state )
+ADDRESS_MAP_START(cave_state::mazinger_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank") // ROM (Banked)
AM_RANGE(0xc000, 0xc7ff) AM_RAM // RAM
AM_RANGE(0xf800, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mazinger_sound_portmap, AS_IO, 8, cave_state )
+ADDRESS_MAP_START(cave_state::mazinger_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(mazinger_rombank_w) // ROM bank
AM_RANGE(0x10, 0x10) AM_WRITE(soundlatch_ack_w) // To Main CPU
@@ -1315,13 +1315,13 @@ WRITE8_MEMBER(cave_state::metmqstr_oki2bank_w)
membank("oki2bank2")->set_entry(bank2);
}
-static ADDRESS_MAP_START( metmqstr_sound_map, AS_PROGRAM, 8, cave_state )
+ADDRESS_MAP_START(cave_state::metmqstr_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank") // ROM (Banked)
AM_RANGE(0xe000, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( metmqstr_sound_portmap, AS_IO, 8, cave_state )
+ADDRESS_MAP_START(cave_state::metmqstr_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(metmqstr_rombank_w) // Rom Bank
AM_RANGE(0x20, 0x20) AM_READ(soundflags_r) // Communication
@@ -1347,13 +1347,13 @@ WRITE8_MEMBER(cave_state::pwrinst2_rombank_w)
membank("z80bank")->set_entry(data & 0x07);
}
-static ADDRESS_MAP_START( pwrinst2_sound_map, AS_PROGRAM, 8, cave_state )
+ADDRESS_MAP_START(cave_state::pwrinst2_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("z80bank") // ROM (Banked)
AM_RANGE(0xe000, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pwrinst2_sound_portmap, AS_IO, 8, cave_state )
+ADDRESS_MAP_START(cave_state::pwrinst2_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("oki1", okim6295_device, read, write) // M6295
AM_RANGE(0x08, 0x08) AM_DEVREADWRITE("oki2", okim6295_device, read, write) //
@@ -1395,13 +1395,13 @@ WRITE8_MEMBER(cave_state::sailormn_oki2bank_w)
membank("oki2bank2")->set_entry(bank2);
}
-static ADDRESS_MAP_START( sailormn_sound_map, AS_PROGRAM, 8, cave_state )
+ADDRESS_MAP_START(cave_state::sailormn_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank") // ROM (Banked)
AM_RANGE(0xc000, 0xdfff) AM_MIRROR(0x2000) AM_RAM // RAM (8KB, mirrored)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sailormn_sound_portmap, AS_IO, 8, cave_state )
+ADDRESS_MAP_START(cave_state::sailormn_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sailormn_rombank_w) // Rom Bank
AM_RANGE(0x10, 0x10) AM_WRITE(soundlatch_ack_w) // To Main CPU
diff --git a/src/mame/drivers/cavepc.cpp b/src/mame/drivers/cavepc.cpp
index ea29ff736da..6b949de72df 100644
--- a/src/mame/drivers/cavepc.cpp
+++ b/src/mame/drivers/cavepc.cpp
@@ -71,6 +71,8 @@ public:
virtual void video_start() override;
uint32_t screen_update_cavepc(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void cavepc(machine_config &config);
+ void cavepc_io(address_map &map);
+ void cavepc_map(address_map &map);
};
void cavepc_state::video_start()
@@ -84,12 +86,12 @@ uint32_t cavepc_state::screen_update_cavepc(screen_device &screen, bitmap_ind16
/*****************************************************************************/
-static ADDRESS_MAP_START( cavepc_map, AS_PROGRAM, 32, cavepc_state )
+ADDRESS_MAP_START(cavepc_state::cavepc_map)
AM_RANGE(0x000f0000, 0x000fffff) AM_ROMBANK("bank1")
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(cavepc_io, AS_IO, 32, cavepc_state )
+ADDRESS_MAP_START(cavepc_state::cavepc_io)
ADDRESS_MAP_END
/*****************************************************************************/
diff --git a/src/mame/drivers/cb2001.cpp b/src/mame/drivers/cb2001.cpp
index 370f36f5ead..adfc9e068af 100644
--- a/src/mame/drivers/cb2001.cpp
+++ b/src/mame/drivers/cb2001.cpp
@@ -85,6 +85,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void cb2001(machine_config &config);
+ void cb2001_io(address_map &map);
+ void cb2001_map(address_map &map);
};
@@ -567,14 +569,14 @@ WRITE16_MEMBER(cb2001_state::cb2001_bg_w)
}
-static ADDRESS_MAP_START( cb2001_map, AS_PROGRAM, 16, cb2001_state )
+ADDRESS_MAP_START(cb2001_state::cb2001_map)
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0x20000, 0x20fff) AM_RAM AM_SHARE("vrafg")
AM_RANGE(0x21000, 0x21fff) AM_RAM_WRITE(cb2001_bg_w) AM_SHARE("vrabg")
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cb2001_io, AS_IO, 16, cb2001_state )
+ADDRESS_MAP_START(cb2001_state::cb2001_io)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE8("ppi8255_0", i8255_device, read, write, 0xffff) /* Input Ports */
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE8("ppi8255_1", i8255_device, read, write, 0xffff) /* DIP switches */
AM_RANGE(0x20, 0x21) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0xff00)
diff --git a/src/mame/drivers/cball.cpp b/src/mame/drivers/cball.cpp
index 492ba5550f1..291bcb8c973 100644
--- a/src/mame/drivers/cball.cpp
+++ b/src/mame/drivers/cball.cpp
@@ -56,6 +56,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void cball(machine_config &config);
+ void cpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -161,7 +162,7 @@ WRITE8_MEMBER(cball_state::wram_w)
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, cball_state )
+ADDRESS_MAP_START(cball_state::cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_READ(wram_r) AM_MASK(0x7f)
diff --git a/src/mame/drivers/cbasebal.cpp b/src/mame/drivers/cbasebal.cpp
index defaacf075e..5a938159ed5 100644
--- a/src/mame/drivers/cbasebal.cpp
+++ b/src/mame/drivers/cbasebal.cpp
@@ -94,7 +94,7 @@ WRITE8_MEMBER(cbasebal_state::cbasebal_coinctrl_w)
*
*************************************/
-static ADDRESS_MAP_START( cbasebal_map, AS_PROGRAM, 8, cbasebal_state )
+ADDRESS_MAP_START(cbasebal_state::cbasebal_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_READWRITE(bankedram_r, bankedram_w) AM_SHARE("palette") /* palette + vram + scrollram */
@@ -102,12 +102,12 @@ static ADDRESS_MAP_START( cbasebal_map, AS_PROGRAM, 8, cbasebal_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, cbasebal_state )
+ADDRESS_MAP_START(cbasebal_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank0d")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1d")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cbasebal_portmap, AS_IO, 8, cbasebal_state )
+ADDRESS_MAP_START(cbasebal_state::cbasebal_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(cbasebal_bankswitch_w)
AM_RANGE(0x01, 0x01) AM_WRITE_PORT("IO_01")
@@ -264,7 +264,7 @@ MACHINE_CONFIG_START(cbasebal_state::cbasebal)
MCFG_CPU_ADD("maincpu", Z80, 6000000) /* ??? */
MCFG_CPU_PROGRAM_MAP(cbasebal_map)
MCFG_CPU_IO_MAP(cbasebal_portmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", cbasebal_state, irq0_line_hold) /* ??? */
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
diff --git a/src/mame/drivers/cbm2.cpp b/src/mame/drivers/cbm2.cpp
index a8efdd0a130..8a05519cf68 100644
--- a/src/mame/drivers/cbm2.cpp
+++ b/src/mame/drivers/cbm2.cpp
@@ -231,6 +231,9 @@ public:
void b128(machine_config &config);
void b256(machine_config &config);
void cbm610(machine_config &config);
+ void cbm2_mem(address_map &map);
+ void ext_io(address_map &map);
+ void ext_mem(address_map &map);
};
@@ -318,6 +321,9 @@ public:
int m_vic_irq;
void p500_pal(machine_config &config);
void p500_ntsc(machine_config &config);
+ void p500_mem(address_map &map);
+ void vic_colorram_map(address_map &map);
+ void vic_videoram_map(address_map &map);
};
@@ -1151,7 +1157,7 @@ READ8_MEMBER( p500_state::vic_colorram_r )
// ADDRESS_MAP( cbm2_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( cbm2_mem, AS_PROGRAM, 8, cbm2_state )
+ADDRESS_MAP_START(cbm2_state::cbm2_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -1160,7 +1166,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ext_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( ext_mem, AS_PROGRAM, 8, cbm2_state )
+ADDRESS_MAP_START(cbm2_state::ext_mem)
AM_RANGE(0x00000, 0xeffff) AM_READWRITE(ext_read, ext_write)
AM_RANGE(0xf0000, 0xf0fff) AM_MIRROR(0xf000) AM_ROM AM_REGION(EXT_I8088_TAG, 0)
ADDRESS_MAP_END
@@ -1170,7 +1176,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ext_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( ext_io, AS_IO, 8, cbm2_state )
+ADDRESS_MAP_START(cbm2_state::ext_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0001) AM_MIRROR(0x1e) AM_DEVREADWRITE(EXT_I8259A_TAG, pic8259_device, read, write)
AM_RANGE(0x0020, 0x0027) AM_MIRROR(0x18) AM_DEVREADWRITE(EXT_MOS6525_TAG, tpi6525_device, read, write)
@@ -1181,7 +1187,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( p500_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( p500_mem, AS_PROGRAM, 8, p500_state )
+ADDRESS_MAP_START(p500_state::p500_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -1190,7 +1196,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_videoram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_videoram_map, 0, 8, p500_state )
+ADDRESS_MAP_START(p500_state::vic_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(vic_videoram_r)
ADDRESS_MAP_END
@@ -1199,7 +1205,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_colorram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_colorram_map, 1, 8, p500_state )
+ADDRESS_MAP_START(p500_state::vic_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_READ(vic_colorram_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cbuster.cpp b/src/mame/drivers/cbuster.cpp
index 8745a1228aa..5e051c115fd 100644
--- a/src/mame/drivers/cbuster.cpp
+++ b/src/mame/drivers/cbuster.cpp
@@ -126,7 +126,7 @@ READ16_MEMBER(cbuster_state::twocrude_control_r)
/******************************************************************************/
-static ADDRESS_MAP_START( twocrude_map, AS_PROGRAM, 16, cbuster_state )
+ADDRESS_MAP_START(cbuster_state::twocrude_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM AM_SHARE("ram")
@@ -153,7 +153,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cbuster_state )
+ADDRESS_MAP_START(cbuster_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_device, read, write)
diff --git a/src/mame/drivers/cc40.cpp b/src/mame/drivers/cc40.cpp
index 8d8cc7b3201..ac580afd735 100644
--- a/src/mame/drivers/cc40.cpp
+++ b/src/mame/drivers/cc40.cpp
@@ -148,6 +148,7 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(cc40_cartridge);
HD44780_PIXEL_UPDATE(cc40_pixel_update);
void cc40(machine_config &config);
+ void main_map(address_map &map);
};
@@ -362,7 +363,7 @@ WRITE8_MEMBER(cc40_state::keyboard_w)
m_key_select = data;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, cc40_state )
+ADDRESS_MAP_START(cc40_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0110, 0x0110) AM_READWRITE(bus_control_r, bus_control_w)
diff --git a/src/mame/drivers/ccastles.cpp b/src/mame/drivers/ccastles.cpp
index edc842cbcce..00a4f60e582 100644
--- a/src/mame/drivers/ccastles.cpp
+++ b/src/mame/drivers/ccastles.cpp
@@ -321,7 +321,7 @@ WRITE8_MEMBER(ccastles_state::nvram_w)
*************************************/
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, ccastles_state )
+ADDRESS_MAP_START(ccastles_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_RAM_WRITE(ccastles_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0000, 0x0001) AM_WRITE(ccastles_bitmode_addr_w)
AM_RANGE(0x0002, 0x0002) AM_READWRITE(ccastles_bitmode_r, ccastles_bitmode_w)
diff --git a/src/mame/drivers/cchance.cpp b/src/mame/drivers/cchance.cpp
index dfd3d5c2318..35bcb452c7b 100644
--- a/src/mame/drivers/cchance.cpp
+++ b/src/mame/drivers/cchance.cpp
@@ -58,6 +58,7 @@ public:
DECLARE_READ8_MEMBER(input_1_r);
DECLARE_WRITE8_MEMBER(output_1_w);
void cchance(machine_config &config);
+ void main_map(address_map &map);
};
@@ -81,7 +82,7 @@ WRITE8_MEMBER(cchance_state::output_1_w)
m_bell_io = (data & 0x80)>>4;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, cchance_state )
+ADDRESS_MAP_START(cchance_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xafff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecodelow_r8, spritecodelow_w8)
diff --git a/src/mame/drivers/cchasm.cpp b/src/mame/drivers/cchasm.cpp
index b6474f91709..92fb09db52e 100644
--- a/src/mame/drivers/cchasm.cpp
+++ b/src/mame/drivers/cchasm.cpp
@@ -35,7 +35,7 @@
*
*************************************/
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 16, cchasm_state )
+ADDRESS_MAP_START(cchasm_state::memmap)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x04000f) AM_DEVREADWRITE8("6840ptm", ptm6840_device, read, write, 0xff)
AM_RANGE(0x050000, 0x050001) AM_WRITE(refresh_control_w)
@@ -51,7 +51,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 8, cchasm_state )
+ADDRESS_MAP_START(cchasm_state::sound_memmap)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x5000, 0x53ff) AM_RAM
@@ -66,7 +66,7 @@ static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 8, cchasm_state )
AM_RANGE(0x7041, 0x7041) AM_NOP // TODO
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, cchasm_state )
+ADDRESS_MAP_START(cchasm_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cclimber.cpp b/src/mame/drivers/cclimber.cpp
index 5841d7cbac2..289c56badee 100644
--- a/src/mame/drivers/cclimber.cpp
+++ b/src/mame/drivers/cclimber.cpp
@@ -321,7 +321,7 @@ READ8_MEMBER(cclimber_state::bagmanf_a000_r)
/* Note that River Patrol reads/writes to a000-a4f0. This is a bug in the code.
The instruction at 0x0593 should say LD DE,$8000 */
-static ADDRESS_MAP_START( cclimber_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::cclimber_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6bff) AM_RAM /* Crazy Kong only */
AM_RANGE(0x8000, 0x83ff) AM_RAM
@@ -342,11 +342,11 @@ static ADDRESS_MAP_START( cclimber_map, AS_PROGRAM, 8, cclimber_state )
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("SYSTEM")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cannonb_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::cannonb_map)
AM_RANGE(0x5045, 0x505f) AM_WRITENOP /* do not errorlog this */
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6bff) AM_RAM
@@ -368,7 +368,7 @@ static ADDRESS_MAP_START( cannonb_map, AS_PROGRAM, 8, cclimber_state )
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("SYSTEM")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( swimmer_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::swimmer_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x88ff) AM_MIRROR(0x0100) AM_RAM AM_SHARE("bigspriteram")
@@ -385,13 +385,13 @@ static ADDRESS_MAP_START( swimmer_map, AS_PROGRAM, 8, cclimber_state )
AM_RANGE(0xb880, 0xb880) AM_READ_PORT("SYSTEM")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( guzzler_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::guzzler_map)
AM_IMPORT_FROM(swimmer_map)
AM_RANGE(0xc000, 0xc7ff) AM_RAM /* ??? used by Guzzler */
AM_RANGE(0xe000, 0xffff) AM_ROM /* Guzzler only */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yamato_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::yamato_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x7fff) AM_ROM
@@ -413,11 +413,11 @@ static ADDRESS_MAP_START( yamato_map, AS_PROGRAM, 8, cclimber_state )
AM_RANGE(0xba00, 0xba00) AM_READ_PORT("START") /* maybe a mirror of b800 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yamato_decrypted_opcodes_map, AS_OPCODES, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::yamato_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( toprollr_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::toprollr_map)
AM_RANGE(0x0000, 0x5fff) AM_ROMBANK("bank1")
AM_RANGE(0x6000, 0x6bff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x8800, 0x88ff) AM_RAM AM_SHARE("bigspriteram")
@@ -436,7 +436,7 @@ static ADDRESS_MAP_START( toprollr_map, AS_PROGRAM, 8, cclimber_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bagmanf_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::bagmanf_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6bff) AM_RAM /* Crazy Kong only */
AM_RANGE(0x8000, 0x8000) AM_READ_PORT("P1")
@@ -457,44 +457,44 @@ static ADDRESS_MAP_START( bagmanf_map, AS_PROGRAM, 8, cclimber_state )
AM_RANGE(0xb800, 0xb800) AM_READNOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( toprollr_decrypted_opcodes_map, AS_OPCODES, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::toprollr_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x5fff) AM_ROMBANK("bank1d")
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("maincpu", 0xc000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cclimber_portmap, AS_IO, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::cclimber_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x09) AM_DEVWRITE("cclimber_audio:aysnd", ay8910_device, address_data_w)
AM_RANGE(0x0c, 0x0c) AM_DEVREAD("cclimber_audio:aysnd", ay8910_device, data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yamato_portmap, AS_IO, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::yamato_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(yamato_p0_w) /* ??? */
AM_RANGE(0x01, 0x01) AM_WRITE(yamato_p1_w) /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( swimmer_audio_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::swimmer_audio_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x4000, 0x4001) AM_RAM /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yamato_audio_map, AS_PROGRAM, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::yamato_audio_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x5000, 0x53ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( swimmer_audio_portmap, AS_IO, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::swimmer_audio_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yamato_audio_portmap, AS_IO, 8, cclimber_state )
+ADDRESS_MAP_START(cclimber_state::yamato_audio_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
@@ -1135,7 +1135,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(cclimber_state::cclimberx, cclimber)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(cclimber_state::ckongb, cclimber)
@@ -1175,7 +1175,7 @@ MACHINE_CONFIG_DERIVED(cclimber_state::yamato, root)
MCFG_CPU_PROGRAM_MAP(yamato_map)
MCFG_CPU_IO_MAP(yamato_portmap)
MCFG_CPU_VBLANK_INT_DRIVER("screen", cclimber_state, vblank_irq)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(yamato_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(yamato_decrypted_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MCFG_CPU_ADD("audiocpu", Z80, 3072000) /* 3.072 MHz ? */
@@ -1206,7 +1206,7 @@ MACHINE_CONFIG_DERIVED(cclimber_state::toprollr, cclimber)
MCFG_CPU_PROGRAM_MAP(toprollr_map)
MCFG_CPU_IO_MAP(cclimber_portmap)
MCFG_CPU_VBLANK_INT_DRIVER("screen", cclimber_state, vblank_irq)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(toprollr_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(toprollr_decrypted_opcodes_map)
MCFG_SEGACRPT_SET_SIZE(0)
MCFG_SEGACRPT_SET_NUMBANKS(3)
MCFG_SEGACRPT_SET_BANKSIZE(0x6000)
diff --git a/src/mame/drivers/ccs2810.cpp b/src/mame/drivers/ccs2810.cpp
index 633345e53e2..c5964fad409 100644
--- a/src/mame/drivers/ccs2810.cpp
+++ b/src/mame/drivers/ccs2810.cpp
@@ -105,6 +105,9 @@ public:
void ccs2810(machine_config &config);
void ccs2422(machine_config &config);
+ void ccs2422_io(address_map &map);
+ void ccs2810_io(address_map &map);
+ void ccs2810_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
@@ -175,15 +178,15 @@ WRITE8_MEMBER(ccs_state::io_write)
m_ins8250->ins8250_w(space, offset & 7, data);
}
-static ADDRESS_MAP_START(ccs2810_mem, AS_PROGRAM, 8, ccs_state)
+ADDRESS_MAP_START(ccs_state::ccs2810_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(memory_read, memory_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ccs2810_io, AS_IO, 8, ccs_state)
+ADDRESS_MAP_START(ccs_state::ccs2810_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(io_read, io_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ccs2422_io, AS_IO, 8, ccs_state)
+ADDRESS_MAP_START(ccs_state::ccs2422_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(io_read, io_write)
AM_RANGE(0x04, 0x04) AM_MIRROR(0xff00) AM_READWRITE(port04_r,port04_w)
AM_RANGE(0x30, 0x33) AM_MIRROR(0xff00) AM_DEVREADWRITE("fdc", mb8877_device, read, write)
diff --git a/src/mame/drivers/ccs300.cpp b/src/mame/drivers/ccs300.cpp
index edba3c0bd04..6a7c1ee19df 100644
--- a/src/mame/drivers/ccs300.cpp
+++ b/src/mame/drivers/ccs300.cpp
@@ -41,17 +41,19 @@ public:
DECLARE_WRITE8_MEMBER(port40_w);
void ccs300(machine_config &config);
+ void ccs300_io(address_map &map);
+ void ccs300_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(ccs300_mem, AS_PROGRAM, 8, ccs300_state)
+ADDRESS_MAP_START(ccs300_state::ccs300_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x0800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ccs300_io, AS_IO, 8, ccs300_state)
+ADDRESS_MAP_START(ccs300_state::ccs300_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("sio", z80sio_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/cd2650.cpp b/src/mame/drivers/cd2650.cpp
index 28e5164d59c..47c617d1a38 100644
--- a/src/mame/drivers/cd2650.cpp
+++ b/src/mame/drivers/cd2650.cpp
@@ -81,6 +81,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void cd2650(machine_config &config);
+ void cd2650_data(address_map &map);
+ void cd2650_io(address_map &map);
+ void cd2650_mem(address_map &map);
private:
uint8_t m_term_data;
virtual void machine_reset() override;
@@ -114,18 +117,18 @@ READ8_MEMBER(cd2650_state::keyin_r)
return ret;
}
-static ADDRESS_MAP_START(cd2650_mem, AS_PROGRAM, 8, cd2650_state)
+ADDRESS_MAP_START(cd2650_state::cd2650_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x1000, 0x7fff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cd2650_io, AS_IO, 8, cd2650_state)
+ADDRESS_MAP_START(cd2650_state::cd2650_io)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x80, 0x84) disk i/o
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cd2650_data, AS_DATA, 8, cd2650_state)
+ADDRESS_MAP_START(cd2650_state::cd2650_data)
AM_RANGE(S2650_DATA_PORT,S2650_DATA_PORT) AM_READ(keyin_r) AM_DEVWRITE("outlatch", f9334_device, write_nibble_d3)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cdc721.cpp b/src/mame/drivers/cdc721.cpp
index 7c9035fc8a7..8e86a30af40 100644
--- a/src/mame/drivers/cdc721.cpp
+++ b/src/mame/drivers/cdc721.cpp
@@ -31,6 +31,8 @@ public:
// DECLARE_WRITE8_MEMBER(port70_w) { membank("bankr0")->set_entry(BIT(data, 3)); }
void cdc721(machine_config &config);
+void io_map(address_map &map);
+void mem_map(address_map &map);
private:
u8 m_flashcnt;
virtual void machine_reset() override;
@@ -39,14 +41,14 @@ private:
required_shared_ptr<u8> m_p_videoram;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, cdc721_state )
+ADDRESS_MAP_START(cdc721_state::mem_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM AM_REGION("maincpu", 0x10000)
// AM_RANGE(0x0000, 0x4fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x8000, 0xe10f) AM_RAM
AM_RANGE(0xe110, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, cdc721_state )
+ADDRESS_MAP_START(cdc721_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x1f) AM_DEVREADWRITE("crtc", tms9927_device, read, write)
// AM_RANGE(0x70, 0x70) AM_WRITE(port70_w)
diff --git a/src/mame/drivers/cdi.cpp b/src/mame/drivers/cdi.cpp
index 8a5d4da4c4f..a7de95fb5b6 100644
--- a/src/mame/drivers/cdi.cpp
+++ b/src/mame/drivers/cdi.cpp
@@ -67,7 +67,7 @@ static inline void ATTR_PRINTF(3,4) verboselog(device_t& device, int n_level, co
* Memory maps *
*************************/
-static ADDRESS_MAP_START( cdimono1_mem, AS_PROGRAM, 16, cdi_state )
+ADDRESS_MAP_START(cdi_state::cdimono1_mem)
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_SHARE("planea")
AM_RANGE(0x00200000, 0x0027ffff) AM_RAM AM_SHARE("planeb")
AM_RANGE(0x00300000, 0x00303bff) AM_DEVREADWRITE("cdic", cdicdic_device, ram_r, ram_w)
@@ -86,7 +86,7 @@ static ADDRESS_MAP_START( cdimono1_mem, AS_PROGRAM, 16, cdi_state )
AM_RANGE(0x80000000, 0x8000807f) AM_DEVREADWRITE("scc68070", cdi68070_device, periphs_r, periphs_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cdimono2_mem, AS_PROGRAM, 16, cdi_state )
+ADDRESS_MAP_START(cdi_state::cdimono2_mem)
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_SHARE("planea")
AM_RANGE(0x00200000, 0x0027ffff) AM_RAM AM_SHARE("planeb")
#if ENABLE_UART_PRINTING
@@ -105,7 +105,7 @@ static ADDRESS_MAP_START( cdimono2_mem, AS_PROGRAM, 16, cdi_state )
AM_RANGE(0x80000000, 0x8000807f) AM_DEVREADWRITE("scc68070", cdi68070_device, periphs_r, periphs_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cdi910_mem, AS_PROGRAM, 16, cdi_state )
+ADDRESS_MAP_START(cdi_state::cdi910_mem)
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_SHARE("planea")
AM_RANGE(0x00180000, 0x001fffff) AM_ROM AM_REGION("maincpu", 0) // boot vectors point here
@@ -126,13 +126,13 @@ static ADDRESS_MAP_START( cdi910_mem, AS_PROGRAM, 16, cdi_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cdimono2_servo_mem, AS_PROGRAM, 8, cdi_state )
+ADDRESS_MAP_START(cdi_state::cdimono2_servo_mem)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(servo_io_r, servo_io_w)
AM_RANGE(0x0050, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x1fff) AM_ROM AM_REGION("servo", 0x100)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cdimono2_slave_mem, AS_PROGRAM, 8, cdi_state )
+ADDRESS_MAP_START(cdi_state::cdimono2_slave_mem)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(slave_io_r, slave_io_w)
AM_RANGE(0x0050, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x1fff) AM_ROM AM_REGION("slave", 0x100)
@@ -946,7 +946,7 @@ READ8_MEMBER( cdi_state::quizard_mcu_p1_r )
return machine().rand();
}
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, cdi_state )
+ADDRESS_MAP_START(cdi_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READ(quizard_mcu_p1_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cedar_magnet.cpp b/src/mame/drivers/cedar_magnet.cpp
index 88aa2bc115d..1678c26247c 100644
--- a/src/mame/drivers/cedar_magnet.cpp
+++ b/src/mame/drivers/cedar_magnet.cpp
@@ -228,6 +228,11 @@ public:
DECLARE_DRIVER_INIT(mag_xain);
DECLARE_DRIVER_INIT(mag_exzi);
void cedar_magnet(machine_config &config);
+ void cedar_bank0(address_map &map);
+ void cedar_magnet_io(address_map &map);
+ void cedar_magnet_mainboard_sub_pal_map(address_map &map);
+ void cedar_magnet_mainboard_sub_ram_map(address_map &map);
+ void cedar_magnet_map(address_map &map);
};
/***********************
@@ -236,7 +241,7 @@ public:
***********************/
-static ADDRESS_MAP_START( cedar_magnet_mainboard_sub_pal_map, AS_PROGRAM, 8, cedar_magnet_state )
+ADDRESS_MAP_START(cedar_magnet_state::cedar_magnet_mainboard_sub_pal_map)
// these are 3x MOTOROLA MM2114N SRAM 4096 bit RAM (twice the size because we map bytes, but only 4 bits are used)
// these are on the master board memory sub-board
AM_RANGE(0x2400, 0x27ff) AM_RAM_WRITE(palette_r_w) AM_SHARE("pal_r")
@@ -244,17 +249,17 @@ static ADDRESS_MAP_START( cedar_magnet_mainboard_sub_pal_map, AS_PROGRAM, 8, ced
AM_RANGE(0x3000, 0x33ff) AM_RAM_WRITE(palette_b_w) AM_SHARE("pal_b")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cedar_magnet_mainboard_sub_ram_map, AS_PROGRAM, 8, cedar_magnet_state )
+ADDRESS_MAP_START(cedar_magnet_state::cedar_magnet_mainboard_sub_ram_map)
// these are 8x SIEMENS HYB 41256-15 AA - 262,144 bit DRAM (32kbytes)
// these are on the master board memory sub-board
AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("ram0")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cedar_magnet_map, AS_PROGRAM, 8, cedar_magnet_state )
+ADDRESS_MAP_START(cedar_magnet_state::cedar_magnet_map)
AM_RANGE(0x0000, 0xffff) AM_DEVICE("bank0", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cedar_magnet_io, AS_IO, 8, cedar_magnet_state )
+ADDRESS_MAP_START(cedar_magnet_state::cedar_magnet_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x18, 0x18) AM_READWRITE(port18_r, port18_w)
@@ -280,7 +285,7 @@ static ADDRESS_MAP_START( cedar_magnet_io, AS_IO, 8, cedar_magnet_state )
AM_RANGE(0xff, 0xff) AM_DEVWRITE("cedtop", cedar_magnet_sound_device, sound_command_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cedar_bank0, AS_PROGRAM, 8, cedar_magnet_state )
+ADDRESS_MAP_START(cedar_magnet_state::cedar_bank0)
/* memory configuration 0 */
AM_RANGE(0x00000, 0x0ffff) AM_DEVICE("mb_sub_ram", address_map_bank_device, amap8)
diff --git a/src/mame/drivers/centiped.cpp b/src/mame/drivers/centiped.cpp
index 47826c33760..88d892d39fb 100644
--- a/src/mame/drivers/centiped.cpp
+++ b/src/mame/drivers/centiped.cpp
@@ -676,7 +676,7 @@ WRITE_LINE_MEMBER(centiped_state::bullsdrt_coin_count_w)
*
*************************************/
-static ADDRESS_MAP_START( centiped_base_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::centiped_base_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x0400, 0x07bf) AM_RAM_WRITE(centiped_videoram_w) AM_SHARE("videoram")
@@ -698,7 +698,7 @@ static ADDRESS_MAP_START( centiped_base_map, AS_PROGRAM, 8, centiped_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( centiped_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::centiped_map)
AM_IMPORT_FROM(centiped_base_map)
AM_RANGE(0x1000, 0x100f) AM_DEVREADWRITE("pokey", pokey_device, read, write)
ADDRESS_MAP_END
@@ -706,7 +706,7 @@ ADDRESS_MAP_END
//// Centipede bootlegs ////
-static ADDRESS_MAP_START( centipdb_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::centipdb_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x4000) AM_RAM
AM_RANGE(0x0400, 0x07bf) AM_MIRROR(0x4000) AM_RAM_WRITE(centiped_videoram_w) AM_SHARE("videoram")
@@ -731,14 +731,14 @@ static ADDRESS_MAP_START( centipdb_map, AS_PROGRAM, 8, centiped_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magworm_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::magworm_map)
AM_IMPORT_FROM(centiped_base_map)
AM_RANGE(0x1001, 0x1001) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0x1003, 0x1003) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( caterplr_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::caterplr_map)
AM_IMPORT_FROM(centiped_base_map)
AM_RANGE(0x1780, 0x1780) AM_READ(caterplr_unknown_r)
AM_RANGE(0x1000, 0x100f) AM_READWRITE(caterplr_AY8910_r, caterplr_AY8910_w)
@@ -764,7 +764,7 @@ READ8_MEMBER(centiped_state::caterplr_AY8910_r)
*
*************************************/
-static ADDRESS_MAP_START( milliped_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::milliped_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x040f) AM_DEVREADWRITE("pokey", pokey_device, read, write)
@@ -809,7 +809,7 @@ ADDRESS_MAP_END
TODO: centiped does not work yet, the game reconfigures the memorymap
*/
-static ADDRESS_MAP_START( multiped_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::multiped_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x040f) AM_DEVREADWRITE("pokey", pokey_device, read, write)
AM_RANGE(0x0800, 0x080f) AM_DEVREADWRITE("pokey2", pokey_device, read, write)
@@ -881,7 +881,7 @@ WRITE8_MEMBER(centiped_state::multiped_prgbank_w)
*
*************************************/
-static ADDRESS_MAP_START( warlords_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::warlords_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07bf) AM_RAM_WRITE(centiped_videoram_w) AM_SHARE("videoram")
@@ -905,7 +905,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( mazeinv_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::mazeinv_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x040f) AM_DEVREADWRITE("pokey", pokey_device, read, write)
@@ -936,7 +936,7 @@ ADDRESS_MAP_END
*
****************************************/
-static ADDRESS_MAP_START( bullsdrt_map, AS_PROGRAM, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::bullsdrt_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x1000) AM_MIRROR(0x6000) AM_READ_PORT("DSW1")
AM_RANGE(0x1080, 0x1080) AM_MIRROR(0x6000) AM_READ(centiped_IN0_r)
@@ -957,12 +957,12 @@ static ADDRESS_MAP_START( bullsdrt_map, AS_PROGRAM, 8, centiped_state )
AM_RANGE(0x6000, 0x6fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bullsdrt_port_map, AS_IO, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::bullsdrt_port_map)
AM_RANGE(0x00, 0x00) AM_WRITE(bullsdrt_sprites_bank_w)
AM_RANGE(0x20, 0x3f) AM_WRITE(bullsdrt_tilesbank_w) AM_SHARE("bullsdrt_bank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bullsdrt_data_map, AS_DATA, 8, centiped_state )
+ADDRESS_MAP_START(centiped_state::bullsdrt_data_map)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(bullsdrt_data_port_r) AM_DEVWRITE("snsnd", sn76496_device, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cesclass.cpp b/src/mame/drivers/cesclass.cpp
index d8481fae7ae..b6057908fc4 100644
--- a/src/mame/drivers/cesclass.cpp
+++ b/src/mame/drivers/cesclass.cpp
@@ -50,6 +50,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECLARE_PALETTE_INIT(cesclassic);
void cesclassic(machine_config &config);
+ void cesclassic_map(address_map &map);
protected:
// devices
@@ -124,7 +125,7 @@ WRITE16_MEMBER( cesclassic_state::outputs_w )
logerror("Output: %02x\n",data);
}
-static ADDRESS_MAP_START( cesclassic_map, AS_PROGRAM, 16, cesclassic_state )
+ADDRESS_MAP_START(cesclassic_state::cesclassic_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x40cfff) AM_RAM
AM_RANGE(0x40d000, 0x40ffff) AM_RAM AM_SHARE("vram")
diff --git a/src/mame/drivers/cfx9850.cpp b/src/mame/drivers/cfx9850.cpp
index 6d044ad4250..9b4ef70d57d 100644
--- a/src/mame/drivers/cfx9850.cpp
+++ b/src/mame/drivers/cfx9850.cpp
@@ -56,6 +56,7 @@ public:
u32 screen_update_cfx9850(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void cfx9850(machine_config &config);
+ void cfx9850(address_map &map);
protected:
required_ioport_array<12> m_ko_port;
required_device<cpu_device> m_maincpu;
@@ -67,7 +68,7 @@ private:
};
-static ADDRESS_MAP_START(cfx9850, AS_PROGRAM, 8, cfx9850_state)
+ADDRESS_MAP_START(cfx9850_state::cfx9850)
AM_RANGE( 0x000000, 0x007fff ) AM_ROM
AM_RANGE( 0x080000, 0x0807ff ) AM_RAM AM_SHARE("video_ram")
// AM_RANGE( 0x100000, 0x10ffff ) // some memory mapped i/o???
diff --git a/src/mame/drivers/cgc7900.cpp b/src/mame/drivers/cgc7900.cpp
index 0ce6cb67ad9..9cd622fea31 100644
--- a/src/mame/drivers/cgc7900.cpp
+++ b/src/mame/drivers/cgc7900.cpp
@@ -334,7 +334,7 @@ WRITE_LINE_MEMBER(cgc7900_state::write_rs449_clock)
ADDRESS_MAP( cgc7900_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( cgc7900_mem, AS_PROGRAM, 16, cgc7900_state )
+ADDRESS_MAP_START(cgc7900_state::cgc7900_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("chrom_ram")
AM_RANGE(0x800000, 0x80ffff) AM_ROM AM_REGION(M68000_TAG, 0)
@@ -397,7 +397,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( keyboard_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( keyboard_mem, AS_PROGRAM, 8, cgc7900_state )
+ADDRESS_MAP_START(cgc7900_state::keyboard_mem)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cgenie.cpp b/src/mame/drivers/cgenie.cpp
index 38148f89f4a..d6e60b4c0b9 100644
--- a/src/mame/drivers/cgenie.cpp
+++ b/src/mame/drivers/cgenie.cpp
@@ -73,6 +73,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(rs232_dcd_w);
void cgenie(machine_config &config);
+ void cgenie_io(address_map &map);
+ void cgenie_mem(address_map &map);
protected:
virtual void machine_start() override;
@@ -106,7 +108,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( cgenie_mem, AS_PROGRAM, 8, cgenie_state )
+ADDRESS_MAP_START(cgenie_state::cgenie_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
// AM_RANGE(0x4000, 0xbfff) AM_RAM // set up in machine_start
@@ -117,7 +119,7 @@ static ADDRESS_MAP_START( cgenie_mem, AS_PROGRAM, 8, cgenie_state )
AM_RANGE(0xfc00, 0xffff) AM_NOP // cartridge space
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cgenie_io, AS_IO, 8, cgenie_state )
+ADDRESS_MAP_START(cgenie_state::cgenie_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf8, 0xf8) AM_DEVWRITE("ay8910", ay8910_device, address_w)
AM_RANGE(0xf9, 0xf9) AM_DEVREADWRITE("ay8910", ay8910_device, data_r, data_w)
diff --git a/src/mame/drivers/chaknpop.cpp b/src/mame/drivers/chaknpop.cpp
index 90c9cf96d60..8cfe6edae67 100644
--- a/src/mame/drivers/chaknpop.cpp
+++ b/src/mame/drivers/chaknpop.cpp
@@ -161,7 +161,7 @@ WRITE8_MEMBER(chaknpop_state::coinlock_w)
***************************************************************************/
-static ADDRESS_MAP_START( chaknpop_map, AS_PROGRAM, 8, chaknpop_state )
+ADDRESS_MAP_START(chaknpop_state::chaknpop_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8800) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
diff --git a/src/mame/drivers/cham24.cpp b/src/mame/drivers/cham24.cpp
index 0559326ea82..d04660392a1 100644
--- a/src/mame/drivers/cham24.cpp
+++ b/src/mame/drivers/cham24.cpp
@@ -96,6 +96,7 @@ public:
void cham24_set_mirroring( int mirroring );
void ppu_irq(int *ppu_regs);
void cham24(machine_config &config);
+ void cham24_map(address_map &map);
};
@@ -221,7 +222,7 @@ WRITE8_MEMBER(cham24_state::cham24_mapper_w)
}
}
-static ADDRESS_MAP_START( cham24_map, AS_PROGRAM, 8, cham24_state )
+ADDRESS_MAP_START(cham24_state::cham24_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_w)
diff --git a/src/mame/drivers/champbas.cpp b/src/mame/drivers/champbas.cpp
index 7efca7592a0..7dd44e9066a 100644
--- a/src/mame/drivers/champbas.cpp
+++ b/src/mame/drivers/champbas.cpp
@@ -181,7 +181,7 @@ READ8_MEMBER(champbas_state::champbja_protection_r)
// maincpu
// base map
-static ADDRESS_MAP_START( champbas_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::champbas_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(tilemap_w) AM_SHARE("vram")
@@ -200,37 +200,37 @@ static ADDRESS_MAP_START( champbas_map, AS_PROGRAM, 8, champbas_state )
ADDRESS_MAP_END
// base map + ALPHA-8x0x protection
-static ADDRESS_MAP_START( champbasj_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::champbasj_map)
AM_IMPORT_FROM( champbas_map )
AM_RANGE(0x6000, 0x63ff) AM_DEVREADWRITE("alpha_8201", alpha_8201_device, ext_ram_r, ext_ram_w)
ADDRESS_MAP_END
// different protection for champbasja
-static ADDRESS_MAP_START( champbasja_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::champbasja_map)
AM_IMPORT_FROM( champbas_map )
AM_RANGE(0x6000, 0x63ff) AM_RAM
AM_RANGE(0x6800, 0x68ff) AM_READ(champbja_protection_r)
ADDRESS_MAP_END
// champbasjb appears to have no protection
-static ADDRESS_MAP_START( champbasjb_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::champbasjb_map)
AM_IMPORT_FROM( champbas_map )
AM_RANGE(0x6000, 0x63ff) AM_RAM
ADDRESS_MAP_END
// champbb2
-static ADDRESS_MAP_START( champbb2_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::champbb2_map)
AM_IMPORT_FROM( champbasj_map )
AM_RANGE(0x7800, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tbasebal_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::tbasebal_map)
AM_IMPORT_FROM( champbas_map )
AM_RANGE(0x7800, 0x7fff) AM_ROM
ADDRESS_MAP_END
// more sprites in exctsccr
-static ADDRESS_MAP_START( exctsccr_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::exctsccr_map)
AM_IMPORT_FROM( champbasj_map )
AM_RANGE(0x7000, 0x7001) AM_UNMAP // aysnd is controlled by audiocpu
AM_RANGE(0x7c00, 0x7fff) AM_RAM
@@ -238,7 +238,7 @@ static ADDRESS_MAP_START( exctsccr_map, AS_PROGRAM, 8, champbas_state )
ADDRESS_MAP_END
// exctsccrb
-static ADDRESS_MAP_START( exctsccrb_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::exctsccrb_map)
AM_IMPORT_FROM( champbasj_map )
AM_RANGE(0xa040, 0xa04f) AM_WRITEONLY AM_SHARE("spriteram2")
ADDRESS_MAP_END
@@ -247,7 +247,7 @@ ADDRESS_MAP_END
// audiocpu
// champbas/champbb2 (note: talbot doesn't have audiocpu)
-static ADDRESS_MAP_START( champbas_sound_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::champbas_sound_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x1fff) AM_WRITENOP // 4-bit return code to main CPU (not used)
@@ -257,7 +257,7 @@ static ADDRESS_MAP_START( champbas_sound_map, AS_PROGRAM, 8, champbas_state )
ADDRESS_MAP_END
// exctsccr
-static ADDRESS_MAP_START( exctsccr_sound_map, AS_PROGRAM, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::exctsccr_sound_map)
AM_RANGE(0x0000, 0x8fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_RAM
AM_RANGE(0xc008, 0xc008) AM_DEVWRITE("dac1", dac_byte_interface, write)
@@ -267,7 +267,7 @@ static ADDRESS_MAP_START( exctsccr_sound_map, AS_PROGRAM, 8, champbas_state )
// AM_RANGE(0xc00f, 0xc00f) AM_WRITENOP // ?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( exctsccr_sound_io_map, AS_IO, 8, champbas_state )
+ADDRESS_MAP_START(champbas_state::exctsccr_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK( 0x00ff )
AM_RANGE(0x82, 0x83) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x86, 0x87) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/champbwl.cpp b/src/mame/drivers/champbwl.cpp
index af758226bdf..a2276aed0c6 100644
--- a/src/mame/drivers/champbwl.cpp
+++ b/src/mame/drivers/champbwl.cpp
@@ -200,6 +200,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_doraemon);
void champbwl(machine_config &config);
void doraemon(machine_config &config);
+ void champbwl_map(address_map &map);
+ void doraemon(address_map &map);
};
PALETTE_INIT_MEMBER(champbwl_state,champbwl)
@@ -247,7 +249,7 @@ WRITE8_MEMBER(champbwl_state::champbwl_misc_w)
membank("bank1")->set_entry((data & 0x30) >> 4);
}
-static ADDRESS_MAP_START( champbwl_map, AS_PROGRAM, 8, champbwl_state )
+ADDRESS_MAP_START(champbwl_state::champbwl_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
@@ -286,7 +288,7 @@ WRITE8_MEMBER(champbwl_state::doraemon_outputs_w)
// popmessage("%02x", data);
}
-static ADDRESS_MAP_START( doraemon, AS_PROGRAM, 8, champbwl_state )
+ADDRESS_MAP_START(champbwl_state::doraemon)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/chanbara.cpp b/src/mame/drivers/chanbara.cpp
index 3e7797e67ca..4d26a4765cd 100644
--- a/src/mame/drivers/chanbara.cpp
+++ b/src/mame/drivers/chanbara.cpp
@@ -105,6 +105,7 @@ public:
uint32_t screen_update_chanbara(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void chanbara(machine_config &config);
+ void chanbara_map(address_map &map);
};
@@ -227,7 +228,7 @@ uint32_t chanbara_state::screen_update_chanbara(screen_device &screen, bitmap_in
/***************************************************************************/
-static ADDRESS_MAP_START( chanbara_map, AS_PROGRAM, 8, chanbara_state )
+ADDRESS_MAP_START(chanbara_state::chanbara_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(chanbara_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0c00, 0x0fff) AM_RAM_WRITE(chanbara_colorram_w) AM_SHARE("colorram")
diff --git a/src/mame/drivers/chance32.cpp b/src/mame/drivers/chance32.cpp
index 4d173e469e6..5acc9825643 100644
--- a/src/mame/drivers/chance32.cpp
+++ b/src/mame/drivers/chance32.cpp
@@ -70,6 +70,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void chance32(machine_config &config);
+ void chance32_map(address_map &map);
+ void chance32_portmap(address_map &map);
};
@@ -197,7 +199,7 @@ WRITE8_MEMBER(chance32_state::muxout_w)
}
-static ADDRESS_MAP_START( chance32_map, AS_PROGRAM, 8, chance32_state )
+ADDRESS_MAP_START(chance32_state::chance32_map)
AM_RANGE(0x0000, 0xcfff) AM_ROM
AM_RANGE(0xd800, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -205,7 +207,7 @@ static ADDRESS_MAP_START( chance32_map, AS_PROGRAM, 8, chance32_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(chance32_bgram_w) AM_SHARE("bgram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chance32_portmap, AS_IO, 8, chance32_state )
+ADDRESS_MAP_START(chance32_state::chance32_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_WRITENOP // writing bit3 constantly... watchdog?
AM_RANGE(0x13, 0x13) AM_WRITE(mux_w)
diff --git a/src/mame/drivers/changela.cpp b/src/mame/drivers/changela.cpp
index d15a8431c58..9cb21e91572 100644
--- a/src/mame/drivers/changela.cpp
+++ b/src/mame/drivers/changela.cpp
@@ -159,7 +159,7 @@ WRITE_LINE_MEMBER(changela_state::coin_counter_2_w)
}
-static ADDRESS_MAP_START( changela_map, AS_PROGRAM, 8, changela_state )
+ADDRESS_MAP_START(changela_state::changela_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("spriteram") /* OBJ0 RAM */
AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("videoram") /* OBJ1 RAM */
diff --git a/src/mame/drivers/channelf.cpp b/src/mame/drivers/channelf.cpp
index e6450caeae0..021b007db99 100644
--- a/src/mame/drivers/channelf.cpp
+++ b/src/mame/drivers/channelf.cpp
@@ -119,12 +119,12 @@ WRITE8_MEMBER( channelf_state::port_5_w )
m_row_reg = (data | 0xc0) ^ 0xff;
}
-static ADDRESS_MAP_START( channelf_map, AS_PROGRAM, 8, channelf_state )
+ADDRESS_MAP_START(channelf_state::channelf_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0xffff) AM_DEVREAD("cartslot", channelf_cart_slot_device, read_rom)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( channelf_io, AS_IO, 8, channelf_state )
+ADDRESS_MAP_START(channelf_state::channelf_io)
AM_RANGE(0x00, 0x00) AM_READWRITE(port_0_r, port_0_w) /* Front panel switches */
AM_RANGE(0x01, 0x01) AM_READWRITE(port_1_r, port_1_w) /* Right controller */
AM_RANGE(0x04, 0x04) AM_READWRITE(port_4_r, port_4_w) /* Left controller */
diff --git a/src/mame/drivers/chaos.cpp b/src/mame/drivers/chaos.cpp
index 40c3606c972..a4944306929 100644
--- a/src/mame/drivers/chaos.cpp
+++ b/src/mame/drivers/chaos.cpp
@@ -52,6 +52,9 @@ public:
DECLARE_READ8_MEMBER(port91_r);
void kbd_put(u8 data);
void chaos(machine_config &config);
+ void data_map(address_map &map);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_term_data;
virtual void machine_reset() override;
@@ -61,12 +64,12 @@ private:
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, chaos_state )
+ADDRESS_MAP_START(chaos_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, chaos_state )
+ADDRESS_MAP_START(chaos_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x1e, 0x1e) AM_READ(port1e_r)
AM_RANGE(0x1f, 0x1f) AM_READWRITE(port90_r, port1f_w)
@@ -75,7 +78,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, chaos_state )
AM_RANGE(0x92, 0x92) AM_DEVWRITE("terminal", generic_terminal_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_map, AS_DATA, 8, chaos_state )
+ADDRESS_MAP_START(chaos_state::data_map)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_NOP // stops error log filling up while using debug
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cheekyms.cpp b/src/mame/drivers/cheekyms.cpp
index db61352b75a..34bbc522c48 100644
--- a/src/mame/drivers/cheekyms.cpp
+++ b/src/mame/drivers/cheekyms.cpp
@@ -20,13 +20,13 @@ INPUT_CHANGED_MEMBER(cheekyms_state::coin_inserted)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, cheekyms_state )
+ADDRESS_MAP_START(cheekyms_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3000, 0x33ff) AM_RAM
AM_RANGE(0x3800, 0x3bff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, cheekyms_state )
+ADDRESS_MAP_START(cheekyms_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW")
AM_RANGE(0x01, 0x01) AM_READ_PORT("INPUTS")
diff --git a/src/mame/drivers/chessmst.cpp b/src/mame/drivers/chessmst.cpp
index 7cdf1eb27c5..b3428ee6826 100644
--- a/src/mame/drivers/chessmst.cpp
+++ b/src/mame/drivers/chessmst.cpp
@@ -68,26 +68,30 @@ public:
void chessmst(machine_config &config);
void chessmsta(machine_config &config);
void chessmstdm(machine_config &config);
+ void chessmst_io(address_map &map);
+ void chessmst_mem(address_map &map);
+ void chessmstdm(address_map &map);
+ void chessmstdm_io(address_map &map);
private:
void update_display();
};
-static ADDRESS_MAP_START(chessmst_mem, AS_PROGRAM, 8, chessmst_state)
+ADDRESS_MAP_START(chessmst_state::chessmst_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x7fff) // A15 not connected
AM_RANGE( 0x0000, 0x27ff ) AM_ROM
AM_RANGE( 0x3400, 0x3bff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(chessmstdm, AS_PROGRAM, 8, chessmst_state)
+ADDRESS_MAP_START(chessmst_state::chessmstdm)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4000, 0x7fff ) AM_DEVREAD("cartslot", generic_slot_device, read_rom)
AM_RANGE( 0x8000, 0x8bff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chessmst_io , AS_IO, 8, chessmst_state)
+ADDRESS_MAP_START(chessmst_state::chessmst_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0x00, 0x03) AM_MIRROR(0xf0) read/write in both, not used by the software
@@ -95,7 +99,7 @@ static ADDRESS_MAP_START( chessmst_io , AS_IO, 8, chessmst_state)
AM_RANGE(0x08, 0x0b) AM_MIRROR(0xf0) AM_DEVREADWRITE("z80pio2", z80pio_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chessmstdm_io , AS_IO, 8, chessmst_state)
+ADDRESS_MAP_START(chessmst_state::chessmstdm_io)
AM_IMPORT_FROM(chessmst_io)
AM_RANGE(0x4c, 0x4c) AM_WRITE(digits_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/chesstrv.cpp b/src/mame/drivers/chesstrv.cpp
index 26e8fe42307..96cde372f43 100644
--- a/src/mame/drivers/chesstrv.cpp
+++ b/src/mame/drivers/chesstrv.cpp
@@ -42,6 +42,9 @@ public:
required_device<cpu_device> m_maincpu;
void chesstrv(machine_config &config);
void borisdpl(machine_config &config);
+ void borisdpl_io(address_map &map);
+ void chesstrv_io(address_map &map);
+ void chesstrv_mem(address_map &map);
};
WRITE8_MEMBER( chesstrv_state::ram_addr_w )
@@ -120,20 +123,20 @@ READ8_MEMBER( chesstrv_state::diplomat_keypad_r )
}
-static ADDRESS_MAP_START( chesstrv_mem, AS_PROGRAM, 8, chesstrv_state )
+ADDRESS_MAP_START(chesstrv_state::chesstrv_mem)
ADDRESS_MAP_GLOBAL_MASK(0x7ff)
AM_RANGE( 0x0000, 0x07ff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chesstrv_io, AS_IO, 8, chesstrv_state )
+ADDRESS_MAP_START(chesstrv_state::chesstrv_io)
AM_RANGE( 0x00, 0x00 ) AM_READWRITE( ram_addr_r, ram_addr_w )
AM_RANGE( 0x01, 0x01 ) AM_WRITE( display_w )
AM_RANGE( 0x04, 0x04 ) AM_READWRITE( ram_r, ram_w )
AM_RANGE( 0x05, 0x05 ) AM_READWRITE( keypad_r, matrix_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( borisdpl_io, AS_IO, 8, chesstrv_state )
+ADDRESS_MAP_START(chesstrv_state::borisdpl_io)
AM_RANGE( 0x00, 0x00 ) AM_READWRITE( diplomat_keypad_r, matrix_w )
AM_RANGE( 0x01, 0x01 ) AM_WRITE( diplomat_display_w )
AM_RANGE( 0x04, 0x04 ) AM_READWRITE( ram_r, ram_w )
diff --git a/src/mame/drivers/chexx.cpp b/src/mame/drivers/chexx.cpp
index b3ba9ef0659..1bf1bedc4e5 100644
--- a/src/mame/drivers/chexx.cpp
+++ b/src/mame/drivers/chexx.cpp
@@ -81,6 +81,8 @@ public:
virtual void machine_reset() override;
void faceoffh(machine_config &config);
void chexx83(machine_config &config);
+ void chexx83_map(address_map &map);
+ void faceoffh_map(address_map &map);
};
@@ -172,7 +174,7 @@ READ8_MEMBER(chexx_state::input_r)
// Chexx Memory Map
-static ADDRESS_MAP_START( chexx83_map, AS_PROGRAM, 8, chexx_state )
+ADDRESS_MAP_START(chexx_state::chexx83_map)
AM_RANGE(0x0000, 0x007f) AM_RAM AM_MIRROR(0x100) // 6810 - 128 x 8 static RAM
AM_RANGE(0x4000, 0x400f) AM_DEVREADWRITE("via6522", via6522_device, read, write)
AM_RANGE(0x8000, 0x8000) AM_READ(input_r)
@@ -209,7 +211,7 @@ WRITE8_MEMBER(chexx_state::ay_w)
m_ay_cmd = data;
}
-static ADDRESS_MAP_START( faceoffh_map, AS_PROGRAM, 8, chexx_state )
+ADDRESS_MAP_START(chexx_state::faceoffh_map)
AM_RANGE(0x0000, 0x007f) AM_RAM AM_MIRROR(0x100) // M58725P - 2KB
AM_RANGE(0x4000, 0x400f) AM_DEVREADWRITE("via6522", via6522_device, read, write)
AM_RANGE(0x8000, 0x8000) AM_READ(input_r)
diff --git a/src/mame/drivers/chihiro.cpp b/src/mame/drivers/chihiro.cpp
index e1a34c35533..04dc8159907 100644
--- a/src/mame/drivers/chihiro.cpp
+++ b/src/mame/drivers/chihiro.cpp
@@ -593,6 +593,8 @@ public:
static void an2131sc_configuration(device_t *device);
void chihirogd(machine_config &config);
void chihiro_base(machine_config &config);
+ void chihiro_map(address_map &map);
+ void chihiro_map_io(address_map &map);
private:
void jamtable_disasm(address_space &space, uint32_t address, uint32_t size);
void jamtable_disasm_command(int ref, const std::vector<std::string> &params);
@@ -1698,12 +1700,12 @@ WRITE32_MEMBER(chihiro_state::mediaboard_w)
xbox_base_devs.pic8259_2->ir2_w(0);
}
-static ADDRESS_MAP_START(chihiro_map, AS_PROGRAM, 32, chihiro_state)
+ADDRESS_MAP_START(chihiro_state::chihiro_map)
AM_IMPORT_FROM(xbox_base_map)
AM_RANGE(0xff000000, 0xff07ffff) AM_ROM AM_REGION("bios", 0) AM_MIRROR(0x00f80000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(chihiro_map_io, AS_IO, 32, chihiro_state)
+ADDRESS_MAP_START(chihiro_state::chihiro_map_io)
AM_IMPORT_FROM(xbox_base_map_io)
AM_RANGE(0x4000, 0x40ff) AM_READWRITE(mediaboard_r, mediaboard_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/chinagat.cpp b/src/mame/drivers/chinagat.cpp
index 55596346052..f1bfc6cd1a5 100644
--- a/src/mame/drivers/chinagat.cpp
+++ b/src/mame/drivers/chinagat.cpp
@@ -114,6 +114,12 @@ public:
void saiyugoub2(machine_config &config);
void saiyugoub1(machine_config &config);
void chinagat(machine_config &config);
+ void i8748_map(address_map &map);
+ void main_map(address_map &map);
+ void saiyugoub1_sound_map(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
+ void ym2203c_sound_map(address_map &map);
};
@@ -328,7 +334,7 @@ WRITE_LINE_MEMBER(chinagat_state::saiyugoub1_m5205_irq_w)
m_adpcm_sound_irq = 1;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, chinagat_state )
+ADDRESS_MAP_START(chinagat_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(ddragon_fgvideoram_w) AM_SHARE("fgvideoram")
AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(ddragon_bgvideoram_w) AM_SHARE("bgvideoram")
@@ -349,7 +355,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, chinagat_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, chinagat_state )
+ADDRESS_MAP_START(chinagat_state::sub_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x2000) AM_WRITE(sub_bankswitch_w)
AM_RANGE(0x2800, 0x2800) AM_WRITE(sub_irq_ack_w) /* Called on CPU start and after return from jump table */
@@ -359,7 +365,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, chinagat_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, chinagat_state )
+ADDRESS_MAP_START(chinagat_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -367,7 +373,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, chinagat_state )
AM_RANGE(0xA000, 0xA000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ym2203c_sound_map, AS_PROGRAM, 8, chinagat_state )
+ADDRESS_MAP_START(chinagat_state::ym2203c_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
// 8804 and/or 8805 make a gong sound when the coin goes in
@@ -385,7 +391,7 @@ static ADDRESS_MAP_START( ym2203c_sound_map, AS_PROGRAM, 8, chinagat_state )
AM_RANGE(0xA000, 0xA000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( saiyugoub1_sound_map, AS_PROGRAM, 8, chinagat_state )
+ADDRESS_MAP_START(chinagat_state::saiyugoub1_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -393,7 +399,7 @@ static ADDRESS_MAP_START( saiyugoub1_sound_map, AS_PROGRAM, 8, chinagat_state )
AM_RANGE(0xA000, 0xA000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8748_map, AS_PROGRAM, 8, chinagat_state )
+ADDRESS_MAP_START(chinagat_state::i8748_map)
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0400, 0x07ff) AM_ROM /* i8749 version */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/chinsan.cpp b/src/mame/drivers/chinsan.cpp
index 5887737171c..b52e71a6411 100644
--- a/src/mame/drivers/chinsan.cpp
+++ b/src/mame/drivers/chinsan.cpp
@@ -68,6 +68,10 @@ public:
void chinsan(machine_config &config);
void mayumi(machine_config &config);
+ void chinsan_io_map(address_map &map);
+ void chinsan_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void mayumi_io_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -101,7 +105,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( chinsan_map, AS_PROGRAM, 8, chinsan_state )
+ADDRESS_MAP_START(chinsan_state::chinsan_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("nvram")
@@ -109,12 +113,12 @@ static ADDRESS_MAP_START( chinsan_map, AS_PROGRAM, 8, chinsan_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("color_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, chinsan_state )
+ADDRESS_MAP_START(chinsan_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank0d")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1d")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chinsan_io_map, AS_IO, 8, chinsan_state )
+ADDRESS_MAP_START(chinsan_state::chinsan_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi", i8255_device, read, write)
AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -122,7 +126,7 @@ static ADDRESS_MAP_START( chinsan_io_map, AS_IO, 8, chinsan_state )
AM_RANGE(0x30, 0x30) AM_WRITE(ctrl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mayumi_io_map, AS_IO, 8, chinsan_state )
+ADDRESS_MAP_START(chinsan_state::mayumi_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x30, 0x30) AM_READ_PORT("extra") AM_WRITE(ctrl_w)
AM_RANGE(0xc0, 0xc3) AM_DEVREADWRITE("ppi", i8255_device, read, write)
@@ -501,7 +505,7 @@ MACHINE_CONFIG_START(chinsan_state::chinsan)
MCFG_CPU_ADD("maincpu", MC8123, XTAL(10'000'000)/2) // 317-5012
MCFG_CPU_PROGRAM_MAP(chinsan_map)
MCFG_CPU_IO_MAP(chinsan_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", chinsan_state, vblank_int)
MCFG_NVRAM_ADD_0FILL("nvram")
diff --git a/src/mame/drivers/chqflag.cpp b/src/mame/drivers/chqflag.cpp
index eeabb427ced..2f644db3291 100644
--- a/src/mame/drivers/chqflag.cpp
+++ b/src/mame/drivers/chqflag.cpp
@@ -138,7 +138,7 @@ WRITE8_MEMBER(chqflag_state::chqflag_sh_irqtrigger_w)
/****************************************************************************/
-static ADDRESS_MAP_START( chqflag_map, AS_PROGRAM, 8, chqflag_state )
+ADDRESS_MAP_START(chqflag_state::chqflag_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_DEVICE("bank1000", address_map_bank_device, amap8)
AM_RANGE(0x2000, 0x2007) AM_DEVREADWRITE("k051960", k051960_device, k051937_r, k051937_w) /* Sprite control registers */
@@ -163,7 +163,7 @@ static ADDRESS_MAP_START( chqflag_map, AS_PROGRAM, 8, chqflag_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x48000) /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank1000_map, AS_PROGRAM, 8, chqflag_state )
+ADDRESS_MAP_START(chqflag_state::bank1000_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_READ(k051316_1_ramrom_r) AM_DEVWRITE("k051316_1", k051316_device, write)
AM_RANGE(0x1800, 0x1fff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -185,7 +185,7 @@ WRITE8_MEMBER(chqflag_state::k007232_bankswitch_w)
m_k007232_2->set_bank(bank_A, bank_B);
}
-static ADDRESS_MAP_START( chqflag_sound_map, AS_PROGRAM, 8, chqflag_state )
+ADDRESS_MAP_START(chqflag_state::chqflag_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */
AM_RANGE(0x9000, 0x9000) AM_WRITE(k007232_bankswitch_w) /* 007232 bankswitch */
diff --git a/src/mame/drivers/chsuper.cpp b/src/mame/drivers/chsuper.cpp
index 75460f747e0..8c3f2b89418 100644
--- a/src/mame/drivers/chsuper.cpp
+++ b/src/mame/drivers/chsuper.cpp
@@ -56,6 +56,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void chsuper(machine_config &config);
+ void chsuper_portmap(address_map &map);
+ void chsuper_prg_map(address_map &map);
+ void ramdac_map(address_map &map);
protected:
// driver_device overrides
//virtual void machine_start();
@@ -203,7 +206,7 @@ WRITE8_MEMBER( chsuper_state::chsuper_outportb_w ) // Port EFh
* Memory Map handlers *
***************************/
-static ADDRESS_MAP_START( chsuper_prg_map, AS_PROGRAM, 8, chsuper_state )
+ADDRESS_MAP_START(chsuper_state::chsuper_prg_map)
AM_RANGE(0x00000, 0x0efff) AM_ROM
AM_RANGE(0x00000, 0x01fff) AM_WRITE( chsuper_vram_w )
AM_RANGE(0x0f000, 0x0ffff) AM_RAM AM_REGION("maincpu", 0xf000)
@@ -212,7 +215,7 @@ ADDRESS_MAP_END
// AM_RANGE(0xaff8, 0xaff8) AM_DEVWRITE_MODERN("oki", okim6295_device, write)
-static ADDRESS_MAP_START( chsuper_portmap, AS_IO, 8, chsuper_state )
+ADDRESS_MAP_START(chsuper_state::chsuper_portmap)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs
AM_RANGE( 0x00e8, 0x00e8 ) AM_READ_PORT("IN0")
AM_RANGE( 0x00e9, 0x00e9 ) AM_READ_PORT("IN1")
@@ -343,7 +346,7 @@ static GFXDECODE_START( chsuper )
GFXDECODE_ENTRY( "gfx1", 0x00000, charlayout, 0, 1 )
GFXDECODE_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, chsuper_state )
+ADDRESS_MAP_START(chsuper_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cidelsa.cpp b/src/mame/drivers/cidelsa.cpp
index d41c0579f13..a1ea66882db 100644
--- a/src/mame/drivers/cidelsa.cpp
+++ b/src/mame/drivers/cidelsa.cpp
@@ -141,21 +141,21 @@ WRITE8_MEMBER( draco_state::out1_w )
// Destroyer
-static ADDRESS_MAP_START( destryer_map, AS_PROGRAM, 8, cidelsa_state )
+ADDRESS_MAP_START(cidelsa_state::destryer_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x20ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xf400, 0xf7ff) AM_DEVICE(CDP1869_TAG, cdp1869_device, char_map)
AM_RANGE(0xf800, 0xffff) AM_DEVICE(CDP1869_TAG, cdp1869_device, page_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( destryera_map, AS_PROGRAM, 8, cidelsa_state )
+ADDRESS_MAP_START(cidelsa_state::destryera_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3000, 0x30ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xf400, 0xf7ff) AM_DEVICE(CDP1869_TAG, cdp1869_device, char_map)
AM_RANGE(0xf800, 0xffff) AM_DEVICE(CDP1869_TAG, cdp1869_device, page_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( destryer_io_map, AS_IO, 8, cidelsa_state )
+ADDRESS_MAP_START(cidelsa_state::destryer_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_WRITE(destryer_out1_w)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1")
AM_RANGE(0x03, 0x07) AM_WRITE(cdp1869_w)
@@ -163,14 +163,14 @@ ADDRESS_MAP_END
// Altair
-static ADDRESS_MAP_START( altair_map, AS_PROGRAM, 8, cidelsa_state )
+ADDRESS_MAP_START(cidelsa_state::altair_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x30ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xf400, 0xf7ff) AM_DEVICE(CDP1869_TAG, cdp1869_device, char_map)
AM_RANGE(0xf800, 0xffff) AM_DEVICE(CDP1869_TAG, cdp1869_device, page_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( altair_io_map, AS_IO, 8, cidelsa_state )
+ADDRESS_MAP_START(cidelsa_state::altair_io_map)
AM_RANGE(0x01, 0x01) AM_DEVREAD("ic23", cdp1852_device, read) AM_DEVWRITE("ic26", cdp1852_device, write)
AM_RANGE(0x02, 0x02) AM_DEVREAD("ic24", cdp1852_device, read)
AM_RANGE(0x04, 0x04) AM_DEVREAD("ic25", cdp1852_device, read)
@@ -179,21 +179,21 @@ ADDRESS_MAP_END
// Draco
-static ADDRESS_MAP_START( draco_map, AS_PROGRAM, 8, draco_state )
+ADDRESS_MAP_START(draco_state::draco_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xf400, 0xf7ff) AM_DEVICE(CDP1869_TAG, cdp1869_device, char_map)
AM_RANGE(0xf800, 0xffff) AM_DEVICE(CDP1869_TAG, cdp1869_device, page_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( draco_io_map, AS_IO, 8, draco_state )
+ADDRESS_MAP_START(draco_state::draco_io_map)
AM_RANGE(0x01, 0x01) AM_DEVREAD("ic29", cdp1852_device, read) AM_DEVWRITE("ic32", cdp1852_device, write)
AM_RANGE(0x02, 0x02) AM_DEVREAD("ic30", cdp1852_device, read)
AM_RANGE(0x04, 0x04) AM_DEVREAD("ic31", cdp1852_device, read)
AM_RANGE(0x03, 0x07) AM_WRITE(cdp1869_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( draco_sound_map, AS_PROGRAM, 8, draco_state )
+ADDRESS_MAP_START(draco_state::draco_sound_map)
AM_RANGE(0x000, 0x3ff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cinemat.cpp b/src/mame/drivers/cinemat.cpp
index 3f32e39de7a..10056f88fde 100644
--- a/src/mame/drivers/cinemat.cpp
+++ b/src/mame/drivers/cinemat.cpp
@@ -283,38 +283,38 @@ WRITE8_MEMBER(cinemat_state::qb3_ram_bank_w)
*
*************************************/
-static ADDRESS_MAP_START( program_map_4k, AS_PROGRAM, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::program_map_4k)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_map_8k, AS_PROGRAM, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::program_map_8k)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM
AM_RANGE(0x2000, 0x2fff) AM_MIRROR(0x1000) AM_ROM AM_REGION("maincpu", 0x1000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_map_16k, AS_PROGRAM, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::program_map_16k)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_map_32k, AS_PROGRAM, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::program_map_32k)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_map, AS_DATA, 16, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::data_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_map_qb3, AS_DATA, 16, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::data_map_qb3)
AM_RANGE(0x0000, 0x03ff) AM_RAMBANK("bank1") AM_SHARE("rambase")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::io_map)
AM_RANGE(0x00, 0x0f) AM_READ(inputs_r)
AM_RANGE(0x10, 0x16) AM_READ(switches_r)
AM_RANGE(0x17, 0x17) AM_READ(coin_input_r)
@@ -322,7 +322,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, cinemat_state )
AM_RANGE(0x00, 0x07) AM_DEVWRITE("outlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map_qb3, AS_IO, 8, cinemat_state )
+ADDRESS_MAP_START(cinemat_state::io_map_qb3)
AM_IMPORT_FROM(io_map)
// Some of the outputs here are definitely not mapped through the LS259, since they use multiple bits of data
AM_RANGE(0x00, 0x00) AM_WRITE(qb3_ram_bank_w)
diff --git a/src/mame/drivers/circus.cpp b/src/mame/drivers/circus.cpp
index 6898f800141..764631bfbac 100644
--- a/src/mame/drivers/circus.cpp
+++ b/src/mame/drivers/circus.cpp
@@ -63,7 +63,7 @@ READ8_MEMBER(circus_state::circus_paddle_r)
return ioport("PADDLE")->read();
}
-static ADDRESS_MAP_START( circus_map, AS_PROGRAM, 8, circus_state )
+ADDRESS_MAP_START(circus_state::circus_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x2000) AM_WRITE(circus_clown_x_w)
diff --git a/src/mame/drivers/circusc.cpp b/src/mame/drivers/circusc.cpp
index 4b62f39ef6d..85dc634d72c 100644
--- a/src/mame/drivers/circusc.cpp
+++ b/src/mame/drivers/circusc.cpp
@@ -152,7 +152,7 @@ WRITE_LINE_MEMBER(circusc_state::irq_mask_w)
m_maincpu->set_input_line(M6809_IRQ_LINE, CLEAR_LINE);
}
-static ADDRESS_MAP_START( circusc_map, AS_PROGRAM, 8, circusc_state )
+ADDRESS_MAP_START(circusc_state::circusc_map)
AM_RANGE(0x0000, 0x0007) AM_MIRROR(0x03f8) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
AM_RANGE(0x0400, 0x0400) AM_MIRROR(0x03ff) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w) /* WDOG */
AM_RANGE(0x0800, 0x0800) AM_MIRROR(0x03ff) AM_DEVWRITE("soundlatch", generic_latch_8_device, write) /* SOUND DATA */
@@ -173,7 +173,7 @@ static ADDRESS_MAP_START( circusc_map, AS_PROGRAM, 8, circusc_state )
AM_RANGE(0x6000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, circusc_state )
+ADDRESS_MAP_START(circusc_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read) /* CS0 */
diff --git a/src/mame/drivers/cischeat.cpp b/src/mame/drivers/cischeat.cpp
index 85d8b997c13..72023762d6f 100644
--- a/src/mame/drivers/cischeat.cpp
+++ b/src/mame/drivers/cischeat.cpp
@@ -196,7 +196,7 @@ Cisco Heat.
**************************************************************************/
-static ADDRESS_MAP_START( bigrun_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::bigrun_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN1") AM_WRITE(leds_out_w) // Coins
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN2") AM_WRITE(unknown_out_w) // Buttons
@@ -250,7 +250,7 @@ ADDRESS_MAP_END
bec00-befff < text */
-static ADDRESS_MAP_START( cischeat_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::cischeat_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN1") AM_WRITE(leds_out_w) // Coins
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN2") AM_WRITE(unknown_out_w) // Buttons
@@ -312,7 +312,7 @@ CPU #0 PC 002350 : Warning, vreg 0002 <- 0000
CPU #0 PC 00235C : Warning, vreg 0006 <- 0000
*/
-static ADDRESS_MAP_START( f1gpstar_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::f1gpstar_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN1") // DSW 1 & 2
AM_RANGE(0x080004, 0x080005) AM_READ_PORT("IN2") AM_WRITE(f1gpstar_motor_w) // Buttons
@@ -386,7 +386,7 @@ WRITE16_MEMBER(cischeat_state::wildplt_mux_w)
// Same as f1gpstar, but vregs are slightly different:
-static ADDRESS_MAP_START( wildplt_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::wildplt_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_WRITE(f1gpstr2_io_w) // DSW 1 & 2
AM_RANGE(0x080004, 0x080005) AM_READ(wildplt_mux_r) AM_WRITE(wildplt_mux_w) // Buttons
@@ -429,7 +429,7 @@ ADDRESS_MAP_END
**************************************************************************/
// Same as f1gpstar, but vregs are slightly different:
-static ADDRESS_MAP_START( f1gpstr2_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::f1gpstr2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN1") AM_WRITE(f1gpstr2_io_w) // DSW 1 & 2
AM_RANGE(0x080004, 0x080005) AM_READ_PORT("IN2") AM_WRITE(f1gpstar_motor_w) // Buttons
@@ -570,7 +570,7 @@ WRITE16_MEMBER(cischeat_state::scudhamm_oki_bank_w)
}
}
-static ADDRESS_MAP_START( scudhamm_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::scudhamm_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x082000, 0x082005) AM_DEVWRITE("scroll0", megasys1_tilemap_device, scroll_w)
AM_RANGE(0x082008, 0x08200d) AM_WRITENOP // UNUSED LAYER
@@ -654,7 +654,7 @@ WRITE16_MEMBER(cischeat_state::armchmp2_leds_w)
}
}
-static ADDRESS_MAP_START( armchmp2_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::armchmp2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x082000, 0x082005) AM_DEVWRITE("scroll0", megasys1_tilemap_device, scroll_w)
AM_RANGE(0x082008, 0x08200d) AM_WRITENOP // UNUSED LAYER
@@ -798,7 +798,7 @@ CUSTOM_INPUT_MEMBER(cischeat_state::captflag_motor_busy_r)
return 0;
}
-static ADDRESS_MAP_START( captflag_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::captflag_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x082000, 0x082005) AM_DEVWRITE("scroll0", megasys1_tilemap_device, scroll_w)
AM_RANGE(0x082008, 0x08200d) AM_WRITENOP // UNUSED LAYER
@@ -820,12 +820,12 @@ static ADDRESS_MAP_START( captflag_map, AS_PROGRAM, 16, cischeat_state )
AM_RANGE(0x100060, 0x10007d) AM_RAM // 7-seg? NVRAM?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( captflag_oki1_map, 0, 8, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::captflag_oki1_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("oki1_bank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( captflag_oki2_map, 0, 8, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::captflag_oki2_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("oki2_bank")
ADDRESS_MAP_END
@@ -843,14 +843,14 @@ ADDRESS_MAP_END
Big Run
**************************************************************************/
-static ADDRESS_MAP_START( bigrun_map2, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::bigrun_map2)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share1") // Shared RAM (with Main CPU)
AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("roadram.0") // Road RAM
AM_RANGE(0x0c0000, 0x0c3fff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigrun_map3, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::bigrun_map3)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share2") // Shared RAM (with Main CPU)
AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("roadram.1") // Road RAM
@@ -862,7 +862,7 @@ ADDRESS_MAP_END
Cisco Heat
**************************************************************************/
-static ADDRESS_MAP_START( cischeat_map2, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::cischeat_map2)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share1") // Shared RAM (with Main CPU)
AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("roadram.0") // Road RAM
@@ -871,7 +871,7 @@ static ADDRESS_MAP_START( cischeat_map2, AS_PROGRAM, 16, cischeat_state )
AM_RANGE(0x200000, 0x23ffff) AM_ROM AM_REGION("cpu2",0x40000) // ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cischeat_map3, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::cischeat_map3)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share2") // Shared RAM (with Main CPU)
AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("roadram.1") // Road RAM
@@ -886,7 +886,7 @@ ADDRESS_MAP_END
F1 GrandPrix Star
**************************************************************************/
-static ADDRESS_MAP_START( f1gpstar_map2, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::f1gpstar_map2)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("share1") // Shared RAM (with Main CPU)
AM_RANGE(0x100000, 0x1007ff) AM_RAM AM_SHARE("roadram.0") // Road RAM
@@ -894,7 +894,7 @@ static ADDRESS_MAP_START( f1gpstar_map2, AS_PROGRAM, 16, cischeat_state )
AM_RANGE(0x200000, 0x200001) AM_WRITENOP // watchdog
ADDRESS_MAP_END
-static ADDRESS_MAP_START( f1gpstar_map3, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::f1gpstar_map3)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("share2") // Shared RAM (with Main CPU)
AM_RANGE(0x100000, 0x1007ff) AM_RAM AM_SHARE("roadram.1") // Road RAM
@@ -927,7 +927,7 @@ WRITE16_MEMBER(cischeat_state::bigrun_soundbank_w)
}
}
-static ADDRESS_MAP_START( bigrun_sound_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::bigrun_sound_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040000, 0x040001) AM_DEVREAD("soundlatch", generic_latch_16_device, read) AM_WRITE(bigrun_soundbank_w) // From Main CPU
AM_RANGE(0x060000, 0x060001) AM_DEVWRITE("soundlatch2", generic_latch_16_device, write) // To Main CPU
@@ -952,7 +952,7 @@ WRITE16_MEMBER(cischeat_state::cischeat_soundbank_2_w)
if (ACCESSING_BITS_0_7) m_oki2->set_rom_bank(data & 1);
}
-static ADDRESS_MAP_START( cischeat_sound_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::cischeat_sound_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040002, 0x040003) AM_WRITE(cischeat_soundbank_1_w) // Sample Banking
AM_RANGE(0x040004, 0x040005) AM_WRITE(cischeat_soundbank_2_w) // Sample Banking
@@ -969,7 +969,7 @@ ADDRESS_MAP_END
F1 GrandPrix Star
**************************************************************************/
-static ADDRESS_MAP_START( f1gpstar_sound_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::f1gpstar_sound_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040004, 0x040005) AM_WRITE(cischeat_soundbank_1_w) // Sample Banking (cischeat: 40002)
AM_RANGE(0x040008, 0x040009) AM_WRITE(cischeat_soundbank_2_w) // Sample Banking (cischeat: 40004)
@@ -985,7 +985,7 @@ ADDRESS_MAP_END
F1 GrandPrix Star II
**************************************************************************/
-static ADDRESS_MAP_START( f1gpstr2_sound_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::f1gpstr2_sound_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x040004, 0x040005) AM_WRITE(cischeat_soundbank_1_w) // Sample Banking
AM_RANGE(0x040008, 0x040009) AM_WRITE(cischeat_soundbank_2_w) // Sample Banking
@@ -1006,7 +1006,7 @@ ADDRESS_MAP_END
**************************************************************************/
-static ADDRESS_MAP_START( f1gpstr2_io_map, AS_PROGRAM, 16, cischeat_state )
+ADDRESS_MAP_START(cischeat_state::f1gpstr2_io_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM AM_SHARE("shareio")
AM_RANGE(0x100000, 0x100001) AM_WRITEONLY AM_SHARE("ioready") //
diff --git a/src/mame/drivers/cit220.cpp b/src/mame/drivers/cit220.cpp
index 11db323e73a..7873a949e37 100644
--- a/src/mame/drivers/cit220.cpp
+++ b/src/mame/drivers/cit220.cpp
@@ -31,6 +31,9 @@ public:
SCN2674_DRAW_CHARACTER_MEMBER(draw_character);
void cit220p(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
+ void vram_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
@@ -43,14 +46,14 @@ WRITE_LINE_MEMBER(cit220_state::sod_w)
// probably asserts PBREQ on SCN2674 to access memory at Exxx
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, cit220_state )
+ADDRESS_MAP_START(cit220_state::mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa1ff) AM_ROM AM_REGION("eeprom", 0x800)
AM_RANGE(0xe000, 0xe7ff) AM_RAM // ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, cit220_state )
+ADDRESS_MAP_START(cit220_state::io_map)
AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE("duart", scn2681_device, read, write)
AM_RANGE(0x10, 0x10) AM_DEVREADWRITE("usart", i8251_device, data_r, data_w)
AM_RANGE(0x11, 0x11) AM_DEVREADWRITE("usart", i8251_device, status_r, control_w)
@@ -64,7 +67,7 @@ SCN2674_DRAW_CHARACTER_MEMBER(cit220_state::draw_character)
{
}
-static ADDRESS_MAP_START( vram_map, 0, 8, cit220_state )
+ADDRESS_MAP_START(cit220_state::vram_map)
AM_RANGE(0x0000, 0x27ff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/citycon.cpp b/src/mame/drivers/citycon.cpp
index 8a3a5aeb1c2..8f980e1e48c 100644
--- a/src/mame/drivers/citycon.cpp
+++ b/src/mame/drivers/citycon.cpp
@@ -32,7 +32,7 @@ READ8_MEMBER(citycon_state::citycon_irq_ack_r)
return 0;
}
-static ADDRESS_MAP_START( citycon_map, AS_PROGRAM, 8, citycon_state )
+ADDRESS_MAP_START(citycon_state::citycon_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(citycon_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x2000, 0x20ff) AM_RAM_WRITE(citycon_linecolor_w) AM_SHARE("linecolor") AM_MIRROR(0x0700)
@@ -46,7 +46,7 @@ static ADDRESS_MAP_START( citycon_map, AS_PROGRAM, 8, citycon_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, citycon_state )
+ADDRESS_MAP_START(citycon_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x4002, 0x4002) AM_DEVREAD("aysnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/ckz80.cpp b/src/mame/drivers/ckz80.cpp
index f22e97e740f..e91a15e1d4a 100644
--- a/src/mame/drivers/ckz80.cpp
+++ b/src/mame/drivers/ckz80.cpp
@@ -95,6 +95,8 @@ public:
DECLARE_WRITE8_MEMBER(master_trampoline_w);
void master(machine_config &config);
+ void master_map(address_map &map);
+ void master_trampoline(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -276,7 +278,7 @@ DRIVER_INIT_MEMBER(ckz80_state, master)
// Master
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, ckz80_state )
+ADDRESS_MAP_START(ckz80_state::master_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x6000) AM_ROM AM_REGION("maincpu", 0) // _A15
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1fff) AM_READWRITE(master_input_r, master_control_w) // A13
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x3800) AM_RAM // A14
@@ -304,7 +306,7 @@ READ8_MEMBER(ckz80_state::master_trampoline_r)
return data;
}
-static ADDRESS_MAP_START( master_trampoline, AS_PROGRAM, 8, ckz80_state )
+ADDRESS_MAP_START(ckz80_state::master_trampoline)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(master_trampoline_r, master_trampoline_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/clayshoo.cpp b/src/mame/drivers/clayshoo.cpp
index 0e897121209..384b851fa6d 100644
--- a/src/mame/drivers/clayshoo.cpp
+++ b/src/mame/drivers/clayshoo.cpp
@@ -50,6 +50,8 @@ public:
void create_analog_timers( );
required_device<cpu_device> m_maincpu;
void clayshoo(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
};
@@ -205,7 +207,7 @@ uint32_t clayshoo_state::screen_update_clayshoo(screen_device &screen, bitmap_rg
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, clayshoo_state )
+ADDRESS_MAP_START(clayshoo_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x4000, 0x47ff) AM_ROM
@@ -222,7 +224,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, clayshoo_state )
+ADDRESS_MAP_START(clayshoo_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
diff --git a/src/mame/drivers/clcd.cpp b/src/mame/drivers/clcd.cpp
index 5928d3d6f0a..a836c0e84f8 100644
--- a/src/mame/drivers/clcd.cpp
+++ b/src/mame/drivers/clcd.cpp
@@ -552,6 +552,8 @@ public:
void nvram_init(nvram_device &nvram, void *data, size_t size);
void clcd(machine_config &config);
+ void clcd_banked_mem(address_map &map);
+ void clcd_mem(address_map &map);
private:
required_device<m65c02_device> m_maincpu;
required_device<mos6551_device> m_acia;
@@ -602,7 +604,7 @@ void clcd_state::nvram_init(nvram_device &nvram, void *data, size_t size)
}
-static ADDRESS_MAP_START( clcd_banked_mem, AS_PROGRAM, 8, clcd_state )
+ADDRESS_MAP_START(clcd_state::clcd_banked_mem)
/* KERN/APPL/RAM */
AM_RANGE(0x00000, 0x1ffff) AM_MIRROR(0x40000) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0x20000, 0x3ffff) AM_MIRROR(0x40000) AM_ROM AM_REGION("maincpu",0)
@@ -615,7 +617,7 @@ static ADDRESS_MAP_START( clcd_banked_mem, AS_PROGRAM, 8, clcd_state )
AM_RANGE(0x8e000, 0x8f7ff) AM_READ(mmu_offset5_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( clcd_mem, AS_PROGRAM, 8, clcd_state )
+ADDRESS_MAP_START(clcd_state::clcd_mem)
AM_RANGE(0x0000, 0x0fff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0x1000, 0x3fff) AM_DEVREADWRITE("bank1", address_map_bank_device, read8, write8)
AM_RANGE(0x4000, 0x7fff) AM_DEVREADWRITE("bank2", address_map_bank_device, read8, write8)
diff --git a/src/mame/drivers/cliffhgr.cpp b/src/mame/drivers/cliffhgr.cpp
index 3e1164fb089..db54a1d6c8f 100644
--- a/src/mame/drivers/cliffhgr.cpp
+++ b/src/mame/drivers/cliffhgr.cpp
@@ -125,6 +125,8 @@ public:
required_device<discrete_device> m_discrete;
required_device<screen_device> m_screen;
void cliffhgr(machine_config &config);
+ void mainmem(address_map &map);
+ void mainport(address_map &map);
};
@@ -238,13 +240,13 @@ void cliffhgr_state::machine_reset()
/********************************************************/
-static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8, cliffhgr_state )
+ADDRESS_MAP_START(cliffhgr_state::mainmem)
AM_RANGE(0x0000, 0xbfff) AM_ROM /* ROM */
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") /* NVRAM */
AM_RANGE(0xe800, 0xefff) AM_RAM /* RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mainport, AS_IO, 8, cliffhgr_state )
+ADDRESS_MAP_START(cliffhgr_state::mainport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x44, 0x44) AM_DEVWRITE("tms9928a", tms9928a_device, vram_write)
AM_RANGE(0x45, 0x45) AM_DEVREAD("tms9928a", tms9928a_device, vram_read)
diff --git a/src/mame/drivers/cloak.cpp b/src/mame/drivers/cloak.cpp
index f0de8641d53..f9a528aa199 100644
--- a/src/mame/drivers/cloak.cpp
+++ b/src/mame/drivers/cloak.cpp
@@ -180,7 +180,7 @@ WRITE8_MEMBER(cloak_state::cloak_nvram_enable_w)
*
*************************************/
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, cloak_state )
+ADDRESS_MAP_START(cloak_state::master_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(cloak_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share1")
@@ -208,7 +208,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, cloak_state )
+ADDRESS_MAP_START(cloak_state::slave_map)
AM_RANGE(0x0000, 0x0007) AM_RAM
AM_RANGE(0x0008, 0x000f) AM_READWRITE(graph_processor_r, graph_processor_w)
AM_RANGE(0x0010, 0x07ff) AM_RAM
diff --git a/src/mame/drivers/cloud9.cpp b/src/mame/drivers/cloud9.cpp
index c40d1a64564..e1cf83946bc 100644
--- a/src/mame/drivers/cloud9.cpp
+++ b/src/mame/drivers/cloud9.cpp
@@ -276,7 +276,7 @@ WRITE8_MEMBER(cloud9_state::nvram_store_w)
*
*************************************/
-static ADDRESS_MAP_START( cloud9_map, AS_PROGRAM, 8, cloud9_state )
+ADDRESS_MAP_START(cloud9_state::cloud9_map)
AM_RANGE(0x0000, 0x4fff) AM_ROMBANK("bank1") AM_WRITE(cloud9_videoram_w)
AM_RANGE(0x0000, 0x0001) AM_WRITE(cloud9_bitmode_addr_w)
AM_RANGE(0x0002, 0x0002) AM_READWRITE(cloud9_bitmode_r, cloud9_bitmode_w)
diff --git a/src/mame/drivers/clowndwn.cpp b/src/mame/drivers/clowndwn.cpp
index b783f331bf8..c52dbb4ece2 100644
--- a/src/mame/drivers/clowndwn.cpp
+++ b/src/mame/drivers/clowndwn.cpp
@@ -28,9 +28,10 @@ public:
required_device<cpu_device> m_maincpu;
void clowndwn(machine_config &config);
+ void clowndwn_map(address_map &map);
};
-static ADDRESS_MAP_START(clowndwn_map, AS_PROGRAM, 8, clowndwn_state)
+ADDRESS_MAP_START(clowndwn_state::clowndwn_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x4100, 0x4103) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x4200, 0x4203) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
diff --git a/src/mame/drivers/clpoker.cpp b/src/mame/drivers/clpoker.cpp
index f2dd0b9c944..9bec05b97c2 100644
--- a/src/mame/drivers/clpoker.cpp
+++ b/src/mame/drivers/clpoker.cpp
@@ -58,6 +58,9 @@ public:
u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void clpoker(machine_config &config);
+ void io_map(address_map &map);
+ void prg_map(address_map &map);
+ void ramdac_map(address_map &map);
protected:
virtual void video_start() override;
@@ -76,7 +79,7 @@ private:
bool m_nmi_enable;
};
-static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, clpoker_state )
+ADDRESS_MAP_START(clpoker_state::prg_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram")
@@ -85,7 +88,7 @@ static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, clpoker_state )
AM_RANGE(0xf002, 0xf002) AM_DEVWRITE("ramdac", ramdac_device, mask_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, clpoker_state )
+ADDRESS_MAP_START(clpoker_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi_outputs", i8255_device, read, write)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi_inputs", i8255_device, read, write)
@@ -95,7 +98,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, clpoker_state )
AM_RANGE(0xc0, 0xc0) AM_READNOP // mystery read at startup
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, clpoker_state )
+ADDRESS_MAP_START(clpoker_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/clshroad.cpp b/src/mame/drivers/clshroad.cpp
index a85924ba491..c5659435ff9 100644
--- a/src/mame/drivers/clshroad.cpp
+++ b/src/mame/drivers/clshroad.cpp
@@ -70,7 +70,7 @@ WRITE_LINE_MEMBER(clshroad_state::sound_irq_mask_w)
}
-static ADDRESS_MAP_START( clshroad_map, AS_PROGRAM, 8, clshroad_state )
+ADDRESS_MAP_START(clshroad_state::clshroad_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x95ff) AM_RAM
AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE("share1")
@@ -83,7 +83,7 @@ static ADDRESS_MAP_START( clshroad_map, AS_PROGRAM, 8, clshroad_state )
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(vram_0_w) AM_SHARE("vram_0") // Layer 0
ADDRESS_MAP_END
-static ADDRESS_MAP_START( clshroad_sound_map, AS_PROGRAM, 8, clshroad_state )
+ADDRESS_MAP_START(clshroad_state::clshroad_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_DEVWRITE("custom", wiping_sound_device, sound_w)
AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE("share1")
diff --git a/src/mame/drivers/cm1800.cpp b/src/mame/drivers/cm1800.cpp
index f76fab329d1..5abf613bf2d 100644
--- a/src/mame/drivers/cm1800.cpp
+++ b/src/mame/drivers/cm1800.cpp
@@ -53,6 +53,8 @@ public:
DECLARE_WRITE8_MEMBER(port00_w);
void cm1800(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -77,13 +79,13 @@ READ8_MEMBER( cm1800_state::port00_r )
return result;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, cm1800_state )
+ADDRESS_MAP_START(cm1800_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x07ff ) AM_ROM AM_REGION("roms", 0)
AM_RANGE( 0x0800, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, cm1800_state )
+ADDRESS_MAP_START(cm1800_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_READWRITE(port00_r,port00_w)
AM_RANGE(0x01, 0x01) AM_READ(port01_r)
diff --git a/src/mame/drivers/cmi.cpp b/src/mame/drivers/cmi.cpp
index 675ad420f95..ad41f60500a 100644
--- a/src/mame/drivers/cmi.cpp
+++ b/src/mame/drivers/cmi.cpp
@@ -558,6 +558,12 @@ public:
DECLARE_WRITE_LINE_MEMBER( mkbd_acia_clock );
void cmi2x(machine_config &config);
+ void alphakeys_map(address_map &map);
+ void cmi07cpu_map(address_map &map);
+ void maincpu1_map(address_map &map);
+ void maincpu2_map(address_map &map);
+ void midicpu_map(address_map &map);
+ void muskeys_map(address_map &map);
protected:
required_device<mc6809e_device> m_maincpu1;
@@ -1063,15 +1069,15 @@ READ16_MEMBER( cmi_state::midi_dma_r )
}
/* The maps are dynamically populated */
-static ADDRESS_MAP_START( maincpu1_map, AS_PROGRAM, 8, cmi_state )
+ADDRESS_MAP_START(cmi_state::maincpu1_map)
AM_RANGE(0xfffe, 0xffff) AM_READ(vector_r<0>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maincpu2_map, AS_PROGRAM, 8, cmi_state )
+ADDRESS_MAP_START(cmi_state::maincpu2_map)
AM_RANGE(0xfffe, 0xffff) AM_READ(vector_r<1>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( muskeys_map, AS_PROGRAM, 8, cmi_state)
+ADDRESS_MAP_START(cmi_state::muskeys_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0080, 0x0083) AM_DEVREADWRITE("cmi10_pia_u21", pia6821_device, read, write)
@@ -1083,7 +1089,7 @@ static ADDRESS_MAP_START( muskeys_map, AS_PROGRAM, 8, cmi_state)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphakeys_map, AS_PROGRAM, 8, cmi_state )
+ADDRESS_MAP_START(cmi_state::alphakeys_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x4000, 0x7fff) AM_READ_PORT("ANK_OPTIONS")
@@ -1091,7 +1097,7 @@ static ADDRESS_MAP_START( alphakeys_map, AS_PROGRAM, 8, cmi_state )
AM_RANGE(0xc000, 0xc3ff) AM_ROM AM_MIRROR(0x3c00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( midicpu_map, AS_PROGRAM, 16, cmi_state )
+ADDRESS_MAP_START(cmi_state::midicpu_map)
AM_RANGE(0x000000, 0x003fff) AM_ROM
AM_RANGE(0x040000, 0x05ffff) AM_READWRITE(midi_dma_r, midi_dma_w)
// AM_RANGE(0x060000, 0x06001f) TIMERS
@@ -1100,7 +1106,7 @@ static ADDRESS_MAP_START( midicpu_map, AS_PROGRAM, 16, cmi_state )
AM_RANGE(0x080000, 0x083fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cmi07cpu_map, AS_PROGRAM, 8, cmi_state )
+ADDRESS_MAP_START(cmi_state::cmi07cpu_map)
AM_RANGE(0x0000, 0x3fff) AM_NOP // TODO
AM_RANGE(0x4000, 0x4fff) AM_NOP // TODO
AM_RANGE(0x8000, 0x8fff) AM_DEVREADWRITE("cmi07_ptm", ptm6840_device, read, write)
diff --git a/src/mame/drivers/cmmb.cpp b/src/mame/drivers/cmmb.cpp
index 0195fbef821..bd3b43e7541 100644
--- a/src/mame/drivers/cmmb.cpp
+++ b/src/mame/drivers/cmmb.cpp
@@ -99,6 +99,7 @@ public:
uint32_t screen_update_cmmb(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(vblank_irq);
void cmmb(machine_config &config);
+ void cmmb_map(address_map &map);
};
@@ -203,7 +204,7 @@ WRITE8_MEMBER(cmmb_state::flash_dbg_1_w)
}
/* overlap empty addresses */
-static ADDRESS_MAP_START( cmmb_map, AS_PROGRAM, 8, cmmb_state )
+ADDRESS_MAP_START(cmmb_state::cmmb_map)
ADDRESS_MAP_GLOBAL_MASK(0xffff)
AM_RANGE(0x0000, 0x0fff) AM_RAM /* zero page address */
// AM_RANGE(0x13c0, 0x13ff) AM_RAM //spriteram
diff --git a/src/mame/drivers/cninja.cpp b/src/mame/drivers/cninja.cpp
index f0e83166a32..f59d03ae22f 100644
--- a/src/mame/drivers/cninja.cpp
+++ b/src/mame/drivers/cninja.cpp
@@ -106,7 +106,7 @@ READ16_MEMBER(cninja_state::cninjabl2_sprite_dma_r)
}
-static ADDRESS_MAP_START( cninja_map, AS_PROGRAM, 16, cninja_state )
+ADDRESS_MAP_START(cninja_state::cninja_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x140000, 0x14000f) AM_WRITE(cninja_pf12_control_w)
@@ -134,7 +134,7 @@ static ADDRESS_MAP_START( cninja_map, AS_PROGRAM, 16, cninja_state )
AM_RANGE(0x308000, 0x308fff) AM_WRITENOP /* Bootleg only */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cninjabl_map, AS_PROGRAM, 16, cninja_state )
+ADDRESS_MAP_START(cninja_state::cninjabl_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x138000, 0x1387ff) AM_RAM AM_SHARE("spriteram") /* bootleg sprite-ram (sprites rewritten here in new format) */
@@ -208,7 +208,7 @@ WRITE16_MEMBER( cninja_state::sshangha_protection_region_6_146_w )
m_ioprot->write_data( space, deco146_addr, data, mem_mask, cs );
}
-static ADDRESS_MAP_START( edrandy_map, AS_PROGRAM, 16, cninja_state )
+ADDRESS_MAP_START(cninja_state::edrandy_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x140000, 0x14000f) AM_WRITE(cninja_pf12_control_w)
@@ -241,7 +241,7 @@ WRITE16_MEMBER(cninja_state::robocop2_priority_w)
COMBINE_DATA(&m_priority);
}
-static ADDRESS_MAP_START( robocop2_map, AS_PROGRAM, 16, cninja_state )
+ADDRESS_MAP_START(cninja_state::robocop2_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x140000, 0x14000f) AM_WRITE(cninja_pf12_control_w)
@@ -296,7 +296,7 @@ READ16_MEMBER( cninja_state::mutantf_71_r )
return 0xffff; // todo
}
-static ADDRESS_MAP_START( mutantf_map, AS_PROGRAM, 16, cninja_state )
+ADDRESS_MAP_START(cninja_state::mutantf_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram")
@@ -325,7 +325,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cninja_state )
+ADDRESS_MAP_START(cninja_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_device, read, write)
@@ -337,7 +337,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cninja_state )
AM_RANGE(0x1ff400, 0x1ff403) AM_DEVWRITE("audiocpu", h6280_device, irq_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map_mutantf, AS_PROGRAM, 8, cninja_state )
+ADDRESS_MAP_START(cninja_state::sound_map_mutantf)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_NOP
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -349,7 +349,7 @@ static ADDRESS_MAP_START( sound_map_mutantf, AS_PROGRAM, 8, cninja_state )
AM_RANGE(0x1ff400, 0x1ff403) AM_DEVWRITE("audiocpu", h6280_device, irq_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stoneage_s_map, AS_PROGRAM, 8, cninja_state )
+ADDRESS_MAP_START(cninja_state::stoneage_s_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -357,7 +357,7 @@ static ADDRESS_MAP_START( stoneage_s_map, AS_PROGRAM, 8, cninja_state )
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("ioprot", deco_146_base_device, soundlatch_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cninjabl_sound_map, AS_PROGRAM, 8, cninja_state )
+ADDRESS_MAP_START(cninja_state::cninjabl_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -365,7 +365,7 @@ static ADDRESS_MAP_START( cninjabl_sound_map, AS_PROGRAM, 8, cninja_state )
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cninjabl2_s_map, AS_PROGRAM, 8, cninja_state )
+ADDRESS_MAP_START(cninja_state::cninjabl2_s_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(cninjabl2_oki_bank_w)
@@ -373,7 +373,7 @@ static ADDRESS_MAP_START( cninjabl2_s_map, AS_PROGRAM, 8, cninja_state )
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("ioprot", deco_146_base_device, soundlatch_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cninjabl2_oki_map, 0, 8, cninja_state )
+ADDRESS_MAP_START(cninja_state::cninjabl2_oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM AM_REGION("oki1", 0)
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cntsteer.cpp b/src/mame/drivers/cntsteer.cpp
index 21d2a3e8e21..1f9dacc4147 100644
--- a/src/mame/drivers/cntsteer.cpp
+++ b/src/mame/drivers/cntsteer.cpp
@@ -122,6 +122,11 @@ public:
void zerotrgt_rearrange_gfx( int romsize, int romarea );
void cntsteer(machine_config &config);
void zerotrgt(machine_config &config);
+ void cntsteer_cpu1_map(address_map &map);
+ void cntsteer_cpu2_map(address_map &map);
+ void gekitsui_cpu1_map(address_map &map);
+ void gekitsui_cpu2_map(address_map &map);
+ void sound_map(address_map &map);
};
@@ -574,7 +579,7 @@ READ8_MEMBER(cntsteer_state::cntsteer_adx_r)
/***************************************************************************/
-static ADDRESS_MAP_START( gekitsui_cpu1_map, AS_PROGRAM, 8, cntsteer_state )
+ADDRESS_MAP_START(cntsteer_state::gekitsui_cpu1_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x11ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x1200, 0x1fff) AM_RAM
@@ -584,7 +589,7 @@ static ADDRESS_MAP_START( gekitsui_cpu1_map, AS_PROGRAM, 8, cntsteer_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gekitsui_cpu2_map, AS_PROGRAM, 8, cntsteer_state )
+ADDRESS_MAP_START(cntsteer_state::gekitsui_cpu2_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(cntsteer_background_w) AM_SHARE("videoram2")
AM_RANGE(0x3000, 0x3000) AM_READ_PORT("DSW0")
@@ -597,7 +602,7 @@ static ADDRESS_MAP_START( gekitsui_cpu2_map, AS_PROGRAM, 8, cntsteer_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cntsteer_cpu1_map, AS_PROGRAM, 8, cntsteer_state )
+ADDRESS_MAP_START(cntsteer_state::cntsteer_cpu1_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x11ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(cntsteer_foreground_vram_w) AM_SHARE("videoram")
@@ -607,7 +612,7 @@ static ADDRESS_MAP_START( cntsteer_cpu1_map, AS_PROGRAM, 8, cntsteer_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cntsteer_cpu2_map, AS_PROGRAM, 8, cntsteer_state )
+ADDRESS_MAP_START(cntsteer_state::cntsteer_cpu2_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(cntsteer_background_w) AM_SHARE("videoram2")
AM_RANGE(0x2000, 0x2fff) AM_READWRITE(cntsteer_background_mirror_r,cntsteer_background_w)
@@ -647,7 +652,7 @@ INTERRUPT_GEN_MEMBER(cntsteer_state::sound_interrupt)
device.execute().set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cntsteer_state )
+ADDRESS_MAP_START(cntsteer_state::sound_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
// AM_RANGE(0x1000, 0x1000) AM_WRITE(nmiack_w)
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_device, data_w)
diff --git a/src/mame/drivers/cobra.cpp b/src/mame/drivers/cobra.cpp
index c3e4d238ff2..7b15e00982c 100644
--- a/src/mame/drivers/cobra.cpp
+++ b/src/mame/drivers/cobra.cpp
@@ -843,6 +843,9 @@ public:
void cobra_video_exit();
int decode_debug_state_value(int v);
void cobra(machine_config &config);
+ void cobra_gfx_map(address_map &map);
+ void cobra_main_map(address_map &map);
+ void cobra_sub_map(address_map &map);
};
void cobra_renderer::render_color_scan(int32_t scanline, const extent_t &extent, const cobra_polydata &extradata, int threadid)
@@ -1737,7 +1740,7 @@ WRITE32_MEMBER(cobra_state::main_cpu_dc_store)
}
}
-static ADDRESS_MAP_START( cobra_main_map, AS_PROGRAM, 64, cobra_state )
+ADDRESS_MAP_START(cobra_state::cobra_main_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x07c00000, 0x07ffffff) AM_RAM
AM_RANGE(0x80000cf8, 0x80000cff) AM_READWRITE(main_mpc106_r, main_mpc106_w)
@@ -2077,7 +2080,7 @@ WRITE8_MEMBER(cobra_state::sub_jvs_w)
}
}
-static ADDRESS_MAP_START( cobra_sub_map, AS_PROGRAM, 32, cobra_state )
+ADDRESS_MAP_START(cobra_state::cobra_sub_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("sub_ram") // Main RAM
AM_RANGE(0x70000000, 0x7003ffff) AM_READWRITE(sub_comram_r, sub_comram_w) // Double buffered shared RAM between Main and Sub
// AM_RANGE(0x78000000, 0x780000ff) AM_NOP // SCSI controller (unused)
@@ -3183,7 +3186,7 @@ WRITE64_MEMBER(cobra_state::gfx_debug_state_w)
}
}
-static ADDRESS_MAP_START( cobra_gfx_map, AS_PROGRAM, 64, cobra_state )
+ADDRESS_MAP_START(cobra_state::cobra_gfx_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("gfx_main_ram_0")
AM_RANGE(0x07c00000, 0x07ffffff) AM_RAM AM_SHARE("gfx_main_ram_1")
AM_RANGE(0x10000000, 0x100007ff) AM_WRITE(gfx_fifo0_w)
diff --git a/src/mame/drivers/coco12.cpp b/src/mame/drivers/coco12.cpp
index d5d65073aa7..c07805c817f 100644
--- a/src/mame/drivers/coco12.cpp
+++ b/src/mame/drivers/coco12.cpp
@@ -54,7 +54,7 @@
// ADDRESS_MAP( coco_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( coco_mem, AS_PROGRAM, 8, coco_state )
+ADDRESS_MAP_START(coco_state::coco_mem)
ADDRESS_MAP_END
@@ -398,7 +398,7 @@ MACHINE_CONFIG_END
// MACHINE_CONFIG ( coco_floating )
//-------------------------------------------------
-static ADDRESS_MAP_START(coco_floating_map, AS_PROGRAM, 8, coco_state)
+ADDRESS_MAP_START(coco_state::coco_floating_map)
AM_RANGE(0x0000, 0xFFFF) AM_READ(floating_bus_read)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/coco3.cpp b/src/mame/drivers/coco3.cpp
index fa07e4852c3..24ec720cb55 100644
--- a/src/mame/drivers/coco3.cpp
+++ b/src/mame/drivers/coco3.cpp
@@ -30,7 +30,7 @@
// ADDRESS_MAP( coco3_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( coco3_mem, AS_PROGRAM, 8, coco3_state )
+ADDRESS_MAP_START(coco3_state::coco3_mem)
AM_RANGE(0x0000, 0x1FFF) AM_READ_BANK("rbank0") AM_WRITE_BANK("wbank0")
AM_RANGE(0x2000, 0x3FFF) AM_READ_BANK("rbank1") AM_WRITE_BANK("wbank1")
AM_RANGE(0x4000, 0x5FFF) AM_READ_BANK("rbank2") AM_WRITE_BANK("wbank2")
diff --git a/src/mame/drivers/cocoloco.cpp b/src/mame/drivers/cocoloco.cpp
index a42c1859a1d..6d387910ed7 100644
--- a/src/mame/drivers/cocoloco.cpp
+++ b/src/mame/drivers/cocoloco.cpp
@@ -233,6 +233,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void cocoloco(machine_config &config);
+ void cocoloco_map(address_map &map);
};
/***********************************
@@ -398,7 +399,7 @@ WRITE8_MEMBER( cocoloco_state::coincounter_w )
* Memory Map Information *
***********************************/
-static ADDRESS_MAP_START( cocoloco_map, AS_PROGRAM, 8, cocoloco_state )
+ADDRESS_MAP_START(cocoloco_state::cocoloco_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(vram_r, vram_w) // 256 x 256 x 1
AM_RANGE(0x6001, 0x6001) AM_DEVREAD("ay8910", ay8910_device, data_r)
diff --git a/src/mame/drivers/codata.cpp b/src/mame/drivers/codata.cpp
index 9e7575bf4f8..d85cb857376 100644
--- a/src/mame/drivers/codata.cpp
+++ b/src/mame/drivers/codata.cpp
@@ -27,13 +27,14 @@ public:
{ }
void codata(machine_config &config);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_shared_ptr<uint16_t> m_p_base;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 16, codata_state)
+ADDRESS_MAP_START(codata_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x200000, 0x203fff) AM_ROM AM_REGION("user1", 0);
diff --git a/src/mame/drivers/coinmstr.cpp b/src/mame/drivers/coinmstr.cpp
index 6b4e41caa3d..bdeb94c070b 100644
--- a/src/mame/drivers/coinmstr.cpp
+++ b/src/mame/drivers/coinmstr.cpp
@@ -181,6 +181,13 @@ public:
void jpcoin(machine_config &config);
void quizmstr(machine_config &config);
void trailblz(machine_config &config);
+ void coinmstr_map(address_map &map);
+ void jpcoin_io_map(address_map &map);
+ void jpcoin_map(address_map &map);
+ void pokeroul_io_map(address_map &map);
+ void quizmstr_io_map(address_map &map);
+ void supnudg2_io_map(address_map &map);
+ void trailblz_io_map(address_map &map);
};
@@ -332,7 +339,7 @@ READ8_MEMBER(coinmstr_state::ff_r)
// Common memory map
-static ADDRESS_MAP_START( coinmstr_map, AS_PROGRAM, 8, coinmstr_state )
+ADDRESS_MAP_START(coinmstr_state::coinmstr_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(quizmstr_bg_w) AM_SHARE("videoram")
@@ -342,7 +349,7 @@ static ADDRESS_MAP_START( coinmstr_map, AS_PROGRAM, 8, coinmstr_state )
ADDRESS_MAP_END
/* 2x 6462 hardware C000-DFFF & E000-FFFF */
-static ADDRESS_MAP_START( jpcoin_map, AS_PROGRAM, 8, coinmstr_state )
+ADDRESS_MAP_START(coinmstr_state::jpcoin_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM /* 2x 6462 hardware */
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(quizmstr_bg_w) AM_SHARE("videoram")
@@ -353,7 +360,7 @@ ADDRESS_MAP_END
// Different I/O mappping for every game
-static ADDRESS_MAP_START( quizmstr_io_map, AS_IO, 8, coinmstr_state )
+ADDRESS_MAP_START(coinmstr_state::quizmstr_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(question_r)
@@ -370,7 +377,7 @@ static ADDRESS_MAP_START( quizmstr_io_map, AS_IO, 8, coinmstr_state )
AM_RANGE(0xc0, 0xc3) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trailblz_io_map, AS_IO, 8, coinmstr_state )
+ADDRESS_MAP_START(coinmstr_state::trailblz_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(question_r)
AM_RANGE(0x00, 0x03) AM_WRITE(question_w)
@@ -384,7 +391,7 @@ static ADDRESS_MAP_START( trailblz_io_map, AS_IO, 8, coinmstr_state )
AM_RANGE(0xc1, 0xc3) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( supnudg2_io_map, AS_IO, 8, coinmstr_state )
+ADDRESS_MAP_START(coinmstr_state::supnudg2_io_map)
/*
out 40
in 40
@@ -428,7 +435,7 @@ E0-E1 CRTC
AM_RANGE(0xc0, 0xc3) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pokeroul_io_map, AS_IO, 8, coinmstr_state )
+ADDRESS_MAP_START(coinmstr_state::pokeroul_io_map)
/*
out 68
in 69
@@ -460,7 +467,7 @@ E0-E1 CRTC
AM_RANGE(0xc0, 0xc1) AM_READ(ff_r) /* needed to boot */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jpcoin_io_map, AS_IO, 8, coinmstr_state )
+ADDRESS_MAP_START(coinmstr_state::jpcoin_io_map)
/*
out C0
in C1
diff --git a/src/mame/drivers/coinmvga.cpp b/src/mame/drivers/coinmvga.cpp
index adbdeb40af6..01919609061 100644
--- a/src/mame/drivers/coinmvga.cpp
+++ b/src/mame/drivers/coinmvga.cpp
@@ -254,6 +254,10 @@ public:
required_device<palette_device> m_palette2;
void coinmvga(machine_config &config);
+ void coinmvga_io_map(address_map &map);
+ void coinmvga_map(address_map &map);
+ void ramdac2_map(address_map &map);
+ void ramdac_map(address_map &map);
};
@@ -311,7 +315,7 @@ READ16_MEMBER(coinmvga_state::test_r)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( coinmvga_map, AS_PROGRAM, 16, coinmvga_state )
+ADDRESS_MAP_START(coinmvga_state::coinmvga_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0) //maybe not
@@ -338,7 +342,7 @@ static ADDRESS_MAP_START( coinmvga_map, AS_PROGRAM, 16, coinmvga_state )
//0x800008 "arrow" w?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( coinmvga_io_map, AS_IO, 16, coinmvga_state )
+ADDRESS_MAP_START(coinmvga_state::coinmvga_io_map)
/* Digital I/O ports (ports 4-B are valid on 16-bit H8/3xx) */
// AM_RANGE(h8_device::PORT_4, h8_device::PORT_4)
// AM_RANGE(h8_device::PORT_5, h8_device::PORT_5)
@@ -618,11 +622,11 @@ INTERRUPT_GEN_MEMBER(coinmvga_state::vblank_irq)
* Machine Drivers *
*************************/
-static ADDRESS_MAP_START( ramdac_map, 0, 8, coinmvga_state )
+ADDRESS_MAP_START(coinmvga_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac2_map, 0, 8, coinmvga_state )
+ADDRESS_MAP_START(coinmvga_state::ramdac2_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac2",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/coleco.cpp b/src/mame/drivers/coleco.cpp
index f99f5185335..2497c0be362 100644
--- a/src/mame/drivers/coleco.cpp
+++ b/src/mame/drivers/coleco.cpp
@@ -94,13 +94,13 @@ WRITE8_MEMBER( coleco_state::paddle_on_w )
/* Memory Maps */
-static ADDRESS_MAP_START( coleco_map, AS_PROGRAM, 8, coleco_state )
+ADDRESS_MAP_START(coleco_state::coleco_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_MIRROR(0x1c00) AM_SHARE("ram")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( coleco_io_map, AS_IO, 8, coleco_state )
+ADDRESS_MAP_START(coleco_state::coleco_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_MIRROR(0x1f) AM_WRITE(paddle_off_w)
AM_RANGE(0xa0, 0xa0) AM_MIRROR(0x1e) AM_DEVREADWRITE("tms9928a", tms9928a_device, vram_read, vram_write)
@@ -111,7 +111,7 @@ static ADDRESS_MAP_START( coleco_io_map, AS_IO, 8, coleco_state )
AM_RANGE(0xe2, 0xe2) AM_MIRROR(0x1d) AM_READ(paddle_2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( czz50_map, AS_PROGRAM, 8, coleco_state )
+ADDRESS_MAP_START(coleco_state::czz50_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_MIRROR(0x1c00) AM_SHARE("ram")
AM_RANGE(0x8000, 0xffff) AM_ROM
diff --git a/src/mame/drivers/combatsc.cpp b/src/mame/drivers/combatsc.cpp
index f099a21142d..5cdfc068b0b 100644
--- a/src/mame/drivers/combatsc.cpp
+++ b/src/mame/drivers/combatsc.cpp
@@ -346,7 +346,7 @@ READ8_MEMBER(combatsc_state::unk_r)
*
*************************************/
-static ADDRESS_MAP_START( combatsc_map, AS_PROGRAM, 8, combatsc_state )
+ADDRESS_MAP_START(combatsc_state::combatsc_map)
AM_RANGE(0x0000, 0x0007) AM_WRITE(combatsc_pf_control_w)
AM_RANGE(0x001f, 0x001f) AM_READ(unk_r)
AM_RANGE(0x0020, 0x005f) AM_READWRITE(combatsc_scrollram_r, combatsc_scrollram_w)
@@ -374,7 +374,7 @@ static ADDRESS_MAP_START( combatsc_map, AS_PROGRAM, 8, combatsc_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( combatscb_map, AS_PROGRAM, 8, combatsc_state )
+ADDRESS_MAP_START(combatsc_state::combatscb_map)
AM_RANGE(0x0000, 0x04ff) AM_RAM
AM_RANGE(0x0500, 0x0500) AM_WRITE(combatscb_bankselect_w)
AM_RANGE(0x0600, 0x06ff) AM_RAM_DEVWRITE("palette", palette_device, write_indirect) AM_SHARE("palette")
@@ -384,7 +384,7 @@ static ADDRESS_MAP_START( combatscb_map, AS_PROGRAM, 8, combatsc_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( combatsc_sound_map, AS_PROGRAM, 8, combatsc_state )
+ADDRESS_MAP_START(combatsc_state::combatsc_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */
@@ -410,7 +410,7 @@ WRITE8_MEMBER(combatsc_state::combatscb_sound_irq_ack)
m_audiocpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( combatscb_sound_map, AS_PROGRAM, 8, combatsc_state )
+ADDRESS_MAP_START(combatsc_state::combatscb_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */
AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write) /* YM 2203 */
diff --git a/src/mame/drivers/comebaby.cpp b/src/mame/drivers/comebaby.cpp
index 8ed15b0e88c..f3a9dd47814 100644
--- a/src/mame/drivers/comebaby.cpp
+++ b/src/mame/drivers/comebaby.cpp
@@ -198,6 +198,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void comebaby(machine_config &config);
+ void comebaby_io(address_map &map);
+ void comebaby_map(address_map &map);
protected:
// devices
@@ -216,14 +218,14 @@ uint32_t comebaby_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
return 0;
}
-static ADDRESS_MAP_START( comebaby_map, AS_PROGRAM, 32, comebaby_state )
+ADDRESS_MAP_START(comebaby_state::comebaby_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_RAM
AM_RANGE(0x000c0000, 0x000fffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( comebaby_io, AS_IO, 32, comebaby_state )
+ADDRESS_MAP_START(comebaby_state::comebaby_io)
AM_IMPORT_FROM(pcat32_io_common)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/commando.cpp b/src/mame/drivers/commando.cpp
index 198461bf762..5a022f446ac 100644
--- a/src/mame/drivers/commando.cpp
+++ b/src/mame/drivers/commando.cpp
@@ -56,7 +56,7 @@ Note : there is an ingame typo bug that doesn't display the bonus life values
/* Memory Maps */
-static ADDRESS_MAP_START( commando_map, AS_PROGRAM, 8, commando_state )
+ADDRESS_MAP_START(commando_state::commando_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P1")
@@ -76,11 +76,11 @@ static ADDRESS_MAP_START( commando_map, AS_PROGRAM, 8, commando_state )
AM_RANGE(0xff80, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, commando_state )
+ADDRESS_MAP_START(commando_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, commando_state )
+ADDRESS_MAP_START(commando_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -253,7 +253,7 @@ MACHINE_CONFIG_START(commando_state::commando)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, PHI_MAIN) // ???
MCFG_CPU_PROGRAM_MAP(commando_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", commando_state, commando_interrupt)
MCFG_CPU_ADD("audiocpu", Z80, PHI_B) // 3 MHz
diff --git a/src/mame/drivers/compc.cpp b/src/mame/drivers/compc.cpp
index 0426c4a653d..645a7984b9b 100644
--- a/src/mame/drivers/compc.cpp
+++ b/src/mame/drivers/compc.cpp
@@ -34,6 +34,9 @@ public:
void compc(machine_config &config);
void pc10iii(machine_config &config);
+ void compc_io(address_map &map);
+ void compc_map(address_map &map);
+ void compciii_io(address_map &map);
private:
u8 m_portb, m_dips;
};
@@ -169,18 +172,18 @@ static INPUT_PORTS_START(compc)
PORT_INCLUDE(pc_keyboard)
INPUT_PORTS_END
-static ADDRESS_MAP_START(compc_map, AS_PROGRAM, 8, compc_state)
+ADDRESS_MAP_START(compc_state::compc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(compc_io, AS_IO, 8, compc_state)
+ADDRESS_MAP_START(compc_state::compc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", pc_noppi_mb_device, map)
AM_RANGE(0x0060, 0x0063) AM_READWRITE(pio_r, pio_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(compciii_io, AS_IO, 8, compc_state)
+ADDRESS_MAP_START(compc_state::compciii_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", pc_noppi_mb_device, map)
AM_RANGE(0x0060, 0x0063) AM_READWRITE(pioiii_r, pioiii_w)
diff --git a/src/mame/drivers/compgolf.cpp b/src/mame/drivers/compgolf.cpp
index 3facae1a0e8..a48365b9b9d 100644
--- a/src/mame/drivers/compgolf.cpp
+++ b/src/mame/drivers/compgolf.cpp
@@ -60,7 +60,7 @@ WRITE8_MEMBER(compgolf_state::compgolf_ctrl_w)
*
*************************************/
-static ADDRESS_MAP_START( compgolf_map, AS_PROGRAM, 8, compgolf_state )
+ADDRESS_MAP_START(compgolf_state::compgolf_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(compgolf_video_w) AM_SHARE("videoram")
AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(compgolf_back_w) AM_SHARE("bg_ram")
diff --git a/src/mame/drivers/compis.cpp b/src/mame/drivers/compis.cpp
index 5d27949e331..7a72960081d 100644
--- a/src/mame/drivers/compis.cpp
+++ b/src/mame/drivers/compis.cpp
@@ -158,6 +158,9 @@ public:
int m_tmr0;
void compis(machine_config &config);
void compis2(machine_config &config);
+ void compis2_mem(address_map &map);
+ void compis_io(address_map &map);
+ void compis_mem(address_map &map);
};
@@ -390,7 +393,7 @@ WRITE16_MEMBER( compis_state::pcs6_14_15_w )
// ADDRESS_MAP( compis_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( compis_mem, AS_PROGRAM, 16, compis_state )
+ADDRESS_MAP_START(compis_state::compis_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0x60000, 0x63fff) AM_MIRROR(0x1c000) AM_DEVICE(I80130_TAG, i80130_device, rom_map)
@@ -402,7 +405,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( compis2_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( compis2_mem, AS_PROGRAM, 16, compis_state )
+ADDRESS_MAP_START(compis_state::compis2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x3ffff) AM_RAM
AM_RANGE(0xe0000, 0xeffff) AM_MIRROR(0x10000) AM_ROM AM_REGION(I80186_TAG, 0)
@@ -413,7 +416,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( compis_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( compis_io, AS_IO, 16, compis_state )
+ADDRESS_MAP_START(compis_state::compis_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0007) /* PCS0 */ AM_MIRROR(0x78) AM_DEVREADWRITE8(I8255_TAG, i8255_device, read, write, 0xff00)
AM_RANGE(0x0080, 0x0087) /* PCS1 */ AM_MIRROR(0x78) AM_DEVREADWRITE8(I8253_TAG, pit8253_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/compucolor.cpp b/src/mame/drivers/compucolor.cpp
index ce332b09492..04ac1b8895c 100644
--- a/src/mame/drivers/compucolor.cpp
+++ b/src/mame/drivers/compucolor.cpp
@@ -79,15 +79,17 @@ public:
uint8_t m_xo;
void compucolor2(machine_config &config);
+ void compucolor2_io(address_map &map);
+ void compucolor2_mem(address_map &map);
};
-static ADDRESS_MAP_START( compucolor2_mem, AS_PROGRAM, 8, compucolor2_state )
+ADDRESS_MAP_START(compucolor2_state::compucolor2_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION(I8080_TAG, 0)
AM_RANGE(0x6000, 0x6fff) AM_MIRROR(0x1000) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( compucolor2_io, AS_IO, 8, compucolor2_state )
+ADDRESS_MAP_START(compucolor2_state::compucolor2_io)
AM_RANGE(0x00, 0x0f) AM_MIRROR(0x10) AM_DEVICE(TMS5501_TAG, tms5501_device, io_map)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0x10) AM_DEVREADWRITE(CRT5027_TAG, crt5027_device, read, write)
AM_RANGE(0x80, 0x9f) AM_MIRROR(0x60) AM_ROM AM_REGION("ua1", 0)
diff --git a/src/mame/drivers/comquest.cpp b/src/mame/drivers/comquest.cpp
index 5be79af688d..0e9ec13ae20 100644
--- a/src/mame/drivers/comquest.cpp
+++ b/src/mame/drivers/comquest.cpp
@@ -62,7 +62,7 @@ WRITE8_MEMBER(comquest_state::comquest_write)
}
#endif
-static ADDRESS_MAP_START( comquest_mem , AS_PROGRAM, 8, comquest_state )
+ADDRESS_MAP_START(comquest_state::comquest_mem)
// { 0x0000, 0x7fff, SMH_BANK(1) },
AM_RANGE(0x0000, 0xfff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/comx35.cpp b/src/mame/drivers/comx35.cpp
index bb20cef75e5..4e4b00951e8 100644
--- a/src/mame/drivers/comx35.cpp
+++ b/src/mame/drivers/comx35.cpp
@@ -292,7 +292,7 @@ WRITE8_MEMBER( comx35_state::io_w )
// ADDRESS_MAP( comx35_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( comx35_mem, AS_PROGRAM, 8, comx35_state )
+ADDRESS_MAP_START(comx35_state::comx35_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
@@ -302,7 +302,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( comx35_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( comx35_io, AS_IO, 8, comx35_state )
+ADDRESS_MAP_START(comx35_state::comx35_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x07) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/concept.cpp b/src/mame/drivers/concept.cpp
index 653e55aa961..967a7621e60 100644
--- a/src/mame/drivers/concept.cpp
+++ b/src/mame/drivers/concept.cpp
@@ -42,7 +42,7 @@
#include "screen.h"
#include "speaker.h"
-static ADDRESS_MAP_START(concept_memmap, AS_PROGRAM, 16, concept_state )
+ADDRESS_MAP_START(concept_state::concept_memmap)
AM_RANGE(0x000000, 0x000007) AM_ROM AM_REGION("maincpu", 0x010000) /* boot ROM mirror */
AM_RANGE(0x000008, 0x000fff) AM_RAM /* static RAM */
AM_RANGE(0x010000, 0x011fff) AM_ROM AM_REGION("maincpu", 0x010000) /* boot ROM */
diff --git a/src/mame/drivers/contra.cpp b/src/mame/drivers/contra.cpp
index 79ed78174e5..86075041e3d 100644
--- a/src/mame/drivers/contra.cpp
+++ b/src/mame/drivers/contra.cpp
@@ -55,7 +55,7 @@ WRITE8_MEMBER(contra_state::contra_coin_counter_w)
}
-static ADDRESS_MAP_START( contra_map, AS_PROGRAM, 8, contra_state )
+ADDRESS_MAP_START(contra_state::contra_map)
AM_RANGE(0x0000, 0x0007) AM_WRITE(contra_K007121_ctrl_0_w)
AM_RANGE(0x0010, 0x0010) AM_READ_PORT("SYSTEM")
AM_RANGE(0x0011, 0x0011) AM_READ_PORT("P1")
@@ -92,7 +92,7 @@ static ADDRESS_MAP_START( contra_map, AS_PROGRAM, 8, contra_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, contra_state )
+ADDRESS_MAP_START(contra_state::sound_map)
AM_RANGE(0x0000, 0x0000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x4000, 0x4000) AM_WRITENOP /* read triggers irq reset and latch read (in the hardware only). */
diff --git a/src/mame/drivers/controlid.cpp b/src/mame/drivers/controlid.cpp
index 2971ad32950..dff9c143f5f 100644
--- a/src/mame/drivers/controlid.cpp
+++ b/src/mame/drivers/controlid.cpp
@@ -45,6 +45,8 @@ public:
required_device<nt7534_device> m_lcdc;
void controlidx628(machine_config &config);
+ void io_map(address_map &map);
+ void prog_map(address_map &map);
private:
uint8_t p0_data;
uint8_t p1_data;
@@ -55,11 +57,11 @@ private:
* Memory map information *
*************************/
-static ADDRESS_MAP_START( prog_map, AS_PROGRAM, 8, controlidx628_state )
+ADDRESS_MAP_START(controlidx628_state::prog_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, controlidx628_state )
+ADDRESS_MAP_START(controlidx628_state::io_map)
AM_RANGE(0x8000, 0xffff) AM_RAM
// /* Ports start here */
diff --git a/src/mame/drivers/coolpool.cpp b/src/mame/drivers/coolpool.cpp
index ac0ae5e0c24..97eb6079a29 100644
--- a/src/mame/drivers/coolpool.cpp
+++ b/src/mame/drivers/coolpool.cpp
@@ -605,7 +605,7 @@ READ16_MEMBER(coolpool_state::coolpool_input_r)
*
*************************************/
-static ADDRESS_MAP_START( amerdart_map, AS_PROGRAM, 16, coolpool_state )
+ADDRESS_MAP_START(coolpool_state::amerdart_map)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("vram_base")
AM_RANGE(0x04000000, 0x0400000f) AM_WRITE(amerdart_misc_w)
AM_RANGE(0x05000000, 0x0500000f) AM_READWRITE(amerdart_iop_r, amerdart_iop_w)
@@ -615,7 +615,7 @@ static ADDRESS_MAP_START( amerdart_map, AS_PROGRAM, 16, coolpool_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( coolpool_map, AS_PROGRAM, 16, coolpool_state )
+ADDRESS_MAP_START(coolpool_state::coolpool_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram_base")
AM_RANGE(0x01000000, 0x010000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_device, read, write, 0x00ff) // IMSG176P-40
AM_RANGE(0x02000000, 0x020000ff) AM_READWRITE(coolpool_iop_r, coolpool_iop_w)
@@ -627,7 +627,7 @@ static ADDRESS_MAP_START( coolpool_map, AS_PROGRAM, 16, coolpool_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nballsht_map, AS_PROGRAM, 16, coolpool_state )
+ADDRESS_MAP_START(coolpool_state::nballsht_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("vram_base")
AM_RANGE(0x02000000, 0x020000ff) AM_READWRITE(coolpool_iop_r, coolpool_iop_w)
AM_RANGE(0x03000000, 0x0300000f) AM_WRITE(coolpool_misc_w)
@@ -646,13 +646,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( amerdart_dsp_pgm_map, AS_PROGRAM, 16, coolpool_state )
+ADDRESS_MAP_START(coolpool_state::amerdart_dsp_pgm_map)
AM_RANGE(0x000, 0x0fff) AM_ROM
ADDRESS_MAP_END
/* 000 - 0FF TMS32015 Internal Data RAM (256 words) in Data Address Space */
-static ADDRESS_MAP_START( amerdart_dsp_io_map, AS_IO, 16, coolpool_state )
+ADDRESS_MAP_START(coolpool_state::amerdart_dsp_io_map)
AM_RANGE(0x00, 0x01) AM_WRITE(dsp_romaddr_w)
AM_RANGE(0x02, 0x02) AM_WRITE(amerdart_dsp_answer_w)
AM_RANGE(0x03, 0x03) AM_DEVWRITE("dac", dac_word_interface, write)
@@ -664,12 +664,12 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( coolpool_dsp_pgm_map, AS_PROGRAM, 16, coolpool_state )
+ADDRESS_MAP_START(coolpool_state::coolpool_dsp_pgm_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( coolpool_dsp_io_map, AS_IO, 16, coolpool_state )
+ADDRESS_MAP_START(coolpool_state::coolpool_dsp_io_map)
AM_RANGE(0x00, 0x01) AM_WRITE(dsp_romaddr_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(dsp_cmd_r, dsp_answer_w)
AM_RANGE(0x03, 0x03) AM_DEVWRITE("dac", dac_word_interface, write)
diff --git a/src/mame/drivers/coolridr.cpp b/src/mame/drivers/coolridr.cpp
index cb8e99acad7..02aacacf5cb 100644
--- a/src/mame/drivers/coolridr.cpp
+++ b/src/mame/drivers/coolridr.cpp
@@ -539,6 +539,11 @@ public:
objcachemanager decode[2];
void aquastge(machine_config &config);
void coolridr(machine_config &config);
+ void aquastge_h1_map(address_map &map);
+ void aquastge_submap(address_map &map);
+ void coolridr_submap(address_map &map);
+ void system_h1_map(address_map &map);
+ void system_h1_sound_map(address_map &map);
};
#define PRINT_BLIT_STUFF \
@@ -2819,7 +2824,7 @@ WRITE32_MEMBER(coolridr_state::sysh1_dma_w)
}
-static ADDRESS_MAP_START( system_h1_map, AS_PROGRAM, 32, coolridr_state )
+ADDRESS_MAP_START(coolridr_state::system_h1_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_SHARE("share1") AM_WRITENOP
AM_RANGE(0x01000000, 0x01ffffff) AM_ROM AM_REGION("gfx_data",0x0000000)
@@ -2839,7 +2844,7 @@ static ADDRESS_MAP_START( system_h1_map, AS_PROGRAM, 32, coolridr_state )
AM_RANGE(0x60000000, 0x600003ff) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START(aquastge_h1_map, AS_PROGRAM, 32, coolridr_state)
+ADDRESS_MAP_START(coolridr_state::aquastge_h1_map)
AM_IMPORT_FROM(system_h1_map)
AM_RANGE(0x03c00000, 0x03c0ffff) AM_MIRROR(0x00200000) AM_RAM_WRITE(sysh1_dma_w) AM_SHARE("fb_vram") /* mostly mapped at 0x03e00000 */
AM_RANGE(0x03f50000, 0x03f5ffff) AM_RAM // video registers
@@ -2983,7 +2988,7 @@ WRITE32_MEMBER(coolridr_state::sysh1_sound_dma_w)
-static ADDRESS_MAP_START( coolridr_submap, AS_PROGRAM, 32, coolridr_state )
+ADDRESS_MAP_START(coolridr_state::coolridr_submap)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM // note: SH7032 only supports 64KB
AM_RANGE(0x01000000, 0x0100ffff) AM_RAM //communication RAM
@@ -3012,7 +3017,7 @@ static ADDRESS_MAP_START( coolridr_submap, AS_PROGRAM, 32, coolridr_state )
AM_RANGE(0x07ffe000, 0x07ffffff) AM_RAM // On-Chip RAM (actually mapped at 0x0fffe000-0x0fffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aquastge_submap, AS_PROGRAM, 32, coolridr_state )
+ADDRESS_MAP_START(coolridr_state::aquastge_submap)
AM_IMPORT_FROM(coolridr_submap)
AM_RANGE(0x05200000, 0x0537ffff) AM_RAM
AM_RANGE(0x05210000, 0x0521ffff) AM_RAM AM_SHARE("share3") /*Communication area RAM*/
@@ -3026,7 +3031,7 @@ WRITE8_MEMBER(coolridr_state::sound_to_sh1_w)
sound_fifo = data;
}
-static ADDRESS_MAP_START( system_h1_sound_map, AS_PROGRAM, 16, coolridr_state )
+ADDRESS_MAP_START(coolridr_state::system_h1_sound_map)
AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_REGION("scsp1",0) AM_SHARE("soundram")
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp1", scsp_device, read, write)
AM_RANGE(0x200000, 0x27ffff) AM_RAM AM_REGION("scsp2",0) AM_SHARE("soundram2")
diff --git a/src/mame/drivers/cop01.cpp b/src/mame/drivers/cop01.cpp
index 132a5a58c14..6ca1018e572 100644
--- a/src/mame/drivers/cop01.cpp
+++ b/src/mame/drivers/cop01.cpp
@@ -123,7 +123,7 @@ READ8_MEMBER(cop01_state::cop01_sound_irq_ack_w)
*
*************************************/
-static ADDRESS_MAP_START( cop01_map, AS_PROGRAM, 8, cop01_state )
+ADDRESS_MAP_START(cop01_state::cop01_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM /* c000-c7ff in cop01 */
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(cop01_background_w) AM_SHARE("bgvideoram")
@@ -131,7 +131,7 @@ static ADDRESS_MAP_START( cop01_map, AS_PROGRAM, 8, cop01_state )
AM_RANGE(0xf000, 0xf3ff) AM_WRITE(cop01_foreground_w) AM_SHARE("fgvideoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, cop01_state )
+ADDRESS_MAP_START(cop01_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2")
@@ -143,7 +143,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, cop01_state )
AM_RANGE(0x45, 0x45) AM_WRITE(cop01_irq_ack_w) /* ? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mightguy_io_map, AS_IO, 8, cop01_state )
+ADDRESS_MAP_START(cop01_state::mightguy_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2")
@@ -155,13 +155,13 @@ static ADDRESS_MAP_START( mightguy_io_map, AS_IO, 8, cop01_state )
AM_RANGE(0x45, 0x45) AM_WRITE(cop01_irq_ack_w) /* ? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cop01_state )
+ADDRESS_MAP_START(cop01_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_READ(cop01_sound_irq_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, cop01_state )
+ADDRESS_MAP_START(cop01_state::audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
@@ -239,7 +239,7 @@ WRITE8_MEMBER(cop01_state::prot_data_w)
}
}
-static ADDRESS_MAP_START( mightguy_audio_io_map, AS_IO, 8, cop01_state )
+ADDRESS_MAP_START(cop01_state::mightguy_audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3526_device, write)
AM_RANGE(0x02, 0x02) AM_WRITE(prot_address_w) /* 1412M2 address? */
diff --git a/src/mame/drivers/cops.cpp b/src/mame/drivers/cops.cpp
index 7a9f79dd84a..2c6eec37eb3 100644
--- a/src/mame/drivers/cops.cpp
+++ b/src/mame/drivers/cops.cpp
@@ -70,6 +70,8 @@ public:
void revlatns(machine_config &config);
void cops(machine_config &config);
+ void cops_map(address_map &map);
+ void revlatns_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -800,7 +802,7 @@ WRITE_LINE_MEMBER(cops_state::via2_irq)
*
*************************************/
-static ADDRESS_MAP_START( cops_map, AS_PROGRAM, 8, cops_state )
+ADDRESS_MAP_START(cops_state::cops_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x9fff) AM_ROM AM_REGION("program", 0)
AM_RANGE(0xa000, 0xafff) AM_READWRITE(io1_r, io1_w)
@@ -812,7 +814,7 @@ static ADDRESS_MAP_START( cops_map, AS_PROGRAM, 8, cops_state )
AM_RANGE(0xe000, 0xffff) AM_ROMBANK("sysbank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( revlatns_map, AS_PROGRAM, 8, cops_state )
+ADDRESS_MAP_START(cops_state::revlatns_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x9fff) AM_ROM AM_REGION("program", 0)
AM_RANGE(0xa000, 0xafff) AM_READWRITE(io1_lm_r, io1_w)
diff --git a/src/mame/drivers/copsnrob.cpp b/src/mame/drivers/copsnrob.cpp
index e872a102f4a..1eaad43989a 100644
--- a/src/mame/drivers/copsnrob.cpp
+++ b/src/mame/drivers/copsnrob.cpp
@@ -90,7 +90,7 @@ WRITE8_MEMBER(copsnrob_state::copsnrob_misc2_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, copsnrob_state )
+ADDRESS_MAP_START(copsnrob_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0500, 0x0507) AM_DEVWRITE("latch", f9334_device, write_d0)
diff --git a/src/mame/drivers/corona.cpp b/src/mame/drivers/corona.cpp
index ad6f4504ccf..15e38a57824 100644
--- a/src/mame/drivers/corona.cpp
+++ b/src/mame/drivers/corona.cpp
@@ -365,6 +365,22 @@ public:
void rcirulet(machine_config &config);
void luckyrlt(machine_config &config);
void re800(machine_config &config);
+ void luckyrlt_cpu_io_map(address_map &map);
+ void luckyrlt_map(address_map &map);
+ void luckyrlt_sound_cpu_io_map(address_map &map);
+ void luckyrlt_sound_map(address_map &map);
+ void re800_cpu_io_map(address_map &map);
+ void re800_map(address_map &map);
+ void re800_sound_cpu_io_map(address_map &map);
+ void re800_sound_map(address_map &map);
+ void winner81_cpu_io_map(address_map &map);
+ void winner81_map(address_map &map);
+ void winner81_sound_cpu_io_map(address_map &map);
+ void winner81_sound_map(address_map &map);
+ void winner82_cpu_io_map(address_map &map);
+ void winner82_map(address_map &map);
+ void winner82_sound_cpu_io_map(address_map &map);
+ void winner82_sound_map(address_map &map);
};
@@ -611,13 +627,13 @@ WRITE8_MEMBER(corona_state::wc_meters_w)
*/
-static ADDRESS_MAP_START( winner81_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner81_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xb800, 0xb8ff) AM_RAM // copied from 8000 (0x10 bytes, repeated)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winner81_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner81_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x70, 0x70) AM_WRITE(blitter_x_w)
AM_RANGE(0x71, 0x71) AM_WRITE(blitter_unk_w)
@@ -639,12 +655,12 @@ static ADDRESS_MAP_START( winner81_cpu_io_map, AS_IO, 8, corona_state )
AM_RANGE(0xef, 0xef) AM_WRITE(wc_meters_w) /* meters: coin1 = bit0, coin2 = bit1, coinout = bit2 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winner81_sound_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner81_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winner81_sound_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner81_sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -668,13 +684,13 @@ ADDRESS_MAP_END
FE ---> Sound Latch (writes 01, 02 and 03 during attract)...
*/
-static ADDRESS_MAP_START( winner82_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner82_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0x80ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winner82_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner82_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_WRITE(blitter_x_w)
AM_RANGE(0xf1, 0xf1) AM_WRITE(blitter_y_w)
@@ -693,12 +709,12 @@ static ADDRESS_MAP_START( winner82_cpu_io_map, AS_IO, 8, corona_state )
AM_RANGE(0xff, 0xff) AM_READ_PORT("DSW2") /* no idea */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winner82_sound_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner82_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winner82_sound_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::winner82_sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -732,13 +748,13 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( re800_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::re800_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") //801a comm?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( re800_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::re800_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_WRITE(blitter_x_w)
AM_RANGE(0xf1, 0xf1) AM_WRITE(blitter_y_w)
@@ -754,12 +770,12 @@ static ADDRESS_MAP_START( re800_cpu_io_map, AS_IO, 8, corona_state )
AM_RANGE(0xff, 0xff) AM_WRITE(ball_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( re800_sound_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::re800_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( re800_sound_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::re800_sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -792,12 +808,12 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( luckyrlt_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::luckyrlt_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( luckyrlt_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::luckyrlt_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_WRITE(blitter_x_w)
AM_RANGE(0xf1, 0xf1) AM_WRITE(blitter_y_w)
@@ -814,12 +830,12 @@ static ADDRESS_MAP_START( luckyrlt_cpu_io_map, AS_IO, 8, corona_state )
AM_RANGE(0xfe, 0xfe) AM_WRITE(sound_latch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( luckyrlt_sound_map, AS_PROGRAM, 8, corona_state )
+ADDRESS_MAP_START(corona_state::luckyrlt_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( luckyrlt_sound_cpu_io_map, AS_IO, 8, corona_state )
+ADDRESS_MAP_START(corona_state::luckyrlt_sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/cortex.cpp b/src/mame/drivers/cortex.cpp
index d6088091800..d9482ff4414 100644
--- a/src/mame/drivers/cortex.cpp
+++ b/src/mame/drivers/cortex.cpp
@@ -73,6 +73,8 @@ public:
DECLARE_DRIVER_INIT(init);
void cortex(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
bool m_kbd_ack;
bool m_vdp_int;
@@ -83,7 +85,7 @@ private:
required_ioport m_io_dsw;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, cortex_state )
+ADDRESS_MAP_START(cortex_state::mem_map)
AM_RANGE(0x0000, 0x7fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x8000, 0xefff) AM_RAM
AM_RANGE(0xf100, 0xf11f) AM_RAM // memory mapping unit
@@ -92,7 +94,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, cortex_state )
//AM_RANGE(0xf140, 0xf147) // fdc tms9909
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, cortex_state )
+ADDRESS_MAP_START(cortex_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0007) AM_MIRROR(0x18) AM_DEVWRITE("control", ls259_device, write_d0)
AM_RANGE(0x0000, 0x0000) AM_READ(pio_r)
diff --git a/src/mame/drivers/cosmic.cpp b/src/mame/drivers/cosmic.cpp
index ccf157caeba..b6641992116 100644
--- a/src/mame/drivers/cosmic.cpp
+++ b/src/mame/drivers/cosmic.cpp
@@ -376,7 +376,7 @@ WRITE8_MEMBER(cosmic_state::flip_screen_w)
}
-static ADDRESS_MAP_START( panic_map, AS_PROGRAM, 8, cosmic_state )
+ADDRESS_MAP_START(cosmic_state::panic_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x6000, 0x601f) AM_WRITEONLY AM_SHARE("spriteram")
@@ -391,7 +391,7 @@ static ADDRESS_MAP_START( panic_map, AS_PROGRAM, 8, cosmic_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cosmica_map, AS_PROGRAM, 8, cosmic_state )
+ADDRESS_MAP_START(cosmic_state::cosmica_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x6000, 0x601f) AM_WRITEONLY AM_SHARE("spriteram")
@@ -405,12 +405,12 @@ static ADDRESS_MAP_START( cosmica_map, AS_PROGRAM, 8, cosmic_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cosmicg_map, AS_PROGRAM, 8, cosmic_state )
+ADDRESS_MAP_START(cosmic_state::cosmicg_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cosmicg_io_map, AS_IO, 8, cosmic_state )
+ADDRESS_MAP_START(cosmic_state::cosmicg_io_map)
AM_RANGE(0x00, 0x00) AM_READ(cosmicg_port_0_r)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
AM_RANGE(0x00, 0x15) AM_WRITE(cosmicg_output_w)
@@ -418,7 +418,7 @@ static ADDRESS_MAP_START( cosmicg_io_map, AS_IO, 8, cosmic_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magspot_map, AS_PROGRAM, 8, cosmic_state )
+ADDRESS_MAP_START(cosmic_state::magspot_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3800, 0x3807) AM_READ(magspot_coinage_dip_r)
AM_RANGE(0x4000, 0x401f) AM_WRITEONLY AM_SHARE("spriteram")
diff --git a/src/mame/drivers/cosmicos.cpp b/src/mame/drivers/cosmicos.cpp
index 55cf850b949..a064a532350 100644
--- a/src/mame/drivers/cosmicos.cpp
+++ b/src/mame/drivers/cosmicos.cpp
@@ -179,11 +179,11 @@ WRITE8_MEMBER( cosmicos_state::display_w )
/* Memory Maps */
-static ADDRESS_MAP_START( cosmicos_mem, AS_PROGRAM, 8, cosmicos_state )
+ADDRESS_MAP_START(cosmicos_state::cosmicos_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cosmicos_io, AS_IO, 8, cosmicos_state )
+ADDRESS_MAP_START(cosmicos_state::cosmicos_io)
// AM_RANGE(0x00, 0x00)
AM_RANGE(0x01, 0x01) AM_READ(video_on_r)
AM_RANGE(0x02, 0x02) AM_READWRITE(video_off_r, audio_latch_w)
diff --git a/src/mame/drivers/cp1.cpp b/src/mame/drivers/cp1.cpp
index 9d9bc1b0193..88e32f6fb54 100644
--- a/src/mame/drivers/cp1.cpp
+++ b/src/mame/drivers/cp1.cpp
@@ -54,6 +54,7 @@ public:
DECLARE_WRITE8_MEMBER(i8155_portc_w);
void cp1(machine_config &config);
+ void cp1_io(address_map &map);
private:
uint8_t m_7seg;
uint8_t m_port2;
@@ -180,7 +181,7 @@ WRITE8_MEMBER(cp1_state::i8155_portc_w)
}
-static ADDRESS_MAP_START( cp1_io , AS_IO, 8, cp1_state)
+ADDRESS_MAP_START(cp1_state::cp1_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00, 0xff ) AM_READWRITE( i8155_read, i8155_write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cps1.cpp b/src/mame/drivers/cps1.cpp
index 80d62a9fdbd..c07406339f3 100644
--- a/src/mame/drivers/cps1.cpp
+++ b/src/mame/drivers/cps1.cpp
@@ -535,7 +535,7 @@ All PRGx go to B-board. Provision for up to 4MB of ROM space, which was never us
*/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::main_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */
/* forgottn, willow, cawing, nemo, varth read from 800010. Probably debug input leftover from development */
@@ -556,7 +556,7 @@ ADDRESS_MAP_END
/* Forgotten Worlds has a NEC uPD4701AC on the B-board handling dial inputs from the CN-MOWS connector. */
/* The memory mapping is handled by PAL LWIO */
-static ADDRESS_MAP_START( forgottn_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::forgottn_map)
AM_IMPORT_FROM(main_map)
AM_RANGE(0x800040, 0x800041) AM_DEVWRITE8("upd4701", upd4701_device, reset_x, 0x00ff)
AM_RANGE(0x800048, 0x800049) AM_DEVWRITE8("upd4701", upd4701_device, reset_y, 0x00ff)
@@ -587,7 +587,7 @@ SOUNDA15 = pin13 = ( I1 )
/SOUNDCE = pin12 = ! ( !I0 & (!I1 | ( I1 & !I2)) )
*/
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, cps_state )
+ADDRESS_MAP_START(cps_state::sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
@@ -599,7 +599,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, cps_state )
AM_RANGE(0xf00a, 0xf00a) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) /* Sound timer fade */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qsound_main_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::qsound_main_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */
AM_RANGE(0x800018, 0x80001f) AM_READ(cps1_dsw_r) /* System input ports / Dip Switches */
@@ -617,7 +617,7 @@ static ADDRESS_MAP_START( qsound_main_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-ADDRESS_MAP_START( qsound_sub_map, AS_PROGRAM, 8, cps_state ) // used by cps2.c too
+ADDRESS_MAP_START(cps_state::qsound_sub_map) // used by cps2.c too
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* banked (contains music data) */
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("qsound_ram1")
@@ -627,11 +627,11 @@ ADDRESS_MAP_START( qsound_sub_map, AS_PROGRAM, 8, cps_state ) // used by cps2.
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("qsound_ram2")
ADDRESS_MAP_END
-ADDRESS_MAP_START( qsound_decrypted_opcodes_map, AS_OPCODES, 8, cps_state )
+ADDRESS_MAP_START(cps_state::qsound_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("decrypted")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sf2m3_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::sf2m3_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800010, 0x800011) AM_READ_PORT("IN1") /* Player input ports */
AM_RANGE(0x800028, 0x80002f) AM_READ(cps1_hack_dsw_r) /* System input ports / Dip Switches */
@@ -647,7 +647,7 @@ static ADDRESS_MAP_START( sf2m3_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sf2m10_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::sf2m10_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1")
AM_RANGE(0x800018, 0x80001f) AM_READ(cps1_hack_dsw_r)
@@ -3418,7 +3418,7 @@ MACHINE_CONFIG_DERIVED(cps_state::qsound, cps1_12MHz)
MCFG_CPU_REPLACE("audiocpu", Z80, XTAL(8'000'000)) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(qsound_sub_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(qsound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(qsound_decrypted_opcodes_map)
MCFG_CPU_PERIODIC_INT_DRIVER(cps_state, irq0_line_hold, 250) // measured (cps2.c)
MCFG_MACHINE_START_OVERRIDE(cps_state, qsound)
diff --git a/src/mame/drivers/cps2.cpp b/src/mame/drivers/cps2.cpp
index af10115fa8a..12105dfefcf 100644
--- a/src/mame/drivers/cps2.cpp
+++ b/src/mame/drivers/cps2.cpp
@@ -926,7 +926,7 @@ READ16_MEMBER(cps_state::joy_or_paddle_ecofghtr_r)
*
*************************************/
-static ADDRESS_MAP_START( cps2_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::cps2_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM /* 68000 ROM */
AM_RANGE(0x400000, 0x40000b) AM_RAM AM_SHARE("output") /* CPS2 object output */
AM_RANGE(0x618000, 0x619fff) AM_READWRITE(qsound_sharedram1_r, qsound_sharedram1_w) /* Q RAM */
@@ -953,11 +953,11 @@ static ADDRESS_MAP_START( cps2_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM /* RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, cps_state )
+ADDRESS_MAP_START(cps_state::decrypted_opcodes_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_SHARE("decrypted_opcodes") /* 68000 ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dead_cps2_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::dead_cps2_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM /* 68000 ROM */
AM_RANGE(0x400000, 0x40000b) AM_RAM AM_SHARE("output") /* CPS2 object output */
AM_RANGE(0x618000, 0x619fff) AM_READWRITE(qsound_sharedram1_r, qsound_sharedram1_w) /* Q RAM */
@@ -1306,7 +1306,7 @@ MACHINE_CONFIG_START(cps_state::cps2)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M68000, XTAL(16'000'000))
MCFG_CPU_PROGRAM_MAP(cps2_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", cps_state, cps2_interrupt, "screen", 0, 1)
MCFG_CPU_ADD("audiocpu", Z80, XTAL(8'000'000))
diff --git a/src/mame/drivers/cps3.cpp b/src/mame/drivers/cps3.cpp
index 03a459be7ea..7b243707750 100644
--- a/src/mame/drivers/cps3.cpp
+++ b/src/mame/drivers/cps3.cpp
@@ -2147,7 +2147,7 @@ WRITE32_MEMBER(cps3_state::cps3_colourram_w)
/* there are more unknown writes, but you get the idea */
-static ADDRESS_MAP_START( cps3_map, AS_PROGRAM, 32, cps3_state )
+ADDRESS_MAP_START(cps3_state::cps3_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_REGION("bios", 0) // Bios ROM
AM_RANGE(0x02000000, 0x0207ffff) AM_RAM AM_SHARE("mainram") // Main RAM
@@ -2213,7 +2213,7 @@ static ADDRESS_MAP_START( cps3_map, AS_PROGRAM, 32, cps3_state )
AM_RANGE(0xc0000000, 0xc00003ff) AM_RAM_WRITE(cps3_0xc0000000_ram_w ) AM_SHARE("0xc0000000_ram") /* Executes code from here */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 32, cps3_state )
+ADDRESS_MAP_START(cps3_state::decrypted_opcodes_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_REGION("bios", 0) // Bios ROM
AM_RANGE(0x06000000, 0x06ffffff) AM_ROM AM_SHARE("decrypted_gamerom")
AM_RANGE(0xc0000000, 0xc00003ff) AM_ROM AM_SHARE("0xc0000000_ram_decrypted")
@@ -2523,7 +2523,7 @@ MACHINE_CONFIG_START(cps3_state::cps3)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", SH2, 6250000*4) // external clock is 6.25 Mhz, it sets the internal multiplier to 4x (this should probably be handled in the core..)
MCFG_CPU_PROGRAM_MAP(cps3_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", cps3_state, cps3_vbl_interrupt)
MCFG_CPU_PERIODIC_INT_DRIVER(cps3_state, cps3_other_interrupt, 80) /* ?source? */
MCFG_SH2_DMA_KLUDGE_CB(cps3_state, dma_callback)
diff --git a/src/mame/drivers/craft.cpp b/src/mame/drivers/craft.cpp
index 8c24c33de20..ea320a17586 100644
--- a/src/mame/drivers/craft.cpp
+++ b/src/mame/drivers/craft.cpp
@@ -68,6 +68,9 @@ public:
inline void verboselog(int n_level, const char *s_fmt, ...) ATTR_PRINTF(3,4);
required_device<dac_byte_interface> m_dac;
void craft(machine_config &config);
+ void craft_data_map(address_map &map);
+ void craft_io_map(address_map &map);
+ void craft_prg_map(address_map &map);
};
inline void craft_state::verboselog(int n_level, const char *s_fmt, ...)
@@ -182,15 +185,15 @@ void craft_state::video_update()
* Address maps *
\****************************************************/
-static ADDRESS_MAP_START( craft_prg_map, AS_PROGRAM, 8, craft_state )
+ADDRESS_MAP_START(craft_state::craft_prg_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( craft_data_map, AS_DATA, 8, craft_state )
+ADDRESS_MAP_START(craft_state::craft_data_map)
AM_RANGE(0x0100, 0x04ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( craft_io_map, AS_IO, 8, craft_state )
+ADDRESS_MAP_START(craft_state::craft_io_map)
AM_RANGE(AVR8_IO_PORTA, AVR8_IO_PORTD) AM_READWRITE( port_r, port_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/crbaloon.cpp b/src/mame/drivers/crbaloon.cpp
index dbf15eccfdc..560a91f012b 100644
--- a/src/mame/drivers/crbaloon.cpp
+++ b/src/mame/drivers/crbaloon.cpp
@@ -192,7 +192,7 @@ WRITE8_MEMBER(crbaloon_state::port_sound_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, crbaloon_state )
+ADDRESS_MAP_START(crbaloon_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 is not decoded */
AM_RANGE(0x0000, 0x3fff) AM_ROM /* not fully populated */
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM
@@ -209,7 +209,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, crbaloon_state )
+ADDRESS_MAP_START(crbaloon_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xf)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("DSW0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x0c) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/crgolf.cpp b/src/mame/drivers/crgolf.cpp
index 515479623ad..1f9460d2bc1 100644
--- a/src/mame/drivers/crgolf.cpp
+++ b/src/mame/drivers/crgolf.cpp
@@ -333,7 +333,7 @@ WRITE_LINE_MEMBER(crgolf_state::screenb_enable_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, crgolf_state )
+ADDRESS_MAP_START(crgolf_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1")
@@ -343,7 +343,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, crgolf_state )
AM_RANGE(0xa000, 0xffff) AM_DEVICE("vrambank", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vrambank_map, AS_PROGRAM, 8, crgolf_state )
+ADDRESS_MAP_START(crgolf_state::vrambank_map)
AM_RANGE(0x0000, 0x5fff) AM_RAM AM_SHARE("vrama")
AM_RANGE(0x8000, 0xdfff) AM_RAM AM_SHARE("vramb")
ADDRESS_MAP_END
@@ -355,7 +355,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, crgolf_state )
+ADDRESS_MAP_START(crgolf_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -371,7 +371,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( mastrglf_map, AS_PROGRAM, 8, crgolf_state )
+ADDRESS_MAP_START(crgolf_state::mastrglf_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank1")
AM_RANGE(0x6000, 0x8fff) AM_RAM // maybe RAM and ROM here?
@@ -381,7 +381,7 @@ static ADDRESS_MAP_START( mastrglf_map, AS_PROGRAM, 8, crgolf_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mastrglf_io, AS_IO, 8, crgolf_state )
+ADDRESS_MAP_START(crgolf_state::mastrglf_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
// AM_RANGE(0x20, 0x20) AM_WRITE(rom_bank_select_w)
@@ -391,7 +391,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( mastrglf_submap, AS_PROGRAM, 8, crgolf_state )
+ADDRESS_MAP_START(crgolf_state::mastrglf_submap)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
@@ -417,7 +417,7 @@ WRITE8_MEMBER(crgolf_state::unk_sub_0c_w)
}
-static ADDRESS_MAP_START( mastrglf_subio, AS_IO, 8, crgolf_state )
+ADDRESS_MAP_START(crgolf_state::mastrglf_subio)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(main_to_sound_r) AM_WRITENOP
AM_RANGE(0x02, 0x02) AM_READ(unk_sub_02_r )
diff --git a/src/mame/drivers/crimfght.cpp b/src/mame/drivers/crimfght.cpp
index e1749d6e5ce..dfaf75357e6 100644
--- a/src/mame/drivers/crimfght.cpp
+++ b/src/mame/drivers/crimfght.cpp
@@ -81,7 +81,7 @@ WRITE8_MEMBER(crimfght_state::ym2151_ct_w)
m_k007232->set_bank(bank_a, bank_b);
}
-static ADDRESS_MAP_START( crimfght_map, AS_PROGRAM, 8, crimfght_state )
+ADDRESS_MAP_START(crimfght_state::crimfght_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVICE("bank0000", address_map_bank_device, amap8)
AM_RANGE(0x0400, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x5fff) AM_READWRITE(k052109_051960_r, k052109_051960_w) /* video RAM + sprite RAM */
@@ -99,13 +99,13 @@ static ADDRESS_MAP_START( crimfght_map, AS_PROGRAM, 8, crimfght_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x18000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank0000_map, AS_PROGRAM, 8, crimfght_state )
+ADDRESS_MAP_START(crimfght_state::bank0000_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
// full memory map derived from schematics
-static ADDRESS_MAP_START( crimfght_sound_map, AS_PROGRAM, 8, crimfght_state )
+ADDRESS_MAP_START(crimfght_state::crimfght_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/crospang.cpp b/src/mame/drivers/crospang.cpp
index 98414e773ff..9b26c55b560 100644
--- a/src/mame/drivers/crospang.cpp
+++ b/src/mame/drivers/crospang.cpp
@@ -45,7 +45,7 @@
/* main cpu */
-static ADDRESS_MAP_START( crospang_base_map, AS_PROGRAM, 16, crospang_state )
+ADDRESS_MAP_START(crospang_state::crospang_base_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_WRITENOP // writes to rom quite often
AM_RANGE(0x120000, 0x1207ff) AM_RAM_WRITE(crospang_fg_videoram_w) AM_SHARE("fg_videoram")
@@ -59,7 +59,7 @@ static ADDRESS_MAP_START( crospang_base_map, AS_PROGRAM, 16, crospang_state )
AM_RANGE(0x280004, 0x280005) AM_READ_PORT("DSW")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crospang_map, AS_PROGRAM, 16, crospang_state )
+ADDRESS_MAP_START(crospang_state::crospang_map)
AM_IMPORT_FROM(crospang_base_map)
AM_RANGE(0x100000, 0x100001) AM_WRITENOP
@@ -72,7 +72,7 @@ static ADDRESS_MAP_START( crospang_map, AS_PROGRAM, 16, crospang_state )
AM_RANGE(0x320000, 0x32ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bestri_map, AS_PROGRAM, 16, crospang_state )
+ADDRESS_MAP_START(crospang_state::bestri_map)
AM_IMPORT_FROM(crospang_base_map)
AM_RANGE(0x100004, 0x100005) AM_WRITE(bestri_fg_scrollx_w)
@@ -84,7 +84,7 @@ static ADDRESS_MAP_START( bestri_map, AS_PROGRAM, 16, crospang_state )
AM_RANGE(0x3a0000, 0x3affff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bestria_map, AS_PROGRAM, 16, crospang_state )
+ADDRESS_MAP_START(crospang_state::bestria_map)
AM_IMPORT_FROM(crospang_base_map)
AM_RANGE(0x100000, 0x100001) AM_WRITENOP // ??
@@ -99,12 +99,12 @@ ADDRESS_MAP_END
/* sound cpu */
-static ADDRESS_MAP_START( crospang_sound_map, AS_PROGRAM, 8, crospang_state )
+ADDRESS_MAP_START(crospang_state::crospang_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crospang_sound_io_map, AS_IO, 8, crospang_state )
+ADDRESS_MAP_START(crospang_state::crospang_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0x02, 0x02) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/crshrace.cpp b/src/mame/drivers/crshrace.cpp
index 5bf9dd36900..72ddc779c0b 100644
--- a/src/mame/drivers/crshrace.cpp
+++ b/src/mame/drivers/crshrace.cpp
@@ -146,7 +146,7 @@ WRITE8_MEMBER(crshrace_state::crshrace_sh_bankswitch_w)
}
-static ADDRESS_MAP_START( crshrace_map, AS_PROGRAM, 16, crshrace_state )
+ADDRESS_MAP_START(crshrace_state::crshrace_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x300000, 0x3fffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x400000, 0x4fffff) AM_ROM AM_REGION("user2", 0) AM_MIRROR(0x100000)
@@ -168,13 +168,13 @@ static ADDRESS_MAP_START( crshrace_map, AS_PROGRAM, 16, crshrace_state )
AM_RANGE(0xfff044, 0xfff047) AM_WRITEONLY // ??? moves during race
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, crshrace_state )
+ADDRESS_MAP_START(crshrace_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, crshrace_state )
+ADDRESS_MAP_START(crshrace_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(crshrace_sh_bankswitch_w)
AM_RANGE(0x04, 0x04) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
diff --git a/src/mame/drivers/crvision.cpp b/src/mame/drivers/crvision.cpp
index 1ec330002ea..c6aa22ff0f5 100644
--- a/src/mame/drivers/crvision.cpp
+++ b/src/mame/drivers/crvision.cpp
@@ -142,7 +142,7 @@ CN1 - main board connector (17x2 pin header)
ADDRESS_MAP( crvision_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( crvision_map, AS_PROGRAM, 8, crvision_state )
+ADDRESS_MAP_START(crvision_state::crvision_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x1000, 0x1003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE(PIA6821_TAG, pia6821_device, read, write)
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x0ffe) AM_DEVREAD(TMS9929_TAG, tms9928a_device, vram_read)
@@ -163,7 +163,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( lasr2001_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( lasr2001_map, AS_PROGRAM, 8, laser2001_state )
+ADDRESS_MAP_START(laser2001_state::lasr2001_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x1000, 0x1003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE(PIA6821_TAG, pia6821_device, read, write)
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x0ffe) AM_DEVREAD(TMS9929_TAG, tms9928a_device, vram_read)
diff --git a/src/mame/drivers/crystal.cpp b/src/mame/drivers/crystal.cpp
index 3dee8da0f31..ab42cb6449e 100644
--- a/src/mame/drivers/crystal.cpp
+++ b/src/mame/drivers/crystal.cpp
@@ -339,6 +339,10 @@ public:
void crystal(machine_config &config);
void crzyddz2(machine_config &config);
void trivrus(machine_config &config);
+ void crospuzl_mem(address_map &map);
+ void crystal_mem(address_map &map);
+ void crzyddz2_mem(address_map &map);
+ void trivrus_mem(address_map &map);
};
void crystal_state::IntReq( int num )
@@ -646,7 +650,7 @@ WRITE32_MEMBER(crystal_state::DMA1_w)
}
-static ADDRESS_MAP_START( crystal_mem, AS_PROGRAM, 32, crystal_state )
+ADDRESS_MAP_START(crystal_state::crystal_mem)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_WRITENOP
AM_RANGE(0x01200000, 0x0120000f) AM_READ(Input_r)
@@ -704,7 +708,7 @@ WRITE32_MEMBER(crystal_state::trivrus_input_w)
m_trivrus_input = data & 0xff;
}
-static ADDRESS_MAP_START( trivrus_mem, AS_PROGRAM, 32, crystal_state )
+ADDRESS_MAP_START(crystal_state::trivrus_mem)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_WRITENOP
// 0x01280000 & 0x0000ffff (written at boot)
@@ -745,7 +749,7 @@ static ADDRESS_MAP_START( trivrus_mem, AS_PROGRAM, 32, crystal_state )
// AM_RANGE(0x44414F4C, 0x44414F7F) AM_RAM AM_SHARE("reset_patch")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crospuzl_mem, AS_PROGRAM, 32, crystal_state )
+ADDRESS_MAP_START(crystal_state::crospuzl_mem)
AM_IMPORT_FROM( trivrus_mem )
AM_RANGE(0x01500000, 0x01500003) AM_READ(FlashCmd_r)
@@ -797,7 +801,7 @@ crzyddz2 in out
return 0xffffff00 | data | m_crzyddz2_prot;
}
-static ADDRESS_MAP_START( crzyddz2_mem, AS_PROGRAM, 32, crystal_state )
+ADDRESS_MAP_START(crystal_state::crzyddz2_mem)
AM_RANGE(0x00000000, 0x00ffffff) AM_ROM AM_WRITENOP
AM_RANGE(0x01280000, 0x01280003) AM_WRITE(Banksw_w)
diff --git a/src/mame/drivers/csplayh5.cpp b/src/mame/drivers/csplayh5.cpp
index 4c36978d70c..c026dc1bbd2 100644
--- a/src/mame/drivers/csplayh5.cpp
+++ b/src/mame/drivers/csplayh5.cpp
@@ -103,6 +103,9 @@ public:
void general_init(int patchaddress, int patchvalue);
void csplayh5(machine_config &config);
+ void csplayh5_map(address_map &map);
+ void csplayh5_sub_io_map(address_map &map);
+ void csplayh5_sub_map(address_map &map);
};
@@ -127,7 +130,7 @@ WRITE16_MEMBER(csplayh5_state::csplayh5_mux_w)
m_mux_data = (~data & 0x1f);
}
-static ADDRESS_MAP_START( csplayh5_map, AS_PROGRAM, 16, csplayh5_state )
+ADDRESS_MAP_START(csplayh5_state::csplayh5_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_READ_PORT("DSW") AM_DEVWRITE8("nichisnd", nichisnd_device,sound_host_command_w,0xff00)
@@ -149,7 +152,7 @@ READ16_MEMBER(csplayh5_state::test_r)
return machine().rand();
}
-static ADDRESS_MAP_START( csplayh5_sub_map, AS_PROGRAM, 16, csplayh5_state )
+ADDRESS_MAP_START(csplayh5_state::csplayh5_sub_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x02000a, 0x02000b) AM_READ(test_r)
@@ -163,7 +166,7 @@ static ADDRESS_MAP_START( csplayh5_sub_map, AS_PROGRAM, 16, csplayh5_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( csplayh5_sub_io_map, AS_IO, 16, csplayh5_state )
+ADDRESS_MAP_START(csplayh5_state::csplayh5_sub_io_map)
AM_RANGE(0x0a, 0x0b) AM_READ(test_r)
ADDRESS_MAP_END
#endif
diff --git a/src/mame/drivers/cswat.cpp b/src/mame/drivers/cswat.cpp
index a21ea632c6b..7e844dede43 100644
--- a/src/mame/drivers/cswat.cpp
+++ b/src/mame/drivers/cswat.cpp
@@ -63,6 +63,7 @@ public:
virtual void machine_reset() override;
virtual void machine_start() override;
void cswat(machine_config &config);
+ void cswat_map(address_map &map);
};
@@ -136,7 +137,7 @@ READ8_MEMBER(cswat_state::sensors_r)
return machine().rand();
}
-static ADDRESS_MAP_START( cswat_map, AS_PROGRAM, 8, cswat_state )
+ADDRESS_MAP_START(cswat_state::cswat_map)
AM_RANGE(0x0000, 0x0bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0c00, 0x0fff) AM_RAM
// AM_RANGE(0x1800, 0x1800) AM_READNOP // ? reads here after writing to $4000
diff --git a/src/mame/drivers/ct486.cpp b/src/mame/drivers/ct486.cpp
index 7d668bb8b36..4287fa3d0b3 100644
--- a/src/mame/drivers/ct486.cpp
+++ b/src/mame/drivers/ct486.cpp
@@ -52,6 +52,8 @@ public:
DECLARE_WRITE8_MEMBER( cs4031_tc ) { m_isabus->eop_w(offset, data); }
DECLARE_WRITE_LINE_MEMBER( cs4031_spkr ) { m_speaker->level_w(state); }
void ct486(machine_config &config);
+ void ct486_io(address_map &map);
+ void ct486_map(address_map &map);
};
@@ -93,10 +95,10 @@ WRITE_LINE_MEMBER( ct486_state::cs4031_hold )
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( ct486_map, AS_PROGRAM, 32, ct486_state )
+ADDRESS_MAP_START(ct486_state::ct486_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ct486_io, AS_IO, 32, ct486_state )
+ADDRESS_MAP_START(ct486_state::ct486_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cubeqst.cpp b/src/mame/drivers/cubeqst.cpp
index e5839635b08..04aaeb87d6a 100644
--- a/src/mame/drivers/cubeqst.cpp
+++ b/src/mame/drivers/cubeqst.cpp
@@ -87,6 +87,9 @@ public:
TIMER_CALLBACK_MEMBER(delayed_bank_swap);
void swap_linecpu_banks();
void cubeqst(machine_config &config);
+ void line_sound_map(address_map &map);
+ void m68k_program_map(address_map &map);
+ void rotate_map(address_map &map);
};
@@ -422,7 +425,7 @@ WRITE16_MEMBER(cubeqst_state::write_sndram)
m_soundcpu->sndram_w(space, offset, data, mem_mask);
}
-static ADDRESS_MAP_START( m68k_program_map, AS_PROGRAM, 16, cubeqst_state )
+ADDRESS_MAP_START(cubeqst_state::m68k_program_map)
ADDRESS_MAP_GLOBAL_MASK(0x03ffff)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x020000, 0x027fff) AM_READWRITE(read_rotram, write_rotram)
@@ -439,11 +442,11 @@ ADDRESS_MAP_END
/* For the bit-sliced CPUs */
-static ADDRESS_MAP_START( rotate_map, AS_PROGRAM, 64, cubeqst_state )
+ADDRESS_MAP_START(cubeqst_state::rotate_map)
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( line_sound_map, AS_PROGRAM, 64, cubeqst_state )
+ADDRESS_MAP_START(cubeqst_state::line_sound_map)
AM_RANGE(0x000, 0x0ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cubo.cpp b/src/mame/drivers/cubo.cpp
index 8f6453b3147..af6ac896db3 100644
--- a/src/mame/drivers/cubo.cpp
+++ b/src/mame/drivers/cubo.cpp
@@ -358,6 +358,8 @@ public:
uint16_t m_potgo_value;
void cubo(machine_config &config);
+ void cubo_mem(address_map &map);
+ void overlay_2mb_map32(address_map &map);
protected:
virtual void rs232_tx(int state) override;
virtual void potgo_w(uint16_t data) override;
@@ -414,13 +416,13 @@ WRITE8_MEMBER( cubo_state::akiko_cia_0_port_a_write )
-static ADDRESS_MAP_START( overlay_2mb_map32, AS_PROGRAM, 32, cubo_state )
+ADDRESS_MAP_START(cubo_state::overlay_2mb_map32)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cubo_mem, AS_PROGRAM, 32, cubo_state )
+ADDRESS_MAP_START(cubo_state::cubo_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap32)
AM_RANGE(0x800000, 0x800003) AM_READ_PORT("DIPSW1")
diff --git a/src/mame/drivers/cultures.cpp b/src/mame/drivers/cultures.cpp
index c4736c1d7eb..7850967463b 100644
--- a/src/mame/drivers/cultures.cpp
+++ b/src/mame/drivers/cultures.cpp
@@ -79,6 +79,10 @@ public:
uint32_t screen_update_cultures(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(cultures_interrupt);
void cultures(machine_config &config);
+ void cultures_io_map(address_map &map);
+ void cultures_map(address_map &map);
+ void oki_map(address_map &map);
+ void vrambank_map(address_map &map);
};
@@ -184,17 +188,17 @@ WRITE8_MEMBER(cultures_state::bg_bank_w)
}
-static ADDRESS_MAP_START( oki_map, 0, 8, cultures_state )
+ADDRESS_MAP_START(cultures_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vrambank_map, AS_PROGRAM, 8, cultures_state )
+ADDRESS_MAP_START(cultures_state::vrambank_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(bg0_videoram_w) AM_SHARE("bg0_videoram")
AM_RANGE(0x4000, 0x6fff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cultures_map, AS_PROGRAM, 8, cultures_state )
+ADDRESS_MAP_START(cultures_state::cultures_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("prgbank")
AM_RANGE(0x8000, 0xbfff) AM_DEVICE("vrambank", address_map_bank_device, amap8)
@@ -202,7 +206,7 @@ static ADDRESS_MAP_START( cultures_map, AS_PROGRAM, 8, cultures_state )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cultures_io_map, AS_IO, 8, cultures_state )
+ADDRESS_MAP_START(cultures_state::cultures_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_RAM
AM_RANGE(0x10, 0x13) AM_RAM
diff --git a/src/mame/drivers/cupidon.cpp b/src/mame/drivers/cupidon.cpp
index 2fb372186be..b8597858320 100644
--- a/src/mame/drivers/cupidon.cpp
+++ b/src/mame/drivers/cupidon.cpp
@@ -43,6 +43,7 @@ public:
};
void cupidon(machine_config &config);
+ void cupidon_map(address_map &map);
protected:
@@ -78,7 +79,7 @@ uint32_t cupidon_state::screen_update_cupidon(screen_device &screen, bitmap_ind1
}
// could be pumped through the get_cs function (if they use the memory protection features we might have to) but that's slow...
-static ADDRESS_MAP_START( cupidon_map, AS_PROGRAM, 32, cupidon_state )
+ADDRESS_MAP_START(cupidon_state::cupidon_map)
AM_RANGE(0x0000000, 0x07fffff) AM_ROM AM_MIRROR(0x1000000)
AM_RANGE(0x1000000, 0x100ffff) AM_RAM
diff --git a/src/mame/drivers/cv1k.cpp b/src/mame/drivers/cv1k.cpp
index b133f6bdf53..252e437d38f 100644
--- a/src/mame/drivers/cv1k.cpp
+++ b/src/mame/drivers/cv1k.cpp
@@ -239,6 +239,9 @@ public:
void install_speedups(uint32_t idleramoff, uint32_t idlepc, bool is_typed);
void cv1k_d(machine_config &config);
void cv1k(machine_config &config);
+ void cv1k_d_map(address_map &map);
+ void cv1k_map(address_map &map);
+ void cv1k_port(address_map &map);
};
@@ -339,7 +342,7 @@ WRITE8_MEMBER( cv1k_state::serial_rtc_eeprom_w )
}
-static ADDRESS_MAP_START( cv1k_map, AS_PROGRAM, 64, cv1k_state )
+ADDRESS_MAP_START(cv1k_state::cv1k_map)
AM_RANGE(0x00000000, 0x003fffff) AM_ROM AM_REGION("maincpu", 0) AM_WRITENOP AM_SHARE("rombase") // mmmbanc writes here on startup for some reason..
AM_RANGE(0x0c000000, 0x0c7fffff) AM_RAM AM_SHARE("mainram")// work RAM
AM_RANGE(0x10000000, 0x10000007) AM_READWRITE8(flash_io_r, flash_io_w, 0xffffffffffffffffU)
@@ -349,7 +352,7 @@ static ADDRESS_MAP_START( cv1k_map, AS_PROGRAM, 64, cv1k_state )
AM_RANGE(0xf0000000, 0xf0ffffff) AM_RAM // mem mapped cache (sh3 internal?)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cv1k_d_map, AS_PROGRAM, 64, cv1k_state )
+ADDRESS_MAP_START(cv1k_state::cv1k_d_map)
AM_RANGE(0x00000000, 0x003fffff) AM_ROM AM_REGION("maincpu", 0) AM_WRITENOP AM_SHARE("rombase") // mmmbanc writes here on startup for some reason..
AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM AM_SHARE("mainram") // work RAM
AM_RANGE(0x10000000, 0x10000007) AM_READWRITE8(flash_io_r, flash_io_w, 0xffffffffffffffffU)
@@ -359,7 +362,7 @@ static ADDRESS_MAP_START( cv1k_d_map, AS_PROGRAM, 64, cv1k_state )
AM_RANGE(0xf0000000, 0xf0ffffff) AM_RAM // mem mapped cache (sh3 internal?)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cv1k_port, AS_IO, 64, cv1k_state )
+ADDRESS_MAP_START(cv1k_state::cv1k_port)
AM_RANGE(SH3_PORT_C, SH3_PORT_C+7) AM_READ_PORT("PORT_C")
AM_RANGE(SH3_PORT_D, SH3_PORT_D+7) AM_READ_PORT("PORT_D")
AM_RANGE(SH3_PORT_E, SH3_PORT_E+7) AM_READ( flash_port_e_r )
diff --git a/src/mame/drivers/cvicny.cpp b/src/mame/drivers/cvicny.cpp
index 804ebf3f90a..f78ffc91a35 100644
--- a/src/mame/drivers/cvicny.cpp
+++ b/src/mame/drivers/cvicny.cpp
@@ -52,6 +52,7 @@ public:
uint8_t m_digit;
uint8_t m_digit_last;
void cvicny(machine_config &config);
+ void cvicny_mem(address_map &map);
};
WRITE8_MEMBER( cvicny_state::segment_w ) // output segments on the selected digit
@@ -76,7 +77,7 @@ READ8_MEMBER( cvicny_state::key_r )
return ((data << 4) ^ 0xf0) | data;
}
-static ADDRESS_MAP_START( cvicny_mem, AS_PROGRAM, 8, cvicny_state )
+ADDRESS_MAP_START(cvicny_state::cvicny_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM // 1 x 2716
AM_RANGE(0x0800, 0x0bff) AM_RAM AM_MIRROR(0x400) // 2x 2114 static ram
diff --git a/src/mame/drivers/cvs.cpp b/src/mame/drivers/cvs.cpp
index 01304e613f1..bd6d137f3ac 100644
--- a/src/mame/drivers/cvs.cpp
+++ b/src/mame/drivers/cvs.cpp
@@ -445,7 +445,7 @@ WRITE8_MEMBER(cvs_state::audio_command_w)
*
*************************************/
-static ADDRESS_MAP_START( cvs_main_cpu_map, AS_PROGRAM, 8, cvs_state )
+ADDRESS_MAP_START(cvs_state::cvs_main_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_READWRITE(cvs_bullet_ram_or_palette_r, cvs_bullet_ram_or_palette_w) AM_SHARE("bullet_ram")
@@ -459,11 +459,11 @@ static ADDRESS_MAP_START( cvs_main_cpu_map, AS_PROGRAM, 8, cvs_state )
AM_RANGE(0x6000, 0x73ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cvs_main_cpu_io_map, AS_IO, 8, cvs_state )
+ADDRESS_MAP_START(cvs_state::cvs_main_cpu_io_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(cvs_input_r, cvs_scroll_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cvs_main_cpu_data_map, AS_DATA, 8, cvs_state )
+ADDRESS_MAP_START(cvs_state::cvs_main_cpu_data_map)
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(cvs_collision_r, audio_command_w)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(cvs_collision_clear, cvs_video_fx_w)
ADDRESS_MAP_END
@@ -474,7 +474,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( cvs_dac_cpu_map, AS_PROGRAM, 8, cvs_state )
+ADDRESS_MAP_START(cvs_state::cvs_dac_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x107f) AM_RAM
@@ -492,7 +492,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( cvs_speech_cpu_map, AS_PROGRAM, 8, cvs_state )
+ADDRESS_MAP_START(cvs_state::cvs_speech_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x1d00, 0x1d00) AM_WRITE(cvs_speech_rom_address_lo_w)
diff --git a/src/mame/drivers/cxgz80.cpp b/src/mame/drivers/cxgz80.cpp
index 6d894e8b069..d050bb02cf4 100644
--- a/src/mame/drivers/cxgz80.cpp
+++ b/src/mame/drivers/cxgz80.cpp
@@ -91,6 +91,7 @@ public:
DECLARE_READ8_MEMBER(ch2001_input_r);
void ch2001(machine_config &config);
+ void ch2001_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -267,7 +268,7 @@ READ8_MEMBER(cxgz80_state::ch2001_input_r)
// Chess 2001
-static ADDRESS_MAP_START( ch2001_map, AS_PROGRAM, 8, cxgz80_state )
+ADDRESS_MAP_START(cxgz80_state::ch2001_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x3800) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x3fff) AM_READWRITE(ch2001_input_r, ch2001_leds_w)
diff --git a/src/mame/drivers/cxhumax.cpp b/src/mame/drivers/cxhumax.cpp
index 2bea0e2e472..f834c0a80e8 100644
--- a/src/mame/drivers/cxhumax.cpp
+++ b/src/mame/drivers/cxhumax.cpp
@@ -943,7 +943,7 @@ uint32_t cxhumax_state::screen_update_cxhumax(screen_device &screen, bitmap_rgb3
return 0;
}
-static ADDRESS_MAP_START(cxhumax_map, AS_PROGRAM, 32, cxhumax_state)
+ADDRESS_MAP_START(cxhumax_state::cxhumax_map)
AM_RANGE(0x00000000, 0x03ffffff) AM_RAM AM_SHARE("ram") AM_MIRROR(0x40000000) // 64?MB RAM
AM_RANGE(0xe0000000, 0xe000ffff) AM_READWRITE(cx_hsx_r, cx_hsx_w) // HSX
AM_RANGE(0xe0010000, 0xe0010003) AM_READWRITE(cx_romdescr_r, cx_romdescr_w) // ROM Descriptor
diff --git a/src/mame/drivers/cyberbal.cpp b/src/mame/drivers/cyberbal.cpp
index 1f5daf2fd4b..165dfe0f29a 100644
--- a/src/mame/drivers/cyberbal.cpp
+++ b/src/mame/drivers/cyberbal.cpp
@@ -127,7 +127,7 @@ WRITE16_MEMBER(cyberbal_state::p2_reset_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, cyberbal_state )
+ADDRESS_MAP_START(cyberbal_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0xfc0000, 0xfc0fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
AM_RANGE(0xfc8000, 0xfcffff) AM_DEVREAD8("soundcomm", atari_sound_comm_device, main_response_r, 0xff00)
@@ -160,7 +160,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16, cyberbal_state )
+ADDRESS_MAP_START(cyberbal_state::extra_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0xfc0000, 0xfdffff) AM_WRITE(video_int_ack_w)
AM_RANGE(0xfe0000, 0xfe0fff) AM_READ_PORT("IN0")
@@ -187,7 +187,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cyberbal_state )
+ADDRESS_MAP_START(cyberbal_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x2800, 0x2801) AM_WRITE(sound_68k_6502_w)
@@ -210,7 +210,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_68k_map, AS_PROGRAM, 16, cyberbal_state )
+ADDRESS_MAP_START(cyberbal_state::sound_68k_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0xff8000, 0xff87ff) AM_READ(sound_68k_r)
AM_RANGE(0xff8800, 0xff8fff) AM_WRITE(sound_68k_w)
@@ -227,7 +227,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( cyberbal2p_map, AS_PROGRAM, 16, cyberbal_state )
+ADDRESS_MAP_START(cyberbal_state::cyberbal2p_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0xfc0000, 0xfc0003) AM_READ_PORT("IN0")
AM_RANGE(0xfc2000, 0xfc2003) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/cybertnk.cpp b/src/mame/drivers/cybertnk.cpp
index 6d23342e82d..2f13d2e9a63 100644
--- a/src/mame/drivers/cybertnk.cpp
+++ b/src/mame/drivers/cybertnk.cpp
@@ -239,6 +239,9 @@ public:
uint32_t screen_update_cybertnk_left(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
uint32_t screen_update_cybertnk_right(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void cybertnk(machine_config &config);
+ void master_mem(address_map &map);
+ void slave_mem(address_map &map);
+ void sound_mem(address_map &map);
};
/* tile format
@@ -604,7 +607,7 @@ WRITE8_MEMBER( cybertnk_state::cybertnk_cnt_w )
}
-static ADDRESS_MAP_START( master_mem, AS_PROGRAM, 16, cybertnk_state )
+ADDRESS_MAP_START(cybertnk_state::master_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x087fff) AM_RAM /*Work RAM*/
AM_RANGE(0x0a0000, 0x0a0fff) AM_RAM AM_SHARE("spr_ram") // non-tile based sprite ram
@@ -630,7 +633,7 @@ static ADDRESS_MAP_START( master_mem, AS_PROGRAM, 16, cybertnk_state )
AM_RANGE(0x1100d4, 0x1100d5) AM_READ8(cybertnk_mux_r, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_mem, AS_PROGRAM, 16, cybertnk_state )
+ADDRESS_MAP_START(cybertnk_state::slave_mem)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x020000, 0x020001) AM_READNOP // POST debug?
AM_RANGE(0x07fff8, 0x07fffd) AM_READNOP // POST debug?
@@ -640,7 +643,7 @@ static ADDRESS_MAP_START( slave_mem, AS_PROGRAM, 16, cybertnk_state )
AM_RANGE(0x140000, 0x140003) AM_NOP /*Watchdog? Written during loops and interrupts*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8, cybertnk_state )
+ADDRESS_MAP_START(cybertnk_state::sound_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ym1", y8950_device, read, write)
diff --git a/src/mame/drivers/cybiko.cpp b/src/mame/drivers/cybiko.cpp
index 556963da11b..fffee70a889 100644
--- a/src/mame/drivers/cybiko.cpp
+++ b/src/mame/drivers/cybiko.cpp
@@ -61,7 +61,7 @@ ToDo:
///////////////////////////
// 512 kbyte ram + no memory mapped flash
-static ADDRESS_MAP_START( cybikov1_mem, AS_PROGRAM, 16, cybiko_state )
+ADDRESS_MAP_START(cybiko_state::cybikov1_mem)
AM_RANGE( 0x000000, 0x007fff ) AM_ROM
AM_RANGE( 0x600000, 0x600001 ) AM_READWRITE( cybiko_lcd_r, cybiko_lcd_w )
// AM_RANGE( 0xe00000, 0xe07fff ) AM_READ( cybikov1_key_r )
@@ -101,7 +101,7 @@ ptr: 243150=24297a
// +-------------------------------------+
// 256 kbyte ram + 256 kbyte memory mapped flash
-static ADDRESS_MAP_START( cybikov2_mem, AS_PROGRAM, 16, cybiko_state )
+ADDRESS_MAP_START(cybiko_state::cybikov2_mem)
AM_RANGE( 0x000000, 0x007fff ) AM_ROM
AM_RANGE( 0x100000, 0x13ffff ) AM_DEVREAD8("flash2", sst_39vf020_device, read, 0xffff) AM_MIRROR( 0x0c0000 )
AM_RANGE( 0x600000, 0x600001 ) AM_READWRITE( cybiko_lcd_r, cybiko_lcd_w ) AM_MIRROR( 0x1ffffe )
@@ -109,7 +109,7 @@ static ADDRESS_MAP_START( cybikov2_mem, AS_PROGRAM, 16, cybiko_state )
ADDRESS_MAP_END
// 2048 kbyte ram + 512 kbyte memory mapped flash
-static ADDRESS_MAP_START( cybikoxt_mem, AS_PROGRAM, 16, cybiko_state )
+ADDRESS_MAP_START(cybiko_state::cybikoxt_mem)
AM_RANGE( 0x000000, 0x007fff ) AM_ROM AM_MIRROR( 0x038000 )
AM_RANGE( 0x100000, 0x100001 ) AM_READWRITE( cybiko_lcd_r, cybiko_lcd_w )
AM_RANGE( 0x200000, 0x200003 ) AM_WRITE( cybiko_usb_w )
@@ -182,14 +182,14 @@ READ16_MEMBER(cybiko_state::port0_r)
// ADDRESS MAP - IO //
//////////////////////
-static ADDRESS_MAP_START( cybikov1_io, AS_IO, 16, cybiko_state )
+ADDRESS_MAP_START(cybiko_state::cybikov1_io)
AM_RANGE(h8_device::PORT_3, h8_device::PORT_3) AM_WRITE(serflash_w)
AM_RANGE(h8_device::PORT_F, h8_device::PORT_F) AM_READWRITE(clock_r, clock_w)
AM_RANGE(h8_device::ADC_1, h8_device::ADC_1) AM_READ(adc1_r)
AM_RANGE(h8_device::ADC_2, h8_device::ADC_2) AM_READ(adc2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cybikov2_io, AS_IO, 16, cybiko_state )
+ADDRESS_MAP_START(cybiko_state::cybikov2_io)
AM_RANGE(h8_device::PORT_1, h8_device::PORT_1) AM_READ(port0_r)
AM_RANGE(h8_device::PORT_3, h8_device::PORT_3) AM_WRITE(serflash_w)
AM_RANGE(h8_device::PORT_F, h8_device::PORT_F) AM_READWRITE(clock_r, clock_w)
@@ -197,7 +197,7 @@ static ADDRESS_MAP_START( cybikov2_io, AS_IO, 16, cybiko_state )
AM_RANGE(h8_device::ADC_2, h8_device::ADC_2) AM_READ(adc2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cybikoxt_io, AS_IO, 16, cybiko_state )
+ADDRESS_MAP_START(cybiko_state::cybikoxt_io)
AM_RANGE(h8_device::PORT_A, h8_device::PORT_A) AM_READ(xtpower_r)
AM_RANGE(h8_device::PORT_F, h8_device::PORT_F) AM_READWRITE(xtclock_r, xtclock_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/cybstorm.cpp b/src/mame/drivers/cybstorm.cpp
index dd8bb937ac7..9469f75089b 100644
--- a/src/mame/drivers/cybstorm.cpp
+++ b/src/mame/drivers/cybstorm.cpp
@@ -93,7 +93,7 @@ WRITE32_MEMBER(cybstorm_state::latch_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, cybstorm_state )
+ADDRESS_MAP_START(cybstorm_state::main_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette")
AM_RANGE(0x3effc0, 0x3effff) AM_DEVREADWRITE16("vad", atari_vad_device, control_read, control_write, 0xffffffff)
@@ -109,7 +109,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, cybstorm_state )
AM_RANGE(0xfe0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vadbank_map, AS_PROGRAM, 16, cybstorm_state )
+ADDRESS_MAP_START(cybstorm_state::vadbank_map)
AM_RANGE(0x000000, 0x001fff) AM_RAM_DEVWRITE("vad", atari_vad_device, playfield2_latched_msb_w) AM_SHARE("vad:playfield2")
AM_RANGE(0x002000, 0x003fff) AM_RAM_DEVWRITE("vad", atari_vad_device, playfield_latched_lsb_w) AM_SHARE("vad:playfield")
AM_RANGE(0x004000, 0x005fff) AM_RAM_DEVWRITE("vad", atari_vad_device, playfield_upper_w) AM_SHARE("vad:playfield_ext")
diff --git a/src/mame/drivers/cyclemb.cpp b/src/mame/drivers/cyclemb.cpp
index 581bb28fa73..5099b0e6fb1 100644
--- a/src/mame/drivers/cyclemb.cpp
+++ b/src/mame/drivers/cyclemb.cpp
@@ -146,6 +146,11 @@ public:
void skydest_i8741_reset();
void cyclemb(machine_config &config);
void skydest(machine_config &config);
+ void cyclemb_io(address_map &map);
+ void cyclemb_map(address_map &map);
+ void cyclemb_sound_io(address_map &map);
+ void cyclemb_sound_map(address_map &map);
+ void skydest_io(address_map &map);
};
@@ -567,7 +572,7 @@ WRITE8_MEMBER( cyclemb_state::skydest_i8741_0_w )
}
-static ADDRESS_MAP_START( cyclemb_map, AS_PROGRAM, 8, cyclemb_state )
+ADDRESS_MAP_START(cyclemb_state::cyclemb_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_ROMBANK("bank1")
AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("vram")
@@ -578,7 +583,7 @@ static ADDRESS_MAP_START( cyclemb_map, AS_PROGRAM, 8, cyclemb_state )
AM_RANGE(0xb800, 0xbfff) AM_RAM //WRAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cyclemb_io, AS_IO, 8, cyclemb_state )
+ADDRESS_MAP_START(cyclemb_state::cyclemb_io)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc000, 0xc000) AM_WRITE(cyclemb_bankswitch_w)
//AM_RANGE(0xc020, 0xc020) AM_WRITENOP // ?
@@ -587,7 +592,7 @@ static ADDRESS_MAP_START( cyclemb_io, AS_IO, 8, cyclemb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( skydest_io, AS_IO, 8, cyclemb_state )
+ADDRESS_MAP_START(cyclemb_state::skydest_io)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc000, 0xc000) AM_WRITE(cyclemb_bankswitch_w)
//AM_RANGE(0xc020, 0xc020) AM_WRITENOP // ?
@@ -597,7 +602,7 @@ static ADDRESS_MAP_START( skydest_io, AS_IO, 8, cyclemb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cyclemb_sound_map, AS_PROGRAM, 8, cyclemb_state )
+ADDRESS_MAP_START(cyclemb_state::cyclemb_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM
@@ -628,7 +633,7 @@ WRITE8_MEMBER(cyclemb_state::skydest_i8741_1_w)
}
-static ADDRESS_MAP_START( cyclemb_sound_io, AS_IO, 8, cyclemb_state )
+ADDRESS_MAP_START(cyclemb_state::cyclemb_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x40, 0x41) AM_READWRITE(skydest_i8741_1_r, skydest_i8741_1_w)
diff --git a/src/mame/drivers/czk80.cpp b/src/mame/drivers/czk80.cpp
index 6ff4380c363..615d9ccea81 100644
--- a/src/mame/drivers/czk80.cpp
+++ b/src/mame/drivers/czk80.cpp
@@ -73,6 +73,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(ctc_z1_w);
DECLARE_WRITE_LINE_MEMBER(ctc_z2_w);
void czk80(machine_config &config);
+ void czk80_io(address_map &map);
+ void czk80_mem(address_map &map);
private:
uint8_t m_term_data;
required_device<cpu_device> m_maincpu;
@@ -103,13 +105,13 @@ READ8_MEMBER( czk80_state::port81_r )
return (m_term_data) ? 3 : 1;
}
-static ADDRESS_MAP_START(czk80_mem, AS_PROGRAM, 8, czk80_state)
+ADDRESS_MAP_START(czk80_state::czk80_mem)
AM_RANGE(0x0000, 0x1fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x2000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_READ_BANK("bankr1") AM_WRITE_BANK("bankw1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(czk80_io, AS_IO, 8, czk80_state)
+ADDRESS_MAP_START(czk80_state::czk80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_WRITE(port40_w)
AM_RANGE(0x4c, 0x4f) AM_DEVREADWRITE("pio", z80pio_device, read, write)
diff --git a/src/mame/drivers/d400.cpp b/src/mame/drivers/d400.cpp
index bcf1a40ace9..888ce75a96b 100644
--- a/src/mame/drivers/d400.cpp
+++ b/src/mame/drivers/d400.cpp
@@ -24,6 +24,7 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void d461(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
@@ -33,7 +34,7 @@ u32 d400_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, d400_state )
+ADDRESS_MAP_START(d400_state::mem_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM
//AM_RANGE(0x4000, 0x403f) AM_DEVREADWRITE("vpac", crt9007_device, read, write)
AM_RANGE(0x4800, 0x48ff) AM_RAM
diff --git a/src/mame/drivers/d6800.cpp b/src/mame/drivers/d6800.cpp
index 2e974d95503..33558abb0b4 100644
--- a/src/mame/drivers/d6800.cpp
+++ b/src/mame/drivers/d6800.cpp
@@ -82,6 +82,7 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER( d6800 );
void d6800(machine_config &config);
+ void d6800_map(address_map &map);
private:
uint8_t m_rtc;
bool m_cb2;
@@ -109,7 +110,7 @@ private:
/* Memory Maps */
-static ADDRESS_MAP_START( d6800_map, AS_PROGRAM, 8, d6800_state )
+ADDRESS_MAP_START(d6800_state::d6800_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x0200, 0x0fff) AM_RAM
diff --git a/src/mame/drivers/d6809.cpp b/src/mame/drivers/d6809.cpp
index afe69f8f862..c4d0496c244 100644
--- a/src/mame/drivers/d6809.cpp
+++ b/src/mame/drivers/d6809.cpp
@@ -102,6 +102,7 @@ public:
void kbd_put(u8 data);
void d6809(machine_config &config);
+ void mem_map(address_map &map);
private:
uint8_t m_term_data;
virtual void machine_reset() override;
@@ -122,7 +123,7 @@ WRITE8_MEMBER( d6809_state::term_w )
m_terminal->write(space, 0, data);
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, d6809_state )
+ADDRESS_MAP_START(d6809_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
// 00-FF is for various devices.
AM_RANGE(0x0000, 0x0003) AM_DEVREADWRITE("acia1", mos6551_device, read, write)
diff --git a/src/mame/drivers/d9final.cpp b/src/mame/drivers/d9final.cpp
index 86bff9d4487..11ff215bc73 100644
--- a/src/mame/drivers/d9final.cpp
+++ b/src/mame/drivers/d9final.cpp
@@ -66,6 +66,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void d9final(machine_config &config);
+ void d9final_io(address_map &map);
+ void d9final_map(address_map &map);
};
@@ -124,7 +126,7 @@ READ8_MEMBER(d9final_state::prot_latch_r)
}
-static ADDRESS_MAP_START( d9final_map, AS_PROGRAM, 8, d9final_state )
+ADDRESS_MAP_START(d9final_state::d9final_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -137,7 +139,7 @@ static ADDRESS_MAP_START( d9final_map, AS_PROGRAM, 8, d9final_state )
AM_RANGE(0xf800, 0xf80f) AM_DEVREADWRITE("rtc", rtc62421_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( d9final_io, AS_IO, 8, d9final_state )
+ADDRESS_MAP_START(d9final_state::d9final_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x00) AM_WRITENOP //bit 0: irq enable? screen enable?
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSWA")
diff --git a/src/mame/drivers/dacholer.cpp b/src/mame/drivers/dacholer.cpp
index bc076a603a1..163c21d8675 100644
--- a/src/mame/drivers/dacholer.cpp
+++ b/src/mame/drivers/dacholer.cpp
@@ -107,6 +107,13 @@ public:
DECLARE_WRITE_LINE_MEMBER(adpcm_int);
void itaten(machine_config &config);
void dacholer(machine_config &config);
+ void itaten_main_map(address_map &map);
+ void itaten_snd_io_map(address_map &map);
+ void itaten_snd_map(address_map &map);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
+ void snd_io_map(address_map &map);
+ void snd_map(address_map &map);
};
TILE_GET_INFO_MEMBER(dacholer_state::get_bg_tile_info)
@@ -226,7 +233,7 @@ WRITE8_MEMBER(dacholer_state::main_irq_ack_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dacholer_state )
+ADDRESS_MAP_START(dacholer_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8800, 0x97ff) AM_RAM
AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x400) AM_RAM_WRITE(background_w) AM_SHARE("bgvideoram")
@@ -234,13 +241,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dacholer_state )
AM_RANGE(0xe000, 0xe0ff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( itaten_main_map, AS_PROGRAM, 8, dacholer_state )
+ADDRESS_MAP_START(dacholer_state::itaten_main_map)
AM_IMPORT_FROM( main_map )
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xb7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, dacholer_state )
+ADDRESS_MAP_START(dacholer_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2")
@@ -257,13 +264,13 @@ static ADDRESS_MAP_START( main_io_map, AS_IO, 8, dacholer_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8, dacholer_state )
+ADDRESS_MAP_START(dacholer_state::snd_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0xd000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( itaten_snd_map, AS_PROGRAM, 8, dacholer_state )
+ADDRESS_MAP_START(dacholer_state::itaten_snd_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
@@ -295,7 +302,7 @@ WRITE8_MEMBER(dacholer_state::music_irq_w)
m_music_interrupt_enable = data;
}
-static ADDRESS_MAP_START( snd_io_map, AS_IO, 8, dacholer_state )
+ADDRESS_MAP_START(dacholer_state::snd_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
AM_RANGE(0x04, 0x04) AM_WRITE(music_irq_w)
@@ -307,7 +314,7 @@ static ADDRESS_MAP_START( snd_io_map, AS_IO, 8, dacholer_state )
AM_RANGE(0x8e, 0x8f) AM_DEVWRITE("ay3", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( itaten_snd_io_map, AS_IO, 8, dacholer_state )
+ADDRESS_MAP_START(dacholer_state::itaten_snd_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
AM_RANGE(0x86, 0x87) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/dai.cpp b/src/mame/drivers/dai.cpp
index 929ffb834a5..d2bfcb9f8bb 100644
--- a/src/mame/drivers/dai.cpp
+++ b/src/mame/drivers/dai.cpp
@@ -67,11 +67,11 @@ Timings:
#include "speaker.h"
/* I/O ports */
-static ADDRESS_MAP_START( dai_io , AS_IO, 8, dai_state )
+ADDRESS_MAP_START(dai_state::dai_io)
ADDRESS_MAP_END
/* memory w/r functions */
-static ADDRESS_MAP_START( dai_mem , AS_PROGRAM, 8, dai_state )
+ADDRESS_MAP_START(dai_state::dai_mem)
AM_RANGE( 0x0000, 0xbfff) AM_RAMBANK("bank1")
AM_RANGE( 0xc000, 0xdfff) AM_ROM
AM_RANGE( 0xe000, 0xefff) AM_ROMBANK("bank2")
diff --git a/src/mame/drivers/dai3wksi.cpp b/src/mame/drivers/dai3wksi.cpp
index edf6a40032c..75a55ba3954 100644
--- a/src/mame/drivers/dai3wksi.cpp
+++ b/src/mame/drivers/dai3wksi.cpp
@@ -98,6 +98,7 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void dai3wksi(machine_config &config);
+ void main_map(address_map &map);
};
@@ -320,7 +321,7 @@ WRITE8_MEMBER(dai3wksi_state::dai3wksi_audio_3_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dai3wksi_state )
+ADDRESS_MAP_START(dai3wksi_state::main_map)
AM_RANGE(0x0000, 0x1bff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x2400, 0x24ff) AM_MIRROR(0x100) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/dambustr.cpp b/src/mame/drivers/dambustr.cpp
index 69a6ace5f98..bad8f01b612 100644
--- a/src/mame/drivers/dambustr.cpp
+++ b/src/mame/drivers/dambustr.cpp
@@ -72,6 +72,7 @@ public:
DECLARE_WRITE8_MEMBER(dambustr_noise_enable_w);
DECLARE_DRIVER_INIT(dambustr);
void dambustr(machine_config &config);
+ void dambustr_map(address_map &map);
};
@@ -86,7 +87,7 @@ WRITE8_MEMBER(dambustr_state::dambustr_noise_enable_w)
}
-static ADDRESS_MAP_START( dambustr_map, AS_PROGRAM, 8, dambustr_state )
+ADDRESS_MAP_START(dambustr_state::dambustr_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_WRITE(dambustr_bg_color_w)
diff --git a/src/mame/drivers/darius.cpp b/src/mame/drivers/darius.cpp
index b5d64f43bfe..8405fb5cbde 100644
--- a/src/mame/drivers/darius.cpp
+++ b/src/mame/drivers/darius.cpp
@@ -192,7 +192,7 @@ WRITE16_MEMBER(darius_state::coin_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( darius_map, AS_PROGRAM, 16, darius_state )
+ADDRESS_MAP_START(darius_state::darius_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main RAM */
AM_RANGE(0x0a0000, 0x0a0001) AM_WRITE(cpua_ctrl_w)
@@ -217,7 +217,7 @@ static ADDRESS_MAP_START( darius_map, AS_PROGRAM, 16, darius_state )
AM_RANGE(0xe10000, 0xe10fff) AM_RAM /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( darius_cpub_map, AS_PROGRAM, 16, darius_state )
+ADDRESS_MAP_START(darius_state::darius_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x04ffff) AM_RAM /* local RAM */
AM_RANGE(0xc00050, 0xc00051) AM_NOP // unknown, written by both cpus - always 0?
@@ -418,7 +418,7 @@ WRITE8_MEMBER(darius_state::darius_write_portB1)
Sound memory structures / ADPCM
*****************************************************/
-static ADDRESS_MAP_START( darius_sound_map, AS_PROGRAM, 8, darius_state )
+ADDRESS_MAP_START(darius_state::darius_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -436,7 +436,7 @@ static ADDRESS_MAP_START( darius_sound_map, AS_PROGRAM, 8, darius_state )
AM_RANGE(0xdc00, 0xdc00) AM_WRITE(sound_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( darius_sound2_map, AS_PROGRAM, 8, darius_state )
+ADDRESS_MAP_START(darius_state::darius_sound2_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP
/* yes, no RAM */
ADDRESS_MAP_END
@@ -482,7 +482,7 @@ WRITE8_MEMBER(darius_state::adpcm_data_w)
m_msm->reset_w(!(data & 0x20)); /* my best guess, but it could be output enable as well */
}
-static ADDRESS_MAP_START( darius_sound2_io_map, AS_IO, 8, darius_state )
+ADDRESS_MAP_START(darius_state::darius_sound2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(adpcm_command_read, adpcm_nmi_disable)
AM_RANGE(0x01, 0x01) AM_WRITE(adpcm_nmi_enable)
diff --git a/src/mame/drivers/darkmist.cpp b/src/mame/drivers/darkmist.cpp
index 261335d05fa..c0b584af4f5 100644
--- a/src/mame/drivers/darkmist.cpp
+++ b/src/mame/drivers/darkmist.cpp
@@ -44,7 +44,7 @@ WRITE8_MEMBER(darkmist_state::hw_w)
membank("bank1")->set_entry((data&0x80)?1:0);
}
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, darkmist_state )
+ADDRESS_MAP_START(darkmist_state::memmap)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc801, 0xc801) AM_READ_PORT("P1")
@@ -68,7 +68,7 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, darkmist_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, darkmist_state )
+ADDRESS_MAP_START(darkmist_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
@@ -241,7 +241,7 @@ MACHINE_CONFIG_START(darkmist_state::darkmist)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80,4000000) /* ? MHz */
MCFG_CPU_PROGRAM_MAP(memmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", darkmist_state, scanline, "screen", 0, 1)
MCFG_DEVICE_ADD("t5182", T5182, 0)
diff --git a/src/mame/drivers/darkseal.cpp b/src/mame/drivers/darkseal.cpp
index 5be4235c948..dcbaeb6f9ac 100644
--- a/src/mame/drivers/darkseal.cpp
+++ b/src/mame/drivers/darkseal.cpp
@@ -65,7 +65,7 @@ READ16_MEMBER(darkseal_state::control_r)
/******************************************************************************/
-static ADDRESS_MAP_START( darkseal_map, AS_PROGRAM, 16, darkseal_state )
+ADDRESS_MAP_START(darkseal_state::darkseal_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram")
@@ -88,7 +88,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, darkseal_state )
+ADDRESS_MAP_START(darkseal_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_device, read, write)
diff --git a/src/mame/drivers/daruma.cpp b/src/mame/drivers/daruma.cpp
index 8d3a23e437c..3847d2f5235 100644
--- a/src/mame/drivers/daruma.cpp
+++ b/src/mame/drivers/daruma.cpp
@@ -40,6 +40,8 @@ public:
required_device<speaker_sound_device> m_speaker;
char port0, port1, port2, port3;
void daruma(machine_config &config);
+ void mem_io(address_map &map);
+ void mem_prg(address_map &map);
};
WRITE8_MEMBER(daruma_state::port_w)
@@ -109,11 +111,11 @@ WRITE8_MEMBER(daruma_state::dev2_w)
//m_speaker->level_w(data & 0x01);
}
-static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8, daruma_state )
+ADDRESS_MAP_START(daruma_state::mem_prg)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mem_io, AS_IO, 8, daruma_state )
+ADDRESS_MAP_START(daruma_state::mem_io)
AM_RANGE(0x0000, 0x0000) AM_READ(dev0_r)
AM_RANGE(0x1000, 0x1000) AM_WRITE(dev1_w)
// AM_RANGE(0x2000, 0x2000) AM_WRITE(dev2_w)
diff --git a/src/mame/drivers/dassault.cpp b/src/mame/drivers/dassault.cpp
index 5a0a09386ec..aa59a2c1779 100644
--- a/src/mame/drivers/dassault.cpp
+++ b/src/mame/drivers/dassault.cpp
@@ -275,7 +275,7 @@ READ16_MEMBER(dassault_state::dassault_sub_control_r)
/**********************************************************************************/
-static ADDRESS_MAP_START( dassault_map, AS_PROGRAM, 16, dassault_state )
+ADDRESS_MAP_START(dassault_state::dassault_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -305,7 +305,7 @@ static ADDRESS_MAP_START( dassault_map, AS_PROGRAM, 16, dassault_state )
AM_RANGE(0x3fe000, 0x3fefff) AM_DEVREADWRITE("sharedram", mb8421_mb8431_16_device, left_r, left_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dassault_sub_map, AS_PROGRAM, 16, dassault_state )
+ADDRESS_MAP_START(dassault_state::dassault_sub_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVWRITE("spriteram", buffered_spriteram16_device, write)
@@ -320,7 +320,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dassault_state )
+ADDRESS_MAP_START(dassault_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_device, read, write)
diff --git a/src/mame/drivers/datum.cpp b/src/mame/drivers/datum.cpp
index 450fc2cb33f..ffeaf62a46d 100644
--- a/src/mame/drivers/datum.cpp
+++ b/src/mame/drivers/datum.cpp
@@ -71,6 +71,7 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(trigger_reset);
DECLARE_INPUT_CHANGED_MEMBER(trigger_nmi);
void datum(machine_config &config);
+ void datum_mem(address_map &map);
private:
uint8_t m_keydata;
virtual void machine_reset() override;
@@ -80,7 +81,7 @@ private:
};
-static ADDRESS_MAP_START(datum_mem, AS_PROGRAM, 8, datum_state)
+ADDRESS_MAP_START(datum_state::datum_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK (0x7fff) // A15 not used
AM_RANGE(0x0000, 0x007f) AM_RAM // inside CPU
diff --git a/src/mame/drivers/dblcrown.cpp b/src/mame/drivers/dblcrown.cpp
index e8868cd48a1..1ad1273e0e9 100644
--- a/src/mame/drivers/dblcrown.cpp
+++ b/src/mame/drivers/dblcrown.cpp
@@ -104,6 +104,8 @@ public:
DECLARE_PALETTE_INIT(dblcrown);
void dblcrown(machine_config &config);
+ void dblcrown_io(address_map &map);
+ void dblcrown_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -337,7 +339,7 @@ WRITE8_MEMBER(dblcrown_state::watchdog_w)
}
-static ADDRESS_MAP_START( dblcrown_map, AS_PROGRAM, 8, dblcrown_state )
+ADDRESS_MAP_START(dblcrown_state::dblcrown_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("rom_bank")
@@ -352,7 +354,7 @@ static ADDRESS_MAP_START( dblcrown_map, AS_PROGRAM, 8, dblcrown_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dblcrown_io, AS_IO, 8, dblcrown_state )
+ADDRESS_MAP_START(dblcrown_state::dblcrown_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSWA")
diff --git a/src/mame/drivers/dblewing.cpp b/src/mame/drivers/dblewing.cpp
index a7c78c70901..0280b416518 100644
--- a/src/mame/drivers/dblewing.cpp
+++ b/src/mame/drivers/dblewing.cpp
@@ -124,6 +124,10 @@ public:
WRITE16_MEMBER( wf_protection_region_0_104_w );
void dblewing(machine_config &config);
+ void dblewing_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void sound_io(address_map &map);
+ void sound_map(address_map &map);
private:
bool m_soundlatch_pending;
};
@@ -169,7 +173,7 @@ WRITE_LINE_MEMBER( dblewing_state::soundlatch_irq_w )
m_soundlatch_pending = bool(state);
}
-static ADDRESS_MAP_START( dblewing_map, AS_PROGRAM, 16, dblewing_state )
+ADDRESS_MAP_START(dblewing_state::dblewing_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_r, pf1_data_w)
@@ -189,7 +193,7 @@ static ADDRESS_MAP_START( dblewing_map, AS_PROGRAM, 16, dblewing_state )
AM_RANGE(0xff0000, 0xff3fff) AM_MIRROR(0xc000) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, dblewing_state )
+ADDRESS_MAP_START(dblewing_state::decrypted_opcodes_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
@@ -199,7 +203,7 @@ READ8_MEMBER(dblewing_state::irq_latch_r)
return m_soundlatch_pending ? 0 : 1;
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dblewing_state )
+ADDRESS_MAP_START(dblewing_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_device, status_r, write)
@@ -209,7 +213,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dblewing_state )
AM_RANGE(0xf000, 0xf000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, dblewing_state )
+ADDRESS_MAP_START(dblewing_state::sound_io)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("audiocpu", 0)
ADDRESS_MAP_END
@@ -346,7 +350,7 @@ MACHINE_CONFIG_START(dblewing_state::dblewing)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M68000, XTAL(28'000'000)/2) /* DE102 */
MCFG_CPU_PROGRAM_MAP(dblewing_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", dblewing_state, irq6_line_hold)
MCFG_CPU_ADD("audiocpu", Z80, XTAL(32'220'000)/9)
diff --git a/src/mame/drivers/dbox.cpp b/src/mame/drivers/dbox.cpp
index a4f55be8422..6e16d12feb3 100644
--- a/src/mame/drivers/dbox.cpp
+++ b/src/mame/drivers/dbox.cpp
@@ -454,6 +454,7 @@ class dbox_state : public driver_device
DECLARE_WRITE8_MEMBER(write_pa);
void dbox(machine_config &config);
+ void dbox_map(address_map &map);
#if LOCALFLASH
DECLARE_READ16_MEMBER (sysflash_r);
@@ -567,7 +568,7 @@ READ16_MEMBER (dbox_state::sysflash_r){
/* End of flash emulation */
#endif
-static ADDRESS_MAP_START( dbox_map, AS_PROGRAM, 32, dbox_state )
+ADDRESS_MAP_START(dbox_state::dbox_map)
// CS0 - bootrom
// 008004ee Address mask CS0 00000040, 003ffff5 (ffffffff) - Mask: 003fff00 FCM:0f DD:1 PS: 16-Bit
// 008004f8 Base address CS0 00000044, 0000005b (ffffffff) - Base: 00000000 BFC:05 WP:1 FTE:0 NCS:1 Valid: Yes
diff --git a/src/mame/drivers/dbz.cpp b/src/mame/drivers/dbz.cpp
index f2e5a1a3aab..551ba68ffe5 100644
--- a/src/mame/drivers/dbz.cpp
+++ b/src/mame/drivers/dbz.cpp
@@ -106,7 +106,7 @@ WRITE16_MEMBER(dbz_state::dbz_sound_cause_nmi)
}
-static ADDRESS_MAP_START( dbz_map, AS_PROGRAM, 16, dbz_state )
+ADDRESS_MAP_START(dbz_state::dbz_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x480000, 0x48ffff) AM_RAM
AM_RANGE(0x490000, 0x491fff) AM_DEVREADWRITE("k056832", k056832_device, ram_word_r, ram_word_w) // '157 RAM is mirrored twice
@@ -143,7 +143,7 @@ ADDRESS_MAP_END
/* dbz sound */
/* IRQ: from YM2151. NMI: from 68000. Port 0: write to ack NMI */
-static ADDRESS_MAP_START( dbz_sound_map, AS_PROGRAM, 8, dbz_state )
+ADDRESS_MAP_START(dbz_state::dbz_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -151,7 +151,7 @@ static ADDRESS_MAP_START( dbz_sound_map, AS_PROGRAM, 8, dbz_state )
AM_RANGE(0xe000, 0xe001) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dbz_sound_io_map, AS_IO, 8, dbz_state )
+ADDRESS_MAP_START(dbz_state::dbz_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dccons.cpp b/src/mame/drivers/dccons.cpp
index 61306e0cbe3..61b1f423785 100644
--- a/src/mame/drivers/dccons.cpp
+++ b/src/mame/drivers/dccons.cpp
@@ -362,7 +362,7 @@ WRITE8_MEMBER(dc_cons_state::dc_flash_w)
}
#endif
-static ADDRESS_MAP_START( dc_map, AS_PROGRAM, 64, dc_cons_state )
+ADDRESS_MAP_START(dc_cons_state::dc_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_WRITENOP // BIOS
AM_RANGE(0x00200000, 0x0021ffff) AM_ROM AM_REGION("dcflash",0)//AM_READWRITE8(dc_flash_r,dc_flash_w, 0xffffffffffffffffU)
AM_RANGE(0x005f6800, 0x005f69ff) AM_READWRITE(dc_sysctrl_r, dc_sysctrl_w )
@@ -409,11 +409,11 @@ static ADDRESS_MAP_START( dc_map, AS_PROGRAM, 64, dc_cons_state )
AM_RANGE(0xa0000000, 0xa01fffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dc_port, AS_IO, 64, dc_cons_state )
+ADDRESS_MAP_START(dc_cons_state::dc_port)
AM_RANGE(0x00000000, 0x00000007) AM_READWRITE(dc_pdtra_r, dc_pdtra_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dc_audio_map, AS_PROGRAM, 32, dc_cons_state )
+ADDRESS_MAP_START(dc_cons_state::dc_audio_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("dc_sound_ram") /* shared with SH-4 */
AM_RANGE(0x00800000, 0x00807fff) AM_READWRITE(dc_arm_aica_r, dc_arm_aica_w)
diff --git a/src/mame/drivers/dcheese.cpp b/src/mame/drivers/dcheese.cpp
index b960377e4e1..c4bafbde388 100644
--- a/src/mame/drivers/dcheese.cpp
+++ b/src/mame/drivers/dcheese.cpp
@@ -171,7 +171,7 @@ WRITE8_MEMBER(dcheese_state::bsmt_data_w)
*
*************************************/
-static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 16, dcheese_state )
+ADDRESS_MAP_START(dcheese_state::main_cpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
@@ -193,7 +193,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8, dcheese_state )
+ADDRESS_MAP_START(dcheese_state::sound_cpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(sound_status_r, sound_control_w)
AM_RANGE(0x0800, 0x0fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/dcon.cpp b/src/mame/drivers/dcon.cpp
index f3357542f13..25c20277caf 100644
--- a/src/mame/drivers/dcon.cpp
+++ b/src/mame/drivers/dcon.cpp
@@ -38,7 +38,7 @@ READ8_MEMBER(dcon_state::sdgndmps_sound_comms_r)
return m_seibu_sound->main_r(space, offset);
}
-static ADDRESS_MAP_START( dcon_map, AS_PROGRAM, 16, dcon_state )
+ADDRESS_MAP_START(dcon_state::dcon_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0x80000, 0x8bfff) AM_RAM
@@ -59,7 +59,7 @@ static ADDRESS_MAP_START( dcon_map, AS_PROGRAM, 16, dcon_state )
AM_RANGE(0xe0004, 0xe0005) AM_READ_PORT("SYSTEM")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sdgndmps_map, AS_PROGRAM, 16, dcon_state )
+ADDRESS_MAP_START(dcon_state::sdgndmps_map)
AM_IMPORT_FROM(dcon_map)
AM_RANGE(0xa0000, 0xa000d) AM_READ8(sdgndmps_sound_comms_r, 0x00ff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dct11em.cpp b/src/mame/drivers/dct11em.cpp
index 25f518a915f..e39cd45a9d1 100644
--- a/src/mame/drivers/dct11em.cpp
+++ b/src/mame/drivers/dct11em.cpp
@@ -24,9 +24,10 @@ public:
uint32_t screen_update_dct11em(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void dct11em(machine_config &config);
+ void dct11em_mem(address_map &map);
};
-static ADDRESS_MAP_START( dct11em_mem, AS_PROGRAM, 16, dct11em_state )
+ADDRESS_MAP_START(dct11em_state::dct11em_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_RAM // RAM
AM_RANGE( 0x2000, 0x2fff ) AM_RAM // Optional RAM
diff --git a/src/mame/drivers/dday.cpp b/src/mame/drivers/dday.cpp
index eb517f4f969..74242aaf235 100644
--- a/src/mame/drivers/dday.cpp
+++ b/src/mame/drivers/dday.cpp
@@ -58,7 +58,7 @@ write:
#include "speaker.h"
-static ADDRESS_MAP_START( dday_map, AS_PROGRAM, 8, dday_state )
+ADDRESS_MAP_START(dday_state::dday_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_WRITE(dday_sl_control_w)
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(dday_textvideoram_w) AM_SHARE("textvideoram")
diff --git a/src/mame/drivers/ddayjlc.cpp b/src/mame/drivers/ddayjlc.cpp
index 436d2cec3a3..90eff6bbeb2 100644
--- a/src/mame/drivers/ddayjlc.cpp
+++ b/src/mame/drivers/ddayjlc.cpp
@@ -124,6 +124,8 @@ public:
INTERRUPT_GEN_MEMBER(ddayjlc_interrupt);
INTERRUPT_GEN_MEMBER(ddayjlc_snd_interrupt);
void ddayjlc(machine_config &config);
+ void main_cpu(address_map &map);
+ void sound_cpu(address_map &map);
};
@@ -264,7 +266,7 @@ WRITE8_MEMBER(ddayjlc_state::i8257_LMSR_w)
}
}
-static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, ddayjlc_state )
+ADDRESS_MAP_START(ddayjlc_state::main_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("spriteram")
@@ -290,7 +292,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, ddayjlc_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, ddayjlc_state )
+ADDRESS_MAP_START(ddayjlc_state::sound_cpu)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
diff --git a/src/mame/drivers/ddealer.cpp b/src/mame/drivers/ddealer.cpp
index 6d2403a3b45..0b2f0e6f6eb 100644
--- a/src/mame/drivers/ddealer.cpp
+++ b/src/mame/drivers/ddealer.cpp
@@ -174,6 +174,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(mcu_sim);
void draw_video_layer(uint16_t* vreg_base, uint16_t* top, uint16_t* bottom, bitmap_ind16 &bitmap, const rectangle &cliprect, int flipy);
void ddealer(machine_config &config);
+ void ddealer(address_map &map);
};
@@ -471,7 +472,7 @@ WRITE16_MEMBER(ddealer_state::mcu_shared_w)
}
}
-static ADDRESS_MAP_START( ddealer, AS_PROGRAM, 16, ddealer_state )
+ADDRESS_MAP_START(ddealer_state::ddealer)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/ddenlovr.cpp b/src/mame/drivers/ddenlovr.cpp
index c9746829862..e0e360e5efb 100644
--- a/src/mame/drivers/ddenlovr.cpp
+++ b/src/mame/drivers/ddenlovr.cpp
@@ -485,6 +485,54 @@ public:
void kotbinyo(machine_config &config);
void mjschuka(machine_config &config);
void ddenlovj(machine_config &config);
+ void akamaru_map(address_map &map);
+ void daimyojn_portmap(address_map &map);
+ void ddenlovj_map(address_map &map);
+ void ddenlovr_map(address_map &map);
+ void ddenlovrk_map(address_map &map);
+ void funkyfig_map(address_map &map);
+ void funkyfig_portmap(address_map &map);
+ void funkyfig_sound_portmap(address_map &map);
+ void hanakanz_map(address_map &map);
+ void hanakanz_portmap(address_map &map);
+ void hginga_map(address_map &map);
+ void hginga_portmap(address_map &map);
+ void hgokbang_portmap(address_map &map);
+ void hgokou_map(address_map &map);
+ void hgokou_portmap(address_map &map);
+ void hkagerou_portmap(address_map &map);
+ void hparadis_map(address_map &map);
+ void hparadis_portmap(address_map &map);
+ void htengoku_io_map(address_map &map);
+ void htengoku_mem_map(address_map &map);
+ void janshinp_map(address_map &map);
+ void janshinp_portmap(address_map &map);
+ void jongtei_portmap(address_map &map);
+ void kotbinsp_portmap(address_map &map);
+ void kotbinyo_portmap(address_map &map);
+ void mjchuuka_portmap(address_map &map);
+ void mjflove_portmap(address_map &map);
+ void mjgnight_portmap(address_map &map);
+ void mjmyster_map(address_map &map);
+ void mjmyster_portmap(address_map &map);
+ void mjmywrld_portmap(address_map &map);
+ void mjreach1_portmap(address_map &map);
+ void mjschuka_portmap(address_map &map);
+ void mmpanic_map(address_map &map);
+ void mmpanic_portmap(address_map &map);
+ void mmpanic_sound_map(address_map &map);
+ void mmpanic_sound_portmap(address_map &map);
+ void nettoqc_map(address_map &map);
+ void quiz365_map(address_map &map);
+ void quizchq_map(address_map &map);
+ void quizchq_portmap(address_map &map);
+ void rongrong_map(address_map &map);
+ void rongrong_portmap(address_map &map);
+ void seljan2_map(address_map &map);
+ void seljan2_portmap(address_map &map);
+ void sryudens_map(address_map &map);
+ void sryudens_portmap(address_map &map);
+ void ultrchmp_map(address_map &map);
};
VIDEO_START_MEMBER(ddenlovr_state,ddenlovr)
@@ -1909,7 +1957,7 @@ WRITE16_MEMBER(ddenlovr_state::quiz365_protection_w)
COMBINE_DATA(m_quiz365_protection + offset);
}
-static ADDRESS_MAP_START( quiz365_map, AS_PROGRAM, 16, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::quiz365_map)
AM_RANGE(0x000000, 0x17ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x2003ff) AM_WRITE8(rongrong_palette_w, 0x00ff)
@@ -1965,7 +2013,7 @@ CUSTOM_INPUT_MEMBER(ddenlovr_state::ddenlovj_blitter_r)
return m_ddenlovr_blitter_irq_flag ? 0x03 : 0x00; // bit 4 = 1 -> blitter busy
}
-static ADDRESS_MAP_START( ddenlovj_map, AS_PROGRAM, 16, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::ddenlovj_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x2003ff) AM_WRITE8(rongrong_palette_w, 0x00ff)
@@ -2020,7 +2068,7 @@ WRITE16_MEMBER(ddenlovr_state::ddenlovrk_protection2_w)
m_oki->set_rom_bank((*m_protection2) & 0x7);
}
-static ADDRESS_MAP_START( ddenlovrk_map, AS_PROGRAM, 16, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::ddenlovrk_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x100001) AM_RAM_READ(ddenlovrk_protection1_r) AM_SHARE("protection1")
@@ -2056,7 +2104,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( ddenlovr_map, AS_PROGRAM, 16, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::ddenlovr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x300000, 0x300001) AM_WRITE8(ddenlovr_oki_bank_w, 0x00ff)
@@ -2130,7 +2178,7 @@ WRITE8_MEMBER(ddenlovr_state::nettoqc_oki_bank_w )
m_oki->set_rom_bank(data & 3);
}
-static ADDRESS_MAP_START( nettoqc_map, AS_PROGRAM, 16, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::nettoqc_map)
AM_RANGE(0x000000, 0x17ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x2003ff) AM_WRITE8(rongrong_palette_w, 0x00ff)
@@ -2179,7 +2227,7 @@ WRITE16_MEMBER(ddenlovr_state::ultrchmp_protection2_w)
m_oki->set_rom_bank(data & 0xf);
}
-static ADDRESS_MAP_START( ultrchmp_map, AS_PROGRAM, 16, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::ultrchmp_map)
AM_RANGE(0x000000, 0x17ffff) AM_ROM // ROM
AM_RANGE(0x224680, 0x224681) AM_RAM_READ(ultrchmp_protection2_r) AM_SHARE("protection2") // Protection 2
@@ -2244,7 +2292,7 @@ WRITE8_MEMBER(ddenlovr_state::rongrong_select_w)
}
-static ADDRESS_MAP_START( quizchq_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::quizchq_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -2252,7 +2300,7 @@ static ADDRESS_MAP_START( quizchq_map, AS_PROGRAM, 8, ddenlovr_state )
AM_RANGE(0x8000, 0x81ff) AM_WRITE(rongrong_palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quizchq_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::quizchq_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(rongrong_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -2282,7 +2330,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( rongrong_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::rongrong_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -2290,7 +2338,7 @@ static ADDRESS_MAP_START( rongrong_map, AS_PROGRAM, 8, ddenlovr_state )
AM_RANGE(0xf000, 0xf1ff) AM_WRITE(rongrong_palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rongrong_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::rongrong_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(rongrong_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -2388,7 +2436,7 @@ READ8_MEMBER(ddenlovr_state::mmpanic_link_r){ return 0xff; }
/* Main CPU */
-static ADDRESS_MAP_START( mmpanic_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mmpanic_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x0051, 0x0051) AM_READ(magic_r) // ?
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
@@ -2397,7 +2445,7 @@ static ADDRESS_MAP_START( mmpanic_map, AS_PROGRAM, 8, ddenlovr_state )
AM_RANGE(0x8000, 0x81ff) AM_WRITE(rongrong_palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmpanic_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mmpanic_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
@@ -2443,13 +2491,13 @@ ADDRESS_MAP_END
/* Sound CPU */
-static ADDRESS_MAP_START( mmpanic_sound_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mmpanic_sound_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x66ff) AM_RAM // RAM
AM_RANGE(0x8000, 0xffff) AM_ROM // ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmpanic_sound_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mmpanic_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x02, 0x02) AM_READNOP // read just before port 00
@@ -2468,7 +2516,7 @@ ADDRESS_MAP_END
/* Main CPU */
-static ADDRESS_MAP_START( funkyfig_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::funkyfig_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -2549,7 +2597,7 @@ WRITE8_MEMBER(ddenlovr_state::funkyfig_lockout_w)
}
}
-static ADDRESS_MAP_START( funkyfig_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::funkyfig_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("oki", okim6295_device, read, write) // Sound
AM_RANGE(0x01, 0x01) AM_WRITE(mmpanic_leds_w) // Leds
@@ -2582,7 +2630,7 @@ ADDRESS_MAP_END
/* Sound CPU */
-static ADDRESS_MAP_START( funkyfig_sound_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::funkyfig_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x02) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x04, 0x04) AM_READNOP // read only once at the start
@@ -2604,7 +2652,7 @@ WRITE8_MEMBER(ddenlovr_state::hanakanz_rombank_w)
membank("bank2")->set_entry(((data & 0xf0) >> 4));
}
-static ADDRESS_MAP_START( hanakanz_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hanakanz_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -2725,7 +2773,7 @@ READ8_MEMBER(ddenlovr_state::hanakanz_rand_r)
return machine().rand();
}
-static ADDRESS_MAP_START( hanakanz_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hanakanz_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(hanakanz_busy_r, hanakanz_oki_bank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w)
@@ -2746,7 +2794,7 @@ static ADDRESS_MAP_START( hanakanz_portmap, AS_IO, 8, ddenlovr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hkagerou_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hkagerou_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(hanakanz_busy_r, hanakanz_oki_bank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w)
@@ -2768,7 +2816,7 @@ ADDRESS_MAP_END
// same as hkagerou, different inputs, no RTC
-static ADDRESS_MAP_START( kotbinyo_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::kotbinyo_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(hanakanz_busy_r, hanakanz_oki_bank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w)
@@ -2792,7 +2840,7 @@ ADDRESS_MAP_END
// same as hkagerou, different inputs, no RTC
-static ADDRESS_MAP_START( kotbinsp_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::kotbinsp_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(hanakanz_busy_r, hanakanz_oki_bank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w)
@@ -2825,7 +2873,7 @@ READ8_MEMBER(ddenlovr_state::mjreach1_protection_r)
return m_prot_val;
}
-static ADDRESS_MAP_START( mjreach1_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mjreach1_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(hanakanz_busy_r, hanakanz_oki_bank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w)
@@ -2951,7 +2999,7 @@ WRITE8_MEMBER(ddenlovr_state::mjchuuka_oki_bank_w )
#endif
}
-static ADDRESS_MAP_START( mjchuuka_portmap, AS_IO, 8, ddenlovr_state ) // 16 bit I/O
+ADDRESS_MAP_START(ddenlovr_state::mjchuuka_portmap) // 16 bit I/O
AM_RANGE(0x13, 0x13) AM_MIRROR(0xff00) AM_READ(hanakanz_rand_r)
AM_RANGE(0x1c, 0x1c) AM_MIRROR(0xff00) AM_WRITE(hanakanz_rombank_w)
AM_RANGE(0x1e, 0x1e) AM_MIRROR(0xff00) AM_WRITE(mjchuuka_oki_bank_w)
@@ -2996,7 +3044,7 @@ READ8_MEMBER(ddenlovr_state::mjschuka_protection_r)
return m_prot_val;
}
-static ADDRESS_MAP_START( mjschuka_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mjschuka_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
AM_RANGE(0x1c, 0x1c) AM_READNOP AM_WRITE(sryudens_rambank_w) // ? ack on RTC int
@@ -3039,7 +3087,7 @@ ADDRESS_MAP_END
Mahjong The Mysterious World
***************************************************************************/
-static ADDRESS_MAP_START( mjmyster_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mjmyster_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -3127,7 +3175,7 @@ WRITE8_MEMBER(ddenlovr_state::mjmyster_blitter_w)
blitter_w(0, offset, data, 0xfc);
}
-static ADDRESS_MAP_START( mjmyster_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mjmyster_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(mjmyster_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -3175,7 +3223,7 @@ READ8_MEMBER(ddenlovr_state::hginga_protection_r)
return rom[0x10000 + 0x8000 * (m_hginga_rombank & 0x7) + 0xf601 - 0x8000];
}
-static ADDRESS_MAP_START( hginga_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hginga_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -3297,7 +3345,7 @@ WRITE8_MEMBER(ddenlovr_state::hginga_blitter_w)
blitter_w(0, offset, data, 0xfc);
}
-static ADDRESS_MAP_START( hginga_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hginga_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(hginga_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -3396,7 +3444,7 @@ READ8_MEMBER(ddenlovr_state::hgokou_protection_r)
return rom[0x10000 + 0x8000 * (m_hginga_rombank & 0x7) + 0xe601 - 0x8000];
}
-static ADDRESS_MAP_START( hgokou_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hgokou_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -3407,7 +3455,7 @@ static ADDRESS_MAP_START( hgokou_map, AS_PROGRAM, 8, ddenlovr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hgokou_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hgokou_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(hginga_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -3462,7 +3510,7 @@ READ8_MEMBER(ddenlovr_state::hgokbang_input_r)
return 0xff;
}
-static ADDRESS_MAP_START( hgokbang_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hgokbang_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(hginga_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -3543,7 +3591,7 @@ WRITE8_MEMBER(ddenlovr_state::hparadis_coin_w)
}
}
-static ADDRESS_MAP_START( hparadis_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hparadis_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -3552,7 +3600,7 @@ static ADDRESS_MAP_START( hparadis_map, AS_PROGRAM, 8, ddenlovr_state )
ADDRESS_MAP_END
// the RTC seems unused
-static ADDRESS_MAP_START( hparadis_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::hparadis_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(rongrong_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -3595,7 +3643,7 @@ READ8_MEMBER(ddenlovr_state::mjmywrld_coins_r)
return 0xff;
}
-static ADDRESS_MAP_START( mjmywrld_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mjmywrld_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(mjmyster_blitter_w)
AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r)
@@ -3679,7 +3727,7 @@ READ16_MEMBER(ddenlovr_state::akamaru_e0010d_r)
return 0xffff; // read but not used, it seems
}
-static ADDRESS_MAP_START( akamaru_map, AS_PROGRAM, 16, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::akamaru_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x213570, 0x213571) AM_WRITE(akamaru_protection1_w) // OKI bank
@@ -3781,7 +3829,7 @@ WRITE8_MEMBER(ddenlovr_state::mjflove_coincounter_w)
}
}
-static ADDRESS_MAP_START( mjflove_portmap, AS_IO, 8, ddenlovr_state ) // 16 bit I/O
+ADDRESS_MAP_START(ddenlovr_state::mjflove_portmap) // 16 bit I/O
AM_RANGE(0x0010, 0x0010) AM_READ(hanakanz_rand_r) AM_MIRROR(0xff00)
AM_RANGE(0x001c, 0x001c) AM_READ_PORT("DSW2") AM_MIRROR(0xff00)
AM_RANGE(0x001e, 0x001e) AM_WRITE(hanakanz_keyb_w) AM_MIRROR(0xff00)
@@ -3831,7 +3879,7 @@ READ8_MEMBER(ddenlovr_state::jongtei_busy_r)
return 0x04; // !bit 2 = blitter busy
}
-static ADDRESS_MAP_START( jongtei_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::jongtei_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(jongtei_busy_r, jongtei_okibank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w)
@@ -3887,7 +3935,7 @@ READ8_MEMBER(ddenlovr_state::mjgnight_protection_r)
return m_prot_val;
}
-static ADDRESS_MAP_START( mjgnight_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::mjgnight_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(jongtei_busy_r, jongtei_okibank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w)
@@ -3912,7 +3960,7 @@ ADDRESS_MAP_END
Mahjong Seiryu Densetsu
***************************************************************************/
-static ADDRESS_MAP_START( sryudens_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::sryudens_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -3962,7 +4010,7 @@ WRITE8_MEMBER(ddenlovr_state::sryudens_rambank_w)
//logerror("%04x: rambank = %02x\n", m_maincpu->pc(), data);
}
-static ADDRESS_MAP_START( sryudens_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::sryudens_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ym2413", ym2413_device, write)
@@ -4016,7 +4064,7 @@ WRITE8_MEMBER(ddenlovr_state::janshinp_coincounter_w)
#endif
}
-static ADDRESS_MAP_START( janshinp_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::janshinp_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -4024,7 +4072,7 @@ static ADDRESS_MAP_START( janshinp_map, AS_PROGRAM, 8, ddenlovr_state )
AM_RANGE(0xe000, 0xe1ff) AM_WRITE(rongrong_palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( janshinp_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::janshinp_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2")
@@ -4101,7 +4149,7 @@ READ8_MEMBER(ddenlovr_state::seljan2_dsw_r )
return 0xff;
}
-static ADDRESS_MAP_START( seljan2_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::seljan2_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked)
@@ -4109,7 +4157,7 @@ static ADDRESS_MAP_START( seljan2_map, AS_PROGRAM, 8, ddenlovr_state )
AM_RANGE(0x8000, 0xffff) AM_WRITE(seljan2_palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( seljan2_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::seljan2_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
AM_RANGE(0x1c, 0x1c) AM_READ(seljan2_busy_r) AM_WRITE(hanakanz_keyb_w)
@@ -4258,7 +4306,7 @@ WRITE8_MEMBER(ddenlovr_state::htengoku_blit_romregion_w)
logerror("%04x: unmapped romregion=%02X\n", m_maincpu->pc(), data);
}
-static ADDRESS_MAP_START( htengoku_io_map, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::htengoku_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter
AM_RANGE( 0x20, 0x20 ) AM_WRITE(htengoku_select_w) // Controls
@@ -4293,14 +4341,14 @@ ADDRESS_MAP_END
Hanafuda Hana Tengoku
***************************************************************************/
-static ADDRESS_MAP_START( htengoku_mem_map, AS_PROGRAM, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::htengoku_mem_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x7000, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0xffff ) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( htengoku_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::htengoku_banked_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x80000, 0x801ff) AM_WRITE(tenkai_palette_w)
ADDRESS_MAP_END
@@ -4457,7 +4505,7 @@ READ8_MEMBER(ddenlovr_state::daimyojn_year_hack_r)
return offset ? 1 : 0; // year = 0x10 (BCD)
}
-static ADDRESS_MAP_START( daimyojn_portmap, AS_IO, 8, ddenlovr_state )
+ADDRESS_MAP_START(ddenlovr_state::daimyojn_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x2c, 0x2c) AM_READWRITE(jongtei_busy_r, daimyojn_okibank_w)
AM_RANGE(0x2e, 0x2e) AM_WRITE(daimyojn_palette_sel_w)
diff --git a/src/mame/drivers/ddragon.cpp b/src/mame/drivers/ddragon.cpp
index 05c73922d4e..b7a664d0213 100644
--- a/src/mame/drivers/ddragon.cpp
+++ b/src/mame/drivers/ddragon.cpp
@@ -489,7 +489,7 @@ READ8_MEMBER(ddragon_state::dd_adpcm_status_r)
*
*************************************/
-static ADDRESS_MAP_START( ddragon_map, AS_PROGRAM, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::ddragon_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x1000, 0x11ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x1200, 0x13ff) AM_RAM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
@@ -511,7 +511,7 @@ static ADDRESS_MAP_START( ddragon_map, AS_PROGRAM, 8, ddragon_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dd2_map, AS_PROGRAM, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::dd2_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(ddragon_fgvideoram_w) AM_SHARE("fgvideoram")
AM_RANGE(0x2000, 0x21ff) AM_READWRITE(ddragon_comram_r, ddragon_comram_w) AM_SHARE("comram") AM_MIRROR(0x0600)
@@ -540,7 +540,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::sub_map)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(ddragon_hd63701_internal_registers_r, ddragon_hd63701_internal_registers_w)
AM_RANGE(0x0020, 0x0fff) AM_RAM
AM_RANGE(0x8000, 0x81ff) AM_RAM AM_SHARE("comram")
@@ -548,14 +548,14 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, ddragon_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ddragonba_sub_map, AS_PROGRAM, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::ddragonba_sub_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x8000, 0x81ff) AM_RAM AM_SHARE("comram")
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dd2_sub_map, AS_PROGRAM, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::dd2_sub_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("comram")
AM_RANGE(0xd000, 0xd000) AM_WRITE(ddragon2_sub_irq_ack_w)
@@ -563,7 +563,7 @@ static ADDRESS_MAP_START( dd2_sub_map, AS_PROGRAM, 8, ddragon_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ddragonba_sub_portmap, AS_IO, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::ddragonba_sub_portmap)
AM_RANGE(0x0000, 0x01ff) AM_WRITE(ddragonba_port_w)
ADDRESS_MAP_END
@@ -575,7 +575,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x1800, 0x1800) AM_READ(dd_adpcm_status_r)
@@ -585,7 +585,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ddragon_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dd2_sound_map, AS_PROGRAM, 8, ddragon_state )
+ADDRESS_MAP_START(ddragon_state::dd2_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("fmsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/ddragon3.cpp b/src/mame/drivers/ddragon3.cpp
index dae558a5463..917257dd536 100644
--- a/src/mame/drivers/ddragon3.cpp
+++ b/src/mame/drivers/ddragon3.cpp
@@ -290,7 +290,7 @@ CUSTOM_INPUT_MEMBER(wwfwfest_state::dsw_c0_r)
*
*************************************/
-static ADDRESS_MAP_START( ddragon3_map, AS_PROGRAM, 16, ddragon3_state )
+ADDRESS_MAP_START(ddragon3_state::ddragon3_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x000004, 0x000007) AM_WRITENOP
AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(ddragon3_fg_videoram_w) AM_SHARE("fg_videoram") /* Foreground (32x32 Tiles - 4 by per tile) */
@@ -309,7 +309,7 @@ static ADDRESS_MAP_START( ddragon3_map, AS_PROGRAM, 16, ddragon3_state )
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dd3b_map, AS_PROGRAM, 16, ddragon3_state )
+ADDRESS_MAP_START(ddragon3_state::dd3b_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(ddragon3_fg_videoram_w) AM_SHARE("fg_videoram") /* Foreground (32x32 Tiles - 4 by per tile) */
AM_RANGE(0x081000, 0x081fff) AM_RAM AM_SHARE("spriteram")
@@ -328,7 +328,7 @@ static ADDRESS_MAP_START( dd3b_map, AS_PROGRAM, 16, ddragon3_state )
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ctribe_map, AS_PROGRAM, 16, ddragon3_state )
+ADDRESS_MAP_START(ddragon3_state::ctribe_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(ddragon3_fg_videoram_w) AM_SHARE("fg_videoram") /* Foreground (32x32 Tiles - 4 by per tile) */
AM_RANGE(0x081000, 0x081fff) AM_RAM AM_SHARE("spriteram")
@@ -348,7 +348,7 @@ static ADDRESS_MAP_START( ctribe_map, AS_PROGRAM, 16, ddragon3_state )
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wwfwfest_state )
+ADDRESS_MAP_START(wwfwfest_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x0c0000, 0x0c1fff) AM_RAM_WRITE(wwfwfest_fg0_videoram_w) AM_SHARE("fg0_videoram") /* FG0 Ram - 4 bytes per tile */
AM_RANGE(0x0c2000, 0x0c3fff) AM_RAM AM_SHARE("spriteram") /* SPR Ram */
@@ -368,7 +368,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wwfwfest_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ddragon3_state )
+ADDRESS_MAP_START(ddragon3_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
@@ -378,7 +378,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ddragon3_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ctribe_sound_map, AS_PROGRAM, 8, ddragon3_state )
+ADDRESS_MAP_START(ddragon3_state::ctribe_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ym2151", ym2151_device, status_r, write)
diff --git a/src/mame/drivers/ddribble.cpp b/src/mame/drivers/ddribble.cpp
index 27ae60830a3..d68fff3d3fb 100644
--- a/src/mame/drivers/ddribble.cpp
+++ b/src/mame/drivers/ddribble.cpp
@@ -108,7 +108,7 @@ WRITE8_MEMBER(ddribble_state::ddribble_vlm5030_ctrl_w)
}
-static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8, ddribble_state )
+ADDRESS_MAP_START(ddribble_state::cpu0_map)
AM_RANGE(0x0000, 0x0004) AM_WRITE(K005885_0_w) /* video registers (005885 #1) */
AM_RANGE(0x0800, 0x0804) AM_WRITE(K005885_1_w) /* video registers (005885 #2) */
AM_RANGE(0x1800, 0x187f) AM_RAM_DEVWRITE("palette", palette_device, write_indirect) AM_SHARE("palette") /* palette */
@@ -122,7 +122,7 @@ static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8, ddribble_state )
AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, ddribble_state )
+ADDRESS_MAP_START(ddribble_state::cpu1_map)
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(ddribble_sharedram_r, ddribble_sharedram_w) /* shared RAM with CPU #0 */
AM_RANGE(0x2000, 0x27ff) AM_READWRITE(ddribble_snd_sharedram_r, ddribble_snd_sharedram_w) /* shared RAM with CPU #2 */
AM_RANGE(0x2800, 0x2800) AM_READ_PORT("DSW1")
@@ -136,14 +136,14 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, ddribble_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, ddribble_state )
+ADDRESS_MAP_START(ddribble_state::cpu2_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("snd_sharedram") /* shared RAM with CPU #1 */
AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write) /* YM2203 */
AM_RANGE(0x3000, 0x3000) AM_DEVWRITE("vlm", vlm5030_device, data_w) /* Speech data */
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vlm_map, 0, 8, ddribble_state )
+ADDRESS_MAP_START(ddribble_state::vlm_map)
AM_RANGE(0x0000, 0xffff) AM_ROMBANK("vlmbank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/de_2.cpp b/src/mame/drivers/de_2.cpp
index e164c293363..2e4846fc900 100644
--- a/src/mame/drivers/de_2.cpp
+++ b/src/mame/drivers/de_2.cpp
@@ -58,6 +58,7 @@ public:
void de_type1(machine_config &config);
void de_type2_alpha3(machine_config &config);
void de_type3(machine_config &config);
+ void de_2_audio_map(address_map &map);
protected:
// devices
@@ -133,7 +134,7 @@ private:
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( de_2_audio_map, AS_PROGRAM, 8, de_2_state )
+ADDRESS_MAP_START(de_2_state::de_2_audio_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x2400, 0x2400) AM_READ(sound_latch_r)
diff --git a/src/mame/drivers/deadang.cpp b/src/mame/drivers/deadang.cpp
index 25716e76159..8ce7c0a9ace 100644
--- a/src/mame/drivers/deadang.cpp
+++ b/src/mame/drivers/deadang.cpp
@@ -64,7 +64,7 @@ READ16_MEMBER(deadang_state::ghunter_trackball_high_r)
/* Memory Maps */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, deadang_state )
+ADDRESS_MAP_START(deadang_state::main_map)
AM_RANGE(0x00000, 0x037ff) AM_RAM
AM_RANGE(0x03800, 0x03fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1")
@@ -82,7 +82,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, deadang_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, deadang_state )
+ADDRESS_MAP_START(deadang_state::sub_map)
AM_RANGE(0x00000, 0x037ff) AM_RAM
AM_RANGE(0x03800, 0x03fff) AM_RAM_WRITE(foreground_w) AM_SHARE("video_data")
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1")
@@ -91,7 +91,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, deadang_state )
AM_RANGE(0xe0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, deadang_state )
+ADDRESS_MAP_START(deadang_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, data_r)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -113,7 +113,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, deadang_state )
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_decrypted_opcodes_map, AS_OPCODES, 8, deadang_state )
+ADDRESS_MAP_START(deadang_state::sound_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r)
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
@@ -278,7 +278,7 @@ MACHINE_CONFIG_START(deadang_state::deadang)
MCFG_CPU_ADD("audiocpu", Z80, XTAL(14'318'181)/4)
MCFG_CPU_PROGRAM_MAP(sound_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(sound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(sound_decrypted_opcodes_map)
MCFG_DEVICE_ADD("sei80bu", SEI80BU, 0)
MCFG_DEVICE_ROM("audiocpu")
diff --git a/src/mame/drivers/dec0.cpp b/src/mame/drivers/dec0.cpp
index bb1513f42a1..eee2b1c859c 100644
--- a/src/mame/drivers/dec0.cpp
+++ b/src/mame/drivers/dec0.cpp
@@ -428,7 +428,7 @@ WRITE16_MEMBER(dec0_state::midres_sound_w)
/******************************************************************************/
-static ADDRESS_MAP_START( dec0_map, AS_PROGRAM, 16, dec0_state )
+ADDRESS_MAP_START(dec0_state::dec0_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x240000, 0x240007) AM_DEVWRITE("tilegen1", deco_bac06_device, pf_control_0_w) /* text layer */
AM_RANGE(0x240010, 0x240017) AM_DEVWRITE("tilegen1", deco_bac06_device, pf_control_1_w)
@@ -461,14 +461,14 @@ static ADDRESS_MAP_START( dec0_map, AS_PROGRAM, 16, dec0_state )
AM_RANGE(0xffc000, 0xffc7ff) AM_RAM AM_SHARE("spriteram") /* Sprites */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( robocop_sub_map, AS_PROGRAM, 8, dec0_state )
+ADDRESS_MAP_START(dec0_state::robocop_sub_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x1f0000, 0x1f1fff) AM_RAM /* Main ram */
AM_RANGE(0x1f2000, 0x1f3fff) AM_RAM AM_SHARE("robocop_shared") /* Shared ram */
AM_RANGE(0x1ff400, 0x1ff403) AM_DEVWRITE("sub", h6280_device, irq_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hippodrm_sub_map, AS_PROGRAM, 8, dec0_state )
+ADDRESS_MAP_START(dec0_state::hippodrm_sub_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x180000, 0x18001f) AM_RAM AM_SHARE("hippodrm_shared")
AM_RANGE(0x1a0000, 0x1a0007) AM_DEVWRITE("tilegen3", deco_bac06_device, pf_control0_8bit_packed_w)
@@ -569,7 +569,7 @@ READ16_MEMBER(dec0_state::slyspy_state_r)
}
-static ADDRESS_MAP_START( slyspy_protection_map, AS_PROGRAM, 16, dec0_state )
+ADDRESS_MAP_START(dec0_state::slyspy_protection_map)
AM_RANGE(0x04000, 0x04001) AM_MIRROR(0x30000) AM_READ(slyspy_state_r) AM_WRITENOP
AM_RANGE(0x0a000, 0x0a001) AM_MIRROR(0x30000) AM_WRITE(slyspy_state_w)
// Default state (called by Traps 1, 3, 4, 7, C)
@@ -595,7 +595,7 @@ static ADDRESS_MAP_START( slyspy_protection_map, AS_PROGRAM, 16, dec0_state )
AM_RANGE(0x38000, 0x39fff) AM_DEVWRITE("tilegen2", deco_bac06_device, pf_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slyspy_map, AS_PROGRAM, 16, dec0_state )
+ADDRESS_MAP_START(dec0_state::slyspy_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
/* The location of pf1 & pf2 can change in the 240000 - 24ffff region according to protection */
@@ -618,7 +618,7 @@ static ADDRESS_MAP_START( slyspy_map, AS_PROGRAM, 16, dec0_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( midres_map, AS_PROGRAM, 16, dec0_state )
+ADDRESS_MAP_START(dec0_state::midres_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram")
@@ -648,7 +648,7 @@ static ADDRESS_MAP_START( midres_map, AS_PROGRAM, 16, dec0_state )
AM_RANGE(0x340400, 0x3407ff) AM_DEVREADWRITE("tilegen1", deco_bac06_device, pf_rowscroll_r, pf_rowscroll_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( midresb_map, AS_PROGRAM, 16, dec0_state )
+ADDRESS_MAP_START(dec0_state::midresb_map)
AM_IMPORT_FROM( midres_map )
AM_RANGE(0x160010, 0x160011) AM_WRITE(dec0_priority_w)
AM_RANGE(0x180000, 0x18000f) AM_READ(dec0_controls_r)
@@ -661,7 +661,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8, dec0_state )
+ADDRESS_MAP_START(dec0_state::dec0_s_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_device, write)
@@ -671,7 +671,7 @@ static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8, dec0_state )
ADDRESS_MAP_END
/* Physical memory map (21 bits) */
-static ADDRESS_MAP_START( slyspy_s_map, AS_PROGRAM, 8, dec0_state )
+ADDRESS_MAP_START(dec0_state::slyspy_s_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_DEVICE("sndprotect", address_map_bank_device, amap8 )
AM_RANGE(0x1f0000, 0x1f1fff) AM_RAMBANK("bank8")
@@ -700,7 +700,7 @@ READ8_MEMBER(dec0_state::slyspy_sound_state_reset_r)
return 0xff;
}
-static ADDRESS_MAP_START( slyspy_sound_protection_map, AS_PROGRAM, 8, dec0_state )
+ADDRESS_MAP_START(dec0_state::slyspy_sound_protection_map)
AM_RANGE(0x020000, 0x020001) AM_MIRROR(0x180000) AM_READ(slyspy_sound_state_r) /* Protection counter */
AM_RANGE(0x050000, 0x050001) AM_MIRROR(0x180000) AM_READ(slyspy_sound_state_reset_r)
// state 0
@@ -726,7 +726,7 @@ static ADDRESS_MAP_START( slyspy_sound_protection_map, AS_PROGRAM, 8, dec0_state
ADDRESS_MAP_END
-static ADDRESS_MAP_START( midres_s_map, AS_PROGRAM, 8, dec0_state )
+ADDRESS_MAP_START(dec0_state::midres_s_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x108000, 0x108001) AM_DEVWRITE("ym2", ym3812_device, write)
AM_RANGE(0x118000, 0x118001) AM_DEVWRITE("ym1", ym2203_device, write)
@@ -766,7 +766,7 @@ WRITE16_MEMBER( dec0_automat_state::automat_palette_w )
-static ADDRESS_MAP_START( automat_map, AS_PROGRAM, 16, dec0_automat_state )
+ADDRESS_MAP_START(dec0_automat_state::automat_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x240000, 0x240007) AM_RAM /* text layer */
@@ -805,7 +805,7 @@ static ADDRESS_MAP_START( automat_map, AS_PROGRAM, 16, dec0_automat_state )
AM_RANGE(0xffc000, 0xffcfff) AM_RAM AM_SHARE("spriteram") /* Sprites */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( secretab_map, AS_PROGRAM, 16, dec0_automat_state )
+ADDRESS_MAP_START(dec0_automat_state::secretab_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
// AM_RANGE(0x240000, 0x240007) AM_DEVWRITE("tilegen2", deco_bac06_device, pf_control_0_w)
// AM_RANGE(0x240010, 0x240017) AM_DEVWRITE("tilegen2", deco_bac06_device, pf_control_1_w)
@@ -833,7 +833,7 @@ static ADDRESS_MAP_START( secretab_map, AS_PROGRAM, 16, dec0_automat_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( automat_s_map, AS_PROGRAM, 8, dec0_automat_state )
+ADDRESS_MAP_START(dec0_automat_state::automat_s_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -845,7 +845,7 @@ static ADDRESS_MAP_START( automat_s_map, AS_PROGRAM, 8, dec0_automat_state )
AM_RANGE(0xf000, 0xf000) AM_DEVWRITE("adpcm_select1", ls157_device, ba_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( secretab_s_map, AS_PROGRAM, 8, dec0_automat_state )
+ADDRESS_MAP_START(dec0_automat_state::secretab_s_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -857,7 +857,7 @@ static ADDRESS_MAP_START( secretab_s_map, AS_PROGRAM, 8, dec0_automat_state )
AM_RANGE(0xf000, 0xf000) AM_DEVWRITE("adpcm_select1", ls157_device, ba_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, dec0_state )
+ADDRESS_MAP_START(dec0_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(dec0_mcu_port_r, dec0_mcu_port_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dec8.cpp b/src/mame/drivers/dec8.cpp
index 103af266ff7..e3943ba54a3 100644
--- a/src/mame/drivers/dec8.cpp
+++ b/src/mame/drivers/dec8.cpp
@@ -464,7 +464,7 @@ WRITE8_MEMBER(dec8_state::flip_screen_w){ flip_screen_set(data); }
/******************************************************************************/
-static ADDRESS_MAP_START( lastmisn_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::lastmisn_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8) AM_SHARE("palette")
AM_RANGE(0x1400, 0x17ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8_ext) AM_SHARE("palette_ext")
@@ -490,7 +490,7 @@ static ADDRESS_MAP_START( lastmisn_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lastmisn_sub_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::lastmisn_sub_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8) AM_SHARE("palette")
AM_RANGE(0x1400, 0x17ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8_ext) AM_SHARE("palette_ext")
@@ -510,7 +510,7 @@ static ADDRESS_MAP_START( lastmisn_sub_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shackled_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::shackled_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8) AM_SHARE("palette")
AM_RANGE(0x1400, 0x17ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8_ext) AM_SHARE("palette_ext")
@@ -534,7 +534,7 @@ static ADDRESS_MAP_START( shackled_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shackled_sub_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::shackled_sub_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8) AM_SHARE("palette")
AM_RANGE(0x1400, 0x17ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8_ext) AM_SHARE("palette_ext")
@@ -559,7 +559,7 @@ static ADDRESS_MAP_START( shackled_sub_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gondo_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::gondo_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_SHARE("bg_data")
@@ -582,7 +582,7 @@ static ADDRESS_MAP_START( gondo_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( garyoret_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::garyoret_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_SHARE("bg_data")
@@ -604,7 +604,7 @@ static ADDRESS_MAP_START( garyoret_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meikyuh_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::meikyuh_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_SHARE("videoram")
@@ -628,7 +628,7 @@ static ADDRESS_MAP_START( meikyuh_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( csilver_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::csilver_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8) AM_SHARE("palette")
AM_RANGE(0x1400, 0x17ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8_ext) AM_SHARE("palette_ext")
@@ -653,7 +653,7 @@ static ADDRESS_MAP_START( csilver_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( csilver_sub_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::csilver_sub_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x1000, 0x13ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8) AM_SHARE("palette")
AM_RANGE(0x1400, 0x17ff) AM_RAM_DEVWRITE("palette", deco_rmc3_device, write8_ext) AM_SHARE("palette_ext")
@@ -669,7 +669,7 @@ static ADDRESS_MAP_START( csilver_sub_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oscar_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::oscar_map)
AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0f00, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2")
@@ -693,7 +693,7 @@ static ADDRESS_MAP_START( oscar_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oscar_sub_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::oscar_sub_map)
AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0f00, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2")
@@ -701,7 +701,7 @@ static ADDRESS_MAP_START( oscar_sub_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( srdarwin_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::srdarwin_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM
AM_RANGE(0x0600, 0x07ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(srdarwin_videoram_w) AM_SHARE("videoram")
@@ -724,7 +724,7 @@ static ADDRESS_MAP_START( srdarwin_map, AS_PROGRAM, 8, dec8_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::cobra_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("tilegen1", deco_bac06_device, pf_data_8bit_r, pf_data_8bit_w)
AM_RANGE(0x1000, 0x17ff) AM_DEVREADWRITE("tilegen2", deco_bac06_device, pf_data_8bit_r, pf_data_8bit_w)
@@ -752,7 +752,7 @@ ADDRESS_MAP_END
/******************************************************************************/
/* Used for Cobra Command, Maze Hunter, Super Real Darwin etc */
-static ADDRESS_MAP_START( dec8_s_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::dec8_s_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ym2", ym3812_device, write)
@@ -761,7 +761,7 @@ static ADDRESS_MAP_START( dec8_s_map, AS_PROGRAM, 8, dec8_state )
ADDRESS_MAP_END
/* Used by Gondomania, Psycho-Nics Oscar & Garyo Retsuden */
-static ADDRESS_MAP_START( oscar_s_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::oscar_s_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ym2", ym3526_device, write)
@@ -770,7 +770,7 @@ static ADDRESS_MAP_START( oscar_s_map, AS_PROGRAM, 8, dec8_state )
ADDRESS_MAP_END
/* Used by Last Mission, Shackled & Breywood */
-static ADDRESS_MAP_START( ym3526_s_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::ym3526_s_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3526_device, write)
@@ -779,7 +779,7 @@ static ADDRESS_MAP_START( ym3526_s_map, AS_PROGRAM, 8, dec8_state )
ADDRESS_MAP_END
/* Captain Silver - same sound system as Pocket Gal */
-static ADDRESS_MAP_START( csilver_s_map, AS_PROGRAM, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::csilver_s_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3526_device, write)
@@ -843,7 +843,7 @@ WRITE8_MEMBER(dec8_state::dec8_mcu_to_main_w)
m_maincpu->set_input_line(M6809_IRQ_LINE, ASSERT_LINE);
}
-static ADDRESS_MAP_START( dec8_mcu_io_map, AS_IO, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::dec8_mcu_io_map)
AM_RANGE(MCS51_PORT_P0,MCS51_PORT_P3) AM_READWRITE(dec8_mcu_from_main_r, dec8_mcu_to_main_w)
ADDRESS_MAP_END
@@ -910,7 +910,7 @@ WRITE8_MEMBER(dec8_state::srdarwin_mcu_to_main_w)
m_maincpu->set_input_line(M6809_IRQ_LINE, CLEAR_LINE);
}
-static ADDRESS_MAP_START( srdarwin_mcu_io_map, AS_IO, 8, dec8_state )
+ADDRESS_MAP_START(dec8_state::srdarwin_mcu_io_map)
AM_RANGE(MCS51_PORT_P0,MCS51_PORT_P3) AM_READWRITE(srdarwin_mcu_from_main_r, srdarwin_mcu_to_main_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/deco156.cpp b/src/mame/drivers/deco156.cpp
index 7ed7968a9f8..2b2711abc90 100644
--- a/src/mame/drivers/deco156.cpp
+++ b/src/mame/drivers/deco156.cpp
@@ -68,6 +68,8 @@ public:
DECOSPR_PRIORITY_CB_MEMBER(pri_callback);
void hvysmsh(machine_config &config);
void wcvol95(machine_config &config);
+ void hvysmsh_map(address_map &map);
+ void wcvol95_map(address_map &map);
};
@@ -122,7 +124,7 @@ WRITE32_MEMBER(deco156_state::pf2_rowscroll_w){ data &= 0x0000ffff; mem_mask &=
WRITE32_MEMBER(deco156_state::spriteram_w){ data &= 0x0000ffff; mem_mask &= 0x0000ffff; COMBINE_DATA(&m_spriteram[offset]); }
-static ADDRESS_MAP_START( hvysmsh_map, AS_PROGRAM, 32, deco156_state )
+ADDRESS_MAP_START(deco156_state::hvysmsh_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x107fff) AM_RAM
AM_RANGE(0x120000, 0x120003) AM_READ_PORT("INPUTS")
@@ -142,7 +144,7 @@ static ADDRESS_MAP_START( hvysmsh_map, AS_PROGRAM, 32, deco156_state )
AM_RANGE(0x1e0000, 0x1e1fff) AM_READWRITE(spriteram_r, spriteram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wcvol95_map, AS_PROGRAM, 32, deco156_state )
+ADDRESS_MAP_START(deco156_state::wcvol95_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10001f) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf_control_dword_r, pf_control_dword_w)
AM_RANGE(0x110000, 0x111fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_dword_r, pf1_data_dword_w)
diff --git a/src/mame/drivers/deco32.cpp b/src/mame/drivers/deco32.cpp
index faae326ddc8..6a9da88d3ef 100644
--- a/src/mame/drivers/deco32.cpp
+++ b/src/mame/drivers/deco32.cpp
@@ -380,7 +380,7 @@ NOTE: There are several unpopulated locations (denoted by *) for additional rom
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( captaven_map, AS_PROGRAM, 32, captaven_state )
+ADDRESS_MAP_START(captaven_state::captaven_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100007) AM_READ(_71_r)
AM_RANGE(0x100000, 0x100003) AM_WRITE(buffer_spriteram_w)
@@ -409,7 +409,7 @@ static ADDRESS_MAP_START( captaven_map, AS_PROGRAM, 32, captaven_state )
AM_RANGE(0x1e4000, 0x1e5fff) AM_RAM_WRITE(pf4_rowscroll_w) AM_SHARE("pf4_rowscroll32") // unused
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fghthist_map, AS_PROGRAM, 32, fghthist_state )
+ADDRESS_MAP_START(fghthist_state::fghthist_map)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x000000, 0x001fff) AM_ROM AM_WRITE(pf1_data_w) // wtf??
AM_RANGE(0x000000, 0x0fffff) AM_ROM
@@ -441,7 +441,7 @@ static ADDRESS_MAP_START( fghthist_map, AS_PROGRAM, 32, fghthist_state )
AM_RANGE(0x208800, 0x208803) AM_WRITENOP /* ? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fghthsta_memmap, AS_PROGRAM, 32, fghthist_state )
+ADDRESS_MAP_START(fghthist_state::fghthsta_memmap)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x140000, 0x140003) AM_WRITE(vblank_ack_w)
@@ -468,7 +468,7 @@ ADDRESS_MAP_END
// the video drawing (especially sprite) code on this is too slow to cope with proper partial updates
// raster effects appear to need some work on it anyway?
-static ADDRESS_MAP_START( dragngun_map, AS_PROGRAM, 32, dragngun_state )
+ADDRESS_MAP_START(dragngun_state::dragngun_map)
AM_RANGE(0x0000000, 0x00fffff) AM_ROM
AM_RANGE(0x0100000, 0x011ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x0120000, 0x0127fff) AM_READWRITE16(ioprot_r, ioprot_w, 0x0000ffff)
@@ -515,12 +515,12 @@ static ADDRESS_MAP_START( dragngun_map, AS_PROGRAM, 32, dragngun_state )
AM_RANGE(0x1400000, 0x1ffffff) AM_ROM AM_REGION("dvi", 0x00000) // reads from here during boss battles when the videos should be displayed at the offsets where the DVI headers are // as a result it ends up writing what looks like pointers to the frame data in the ram area above
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lockloadu_map, AS_PROGRAM, 32, dragngun_state )
+ADDRESS_MAP_START(dragngun_state::lockloadu_map)
AM_IMPORT_FROM(dragngun_map)
AM_RANGE(0x0170000, 0x0170007) AM_READ(lockload_gun_mirror_r) /* Not on Dragongun */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lockload_map, AS_PROGRAM, 32, dragngun_state )
+ADDRESS_MAP_START(dragngun_state::lockload_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x120000, 0x127fff) AM_READWRITE16(ioprot_r, ioprot_w, 0x0000ffff)
@@ -555,7 +555,7 @@ static ADDRESS_MAP_START( lockload_map, AS_PROGRAM, 32, dragngun_state )
AM_RANGE(0x500000, 0x500003) AM_WRITE(sprite_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tattass_map, AS_PROGRAM, 32, nslasher_state )
+ADDRESS_MAP_START(nslasher_state::tattass_map)
AM_RANGE(0x000000, 0x0f7fff) AM_ROM
AM_RANGE(0x0f8000, 0x0fffff) AM_ROM AM_WRITENOP
AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_SHARE("ram")
@@ -594,7 +594,7 @@ static ADDRESS_MAP_START( tattass_map, AS_PROGRAM, 32, nslasher_state )
AM_RANGE(0x200000, 0x207fff) AM_READ16(nslasher_debug_r, 0x0000ffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nslasher_map, AS_PROGRAM, 32, nslasher_state )
+ADDRESS_MAP_START(nslasher_state::nslasher_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x120000, 0x1200ff) AM_NOP /* ACIA (unused) */
@@ -632,7 +632,7 @@ static ADDRESS_MAP_START( nslasher_map, AS_PROGRAM, 32, nslasher_state )
ADDRESS_MAP_END
// H6280 based sound
-static ADDRESS_MAP_START( h6280_sound_map, AS_PROGRAM, 8, deco32_state )
+ADDRESS_MAP_START(deco32_state::h6280_sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x120000, 0x120001) AM_DEVREADWRITE("oki1", okim6295_device, read, write)
@@ -643,13 +643,13 @@ static ADDRESS_MAP_START( h6280_sound_map, AS_PROGRAM, 8, deco32_state )
AM_RANGE(0x1ff400, 0x1ff403) AM_DEVWRITE("audiocpu", h6280_device, irq_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h6280_sound_custom_latch_map, AS_PROGRAM, 8, deco32_state )
+ADDRESS_MAP_START(deco32_state::h6280_sound_custom_latch_map)
AM_IMPORT_FROM(h6280_sound_map)
AM_RANGE(0x140000, 0x140000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
// Z80 based sound
-static ADDRESS_MAP_START( z80_sound_mem, AS_PROGRAM, 8, deco32_state )
+ADDRESS_MAP_START(deco32_state::z80_sound_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -658,7 +658,7 @@ static ADDRESS_MAP_START( z80_sound_mem, AS_PROGRAM, 8, deco32_state )
AM_RANGE(0xd000, 0xd000) AM_DEVREAD("ioprot", deco_146_base_device, soundlatch_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_sound_io, AS_IO, 8, deco32_state )
+ADDRESS_MAP_START(deco32_state::z80_sound_io)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("audiocpu", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/deco_ld.cpp b/src/mame/drivers/deco_ld.cpp
index d33aedcab41..be9d7c495ac 100644
--- a/src/mame/drivers/deco_ld.cpp
+++ b/src/mame/drivers/deco_ld.cpp
@@ -164,6 +164,8 @@ public:
INTERRUPT_GEN_MEMBER(sound_interrupt);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, uint8_t *spriteram, uint16_t tile_bank );
void rblaster(machine_config &config);
+ void rblaster_map(address_map &map);
+ void rblaster_sound_map(address_map &map);
};
void deco_ld_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, uint8_t *spriteram, uint16_t tile_bank )
@@ -267,7 +269,7 @@ READ8_MEMBER(deco_ld_state::acia_status_hack_r)
return 0xff;
}
-static ADDRESS_MAP_START( rblaster_map, AS_PROGRAM, 8, deco_ld_state )
+ADDRESS_MAP_START(deco_ld_state::rblaster_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("IN0") AM_WRITENOP // (w) coin lockout
AM_RANGE(0x1001, 0x1001) AM_READ_PORT("DSW1")
@@ -304,7 +306,7 @@ INTERRUPT_GEN_MEMBER(deco_ld_state::sound_interrupt)
}
-static ADDRESS_MAP_START( rblaster_sound_map, AS_PROGRAM, 8, deco_ld_state )
+ADDRESS_MAP_START(deco_ld_state::rblaster_sound_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_device, data_w)
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8910_device, address_w)
diff --git a/src/mame/drivers/deco_mlc.cpp b/src/mame/drivers/deco_mlc.cpp
index 974d9bb648c..94000b22433 100644
--- a/src/mame/drivers/deco_mlc.cpp
+++ b/src/mame/drivers/deco_mlc.cpp
@@ -282,7 +282,7 @@ WRITE16_MEMBER( deco_mlc_state::sh96_protection_region_0_146_w )
/******************************************************************************/
-static ADDRESS_MAP_START( avengrgs_map, AS_PROGRAM, 32, deco_mlc_state )
+ADDRESS_MAP_START(deco_mlc_state::avengrgs_map)
AM_RANGE(0x0000000, 0x00fffff) AM_ROM AM_MIRROR(0xff000000)
AM_RANGE(0x0100000, 0x011ffff) AM_RAM AM_SHARE("mlc_ram") AM_MIRROR(0xff000000)
AM_RANGE(0x0200000, 0x0200003) AM_READ(mlc_200000_r) AM_MIRROR(0xff000000)
@@ -304,7 +304,7 @@ static ADDRESS_MAP_START( avengrgs_map, AS_PROGRAM, 32, deco_mlc_state )
AM_RANGE(0x0600000, 0x0600007) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0xff000000) AM_MIRROR(0xff000000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decomlc_map, AS_PROGRAM, 32, deco_mlc_state )
+ADDRESS_MAP_START(deco_mlc_state::decomlc_map)
AM_RANGE(0x0000000, 0x00fffff) AM_ROM
AM_RANGE(0x0100000, 0x011ffff) AM_RAM AM_SHARE("mlc_ram")
AM_RANGE(0x0200000, 0x0200003) AM_READ(mlc_200000_r)
diff --git a/src/mame/drivers/decocass.cpp b/src/mame/drivers/decocass.cpp
index 1b9eb5b00c9..49b8f3afc1c 100644
--- a/src/mame/drivers/decocass.cpp
+++ b/src/mame/drivers/decocass.cpp
@@ -80,7 +80,7 @@ READ8_MEMBER(decocass_state::mirrorcolorram_r)
}
-static ADDRESS_MAP_START( decocass_map, AS_PROGRAM, 8, decocass_state )
+ADDRESS_MAP_START(decocass_state::decocass_map)
AM_RANGE(0x0000, 0x5fff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x6000, 0xbfff) AM_RAM_WRITE(decocass_charram_w) AM_SHARE("charram") /* still RMS3 RAM */
AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(decocass_fgvideoram_w) AM_SHARE("fgvideoram") /* DSP3 RAM */
@@ -121,7 +121,7 @@ static ADDRESS_MAP_START( decocass_map, AS_PROGRAM, 8, decocass_state )
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decocass_sound_map, AS_PROGRAM, 8, decocass_state )
+ADDRESS_MAP_START(decocass_state::decocass_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_READWRITE(decocass_sound_nmi_enable_r, decocass_sound_nmi_enable_w)
AM_RANGE(0x1800, 0x1fff) AM_READWRITE(decocass_sound_data_ack_reset_r, decocass_sound_data_ack_reset_w)
diff --git a/src/mame/drivers/dectalk.cpp b/src/mame/drivers/dectalk.cpp
index 7bc19f0f8dd..83b64f2fa5d 100644
--- a/src/mame/drivers/dectalk.cpp
+++ b/src/mame/drivers/dectalk.cpp
@@ -322,6 +322,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(dectalk_reset);
void dectalk(machine_config &config);
+ void m68k_mem(address_map &map);
+ void tms32010_io(address_map &map);
+ void tms32010_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -789,7 +792,7 @@ a23 a22 a21 a20 a19 a18 a17 a16 a15 a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4
| | | | |
*/
-static ADDRESS_MAP_START(m68k_mem, AS_PROGRAM, 16, dectalk_state )
+ADDRESS_MAP_START(dectalk_state::m68k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x740000) AM_ROM /* ROM */
AM_RANGE(0x080000, 0x093fff) AM_MIRROR(0x760000) AM_RAM /* RAM */
@@ -803,11 +806,11 @@ static ADDRESS_MAP_START(m68k_mem, AS_PROGRAM, 16, dectalk_state )
AM_RANGE(0x09c006, 0x09c007) AM_MIRROR(0x763ff8) AM_READ(m68k_tlc_dtmf_r) /* telephone dtmf read */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms32010_mem, AS_PROGRAM, 16, dectalk_state )
+ADDRESS_MAP_START(dectalk_state::tms32010_mem)
AM_RANGE(0x000, 0x7ff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms32010_io, AS_IO, 16, dectalk_state )
+ADDRESS_MAP_START(dectalk_state::tms32010_io)
AM_RANGE(0, 0) AM_WRITE(spc_latch_outfifo_error_stats) // *set* the outfifo_status_r semaphore, and also latch the error bit at D0.
AM_RANGE(1, 1) AM_READWRITE(spc_infifo_data_r, spc_outfifo_data_w) //read from input fifo, write to sound fifo
//AM_RANGE(8, 8) //the newer firmware seems to want something mapped here?
diff --git a/src/mame/drivers/decwritr.cpp b/src/mame/drivers/decwritr.cpp
index 1ca1913f2bf..d86c2dcaeca 100644
--- a/src/mame/drivers/decwritr.cpp
+++ b/src/mame/drivers/decwritr.cpp
@@ -55,6 +55,8 @@ public:
DECLARE_READ8_MEMBER(la120_DC305_r);
DECLARE_WRITE8_MEMBER(la120_DC305_w);
void la120(machine_config &config);
+ void la120_io(address_map &map);
+ void la120_mem(address_map &map);
private:
virtual void machine_start() override;
//virtual void machine_reset();
@@ -213,7 +215,7 @@ WRITE8_MEMBER( decwriter_state::la120_DC305_w )
0 1 1 1 x x x x x x x x x x * * RW PTR (DC305 ASIC,e25)
1 * * * * * * * * * * * * * * * Expansion space (open bus)
*/
-static ADDRESS_MAP_START(la120_mem, AS_PROGRAM, 8, decwriter_state)
+ADDRESS_MAP_START(decwriter_state::la120_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x27ff ) AM_ROM
AM_RANGE( 0x3000, 0x301f ) AM_READWRITE(la120_KBD_r, la120_LED_w) AM_MIRROR(0xFE0) // keyboard read, write to status and 7seg LEDS
@@ -233,7 +235,7 @@ ADDRESS_MAP_END
0 x x x x x 1 x RW Flags Read/Write
1 x x x x x x x RW Expansion (Open bus)
*/
-static ADDRESS_MAP_START(la120_io, AS_IO, 8, decwriter_state)
+ADDRESS_MAP_START(decwriter_state::la120_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7C) AM_DEVREADWRITE("i8251", i8251_device, data_r, data_w) // 8251 Data
AM_RANGE(0x01, 0x01) AM_MIRROR(0x7C) AM_DEVREADWRITE("i8251", i8251_device, status_r, control_w) // 8251 Status/Control
diff --git a/src/mame/drivers/deniam.cpp b/src/mame/drivers/deniam.cpp
index 90f5e0341c0..3e2d152cd8c 100644
--- a/src/mame/drivers/deniam.cpp
+++ b/src/mame/drivers/deniam.cpp
@@ -73,7 +73,7 @@ WRITE16_MEMBER(deniam_state::deniam_irq_ack_w)
m_maincpu->set_input_line(4, CLEAR_LINE);
}
-static ADDRESS_MAP_START( deniam16b_map, AS_PROGRAM, 16, deniam_state )
+ADDRESS_MAP_START(deniam_state::deniam16b_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(deniam_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(deniam_textram_w) AM_SHARE("textram")
@@ -90,12 +90,12 @@ static ADDRESS_MAP_START( deniam16b_map, AS_PROGRAM, 16, deniam_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, deniam_state )
+ADDRESS_MAP_START(deniam_state::sound_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, deniam_state )
+ADDRESS_MAP_START(deniam_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ymsnd", ym3812_device, write)
@@ -104,7 +104,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, deniam_state )
ADDRESS_MAP_END
/* identical to 16b, but handles sound directly */
-static ADDRESS_MAP_START( deniam16c_map, AS_PROGRAM, 16, deniam_state )
+ADDRESS_MAP_START(deniam_state::deniam16c_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(deniam_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(deniam_textram_w) AM_SHARE("textram")
diff --git a/src/mame/drivers/deshoros.cpp b/src/mame/drivers/deshoros.cpp
index 45840987d5c..0daa0756d64 100644
--- a/src/mame/drivers/deshoros.cpp
+++ b/src/mame/drivers/deshoros.cpp
@@ -62,6 +62,7 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(coin_inserted);
void destiny(machine_config &config);
+ void main_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -169,7 +170,7 @@ WRITE8_MEMBER(destiny_state::sound_w)
m_beeper->set_state(~offset & 1);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, destiny_state )
+ADDRESS_MAP_START(destiny_state::main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_READWRITE(printer_status_r, firq_ack_w)
diff --git a/src/mame/drivers/destroyr.cpp b/src/mame/drivers/destroyr.cpp
index 9d0c460eb37..635adb65108 100644
--- a/src/mame/drivers/destroyr.cpp
+++ b/src/mame/drivers/destroyr.cpp
@@ -84,6 +84,7 @@ public:
TIMER_CALLBACK_MEMBER(frame_callback);
void destroyr(machine_config &config);
+ void destroyr_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -286,7 +287,7 @@ READ8_MEMBER(destroyr_state::scanline_r)
}
-static ADDRESS_MAP_START( destroyr_map, AS_PROGRAM, 8, destroyr_state )
+ADDRESS_MAP_START(destroyr_state::destroyr_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0xf00) AM_RAM
AM_RANGE(0x1000, 0x1001) AM_MIRROR(0xffe) AM_READ(input_r)
diff --git a/src/mame/drivers/dfruit.cpp b/src/mame/drivers/dfruit.cpp
index 2a7b700607f..7980e851d7d 100644
--- a/src/mame/drivers/dfruit.cpp
+++ b/src/mame/drivers/dfruit.cpp
@@ -71,6 +71,8 @@ public:
void ram_bank_w(uint16_t offset, uint8_t data, uint8_t bank_num);
TIMER_DEVICE_CALLBACK_MEMBER(dfruit_irq_scanline);
void dfruit(machine_config &config);
+ void dfruit_map(address_map &map);
+ void tc0091lvc_map(address_map &map);
};
void dfruit_state::video_start()
@@ -162,7 +164,7 @@ WRITE8_MEMBER(dfruit_state::dfruit_ram_1_w) { ram_bank_w(offset, data, 1); }
WRITE8_MEMBER(dfruit_state::dfruit_ram_2_w) { ram_bank_w(offset, data, 2); }
WRITE8_MEMBER(dfruit_state::dfruit_ram_3_w) { ram_bank_w(offset, data, 3); }
-static ADDRESS_MAP_START( tc0091lvc_map, AS_PROGRAM, 8, dfruit_state )
+ADDRESS_MAP_START(dfruit_state::tc0091lvc_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_READ(dfruit_rom_r)
@@ -181,7 +183,7 @@ static ADDRESS_MAP_START( tc0091lvc_map, AS_PROGRAM, 8, dfruit_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dfruit_map, AS_PROGRAM, 8, dfruit_state )
+ADDRESS_MAP_START(dfruit_state::dfruit_map)
AM_IMPORT_FROM(tc0091lvc_map)
AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
AM_RANGE(0xa004, 0xa005) AM_DEVREADWRITE("opn", ym2203_device, read, write)
diff --git a/src/mame/drivers/dgn_beta.cpp b/src/mame/drivers/dgn_beta.cpp
index 3adaec6e5d6..9da42091534 100644
--- a/src/mame/drivers/dgn_beta.cpp
+++ b/src/mame/drivers/dgn_beta.cpp
@@ -140,7 +140,7 @@ static const unsigned char dgnbeta_palette[] =
*/
-static ADDRESS_MAP_START( dgnbeta_map, AS_PROGRAM, 8, dgn_beta_state )
+ADDRESS_MAP_START(dgn_beta_state::dgnbeta_map)
AM_RANGE(0x0000, 0x0FFF) AM_RAMBANK("bank1")
AM_RANGE(0x1000, 0x1FFF) AM_RAMBANK("bank2")
AM_RANGE(0x2000, 0x2FFF) AM_RAMBANK("bank3")
diff --git a/src/mame/drivers/dgpix.cpp b/src/mame/drivers/dgpix.cpp
index 41d6c7b42cf..5d204a01845 100644
--- a/src/mame/drivers/dgpix.cpp
+++ b/src/mame/drivers/dgpix.cpp
@@ -196,6 +196,8 @@ public:
uint32_t screen_update_dgpix(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void dgpix(machine_config &config);
+ void cpu_map(address_map &map);
+ void io_map(address_map &map);
};
@@ -322,7 +324,7 @@ READ32_MEMBER(dgpix_state::vblank_r)
return m_vblank->read();
}
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, dgpix_state )
+ADDRESS_MAP_START(dgpix_state::cpu_map)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM
AM_RANGE(0x40000000, 0x4003ffff) AM_READWRITE(vram_r, vram_w)
AM_RANGE(0xe0000000, 0xe1ffffff) AM_READWRITE(flash_r, flash_w)
@@ -330,7 +332,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, dgpix_state )
AM_RANGE(0xffc00000, 0xffffffff) AM_ROM AM_REGION("flash", 0x1c00000) AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 32, dgpix_state )
+ADDRESS_MAP_START(dgpix_state::io_map)
AM_RANGE(0x0200, 0x0203) AM_READNOP // used to sync with the protecion PIC? tested bits 0 and 1
AM_RANGE(0x0400, 0x0403) AM_READWRITE(vblank_r, vbuffer_w)
AM_RANGE(0x0a10, 0x0a13) AM_READ_PORT("INPUTS")
diff --git a/src/mame/drivers/didact.cpp b/src/mame/drivers/didact.cpp
index dbb5e5be0dc..44c91300af6 100644
--- a/src/mame/drivers/didact.cpp
+++ b/src/mame/drivers/didact.cpp
@@ -187,6 +187,7 @@ class md6802_state : public didact_state
virtual void machine_reset() override;
virtual void machine_start() override;
void md6802(machine_config &config);
+ void md6802_map(address_map &map);
protected:
required_device<pia6821_device> m_pia1;
required_device<pia6821_device> m_pia2;
@@ -284,7 +285,7 @@ void md6802_state::machine_reset()
}
// This address map is traced from schema
-static ADDRESS_MAP_START( md6802_map, AS_PROGRAM, 8, md6802_state )
+ADDRESS_MAP_START(md6802_state::md6802_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_MIRROR(0x1800)
AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE(PIA1_TAG, pia6821_device, read, write) AM_MIRROR(0x1ffc)
AM_RANGE(0xc000, 0xc003) AM_DEVREADWRITE(PIA2_TAG, pia6821_device, read, write) AM_MIRROR(0x1ffc)
@@ -369,6 +370,7 @@ class mp68a_state : public didact_state
virtual void machine_reset() override;
virtual void machine_start() override;
void mp68a(machine_config &config);
+ void mp68a_map(address_map &map);
protected:
required_device<pia6820_device> m_pia1;
required_device<pia6820_device> m_pia2;
@@ -475,7 +477,7 @@ void mp68a_state::machine_start()
}
// This address map is traced from pcb
-static ADDRESS_MAP_START( mp68a_map, AS_PROGRAM, 8, mp68a_state )
+ADDRESS_MAP_START(mp68a_state::mp68a_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0xf000)
AM_RANGE(0x0500, 0x0503) AM_DEVREADWRITE(PIA1_TAG, pia6820_device, read, write) AM_MIRROR(0xf0fc)
AM_RANGE(0x0600, 0x0603) AM_DEVREADWRITE(PIA2_TAG, pia6820_device, read, write) AM_MIRROR(0xf0fc)
diff --git a/src/mame/drivers/dietgo.cpp b/src/mame/drivers/dietgo.cpp
index a7581ce8b43..e370b36c5b9 100644
--- a/src/mame/drivers/dietgo.cpp
+++ b/src/mame/drivers/dietgo.cpp
@@ -52,7 +52,7 @@ WRITE16_MEMBER( dietgo_state::dietgo_protection_region_0_104_w )
}
-static ADDRESS_MAP_START( dietgo_map, AS_PROGRAM, 16, dietgo_state )
+ADDRESS_MAP_START(dietgo_state::dietgo_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVWRITE("tilegen1", deco16ic_device, pf_control_w)
AM_RANGE(0x210000, 0x211fff) AM_DEVWRITE("tilegen1", deco16ic_device, pf1_data_w)
@@ -65,13 +65,13 @@ static ADDRESS_MAP_START( dietgo_map, AS_PROGRAM, 16, dietgo_state )
AM_RANGE(0x380000, 0x38ffff) AM_RAM // mainram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, dietgo_state )
+ADDRESS_MAP_START(dietgo_state::decrypted_opcodes_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
/* Physical memory map (21 bits) */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dietgo_state )
+ADDRESS_MAP_START(dietgo_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_NOP /* YM2203 - this board doesn't have one */
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -214,7 +214,7 @@ MACHINE_CONFIG_START(dietgo_state::dietgo)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M68000, XTAL(28'000'000)/2) /* DE102 (verified on pcb) */
MCFG_CPU_PROGRAM_MAP(dietgo_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", dietgo_state, irq6_line_hold)
MCFG_CPU_ADD("audiocpu", H6280, XTAL(32'220'000)/4/3) /* Custom chip 45; XIN is 32.220MHZ/4, verified on pcb */
diff --git a/src/mame/drivers/digel804.cpp b/src/mame/drivers/digel804.cpp
index f0c71a43dc4..4f94ed32236 100644
--- a/src/mame/drivers/digel804.cpp
+++ b/src/mame/drivers/digel804.cpp
@@ -134,6 +134,10 @@ public:
uint8_t m_op41;
void ep804(machine_config &config);
void digel804(machine_config &config);
+ void z80_io_1_2(address_map &map);
+ void z80_io_1_4(address_map &map);
+ void z80_mem_804_1_2(address_map &map);
+ void z80_mem_804_1_4(address_map &map);
};
@@ -428,7 +432,7 @@ WRITE8_MEMBER( digel804_state::acia_control_w )
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(z80_mem_804_1_4, AS_PROGRAM, 8, digel804_state)
+ADDRESS_MAP_START(digel804_state::z80_mem_804_1_4)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM // 3f in mapper = rom J3
//AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("main_ram") // 6f in mapper = RAM D43 (6164)
@@ -442,7 +446,7 @@ static ADDRESS_MAP_START(z80_mem_804_1_4, AS_PROGRAM, 8, digel804_state)
// f800-ffff is open bus in mapper, 7f
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z80_mem_804_1_2, AS_PROGRAM, 8, digel804_state)
+ADDRESS_MAP_START(digel804_state::z80_mem_804_1_2)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM // 3f in mapper = rom D41
AM_RANGE(0x2000, 0x3fff) AM_ROM // 5f in mapper = rom D42
@@ -457,7 +461,7 @@ static ADDRESS_MAP_START(z80_mem_804_1_2, AS_PROGRAM, 8, digel804_state)
// d800-ffff is open bus in mapper, 7f
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z80_io_1_4, AS_IO, 8, digel804_state)
+ADDRESS_MAP_START(digel804_state::z80_io_1_4)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// io bits: x 1 x x x * * *
@@ -485,7 +489,7 @@ static ADDRESS_MAP_START(z80_io_1_4, AS_IO, 8, digel804_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z80_io_1_2, AS_IO, 8, digel804_state)
+ADDRESS_MAP_START(digel804_state::z80_io_1_2)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// io bits: x 1 x x x * * *
diff --git a/src/mame/drivers/digijet.cpp b/src/mame/drivers/digijet.cpp
index 43479efbb6f..08635fa7473 100644
--- a/src/mame/drivers/digijet.cpp
+++ b/src/mame/drivers/digijet.cpp
@@ -38,9 +38,10 @@ public:
virtual void machine_start() override { }
virtual void machine_reset() override { }
void digijet(machine_config &config);
+ void io_map(address_map &map);
};
-static ADDRESS_MAP_START( io_map, AS_IO, 8, digijet_state )
+ADDRESS_MAP_START(digijet_state::io_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( digijet )
diff --git a/src/mame/drivers/dim68k.cpp b/src/mame/drivers/dim68k.cpp
index 9bd85a22218..bd6e8d36d6c 100644
--- a/src/mame/drivers/dim68k.cpp
+++ b/src/mame/drivers/dim68k.cpp
@@ -73,6 +73,7 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void dim68k(machine_config &config);
+ void dim68k_mem(address_map &map);
private:
bool m_speaker_bit;
u8 m_video_control;
@@ -183,7 +184,7 @@ WRITE16_MEMBER( dim68k_state::dim68k_banksw_w )
{
}
-static ADDRESS_MAP_START(dim68k_mem, AS_PROGRAM, 16, dim68k_state)
+ADDRESS_MAP_START(dim68k_state::dim68k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x00feffff) AM_RAM AM_SHARE("ram") // 16MB RAM / ROM at boot
AM_RANGE(0x00ff0000, 0x00ff1fff) AM_ROM AM_REGION("bootrom", 0)
diff --git a/src/mame/drivers/discoboy.cpp b/src/mame/drivers/discoboy.cpp
index 60cc6879a5b..73efdd841d5 100644
--- a/src/mame/drivers/discoboy.cpp
+++ b/src/mame/drivers/discoboy.cpp
@@ -108,6 +108,10 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
DECLARE_WRITE_LINE_MEMBER(yunsung8_adpcm_int);
void discoboy(machine_config &config);
+ void discoboy_map(address_map &map);
+ void io_map(address_map &map);
+ void rambank1_map(address_map &map);
+ void sound_map(address_map &map);
};
void discoboy_state::draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect )
@@ -269,7 +273,7 @@ WRITE8_MEMBER(discoboy_state::rambank2_w)
printf("unk rb2_w\n");
}
-static ADDRESS_MAP_START( discoboy_map, AS_PROGRAM, 8, discoboy_state )
+ADDRESS_MAP_START(discoboy_state::discoboy_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0xc000, 0xc7ff) AM_DEVICE("rambank1", address_map_bank_device, amap8)
@@ -279,7 +283,7 @@ static ADDRESS_MAP_START( discoboy_map, AS_PROGRAM, 8, discoboy_state )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rambank1_map, AS_PROGRAM, 8, discoboy_state )
+ADDRESS_MAP_START(discoboy_state::rambank1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("ram_1")
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("ram_2")
ADDRESS_MAP_END
@@ -290,7 +294,7 @@ READ8_MEMBER(discoboy_state::port_06_r)
return 0x00;
}
-static ADDRESS_MAP_START( io_map, AS_IO, 8, discoboy_state )
+ADDRESS_MAP_START(discoboy_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSWA") AM_WRITE(port_00_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(port_01_w)
@@ -314,7 +318,7 @@ WRITE8_MEMBER(discoboy_state::yunsung8_sound_bankswitch_w)
logerror("%s: Bank %02X\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, discoboy_state )
+ADDRESS_MAP_START(discoboy_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("sndbank")
AM_RANGE(0xe000, 0xe000) AM_WRITE(yunsung8_sound_bankswitch_w)
diff --git a/src/mame/drivers/divebomb.cpp b/src/mame/drivers/divebomb.cpp
index 8e9dd1830f3..31b7d12cae3 100644
--- a/src/mame/drivers/divebomb.cpp
+++ b/src/mame/drivers/divebomb.cpp
@@ -103,14 +103,14 @@ To verify against original HW:
*
*************************************/
-static ADDRESS_MAP_START( divebomb_fgcpu_map, AS_PROGRAM, 8, divebomb_state )
+ADDRESS_MAP_START(divebomb_state::divebomb_fgcpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(fgram_w) AM_SHARE("fgram")
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( divebomb_fgcpu_iomap, AS_IO, 8, divebomb_state )
+ADDRESS_MAP_START(divebomb_state::divebomb_fgcpu_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("sn0", sn76489_device, write)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("sn1", sn76489_device, write)
@@ -182,7 +182,7 @@ READ8_MEMBER(divebomb_state::fgcpu_comm_flags_r)
*
*************************************/
-static ADDRESS_MAP_START( divebomb_spritecpu_map, AS_PROGRAM, 8, divebomb_state )
+ADDRESS_MAP_START(divebomb_state::divebomb_spritecpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc800, 0xdfff) AM_WRITENOP
@@ -190,7 +190,7 @@ static ADDRESS_MAP_START( divebomb_spritecpu_map, AS_PROGRAM, 8, divebomb_state
ADDRESS_MAP_END
-static ADDRESS_MAP_START( divebomb_spritecpu_iomap, AS_IO, 8, divebomb_state )
+ADDRESS_MAP_START(divebomb_state::divebomb_spritecpu_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(spritecpu_port00_w)
AM_RANGE(0x80, 0x80) AM_READWRITE(spritecpu_comm_r, spritecpu_comm_w)
@@ -226,7 +226,7 @@ WRITE8_MEMBER(divebomb_state::spritecpu_port00_w)
*
*************************************/
-static ADDRESS_MAP_START( divebomb_rozcpu_map, AS_PROGRAM, 8, divebomb_state )
+ADDRESS_MAP_START(divebomb_state::divebomb_rozcpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_DEVREADWRITE("k051316_1", k051316_device, read, write)
@@ -235,7 +235,7 @@ static ADDRESS_MAP_START( divebomb_rozcpu_map, AS_PROGRAM, 8, divebomb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( divebomb_rozcpu_iomap, AS_IO, 8, divebomb_state )
+ADDRESS_MAP_START(divebomb_state::divebomb_rozcpu_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(rozcpu_bank_w)
AM_RANGE(0x10, 0x10) AM_WRITE(rozcpu_wrap2_enable_w)
diff --git a/src/mame/drivers/diverboy.cpp b/src/mame/drivers/diverboy.cpp
index 5cf2b784e96..69dd294a177 100644
--- a/src/mame/drivers/diverboy.cpp
+++ b/src/mame/drivers/diverboy.cpp
@@ -91,6 +91,8 @@ public:
uint32_t screen_update_diverboy(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void diverboy(machine_config &config);
+ void diverboy_map(address_map &map);
+ void snd_map(address_map &map);
};
@@ -159,7 +161,7 @@ WRITE8_MEMBER(diverboy_state::okibank_w)
-static ADDRESS_MAP_START( diverboy_map, AS_PROGRAM, 16, diverboy_state )
+ADDRESS_MAP_START(diverboy_state::diverboy_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x04ffff) AM_RAM
AM_RANGE(0x080000, 0x083fff) AM_RAM AM_SHARE("spriteram")
@@ -176,7 +178,7 @@ static ADDRESS_MAP_START( diverboy_map, AS_PROGRAM, 16, diverboy_state )
// AM_RANGE(0x340002, 0x340003) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8, diverboy_state )
+ADDRESS_MAP_START(diverboy_state::snd_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(okibank_w)
diff --git a/src/mame/drivers/djboy.cpp b/src/mame/drivers/djboy.cpp
index c766ff69f0c..510623f484b 100644
--- a/src/mame/drivers/djboy.cpp
+++ b/src/mame/drivers/djboy.cpp
@@ -244,7 +244,7 @@ WRITE8_MEMBER(djboy_state::cpu2_bankswitch_w)
/******************************************************************************/
-static ADDRESS_MAP_START( cpu0_am, AS_PROGRAM, 8, djboy_state )
+ADDRESS_MAP_START(djboy_state::cpu0_am)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xafff) AM_ROMBANK("bank4")
AM_RANGE(0xb000, 0xbfff) AM_DEVREADWRITE("pandora", kaneko_pandora_device, spriteram_r, spriteram_w)
@@ -254,14 +254,14 @@ static ADDRESS_MAP_START( cpu0_am, AS_PROGRAM, 8, djboy_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu0_port_am, AS_IO, 8, djboy_state )
+ADDRESS_MAP_START(djboy_state::cpu0_port_am)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(cpu0_bankswitch_w)
ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( cpu1_am, AS_PROGRAM, 8, djboy_state )
+ADDRESS_MAP_START(djboy_state::cpu1_am)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2")
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(djboy_videoram_w) AM_SHARE("videoram")
@@ -270,7 +270,7 @@ static ADDRESS_MAP_START( cpu1_am, AS_PROGRAM, 8, djboy_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_port_am, AS_IO, 8, djboy_state )
+ADDRESS_MAP_START(djboy_state::cpu1_port_am)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(cpu1_bankswitch_w)
AM_RANGE(0x02, 0x02) AM_WRITE(trigger_nmi_on_sound_cpu2)
@@ -284,13 +284,13 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( cpu2_am, AS_PROGRAM, 8, djboy_state )
+ADDRESS_MAP_START(djboy_state::cpu2_am)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3")
AM_RANGE(0xc000, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_port_am, AS_IO, 8, djboy_state )
+ADDRESS_MAP_START(djboy_state::cpu2_port_am)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(cpu2_bankswitch_w)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -379,7 +379,7 @@ WRITE8_MEMBER(djboy_state::beast_p3_w)
}
/* Program/data maps are defined in the 8051 core */
-static ADDRESS_MAP_START( djboy_mcu_io_map, AS_IO, 8, djboy_state )
+ADDRESS_MAP_START(djboy_state::djboy_mcu_io_map)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE(beast_p0_r, beast_p0_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(beast_p1_r, beast_p1_w)
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_READWRITE(beast_p2_r, beast_p2_w)
diff --git a/src/mame/drivers/djmain.cpp b/src/mame/drivers/djmain.cpp
index b40705b5e0d..b7d4d6c4b1e 100644
--- a/src/mame/drivers/djmain.cpp
+++ b/src/mame/drivers/djmain.cpp
@@ -373,7 +373,7 @@ WRITE_LINE_MEMBER( djmain_state::ide_interrupt )
*
*************************************/
-static ADDRESS_MAP_START( maincpu_djmain, AS_PROGRAM, 32, djmain_state )
+ADDRESS_MAP_START(djmain_state::maincpu_djmain)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // PRG ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM // WORK RAM
AM_RANGE(0x480000, 0x48443f) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette") // COLOR RAM
@@ -397,7 +397,7 @@ static ADDRESS_MAP_START( maincpu_djmain, AS_PROGRAM, 32, djmain_state )
AM_RANGE(0x803800, 0x803fff) AM_READ(obj_rom_r) // OBJECT ROM readthrough (for POST)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maincpu_djmainj, AS_PROGRAM, 32, djmain_state)
+ADDRESS_MAP_START(djmain_state::maincpu_djmainj)
AM_IMPORT_FROM(maincpu_djmain)
AM_RANGE(0xc00000, 0xc01fff) AM_DEVREADWRITE("k056832", k056832_device, ram_long_r, ram_long_w) // VIDEO RAM (tilemap) (beatmania)
@@ -406,7 +406,7 @@ static ADDRESS_MAP_START(maincpu_djmainj, AS_PROGRAM, 32, djmain_state)
AM_RANGE(0xf40000, 0xf4000f) AM_DEVREADWRITE16("ata", ata_interface_device, read_cs1, write_cs1, 0xffffffff) // IDE status control reg (beatmania)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maincpu_djmainu, AS_PROGRAM, 32, djmain_state)
+ADDRESS_MAP_START(djmain_state::maincpu_djmainu)
AM_IMPORT_FROM(maincpu_djmain)
AM_RANGE(0xd00000, 0xd0000f) AM_DEVREADWRITE16("ata", ata_interface_device, read_cs0, write_cs0, 0xffffffff) // IDE control regs (hiphopmania)
@@ -414,7 +414,7 @@ static ADDRESS_MAP_START(maincpu_djmainu, AS_PROGRAM, 32, djmain_state)
AM_RANGE(0xe00000, 0xe01fff) AM_DEVREADWRITE("k056832", k056832_device, ram_long_r, ram_long_w) // VIDEO RAM (tilemap) (hiphopmania)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maincpu_djmaina, AS_PROGRAM, 32, djmain_state)
+ADDRESS_MAP_START(djmain_state::maincpu_djmaina)
AM_IMPORT_FROM(maincpu_djmain)
AM_RANGE(0xc00000, 0xc0000f) AM_DEVREADWRITE16("ata", ata_interface_device, read_cs0, write_cs0, 0xffffffff) // IDE control regs
@@ -422,7 +422,7 @@ static ADDRESS_MAP_START(maincpu_djmaina, AS_PROGRAM, 32, djmain_state)
AM_RANGE(0xf00000, 0xf01fff) AM_DEVREADWRITE("k056832", k056832_device, ram_long_r, ram_long_w) // VIDEO RAM (tilemap)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(k054539_map, 0, 8, djmain_state)
+ADDRESS_MAP_START(djmain_state::k054539_map)
AM_RANGE(0x000000, 0xffffff) AM_RAM AM_SHARE("sndram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dkong.cpp b/src/mame/drivers/dkong.cpp
index 920451aebdc..9548ba42328 100644
--- a/src/mame/drivers/dkong.cpp
+++ b/src/mame/drivers/dkong.cpp
@@ -818,7 +818,7 @@ WRITE8_MEMBER(dkong_state::nmi_mask_w)
*
*************************************/
-static ADDRESS_MAP_START( dkong_map, AS_PROGRAM, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkong_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x6bff) AM_RAM
AM_RANGE(0x7000, 0x73ff) AM_RAM AM_SHARE("sprite_ram") /* sprite set 1 */
@@ -839,7 +839,7 @@ static ADDRESS_MAP_START( dkong_map, AS_PROGRAM, 8, dkong_state )
AM_RANGE(0x7d86, 0x7d87) AM_WRITE(dkong_palettebank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkongjr_map, AS_PROGRAM, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkongjr_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6bff) AM_RAM
AM_RANGE(0x6c00, 0x6fff) AM_RAM /* DK3 bootleg only */
@@ -868,7 +868,7 @@ static ADDRESS_MAP_START( dkongjr_map, AS_PROGRAM, 8, dkong_state )
AM_RANGE(0xd000, 0xdfff) AM_ROM /* DK3 bootleg only */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkong3_map, AS_PROGRAM, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkong3_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0x6800, 0x6fff) AM_RAM
@@ -888,21 +888,21 @@ static ADDRESS_MAP_START( dkong3_map, AS_PROGRAM, 8, dkong_state )
AM_RANGE(0x8000, 0x9fff) AM_ROM /* DK3 and bootleg DKjr only */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkong3_io_map, AS_IO, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::dkong3_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("z80dma", z80dma_device, read, write) /* dma controller */
ADDRESS_MAP_END
/* Epos conversions */
-static ADDRESS_MAP_START( epos_readport, AS_IO, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::epos_readport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READ(epos_decrypt_rom) /* Switch protection logic */
ADDRESS_MAP_END
/* S2650 conversions */
-static ADDRESS_MAP_START( s2650_map, AS_PROGRAM, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::s2650_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_RAM AM_SHARE("sprite_ram") /* 0x7000 */
AM_RANGE(0x1400, 0x1400) AM_MIRROR(0x007f) AM_READ_PORT("IN0") AM_DEVWRITE("ls175.3d", latch8_device, write)
@@ -928,12 +928,12 @@ static ADDRESS_MAP_START( s2650_map, AS_PROGRAM, 8, dkong_state )
AM_RANGE(0x7000, 0x7fff) AM_READWRITE(s2650_mirror_r, s2650_mirror_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s2650_io_map, AS_IO, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::s2650_io_map)
AM_RANGE(0x00, 0x00) AM_READ(s2650_port0_r)
AM_RANGE(0x01, 0x01) AM_READ(s2650_port1_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s2650_data_map, AS_DATA, 8, dkong_state )
+ADDRESS_MAP_START(dkong_state::s2650_data_map)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_WRITE(s2650_data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dlair.cpp b/src/mame/drivers/dlair.cpp
index 49cb99ef855..43baef0ea2f 100644
--- a/src/mame/drivers/dlair.cpp
+++ b/src/mame/drivers/dlair.cpp
@@ -136,6 +136,9 @@ public:
void dlair_pr7820(machine_config &config);
void dleuro(machine_config &config);
void dlair_ldv1000(machine_config &config);
+ void dleuro_io_map(address_map &map);
+ void dleuro_map(address_map &map);
+ void dlus_map(address_map &map);
};
@@ -365,7 +368,7 @@ WRITE8_MEMBER(dlair_state::laserdisc_w)
*************************************/
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( dlus_map, AS_PROGRAM, 8, dlair_state )
+ADDRESS_MAP_START(dlair_state::dlus_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x1fc7) AM_DEVREAD("aysnd", ay8910_device, data_r)
@@ -389,7 +392,7 @@ ADDRESS_MAP_END
*************************************/
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( dleuro_map, AS_PROGRAM, 8, dlair_state )
+ADDRESS_MAP_START(dlair_state::dleuro_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("videoram")
@@ -409,7 +412,7 @@ ADDRESS_MAP_END
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( dleuro_io_map, AS_IO, 8, dlair_state )
+ADDRESS_MAP_START(dlair_state::dleuro_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x7c) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
AM_RANGE(0x80, 0x83) AM_MIRROR(0x7c) AM_DEVREADWRITE("sio", z80sio_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/dlair2.cpp b/src/mame/drivers/dlair2.cpp
index c3d5e29eb78..857c93c872b 100644
--- a/src/mame/drivers/dlair2.cpp
+++ b/src/mame/drivers/dlair2.cpp
@@ -54,6 +54,8 @@ public:
DECLARE_PALETTE_INIT(dlair2);
void dlair2(machine_config &config);
+ void dlair2_io(address_map &map);
+ void dlair2_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -71,12 +73,12 @@ uint32_t dlair2_state::screen_update( screen_device &screen, bitmap_ind16 &bitma
return 0;
}
-static ADDRESS_MAP_START( dlair2_map, AS_PROGRAM, 8, dlair2_state )
+ADDRESS_MAP_START(dlair2_state::dlair2_map)
AM_RANGE(0x00000, 0xeffff) AM_RAM
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dlair2_io, AS_IO, 8, dlair2_state )
+ADDRESS_MAP_START(dlair2_state::dlair2_io)
// AM_RANGE(0x020, 0x020) ICR
// AM_RANGE(0x042, 0x043) sound related
// AM_RANGE(0x061, 0x061) sound related
diff --git a/src/mame/drivers/dm7000.cpp b/src/mame/drivers/dm7000.cpp
index 357853a9a07..f68e3c2200e 100644
--- a/src/mame/drivers/dm7000.cpp
+++ b/src/mame/drivers/dm7000.cpp
@@ -227,7 +227,7 @@ WRITE16_MEMBER( dm7000_state::dm7000_enet_w )
400f 0xxx IDE Controller
*/
-static ADDRESS_MAP_START( dm7000_mem, AS_PROGRAM, 32, dm7000_state )
+ADDRESS_MAP_START(dm7000_state::dm7000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x01ffffff) AM_RAM // RAM page 0 - 32MB
AM_RANGE(0x20000000, 0x21ffffff) AM_RAM // RAM page 1 - 32MB
diff --git a/src/mame/drivers/dmax8000.cpp b/src/mame/drivers/dmax8000.cpp
index f4fd1fb72a2..4c00ec56958 100644
--- a/src/mame/drivers/dmax8000.cpp
+++ b/src/mame/drivers/dmax8000.cpp
@@ -55,6 +55,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
void dmax8000(machine_config &config);
+ void dmax8000_io(address_map &map);
+ void dmax8000_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<fd1793_device> m_fdc;
@@ -96,12 +98,12 @@ WRITE8_MEMBER( dmax8000_state::port40_w )
membank("bankr0")->set_entry(BIT(data, 0));
}
-static ADDRESS_MAP_START(dmax8000_mem, AS_PROGRAM, 8, dmax8000_state)
+ADDRESS_MAP_START(dmax8000_state::dmax8000_mem)
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x1000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dmax8000_io, AS_IO, 8, dmax8000_state)
+ADDRESS_MAP_START(dmax8000_state::dmax8000_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("fdc", fd1793_device, read, write)
diff --git a/src/mame/drivers/dmndrby.cpp b/src/mame/drivers/dmndrby.cpp
index 11cc2ec75b9..5d06938d1a8 100644
--- a/src/mame/drivers/dmndrby.cpp
+++ b/src/mame/drivers/dmndrby.cpp
@@ -99,6 +99,8 @@ public:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
void dderby(machine_config &config);
+ void dderby_sound_map(address_map &map);
+ void memmap(address_map &map);
};
@@ -143,7 +145,7 @@ WRITE8_MEMBER(dmndrby_state::output_w)
// popmessage("%02x|%02x|%02x|%02x|%02x|%02x|%02x|%02x|",m_io_port[0],m_io_port[1],m_io_port[2],m_io_port[3],m_io_port[4],m_io_port[5],m_io_port[6],m_io_port[7]);
}
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, dmndrby_state )
+ADDRESS_MAP_START(dmndrby_state::memmap)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc000, 0xc007) AM_READ(input_r)
@@ -160,7 +162,7 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, dmndrby_state )
AM_RANGE(0xd400, 0xd7ff) AM_RAM AM_SHARE("vidattribs") // colours/ attrib ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dderby_sound_map, AS_PROGRAM, 8, dmndrby_state )
+ADDRESS_MAP_START(dmndrby_state::dderby_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x1000) AM_RAM //???
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/dms5000.cpp b/src/mame/drivers/dms5000.cpp
index 1c3f6b42502..4b96f38e9e7 100644
--- a/src/mame/drivers/dms5000.cpp
+++ b/src/mame/drivers/dms5000.cpp
@@ -25,16 +25,18 @@ public:
uint32_t screen_update_dms5000(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void dms5000(machine_config &config);
+ void dms5000_io(address_map &map);
+ void dms5000_mem(address_map &map);
};
-static ADDRESS_MAP_START( dms5000_mem, AS_PROGRAM, 16, dms5000_state )
+ADDRESS_MAP_START(dms5000_state::dms5000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dms5000_io, AS_IO, 16, dms5000_state )
+ADDRESS_MAP_START(dms5000_state::dms5000_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dms86.cpp b/src/mame/drivers/dms86.cpp
index f0a375392ef..c4fa351e605 100644
--- a/src/mame/drivers/dms86.cpp
+++ b/src/mame/drivers/dms86.cpp
@@ -52,6 +52,8 @@ public:
void kbd_put(u8 data);
void dms86(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
u8 m_term_data;
virtual void machine_reset() override;
@@ -79,13 +81,13 @@ READ16_MEMBER( dms86_state::port9c_r )
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 16, dms86_state)
+ADDRESS_MAP_START(dms86_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("roms",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 16, dms86_state)
+ADDRESS_MAP_START(dms86_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x82, 0x83) AM_READ(port82_r)
diff --git a/src/mame/drivers/dmv.cpp b/src/mame/drivers/dmv.cpp
index a6a218c1aa5..c4e45cf53d8 100644
--- a/src/mame/drivers/dmv.cpp
+++ b/src/mame/drivers/dmv.cpp
@@ -177,6 +177,9 @@ public:
int m_busint[8];
int m_irqs[8];
void dmv(machine_config &config);
+ void dmv_io(address_map &map);
+ void dmv_mem(address_map &map);
+ void upd7220_map(address_map &map);
};
WRITE8_MEMBER(dmv_state::tc_set_w)
@@ -508,12 +511,12 @@ uint8_t dmv_state::program_read(address_space &space, int cas, offs_t offset)
return data;
}
-static ADDRESS_MAP_START(dmv_mem, AS_PROGRAM, 8, dmv_state)
+ADDRESS_MAP_START(dmv_state::dmv_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xffff ) AM_READWRITE(program_r, program_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dmv_io , AS_IO, 8, dmv_state)
+ADDRESS_MAP_START(dmv_state::dmv_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(leds_w)
@@ -555,7 +558,7 @@ WRITE8_MEMBER(dmv_state::kb_mcu_port2_w)
m_slot7->keyint_w(BIT(data, 4));
}
-static ADDRESS_MAP_START( upd7220_map, 0, 16, dmv_state )
+ADDRESS_MAP_START(dmv_state::upd7220_map)
ADDRESS_MAP_GLOBAL_MASK(0x1ffff)
AM_RANGE(0x00000, 0x1ffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/docastle.cpp b/src/mame/drivers/docastle.cpp
index d447c0e274b..21b05f613e7 100644
--- a/src/mame/drivers/docastle.cpp
+++ b/src/mame/drivers/docastle.cpp
@@ -220,7 +220,7 @@ WRITE8_MEMBER(docastle_state::idsoccer_adpcm_w)
}
/* Memory Maps */
-static ADDRESS_MAP_START( docastle_map, AS_PROGRAM, 8, docastle_state )
+ADDRESS_MAP_START(docastle_state::docastle_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x97ff) AM_RAM
AM_RANGE(0x9800, 0x99ff) AM_RAM AM_SHARE("spriteram")
@@ -231,7 +231,7 @@ static ADDRESS_MAP_START( docastle_map, AS_PROGRAM, 8, docastle_state )
AM_RANGE(0xe000, 0xe000) AM_WRITE(docastle_nmitrigger_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( docastle_map2, AS_PROGRAM, 8, docastle_state )
+ADDRESS_MAP_START(docastle_state::docastle_map2)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa008) AM_READWRITE(docastle_shared1_r, docastle_shared0_w)
@@ -242,7 +242,7 @@ static ADDRESS_MAP_START( docastle_map2, AS_PROGRAM, 8, docastle_state )
AM_RANGE(0xec00, 0xec00) AM_DEVWRITE("sn4", sn76489a_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( docastle_map3, AS_PROGRAM, 8, docastle_state )
+ADDRESS_MAP_START(docastle_state::docastle_map3)
AM_RANGE(0x0000, 0x00ff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x8008) AM_READ(docastle_shared1_r) // ???
@@ -250,14 +250,14 @@ static ADDRESS_MAP_START( docastle_map3, AS_PROGRAM, 8, docastle_state )
AM_RANGE(0xc432, 0xc435) AM_NOP // ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( docastle_io_map, AS_IO, 8, docastle_state )
+ADDRESS_MAP_START(docastle_state::docastle_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("crtc", mc6845_device, register_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dorunrun_map, AS_PROGRAM, 8, docastle_state )
+ADDRESS_MAP_START(docastle_state::dorunrun_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x37ff) AM_RAM
AM_RANGE(0x3800, 0x39ff) AM_RAM AM_SHARE("spriteram")
@@ -269,7 +269,7 @@ static ADDRESS_MAP_START( dorunrun_map, AS_PROGRAM, 8, docastle_state )
AM_RANGE(0xb800, 0xb800) AM_WRITE(docastle_nmitrigger_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dorunrun_map2, AS_PROGRAM, 8, docastle_state )
+ADDRESS_MAP_START(docastle_state::dorunrun_map2)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("sn1", sn76489a_device, write)
@@ -281,7 +281,7 @@ static ADDRESS_MAP_START( dorunrun_map2, AS_PROGRAM, 8, docastle_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( idsoccer_map, AS_PROGRAM, 8, docastle_state )
+ADDRESS_MAP_START(docastle_state::idsoccer_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x57ff) AM_RAM
AM_RANGE(0x5800, 0x59ff) AM_RAM AM_SHARE("spriteram")
diff --git a/src/mame/drivers/dogfgt.cpp b/src/mame/drivers/dogfgt.cpp
index fce36378443..c33657a1064 100644
--- a/src/mame/drivers/dogfgt.cpp
+++ b/src/mame/drivers/dogfgt.cpp
@@ -60,7 +60,7 @@ WRITE8_MEMBER(dogfgt_state::dogfgt_soundcontrol_w)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dogfgt_state )
+ADDRESS_MAP_START(dogfgt_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(sharedram_r, sharedram_w) AM_SHARE("sharedram")
AM_RANGE(0x0f80, 0x0fdf) AM_WRITEONLY AM_SHARE("spriteram")
AM_RANGE(0x1000, 0x17ff) AM_WRITE(dogfgt_bgvideoram_w) AM_SHARE("bgvideoram")
@@ -79,7 +79,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dogfgt_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, dogfgt_state )
+ADDRESS_MAP_START(dogfgt_state::sub_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x27ff) AM_READWRITE(sharedram_r, sharedram_w)
AM_RANGE(0x4000, 0x4000) AM_WRITE(sub_irqack_w)
diff --git a/src/mame/drivers/dolphunk.cpp b/src/mame/drivers/dolphunk.cpp
index b39f1ac6cb0..d9fd3bda93d 100644
--- a/src/mame/drivers/dolphunk.cpp
+++ b/src/mame/drivers/dolphunk.cpp
@@ -108,6 +108,8 @@ public:
DECLARE_WRITE8_MEMBER(port06_w);
TIMER_DEVICE_CALLBACK_MEMBER(dauphin_c);
void dauphin(machine_config &config);
+ void dauphin_io(address_map &map);
+ void dauphin_mem(address_map &map);
private:
uint8_t m_cass_data;
uint8_t m_last_key;
@@ -182,14 +184,14 @@ TIMER_DEVICE_CALLBACK_MEMBER(dauphin_state::dauphin_c)
m_cass->output(BIT(m_cass_data, 0) ? -1.0 : +1.0); // 2000Hz
}
-static ADDRESS_MAP_START( dauphin_mem, AS_PROGRAM, 8, dauphin_state )
+ADDRESS_MAP_START(dauphin_state::dauphin_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x01ff) AM_ROM
AM_RANGE( 0x0200, 0x02ff) AM_RAM
AM_RANGE( 0x0c00, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dauphin_io, AS_IO, 8, dauphin_state )
+ADDRESS_MAP_START(dauphin_state::dauphin_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_WRITE(port00_w) // 4-led display
AM_RANGE(0x06, 0x06) AM_WRITE(port06_w) // speaker (NOT a keyclick)
diff --git a/src/mame/drivers/dominob.cpp b/src/mame/drivers/dominob.cpp
index 220184c639f..b75679d5719 100644
--- a/src/mame/drivers/dominob.cpp
+++ b/src/mame/drivers/dominob.cpp
@@ -97,6 +97,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void dominob(machine_config &config);
+ void memmap(address_map &map);
+ void portmap(address_map &map);
};
void dominob_state::video_start()
@@ -177,7 +179,7 @@ WRITE8_MEMBER(dominob_state::dominob_d008_w)
/* is there a purpose on this ? always set to 0x00 (read from 0xc47b in RAM) */
}
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, dominob_state )
+ADDRESS_MAP_START(dominob_state::memmap)
AM_RANGE(0x0000, 0xbfff) AM_ROM AM_WRITENOP // there are some garbage writes to ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -203,7 +205,7 @@ READ8_MEMBER(dominob_state::dominob_unk_port02_r)
return 0xff;
}
-static ADDRESS_MAP_START( portmap, AS_IO, 8, dominob_state )
+ADDRESS_MAP_START(dominob_state::portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x02) AM_READ(dominob_unk_port02_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dooyong.cpp b/src/mame/drivers/dooyong.cpp
index ff6e33413d6..da5c0cdd12a 100644
--- a/src/mame/drivers/dooyong.cpp
+++ b/src/mame/drivers/dooyong.cpp
@@ -114,6 +114,7 @@ protected:
optional_device<dooyong_rom_tilemap_device> m_fg2;
void sound_2151_4mhz(machine_config &config);
+ void bluehawk_sound_map(address_map &map);
};
class dooyong_z80_state : public dooyong_state
@@ -221,6 +222,9 @@ public:
void bluehawk(machine_config &config);
void flytiger(machine_config &config);
void primella(machine_config &config);
+ void bluehawk_map(address_map &map);
+ void flytiger_map(address_map &map);
+ void primella_map(address_map &map);
protected:
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, unsigned extensions = 0);
@@ -293,6 +297,11 @@ public:
void pollux(machine_config &config);
void lastday(machine_config &config);
void gulfstrm(machine_config &config);
+ void gulfstrm_map(address_map &map);
+ void lastday_map(address_map &map);
+ void lastday_sound_map(address_map &map);
+ void pollux_map(address_map &map);
+ void pollux_sound_map(address_map &map);
protected:
int m_interrupt_line_1 = 0;
int m_interrupt_line_2 = 0;
@@ -324,6 +333,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(scanline);
+ void popbingo_map(address_map &map);
+ void rshark_map(address_map &map);
+ void superx_map(address_map &map);
protected:
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
@@ -770,7 +782,7 @@ uint32_t popbingo_state::screen_update_popbingo(screen_device &screen, bitmap_in
***************************************************************************/
-ADDRESS_MAP_START( lastday_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
+ADDRESS_MAP_START(dooyong_z80_ym2203_state::lastday_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc007) AM_DEVWRITE("bg", dooyong_rom_tilemap_device, ctrl_w)
@@ -789,7 +801,7 @@ ADDRESS_MAP_START( lastday_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-ADDRESS_MAP_START( pollux_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
+ADDRESS_MAP_START(dooyong_z80_ym2203_state::pollux_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -807,7 +819,7 @@ ADDRESS_MAP_START( pollux_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
AM_RANGE(0xf800, 0xffff) AM_READWRITE(paletteram_flytiger_r, paletteram_flytiger_w)
ADDRESS_MAP_END
-ADDRESS_MAP_START( gulfstrm_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
+ADDRESS_MAP_START(dooyong_z80_ym2203_state::gulfstrm_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -826,7 +838,7 @@ ADDRESS_MAP_START( gulfstrm_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-ADDRESS_MAP_START( bluehawk_map, AS_PROGRAM, 8, dooyong_z80_state )
+ADDRESS_MAP_START(dooyong_z80_state::bluehawk_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("DSWA")
@@ -846,7 +858,7 @@ ADDRESS_MAP_START( bluehawk_map, AS_PROGRAM, 8, dooyong_z80_state )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-ADDRESS_MAP_START( flytiger_map, AS_PROGRAM, 8, dooyong_z80_state )
+ADDRESS_MAP_START(dooyong_z80_state::flytiger_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("spriteram")
@@ -865,7 +877,7 @@ ADDRESS_MAP_START( flytiger_map, AS_PROGRAM, 8, dooyong_z80_state )
AM_RANGE(0xf000, 0xffff) AM_READWRITE(lastday_tx_r, lastday_tx_w)
ADDRESS_MAP_END
-ADDRESS_MAP_START( primella_map, AS_PROGRAM, 8, dooyong_z80_state )
+ADDRESS_MAP_START(dooyong_z80_state::primella_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -883,7 +895,7 @@ ADDRESS_MAP_START( primella_map, AS_PROGRAM, 8, dooyong_z80_state )
AM_RANGE(0xfc08, 0xfc0f) AM_DEVWRITE("fg", dooyong_rom_tilemap_device, ctrl_w)
ADDRESS_MAP_END
-ADDRESS_MAP_START( rshark_map, AS_PROGRAM, 16, dooyong_68k_state )
+ADDRESS_MAP_START(dooyong_68k_state::rshark_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff) /* super-x needs this and is similar */
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x04cfff) AM_RAM
@@ -901,7 +913,7 @@ ADDRESS_MAP_START( rshark_map, AS_PROGRAM, 16, dooyong_68k_state )
AM_RANGE(0x0cc010, 0x0cc01f) AM_DEVWRITE8("fg2", dooyong_rom_tilemap_device, ctrl_w, 0x00ff)
ADDRESS_MAP_END
-ADDRESS_MAP_START( superx_map, AS_PROGRAM, 16, dooyong_68k_state )
+ADDRESS_MAP_START(dooyong_68k_state::superx_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0d0000, 0x0dcfff) AM_RAM
@@ -919,7 +931,7 @@ ADDRESS_MAP_START( superx_map, AS_PROGRAM, 16, dooyong_68k_state )
AM_RANGE(0x08c010, 0x08c01f) AM_DEVWRITE8("fg2", dooyong_rom_tilemap_device, ctrl_w, 0x00ff)
ADDRESS_MAP_END
-ADDRESS_MAP_START( popbingo_map, AS_PROGRAM, 16, dooyong_68k_state )
+ADDRESS_MAP_START(dooyong_68k_state::popbingo_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x04cfff) AM_RAM
@@ -939,7 +951,7 @@ ADDRESS_MAP_START( popbingo_map, AS_PROGRAM, 16, dooyong_68k_state )
AM_RANGE(0x0dc000, 0x0dc01f) AM_RAM // registers of some kind?
ADDRESS_MAP_END
-ADDRESS_MAP_START( lastday_sound_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
+ADDRESS_MAP_START(dooyong_z80_ym2203_state::lastday_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -947,7 +959,7 @@ ADDRESS_MAP_START( lastday_sound_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
AM_RANGE(0xf002, 0xf003) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
ADDRESS_MAP_END
-ADDRESS_MAP_START( pollux_sound_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
+ADDRESS_MAP_START(dooyong_z80_ym2203_state::pollux_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -955,7 +967,7 @@ ADDRESS_MAP_START( pollux_sound_map, AS_PROGRAM, 8, dooyong_z80_ym2203_state )
AM_RANGE(0xf804, 0xf805) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
ADDRESS_MAP_END
-ADDRESS_MAP_START( bluehawk_sound_map, AS_PROGRAM, 8, dooyong_state )
+ADDRESS_MAP_START(dooyong_state::bluehawk_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/dorachan.cpp b/src/mame/drivers/dorachan.cpp
index 744bfa450fb..49c24368319 100644
--- a/src/mame/drivers/dorachan.cpp
+++ b/src/mame/drivers/dorachan.cpp
@@ -46,6 +46,8 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void dorachan(machine_config &config);
+ void dorachan_io_map(address_map &map);
+ void dorachan_map(address_map &map);
};
@@ -128,7 +130,7 @@ WRITE8_MEMBER(dorachan_state::control_w)
}
-static ADDRESS_MAP_START( dorachan_map, AS_PROGRAM, 8, dorachan_state )
+ADDRESS_MAP_START(dorachan_state::dorachan_map)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x1800, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x23ff) AM_ROM
@@ -140,7 +142,7 @@ static ADDRESS_MAP_START( dorachan_map, AS_PROGRAM, 8, dorachan_state )
AM_RANGE(0x6000, 0x77ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dorachan_io_map, AS_IO, 8, dorachan_state )
+ADDRESS_MAP_START(dorachan_state::dorachan_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_WRITENOP
AM_RANGE(0x02, 0x02) AM_WRITENOP
diff --git a/src/mame/drivers/dotrikun.cpp b/src/mame/drivers/dotrikun.cpp
index bdd354a425a..75c440c1550 100644
--- a/src/mame/drivers/dotrikun.cpp
+++ b/src/mame/drivers/dotrikun.cpp
@@ -67,6 +67,8 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void dotrikun(machine_config &config);
+ void dotrikun_map(address_map &map);
+ void io_map(address_map &map);
};
TIMER_DEVICE_CALLBACK_MEMBER(dotrikun_state::interrupt)
@@ -140,13 +142,13 @@ uint32_t dotrikun_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
*
*************************************/
-static ADDRESS_MAP_START( dotrikun_map, AS_PROGRAM, 8, dotrikun_state )
+ADDRESS_MAP_START(dotrikun_state::dotrikun_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x85ff) AM_RAM_WRITE(vram_w) AM_SHARE("vram")
AM_RANGE(0x8600, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, dotrikun_state )
+ADDRESS_MAP_START(dotrikun_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_READ_PORT("INPUTS") AM_WRITE(color_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dps1.cpp b/src/mame/drivers/dps1.cpp
index 1397f4b4480..cce3f8462b3 100644
--- a/src/mame/drivers/dps1.cpp
+++ b/src/mame/drivers/dps1.cpp
@@ -47,6 +47,8 @@ public:
DECLARE_MACHINE_RESET(dps1);
void dps1(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
bool m_dma_dir;
uint16_t m_dma_adr;
@@ -56,12 +58,12 @@ private:
//required_device<floppy_connector> m_floppy1;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, dps1_state )
+ADDRESS_MAP_START(dps1_state::mem_map)
AM_RANGE(0x0000, 0x03ff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x0400, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, dps1_state )
+ADDRESS_MAP_START(dps1_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("uart", mc2661_device, read, write) // S2651
diff --git a/src/mame/drivers/dragon.cpp b/src/mame/drivers/dragon.cpp
index 587396d1bc3..e0c7c12cd87 100644
--- a/src/mame/drivers/dragon.cpp
+++ b/src/mame/drivers/dragon.cpp
@@ -33,7 +33,7 @@
// ADDRESS_MAP( dragon_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( dragon_mem, AS_PROGRAM, 8, dragon_state )
+ADDRESS_MAP_START(dragon_state::dragon_mem)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dragrace.cpp b/src/mame/drivers/dragrace.cpp
index d1485c19125..5f7ca805d5c 100644
--- a/src/mame/drivers/dragrace.cpp
+++ b/src/mame/drivers/dragrace.cpp
@@ -118,7 +118,7 @@ READ8_MEMBER(dragrace_state::dragrace_scanline_r)
}
-static ADDRESS_MAP_START( dragrace_map, AS_PROGRAM, 8, dragrace_state )
+ADDRESS_MAP_START(dragrace_state::dragrace_map)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x0800, 0x083f) AM_READ(dragrace_input_r)
AM_RANGE(0x0900, 0x0907) AM_DEVWRITE("latch_f5", addressable_latch_device, write_d0)
diff --git a/src/mame/drivers/dreambal.cpp b/src/mame/drivers/dreambal.cpp
index 9b5027a7ba2..d8e5f64a3e0 100644
--- a/src/mame/drivers/dreambal.cpp
+++ b/src/mame/drivers/dreambal.cpp
@@ -73,6 +73,7 @@ public:
}
}
void dreambal(machine_config &config);
+ void dreambal_map(address_map &map);
};
@@ -110,7 +111,7 @@ WRITE16_MEMBER( dreambal_state::dreambal_protection_region_0_104_w )
m_deco104->write_data( space, deco146_addr, data, mem_mask, cs );
}
-static ADDRESS_MAP_START( dreambal_map, AS_PROGRAM, 16, dreambal_state )
+ADDRESS_MAP_START(dreambal_state::dreambal_map)
//ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_r, pf1_data_w)
diff --git a/src/mame/drivers/dreamwld.cpp b/src/mame/drivers/dreamwld.cpp
index e252560d3f6..f6a2bb19533 100644
--- a/src/mame/drivers/dreamwld.cpp
+++ b/src/mame/drivers/dreamwld.cpp
@@ -158,6 +158,10 @@ public:
required_device<palette_device> m_palette;
void baryon(machine_config &config);
void dreamwld(machine_config &config);
+ void baryon_map(address_map &map);
+ void dreamwld_map(address_map &map);
+ void oki1_map(address_map &map);
+ void oki2_map(address_map &map);
};
@@ -427,12 +431,12 @@ READ32_MEMBER(dreamwld_state::dreamwld_protdata_r)
return dat << 24;
}
-static ADDRESS_MAP_START( oki1_map, 0, 8, dreamwld_state )
+ADDRESS_MAP_START(dreamwld_state::oki1_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("oki1bank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki2_map, 0, 8, dreamwld_state )
+ADDRESS_MAP_START(dreamwld_state::oki2_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("oki2bank")
ADDRESS_MAP_END
@@ -454,7 +458,7 @@ WRITE32_MEMBER(dreamwld_state::dreamwld_6295_1_bank_w)
}
-static ADDRESS_MAP_START( baryon_map, AS_PROGRAM, 32, dreamwld_state )
+ADDRESS_MAP_START(dreamwld_state::baryon_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_WRITENOP
AM_RANGE(0x400000, 0x401fff) AM_RAM AM_SHARE("spriteram")
@@ -475,7 +479,7 @@ static ADDRESS_MAP_START( baryon_map, AS_PROGRAM, 32, dreamwld_state )
AM_RANGE(0xfe0000, 0xffffff) AM_RAM AM_SHARE("workram") // work ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dreamwld_map, AS_PROGRAM, 32, dreamwld_state )
+ADDRESS_MAP_START(dreamwld_state::dreamwld_map)
AM_IMPORT_FROM( baryon_map )
AM_RANGE(0xc0002c, 0xc0002f) AM_WRITE(dreamwld_6295_1_bank_w) // sfx
diff --git a/src/mame/drivers/drgnmst.cpp b/src/mame/drivers/drgnmst.cpp
index 343c948c312..dc58ce88218 100644
--- a/src/mame/drivers/drgnmst.cpp
+++ b/src/mame/drivers/drgnmst.cpp
@@ -181,7 +181,7 @@ WRITE8_MEMBER(drgnmst_state::drgnmst_snd_control_w)
/***************************** 68000 Memory Map *****************************/
-static ADDRESS_MAP_START( drgnmst_main_map, AS_PROGRAM, 16, drgnmst_state )
+ADDRESS_MAP_START(drgnmst_state::drgnmst_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("P1_P2")
AM_RANGE(0x800018, 0x800019) AM_READ_PORT("SYSTEM")
diff --git a/src/mame/drivers/dribling.cpp b/src/mame/drivers/dribling.cpp
index b5139267b25..e5b5b741d60 100644
--- a/src/mame/drivers/dribling.cpp
+++ b/src/mame/drivers/dribling.cpp
@@ -175,7 +175,7 @@ WRITE8_MEMBER(dribling_state::iowrite)
*
*************************************/
-static ADDRESS_MAP_START( dribling_map, AS_PROGRAM, 8, dribling_state )
+ADDRESS_MAP_START(dribling_state::dribling_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x4000, 0x7fff) AM_ROM
@@ -183,7 +183,7 @@ static ADDRESS_MAP_START( dribling_map, AS_PROGRAM, 8, dribling_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, dribling_state )
+ADDRESS_MAP_START(dribling_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(ioread, iowrite)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/drmicro.cpp b/src/mame/drivers/drmicro.cpp
index f0580b8a4c6..e929a70e464 100644
--- a/src/mame/drivers/drmicro.cpp
+++ b/src/mame/drivers/drmicro.cpp
@@ -76,14 +76,14 @@ WRITE8_MEMBER(drmicro_state::pcm_set_w)
*
*************************************/
-static ADDRESS_MAP_START( drmicro_map, AS_PROGRAM, 8, drmicro_state )
+ADDRESS_MAP_START(drmicro_state::drmicro_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(drmicro_videoram_w)
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, drmicro_state )
+ADDRESS_MAP_START(drmicro_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76496_device, write)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76496_device, write)
diff --git a/src/mame/drivers/drtomy.cpp b/src/mame/drivers/drtomy.cpp
index ec72da0f7dd..c5b5c4cb3f1 100644
--- a/src/mame/drivers/drtomy.cpp
+++ b/src/mame/drivers/drtomy.cpp
@@ -54,6 +54,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void drtomy(machine_config &config);
+ void drtomy_map(address_map &map);
};
@@ -173,7 +174,7 @@ WRITE16_MEMBER(drtomy_state::drtomy_okibank_w)
/* unknown bit 2 -> (data & 4) */
}
-static ADDRESS_MAP_START( drtomy_map, AS_PROGRAM, 16, drtomy_state )
+ADDRESS_MAP_START(drtomy_state::drtomy_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(drtomy_vram_fg_w) AM_SHARE("videorafg") /* Video RAM FG */
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(drtomy_vram_bg_w) AM_SHARE("videorabg") /* Video RAM BG */
diff --git a/src/mame/drivers/drw80pkr.cpp b/src/mame/drivers/drw80pkr.cpp
index f3ab82e2f88..9b6faf205f0 100644
--- a/src/mame/drivers/drw80pkr.cpp
+++ b/src/mame/drivers/drw80pkr.cpp
@@ -76,6 +76,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void drw80pkr(machine_config &config);
+ void drw80pkr_io_map(address_map &map);
+ void drw80pkr_map(address_map &map);
};
@@ -399,11 +401,11 @@ DRIVER_INIT_MEMBER(drw80pkr_state,drw80pkr)
* Memory map information *
*************************/
-static ADDRESS_MAP_START( drw80pkr_map, AS_PROGRAM, 8, drw80pkr_state )
+ADDRESS_MAP_START(drw80pkr_state::drw80pkr_map)
AM_RANGE(0x0000, 0x0fff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drw80pkr_io_map, AS_IO, 8, drw80pkr_state )
+ADDRESS_MAP_START(drw80pkr_state::drw80pkr_io_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(drw80pkr_io_r, drw80pkr_io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dsb46.cpp b/src/mame/drivers/dsb46.cpp
index 202c7952a67..d536b53421e 100644
--- a/src/mame/drivers/dsb46.cpp
+++ b/src/mame/drivers/dsb46.cpp
@@ -50,16 +50,18 @@ public:
DECLARE_MACHINE_RESET(dsb46);
void dsb46(machine_config &config);
+ void dsb46_io(address_map &map);
+ void dsb46_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( dsb46_mem, AS_PROGRAM, 8, dsb46_state )
+ADDRESS_MAP_START(dsb46_state::dsb46_mem)
AM_RANGE(0x0000, 0x07ff) AM_READ_BANK("read") AM_WRITE_BANK("write")
AM_RANGE(0x0800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsb46_io, AS_IO, 8, dsb46_state )
+ADDRESS_MAP_START(dsb46_state::dsb46_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("sio", z80sio_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/dual68.cpp b/src/mame/drivers/dual68.cpp
index 1e9730ea039..4f4174b47f7 100644
--- a/src/mame/drivers/dual68.cpp
+++ b/src/mame/drivers/dual68.cpp
@@ -30,6 +30,9 @@ public:
DECLARE_WRITE16_MEMBER(terminal_w);
void dual68(machine_config &config);
+ void dual68_mem(address_map &map);
+ void sio4_io(address_map &map);
+ void sio4_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -45,7 +48,7 @@ WRITE16_MEMBER( dual68_state::terminal_w )
m_terminal->write(space, 0, data >> 8);
}
-static ADDRESS_MAP_START(dual68_mem, AS_PROGRAM, 16, dual68_state)
+ADDRESS_MAP_START(dual68_state::dual68_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0000ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x00080000, 0x00081fff) AM_ROM AM_REGION("user1",0)
@@ -53,13 +56,13 @@ static ADDRESS_MAP_START(dual68_mem, AS_PROGRAM, 16, dual68_state)
AM_RANGE(0x00800000, 0x00801fff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sio4_mem, AS_PROGRAM, 8, dual68_state)
+ADDRESS_MAP_START(dual68_state::sio4_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sio4_io, AS_IO, 8, dual68_state)
+ADDRESS_MAP_START(dual68_state::sio4_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x22, 0x22) AM_DEVREADWRITE("uart1", i8251_device, status_r, control_w)
AM_RANGE(0x23, 0x23) AM_DEVREADWRITE("uart1", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/dunhuang.cpp b/src/mame/drivers/dunhuang.cpp
index c8c9cc75942..d72f7d4dbae 100644
--- a/src/mame/drivers/dunhuang.cpp
+++ b/src/mame/drivers/dunhuang.cpp
@@ -103,6 +103,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void dunhuang(machine_config &config);
+ void dunhuang_io_map(address_map &map);
+ void dunhuang_map(address_map &map);
+ void ramdac_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -425,7 +428,7 @@ WRITE8_MEMBER(dunhuang_state::layers_w)
Memory Maps
***************************************************************************/
-static ADDRESS_MAP_START( dunhuang_map, AS_PROGRAM, 8, dunhuang_state )
+ADDRESS_MAP_START(dunhuang_state::dunhuang_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK( "mainbank" )
@@ -480,7 +483,7 @@ WRITE8_MEMBER(dunhuang_state::rombank_w)
}
-static ADDRESS_MAP_START( dunhuang_io_map, AS_IO, 8, dunhuang_state )
+ADDRESS_MAP_START(dunhuang_state::dunhuang_io_map)
AM_RANGE( 0x0000, 0x0000 ) AM_WRITE(pos_x_w )
AM_RANGE( 0x0001, 0x0001 ) AM_WRITE(pos_y_w )
AM_RANGE( 0x0002, 0x0004 ) AM_WRITE(tile_w )
@@ -524,7 +527,7 @@ static ADDRESS_MAP_START( dunhuang_io_map, AS_IO, 8, dunhuang_state )
AM_RANGE( 0x0098, 0x0098 ) AM_DEVWRITE("ay8910", ay8910_device, address_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, dunhuang_state )
+ADDRESS_MAP_START(dunhuang_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/dvk_kcgd.cpp b/src/mame/drivers/dvk_kcgd.cpp
index 19b8fafffe4..5d75683148d 100644
--- a/src/mame/drivers/dvk_kcgd.cpp
+++ b/src/mame/drivers/dvk_kcgd.cpp
@@ -99,6 +99,7 @@ public:
emu_timer *m_500hz_timer;
void kcgd(machine_config &config);
+ void kcgd_mem(address_map &map);
private:
void draw_scanline(uint16_t *p, uint16_t offset);
rectangle m_tmpclip;
@@ -119,7 +120,7 @@ protected:
required_device<screen_device> m_screen;
};
-static ADDRESS_MAP_START( kcgd_mem, AS_PROGRAM, 16, kcgd_state )
+ADDRESS_MAP_START(kcgd_state::kcgd_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0000000, 0077777) AM_READWRITE(vram_mmap_r, vram_mmap_w)
AM_RANGE (0100000, 0157777) AM_ROM
diff --git a/src/mame/drivers/dvk_ksm.cpp b/src/mame/drivers/dvk_ksm.cpp
index d0d60f6779f..34100bd55fb 100644
--- a/src/mame/drivers/dvk_ksm.cpp
+++ b/src/mame/drivers/dvk_ksm.cpp
@@ -124,6 +124,8 @@ public:
DECLARE_WRITE8_MEMBER(ksm_ppi_portc_w);
void ksm(machine_config &config);
+ void ksm_io(address_map &map);
+ void ksm_mem(address_map &map);
private:
uint32_t draw_scanline(uint16_t *p, uint16_t offset, uint8_t scanline);
rectangle m_tmpclip;
@@ -157,14 +159,14 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START( ksm_mem, AS_PROGRAM, 8, ksm_state )
+ADDRESS_MAP_START(ksm_state::ksm_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x0000, 0x0fff) AM_ROM
AM_RANGE (0x2000, 0x20ff) AM_RAM AM_MIRROR(0x0700)
AM_RANGE (0xc000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ksm_io, AS_IO, 8, ksm_state )
+ADDRESS_MAP_START(ksm_state::ksm_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x5e, 0x5f) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
AM_RANGE (0x6e, 0x6e) AM_DEVREADWRITE("i8251kbd", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/dwarfd.cpp b/src/mame/drivers/dwarfd.cpp
index 5e7ced8a132..a6b07103e65 100644
--- a/src/mame/drivers/dwarfd.cpp
+++ b/src/mame/drivers/dwarfd.cpp
@@ -347,6 +347,11 @@ public:
void dwarfd(machine_config &config);
void pokeresp(machine_config &config);
void qc(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
+ void pokeresp_map(address_map &map);
+ void qc_io_map(address_map &map);
+ void qc_map(address_map &map);
};
@@ -404,17 +409,17 @@ READ8_MEMBER(dwarfd_state::qc_b8_r)
return machine().rand();
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, dwarfd_state )
+ADDRESS_MAP_START(dwarfd_state::mem_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_READWRITE(dwarfd_ram_r, dwarfd_ram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pokeresp_map, AS_PROGRAM, 8, dwarfd_state )
+ADDRESS_MAP_START(dwarfd_state::pokeresp_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x3fff) AM_READWRITE(dwarfd_ram_r, dwarfd_ram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, dwarfd_state )
+ADDRESS_MAP_START(dwarfd_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -427,12 +432,12 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, dwarfd_state )
AM_RANGE(0xc1, 0xc1) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qc_map, AS_PROGRAM, 8, dwarfd_state )
+ADDRESS_MAP_START(dwarfd_state::qc_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(dwarfd_ram_r, dwarfd_ram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qc_io_map, AS_IO, 8, dwarfd_state )
+ADDRESS_MAP_START(dwarfd_state::qc_io_map)
AM_IMPORT_FROM( io_map )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xb8, 0xb8) AM_READ(qc_b8_r)
diff --git a/src/mame/drivers/dynadice.cpp b/src/mame/drivers/dynadice.cpp
index a67f180b08c..430db08e4ab 100644
--- a/src/mame/drivers/dynadice.cpp
+++ b/src/mame/drivers/dynadice.cpp
@@ -74,6 +74,10 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void dynadice(machine_config &config);
+ void dynadice_io_map(address_map &map);
+ void dynadice_map(address_map &map);
+ void dynadice_sound_io_map(address_map &map);
+ void dynadice_sound_map(address_map &map);
};
@@ -109,13 +113,13 @@ WRITE8_MEMBER(dynadice_state::sound_control_w)
}
-static ADDRESS_MAP_START( dynadice_map, AS_PROGRAM, 8, dynadice_state )
+ADDRESS_MAP_START(dynadice_state::dynadice_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(dynadice_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4000, 0x40ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dynadice_io_map, AS_IO, 8, dynadice_state )
+ADDRESS_MAP_START(dynadice_state::dynadice_io_map)
AM_RANGE(0x50, 0x50) AM_READ_PORT("IN0")
AM_RANGE(0x51, 0x51) AM_READ_PORT("IN1")
AM_RANGE(0x52, 0x52) AM_READ_PORT("DSW")
@@ -124,12 +128,12 @@ static ADDRESS_MAP_START( dynadice_io_map, AS_IO, 8, dynadice_state )
AM_RANGE(0x70, 0x77) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dynadice_sound_map, AS_PROGRAM, 8, dynadice_state )
+ADDRESS_MAP_START(dynadice_state::dynadice_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dynadice_sound_io_map, AS_IO, 8, dynadice_state )
+ADDRESS_MAP_START(dynadice_state::dynadice_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
diff --git a/src/mame/drivers/dynax.cpp b/src/mame/drivers/dynax.cpp
index ebac74fe11b..5c66725b9af 100644
--- a/src/mame/drivers/dynax.cpp
+++ b/src/mame/drivers/dynax.cpp
@@ -85,7 +85,6 @@ TODO:
#include "cpu/tlcs90/tlcs90.h"
#include "cpu/z80/z80.h"
#include "cpu/z80/tmpz84c015.h"
-#include "machine/74259.h"
#include "machine/msm6242.h"
#include "machine/nvram.h"
#include "sound/ay8910.h"
@@ -397,45 +396,45 @@ MACHINE_RESET_MEMBER(dynax_state,adpcm)
m_msm->reset_w(1);
}
-static ADDRESS_MAP_START( cdracula_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::cdracula_mem_map)
AM_RANGE( 0x0000, 0xbfff ) AM_ROM
AM_RANGE( 0xc000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sprtmtch_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::sprtmtch_mem_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hnoridur_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::hnoridur_mem_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcnpshnt_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mcnpshnt_mem_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nanajign_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::nanajign_mem_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjdialq2_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mjdialq2_mem_map)
AM_RANGE( 0x0000, 0x7fff ) AM_ROM
AM_RANGE( 0x0800, 0x0fff ) AM_RAM
AM_RANGE( 0x1000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yarunara_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::yarunara_mem_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
@@ -443,21 +442,21 @@ static ADDRESS_MAP_START( yarunara_mem_map, AS_PROGRAM, 8, dynax_state )
ADDRESS_MAP_END
//identical to yarunara, but nvram is in the 0x6000 - 0x6fff range
-static ADDRESS_MAP_START( quiztvqq_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::quiztvqq_mem_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x7000, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0xffff ) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jantouki_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::jantouki_mem_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jantouki_sound_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::jantouki_sound_mem_map)
AM_RANGE( 0x0000, 0x77ff ) AM_ROM
AM_RANGE( 0x7800, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank2")
@@ -465,32 +464,32 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( hnoridur_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::hnoridur_banked_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x80000, 0x800ff) AM_WRITE(hnoridur_palette_lo_w)
AM_RANGE(0xa0000, 0xa00ff) AM_WRITE(hnoridur_palette_hi_w)
AM_RANGE(0xc0000, 0xc7fff) AM_RAM // hnoridur: R/W RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjelctrn_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mjelctrn_banked_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x80000, 0x800ff) AM_WRITE(nanajign_palette_lo_w)
AM_RANGE(0xa0000, 0xa00ff) AM_WRITE(nanajign_palette_hi_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nanajign_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::nanajign_banked_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x80000, 0x800ff) AM_WRITE(nanajign_palette_lo_w)
AM_RANGE(0xa0000, 0xa00ff) AM_WRITE(nanajign_palette_hi_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yarunara_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::yarunara_banked_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x80000, 0x801ff) AM_WRITE(tenkai_palette_w)
AM_RANGE(0xe0000, 0xe000f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjangels_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mjangels_banked_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_REGION("maincpu", 0x010000)
AM_RANGE(0x080000, 0x0801ff) AM_WRITE(tenkai_palette_w)
AM_RANGE(0x0a0000, 0x0bffff) AM_ROM AM_REGION("maincpu", 0x0b0000)
@@ -500,7 +499,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( hanamai_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::hanamai_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_WRITE(dynax_extra_scrollx_w) // screen scroll X
AM_RANGE( 0x20, 0x20 ) AM_WRITE(dynax_extra_scrolly_w) // screen scroll Y
@@ -530,7 +529,7 @@ static ADDRESS_MAP_START( hanamai_io_map, AS_IO, 8, dynax_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hnoridur_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::hnoridur_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter
// AM_RANGE( 0x10, 0x10 ) AM_WRITENOP // CRT Controller
@@ -595,7 +594,7 @@ READ8_MEMBER(dynax_state::hjingi_keyboard_1_r)
return hanamai_keyboard_1_r(space, 0) | ioport("BET")->read();
}
-static ADDRESS_MAP_START( hjingi_mem_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::hjingi_mem_map)
AM_RANGE( 0x0000, 0x01ff ) AM_ROM
AM_RANGE( 0x0200, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x2000, 0x7fff ) AM_ROM
@@ -603,12 +602,12 @@ static ADDRESS_MAP_START( hjingi_mem_map, AS_PROGRAM, 8, dynax_state )
AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hjingi_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::hjingi_banked_map)
AM_RANGE(0x80000, 0x800ff) AM_WRITE(hnoridur_palette_lo_w)
AM_RANGE(0xa0000, 0xa00ff) AM_WRITE(hnoridur_palette_hi_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hjingi_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::hjingi_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter
@@ -735,7 +734,7 @@ WRITE8_MEMBER(dynax_state::yarunara_blit_romregion_w)
logerror("%s: unmapped romregion=%02X\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( yarunara_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::yarunara_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x01 ) AM_WRITE(yarunara_input_w) // Controls
AM_RANGE( 0x02, 0x03 ) AM_READ(yarunara_input_r) //
@@ -763,7 +762,7 @@ ADDRESS_MAP_END
// Almost identical to hnoridur
-static ADDRESS_MAP_START( mcnpshnt_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mcnpshnt_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter
// AM_RANGE( 0x10, 0x10 ) AM_WRITENOP // CRT Controller
@@ -797,7 +796,7 @@ static ADDRESS_MAP_START( mcnpshnt_io_map, AS_IO, 8, dynax_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sprtmtch_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::sprtmtch_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter
AM_RANGE( 0x10, 0x11 ) AM_DEVREADWRITE("ym2203", ym2203_device, read, write) // 2 x DSW
@@ -820,7 +819,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjfriday_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mjfriday_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_WRITE(dynax_blit_pen_w) // Destination Pen
AM_RANGE( 0x01, 0x01 ) AM_WRITE(dynax_blit_palette01_w) // Layers Palettes (Low Bits)
@@ -841,7 +840,7 @@ static ADDRESS_MAP_START( mjfriday_io_map, AS_IO, 8, dynax_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nanajign_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::nanajign_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_WRITE(adpcm_reset_w) // MSM5205 reset
AM_RANGE( 0x02, 0x02 ) AM_WRITE(adpcm_data_w) // MSM5205 data
@@ -903,7 +902,7 @@ WRITE8_MEMBER(dynax_state::jantouki_rombank_w)
output().set_led_value(0, data & 0x10); // maybe
}
-static ADDRESS_MAP_START( jantouki_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::jantouki_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE( 0x40, 0x41 ) AM_WRITENOP // CRT Controller
AM_RANGE( 0x48, 0x48 ) AM_WRITE(jantouki_rombank_w) // BANK ROM Select
@@ -954,7 +953,7 @@ READ8_MEMBER(dynax_state::jantouki_soundlatch_status_r)
return (m_soundlatch_full) ? 0 : 0x80;
}
-static ADDRESS_MAP_START( jantouki_sound_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::jantouki_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_WRITE(jantouki_sound_rombank_w) // BANK ROM Select
AM_RANGE( 0x10, 0x10 ) AM_WRITE(jantouki_sound_vblank_ack_w) // VBlank IRQ Ack
@@ -987,7 +986,7 @@ READ8_MEMBER(dynax_state::mjelctrn_dsw_r)
return ioport(dswnames[dsw])->read();
}
-static ADDRESS_MAP_START( mjelctrn_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mjelctrn_io_map)
//ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_MIRROR(0xff00) AM_WRITE(adpcm_reset_w) // MSM5205 reset
AM_RANGE( 0x02, 0x02 ) AM_MIRROR(0xff00) AM_WRITE(adpcm_data_w) // MSM5205 data
@@ -1020,7 +1019,7 @@ static ADDRESS_MAP_START( mjelctrn_io_map, AS_IO, 8, dynax_state )
AM_RANGE( 0xe7, 0xe7 ) AM_MIRROR(0xff00) AM_WRITE(hnoridur_palbank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjembase_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::mjembase_io_map)
//ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x04, 0x05 ) AM_MIRROR(0xff00) AM_DEVWRITE("ym2413", ym2413_device, write) //
AM_RANGE( 0x06, 0x06 ) AM_MIRROR(0xff00) AM_DEVREAD("aysnd", ay8912_device, data_r) // AY8912, dsw0
@@ -1252,7 +1251,7 @@ WRITE8_MEMBER(dynax_state::tenkai_blit_romregion_w)
logerror("%04x: unmapped romregion=%02X\n", m_maincpu->pc(), data);
}
-static ADDRESS_MAP_START( tenkai_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::tenkai_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_DEVICE("bankdev", address_map_bank_device, amap8)
@@ -1267,14 +1266,14 @@ static ADDRESS_MAP_START( tenkai_map, AS_PROGRAM, 8, dynax_state )
AM_RANGE( 0x10050, 0x10050 ) AM_WRITE(tenkai_priority_w) // layer priority and enable
AM_RANGE( 0x10054, 0x10054 ) AM_WRITE(dynax_blit_backpen_w) // Background Color
AM_RANGE( 0x10058, 0x10058 ) AM_WRITE(tenkai_blit_romregion_w) // Blitter ROM bank
- AM_RANGE( 0x10060, 0x1007f ) AM_DEVWRITE_MOD("mainlatch", ls259_device, write_d1, rshift<2>)
+ ;map(0x10060, 0x1007f).lw8("mainlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_mainlatch->write_d1(space, offset >> 2, data, mem_mask); });
AM_RANGE( 0x100c0, 0x100c0 ) AM_WRITE(tenkai_ipsel_w)
AM_RANGE( 0x100c1, 0x100c1 ) AM_WRITE(tenkai_ip_w)
AM_RANGE( 0x100c2, 0x100c3 ) AM_READ(tenkai_ip_r)
AM_RANGE( 0x100e1, 0x100e7 ) AM_WRITE(tenkai_blitter_rev2_w) // Blitter (inverted scroll values)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tenkai_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::tenkai_banked_map)
AM_RANGE( 0x00000, 0x3ffff ) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE( 0x80000, 0x8000f ) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
AM_RANGE( 0x90000, 0x97fff ) AM_READWRITE(tenkai_palette_r, tenkai_palette_w)
@@ -1326,13 +1325,13 @@ WRITE8_MEMBER(dynax_state::gekisha_p4_w)
}
-static ADDRESS_MAP_START( gekisha_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::gekisha_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gekisha_banked_map, AS_PROGRAM, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::gekisha_banked_map)
AM_RANGE( 0x00000, 0x0ffff ) AM_ROM AM_REGION("maincpu", 0x8000)
AM_RANGE( 0x10000, 0x10000 ) AM_WRITENOP // ? 0
AM_RANGE( 0x10001, 0x10001 ) AM_WRITE(dynax_blit_palette01_w) // Layers Palettes (Low Bits)
@@ -1371,7 +1370,7 @@ WRITE8_MEMBER(dynax_state::cdracula_sound_rombank_w)
logerror("%s: warning, invalid sound bank = %02x\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( cdracula_io_map, AS_IO, 8, dynax_state )
+ADDRESS_MAP_START(dynax_state::cdracula_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x07 ) AM_WRITE(cdracula_blitter_rev2_w) // Blitter + Destination Layers
AM_RANGE( 0x10, 0x10 ) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/dynduke.cpp b/src/mame/drivers/dynduke.cpp
index 6f3f81e2cb0..164be6f5a8e 100644
--- a/src/mame/drivers/dynduke.cpp
+++ b/src/mame/drivers/dynduke.cpp
@@ -80,7 +80,7 @@ Also, implemented conditional port for Coin Mode (SW1:1)
/* Memory Maps */
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, dynduke_state )
+ADDRESS_MAP_START(dynduke_state::master_map)
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x08000, 0x080ff) AM_RAM AM_SHARE("scroll_ram")
@@ -94,7 +94,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, dynduke_state )
AM_RANGE(0xa0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, dynduke_state )
+ADDRESS_MAP_START(dynduke_state::slave_map)
AM_RANGE(0x00000, 0x05fff) AM_RAM
AM_RANGE(0x06000, 0x067ff) AM_RAM_WRITE(background_w) AM_SHARE("back_data")
AM_RANGE(0x06800, 0x06fff) AM_RAM_WRITE(foreground_w) AM_SHARE("fore_data")
@@ -106,7 +106,7 @@ static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, dynduke_state )
ADDRESS_MAP_END
/* Memory map used by DlbDyn - probably an addressing PAL is different */
-static ADDRESS_MAP_START( masterj_map, AS_PROGRAM, 16, dynduke_state )
+ADDRESS_MAP_START(dynduke_state::masterj_map)
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x08000, 0x087ff) AM_RAM_WRITE(text_w) AM_SHARE("videoram")
@@ -120,7 +120,7 @@ static ADDRESS_MAP_START( masterj_map, AS_PROGRAM, 16, dynduke_state )
AM_RANGE(0xa0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dynduke_state )
+ADDRESS_MAP_START(dynduke_state::sound_map)
AM_RANGE(0x0000, 0xffff) AM_DEVREAD("sei80bu", sei80bu_device, data_r)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -137,11 +137,11 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dynduke_state )
AM_RANGE(0x6000, 0x6000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_decrypted_opcodes_map, AS_OPCODES, 8, dynduke_state )
+ADDRESS_MAP_START(dynduke_state::sound_decrypted_opcodes_map)
AM_RANGE(0x0000, 0xffff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sei80bu_encrypted_full_map, AS_PROGRAM, 8, dynduke_state )
+ADDRESS_MAP_START(dynduke_state::sei80bu_encrypted_full_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("audiocpu", 0)
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
@@ -316,7 +316,7 @@ MACHINE_CONFIG_START(dynduke_state::dynduke)
MCFG_CPU_ADD("audiocpu", Z80, 14318180/4)
MCFG_CPU_PROGRAM_MAP(sound_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(sound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(sound_decrypted_opcodes_map)
MCFG_DEVICE_ADD("sei80bu", SEI80BU, 0)
MCFG_DEVICE_PROGRAM_MAP(sei80bu_encrypted_full_map)
diff --git a/src/mame/drivers/e100.cpp b/src/mame/drivers/e100.cpp
index 84f4439b607..9f1066f7677 100644
--- a/src/mame/drivers/e100.cpp
+++ b/src/mame/drivers/e100.cpp
@@ -179,6 +179,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( pia1_cb2_w);
TIMER_DEVICE_CALLBACK_MEMBER(rtc_w);
void e100(machine_config &config);
+ void e100_map(address_map &map);
protected:
required_ioport m_io_line0;
required_ioport m_io_line1;
@@ -422,7 +423,7 @@ WRITE_LINE_MEMBER(e100_state::pia1_cb2_w)
}
// This map is derived from info in "TEMAL 100 - teknisk manual Esselte 100"
-static ADDRESS_MAP_START( e100_map, AS_PROGRAM, 8, e100_state )
+ADDRESS_MAP_START(e100_state::e100_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x8000, 0x87ff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/eacc.cpp b/src/mame/drivers/eacc.cpp
index d420f9f66a2..24177aaf8ea 100644
--- a/src/mame/drivers/eacc.cpp
+++ b/src/mame/drivers/eacc.cpp
@@ -82,6 +82,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(eacc_cb1);
TIMER_DEVICE_CALLBACK_MEMBER(eacc_nmi);
void eacc(machine_config &config);
+ void eacc_mem(address_map &map);
private:
uint8_t m_digit;
};
@@ -93,7 +94,7 @@ private:
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(eacc_mem, AS_PROGRAM, 8, eacc_state)
+ADDRESS_MAP_START(eacc_state::eacc_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xc7ff) // A11,A12,A13 not connected
AM_RANGE(0x0000, 0x001f) AM_RAM AM_SHARE("nvram") // inside cpu, battery-backed
diff --git a/src/mame/drivers/ec184x.cpp b/src/mame/drivers/ec184x.cpp
index 0ca9ddf2282..737fbcbea5c 100644
--- a/src/mame/drivers/ec184x.cpp
+++ b/src/mame/drivers/ec184x.cpp
@@ -57,6 +57,12 @@ public:
void ec1841(machine_config &config);
void ec1847(machine_config &config);
void ec1840(machine_config &config);
+ void ec1840_io(address_map &map);
+ void ec1840_map(address_map &map);
+ void ec1841_io(address_map &map);
+ void ec1841_map(address_map &map);
+ void ec1847_io(address_map &map);
+ void ec1847_map(address_map &map);
};
/*
@@ -177,33 +183,33 @@ MACHINE_RESET_MEMBER(ec184x_state, ec1841)
}
-static ADDRESS_MAP_START( ec1840_map, AS_PROGRAM, 8, ec184x_state )
+ADDRESS_MAP_START(ec184x_state::ec1840_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ec1841_map, AS_PROGRAM, 16, ec184x_state )
+ADDRESS_MAP_START(ec184x_state::ec1841_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ec1847_map, AS_PROGRAM, 8, ec184x_state )
+ADDRESS_MAP_START(ec184x_state::ec1847_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ec1840_io, AS_IO, 8, ec184x_state )
+ADDRESS_MAP_START(ec184x_state::ec1840_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", ibm5150_mb_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ec1841_io, AS_IO, 16, ec184x_state )
+ADDRESS_MAP_START(ec184x_state::ec1841_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", ec1841_mb_device, map, 0xffff)
AM_RANGE(0x02b0, 0x02b3) AM_READWRITE8(memboard_r, memboard_w, 0xffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ec1847_io, AS_IO, 8, ec184x_state )
+ADDRESS_MAP_START(ec184x_state::ec1847_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", ibm5160_mb_device, map)
// AM_RANGE(0x0210, 0x021f) AM_RAM // internal (non-standard?) bus extender
diff --git a/src/mame/drivers/ec65.cpp b/src/mame/drivers/ec65.cpp
index b33581629b8..5ba1963ad22 100644
--- a/src/mame/drivers/ec65.cpp
+++ b/src/mame/drivers/ec65.cpp
@@ -45,6 +45,7 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void ec65(machine_config &config);
+ void ec65_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<via6522_device> m_via_0;
@@ -63,9 +64,10 @@ public:
{
}
void ec65k(machine_config &config);
+ void ec65k_mem(address_map &map);
};
-static ADDRESS_MAP_START(ec65_mem, AS_PROGRAM, 8, ec65_state)
+ADDRESS_MAP_START(ec65_state::ec65_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE(PIA6821_TAG, pia6821_device, read, write)
@@ -80,7 +82,7 @@ static ADDRESS_MAP_START(ec65_mem, AS_PROGRAM, 8, ec65_state)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ec65k_mem, AS_PROGRAM, 8, ec65_state)
+ADDRESS_MAP_START(ec65k_state::ec65k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xe7ff) AM_RAM
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/ecoinf1.cpp b/src/mame/drivers/ecoinf1.cpp
index 5f6b846306d..3d5ea19ad8b 100644
--- a/src/mame/drivers/ecoinf1.cpp
+++ b/src/mame/drivers/ecoinf1.cpp
@@ -24,15 +24,17 @@ public:
DECLARE_DRIVER_INIT(ecoinf1);
required_device<cpu_device> m_maincpu;
void ecoinf1_older(machine_config &config);
+ void older_memmap(address_map &map);
+ void older_portmap(address_map &map);
};
-static ADDRESS_MAP_START( older_memmap, AS_PROGRAM, 8, ecoinf1_state )
+ADDRESS_MAP_START(ecoinf1_state::older_memmap)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( older_portmap, AS_IO, 8, ecoinf1_state )
+ADDRESS_MAP_START(ecoinf1_state::older_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ecoinf2.cpp b/src/mame/drivers/ecoinf2.cpp
index 4b90fd84b01..ac51dc61a68 100644
--- a/src/mame/drivers/ecoinf2.cpp
+++ b/src/mame/drivers/ecoinf2.cpp
@@ -227,6 +227,8 @@ public:
DECLARE_MACHINE_START(ecoinf2);
void ecoinf2_oxo(machine_config &config);
+ void oxo_memmap(address_map &map);
+ void oxo_portmap(address_map &map);
};
@@ -235,12 +237,12 @@ WRITE8_MEMBER(ecoinf2_state::ox_port5c_out_w)
// Watchdog?
}
-static ADDRESS_MAP_START( oxo_memmap, AS_PROGRAM, 8, ecoinf2_state )
+ADDRESS_MAP_START(ecoinf2_state::oxo_memmap)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oxo_portmap, AS_IO, 8, ecoinf2_state )
+ADDRESS_MAP_START(ecoinf2_state::oxo_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_RAM // z180 internal area?
diff --git a/src/mame/drivers/ecoinf3.cpp b/src/mame/drivers/ecoinf3.cpp
index c032abdd12a..90b969d2c67 100644
--- a/src/mame/drivers/ecoinf3.cpp
+++ b/src/mame/drivers/ecoinf3.cpp
@@ -275,6 +275,8 @@ public:
DECLARE_DRIVER_INIT(ecoinf3);
DECLARE_DRIVER_INIT(ecoinf3_swap);
void ecoinf3_pyramid(machine_config &config);
+ void pyramid_memmap(address_map &map);
+ void pyramid_portmap(address_map &map);
};
@@ -429,12 +431,12 @@ WRITE8_MEMBER(ecoinf3_state::ppi8255_intf_e_write_a_alpha_display)
}
-static ADDRESS_MAP_START( pyramid_memmap, AS_PROGRAM, 8, ecoinf3_state )
+ADDRESS_MAP_START(ecoinf3_state::pyramid_memmap)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pyramid_portmap, AS_IO, 8, ecoinf3_state )
+ADDRESS_MAP_START(ecoinf3_state::pyramid_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_RAM // z180 internal area!
diff --git a/src/mame/drivers/ecoinfr.cpp b/src/mame/drivers/ecoinfr.cpp
index b955fc08f67..62a5cc51846 100644
--- a/src/mame/drivers/ecoinfr.cpp
+++ b/src/mame/drivers/ecoinfr.cpp
@@ -124,6 +124,8 @@ public:
required_device<stepper_device> m_reel2;
required_device<stepper_device> m_reel3;
void ecoinfr(machine_config &config);
+ void memmap(address_map &map);
+ void portmap(address_map &map);
};
@@ -474,7 +476,7 @@ WRITE8_MEMBER(ecoinfr_state::ec_port18_out_w)
}
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, ecoinfr_state )
+ADDRESS_MAP_START(ecoinfr_state::memmap)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
@@ -485,7 +487,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( portmap, AS_IO, 8, ecoinfr_state )
+ADDRESS_MAP_START(ecoinfr_state::portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(ec_port00_out_w) AM_READ_PORT("IN0") // Reel 1 Write
AM_RANGE(0x01, 0x01) AM_WRITE(ec_port01_out_w) AM_READ_PORT("IN1") // Reel 2 Write + Reels Opto Read
diff --git a/src/mame/drivers/egghunt.cpp b/src/mame/drivers/egghunt.cpp
index 476db76b011..ff0bac2e31a 100644
--- a/src/mame/drivers/egghunt.cpp
+++ b/src/mame/drivers/egghunt.cpp
@@ -98,6 +98,9 @@ public:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
void egghunt(machine_config &config);
+ void egghunt_map(address_map &map);
+ void io_map(address_map &map);
+ void sound_map(address_map &map);
};
@@ -235,7 +238,7 @@ WRITE8_MEMBER(egghunt_state::egghunt_okibanking_w)
m_oki->set_rom_bank((data >> 4) & 1);
}
-static ADDRESS_MAP_START( egghunt_map, AS_PROGRAM, 8, egghunt_state )
+ADDRESS_MAP_START(egghunt_state::egghunt_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(egghunt_atram_w) AM_SHARE("atram")
@@ -244,7 +247,7 @@ static ADDRESS_MAP_START( egghunt_map, AS_PROGRAM, 8, egghunt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, egghunt_state )
+ADDRESS_MAP_START(egghunt_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_WRITE(egghunt_vidram_bank_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(egghunt_gfx_banking_w)
@@ -255,7 +258,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, egghunt_state )
AM_RANGE(0x07, 0x07) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, egghunt_state )
+ADDRESS_MAP_START(egghunt_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xe001, 0xe001) AM_READWRITE(egghunt_okibanking_r, egghunt_okibanking_w)
diff --git a/src/mame/drivers/einstein.cpp b/src/mame/drivers/einstein.cpp
index 86b13ce5004..34ceb6caadc 100644
--- a/src/mame/drivers/einstein.cpp
+++ b/src/mame/drivers/einstein.cpp
@@ -108,6 +108,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(strobe_callback);
void einstein(machine_config &config);
+ void einstein_io(address_map &map);
+ void einstein_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -411,13 +413,13 @@ void einstein_state::machine_reset()
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( einstein_mem, AS_PROGRAM, 8, einstein_state )
+ADDRESS_MAP_START(einstein_state::einstein_mem)
AM_RANGE(0x0000, 0x07fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
AM_RANGE(0x8000, 0x0ffff) AM_RAMBANK("bank3")
ADDRESS_MAP_END
// I/O ports are decoded into 8 blocks using address lines A3 to A7
-static ADDRESS_MAP_START( einstein_io, AS_IO, 8, einstein_state )
+ADDRESS_MAP_START(einstein_state::einstein_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff04) AM_READWRITE(reset_r, reset_w)
AM_RANGE(0x02, 0x02) AM_MIRROR(0xff04) AM_DEVREADWRITE(IC_I030, ay8910_device, data_r, address_w)
diff --git a/src/mame/drivers/electron.cpp b/src/mame/drivers/electron.cpp
index 40cb9d437e0..97f509a7796 100644
--- a/src/mame/drivers/electron.cpp
+++ b/src/mame/drivers/electron.cpp
@@ -88,7 +88,7 @@ PALETTE_INIT_MEMBER(electron_state, electron)
palette.set_pen_colors(0, electron_palette, ARRAY_LENGTH(electron_palette));
}
-static ADDRESS_MAP_START(electron_mem, AS_PROGRAM, 8, electron_state )
+ADDRESS_MAP_START(electron_state::electron_mem)
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(electron_mem_r, electron_mem_w) /* 32KB of RAM */
AM_RANGE(0x8000, 0xbfff) AM_READWRITE(electron_paged_r, electron_paged_w) /* Banked ROM pages */
AM_RANGE(0xc000, 0xfbff) AM_ROM AM_REGION("mos", 0x0000) /* OS ROM */
diff --git a/src/mame/drivers/elekscmp.cpp b/src/mame/drivers/elekscmp.cpp
index 4ab1821c71a..4f60d6fb802 100644
--- a/src/mame/drivers/elekscmp.cpp
+++ b/src/mame/drivers/elekscmp.cpp
@@ -45,6 +45,7 @@ public:
uint8_t convert_key(uint8_t data);
void elekscmp(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_ioport m_x0;
@@ -95,7 +96,7 @@ READ8_MEMBER(elekscmp_state::keyboard_r)
return 0;
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, elekscmp_state)
+ADDRESS_MAP_START(elekscmp_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x0fff)
AM_RANGE(0x000, 0x5ff) AM_ROM // ROM
diff --git a/src/mame/drivers/elektronmono.cpp b/src/mame/drivers/elektronmono.cpp
index 44869b5bcd9..93d27b261aa 100644
--- a/src/mame/drivers/elektronmono.cpp
+++ b/src/mame/drivers/elektronmono.cpp
@@ -130,6 +130,7 @@ public:
DECLARE_DRIVER_INIT(elektron);
void elektron(machine_config &config);
+ void elektron_map(address_map &map);
};
void elekmono_state::machine_start()
@@ -140,7 +141,7 @@ void elekmono_state::machine_reset()
{
}
-static ADDRESS_MAP_START( elektron_map, AS_PROGRAM, 32, elekmono_state )
+ADDRESS_MAP_START(elekmono_state::elektron_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x00100000, 0x001fffff) AM_RAM // patch memory
AM_RANGE(0x00200000, 0x002fffff) AM_RAM // main RAM
diff --git a/src/mame/drivers/elf.cpp b/src/mame/drivers/elf.cpp
index d1035f144c4..d0f4a77519d 100644
--- a/src/mame/drivers/elf.cpp
+++ b/src/mame/drivers/elf.cpp
@@ -74,13 +74,13 @@ WRITE8_MEMBER( elf2_state::memory_w )
/* Memory Maps */
-static ADDRESS_MAP_START( elf2_mem, AS_PROGRAM, 8, elf2_state )
+ADDRESS_MAP_START(elf2_state::elf2_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x00ff) AM_RAMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( elf2_io, AS_IO, 8, elf2_state )
+ADDRESS_MAP_START(elf2_state::elf2_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x01, 0x01) AM_READ(dispon_r)
AM_RANGE(0x04, 0x04) AM_READWRITE(data_r, data_w)
diff --git a/src/mame/drivers/elwro800.cpp b/src/mame/drivers/elwro800.cpp
index 07fc12bd86c..60e08f31e88 100644
--- a/src/mame/drivers/elwro800.cpp
+++ b/src/mame/drivers/elwro800.cpp
@@ -68,6 +68,11 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_ack);
void elwro800(machine_config &config);
+ void elwro800_bank1(address_map &map);
+ void elwro800_bank2(address_map &map);
+ void elwro800_io(address_map &map);
+ void elwro800_m1(address_map &map);
+ void elwro800_mem(address_map &map);
protected:
required_device<i8251_device> m_i8251;
required_device<i8255_device> m_i8255;
@@ -364,30 +369,30 @@ WRITE8_MEMBER(elwro800_state::elwro800jr_io_w)
*
*************************************/
-static ADDRESS_MAP_START(elwro800_mem, AS_PROGRAM, 8, elwro800_state)
+ADDRESS_MAP_START(elwro800_state::elwro800_mem)
AM_RANGE(0x0000, 0x1fff) AM_DEVICE("bank1", address_map_bank_device, amap8)
AM_RANGE(0x2000, 0x3fff) AM_DEVICE("bank2", address_map_bank_device, amap8)
AM_RANGE(0x4000, 0xffff) AM_RAMBANK("rambank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(elwro800_io, AS_IO, 8, elwro800_state)
+ADDRESS_MAP_START(elwro800_state::elwro800_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(elwro800jr_io_r, elwro800jr_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(elwro800_m1, AS_OPCODES, 8, elwro800_state)
+ADDRESS_MAP_START(elwro800_state::elwro800_m1)
AM_RANGE(0x0000, 0x1fff) AM_DEVICE("bank1", address_map_bank_device, amap8)
AM_RANGE(0x0066, 0x0066) AM_READ(nmi_r)
AM_RANGE(0x2000, 0x3fff) AM_DEVICE("bank2", address_map_bank_device, amap8)
AM_RANGE(0x4000, 0xffff) AM_RAMBANK("rambank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(elwro800_bank1, AS_PROGRAM, 8, elwro800_state)
+ADDRESS_MAP_START(elwro800_state::elwro800_bank1)
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("rambank1")
AM_RANGE(0x2000, 0x3fff) AM_ROM AM_REGION("maincpu", 0x0000) AM_WRITENOP // BAS0 ROM
AM_RANGE(0x4000, 0x5fff) AM_ROM AM_REGION("maincpu", 0x4000) AM_WRITENOP // BOOT ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(elwro800_bank2, AS_PROGRAM, 8, elwro800_state)
+ADDRESS_MAP_START(elwro800_state::elwro800_bank2)
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("rambank2")
AM_RANGE(0x2000, 0x3fff) AM_ROM AM_REGION("maincpu", 0x2000) AM_WRITENOP // BAS1 ROM
ADDRESS_MAP_END
@@ -561,7 +566,7 @@ MACHINE_CONFIG_START(elwro800_state::elwro800)
MCFG_CPU_ADD("maincpu",Z80, 3500000) /* 3.5 MHz */
MCFG_CPU_PROGRAM_MAP(elwro800_mem)
MCFG_CPU_IO_MAP(elwro800_io)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(elwro800_m1)
+ MCFG_CPU_OPCODES_MAP(elwro800_m1)
MCFG_CPU_VBLANK_INT_DRIVER("screen", elwro800_state, elwro800jr_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(elwro800_state,elwro800)
diff --git a/src/mame/drivers/embargo.cpp b/src/mame/drivers/embargo.cpp
index b66ffe8d068..93e0763ae81 100644
--- a/src/mame/drivers/embargo.cpp
+++ b/src/mame/drivers/embargo.cpp
@@ -36,6 +36,9 @@ public:
uint32_t screen_update_embargo(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void embargo(machine_config &config);
+ void main_data_map(address_map &map);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
};
@@ -159,7 +162,7 @@ WRITE8_MEMBER(embargo_state::input_select_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, embargo_state )
+ADDRESS_MAP_START(embargo_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1e00, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("videoram")
@@ -173,13 +176,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, embargo_state )
+ADDRESS_MAP_START(embargo_state::main_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_WRITE(port_1_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(dial_r, port_2_w)
AM_RANGE(0x03, 0x03) AM_WRITENOP /* always 0xFE */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_data_map, AS_DATA, 8, embargo_state )
+ADDRESS_MAP_START(embargo_state::main_data_map)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ_PORT("IN2")
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(input_port_bit_r, input_select_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/enigma2.cpp b/src/mame/drivers/enigma2.cpp
index 82ad7b374a5..c14cb0c6f74 100644
--- a/src/mame/drivers/enigma2.cpp
+++ b/src/mame/drivers/enigma2.cpp
@@ -111,6 +111,10 @@ public:
void start_interrupt_timers( );
void enigma2(machine_config &config);
void enigma2a(machine_config &config);
+ void engima2_audio_cpu_map(address_map &map);
+ void engima2_main_cpu_map(address_map &map);
+ void engima2a_main_cpu_io_map(address_map &map);
+ void engima2a_main_cpu_map(address_map &map);
};
@@ -434,7 +438,7 @@ CUSTOM_INPUT_MEMBER(enigma2_state::p2_controls_r)
return ioport("P1CONTROLS")->read();
}
-static ADDRESS_MAP_START( engima2_main_cpu_map, AS_PROGRAM, 8, enigma2_state )
+ADDRESS_MAP_START(enigma2_state::engima2_main_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_WRITENOP
AM_RANGE(0x2000, 0x3fff) AM_MIRROR(0x4000) AM_RAM AM_SHARE("videoram")
@@ -450,7 +454,7 @@ static ADDRESS_MAP_START( engima2_main_cpu_map, AS_PROGRAM, 8, enigma2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( engima2a_main_cpu_map, AS_PROGRAM, 8, enigma2_state )
+ADDRESS_MAP_START(enigma2_state::engima2a_main_cpu_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_WRITENOP
AM_RANGE(0x2000, 0x3fff) AM_MIRROR(0x4000) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x4000, 0x4fff) AM_ROM AM_WRITENOP
@@ -459,7 +463,7 @@ static ADDRESS_MAP_START( engima2a_main_cpu_map, AS_PROGRAM, 8, enigma2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( engima2a_main_cpu_io_map, AS_IO, 8, enigma2_state )
+ADDRESS_MAP_START(enigma2_state::engima2a_main_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_NOP
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_WRITENOP
@@ -471,7 +475,7 @@ static ADDRESS_MAP_START( engima2a_main_cpu_io_map, AS_IO, 8, enigma2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( engima2_audio_cpu_map, AS_PROGRAM, 8, enigma2_state )
+ADDRESS_MAP_START(enigma2_state::engima2_audio_cpu_map)
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM AM_WRITENOP
AM_RANGE(0x2000, 0x7fff) AM_NOP
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x1c00) AM_RAM
diff --git a/src/mame/drivers/enmirage.cpp b/src/mame/drivers/enmirage.cpp
index 01f33e71461..481dd3b1d0e 100644
--- a/src/mame/drivers/enmirage.cpp
+++ b/src/mame/drivers/enmirage.cpp
@@ -75,6 +75,7 @@ public:
DECLARE_READ8_MEMBER(mirage_adc_read);
void mirage(machine_config &config);
+ void mirage_map(address_map &map);
protected:
virtual void machine_reset() override;
virtual void video_start() override;
@@ -122,7 +123,7 @@ void enmirage_state::machine_reset()
membank("sndbank")->set_base(memregion("es5503")->base() );
}
-static ADDRESS_MAP_START( mirage_map, AS_PROGRAM, 8, enmirage_state )
+ADDRESS_MAP_START(enmirage_state::mirage_map)
AM_RANGE(0x0000, 0x7fff) AM_RAMBANK("sndbank") // 32k window on 128k of wave RAM
AM_RANGE(0x8000, 0xbfff) AM_RAM // main RAM
AM_RANGE(0xc000, 0xdfff) AM_RAM // expansion RAM
diff --git a/src/mame/drivers/eolith.cpp b/src/mame/drivers/eolith.cpp
index 22305603d67..77b04c642b2 100644
--- a/src/mame/drivers/eolith.cpp
+++ b/src/mame/drivers/eolith.cpp
@@ -239,7 +239,7 @@ WRITE8_MEMBER(eolith_state::soundcpu_to_qs1000)
*
*************************************/
-static ADDRESS_MAP_START( eolith_map, AS_PROGRAM, 32, eolith_state )
+ADDRESS_MAP_START(eolith_state::eolith_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM // fort2b wants ram here
AM_RANGE(0x40000000, 0x401fffff) AM_RAM
AM_RANGE(0x90000000, 0x9003ffff) AM_READWRITE(eolith_vram_r, eolith_vram_w)
@@ -259,11 +259,11 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_prg_map, AS_PROGRAM, 8, eolith_state )
+ADDRESS_MAP_START(eolith_state::sound_prg_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, eolith_state )
+ADDRESS_MAP_START(eolith_state::sound_io_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("sound_bank")
AM_RANGE(0x8000, 0x8000) AM_READ(sound_cmd_r)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(sound_p1_w)
diff --git a/src/mame/drivers/eolith16.cpp b/src/mame/drivers/eolith16.cpp
index 09833ece4a7..f7da712e349 100644
--- a/src/mame/drivers/eolith16.cpp
+++ b/src/mame/drivers/eolith16.cpp
@@ -41,6 +41,7 @@ public:
uint32_t screen_update_eolith16(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void eolith16(machine_config &config);
+ void eolith16_map(address_map &map);
};
@@ -73,7 +74,7 @@ READ16_MEMBER(eolith16_state::vram_r)
return m_vram[offset + (0x10000/2) * m_vbuffer];
}
-static ADDRESS_MAP_START( eolith16_map, AS_PROGRAM, 16, eolith16_state )
+ADDRESS_MAP_START(eolith16_state::eolith16_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM
AM_RANGE(0x50000000, 0x5000ffff) AM_READWRITE(vram_r, vram_w)
AM_RANGE(0x90000000, 0x9000002f) AM_WRITENOP //?
diff --git a/src/mame/drivers/ep64.cpp b/src/mame/drivers/ep64.cpp
index 49f007af9e9..65c083d3b5e 100644
--- a/src/mame/drivers/ep64.cpp
+++ b/src/mame/drivers/ep64.cpp
@@ -219,6 +219,11 @@ public:
int m_centronics_busy;
void ep128(machine_config &config);
void ep64(machine_config &config);
+ void dave_128k_mem(address_map &map);
+ void dave_64k_mem(address_map &map);
+ void dave_io(address_map &map);
+ void ep64_io(address_map &map);
+ void ep64_mem(address_map &map);
};
@@ -358,7 +363,7 @@ WRITE8_MEMBER( ep64_state::wr2_w )
// ADDRESS_MAP( ep64_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( ep64_mem, AS_PROGRAM, 8, ep64_state )
+ADDRESS_MAP_START(ep64_state::ep64_mem)
AM_RANGE(0x0000, 0xffff) AM_DEVICE(DAVE_TAG, dave_device, z80_program_map)
ADDRESS_MAP_END
@@ -367,7 +372,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ep64_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( ep64_io, AS_IO, 8, ep64_state )
+ADDRESS_MAP_START(ep64_state::ep64_io)
AM_RANGE(0x0000, 0xffff) AM_DEVICE(DAVE_TAG, dave_device, z80_io_map)
ADDRESS_MAP_END
@@ -376,7 +381,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( dave_64k_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( dave_64k_mem, AS_PROGRAM, 8, ep64_state )
+ADDRESS_MAP_START(ep64_state::dave_64k_mem)
AM_RANGE(0x000000, 0x007fff) AM_ROM AM_REGION(Z80_TAG, 0)
//AM_RANGE(0x010000, 0x01ffff) // mapped by the cartslot
AM_RANGE(0x3f0000, 0x3fffff) AM_DEVICE(NICK_TAG, nick_device, vram_map)
@@ -387,7 +392,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( dave_128k_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( dave_128k_mem, AS_PROGRAM, 8, ep64_state )
+ADDRESS_MAP_START(ep64_state::dave_128k_mem)
AM_IMPORT_FROM(dave_64k_mem)
AM_RANGE(0x3e0000, 0x3effff) AM_RAM
ADDRESS_MAP_END
@@ -397,7 +402,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( dave_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( dave_io, AS_IO, 8, ep64_state )
+ADDRESS_MAP_START(ep64_state::dave_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x8f) AM_DEVICE(NICK_TAG, nick_device, vio_map)
AM_RANGE(0xb5, 0xb5) AM_READWRITE(rd0_r, wr0_w)
diff --git a/src/mame/drivers/epos.cpp b/src/mame/drivers/epos.cpp
index 9ba4f64b3e6..44e0dbabcb6 100644
--- a/src/mame/drivers/epos.cpp
+++ b/src/mame/drivers/epos.cpp
@@ -70,13 +70,13 @@ WRITE8_MEMBER(epos_state::dealer_decrypt_rom)
*
*************************************/
-static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8, epos_state )
+ADDRESS_MAP_START(epos_state::epos_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dealer_map, AS_PROGRAM, 8, epos_state )
+ADDRESS_MAP_START(epos_state::dealer_map)
AM_RANGE(0x0000, 0x5fff) AM_ROMBANK("bank1")
AM_RANGE(0x6000, 0x6fff) AM_ROMBANK("bank2")
AM_RANGE(0x7000, 0x7fff) AM_RAM AM_SHARE("nvram")
@@ -89,7 +89,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( epos_io_map, AS_IO, 8, epos_state )
+ADDRESS_MAP_START(epos_state::epos_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW") AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(port_1_w)
@@ -98,7 +98,7 @@ static ADDRESS_MAP_START( epos_io_map, AS_IO, 8, epos_state )
AM_RANGE(0x06, 0x06) AM_DEVWRITE("aysnd", ay8910_device, address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dealer_io_map, AS_IO, 8, epos_state )
+ADDRESS_MAP_START(epos_state::dealer_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_WRITE(dealer_pal_w)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
diff --git a/src/mame/drivers/eprom.cpp b/src/mame/drivers/eprom.cpp
index 662f6210dff..86422a9c866 100644
--- a/src/mame/drivers/eprom.cpp
+++ b/src/mame/drivers/eprom.cpp
@@ -145,7 +145,7 @@ template<bool maincpu> WRITE16_MEMBER(eprom_state::sync_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, eprom_state )
+ADDRESS_MAP_START(eprom_state::main_map)
AM_RANGE(0x000000, 0x09ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, eprom_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( guts_map, AS_PROGRAM, 16, eprom_state )
+ADDRESS_MAP_START(eprom_state::guts_map)
AM_RANGE(0x000000, 0x09ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
@@ -202,7 +202,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16, eprom_state )
+ADDRESS_MAP_START(eprom_state::extra_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x16cc00, 0x16cc01) AM_READWRITE(sync_r, sync_w<false>) AM_SHARE("sync_data")
diff --git a/src/mame/drivers/equites.cpp b/src/mame/drivers/equites.cpp
index 1c7f72adc1e..aa4a933bbb4 100644
--- a/src/mame/drivers/equites.cpp
+++ b/src/mame/drivers/equites.cpp
@@ -364,7 +364,6 @@ D
#include "cpu/alph8201/alph8201.h"
#include "cpu/i8085/i8085.h"
#include "cpu/m68000/m68000.h"
-#include "machine/74259.h"
#include "machine/i8155.h"
#include "machine/nvram.h"
#include "machine/watchdog.h"
@@ -641,7 +640,7 @@ WRITE_LINE_MEMBER(equites_state::mcu_switch_w)
/******************************************************************************/
// CPU Memory Maps
-static ADDRESS_MAP_START( equites_map, AS_PROGRAM, 16, equites_state )
+ADDRESS_MAP_START(equites_state::equites_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM area is written several times (dev system?)
AM_RANGE(0x040000, 0x040fff) AM_RAM
@@ -652,27 +651,27 @@ static ADDRESS_MAP_START( equites_map, AS_PROGRAM, 16, equites_state )
AM_RANGE(0x100000, 0x100001) AM_READ(equites_spriteram_kludge_r)
AM_RANGE(0x140000, 0x1407ff) AM_READWRITE8(mcu_ram_r, mcu_ram_w, 0x00ff)
AM_RANGE(0x180000, 0x180001) AM_READ_PORT("IN1") AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
- AM_RANGE(0x180000, 0x180001) AM_SELECT(0x03c000) AM_DEVWRITE8_MOD("mainlatch", ls259_device, write_a3, rshift<13>, 0xff00)
+ ;map(0x180000, 0x180001).select(0x03c000).lw8("mainlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_mainlatch->write_a3(space, offset >> 13, data, mem_mask); }).umask16(0xff00);
AM_RANGE(0x1c0000, 0x1c0001) AM_READ_PORT("IN0") AM_WRITE(equites_scrollreg_w)
AM_RANGE(0x380000, 0x380001) AM_WRITE8(equites_bgcolor_w, 0xff00)
AM_RANGE(0x780000, 0x780001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gekisou_map, AS_PROGRAM, 16, equites_state )
+ADDRESS_MAP_START(equites_state::gekisou_map)
AM_IMPORT_FROM( equites_map )
AM_RANGE(0x040000, 0x040fff) AM_RAM AM_SHARE("nvram") // mainram is battery-backed
AM_RANGE(0x580000, 0x580001) AM_SELECT(0x020000) AM_WRITE(gekisou_unknown_bit_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( splndrbt_map, AS_PROGRAM, 16, equites_state )
+ADDRESS_MAP_START(equites_state::splndrbt_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x040fff) AM_RAM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x0c0000, 0x0c0001) AM_READ_PORT("IN1")
AM_RANGE(0x0c0000, 0x0c0001) AM_SELECT(0x020000) AM_WRITE8(equites_bgcolor_w, 0xff00)
- AM_RANGE(0x0c0000, 0x0c0001) AM_SELECT(0x03c000) AM_DEVWRITE8_MOD("mainlatch", ls259_device, write_a3, rshift<13>, 0x00ff)
+ ;map(0x180000, 0x180001).select(0x03c000).lw8("mainlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_mainlatch->write_a3(space, offset >> 13, data, mem_mask); }).umask16(0xff00);
AM_RANGE(0x100000, 0x100001) AM_WRITE(splndrbt_bg_scrollx_w)
AM_RANGE(0x140000, 0x140001) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
AM_RANGE(0x1c0000, 0x1c0001) AM_WRITE(splndrbt_bg_scrolly_w)
@@ -685,7 +684,7 @@ static ADDRESS_MAP_START( splndrbt_map, AS_PROGRAM, 16, equites_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, equites_state )
+ADDRESS_MAP_START(equites_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xc080, 0xc08d) AM_DEVWRITE("msm", msm5232_device, write)
@@ -698,12 +697,12 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, equites_state )
AM_RANGE(0xe000, 0xe0ff) AM_DEVREADWRITE("audio8155", i8155_device, memory_r, memory_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, equites_state )
+ADDRESS_MAP_START(equites_state::sound_portmap)
AM_RANGE(0x00e0, 0x00e7) AM_DEVREADWRITE("audio8155", i8155_device, io_r, io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, equites_state )
+ADDRESS_MAP_START(equites_state::mcu_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("mcuram") /* main CPU shared RAM */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ertictac.cpp b/src/mame/drivers/ertictac.cpp
index 535f778b00d..9ada51a3550 100644
--- a/src/mame/drivers/ertictac.cpp
+++ b/src/mame/drivers/ertictac.cpp
@@ -42,6 +42,7 @@ public:
virtual void machine_reset() override;
INTERRUPT_GEN_MEMBER(ertictac_podule_irq);
void ertictac(machine_config &config);
+ void ertictac_map(address_map &map);
};
@@ -61,7 +62,7 @@ READ32_MEMBER(ertictac_state::ertictac_podule_r)
return 0;
}
-static ADDRESS_MAP_START( ertictac_map, AS_PROGRAM, 32, ertictac_state )
+ADDRESS_MAP_START(ertictac_state::ertictac_map)
AM_RANGE(0x00000000, 0x01ffffff) AM_READWRITE(archimedes_memc_logical_r, archimedes_memc_logical_w)
AM_RANGE(0x02000000, 0x02ffffff) AM_RAM AM_SHARE("physicalram") /* physical RAM - 16 MB for now, should be 512k for the A310 */
diff --git a/src/mame/drivers/esd16.cpp b/src/mame/drivers/esd16.cpp
index a1b4f154952..f91fa12965a 100644
--- a/src/mame/drivers/esd16.cpp
+++ b/src/mame/drivers/esd16.cpp
@@ -157,7 +157,7 @@ WRITE16_MEMBER(esd16_state::esd_eeprom_w)
AM_RANGE(_BASE + 0x20000, _BASE + 0x23fff) AM_WRITE(esd16_vram_1_w) AM_SHARE("vram_1") AM_MIRROR(0x4000)
/*** Memory Maps ***/
-static ADDRESS_MAP_START( multchmp_map, AS_PROGRAM, 16, esd16_state )
+ADDRESS_MAP_START(esd16_state::multchmp_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( multchmp_map, AS_PROGRAM, 16, esd16_state )
AM_RANGE(0x700008, 0x70000b) AM_READNOP // unused protection?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jumppop_map, AS_PROGRAM, 16, esd16_state )
+ADDRESS_MAP_START(esd16_state::jumppop_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x120000, 0x123fff) AM_RAM
AM_RANGE(0x1a0000, 0x1a7fff) AM_RAM
@@ -184,7 +184,7 @@ static ADDRESS_MAP_START( jumppop_map, AS_PROGRAM, 16, esd16_state )
ESD16_VID_ATTR_AREA( 0x380000 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hedpanic_map, AS_PROGRAM, 16, esd16_state )
+ADDRESS_MAP_START(esd16_state::hedpanic_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
@@ -199,7 +199,7 @@ ADDRESS_MAP_END
/* Multi Champ Deluxe, like Head Panic but different addresses */
-static ADDRESS_MAP_START( mchampdx_map, AS_PROGRAM, 16, esd16_state )
+ADDRESS_MAP_START(esd16_state::mchampdx_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -214,7 +214,7 @@ ADDRESS_MAP_END
/* Tang Tang & Deluxe 5 - like the others but again with different addresses */
-static ADDRESS_MAP_START( tangtang_map, AS_PROGRAM, 16, esd16_state )
+ADDRESS_MAP_START(esd16_state::tangtang_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x700000, 0x70ffff) AM_RAM
@@ -241,7 +241,7 @@ WRITE8_MEMBER(esd16_state::esd16_sound_rombank_w)
membank("bank1")->set_entry(bank);
}
-static ADDRESS_MAP_START( multchmp_sound_map, AS_PROGRAM, 8, esd16_state )
+ADDRESS_MAP_START(esd16_state::multchmp_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
AM_RANGE(0xf800, 0xffff) AM_RAM // RAM
@@ -254,7 +254,7 @@ READ8_MEMBER(esd16_state::esd16_sound_command_r)
return m_soundlatch->read(space, 0);
}
-static ADDRESS_MAP_START( multchmp_sound_io_map, AS_IO, 8, esd16_state )
+ADDRESS_MAP_START(esd16_state::multchmp_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3812_device, write) // YM3812
AM_RANGE(0x02, 0x02) AM_DEVREADWRITE("oki", okim6295_device, read, write) // M6295
diff --git a/src/mame/drivers/esh.cpp b/src/mame/drivers/esh.cpp
index 3d0e80247d5..8182b20d16b 100644
--- a/src/mame/drivers/esh.cpp
+++ b/src/mame/drivers/esh.cpp
@@ -70,6 +70,8 @@ public:
required_device<palette_device> m_palette;
void esh(machine_config &config);
+ void z80_0_io(address_map &map);
+ void z80_0_mem(address_map &map);
protected:
//virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -208,7 +210,7 @@ WRITE8_MEMBER(esh_state::nmi_line_w)
/* PROGRAM MAPS */
-static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8, esh_state )
+ADDRESS_MAP_START(esh_state::z80_0_mem)
AM_RANGE(0x0000,0x3fff) AM_ROM
AM_RANGE(0xe000,0xe7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xf000,0xf3ff) AM_RAM AM_SHARE("tile_ram")
@@ -217,7 +219,7 @@ ADDRESS_MAP_END
/* IO MAPS */
-static ADDRESS_MAP_START( z80_0_io, AS_IO, 8, esh_state )
+ADDRESS_MAP_START(esh_state::z80_0_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0,0xf0) AM_READ_PORT("IN0")
AM_RANGE(0xf1,0xf1) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/espial.cpp b/src/mame/drivers/espial.cpp
index 58ffb2d6c96..3d2c69a03e9 100644
--- a/src/mame/drivers/espial.cpp
+++ b/src/mame/drivers/espial.cpp
@@ -101,7 +101,7 @@ WRITE8_MEMBER(espial_state::espial_master_soundlatch_w)
}
-static ADDRESS_MAP_START( espial_map, AS_PROGRAM, 8, espial_state )
+ADDRESS_MAP_START(espial_state::espial_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0x5800, 0x5fff) AM_RAM
AM_RANGE(0x6081, 0x6081) AM_READ_PORT("IN0")
@@ -126,7 +126,7 @@ ADDRESS_MAP_END
/* there are a lot of unmapped reads from all over memory as the
code uses POP instructions in a delay loop */
-static ADDRESS_MAP_START( netwars_map, AS_PROGRAM, 8, espial_state )
+ADDRESS_MAP_START(espial_state::netwars_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x5800, 0x5fff) AM_RAM
AM_RANGE(0x6081, 0x6081) AM_READ_PORT("IN0")
@@ -147,14 +147,14 @@ static ADDRESS_MAP_START( netwars_map, AS_PROGRAM, 8, espial_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( espial_sound_map, AS_PROGRAM, 8, espial_state )
+ADDRESS_MAP_START(espial_state::espial_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_WRITE(espial_sound_nmi_mask_w)
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( espial_sound_io_map, AS_IO, 8, espial_state )
+ADDRESS_MAP_START(espial_state::espial_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/esprit.cpp b/src/mame/drivers/esprit.cpp
index 4dec8e34845..9d11fdcc67f 100644
--- a/src/mame/drivers/esprit.cpp
+++ b/src/mame/drivers/esprit.cpp
@@ -34,6 +34,8 @@ public:
void esprit(machine_config &config);
void esprit3(machine_config &config);
+ void mem3_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_region_ptr<u8> m_p_chargen;
@@ -41,7 +43,7 @@ private:
optional_device<palette_device> m_palette;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, esprit_state )
+ADDRESS_MAP_START(esprit_state::mem_map)
ADDRESS_MAP_GLOBAL_MASK (0x7fff)
AM_RANGE(0x0058,0x0058) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
AM_RANGE(0x0059,0x0059) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
@@ -50,7 +52,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, esprit_state )
AM_RANGE(0x7000,0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mem3_map, AS_PROGRAM, 8, esprit_state )
+ADDRESS_MAP_START(esprit_state::mem3_map)
AM_RANGE(0x0000,0x202f) AM_RAM
AM_RANGE(0x2030,0x3fff) AM_RAM AM_SHARE("videoram") // it might start at 3000
AM_RANGE(0x81c0,0x81c0) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
diff --git a/src/mame/drivers/esq1.cpp b/src/mame/drivers/esq1.cpp
index 194f927dcdd..5da25191d24 100644
--- a/src/mame/drivers/esq1.cpp
+++ b/src/mame/drivers/esq1.cpp
@@ -427,6 +427,8 @@ public:
void send_through_panel(uint8_t data);
void esq1(machine_config &config);
void sq80(machine_config &config);
+ void esq1_map(address_map &map);
+ void sq80_map(address_map &map);
};
@@ -501,7 +503,7 @@ WRITE8_MEMBER(esq1_state::seqdosram_w)
}
}
-static ADDRESS_MAP_START( esq1_map, AS_PROGRAM, 8, esq1_state )
+ADDRESS_MAP_START(esq1_state::esq1_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM // OSRAM
AM_RANGE(0x4000, 0x5fff) AM_RAM // SEQRAM
AM_RANGE(0x6000, 0x63ff) AM_DEVREADWRITE("es5503", es5503_device, read, write)
@@ -511,7 +513,7 @@ static ADDRESS_MAP_START( esq1_map, AS_PROGRAM, 8, esq1_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("osrom", 0x8000) // OS "high" ROM is always mapped here
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sq80_map, AS_PROGRAM, 8, esq1_state )
+ADDRESS_MAP_START(esq1_state::sq80_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM // OSRAM
AM_RANGE(0x4000, 0x5fff) AM_RAM // SEQRAM
// AM_RANGE(0x4000, 0x5fff) AM_READWRITE(seqdosram_r, seqdosram_w)
diff --git a/src/mame/drivers/esq5505.cpp b/src/mame/drivers/esq5505.cpp
index 0fa9a89d971..12b61fae460 100644
--- a/src/mame/drivers/esq5505.cpp
+++ b/src/mame/drivers/esq5505.cpp
@@ -223,6 +223,10 @@ public:
void vfxsd(machine_config &config);
void eps(machine_config &config);
void vfx32(machine_config &config);
+ void eps_map(address_map &map);
+ void sq1_map(address_map &map);
+ void vfx_map(address_map &map);
+ void vfxsd_map(address_map &map);
private:
uint16_t *m_rom, *m_ram;
uint16_t m_analog_values[8];
@@ -377,7 +381,7 @@ WRITE16_MEMBER(esq5505_state::lower_w)
}
}
-static ADDRESS_MAP_START( vfx_map, AS_PROGRAM, 16, esq5505_state )
+ADDRESS_MAP_START(esq5505_state::vfx_map)
AM_RANGE(0x000000, 0x007fff) AM_READWRITE(lower_r, lower_w)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE("otis", es5505_device, read, write)
AM_RANGE(0x280000, 0x28001f) AM_DEVREADWRITE8("duart", mc68681_device, read, write, 0x00ff)
@@ -386,7 +390,7 @@ static ADDRESS_MAP_START( vfx_map, AS_PROGRAM, 16, esq5505_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("osram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vfxsd_map, AS_PROGRAM, 16, esq5505_state )
+ADDRESS_MAP_START(esq5505_state::vfxsd_map)
AM_RANGE(0x000000, 0x00ffff) AM_READWRITE(lower_r, lower_w)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE("otis", es5505_device, read, write)
AM_RANGE(0x280000, 0x28001f) AM_DEVREADWRITE8("duart", mc68681_device, read, write, 0x00ff)
@@ -397,7 +401,7 @@ static ADDRESS_MAP_START( vfxsd_map, AS_PROGRAM, 16, esq5505_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("osram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eps_map, AS_PROGRAM, 16, esq5505_state )
+ADDRESS_MAP_START(esq5505_state::eps_map)
AM_RANGE(0x000000, 0x007fff) AM_READWRITE(lower_r, lower_w)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE("otis", es5505_device, read, write)
AM_RANGE(0x240000, 0x2400ff) AM_DEVREADWRITE("mc68450", hd63450_device, read, write)
@@ -408,7 +412,7 @@ static ADDRESS_MAP_START( eps_map, AS_PROGRAM, 16, esq5505_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("osram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sq1_map, AS_PROGRAM, 16, esq5505_state )
+ADDRESS_MAP_START(esq5505_state::sq1_map)
AM_RANGE(0x000000, 0x03ffff) AM_READWRITE(lower_r, lower_w)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE("otis", es5505_device, read, write)
AM_RANGE(0x260000, 0x2601ff) AM_DEVREADWRITE8("esp", es5510_device, host_r, host_w, 0x0ff)
diff --git a/src/mame/drivers/esqasr.cpp b/src/mame/drivers/esqasr.cpp
index 3ed482cf3a4..fcaa4a8924f 100644
--- a/src/mame/drivers/esqasr.cpp
+++ b/src/mame/drivers/esqasr.cpp
@@ -69,18 +69,20 @@ public:
DECLARE_READ16_MEMBER(esq5506_read_adc);
void asrx(machine_config &config);
void asr(machine_config &config);
+ void asr_map(address_map &map);
+ void asrx_map(address_map &map);
};
void esqasr_state::machine_reset()
{
}
-static ADDRESS_MAP_START( asr_map, AS_PROGRAM, 16, esqasr_state )
+ADDRESS_MAP_START(esqasr_state::asr_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xf00000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( asrx_map, AS_PROGRAM, 32, esqasr_state )
+ADDRESS_MAP_START(esqasr_state::asrx_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x08000000, 0x081fffff) AM_RAM
AM_RANGE(0x0be00000, 0x0befffff) AM_RAM
diff --git a/src/mame/drivers/esqkt.cpp b/src/mame/drivers/esqkt.cpp
index db8a4ed29df..6c3f3bfdbd8 100644
--- a/src/mame/drivers/esqkt.cpp
+++ b/src/mame/drivers/esqkt.cpp
@@ -133,6 +133,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(esq5506_otto_irq);
DECLARE_READ16_MEMBER(esq5506_read_adc);
void kt(machine_config &config);
+ void kt_map(address_map &map);
};
void esqkt_state::machine_reset()
@@ -140,7 +141,7 @@ void esqkt_state::machine_reset()
m_bCalibSecondByte = false;
}
-static ADDRESS_MAP_START( kt_map, AS_PROGRAM, 32, esqkt_state )
+ADDRESS_MAP_START(esqkt_state::kt_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_REGION("osrom", 0)
AM_RANGE(0x200000, 0x20003f) AM_DEVREADWRITE8("ensoniq", es5506_device, read, write, 0xffffffff)
AM_RANGE(0x240000, 0x24003f) AM_DEVREADWRITE8("ensoniq2", es5506_device, read, write, 0xffffffff)
diff --git a/src/mame/drivers/esqmr.cpp b/src/mame/drivers/esqmr.cpp
index 1593fe49f13..5ebb9ce9b97 100644
--- a/src/mame/drivers/esqmr.cpp
+++ b/src/mame/drivers/esqmr.cpp
@@ -227,13 +227,14 @@ public:
DECLARE_WRITE_LINE_MEMBER(esq5506_otto_irq);
DECLARE_READ16_MEMBER(esq5506_read_adc);
void mr(machine_config &config);
+ void mr_map(address_map &map);
};
void esqmr_state::machine_reset()
{
}
-static ADDRESS_MAP_START( mr_map, AS_PROGRAM, 32, esqmr_state )
+ADDRESS_MAP_START(esqmr_state::mr_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("maincpu", 0)
// AM_RANGE(0x200000, 0x20003f) AM_DEVREADWRITE8("ensoniq", es5506_device, read, write, 0xffffffff)
// AM_RANGE(0x240000, 0x24003f) AM_DEVREADWRITE8("ensoniq2", es5506_device, read, write, 0xffffffff)
diff --git a/src/mame/drivers/esripsys.cpp b/src/mame/drivers/esripsys.cpp
index d00929c3074..271434ce9c9 100644
--- a/src/mame/drivers/esripsys.cpp
+++ b/src/mame/drivers/esripsys.cpp
@@ -564,7 +564,7 @@ WRITE8_MEMBER(esripsys_state::esripsys_dac_w)
*
*************************************/
-static ADDRESS_MAP_START( game_cpu_map, AS_PROGRAM, 8, esripsys_state )
+ADDRESS_MAP_START(esripsys_state::game_cpu_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x4000, 0x42ff) AM_RAM AM_SHARE("pal_ram")
AM_RANGE(0x4300, 0x4300) AM_WRITE(esripsys_bg_intensity_w)
@@ -579,7 +579,7 @@ static ADDRESS_MAP_START( game_cpu_map, AS_PROGRAM, 8, esripsys_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( frame_cpu_map, AS_PROGRAM, 8, esripsys_state )
+ADDRESS_MAP_START(esripsys_state::frame_cpu_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x4000, 0x4fff) AM_READWRITE(fdt_r, fdt_w)
AM_RANGE(0x6000, 0x6000) AM_READWRITE(f_status_r, f_status_w)
@@ -588,7 +588,7 @@ static ADDRESS_MAP_START( frame_cpu_map, AS_PROGRAM, 8, esripsys_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8, esripsys_state )
+ADDRESS_MAP_START(esripsys_state::sound_cpu_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_RAM // Not installed on later PCBs
AM_RANGE(0x2008, 0x2009) AM_READWRITE(tms5220_r, tms5220_w)
@@ -605,7 +605,7 @@ static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8, esripsys_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( video_cpu_map, AS_PROGRAM, 64, esripsys_state )
+ADDRESS_MAP_START(esripsys_state::video_cpu_map)
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/et3400.cpp b/src/mame/drivers/et3400.cpp
index 91ec6e087a4..ad607a59f73 100644
--- a/src/mame/drivers/et3400.cpp
+++ b/src/mame/drivers/et3400.cpp
@@ -57,6 +57,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(reset_key_w);
DECLARE_WRITE_LINE_MEMBER(segment_test_w);
void et3400(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<pia6821_device> m_pia;
@@ -124,7 +125,7 @@ WRITE8_MEMBER(et3400_state::pia_bw)
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, et3400_state)
+ADDRESS_MAP_START(et3400_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_RAM
AM_RANGE( 0x1000, 0x1003 ) AM_MIRROR(0x03fc) AM_DEVREADWRITE("pia", pia6821_device, read, write)
diff --git a/src/mame/drivers/eti660.cpp b/src/mame/drivers/eti660.cpp
index d22c6afe2a0..9955e428df7 100644
--- a/src/mame/drivers/eti660.cpp
+++ b/src/mame/drivers/eti660.cpp
@@ -80,7 +80,7 @@ WRITE8_MEMBER( eti660_state::colorram_w )
/* Memory Maps */
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, eti660_state )
+ADDRESS_MAP_START(eti660_state::mem_map)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0400, 0x047f) AM_RAM
@@ -88,7 +88,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, eti660_state )
AM_RANGE(0x0600, 0x0fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, eti660_state )
+ADDRESS_MAP_START(eti660_state::io_map)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE(CDP1864_TAG, cdp1864_device, dispon_r, step_bgcolor_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(pia_r, pia_w)
AM_RANGE(0x03, 0x03) AM_WRITE(colorram_w)
diff --git a/src/mame/drivers/ettrivia.cpp b/src/mame/drivers/ettrivia.cpp
index d2a4432d6fa..2a4d8a7eaa4 100644
--- a/src/mame/drivers/ettrivia.cpp
+++ b/src/mame/drivers/ettrivia.cpp
@@ -76,6 +76,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device_array<ay8912_device, 3> m_ay;
void ettrivia(machine_config &config);
+ void cpu_map(address_map &map);
+ void io_map(address_map &map);
};
@@ -153,7 +155,7 @@ WRITE8_MEMBER(ettrivia_state::b800_w)
m_b800_prev = data;
}
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, ettrivia_state )
+ADDRESS_MAP_START(ettrivia_state::cpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x9000, 0x9000) AM_WRITE(ettrivia_control_w)
@@ -165,7 +167,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, ettrivia_state )
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(ettrivia_bg_w) AM_SHARE("bg_videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, ettrivia_state )
+ADDRESS_MAP_START(ettrivia_state::io_map)
AM_RANGE(0x0000, 0xffff) AM_READ(ettrivia_question_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/eurocom2.cpp b/src/mame/drivers/eurocom2.cpp
index 701184c75d1..5944abfb31c 100644
--- a/src/mame/drivers/eurocom2.cpp
+++ b/src/mame/drivers/eurocom2.cpp
@@ -93,6 +93,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(pia1_cb2_w);
void eurocom2(machine_config &config);
+ void eurocom2_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_reset() override;
@@ -141,6 +142,7 @@ public:
DECLARE_WRITE8_MEMBER(waveterm_dac);
void waveterm(machine_config &config);
+ void waveterm_map(address_map &map);
protected:
bool m_driveh;
uint8_t m_drive;
@@ -328,7 +330,7 @@ uint32_t eurocom2_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
return 0;
}
-static ADDRESS_MAP_START(eurocom2_map, AS_PROGRAM, 8, eurocom2_state)
+ADDRESS_MAP_START(eurocom2_state::eurocom2_map)
AM_RANGE(0x0000, 0xefff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xf000, 0xfcef) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xfcf0, 0xfcf3) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -340,7 +342,7 @@ static ADDRESS_MAP_START(eurocom2_map, AS_PROGRAM, 8, eurocom2_state)
AM_RANGE(0xfd40, 0xffff) AM_ROM AM_REGION("maincpu", 0xd40) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START(waveterm_map, AS_PROGRAM, 8, waveterm_state)
+ADDRESS_MAP_START(waveterm_state::waveterm_map)
AM_IMPORT_FROM(eurocom2_map)
AM_RANGE(0xfd00, 0xfd03) AM_DEVREADWRITE("pia3", pia6821_device, read, write)
AM_RANGE(0xfd08, 0xfd0f) AM_DEVREADWRITE("ptm", ptm6840_device, read, write)
diff --git a/src/mame/drivers/europc.cpp b/src/mame/drivers/europc.cpp
index 39bf4b088ec..6dde362ff24 100644
--- a/src/mame/drivers/europc.cpp
+++ b/src/mame/drivers/europc.cpp
@@ -88,6 +88,8 @@ public:
void europc(machine_config &config);
void europc2(machine_config &config);
void euroxt(machine_config &config);
+ void europc_io(address_map &map);
+ void europc_map(address_map &map);
};
/*
@@ -494,12 +496,12 @@ static INPUT_PORTS_START( europc )
PORT_BIT(0xfffe, IP_ACTIVE_HIGH, IPT_UNUSED)
INPUT_PORTS_END
-static ADDRESS_MAP_START( europc_map, AS_PROGRAM, 8, europc_pc_state )
+ADDRESS_MAP_START(europc_pc_state::europc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(europc_io, AS_IO, 8, europc_pc_state )
+ADDRESS_MAP_START(europc_pc_state::europc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", pc_noppi_mb_device, map)
AM_RANGE(0x0060, 0x0063) AM_READWRITE(europc_pio_r, europc_pio_w)
diff --git a/src/mame/drivers/evmbug.cpp b/src/mame/drivers/evmbug.cpp
index 5b2472f3b39..550aeddf845 100644
--- a/src/mame/drivers/evmbug.cpp
+++ b/src/mame/drivers/evmbug.cpp
@@ -36,6 +36,8 @@ public:
void kbd_put(u8 data);
void evmbug(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
uint8_t m_term_data;
@@ -46,12 +48,12 @@ private:
required_device<generic_terminal_device> m_terminal;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, evmbug_state )
+ADDRESS_MAP_START(evmbug_state::mem_map)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0xec00, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, evmbug_state )
+ADDRESS_MAP_START(evmbug_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x0000, 0x0003) AM_DEVREAD("uart1", tms9902_device, cruread)
//AM_RANGE(0x0000, 0x001f) AM_DEVWRITE("uart1", tms9902_device, cruwrite)
diff --git a/src/mame/drivers/excali64.cpp b/src/mame/drivers/excali64.cpp
index afe1fcdfd5a..13d7e6deb8b 100644
--- a/src/mame/drivers/excali64.cpp
+++ b/src/mame/drivers/excali64.cpp
@@ -96,6 +96,8 @@ public:
required_device<palette_device> m_palette;
void excali64(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t *m_p_videoram;
uint8_t *m_p_hiresram;
@@ -118,7 +120,7 @@ private:
required_device<floppy_connector> m_floppy1;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, excali64_state)
+ADDRESS_MAP_START(excali64_state::mem_map)
AM_RANGE(0x0000, 0x1FFF) AM_READ_BANK("bankr1") AM_WRITE_BANK("bankw1")
AM_RANGE(0x2000, 0x2FFF) AM_READ_BANK("bankr2") AM_WRITE_BANK("bankw2")
AM_RANGE(0x3000, 0x3FFF) AM_READ_BANK("bankr3") AM_WRITE_BANK("bankw3")
@@ -126,7 +128,7 @@ static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, excali64_state)
AM_RANGE(0xC000, 0xFFFF) AM_RAM AM_REGION("rambank", 0xC000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, excali64_state)
+ADDRESS_MAP_START(excali64_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_READ(port00_r)
AM_RANGE(0x10, 0x10) AM_MIRROR(0x0e) AM_DEVREADWRITE("uart",i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/exedexes.cpp b/src/mame/drivers/exedexes.cpp
index ace60d3f8d2..0794d2ae45e 100644
--- a/src/mame/drivers/exedexes.cpp
+++ b/src/mame/drivers/exedexes.cpp
@@ -34,7 +34,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(exedexes_state::exedexes_scanline)
}
-static ADDRESS_MAP_START( exedexes_map, AS_PROGRAM, 8, exedexes_state )
+ADDRESS_MAP_START(exedexes_state::exedexes_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P1")
@@ -56,7 +56,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, exedexes_state )
+ADDRESS_MAP_START(exedexes_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/exelv.cpp b/src/mame/drivers/exelv.cpp
index 13a9e485861..f68d852d66b 100644
--- a/src/mame/drivers/exelv.cpp
+++ b/src/mame/drivers/exelv.cpp
@@ -117,6 +117,8 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( exelvision_cartridge );
void exeltel(machine_config &config);
void exl100(machine_config &config);
+ void tms7020_mem(address_map &map);
+ void tms7040_mem(address_map &map);
};
@@ -407,7 +409,7 @@ READ8_MEMBER(exelv_state::rom_r)
@>f800-@>ffff: tms7020/tms7040 internal ROM
*/
-static ADDRESS_MAP_START(tms7020_mem, AS_PROGRAM, 8, exelv_state)
+ADDRESS_MAP_START(exelv_state::tms7020_mem)
AM_RANGE(0x0080, 0x00ff) AM_NOP
AM_RANGE(0x0124, 0x0124) AM_DEVREAD("tms3556", tms3556_device, vram_r)
AM_RANGE(0x0125, 0x0125) AM_DEVREAD("tms3556", tms3556_device, reg_r)
@@ -423,7 +425,7 @@ static ADDRESS_MAP_START(tms7020_mem, AS_PROGRAM, 8, exelv_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms7040_mem, AS_PROGRAM, 8, exelv_state)
+ADDRESS_MAP_START(exelv_state::tms7040_mem)
AM_RANGE(0x0080, 0x00ff) AM_NOP
AM_RANGE(0x0124, 0x0124) AM_DEVREAD("tms3556", tms3556_device, vram_r)
AM_RANGE(0x0125, 0x0125) AM_DEVREAD("tms3556", tms3556_device, reg_r)
diff --git a/src/mame/drivers/exerion.cpp b/src/mame/drivers/exerion.cpp
index 405ad4c17e4..357521ca285 100644
--- a/src/mame/drivers/exerion.cpp
+++ b/src/mame/drivers/exerion.cpp
@@ -191,7 +191,7 @@ READ8_MEMBER(exerion_state::exerion_protection_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, exerion_state )
+ADDRESS_MAP_START(exerion_state::main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x6008, 0x600b) AM_READ(exerion_protection_r)
@@ -216,7 +216,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, exerion_state )
+ADDRESS_MAP_START(exerion_state::sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/exidy.cpp b/src/mame/drivers/exidy.cpp
index 6bd3082264e..1b2757739a8 100644
--- a/src/mame/drivers/exidy.cpp
+++ b/src/mame/drivers/exidy.cpp
@@ -200,7 +200,7 @@ WRITE8_MEMBER(exidy_state::fax_bank_select_w)
*
*************************************/
-static ADDRESS_MAP_START( exidy_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::exidy_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x003f) AM_WRITEONLY AM_SHARE("sprite1_xpos")
@@ -217,7 +217,7 @@ static ADDRESS_MAP_START( exidy_map, AS_PROGRAM, 8, exidy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sidetrac_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::sidetrac_map)
AM_IMPORT_FROM(exidy_map)
AM_RANGE(0x0800, 0x3fff) AM_ROM
AM_RANGE(0x4800, 0x4fff) AM_ROM AM_SHARE("characterram")
@@ -227,7 +227,7 @@ static ADDRESS_MAP_START( sidetrac_map, AS_PROGRAM, 8, exidy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( targ_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::targ_map)
AM_IMPORT_FROM(exidy_map)
AM_RANGE(0x0800, 0x3fff) AM_ROM
AM_RANGE(0x4800, 0x4fff) AM_RAM AM_SHARE("characterram")
@@ -237,7 +237,7 @@ static ADDRESS_MAP_START( targ_map, AS_PROGRAM, 8, exidy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spectar_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::spectar_map)
AM_IMPORT_FROM(exidy_map)
AM_RANGE(0x0800, 0x3fff) AM_ROM
AM_RANGE(0x4800, 0x4fff) AM_RAM AM_SHARE("characterram")
@@ -247,7 +247,7 @@ static ADDRESS_MAP_START( spectar_map, AS_PROGRAM, 8, exidy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rallys_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::rallys_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("videoram")
@@ -269,7 +269,7 @@ static ADDRESS_MAP_START( rallys_map, AS_PROGRAM, 8, exidy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( venture_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::venture_map)
AM_IMPORT_FROM(exidy_map)
AM_RANGE(0x4800, 0x4fff) AM_RAM AM_SHARE("characterram")
AM_RANGE(0x5200, 0x520f) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
@@ -277,7 +277,7 @@ static ADDRESS_MAP_START( venture_map, AS_PROGRAM, 8, exidy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pepper2_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::pepper2_map)
AM_IMPORT_FROM(exidy_map)
AM_RANGE(0x4800, 0x4fff) AM_NOP
AM_RANGE(0x5200, 0x520f) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
@@ -286,7 +286,7 @@ static ADDRESS_MAP_START( pepper2_map, AS_PROGRAM, 8, exidy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fax_map, AS_PROGRAM, 8, exidy_state )
+ADDRESS_MAP_START(exidy_state::fax_map)
AM_IMPORT_FROM(exidy_map)
AM_RANGE(0x0400, 0x07ff) AM_RAM
AM_RANGE(0x1a00, 0x1a00) AM_READ_PORT("IN4")
diff --git a/src/mame/drivers/exidy440.cpp b/src/mame/drivers/exidy440.cpp
index 91867e06098..d1d8eefcc2e 100644
--- a/src/mame/drivers/exidy440.cpp
+++ b/src/mame/drivers/exidy440.cpp
@@ -462,7 +462,7 @@ void exidy440_state::machine_reset()
*
*************************************/
-static ADDRESS_MAP_START( exidy440_map, AS_PROGRAM, 8, exidy440_state )
+ADDRESS_MAP_START(exidy440_state::exidy440_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("imageram")
AM_RANGE(0x2000, 0x209f) AM_RAM_WRITE(exidy440_spriteram_w) AM_SHARE("spriteram")
AM_RANGE(0x20a0, 0x29ff) AM_RAM
diff --git a/src/mame/drivers/exp85.cpp b/src/mame/drivers/exp85.cpp
index ba672d31845..768fe15be45 100644
--- a/src/mame/drivers/exp85.cpp
+++ b/src/mame/drivers/exp85.cpp
@@ -40,7 +40,7 @@
/* Memory Maps */
-static ADDRESS_MAP_START( exp85_mem, AS_PROGRAM, 8, exp85_state )
+ADDRESS_MAP_START(exp85_state::exp85_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_ROM
@@ -48,7 +48,7 @@ static ADDRESS_MAP_START( exp85_mem, AS_PROGRAM, 8, exp85_state )
AM_RANGE(0xf800, 0xf8ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( exp85_io, AS_IO, 8, exp85_state )
+ADDRESS_MAP_START(exp85_state::exp85_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE(I8355_TAG, i8355_device, io_r, io_w)
diff --git a/src/mame/drivers/expro02.cpp b/src/mame/drivers/expro02.cpp
index 7216eb7b169..9918c346fea 100644
--- a/src/mame/drivers/expro02.cpp
+++ b/src/mame/drivers/expro02.cpp
@@ -268,6 +268,17 @@ public:
void smissw(machine_config &config);
void galhustl(machine_config &config);
void expro02(machine_config &config);
+ void comad_map(address_map &map);
+ void expro02_map(address_map &map);
+ void expro02_video_base_map(address_map &map);
+ void expro02_video_base_map_noview2(address_map &map);
+ void fantasia_map(address_map &map);
+ void fantsia2_map(address_map &map);
+ void galhustl_map(address_map &map);
+ void oki_map(address_map &map);
+ void smissw_map(address_map &map);
+ void supmodel_map(address_map &map);
+ void zipzap_map(address_map &map);
};
@@ -650,7 +661,7 @@ WRITE8_MEMBER( expro02_state::expro02_6295_bankswitch_w )
*************************************/
-static ADDRESS_MAP_START( expro02_video_base_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::expro02_video_base_map)
AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_SHARE("fg_ind8ram")
AM_RANGE(0x520000, 0x53ffff) AM_RAM AM_SHARE("bg_rgb555ram")
AM_RANGE(0x580000, 0x583fff) AM_DEVREADWRITE("view2_0", kaneko_view2_tilemap_device, kaneko_tmap_vram_r, kaneko_tmap_vram_w )
@@ -662,7 +673,7 @@ static ADDRESS_MAP_START( expro02_video_base_map, AS_PROGRAM, 16, expro02_state
AM_RANGE(0xe80000, 0xe80001) AM_DEVWRITE("view2_0",kaneko_view2_tilemap_device,galsnew_vram_0_tilebank_w) /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( expro02_video_base_map_noview2, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::expro02_video_base_map_noview2)
AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_SHARE("fg_ind8ram")
AM_RANGE(0x520000, 0x53ffff) AM_RAM AM_SHARE("bg_rgb555ram")
AM_RANGE(0x580000, 0x583fff) AM_NOP // games still makes leftover accesses
@@ -674,7 +685,7 @@ static ADDRESS_MAP_START( expro02_video_base_map_noview2, AS_PROGRAM, 16, expro0
AM_RANGE(0xe80000, 0xe80001) AM_NOP // games still makes leftover accesses
ADDRESS_MAP_END
-static ADDRESS_MAP_START( expro02_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::expro02_map)
AM_IMPORT_FROM(expro02_video_base_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // main program
AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("user2",0) // other data
@@ -691,7 +702,7 @@ ADDRESS_MAP_END
// bigger ROM space, OKI commands moved, no CALC mcu
-static ADDRESS_MAP_START( fantasia_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::fantasia_map)
AM_IMPORT_FROM(expro02_video_base_map)
AM_RANGE(0x000000, 0x4fffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("DSW1")
@@ -706,7 +717,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( comad_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::comad_map)
AM_IMPORT_FROM(expro02_video_base_map_noview2)
AM_RANGE(0x000000, 0x4fffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("DSW1")
@@ -722,7 +733,7 @@ static ADDRESS_MAP_START( comad_map, AS_PROGRAM, 16, expro02_state )
AM_RANGE(0xf80000, 0xf80001) AM_READ8(comad_okim6295_r, 0xff00) AM_DEVWRITE8("oki", okim6295_device, write, 0xff00) /* newfant */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fantsia2_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::fantsia2_map)
AM_IMPORT_FROM(expro02_video_base_map_noview2)
AM_RANGE(0x000000, 0x4fffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("DSW1")
@@ -739,7 +750,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( galhustl_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::galhustl_map)
AM_IMPORT_FROM(expro02_video_base_map_noview2)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
@@ -756,7 +767,7 @@ static ADDRESS_MAP_START( galhustl_map, AS_PROGRAM, 16, expro02_state )
AM_RANGE(0x780000, 0x78001f) AM_NOP // prevent sprites being flipped
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zipzap_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::zipzap_map)
AM_IMPORT_FROM(expro02_video_base_map_noview2)
AM_RANGE(0x000000, 0x4fffff) AM_ROM
@@ -771,7 +782,7 @@ static ADDRESS_MAP_START( zipzap_map, AS_PROGRAM, 16, expro02_state )
AM_RANGE(0x780000, 0x78001f) AM_NOP // prevent sprites being flipped
ADDRESS_MAP_END
-static ADDRESS_MAP_START( supmodel_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::supmodel_map)
AM_IMPORT_FROM(expro02_video_base_map_noview2)
AM_RANGE(0x000000, 0x4fffff) AM_ROM
AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_SHARE("fgvideoram")
@@ -789,7 +800,7 @@ static ADDRESS_MAP_START( supmodel_map, AS_PROGRAM, 16, expro02_state )
AM_RANGE(0xf80000, 0xf80001) AM_READ8(comad_okim6295_r, 0xff00) AM_DEVWRITE8("oki", okim6295_device, write, 0xff00) /* fantasia, missw96 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( smissw_map, AS_PROGRAM, 16, expro02_state )
+ADDRESS_MAP_START(expro02_state::smissw_map)
AM_IMPORT_FROM(expro02_video_base_map_noview2)
AM_RANGE(0x000000, 0x4fffff) AM_ROM
AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_SHARE("fgvideoram")
@@ -807,7 +818,7 @@ static ADDRESS_MAP_START( smissw_map, AS_PROGRAM, 16, expro02_state )
AM_RANGE(0xf00000, 0xf00001) AM_READ8(comad_okim6295_r, 0xff00) AM_DEVWRITE8("oki", okim6295_device, write, 0xff00) /* fantasia, missw96 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, expro02_state )
+ADDRESS_MAP_START(expro02_state::oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/exprraid.cpp b/src/mame/drivers/exprraid.cpp
index 4a237efa900..b345595dda1 100644
--- a/src/mame/drivers/exprraid.cpp
+++ b/src/mame/drivers/exprraid.cpp
@@ -274,7 +274,7 @@ READ8_MEMBER(exprraid_state::vblank_r)
}
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, exprraid_state )
+ADDRESS_MAP_START(exprraid_state::master_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x0600, 0x07ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(exprraid_videoram_w) AM_SHARE("videoram")
@@ -296,11 +296,11 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, exprraid_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_io_map, AS_IO, 8, exprraid_state )
+ADDRESS_MAP_START(exprraid_state::master_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, exprraid_state )
+ADDRESS_MAP_START(exprraid_state::slave_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ym2", ym3526_device, read, write)
diff --git a/src/mame/drivers/exterm.cpp b/src/mame/drivers/exterm.cpp
index 2e56adf4a0d..56a368bdab2 100644
--- a/src/mame/drivers/exterm.cpp
+++ b/src/mame/drivers/exterm.cpp
@@ -254,7 +254,7 @@ WRITE8_MEMBER(exterm_state::sound_control_w)
*
*************************************/
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, exterm_state )
+ADDRESS_MAP_START(exterm_state::master_map)
AM_RANGE(0x00000000, 0x000fffff) AM_MIRROR(0xfc700000) AM_RAM AM_SHARE("master_videoram")
AM_RANGE(0x00800000, 0x00bfffff) AM_MIRROR(0xfc400000) AM_RAM
AM_RANGE(0x01000000, 0x013fffff) AM_MIRROR(0xfc000000) AM_READWRITE(exterm_host_data_r, exterm_host_data_w)
@@ -271,7 +271,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, exterm_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, exterm_state )
+ADDRESS_MAP_START(exterm_state::slave_map)
AM_RANGE(0x00000000, 0x000fffff) AM_MIRROR(0xfbf00000) AM_RAM AM_SHARE("slave_videoram")
AM_RANGE(0x04000000, 0x047fffff) AM_MIRROR(0xfb800000) AM_RAM
AM_RANGE(0xc0000000, 0xc00001ff) AM_DEVREADWRITE("slave", tms34010_device, io_register_r, io_register_w)
@@ -285,7 +285,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_master_map, AS_PROGRAM, 8, exterm_state )
+ADDRESS_MAP_START(exterm_state::sound_master_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0x4000, 0x5fff) AM_WRITE(ym2151_data_latch_w)
AM_RANGE(0x6000, 0x67ff) AM_WRITE(sound_nmi_rate_w)
@@ -297,7 +297,7 @@ static ADDRESS_MAP_START( sound_master_map, AS_PROGRAM, 8, exterm_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_slave_map, AS_PROGRAM, 8, exterm_state )
+ADDRESS_MAP_START(exterm_state::sound_slave_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x3800) AM_RAM
AM_RANGE(0x4000, 0x5fff) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
AM_RANGE(0x8000, 0xffff) AM_ROM
diff --git a/src/mame/drivers/extrema.cpp b/src/mame/drivers/extrema.cpp
index c2c0c1b2d46..2eb3472ce65 100644
--- a/src/mame/drivers/extrema.cpp
+++ b/src/mame/drivers/extrema.cpp
@@ -25,17 +25,19 @@ public:
required_device<cpu_device> m_maincpu;
void extrema(machine_config &config);
+ void extrema_map(address_map &map);
+ void extrema_portmap(address_map &map);
};
-static ADDRESS_MAP_START( extrema_map, AS_PROGRAM, 8, extrema_state )
+ADDRESS_MAP_START(extrema_state::extrema_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( extrema_portmap, AS_IO, 8, extrema_state )
+ADDRESS_MAP_START(extrema_state::extrema_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/exzisus.cpp b/src/mame/drivers/exzisus.cpp
index 09a7661c2e1..00118d1717c 100644
--- a/src/mame/drivers/exzisus.cpp
+++ b/src/mame/drivers/exzisus.cpp
@@ -100,7 +100,7 @@ DRIVER_INIT_MEMBER(exzisus_state,exzisus)
**************************************************************************/
-static ADDRESS_MAP_START( cpua_map, AS_PROGRAM, 8, exzisus_state )
+ADDRESS_MAP_START(exzisus_state::cpua_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("cpuabank")
AM_RANGE(0xc000, 0xc5ff) AM_RAM AM_SHARE("objectram1")
@@ -111,7 +111,7 @@ static ADDRESS_MAP_START( cpua_map, AS_PROGRAM, 8, exzisus_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("sharedram_ab")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpub_map, AS_PROGRAM, 8, exzisus_state )
+ADDRESS_MAP_START(exzisus_state::cpub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("cpubbank")
AM_RANGE(0xc000, 0xc5ff) AM_RAM AM_SHARE("objectram0")
@@ -130,7 +130,7 @@ static ADDRESS_MAP_START( cpub_map, AS_PROGRAM, 8, exzisus_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("sharedram_ab")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpuc_map, AS_PROGRAM, 8, exzisus_state )
+ADDRESS_MAP_START(exzisus_state::cpuc_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x85ff) AM_RAM AM_SHARE("objectram1")
AM_RANGE(0x8600, 0x9fff) AM_RAM AM_SHARE("videoram1")
@@ -138,7 +138,7 @@ static ADDRESS_MAP_START( cpuc_map, AS_PROGRAM, 8, exzisus_state )
AM_RANGE(0xb000, 0xbfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, exzisus_state )
+ADDRESS_MAP_START(exzisus_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/ez2d.cpp b/src/mame/drivers/ez2d.cpp
index e806f96bed3..0cb5fc7a219 100644
--- a/src/mame/drivers/ez2d.cpp
+++ b/src/mame/drivers/ez2d.cpp
@@ -57,6 +57,7 @@ public:
virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void ez2d(machine_config &config);
+ void ez2d_map(address_map &map);
};
void ez2d_state::video_start()
@@ -68,7 +69,7 @@ uint32_t ez2d_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
return 0;
}
-static ADDRESS_MAP_START( ez2d_map, AS_PROGRAM, 32, ez2d_state )
+ADDRESS_MAP_START(ez2d_state::ez2d_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( ez2d )
diff --git a/src/mame/drivers/f-32.cpp b/src/mame/drivers/f-32.cpp
index f21114fd16c..e82ab423f88 100644
--- a/src/mame/drivers/f-32.cpp
+++ b/src/mame/drivers/f-32.cpp
@@ -54,6 +54,10 @@ public:
uint32_t screen_update_mosaicf2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void mosaicf2(machine_config &config);
void royalpk2(machine_config &config);
+ void common_map(address_map &map);
+ void mosaicf2_io(address_map &map);
+ void royalpk2_io(address_map &map);
+ void royalpk2_map(address_map &map);
};
@@ -78,7 +82,7 @@ uint32_t mosaicf2_state::screen_update_mosaicf2(screen_device &screen, bitmap_in
-static ADDRESS_MAP_START( common_map, AS_PROGRAM, 32, mosaicf2_state )
+ADDRESS_MAP_START(mosaicf2_state::common_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM
AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x80000000, 0x80ffffff) AM_ROM AM_REGION("user2",0)
@@ -97,7 +101,7 @@ READ32_MEMBER(mosaicf2_state::f32_input_port_1_r)
}
-static ADDRESS_MAP_START( mosaicf2_io, AS_IO, 32, mosaicf2_state )
+ADDRESS_MAP_START(mosaicf2_state::mosaicf2_io)
AM_RANGE(0x4000, 0x4003) AM_DEVREAD8("oki", okim6295_device, read, 0x000000ff)
AM_RANGE(0x4810, 0x4813) AM_DEVREAD8("ymsnd", ym2151_device, status_r, 0x000000ff)
AM_RANGE(0x5000, 0x5003) AM_READ_PORT("P1")
@@ -217,14 +221,14 @@ INPUT_PORTS_END
-static ADDRESS_MAP_START( royalpk2_map, AS_PROGRAM, 32, mosaicf2_state )
+ADDRESS_MAP_START(mosaicf2_state::royalpk2_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM
AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x80000000, 0x807fffff) AM_ROM AM_REGION("user2",0)
AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( royalpk2_io, AS_IO, 32, mosaicf2_state )
+ADDRESS_MAP_START(mosaicf2_state::royalpk2_io)
AM_RANGE(0x4900, 0x4903) AM_READ_PORT("SYSTEM_P2")
AM_RANGE(0x4a00, 0x4a03) AM_READ_PORT("EEPROMIN")
diff --git a/src/mame/drivers/f1gp.cpp b/src/mame/drivers/f1gp.cpp
index 1b131e9335e..895a28f8897 100644
--- a/src/mame/drivers/f1gp.cpp
+++ b/src/mame/drivers/f1gp.cpp
@@ -53,7 +53,7 @@ READ8_MEMBER(f1gp_state::command_pending_r)
}
-static ADDRESS_MAP_START( f1gp_cpu1_map, AS_PROGRAM, 16, f1gp_state )
+ADDRESS_MAP_START(f1gp_state::f1gp_cpu1_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x2fffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0xa00000, 0xbfffff) AM_ROM AM_REGION("user2", 0)
@@ -82,7 +82,7 @@ static ADDRESS_MAP_START( f1gp_cpu1_map, AS_PROGRAM, 16, f1gp_state )
AM_RANGE(0xfff050, 0xfff051) AM_READ_PORT("DSW3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( f1gp2_cpu1_map, AS_PROGRAM, 16, f1gp_state )
+ADDRESS_MAP_START(f1gp_state::f1gp2_cpu1_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x2fffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0xa00000, 0xa07fff) AM_RAM AM_SHARE("sprcgram") // SPR-1 CG RAM + SPR-2 CG RAM
@@ -102,20 +102,20 @@ static ADDRESS_MAP_START( f1gp2_cpu1_map, AS_PROGRAM, 16, f1gp_state )
AM_RANGE(0xfff044, 0xfff047) AM_WRITE(f1gp_fgscroll_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( f1gp_cpu2_map, AS_PROGRAM, 16, f1gp_state )
+ADDRESS_MAP_START(f1gp_state::f1gp_cpu2_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0xff8000, 0xffbfff) AM_RAM
AM_RANGE(0xffc000, 0xffcfff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0xfff030, 0xfff033) AM_DEVREADWRITE8("acia", acia6850_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, f1gp_state )
+ADDRESS_MAP_START(f1gp_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, f1gp_state )
+ADDRESS_MAP_START(f1gp_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(f1gp_sh_bankswitch_w) // f1gp
AM_RANGE(0x0c, 0x0c) AM_WRITE(f1gp_sh_bankswitch_w) // f1gp2
@@ -148,7 +148,7 @@ WRITE16_MEMBER(f1gp_state::f1gpb_misc_w)
*/
}
-static ADDRESS_MAP_START( f1gpb_cpu1_map, AS_PROGRAM, 16, f1gp_state )
+ADDRESS_MAP_START(f1gp_state::f1gpb_cpu1_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x2fffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0xa00000, 0xbfffff) AM_ROM AM_REGION("user2", 0)
@@ -180,7 +180,7 @@ static ADDRESS_MAP_START( f1gpb_cpu1_map, AS_PROGRAM, 16, f1gp_state )
AM_RANGE(0xfff800, 0xfff809) AM_RAM AM_SHARE("rozregs")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( f1gpb_cpu2_map, AS_PROGRAM, 16, f1gp_state )
+ADDRESS_MAP_START(f1gp_state::f1gpb_cpu2_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0xff8000, 0xffbfff) AM_RAM
AM_RANGE(0xffc000, 0xffcfff) AM_RAM AM_SHARE("sharedram")
diff --git a/src/mame/drivers/famibox.cpp b/src/mame/drivers/famibox.cpp
index ca81eda27c8..22db44c74b7 100644
--- a/src/mame/drivers/famibox.cpp
+++ b/src/mame/drivers/famibox.cpp
@@ -120,6 +120,7 @@ public:
void famicombox_reset();
void ppu_irq(int *ppu_regs);
void famibox(machine_config &config);
+ void famibox_map(address_map &map);
};
/******************************************************
@@ -375,7 +376,7 @@ WRITE8_MEMBER(famibox_state::famibox_system_w)
*******************************************************/
-static ADDRESS_MAP_START( famibox_map, AS_PROGRAM, 8, famibox_state )
+ADDRESS_MAP_START(famibox_state::famibox_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_w)
diff --git a/src/mame/drivers/fantland.cpp b/src/mame/drivers/fantland.cpp
index 54d2fa3d5c2..11ff1d1abd6 100644
--- a/src/mame/drivers/fantland.cpp
+++ b/src/mame/drivers/fantland.cpp
@@ -124,7 +124,7 @@ WRITE16_MEMBER(fantland_state::spriteram2_16_w)
spriteram_2[2 * offset + 1] = data >> 8;
}
-static ADDRESS_MAP_START( fantland_map, AS_PROGRAM, 16, fantland_state )
+ADDRESS_MAP_START(fantland_state::fantland_map)
AM_RANGE( 0x00000, 0x07fff ) AM_RAM
AM_RANGE( 0x08000, 0x7ffff ) AM_ROM
@@ -144,7 +144,7 @@ ADDRESS_MAP_END
Galaxy Gunners
***************************************************************************/
-static ADDRESS_MAP_START( galaxygn_map, AS_PROGRAM, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::galaxygn_map)
AM_RANGE( 0x00000, 0x07fff ) AM_RAM
AM_RANGE( 0x10000, 0x2ffff ) AM_ROM
@@ -236,7 +236,7 @@ READ8_MEMBER(fantland_state::borntofi_inputs_r)
return m_input_ret[offset];
}
-static ADDRESS_MAP_START( borntofi_map, AS_PROGRAM, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::borntofi_map)
AM_RANGE( 0x00000, 0x07fff ) AM_RAM
AM_RANGE( 0x10000, 0x2ffff ) AM_ROM
@@ -263,7 +263,7 @@ ADDRESS_MAP_END
Wheels Runner
***************************************************************************/
-static ADDRESS_MAP_START( wheelrun_map, AS_PROGRAM, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::wheelrun_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM
AM_RANGE(0x30000, 0x3ffff) AM_ROM
@@ -290,19 +290,19 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( fantland_sound_map, AS_PROGRAM, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::fantland_sound_map)
AM_RANGE( 0x00000, 0x01fff ) AM_RAM
AM_RANGE( 0x80000, 0x9ffff ) AM_ROM
AM_RANGE( 0xc0000, 0xfffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fantland_sound_iomap, AS_IO, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::fantland_sound_iomap)
AM_RANGE( 0x0080, 0x0080 ) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE( 0x0100, 0x0101 ) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE( 0x0180, 0x0180 ) AM_DEVWRITE("dac", dac_byte_interface, write )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galaxygn_sound_iomap, AS_IO, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::galaxygn_sound_iomap)
AM_RANGE( 0x0080, 0x0080 ) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE( 0x0100, 0x0101 ) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
ADDRESS_MAP_END
@@ -400,7 +400,7 @@ WRITE_LINE_MEMBER(fantland_state::borntofi_adpcm_int_2) { borntofi_adpcm_int(m_m
WRITE_LINE_MEMBER(fantland_state::borntofi_adpcm_int_3) { borntofi_adpcm_int(m_msm4, 3); }
-static ADDRESS_MAP_START( borntofi_sound_map, AS_PROGRAM, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::borntofi_sound_map)
AM_RANGE( 0x00000, 0x003ff ) AM_RAM
AM_RANGE( 0x04000, 0x04000 ) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE( 0x04000, 0x0401f ) AM_WRITE(borntofi_msm5205_w)
@@ -413,7 +413,7 @@ ADDRESS_MAP_END
Wheels Runner
***************************************************************************/
-static ADDRESS_MAP_START( wheelrun_sound_map, AS_PROGRAM, 8, fantland_state )
+ADDRESS_MAP_START(fantland_state::wheelrun_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym3526_device, read, write)
diff --git a/src/mame/drivers/fanucs15.cpp b/src/mame/drivers/fanucs15.cpp
index 43339a4a0b1..61cba533231 100644
--- a/src/mame/drivers/fanucs15.cpp
+++ b/src/mame/drivers/fanucs15.cpp
@@ -325,27 +325,31 @@ public:
required_device<i80286_cpu_device> m_convcpu;
void fanucs15(machine_config &config);
+ void convcpu_mem(address_map &map);
+ void gfxcpu_mem(address_map &map);
+ void maincpu_mem(address_map &map);
+ void pmccpu_mem(address_map &map);
private:
virtual void machine_reset() override;
};
-static ADDRESS_MAP_START(maincpu_mem, AS_PROGRAM, 32, fanucs15_state)
+ADDRESS_MAP_START(fanucs15_state::maincpu_mem)
AM_RANGE(0x00000000, 0x0017ffff) AM_ROM AM_REGION("base1b", 0)
AM_RANGE(0x000f8000, 0x000fffff) AM_RAM // filled with 0x96 on boot
AM_RANGE(0xffff0000, 0xffffffff) AM_RAM // initial stack
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pmccpu_mem, AS_PROGRAM, 16, fanucs15_state)
+ADDRESS_MAP_START(fanucs15_state::pmccpu_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("base1a", 0)
AM_RANGE(0xfde000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(gfxcpu_mem, AS_PROGRAM, 16, fanucs15_state)
+ADDRESS_MAP_START(fanucs15_state::gfxcpu_mem)
AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_REGION("gfxboard", 0)
AM_RANGE(0xfe0000, 0xfeffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(convcpu_mem, AS_PROGRAM, 16, fanucs15_state)
+ADDRESS_MAP_START(fanucs15_state::convcpu_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("conversational", 0x40000)
AM_RANGE(0x040000, 0x07ffff) AM_ROM AM_REGION("conversational", 0)
AM_RANGE(0x800000, 0x87ffff) AM_RAM
diff --git a/src/mame/drivers/fanucspmg.cpp b/src/mame/drivers/fanucspmg.cpp
index 0c566e04889..a59565aec9b 100644
--- a/src/mame/drivers/fanucspmg.cpp
+++ b/src/mame/drivers/fanucspmg.cpp
@@ -638,6 +638,9 @@ public:
void fanucspmgm(machine_config &config);
void fanucspmg(machine_config &config);
+ void maincpu_io(address_map &map);
+ void maincpu_mem(address_map &map);
+ void subcpu_mem(address_map &map);
private:
virtual void machine_reset() override;
int32_t m_vram_bank;
@@ -713,7 +716,7 @@ READ16_MEMBER(fanucspmg_state::magic_r)
return 0x0041; // 31 = memory error
}
-static ADDRESS_MAP_START(maincpu_mem, AS_PROGRAM, 16, fanucspmg_state)
+ADDRESS_MAP_START(fanucspmg_state::maincpu_mem)
AM_RANGE(0x00000, 0x7ffff) AM_RAM // main RAM
AM_RANGE(0x80000, 0x81fff) AM_RAM // believed to be shared RAM with a CPU inside the Program File
@@ -740,7 +743,7 @@ static ADDRESS_MAP_START(maincpu_mem, AS_PROGRAM, 16, fanucspmg_state)
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION(MAINCPU_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maincpu_io, AS_IO, 16, fanucspmg_state)
+ADDRESS_MAP_START(fanucspmg_state::maincpu_io)
ADDRESS_MAP_END
WRITE_LINE_MEMBER(fanucspmg_state::vsync_w)
@@ -814,7 +817,7 @@ WRITE8_MEMBER(fanucspmg_state::video_ctrl_w)
m_video_ctrl = data;
}
-static ADDRESS_MAP_START(subcpu_mem, AS_PROGRAM, 8, fanucspmg_state)
+ADDRESS_MAP_START(fanucspmg_state::subcpu_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION(SUBCPU_TAG, 0)
AM_RANGE(0x4000, 0x45ff) AM_READWRITE(vram1_r, vram1_w)
diff --git a/src/mame/drivers/fastfred.cpp b/src/mame/drivers/fastfred.cpp
index c51e89f3f3f..8963763a77a 100644
--- a/src/mame/drivers/fastfred.cpp
+++ b/src/mame/drivers/fastfred.cpp
@@ -187,7 +187,7 @@ WRITE8_MEMBER(fastfred_state::sound_nmi_mask_w)
m_sound_nmi_mask = data & 1;
}
-static ADDRESS_MAP_START( fastfred_map, AS_PROGRAM, 8, fastfred_state )
+ADDRESS_MAP_START(fastfred_state::fastfred_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd3ff) AM_MIRROR(0x400) AM_RAM_WRITE(fastfred_videoram_w) AM_SHARE("videoram")
@@ -202,7 +202,7 @@ static ADDRESS_MAP_START( fastfred_map, AS_PROGRAM, 8, fastfred_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jumpcoas_map, AS_PROGRAM, 8, fastfred_state )
+ADDRESS_MAP_START(fastfred_state::jumpcoas_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd03f) AM_RAM_WRITE(fastfred_attributes_w) AM_SHARE("attributesram")
@@ -220,7 +220,7 @@ static ADDRESS_MAP_START( jumpcoas_map, AS_PROGRAM, 8, fastfred_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( imago_map, AS_PROGRAM, 8, fastfred_state )
+ADDRESS_MAP_START(fastfred_state::imago_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x1fff) AM_READ(imago_sprites_offset_r)
AM_RANGE(0x2000, 0x6fff) AM_ROM
@@ -241,7 +241,7 @@ static ADDRESS_MAP_START( imago_map, AS_PROGRAM, 8, fastfred_state )
AM_RANGE(0xf800, 0xf800) AM_READNOP AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fastfred_state )
+ADDRESS_MAP_START(fastfred_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(sound_nmi_mask_w)
diff --git a/src/mame/drivers/fastinvaders.cpp b/src/mame/drivers/fastinvaders.cpp
index 62f31dbf630..54108d8e50f 100644
--- a/src/mame/drivers/fastinvaders.cpp
+++ b/src/mame/drivers/fastinvaders.cpp
@@ -116,6 +116,10 @@ public:
void fastinvaders(machine_config &config);
void fastinvaders_8275(machine_config &config);
void fastinvaders_6845(machine_config &config);
+ void fastinvaders_6845_io(address_map &map);
+ void fastinvaders_8275_io(address_map &map);
+ void fastinvaders_io_base(address_map &map);
+ void fastinvaders_map(address_map &map);
};
@@ -504,17 +508,17 @@ logerror("dma write\n");
***************************************************************************/
-static ADDRESS_MAP_START( fastinvaders_map, AS_PROGRAM, 8, fastinvaders_state )
+ADDRESS_MAP_START(fastinvaders_state::fastinvaders_map)
//AM_RANGE(0x0000, 0x1fff) AM_ROM AM_MIRROR(0x8000)
AM_RANGE(0x0000, 0x27ff) AM_ROM AM_MIRROR(0x8000)
AM_RANGE(0x2800, 0x2fff) AM_RAM AM_MIRROR(0x8000) AM_SHARE("videoram")
AM_RANGE(0x3000, 0x33ff) AM_RAM AM_MIRROR(0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fastinvaders_io_base, AS_IO, 8, fastinvaders_state )
+ADDRESS_MAP_START(fastinvaders_state::fastinvaders_io_base)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fastinvaders_6845_io, AS_IO, 8, fastinvaders_state )
+ADDRESS_MAP_START(fastinvaders_state::fastinvaders_6845_io)
AM_IMPORT_FROM(fastinvaders_io_base)
AM_RANGE(0x10, 0x1f) AM_DEVREADWRITE("dma8257", i8257_device, read, write)
@@ -536,7 +540,7 @@ static ADDRESS_MAP_START( fastinvaders_6845_io, AS_IO, 8, fastinvaders_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fastinvaders_8275_io, AS_IO, 8, fastinvaders_state )
+ADDRESS_MAP_START(fastinvaders_state::fastinvaders_8275_io)
AM_IMPORT_FROM(fastinvaders_io_base)
AM_RANGE( 0x20, 0x21 ) AM_DEVREADWRITE("8275", i8275_device, read, write)
diff --git a/src/mame/drivers/fastlane.cpp b/src/mame/drivers/fastlane.cpp
index 9c919d18c7a..9c056d5f7ff 100644
--- a/src/mame/drivers/fastlane.cpp
+++ b/src/mame/drivers/fastlane.cpp
@@ -77,7 +77,7 @@ WRITE8_MEMBER(fastlane_state::fastlane_k2_k007232_w)
{
m_k007232_2->write(space, offset ^ 1, data);
}
-static ADDRESS_MAP_START( fastlane_map, AS_PROGRAM, 8, fastlane_state )
+ADDRESS_MAP_START(fastlane_state::fastlane_map)
AM_RANGE(0x0000, 0x005f) AM_RAM_WRITE(k007121_registers_w) AM_SHARE("k007121_regs") /* 007121 registers */
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("DSW3")
AM_RANGE(0x0801, 0x0801) AM_READ_PORT("P2")
diff --git a/src/mame/drivers/fb01.cpp b/src/mame/drivers/fb01.cpp
index 924e4835a61..6c136ec07b8 100644
--- a/src/mame/drivers/fb01.cpp
+++ b/src/mame/drivers/fb01.cpp
@@ -50,6 +50,8 @@ public:
HD44780_PIXEL_UPDATE(fb01_pixel_update);
void fb01(machine_config &config);
+ void fb01_io(address_map &map);
+ void fb01_mem(address_map &map);
private:
required_device<z80_device> m_maincpu;
required_device<i8251_device> m_upd71051;
@@ -62,13 +64,13 @@ private:
};
-static ADDRESS_MAP_START(fb01_mem, AS_PROGRAM, 8, fb01_state)
+ADDRESS_MAP_START(fb01_state::fb01_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_RAM AM_SHARE("nvram") // 2 * 8KB S-RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(fb01_io, AS_IO, 8, fb01_state)
+ADDRESS_MAP_START(fb01_state::fb01_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// 00-01 YM2164
diff --git a/src/mame/drivers/fc100.cpp b/src/mame/drivers/fc100.cpp
index 59a876d0f25..0e339440c19 100644
--- a/src/mame/drivers/fc100.cpp
+++ b/src/mame/drivers/fc100.cpp
@@ -85,6 +85,8 @@ public:
return m_p_chargen[(ch * 16 + line) & 0xfff];
}
void fc100(machine_config &config);
+ void fc100_io(address_map &map);
+ void fc100_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -116,7 +118,7 @@ private:
};
-static ADDRESS_MAP_START( fc100_mem, AS_PROGRAM, 8, fc100_state )
+ADDRESS_MAP_START(fc100_state::fc100_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_REGION("roms", 0)
//AM_RANGE(0x6000, 0x6fff) // mapped by the cartslot
@@ -125,7 +127,7 @@ static ADDRESS_MAP_START( fc100_mem, AS_PROGRAM, 8, fc100_state )
AM_RANGE( 0xc000, 0xffff ) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fc100_io, AS_IO, 8, fc100_state )
+ADDRESS_MAP_START(fc100_state::fc100_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0F) AM_READ(port00_r)
diff --git a/src/mame/drivers/fccpu30.cpp b/src/mame/drivers/fccpu30.cpp
index 293bce4a66d..52509f1b4f7 100644
--- a/src/mame/drivers/fccpu30.cpp
+++ b/src/mame/drivers/fccpu30.cpp
@@ -302,6 +302,7 @@ cpu30_state(const machine_config &mconfig, device_type type, const char *tag)
void cpu33(machine_config &config);
void cpu30lite8(machine_config &config);
void cpu30be16(machine_config &config);
+ void cpu30_mem(address_map &map);
protected:
private:
@@ -327,7 +328,7 @@ private:
uint8_t m_board_id;
};
-static ADDRESS_MAP_START (cpu30_mem, AS_PROGRAM, 32, cpu30_state)
+ADDRESS_MAP_START(cpu30_state::cpu30_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x00000000, 0x00000007) AM_RAM AM_WRITE (bootvect_w) /* After first write we act as RAM */
AM_RANGE (0x00000000, 0x00000007) AM_ROM AM_READ (bootvect_r) /* ROM mirror just during reset */
diff --git a/src/mame/drivers/fcombat.cpp b/src/mame/drivers/fcombat.cpp
index acc4faa24fd..36bdda26c0e 100644
--- a/src/mame/drivers/fcombat.cpp
+++ b/src/mame/drivers/fcombat.cpp
@@ -113,7 +113,7 @@ WRITE8_MEMBER(fcombat_state::ee00_w)
{
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, fcombat_state )
+ADDRESS_MAP_START(fcombat_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("videoram")
@@ -134,7 +134,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, fcombat_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, fcombat_state )
+ADDRESS_MAP_START(fcombat_state::audio_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/fcrash.cpp b/src/mame/drivers/fcrash.cpp
index 8f65ba115c5..4c1527f4093 100644
--- a/src/mame/drivers/fcrash.cpp
+++ b/src/mame/drivers/fcrash.cpp
@@ -665,7 +665,7 @@ uint32_t cps_state::screen_update_fcrash(screen_device &screen, bitmap_ind16 &bi
}
-static ADDRESS_MAP_START( knightsb_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::knightsb_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN1") /* Player input ports */
AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN2") /* Player 3 controls */
@@ -683,7 +683,7 @@ static ADDRESS_MAP_START( knightsb_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dinopic_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::dinopic_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */
AM_RANGE(0x800006, 0x800007) AM_WRITE(cps1_soundlatch_w) /* Sound command */
@@ -702,7 +702,7 @@ static ADDRESS_MAP_START( dinopic_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fcrash_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::fcrash_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800030, 0x800031) AM_WRITE(cps1_coinctrl_w)
AM_RANGE(0x800100, 0x80013f) AM_RAM AM_SHARE("cps_a_regs") /* CPS-A custom */
@@ -715,7 +715,7 @@ static ADDRESS_MAP_START( fcrash_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( punipic_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::punipic_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */
AM_RANGE(0x800006, 0x800007) AM_WRITE(cps1_soundlatch_w) /* Sound command */
@@ -733,7 +733,7 @@ static ADDRESS_MAP_START( punipic_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sf2m1_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::sf2m1_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */
AM_RANGE(0x800006, 0x800007) AM_WRITE(cps1_soundlatch_w) /* Sound command */
@@ -750,7 +750,7 @@ static ADDRESS_MAP_START( sf2m1_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sf2mdt_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::sf2mdt_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x708100, 0x7081ff) AM_WRITE(sf2mdta_layer_w)
AM_RANGE(0x70c000, 0x70c001) AM_READ_PORT("IN1")
@@ -765,7 +765,7 @@ static ADDRESS_MAP_START( sf2mdt_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sf2b_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::sf2b_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x708100, 0x7081ff) AM_WRITE(sf2mdta_layer_w)
AM_RANGE(0x70c000, 0x70c001) AM_READ_PORT("IN1")
@@ -780,7 +780,7 @@ static ADDRESS_MAP_START( sf2b_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgyxz_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::sgyxz_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800030, 0x800031) AM_WRITE(cps1_coinctrl_w)
AM_RANGE(0x800100, 0x80013f) AM_RAM AM_SHARE("cps_a_regs") /* CPS-A custom */
@@ -796,7 +796,7 @@ static ADDRESS_MAP_START( sgyxz_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wofabl_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::wofabl_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800030, 0x800031) AM_WRITE(cps1_coinctrl_w)
AM_RANGE(0x800100, 0x80013f) AM_RAM AM_SHARE("cps_a_regs") /* CPS-A custom */
@@ -812,7 +812,7 @@ static ADDRESS_MAP_START( wofabl_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slampic_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::slampic_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800006, 0x800007) AM_WRITENOP //AM_WRITE(cps1_soundlatch2_w)
AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */
@@ -832,7 +832,7 @@ static ADDRESS_MAP_START( slampic_map, AS_PROGRAM, 16, cps_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cps_state )
+ADDRESS_MAP_START(cps_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
@@ -844,7 +844,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cps_state )
AM_RANGE(0xec00, 0xec00) AM_WRITE(fcrash_msm5205_1_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kodb_sound_map, AS_PROGRAM, 8, cps_state )
+ADDRESS_MAP_START(cps_state::kodb_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
@@ -853,7 +853,7 @@ static ADDRESS_MAP_START( kodb_sound_map, AS_PROGRAM, 8, cps_state )
AM_RANGE(0xe800, 0xe800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sf2mdt_z80map, AS_PROGRAM, 8, cps_state )
+ADDRESS_MAP_START(cps_state::sf2mdt_z80map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
@@ -864,7 +864,7 @@ static ADDRESS_MAP_START( sf2mdt_z80map, AS_PROGRAM, 8, cps_state )
AM_RANGE(0xe800, 0xe800) AM_WRITE(fcrash_msm5205_1_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( knightsb_z80map, AS_PROGRAM, 8, cps_state )
+ADDRESS_MAP_START(cps_state::knightsb_z80map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xcffe, 0xcfff) AM_WRITENOP // writes lots of data
@@ -876,7 +876,7 @@ static ADDRESS_MAP_START( knightsb_z80map, AS_PROGRAM, 8, cps_state )
AM_RANGE(0xe800, 0xe800) AM_WRITE(fcrash_msm5205_1_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgyxz_sound_map, AS_PROGRAM, 8, cps_state )
+ADDRESS_MAP_START(cps_state::sgyxz_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
@@ -3071,7 +3071,7 @@ WRITE16_MEMBER(cps_state::varthb_layer_w)
m_cps_a_regs[0x06 / 2] = data;
}
-static ADDRESS_MAP_START( varthb_map, AS_PROGRAM, 16, cps_state )
+ADDRESS_MAP_START(cps_state::varthb_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN1")
AM_RANGE(0x800006, 0x800007) AM_WRITE(cps1_soundlatch_w)
diff --git a/src/mame/drivers/feversoc.cpp b/src/mame/drivers/feversoc.cpp
index a22116af0c4..f8e1a7837fb 100644
--- a/src/mame/drivers/feversoc.cpp
+++ b/src/mame/drivers/feversoc.cpp
@@ -115,6 +115,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void feversoc(machine_config &config);
+ void feversoc_map(address_map &map);
};
@@ -192,7 +193,7 @@ WRITE16_MEMBER( feversoc_state::output2_w )
}
-static ADDRESS_MAP_START( feversoc_map, AS_PROGRAM, 32, feversoc_state )
+ADDRESS_MAP_START(feversoc_state::feversoc_map)
AM_RANGE(0x00000000, 0x0003ffff) AM_ROM
AM_RANGE(0x02000000, 0x0202ffff) AM_RAM AM_SHARE("workram1") //work ram
AM_RANGE(0x02030000, 0x0203ffff) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/fgoal.cpp b/src/mame/drivers/fgoal.cpp
index 307a9400c51..51e3a1770b2 100644
--- a/src/mame/drivers/fgoal.cpp
+++ b/src/mame/drivers/fgoal.cpp
@@ -207,7 +207,7 @@ WRITE8_MEMBER(fgoal_state::sound2_w)
}
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, fgoal_state )
+ADDRESS_MAP_START(fgoal_state::cpu_map)
AM_RANGE(0x0000, 0x00ef) AM_RAM
diff --git a/src/mame/drivers/fidel6502.cpp b/src/mame/drivers/fidel6502.cpp
index 8c962da2d94..567ae36b990 100644
--- a/src/mame/drivers/fidel6502.cpp
+++ b/src/mame/drivers/fidel6502.cpp
@@ -570,6 +570,22 @@ public:
DECLARE_DRIVER_INIT(chesster);
void chesster(machine_config &config);
void kishon(machine_config &config);
+ void chesster_map(address_map &map);
+ void csc_map(address_map &map);
+ void eag_map(address_map &map);
+ void eas_map(address_map &map);
+ void fdesdis_map(address_map &map);
+ void fexcel_map(address_map &map);
+ void fexcelb_map(address_map &map);
+ void fexcelp_map(address_map &map);
+ void fphantom_map(address_map &map);
+ void kishon_map(address_map &map);
+ void rsc_map(address_map &map);
+ void sc12_map(address_map &map);
+ void sc12_trampoline(address_map &map);
+ void sc9_map(address_map &map);
+ void sc9d_map(address_map &map);
+ void su9_map(address_map &map);
};
@@ -1137,7 +1153,7 @@ DRIVER_INIT_MEMBER(fidel6502_state, chesster)
// CSC, SU9, RSC
-static ADDRESS_MAP_START( csc_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::csc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x4000) AM_RAM
AM_RANGE(0x0800, 0x0bff) AM_MIRROR(0x4400) AM_RAM
@@ -1147,7 +1163,7 @@ static ADDRESS_MAP_START( csc_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0xa000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( su9_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::su9_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1003) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
@@ -1157,7 +1173,7 @@ static ADDRESS_MAP_START( su9_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rsc_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::rsc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x2000, 0x2003) AM_DEVREADWRITE("pia", pia6821_device, read, write)
@@ -1167,7 +1183,7 @@ ADDRESS_MAP_END
// EAS, EAG
-static ADDRESS_MAP_START( eas_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::eas_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x5fff) AM_READ(cartridge_r)
@@ -1179,7 +1195,7 @@ static ADDRESS_MAP_START( eas_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eag_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::eag_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x5fff) AM_READ(cartridge_r)
@@ -1193,7 +1209,7 @@ ADDRESS_MAP_END
// SC9
-static ADDRESS_MAP_START( sc9_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::sc9_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0x2000, 0x5fff) AM_READ(cartridge_r)
@@ -1203,7 +1219,7 @@ static ADDRESS_MAP_START( sc9_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sc9d_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::sc9d_map)
AM_IMPORT_FROM( sc9_map )
AM_RANGE(0xa000, 0xa007) AM_MIRROR(0x1ff8) AM_READ(sc9d_input_r)
ADDRESS_MAP_END
@@ -1211,11 +1227,11 @@ ADDRESS_MAP_END
// SC12
-static ADDRESS_MAP_START( sc12_trampoline, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::sc12_trampoline)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(sc12_trampoline_r, sc12_trampoline_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sc12_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::sc12_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x2000, 0x5fff) AM_READ(cartridge_r)
@@ -1229,20 +1245,20 @@ ADDRESS_MAP_END
// Excellence
-static ADDRESS_MAP_START( fexcel_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::fexcel_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x3800) AM_RAM
AM_RANGE(0x4000, 0x4007) AM_MIRROR(0x3ff8) AM_READWRITE(fexcel_ttl_r, fexcel_ttl_w)
//AM_RANGE(0x8000, 0x8000) AM_READNOP // checks for opening book module, but hw doesn't have a module slot
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fexcelp_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::fexcelp_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x2000) AM_RAM
AM_RANGE(0x4000, 0x4007) AM_MIRROR(0x3ff8) AM_READWRITE(fexcel_ttl_r, fexcel_ttl_w)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fexcelb_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::fexcelb_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x2000) AM_RAM
AM_RANGE(0x4000, 0x4007) AM_MIRROR(0x3ff8) AM_READWRITE(fexcelb_ttl_r, fexcel_ttl_w)
AM_RANGE(0x8000, 0xffff) AM_ROM
@@ -1251,7 +1267,7 @@ ADDRESS_MAP_END
// Designer Display, Phantom, Chesster
-static ADDRESS_MAP_START( fdesdis_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::fdesdis_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2007) AM_MIRROR(0x1ff8) AM_READWRITE(fdesdis_input_r, fdesdis_control_w)
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
@@ -1259,13 +1275,13 @@ static ADDRESS_MAP_START( fdesdis_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fphantom_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::fphantom_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chesster_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::chesster_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2007) AM_MIRROR(0x1ff8) AM_READWRITE(fdesdis_input_r, chesster_control_w)
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
@@ -1273,7 +1289,7 @@ static ADDRESS_MAP_START( chesster_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kishon_map, AS_PROGRAM, 8, fidel6502_state )
+ADDRESS_MAP_START(fidel6502_state::kishon_map)
AM_IMPORT_FROM( chesster_map )
AM_RANGE(0x2000, 0x2007) AM_MIRROR(0x1ff8) AM_READWRITE(fdesdis_input_r, kishon_control_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/fidel68k.cpp b/src/mame/drivers/fidel68k.cpp
index 08a0e99a5f7..b10419cebe7 100644
--- a/src/mame/drivers/fidel68k.cpp
+++ b/src/mame/drivers/fidel68k.cpp
@@ -232,6 +232,14 @@ public:
void eagv9(machine_config &config);
void eagv10(machine_config &config);
void eagv11(machine_config &config);
+ void eag_map(address_map &map);
+ void eagv11_map(address_map &map);
+ void eagv7_map(address_map &map);
+ void fdes2265_map(address_map &map);
+ void fdes2325_map(address_map &map);
+ void fex68k_map(address_map &map);
+ void fex68km2_map(address_map &map);
+ void fex68km3_map(address_map &map);
};
@@ -384,7 +392,7 @@ WRITE8_MEMBER(fidel68k_state::eag_mux_w)
// Excel 68000
-static ADDRESS_MAP_START( fex68k_map, AS_PROGRAM, 16, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::fex68k_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x000000, 0x00000f) AM_MIRROR(0x00fff0) AM_WRITE8(eag_leds_w, 0x00ff)
AM_RANGE(0x000000, 0x00000f) AM_MIRROR(0x00fff0) AM_WRITE8(eag_7seg_w, 0xff00)
@@ -393,12 +401,12 @@ static ADDRESS_MAP_START( fex68k_map, AS_PROGRAM, 16, fidel68k_state )
AM_RANGE(0x140000, 0x14000f) AM_MIRROR(0x03fff0) AM_WRITE8(fex68k_mux_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fex68km2_map, AS_PROGRAM, 16, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::fex68km2_map)
AM_IMPORT_FROM( fex68k_map )
AM_RANGE(0x200000, 0x21ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fex68km3_map, AS_PROGRAM, 16, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::fex68km3_map)
AM_IMPORT_FROM( fex68k_map )
AM_RANGE(0x200000, 0x20ffff) AM_RAM
ADDRESS_MAP_END
@@ -406,7 +414,7 @@ ADDRESS_MAP_END
// Designer Master
-static ADDRESS_MAP_START( fdes2265_map, AS_PROGRAM, 16, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::fdes2265_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x000000, 0x00000f) AM_WRITE8(fdes68k_lcd_w, 0x00ff)
@@ -416,7 +424,7 @@ static ADDRESS_MAP_START( fdes2265_map, AS_PROGRAM, 16, fidel68k_state )
AM_RANGE(0x140000, 0x14000f) AM_WRITE8(fdes68k_control_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fdes2325_map, AS_PROGRAM, 32, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::fdes2325_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x10000f) AM_WRITE8(fdes68k_lcd_w, 0x00ff00ff)
@@ -435,7 +443,7 @@ DRIVER_INIT_MEMBER(fidel68k_state, eag)
m_maincpu->space(AS_PROGRAM).install_ram(0x200000, 0x200000 + m_ram->size() - 1, m_ram->pointer());
}
-static ADDRESS_MAP_START( eag_map, AS_PROGRAM, 16, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::eag_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x104000, 0x107fff) AM_RAM
AM_RANGE(0x300000, 0x30000f) AM_MIRROR(0x000010) AM_WRITE8(eag_7seg_w, 0xff00) AM_READNOP
@@ -447,7 +455,7 @@ static ADDRESS_MAP_START( eag_map, AS_PROGRAM, 16, fidel68k_state )
AM_RANGE(0x700002, 0x700003) AM_READ8(eag_input2_r, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eagv7_map, AS_PROGRAM, 32, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::eagv7_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x104000, 0x107fff) AM_RAM
AM_RANGE(0x200000, 0x2fffff) AM_RAM
@@ -461,7 +469,7 @@ static ADDRESS_MAP_START( eagv7_map, AS_PROGRAM, 32, fidel68k_state )
AM_RANGE(0x800000, 0x807fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eagv11_map, AS_PROGRAM, 32, fidel68k_state )
+ADDRESS_MAP_START(fidel68k_state::eagv11_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM
AM_RANGE(0x00200000, 0x003fffff) AM_RAM
AM_RANGE(0x00b00000, 0x00b0000f) AM_MIRROR(0x00000010) AM_WRITE8(eag_7seg_w, 0xff00ff00) AM_READNOP
diff --git a/src/mame/drivers/fidelmcs48.cpp b/src/mame/drivers/fidelmcs48.cpp
index 226d547cc90..4ae62b0a02f 100644
--- a/src/mame/drivers/fidelmcs48.cpp
+++ b/src/mame/drivers/fidelmcs48.cpp
@@ -49,6 +49,7 @@ public:
DECLARE_READ_LINE_MEMBER(sc6_input6_r);
DECLARE_READ_LINE_MEMBER(sc6_input7_r);
void sc6(machine_config &config);
+ void sc6_map(address_map &map);
};
@@ -115,7 +116,7 @@ READ_LINE_MEMBER(fidelmcs48_state::sc6_input7_r)
// SC6
-static ADDRESS_MAP_START( sc6_map, AS_PROGRAM, 8, fidelmcs48_state )
+ADDRESS_MAP_START(fidelmcs48_state::sc6_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/fidelz80.cpp b/src/mame/drivers/fidelz80.cpp
index cb3f7ab6288..b7b18877ae6 100644
--- a/src/mame/drivers/fidelz80.cpp
+++ b/src/mame/drivers/fidelz80.cpp
@@ -588,6 +588,18 @@ public:
DECLARE_WRITE8_MEMBER(dsc_select_w);
DECLARE_READ8_MEMBER(dsc_input_r);
void dsc(machine_config &config);
+ void bcc_io(address_map &map);
+ void bcc_map(address_map &map);
+ void cc10_map(address_map &map);
+ void dsc_map(address_map &map);
+ void scc_io(address_map &map);
+ void scc_map(address_map &map);
+ void vbrc_main_io(address_map &map);
+ void vbrc_main_map(address_map &map);
+ void vcc_io(address_map &map);
+ void vcc_map(address_map &map);
+ void vsc_io(address_map &map);
+ void vsc_map(address_map &map);
};
@@ -1114,7 +1126,7 @@ READ8_MEMBER(fidelz80_state::dsc_input_r)
// CC10 and VCC/UVC
-static ADDRESS_MAP_START( cc10_map, AS_PROGRAM, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::cc10_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_ROM
@@ -1122,13 +1134,13 @@ static ADDRESS_MAP_START( cc10_map, AS_PROGRAM, 8, fidelz80_state )
AM_RANGE(0x3000, 0x30ff) AM_MIRROR(0x0f00) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vcc_map, AS_PROGRAM, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::vcc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vcc_io, AS_IO, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::vcc_io)
ADDRESS_MAP_GLOBAL_MASK(0x03)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
@@ -1136,14 +1148,14 @@ ADDRESS_MAP_END
// BCC
-static ADDRESS_MAP_START( bcc_map, AS_PROGRAM, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::bcc_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x3000, 0x30ff) AM_MIRROR(0x0f00) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bcc_io, AS_IO, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::bcc_io)
ADDRESS_MAP_GLOBAL_MASK(0x07)
AM_RANGE(0x00, 0x07) AM_READWRITE(bcc_input_r, bcc_control_w)
ADDRESS_MAP_END
@@ -1151,12 +1163,12 @@ ADDRESS_MAP_END
// SCC
-static ADDRESS_MAP_START( scc_map, AS_PROGRAM, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::scc_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x5000, 0x50ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scc_io, AS_IO, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::scc_io)
ADDRESS_MAP_GLOBAL_MASK(0x07)
AM_RANGE(0x00, 0x07) AM_READWRITE(scc_input_r, scc_control_w)
ADDRESS_MAP_END
@@ -1164,7 +1176,7 @@ ADDRESS_MAP_END
// VSC
-static ADDRESS_MAP_START( vsc_map, AS_PROGRAM, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::vsc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_MIRROR(0x1000) AM_ROM
@@ -1191,7 +1203,7 @@ WRITE8_MEMBER(fidelz80_state::vsc_io_trampoline_w)
m_z80pio->write(space, offset & 3, data);
}
-static ADDRESS_MAP_START( vsc_io, AS_IO, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::vsc_io)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x0f) AM_READWRITE(vsc_io_trampoline_r, vsc_io_trampoline_w)
ADDRESS_MAP_END
@@ -1199,14 +1211,14 @@ ADDRESS_MAP_END
// VBRC
-static ADDRESS_MAP_START( vbrc_main_map, AS_PROGRAM, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::vbrc_main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1fff) AM_WRITE(vbrc_speech_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vbrc_main_io, AS_IO, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::vbrc_main_io)
ADDRESS_MAP_GLOBAL_MASK(0x01)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("mcu", i8041_device, upi41_master_r, upi41_master_w)
ADDRESS_MAP_END
@@ -1214,7 +1226,7 @@ ADDRESS_MAP_END
// DSC
-static ADDRESS_MAP_START( dsc_map, AS_PROGRAM, 8, fidelz80_state )
+ADDRESS_MAP_START(fidelz80_state::dsc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x1fff) AM_WRITE(dsc_control_w)
diff --git a/src/mame/drivers/finalizr.cpp b/src/mame/drivers/finalizr.cpp
index 4d435da0e38..4ccbbf3aeb8 100644
--- a/src/mame/drivers/finalizr.cpp
+++ b/src/mame/drivers/finalizr.cpp
@@ -104,7 +104,7 @@ WRITE8_MEMBER(finalizr_state::i8039_T0_w)
*/
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, finalizr_state )
+ADDRESS_MAP_START(finalizr_state::main_map)
AM_RANGE(0x0001, 0x0001) AM_WRITEONLY AM_SHARE("scroll")
AM_RANGE(0x0003, 0x0003) AM_WRITE(finalizr_videoctrl_w)
AM_RANGE(0x0004, 0x0004) AM_WRITE(finalizr_flipscreen_w)
@@ -132,11 +132,11 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, finalizr_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, finalizr_state )
+ADDRESS_MAP_START(finalizr_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, finalizr_state )
+ADDRESS_MAP_START(finalizr_state::sound_io_map)
AM_RANGE(0x00, 0xff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/fireball.cpp b/src/mame/drivers/fireball.cpp
index 471fb3ef825..a455e7419ed 100644
--- a/src/mame/drivers/fireball.cpp
+++ b/src/mame/drivers/fireball.cpp
@@ -77,6 +77,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(int_0);
void fireball(machine_config &config);
+ void fireball_io_map(address_map &map);
+ void fireball_map(address_map &map);
protected:
// devices
@@ -291,11 +293,11 @@ WRITE8_MEMBER(fireball_state::p3_w)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( fireball_map, AS_PROGRAM, 8, fireball_state )
+ADDRESS_MAP_START(fireball_state::fireball_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fireball_io_map, AS_IO, 8, fireball_state )
+ADDRESS_MAP_START(fireball_state::fireball_io_map)
AM_RANGE(0x00, 0x01)AM_READWRITE(io_00_r,io_00_w)
AM_RANGE(0x02, 0x03)AM_READWRITE(io_02_r,io_02_w)
diff --git a/src/mame/drivers/firebeat.cpp b/src/mame/drivers/firebeat.cpp
index b59b8fe66f0..748ad07070e 100644
--- a/src/mame/drivers/firebeat.cpp
+++ b/src/mame/drivers/firebeat.cpp
@@ -285,6 +285,8 @@ public:
void firebeat2(machine_config &config);
void firebeat(machine_config &config);
void firebeat_spu(machine_config &config);
+ void firebeat_map(address_map &map);
+ void spu_map(address_map &map);
};
@@ -1052,7 +1054,7 @@ MACHINE_START_MEMBER(firebeat_state,firebeat)
m_maincpu->ppcdrc_add_fastram(0x00000000, 0x01ffffff, false, m_work_ram);
}
-static ADDRESS_MAP_START( firebeat_map, AS_PROGRAM, 32, firebeat_state )
+ADDRESS_MAP_START(firebeat_state::firebeat_map)
AM_RANGE(0x00000000, 0x01ffffff) AM_RAM AM_SHARE("work_ram")
AM_RANGE(0x70000000, 0x70000fff) AM_READWRITE8(midi_uart_r, midi_uart_w, 0xff000000)
AM_RANGE(0x70006000, 0x70006003) AM_WRITE(extend_board_irq_w)
@@ -1075,7 +1077,7 @@ static ADDRESS_MAP_START( firebeat_map, AS_PROGRAM, 32, firebeat_state )
AM_RANGE(0x7ff80000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spu_map, AS_PROGRAM, 16, firebeat_state )
+ADDRESS_MAP_START(firebeat_state::spu_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAM
AM_RANGE(0x200000, 0x200001) AM_READ(spu_unk_r)
diff --git a/src/mame/drivers/firefox.cpp b/src/mame/drivers/firefox.cpp
index 80b7dd022d6..aca384baf0d 100644
--- a/src/mame/drivers/firefox.cpp
+++ b/src/mame/drivers/firefox.cpp
@@ -128,6 +128,8 @@ public:
required_device<generic_latch_8_device> m_soundlatch;
required_device<generic_latch_8_device> m_soundlatch2;
void firefox(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
@@ -545,7 +547,7 @@ void firefox_state::machine_start()
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, firefox_state )
+ADDRESS_MAP_START(firefox_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(tileram_w) AM_SHARE("tileram")
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_SHARE("spriteram")
@@ -584,7 +586,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, firefox_state )
+ADDRESS_MAP_START(firefox_state::audio_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x087f) AM_MIRROR(0x0700) AM_RAM /* RIOT ram */
AM_RANGE(0x0880, 0x089f) AM_MIRROR(0x0760) AM_DEVREADWRITE("riot", riot6532_device, read, write)
diff --git a/src/mame/drivers/firetrap.cpp b/src/mame/drivers/firetrap.cpp
index c57a183b6c4..cec342c6ec2 100644
--- a/src/mame/drivers/firetrap.cpp
+++ b/src/mame/drivers/firetrap.cpp
@@ -347,7 +347,7 @@ WRITE8_MEMBER(firetrap_state::flip_screen_w)
flip_screen_set(data);
}
-static ADDRESS_MAP_START( firetrap_base_map, AS_PROGRAM, 8, firetrap_state )
+ADDRESS_MAP_START(firetrap_state::firetrap_base_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -372,18 +372,18 @@ static ADDRESS_MAP_START( firetrap_base_map, AS_PROGRAM, 8, firetrap_state )
AM_RANGE(0xf014, 0xf014) AM_READ_PORT("DSW1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( firetrap_map, AS_PROGRAM, 8, firetrap_state )
+ADDRESS_MAP_START(firetrap_state::firetrap_map)
AM_IMPORT_FROM( firetrap_base_map )
AM_RANGE(0xf016, 0xf016) AM_READ(firetrap_8751_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( firetrap_bootleg_map, AS_PROGRAM, 8, firetrap_state )
+ADDRESS_MAP_START(firetrap_state::firetrap_bootleg_map)
AM_IMPORT_FROM( firetrap_base_map )
AM_RANGE(0xf016, 0xf016) AM_READ(firetrap_8751_bootleg_r)
AM_RANGE(0xf800, 0xf8ff) AM_ROM /* extra ROM in the bootleg with unprotection code */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, firetrap_state )
+ADDRESS_MAP_START(firetrap_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ymsnd", ym3526_device, write)
AM_RANGE(0x2000, 0x2000) AM_WRITE(adpcm_data_w)
diff --git a/src/mame/drivers/firetrk.cpp b/src/mame/drivers/firetrk.cpp
index 06e8f9efd83..a7b7bb5d3f9 100644
--- a/src/mame/drivers/firetrk.cpp
+++ b/src/mame/drivers/firetrk.cpp
@@ -295,7 +295,7 @@ WRITE8_MEMBER(firetrk_state::crash_reset_w)
}
-static ADDRESS_MAP_START( firetrk_map, AS_PROGRAM, 8, firetrk_state )
+ADDRESS_MAP_START(firetrk_state::firetrk_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM AM_SHARE("alpha_num_ram")
AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0700) AM_RAM AM_SHARE("playfield_ram")
@@ -321,7 +321,7 @@ static ADDRESS_MAP_START( firetrk_map, AS_PROGRAM, 8, firetrk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( superbug_map, AS_PROGRAM, 8, firetrk_state )
+ADDRESS_MAP_START(firetrk_state::superbug_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x0100) AM_MIRROR(0x001f) AM_WRITEONLY AM_SHARE("scroll_y")
@@ -345,7 +345,7 @@ static ADDRESS_MAP_START( superbug_map, AS_PROGRAM, 8, firetrk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( montecar_map, AS_PROGRAM, 8, firetrk_state )
+ADDRESS_MAP_START(firetrk_state::montecar_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM AM_SHARE("alpha_num_ram")
AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0700) AM_RAM AM_SHARE("playfield_ram")
diff --git a/src/mame/drivers/fitfight.cpp b/src/mame/drivers/fitfight.cpp
index 0166c005e76..0d629572446 100644
--- a/src/mame/drivers/fitfight.cpp
+++ b/src/mame/drivers/fitfight.cpp
@@ -130,7 +130,7 @@ WRITE16_MEMBER(fitfight_state::fitfight_700000_w)
m_fof_700000_data = data;
}
-static ADDRESS_MAP_START( fitfight_main_map, AS_PROGRAM, 16, fitfight_state )
+ADDRESS_MAP_START(fitfight_state::fitfight_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_WRITEONLY AM_SHARE("fof_100000")
@@ -183,7 +183,7 @@ static ADDRESS_MAP_START( fitfight_main_map, AS_PROGRAM, 16, fitfight_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM // hot mind uses RAM here (mirror?)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbprot_main_map, AS_PROGRAM, 16, fitfight_state )
+ADDRESS_MAP_START(fitfight_state::bbprot_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_WRITEONLY AM_SHARE("fof_100000")
@@ -217,7 +217,7 @@ ADDRESS_MAP_END
/* 7810 (?) sound cpu */
-static ADDRESS_MAP_START( snd_mem, AS_PROGRAM, 8, fitfight_state )
+ADDRESS_MAP_START(fitfight_state::snd_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") /* ??? External ROM */
AM_RANGE(0x8000, 0x87ff) AM_RAM
diff --git a/src/mame/drivers/fk1.cpp b/src/mame/drivers/fk1.cpp
index 8c6e9562e68..6ac18c1141c 100644
--- a/src/mame/drivers/fk1.cpp
+++ b/src/mame/drivers/fk1.cpp
@@ -63,6 +63,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(vsync_callback);
IRQ_CALLBACK_MEMBER(fk1_irq_callback);
void fk1(machine_config &config);
+ void fk1_io(address_map &map);
+ void fk1_mem(address_map &map);
};
@@ -307,14 +309,14 @@ WRITE8_MEMBER( fk1_state::fk1_reset_int_w )
logerror("fk1_reset_int_w\n");
}
-static ADDRESS_MAP_START(fk1_mem, AS_PROGRAM, 8, fk1_state)
+ADDRESS_MAP_START(fk1_state::fk1_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(fk1_io, AS_IO, 8, fk1_state)
+ADDRESS_MAP_START(fk1_state::fk1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00, 0x03 ) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
diff --git a/src/mame/drivers/flicker.cpp b/src/mame/drivers/flicker.cpp
index a8abf901516..991ce34105c 100644
--- a/src/mame/drivers/flicker.cpp
+++ b/src/mame/drivers/flicker.cpp
@@ -70,6 +70,11 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(test_changed);
void flicker(machine_config &config);
+ void flicker_memory(address_map &map);
+ void flicker_ram_ports(address_map &map);
+ void flicker_rom(address_map &map);
+ void flicker_rom_ports(address_map &map);
+ void flicker_status(address_map &map);
protected:
virtual void driver_start() override;
@@ -85,25 +90,25 @@ private:
};
-static ADDRESS_MAP_START( flicker_rom, i4004_cpu_device::AS_ROM, 8, flicker_state )
+ADDRESS_MAP_START(flicker_state::flicker_rom)
AM_RANGE(0x0000, 0x03ff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flicker_memory, i4004_cpu_device::AS_RAM_MEMORY, 8, flicker_state )
+ADDRESS_MAP_START(flicker_state::flicker_memory)
AM_RANGE(0x0000, 0x003f) AM_RAM AM_SHARE("memory")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flicker_status, i4004_cpu_device::AS_RAM_STATUS, 8, flicker_state )
+ADDRESS_MAP_START(flicker_state::flicker_status)
AM_RANGE(0x0000, 0x000f) AM_RAM AM_SHARE("status")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flicker_rom_ports, i4004_cpu_device::AS_ROM_PORTS, 8, flicker_state )
+ADDRESS_MAP_START(flicker_state::flicker_rom_ports)
AM_RANGE(0x0000, 0x000f) AM_MIRROR(0x0700) AM_WRITE(rom0_out)
AM_RANGE(0x0010, 0x001f) AM_MIRROR(0x0700) AM_WRITE(rom1_out)
AM_RANGE(0x0020, 0x002f) AM_MIRROR(0x0700) AM_READ(rom2_in)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flicker_ram_ports, i4004_cpu_device::AS_RAM_PORTS, 8, flicker_state )
+ADDRESS_MAP_START(flicker_state::flicker_ram_ports)
AM_RANGE(0x00, 0x00) AM_WRITE(ram0_out)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/flipjack.cpp b/src/mame/drivers/flipjack.cpp
index 8e38e912ef5..3198f267fd6 100644
--- a/src/mame/drivers/flipjack.cpp
+++ b/src/mame/drivers/flipjack.cpp
@@ -134,6 +134,10 @@ public:
DECLARE_PALETTE_INIT(flipjack);
uint32_t screen_update_flipjack(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void flipjack(machine_config &config);
+ void flipjack_main_io_map(address_map &map);
+ void flipjack_main_map(address_map &map);
+ void flipjack_sound_io_map(address_map &map);
+ void flipjack_sound_map(address_map &map);
};
@@ -301,7 +305,7 @@ INPUT_CHANGED_MEMBER(flipjack_state::flipjack_coin)
}
-static ADDRESS_MAP_START( flipjack_main_map, AS_PROGRAM, 8, flipjack_state )
+ADDRESS_MAP_START(flipjack_state::flipjack_main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x5fff) AM_RAM
@@ -318,12 +322,12 @@ static ADDRESS_MAP_START( flipjack_main_map, AS_PROGRAM, 8, flipjack_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("fb_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flipjack_main_io_map, AS_IO, 8, flipjack_state )
+ADDRESS_MAP_START(flipjack_state::flipjack_main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xff, 0xff) AM_WRITE(flipjack_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flipjack_sound_map, AS_PROGRAM, 8, flipjack_state )
+ADDRESS_MAP_START(flipjack_state::flipjack_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
@@ -332,7 +336,7 @@ static ADDRESS_MAP_START( flipjack_sound_map, AS_PROGRAM, 8, flipjack_state )
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("ay1", ay8910_device, address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flipjack_sound_io_map, AS_IO, 8, flipjack_state )
+ADDRESS_MAP_START(flipjack_state::flipjack_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(flipjack_sound_nmi_ack_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/flkatck.cpp b/src/mame/drivers/flkatck.cpp
index aaee647cc1d..c13fbf7cce7 100644
--- a/src/mame/drivers/flkatck.cpp
+++ b/src/mame/drivers/flkatck.cpp
@@ -92,7 +92,7 @@ WRITE8_MEMBER(flkatck_state::multiply_w)
}
-static ADDRESS_MAP_START( flkatck_map, AS_PROGRAM, 8, flkatck_state )
+ADDRESS_MAP_START(flkatck_state::flkatck_map)
AM_RANGE(0x0000, 0x0007) AM_RAM_WRITE(flkatck_k007121_regs_w) /* 007121 registers */
AM_RANGE(0x0008, 0x03ff) AM_RAM /* RAM */
AM_RANGE(0x0400, 0x041f) AM_READWRITE(flkatck_ls138_r, flkatck_ls138_w) /* inputs, DIPS, bankswitch, counters, sound command */
@@ -103,7 +103,7 @@ static ADDRESS_MAP_START( flkatck_map, AS_PROGRAM, 8, flkatck_state )
AM_RANGE(0x6000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flkatck_sound_map, AS_PROGRAM, 8, flkatck_state )
+ADDRESS_MAP_START(flkatck_state::flkatck_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */
AM_RANGE(0x9000, 0x9000) AM_READ(multiply_r) // 007452: Protection (see wecleman, but unused here?)
diff --git a/src/mame/drivers/flower.cpp b/src/mame/drivers/flower.cpp
index 7f8d679c5f1..fc1a66688c1 100644
--- a/src/mame/drivers/flower.cpp
+++ b/src/mame/drivers/flower.cpp
@@ -121,6 +121,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void flower(machine_config &config);
+ void audio_map(address_map &map);
+ void shared_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -333,7 +335,7 @@ WRITE8_MEMBER(flower_state::fgvram_w)
m_fg_tilemap->mark_tile_dirty(offset & 0xff);
}
-static ADDRESS_MAP_START( shared_map, AS_PROGRAM, 8, flower_state )
+ADDRESS_MAP_START(flower_state::shared_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("workram")
AM_RANGE(0xa000, 0xa000) AM_WRITENOP
@@ -354,7 +356,7 @@ static ADDRESS_MAP_START( shared_map, AS_PROGRAM, 8, flower_state )
AM_RANGE(0xfa00, 0xfa00) AM_RAM AM_SHARE("bgscroll")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, flower_state )
+ADDRESS_MAP_START(flower_state::audio_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_WRITENOP // audio irq related (0 at start, 1 at end)
AM_RANGE(0x4001, 0x4001) AM_WRITE(audio_nmi_mask_w)
diff --git a/src/mame/drivers/flstory.cpp b/src/mame/drivers/flstory.cpp
index 32eeadf939c..1b0ef8c3004 100644
--- a/src/mame/drivers/flstory.cpp
+++ b/src/mame/drivers/flstory.cpp
@@ -32,7 +32,7 @@ WRITE8_MEMBER(flstory_state::snd_reset_w)
m_audiocpu->set_input_line(INPUT_LINE_RESET, (data & 1 ) ? ASSERT_LINE : CLEAR_LINE);
}
-static ADDRESS_MAP_START( base_map, AS_PROGRAM, 8, flstory_state )
+ADDRESS_MAP_START(flstory_state::base_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
// rumba lumber reads area 0xc800-0xcfff
@@ -63,7 +63,7 @@ static ADDRESS_MAP_START( base_map, AS_PROGRAM, 8, flstory_state )
AM_RANGE(0xe000, 0xe7ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("workram") /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flstory_map, AS_PROGRAM, 8, flstory_state )
+ADDRESS_MAP_START(flstory_state::flstory_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xd000, 0xd000) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
@@ -73,7 +73,7 @@ static ADDRESS_MAP_START( flstory_map, AS_PROGRAM, 8, flstory_state )
AM_RANGE(0xdf03, 0xdf03) AM_WRITE(flstory_gfxctrl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( onna34ro_map, AS_PROGRAM, 8, flstory_state )
+ADDRESS_MAP_START(flstory_state::onna34ro_map)
AM_IMPORT_FROM(base_map)
// AM_RANGE(0xd000, 0xd000) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
// AM_RANGE(0xd805, 0xd805) AM_READ(flstory_mcu_status_r)
@@ -82,7 +82,7 @@ static ADDRESS_MAP_START( onna34ro_map, AS_PROGRAM, 8, flstory_state )
AM_RANGE(0xdf03, 0xdf03) AM_WRITE(flstory_gfxctrl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( onna34ro_mcu_map, AS_PROGRAM, 8, flstory_state )
+ADDRESS_MAP_START(flstory_state::onna34ro_mcu_map)
AM_IMPORT_FROM(onna34ro_map)
AM_RANGE(0xd000, 0xd000) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
AM_RANGE(0xd805, 0xd805) AM_READ(flstory_mcu_status_r)
@@ -95,7 +95,7 @@ CUSTOM_INPUT_MEMBER(flstory_state::victnine_mcu_status_bit01_r)
return (victnine_mcu_status_r(space, 0) & 3);
}
-static ADDRESS_MAP_START( victnine_map, AS_PROGRAM, 8, flstory_state )
+ADDRESS_MAP_START(flstory_state::victnine_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xd000, 0xd000) AM_READWRITE(victnine_mcu_r, victnine_mcu_w)
@@ -106,7 +106,7 @@ static ADDRESS_MAP_START( victnine_map, AS_PROGRAM, 8, flstory_state )
AM_RANGE(0xdce1, 0xdce1) AM_WRITENOP /* unknown */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rumba_map, AS_PROGRAM, 8, flstory_state )
+ADDRESS_MAP_START(flstory_state::rumba_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xd000, 0xd000) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
@@ -162,7 +162,7 @@ WRITE8_MEMBER(flstory_state::sound_control_3_w)
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, flstory_state )
+ADDRESS_MAP_START(flstory_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ym2149_device, address_data_w)
diff --git a/src/mame/drivers/flyball.cpp b/src/mame/drivers/flyball.cpp
index a13bf997335..0a27faa84fc 100644
--- a/src/mame/drivers/flyball.cpp
+++ b/src/mame/drivers/flyball.cpp
@@ -98,6 +98,7 @@ public:
TIMER_CALLBACK_MEMBER(quarter_callback);
void flyball(machine_config &config);
+ void flyball_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -294,7 +295,7 @@ WRITE_LINE_MEMBER(flyball_state::lamp_w)
*
*************************************/
-static ADDRESS_MAP_START( flyball_map, AS_PROGRAM, 8, flyball_state )
+ADDRESS_MAP_START(flyball_state::flyball_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x100) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_NOP
diff --git a/src/mame/drivers/fm7.cpp b/src/mame/drivers/fm7.cpp
index 9749dafd6b1..308e8e313c3 100644
--- a/src/mame/drivers/fm7.cpp
+++ b/src/mame/drivers/fm7.cpp
@@ -1430,7 +1430,7 @@ WRITE_LINE_MEMBER(fm7_state::fm77av_fmirq)
FFF0 - FFFF: Interrupt vector table
*/
// The FM-7 has only 64kB RAM, so we'll worry about banking when we do the later models
-static ADDRESS_MAP_START( fm7_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm7_mem)
AM_RANGE(0x0000,0x7fff) AM_RAM
AM_RANGE(0x8000,0xfbff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2") // also F-BASIC ROM, when enabled
AM_RANGE(0xfc00,0xfc7f) AM_RAM
@@ -1458,7 +1458,7 @@ static ADDRESS_MAP_START( fm7_mem, AS_PROGRAM, 8, fm7_state )
AM_RANGE(0xfff0,0xffff) AM_READWRITE(vector_r,vector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm8_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm8_mem)
AM_RANGE(0x0000,0x7fff) AM_RAM
AM_RANGE(0x8000,0xfbff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2") // also F-BASIC ROM, when enabled
AM_RANGE(0xfc00,0xfc7f) AM_RAM
@@ -1495,7 +1495,7 @@ ADDRESS_MAP_END
FFF0 - FFFF: Interrupt vector table
*/
-static ADDRESS_MAP_START( fm7_sub_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm7_sub_mem)
AM_RANGE(0x0000,0xbfff) AM_READWRITE(fm7_vram_r,fm7_vram_w) // VRAM
AM_RANGE(0xc000,0xcfff) AM_RAM // Console RAM
AM_RANGE(0xd000,0xd37f) AM_RAM // Work RAM
@@ -1512,7 +1512,7 @@ static ADDRESS_MAP_START( fm7_sub_mem, AS_PROGRAM, 8, fm7_state )
AM_RANGE(0xd800,0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm11_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm11_mem)
AM_RANGE(0x0000,0x0fff) AM_DEVREADWRITE("av_bank1", address_map_bank_device, read8, write8)
AM_RANGE(0x1000,0x1fff) AM_DEVREADWRITE("av_bank2", address_map_bank_device, read8, write8)
AM_RANGE(0x2000,0x2fff) AM_DEVREADWRITE("av_bank3", address_map_bank_device, read8, write8)
@@ -1563,7 +1563,7 @@ static ADDRESS_MAP_START( fm11_mem, AS_PROGRAM, 8, fm7_state )
ADDRESS_MAP_END
// Much of this is guesswork at the moment
-static ADDRESS_MAP_START( fm11_sub_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm11_sub_mem)
AM_RANGE(0x0000,0x7fff) AM_READWRITE(fm7_vram_r,fm7_vram_w) // VRAM
AM_RANGE(0x8000,0x8fff) AM_RAM // Console RAM(?)
AM_RANGE(0x9000,0x9f7f) AM_RAM // Work RAM(?)
@@ -1575,13 +1575,13 @@ static ADDRESS_MAP_START( fm11_sub_mem, AS_PROGRAM, 8, fm7_state )
AM_RANGE(0xc000,0xffff) AM_ROM // sybsystem ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm11_x86_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm11_x86_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0xfefff) AM_RAM
AM_RANGE(0xff000,0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm11_x86_io, AS_IO, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm11_x86_io)
AM_RANGE(0xfd00,0xfd01) AM_READWRITE(fm7_keyboard_r,fm7_cassette_printer_w)
AM_RANGE(0xfd02,0xfd02) AM_READWRITE(fm7_cassette_printer_r,fm7_irq_mask_w) // IRQ mask
AM_RANGE(0xfd03,0xfd03) AM_READWRITE(fm7_irq_cause_r,fm7_beeper_w) // IRQ flags
@@ -1598,12 +1598,12 @@ static ADDRESS_MAP_START( fm11_x86_io, AS_IO, 8, fm7_state )
AM_RANGE(0xfd40,0xfdff) AM_READ(fm7_unknown_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm16_mem, AS_PROGRAM, 16, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm16_mem)
AM_RANGE(0x00000,0xfbfff) AM_RAM
AM_RANGE(0xfc000,0xfffff) AM_ROM // IPL
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm16_io, AS_IO, 16, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm16_io)
AM_RANGE(0xfd00,0xfd01) AM_READWRITE8(fm7_keyboard_r,fm7_cassette_printer_w,0xffff)
AM_RANGE(0xfd02,0xfd03) AM_READWRITE8(fm7_cassette_printer_r,fm7_irq_mask_w,0x00ff) // IRQ mask
AM_RANGE(0xfd02,0xfd03) AM_READWRITE8(fm7_irq_cause_r,fm7_beeper_w,0xff00) // IRQ flags
@@ -1620,12 +1620,12 @@ static ADDRESS_MAP_START( fm16_io, AS_IO, 16, fm7_state )
// AM_RANGE(0xfd40,0xfdff) AM_READ8(fm7_unknown_r,0xffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm16_sub_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm16_sub_mem)
AM_RANGE(0x0000,0xafff) AM_READWRITE(fm7_vram_r,fm7_vram_w) // VRAM
AM_RANGE(0xb000,0xffff) AM_ROM // subsystem ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm77av_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm77av_mem)
AM_RANGE(0x0000,0x0fff) AM_DEVREADWRITE("av_bank1", address_map_bank_device, read8, write8)
AM_RANGE(0x1000,0x1fff) AM_DEVREADWRITE("av_bank2", address_map_bank_device, read8, write8)
AM_RANGE(0x2000,0x2fff) AM_DEVREADWRITE("av_bank3", address_map_bank_device, read8, write8)
@@ -1680,7 +1680,7 @@ static ADDRESS_MAP_START( fm77av_mem, AS_PROGRAM, 8, fm7_state )
AM_RANGE(0xfff0,0xffff) AM_READWRITE(vector_r,vector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm77av_sub_mem, AS_PROGRAM, 8, fm7_state )
+ADDRESS_MAP_START(fm7_state::fm77av_sub_mem)
AM_RANGE(0x0000,0xbfff) AM_READWRITE(fm7_vram_r,fm7_vram_w) // VRAM
AM_RANGE(0xc000,0xcfff) AM_RAM AM_REGION("maincpu",0x1c000) // Console RAM
AM_RANGE(0xd000,0xd37f) AM_RAM AM_REGION("maincpu",0x1d000) // Work RAM
@@ -1702,7 +1702,7 @@ static ADDRESS_MAP_START( fm77av_sub_mem, AS_PROGRAM, 8, fm7_state )
AM_RANGE(0xe000,0xffff) AM_ROMBANK("bank21")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fm7_banked_mem, AS_PROGRAM, 8, fm7_state)
+ADDRESS_MAP_START(fm7_state::fm7_banked_mem)
// Extended RAM
AM_RANGE(0x00000,0x0ffff) AM_RAM AM_REGION("maincpu",0x00000)
diff --git a/src/mame/drivers/fmtowns.cpp b/src/mame/drivers/fmtowns.cpp
index 17999700f26..becdc303453 100644
--- a/src/mame/drivers/fmtowns.cpp
+++ b/src/mame/drivers/fmtowns.cpp
@@ -2190,7 +2190,7 @@ WRITE_LINE_MEMBER( towns_state::towns_syndet_irq )
}
-static ADDRESS_MAP_START(towns_mem, AS_PROGRAM, 32, towns_state)
+ADDRESS_MAP_START(towns_state::towns_mem)
// memory map based on FM-Towns/Bochs (Bochs modified to emulate the FM-Towns)
// may not be (and probably is not) correct
AM_RANGE(0x00000000, 0x000bffff) AM_RAM
@@ -2219,7 +2219,7 @@ static ADDRESS_MAP_START(towns_mem, AS_PROGRAM, 32, towns_state)
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("user",0x200000) // SYSTEM ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(marty_mem, AS_PROGRAM, 16, towns_state)
+ADDRESS_MAP_START(towns_state::marty_mem)
AM_RANGE(0x00000000, 0x000bffff) AM_RAM
AM_RANGE(0x000c0000, 0x000c7fff) AM_READWRITE8(towns_gfx_r,towns_gfx_w,0xffff)
AM_RANGE(0x000c8000, 0x000cafff) AM_READWRITE8(towns_spriteram_low_r,towns_spriteram_low_w,0xffff)
@@ -2244,7 +2244,7 @@ static ADDRESS_MAP_START(marty_mem, AS_PROGRAM, 16, towns_state)
AM_RANGE(0x00fc0000, 0x00ffffff) AM_ROM AM_REGION("user",0x200000) // SYSTEM ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ux_mem, AS_PROGRAM, 16, towns_state)
+ADDRESS_MAP_START(towns_state::ux_mem)
AM_RANGE(0x00000000, 0x000bffff) AM_RAM
AM_RANGE(0x000c0000, 0x000c7fff) AM_READWRITE8(towns_gfx_r,towns_gfx_w,0xffff)
AM_RANGE(0x000c8000, 0x000cafff) AM_READWRITE8(towns_spriteram_low_r,towns_spriteram_low_w,0xffff)
@@ -2268,7 +2268,7 @@ static ADDRESS_MAP_START(ux_mem, AS_PROGRAM, 16, towns_state)
AM_RANGE(0x00fc0000, 0x00ffffff) AM_ROM AM_REGION("user",0x200000) // SYSTEM ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( towns_io , AS_IO, 32, towns_state)
+ADDRESS_MAP_START(towns_state::towns_io)
// I/O ports derived from FM Towns/Bochs, these are specific to the FM Towns
// System ports
ADDRESS_MAP_UNMAP_HIGH
@@ -2327,7 +2327,7 @@ static ADDRESS_MAP_START( towns_io , AS_IO, 32, towns_state)
AM_RANGE(0xff80,0xffff) AM_READWRITE8(towns_video_cff80_r,towns_video_cff80_w,0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( towns16_io , AS_IO, 16, towns_state) // for the 386SX based systems
+ADDRESS_MAP_START(towns_state::towns16_io) // for the 386SX based systems
// System ports
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x0003) AM_DEVREADWRITE8("pic8259_master", pic8259_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/fontwriter.cpp b/src/mame/drivers/fontwriter.cpp
index 22e37bdf154..0461ef49ccf 100644
--- a/src/mame/drivers/fontwriter.cpp
+++ b/src/mame/drivers/fontwriter.cpp
@@ -44,6 +44,8 @@ public:
return m_vbl;
}
void fontwriter(machine_config &config);
+ void io_map(address_map &map);
+ void main_map(address_map &map);
protected:
// devices
@@ -72,7 +74,7 @@ uint32_t fontwriter_state::screen_update(screen_device &screen, bitmap_rgb32 &bi
return 0;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, fontwriter_state )
+ADDRESS_MAP_START(fontwriter_state::main_map)
AM_RANGE(0x002000, 0x007fff) AM_RAM
AM_RANGE(0x008000, 0x00ffff) AM_ROM AM_REGION("maincpu", 0x0000)
AM_RANGE(0x020000, 0x04ffff) AM_RAM
@@ -80,7 +82,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, fontwriter_state )
AM_RANGE(0x200000, 0x3fffff) AM_ROM AM_REGION("maincpu", 0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, fontwriter_state )
+ADDRESS_MAP_START(fontwriter_state::io_map)
AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READ(vbl_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/foodf.cpp b/src/mame/drivers/foodf.cpp
index 9b3f014a589..83b270455d1 100644
--- a/src/mame/drivers/foodf.cpp
+++ b/src/mame/drivers/foodf.cpp
@@ -207,7 +207,7 @@ WRITE16_MEMBER(foodf_state::analog_w)
*************************************/
// complete memory map derived from schematics
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, foodf_state )
+ADDRESS_MAP_START(foodf_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x00ffff) AM_MIRROR(0x3e0000) AM_ROM
AM_RANGE(0x014000, 0x014fff) AM_MIRROR(0x3e3000) AM_RAM
diff --git a/src/mame/drivers/force68k.cpp b/src/mame/drivers/force68k.cpp
index a90a044a703..d3e60ad6772 100644
--- a/src/mame/drivers/force68k.cpp
+++ b/src/mame/drivers/force68k.cpp
@@ -204,6 +204,7 @@ public:
void fccpu1_eprom_sockets(machine_config &config);
void fccpu1(machine_config &config);
+ void force68k_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<mm58167_device> m_rtc;
@@ -232,7 +233,7 @@ private:
required_device<generic_slot_device> m_cart;
};
-static ADDRESS_MAP_START (force68k_mem, AS_PROGRAM, 16, force68k_state)
+ADDRESS_MAP_START(force68k_state::force68k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x000000, 0x000007) AM_ROM AM_READ (bootvect_r) /* Vectors mapped from System EPROM */
AM_RANGE (0x000008, 0x01ffff) AM_RAM /* DRAM CPU-1B */
diff --git a/src/mame/drivers/forte2.cpp b/src/mame/drivers/forte2.cpp
index e03634ab806..1b15de7d167 100644
--- a/src/mame/drivers/forte2.cpp
+++ b/src/mame/drivers/forte2.cpp
@@ -62,16 +62,18 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void pesadelo(machine_config &config);
+ void io_mem(address_map &map);
+ void program_mem(address_map &map);
};
-static ADDRESS_MAP_START( program_mem, AS_PROGRAM, 8, forte2_state )
+ADDRESS_MAP_START(forte2_state::program_mem)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_mem, AS_IO, 8, forte2_state )
+ADDRESS_MAP_START(forte2_state::io_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x98, 0x98) AM_DEVREADWRITE( "tms9928a", tms9928a_device, vram_read, vram_write )
diff --git a/src/mame/drivers/fortecar.cpp b/src/mame/drivers/fortecar.cpp
index 16c422a8024..6275f44bd7e 100644
--- a/src/mame/drivers/fortecar.cpp
+++ b/src/mame/drivers/fortecar.cpp
@@ -358,6 +358,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void fortecar(machine_config &config);
+ void fortecar_map(address_map &map);
+ void fortecar_ports(address_map &map);
};
@@ -533,14 +535,14 @@ Seems to work properly, but must be checked closely...
* Memory Map Information *
***********************************/
-static ADDRESS_MAP_START( fortecar_map, AS_PROGRAM, 8, fortecar_state )
+ADDRESS_MAP_START(fortecar_state::fortecar_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_ROM
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xd800, 0xffff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fortecar_ports, AS_IO, 8, fortecar_state )
+ADDRESS_MAP_START(fortecar_state::fortecar_ports)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x20, 0x20) AM_DEVWRITE("crtc", mc6845_device, address_w) // pc=444
AM_RANGE(0x21, 0x21) AM_DEVWRITE("crtc", mc6845_device, register_w)
diff --git a/src/mame/drivers/fp1100.cpp b/src/mame/drivers/fp1100.cpp
index 12d1a11baec..dbce9167c59 100644
--- a/src/mame/drivers/fp1100.cpp
+++ b/src/mame/drivers/fp1100.cpp
@@ -92,6 +92,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_c);
required_device<palette_device> m_palette;
void fp1100(machine_config &config);
+ void io_map(address_map &map);
+ void main_map(address_map &map);
+ void sub_map(address_map &map);
private:
uint8_t m_irq_mask;
uint8_t m_main_latch;
@@ -209,13 +212,13 @@ READ8_MEMBER( fp1100_state::slot_id_r )
return m_slot[m_slot_num & 7].id;
}
-static ADDRESS_MAP_START(main_map, AS_PROGRAM, 8, fp1100_state )
+ADDRESS_MAP_START(fp1100_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x8fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x9000, 0xffff) AM_RAM AM_REGION("wram", 0x9000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, fp1100_state )
+ADDRESS_MAP_START(fp1100_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x0000, 0xfeff) slot memory area
AM_RANGE(0xff00, 0xff7f) AM_READWRITE(slot_id_r,slot_bank_w)
@@ -272,7 +275,7 @@ WRITE8_MEMBER( fp1100_state::kbd_row_w )
m_beep->set_state(BIT(data, 4));
}
-static ADDRESS_MAP_START(sub_map, AS_PROGRAM, 8, fp1100_state )
+ADDRESS_MAP_START(fp1100_state::sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("sub_ipl",0x0000)
AM_RANGE(0x2000, 0xdfff) AM_RAM AM_SHARE("videoram") //vram B/R/G
AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x3fe) AM_DEVREADWRITE("crtc", mc6845_device, status_r,address_w)
diff --git a/src/mame/drivers/fp200.cpp b/src/mame/drivers/fp200.cpp
index 8aaba390daa..2d5ed4bf170 100644
--- a/src/mame/drivers/fp200.cpp
+++ b/src/mame/drivers/fp200.cpp
@@ -69,6 +69,8 @@ public:
DECLARE_PALETTE_INIT(fp200);
void fp200(machine_config &config);
+ void fp200_io(address_map &map);
+ void fp200_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -410,7 +412,7 @@ WRITE8_MEMBER(fp200_state::fp200_io_w)
}
}
-static ADDRESS_MAP_START( fp200_map, AS_PROGRAM, 8, fp200_state )
+ADDRESS_MAP_START(fp200_state::fp200_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
// 0xa000, 0xffff exp RAM
@@ -419,7 +421,7 @@ static ADDRESS_MAP_START( fp200_map, AS_PROGRAM, 8, fp200_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fp200_io, AS_IO, 8, fp200_state )
+ADDRESS_MAP_START(fp200_state::fp200_io)
AM_RANGE(0x00, 0xff) AM_READWRITE(fp200_io_r,fp200_io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/fp6000.cpp b/src/mame/drivers/fp6000.cpp
index a40e2e3dd30..44da3a053ef 100644
--- a/src/mame/drivers/fp6000.cpp
+++ b/src/mame/drivers/fp6000.cpp
@@ -63,6 +63,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void fp6000(machine_config &config);
+ void fp6000_io(address_map &map);
+ void fp6000_map(address_map &map);
};
void fp6000_state::video_start()
@@ -174,7 +176,7 @@ WRITE8_MEMBER(fp6000_state::fp6000_6845_data_w)
m_crtc->register_w(space, offset, data);
}
-static ADDRESS_MAP_START(fp6000_map, AS_PROGRAM, 16, fp6000_state )
+ADDRESS_MAP_START(fp6000_state::fp6000_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0xbffff) AM_RAM
AM_RANGE(0xc0000,0xdffff) AM_RAM AM_SHARE("gvram")//gvram
@@ -224,7 +226,7 @@ READ16_MEMBER(fp6000_state::pit_r)
return machine().rand();
}
-static ADDRESS_MAP_START(fp6000_io, AS_IO, 16, fp6000_state )
+ADDRESS_MAP_START(fp6000_state::fp6000_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x08, 0x09) AM_READ(ex_board_r) // BIOS of some sort ...
AM_RANGE(0x0a, 0x0b) AM_READ_PORT("DSW") // installed RAM id?
diff --git a/src/mame/drivers/freekick.cpp b/src/mame/drivers/freekick.cpp
index 89c5c93d7a7..99ae8a12c8b 100644
--- a/src/mame/drivers/freekick.cpp
+++ b/src/mame/drivers/freekick.cpp
@@ -190,7 +190,7 @@ WRITE8_MEMBER(freekick_state::freekick_ff_w)
*
*************************************/
-static ADDRESS_MAP_START( omega_map, AS_PROGRAM, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::omega_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM // ram is 2x sony cxk5813d-55
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(freek_videoram_w) AM_SHARE("videoram")
@@ -207,7 +207,7 @@ static ADDRESS_MAP_START( omega_map, AS_PROGRAM, 8, freekick_state )
AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76489a_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pbillrd_map, AS_PROGRAM, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::pbillrd_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -225,12 +225,12 @@ static ADDRESS_MAP_START( pbillrd_map, AS_PROGRAM, 8, freekick_state )
AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76489a_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank0d")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1d")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( freekick_map, AS_PROGRAM, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::freekick_map)
AM_RANGE(0x0000, 0xcfff) AM_ROM
AM_RANGE(0xd000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(freek_videoram_w) AM_SHARE("videoram") // tilemap
@@ -248,7 +248,7 @@ static ADDRESS_MAP_START( freekick_map, AS_PROGRAM, 8, freekick_state )
AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76489a_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gigas_map, AS_PROGRAM, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::gigas_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(freek_videoram_w) AM_SHARE("videoram")
@@ -265,19 +265,19 @@ static ADDRESS_MAP_START( gigas_map, AS_PROGRAM, 8, freekick_state )
AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76489a_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( omega_io_map, AS_IO, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::omega_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(spinner_r, gigas_spinner_select_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gigas_io_map, AS_IO, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::gigas_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(spinner_r, gigas_spinner_select_w)
AM_RANGE(0x01, 0x01) AM_READNOP //unused dip 3
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oigas_io_map, AS_IO, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::oigas_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(spinner_r, gigas_spinner_select_w)
AM_RANGE(0x01, 0x01) AM_READNOP //unused dip 3
@@ -286,7 +286,7 @@ static ADDRESS_MAP_START( oigas_io_map, AS_IO, 8, freekick_state )
AM_RANGE(0x05, 0x05) AM_WRITE(oigas_5_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( freekick_io_map, AS_IO, 8, freekick_state )
+ADDRESS_MAP_START(freekick_state::freekick_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xff, 0xff) AM_READWRITE(freekick_ff_r, freekick_ff_w)
ADDRESS_MAP_END
@@ -721,7 +721,7 @@ MACHINE_CONFIG_START(freekick_state::omega)
MCFG_CPU_ADD("maincpu", MC8123, XTAL(18'432'000)/6) // unknown divisor
MCFG_CPU_PROGRAM_MAP(omega_map)
MCFG_CPU_IO_MAP(omega_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_PERIODIC_INT_DRIVER(freekick_state, irq0_line_hold, 120) // measured on PCB
MCFG_CPU_VBLANK_INT_DRIVER("screen", freekick_state, freekick_irqgen)
@@ -808,7 +808,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(freekick_state::pbillrdm, pbillrd)
MCFG_CPU_REPLACE("maincpu", MC8123, XTAL(12'000'000)/4)
MCFG_CPU_PROGRAM_MAP(pbillrd_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_PERIODIC_INT_DRIVER(freekick_state, irq0_line_hold, 120) // measured on PCB
MCFG_CPU_VBLANK_INT_DRIVER("screen", freekick_state, freekick_irqgen)
MACHINE_CONFIG_END
@@ -848,7 +848,7 @@ MACHINE_CONFIG_DERIVED(freekick_state::gigas, base)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(gigas_map)
MCFG_CPU_IO_MAP(gigas_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_DEVICE_MODIFY("outlatch")
MCFG_ADDRESSABLE_LATCH_Q0_OUT_CB(WRITELINE(freekick_state, flipscreen_w))
@@ -868,7 +868,7 @@ MACHINE_CONFIG_DERIVED(freekick_state::gigasm, base)
MCFG_CPU_REPLACE("maincpu", MC8123, XTAL(12'000'000)/4)
MCFG_CPU_PROGRAM_MAP(gigas_map)
MCFG_CPU_IO_MAP(gigas_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_PERIODIC_INT_DRIVER(freekick_state, irq0_line_hold, 120) // measured on PCB
MCFG_CPU_VBLANK_INT_DRIVER("screen", freekick_state, freekick_irqgen)
diff --git a/src/mame/drivers/fresh.cpp b/src/mame/drivers/fresh.cpp
index 9d37dcf1c68..52626cb339a 100644
--- a/src/mame/drivers/fresh.cpp
+++ b/src/mame/drivers/fresh.cpp
@@ -102,6 +102,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void fresh(machine_config &config);
+ void fresh_map(address_map &map);
};
@@ -168,7 +169,7 @@ uint32_t fresh_state::screen_update_fresh(screen_device &screen, bitmap_ind16 &b
}
-static ADDRESS_MAP_START( fresh_map, AS_PROGRAM, 16, fresh_state )
+ADDRESS_MAP_START(fresh_state::fresh_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0xc00000, 0xc0ffff) AM_RAM_WRITE(fresh_bg_2_videoram_w) AM_SHARE("bg_videoram_2")
diff --git a/src/mame/drivers/fromanc2.cpp b/src/mame/drivers/fromanc2.cpp
index fdf84aeb6f2..1d202ee2d4c 100644
--- a/src/mame/drivers/fromanc2.cpp
+++ b/src/mame/drivers/fromanc2.cpp
@@ -171,7 +171,7 @@ WRITE16_MEMBER(fromanc2_state::uart_w)
*
*************************************/
-static ADDRESS_MAP_START( fromanc2_main_map, AS_PROGRAM, 16, fromanc2_state )
+ADDRESS_MAP_START(fromanc2_state::fromanc2_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // MAIN ROM
AM_RANGE(0x802000, 0x802fff) AM_READNOP // ???
@@ -204,7 +204,7 @@ static ADDRESS_MAP_START( fromanc2_main_map, AS_PROGRAM, 16, fromanc2_state )
AM_RANGE(0xd80000, 0xd8ffff) AM_RAM // WORK RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromancr_main_map, AS_PROGRAM, 16, fromanc2_state )
+ADDRESS_MAP_START(fromanc2_state::fromancr_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // MAIN ROM
AM_RANGE(0x800000, 0x803fff) AM_WRITE(fromancr_videoram_0_w) // VRAM BG (1P/2P)
@@ -232,7 +232,7 @@ static ADDRESS_MAP_START( fromancr_main_map, AS_PROGRAM, 16, fromanc2_state )
AM_RANGE(0xd80000, 0xd8ffff) AM_RAM // WORK RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromanc4_main_map, AS_PROGRAM, 16, fromanc2_state )
+ADDRESS_MAP_START(fromanc2_state::fromanc4_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // MAIN ROM
AM_RANGE(0x400000, 0x7fffff) AM_ROM // DATA ROM
@@ -267,14 +267,14 @@ static ADDRESS_MAP_START( fromanc4_main_map, AS_PROGRAM, 16, fromanc2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromanc2_sub_map, AS_PROGRAM, 8, fromanc2_state )
+ADDRESS_MAP_START(fromanc2_state::fromanc2_sub_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") // ROM(BANK)
AM_RANGE(0x8000, 0xbfff) AM_RAM // RAM(WORK)
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank2") // RAM(BANK)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromanc2_sub_io_map, AS_IO, 8, fromanc2_state )
+ADDRESS_MAP_START(fromanc2_state::fromanc2_sub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(fromanc2_subcpu_rombank_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(fromanc2_maincpu_r_l, fromanc2_maincpu_w_l) // to/from MAIN CPU
@@ -283,12 +283,12 @@ static ADDRESS_MAP_START( fromanc2_sub_io_map, AS_IO, 8, fromanc2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromanc2_sound_map, AS_PROGRAM, 8, fromanc2_state )
+ADDRESS_MAP_START(fromanc2_state::fromanc2_sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromanc2_sound_io_map, AS_IO, 8, fromanc2_state )
+ADDRESS_MAP_START(fromanc2_state::fromanc2_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITENOP // snd cmd (1P) / ?
AM_RANGE(0x04, 0x04) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) // snd cmd (2P)
diff --git a/src/mame/drivers/fromance.cpp b/src/mame/drivers/fromance.cpp
index 947d761459b..27132a50be6 100644
--- a/src/mame/drivers/fromance.cpp
+++ b/src/mame/drivers/fromance.cpp
@@ -225,7 +225,7 @@ WRITE8_MEMBER(fromance_state::fromance_coinctr_w)
*
*************************************/
-static ADDRESS_MAP_START( nekkyoku_main_map, AS_PROGRAM, 8, fromance_state )
+ADDRESS_MAP_START(fromance_state::nekkyoku_main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xf000, 0xf000) AM_READ_PORT("SERVICE") AM_WRITE(fromance_portselect_w)
@@ -236,7 +236,7 @@ static ADDRESS_MAP_START( nekkyoku_main_map, AS_PROGRAM, 8, fromance_state )
AM_RANGE(0xf005, 0xf005) AM_READ_PORT("DSW1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromance_main_map, AS_PROGRAM, 8, fromance_state )
+ADDRESS_MAP_START(fromance_state::fromance_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0x9e89, 0x9e89) AM_READNOP // unknown (idolmj)
@@ -256,7 +256,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( nekkyoku_sub_map, AS_PROGRAM, 8, fromance_state )
+ADDRESS_MAP_START(fromance_state::nekkyoku_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xefff) AM_READWRITE(fromance_videoram_r, fromance_videoram_w)
@@ -264,7 +264,7 @@ static ADDRESS_MAP_START( nekkyoku_sub_map, AS_PROGRAM, 8, fromance_state )
AM_RANGE(0xf800, 0xffff) AM_READWRITE(fromance_paletteram_r, fromance_paletteram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromance_sub_map, AS_PROGRAM, 8, fromance_state )
+ADDRESS_MAP_START(fromance_state::fromance_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -280,7 +280,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( nekkyoku_sub_io_map, AS_IO, 8, fromance_state )
+ADDRESS_MAP_START(fromance_state::nekkyoku_sub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("gga", vsystem_gga_device, write)
AM_RANGE(0x12, 0x12) AM_READNOP // unknown
@@ -293,7 +293,7 @@ static ADDRESS_MAP_START( nekkyoku_sub_io_map, AS_IO, 8, fromance_state )
AM_RANGE(0xe9, 0xea) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( idolmj_sub_io_map, AS_IO, 8, fromance_state )
+ADDRESS_MAP_START(fromance_state::idolmj_sub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("gga", vsystem_gga_device, write)
AM_RANGE(0x12, 0x12) AM_READNOP // unknown
@@ -306,7 +306,7 @@ static ADDRESS_MAP_START( idolmj_sub_io_map, AS_IO, 8, fromance_state )
AM_RANGE(0x29, 0x2a) AM_DEVWRITE("aysnd", ym2149_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fromance_sub_io_map, AS_IO, 8, fromance_state )
+ADDRESS_MAP_START(fromance_state::fromance_sub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("gga", vsystem_gga_device, write)
AM_RANGE(0x12, 0x12) AM_READNOP // unknown
diff --git a/src/mame/drivers/fruitpc.cpp b/src/mame/drivers/fruitpc.cpp
index 2d3ad2160a9..e14b07a4f4a 100644
--- a/src/mame/drivers/fruitpc.cpp
+++ b/src/mame/drivers/fruitpc.cpp
@@ -45,6 +45,8 @@ public:
DECLARE_WRITE8_MEMBER(dma8237_1_dack_w);
static void fruitpc_sb_conf(device_t *device);
void fruitpc(machine_config &config);
+ void fruitpc_io(address_map &map);
+ void fruitpc_map(address_map &map);
};
READ8_MEMBER(fruitpc_state::fruit_inp_r)
@@ -63,7 +65,7 @@ READ8_MEMBER(fruitpc_state::fruit_inp_r)
return 0;
}
-static ADDRESS_MAP_START( fruitpc_map, AS_PROGRAM, 32, fruitpc_state )
+ADDRESS_MAP_START(fruitpc_state::fruitpc_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff) // VGA VRAM
AM_RANGE(0x000c0000, 0x000dffff) AM_ROM AM_REGION("bios", 0)
@@ -73,7 +75,7 @@ static ADDRESS_MAP_START( fruitpc_map, AS_PROGRAM, 32, fruitpc_state )
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fruitpc_io, AS_IO, 32, fruitpc_state )
+ADDRESS_MAP_START(fruitpc_state::fruitpc_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x01f0, 0x01f7) AM_DEVREADWRITE16("ide", ide_controller_device, read_cs0, write_cs0, 0xffffffff)
AM_RANGE(0x0310, 0x0313) AM_READ8(fruit_inp_r, 0xffffffff)
diff --git a/src/mame/drivers/ft68m.cpp b/src/mame/drivers/ft68m.cpp
index a3cd584ce02..7d25d68ac40 100644
--- a/src/mame/drivers/ft68m.cpp
+++ b/src/mame/drivers/ft68m.cpp
@@ -32,6 +32,7 @@ public:
DECLARE_READ16_MEMBER(switches_r);
void ft68m(machine_config &config);
+ void mem_map(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -47,7 +48,7 @@ READ16_MEMBER( ft68m_state::switches_r )
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 16, ft68m_state)
+ADDRESS_MAP_START(ft68m_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("rambase")
diff --git a/src/mame/drivers/funkball.cpp b/src/mame/drivers/funkball.cpp
index e7ca786923c..63c5ceb7504 100644
--- a/src/mame/drivers/funkball.cpp
+++ b/src/mame/drivers/funkball.cpp
@@ -139,6 +139,9 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void funkball(machine_config &config);
+ void flashbank_map(address_map &map);
+ void funkball_io(address_map &map);
+ void funkball_map(address_map &map);
};
void funkball_state::video_start()
@@ -325,7 +328,7 @@ READ8_MEMBER( funkball_state::in_r )
return m_inputs[offset]->read();
}
-static ADDRESS_MAP_START(funkball_map, AS_PROGRAM, 32, funkball_state)
+ADDRESS_MAP_START(funkball_state::funkball_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000affff) AM_RAM
AM_RANGE(0x000b0000, 0x000bffff) AM_DEVICE("flashbank", address_map_bank_device, amap32)
@@ -348,14 +351,14 @@ static ADDRESS_MAP_START(funkball_map, AS_PROGRAM, 32, funkball_state)
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flashbank_map, AS_PROGRAM, 32, funkball_state )
+ADDRESS_MAP_START(funkball_state::flashbank_map)
AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE16("u29", intel_28f320j5_device, read, write, 0xffffffff ) // needed to boot
AM_RANGE(0x00400000, 0x007fffff) AM_DEVREADWRITE16("u30", intel_28f320j5_device, read, write, 0xffffffff ) // i assume it maps directly after
// AM_RANGE(0x02000000, 0x023fffff) AM_DEVREADWRITE16("u3", intel_28f320j5_device, read, write, 0xffffffff ) // sound program, don't think it matters where we map it, might not even be visible in this space
/* it checks for 64MBit chips at 0x80000000 the way things are set up, they must return an intel Flash ID of 0x15 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(funkball_io, AS_IO, 32, funkball_state)
+ADDRESS_MAP_START(funkball_state::funkball_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0020, 0x0023) AM_READWRITE8(io20_r, io20_w, 0xffff0000)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
diff --git a/src/mame/drivers/funkybee.cpp b/src/mame/drivers/funkybee.cpp
index 742379aa598..773272bf7dd 100644
--- a/src/mame/drivers/funkybee.cpp
+++ b/src/mame/drivers/funkybee.cpp
@@ -99,7 +99,7 @@ WRITE_LINE_MEMBER(funkybee_state::coin_counter_2_w)
machine().bookkeeping().coin_counter_w(1, state);
}
-static ADDRESS_MAP_START( funkybee_map, AS_PROGRAM, 8, funkybee_state )
+ADDRESS_MAP_START(funkybee_state::funkybee_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xbfff) AM_RAM_WRITE(funkybee_videoram_w) AM_SHARE("videoram")
@@ -112,7 +112,7 @@ static ADDRESS_MAP_START( funkybee_map, AS_PROGRAM, 8, funkybee_state )
AM_RANGE(0xf802, 0xf802) AM_READ_PORT("IN2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, funkybee_state )
+ADDRESS_MAP_START(funkybee_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/funkyjet.cpp b/src/mame/drivers/funkyjet.cpp
index 3bcb4e18ba2..5f2deb1cdf1 100644
--- a/src/mame/drivers/funkyjet.cpp
+++ b/src/mame/drivers/funkyjet.cpp
@@ -131,7 +131,7 @@ WRITE16_MEMBER( funkyjet_state::funkyjet_protection_region_0_146_w )
}
-static ADDRESS_MAP_START( funkyjet_map, AS_PROGRAM, 16, funkyjet_state )
+ADDRESS_MAP_START(funkyjet_state::funkyjet_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x120000, 0x1207ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x140000, 0x143fff) AM_RAM
@@ -149,7 +149,7 @@ ADDRESS_MAP_END
/******************************************************************************/
/* Physical memory map (21 bits) */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, funkyjet_state )
+ADDRESS_MAP_START(funkyjet_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_NOP /* YM2203 - this board doesn't have one */
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/funtech.cpp b/src/mame/drivers/funtech.cpp
index fa9e952eb06..036281c9e38 100644
--- a/src/mame/drivers/funtech.cpp
+++ b/src/mame/drivers/funtech.cpp
@@ -95,6 +95,8 @@ public:
required_device<ticket_dispenser_device> m_hopper;
required_device<gfxdecode_device> m_gfxdecode;
void funtech(machine_config &config);
+ void funtech_io_map(address_map &map);
+ void funtech_map(address_map &map);
};
@@ -240,7 +242,7 @@ INTERRUPT_GEN_MEMBER(fun_tech_corp_state::funtech_vblank_interrupt)
-static ADDRESS_MAP_START( funtech_map, AS_PROGRAM, 8, fun_tech_corp_state )
+ADDRESS_MAP_START(fun_tech_corp_state::funtech_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc1ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -316,7 +318,7 @@ WRITE8_MEMBER(fun_tech_corp_state::funtech_vreg_w)
-static ADDRESS_MAP_START( funtech_io_map, AS_IO, 8, fun_tech_corp_state )
+ADDRESS_MAP_START(fun_tech_corp_state::funtech_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// lamps?
AM_RANGE(0x00, 0x00) AM_WRITE(funtech_lamps_w)
diff --git a/src/mame/drivers/funworld.cpp b/src/mame/drivers/funworld.cpp
index 0b8d270d898..04e07955910 100644
--- a/src/mame/drivers/funworld.cpp
+++ b/src/mame/drivers/funworld.cpp
@@ -1066,7 +1066,7 @@ WRITE_LINE_MEMBER(funworld_state::pia1_ca2_w)
* Memory map information *
*************************/
-static ADDRESS_MAP_START( funworld_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::funworld_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -1100,7 +1100,7 @@ WRITE8_MEMBER(funworld_state::question_bank_w)
funquiz_question_bank = data;
}
-static ADDRESS_MAP_START( funquiz_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::funquiz_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -1118,7 +1118,7 @@ static ADDRESS_MAP_START( funquiz_map, AS_PROGRAM, 8, funworld_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magicrd2_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::magicrd2_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -1134,7 +1134,7 @@ static ADDRESS_MAP_START( magicrd2_map, AS_PROGRAM, 8, funworld_state )
AM_RANGE(0x6000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cuoreuno_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::cuoreuno_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -1162,7 +1162,7 @@ READ8_MEMBER(funworld_state::chinatow_r_32f0)
return 0xff;
}
-static ADDRESS_MAP_START( chinatow_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::chinatow_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -1178,7 +1178,7 @@ static ADDRESS_MAP_START( chinatow_map, AS_PROGRAM, 8, funworld_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lunapark_map, AS_PROGRAM, 8, funworld_state ) // mirrored video RAM 4000/5000 to 6000/7000
+ADDRESS_MAP_START(funworld_state::lunapark_map) // mirrored video RAM 4000/5000 to 6000/7000
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -1191,7 +1191,7 @@ static ADDRESS_MAP_START( lunapark_map, AS_PROGRAM, 8, funworld_state ) // mirro
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( saloon_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::saloon_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0")
AM_RANGE(0x0808, 0x0808) AM_READ_PORT("IN3") // maybe
@@ -1221,7 +1221,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( witchryl_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::witchryl_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
@@ -1235,7 +1235,7 @@ static ADDRESS_MAP_START( witchryl_map, AS_PROGRAM, 8, funworld_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intergames_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::intergames_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0c00, 0x0c00) AM_DEVREAD("ay8910", ay8910_device, data_r) // WRONG. just a placeholder...
AM_RANGE(0x0c00, 0x0c01) AM_DEVWRITE("ay8910", ay8910_device, address_data_w) // WRONG. just a placeholder...
@@ -1248,7 +1248,7 @@ static ADDRESS_MAP_START( intergames_map, AS_PROGRAM, 8, funworld_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fw_a7_11_map, AS_PROGRAM, 8, funworld_state )
+ADDRESS_MAP_START(funworld_state::fw_a7_11_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
diff --git a/src/mame/drivers/funybubl.cpp b/src/mame/drivers/funybubl.cpp
index ca05ee6ccd5..e2f2e99bf98 100644
--- a/src/mame/drivers/funybubl.cpp
+++ b/src/mame/drivers/funybubl.cpp
@@ -81,7 +81,7 @@ WRITE8_MEMBER(funybubl_state::funybubl_oki_bank_sw)
}
-static ADDRESS_MAP_START( funybubl_map, AS_PROGRAM, 8, funybubl_state )
+ADDRESS_MAP_START(funybubl_state::funybubl_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") // banked port 1?
AM_RANGE(0xc400, 0xcfff) AM_RAM_WRITE(funybubl_paldatawrite) AM_SHARE("paletteram") // palette
@@ -89,7 +89,7 @@ static ADDRESS_MAP_START( funybubl_map, AS_PROGRAM, 8, funybubl_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, funybubl_state )
+ADDRESS_MAP_START(funybubl_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(funybubl_vidram_bank_w) // vidram bank
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(funybubl_cpurombank_w) // rom bank?
@@ -102,7 +102,7 @@ ADDRESS_MAP_END
/* Sound CPU */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, funybubl_state )
+ADDRESS_MAP_START(funybubl_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(funybubl_oki_bank_sw)
diff --git a/src/mame/drivers/fuukifg2.cpp b/src/mame/drivers/fuukifg2.cpp
index d32f6e5f946..29c9d3c4203 100644
--- a/src/mame/drivers/fuukifg2.cpp
+++ b/src/mame/drivers/fuukifg2.cpp
@@ -83,7 +83,7 @@ WRITE8_MEMBER( fuuki16_state::sound_command_w )
machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(50)); // Fixes glitching in rasters
}
-static ADDRESS_MAP_START( fuuki16_map, AS_PROGRAM, 16, fuuki16_state )
+ADDRESS_MAP_START(fuuki16_state::fuuki16_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM // RAM
AM_RANGE(0x500000, 0x501fff) AM_RAM_WRITE(vram_0_w) AM_SHARE("vram.0") // Layers
@@ -128,13 +128,13 @@ WRITE8_MEMBER(fuuki16_state::oki_banking_w)
m_oki->set_rom_bank((data & 6) >> 1);
}
-static ADDRESS_MAP_START( fuuki16_sound_map, AS_PROGRAM, 8, fuuki16_state )
+ADDRESS_MAP_START(fuuki16_state::fuuki16_sound_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x7fff) AM_RAM // RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") // Banked ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fuuki16_sound_io_map, AS_IO, 8, fuuki16_state )
+ADDRESS_MAP_START(fuuki16_state::fuuki16_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sound_rombank_w) // ROM Bank
AM_RANGE(0x11, 0x11) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITENOP // From Main CPU / ? To Main CPU ?
diff --git a/src/mame/drivers/fuukifg3.cpp b/src/mame/drivers/fuukifg3.cpp
index 6a91c790c7a..aae67918876 100644
--- a/src/mame/drivers/fuukifg3.cpp
+++ b/src/mame/drivers/fuukifg3.cpp
@@ -206,7 +206,7 @@ WRITE32_MEMBER(fuuki32_state::vregs_w)
}
}
-static ADDRESS_MAP_START( fuuki32_map, AS_PROGRAM, 32, fuuki32_state )
+ADDRESS_MAP_START(fuuki32_state::fuuki32_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM // Work RAM
AM_RANGE(0x410000, 0x41ffff) AM_RAM // Work RAM (used by asurabus)
@@ -259,14 +259,14 @@ WRITE8_MEMBER(fuuki32_state::snd_ymf278b_w)
machine().device<ymf278b_device>("ymf1")->write(space, offset, data);
}
-static ADDRESS_MAP_START( fuuki32_sound_map, AS_PROGRAM, 8, fuuki32_state )
+ADDRESS_MAP_START(fuuki32_state::fuuki32_sound_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM
AM_RANGE(0x7ff0, 0x7fff) AM_READWRITE(snd_z80_r, snd_z80_w)
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") // ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fuuki32_sound_io_map, AS_IO, 8, fuuki32_state )
+ADDRESS_MAP_START(fuuki32_state::fuuki32_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sound_bw_w)
AM_RANGE(0x30, 0x30) AM_WRITENOP // leftover/unused nmi handler related
diff --git a/src/mame/drivers/g627.cpp b/src/mame/drivers/g627.cpp
index df35b6a2b9f..78d76514253 100644
--- a/src/mame/drivers/g627.cpp
+++ b/src/mame/drivers/g627.cpp
@@ -68,6 +68,8 @@ public:
DECLARE_WRITE8_MEMBER(disp_w);
DECLARE_WRITE8_MEMBER(lamp_w);
void g627(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_seg[6];
uint8_t m_portc;
@@ -79,13 +81,13 @@ private:
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, g627_state )
+ADDRESS_MAP_START(g627_state::mem_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xc000, 0xc0ff) AM_DEVREADWRITE("i8156", i8155_device, memory_r, memory_w)
AM_RANGE(0xe000, 0xe0ff) AM_RAM AM_SHARE("nvram") // battery backed
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, g627_state )
+ADDRESS_MAP_START(g627_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x02) AM_WRITE(disp_w)
AM_RANGE(0x03, 0x07) AM_WRITE(lamp_w)
diff --git a/src/mame/drivers/gaelco.cpp b/src/mame/drivers/gaelco.cpp
index 84bab7820ac..4b189ed5b16 100644
--- a/src/mame/drivers/gaelco.cpp
+++ b/src/mame/drivers/gaelco.cpp
@@ -25,7 +25,6 @@ Year Game PCB NOTES
#include "cpu/m6809/m6809.h"
#include "cpu/m68000/m68000.h"
-#include "machine/74259.h"
#include "sound/okim6295.h"
#include "sound/3812intf.h"
@@ -107,7 +106,7 @@ WRITE16_MEMBER(gaelco_state::thoop_encrypted_w)
*
*************************************/
-static ADDRESS_MAP_START( bigkarnk_map, AS_PROGRAM, 16, gaelco_state )
+ADDRESS_MAP_START(gaelco_state::bigkarnk_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x102000, 0x103fff) AM_RAM /* Screen RAM */
@@ -120,12 +119,12 @@ static ADDRESS_MAP_START( bigkarnk_map, AS_PROGRAM, 16, gaelco_state )
AM_RANGE(0x700004, 0x700005) AM_READ_PORT("P1")
AM_RANGE(0x700006, 0x700007) AM_READ_PORT("P2")
AM_RANGE(0x700008, 0x700009) AM_READ_PORT("SERVICE")
- AM_RANGE(0x70000a, 0x70000b) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0x00ff)
+ ;map(0x70000a, 0x70000b).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x70000e, 0x70000f) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff) /* Triggers a FIRQ on the sound CPU */
AM_RANGE(0xff8000, 0xffffff) AM_RAM /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigkarnk_snd_map, AS_PROGRAM, 8, gaelco_state )
+ADDRESS_MAP_START(gaelco_state::bigkarnk_snd_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* RAM */
AM_RANGE(0x0800, 0x0801) AM_DEVREADWRITE("oki", okim6295_device, read, write) /* OKI6295 */
// AM_RANGE(0x0900, 0x0900) AM_WRITENOP /* enable sound output? */
@@ -134,7 +133,7 @@ static ADDRESS_MAP_START( bigkarnk_snd_map, AS_PROGRAM, 8, gaelco_state )
AM_RANGE(0x0c00, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16, gaelco_state )
+ADDRESS_MAP_START(gaelco_state::maniacsq_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x102000, 0x103fff) AM_RAM /* Screen RAM */
@@ -151,7 +150,7 @@ static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16, gaelco_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( squash_map, AS_PROGRAM, 16, gaelco_state )
+ADDRESS_MAP_START(gaelco_state::squash_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_encrypted_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x102000, 0x103fff) AM_RAM_WRITE(gaelco_encrypted_w) AM_SHARE("screenram") /* Screen RAM */
@@ -163,13 +162,13 @@ static ADDRESS_MAP_START( squash_map, AS_PROGRAM, 16, gaelco_state )
AM_RANGE(0x700002, 0x700003) AM_READ_PORT("DSW1")
AM_RANGE(0x700004, 0x700005) AM_READ_PORT("P1")
AM_RANGE(0x700006, 0x700007) AM_READ_PORT("P2")
- AM_RANGE(0x70000a, 0x70000b) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0x00ff)
+ ;map(0x70000a, 0x70000b).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x70000c, 0x70000d) AM_WRITE8(OKIM6295_bankswitch_w, 0x00ff)
AM_RANGE(0x70000e, 0x70000f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) /* OKI6295 status register */
AM_RANGE(0xff0000, 0xffffff) AM_RAM /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thoop_map, AS_PROGRAM, 16, gaelco_state )
+ADDRESS_MAP_START(gaelco_state::thoop_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(thoop_vram_encrypted_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x102000, 0x103fff) AM_RAM_WRITE(thoop_encrypted_w) AM_SHARE("screenram") /* Screen RAM */
@@ -181,14 +180,14 @@ static ADDRESS_MAP_START( thoop_map, AS_PROGRAM, 16, gaelco_state )
AM_RANGE(0x700002, 0x700003) AM_READ_PORT("DSW1")
AM_RANGE(0x700004, 0x700005) AM_READ_PORT("P1")
AM_RANGE(0x700006, 0x700007) AM_READ_PORT("P2")
- AM_RANGE(0x70000a, 0x70000b) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0x00ff)
+ ;map(0x70000a, 0x70000b).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x70000c, 0x70000d) AM_WRITE8(OKIM6295_bankswitch_w, 0x00ff)
AM_RANGE(0x70000e, 0x70000f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) /* OKI6295 status register */
AM_RANGE(0xff0000, 0xffffff) AM_RAM /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, gaelco_state )
+ADDRESS_MAP_START(gaelco_state::oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gaelco2.cpp b/src/mame/drivers/gaelco2.cpp
index 54c58ef993b..2cbe00b7920 100644
--- a/src/mame/drivers/gaelco2.cpp
+++ b/src/mame/drivers/gaelco2.cpp
@@ -72,7 +72,7 @@ GFXDECODEINFO(0x0400000, 128)
COMMON
============================================================================*/
-static ADDRESS_MAP_START( mcu_hostmem_map, 0, 8, gaelco2_state )
+ADDRESS_MAP_START(gaelco2_state::mcu_hostmem_map)
AM_RANGE(0x8000, 0xffff) AM_READWRITE(shareram_r, shareram_w) // confirmed that 0x8000 - 0xffff is a window into 68k shared RAM
ADDRESS_MAP_END
@@ -81,7 +81,7 @@ ADDRESS_MAP_END
MANIAC SQUARE (FINAL)
============================================================================*/
-static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16, gaelco2_state )
+ADDRESS_MAP_START(gaelco2_state::maniacsq_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM /* ROM */
AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */
AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelco_gae1_device, gaelcosnd_r, gaelcosnd_w) /* Sound Registers */
@@ -478,7 +478,7 @@ WRITE16_MEMBER(gaelco2_state::play2000_shareram_68k_w)
}
-static ADDRESS_MAP_START( play2000_map, AS_PROGRAM, 16, gaelco2_state )
+ADDRESS_MAP_START(gaelco2_state::play2000_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("IN0") /* Coins + other buttons? */
// AM_RANGE(0x110000, 0x110001) ?
@@ -637,7 +637,7 @@ READ16_MEMBER(bang_state::p1_gun_y){return (m_light0_y->read() * 240 / 0x100) -
READ16_MEMBER(bang_state::p2_gun_x){return (m_light1_x->read() * 320 / 0x100) + 1;}
READ16_MEMBER(bang_state::p2_gun_y){return (m_light1_y->read() * 240 / 0x100) - 4;}
-static ADDRESS_MAP_START( bang_map, AS_PROGRAM, 16, bang_state )
+ADDRESS_MAP_START(bang_state::bang_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */
AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelco_cg1v_device, gaelcosnd_r, gaelcosnd_w) /* Sound Registers */
@@ -840,7 +840,7 @@ ROM_END
============================================================================*/
-static ADDRESS_MAP_START( alighunt_map, AS_PROGRAM, 16, gaelco2_state )
+ADDRESS_MAP_START(gaelco2_state::alighunt_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */
AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelco_gae1_device, gaelcosnd_r, gaelcosnd_w) /* Sound Registers */
@@ -1106,7 +1106,7 @@ ROM_END
============================================================================*/
-static ADDRESS_MAP_START( touchgo_map, AS_PROGRAM, 16, gaelco2_state )
+ADDRESS_MAP_START(gaelco2_state::touchgo_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */
AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelco_gae1_device, gaelcosnd_r, gaelcosnd_w) /* Sound Registers */
@@ -1427,7 +1427,7 @@ ROM_END
SNOW BOARD
============================================================================*/
-static ADDRESS_MAP_START( snowboar_map, AS_PROGRAM, 16, gaelco2_state )
+ADDRESS_MAP_START(gaelco2_state::snowboar_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */
AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelco_cg1v_device, gaelcosnd_r, gaelcosnd_w) /* Sound Registers */
@@ -1655,7 +1655,7 @@ ROM_END
WORLD RALLY 2
============================================================================*/
-static ADDRESS_MAP_START( wrally2_map, AS_PROGRAM, 16, wrally2_state )
+ADDRESS_MAP_START(wrally2_state::wrally2_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */
AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelco_gae1_device, gaelcosnd_r, gaelcosnd_w) /* Sound Registers */
diff --git a/src/mame/drivers/gaelco3d.cpp b/src/mame/drivers/gaelco3d.cpp
index cb24a24b4e9..5a0bd63dd2c 100644
--- a/src/mame/drivers/gaelco3d.cpp
+++ b/src/mame/drivers/gaelco3d.cpp
@@ -150,7 +150,6 @@ REF. 970429
#include "cpu/adsp2100/adsp2100.h"
#include "cpu/m68000/m68000.h"
#include "cpu/tms32031/tms32031.h"
-#include "machine/74259.h"
#include "speaker.h"
@@ -669,7 +668,7 @@ WRITE_LINE_MEMBER(gaelco3d_state::unknown_13a_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, gaelco3d_state )
+ADDRESS_MAP_START(gaelco3d_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(gaelco3d_paletteram_w) AM_SHARE("paletteram")
@@ -681,45 +680,45 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, gaelco3d_state )
AM_RANGE(0x510042, 0x510043) AM_READ(sound_status_r)
AM_RANGE(0x510100, 0x510101) AM_READWRITE(eeprom_data_r, irq_ack_w)
AM_RANGE(0x510102, 0x510103) AM_DEVREAD8("serial", gaelco_serial_device, data_r, 0x00ff)
- AM_RANGE(0x510102, 0x510103) AM_SELECT(0x000038) AM_DEVWRITE8_MOD("mainlatch", ls259_device, write_d0, rshift<2>, 0x00ff)
+ ;map(0x510102, 0x510103).select(0x000038).lw8("mainlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_mainlatch->write_d0(space, offset >> 2, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x510104, 0x510105) AM_DEVWRITE8("serial", gaelco_serial_device, data_w, 0x00ff)
- AM_RANGE(0x510106, 0x510107) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0x00ff)
+ ;map(0x510106, 0x510107).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0xfe0000, 0xfeffff) AM_RAM AM_SHARE("m68k_ram_base")
AM_RANGE(0xfe7f80, 0xfe7fff) AM_WRITE(tms_comm_w) AM_SHARE("tms_comm_base")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main020_map, AS_PROGRAM, 32, gaelco3d_state )
+ADDRESS_MAP_START(gaelco3d_state::main020_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(gaelco3d_paletteram_020_w) AM_SHARE("paletteram")
AM_RANGE(0x51000c, 0x51000f) AM_READ_PORT("IN0")
AM_RANGE(0x51001c, 0x51001f) AM_READ_PORT("IN1")
AM_RANGE(0x51002c, 0x51002f) AM_READ_PORT("IN2")
AM_RANGE(0x51003c, 0x51003f) AM_READ_PORT("IN3")
- AM_RANGE(0x510040, 0x510043) AM_READ16(sound_status_r, 0x0000ffff)
- AM_RANGE(0x510040, 0x510043) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff0000)
- AM_RANGE(0x510100, 0x510103) AM_READWRITE16(eeprom_data_r, irq_ack_w, 0xffff0000)
- AM_RANGE(0x510100, 0x510103) AM_DEVREAD8("serial", gaelco_serial_device, data_r, 0x000000ff)
- AM_RANGE(0x510100, 0x510103) AM_SELECT(0x000038) AM_DEVWRITE8_MOD("mainlatch", ls259_device, write_d0, rshift<1>, 0x000000ff)
- AM_RANGE(0x510104, 0x510107) AM_DEVWRITE8("serial", gaelco_serial_device, data_w, 0x00ff0000)
- AM_RANGE(0x510104, 0x510107) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<2>, 0x000000ff)
+ AM_RANGE(0x510041, 0x510041) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
+ AM_RANGE(0x510042, 0x510043) AM_READ(sound_status_r)
+ AM_RANGE(0x510100, 0x510101) AM_READWRITE(eeprom_data_r, irq_ack_w)
+ AM_RANGE(0x510103, 0x510103) AM_DEVREAD("serial", gaelco_serial_device, data_r)
+ ;map(0x510103, 0x510103).select(0x000038).lw8("mainlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_mainlatch->write_d0(space, offset >> 1, data, mem_mask); });
+ AM_RANGE(0x510105, 0x510105) AM_DEVWRITE("serial", gaelco_serial_device, data_w)
+ ;map(0x510107, 0x510107).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 2, data, mem_mask); });
AM_RANGE(0xfe0000, 0xfeffff) AM_RAM AM_SHARE("m68k_ram_base")
- AM_RANGE(0xfe7f80, 0xfe7fff) AM_WRITE16(tms_comm_w, 0xffffffff) AM_SHARE("tms_comm_base")
+ AM_RANGE(0xfe7f80, 0xfe7fff) AM_WRITE(tms_comm_w) AM_SHARE("tms_comm_base")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 32, gaelco3d_state )
+ADDRESS_MAP_START(gaelco3d_state::tms_map)
AM_RANGE(0x000000, 0x007fff) AM_READWRITE(tms_m68k_ram_r, tms_m68k_ram_w)
AM_RANGE(0x400000, 0x7fffff) AM_ROM AM_REGION("user2", 0)
AM_RANGE(0xc00000, 0xc00007) AM_WRITE(gaelco3d_render_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, gaelco3d_state )
+ADDRESS_MAP_START(gaelco3d_state::adsp_program_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("adsp_ram_base") /* 1k words internal RAM */
AM_RANGE(0x37ff, 0x37ff) AM_READNOP /* speedup hammers this for no apparent reason */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, gaelco3d_state )
+ADDRESS_MAP_START(gaelco3d_state::adsp_data_map)
AM_RANGE(0x0000, 0x0001) AM_WRITE(adsp_rombank_w)
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1")
AM_RANGE(0x2000, 0x2000) AM_DEVREAD8("soundlatch", generic_latch_8_device, read, 0x00ff) AM_WRITE(sound_status_w)
diff --git a/src/mame/drivers/gaelcopc.cpp b/src/mame/drivers/gaelcopc.cpp
index 316410f22ee..ffcf5ece443 100644
--- a/src/mame/drivers/gaelcopc.cpp
+++ b/src/mame/drivers/gaelcopc.cpp
@@ -40,6 +40,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void gaelcopc(machine_config &config);
+ void gaelcopc_map(address_map &map);
protected:
// devices
@@ -59,7 +60,7 @@ uint32_t gaelcopc_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
return 0;
}
-static ADDRESS_MAP_START( gaelcopc_map, AS_PROGRAM, 32, gaelcopc_state )
+ADDRESS_MAP_START(gaelcopc_state::gaelcopc_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gaiden.cpp b/src/mame/drivers/gaiden.cpp
index 70d0e9712ca..7ea5df25b43 100644
--- a/src/mame/drivers/gaiden.cpp
+++ b/src/mame/drivers/gaiden.cpp
@@ -383,7 +383,7 @@ READ16_MEMBER(gaiden_state::raiga_protection_r)
return m_prot;
}
-static ADDRESS_MAP_START( gaiden_map, AS_PROGRAM, 16, gaiden_state )
+ADDRESS_MAP_START(gaiden_state::gaiden_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x060000, 0x063fff) AM_RAM
AM_RANGE(0x070000, 0x070fff) AM_RAM_WRITE(gaiden_videoram_w) AM_SHARE("videoram")
@@ -409,7 +409,7 @@ static ADDRESS_MAP_START( gaiden_map, AS_PROGRAM, 16, gaiden_state )
AM_RANGE(0x07a808, 0x07a809) AM_WRITE(gaiden_flip_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drgnbowl_map, AS_PROGRAM, 16, gaiden_state )
+ADDRESS_MAP_START(gaiden_state::drgnbowl_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x060000, 0x063fff) AM_RAM
AM_RANGE(0x070000, 0x070fff) AM_RAM_WRITE(gaiden_videoram_w) AM_SHARE("videoram")
@@ -428,7 +428,7 @@ static ADDRESS_MAP_START( drgnbowl_map, AS_PROGRAM, 16, gaiden_state )
AM_RANGE(0x07f006, 0x07f007) AM_WRITE(gaiden_fgscrollx_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gaiden_state )
+ADDRESS_MAP_START(gaiden_state::sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xefff) AM_ROM /* raiga only */
AM_RANGE(0xf000, 0xf7ff) AM_RAM
@@ -439,12 +439,12 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gaiden_state )
AM_RANGE(0xfc20, 0xfc20) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drgnbowl_sound_map, AS_PROGRAM, 8, gaiden_state )
+ADDRESS_MAP_START(gaiden_state::drgnbowl_sound_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drgnbowl_sound_port_map, AS_IO, 8, gaiden_state )
+ADDRESS_MAP_START(gaiden_state::drgnbowl_sound_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -904,7 +904,7 @@ Others
2x 8x2 switches DIP
*/
-static ADDRESS_MAP_START( mastninj_sound_map, AS_PROGRAM, 8, gaiden_state )
+ADDRESS_MAP_START(gaiden_state::mastninj_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("adpcm_bank")
AM_RANGE(0xc400, 0xc401) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
@@ -945,7 +945,7 @@ MACHINE_START_MEMBER(gaiden_state,mastninj)
save_item(NAME(m_adpcm_toggle));
}
-static ADDRESS_MAP_START( mastninj_map, AS_PROGRAM, 16, gaiden_state )
+ADDRESS_MAP_START(gaiden_state::mastninj_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x060000, 0x063fff) AM_RAM
AM_RANGE(0x070000, 0x070fff) AM_RAM_WRITE(gaiden_videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/gal3.cpp b/src/mame/drivers/gal3.cpp
index 9be4714cca6..365935035d7 100644
--- a/src/mame/drivers/gal3.cpp
+++ b/src/mame/drivers/gal3.cpp
@@ -167,6 +167,11 @@ public:
uint32_t screen_update_gal3(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void update_palette( );
void gal3(machine_config &config);
+ void cpu_mst_map(address_map &map);
+ void cpu_slv_map(address_map &map);
+ void psn_b1_cpu_map(address_map &map);
+ void rs_cpu_map(address_map &map);
+ void sound_cpu_map(address_map &map);
};
@@ -332,7 +337,7 @@ WRITE32_MEMBER(gal3_state::rso_w)
}
-static ADDRESS_MAP_START( cpu_mst_map, AS_PROGRAM, 32, gal3_state )
+ADDRESS_MAP_START(gal3_state::cpu_mst_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM
AM_RANGE(0x20000000, 0x20001fff) AM_RAM AM_SHARE("nvmem") //NVRAM
/// AM_RANGE(0x40000000, 0x4000ffff) AM_WRITE() //
@@ -349,7 +354,7 @@ static ADDRESS_MAP_START( cpu_mst_map, AS_PROGRAM, 32, gal3_state )
AM_RANGE(0xf2800000, 0xf2800fff) AM_READWRITE(rso_r, rso_w) //RSO PCB
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu_slv_map, AS_PROGRAM, 32, gal3_state )
+ADDRESS_MAP_START(gal3_state::cpu_slv_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM
/// AM_RANGE(0x40000000, 0x4000ffff) AM_WRITE() //
AM_RANGE(0x44000000, 0x44000003) AM_READ_PORT("DSW_CPU_slv" )
@@ -378,7 +383,7 @@ static ADDRESS_MAP_START( cpu_slv_map, AS_PROGRAM, 32, gal3_state )
AM_RANGE(0xf2760000, 0xf2760003) AM_RAM //AM_READWRITE(namcos21_video_enable_r,namcos21_video_enable_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rs_cpu_map, AS_PROGRAM, 16, gal3_state )
+ADDRESS_MAP_START(gal3_state::rs_cpu_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM //64K working RAM
@@ -442,7 +447,7 @@ static ADDRESS_MAP_START( rs_cpu_map, AS_PROGRAM, 16, gal3_state )
/// AM_RANGE(0xc44000, 0xffffff) AM_RAM /////////////
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 16, gal3_state )
+ADDRESS_MAP_START(gal3_state::sound_cpu_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM
/// AM_RANGE(0x0c0000, 0x0cffff) AM_RAM //00, 20, 30, 40, 50
@@ -458,7 +463,7 @@ static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 16, gal3_state )
/// AM_RANGE(0x090000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psn_b1_cpu_map, AS_PROGRAM, 16, gal3_state )
+ADDRESS_MAP_START(gal3_state::psn_b1_cpu_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0xffffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/galaga.cpp b/src/mame/drivers/galaga.cpp
index 43dbdb722f4..1c6798794da 100644
--- a/src/mame/drivers/galaga.cpp
+++ b/src/mame/drivers/galaga.cpp
@@ -832,7 +832,7 @@ MACHINE_RESET_MEMBER(xevious_state,battles)
/* the same memory map is used by all three CPUs; all RAM areas are shared */
-static ADDRESS_MAP_START( bosco_map, AS_PROGRAM, 8, bosco_state )
+ADDRESS_MAP_START(bosco_state::bosco_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */
AM_RANGE(0x6800, 0x6807) AM_READ(bosco_dsw_r)
AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", namco_device, pacman_sound_w)
@@ -853,7 +853,7 @@ static ADDRESS_MAP_START( bosco_map, AS_PROGRAM, 8, bosco_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galaga_map, AS_PROGRAM, 8, galaga_state )
+ADDRESS_MAP_START(galaga_state::galaga_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */
AM_RANGE(0x6800, 0x6807) AM_READ(bosco_dsw_r)
AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", namco_device, pacman_sound_w)
@@ -868,13 +868,13 @@ static ADDRESS_MAP_START( galaga_map, AS_PROGRAM, 8, galaga_state )
AM_RANGE(0xa000, 0xa007) AM_DEVWRITE("videolatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gatsbee_main_map, AS_PROGRAM, 8, galaga_state )
+ADDRESS_MAP_START(galaga_state::gatsbee_main_map)
AM_IMPORT_FROM(galaga_map)
AM_RANGE(0x0000, 0x0007) AM_MIRROR(0x3ff8) AM_DEVWRITE("extralatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xevious_map, AS_PROGRAM, 8, xevious_state )
+ADDRESS_MAP_START(xevious_state::xevious_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */
AM_RANGE(0x6800, 0x6807) AM_READ(bosco_dsw_r)
AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", namco_device, pacman_sound_w)
@@ -895,7 +895,7 @@ static ADDRESS_MAP_START( xevious_map, AS_PROGRAM, 8, xevious_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( digdug_map, AS_PROGRAM, 8, digdug_state )
+ADDRESS_MAP_START(digdug_state::digdug_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */
AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", namco_device, pacman_sound_w)
AM_RANGE(0x6820, 0x6827) AM_DEVWRITE("misclatch", ls259_device, write_d0)
@@ -915,12 +915,12 @@ ADDRESS_MAP_END
/* bootleg 4th CPU replacing the 5xXX chips */
-static ADDRESS_MAP_START( galaga_mem4, AS_PROGRAM, 8, galaga_state )
+ADDRESS_MAP_START(galaga_state::galaga_mem4)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x107f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( battles_mem4, AS_PROGRAM, 8, xevious_state )
+ADDRESS_MAP_START(xevious_state::battles_mem4)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x4000, 0x4003) AM_READ(battles_input_port_r)
AM_RANGE(0x4001, 0x4001) AM_WRITE(battles_CPU4_coin_w)
@@ -930,7 +930,7 @@ static ADDRESS_MAP_START( battles_mem4, AS_PROGRAM, 8, xevious_state )
AM_RANGE(0x8000, 0x80ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dzigzag_mem4, AS_PROGRAM, 8, galaga_state )
+ADDRESS_MAP_START(galaga_state::dzigzag_mem4)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x107f) AM_RAM
AM_RANGE(0x4000, 0x4007) AM_READONLY // dip switches? bits 0 & 1 used
diff --git a/src/mame/drivers/galastrm.cpp b/src/mame/drivers/galastrm.cpp
index 3a6b55ac1b1..34412bcab45 100644
--- a/src/mame/drivers/galastrm.cpp
+++ b/src/mame/drivers/galastrm.cpp
@@ -134,7 +134,7 @@ WRITE32_MEMBER(galastrm_state::galastrm_adstick_ctrl_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( galastrm_map, AS_PROGRAM, 32, galastrm_state )
+ADDRESS_MAP_START(galastrm_state::galastrm_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_SHARE("ram") /* main CPUA ram */
AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("spriteram")
diff --git a/src/mame/drivers/galaxi.cpp b/src/mame/drivers/galaxi.cpp
index ead28299aa9..f5bfbe25034 100644
--- a/src/mame/drivers/galaxi.cpp
+++ b/src/mame/drivers/galaxi.cpp
@@ -113,6 +113,8 @@ public:
void galaxi(machine_config &config);
void lastfour(machine_config &config);
void magjoker(machine_config &config);
+ void galaxi_map(address_map &map);
+ void lastfour_map(address_map &map);
};
@@ -300,7 +302,7 @@ CUSTOM_INPUT_MEMBER(galaxi_state::hopper_r)
Memory Maps
***************************************************************************/
-static ADDRESS_MAP_START( galaxi_map, AS_PROGRAM, 16, galaxi_state )
+ADDRESS_MAP_START(galaxi_state::galaxi_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM_WRITE(galaxi_bg1_w) AM_SHARE("bg1_ram")
@@ -324,7 +326,7 @@ static ADDRESS_MAP_START( galaxi_map, AS_PROGRAM, 16, galaxi_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lastfour_map, AS_PROGRAM, 16, galaxi_state )
+ADDRESS_MAP_START(galaxi_state::lastfour_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
// bg3+4 / 1+2 seem to be swapped, order, palettes, scroll register etc. all suggest this
diff --git a/src/mame/drivers/galaxia.cpp b/src/mame/drivers/galaxia.cpp
index 689833aa344..05f09383f48 100644
--- a/src/mame/drivers/galaxia.cpp
+++ b/src/mame/drivers/galaxia.cpp
@@ -131,7 +131,7 @@ READ8_MEMBER(galaxia_state::galaxia_collision_clear)
return 0xff;
}
-static ADDRESS_MAP_START( galaxia_mem_map, AS_PROGRAM, 8, galaxia_state )
+ADDRESS_MAP_START(galaxia_state::galaxia_mem_map)
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM AM_SHARE("bullet_ram")
AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_device, read_data, write_data)
@@ -143,7 +143,7 @@ static ADDRESS_MAP_START( galaxia_mem_map, AS_PROGRAM, 8, galaxia_state )
AM_RANGE(0x7214, 0x7214) AM_READ_PORT("IN0")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( astrowar_mem_map, AS_PROGRAM, 8, galaxia_state )
+ADDRESS_MAP_START(galaxia_state::astrowar_mem_map)
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_device, read_data, write_data)
@@ -152,7 +152,7 @@ static ADDRESS_MAP_START( astrowar_mem_map, AS_PROGRAM, 8, galaxia_state )
AM_RANGE(0x2000, 0x33ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galaxia_io_map, AS_IO, 8, galaxia_state )
+ADDRESS_MAP_START(galaxia_state::galaxia_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_WRITE(galaxia_scroll_w) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1")
@@ -162,7 +162,7 @@ static ADDRESS_MAP_START( galaxia_io_map, AS_IO, 8, galaxia_state )
AM_RANGE(0xac, 0xac) AM_READNOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galaxia_data_map, AS_DATA, 8, galaxia_state )
+ADDRESS_MAP_START(galaxia_state::galaxia_data_map)
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(galaxia_collision_r, galaxia_ctrlport_w)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(galaxia_collision_clear, galaxia_dataport_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/galaxian.cpp b/src/mame/drivers/galaxian.cpp
index 23a93ca533b..5a42a489a23 100644
--- a/src/mame/drivers/galaxian.cpp
+++ b/src/mame/drivers/galaxian.cpp
@@ -1549,13 +1549,13 @@ LATCH: (write 7000-77ff)
/* map derived from schematics */
-static ADDRESS_MAP_START( galaxian_map_discrete, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::galaxian_map_discrete)
AM_RANGE(0x6004, 0x6007) AM_MIRROR(0x07f8) AM_DEVWRITE("cust", galaxian_sound_device, lfo_freq_w)
AM_RANGE(0x6800, 0x6807) AM_MIRROR(0x07f8) AM_DEVWRITE("cust", galaxian_sound_device, sound_w)
AM_RANGE(0x7800, 0x7800) AM_MIRROR(0x07ff) AM_DEVWRITE("cust", galaxian_sound_device, pitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galaxian_map_base, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::galaxian_map_base)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM
@@ -1577,20 +1577,20 @@ static ADDRESS_MAP_START( galaxian_map_base, AS_PROGRAM, 8, galaxian_state )
AM_RANGE(0x7800, 0x7800) AM_MIRROR(0x07ff) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galaxian_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::galaxian_map)
AM_IMPORT_FROM(galaxian_map_base)
AM_IMPORT_FROM(galaxian_map_discrete)
ADDRESS_MAP_END
/* map derived from schematics */
-static ADDRESS_MAP_START( mooncrst_map_discrete, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::mooncrst_map_discrete)
AM_RANGE(0xa004, 0xa007) AM_MIRROR(0x07f8) AM_DEVWRITE("cust", galaxian_sound_device, lfo_freq_w)
AM_RANGE(0xa800, 0xa807) AM_MIRROR(0x07f8) AM_DEVWRITE("cust", galaxian_sound_device, sound_w)
AM_RANGE(0xb800, 0xb800) AM_MIRROR(0x07ff) AM_DEVWRITE("cust", galaxian_sound_device, pitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mooncrst_map_base, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::mooncrst_map_base)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x0400) AM_RAM
@@ -1611,17 +1611,17 @@ static ADDRESS_MAP_START( mooncrst_map_base, AS_PROGRAM, 8, galaxian_state )
AM_RANGE(0xb800, 0xb800) AM_MIRROR(0x07ff) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( moonqsr_decrypted_opcodes_map, AS_OPCODES, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::moonqsr_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::mooncrst_map)
AM_IMPORT_FROM(mooncrst_map_base)
AM_IMPORT_FROM(mooncrst_map_discrete)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fantastc_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::fantastc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -1639,7 +1639,7 @@ static ADDRESS_MAP_START( fantastc_map, AS_PROGRAM, 8, galaxian_state )
AM_RANGE(0xfffe, 0xfffe) AM_NOP // ?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( timefgtr_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::timefgtr_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -1659,7 +1659,7 @@ static ADDRESS_MAP_START( timefgtr_map, AS_PROGRAM, 8, galaxian_state )
// AM_RANGE(0xfff8, 0xffff) AM_WRITENOP // sound related?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zigzag_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::zigzag_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x2fff) AM_ROMBANK("bank1")
@@ -1683,7 +1683,7 @@ ADDRESS_MAP_END
/* map derived from schematics */
-static ADDRESS_MAP_START( theend_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::theend_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -1701,7 +1701,7 @@ static ADDRESS_MAP_START( theend_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
/* map not derived from schematics. Used by explorer and takeoff */
-static ADDRESS_MAP_START( explorer_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::explorer_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -1725,7 +1725,7 @@ static ADDRESS_MAP_START( explorer_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
/* map derived from schematics */
-static ADDRESS_MAP_START( scobra_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::scobra_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x4000) AM_RAM
@@ -1744,7 +1744,7 @@ static ADDRESS_MAP_START( scobra_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( anteateruk_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::anteateruk_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0400, 0x0bff) AM_RAM
@@ -1764,7 +1764,7 @@ static ADDRESS_MAP_START( anteateruk_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spactrai_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::spactrai_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x01ff) AM_ROM
AM_RANGE(0x0200, 0x05ff) AM_RAM // this sits over ROM, does the 0x400 bytes of ROM underneath bank or appear elsewhere?
@@ -1798,7 +1798,7 @@ static ADDRESS_MAP_START( spactrai_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( anteaterg_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::anteaterg_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0400, 0x0bff) AM_RAM
@@ -1819,7 +1819,7 @@ static ADDRESS_MAP_START( anteaterg_map, AS_PROGRAM, 8, galaxian_state )
AM_RANGE(0xf600, 0xf603) AM_MIRROR(0x01fc) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( anteatergg_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::anteatergg_map)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(galaxian_map_discrete)
AM_RANGE(0x0000, 0x3fff) AM_ROM
@@ -1841,7 +1841,7 @@ static ADDRESS_MAP_START( anteatergg_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
/* map derived from schematics */
-static ADDRESS_MAP_START( frogger_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::frogger_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -1858,7 +1858,7 @@ ADDRESS_MAP_END
/* map derived from schematics */
-static ADDRESS_MAP_START( turtles_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::turtles_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x4000) AM_RAM
@@ -1879,7 +1879,7 @@ ADDRESS_MAP_END
/* map NOT derived from schematics */
-static ADDRESS_MAP_START( amigo2_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::amigo2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_READ_PORT("IN0") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x4001, 0x4001) AM_READ_PORT("IN1")
@@ -1900,7 +1900,7 @@ static ADDRESS_MAP_START( amigo2_map, AS_PROGRAM, 8, galaxian_state )
AM_RANGE(0xa800, 0xa800) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( turpins_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::turpins_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_videoram_w) AM_SHARE("videoram")
@@ -1919,7 +1919,7 @@ ADDRESS_MAP_END
/* this is the same as theend, except for separate RGB background controls
and some extra ROM space at $7000 and $C000 */
-static ADDRESS_MAP_START( sfx_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::sfx_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_videoram_w) AM_SHARE("videoram")
@@ -1938,7 +1938,7 @@ static ADDRESS_MAP_START( sfx_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( monsterz_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::monsterz_map)
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0x3800, 0x3fff) AM_RAM // extra RAM used by protection
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -1967,7 +1967,7 @@ ADDRESS_MAP_END
$8000-$afff: additional ROM area
$b000-$bfff: protection
*/
-static ADDRESS_MAP_START( jumpbug_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::jumpbug_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -1989,7 +1989,7 @@ static ADDRESS_MAP_START( jumpbug_map, AS_PROGRAM, 8, galaxian_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( frogf_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::frogf_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -2006,7 +2006,7 @@ ADDRESS_MAP_END
/* mooncrst */
-static ADDRESS_MAP_START( mshuttle_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::mshuttle_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
@@ -2025,11 +2025,11 @@ static ADDRESS_MAP_START( mshuttle_map, AS_PROGRAM, 8, galaxian_state )
AM_RANGE(0xb800, 0xb800) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mshuttle_decrypted_opcodes_map, AS_OPCODES, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::mshuttle_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mshuttle_portmap, AS_IO, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::mshuttle_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x08, 0x08) AM_WRITE(mshuttle_ay8910_control_w)
@@ -2053,7 +2053,7 @@ WRITE8_MEMBER(galaxian_state::tenspot_unk_e000_w)
logerror("tenspot_unk_e000_w %02x\n",data);
}
-static ADDRESS_MAP_START( tenspot_select_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::tenspot_select_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
@@ -2083,7 +2083,7 @@ WRITE8_MEMBER(galaxian_state::froggeram_ppi8255_w)
if (offset & 0x0200) m_ppi8255[1]->write(space, offset & 3, data);
}
-static ADDRESS_MAP_START( froggeram_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::froggeram_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_READWRITE(froggeram_ppi8255_r, froggeram_ppi8255_w)
@@ -2104,40 +2104,40 @@ ADDRESS_MAP_END
*************************************/
/* Konami Frogger with 1 x AY-8910A */
-static ADDRESS_MAP_START( frogger_sound_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::frogger_sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x6000, 0x6fff) AM_MIRROR(0x1000) AM_WRITE(konami_sound_filter_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( frogger_sound_portmap, AS_IO, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::frogger_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(frogger_ay8910_r, frogger_ay8910_w)
ADDRESS_MAP_END
/* Konami generic with 2 x AY-8910A */
-static ADDRESS_MAP_START( konami_sound_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::konami_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x6c00) AM_RAM
AM_RANGE(0x9000, 0x9fff) AM_MIRROR(0x6000) AM_WRITE(konami_sound_filter_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( konami_sound_portmap, AS_IO, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::konami_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(konami_ay8910_r, konami_ay8910_w)
ADDRESS_MAP_END
/* Checkman with 1 x AY-8910A */
-static ADDRESS_MAP_START( checkman_sound_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::checkman_sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( checkman_sound_portmap, AS_IO, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::checkman_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x03, 0x03) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -2147,7 +2147,7 @@ ADDRESS_MAP_END
/* Checkman alternate with 1 x AY-8910A */
-static ADDRESS_MAP_START( checkmaj_sound_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::checkmaj_sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
@@ -2158,12 +2158,12 @@ ADDRESS_MAP_END
/* Take Off with 1x AY-8912*/
-static ADDRESS_MAP_START( takeoff_sound_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::takeoff_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x6c00) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( takeoff_sound_portmap, AS_IO, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::takeoff_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x20, 0x20) AM_READ(konami_sound_timer_r)
@@ -2172,14 +2172,14 @@ static ADDRESS_MAP_START( takeoff_sound_portmap, AS_IO, 8, galaxian_state )
ADDRESS_MAP_END
/* King and Balloon with DAC */
-static ADDRESS_MAP_START( kingball_sound_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::kingball_sound_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kingball_sound_portmap, AS_IO, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::kingball_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(kingball_dac_w)
@@ -2187,17 +2187,17 @@ ADDRESS_MAP_END
/* SF-X sample player */
-static ADDRESS_MAP_START( sfx_sample_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::sfx_sample_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x6c00) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sfx_sample_portmap, AS_IO, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::sfx_sample_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(sfx_sample_io_r, sfx_sample_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( turpins_sound_map, AS_PROGRAM, 8, galaxian_state )
+ADDRESS_MAP_START(galaxian_state::turpins_sound_map)
AM_IMPORT_FROM(konami_sound_map)
AM_RANGE(0x9000, 0x9000) AM_READ(konami_sound_timer_r) // why does it read it here AND from the AY port?
ADDRESS_MAP_END
@@ -5863,7 +5863,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(galaxian_state::moonqsr, mooncrst)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(moonqsr_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(moonqsr_decrypted_opcodes_map)
MACHINE_CONFIG_END
@@ -5968,7 +5968,7 @@ MACHINE_CONFIG_DERIVED(galaxian_state::mshuttle, galaxian_base)
/* basic machine hardware */
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(mshuttle_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(mshuttle_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(mshuttle_decrypted_opcodes_map)
MCFG_CPU_IO_MAP(mshuttle_portmap)
/* sound hardware */
diff --git a/src/mame/drivers/galaxold.cpp b/src/mame/drivers/galaxold.cpp
index a21b80b5d7c..e276f25de76 100644
--- a/src/mame/drivers/galaxold.cpp
+++ b/src/mame/drivers/galaxold.cpp
@@ -145,7 +145,7 @@ READ8_MEMBER(galaxold_state::drivfrcg_port0_r)
return 0;
}
-static ADDRESS_MAP_START( galaxold_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::galaxold_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -175,7 +175,7 @@ static ADDRESS_MAP_START( galaxold_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::mooncrst_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -202,7 +202,7 @@ static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hustlerb3_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::hustlerb3_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -228,7 +228,7 @@ static ADDRESS_MAP_START( hustlerb3_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::rockclim_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_READWRITE(rockclim_videoram_r, rockclim_videoram_w) AM_SHARE("rockclim_vram")//4800 - 4803 = bg scroll ?
AM_RANGE(0x4800, 0x4803) AM_WRITE(rockclim_scroll_w)
@@ -260,7 +260,7 @@ static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ckongg_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::ckongg_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_SHARE("videoram")
@@ -287,7 +287,7 @@ static ADDRESS_MAP_START( ckongg_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
/* Memory map based on mooncrst_map according to Z80 code - seems to be good but needs further checking */
-static ADDRESS_MAP_START( ckongmc_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::ckongmc_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_SHARE("videoram")
@@ -314,7 +314,7 @@ static ADDRESS_MAP_START( ckongmc_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scramblb_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::scramblb_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -349,7 +349,7 @@ READ8_MEMBER(galaxold_state::scramb2_port0_r){ return (ioport("IN0")->read() >>
READ8_MEMBER(galaxold_state::scramb2_port1_r){ return (ioport("IN1")->read() >> offset) & 0x1; }
READ8_MEMBER(galaxold_state::scramb2_port2_r){ return (ioport("IN2")->read() >> offset) & 0x1; }
-static ADDRESS_MAP_START( scramb2_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::scramb2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -380,7 +380,7 @@ READ8_MEMBER( galaxold_state::scrambler_protection_2_r )
}
// there are still unmapped reads / writes, it's not really clear what gets hooked up to where on these bootlegs, if they go anywhere at all
-static ADDRESS_MAP_START( scrambler_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::scrambler_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -430,7 +430,7 @@ WRITE8_MEMBER( galaxold_state::guttang_rombank_w )
}
-static ADDRESS_MAP_START( guttang_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::guttang_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP // 0x2000-0x27ff is banked (so they have room for the new music player), see init
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -458,7 +458,7 @@ static ADDRESS_MAP_START( guttang_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( _4in1_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::_4in1_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") /* banked game code */
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -489,7 +489,7 @@ static ADDRESS_MAP_START( _4in1_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bagmanmc_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::bagmanmc_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -511,7 +511,7 @@ static ADDRESS_MAP_START( bagmanmc_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkongjrm_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::dkongjrm_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x7fff) AM_ROM
@@ -537,7 +537,7 @@ static ADDRESS_MAP_START( dkongjrm_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dkongjrmc_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::dkongjrmc_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x73ff) AM_RAM_WRITE(galaxold_videoram_w)
@@ -563,7 +563,7 @@ static ADDRESS_MAP_START( dkongjrmc_map, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tazzmang, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::tazzmang)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x7000, 0x7000) AM_READ_PORT("DSW0") /* mirror */
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -588,7 +588,7 @@ static ADDRESS_MAP_START( tazzmang, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bongo, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::bongo)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0x8400, 0x87ff) AM_WRITENOP // not used
@@ -607,14 +607,14 @@ static ADDRESS_MAP_START( bongo, AS_PROGRAM, 8, galaxold_state )
AM_RANGE(0xb800, 0xb800) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bongo_io, AS_IO, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::bongo_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_device, data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ozon1_map, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::ozon1_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x4200) AM_RAM
AM_RANGE(0x4300, 0x43ff) AM_RAM
@@ -632,13 +632,13 @@ static ADDRESS_MAP_START( ozon1_map, AS_PROGRAM, 8, galaxold_state )
AM_RANGE(0x8103, 0x8103) AM_WRITENOP //only one 9b at reset
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ozon1_io_map, AS_IO, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::ozon1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hunchbkg, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::hunchbkg)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_SHARE("spriteram")
@@ -663,7 +663,7 @@ static ADDRESS_MAP_START( hunchbkg, AS_PROGRAM, 8, galaxold_state )
ADDRESS_MAP_END
/* hunchbkg style */
-static ADDRESS_MAP_START( spcwarp, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::spcwarp)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_SHARE("spriteram")
@@ -689,12 +689,12 @@ static ADDRESS_MAP_START( spcwarp, AS_PROGRAM, 8, galaxold_state )
AM_RANGE(0x6000, 0x6fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hunchbkg_data, AS_DATA, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::hunchbkg_data)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READNOP // not used
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::drivfrcg)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_SHARE("spriteram")
@@ -716,12 +716,12 @@ static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8, galaxold_state )
AM_RANGE(0x6000, 0x6fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drivfrcg_io, AS_IO, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::drivfrcg_io)
AM_RANGE(0x00, 0x00) AM_READ(drivfrcg_port0_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::racknrol)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1400, 0x143f) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
AM_RANGE(0x1440, 0x14bf) AM_MIRROR(0x6000) AM_RAM AM_SHARE("spriteram")
@@ -742,7 +742,7 @@ static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8, galaxold_state )
AM_RANGE(0x6000, 0x6fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( racknrol_io, AS_IO, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::racknrol_io)
AM_RANGE(0x1d, 0x1d) AM_DEVWRITE("snsnd", sn76489a_device, write)
// AM_RANGE(0x1e, 0x1e) AM_WRITENOP
// AM_RANGE(0x1f, 0x1f) AM_WRITENOP
@@ -763,12 +763,12 @@ READ8_MEMBER(galaxold_state::hexpoola_data_port_r)
return 0;
}
-static ADDRESS_MAP_START( hexpoola_io, AS_IO, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::hexpoola_io)
AM_RANGE(0x00, 0x00) AM_READNOP
AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_SHARE("racknrol_tbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hexpoola_data, AS_DATA, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::hexpoola_data)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(hexpoola_data_port_r) AM_DEVWRITE("snsnd", sn76496_device, write)
ADDRESS_MAP_END
@@ -793,7 +793,7 @@ READ8_MEMBER(galaxold_state::bullsdrtg_data_port_r)
return 0;
}
-static ADDRESS_MAP_START( bullsdrtg_data_map, AS_IO, 8, galaxold_state )
+ADDRESS_MAP_START(galaxold_state::bullsdrtg_data_map)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(bullsdrtg_data_port_r) AM_DEVWRITE("snsnd", sn76496_device, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/galaxy.cpp b/src/mame/drivers/galaxy.cpp
index bc6f93ab70c..57275eb5c2f 100644
--- a/src/mame/drivers/galaxy.cpp
+++ b/src/mame/drivers/galaxy.cpp
@@ -38,7 +38,7 @@ Galaksija driver by Krzysztof Strzecha and Miodrag Milanovic
#include "speaker.h"
-static ADDRESS_MAP_START (galaxyp_io, AS_IO, 8, galaxy_state )
+ADDRESS_MAP_START(galaxy_state::galaxyp_io)
ADDRESS_MAP_GLOBAL_MASK(0x01)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay8910", ay8910_device, address_w)
@@ -46,13 +46,13 @@ static ADDRESS_MAP_START (galaxyp_io, AS_IO, 8, galaxy_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START (galaxy_mem, AS_PROGRAM, 8, galaxy_state )
+ADDRESS_MAP_START(galaxy_state::galaxy_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x2037) AM_MIRROR(0x07c0) AM_READ(galaxy_keyboard_r )
AM_RANGE(0x2038, 0x203f) AM_MIRROR(0x07c0) AM_WRITE(galaxy_latch_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START (galaxyp_mem, AS_PROGRAM, 8, galaxy_state )
+ADDRESS_MAP_START(galaxy_state::galaxyp_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM // ROM A
AM_RANGE(0x1000, 0x1fff) AM_ROM // ROM B
AM_RANGE(0x2000, 0x2037) AM_MIRROR(0x07c0) AM_READ(galaxy_keyboard_r )
diff --git a/src/mame/drivers/galeb.cpp b/src/mame/drivers/galeb.cpp
index 5712dfa87ba..4439da6cb13 100644
--- a/src/mame/drivers/galeb.cpp
+++ b/src/mame/drivers/galeb.cpp
@@ -64,7 +64,7 @@ READ8_MEMBER(galeb_state::tape_data_r)
}
/* Address maps */
-static ADDRESS_MAP_START(galeb_mem, AS_PROGRAM, 8, galeb_state )
+ADDRESS_MAP_START(galeb_state::galeb_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM // RAM
AM_RANGE( 0xbfe0, 0xbfe7 ) AM_READ(keyboard_r )
AM_RANGE( 0xbfe0, 0xbfe0 ) AM_WRITE(dac_w)
diff --git a/src/mame/drivers/galgame.cpp b/src/mame/drivers/galgame.cpp
index 21c91b9618f..699f4e7300a 100644
--- a/src/mame/drivers/galgame.cpp
+++ b/src/mame/drivers/galgame.cpp
@@ -57,6 +57,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<palette_device> m_palette;
void galaxygame(machine_config &config);
+ void galaxygame_map(address_map &map);
};
/*************************************
@@ -285,7 +286,7 @@ WRITE16_MEMBER(galaxygame_state::clk_w)
m_clk = data;
}
-static ADDRESS_MAP_START( galaxygame_map, AS_PROGRAM, 16, galaxygame_state )
+ADDRESS_MAP_START(galaxygame_state::galaxygame_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0xfec0, 0xfecf) AM_READWRITE(ke_r, ke_w)
AM_RANGE(0xff52, 0xff53) AM_READWRITE(y_r, y_w) // 177522 Y
diff --git a/src/mame/drivers/galgames.cpp b/src/mame/drivers/galgames.cpp
index 4dc231546c1..7e5764b130f 100644
--- a/src/mame/drivers/galgames.cpp
+++ b/src/mame/drivers/galgames.cpp
@@ -244,7 +244,7 @@ public:
// construction/destruction
galgames_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(slot_map, 16);
+ void slot_map(address_map &map);
DECLARE_READ16_MEMBER(read) { return m_space->read_word(offset * 2, mem_mask); }
DECLARE_WRITE16_MEMBER(write) { m_space->write_word(offset * 2, data, mem_mask); }
@@ -559,7 +559,7 @@ WRITE_LINE_MEMBER(galgames_cart_device::eeprom_cs_write)
// SLOT implementation
-DEVICE_ADDRESS_MAP_START( slot_map, 16, galgames_slot_device )
+ADDRESS_MAP_START(galgames_slot_device::slot_map)
AM_RANGE( 0x000000, 0x1fffff ) AM_READ(rom0_r)
AM_RANGE( 0x000000, 0x03ffff ) AM_READWRITE(rom0_or_ram_r, ram_w) AM_SHARE("ram")
AM_RANGE( 0x200000, 0x3fffff ) AM_READ(rom_r)
@@ -569,7 +569,7 @@ ADDRESS_MAP_END
galgames_slot_device::galgames_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, GALGAMES_SLOT, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("slot_space", ENDIANNESS_BIG, 16,22, 0, address_map_delegate(FUNC(galgames_slot_device::slot_map), this)),
+ m_space_config("slot_space", ENDIANNESS_BIG, 16,22, 0, address_map_constructor(FUNC(galgames_slot_device::slot_map), this)),
m_ram(*this, "ram"),
m_cart0(*this, "^cart0"),
m_cart1(*this, "^cart1"),
@@ -752,6 +752,8 @@ public:
void galgbios(machine_config &config);
void galgame2(machine_config &config);
void galgame3(machine_config &config);
+ void blitter_map(address_map &map);
+ void galgames_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
@@ -857,7 +859,7 @@ READ16_MEMBER(galgames_state::fpga_status_r)
return 0x3; // Pass the check at PC = 0xfae & a later one
}
-static ADDRESS_MAP_START( galgames_map, AS_PROGRAM, 16, galgames_state )
+ADDRESS_MAP_START(galgames_state::galgames_map)
AM_RANGE( 0x000000, 0x3fffff ) AM_DEVREADWRITE("slot", galgames_slot_device, read, write )
AM_RANGE( 0x400000, 0x400011 ) AM_DEVWRITE("blitter", cesblit_device, regs_w )
@@ -891,7 +893,7 @@ static ADDRESS_MAP_START( galgames_map, AS_PROGRAM, 16, galgames_state )
AM_RANGE( 0xd00014, 0xd00015 ) AM_DEVREADWRITE8("slot", galgames_slot_device, pic_status_r, ram_sel_w, 0x00ff )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blitter_map, AS_PROGRAM, 16, galgames_state )
+ADDRESS_MAP_START(galgames_state::blitter_map)
AM_RANGE( 0x000000, 0x1fffff ) AM_DEVREAD(":slot", galgames_slot_device, rom_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/galivan.cpp b/src/mame/drivers/galivan.cpp
index 908420ea3a6..e715d58e5b2 100644
--- a/src/mame/drivers/galivan.cpp
+++ b/src/mame/drivers/galivan.cpp
@@ -62,7 +62,7 @@ READ8_MEMBER(galivan_state::IO_port_c0_r)
-static ADDRESS_MAP_START( galivan_map, AS_PROGRAM, 8, galivan_state )
+ADDRESS_MAP_START(galivan_state::galivan_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1")
@@ -72,7 +72,7 @@ static ADDRESS_MAP_START( galivan_map, AS_PROGRAM, 8, galivan_state )
AM_RANGE(0xe100, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ninjemak_map, AS_PROGRAM, 8, galivan_state )
+ADDRESS_MAP_START(galivan_state::ninjemak_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1")
@@ -82,7 +82,7 @@ static ADDRESS_MAP_START( ninjemak_map, AS_PROGRAM, 8, galivan_state )
AM_RANGE(0xe200, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, galivan_state )
+ADDRESS_MAP_START(galivan_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2")
@@ -103,7 +103,7 @@ WRITE8_MEMBER(galivan_state::blit_trigger_w)
m_nb1414m4->exec((m_videoram[0] << 8) | (m_videoram[1] & 0xff),m_videoram,m_scrollx,m_scrolly,m_tx_tilemap);
}
-static ADDRESS_MAP_START( ninjemak_io_map, AS_IO, 8, galivan_state )
+ADDRESS_MAP_START(galivan_state::ninjemak_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_READ_PORT("P1") AM_WRITE(ninjemak_gfxbank_w)
AM_RANGE(0x81, 0x81) AM_READ_PORT("P2")
@@ -115,12 +115,12 @@ static ADDRESS_MAP_START( ninjemak_io_map, AS_IO, 8, galivan_state )
// AM_RANGE(0x87, 0x87) AM_WRITENOP // ??
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, galivan_state )
+ADDRESS_MAP_START(galivan_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, galivan_state )
+ADDRESS_MAP_START(galivan_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3526_device, write)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_byte_interface, write)
diff --git a/src/mame/drivers/galpani2.cpp b/src/mame/drivers/galpani2.cpp
index 878b2d55b9f..5492ef0c61e 100644
--- a/src/mame/drivers/galpani2.cpp
+++ b/src/mame/drivers/galpani2.cpp
@@ -347,7 +347,7 @@ WRITE8_MEMBER(galpani2_state::galpani2_oki2_bank_w)
}
-static ADDRESS_MAP_START( galpani2_mem1, AS_PROGRAM, 16, galpani2_state )
+ADDRESS_MAP_START(galpani2_state::galpani2_mem1)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("ram") // Work RAM
AM_RANGE(0x110000, 0x11000f) AM_RAM // ? corrupted? stack dumper on POST failure, pc+sr on gp2se
@@ -415,7 +415,7 @@ WRITE16_MEMBER(galpani2_state::subdatabank_select_w)
}
-static ADDRESS_MAP_START( galpani2_mem2, AS_PROGRAM, 16, galpani2_state )
+ADDRESS_MAP_START(galpani2_state::galpani2_mem2)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAM AM_SHARE("ram2") // Work RAM
AM_RANGE(0x400000, 0x5fffff) AM_RAM AM_SHARE("bg15") // bg15
diff --git a/src/mame/drivers/galpani3.cpp b/src/mame/drivers/galpani3.cpp
index 3db9950f207..ef776b0529c 100644
--- a/src/mame/drivers/galpani3.cpp
+++ b/src/mame/drivers/galpani3.cpp
@@ -124,6 +124,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(galpani3_vblank);
int gp3_is_alpha_pen(int pen);
void galpani3(machine_config &config);
+ void galpani3_map(address_map &map);
};
@@ -465,7 +466,7 @@ WRITE16_MEMBER(galpani3_state::galpani3_priority_buffer_scrolly_w)
-static ADDRESS_MAP_START( galpani3_map, AS_PROGRAM, 16, galpani3_state )
+ADDRESS_MAP_START(galpani3_state::galpani3_map)
AM_RANGE(0x000000, 0x17ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // area [B] - Work RAM
diff --git a/src/mame/drivers/galpanic.cpp b/src/mame/drivers/galpanic.cpp
index 2f35f349c6e..8fba54894a1 100644
--- a/src/mame/drivers/galpanic.cpp
+++ b/src/mame/drivers/galpanic.cpp
@@ -133,7 +133,7 @@ WRITE16_MEMBER(galpanic_state::coin_w)
-static ADDRESS_MAP_START( galpanic_map, AS_PROGRAM, 16, galpanic_state )
+ADDRESS_MAP_START(galpanic_state::galpanic_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x400000, 0x400001) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_SHARE("fgvideoram")
@@ -151,12 +151,12 @@ static ADDRESS_MAP_START( galpanic_map, AS_PROGRAM, 16, galpanic_state )
AM_RANGE(0xd00000, 0xd00001) AM_WRITENOP /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galpanica_map, AS_PROGRAM, 16, galpanic_state )
+ADDRESS_MAP_START(galpanic_state::galpanica_map)
AM_IMPORT_FROM(galpanic_map)
AM_RANGE(0xe00000, 0xe00015) AM_DEVREADWRITE("calc1_mcu", kaneko_hit_device, kaneko_hit_r,kaneko_hit_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galpanic_oki_map, 0, 8, galpanic_state )
+ADDRESS_MAP_START(galpanic_state::galpanic_oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/galspnbl.cpp b/src/mame/drivers/galspnbl.cpp
index c9f592c7ec9..8979cf6becf 100644
--- a/src/mame/drivers/galspnbl.cpp
+++ b/src/mame/drivers/galspnbl.cpp
@@ -57,7 +57,7 @@ WRITE16_MEMBER(galspnbl_state::soundcommand_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, galspnbl_state )
+ADDRESS_MAP_START(galspnbl_state::main_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x700000, 0x703fff) AM_RAM /* galspnbl work RAM */
AM_RANGE(0x708000, 0x70ffff) AM_RAM /* galspnbl work RAM, bitmaps are decompressed here */
@@ -81,7 +81,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, galspnbl_state )
AM_RANGE(0xa80050, 0xa80051) AM_WRITEONLY AM_SHARE("scroll") /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, galspnbl_state )
+ADDRESS_MAP_START(galspnbl_state::audio_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/gamate.cpp b/src/mame/drivers/gamate.cpp
index daebfed3840..def01b131a3 100644
--- a/src/mame/drivers/gamate.cpp
+++ b/src/mame/drivers/gamate.cpp
@@ -52,6 +52,7 @@ public:
TIMER_CALLBACK_MEMBER(gamate_timer2);
void gamate(machine_config &config);
+ void gamate_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -115,7 +116,7 @@ READ8_MEMBER(gamate_state::read_cart)
return m_cartslot->read_cart(space, offset);
}
-static ADDRESS_MAP_START( gamate_mem, AS_PROGRAM, 8, gamate_state )
+ADDRESS_MAP_START(gamate_state::gamate_mem)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x4000, 0x400f) AM_MIRROR(0x03f0) AM_READWRITE(sound_r,sound_w)
AM_RANGE(0x4400, 0x4400) AM_MIRROR(0x03ff) AM_READ_PORT("JOY")
diff --git a/src/mame/drivers/gambl186.cpp b/src/mame/drivers/gambl186.cpp
index 8ee21199f1a..b495ecdaf7f 100644
--- a/src/mame/drivers/gambl186.cpp
+++ b/src/mame/drivers/gambl186.cpp
@@ -80,6 +80,8 @@ public:
DECLARE_WRITE16_MEMBER(data_bank_w);
DECLARE_WRITE16_MEMBER(upd_w);
void gambl186(machine_config &config);
+ void gambl186_io(address_map &map);
+ void gambl186_map(address_map &map);
};
void gambl186_state::machine_start()
@@ -358,14 +360,14 @@ WRITE16_MEMBER(gambl186_state::upd_w)
// m_upd7759->start_w(1);
}
-static ADDRESS_MAP_START( gambl186_map, AS_PROGRAM, 16, gambl186_state )
+ADDRESS_MAP_START(gambl186_state::gambl186_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x40000, 0x7ffff) AM_ROMBANK("data_bank")
AM_RANGE(0xa0000, 0xbffff) AM_DEVREADWRITE8("vga", cirrus_gd5428_device, mem_r, mem_w, 0xffff)
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("ipl",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gambl186_io, AS_IO, 16, gambl186_state )
+ADDRESS_MAP_START(gambl186_state::gambl186_io)
AM_RANGE(0x03b0, 0x03bf) AM_DEVREADWRITE8("vga", cirrus_gd5428_device, port_03b0_r, port_03b0_w, 0xffff)
AM_RANGE(0x03c0, 0x03cf) AM_DEVREADWRITE8("vga", cirrus_gd5428_device, port_03c0_r, port_03c0_w, 0xffff)
AM_RANGE(0x03d0, 0x03df) AM_DEVREADWRITE8("vga", cirrus_gd5428_device, port_03d0_r, port_03d0_w, 0xffff)
diff --git a/src/mame/drivers/gamecom.cpp b/src/mame/drivers/gamecom.cpp
index 92d1a4ae425..bfc336a3a64 100644
--- a/src/mame/drivers/gamecom.cpp
+++ b/src/mame/drivers/gamecom.cpp
@@ -34,7 +34,7 @@ Game Status:
#include "gamecom.lh"
-static ADDRESS_MAP_START(gamecom_mem_map, AS_PROGRAM, 8, gamecom_state)
+ADDRESS_MAP_START(gamecom_state::gamecom_mem_map)
AM_RANGE( 0x0000, 0x0013 ) AM_RAM AM_REGION("maincpu", 0x00)
AM_RANGE( 0x0014, 0x0017 ) AM_READWRITE( gamecom_pio_r, gamecom_pio_w ) // buttons
AM_RANGE( 0x0018, 0x001F ) AM_RAM AM_REGION("maincpu", 0x18)
diff --git a/src/mame/drivers/gamecstl.cpp b/src/mame/drivers/gamecstl.cpp
index 52d2b715ff6..2c8d5f44a39 100644
--- a/src/mame/drivers/gamecstl.cpp
+++ b/src/mame/drivers/gamecstl.cpp
@@ -100,6 +100,8 @@ public:
void draw_char(bitmap_ind16 &bitmap, const rectangle &cliprect, gfx_element *gfx, int ch, int att, int x, int y);
void intel82439tx_init();
void gamecstl(machine_config &config);
+ void gamecstl_io(address_map &map);
+ void gamecstl_map(address_map &map);
};
@@ -338,7 +340,7 @@ WRITE32_MEMBER(gamecstl_state::bios_ram_w)
/*****************************************************************************/
-static ADDRESS_MAP_START( gamecstl_map, AS_PROGRAM, 32, gamecstl_state )
+ADDRESS_MAP_START(gamecstl_state::gamecstl_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000affff) AM_RAM
AM_RANGE(0x000b0000, 0x000b7fff) AM_RAM AM_SHARE("cga_ram")
@@ -349,7 +351,7 @@ static ADDRESS_MAP_START( gamecstl_map, AS_PROGRAM, 32, gamecstl_state )
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(gamecstl_io, AS_IO, 32, gamecstl_state )
+ADDRESS_MAP_START(gamecstl_state::gamecstl_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00eb) AM_NOP
AM_RANGE(0x00ec, 0x00ef) AM_NOP
diff --git a/src/mame/drivers/gamecube.cpp b/src/mame/drivers/gamecube.cpp
index 187f95f7d0c..552fa3a2317 100644
--- a/src/mame/drivers/gamecube.cpp
+++ b/src/mame/drivers/gamecube.cpp
@@ -26,6 +26,7 @@ public:
{ }
void gc(machine_config &config);
+ void ppc_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -41,7 +42,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( ppc_mem, AS_PROGRAM, 64, gamecube_state )
+ADDRESS_MAP_START(gamecube_state::ppc_mem)
AM_RANGE(0x00000000, 0x017fffff) AM_RAM // 24 MB main memory
AM_RANGE(0x08000000, 0x081fffff) AM_RAM // 2 MB embedded framebuffer
AM_RANGE(0xfff00000, 0xffffffff) AM_ROMBANK("boot")
diff --git a/src/mame/drivers/gameking.cpp b/src/mame/drivers/gameking.cpp
index 81b72b609d7..8255ef8fcfa 100644
--- a/src/mame/drivers/gameking.cpp
+++ b/src/mame/drivers/gameking.cpp
@@ -72,6 +72,7 @@ public:
void gameking(machine_config &config);
void gameking3(machine_config &config);
void gameking1(machine_config &config);
+ void gameking_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<generic_slot_device> m_cart;
@@ -147,7 +148,7 @@ READ8_MEMBER(gameking_state::lcd_r)
return data;
}
-static ADDRESS_MAP_START( gameking_mem , AS_PROGRAM, 8, gameking_state )
+ADDRESS_MAP_START(gameking_state::gameking_mem)
AM_RANGE(0x0000, 0x007f) AM_READWRITE(io_r, io_w)
AM_RANGE(0x0080, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x03ff) AM_RAM // lcd 2nd copy
diff --git a/src/mame/drivers/gameplan.cpp b/src/mame/drivers/gameplan.cpp
index 58d41bd3b43..9757dfebff9 100644
--- a/src/mame/drivers/gameplan.cpp
+++ b/src/mame/drivers/gameplan.cpp
@@ -178,7 +178,7 @@ WRITE8_MEMBER(gameplan_state::r6532_soundlatch_w)
*
*************************************/
-static ADDRESS_MAP_START( gameplan_main_map, AS_PROGRAM, 8, gameplan_state )
+ADDRESS_MAP_START(gameplan_state::gameplan_main_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x2000, 0x200f) AM_MIRROR(0x07f0) AM_DEVREADWRITE("via6522_0", via6522_device, read, write) /* VIA 1 */
AM_RANGE(0x2800, 0x280f) AM_MIRROR(0x07f0) AM_DEVREADWRITE("via6522_1", via6522_device, read, write) /* VIA 2 */
@@ -194,7 +194,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( gameplan_audio_map, AS_PROGRAM, 8, gameplan_state )
+ADDRESS_MAP_START(gameplan_state::gameplan_audio_map)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x1780) AM_RAM /* 6532 internal RAM */
AM_RANGE(0x0800, 0x081f) AM_MIRROR(0x17e0) AM_DEVREADWRITE("riot", riot6532_device, read, write)
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, address_w)
@@ -205,7 +205,7 @@ ADDRESS_MAP_END
/* same as Gameplan, but larger ROM */
-static ADDRESS_MAP_START( leprechn_audio_map, AS_PROGRAM, 8, gameplan_state )
+ADDRESS_MAP_START(gameplan_state::leprechn_audio_map)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x1780) AM_RAM /* 6532 internal RAM */
AM_RANGE(0x0800, 0x081f) AM_MIRROR(0x17e0) AM_DEVREADWRITE("riot", riot6532_device, read, write)
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, address_w)
diff --git a/src/mame/drivers/gamepock.cpp b/src/mame/drivers/gamepock.cpp
index c6f6147f317..d94cc76167b 100644
--- a/src/mame/drivers/gamepock.cpp
+++ b/src/mame/drivers/gamepock.cpp
@@ -14,7 +14,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START(gamepock_mem, AS_PROGRAM, 8, gamepock_state)
+ADDRESS_MAP_START(gamepock_state::gamepock_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x0fff) AM_ROM
AM_RANGE(0x1000,0x3fff) AM_NOP
diff --git a/src/mame/drivers/gammagic.cpp b/src/mame/drivers/gammagic.cpp
index 02e20d25178..9127d41d11e 100644
--- a/src/mame/drivers/gammagic.cpp
+++ b/src/mame/drivers/gammagic.cpp
@@ -46,10 +46,12 @@ public:
virtual void machine_start() override;
void gammagic(machine_config &config);
+ void gammagic_io(address_map &map);
+ void gammagic_map(address_map &map);
};
// Memory is mostly handled by the chipset
-static ADDRESS_MAP_START( gammagic_map, AS_PROGRAM, 32, gammagic_state )
+ADDRESS_MAP_START(gammagic_state::gammagic_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000e0000, 0x000fffff) AM_ROM AM_REGION("user", 0x20000)/* System BIOS */
@@ -58,7 +60,7 @@ static ADDRESS_MAP_START( gammagic_map, AS_PROGRAM, 32, gammagic_state )
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("user", 0x20000)/* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gammagic_io, AS_IO, 32, gammagic_state)
+ADDRESS_MAP_START(gammagic_state::gammagic_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
AM_RANGE(0x00f0, 0x01ef) AM_NOP
diff --git a/src/mame/drivers/gamtor.cpp b/src/mame/drivers/gamtor.cpp
index 1875da620ee..a565285f18b 100644
--- a/src/mame/drivers/gamtor.cpp
+++ b/src/mame/drivers/gamtor.cpp
@@ -44,6 +44,7 @@ public:
DECLARE_DRIVER_INIT(gaminator);
required_device<cpu_device> m_maincpu;
void gaminator(machine_config &config);
+ void gaminator_map(address_map &map);
};
WRITE32_MEMBER(gaminator_state::gamtor_unk_w)
@@ -52,7 +53,7 @@ WRITE32_MEMBER(gaminator_state::gamtor_unk_w)
-static ADDRESS_MAP_START( gaminator_map, AS_PROGRAM, 32, gaminator_state )
+ADDRESS_MAP_START(gaminator_state::gaminator_map)
AM_RANGE(0x00000000, 0x07ffffff) AM_ROM
AM_RANGE(0x08000000, 0x0bffffff) AM_RAM
AM_RANGE(0x1e040008, 0x1e04000b) AM_WRITE(gamtor_unk_w )
diff --git a/src/mame/drivers/gaplus.cpp b/src/mame/drivers/gaplus.cpp
index 8acd3187211..670b8b64391 100644
--- a/src/mame/drivers/gaplus.cpp
+++ b/src/mame/drivers/gaplus.cpp
@@ -272,7 +272,7 @@ INTERRUPT_GEN_MEMBER(gaplus_state::vblank_sub2_irq)
}
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, gaplus_state )
+ADDRESS_MAP_START(gaplus_state::cpu1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram") /* tilemap RAM (shared with CPU #2) */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") /* shared RAM with CPU #2 (includes sprite RAM) */
AM_RANGE(0x6000, 0x63ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w) /* shared RAM with CPU #3 */
@@ -287,7 +287,7 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, gaplus_state )
AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, gaplus_state )
+ADDRESS_MAP_START(gaplus_state::cpu2_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram") /* tilemap RAM (shared with CPU #1) */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") /* shared RAM with CPU #1 */
// AM_RANGE(0x500f, 0x500f) AM_WRITENOP /* ??? written 256 times on startup */
@@ -295,7 +295,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, gaplus_state )
AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8, gaplus_state )
+ADDRESS_MAP_START(gaplus_state::cpu3_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w) /* shared RAM with the main CPU + sound registers */
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("watchdog", watchdog_timer_device, reset_r, reset_w) /* watchdog? */
AM_RANGE(0x4000, 0x7fff) AM_WRITE(irq_3_ctrl_w) /* interrupt enable/disable */
diff --git a/src/mame/drivers/gatron.cpp b/src/mame/drivers/gatron.cpp
index 0f730fb77c7..d3ae5597210 100644
--- a/src/mame/drivers/gatron.cpp
+++ b/src/mame/drivers/gatron.cpp
@@ -447,7 +447,7 @@ WRITE8_MEMBER(gatron_state::output_port_1_w)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( gat_map, AS_PROGRAM, 8, gatron_state )
+ADDRESS_MAP_START(gatron_state::gat_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(gat_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
@@ -455,7 +455,7 @@ static ADDRESS_MAP_START( gat_map, AS_PROGRAM, 8, gatron_state )
AM_RANGE(0xe000, 0xe000) AM_WRITE(output_port_0_w) /* lamps */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gat_portmap, AS_IO, 8, gatron_state )
+ADDRESS_MAP_START(gatron_state::gat_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gauntlet.cpp b/src/mame/drivers/gauntlet.cpp
index 262db998c7f..6ad6c2c6e57 100644
--- a/src/mame/drivers/gauntlet.cpp
+++ b/src/mame/drivers/gauntlet.cpp
@@ -272,7 +272,7 @@ WRITE8_MEMBER(gauntlet_state::mixer_w)
*************************************/
/* full map verified from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, gauntlet_state )
+ADDRESS_MAP_START(gauntlet_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x037fff) AM_MIRROR(0x280000) AM_ROM
AM_RANGE(0x038000, 0x03ffff) AM_MIRROR(0x280000) AM_ROM /* slapstic maps here */
@@ -313,7 +313,7 @@ ADDRESS_MAP_END
*************************************/
/* full map verified from schematics */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gauntlet_state )
+ADDRESS_MAP_START(gauntlet_state::sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x2000) AM_RAM
AM_RANGE(0x1000, 0x100f) AM_MIRROR(0x27c0) AM_DEVWRITE("soundcomm", atari_sound_comm_device, sound_response_w)
diff --git a/src/mame/drivers/gb.cpp b/src/mame/drivers/gb.cpp
index 0939a96ae82..07b1fcf2f56 100644
--- a/src/mame/drivers/gb.cpp
+++ b/src/mame/drivers/gb.cpp
@@ -403,7 +403,7 @@ WRITE8_MEMBER(megaduck_state::bank2_w)
}
-static ADDRESS_MAP_START(gameboy_map, AS_PROGRAM, 8, gb_state)
+ADDRESS_MAP_START(gb_state::gameboy_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(gb_cart_r, gb_bank_w)
AM_RANGE(0x8000, 0x9fff) AM_DEVREADWRITE("ppu", dmg_ppu_device, vram_r, vram_w) /* 8k VRAM */
@@ -420,7 +420,7 @@ static ADDRESS_MAP_START(gameboy_map, AS_PROGRAM, 8, gb_state)
AM_RANGE(0xffff, 0xffff) AM_READWRITE(gb_ie_r, gb_ie_w) /* Interrupt enable register */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sgb_map, AS_PROGRAM, 8, gb_state)
+ADDRESS_MAP_START(gb_state::sgb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(gb_cart_r, gb_bank_w)
AM_RANGE(0x8000, 0x9fff) AM_DEVREADWRITE("ppu", sgb_ppu_device, vram_r, vram_w) /* 8k VRAM */
@@ -437,7 +437,7 @@ static ADDRESS_MAP_START(sgb_map, AS_PROGRAM, 8, gb_state)
AM_RANGE(0xffff, 0xffff) AM_READWRITE(gb_ie_r, gb_ie_w) /* Interrupt enable register */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(gbc_map, AS_PROGRAM, 8, gb_state)
+ADDRESS_MAP_START(gb_state::gbc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(gbc_cart_r, gb_bank_w)
AM_RANGE(0x8000, 0x9fff) AM_DEVREADWRITE("ppu", cgb_ppu_device, vram_r, vram_w) /* 8k banked VRAM */
@@ -455,7 +455,7 @@ static ADDRESS_MAP_START(gbc_map, AS_PROGRAM, 8, gb_state)
AM_RANGE(0xffff, 0xffff) AM_READWRITE(gb_ie_r, gb_ie_w) /* Interrupt enable register */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(megaduck_map, AS_PROGRAM, 8, megaduck_state)
+ADDRESS_MAP_START(megaduck_state::megaduck_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(cart_r, bank1_w)
AM_RANGE(0x8000, 0x9fff) AM_DEVREADWRITE("ppu", dmg_ppu_device, vram_r, vram_w) /* 8k VRAM */
diff --git a/src/mame/drivers/gba.cpp b/src/mame/drivers/gba.cpp
index 8f416c0c364..cd4eea53ff6 100644
--- a/src/mame/drivers/gba.cpp
+++ b/src/mame/drivers/gba.cpp
@@ -1237,7 +1237,7 @@ WRITE_LINE_MEMBER(gba_state::dma_vblank_callback)
}
}
-static ADDRESS_MAP_START( gba_map, AS_PROGRAM, 32, gba_state )
+ADDRESS_MAP_START(gba_state::gba_map)
ADDRESS_MAP_UNMAP_HIGH // for "Fruit Mura no Doubutsu Tachi" and "Classic NES Series"
AM_RANGE(0x00000000, 0x00003fff) AM_ROM AM_MIRROR(0x01ffc000) AM_READ(gba_bios_r)
AM_RANGE(0x02000000, 0x0203ffff) AM_RAM AM_MIRROR(0xfc0000)
diff --git a/src/mame/drivers/gberet.cpp b/src/mame/drivers/gberet.cpp
index befe21fbeb1..eb7b908c666 100644
--- a/src/mame/drivers/gberet.cpp
+++ b/src/mame/drivers/gberet.cpp
@@ -154,7 +154,7 @@ WRITE8_MEMBER(gberet_state::gberet_sound_w)
m_sn->write(space, 0, *m_soundlatch);
}
-static ADDRESS_MAP_START( gberet_map, AS_PROGRAM, 8, gberet_state )
+ADDRESS_MAP_START(gberet_state::gberet_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(gberet_colorram_w) AM_SHARE("colorram")
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(gberet_videoram_w) AM_SHARE("videoram")
@@ -174,7 +174,7 @@ static ADDRESS_MAP_START( gberet_map, AS_PROGRAM, 8, gberet_state )
AM_RANGE(0xf603, 0xf603) AM_READ_PORT("SYSTEM")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrgoemon_map, AS_PROGRAM, 8, gberet_state )
+ADDRESS_MAP_START(gberet_state::mrgoemon_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(gberet_colorram_w) AM_SHARE("colorram")
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(gberet_videoram_w) AM_SHARE("videoram")
@@ -212,7 +212,7 @@ WRITE8_MEMBER(gberet_state::gberetb_nmi_ack_w)
m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
}
-static ADDRESS_MAP_START( gberetb_map, AS_PROGRAM, 8, gberet_state )
+ADDRESS_MAP_START(gberet_state::gberetb_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(gberet_colorram_w) AM_SHARE("colorram")
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(gberet_videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/gcpinbal.cpp b/src/mame/drivers/gcpinbal.cpp
index d1f1960c060..dfc15f35f7b 100644
--- a/src/mame/drivers/gcpinbal.cpp
+++ b/src/mame/drivers/gcpinbal.cpp
@@ -250,7 +250,7 @@ WRITE_LINE_MEMBER(gcpinbal_state::gcp_adpcm_int)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( gcpinbal_map, AS_PROGRAM, 16, gcpinbal_state )
+ADDRESS_MAP_START(gcpinbal_state::gcpinbal_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE(gcpinbal_tilemaps_word_r, gcpinbal_tilemaps_word_w) AM_SHARE("tilemapram")
AM_RANGE(0xc80000, 0xc81fff) AM_DEVREADWRITE8("spritegen", excellent_spr_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/gei.cpp b/src/mame/drivers/gei.cpp
index 40b1c4d1fca..4620ab26b0e 100644
--- a/src/mame/drivers/gei.cpp
+++ b/src/mame/drivers/gei.cpp
@@ -128,6 +128,15 @@ public:
void getrivia(machine_config &config);
void amuse(machine_config &config);
void sprtauth(machine_config &config);
+ void amuse1_map(address_map &map);
+ void amuse_map(address_map &map);
+ void findout_map(address_map &map);
+ void gepoker_map(address_map &map);
+ void getrivia_map(address_map &map);
+ void gselect_map(address_map &map);
+ void quizvid_map(address_map &map);
+ void sprtauth_map(address_map &map);
+ void suprpokr_map(address_map &map);
protected:
virtual void video_start() override;
@@ -335,7 +344,7 @@ WRITE8_MEMBER(gei_state::signature_w)
}
}
-static ADDRESS_MAP_START( getrivia_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::getrivia_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("rombank")
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram")
@@ -357,7 +366,7 @@ static ADDRESS_MAP_START( getrivia_map, AS_PROGRAM, 8, gei_state )
AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gselect_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::gselect_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("rombank")
AM_RANGE(0x4000, 0x40ff) AM_RAM AM_SHARE("nvram")
@@ -372,7 +381,7 @@ static ADDRESS_MAP_START( gselect_map, AS_PROGRAM, 8, gei_state )
ADDRESS_MAP_END
// TODO: where are mapped the lower 0x2000 bytes of the banks?
-static ADDRESS_MAP_START( amuse_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::amuse_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("rombank")
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram")
@@ -388,7 +397,7 @@ static ADDRESS_MAP_START( amuse_map, AS_PROGRAM, 8, gei_state )
AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gepoker_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::gepoker_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("rombank")
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram")
@@ -405,7 +414,7 @@ static ADDRESS_MAP_START( gepoker_map, AS_PROGRAM, 8, gei_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amuse1_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::amuse1_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("rombank")
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("nvram")
@@ -422,7 +431,7 @@ static ADDRESS_MAP_START( amuse1_map, AS_PROGRAM, 8, gei_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( findout_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::findout_map)
AM_RANGE(0x0000, 0xffff) AM_READ(catchall)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram")
@@ -443,7 +452,7 @@ static ADDRESS_MAP_START( findout_map, AS_PROGRAM, 8, gei_state )
AM_RANGE(0xc000, 0xffff) AM_WRITE(gei_bitmap_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quizvid_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::quizvid_map)
AM_RANGE(0x0000, 0xffff) AM_READ(catchall)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram")
@@ -461,7 +470,7 @@ static ADDRESS_MAP_START( quizvid_map, AS_PROGRAM, 8, gei_state )
AM_RANGE(0xc000, 0xffff) AM_WRITE(gei_bitmap_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( suprpokr_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::suprpokr_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -473,7 +482,7 @@ static ADDRESS_MAP_START( suprpokr_map, AS_PROGRAM, 8, gei_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sprtauth_map, AS_PROGRAM, 8, gei_state )
+ADDRESS_MAP_START(gei_state::sprtauth_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
diff --git a/src/mame/drivers/geneve.cpp b/src/mame/drivers/geneve.cpp
index 98be9cb5b8b..7fa6821bb6f 100644
--- a/src/mame/drivers/geneve.cpp
+++ b/src/mame/drivers/geneve.cpp
@@ -286,13 +286,15 @@ public:
int m_ready_line;
int m_ready_line1;
void geneve_60hz(machine_config &config);
+ void crumap(address_map &map);
+ void memmap(address_map &map);
};
/*
Memory map
*/
-static ADDRESS_MAP_START(memmap, AS_PROGRAM, 8, geneve_state)
+ADDRESS_MAP_START(geneve_state::memmap)
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE(GENEVE_MAPPER_TAG, bus::ti99::internal::geneve_mapper_device, readm, writem) AM_DEVSETOFFSET(GENEVE_MAPPER_TAG, bus::ti99::internal::geneve_mapper_device, setoffset)
ADDRESS_MAP_END
@@ -304,7 +306,7 @@ ADDRESS_MAP_END
TODO: Check whether A0-A2 are available for CRU addressing since those
bits are usually routed through the mapper first.
*/
-static ADDRESS_MAP_START(crumap, AS_IO, 8, geneve_state)
+ADDRESS_MAP_START(geneve_state::crumap)
AM_RANGE(0x0000, 0x0fff) AM_READ( cruread )
AM_RANGE(0x0000, 0x0003) AM_DEVREAD(TI_TMS9901_TAG, tms9901_device, read)
diff --git a/src/mame/drivers/geniusiq.cpp b/src/mame/drivers/geniusiq.cpp
index 8a7b994ede1..5747007752e 100644
--- a/src/mame/drivers/geniusiq.cpp
+++ b/src/mame/drivers/geniusiq.cpp
@@ -213,6 +213,7 @@ public:
void iqtv512(machine_config &config);
void iq128(machine_config &config);
+ void geniusiq_mem(address_map &map);
private:
uint16_t m_gfx_y;
uint16_t m_gfx_x;
@@ -414,7 +415,7 @@ INPUT_CHANGED_MEMBER( geniusiq_state::send_input )
}
-static ADDRESS_MAP_START(geniusiq_mem, AS_PROGRAM, 16, geniusiq_state)
+ADDRESS_MAP_START(geniusiq_state::geniusiq_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1FFFFF) AM_ROM
AM_RANGE(0x200000, 0x23FFFF) AM_RAM
diff --git a/src/mame/drivers/genpc.cpp b/src/mame/drivers/genpc.cpp
index 03eea248e8b..6f110ba5a60 100644
--- a/src/mame/drivers/genpc.cpp
+++ b/src/mame/drivers/genpc.cpp
@@ -28,14 +28,16 @@ public:
void pccga(machine_config &config);
void pcherc(machine_config &config);
void pcmda(machine_config &config);
+ void pc8_io(address_map &map);
+ void pc8_map(address_map &map);
};
-static ADDRESS_MAP_START( pc8_map, AS_PROGRAM, 8, genpc_state )
+ADDRESS_MAP_START(genpc_state::pc8_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pc8_io, AS_IO, 8, genpc_state )
+ADDRESS_MAP_START(genpc_state::pc8_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", ibm5160_mb_device, map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ggconnie.cpp b/src/mame/drivers/ggconnie.cpp
index c7deed82c70..e6118492772 100644
--- a/src/mame/drivers/ggconnie.cpp
+++ b/src/mame/drivers/ggconnie.cpp
@@ -46,6 +46,8 @@ public:
DECLARE_WRITE8_MEMBER(oki_bank_w);
void ggconnie(machine_config &config);
+ void sgx_io(address_map &map);
+ void sgx_mem(address_map &map);
private:
required_device <msm6242_device> m_rtc;
required_device <okim6295_device> m_oki;
@@ -68,7 +70,7 @@ WRITE8_MEMBER(ggconnie_state::oki_bank_w)
}
-static ADDRESS_MAP_START( sgx_mem , AS_PROGRAM, 8, ggconnie_state )
+ADDRESS_MAP_START(ggconnie_state::sgx_mem)
AM_RANGE( 0x000000, 0x17ffff) AM_ROM
AM_RANGE( 0x180000, 0x1edfff) AM_NOP
AM_RANGE( 0x1ee800, 0x1effff) AM_NOP
@@ -91,7 +93,7 @@ static ADDRESS_MAP_START( sgx_mem , AS_PROGRAM, 8, ggconnie_state )
AM_RANGE( 0x1ff400, 0x1ff7ff) AM_DEVREADWRITE("maincpu", h6280_device, irq_status_r, irq_status_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgx_io , AS_IO, 8, ggconnie_state )
+ADDRESS_MAP_START(ggconnie_state::sgx_io)
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE( "huc6202", huc6202_device, io_read, io_write )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ghosteo.cpp b/src/mame/drivers/ghosteo.cpp
index 1c895df508c..c85a4dbf423 100644
--- a/src/mame/drivers/ghosteo.cpp
+++ b/src/mame/drivers/ghosteo.cpp
@@ -135,6 +135,8 @@ public:
void ghosteo(machine_config &config);
void touryuu(machine_config &config);
void bballoon(machine_config &config);
+ void bballoon_map(address_map &map);
+ void touryuu_map(address_map &map);
};
@@ -425,7 +427,7 @@ READ32_MEMBER( ghosteo_state::touryuu_port_10000000_r )
}
-static ADDRESS_MAP_START( bballoon_map, AS_PROGRAM, 32, ghosteo_state )
+ADDRESS_MAP_START(ghosteo_state::bballoon_map)
AM_RANGE(0x10000000, 0x10000003) AM_READ_PORT("10000000")
AM_RANGE(0x10100000, 0x10100003) AM_READ_PORT("10100000")
AM_RANGE(0x10200000, 0x10200003) AM_READ_PORT("10200000")
@@ -433,7 +435,7 @@ static ADDRESS_MAP_START( bballoon_map, AS_PROGRAM, 32, ghosteo_state )
AM_RANGE(0x30000000, 0x31ffffff) AM_RAM AM_SHARE("systememory") AM_MIRROR(0x02000000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( touryuu_map, AS_PROGRAM, 32, ghosteo_state )
+ADDRESS_MAP_START(ghosteo_state::touryuu_map)
AM_RANGE(0x10000000, 0x10000003) AM_READ(touryuu_port_10000000_r)
AM_RANGE(0x10100000, 0x10100003) AM_READ_PORT("10100000")
AM_RANGE(0x10200000, 0x10200003) AM_READ_PORT("10200000")
diff --git a/src/mame/drivers/giclassic.cpp b/src/mame/drivers/giclassic.cpp
index 08bffcdad03..3e6d7315137 100644
--- a/src/mame/drivers/giclassic.cpp
+++ b/src/mame/drivers/giclassic.cpp
@@ -81,6 +81,7 @@ public:
DECLARE_READ16_MEMBER(vrom_r);
void giclassic(machine_config &config);
+ void satellite_main(address_map &map);
private:
uint8_t m_control;
};
@@ -142,7 +143,7 @@ READ16_MEMBER(giclassic_state::vrom_r)
return m_k056832->piratesh_rom_r(space, offset);
}
-static ADDRESS_MAP_START( satellite_main, AS_PROGRAM, 16, giclassic_state )
+ADDRESS_MAP_START(giclassic_state::satellite_main)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x200000, 0x200fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -198,6 +199,7 @@ public:
DECLARE_READ16_MEMBER(control_r);
void giclassvr(machine_config &config);
+ void server_main(address_map &map);
private:
uint16 m_control;
};
@@ -262,7 +264,7 @@ uint32_t giclassicsvr_state::screen_update_giclassicsvr(screen_device &screen, b
return 0;
}
-static ADDRESS_MAP_START( server_main, AS_PROGRAM, 16, giclassicsvr_state )
+ADDRESS_MAP_START(giclassicsvr_state::server_main)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x080000, 0x08ffff) AM_RAM
AM_RANGE(0x090000, 0x093fff) AM_RAM
diff --git a/src/mame/drivers/gijoe.cpp b/src/mame/drivers/gijoe.cpp
index 27e6e6532e0..9e2c3a782b8 100644
--- a/src/mame/drivers/gijoe.cpp
+++ b/src/mame/drivers/gijoe.cpp
@@ -197,7 +197,7 @@ WRITE16_MEMBER(gijoe_state::sound_irq_w)
m_audiocpu->set_input_line(0, HOLD_LINE);
}
-static ADDRESS_MAP_START( gijoe_map, AS_PROGRAM, 16, gijoe_state )
+ADDRESS_MAP_START(gijoe_state::gijoe_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM AM_SHARE("spriteram") // Sprites
AM_RANGE(0x110000, 0x110007) AM_DEVWRITE("k053246", k053247_device, k053246_word_w)
@@ -226,7 +226,7 @@ static ADDRESS_MAP_START( gijoe_map, AS_PROGRAM, 16, gijoe_state )
#endif
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gijoe_state )
+ADDRESS_MAP_START(gijoe_state::sound_map)
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xfa2f) AM_DEVREADWRITE("k054539", k054539_device, read, write)
AM_RANGE(0xfc00, 0xfc03) AM_DEVICE("k054321", k054321_device, sound_map)
diff --git a/src/mame/drivers/gimix.cpp b/src/mame/drivers/gimix.cpp
index 1354d288874..afa5b93e7e7 100644
--- a/src/mame/drivers/gimix.cpp
+++ b/src/mame/drivers/gimix.cpp
@@ -116,6 +116,9 @@ public:
DECLARE_FLOPPY_FORMATS(floppy_formats);
void gimix(machine_config &config);
+ void gimix_banked_mem(address_map &map);
+ void gimix_io(address_map &map);
+ void gimix_mem(address_map &map);
private:
uint8_t m_term_data;
uint8_t m_dma_status;
@@ -172,7 +175,7 @@ private:
required_ioport m_dma_dip;
};
-static ADDRESS_MAP_START( gimix_banked_mem, AS_PROGRAM, 8, gimix_state)
+ADDRESS_MAP_START(gimix_state::gimix_banked_mem)
AM_RANGE(0x00000, 0x0dfff) AM_RAMBANK("lower_ram")
AM_RANGE(0x0e000, 0x0e001) AM_DEVREADWRITE("acia1", acia6850_device, read, write)
AM_RANGE(0x0e004, 0x0e005) AM_DEVREADWRITE("acia2", acia6850_device, read, write)
@@ -191,7 +194,7 @@ static ADDRESS_MAP_START( gimix_banked_mem, AS_PROGRAM, 8, gimix_state)
//AM_RANGE(0x10000, 0x1ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gimix_mem, AS_PROGRAM, 8, gimix_state )
+ADDRESS_MAP_START(gimix_state::gimix_mem)
AM_RANGE(0x0000, 0x0fff) AM_DEVREADWRITE("bank1", address_map_bank_device, read8, write8)
AM_RANGE(0x1000, 0x1fff) AM_DEVREADWRITE("bank2", address_map_bank_device, read8, write8)
AM_RANGE(0x2000, 0x2fff) AM_DEVREADWRITE("bank3", address_map_bank_device, read8, write8)
@@ -211,7 +214,7 @@ static ADDRESS_MAP_START( gimix_mem, AS_PROGRAM, 8, gimix_state )
AM_RANGE(0xff00, 0xffff) AM_ROMBANK("fixedrombank") AM_WRITE(system_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gimix_io, AS_IO, 8, gimix_state )
+ADDRESS_MAP_START(gimix_state::gimix_io)
ADDRESS_MAP_END
static INPUT_PORTS_START( gimix )
diff --git a/src/mame/drivers/ginganin.cpp b/src/mame/drivers/ginganin.cpp
index cd83d4cf805..465c7276d9e 100644
--- a/src/mame/drivers/ginganin.cpp
+++ b/src/mame/drivers/ginganin.cpp
@@ -76,7 +76,7 @@ f5d6 print 7 digit BCD number: d0.l to (a1)+ color $3000
*/
-static ADDRESS_MAP_START( ginganin_map, AS_PROGRAM, 16, ginganin_state )
+ADDRESS_MAP_START(ginganin_state::ginganin_map)
/* The ROM area: 10000-13fff is written with: 0000 0000 0000 0001, at startup only. Why? */
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x020000, 0x023fff) AM_RAM
@@ -96,7 +96,7 @@ ADDRESS_MAP_END
**
*/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ginganin_state )
+ADDRESS_MAP_START(ginganin_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0807) AM_DEVREADWRITE("6840ptm", ptm6840_device, read, write)
AM_RANGE(0x1800, 0x1800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/gizmondo.cpp b/src/mame/drivers/gizmondo.cpp
index b61751ea2ca..d0ac16f7e89 100644
--- a/src/mame/drivers/gizmondo.cpp
+++ b/src/mame/drivers/gizmondo.cpp
@@ -67,6 +67,7 @@ public:
bitmap_rgb32 m_bitmap;
void gizmondo(machine_config &config);
+ void gizmondo_map(address_map &map);
};
@@ -166,7 +167,7 @@ void gizmondo_state::machine_reset()
ADDRESS MAPS
*******************************************************************************/
-static ADDRESS_MAP_START( gizmondo_map, AS_PROGRAM, 32, gizmondo_state )
+ADDRESS_MAP_START(gizmondo_state::gizmondo_map)
AM_RANGE(0x00000000, 0x000007ff) AM_ROM
AM_RANGE(0x00000800, 0x00000fff) AM_DEVREADWRITE16("diskonchip", diskonchip_g3_device, sec_1_r, sec_1_w, 0xffffffff)
AM_RANGE(0x00001000, 0x000017ff) AM_DEVREADWRITE16("diskonchip", diskonchip_g3_device, sec_2_r, sec_2_w, 0xffffffff)
diff --git a/src/mame/drivers/gkigt.cpp b/src/mame/drivers/gkigt.cpp
index 0673cbb12d5..cce62f3143d 100644
--- a/src/mame/drivers/gkigt.cpp
+++ b/src/mame/drivers/gkigt.cpp
@@ -139,6 +139,9 @@ public:
void igt_gameking(machine_config &config);
void igt_ms72c(machine_config &config);
+ void igt_gameking_map(address_map &map);
+ void igt_ms72c_map(address_map &map);
+ void ramdac_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<palette_device> m_palette;
@@ -222,8 +225,7 @@ WRITE8_MEMBER(igt_gameking_state::unk_w)
}
-
-static ADDRESS_MAP_START( igt_gameking_map, AS_PROGRAM, 32, igt_gameking_state )
+ADDRESS_MAP_START(igt_gameking_state::igt_gameking_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x08000000, 0x081fffff) AM_ROM AM_REGION("game", 0)
AM_RANGE(0x08200000, 0x083fffff) AM_ROM AM_REGION("plx", 0)
@@ -286,7 +288,7 @@ READ8_MEMBER(igt_gameking_state::timer_r)
return m_timer_count++;
}
-static ADDRESS_MAP_START( igt_ms72c_map, AS_PROGRAM, 32, igt_gameking_state )
+ADDRESS_MAP_START(igt_gameking_state::igt_ms72c_map)
AM_IMPORT_FROM( igt_gameking_map )
AM_RANGE(0x18200000, 0x18200003) AM_READ16(version_r, 0x0000ffff)
AM_RANGE(0x28040038, 0x2804003b) AM_READ8(timer_r,0x00ff0000)
@@ -566,7 +568,7 @@ static GFXDECODE_START( igt_gameking )
GFXDECODE_ENTRY( "cg", 0, igt_gameking_layout, 0x0, 1 )
GFXDECODE_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, igt_gameking_state )
+ADDRESS_MAP_START(igt_gameking_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gladiatr.cpp b/src/mame/drivers/gladiatr.cpp
index 0627b2058f9..3fe6e73ab0e 100644
--- a/src/mame/drivers/gladiatr.cpp
+++ b/src/mame/drivers/gladiatr.cpp
@@ -619,7 +619,7 @@ MACHINE_RESET_MEMBER(ppking_state, ppking)
m_mcu[0].state = 0;
}
-static ADDRESS_MAP_START( ppking_cpu1_map, AS_PROGRAM, 8, ppking_state )
+ADDRESS_MAP_START(ppking_state::ppking_cpu1_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcbff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xcc00, 0xcfff) AM_WRITE(ppking_video_registers_w)
@@ -631,13 +631,13 @@ static ADDRESS_MAP_START( ppking_cpu1_map, AS_PROGRAM, 8, ppking_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppking_cpu3_map, AS_PROGRAM, 8, ppking_state )
+ADDRESS_MAP_START(ppking_state::ppking_cpu3_map)
AM_RANGE(0x1000, 0x1fff) AM_WRITE(ppking_adpcm_w)
AM_RANGE(0x2000, 0x2fff) AM_READ(adpcm_command_r)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppking_cpu1_io, AS_IO, 8, ppking_state )
+ADDRESS_MAP_START(ppking_state::ppking_cpu1_io)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc000, 0xc007) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
// AM_RANGE(0xc004, 0xc004) AM_NOP // WRITE(ppking_irq_patch_w)
@@ -646,7 +646,7 @@ static ADDRESS_MAP_START( ppking_cpu1_io, AS_IO, 8, ppking_state )
AM_RANGE(0xc0c0, 0xc0c1) AM_READ(ppking_qxcomu_r) AM_WRITE(ppking_qxcomu_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppking_cpu2_io, AS_IO, 8, ppking_state )
+ADDRESS_MAP_START(ppking_state::ppking_cpu2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x20, 0x21) AM_READ(ppking_qx1_r) AM_WRITE(ppking_qx1_w)
@@ -658,7 +658,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( gladiatr_cpu1_map, AS_PROGRAM, 8, gladiatr_state )
+ADDRESS_MAP_START(gladiatr_state::gladiatr_cpu1_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcbff) AM_RAM AM_SHARE("spriteram")
@@ -670,26 +670,26 @@ static ADDRESS_MAP_START( gladiatr_cpu1_map, AS_PROGRAM, 8, gladiatr_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, gladiatr_state )
+ADDRESS_MAP_START(gladiatr_state_base::cpu2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gladiatr_cpu3_map, AS_PROGRAM, 8, gladiatr_state )
+ADDRESS_MAP_START(gladiatr_state::gladiatr_cpu3_map)
AM_RANGE(0x1000, 0x1fff) AM_WRITE(gladiator_adpcm_w)
AM_RANGE(0x2000, 0x2fff) AM_READ(adpcm_command_r)
AM_RANGE(0x4000, 0xffff) AM_ROMBANK("bank2") AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gladiatr_cpu1_io, AS_IO, 8, gladiatr_state )
+ADDRESS_MAP_START(gladiatr_state::gladiatr_cpu1_io)
AM_RANGE(0xc000, 0xc007) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
AM_RANGE(0xc004, 0xc004) AM_WRITE(gladiatr_irq_patch_w) /* !!! patch to 2nd CPU IRQ !!! */
AM_RANGE(0xc09e, 0xc09f) AM_DEVREADWRITE("ucpu", upi41_cpu_device, upi41_master_r, upi41_master_w)
AM_RANGE(0xc0bf, 0xc0bf) AM_NOP // watchdog_reset_w doesn't work
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gladiatr_cpu2_io, AS_IO, 8, gladiatr_state )
+ADDRESS_MAP_START(gladiatr_state::gladiatr_cpu2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x20, 0x21) AM_DEVREADWRITE("csnd", upi41_cpu_device, upi41_master_r, upi41_master_w)
diff --git a/src/mame/drivers/glasgow.cpp b/src/mame/drivers/glasgow.cpp
index 91c06194d7e..b3a4a16a6b1 100644
--- a/src/mame/drivers/glasgow.cpp
+++ b/src/mame/drivers/glasgow.cpp
@@ -91,6 +91,9 @@ public:
void glasgow(machine_config &config);
void dallas32(machine_config &config);
void amsterd(machine_config &config);
+ void amsterd_mem(address_map &map);
+ void dallas32_mem(address_map &map);
+ void glasgow_mem(address_map &map);
private:
uint8_t m_lcd_shift_counter;
uint8_t m_led7;
@@ -544,7 +547,7 @@ MACHINE_RESET_MEMBER( glasgow_state, glasgow )
}
-static ADDRESS_MAP_START(glasgow_mem, AS_PROGRAM, 16, glasgow_state)
+ADDRESS_MAP_START(glasgow_state::glasgow_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1FFFF)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x010000, 0x010001) AM_WRITE( glasgow_lcd_w )
@@ -555,7 +558,7 @@ static ADDRESS_MAP_START(glasgow_mem, AS_PROGRAM, 16, glasgow_state)
AM_RANGE(0x01c000, 0x01ffff) AM_RAM // 16KB
ADDRESS_MAP_END
-static ADDRESS_MAP_START(amsterd_mem, AS_PROGRAM, 16, glasgow_state)
+ADDRESS_MAP_START(glasgow_state::amsterd_mem)
// ADDRESS_MAP_GLOBAL_MASK(0x7FFFF)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x800002, 0x800003) AM_WRITE( write_lcd )
@@ -568,7 +571,7 @@ static ADDRESS_MAP_START(amsterd_mem, AS_PROGRAM, 16, glasgow_state)
AM_RANGE(0xffc000, 0xffffff) AM_RAM // 16KB
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dallas32_mem, AS_PROGRAM, 32, glasgow_state)
+ADDRESS_MAP_START(glasgow_state::dallas32_mem)
// ADDRESS_MAP_GLOBAL_MASK(0x1FFFF)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x010000, 0x01ffff) AM_RAM // 64KB
diff --git a/src/mame/drivers/glass.cpp b/src/mame/drivers/glass.cpp
index a9a7e49ad89..9571ef39bca 100644
--- a/src/mame/drivers/glass.cpp
+++ b/src/mame/drivers/glass.cpp
@@ -104,12 +104,12 @@ WRITE_LINE_MEMBER(glass_state::coin2_counter_w)
}
-static ADDRESS_MAP_START( mcu_hostmem_map, 0, 8, glass_state )
+ADDRESS_MAP_START(glass_state::mcu_hostmem_map)
AM_RANGE(0x0000, 0xffff) AM_MASK(0x3fff) AM_READWRITE(shareram_r, shareram_w) // shared RAM with the main CPU
ADDRESS_MAP_END
-static ADDRESS_MAP_START( glass_map, AS_PROGRAM, 16, glass_state )
+ADDRESS_MAP_START(glass_state::glass_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(vram_w) AM_SHARE("videoram") // Video RAM
AM_RANGE(0x102000, 0x102fff) AM_RAM // Extra Video RAM
@@ -129,7 +129,7 @@ static ADDRESS_MAP_START( glass_map, AS_PROGRAM, 16, glass_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, glass_state )
+ADDRESS_MAP_START(glass_state::oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/globalfr.cpp b/src/mame/drivers/globalfr.cpp
index e5a544f962c..60ce27ff1cd 100644
--- a/src/mame/drivers/globalfr.cpp
+++ b/src/mame/drivers/globalfr.cpp
@@ -38,6 +38,7 @@ public:
DECLARE_WRITE16_MEMBER(vfd_w);
void globalfr(machine_config &config);
+ void globalfr_map(address_map &map);
};
/******************************************************************************/
@@ -51,7 +52,7 @@ WRITE16_MEMBER(globalfr_state::vfd_w)
}
}
-static ADDRESS_MAP_START( globalfr_map, AS_PROGRAM, 16, globalfr_state )
+ADDRESS_MAP_START(globalfr_state::globalfr_map)
AM_RANGE(0x002000, 0x002fff) AM_RAM
AM_RANGE(0x008000, 0x07ffff) AM_ROM AM_REGION("maincpu", 0x8000)
AM_RANGE(0x0a0000, 0x0a01ff) AM_RAM
diff --git a/src/mame/drivers/globalvr.cpp b/src/mame/drivers/globalvr.cpp
index e7a3d29021b..0e14019948d 100644
--- a/src/mame/drivers/globalvr.cpp
+++ b/src/mame/drivers/globalvr.cpp
@@ -68,6 +68,7 @@ public:
{ }
void globalvr(machine_config &config);
+ void globalvr_map(address_map &map);
protected:
// devices
@@ -76,7 +77,7 @@ protected:
-static ADDRESS_MAP_START( globalvr_map, AS_PROGRAM, 32, globalvr_state )
+ADDRESS_MAP_START(globalvr_state::globalvr_map)
AM_RANGE(0x00000000, 0xffffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gluck2.cpp b/src/mame/drivers/gluck2.cpp
index 4e925bb6e95..38a9b806aed 100644
--- a/src/mame/drivers/gluck2.cpp
+++ b/src/mame/drivers/gluck2.cpp
@@ -230,6 +230,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void gluck2(machine_config &config);
+ void gluck2_map(address_map &map);
};
@@ -307,7 +308,7 @@ WRITE8_MEMBER(gluck2_state::counters_w)
* Memory map information *
*********************************************/
-static ADDRESS_MAP_START( gluck2_map, AS_PROGRAM, 8, gluck2_state )
+ADDRESS_MAP_START(gluck2_state::gluck2_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
diff --git a/src/mame/drivers/gmaster.cpp b/src/mame/drivers/gmaster.cpp
index f3cae0ed2b9..4e4e2ff6897 100644
--- a/src/mame/drivers/gmaster.cpp
+++ b/src/mame/drivers/gmaster.cpp
@@ -44,6 +44,7 @@ public:
uint32_t screen_update_gmaster(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void gmaster(machine_config &config);
+ void gmaster_mem(address_map &map);
private:
virtual void machine_start() override;
@@ -236,7 +237,7 @@ WRITE8_MEMBER(gmaster_state::gmaster_portf_w)
}
-static ADDRESS_MAP_START( gmaster_mem, AS_PROGRAM, 8, gmaster_state )
+ADDRESS_MAP_START(gmaster_state::gmaster_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_READWRITE(gmaster_io_r, gmaster_io_w)
//AM_RANGE(0x8000, 0xfeff) // mapped by the cartslot
diff --git a/src/mame/drivers/gng.cpp b/src/mame/drivers/gng.cpp
index b8893152981..9b8d156b83c 100644
--- a/src/mame/drivers/gng.cpp
+++ b/src/mame/drivers/gng.cpp
@@ -65,7 +65,7 @@ READ8_MEMBER(gng_state::diamond_hack_r)
return 0;
}
-static ADDRESS_MAP_START( gng_map, AS_PROGRAM, 8, gng_state )
+ADDRESS_MAP_START(gng_state::gng_map)
AM_RANGE(0x0000, 0x1dff) AM_RAM
AM_RANGE(0x1e00, 0x1fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(gng_fgvideoram_w) AM_SHARE("fgvideoram")
@@ -87,7 +87,7 @@ static ADDRESS_MAP_START( gng_map, AS_PROGRAM, 8, gng_state )
AM_RANGE(0x6000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( diamond_map, AS_PROGRAM, 8, gng_state )
+ADDRESS_MAP_START(gng_state::diamond_map)
AM_RANGE(0x0000, 0x1dff) AM_RAM
AM_RANGE(0x1e00, 0x1fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(gng_fgvideoram_w) AM_SHARE("fgvideoram")
@@ -115,7 +115,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gng_state )
+ADDRESS_MAP_START(gng_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/go2000.cpp b/src/mame/drivers/go2000.cpp
index cf5cb9029b9..f26ac2a6adb 100644
--- a/src/mame/drivers/go2000.cpp
+++ b/src/mame/drivers/go2000.cpp
@@ -73,6 +73,9 @@ public:
virtual void video_start() override;
uint32_t screen_update_go2000(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void go2000(machine_config &config);
+ void go2000_map(address_map &map);
+ void go2000_sound_io(address_map &map);
+ void go2000_sound_map(address_map &map);
};
@@ -82,7 +85,7 @@ WRITE16_MEMBER(go2000_state::sound_cmd_w)
m_soundcpu->set_input_line(0, HOLD_LINE);
}
-static ADDRESS_MAP_START( go2000_map, AS_PROGRAM, 16, go2000_state )
+ADDRESS_MAP_START(go2000_state::go2000_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM
AM_RANGE(0x600000, 0x60ffff) AM_RAM AM_SHARE("videoram")
@@ -101,12 +104,12 @@ WRITE8_MEMBER(go2000_state::go2000_pcm_1_bankswitch_w)
membank("bank1")->set_entry(data & 0x07);
}
-static ADDRESS_MAP_START( go2000_sound_map, AS_PROGRAM, 8, go2000_state )
+ADDRESS_MAP_START(go2000_state::go2000_sound_map)
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0400, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( go2000_sound_io, AS_IO, 8, go2000_state )
+ADDRESS_MAP_START(go2000_state::go2000_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_byte_interface, write)
diff --git a/src/mame/drivers/goal92.cpp b/src/mame/drivers/goal92.cpp
index db6f3f6fe79..31066f425ef 100644
--- a/src/mame/drivers/goal92.cpp
+++ b/src/mame/drivers/goal92.cpp
@@ -51,7 +51,7 @@ READ16_MEMBER(goal92_state::goal92_inputs_r)
return 0;
}
-static ADDRESS_MAP_START( goal92_map, AS_PROGRAM, 16, goal92_state )
+ADDRESS_MAP_START(goal92_state::goal92_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1007ff) AM_RAM
AM_RANGE(0x100800, 0x100fff) AM_RAM_WRITE(goal92_background_w) AM_SHARE("bg_data")
@@ -84,7 +84,7 @@ WRITE8_MEMBER(goal92_state::adpcm_data_w)
m_msm5205next = data;
}
-static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, goal92_state )
+ADDRESS_MAP_START(goal92_state::sound_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xe000) AM_WRITE(adpcm_control_w)
diff --git a/src/mame/drivers/goindol.cpp b/src/mame/drivers/goindol.cpp
index e2edc8918b4..c6f710ddc21 100644
--- a/src/mame/drivers/goindol.cpp
+++ b/src/mame/drivers/goindol.cpp
@@ -81,7 +81,7 @@ WRITE8_MEMBER(goindol_state::prot_fcb0_w)
-static ADDRESS_MAP_START( goindol_map, AS_PROGRAM, 8, goindol_state )
+ADDRESS_MAP_START(goindol_state::goindol_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("ram")
@@ -107,7 +107,7 @@ static ADDRESS_MAP_START( goindol_map, AS_PROGRAM, 8, goindol_state )
AM_RANGE(0xfd99, 0xfd99) AM_WRITE(prot_fd99_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, goindol_state )
+ADDRESS_MAP_START(goindol_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ymsnd", ym2203_device, write)
AM_RANGE(0xc000, 0xc7ff) AM_RAM
diff --git a/src/mame/drivers/gokidetor.cpp b/src/mame/drivers/gokidetor.cpp
index d615d9ab42d..f00ffb8482c 100644
--- a/src/mame/drivers/gokidetor.cpp
+++ b/src/mame/drivers/gokidetor.cpp
@@ -34,6 +34,8 @@ public:
DECLARE_WRITE8_MEMBER(ym_porta_w);
void gokidetor(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -84,7 +86,7 @@ WRITE8_MEMBER(gokidetor_state::ym_porta_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, gokidetor_state )
+ADDRESS_MAP_START(gokidetor_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROM // probably banked
AM_RANGE(0xa000, 0xbfff) AM_RAM
@@ -106,7 +108,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, gokidetor_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gokidetor_state )
+ADDRESS_MAP_START(gokidetor_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
diff --git a/src/mame/drivers/goldngam.cpp b/src/mame/drivers/goldngam.cpp
index 6ae3466fe57..1abe473d1e4 100644
--- a/src/mame/drivers/goldngam.cpp
+++ b/src/mame/drivers/goldngam.cpp
@@ -257,6 +257,8 @@ public:
required_device<cpu_device> m_maincpu;
void swisspkr(machine_config &config);
void moviecrd(machine_config &config);
+ void moviecrd_map(address_map &map);
+ void swisspkr_map(address_map &map);
};
@@ -305,7 +307,7 @@ READ16_MEMBER(goldngam_state::unk_r)
return test1;
}
-static ADDRESS_MAP_START( swisspkr_map, AS_PROGRAM, 16, goldngam_state )
+ADDRESS_MAP_START(goldngam_state::swisspkr_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x400002, 0x400003) AM_NOP // hopper status read ?
@@ -355,7 +357,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( moviecrd_map, AS_PROGRAM, 16, goldngam_state )
+ADDRESS_MAP_START(goldngam_state::moviecrd_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0xc00000, 0xc3ffff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/goldnpkr.cpp b/src/mame/drivers/goldnpkr.cpp
index 091ea19c73f..c7d01c48928 100644
--- a/src/mame/drivers/goldnpkr.cpp
+++ b/src/mame/drivers/goldnpkr.cpp
@@ -1365,6 +1365,18 @@ public:
void pottnpkr(machine_config &config);
void goldnpkr(machine_config &config);
void wcrdxtnd(machine_config &config);
+ void bchancep_map(address_map &map);
+ void genie_map(address_map &map);
+ void goldnpkr_map(address_map &map);
+ void mondial_map(address_map &map);
+ void pottnpkr_map(address_map &map);
+ void wcrdxtnd_map(address_map &map);
+ void wildcard_map(address_map &map);
+ void wildcrdb_map(address_map &map);
+ void wildcrdb_mcu_io_map(address_map &map);
+ void wildcrdb_mcu_map(address_map &map);
+ void witchcrd_falcon_map(address_map &map);
+ void witchcrd_map(address_map &map);
protected:
required_shared_ptr<uint8_t> m_videoram;
required_shared_ptr<uint8_t> m_colorram;
@@ -1404,6 +1416,8 @@ public:
DECLARE_WRITE8_MEMBER(mcu_portb_w);
DECLARE_WRITE8_MEMBER(mcu_portc_w);
void megadpkr(machine_config &config);
+ void megadpkr_banked_map(address_map &map);
+ void megadpkr_map(address_map &map);
};
@@ -1818,7 +1832,7 @@ READ8_MEMBER(goldnpkr_state::pia1_b_r)
* Memory Map Information *
*********************************************/
-static ADDRESS_MAP_START( goldnpkr_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::goldnpkr_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -1830,7 +1844,7 @@ static ADDRESS_MAP_START( goldnpkr_map, AS_PROGRAM, 8, goldnpkr_state )
AM_RANGE(0x2000, 0x7fff) AM_ROM /* superdbl uses 0x2000..0x3fff address space */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pottnpkr_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::pottnpkr_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -1842,7 +1856,7 @@ static ADDRESS_MAP_START( pottnpkr_map, AS_PROGRAM, 8, goldnpkr_state )
AM_RANGE(0x2000, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( witchcrd_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::witchcrd_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -1869,7 +1883,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( witchcrd_falcon_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::witchcrd_falcon_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0844, 0x0847) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
@@ -1882,7 +1896,7 @@ static ADDRESS_MAP_START( witchcrd_falcon_map, AS_PROGRAM, 8, goldnpkr_state )
AM_RANGE(0x4000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wildcard_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::wildcard_map)
// ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -1904,7 +1918,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( wcrdxtnd_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::wcrdxtnd_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM //AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
@@ -1924,7 +1938,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( wildcrdb_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::wildcrdb_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0844, 0x0847) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
@@ -1938,13 +1952,13 @@ static ADDRESS_MAP_START( wildcrdb_map, AS_PROGRAM, 8, goldnpkr_state )
AM_RANGE(0x3000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wildcrdb_mcu_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::wildcrdb_mcu_map)
// ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x2fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wildcrdb_mcu_io_map, AS_IO, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::wildcrdb_mcu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
@@ -1957,7 +1971,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( genie_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::genie_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -1970,7 +1984,7 @@ static ADDRESS_MAP_START( genie_map, AS_PROGRAM, 8, goldnpkr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mondial_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::mondial_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -1982,7 +1996,7 @@ static ADDRESS_MAP_START( mondial_map, AS_PROGRAM, 8, goldnpkr_state )
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bchancep_map, AS_PROGRAM, 8, goldnpkr_state )
+ADDRESS_MAP_START(goldnpkr_state::bchancep_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -4578,7 +4592,7 @@ WRITE8_MEMBER(blitz_state::mcu_portc_w)
}
-static ADDRESS_MAP_START( megadpkr_map, AS_PROGRAM, 8, blitz_state )
+ADDRESS_MAP_START(blitz_state::megadpkr_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM //AM_SHARE("nvram") /* battery backed RAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
@@ -4599,7 +4613,7 @@ static ADDRESS_MAP_START( megadpkr_map, AS_PROGRAM, 8, blitz_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megadpkr_banked_map, AS_PROGRAM, 8, blitz_state )
+ADDRESS_MAP_START(blitz_state::megadpkr_banked_map)
AM_RANGE(0x00000, 0x07fff) AM_READ(cpubank_decrypt_r)
AM_RANGE(0x08000, 0x087ff) AM_DEVREADWRITE("timekpr", m48t02_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/goldstar.cpp b/src/mame/drivers/goldstar.cpp
index a00121a2c5b..8fd767811e7 100644
--- a/src/mame/drivers/goldstar.cpp
+++ b/src/mame/drivers/goldstar.cpp
@@ -330,7 +330,7 @@ WRITE8_MEMBER(goldstar_state::p2_lamps_w)
}
-static ADDRESS_MAP_START( goldstar_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::goldstar_map)
AM_RANGE(0x0000, 0xb7ff) AM_ROM
AM_RANGE(0xb800, 0xbfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc000, 0xc7ff) AM_ROM
@@ -362,13 +362,13 @@ static ADDRESS_MAP_START( goldstar_map, AS_PROGRAM, 8, goldstar_state )
AM_RANGE(0xfe00, 0xfe00) AM_READWRITE(protection_r,protection_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( goldstar_readport, AS_IO, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::goldstar_readport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_READ_PORT("DSW6")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( star100_map, AS_PROGRAM, 8, sanghopm_state )
+ADDRESS_MAP_START(sanghopm_state::star100_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(fg_vidram_w) AM_SHARE("fg_vidram") // videoram 1
@@ -423,7 +423,7 @@ WRITE8_MEMBER(sanghopm_state::enable_w)
m_enable_reg = data;
}
-static ADDRESS_MAP_START( star100_readport, AS_IO, 8, sanghopm_state )
+ADDRESS_MAP_START(sanghopm_state::star100_readport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x08) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
@@ -482,7 +482,7 @@ ADDRESS_MAP_END
E1: W Reels enable/disable register
*/
-static ADDRESS_MAP_START( ramdac_map, 0, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
@@ -601,7 +601,7 @@ WRITE8_MEMBER(goldstar_state::ncb3_port81_w)
}
-static ADDRESS_MAP_START( ncb3_map, AS_PROGRAM, 8, cb3_state )
+ADDRESS_MAP_START(cb3_state::ncb3_map)
AM_RANGE(0x0000, 0xb7ff) AM_ROM
AM_RANGE(0xb800, 0xbfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc000, 0xc7ff) AM_ROM
@@ -626,7 +626,7 @@ static ADDRESS_MAP_START( ncb3_map, AS_PROGRAM, 8, cb3_state )
AM_RANGE(0xf870, 0xf870) AM_DEVWRITE("snsnd", sn76489_device, write) /* guess... device is initialized, but doesn't seems to be used.*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ncb3_readwriteport, AS_IO, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::ncb3_readwriteport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x00) AM_READ(ncb3_unkread_r) // read from 0x00 when controls set 1 is used...
// AM_RANGE(0x02, 0x02) AM_READ(ncb3_unkread_r) // read from 0x02 when controls set 2 is used...
@@ -669,7 +669,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( wcherry_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::wcherry_map)
AM_RANGE(0x0000, 0xb7ff) AM_ROM
AM_RANGE(0xb800, 0xbfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc000, 0xc7ff) AM_ROM
@@ -698,7 +698,7 @@ static ADDRESS_MAP_START( wcherry_map, AS_PROGRAM, 8, goldstar_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wcherry_readwriteport, AS_IO, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::wcherry_readwriteport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
@@ -723,7 +723,7 @@ static ADDRESS_MAP_START( wcherry_readwriteport, AS_IO, 8, goldstar_state )
*/
-static ADDRESS_MAP_START( cm_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::cm_map)
AM_RANGE(0x0000, 0xcfff) AM_ROM AM_WRITENOP
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("nvram")
@@ -746,7 +746,7 @@ static ADDRESS_MAP_START( cm_map, AS_PROGRAM, 8, goldstar_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nfm_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::nfm_map)
AM_RANGE(0x0000, 0xd7ff) AM_ROM AM_WRITENOP
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("nvram")
@@ -793,7 +793,7 @@ WRITE8_MEMBER(goldstar_state::cm_coincount_w)
popmessage("counters: %02X", data);
}
-static ADDRESS_MAP_START( cm_portmap, AS_IO, 8, cmaster_state )
+ADDRESS_MAP_START(cmaster_state::cm_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -807,7 +807,7 @@ static ADDRESS_MAP_START( cm_portmap, AS_IO, 8, cmaster_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pkrmast_portmap, AS_IO, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::pkrmast_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x04) AM_DEVREAD("aysnd", ay8910_device, data_r)
@@ -830,7 +830,7 @@ static ADDRESS_MAP_START( pkrmast_portmap, AS_IO, 8, goldstar_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cmast91_portmap, AS_IO, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::cmast91_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write) /* Input Ports */
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) /* DIP switches */
@@ -839,7 +839,7 @@ static ADDRESS_MAP_START( cmast91_portmap, AS_IO, 8, goldstar_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amcoe1_portmap, AS_IO, 8, cmaster_state )
+ADDRESS_MAP_START(cmaster_state::amcoe1_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -852,7 +852,7 @@ static ADDRESS_MAP_START( amcoe1_portmap, AS_IO, 8, cmaster_state )
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("oki", okim6295_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amcoe2_portmap, AS_IO, 8, cmaster_state )
+ADDRESS_MAP_START(cmaster_state::amcoe2_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -865,7 +865,7 @@ static ADDRESS_MAP_START( amcoe2_portmap, AS_IO, 8, cmaster_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lucky8_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::lucky8_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_SHARE("fg_vidram")
@@ -889,7 +889,7 @@ static ADDRESS_MAP_START( lucky8_map, AS_PROGRAM, 8, goldstar_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flaming7_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::flaming7_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_SHARE("fg_vidram")
@@ -948,7 +948,7 @@ ADDRESS_MAP_END
AY8910 ports are OK.
*/
-static ADDRESS_MAP_START( mbstar_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::mbstar_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_SHARE("fg_vidram")
@@ -999,7 +999,7 @@ WRITE8_MEMBER(wingco_state::fl7w4_outc802_w)
m_fl7w4_id->write((data >> 6) & 0x01);
}
-static ADDRESS_MAP_START( magodds_map, AS_PROGRAM, 8, wingco_state )
+ADDRESS_MAP_START(wingco_state::magodds_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
// where does the extra rom data map?? it seems like it should come straight after the existing rom, but it can't if this is a plain z80?
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
@@ -1023,7 +1023,7 @@ static ADDRESS_MAP_START( magodds_map, AS_PROGRAM, 8, wingco_state )
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("maincpu",0xc000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kkotnoli_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::kkotnoli_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* definitely no NVRAM */
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_SHARE("fg_vidram")
@@ -1062,7 +1062,7 @@ ADDRESS_MAP_END
// popmessage("Output: %02X", data);
//}
-static ADDRESS_MAP_START( ladylinr_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::ladylinr_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_SHARE("fg_vidram")
@@ -1083,7 +1083,7 @@ static ADDRESS_MAP_START( ladylinr_map, AS_PROGRAM, 8, goldstar_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wcat3_map, AS_PROGRAM, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::wcat3_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_SHARE("fg_vidram")
@@ -1109,7 +1109,7 @@ ADDRESS_MAP_END
/* newer / more capable hw */
-static ADDRESS_MAP_START( unkch_map, AS_PROGRAM, 8, unkch_state )
+ADDRESS_MAP_START(unkch_state::unkch_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc1ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0xc800, 0xc9ff) AM_RAM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
@@ -1195,7 +1195,7 @@ WRITE8_MEMBER(unkch_state::unkcm_0x03_w)
}
-static ADDRESS_MAP_START( unkch_portmap, AS_IO, 8, unkch_state )
+ADDRESS_MAP_START(unkch_state::unkch_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_WRITE(coincount_w)
@@ -1213,7 +1213,7 @@ static ADDRESS_MAP_START( unkch_portmap, AS_IO, 8, unkch_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megaline_map, AS_PROGRAM, 8, unkch_state )
+ADDRESS_MAP_START(unkch_state::megaline_map)
/* Reels stuff are there just as placeholder, and obviously in wrong offset */
AM_RANGE(0x0000, 0x9fff) AM_ROM
@@ -1243,7 +1243,7 @@ ADDRESS_MAP_END
AY8910?: 60 - 80
*/
-static ADDRESS_MAP_START( megaline_portmap, AS_IO, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::megaline_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xa0, 0xa0) AM_DEVWRITE("sn1", sn76489_device, write) /* SN76489 #1 */
AM_RANGE(0xc0, 0xc0) AM_DEVWRITE("sn2", sn76489_device, write) /* SN76489 #2 */
@@ -1255,7 +1255,7 @@ static ADDRESS_MAP_START( megaline_portmap, AS_IO, 8, goldstar_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bonusch_map, AS_PROGRAM, 8, unkch_state )
+ADDRESS_MAP_START(unkch_state::bonusch_map)
/* Reels stuff and RAM are there just as placeholder, and obviously in wrong offset */
AM_RANGE(0x0000, 0xbfff) AM_ROM // ok
@@ -1296,7 +1296,7 @@ ADDRESS_MAP_END
60h = R
*/
-static ADDRESS_MAP_START( bonusch_portmap, AS_IO, 8, goldstar_state )
+ADDRESS_MAP_START(goldstar_state::bonusch_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_READ_PORT("IN0")
AM_RANGE(0x20, 0x20) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/gomoku.cpp b/src/mame/drivers/gomoku.cpp
index da103e155e6..c66f59423bd 100644
--- a/src/mame/drivers/gomoku.cpp
+++ b/src/mame/drivers/gomoku.cpp
@@ -45,7 +45,7 @@ READ8_MEMBER(gomoku_state::input_port_r)
}
-static ADDRESS_MAP_START( gomoku_map, AS_PROGRAM, 8, gomoku_state )
+ADDRESS_MAP_START(gomoku_state::gomoku_map)
AM_RANGE(0x0000, 0x47ff) AM_ROM
AM_RANGE(0x4800, 0x4fff) AM_RAM
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(gomoku_videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/good.cpp b/src/mame/drivers/good.cpp
index 3a3e2c04fa9..e3f4ae10d5b 100644
--- a/src/mame/drivers/good.cpp
+++ b/src/mame/drivers/good.cpp
@@ -68,6 +68,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void good(machine_config &config);
+ void good_map(address_map &map);
};
@@ -113,7 +114,7 @@ uint32_t good_state::screen_update_good(screen_device &screen, bitmap_ind16 &bit
return 0;
}
-static ADDRESS_MAP_START( good_map, AS_PROGRAM, 16, good_state )
+ADDRESS_MAP_START(good_state::good_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
//AM_RANGE(0x270000, 0x270007) AM_RAM // scroll?
diff --git a/src/mame/drivers/goodejan.cpp b/src/mame/drivers/goodejan.cpp
index 5adec671d57..ec5c28d5be6 100644
--- a/src/mame/drivers/goodejan.cpp
+++ b/src/mame/drivers/goodejan.cpp
@@ -81,7 +81,7 @@ Secret menu hack [totmejan only] (I couldn't find official way to enter, so it's
#include "speaker.h"
-class goodejan_state : public driver_device
+class goodejan_state : public driver_device, protected seibu_sound_common
{
public:
goodejan_state(const machine_config &mconfig, device_type type, const char *tag)
@@ -89,6 +89,7 @@ public:
m_maincpu(*this, "maincpu"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
+ m_crtc(*this, "crtc"),
m_sc0_vram(*this, "sc0_vram"),
m_sc1_vram(*this, "sc1_vram"),
m_sc2_vram(*this, "sc2_vram"),
@@ -98,6 +99,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
+ required_device<seibu_crtc_device> m_crtc;
required_shared_ptr<uint16_t> m_sc0_vram;
required_shared_ptr<uint16_t> m_sc1_vram;
@@ -138,6 +140,10 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void totmejan(machine_config &config);
void goodejan(machine_config &config);
+ void common_io_map(address_map &map);
+ void goodejan_io_map(address_map &map);
+ void goodejan_map(address_map &map);
+ void totmejan_io_map(address_map &map);
};
/*******************************
@@ -431,7 +437,7 @@ WRITE16_MEMBER(goodejan_state::mahjong_panel_w)
m_mux_data = data;
}
-static ADDRESS_MAP_START( goodejan_map, AS_PROGRAM, 16, goodejan_state )
+ADDRESS_MAP_START(goodejan_state::goodejan_map)
AM_RANGE(0x00000, 0x0afff) AM_RAM
AM_RANGE(0x0c000, 0x0c7ff) AM_RAM_WRITE(seibucrtc_sc0vram_w) AM_SHARE("sc0_vram")
AM_RANGE(0x0c800, 0x0cfff) AM_RAM_WRITE(seibucrtc_sc3vram_w) AM_SHARE("sc3_vram")
@@ -444,7 +450,7 @@ static ADDRESS_MAP_START( goodejan_map, AS_PROGRAM, 16, goodejan_state )
ADDRESS_MAP_END
/* totmejan CRTC is at 8000-804f,goodejan is at 8000-807f */
-static ADDRESS_MAP_START( common_io_map, AS_IO, 16, goodejan_state )
+ADDRESS_MAP_START(goodejan_state::common_io_map)
AM_RANGE(0x9000, 0x9001) AM_WRITE(gfxbank_w)
AM_RANGE(0xb000, 0xb003) AM_WRITENOP
AM_RANGE(0xb004, 0xb005) AM_WRITE(mahjong_panel_w)
@@ -455,14 +461,14 @@ static ADDRESS_MAP_START( common_io_map, AS_IO, 16, goodejan_state )
AM_RANGE(0xd000, 0xd00f) AM_DEVREADWRITE8("seibu_sound", seibu_sound_device, main_r, main_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( totmejan_io_map, AS_IO, 16, goodejan_state )
+ADDRESS_MAP_START(goodejan_state::totmejan_io_map)
AM_IMPORT_FROM(common_io_map)
AM_RANGE(0x8000, 0x804f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( goodejan_io_map, AS_IO, 16, goodejan_state )
+ADDRESS_MAP_START(goodejan_state::goodejan_io_map)
AM_IMPORT_FROM(common_io_map)
- AM_RANGE(0x8000, 0x807f) AM_DEVREADWRITE_MOD("crtc", seibu_crtc_device, read, write, xor<0x20>)
+ ;map(0x8000, 0x807f).lrw16("crtc_rw", [this](address_space &space, offs_t offset, u16 mem_mask){ return m_crtc->read(space, offset ^ 0x20, mem_mask); }, [this](address_space &space, offs_t offset, u16 data, u16 mem_mask){ m_crtc->write(space, offset ^ 0x20, data, mem_mask); });
ADDRESS_MAP_END
static INPUT_PORTS_START( goodejan )
diff --git a/src/mame/drivers/gotcha.cpp b/src/mame/drivers/gotcha.cpp
index 27b346e0e5e..59bea55cd60 100644
--- a/src/mame/drivers/gotcha.cpp
+++ b/src/mame/drivers/gotcha.cpp
@@ -101,7 +101,7 @@ WRITE16_MEMBER(gotcha_state::gotcha_oki_bank_w)
}
-static ADDRESS_MAP_START( gotcha_map, AS_PROGRAM, 16, gotcha_state )
+ADDRESS_MAP_START(gotcha_state::gotcha_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
AM_RANGE(0x100002, 0x100003) AM_WRITE(gotcha_lamps_w)
@@ -121,7 +121,7 @@ static ADDRESS_MAP_START( gotcha_map, AS_PROGRAM, 16, gotcha_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gotcha_state )
+ADDRESS_MAP_START(gotcha_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0xc002, 0xc002) AM_DEVREADWRITE("oki", okim6295_device, read, write) AM_MIRROR(1)
diff --git a/src/mame/drivers/gottlieb.cpp b/src/mame/drivers/gottlieb.cpp
index e0d4d3b2193..5ca6c75369f 100644
--- a/src/mame/drivers/gottlieb.cpp
+++ b/src/mame/drivers/gottlieb.cpp
@@ -749,7 +749,7 @@ WRITE8_MEMBER(gottlieb_state::gottlieb_sh_w)
m_r2_sound->write(space, offset, data);
}
-static ADDRESS_MAP_START( reactor_map, AS_PROGRAM, 8, gottlieb_state )
+ADDRESS_MAP_START(gottlieb_state::reactor_map)
ADDRESS_MAP_GLOBAL_MASK(0xffff)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x20ff) AM_MIRROR(0x0f00) AM_WRITEONLY AM_SHARE("spriteram") /* FRSEL */
@@ -770,7 +770,7 @@ static ADDRESS_MAP_START( reactor_map, AS_PROGRAM, 8, gottlieb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gottlieb_map, AS_PROGRAM, 8, gottlieb_state )
+ADDRESS_MAP_START(gottlieb_state::gottlieb_map)
ADDRESS_MAP_GLOBAL_MASK(0xffff)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_REGION("maincpu", 0x1000) /* or ROM */
diff --git a/src/mame/drivers/gotya.cpp b/src/mame/drivers/gotya.cpp
index 398d8c1e549..fe3985e7ece 100644
--- a/src/mame/drivers/gotya.cpp
+++ b/src/mame/drivers/gotya.cpp
@@ -45,7 +45,7 @@ TODO: Emulated sound
#include "speaker.h"
-static ADDRESS_MAP_START( gotya_map, AS_PROGRAM, 8, gotya_state )
+ADDRESS_MAP_START(gotya_state::gotya_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x5000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_READ_PORT("P1")
diff --git a/src/mame/drivers/goupil.cpp b/src/mame/drivers/goupil.cpp
index 8a4ad03e6a5..627953e762f 100644
--- a/src/mame/drivers/goupil.cpp
+++ b/src/mame/drivers/goupil.cpp
@@ -87,6 +87,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(goupil_scanline);
void goupil_g1(machine_config &config);
+ void goupil_io(address_map &map);
+ void goupil_mem(address_map &map);
private:
required_device<acia6850_device> m_acia;
optional_device<ef9364_device> m_ef9364;
@@ -119,6 +121,8 @@ public:
DECLARE_WRITE8_MEMBER(visu24x80_ram_w);
void goupil_g2(machine_config &config);
+ void goupil_g2_io(address_map &map);
+ void goupil_g2_mem(address_map &map);
protected:
required_device<palette_device> m_palette;
@@ -140,7 +144,7 @@ TIMER_DEVICE_CALLBACK_MEMBER( goupil_g1_state::goupil_scanline )
m_ef9364->update_scanline((uint16_t)param);
}
-static ADDRESS_MAP_START(goupil_mem, AS_PROGRAM, 8, goupil_g1_state)
+ADDRESS_MAP_START(goupil_g1_state::goupil_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x3FFF) AM_RAM
AM_RANGE(0x4000,0x7FFF) AM_RAM
@@ -167,11 +171,11 @@ static ADDRESS_MAP_START(goupil_mem, AS_PROGRAM, 8, goupil_g1_state)
AM_RANGE(0xF800,0xFFFF) AM_ROM AM_REGION("maincpu", 0xF800) // Monitor (MON 1 + MON 2)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( goupil_io, AS_IO, 8, goupil_g1_state)
+ADDRESS_MAP_START(goupil_g1_state::goupil_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START(goupil_g2_mem, AS_PROGRAM, 8, goupil_g2_state)
+ADDRESS_MAP_START(goupil_g2_state::goupil_g2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x3FFF) AM_RAM
AM_RANGE(0x4000,0x7FFF) AM_RAM
@@ -201,7 +205,7 @@ static ADDRESS_MAP_START(goupil_g2_mem, AS_PROGRAM, 8, goupil_g2_state)
AM_RANGE(0xF800,0xFFFF) AM_ROM AM_REGION("maincpu", 0xF800) // Monitor (MON 2)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( goupil_g2_io, AS_IO, 8, goupil_g2_state)
+ADDRESS_MAP_START(goupil_g2_state::goupil_g2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gp2x.cpp b/src/mame/drivers/gp2x.cpp
index 60d18094166..d3502c6b0be 100644
--- a/src/mame/drivers/gp2x.cpp
+++ b/src/mame/drivers/gp2x.cpp
@@ -56,6 +56,7 @@ public:
uint32_t m_timer;
uint32_t screen_update_gp2x(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void gp2x(machine_config &config);
+ void gp2x_map(address_map &map);
};
@@ -342,7 +343,7 @@ READ32_MEMBER( gp2x_state::sdcard_r )
return 0xffff<<16; // at 3e146b0 - indicate timeout & CRC error
}
-static ADDRESS_MAP_START( gp2x_map, AS_PROGRAM, 32, gp2x_state )
+ADDRESS_MAP_START(gp2x_state::gp2x_map)
AM_RANGE(0x00000000, 0x00007fff) AM_ROM
AM_RANGE(0x01000000, 0x04ffffff) AM_RAM AM_SHARE("ram") // 64 MB of RAM
AM_RANGE(0x9c000000, 0x9c00001f) AM_READWRITE(nand_r, nand_w)
diff --git a/src/mame/drivers/gp32.cpp b/src/mame/drivers/gp32.cpp
index 92c4783c2d0..d2748e635b9 100644
--- a/src/mame/drivers/gp32.cpp
+++ b/src/mame/drivers/gp32.cpp
@@ -1628,7 +1628,7 @@ void gp32_state::s3c240x_machine_reset()
m_s3c240x_iic.data_index = 0;
}
-static ADDRESS_MAP_START( gp32_map, AS_PROGRAM, 32, gp32_state )
+ADDRESS_MAP_START(gp32_state::gp32_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM
AM_RANGE(0x0c000000, 0x0c7fffff) AM_RAM AM_SHARE("s3c240x_ram")
AM_RANGE(0x14000000, 0x1400003b) AM_READWRITE(s3c240x_memcon_r, s3c240x_memcon_w)
diff --git a/src/mame/drivers/gp_1.cpp b/src/mame/drivers/gp_1.cpp
index 7b0b5b478a3..9522c84e68e 100644
--- a/src/mame/drivers/gp_1.cpp
+++ b/src/mame/drivers/gp_1.cpp
@@ -59,6 +59,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(zero_timer);
void gp_1(machine_config &config);
void gp_1s(machine_config &config);
+ void gp_1_io(address_map &map);
+ void gp_1_map(address_map &map);
private:
uint8_t m_u14;
uint8_t m_digit;
@@ -79,12 +81,12 @@ private:
};
-static ADDRESS_MAP_START( gp_1_map, AS_PROGRAM, 8, gp_1_state )
+ADDRESS_MAP_START(gp_1_state::gp_1_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x8c00, 0x8cff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gp_1_io, AS_IO, 8, gp_1_state )
+ADDRESS_MAP_START(gp_1_state::gp_1_io)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ppi", i8255_device, read, write)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
diff --git a/src/mame/drivers/gp_2.cpp b/src/mame/drivers/gp_2.cpp
index 6838aa90f6e..e5d4bf22788 100644
--- a/src/mame/drivers/gp_2.cpp
+++ b/src/mame/drivers/gp_2.cpp
@@ -66,6 +66,8 @@ public:
DECLARE_READ8_MEMBER(portb_r);
TIMER_DEVICE_CALLBACK_MEMBER(zero_timer);
void gp_2(machine_config &config);
+ void gp_2_io(address_map &map);
+ void gp_2_map(address_map &map);
private:
uint8_t m_u14;
uint8_t m_digit;
@@ -85,12 +87,12 @@ private:
};
-static ADDRESS_MAP_START( gp_2_map, AS_PROGRAM, 8, gp_2_state )
+ADDRESS_MAP_START(gp_2_state::gp_2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x8c00, 0x8dff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gp_2_io, AS_IO, 8, gp_2_state )
+ADDRESS_MAP_START(gp_2_state::gp_2_io)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ppi", i8255_device, read, write)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
diff --git a/src/mame/drivers/gpworld.cpp b/src/mame/drivers/gpworld.cpp
index 908344d42aa..f2a56e6fe29 100644
--- a/src/mame/drivers/gpworld.cpp
+++ b/src/mame/drivers/gpworld.cpp
@@ -93,6 +93,8 @@ public:
required_device<palette_device> m_palette;
void gpworld(machine_config &config);
+ void mainmem(address_map &map);
+ void mainport(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -319,7 +321,7 @@ WRITE8_MEMBER(gpworld_state::palette_write)
}
/* PROGRAM MAP */
-static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8, gpworld_state )
+ADDRESS_MAP_START(gpworld_state::mainmem)
AM_RANGE(0x0000,0xbfff) AM_ROM
AM_RANGE(0xc000,0xc7ff) AM_RAM AM_SHARE("sprite_ram")
AM_RANGE(0xc800,0xcfff) AM_RAM_WRITE(palette_write) AM_SHARE("palette_ram") /* The memory test reads at 0xc800 */
@@ -336,7 +338,7 @@ ADDRESS_MAP_END
/* I/O MAP */
-static ADDRESS_MAP_START( mainport, AS_IO, 8, gpworld_state )
+ADDRESS_MAP_START(gpworld_state::mainport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01,0x01) AM_WRITE(misc_io_write)
AM_RANGE(0x80,0x80) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/gradius3.cpp b/src/mame/drivers/gradius3.cpp
index edd240d8060..4816f6709fb 100644
--- a/src/mame/drivers/gradius3.cpp
+++ b/src/mame/drivers/gradius3.cpp
@@ -149,7 +149,7 @@ WRITE8_MEMBER(gradius3_state::sound_bank_w)
-static ADDRESS_MAP_START( gradius3_map, AS_PROGRAM, 16, gradius3_state )
+ADDRESS_MAP_START(gradius3_state::gradius3_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM
AM_RANGE(0x080000, 0x080fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( gradius3_map, AS_PROGRAM, 16, gradius3_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gradius3_map2, AS_PROGRAM, 16, gradius3_state )
+ADDRESS_MAP_START(gradius3_state::gradius3_map2)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x140000, 0x140001) AM_WRITE(cpuB_irqenable_w)
@@ -183,7 +183,7 @@ static ADDRESS_MAP_START( gradius3_map2, AS_PROGRAM, 16, gradius3_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gradius3_s_map, AS_PROGRAM, 8, gradius3_state )
+ADDRESS_MAP_START(gradius3_state::gradius3_s_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf000) AM_WRITE(sound_bank_w) /* 007232 bankswitch */
AM_RANGE(0xf010, 0xf010) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/grchamp.cpp b/src/mame/drivers/grchamp.cpp
index 929bb734c41..da6b1a69b8d 100644
--- a/src/mame/drivers/grchamp.cpp
+++ b/src/mame/drivers/grchamp.cpp
@@ -544,7 +544,7 @@ GFXDECODE_END
*************************************/
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, grchamp_state )
+ADDRESS_MAP_START(grchamp_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("radarram")
@@ -553,7 +553,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, grchamp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, grchamp_state )
+ADDRESS_MAP_START(grchamp_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x78) AM_READ_PORT("ACCEL")
AM_RANGE(0x02, 0x02) AM_MIRROR(0x78) AM_READ(sub_to_main_comm_r)
@@ -572,7 +572,7 @@ ADDRESS_MAP_END
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, grchamp_state )
+ADDRESS_MAP_START(grchamp_state::sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(left_w) AM_SHARE("leftram")
AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(right_w) AM_SHARE("rightram")
@@ -582,7 +582,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, grchamp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_portmap, AS_IO, 8, grchamp_state )
+ADDRESS_MAP_START(grchamp_state::sub_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_READ(main_to_sub_comm_r)
AM_RANGE(0x00, 0x0f) AM_MIRROR(0x70) AM_WRITE(cpu1_outputs_w)
@@ -619,7 +619,7 @@ ADDRESS_MAP_END
0 1 0 1 0 x x x x x x x x x 0 1 W OPEN BUS
0 1 0 1 0 x x x x x x x x x 1 x RW OPEN BUS
*/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, grchamp_state )
+ADDRESS_MAP_START(grchamp_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
// 2000-3fff are empty rom sockets
AM_RANGE(0x4000, 0x43ff) AM_RAM
diff --git a/src/mame/drivers/grfd2301.cpp b/src/mame/drivers/grfd2301.cpp
index af52092d9d6..fde8a27fb0d 100644
--- a/src/mame/drivers/grfd2301.cpp
+++ b/src/mame/drivers/grfd2301.cpp
@@ -48,6 +48,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void grfd2301(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_shared_ptr<uint8_t> m_p_videoram;
@@ -55,13 +57,13 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, grfd2301_state )
+ADDRESS_MAP_START(grfd2301_state::mem_map)
AM_RANGE(0xe000, 0xefff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, grfd2301_state )
+ADDRESS_MAP_START(grfd2301_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gridcomp.cpp b/src/mame/drivers/gridcomp.cpp
index a8d014485ca..8055d4a9bf7 100644
--- a/src/mame/drivers/gridcomp.cpp
+++ b/src/mame/drivers/gridcomp.cpp
@@ -139,6 +139,9 @@ public:
void grid1139(machine_config &config);
void grid1109(machine_config &config);
void grid1101(machine_config &config);
+ void grid1101_io(address_map &map);
+ void grid1101_map(address_map &map);
+ void grid1121_map(address_map &map);
private:
bool m_kbd_ready;
uint16_t m_kbd_data;
@@ -312,7 +315,7 @@ IRQ_CALLBACK_MEMBER(gridcomp_state::irq_callback)
}
-static ADDRESS_MAP_START( grid1101_map, AS_PROGRAM, 16, gridcomp_state )
+ADDRESS_MAP_START(gridcomp_state::grid1101_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xdfe80, 0xdfe83) AM_DEVREADWRITE8("i7220", i7220_device, read, write, 0x00ff)
AM_RANGE(0xdfea0, 0xdfeaf) AM_UNMAP // ??
@@ -323,7 +326,7 @@ static ADDRESS_MAP_START( grid1101_map, AS_PROGRAM, 16, gridcomp_state )
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( grid1121_map, AS_PROGRAM, 16, gridcomp_state )
+ADDRESS_MAP_START(gridcomp_state::grid1121_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x90000, 0x97fff) AM_UNMAP // ?? ROM slot
AM_RANGE(0x9ff00, 0x9ff0f) AM_UNMAP // AM_READ(grid_9ff0_r) // ?? ROM?
@@ -339,7 +342,7 @@ static ADDRESS_MAP_START( grid1121_map, AS_PROGRAM, 16, gridcomp_state )
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( grid1101_io, AS_IO, 16, gridcomp_state )
+ADDRESS_MAP_START(gridcomp_state::grid1101_io)
AM_RANGE(0x0000, 0x000f) AM_DEVICE(I80130_TAG, i80130_device, io_map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gridlee.cpp b/src/mame/drivers/gridlee.cpp
index 7f4e3c2ac95..932b68e14fb 100644
--- a/src/mame/drivers/gridlee.cpp
+++ b/src/mame/drivers/gridlee.cpp
@@ -83,7 +83,6 @@
#include "includes/gridlee.h"
#include "cpu/m6809/m6809.h"
-#include "machine/74259.h"
#include "sound/samples.h"
#include "machine/nvram.h"
#include "machine/watchdog.h"
@@ -300,10 +299,10 @@ WRITE_LINE_MEMBER(gridlee_state::coin_counter_w)
*************************************/
/* CPU 1 read addresses */
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, gridlee_state )
+ADDRESS_MAP_START(gridlee_state::cpu1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x0800, 0x7fff) AM_RAM_WRITE(gridlee_videoram_w) AM_SHARE("videoram")
- AM_RANGE(0x9000, 0x9000) AM_SELECT(0x0070) AM_DEVWRITE_MOD("latch", ls259_device, write_d0, rshift<4>)
+ ;map(0x9000, 0x9000).select(0x0070).lw8("latch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_latch->write_d0(space, offset >> 4, data, mem_mask); });
AM_RANGE(0x9200, 0x9200) AM_WRITE(gridlee_palette_select_w)
AM_RANGE(0x9380, 0x9380) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x9500, 0x9501) AM_READ(analog_port_r)
diff --git a/src/mame/drivers/groundfx.cpp b/src/mame/drivers/groundfx.cpp
index aa55c256a16..4b478bd6e4c 100644
--- a/src/mame/drivers/groundfx.cpp
+++ b/src/mame/drivers/groundfx.cpp
@@ -156,7 +156,7 @@ WRITE32_MEMBER(groundfx_state::motor_control_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( groundfx_map, AS_PROGRAM, 32, groundfx_state )
+ADDRESS_MAP_START(groundfx_state::groundfx_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_SHARE("ram") /* main CPUA ram */
AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("spriteram") /* sprite ram */
diff --git a/src/mame/drivers/gstream.cpp b/src/mame/drivers/gstream.cpp
index 6de22fc70a9..e36590d5b49 100644
--- a/src/mame/drivers/gstream.cpp
+++ b/src/mame/drivers/gstream.cpp
@@ -210,6 +210,10 @@ public:
required_device<palette_device> m_palette;
void x2222(machine_config &config);
void gstream(machine_config &config);
+ void gstream_32bit_map(address_map &map);
+ void gstream_io(address_map &map);
+ void x2222_32bit_map(address_map &map);
+ void x2222_io(address_map &map);
};
CUSTOM_INPUT_MEMBER(gstream_state::x2222_toggle_r) // or the game hangs when starting, might be a status flag for the sound?
@@ -284,7 +288,7 @@ WRITE32_MEMBER(gstream_state::gstream_tilemap3_scrolly_w)
m_tmap3_scrolly = data;
}
-static ADDRESS_MAP_START( gstream_32bit_map, AS_PROGRAM, 32, gstream_state )
+ADDRESS_MAP_START(gstream_state::gstream_32bit_map)
AM_RANGE(0x00000000, 0x003FFFFF) AM_RAM AM_SHARE("workram") // work ram
// AM_RANGE(0x40000000, 0x40FFFFFF) AM_RAM // ?? lots of data gets copied here if present, but game runs without it??
AM_RANGE(0x80000000, 0x80003FFF) AM_RAM_WRITE(gstream_vram_w) AM_SHARE("vram") // video ram
@@ -365,7 +369,7 @@ WRITE32_MEMBER(gstream_state::gstream_oki_4040_w)
// data == 0 or data == 0x81
}
-static ADDRESS_MAP_START( gstream_io, AS_IO, 32, gstream_state )
+ADDRESS_MAP_START(gstream_state::gstream_io)
AM_RANGE(0x4000, 0x4003) AM_READ_PORT("IN0")
AM_RANGE(0x4010, 0x4013) AM_READ_PORT("IN1")
AM_RANGE(0x4020, 0x4023) AM_READ_PORT("IN2") // extra coin switches etc
@@ -376,7 +380,7 @@ static ADDRESS_MAP_START( gstream_io, AS_IO, 32, gstream_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x2222_32bit_map, AS_PROGRAM, 32, gstream_state )
+ADDRESS_MAP_START(gstream_state::x2222_32bit_map)
AM_RANGE(0x00000000, 0x003FFFFF) AM_RAM AM_SHARE("workram") // work ram
AM_RANGE(0x40000000, 0x403fffff) AM_RAM // ?? data gets copied here if present, but game runs without it??
AM_RANGE(0x80000000, 0x80003FFF) AM_RAM_WRITE(gstream_vram_w) AM_SHARE("vram") // video ram
@@ -401,7 +405,7 @@ WRITE32_MEMBER(gstream_state::x2222_sound_w)
printf("x2222_sound_w unk %08x\n", data);
}
-static ADDRESS_MAP_START( x2222_io, AS_IO, 32, gstream_state )
+ADDRESS_MAP_START(gstream_state::x2222_io)
AM_RANGE(0x4000, 0x4003) AM_READ_PORT("P1")
AM_RANGE(0x4004, 0x4007) AM_READ_PORT("P2")
AM_RANGE(0x4008, 0x400b) AM_READ_PORT("SYS")
diff --git a/src/mame/drivers/gstriker.cpp b/src/mame/drivers/gstriker.cpp
index be9314819a4..1692731e0bc 100644
--- a/src/mame/drivers/gstriker.cpp
+++ b/src/mame/drivers/gstriker.cpp
@@ -246,7 +246,7 @@ GFXDECODE_END
-static ADDRESS_MAP_START( twcup94_map, AS_PROGRAM, 16, gstriker_state )
+ADDRESS_MAP_START(gstriker_state::twcup94_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("zoomtilemap", mb60553_zooming_tilemap_device, vram_r, vram_w )
AM_RANGE(0x140000, 0x141fff) AM_RAM AM_SHARE("cg10103_m_vram")
@@ -264,18 +264,18 @@ static ADDRESS_MAP_START( twcup94_map, AS_PROGRAM, 16, gstriker_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("work_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gstriker_map, AS_PROGRAM, 16, gstriker_state )
+ADDRESS_MAP_START(gstriker_state::gstriker_map)
AM_IMPORT_FROM(twcup94_map)
AM_RANGE(0x200060, 0x200063) AM_DEVREADWRITE8("acia", acia6850_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gstriker_state )
+ADDRESS_MAP_START(gstriker_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, gstriker_state )
+ADDRESS_MAP_START(gstriker_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(sh_bankswitch_w)
diff --git a/src/mame/drivers/gsword.cpp b/src/mame/drivers/gsword.cpp
index f3975a9752c..00360871397 100644
--- a/src/mame/drivers/gsword.cpp
+++ b/src/mame/drivers/gsword.cpp
@@ -455,7 +455,7 @@ void josvolly_state::machine_reset()
}
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM , 8, gsword_state_base )
+ADDRESS_MAP_START(gsword_state_base::cpu1_map)
AM_RANGE(0x0000, 0x8fff) AM_ROM
AM_RANGE(0x9000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa37f) AM_RAM
@@ -470,18 +470,18 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM , 8, gsword_state_base )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_io_map, AS_IO, 8, gsword_state )
+ADDRESS_MAP_START(gsword_state::cpu1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7e, 0x7f) AM_DEVREADWRITE("taito8741", taito8741_4pack_device, read_0, write_0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, gsword_state )
+ADDRESS_MAP_START(gsword_state::cpu2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("cpu2_ram")
AM_RANGE(0x6000, 0x6000) AM_WRITE(sound_command_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_io_map, AS_IO, 8, gsword_state )
+ADDRESS_MAP_START(gsword_state::cpu2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("taito8741", taito8741_4pack_device, read_2, write_2)
AM_RANGE(0x20, 0x21) AM_DEVREADWRITE("taito8741", taito8741_4pack_device, read_3, write_3)
@@ -496,19 +496,19 @@ static ADDRESS_MAP_START( cpu2_io_map, AS_IO, 8, gsword_state )
AM_RANGE(0xe0, 0xe0) AM_WRITENOP /* watchdog? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8, gsword_state )
+ADDRESS_MAP_START(gsword_state::cpu3_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_WRITE(adpcm_data_w)
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( josvolly_cpu1_io_map, AS_IO, 8, josvolly_state )
+ADDRESS_MAP_START(josvolly_state::josvolly_cpu1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7e, 0x7f) AM_DEVREADWRITE("mcu1", upi41_cpu_device, upi41_master_r, upi41_master_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( josvolly_cpu2_map, AS_PROGRAM, 8, josvolly_state )
+ADDRESS_MAP_START(josvolly_state::josvolly_cpu2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("cpu2_ram")
@@ -519,7 +519,7 @@ static ADDRESS_MAP_START( josvolly_cpu2_map, AS_PROGRAM, 8, josvolly_state )
AM_RANGE(0xA000, 0xA001) AM_DEVREADWRITE("mcu2", upi41_cpu_device, upi41_master_r, upi41_master_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( josvolly_cpu2_io_map, AS_IO, 8, josvolly_state )
+ADDRESS_MAP_START(josvolly_state::josvolly_cpu2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(fake_0_r, ay8910_control_port_0_w)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
diff --git a/src/mame/drivers/gticlub.cpp b/src/mame/drivers/gticlub.cpp
index a2dcaa705dc..709804c21da 100644
--- a/src/mame/drivers/gticlub.cpp
+++ b/src/mame/drivers/gticlub.cpp
@@ -333,6 +333,12 @@ public:
void hangplt(machine_config &config);
void slrasslt(machine_config &config);
void gticlub(machine_config &config);
+ void gticlub_map(address_map &map);
+ void hangplt_map(address_map &map);
+ void hangplt_sharc0_map(address_map &map);
+ void hangplt_sharc1_map(address_map &map);
+ void sharc_map(address_map &map);
+ void sound_memmap(address_map &map);
private:
void gticlub_led_setreg(int offset, uint8_t data);
@@ -505,7 +511,7 @@ MACHINE_START_MEMBER(gticlub_state,gticlub)
m_sound_irq_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(gticlub_state::sound_irq), this));
}
-static ADDRESS_MAP_START( gticlub_map, AS_PROGRAM, 32, gticlub_state )
+ADDRESS_MAP_START(gticlub_state::gticlub_map)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("work_ram") /* Work RAM */
AM_RANGE(0x74000000, 0x740000ff) AM_READWRITE(gticlub_k001604_reg_r, gticlub_k001604_reg_w)
AM_RANGE(0x74010000, 0x7401ffff) AM_RAM_WRITE(paletteram32_w) AM_SHARE("paletteram")
@@ -524,7 +530,7 @@ static ADDRESS_MAP_START( gticlub_map, AS_PROGRAM, 32, gticlub_state )
AM_RANGE(0x7fe00000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* Program ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hangplt_map, AS_PROGRAM, 32, gticlub_state )
+ADDRESS_MAP_START(gticlub_state::hangplt_map)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("work_ram") /* Work RAM */
AM_RANGE(0x74000000, 0x740000ff) AM_READWRITE(gticlub_k001604_reg_r, gticlub_k001604_reg_w)
AM_RANGE(0x74010000, 0x7401ffff) AM_RAM_WRITE(paletteram32_w) AM_SHARE("paletteram")
@@ -543,7 +549,7 @@ ADDRESS_MAP_END
/**********************************************************************/
-static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, gticlub_state )
+ADDRESS_MAP_START(gticlub_state::sound_memmap)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x300000, 0x30001f) AM_DEVREADWRITE8("k056800", k056800_device, sound_r, sound_w, 0x00ff)
@@ -574,14 +580,14 @@ WRITE32_MEMBER(gticlub_state::dsp_dataram1_w)
m_sharc_dataram_1[offset] = data;
}
-static ADDRESS_MAP_START( sharc_map, AS_DATA, 32, gticlub_state )
+ADDRESS_MAP_START(gticlub_state::sharc_map)
AM_RANGE(0x400000, 0x41ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w)
AM_RANGE(0x500000, 0x5fffff) AM_READWRITE(dsp_dataram0_r, dsp_dataram0_w)
AM_RANGE(0x600000, 0x6fffff) AM_DEVREADWRITE("k001005", k001005_device, read, write)
AM_RANGE(0x700000, 0x7000ff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_0_comm_sharc_r, cgboard_0_comm_sharc_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hangplt_sharc0_map, AS_DATA, 32, gticlub_state )
+ADDRESS_MAP_START(gticlub_state::hangplt_sharc0_map)
AM_RANGE(0x0400000, 0x041ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w)
AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram0_r, dsp_dataram0_w)
AM_RANGE(0x1400000, 0x14fffff) AM_RAM
@@ -592,7 +598,7 @@ static ADDRESS_MAP_START( hangplt_sharc0_map, AS_DATA, 32, gticlub_state )
AM_RANGE(0x3600000, 0x37fffff) AM_ROMBANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hangplt_sharc1_map, AS_DATA, 32, gticlub_state )
+ADDRESS_MAP_START(gticlub_state::hangplt_sharc1_map)
AM_RANGE(0x0400000, 0x041ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_1_shared_sharc_r, cgboard_1_shared_sharc_w)
AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram1_r, dsp_dataram1_w)
AM_RANGE(0x1400000, 0x14fffff) AM_RAM
diff --git a/src/mame/drivers/gts1.cpp b/src/mame/drivers/gts1.cpp
index b200e27801b..8c386de3a12 100644
--- a/src/mame/drivers/gts1.cpp
+++ b/src/mame/drivers/gts1.cpp
@@ -107,6 +107,9 @@ public:
DECLARE_READ8_MEMBER (gts1_pa_r);
DECLARE_WRITE8_MEMBER(gts1_do_w);
void gts1(machine_config &config);
+ void gts1_data(address_map &map);
+ void gts1_io(address_map &map);
+ void gts1_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -119,16 +122,16 @@ private:
uint16_t m_z30_out; //!< 4-to-16 decoder outputs
};
-static ADDRESS_MAP_START( gts1_map, AS_PROGRAM, 8, gts1_state )
+ADDRESS_MAP_START(gts1_state::gts1_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gts1_data, AS_DATA, 8, gts1_state )
+ADDRESS_MAP_START(gts1_state::gts1_data)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gts1_io, AS_IO, 8, gts1_state )
+ADDRESS_MAP_START(gts1_state::gts1_io)
AM_RANGE(0x0000, 0x00ff) AM_READ ( gts1_io_r ) AM_WRITE( gts1_io_w ) // catch undecoded I/O accesss
AM_RANGE(0x0020, 0x002f) AM_DEVREADWRITE ( "u4", ra17xx_device, io_r, io_w ) // (U4) solenoid
diff --git a/src/mame/drivers/gts3.cpp b/src/mame/drivers/gts3.cpp
index 2c6862ec1ac..0b72559796f 100644
--- a/src/mame/drivers/gts3.cpp
+++ b/src/mame/drivers/gts3.cpp
@@ -55,6 +55,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(nmi_w);
DECLARE_INPUT_CHANGED_MEMBER(test_inp);
void gts3(machine_config &config);
+ void gts3_map(address_map &map);
private:
bool m_dispclk;
bool m_lampclk;
@@ -70,7 +71,7 @@ private:
};
-static ADDRESS_MAP_START( gts3_map, AS_PROGRAM, 8, gts3_state )
+ADDRESS_MAP_START(gts3_state::gts3_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x200f) AM_DEVREADWRITE("u4", via6522_device, read, write)
AM_RANGE(0x2010, 0x201f) AM_DEVREADWRITE("u5", via6522_device, read, write)
diff --git a/src/mame/drivers/gts3a.cpp b/src/mame/drivers/gts3a.cpp
index d082b52d7aa..0026c61ca8c 100644
--- a/src/mame/drivers/gts3a.cpp
+++ b/src/mame/drivers/gts3a.cpp
@@ -53,6 +53,8 @@ public:
DECLARE_PALETTE_INIT(gts3a);
required_device<palette_device> m_palette;
void gts3a(machine_config &config);
+ void gts3a_dmd_map(address_map &map);
+ void gts3a_map(address_map &map);
private:
bool m_dispclk;
bool m_lampclk;
@@ -70,7 +72,7 @@ private:
};
-static ADDRESS_MAP_START( gts3a_map, AS_PROGRAM, 8, gts3a_state )
+ADDRESS_MAP_START(gts3a_state::gts3a_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x200f) AM_DEVREADWRITE("u4", via6522_device, read, write)
AM_RANGE(0x2010, 0x201f) AM_DEVREADWRITE("u5", via6522_device, read, write)
@@ -78,7 +80,7 @@ static ADDRESS_MAP_START( gts3a_map, AS_PROGRAM, 8, gts3a_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gts3a_dmd_map, AS_PROGRAM, 8, gts3a_state )
+ADDRESS_MAP_START(gts3a_state::gts3a_dmd_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_DEVREAD("crtc", mc6845_device, status_r)
AM_RANGE(0x2001, 0x2001) AM_DEVREAD("crtc", mc6845_device, register_r)
diff --git a/src/mame/drivers/gts80.cpp b/src/mame/drivers/gts80.cpp
index 32d033349d7..8ffea73ee72 100644
--- a/src/mame/drivers/gts80.cpp
+++ b/src/mame/drivers/gts80.cpp
@@ -52,6 +52,7 @@ public:
void gts80_ss(machine_config &config);
void gts80_s(machine_config &config);
void gts80_hh(machine_config &config);
+ void gts80_map(address_map &map);
private:
uint8_t m_port2;
uint8_t m_segment;
@@ -63,7 +64,7 @@ private:
optional_device<gottlieb_sound_r1_device> m_r1_sound;
};
-static ADDRESS_MAP_START( gts80_map, AS_PROGRAM, 8, gts80_state )
+ADDRESS_MAP_START(gts80_state::gts80_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x017f) AM_RAM
AM_RANGE(0x0200, 0x027f) AM_DEVREADWRITE("riot1", riot6532_device, read, write)
diff --git a/src/mame/drivers/gts80a.cpp b/src/mame/drivers/gts80a.cpp
index f884df371a1..4e8ae503bc9 100644
--- a/src/mame/drivers/gts80a.cpp
+++ b/src/mame/drivers/gts80a.cpp
@@ -42,6 +42,7 @@ public:
void gts80a(machine_config &config);
void gts80a_s(machine_config &config);
void gts80a_ss(machine_config &config);
+ void gts80a_map(address_map &map);
private:
uint8_t m_port2;
uint8_t m_segment;
@@ -53,7 +54,7 @@ private:
optional_device<gottlieb_sound_r1_device> m_r1_sound;
};
-static ADDRESS_MAP_START( gts80a_map, AS_PROGRAM, 8, gts80a_state )
+ADDRESS_MAP_START(gts80a_state::gts80a_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x017f) AM_RAM
AM_RANGE(0x0200, 0x027f) AM_DEVREADWRITE("riot1", riot6532_device, read, write)
@@ -400,6 +401,8 @@ public:
uint32_t screen_update_caveman(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void caveman(machine_config &config);
+ void video_io_map(address_map &map);
+ void video_map(address_map &map);
private:
required_device<cpu_device> m_videocpu;
required_shared_ptr<uint8_t> m_vram;
@@ -427,14 +430,14 @@ uint32_t caveman_state::screen_update_caveman(screen_device &screen, bitmap_ind1
}
-static ADDRESS_MAP_START( video_map, AS_PROGRAM, 8, caveman_state )
+ADDRESS_MAP_START(caveman_state::video_map)
ADDRESS_MAP_GLOBAL_MASK(0xffff)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x5fff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( video_io_map, AS_IO, 8, caveman_state )
+ADDRESS_MAP_START(caveman_state::video_io_map)
// AM_RANGE(0x000, 0x002) AM_READWRITE() // 8259 irq controller
// AM_RANGE(0x100, 0x102) AM_READWRITE() // HD46505
// AM_RANGE(0x200, 0x200) AM_READWRITE() // 8212 in, ?? out
diff --git a/src/mame/drivers/gts80b.cpp b/src/mame/drivers/gts80b.cpp
index 56f6d6982e2..56d02387b0d 100644
--- a/src/mame/drivers/gts80b.cpp
+++ b/src/mame/drivers/gts80b.cpp
@@ -47,6 +47,7 @@ public:
void gts80b_s1(machine_config &config);
void gts80b_s(machine_config &config);
void gts80b(machine_config &config);
+ void gts80b_map(address_map &map);
private:
uint8_t m_dispcmd;
uint8_t m_port2a;
@@ -61,7 +62,7 @@ private:
optional_device<gottlieb_sound_r1_device> m_r1_sound;
};
-static ADDRESS_MAP_START( gts80b_map, AS_PROGRAM, 8, gts80b_state )
+ADDRESS_MAP_START(gts80b_state::gts80b_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x017f) AM_RAM
AM_RANGE(0x0200, 0x027f) AM_DEVREADWRITE("riot1", riot6532_device, read, write)
diff --git a/src/mame/drivers/guab.cpp b/src/mame/drivers/guab.cpp
index f75b2e592cb..2f8c3c17811 100644
--- a/src/mame/drivers/guab.cpp
+++ b/src/mame/drivers/guab.cpp
@@ -95,6 +95,7 @@ public:
DECLARE_FLOPPY_FORMATS(floppy_formats);
void guab(machine_config &config);
+ void guab_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -115,7 +116,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( guab_map, AS_PROGRAM, 16, guab_state )
+ADDRESS_MAP_START(guab_state::guab_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x04ffff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x0c0000, 0x0c0007) AM_DEVREADWRITE8("i8255_1", i8255_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/gumbo.cpp b/src/mame/drivers/gumbo.cpp
index a54ba0290a8..c2255f381b1 100644
--- a/src/mame/drivers/gumbo.cpp
+++ b/src/mame/drivers/gumbo.cpp
@@ -52,7 +52,7 @@ PCB Layout
#include "speaker.h"
-static ADDRESS_MAP_START( gumbo_map, AS_PROGRAM, 16, gumbo_state )
+ADDRESS_MAP_START(gumbo_state::gumbo_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM // main ram
AM_RANGE(0x1b0000, 0x1b03ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -65,7 +65,7 @@ ADDRESS_MAP_END
/* Miss Puzzle has a different memory map */
-static ADDRESS_MAP_START( mspuzzle_map, AS_PROGRAM, 16, gumbo_state )
+ADDRESS_MAP_START(gumbo_state::mspuzzle_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM // main ram
AM_RANGE(0x190000, 0x197fff) AM_RAM_WRITE(gumbo_fg_videoram_w) AM_SHARE("fg_videoram") // fg tilemap
@@ -76,7 +76,7 @@ static ADDRESS_MAP_START( mspuzzle_map, AS_PROGRAM, 16, gumbo_state )
AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_WRITE(gumbo_bg_videoram_w) AM_SHARE("bg_videoram") // bg tilemap
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dblpoint_map, AS_PROGRAM, 16, gumbo_state )
+ADDRESS_MAP_START(gumbo_state::dblpoint_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM // main ram
AM_RANGE(0x1b0000, 0x1b03ff) AM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
diff --git a/src/mame/drivers/gunbustr.cpp b/src/mame/drivers/gunbustr.cpp
index 5ecbcff396d..37d212b6d19 100644
--- a/src/mame/drivers/gunbustr.cpp
+++ b/src/mame/drivers/gunbustr.cpp
@@ -115,7 +115,7 @@ WRITE32_MEMBER(gunbustr_state::gunbustr_gun_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( gunbustr_map, AS_PROGRAM, 32, gunbustr_state )
+ADDRESS_MAP_START(gunbustr_state::gunbustr_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_SHARE("ram") /* main CPUA ram */
AM_RANGE(0x300000, 0x301fff) AM_RAM AM_SHARE("spriteram") /* Sprite ram */
diff --git a/src/mame/drivers/gundealr.cpp b/src/mame/drivers/gundealr.cpp
index 2ae3d12a4c6..a1b00358c42 100644
--- a/src/mame/drivers/gundealr.cpp
+++ b/src/mame/drivers/gundealr.cpp
@@ -84,7 +84,7 @@ WRITE8_MEMBER(gundealr_state::yamyam_bankswitch_w)
-static ADDRESS_MAP_START( base_map, AS_PROGRAM, 8, gundealr_state )
+ADDRESS_MAP_START(gundealr_state::base_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("DSW0")
@@ -99,20 +99,20 @@ static ADDRESS_MAP_START( base_map, AS_PROGRAM, 8, gundealr_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("rambase")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gundealr_main_map, AS_PROGRAM, 8, gundealr_state )
+ADDRESS_MAP_START(gundealr_state::gundealr_main_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xc014, 0xc014) AM_WRITE(gundealr_flipscreen_w)
AM_RANGE(0xc020, 0xc023) AM_WRITE(gundealr_fg_scroll_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yamyam_main_map, AS_PROGRAM, 8, gundealr_state )
+ADDRESS_MAP_START(gundealr_state::yamyam_main_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xc010, 0xc013) AM_WRITE(yamyam_fg_scroll_w)
AM_RANGE(0xc014, 0xc014) AM_WRITE(yamyam_flipscreen_w)
AM_RANGE(0xc015, 0xc015) AM_WRITENOP // Bit 7 = MCU reset?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, gundealr_state )
+ADDRESS_MAP_START(gundealr_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/gunpey.cpp b/src/mame/drivers/gunpey.cpp
index 8c4e40cf859..6e87e1aa09f 100644
--- a/src/mame/drivers/gunpey.cpp
+++ b/src/mame/drivers/gunpey.cpp
@@ -268,6 +268,8 @@ public:
int write_dest_byte(uint8_t usedata);
void gunpey(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
//uint16_t main_m_vram[0x800][0x800];
};
@@ -1293,14 +1295,14 @@ WRITE16_MEMBER(gunpey_state::vregs_addr_w)
/***************************************************************************************/
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, gunpey_state )
+ADDRESS_MAP_START(gunpey_state::mem_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_SHARE("wram")
// AM_RANGE(0x50000, 0x500ff) AM_RAM
// AM_RANGE(0x50100, 0x502ff) AM_NOP
AM_RANGE(0x80000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 16, gunpey_state )
+ADDRESS_MAP_START(gunpey_state::io_map)
AM_RANGE(0x7f40, 0x7f45) AM_READ8(inputs_r,0xffff)
AM_RANGE(0x7f48, 0x7f49) AM_WRITE8(output_w,0x00ff)
diff --git a/src/mame/drivers/gunsmoke.cpp b/src/mame/drivers/gunsmoke.cpp
index 9d805b1dc24..5978615f642 100644
--- a/src/mame/drivers/gunsmoke.cpp
+++ b/src/mame/drivers/gunsmoke.cpp
@@ -105,7 +105,7 @@ READ8_MEMBER(gunsmoke_state::gunsmoke_protection_r)
/* Memory Maps */
-static ADDRESS_MAP_START( gunsmoke_map, AS_PROGRAM, 8, gunsmoke_state )
+ADDRESS_MAP_START(gunsmoke_state::gunsmoke_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
@@ -126,7 +126,7 @@ static ADDRESS_MAP_START( gunsmoke_map, AS_PROGRAM, 8, gunsmoke_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gunsmoke_state )
+ADDRESS_MAP_START(gunsmoke_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/gyruss.cpp b/src/mame/drivers/gyruss.cpp
index a13c541f98f..e79bc944c18 100644
--- a/src/mame/drivers/gyruss.cpp
+++ b/src/mame/drivers/gyruss.cpp
@@ -186,7 +186,7 @@ WRITE_LINE_MEMBER(gyruss_state::coin_counter_2_w)
machine().bookkeeping().coin_counter_w(1, state);
}
-static ADDRESS_MAP_START( main_cpu1_map, AS_PROGRAM, 8, gyruss_state )
+ADDRESS_MAP_START(gyruss_state::main_cpu1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("colorram")
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("videoram")
@@ -201,7 +201,7 @@ static ADDRESS_MAP_START( main_cpu1_map, AS_PROGRAM, 8, gyruss_state )
AM_RANGE(0xc180, 0xc187) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_cpu2_map, AS_PROGRAM, 8, gyruss_state )
+ADDRESS_MAP_START(gyruss_state::main_cpu2_map)
AM_RANGE(0x0000, 0x0000) AM_READ(gyruss_scanline_r)
AM_RANGE(0x2000, 0x2000) AM_WRITE(slave_irq_mask_w) AM_READNOP
AM_RANGE(0x4000, 0x403f) AM_RAM
@@ -211,13 +211,13 @@ static ADDRESS_MAP_START( main_cpu2_map, AS_PROGRAM, 8, gyruss_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_cpu1_map, AS_PROGRAM, 8, gyruss_state )
+ADDRESS_MAP_START(gyruss_state::audio_cpu1_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_cpu1_io_map, AS_IO, 8, gyruss_state )
+ADDRESS_MAP_START(gyruss_state::audio_cpu1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay1", ay8910_device, address_w)
AM_RANGE(0x01, 0x01) AM_DEVREAD("ay1", ay8910_device, data_r)
@@ -238,11 +238,11 @@ static ADDRESS_MAP_START( audio_cpu1_io_map, AS_IO, 8, gyruss_state )
AM_RANGE(0x18, 0x18) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_cpu2_map, AS_PROGRAM, 8, gyruss_state )
+ADDRESS_MAP_START(gyruss_state::audio_cpu2_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_cpu2_io_map, AS_IO, 8, gyruss_state )
+ADDRESS_MAP_START(gyruss_state::audio_cpu2_io_map)
AM_RANGE(0x00, 0xff) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/h19.cpp b/src/mame/drivers/h19.cpp
index ecc64f5ec92..84127eae727 100644
--- a/src/mame/drivers/h19.cpp
+++ b/src/mame/drivers/h19.cpp
@@ -109,6 +109,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void h19(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual void machine_reset() override;
@@ -154,14 +156,14 @@ void h19_state::device_timer(emu_timer &timer, device_timer_id id, int param, vo
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, h19_state )
+ADDRESS_MAP_START(h19_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x2000) AM_ROM
AM_RANGE(0x4000, 0x4100) AM_MIRROR(0x3e00) AM_RAM
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x3800) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, h19_state )
+ADDRESS_MAP_START(h19_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x1f) AM_READ_PORT("SW401")
diff --git a/src/mame/drivers/h8.cpp b/src/mame/drivers/h8.cpp
index e8a6acbe32f..e89cdeb7988 100644
--- a/src/mame/drivers/h8.cpp
+++ b/src/mame/drivers/h8.cpp
@@ -82,6 +82,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(h8_p);
void h8(machine_config &config);
+ void h8_io(address_map &map);
+ void h8_mem(address_map &map);
private:
uint8_t m_digit;
uint8_t m_segment;
@@ -175,7 +177,7 @@ WRITE8_MEMBER( h8_state::portf1_w )
if (m_digit) output().set_digit_value(m_digit, m_segment);
}
-static ADDRESS_MAP_START(h8_mem, AS_PROGRAM, 8, h8_state)
+ADDRESS_MAP_START(h8_state::h8_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM // main rom
AM_RANGE(0x1400, 0x17ff) AM_RAM // fdc ram
@@ -183,7 +185,7 @@ static ADDRESS_MAP_START(h8_mem, AS_PROGRAM, 8, h8_state)
AM_RANGE(0x2000, 0x9fff) AM_RAM // main ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h8_io, AS_IO, 8, h8_state)
+ADDRESS_MAP_START(h8_state::h8_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_READWRITE(portf0_r,portf0_w)
diff --git a/src/mame/drivers/h89.cpp b/src/mame/drivers/h89.cpp
index 9e8144accee..4cf13cc9353 100644
--- a/src/mame/drivers/h89.cpp
+++ b/src/mame/drivers/h89.cpp
@@ -44,10 +44,12 @@ public:
virtual void machine_reset() override;
TIMER_DEVICE_CALLBACK_MEMBER(h89_irq_timer);
void h89(machine_config &config);
+ void h89_io(address_map &map);
+ void h89_mem(address_map &map);
};
-static ADDRESS_MAP_START(h89_mem, AS_PROGRAM, 8, h89_state)
+ADDRESS_MAP_START(h89_state::h89_mem)
ADDRESS_MAP_UNMAP_HIGH
// Bank 0 - At startup has the format defined below, but software could swap it for RAM (Later H-89s and
// Early ones with the Org-0 modification),
@@ -60,7 +62,7 @@ static ADDRESS_MAP_START(h89_mem, AS_PROGRAM, 8, h89_state)
AM_RANGE(0x2000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h89_io, AS_IO, 8, h89_state)
+ADDRESS_MAP_START(h89_state::h89_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x78, 0x7b) expansion 1 // Options - Cassette I/O (only uses 0x78 - 0x79) Requires MTR-88 ROM
diff --git a/src/mame/drivers/halleys.cpp b/src/mame/drivers/halleys.cpp
index 9619ae37f2d..d6f1685c8d1 100644
--- a/src/mame/drivers/halleys.cpp
+++ b/src/mame/drivers/halleys.cpp
@@ -294,6 +294,8 @@ public:
required_device<generic_latch_8_device> m_soundlatch;
void benberob(machine_config &config);
void halleys(machine_config &config);
+ void halleys_map(address_map &map);
+ void sound_map(address_map &map);
};
@@ -1631,7 +1633,7 @@ READ8_MEMBER(halleys_state::io_mirror_r)
//**************************************************************************
// Memory Maps
-static ADDRESS_MAP_START( halleys_map, AS_PROGRAM, 8, halleys_state )
+ADDRESS_MAP_START(halleys_state::halleys_map)
AM_RANGE(0x0000, 0x0fff) AM_READWRITE(blitter_r, blitter_w) AM_SHARE("blitter_ram")
AM_RANGE(0x1f00, 0x1fff) AM_WRITE(bgtile_w) // background tiles?(Ben Bero Beh only)
AM_RANGE(0x1000, 0xefff) AM_ROM
@@ -1658,7 +1660,7 @@ static ADDRESS_MAP_START( halleys_map, AS_PROGRAM, 8, halleys_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, halleys_state )
+ADDRESS_MAP_START(halleys_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4801) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/hanaawas.cpp b/src/mame/drivers/hanaawas.cpp
index b0bfe9b02c6..7453169a0f6 100644
--- a/src/mame/drivers/hanaawas.cpp
+++ b/src/mame/drivers/hanaawas.cpp
@@ -99,7 +99,7 @@ WRITE8_MEMBER(hanaawas_state::key_matrix_status_w)
m_coin_settings = data & 0xf;
}
-static ADDRESS_MAP_START( hanaawas_map, AS_PROGRAM, 8, hanaawas_state )
+ADDRESS_MAP_START(hanaawas_state::hanaawas_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_ROM
@@ -110,7 +110,7 @@ static ADDRESS_MAP_START( hanaawas_map, AS_PROGRAM, 8, hanaawas_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, hanaawas_state )
+ADDRESS_MAP_START(hanaawas_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(hanaawas_input_port_0_r, hanaawas_inputs_mux_w)
AM_RANGE(0x01, 0x01) AM_READNOP AM_WRITE(key_matrix_status_w) /* r bit 1: status ready, presumably of the input mux device / w = configure device? */
diff --git a/src/mame/drivers/hankin.cpp b/src/mame/drivers/hankin.cpp
index 67df1504ca4..27a4d9add02 100644
--- a/src/mame/drivers/hankin.cpp
+++ b/src/mame/drivers/hankin.cpp
@@ -66,6 +66,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_s);
TIMER_DEVICE_CALLBACK_MEMBER(timer_x);
void hankin(machine_config &config);
+ void hankin_map(address_map &map);
+ void hankin_sub_map(address_map &map);
private:
bool m_timer_x;
bool m_timer_sb;
@@ -103,7 +105,7 @@ private:
};
-static ADDRESS_MAP_START( hankin_map, AS_PROGRAM, 8, hankin_state )
+ADDRESS_MAP_START(hankin_state::hankin_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("ic11", pia6821_device, read, write)
@@ -112,7 +114,7 @@ static ADDRESS_MAP_START( hankin_map, AS_PROGRAM, 8, hankin_state )
AM_RANGE(0x1000, 0x1fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hankin_sub_map, AS_PROGRAM, 8, hankin_state )
+ADDRESS_MAP_START(hankin_state::hankin_sub_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0080, 0x0083) AM_DEVREADWRITE("ic2", pia6821_device, read, write)
diff --git a/src/mame/drivers/hapyfish.cpp b/src/mame/drivers/hapyfish.cpp
index 7339ea5e3a4..8f86c3a7c5a 100644
--- a/src/mame/drivers/hapyfish.cpp
+++ b/src/mame/drivers/hapyfish.cpp
@@ -34,9 +34,10 @@ public:
uint32_t screen_update_hapyfish(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void hapyfish(machine_config &config);
+ void hapyfish_map(address_map &map);
};
-static ADDRESS_MAP_START( hapyfish_map, AS_PROGRAM, 32, hapyfish_state )
+ADDRESS_MAP_START(hapyfish_state::hapyfish_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/harddriv.cpp b/src/mame/drivers/harddriv.cpp
index 127065898c3..32cd051c2b1 100644
--- a/src/mame/drivers/harddriv.cpp
+++ b/src/mame/drivers/harddriv.cpp
@@ -539,7 +539,7 @@ public:
};
-static ADDRESS_MAP_START( driver_68k_map, AS_PROGRAM, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::driver_68k_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x600000, 0x603fff) AM_READ(hd68k_port0_r)
@@ -558,7 +558,7 @@ static ADDRESS_MAP_START( driver_68k_map, AS_PROGRAM, 16, harddriv_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( driver_gsp_map, AS_PROGRAM, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::driver_gsp_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0000200f) AM_NOP /* hit during self-test */
AM_RANGE(0x02000000, 0x0207ffff) AM_READWRITE(hdgsp_vram_2bpp_r, hdgsp_vram_1bpp_w)
@@ -571,7 +571,7 @@ static ADDRESS_MAP_START( driver_gsp_map, AS_PROGRAM, 16, harddriv_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( driver_msp_map, AS_PROGRAM, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::driver_msp_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("msp_ram")
AM_RANGE(0x00700000, 0x007fffff) AM_RAM AM_SHARE("msp_ram")
@@ -587,7 +587,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( multisync_68k_map, AS_PROGRAM, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::multisync_68k_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x604000, 0x607fff) AM_READWRITE(hd68k_sound_reset_r, hd68k_nwr_w)
@@ -605,7 +605,7 @@ static ADDRESS_MAP_START( multisync_68k_map, AS_PROGRAM, 16, harddriv_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multisync_gsp_map, AS_PROGRAM, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::multisync_gsp_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0000200f) AM_NOP /* hit during self-test */
AM_RANGE(0x02000000, 0x020fffff) AM_READWRITE(hdgsp_vram_2bpp_r, hdgsp_vram_2bpp_w)
@@ -625,7 +625,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( multisync2_68k_map, AS_PROGRAM, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::multisync2_68k_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x604000, 0x607fff) AM_WRITE(hd68k_nwr_w)
@@ -644,7 +644,7 @@ ADDRESS_MAP_END
/* GSP is identical to original multisync */
-static ADDRESS_MAP_START( multisync2_gsp_map, AS_PROGRAM, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::multisync2_gsp_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0000200f) AM_NOP /* hit during self-test */
AM_RANGE(0x02000000, 0x020fffff) AM_READWRITE(hdgsp_vram_2bpp_r, hdgsp_vram_2bpp_w)
@@ -664,14 +664,14 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::adsp_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("adsp_pgm_memory")
AM_RANGE(0x2000, 0x3fff) AM_READNOP // ROM?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::adsp_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("adsp_data")
AM_RANGE(0x2000, 0x2fff) AM_READWRITE(hdadsp_special_r, hdadsp_special_w)
@@ -685,13 +685,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( ds3_program_map, AS_PROGRAM, 32, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::ds3_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("adsp_pgm_memory")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ds3_data_map, AS_DATA, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::ds3_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("adsp_data")
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(hdds3_special_r, hdds3_special_w)
@@ -700,12 +700,12 @@ static ADDRESS_MAP_START( ds3_data_map, AS_DATA, 16, harddriv_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ds3sdsp_program_map, AS_PROGRAM, 32, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::ds3sdsp_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("ds3sdsp_pgm")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ds3sdsp_data_map, AS_DATA, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::ds3sdsp_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(hdds3_sdsp_special_r, hdds3_sdsp_special_w)
AM_RANGE(0x3800, 0x39ff) AM_RAM /* internal RAM */
@@ -713,12 +713,12 @@ static ADDRESS_MAP_START( ds3sdsp_data_map, AS_DATA, 16, harddriv_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ds3xdsp_program_map, AS_PROGRAM, 32, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::ds3xdsp_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("ds3xdsp_pgm")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ds3xdsp_data_map, AS_DATA, 16, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::ds3xdsp_data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM // TODO
AM_RANGE(0x3800, 0x39ff) AM_RAM /* internal RAM */
@@ -733,7 +733,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsk_dsp32_map, AS_PROGRAM, 32, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::dsk_dsp32_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x001fff) AM_RAM
AM_RANGE(0x600000, 0x63ffff) AM_RAM AM_SHARE("dsp32_ram")
@@ -748,7 +748,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsk2_dsp32_map, AS_PROGRAM, 32, harddriv_state )
+ADDRESS_MAP_START(harddriv_state::dsk2_dsp32_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x001fff) AM_RAM
AM_RANGE(0x200000, 0x23ffff) AM_RAM
diff --git a/src/mame/drivers/harriet.cpp b/src/mame/drivers/harriet.cpp
index eb720140ee2..6ad1fec992a 100644
--- a/src/mame/drivers/harriet.cpp
+++ b/src/mame/drivers/harriet.cpp
@@ -41,6 +41,7 @@ public:
void kbd_put(u8 data);
void harriet(machine_config &config);
+ void harriet_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -108,7 +109,7 @@ READ8_MEMBER(harriet_state::keyboard_status_r)
return res;
}
-static ADDRESS_MAP_START( harriet_map, AS_PROGRAM, 16, harriet_state )
+ADDRESS_MAP_START(harriet_state::harriet_map)
AM_RANGE(0x000000, 0x007fff) AM_ROM
AM_RANGE(0x040000, 0x040fff) AM_RAM // NVRAM
AM_RANGE(0x7f0000, 0x7fffff) AM_RAM // todo: boundaries, 0x7fe000 - 0x7fffff tested on boot
diff --git a/src/mame/drivers/hazelgr.cpp b/src/mame/drivers/hazelgr.cpp
index d70189a1e6b..b117fb4a3df 100644
--- a/src/mame/drivers/hazelgr.cpp
+++ b/src/mame/drivers/hazelgr.cpp
@@ -23,18 +23,20 @@ public:
{ }
void haze(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, haze_state )
+ADDRESS_MAP_START(haze_state::mem_map)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x9000, 0x9fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, haze_state )
+ADDRESS_MAP_START(haze_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ctc1", z80ctc_device, read, write) // irq 17E0 => 0183(ch3)
diff --git a/src/mame/drivers/hazeltin.cpp b/src/mame/drivers/hazeltin.cpp
index c8928fe3faf..884bd617c80 100644
--- a/src/mame/drivers/hazeltin.cpp
+++ b/src/mame/drivers/hazeltin.cpp
@@ -166,6 +166,8 @@ public:
NETDEV_ANALOG_CALLBACK_MEMBER(tvinterq_cb);
void hazl1500(machine_config &config);
+ void hazl1500_io(address_map &map);
+ void hazl1500_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<netlist_mame_device> m_video_board;
@@ -473,14 +475,14 @@ WRITE8_MEMBER(hazl1500_state::refresh_address_w)
m_cpu_db7->write((data >> 7) & 1);
}
-static ADDRESS_MAP_START(hazl1500_mem, AS_PROGRAM, 8, hazl1500_state)
+ADDRESS_MAP_START(hazl1500_state::hazl1500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x3000, 0x377f) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0x3780, 0x37ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(hazl1500_io, AS_IO, 8, hazl1500_state)
+ADDRESS_MAP_START(hazl1500_state::hazl1500_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_READWRITE(status_reg_2_r, status_reg_3_w)
AM_RANGE(0xbf, 0xbf) AM_READWRITE(uart_r, uart_w)
diff --git a/src/mame/drivers/hcastle.cpp b/src/mame/drivers/hcastle.cpp
index ec8d21eda1c..8116878c3ac 100644
--- a/src/mame/drivers/hcastle.cpp
+++ b/src/mame/drivers/hcastle.cpp
@@ -41,7 +41,7 @@ WRITE8_MEMBER(hcastle_state::hcastle_coin_w)
-static ADDRESS_MAP_START( hcastle_map, AS_PROGRAM, 8, hcastle_state )
+ADDRESS_MAP_START(hcastle_state::hcastle_map)
AM_RANGE(0x0000, 0x0007) AM_WRITE(hcastle_pf1_control_w)
AM_RANGE(0x0020, 0x003f) AM_RAM /* rowscroll? */
AM_RANGE(0x0200, 0x0207) AM_WRITE(hcastle_pf2_control_w)
@@ -76,7 +76,7 @@ WRITE8_MEMBER(hcastle_state::sound_bank_w)
m_k007232->set_bank(bank_A, bank_B );
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, hcastle_state )
+ADDRESS_MAP_START(hcastle_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9800, 0x987f) AM_DEVREADWRITE("k051649", k051649_device, k051649_waveform_r, k051649_waveform_w)
diff --git a/src/mame/drivers/headonb.cpp b/src/mame/drivers/headonb.cpp
index cff093c9cc0..d55fab7a839 100644
--- a/src/mame/drivers/headonb.cpp
+++ b/src/mame/drivers/headonb.cpp
@@ -57,6 +57,8 @@ public:
TILE_GET_INFO_MEMBER(get_tile_info);
void headonb(machine_config &config);
+ void headonb_io_map(address_map &map);
+ void headonb_map(address_map &map);
};
@@ -96,13 +98,13 @@ WRITE8_MEMBER(headonb_state::video_ram_w)
m_tilemap->mark_tile_dirty(offset);
}
-static ADDRESS_MAP_START( headonb_map, AS_PROGRAM, 8, headonb_state )
+ADDRESS_MAP_START(headonb_state::headonb_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_MIRROR(0x4000)
AM_RANGE(0xe000, 0xe3ff) AM_RAM_WRITE(video_ram_w) AM_SHARE("video_ram")
AM_RANGE(0xff00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( headonb_io_map, AS_IO, 8, headonb_state )
+ADDRESS_MAP_START(headonb_state::headonb_io_map)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x04, 0x04) AM_READ_PORT("IN1")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hec2hrp.cpp b/src/mame/drivers/hec2hrp.cpp
index d4a5e2c17bf..1925a86e00b 100644
--- a/src/mame/drivers/hec2hrp.cpp
+++ b/src/mame/drivers/hec2hrp.cpp
@@ -90,7 +90,7 @@
/*****************************************************************************/
-static ADDRESS_MAP_START(hecdisc2_mem, AS_PROGRAM, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hecdisc2_mem)
/*****************************************************************************/
ADDRESS_MAP_UNMAP_HIGH
@@ -101,7 +101,7 @@ static ADDRESS_MAP_START(hecdisc2_mem, AS_PROGRAM, 8, hec2hrp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hecdisc2_io , AS_IO, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hecdisc2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// ROM Page managing
@@ -118,7 +118,7 @@ static ADDRESS_MAP_START( hecdisc2_io , AS_IO, 8, hec2hrp_state )
ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START(hec2hrp_mem, AS_PROGRAM, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hec2hrp_mem)
/*****************************************************************************/
ADDRESS_MAP_UNMAP_HIGH
/* Main ROM page*/
@@ -142,7 +142,7 @@ static ADDRESS_MAP_START(hec2hrp_mem, AS_PROGRAM, 8, hec2hrp_state )
ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START(hec2hrx_mem, AS_PROGRAM, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hec2hrx_mem)
/*****************************************************************************/
ADDRESS_MAP_UNMAP_HIGH
/* Main ROM page*/
@@ -165,19 +165,19 @@ static ADDRESS_MAP_START(hec2hrx_mem, AS_PROGRAM, 8, hec2hrp_state )
AM_RANGE(0xc000,0xffff) AM_RAMBANK("bank1") AM_SHARE("hector_videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hec2hrp_io , AS_IO, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hec2hrp_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x000,0x0ff) AM_READWRITE(hector_io_8255_r, hector_io_8255_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hec2hrx_io , AS_IO, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hec2hrx_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0f0,0x0ff) AM_READWRITE(hector_io_8255_r, hector_io_8255_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hec2mdhrx_io , AS_IO, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hec2mdhrx_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
@@ -187,14 +187,14 @@ static ADDRESS_MAP_START( hec2mdhrx_io , AS_IO, 8, hec2hrp_state )
AM_RANGE(0x0f0,0x0ff) AM_READWRITE(hector_io_8255_r, hector_io_8255_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hec2mx40_io , AS_IO, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hec2mx40_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x000,0x0ef) AM_WRITE(hector_mx40_io_port_w )
AM_RANGE(0x0f0,0x0f3) AM_READWRITE(hector_io_8255_r, hector_io_8255_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hec2mx80_io , AS_IO, 8, hec2hrp_state )
+ADDRESS_MAP_START(hec2hrp_state::hec2mx80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x000,0x0ef) AM_WRITE(hector_mx80_io_port_w )
diff --git a/src/mame/drivers/hexion.cpp b/src/mame/drivers/hexion.cpp
index 12b4a5bb23e..7ae6580caea 100644
--- a/src/mame/drivers/hexion.cpp
+++ b/src/mame/drivers/hexion.cpp
@@ -121,7 +121,7 @@ WRITE8_MEMBER(hexion_state::ccu_int_time_w)
m_ccu_int_time = data;
}
-static ADDRESS_MAP_START( hexion_map, AS_PROGRAM, 8, hexion_state )
+ADDRESS_MAP_START(hexion_state::hexion_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM
@@ -147,7 +147,7 @@ static ADDRESS_MAP_START( hexion_map, AS_PROGRAM, 8, hexion_state )
AM_RANGE(0xf540, 0xf540) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hexionb_map, AS_PROGRAM, 8, hexion_state )
+ADDRESS_MAP_START(hexion_state::hexionb_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM
diff --git a/src/mame/drivers/hideseek.cpp b/src/mame/drivers/hideseek.cpp
index 5e8b32dcf79..e3b6fec4248 100644
--- a/src/mame/drivers/hideseek.cpp
+++ b/src/mame/drivers/hideseek.cpp
@@ -47,6 +47,7 @@ public:
uint32_t screen_update_hideseek(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void hideseek(machine_config &config);
+ void mem_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
};
@@ -62,7 +63,7 @@ uint32_t hideseek_state::screen_update_hideseek(screen_device &screen, bitmap_in
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 32, hideseek_state )
+ADDRESS_MAP_START(hideseek_state::mem_map)
AM_RANGE(0x00000000, 0x0003ffff) AM_ROM // On-chip ROM
AM_RANGE(0x00200000, 0x0023ffff) AM_RAM // CS0
AM_RANGE(0x00400000, 0x005fffff) AM_ROM AM_REGION("prg", 0) // CS1
diff --git a/src/mame/drivers/higemaru.cpp b/src/mame/drivers/higemaru.cpp
index b662f59fc72..c3e24da5083 100644
--- a/src/mame/drivers/higemaru.cpp
+++ b/src/mame/drivers/higemaru.cpp
@@ -33,7 +33,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(higemaru_state::higemaru_scanline)
}
-static ADDRESS_MAP_START( higemaru_map, AS_PROGRAM, 8, higemaru_state )
+ADDRESS_MAP_START(higemaru_state::higemaru_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P2")
diff --git a/src/mame/drivers/highvdeo.cpp b/src/mame/drivers/highvdeo.cpp
index 279a5bf5e85..352bc239360 100644
--- a/src/mame/drivers/highvdeo.cpp
+++ b/src/mame/drivers/highvdeo.cpp
@@ -168,6 +168,21 @@ public:
void newmcard(machine_config &config);
void tv_tcf(machine_config &config);
void tv_vcf(machine_config &config);
+ void brasil_io(address_map &map);
+ void brasil_map(address_map &map);
+ void grancapi_io(address_map &map);
+ void magicbom_io(address_map &map);
+ void newmcard_io(address_map &map);
+ void newmcard_map(address_map &map);
+ void nyjoker_io(address_map &map);
+ void nyjoker_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void tv_ncf_io(address_map &map);
+ void tv_ncf_map(address_map &map);
+ void tv_tcf_io(address_map &map);
+ void tv_tcf_map(address_map &map);
+ void tv_vcf_io(address_map &map);
+ void tv_vcf_map(address_map &map);
};
@@ -310,7 +325,7 @@ WRITE16_MEMBER(highvdeo_state::write1_w)
// popmessage("%04x %04x",t1,t3);
}
-static ADDRESS_MAP_START( tv_vcf_map, AS_PROGRAM, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::tv_vcf_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/
AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x40000, 0x4ffff) AM_RAM AM_SHARE("blit_ram") /*blitter ram*/
@@ -318,7 +333,7 @@ static ADDRESS_MAP_START( tv_vcf_map, AS_PROGRAM, 16, highvdeo_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tv_vcf_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::tv_vcf_io)
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
AM_RANGE(0x0006, 0x0007) AM_WRITE(tv_oki6376_w )
AM_RANGE(0x0008, 0x0009) AM_READ(read0_r )
@@ -359,7 +374,7 @@ WRITE16_MEMBER(highvdeo_state::tv_ncf_oki6376_st_w)
}
}
-static ADDRESS_MAP_START( tv_ncf_map, AS_PROGRAM, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::tv_ncf_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/
AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x20000, 0x2ffff) AM_RAM AM_SHARE("blit_ram") /*blitter ram*/
@@ -367,7 +382,7 @@ static ADDRESS_MAP_START( tv_ncf_map, AS_PROGRAM, 16, highvdeo_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tv_ncf_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::tv_ncf_io)
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
AM_RANGE(0x0008, 0x0009) AM_WRITE(tv_ncf_oki6376_w )
AM_RANGE(0x000a, 0x000b) AM_WRITE(tv_ncf_oki6376_st_w )
@@ -380,7 +395,7 @@ static ADDRESS_MAP_START( tv_ncf_io, AS_IO, 16, highvdeo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nyjoker_map, AS_PROGRAM, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::nyjoker_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/
AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x10000, 0x1ffff) AM_RAM AM_SHARE("blit_ram") /*blitter ram*/
@@ -388,7 +403,7 @@ static ADDRESS_MAP_START( nyjoker_map, AS_PROGRAM, 16, highvdeo_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nyjoker_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::nyjoker_io)
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
AM_RANGE(0x0002, 0x0003) AM_WRITENOP // alternate coin counter (bits 0 and 2)
AM_RANGE(0x0004, 0x0005) AM_WRITE(nyj_write2_w ) // coin and note counter
@@ -432,7 +447,7 @@ WRITE16_MEMBER(highvdeo_state::tv_tcf_bankselect_w)
membank("bank1")->set_base(&ROM[bankaddress]);
}
-static ADDRESS_MAP_START( tv_tcf_map, AS_PROGRAM, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::tv_tcf_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/
AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x40000, 0x5d4bf) AM_RAM AM_SHARE("blit_ram") /*blitter ram*/
@@ -441,7 +456,7 @@ static ADDRESS_MAP_START( tv_tcf_map, AS_PROGRAM, 16, highvdeo_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tv_tcf_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::tv_tcf_io)
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
AM_RANGE(0x0006, 0x0007) AM_WRITE(tv_oki6376_w )
AM_RANGE(0x0008, 0x0009) AM_READ(read0_r )
@@ -489,7 +504,7 @@ WRITE16_MEMBER(highvdeo_state::write2_w)
}
}
-static ADDRESS_MAP_START( newmcard_map, AS_PROGRAM, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::newmcard_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/
AM_RANGE(0x00400, 0x0ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x40000, 0x7ffff) AM_RAM AM_SHARE("blit_ram") /*blitter ram*/
@@ -497,7 +512,7 @@ static ADDRESS_MAP_START( newmcard_map, AS_PROGRAM, 16, highvdeo_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( newmcard_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::newmcard_io)
AM_RANGE(0x0030, 0x0033) AM_READ(newmcard_status_r )
AM_RANGE(0x0030, 0x0031) AM_WRITE(tv_tcf_bankselect_w )
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
@@ -609,7 +624,7 @@ READ16_MEMBER(highvdeo_state::magicbom_status_r)
}
-static ADDRESS_MAP_START( brasil_map, AS_PROGRAM, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::brasil_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/
AM_RANGE(0x00400, 0x0ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x40000, 0x7ffff) AM_RAM AM_SHARE("blit_ram") /*blitter ram*/
@@ -617,7 +632,7 @@ static ADDRESS_MAP_START( brasil_map, AS_PROGRAM, 16, highvdeo_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( brasil_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::brasil_io)
AM_RANGE(0x0030, 0x0033) AM_READ(brasil_status_r )
AM_RANGE(0x0030, 0x0031) AM_WRITE(brasil_status_w )
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
@@ -630,7 +645,7 @@ static ADDRESS_MAP_START( brasil_io, AS_IO, 16, highvdeo_state )
// AM_RANGE(0xffa2, 0xffa3) AM_WRITE
ADDRESS_MAP_END
-static ADDRESS_MAP_START( grancapi_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::grancapi_io)
AM_RANGE(0x0030, 0x0033) AM_READ(grancapi_status_r )
AM_RANGE(0x000e, 0x000f) AM_WRITE(grancapi_status_w )
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
@@ -643,7 +658,7 @@ static ADDRESS_MAP_START( grancapi_io, AS_IO, 16, highvdeo_state )
// AM_RANGE(0xffa2, 0xffa3) AM_WRITE
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magicbom_io, AS_IO, 16, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::magicbom_io)
AM_RANGE(0x0030, 0x0033) AM_READ(magicbom_status_r )
AM_RANGE(0x000e, 0x000f) AM_WRITE(grancapi_status_w )
AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
@@ -1128,7 +1143,7 @@ INTERRUPT_GEN_MEMBER(highvdeo_state::vblank_irq_80186)
device.execute().set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, highvdeo_state )
+ADDRESS_MAP_START(highvdeo_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hikaru.cpp b/src/mame/drivers/hikaru.cpp
index 5b1aae60e3f..a934abdafc7 100644
--- a/src/mame/drivers/hikaru.cpp
+++ b/src/mame/drivers/hikaru.cpp
@@ -398,6 +398,8 @@ public:
uint32_t screen_update_hikaru(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void hikaru(machine_config &config);
+ void hikaru_map(address_map &map);
+ void hikaru_map_slave(address_map &map);
};
void hikaru_state::video_start()
@@ -443,7 +445,7 @@ INPUT_PORTS_END
*/
-static ADDRESS_MAP_START( hikaru_map, AS_PROGRAM, 64, hikaru_state )
+ADDRESS_MAP_START(hikaru_state::hikaru_map)
// Area 0
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_SHARE("share1") // boot ROM
AM_RANGE(0x00400000, 0x00400007) AM_NOP // unknown
@@ -472,7 +474,7 @@ static ADDRESS_MAP_START( hikaru_map, AS_PROGRAM, 64, hikaru_state )
AM_RANGE(0x1b000000, 0x1b7fffff) AM_NOP // GPU Texture RAM and framebuffer (a 2048x2048x16-bit sheet?)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hikaru_map_slave, AS_PROGRAM, 64, hikaru_state )
+ADDRESS_MAP_START(hikaru_state::hikaru_map_slave)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x001FFFFF) AM_ROM AM_SHARE("share1")
AM_RANGE(0x0C000000, 0x0DFFFFFF) AM_RAM
diff --git a/src/mame/drivers/himesiki.cpp b/src/mame/drivers/himesiki.cpp
index 6b40250d256..f8a9521ab13 100644
--- a/src/mame/drivers/himesiki.cpp
+++ b/src/mame/drivers/himesiki.cpp
@@ -123,7 +123,7 @@ WRITE8_MEMBER(himesiki_state::himesiki_sound_w)
/****************************************************************************/
-static ADDRESS_MAP_START( himesiki_prm0, AS_PROGRAM, 8, himesiki_state )
+ADDRESS_MAP_START(himesiki_state::himesiki_prm0)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa0ff) AM_RAM AM_SHARE("spriteram")
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( himesiki_prm0, AS_PROGRAM, 8, himesiki_state )
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( himesiki_iom0, AS_IO, 8, himesiki_state )
+ADDRESS_MAP_START(himesiki_state::himesiki_iom0)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write) // inputs
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) // dips + rombank
@@ -145,12 +145,12 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( himesiki_prm1, AS_PROGRAM, 8, himesiki_state )
+ADDRESS_MAP_START(himesiki_state::himesiki_prm1)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( himesiki_iom1, AS_IO, 8, himesiki_state )
+ADDRESS_MAP_START(himesiki_state::himesiki_iom1)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym2203", ym2203_device, read, write)
AM_RANGE(0x04, 0x04) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/hitme.cpp b/src/mame/drivers/hitme.cpp
index b09f539d268..a052289871d 100644
--- a/src/mame/drivers/hitme.cpp
+++ b/src/mame/drivers/hitme.cpp
@@ -220,7 +220,7 @@ WRITE8_MEMBER(hitme_state::output_port_1_w)
upper 8 bits.
*/
-static ADDRESS_MAP_START( hitme_map, AS_PROGRAM, 8, hitme_state )
+ADDRESS_MAP_START(hitme_state::hitme_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x09ff) AM_ROM
AM_RANGE(0x0c00, 0x0eff) AM_RAM_WRITE(hitme_vidram_w) AM_SHARE("videoram")
@@ -236,7 +236,7 @@ static ADDRESS_MAP_START( hitme_map, AS_PROGRAM, 8, hitme_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hitme_portmap, AS_IO, 8, hitme_state )
+ADDRESS_MAP_START(hitme_state::hitme_portmap)
AM_RANGE(0x14, 0x14) AM_READ(hitme_port_0_r)
AM_RANGE(0x15, 0x15) AM_READ(hitme_port_1_r)
AM_RANGE(0x16, 0x16) AM_READ(hitme_port_2_r)
diff --git a/src/mame/drivers/hitpoker.cpp b/src/mame/drivers/hitpoker.cpp
index 2c26b616c25..2e10fe90e2d 100644
--- a/src/mame/drivers/hitpoker.cpp
+++ b/src/mame/drivers/hitpoker.cpp
@@ -92,6 +92,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void hitpoker(machine_config &config);
+ void hitpoker_io(address_map &map);
+ void hitpoker_map(address_map &map);
};
@@ -255,7 +257,7 @@ READ8_MEMBER(hitpoker_state::test_r)
#endif
/* overlap empty rom addresses */
-static ADDRESS_MAP_START( hitpoker_map, AS_PROGRAM, 8, hitpoker_state )
+ADDRESS_MAP_START(hitpoker_state::hitpoker_map)
AM_RANGE(0x0000, 0xbdff) AM_ROM
AM_RANGE(0xbf00, 0xffff) AM_ROM
@@ -278,7 +280,7 @@ static ADDRESS_MAP_START( hitpoker_map, AS_PROGRAM, 8, hitpoker_state )
AM_RANGE(0xe000, 0xefff) AM_READWRITE(hitpoker_paletteram_r,hitpoker_paletteram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hitpoker_io, AS_IO, 8, hitpoker_state )
+ADDRESS_MAP_START(hitpoker_state::hitpoker_io)
AM_RANGE(MC68HC11_IO_PORTA, MC68HC11_IO_PORTA) AM_READWRITE(hitpoker_pic_r,hitpoker_pic_w) AM_SHARE("sys_regs")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hk68v10.cpp b/src/mame/drivers/hk68v10.cpp
index c4839a669c3..019a8a866a7 100644
--- a/src/mame/drivers/hk68v10.cpp
+++ b/src/mame/drivers/hk68v10.cpp
@@ -210,6 +210,7 @@ virtual void machine_start () override;
virtual void machine_reset () override;
void hk68v10(machine_config &config);
+void hk68v10_mem(address_map &map);
protected:
private:
@@ -221,7 +222,7 @@ required_device<scc8530_device> m_sccterm;
uint16_t m_sysram[4];
};
-static ADDRESS_MAP_START (hk68v10_mem, AS_PROGRAM, 16, hk68v10_state)
+ADDRESS_MAP_START(hk68v10_state::hk68v10_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x000000, 0x000007) AM_RAM AM_WRITE (bootvect_w) /* After first write we act as RAM */
AM_RANGE (0x000000, 0x000007) AM_ROM AM_READ (bootvect_r) /* ROM mirror just durin reset */
diff --git a/src/mame/drivers/hnayayoi.cpp b/src/mame/drivers/hnayayoi.cpp
index 7cfdb3d7959..3d4e41ff393 100644
--- a/src/mame/drivers/hnayayoi.cpp
+++ b/src/mame/drivers/hnayayoi.cpp
@@ -105,13 +105,13 @@ WRITE_LINE_MEMBER(hnayayoi_state::nmi_clock_w)
}
-static ADDRESS_MAP_START( hnayayoi_map, AS_PROGRAM, 8, hnayayoi_state )
+ADDRESS_MAP_START(hnayayoi_state::hnayayoi_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hnayayoi_io_map, AS_IO, 8, hnayayoi_state )
+ADDRESS_MAP_START(hnayayoi_state::hnayayoi_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym2203_device, write)
AM_RANGE(0x02, 0x03) AM_DEVREAD("ymsnd", ym2203_device, read)
@@ -130,7 +130,7 @@ static ADDRESS_MAP_START( hnayayoi_io_map, AS_IO, 8, hnayayoi_state )
AM_RANGE(0x62, 0x67) AM_WRITE(dynax_blitter_rev1_param_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hnfubuki_map, AS_PROGRAM, 8, hnayayoi_state )
+ADDRESS_MAP_START(hnayayoi_state::hnfubuki_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0xfeff) AM_ROM
@@ -151,13 +151,13 @@ static ADDRESS_MAP_START( hnfubuki_map, AS_PROGRAM, 8, hnayayoi_state )
AM_RANGE(0xff62, 0xff67) AM_WRITE(dynax_blitter_rev1_param_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( untoucha_map, AS_PROGRAM, 8, hnayayoi_state )
+ADDRESS_MAP_START(hnayayoi_state::untoucha_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( untoucha_io_map, AS_IO, 8, hnayayoi_state )
+ADDRESS_MAP_START(hnayayoi_state::untoucha_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_DEVWRITE("ymsnd", ym2203_device, control_port_w)
AM_RANGE(0x11, 0x11) AM_DEVREAD("ymsnd", ym2203_device, status_port_r)
diff --git a/src/mame/drivers/hng64.cpp b/src/mame/drivers/hng64.cpp
index 323e8c7c01b..5026b3caea6 100644
--- a/src/mame/drivers/hng64.cpp
+++ b/src/mame/drivers/hng64.cpp
@@ -947,7 +947,7 @@ WRITE16_MEMBER(hng64_state::main_sound_comms_w)
}
-static ADDRESS_MAP_START( hng_map, AS_PROGRAM, 32, hng64_state )
+ADDRESS_MAP_START(hng64_state::hng_map)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x04000000, 0x05ffffff) AM_WRITENOP AM_ROM AM_REGION("gameprg", 0) AM_SHARE("cart")
diff --git a/src/mame/drivers/holeland.cpp b/src/mame/drivers/holeland.cpp
index 8ae1dbe699f..4ef5b226be9 100644
--- a/src/mame/drivers/holeland.cpp
+++ b/src/mame/drivers/holeland.cpp
@@ -30,7 +30,7 @@ WRITE_LINE_MEMBER(holeland_state::coin_counter_w)
machine().bookkeeping().coin_counter_w(0, state);
}
-static ADDRESS_MAP_START( holeland_map, AS_PROGRAM, 8, holeland_state )
+ADDRESS_MAP_START(holeland_state::holeland_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xbfff) AM_ROM
@@ -41,7 +41,7 @@ static ADDRESS_MAP_START( holeland_map, AS_PROGRAM, 8, holeland_state )
AM_RANGE(0xf000, 0xf3ff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crzrally_map, AS_PROGRAM, 8, holeland_state )
+ADDRESS_MAP_START(holeland_state::crzrally_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xe000, 0xe3ff) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
@@ -51,7 +51,7 @@ static ADDRESS_MAP_START( crzrally_map, AS_PROGRAM, 8, holeland_state )
AM_RANGE(0xf800, 0xf807) AM_DEVWRITE("latch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, holeland_state )
+ADDRESS_MAP_START(holeland_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r) /* ? */
AM_RANGE(0x04, 0x04) AM_DEVREAD("ay1", ay8910_device, data_r)
diff --git a/src/mame/drivers/homedata.cpp b/src/mame/drivers/homedata.cpp
index 4eb78392ea3..fa07bb8ba50 100644
--- a/src/mame/drivers/homedata.cpp
+++ b/src/mame/drivers/homedata.cpp
@@ -528,7 +528,7 @@ WRITE8_MEMBER(homedata_state::bankswitch_w)
/********************************************************************************/
-static ADDRESS_MAP_START( mrokumei_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::mrokumei_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(mrokumei_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x6fff) AM_RAM /* work ram */
@@ -549,7 +549,7 @@ static ADDRESS_MAP_START( mrokumei_map, AS_PROGRAM, 8, homedata_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrokumei_sound_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::mrokumei_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
// TODO: might be that the entire area is sound_bank_w
AM_RANGE(0xfffc, 0xfffd) AM_WRITENOP /* stack writes happen here, but there's no RAM */
@@ -557,7 +557,7 @@ static ADDRESS_MAP_START( mrokumei_sound_map, AS_PROGRAM, 8, homedata_state )
AM_RANGE(0xffbf, 0xffbf) AM_WRITE(mrokumei_sound_bank_w) // hourouki mirror
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrokumei_sound_io_map, AS_IO, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::mrokumei_sound_io_map)
AM_RANGE(0x0000, 0xffff) AM_READ(mrokumei_sound_io_r) /* read address is 16-bit */
AM_RANGE(0x0040, 0x0040) AM_MIRROR(0xff00) AM_DEVWRITE("dac", dac_byte_interface, write) /* write address is only 8-bit */
// hourouki mirror...
@@ -566,7 +566,7 @@ ADDRESS_MAP_END
/********************************************************************************/
-static ADDRESS_MAP_START( reikaids_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::reikaids_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(reikaids_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x6fff) AM_RAM /* work RAM */
@@ -585,14 +585,14 @@ static ADDRESS_MAP_START( reikaids_map, AS_PROGRAM, 8, homedata_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( reikaids_upd7807_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::reikaids_upd7807_map)
AM_RANGE(0x0000, 0xfeff) AM_ROMBANK("bank2") /* External ROM (Banked) */
ADDRESS_MAP_END
/**************************************************************************/
-static ADDRESS_MAP_START( pteacher_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::pteacher_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(mrokumei_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4000, 0x5eff) AM_RAM
AM_RANGE(0x5f00, 0x5fff) AM_RAM
@@ -611,7 +611,7 @@ static ADDRESS_MAP_START( pteacher_map, AS_PROGRAM, 8, homedata_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pteacher_upd7807_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::pteacher_upd7807_map)
AM_RANGE(0x0000, 0x0000) AM_WRITE(pteacher_snd_answer_w)
AM_RANGE(0x0000, 0xfeff) AM_ROMBANK("bank2") /* External ROM (Banked) */
ADDRESS_MAP_END
@@ -1382,11 +1382,11 @@ static INPUT_PORTS_START( mirderby )
INPUT_PORTS_END
-static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::cpu0_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::cpu1_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM // videoram
AM_RANGE(0x4000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x6fff) AM_RAM /* work ram */
@@ -1409,7 +1409,7 @@ WRITE8_MEMBER(homedata_state::mirderby_prot_w)
}
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, homedata_state )
+ADDRESS_MAP_START(homedata_state::cpu2_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(mrokumei_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x6fff) AM_RAM /* work ram */
diff --git a/src/mame/drivers/homelab.cpp b/src/mame/drivers/homelab.cpp
index 4a9861268ec..1799824d215 100644
--- a/src/mame/drivers/homelab.cpp
+++ b/src/mame/drivers/homelab.cpp
@@ -79,6 +79,11 @@ public:
void homelab3(machine_config &config);
void brailab4(machine_config &config);
void homelab(machine_config &config);
+ void brailab4_io(address_map &map);
+ void brailab4_mem(address_map &map);
+ void homelab2_mem(address_map &map);
+ void homelab3_io(address_map &map);
+ void homelab3_mem(address_map &map);
private:
const uint8_t *m_p_videoram;
bool m_nmi;
@@ -201,7 +206,7 @@ READ8_MEMBER( homelab_state::exxx_r )
/* Address maps */
-static ADDRESS_MAP_START(homelab2_mem, AS_PROGRAM, 8, homelab_state)
+ADDRESS_MAP_START(homelab_state::homelab2_mem)
AM_RANGE( 0x0000, 0x07ff ) AM_ROM // ROM 1
AM_RANGE( 0x0800, 0x0fff ) AM_ROM // ROM 2
AM_RANGE( 0x1000, 0x17ff ) AM_ROM // ROM 3
@@ -215,21 +220,21 @@ static ADDRESS_MAP_START(homelab2_mem, AS_PROGRAM, 8, homelab_state)
AM_RANGE( 0xe000, 0xe0ff ) AM_READ(cass2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(homelab3_mem, AS_PROGRAM, 8, homelab_state)
+ADDRESS_MAP_START(homelab_state::homelab3_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4000, 0x7fff ) AM_RAM
AM_RANGE( 0xe800, 0xefff ) AM_READ(exxx_r)
AM_RANGE( 0xf800, 0xffff ) AM_RAM AM_REGION("maincpu",0xf800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(homelab3_io, AS_IO, 8, homelab_state)
+ADDRESS_MAP_START(homelab_state::homelab3_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x7f, 0x7f ) AM_WRITE(port7f_w)
AM_RANGE( 0xff, 0xff ) AM_WRITE(portff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(brailab4_mem, AS_PROGRAM, 8, homelab_state)
+ADDRESS_MAP_START(homelab_state::brailab4_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4000, 0xcfff ) AM_RAM
AM_RANGE( 0xd000, 0xdfff ) AM_ROM
@@ -237,7 +242,7 @@ static ADDRESS_MAP_START(brailab4_mem, AS_PROGRAM, 8, homelab_state)
AM_RANGE( 0xf800, 0xffff ) AM_RAMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(brailab4_io, AS_IO, 8, homelab_state)
+ADDRESS_MAP_START(homelab_state::brailab4_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0xf8, 0xf9 ) AM_DEVREADWRITE("mea8000", mea8000_device, read, write)
diff --git a/src/mame/drivers/homerun.cpp b/src/mame/drivers/homerun.cpp
index e5af6980482..626fbcefd7d 100644
--- a/src/mame/drivers/homerun.cpp
+++ b/src/mame/drivers/homerun.cpp
@@ -103,7 +103,7 @@ WRITE8_MEMBER(homerun_state::homerun_d7756_sample_w)
m_d7756->port_w(space, 0, data);
}
-static ADDRESS_MAP_START( homerun_memmap, AS_PROGRAM, 8, homerun_state )
+ADDRESS_MAP_START(homerun_state::homerun_memmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x9fff) AM_RAM_WRITE(homerun_videoram_w) AM_SHARE("videoram")
@@ -112,7 +112,7 @@ static ADDRESS_MAP_START( homerun_memmap, AS_PROGRAM, 8, homerun_state )
AM_RANGE(0xc000, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( homerun_iomap, AS_IO, 8, homerun_state )
+ADDRESS_MAP_START(homerun_state::homerun_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_WRITE(homerun_d7756_sample_w)
AM_RANGE(0x20, 0x20) AM_WRITE(homerun_control_w)
diff --git a/src/mame/drivers/homez80.cpp b/src/mame/drivers/homez80.cpp
index 4130d6498f7..5b10782efd9 100644
--- a/src/mame/drivers/homez80.cpp
+++ b/src/mame/drivers/homez80.cpp
@@ -40,6 +40,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void homez80(machine_config &config);
+ void homez80_io(address_map &map);
+ void homez80_mem(address_map &map);
private:
bool m_irq;
virtual void machine_reset() override;
@@ -56,7 +58,7 @@ READ8_MEMBER( homez80_state::homez80_keyboard_r )
return ioport(kbdrow)->read();
}
-static ADDRESS_MAP_START(homez80_mem, AS_PROGRAM, 8, homez80_state)
+ADDRESS_MAP_START(homez80_state::homez80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_ROM // Monitor
AM_RANGE( 0x2000, 0x23ff ) AM_RAM AM_SHARE("videoram") // Video RAM
@@ -64,7 +66,7 @@ static ADDRESS_MAP_START(homez80_mem, AS_PROGRAM, 8, homez80_state)
AM_RANGE( 0x8000, 0xffff ) AM_RAM // 32 K RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( homez80_io, AS_IO, 8, homez80_state)
+ADDRESS_MAP_START(homez80_state::homez80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/horizon.cpp b/src/mame/drivers/horizon.cpp
index e10030314dc..caef58d53cb 100644
--- a/src/mame/drivers/horizon.cpp
+++ b/src/mame/drivers/horizon.cpp
@@ -63,6 +63,8 @@ public:
void horizon(machine_config &config);
void horizon2mhz(machine_config &config);
+ void horizon_io(address_map &map);
+ void horizon_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -80,7 +82,7 @@ private:
// ADDRESS_MAP( horizon_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( horizon_mem, AS_PROGRAM, 8, horizon_state )
+ADDRESS_MAP_START(horizon_state::horizon_mem)
AM_RANGE(0x0000, 0xe7ff) AM_RAM
AM_RANGE(0xe800, 0xe9ff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0xea01, 0xea01)
@@ -98,7 +100,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( horizon_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( horizon_io, AS_IO, 8, horizon_state )
+ADDRESS_MAP_START(horizon_state::horizon_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hornet.cpp b/src/mame/drivers/hornet.cpp
index 22ca6c8593a..1fcec11eba1 100644
--- a/src/mame/drivers/hornet.cpp
+++ b/src/mame/drivers/hornet.cpp
@@ -442,6 +442,11 @@ public:
void hornet_2board(machine_config &config);
void hornet_2board_v2(machine_config &config);
void hornet(machine_config &config);
+ void gn680_memmap(address_map &map);
+ void hornet_map(address_map &map);
+ void sharc0_map(address_map &map);
+ void sharc1_map(address_map &map);
+ void sound_memmap(address_map &map);
};
@@ -740,7 +745,7 @@ WRITE16_MEMBER(hornet_state::soundtimer_count_w)
/*****************************************************************************/
-static ADDRESS_MAP_START( hornet_map, AS_PROGRAM, 32, hornet_state )
+ADDRESS_MAP_START(hornet_state::hornet_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("workram") /* Work RAM */
AM_RANGE(0x74000000, 0x740000ff) AM_READWRITE(hornet_k037122_reg_r, hornet_k037122_reg_w)
AM_RANGE(0x74020000, 0x7403ffff) AM_READWRITE(hornet_k037122_sram_r, hornet_k037122_sram_w)
@@ -765,7 +770,7 @@ ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, hornet_state )
+ADDRESS_MAP_START(hornet_state::sound_memmap)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* Work RAM */
AM_RANGE(0x200000, 0x200fff) AM_DEVREADWRITE("rfsnd", rf5c400_device, rf5c400_r, rf5c400_w) /* Ricoh RF5C400 */
@@ -806,7 +811,7 @@ WRITE16_MEMBER(hornet_state::gn680_latch_w)
// WORD at 30000e: IRQ 4 tests bits 6 and 7, IRQ5 tests bits 4 and 5
// (vsync and hsync status for each of the two screens?)
-static ADDRESS_MAP_START( gn680_memmap, AS_PROGRAM, 16, hornet_state )
+ADDRESS_MAP_START(hornet_state::gn680_memmap)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM
AM_RANGE(0x300000, 0x300001) AM_WRITE(gn680_sysctrl)
@@ -837,7 +842,7 @@ WRITE32_MEMBER(hornet_state::dsp_dataram1_w)
m_sharc_dataram1[offset] = data;
}
-static ADDRESS_MAP_START( sharc0_map, AS_DATA, 32, hornet_state )
+ADDRESS_MAP_START(hornet_state::sharc0_map)
AM_RANGE(0x0400000, 0x041ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w)
AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram0_r, dsp_dataram0_w) AM_SHARE("sharc_dataram0")
AM_RANGE(0x1400000, 0x14fffff) AM_RAM
@@ -847,7 +852,7 @@ static ADDRESS_MAP_START( sharc0_map, AS_DATA, 32, hornet_state )
AM_RANGE(0x3600000, 0x37fffff) AM_ROMBANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sharc1_map, AS_DATA, 32, hornet_state )
+ADDRESS_MAP_START(hornet_state::sharc1_map)
AM_RANGE(0x0400000, 0x041ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_1_shared_sharc_r, cgboard_1_shared_sharc_w)
AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram1_r, dsp_dataram1_w) AM_SHARE("sharc_dataram1")
AM_RANGE(0x1400000, 0x14fffff) AM_RAM
diff --git a/src/mame/drivers/hotblock.cpp b/src/mame/drivers/hotblock.cpp
index a0492d23028..0358e90b5b4 100644
--- a/src/mame/drivers/hotblock.cpp
+++ b/src/mame/drivers/hotblock.cpp
@@ -78,6 +78,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void hotblock(machine_config &config);
+ void hotblock_io(address_map &map);
+ void hotblock_map(address_map &map);
};
@@ -128,13 +130,13 @@ WRITE8_MEMBER(hotblock_state::video_write)
}
}
-static ADDRESS_MAP_START( hotblock_map, AS_PROGRAM, 8, hotblock_state )
+ADDRESS_MAP_START(hotblock_state::hotblock_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM
AM_RANGE(0x10000, 0x1ffff) AM_READWRITE(video_read, video_write) AM_SHARE("vram")
AM_RANGE(0x20000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotblock_io, AS_IO, 8, hotblock_state )
+ADDRESS_MAP_START(hotblock_state::hotblock_io)
AM_RANGE(0x0000, 0x0000) AM_WRITE(port0_w)
AM_RANGE(0x0004, 0x0004) AM_READWRITE(port4_r, port4_w)
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("aysnd", ym2149_device, address_data_w)
diff --git a/src/mame/drivers/hotstuff.cpp b/src/mame/drivers/hotstuff.cpp
index 870f3c4770b..5e79a0781c6 100644
--- a/src/mame/drivers/hotstuff.cpp
+++ b/src/mame/drivers/hotstuff.cpp
@@ -15,13 +15,16 @@ public:
hotstuff_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_bitmapram(*this, "bitmapram"),
- m_maincpu(*this, "maincpu") { }
+ m_maincpu(*this, "maincpu"),
+ m_rtc(*this, "rtc") { }
required_shared_ptr<uint16_t> m_bitmapram;
virtual void video_start() override;
uint32_t screen_update_hotstuff(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
+ required_device<mc146818_device> m_rtc;
void hotstuff(machine_config &config);
+ void hotstuff_map(address_map &map);
};
@@ -72,7 +75,7 @@ uint32_t hotstuff_state::screen_update_hotstuff(screen_device &screen, bitmap_rg
return 0;
}
-static ADDRESS_MAP_START( hotstuff_map, AS_PROGRAM, 16, hotstuff_state )
+ADDRESS_MAP_START(hotstuff_state::hotstuff_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_NOP //ROM AM_REGION("data", 0)
@@ -80,7 +83,7 @@ static ADDRESS_MAP_START( hotstuff_map, AS_PROGRAM, 16, hotstuff_state )
AM_RANGE(0x600000, 0x600003) AM_DEVREADWRITE8("scc1", z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xffff)
AM_RANGE(0x620000, 0x620003) AM_DEVREADWRITE8("scc2", z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xffff)
- AM_RANGE(0x680000, 0x680001) AM_DEVREADWRITE8_MOD("rtc", mc146818_device, read, write, xor<1>, 0xffff)
+ ;map(0x680000, 0x680001).lrw8("rtc_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_rtc->read(space, offset^1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_rtc->write(space, offset^1, data, mem_mask); });
AM_RANGE(0x980000, 0x9bffff) AM_RAM AM_SHARE("bitmapram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hp16500.cpp b/src/mame/drivers/hp16500.cpp
index debb08162f5..d154259eca2 100644
--- a/src/mame/drivers/hp16500.cpp
+++ b/src/mame/drivers/hp16500.cpp
@@ -103,6 +103,10 @@ public:
void hp16500a(machine_config &config);
void hp1651(machine_config &config);
void hp1650(machine_config &config);
+ void hp16500_map(address_map &map);
+ void hp16500a_map(address_map &map);
+ void hp1650_map(address_map &map);
+ void hp1651_map(address_map &map);
private:
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
};
@@ -217,7 +221,7 @@ WRITE_LINE_MEMBER(hp16500_state::irq_2)
m_maincpu->set_input_line_and_vector(M68K_IRQ_2, state, M68K_INT_ACK_AUTOVECTOR);
}
-static ADDRESS_MAP_START(hp1650_map, AS_PROGRAM, 16, hp16500_state)
+ADDRESS_MAP_START(hp16500_state::hp1650_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0x201000, 0x201001) AM_WRITE(maskval_w)
@@ -244,7 +248,7 @@ static ADDRESS_MAP_START(hp1650_map, AS_PROGRAM, 16, hp16500_state)
ADDRESS_MAP_END
// like 1650 but moves main RAM to match 16500a
-static ADDRESS_MAP_START(hp1651_map, AS_PROGRAM, 16, hp16500_state)
+ADDRESS_MAP_START(hp16500_state::hp1651_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0x201000, 0x201001) AM_WRITE(maskval_w)
@@ -270,7 +274,7 @@ static ADDRESS_MAP_START(hp1651_map, AS_PROGRAM, 16, hp16500_state)
AM_RANGE(0x980000, 0xa7ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(hp16500a_map, AS_PROGRAM, 16, hp16500_state)
+ADDRESS_MAP_START(hp16500_state::hp16500a_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0x201000, 0x201001) AM_WRITE(maskval_w)
@@ -296,7 +300,7 @@ uint32_t hp16500_state::screen_update_hp16500a(screen_device &screen, bitmap_rgb
return 0;
}
-static ADDRESS_MAP_START(hp16500_map, AS_PROGRAM, 32, hp16500_state)
+ADDRESS_MAP_START(hp16500_state::hp16500_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0x0020f000, 0x0020f003) AM_WRITE(palette_w)
diff --git a/src/mame/drivers/hp2620.cpp b/src/mame/drivers/hp2620.cpp
index 4e3d919ddf0..e5763e38a0a 100644
--- a/src/mame/drivers/hp2620.cpp
+++ b/src/mame/drivers/hp2620.cpp
@@ -33,6 +33,8 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void hp2622(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_region_ptr<u8> m_p_chargen;
@@ -73,12 +75,12 @@ WRITE8_MEMBER(hp2620_state::modem_w)
{
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, hp2620_state )
+ADDRESS_MAP_START(hp2620_state::mem_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, hp2620_state )
+ADDRESS_MAP_START(hp2620_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_READWRITE(nvram_r, nvram_w) AM_SHARE("nvram")
AM_RANGE(0x80, 0x80) AM_READ(keystat_r)
diff --git a/src/mame/drivers/hp2640.cpp b/src/mame/drivers/hp2640.cpp
index 134874c9fa9..e06d12ef870 100644
--- a/src/mame/drivers/hp2640.cpp
+++ b/src/mame/drivers/hp2640.cpp
@@ -154,6 +154,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_beep_exp);
void hp2645(machine_config &config);
+ void cpu_io_map(address_map &map);
+ void cpu_mem_map(address_map &map);
protected:
required_device<i8080a_cpu_device> m_cpu;
required_device<timer_device> m_timer_10ms;
@@ -951,7 +953,7 @@ static INPUT_PORTS_START(hp2645)
PORT_CONFSETTING(0x80, DEF_STR(Off))
INPUT_PORTS_END
-static ADDRESS_MAP_START(cpu_mem_map , AS_PROGRAM , 8 , hp2645_state)
+ADDRESS_MAP_START(hp2645_state::cpu_mem_map)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000 , 0x57ff) AM_ROM
AM_RANGE(0x8100 , 0x8100) AM_READ(async_data_r)
@@ -971,7 +973,7 @@ static ADDRESS_MAP_START(cpu_mem_map , AS_PROGRAM , 8 , hp2645_state)
AM_RANGE(0xc000 , 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(cpu_io_map , AS_IO , 8 , hp2645_state)
+ADDRESS_MAP_START(hp2645_state::cpu_io_map)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x00 , 0xff) AM_WRITE(mode_byte_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hp48.cpp b/src/mame/drivers/hp48.cpp
index 3613bb31872..a1fad9b012c 100644
--- a/src/mame/drivers/hp48.cpp
+++ b/src/mame/drivers/hp48.cpp
@@ -1246,7 +1246,7 @@ ROM_END
run-time.
*/
-static ADDRESS_MAP_START ( hp48, AS_PROGRAM, 8, hp48_state )
+ADDRESS_MAP_START(hp48_state::hp48)
AM_RANGE( 0x00000, 0xfffff ) AM_NOP /* configured at run-time */
diff --git a/src/mame/drivers/hp49gp.cpp b/src/mame/drivers/hp49gp.cpp
index 9ef0fd4f8e3..9e1bf1aaa8e 100644
--- a/src/mame/drivers/hp49gp.cpp
+++ b/src/mame/drivers/hp49gp.cpp
@@ -48,6 +48,7 @@ public:
int lcd_spi_line_r( int line);
required_device<cpu_device> m_maincpu;
void hp49gp(machine_config &config);
+ void hp49gp_map(address_map &map);
};
/***************************************************************************
@@ -258,7 +259,7 @@ void hp49gp_state::machine_reset()
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( hp49gp_map, AS_PROGRAM, 32, hp49gp_state )
+ADDRESS_MAP_START(hp49gp_state::hp49gp_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM
AM_RANGE(0x08000000, 0x0801ffff) AM_RAM
AM_RANGE(0x08020000, 0x0803ffff) AM_RAM
diff --git a/src/mame/drivers/hp64k.cpp b/src/mame/drivers/hp64k.cpp
index 1cab01a64a3..886a2f05d39 100644
--- a/src/mame/drivers/hp64k.cpp
+++ b/src/mame/drivers/hp64k.cpp
@@ -233,6 +233,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(hp64k_baud_clk_w);
void hp64k(machine_config &config);
+ void cpu_io_map(address_map &map);
+ void cpu_mem_map(address_map &map);
private:
required_device<hp_5061_3011_cpu_device> m_cpu;
required_device<i8275_device> m_crtc;
@@ -314,14 +316,14 @@ private:
bool m_rts_state;
};
-static ADDRESS_MAP_START(cpu_mem_map , AS_PROGRAM , 16 , hp64k_state)
+ADDRESS_MAP_START(hp64k_state::cpu_mem_map)
AM_RANGE(0x0000 , 0x3fff) AM_ROM
AM_RANGE(0x4000 , 0x7fff) AM_READWRITE(hp64k_slot_r , hp64k_slot_w)
AM_RANGE(0x8000 , 0x8001) AM_WRITE(hp64k_crtc_w)
AM_RANGE(0x8002 , 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(cpu_io_map , AS_IO , 16 , hp64k_state)
+ADDRESS_MAP_START(hp64k_state::cpu_io_map)
// PA = 0, IC = [0..3]
// Keyboard input
AM_RANGE(HP_MAKE_IOADDR(0 , 0) , HP_MAKE_IOADDR(0 , 3)) AM_READ(hp64k_kb_r)
diff --git a/src/mame/drivers/hp700.cpp b/src/mame/drivers/hp700.cpp
index 1b93c53f8af..53a6bdb3e17 100644
--- a/src/mame/drivers/hp700.cpp
+++ b/src/mame/drivers/hp700.cpp
@@ -17,23 +17,27 @@ public:
hp700_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
, m_maincpu(*this, "maincpu")
+ , m_duart(*this, "duart")
{ }
void hp700_92(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
+ required_device<scn2681_device> m_duart;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, hp700_state )
+ADDRESS_MAP_START(hp700_state::mem_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x20000, 0x2ffff) AM_RAM
AM_RANGE(0x30000, 0x31fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x34000, 0x34000) AM_READNOP
- AM_RANGE(0x38000, 0x38fff) AM_DEVREADWRITE_MOD("duart", scn2681_device, read, write, rshift<8>)
+ ;map(0x38000, 0x38fff).lrw8("duart_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_duart->read(space, offset >> 8, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_duart->write(space, offset >> 8, data, mem_mask); });
AM_RANGE(0xffff0, 0xfffff) AM_ROM AM_REGION("maincpu", 0x1fff0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, hp700_state )
+ADDRESS_MAP_START(hp700_state::io_map)
AM_RANGE(0x00f2, 0x00f2) AM_WRITENOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hp80.cpp b/src/mame/drivers/hp80.cpp
index ab35920f317..3ac7042b314 100644
--- a/src/mame/drivers/hp80.cpp
+++ b/src/mame/drivers/hp80.cpp
@@ -166,6 +166,8 @@ public:
DECLARE_WRITE8_MEMBER(halt_w);
void hp85(machine_config &config);
+ void cpu_mem_map(address_map &map);
+ void rombank_mem_map(address_map &map);
protected:
required_device<capricorn_cpu_device> m_cpu;
required_device<screen_device> m_screen;
@@ -1297,7 +1299,7 @@ static INPUT_PORTS_START(hp85)
INPUT_PORTS_END
-static ADDRESS_MAP_START(cpu_mem_map , AS_PROGRAM , 8 , hp85_state)
+ADDRESS_MAP_START(hp85_state::cpu_mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000 , 0x5fff) AM_ROM
AM_RANGE(0x6000 , 0x7fff) AM_DEVICE("rombank" , address_map_bank_device , amap8)
@@ -1318,7 +1320,7 @@ static ADDRESS_MAP_START(cpu_mem_map , AS_PROGRAM , 8 , hp85_state)
AM_RANGE(0xff40 , 0xff40) AM_READWRITE(intrsc_r , intrsc_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rombank_mem_map , AS_PROGRAM , 8 , hp85_state)
+ADDRESS_MAP_START(hp85_state::rombank_mem_map)
ADDRESS_MAP_UNMAP_HIGH
// ROM in bank 0 is always present (it's part of system ROMs)
AM_RANGE(0x0000 , 0x1fff) AM_ROM
diff --git a/src/mame/drivers/hp9845.cpp b/src/mame/drivers/hp9845.cpp
index 1f152f1610c..ff8923dad02 100644
--- a/src/mame/drivers/hp9845.cpp
+++ b/src/mame/drivers/hp9845.cpp
@@ -3716,7 +3716,7 @@ MACHINE_CONFIG_END
- all LPU RAM is dynamically mapped at machine start according to -ramsize option
*/
-static ADDRESS_MAP_START(global_mem_map , AS_PROGRAM , 16 , hp9845_base_state)
+ADDRESS_MAP_START(hp9845_base_state::global_mem_map)
ADDRESS_MAP_GLOBAL_MASK(0x3f7fff)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x014000 , 0x017fff) AM_RAM AM_SHARE("ppu_ram")
@@ -3724,7 +3724,7 @@ static ADDRESS_MAP_START(global_mem_map , AS_PROGRAM , 16 , hp9845_base_state)
AM_RANGE(0x050000 , 0x057fff) AM_ROM AM_REGION("ppu" , 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ppu_io_map , AS_IO , 16 , hp9845_base_state)
+ADDRESS_MAP_START(hp9845_base_state::ppu_io_map)
ADDRESS_MAP_UNMAP_LOW
// PA = 0, IC = 0..1
// Internal printer
diff --git a/src/mame/drivers/hp9k.cpp b/src/mame/drivers/hp9k.cpp
index 85ec6ec33d0..287dde41979 100644
--- a/src/mame/drivers/hp9k.cpp
+++ b/src/mame/drivers/hp9k.cpp
@@ -167,6 +167,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
void hp9k(machine_config &config);
+ void hp9k_mem(address_map &map);
};
//
@@ -305,7 +306,7 @@ WRITE16_MEMBER(hp9k_state::buserror_w)
m_maincpu->set_input_line(M68K_LINE_BUSERROR, CLEAR_LINE);
}
-static ADDRESS_MAP_START(hp9k_mem, AS_PROGRAM, 16, hp9k_state)
+ADDRESS_MAP_START(hp9k_state::hp9k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x000909) AM_ROM AM_REGION("bootrom",0)
AM_RANGE(0x00090a, 0x00090d) AM_READWRITE(leds_r,leds_w)
diff --git a/src/mame/drivers/hp9k_3xx.cpp b/src/mame/drivers/hp9k_3xx.cpp
index 48b372651dd..ab751759538 100644
--- a/src/mame/drivers/hp9k_3xx.cpp
+++ b/src/mame/drivers/hp9k_3xx.cpp
@@ -142,6 +142,15 @@ public:
void hp9k380(machine_config &config);
void hp9k320(machine_config &config);
void hp9k332(machine_config &config);
+ void hp9k310_map(address_map &map);
+ void hp9k320_map(address_map &map);
+ void hp9k330_map(address_map &map);
+ void hp9k332_map(address_map &map);
+ void hp9k370_map(address_map &map);
+ void hp9k380_map(address_map &map);
+ void hp9k382_map(address_map &map);
+ void hp9k3xx_common(address_map &map);
+ void iocpu_map(address_map &map);
private:
bool m_in_buserr;
bool m_hil_read;
@@ -174,7 +183,7 @@ uint32_t hp9k3xx_state::hp_medres_update(screen_device &screen, bitmap_rgb32 &bi
}
// shared mappings for all 9000/3xx systems
-static ADDRESS_MAP_START(hp9k3xx_common, AS_PROGRAM, 32, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k3xx_common)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_REGION("maincpu",0) AM_WRITE(led_w) // writes to 1fffc are the LED
AM_RANGE(0x00428000, 0x00428003) AM_DEVREADWRITE8(IOCPU_TAG, upi41_cpu_device, upi41_master_r, upi41_master_w, 0x00ff00ff)
@@ -190,7 +199,7 @@ static ADDRESS_MAP_START(hp9k3xx_common, AS_PROGRAM, 32, hp9k3xx_state)
ADDRESS_MAP_END
// 9000/310 - has onboard video that the graphics card used in other 3xxes conflicts with
-static ADDRESS_MAP_START(hp9k310_map, AS_PROGRAM, 16, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k310_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_REGION("maincpu",0) AM_WRITENOP // writes to 1fffc are the LED
AM_RANGE(0x00428000, 0x00428003) AM_DEVREADWRITE8(IOCPU_TAG, upi41_cpu_device, upi41_master_r, upi41_master_w, 0x00ff)
@@ -205,7 +214,7 @@ static ADDRESS_MAP_START(hp9k310_map, AS_PROGRAM, 16, hp9k3xx_state)
ADDRESS_MAP_END
// 9000/320
-static ADDRESS_MAP_START(hp9k320_map, AS_PROGRAM, 32, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k320_map)
AM_IMPORT_FROM(hp9k3xx_common)
AM_RANGE(0xffe00000, 0xffefffff) AM_READWRITE(buserror_r, buserror_w)
@@ -213,7 +222,7 @@ static ADDRESS_MAP_START(hp9k320_map, AS_PROGRAM, 32, hp9k3xx_state)
ADDRESS_MAP_END
// 9000/330 and 9000/340
-static ADDRESS_MAP_START(hp9k330_map, AS_PROGRAM, 32, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k330_map)
AM_IMPORT_FROM(hp9k3xx_common)
AM_RANGE(0xffb00000, 0xffbfffff) AM_READWRITE(buserror_r, buserror_w)
@@ -221,7 +230,7 @@ static ADDRESS_MAP_START(hp9k330_map, AS_PROGRAM, 32, hp9k3xx_state)
ADDRESS_MAP_END
// 9000/332, with built-in medium-res video
-static ADDRESS_MAP_START(hp9k332_map, AS_PROGRAM, 32, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k332_map)
AM_IMPORT_FROM(hp9k3xx_common)
AM_RANGE(0x00200000, 0x002fffff) AM_RAM AM_SHARE("vram") // 98544 mono framebuffer
@@ -232,7 +241,7 @@ static ADDRESS_MAP_START(hp9k332_map, AS_PROGRAM, 32, hp9k3xx_state)
ADDRESS_MAP_END
// 9000/370 - 8 MB RAM standard
-static ADDRESS_MAP_START(hp9k370_map, AS_PROGRAM, 32, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k370_map)
AM_IMPORT_FROM(hp9k3xx_common)
AM_RANGE(0xff700000, 0xff7fffff) AM_READWRITE(buserror_r, buserror_w)
@@ -240,7 +249,7 @@ static ADDRESS_MAP_START(hp9k370_map, AS_PROGRAM, 32, hp9k3xx_state)
ADDRESS_MAP_END
// 9000/380 - '040
-static ADDRESS_MAP_START(hp9k380_map, AS_PROGRAM, 32, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k380_map)
AM_IMPORT_FROM(hp9k3xx_common)
AM_RANGE(0x0051a000, 0x0051afff) AM_READWRITE(buserror_r, buserror_w) // no "Alpha display"
@@ -250,7 +259,7 @@ static ADDRESS_MAP_START(hp9k380_map, AS_PROGRAM, 32, hp9k3xx_state)
ADDRESS_MAP_END
// 9000/382 - onboard VGA compatible video (where?)
-static ADDRESS_MAP_START(hp9k382_map, AS_PROGRAM, 32, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::hp9k382_map)
AM_IMPORT_FROM(hp9k3xx_common)
AM_RANGE(0xffb00000, 0xffbfffff) AM_READWRITE(buserror_r, buserror_w)
@@ -259,7 +268,7 @@ static ADDRESS_MAP_START(hp9k382_map, AS_PROGRAM, 32, hp9k3xx_state)
AM_RANGE(0x0051a000, 0x0051afff) AM_READWRITE(buserror_r, buserror_w) // no "Alpha display"
ADDRESS_MAP_END
-static ADDRESS_MAP_START(iocpu_map, AS_PROGRAM, 8, hp9k3xx_state)
+ADDRESS_MAP_START(hp9k3xx_state::iocpu_map)
ADDRESS_MAP_END
uint32_t hp9k3xx_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
diff --git a/src/mame/drivers/hp_ipc.cpp b/src/mame/drivers/hp_ipc.cpp
index edbf1688da3..ced1bf29be4 100644
--- a/src/mame/drivers/hp_ipc.cpp
+++ b/src/mame/drivers/hp_ipc.cpp
@@ -416,6 +416,8 @@ public:
emu_timer *m_bus_error_timer;
void hp_ipc(machine_config &config);
+ void hp_ipc_mem_inner(address_map &map);
+ void hp_ipc_mem_outer(address_map &map);
private:
required_device<m68000_device> m_maincpu;
required_device<address_map_bank_device> m_bankdev;
@@ -462,11 +464,11 @@ void hp_ipc_state::set_bus_error(uint32_t address, bool write, uint16_t mem_mask
m_bus_error_timer->adjust(m_maincpu->cycles_to_attotime(16)); // let rmw cycles complete
}
-static ADDRESS_MAP_START(hp_ipc_mem_outer, AS_PROGRAM, 16, hp_ipc_state)
+ADDRESS_MAP_START(hp_ipc_state::hp_ipc_mem_outer)
AM_RANGE(0x000000, 0xFFFFFF) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(hp_ipc_mem_inner, AS_PROGRAM, 16, hp_ipc_state)
+ADDRESS_MAP_START(hp_ipc_state::hp_ipc_mem_inner)
// bus error handler
AM_RANGE(0x0000000, 0x1FFFFFF) AM_READWRITE(trap_r, trap_w)
diff --git a/src/mame/drivers/hprot1.cpp b/src/mame/drivers/hprot1.cpp
index e09a0154d25..25914afcd33 100644
--- a/src/mame/drivers/hprot1.cpp
+++ b/src/mame/drivers/hprot1.cpp
@@ -80,6 +80,8 @@ public:
void hprotr8a(machine_config &config);
void hprot2r6(machine_config &config);
void hprot1(machine_config &config);
+ void i80c31_io(address_map &map);
+ void i80c31_prg(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -89,7 +91,7 @@ private:
#define LOG_IO_PORTS 0
-static ADDRESS_MAP_START(i80c31_prg, AS_PROGRAM, 8, hprot1_state)
+ADDRESS_MAP_START(hprot1_state::i80c31_prg)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
@@ -124,7 +126,7 @@ DRIVER_INIT_MEMBER( hprot1_state, hprot1 )
//P1.4 => WhatchDog Input (after timeout resets CPU)
-static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, hprot1_state)
+ADDRESS_MAP_START(hprot1_state::i80c31_io)
AM_RANGE(0x0000,0x7fff) AM_RAM
/*TODO: verify the mirror mask value for the HD44780 device */
AM_RANGE(0xc000,0xc000) AM_MIRROR(0x13cf) AM_DEVWRITE("hd44780", hd44780_device, control_write)
diff --git a/src/mame/drivers/hpz80unk.cpp b/src/mame/drivers/hpz80unk.cpp
index ad2360e11f5..68135097b0f 100644
--- a/src/mame/drivers/hpz80unk.cpp
+++ b/src/mame/drivers/hpz80unk.cpp
@@ -71,6 +71,8 @@ public:
DECLARE_READ8_MEMBER(portfc_r);
void hpz80unk(machine_config &config);
+ void hpz80unk_io(address_map &map);
+ void hpz80unk_mem(address_map &map);
private:
uint8_t m_port02_data;
virtual void machine_reset() override;
@@ -138,13 +140,13 @@ READ8_MEMBER( hpz80unk_state::portfc_r )
return 0xfe; // or it halts
}
-static ADDRESS_MAP_START( hpz80unk_mem, AS_PROGRAM, 8, hpz80unk_state )
+ADDRESS_MAP_START(hpz80unk_state::hpz80unk_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xffff) AM_ROM AM_SHARE("rom")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hpz80unk_io, AS_IO, 8, hpz80unk_state )
+ADDRESS_MAP_START(hpz80unk_state::hpz80unk_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(port00_r) // uart1 status
diff --git a/src/mame/drivers/ht68k.cpp b/src/mame/drivers/ht68k.cpp
index 0653189cc37..46dc104d839 100644
--- a/src/mame/drivers/ht68k.cpp
+++ b/src/mame/drivers/ht68k.cpp
@@ -66,10 +66,11 @@ public:
required_shared_ptr<uint16_t> m_p_ram;
virtual void machine_reset() override;
void ht68k(machine_config &config);
+ void ht68k_mem(address_map &map);
};
-static ADDRESS_MAP_START(ht68k_mem, AS_PROGRAM, 16, ht68k_state)
+ADDRESS_MAP_START(ht68k_state::ht68k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_SHARE("p_ram") // 512 KB RAM / ROM at boot
//AM_RANGE(0x00080000, 0x000fffff) // Expansion
diff --git a/src/mame/drivers/huebler.cpp b/src/mame/drivers/huebler.cpp
index 7fdd66216e1..5fa485282a2 100644
--- a/src/mame/drivers/huebler.cpp
+++ b/src/mame/drivers/huebler.cpp
@@ -83,7 +83,7 @@ READ8_MEMBER( amu880_state::keyboard_r )
/* Memory Maps */
-static ADDRESS_MAP_START( amu880_mem, AS_PROGRAM, 8, amu880_state )
+ADDRESS_MAP_START(amu880_state::amu880_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xe7ff) AM_RAM
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("video_ram")
@@ -91,7 +91,7 @@ static ADDRESS_MAP_START( amu880_mem, AS_PROGRAM, 8, amu880_state )
AM_RANGE(0xfc00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amu880_io, AS_IO, 8, amu880_state )
+ADDRESS_MAP_START(amu880_state::amu880_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x00) AM_MIRROR(0x03) AM_WRITE(power_off_w)
diff --git a/src/mame/drivers/hunter2.cpp b/src/mame/drivers/hunter2.cpp
index 780781d494f..dee69f599c7 100644
--- a/src/mame/drivers/hunter2.cpp
+++ b/src/mame/drivers/hunter2.cpp
@@ -70,6 +70,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(rxd_w);
void hunter2(machine_config &config);
+ void hunter2_banked_mem(address_map &map);
+ void hunter2_io(address_map &map);
+ void hunter2_mem(address_map &map);
private:
uint8_t m_keydata;
uint8_t m_irq_mask;
@@ -85,13 +88,13 @@ private:
required_device<address_map_bank_device> m_bank3;
};
-static ADDRESS_MAP_START(hunter2_banked_mem, AS_PROGRAM, 8, hunter2_state)
+ADDRESS_MAP_START(hunter2_state::hunter2_banked_mem)
AM_RANGE(0x00000, 0x2ffff) AM_ROM AM_REGION("roms", 0x0000)
AM_RANGE(0x30000, 0x3ffff) AM_NOP
AM_RANGE(0x40000, 0xfffff) AM_RAM AM_REGION("rams", 0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(hunter2_mem, AS_PROGRAM, 8, hunter2_state)
+ADDRESS_MAP_START(hunter2_state::hunter2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_DEVREADWRITE("bank1", address_map_bank_device, read8, write8)
AM_RANGE(0x4000, 0x7fff) AM_DEVREADWRITE("bank2", address_map_bank_device, read8, write8)
@@ -99,7 +102,7 @@ static ADDRESS_MAP_START(hunter2_mem, AS_PROGRAM, 8, hunter2_state)
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(hunter2_io, AS_IO, 8, hunter2_state)
+ADDRESS_MAP_START(hunter2_state::hunter2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x1f) AM_DEVREADWRITE("iotimer", nsc810_device, read, write)
diff --git a/src/mame/drivers/hvyunit.cpp b/src/mame/drivers/hvyunit.cpp
index d7e7b5f9b34..fa563dbe35c 100644
--- a/src/mame/drivers/hvyunit.cpp
+++ b/src/mame/drivers/hvyunit.cpp
@@ -150,6 +150,13 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(scanline);
void hvyunit(machine_config &config);
+ void master_io(address_map &map);
+ void master_memory(address_map &map);
+ void mcu_io(address_map &map);
+ void slave_io(address_map &map);
+ void slave_memory(address_map &map);
+ void sound_io(address_map &map);
+ void sound_memory(address_map &map);
};
@@ -381,7 +388,7 @@ WRITE8_MEMBER(hvyunit_state::mermaid_p3_w)
*
*************************************/
-static ADDRESS_MAP_START( master_memory, AS_PROGRAM, 8, hvyunit_state )
+ADDRESS_MAP_START(hvyunit_state::master_memory)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("master_bank")
AM_RANGE(0xc000, 0xcfff) AM_DEVREADWRITE("pandora", kaneko_pandora_device, spriteram_r, spriteram_w)
@@ -389,7 +396,7 @@ static ADDRESS_MAP_START( master_memory, AS_PROGRAM, 8, hvyunit_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_io, AS_IO, 8, hvyunit_state )
+ADDRESS_MAP_START(hvyunit_state::master_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(master_bankswitch_w)
AM_RANGE(0x01, 0x01) AM_WRITE(master_bankswitch_w) // correct?
@@ -397,7 +404,7 @@ static ADDRESS_MAP_START( master_io, AS_IO, 8, hvyunit_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_memory, AS_PROGRAM, 8, hvyunit_state )
+ADDRESS_MAP_START(hvyunit_state::slave_memory)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("slave_bank")
AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(hu_videoram_w) AM_SHARE("videoram")
@@ -408,7 +415,7 @@ static ADDRESS_MAP_START( slave_memory, AS_PROGRAM, 8, hvyunit_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_io, AS_IO, 8, hvyunit_state )
+ADDRESS_MAP_START(hvyunit_state::slave_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(slave_bankswitch_w)
AM_RANGE(0x02, 0x02) AM_WRITE(trigger_nmi_on_sound_cpu2)
@@ -424,13 +431,13 @@ static ADDRESS_MAP_START( slave_io, AS_IO, 8, hvyunit_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_memory, AS_PROGRAM, 8, hvyunit_state )
+ADDRESS_MAP_START(hvyunit_state::sound_memory)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("sound_bank")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, hvyunit_state )
+ADDRESS_MAP_START(hvyunit_state::sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sound_bankswitch_w)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -438,7 +445,7 @@ static ADDRESS_MAP_START( sound_io, AS_IO, 8, hvyunit_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_io, AS_IO, 8, hvyunit_state )
+ADDRESS_MAP_START(hvyunit_state::mcu_io)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE(mermaid_p0_r, mermaid_p0_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(mermaid_p1_r, mermaid_p1_w)
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_READWRITE(mermaid_p2_r, mermaid_p2_w)
diff --git a/src/mame/drivers/hx20.cpp b/src/mame/drivers/hx20.cpp
index a265595760e..9f8b5df0e54 100644
--- a/src/mame/drivers/hx20.cpp
+++ b/src/mame/drivers/hx20.cpp
@@ -548,7 +548,7 @@ WRITE8_MEMBER( hx20_state::slave_p4_w )
// ADDRESS_MAP( hx20_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( hx20_mem, AS_PROGRAM, 8, hx20_state )
+ADDRESS_MAP_START(hx20_state::hx20_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(HD6301V1_MAIN_TAG, hd63701_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0020, 0x0020) AM_WRITE(ksc_w)
AM_RANGE(0x0022, 0x0022) AM_READ(krtn07_r)
@@ -568,7 +568,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( hx20_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( hx20_io, AS_IO, 8, hx20_state )
+ADDRESS_MAP_START(hx20_state::hx20_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(main_p1_r, main_p1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(main_p2_r, main_p2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3) AM_NOP // A0-A7, D0-D7
@@ -580,7 +580,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( hx20_sub_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( hx20_sub_mem, AS_PROGRAM, 8, hx20_state )
+ADDRESS_MAP_START(hx20_state::hx20_sub_mem)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE(HD6301V1_SLAVE_TAG, hd63701_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(HD6301V1_SLAVE_TAG, 0)
@@ -591,7 +591,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( hx20_sub_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( hx20_sub_io, AS_IO, 8, hx20_state )
+ADDRESS_MAP_START(hx20_state::hx20_sub_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(slave_p1_r, slave_p1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(slave_p2_r, slave_p2_w)
AM_RANGE(M6801_PORT3, M6801_PORT3) AM_READWRITE(slave_p3_r, slave_p3_w)
@@ -603,7 +603,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( cm6000_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( cm6000_mem, AS_PROGRAM, 8, hx20_state )
+ADDRESS_MAP_START(hx20_state::cm6000_mem)
AM_IMPORT_FROM(hx20_mem)
AM_RANGE(0x4000, 0xffff) AM_ROM AM_REGION(HD6301V1_MAIN_TAG, 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/hyhoo.cpp b/src/mame/drivers/hyhoo.cpp
index a4cdc292bae..784bbaf5048 100644
--- a/src/mame/drivers/hyhoo.cpp
+++ b/src/mame/drivers/hyhoo.cpp
@@ -34,12 +34,12 @@ Memo:
#include "speaker.h"
-static ADDRESS_MAP_START( hyhoo_map, AS_PROGRAM, 8, hyhoo_state )
+ADDRESS_MAP_START(hyhoo_state::hyhoo_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hyhoo_io_map, AS_IO, 8, hyhoo_state )
+ADDRESS_MAP_START(hyhoo_state::hyhoo_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
diff --git a/src/mame/drivers/hyperscan.cpp b/src/mame/drivers/hyperscan.cpp
index 9cf92df11fc..813110c12b2 100644
--- a/src/mame/drivers/hyperscan.cpp
+++ b/src/mame/drivers/hyperscan.cpp
@@ -89,6 +89,7 @@ public:
void spg290_blit_character(bitmap_rgb32 &bitmap, const rectangle &cliprect, uint32_t control, uint32_t attribute, int posy, int posx, uint32_t nptr, uint32_t buf_start, uint32_t transrgb);
void hyperscan(machine_config &config);
+ void spg290_mem(address_map &map);
private:
static const device_timer_id TIMER_SPG290 = 0;
static const device_timer_id TIMER_I2C = 1;
@@ -584,7 +585,7 @@ void hyperscan_state::device_timer(emu_timer &timer, device_timer_id id, int par
}
}
-static ADDRESS_MAP_START(spg290_mem, AS_PROGRAM, 32, hyperscan_state)
+ADDRESS_MAP_START(hyperscan_state::spg290_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1fffffff)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_MIRROR(0x07000000)
AM_RANGE(0x08000000, 0x09ffffff) AM_READWRITE(spg290_regs_r, spg290_regs_w)
diff --git a/src/mame/drivers/hyperspt.cpp b/src/mame/drivers/hyperspt.cpp
index bf96fb2a2cd..9676b2446ae 100644
--- a/src/mame/drivers/hyperspt.cpp
+++ b/src/mame/drivers/hyperspt.cpp
@@ -52,7 +52,7 @@ WRITE_LINE_MEMBER(hyperspt_state::irq_mask_w)
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( common_map, AS_PROGRAM, 8, hyperspt_state )
+ADDRESS_MAP_START(hyperspt_state::common_map)
AM_RANGE(0x1000, 0x10bf) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x10c0, 0x10ff) AM_RAM AM_SHARE("scroll") /* Scroll amount */
AM_RANGE(0x1400, 0x1400) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
@@ -68,19 +68,19 @@ static ADDRESS_MAP_START( common_map, AS_PROGRAM, 8, hyperspt_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hyperspt_map, AS_PROGRAM, 8, hyperspt_state )
+ADDRESS_MAP_START(hyperspt_state::hyperspt_map)
AM_IMPORT_FROM(common_map)
AM_RANGE(0x1681, 0x1681) AM_READ_PORT("P1_P2")
AM_RANGE(0x1682, 0x1682) AM_READ_PORT("P3_P4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roadf_map, AS_PROGRAM, 8, hyperspt_state )
+ADDRESS_MAP_START(hyperspt_state::roadf_map)
AM_IMPORT_FROM(common_map)
AM_RANGE(0x1681, 0x1681) AM_READ_PORT("P1")
AM_RANGE(0x1682, 0x1682) AM_READ_PORT("P2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( common_sound_map, AS_PROGRAM, 8, hyperspt_state )
+ADDRESS_MAP_START(hyperspt_state::common_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -90,19 +90,19 @@ static ADDRESS_MAP_START( common_sound_map, AS_PROGRAM, 8, hyperspt_state )
AM_RANGE(0xe002, 0xe002) AM_WRITE(konami_SN76496_w) /* This address triggers the SN chip to read the data port. */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hyperspt_sound_map, AS_PROGRAM, 8, hyperspt_state )
+ADDRESS_MAP_START(hyperspt_state::hyperspt_sound_map)
AM_IMPORT_FROM(common_sound_map)
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("vlm", vlm5030_device, data_w) /* speech data */
AM_RANGE(0xc000, 0xdfff) AM_DEVWRITE("trackfld_audio", trackfld_audio_device, hyperspt_sound_w) /* speech and output control */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roadf_sound_map, AS_PROGRAM, 8, hyperspt_state )
+ADDRESS_MAP_START(hyperspt_state::roadf_sound_map)
AM_IMPORT_FROM(common_sound_map)
AM_RANGE(0xa000, 0xa000) AM_NOP // No VLM
AM_RANGE(0xc000, 0xdfff) AM_NOP // No VLM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soundb_map, AS_PROGRAM, 8, hyperspt_state )
+ADDRESS_MAP_START(hyperspt_state::soundb_map)
AM_IMPORT_FROM(common_sound_map)
AM_RANGE(0xa000, 0xa000) AM_NOP // No VLM
AM_RANGE(0xc000, 0xdfff) AM_DEVWRITE("hyprolyb_adpcm", hyprolyb_adpcm_device, write) /* speech and output control */
@@ -343,7 +343,7 @@ MACHINE_CONFIG_START(hyperspt_state::hyperspt)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( hyprolyb_adpcm_map, AS_PROGRAM, 8, hyprolyb_adpcm_device )
+ADDRESS_MAP_START(hyperspt_state::hyprolyb_adpcm_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_DEVREAD("hyprolyb_adpcm", hyprolyb_adpcm_device, data_r)
AM_RANGE(0x1001, 0x1001) AM_DEVREAD("hyprolyb_adpcm", hyprolyb_adpcm_device, ready_r)
diff --git a/src/mame/drivers/hyprduel.cpp b/src/mame/drivers/hyprduel.cpp
index 5d83e94899b..d28c9e238f2 100644
--- a/src/mame/drivers/hyprduel.cpp
+++ b/src/mame/drivers/hyprduel.cpp
@@ -413,7 +413,7 @@ WRITE16_MEMBER(hyprduel_state::blitter_w)
Memory Maps
***************************************************************************/
-static ADDRESS_MAP_START( hyprduel_map, AS_PROGRAM, 16, hyprduel_state )
+ADDRESS_MAP_START(hyprduel_state::hyprduel_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(vram_0_w) AM_SHARE("vram_0") /* Layer 0 */
AM_RANGE(0x420000, 0x43ffff) AM_RAM_WRITE(vram_1_w) AM_SHARE("vram_1") /* Layer 1 */
@@ -446,7 +446,7 @@ static ADDRESS_MAP_START( hyprduel_map, AS_PROGRAM, 16, hyprduel_state )
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("sharedram3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hyprduel_map2, AS_PROGRAM, 16, hyprduel_state )
+ADDRESS_MAP_START(hyprduel_state::hyprduel_map2)
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("sharedram1") /* shadow ($c00000 - $c03fff : vector) */
AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE("sharedram3") /* shadow ($fe4000 - $fe7fff : read only) */
AM_RANGE(0x400000, 0x400003) AM_DEVREADWRITE8("ymsnd", ym2151_device, read, write, 0x00ff )
@@ -460,7 +460,7 @@ ADDRESS_MAP_END
/* Magical Error - video is at 8x now */
-static ADDRESS_MAP_START( magerror_map, AS_PROGRAM, 16, hyprduel_state )
+ADDRESS_MAP_START(hyprduel_state::magerror_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x400001) AM_WRITE(subcpu_control_w)
AM_RANGE(0x800000, 0x81ffff) AM_RAM_WRITE(vram_0_w) AM_SHARE("vram_0") /* Layer 0 */
@@ -493,7 +493,7 @@ static ADDRESS_MAP_START( magerror_map, AS_PROGRAM, 16, hyprduel_state )
AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("sharedram3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magerror_map2, AS_PROGRAM, 16, hyprduel_state )
+ADDRESS_MAP_START(hyprduel_state::magerror_map2)
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("sharedram1") /* shadow ($c00000 - $c03fff : vector) */
AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE("sharedram3") /* shadow ($fe4000 - $fe7fff : read only) */
AM_RANGE(0x400000, 0x400003) AM_NOP
diff --git a/src/mame/drivers/i7000.cpp b/src/mame/drivers/i7000.cpp
index bbda3d26818..aec1ec0e216 100644
--- a/src/mame/drivers/i7000.cpp
+++ b/src/mame/drivers/i7000.cpp
@@ -87,6 +87,8 @@ public:
DECLARE_READ8_MEMBER(i7000_kbd_r);
DECLARE_WRITE8_MEMBER(i7000_scanlines_w);
void i7000(machine_config &config);
+ void i7000_io(address_map &map);
+ void i7000_mem(address_map &map);
};
WRITE8_MEMBER( i7000_state::i7000_scanlines_w )
@@ -243,14 +245,14 @@ PALETTE_INIT_MEMBER(i7000_state, i7000)
/*FIXME: we still need to figure out the proper memory map
for the maincpu and where the cartridge slot maps to. */
-static ADDRESS_MAP_START(i7000_mem, AS_PROGRAM, 8, i7000_state)
+ADDRESS_MAP_START(i7000_state::i7000_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("boot", 0)
AM_RANGE(0x2000, 0x2fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x4000, 0xffff) AM_RAM
// AM_RANGE(0x4000, 0xbfff) AM_ROM AM_REGION("cardslot", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i7000_io , AS_IO, 8, i7000_state)
+ADDRESS_MAP_START(i7000_state::i7000_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK (0xff)
// AM_RANGE(0x06, 0x06) AM_WRITE(i7000_io_?_w)
diff --git a/src/mame/drivers/ibm3153.cpp b/src/mame/drivers/ibm3153.cpp
index 8e20fe76512..3fd3d37f2d7 100644
--- a/src/mame/drivers/ibm3153.cpp
+++ b/src/mame/drivers/ibm3153.cpp
@@ -55,6 +55,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ibm3153(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -62,12 +64,12 @@ private:
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, ibm3153_state)
+ADDRESS_MAP_START(ibm3153_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0x0ffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, ibm3153_state)
+ADDRESS_MAP_START(ibm3153_state::io_map)
AM_RANGE(0x0000,0xffff) AM_RAM
//ADDRESS_MAP_UNMAP_HIGH
//ADDRESS_MAP_GLOBAL_MASK(0xff)
diff --git a/src/mame/drivers/ibm6580.cpp b/src/mame/drivers/ibm6580.cpp
index d2d14bd6541..d01df077d85 100644
--- a/src/mame/drivers/ibm6580.cpp
+++ b/src/mame/drivers/ibm6580.cpp
@@ -183,6 +183,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ibm6580(machine_config &config);
+ void ibm6580_io(address_map &map);
+ void ibm6580_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -678,14 +680,14 @@ READ8_MEMBER(ibm6580_state::floppy_r)
}
-static ADDRESS_MAP_START(ibm6580_mem, AS_PROGRAM, 16, ibm6580_state)
+ADDRESS_MAP_START(ibm6580_state::ibm6580_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x90000, 0x90001) AM_WRITE(unk_latch_w)
AM_RANGE(0xef000, 0xeffff) AM_RAM AM_SHARE("videoram") // 66-line vram starts at 0xec000
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ibm6580_io, AS_IO, 16, ibm6580_state)
+ADDRESS_MAP_START(ibm6580_state::ibm6580_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0007) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0x00ff)
AM_RANGE(0x0008, 0x000f) AM_WRITE (pic_latch_w)
diff --git a/src/mame/drivers/ibmpc.cpp b/src/mame/drivers/ibmpc.cpp
index 378f98ba682..32aa288f76e 100644
--- a/src/mame/drivers/ibmpc.cpp
+++ b/src/mame/drivers/ibmpc.cpp
@@ -273,14 +273,16 @@ public:
void ibm5160(machine_config &config);
void ibm5150(machine_config &config);
void ibm5140(machine_config &config);
+ void pc8_io(address_map &map);
+ void pc8_map(address_map &map);
};
-static ADDRESS_MAP_START( pc8_map, AS_PROGRAM, 8, ibmpc_state )
+ADDRESS_MAP_START(ibmpc_state::pc8_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pc8_io, AS_IO, 8, ibmpc_state )
+ADDRESS_MAP_START(ibmpc_state::pc8_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", ibm5160_mb_device, map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ibmpcjr.cpp b/src/mame/drivers/ibmpcjr.cpp
index 949a62c7d90..10e74ecd390 100644
--- a/src/mame/drivers/ibmpcjr.cpp
+++ b/src/mame/drivers/ibmpcjr.cpp
@@ -108,6 +108,10 @@ public:
DECLARE_DRIVER_INIT(pcjr);
void ibmpcjx(machine_config &config);
void ibmpcjr(machine_config &config);
+ void ibmpcjr_io(address_map &map);
+ void ibmpcjr_map(address_map &map);
+ void ibmpcjx_io(address_map &map);
+ void ibmpcjx_map(address_map &map);
};
static INPUT_PORTS_START( ibmpcjr )
@@ -538,7 +542,7 @@ static GFXDECODE_START( pcjr )
GFXDECODE_END
-static ADDRESS_MAP_START(ibmpcjr_map, AS_PROGRAM, 8, pcjr_state)
+ADDRESS_MAP_START(pcjr_state::ibmpcjr_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xb8000, 0xbffff) AM_DEVICE("pcvideo_pcjr:vram", address_map_bank_device, amap8)
AM_RANGE(0xd0000, 0xdffff) AM_DEVREAD("cartslot2", generic_slot_device, read_rom)
@@ -547,7 +551,7 @@ static ADDRESS_MAP_START(ibmpcjr_map, AS_PROGRAM, 8, pcjr_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ibmpcjr_io, AS_IO, 8, pcjr_state)
+ADDRESS_MAP_START(pcjr_state::ibmpcjr_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0020, 0x0021) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
AM_RANGE(0x0040, 0x0043) AM_DEVREADWRITE("pit8253", pit8253_device, read, write)
@@ -562,7 +566,7 @@ static ADDRESS_MAP_START(ibmpcjr_io, AS_IO, 8, pcjr_state)
AM_RANGE(0x03d0, 0x03df) AM_DEVREAD("pcvideo_pcjr", pcvideo_pcjr_device, read) AM_DEVWRITE("pcvideo_pcjr", pcvideo_pcjr_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ibmpcjx_map, AS_PROGRAM, 8, pcjr_state )
+ADDRESS_MAP_START(pcjr_state::ibmpcjx_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x80000, 0xb7fff) AM_ROM AM_REGION("kanji",0)
AM_RANGE(0x80000, 0x9ffff) AM_RAM AM_SHARE("vram") // TODO: remove this part of vram hack
@@ -571,7 +575,7 @@ static ADDRESS_MAP_START(ibmpcjx_map, AS_PROGRAM, 8, pcjr_state )
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ibmpcjx_io, AS_IO, 8, pcjr_state)
+ADDRESS_MAP_START(pcjr_state::ibmpcjx_io)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM( ibmpcjr_io )
AM_RANGE(0x01ff, 0x01ff) AM_READWRITE(pcjx_port_1ff_r, pcjx_port_1ff_w)
diff --git a/src/mame/drivers/icatel.cpp b/src/mame/drivers/icatel.cpp
index e1fad969fca..ca947c43f72 100644
--- a/src/mame/drivers/icatel.cpp
+++ b/src/mame/drivers/icatel.cpp
@@ -63,6 +63,9 @@ public:
HD44780_PIXEL_UPDATE(icatel_pixel_update);
void icatel(machine_config &config);
+ void i80c31_data(address_map &map);
+ void i80c31_io(address_map &map);
+ void i80c31_prg(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -70,11 +73,11 @@ private:
required_device<hd44780_device> m_lcdc;
};
-static ADDRESS_MAP_START(i80c31_prg, AS_PROGRAM, 8, icatel_state)
+ADDRESS_MAP_START(icatel_state::i80c31_prg)
AM_RANGE(0x0000, 0x7FFF) AM_MIRROR(0x8000) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, icatel_state)
+ADDRESS_MAP_START(icatel_state::i80c31_io)
AM_RANGE(0x0000,0x3FFF) AM_RAM
AM_RANGE(0x8000,0x8002) AM_RAM /* HACK! */
AM_RANGE(0x8040,0x8040) AM_MIRROR(0x3F1E) AM_DEVWRITE("hd44780", hd44780_device, control_write) // not sure yet. CI12 (73LS273)
@@ -87,7 +90,7 @@ static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, icatel_state)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(ioport_r, ioport_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(i80c31_data, AS_DATA, 8, icatel_state)
+ADDRESS_MAP_START(icatel_state::i80c31_data)
// AM_RANGE(0x0056,0x005A) AM_READ(magic_string) /* This is a hack! */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ice_bozopail.cpp b/src/mame/drivers/ice_bozopail.cpp
index d6905aaf852..eace78d87cf 100644
--- a/src/mame/drivers/ice_bozopail.cpp
+++ b/src/mame/drivers/ice_bozopail.cpp
@@ -34,9 +34,10 @@ public:
required_device<cpu_device> m_maincpu;
void ice_bozo(machine_config &config);
+ void ice_bozo_map(address_map &map);
};
-static ADDRESS_MAP_START( ice_bozo_map, AS_PROGRAM, 8, ice_bozopail_state )
+ADDRESS_MAP_START(ice_bozopail_state::ice_bozo_map)
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("maincpu", 0x1fe000)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ice_tbd.cpp b/src/mame/drivers/ice_tbd.cpp
index 177f1a6c8a1..57d85284d88 100644
--- a/src/mame/drivers/ice_tbd.cpp
+++ b/src/mame/drivers/ice_tbd.cpp
@@ -30,6 +30,8 @@ public:
{ }
void ice_tbd(machine_config &config);
+ void ice_tbd_io_map(address_map &map);
+ void ice_tbd_map(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -38,12 +40,12 @@ private:
-static ADDRESS_MAP_START( ice_tbd_map, AS_PROGRAM, 8, ice_tbd_state )
+ADDRESS_MAP_START(ice_tbd_state::ice_tbd_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ice_tbd_io_map, AS_IO, 8, ice_tbd_state )
+ADDRESS_MAP_START(ice_tbd_state::ice_tbd_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi", i8255_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/icecold.cpp b/src/mame/drivers/icecold.cpp
index 37fd76cdb93..45473aef6e2 100644
--- a/src/mame/drivers/icecold.cpp
+++ b/src/mame/drivers/icecold.cpp
@@ -64,9 +64,10 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(icecold_sint_timer);
TIMER_DEVICE_CALLBACK_MEMBER(icecold_motors_timer);
void icecold(machine_config &config);
+ void icecold_map(address_map &map);
};
-static ADDRESS_MAP_START( icecold_map, AS_PROGRAM, 8, icecold_state )
+ADDRESS_MAP_START(icecold_state::icecold_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x4010, 0x4013) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x4020, 0x4023) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
diff --git a/src/mame/drivers/ichiban.cpp b/src/mame/drivers/ichiban.cpp
index c50889e61fa..0eb440b1af4 100644
--- a/src/mame/drivers/ichiban.cpp
+++ b/src/mame/drivers/ichiban.cpp
@@ -64,6 +64,8 @@ public:
virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ichibanjyan(machine_config &config);
+ void ichibanjyan_io(address_map &map);
+ void ichibanjyan_map(address_map &map);
};
void ichibanjyan_state::video_start()
@@ -76,11 +78,11 @@ uint32_t ichibanjyan_state::screen_update( screen_device &screen, bitmap_ind16 &
}
-static ADDRESS_MAP_START( ichibanjyan_map, AS_PROGRAM, 8, ichibanjyan_state )
+ADDRESS_MAP_START(ichibanjyan_state::ichibanjyan_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ichibanjyan_io, AS_IO, 8, ichibanjyan_state )
+ADDRESS_MAP_START(ichibanjyan_state::ichibanjyan_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/idsa.cpp b/src/mame/drivers/idsa.cpp
index f51e679f8f2..c6eb7183609 100644
--- a/src/mame/drivers/idsa.cpp
+++ b/src/mame/drivers/idsa.cpp
@@ -65,6 +65,8 @@ public:
void bsktbllp(machine_config &config);
void idsa(machine_config &config);
+ void maincpu_io_map(address_map &map);
+ void maincpu_map(address_map &map);
private:
virtual void machine_reset() override;
@@ -75,13 +77,13 @@ private:
optional_device_array<i8255_device, 2> m_ppi;
};
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, idsa_state )
+ADDRESS_MAP_START(idsa_state::maincpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maincpu_io_map, AS_IO, 8, idsa_state )
+ADDRESS_MAP_START(idsa_state::maincpu_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_READ_PORT("X0")
diff --git a/src/mame/drivers/if800.cpp b/src/mame/drivers/if800.cpp
index 9d1d6307ff9..f7df89de093 100644
--- a/src/mame/drivers/if800.cpp
+++ b/src/mame/drivers/if800.cpp
@@ -33,6 +33,9 @@ public:
required_device<palette_device> m_palette;
UPD7220_DISPLAY_PIXELS_MEMBER( hgdc_display_pixels );
void if800(machine_config &config);
+ void if800_io(address_map &map);
+ void if800_map(address_map &map);
+ void upd7220_map(address_map &map);
};
UPD7220_DISPLAY_PIXELS_MEMBER( if800_state::hgdc_display_pixels )
@@ -52,13 +55,13 @@ UPD7220_DISPLAY_PIXELS_MEMBER( if800_state::hgdc_display_pixels )
}
}
-static ADDRESS_MAP_START(if800_map, AS_PROGRAM, 16, if800_state)
+ADDRESS_MAP_START(if800_state::if800_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0x0ffff) AM_RAM
AM_RANGE(0xfe000,0xfffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(if800_io, AS_IO, 16, if800_state)
+ADDRESS_MAP_START(if800_state::if800_io)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x0640, 0x065f) dma?
AM_RANGE(0x0660, 0x0663) AM_DEVREADWRITE8("upd7220", upd7220_device, read, write,0x00ff)
@@ -77,7 +80,7 @@ void if800_state::machine_reset()
{
}
-static ADDRESS_MAP_START( upd7220_map, 0, 16, if800_state )
+ADDRESS_MAP_START(if800_state::upd7220_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/igs009.cpp b/src/mame/drivers/igs009.cpp
index d7fed8de731..cc5bb8d2b16 100644
--- a/src/mame/drivers/igs009.cpp
+++ b/src/mame/drivers/igs009.cpp
@@ -120,6 +120,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void gp98(machine_config &config);
void jingbell(machine_config &config);
+ void gp98_portmap(address_map &map);
+ void jingbell_map(address_map &map);
+ void jingbell_portmap(address_map &map);
};
@@ -472,12 +475,12 @@ READ8_MEMBER(igs009_state::magic_r)
}
-static ADDRESS_MAP_START( jingbell_map, AS_PROGRAM, 8, igs009_state )
+ADDRESS_MAP_START(igs009_state::jingbell_map)
AM_RANGE( 0x00000, 0x0f3ff ) AM_ROM
AM_RANGE( 0x0f400, 0x0ffff ) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jingbell_portmap, AS_IO, 8, igs009_state )
+ADDRESS_MAP_START(igs009_state::jingbell_portmap)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs
AM_RANGE( 0x1000, 0x11ff ) AM_RAM_WRITE(bg_scroll_w ) AM_SHARE("bg_scroll")
@@ -511,7 +514,7 @@ static ADDRESS_MAP_START( jingbell_portmap, AS_IO, 8, igs009_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gp98_portmap, AS_IO, 8, igs009_state )
+ADDRESS_MAP_START(igs009_state::gp98_portmap)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs
AM_RANGE( 0x1000, 0x11ff ) AM_RAM_WRITE(bg_scroll_w ) AM_SHARE("bg_scroll")
diff --git a/src/mame/drivers/igs011.cpp b/src/mame/drivers/igs011.cpp
index 3ba75ffac14..7e5f5fa1f29 100644
--- a/src/mame/drivers/igs011.cpp
+++ b/src/mame/drivers/igs011.cpp
@@ -263,6 +263,15 @@ public:
void lhb2(machine_config &config);
void lhb(machine_config &config);
void drgnwrld_igs012(machine_config &config);
+ void drgnwrld(address_map &map);
+ void drgnwrld_igs012(address_map &map);
+ void lhb(address_map &map);
+ void lhb2(address_map &map);
+ void nkishusp(address_map &map);
+ void vbowl(address_map &map);
+ void vbowlhk(address_map &map);
+ void wlcc(address_map &map);
+ void xymg(address_map &map);
};
@@ -2554,7 +2563,7 @@ DRIVER_INIT_MEMBER(igs011_state,nkishusp)
***************************************************************************/
-static ADDRESS_MAP_START( drgnwrld, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::drgnwrld)
// drgnwrld: IGS011 protection dynamically mapped at 1dd7x
// AM_RANGE( 0x01dd70, 0x01dd77 ) AM_WRITE(igs011_prot1_w )
// AM_RANGE( 0x01dd78, 0x01dd79 ) AM_READ ( igs011_prot1_r )
@@ -2588,7 +2597,7 @@ static ADDRESS_MAP_START( drgnwrld, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0xa88000, 0xa88001 ) AM_READ(igs_3_dips_r )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drgnwrld_igs012, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::drgnwrld_igs012)
AM_IMPORT_FROM(drgnwrld)
// IGS012
@@ -2631,7 +2640,7 @@ WRITE16_MEMBER(igs011_state::lhb_okibank_w)
// popmessage("oki %04x",data);
}
-static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::lhb)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
// lhb: IGS011 protection dynamically mapped at 834x
@@ -2672,7 +2681,7 @@ static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x888000, 0x888001 ) AM_READ(igs_5_dips_r )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xymg, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::xymg)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
// xymg: IGS011 protection dynamically mapped at 834x
@@ -2712,7 +2721,7 @@ static ADDRESS_MAP_START( xymg, AS_PROGRAM, 16, igs011_state )
AM_RANGE( 0x888000, 0x888001 ) AM_READ(igs_3_dips_r )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wlcc, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::wlcc)
// wlcc: IGS011 protection dynamically mapped at 834x
// AM_RANGE( 0x008340, 0x008347 ) AM_WRITE(igs011_prot1_w )
// AM_RANGE( 0x008348, 0x008349 ) AM_READ(igs011_prot1_r )
@@ -2751,7 +2760,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( lhb2, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::lhb2)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
// lhb2: IGS011 protection dynamically mapped at 1ff8x
@@ -2792,7 +2801,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( nkishusp, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::nkishusp)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
// nkishusp: IGS011 protection dynamically mapped at 1ff8x
@@ -2896,7 +2905,7 @@ WRITE16_MEMBER(igs011_state::vbowl_link_1_w){ }
WRITE16_MEMBER(igs011_state::vbowl_link_2_w){ }
WRITE16_MEMBER(igs011_state::vbowl_link_3_w){ }
-static ADDRESS_MAP_START( vbowl, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::vbowl)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
// vbowl: IGS011 protection dynamically mapped at 834x
@@ -2966,7 +2975,7 @@ static ADDRESS_MAP_START( vbowl, AS_PROGRAM, 16, igs011_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vbowlhk, AS_PROGRAM, 16, igs011_state )
+ADDRESS_MAP_START(igs011_state::vbowlhk)
AM_IMPORT_FROM(vbowl)
AM_RANGE( 0x800000, 0x800003 ) AM_WRITE(vbowlhk_igs003_w )
AM_RANGE( 0x50f600, 0x50f7ff ) AM_READ(vbowlhk_igs011_prot2_r ) // read
diff --git a/src/mame/drivers/igs017.cpp b/src/mame/drivers/igs017.cpp
index a99b9ea94df..a65d91302ad 100644
--- a/src/mame/drivers/igs017.cpp
+++ b/src/mame/drivers/igs017.cpp
@@ -207,6 +207,19 @@ public:
void starzan(machine_config &config);
void spkrform(machine_config &config);
void sdmg2(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void iqblocka_io(address_map &map);
+ void iqblocka_map(address_map &map);
+ void lhzb2(address_map &map);
+ void lhzb2a(address_map &map);
+ void mgcs(address_map &map);
+ void mgdha_map(address_map &map);
+ void sdmg2(address_map &map);
+ void slqz2(address_map &map);
+ void spkrform_io(address_map &map);
+ void spkrform_map(address_map &map);
+ void tjsb_io(address_map &map);
+ void tjsb_map(address_map &map);
};
void igs017_state::machine_reset()
@@ -1129,14 +1142,14 @@ DRIVER_INIT_MEMBER(igs017_state,spkrform)
// iqblocka
-static ADDRESS_MAP_START( iqblocka_map, AS_PROGRAM, 8, igs017_state )
+ADDRESS_MAP_START(igs017_state::iqblocka_map)
AM_RANGE( 0x00000, 0x0dfff ) AM_ROM
AM_RANGE( 0x0e000, 0x0efff ) AM_RAM
AM_RANGE( 0x0f000, 0x0ffff ) AM_RAM
AM_RANGE( 0x10000, 0x3ffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, igs017_state )
+ADDRESS_MAP_START(igs017_state::decrypted_opcodes_map)
AM_RANGE( 0x00000, 0x3ffff ) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
@@ -1185,7 +1198,7 @@ READ8_MEMBER(igs017_state::input_r)
}
}
-static ADDRESS_MAP_START( iqblocka_io, AS_IO, 8, igs017_state )
+ADDRESS_MAP_START(igs017_state::iqblocka_io)
AM_RANGE( 0x0000, 0x7fff ) AM_DEVREADWRITE("igs017_igs031", igs017_igs031_device, read,write)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs
@@ -1458,7 +1471,7 @@ READ8_MEMBER(igs017_state::mgcs_keys_r)
-static ADDRESS_MAP_START( mgcs, AS_PROGRAM, 16, igs017_state )
+ADDRESS_MAP_START(igs017_state::mgcs)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM
AM_RANGE( 0x300000, 0x303fff ) AM_RAM
AM_RANGE( 0x49c000, 0x49c003 ) AM_WRITE(mgcs_magic_w ) AM_READ(mgcs_magic_r )
@@ -1540,7 +1553,7 @@ READ16_MEMBER(igs017_state::sdmg2_magic_r)
return 0xffff;
}
-static ADDRESS_MAP_START( sdmg2, AS_PROGRAM, 16, igs017_state )
+ADDRESS_MAP_START(igs017_state::sdmg2)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x1f0000, 0x1fffff) AM_RAM
@@ -1653,7 +1666,7 @@ READ16_MEMBER(igs017_state::mgdha_magic_r)
return 0xffff;
}
-static ADDRESS_MAP_START( mgdha_map, AS_PROGRAM, 16, igs017_state )
+ADDRESS_MAP_START(igs017_state::mgdha_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x600000, 0x603fff) AM_RAM
AM_RANGE(0x876000, 0x876003) AM_WRITE(mgdha_magic_w )
@@ -1718,7 +1731,7 @@ READ8_MEMBER(igs017_state::tjsb_input_r)
}
}
-static ADDRESS_MAP_START( tjsb_map, AS_PROGRAM, 8, igs017_state )
+ADDRESS_MAP_START(igs017_state::tjsb_map)
AM_RANGE( 0x00000, 0x0dfff ) AM_ROM
AM_RANGE( 0x0e000, 0x0e000 ) AM_WRITE(input_select_w )
AM_RANGE( 0x0e001, 0x0e001 ) AM_READWRITE(tjsb_input_r, tjsb_output_w )
@@ -1727,7 +1740,7 @@ static ADDRESS_MAP_START( tjsb_map, AS_PROGRAM, 8, igs017_state )
AM_RANGE( 0x10000, 0x3ffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tjsb_io, AS_IO, 8, igs017_state )
+ADDRESS_MAP_START(igs017_state::tjsb_io)
AM_RANGE( 0x0000, 0x7fff ) AM_DEVREADWRITE("igs017_igs031", igs017_igs031_device, read,write)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs
@@ -1741,7 +1754,7 @@ ADDRESS_MAP_END
// spkrform
-static ADDRESS_MAP_START( spkrform_map, AS_PROGRAM, 8, igs017_state )
+ADDRESS_MAP_START(igs017_state::spkrform_map)
AM_RANGE( 0x00000, 0x0dfff ) AM_ROM
AM_RANGE( 0x0e000, 0x0efff ) AM_RAM
AM_RANGE( 0x0e9bf, 0x0e9bf ) AM_NOP // hack: uncomment to switch to Formosa
@@ -1767,7 +1780,7 @@ READ8_MEMBER(igs017_state::spkrform_input_r)
}
}
-static ADDRESS_MAP_START( spkrform_io, AS_IO, 8, igs017_state )
+ADDRESS_MAP_START(igs017_state::spkrform_io)
AM_RANGE( 0x0000, 0x7fff ) AM_DEVREADWRITE("igs017_igs031", igs017_igs031_device, read,write)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs
@@ -1845,7 +1858,7 @@ READ16_MEMBER(igs017_state::lhzb2_magic_r)
return 0xffff;
}
-static ADDRESS_MAP_START( lhzb2, AS_PROGRAM, 16, igs017_state )
+ADDRESS_MAP_START(igs017_state::lhzb2)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x500000, 0x503fff) AM_RAM
AM_RANGE(0x910000, 0x910003) AM_WRITE( lhzb2_magic_w )
@@ -2157,7 +2170,7 @@ WRITE16_MEMBER(igs017_state::lhzb2a_input_select_w)
}
}
-static ADDRESS_MAP_START( lhzb2a, AS_PROGRAM, 16, igs017_state )
+ADDRESS_MAP_START(igs017_state::lhzb2a)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
// prot2
@@ -2227,7 +2240,7 @@ READ16_MEMBER(igs017_state::slqz2_magic_r)
return 0xffff;
}
-static ADDRESS_MAP_START( slqz2, AS_PROGRAM, 16, igs017_state )
+ADDRESS_MAP_START(igs017_state::slqz2)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x602000, 0x602003) AM_WRITE( slqz2_magic_w )
@@ -3300,7 +3313,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(igs017_state::starzan, iqblocka)
MCFG_DEVICE_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/igs_fear.cpp b/src/mame/drivers/igs_fear.cpp
index a1bfe1d44e3..0a3e7eb478a 100644
--- a/src/mame/drivers/igs_fear.cpp
+++ b/src/mame/drivers/igs_fear.cpp
@@ -31,6 +31,7 @@ public:
optional_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void igs_fear(machine_config &config);
+ void igs_igs_fear_map(address_map &map);
};
@@ -44,7 +45,7 @@ uint32_t igs_fear_state::screen_update_igs_fear(screen_device &screen, bitmap_in
return 0;
}
-static ADDRESS_MAP_START( igs_igs_fear_map, AS_PROGRAM, 32, igs_fear_state )
+ADDRESS_MAP_START(igs_fear_state::igs_igs_fear_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM /* Internal ROM */
AM_RANGE(0x08000000, 0x0807ffff) AM_ROM AM_REGION("user1", 0)/* Game ROM */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/igs_m027.cpp b/src/mame/drivers/igs_m027.cpp
index 2ded286427f..c0bb07bb617 100644
--- a/src/mame/drivers/igs_m027.cpp
+++ b/src/mame/drivers/igs_m027.cpp
@@ -67,6 +67,7 @@ public:
void pgm_create_dummy_internal_arm_region();
void igs_majhong(machine_config &config);
void amazonia(machine_config &config);
+ void igs_majhong_map(address_map &map);
};
@@ -142,7 +143,7 @@ uint32_t igs_m027_state::screen_update_igs_majhong(screen_device &screen, bitmap
***************************************************************************/
-static ADDRESS_MAP_START( igs_majhong_map, AS_PROGRAM, 32, igs_m027_state )
+ADDRESS_MAP_START(igs_m027_state::igs_majhong_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM /* Internal ROM */
AM_RANGE(0x08000000, 0x0807ffff) AM_ROM AM_REGION("user1", 0)/* Game ROM */
AM_RANGE(0x10000000, 0x100003ff) AM_RAM AM_SHARE("igs_mainram")// main ram for asic?
diff --git a/src/mame/drivers/igs_m036.cpp b/src/mame/drivers/igs_m036.cpp
index bf2f61ca63e..39d664ff59b 100644
--- a/src/mame/drivers/igs_m036.cpp
+++ b/src/mame/drivers/igs_m036.cpp
@@ -84,6 +84,7 @@ public:
void igs_m036_tt(machine_config &config);
void igs_m036(machine_config &config);
+ void igs_m036_map(address_map &map);
};
@@ -94,7 +95,7 @@ uint32_t igs_m036_state::screen_update_igs_m036(screen_device &screen, bitmap_in
return 0;
}
-static ADDRESS_MAP_START( igs_m036_map, AS_PROGRAM, 32, igs_m036_state )
+ADDRESS_MAP_START(igs_m036_state::igs_m036_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM /* Internal ROM */
AM_RANGE(0x08000000, 0x081fffff) AM_ROM AM_REGION("user1", 0) // not 100% sure it maps here.
diff --git a/src/mame/drivers/igspc.cpp b/src/mame/drivers/igspc.cpp
index d82072f3ed9..1ffe00bff59 100644
--- a/src/mame/drivers/igspc.cpp
+++ b/src/mame/drivers/igspc.cpp
@@ -55,6 +55,8 @@ public:
{ }
void speeddrv(machine_config &config);
+ void speeddrv_io(address_map &map);
+ void speeddrv_map(address_map &map);
protected:
// devices
@@ -63,11 +65,11 @@ public:
DECLARE_DRIVER_INIT(speeddrv);
};
-static ADDRESS_MAP_START( speeddrv_map, AS_PROGRAM, 32, speeddrv_state )
+ADDRESS_MAP_START(speeddrv_state::speeddrv_map)
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( speeddrv_io, AS_IO, 32, speeddrv_state )
+ADDRESS_MAP_START(speeddrv_state::speeddrv_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/igspoker.cpp b/src/mame/drivers/igspoker.cpp
index 3541a18efc3..71a2b90104b 100644
--- a/src/mame/drivers/igspoker.cpp
+++ b/src/mame/drivers/igspoker.cpp
@@ -145,6 +145,10 @@ public:
void pktetris(machine_config &config);
void cpokerpk(machine_config &config);
void number10(machine_config &config);
+ void cpokerpk_io_map(address_map &map);
+ void igspoker_io_map(address_map &map);
+ void igspoker_prg_map(address_map &map);
+ void number10_io_map(address_map &map);
};
@@ -379,12 +383,12 @@ READ8_MEMBER(igspoker_state::exp_rom_r)
return rom[offset+0x10000];
}
-static ADDRESS_MAP_START( igspoker_prg_map, AS_PROGRAM, 8, igspoker_state )
+ADDRESS_MAP_START(igspoker_state::igspoker_prg_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM AM_REGION("maincpu", 0xf000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( igspoker_io_map, AS_IO, 8, igspoker_state )
+ADDRESS_MAP_START(igspoker_state::igspoker_io_map)
AM_RANGE(0x0000, 0xffff) AM_READ(exp_rom_r )
AM_RANGE(0x2000, 0x27ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x2800, 0x2fff) AM_RAM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
@@ -1136,7 +1140,7 @@ static INPUT_PORTS_START( igs_ncs )
INPUT_PORTS_END
-static ADDRESS_MAP_START( number10_io_map, AS_IO, 8, igspoker_state )
+ADDRESS_MAP_START(igspoker_state::number10_io_map)
AM_RANGE(0x0000, 0xffff) AM_READ(exp_rom_r )
AM_RANGE(0x2000, 0x27ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x2800, 0x2fff) AM_RAM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
@@ -1159,7 +1163,7 @@ static ADDRESS_MAP_START( number10_io_map, AS_IO, 8, igspoker_state )
AM_RANGE(0x7800, 0x7fff) AM_RAM_WRITE(fg_color_w ) AM_SHARE("fg_color_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpokerpk_io_map, AS_IO, 8, igspoker_state )
+ADDRESS_MAP_START(igspoker_state::cpokerpk_io_map)
AM_RANGE(0x0000, 0xffff) AM_READ(exp_rom_r )
AM_RANGE(0x2000, 0x27ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x2800, 0x2fff) AM_RAM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
diff --git a/src/mame/drivers/ikki.cpp b/src/mame/drivers/ikki.cpp
index b33e69bb7f5..533ff5f891b 100644
--- a/src/mame/drivers/ikki.cpp
+++ b/src/mame/drivers/ikki.cpp
@@ -47,7 +47,7 @@ WRITE8_MEMBER(ikki_state::ikki_coin_counters)
*
*************************************/
-static ADDRESS_MAP_START( ikki_cpu1, AS_PROGRAM, 8, ikki_state )
+ADDRESS_MAP_START(ikki_state::ikki_cpu1)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
@@ -63,7 +63,7 @@ static ADDRESS_MAP_START( ikki_cpu1, AS_PROGRAM, 8, ikki_state )
AM_RANGE(0xe00a, 0xe00b) AM_WRITEONLY AM_SHARE("scroll")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ikki_cpu2, AS_PROGRAM, 8, ikki_state )
+ADDRESS_MAP_START(ikki_state::ikki_cpu2)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
diff --git a/src/mame/drivers/imds.cpp b/src/mame/drivers/imds.cpp
index 4e6a6c10ab3..8aeee36492c 100644
--- a/src/mame/drivers/imds.cpp
+++ b/src/mame/drivers/imds.cpp
@@ -41,6 +41,8 @@ public:
uint8_t m_term_data;
virtual void machine_reset() override;
void imds(machine_config &config);
+ void imds_io(address_map &map);
+ void imds_mem(address_map &map);
};
READ8_MEMBER( imds_state::term_status_r )
@@ -55,13 +57,13 @@ READ8_MEMBER( imds_state::term_r )
return (m_term_data) ? 0x21 : 0x20;
}
-static ADDRESS_MAP_START(imds_mem, AS_PROGRAM, 8, imds_state)
+ADDRESS_MAP_START(imds_state::imds_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(imds_io, AS_IO, 8, imds_state)
+ADDRESS_MAP_START(imds_state::imds_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/imds2.cpp b/src/mame/drivers/imds2.cpp
index e3c9f48d2e3..28a04b9ba0f 100644
--- a/src/mame/drivers/imds2.cpp
+++ b/src/mame/drivers/imds2.cpp
@@ -110,11 +110,11 @@
// Frequency of beeper
#define IOC_BEEP_FREQ 3300
-static ADDRESS_MAP_START(ipc_mem_map , AS_PROGRAM , 8 , imds2_state)
+ADDRESS_MAP_START(imds2_state::ipc_mem_map)
AM_RANGE(0x0000 , 0xffff) AM_READWRITE(ipc_mem_read, ipc_mem_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ipc_io_map , AS_IO , 8 , imds2_state)
+ADDRESS_MAP_START(imds2_state::ipc_io_map)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0xc0 , 0xc0) AM_READWRITE(imds2_ipc_dbbout_r , imds2_ipc_dbbin_data_w)
AM_RANGE(0xc1 , 0xc1) AM_READWRITE(imds2_ipc_status_r , imds2_ipc_dbbin_cmd_w)
@@ -129,13 +129,13 @@ static ADDRESS_MAP_START(ipc_io_map , AS_IO , 8 , imds2_state)
AM_RANGE(0xff , 0xff) AM_WRITE(imds2_ipc_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ioc_mem_map , AS_PROGRAM , 8 , imds2_state)
+ADDRESS_MAP_START(imds2_state::ioc_mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000 , 0x1fff) AM_ROM
AM_RANGE(0x4000 , 0x5fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ioc_io_map , AS_IO , 8 , imds2_state)
+ADDRESS_MAP_START(imds2_state::ioc_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00 , 0x0f) AM_WRITE(imds2_ioc_dbbout_w)
AM_RANGE(0x20 , 0x2f) AM_WRITE(imds2_ioc_f0_w)
diff --git a/src/mame/drivers/imolagp.cpp b/src/mame/drivers/imolagp.cpp
index 3d6f869946c..8150aab4c38 100644
--- a/src/mame/drivers/imolagp.cpp
+++ b/src/mame/drivers/imolagp.cpp
@@ -133,6 +133,10 @@ public:
DECLARE_PALETTE_INIT(imolagp);
uint32_t screen_update_imolagp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void imolagp(machine_config &config);
+ void imolagp_master_io(address_map &map);
+ void imolagp_master_map(address_map &map);
+ void imolagp_slave_io(address_map &map);
+ void imolagp_slave_map(address_map &map);
};
@@ -325,7 +329,7 @@ READ8_MEMBER(imolagp_state::imola_draw_mode_r)
return 0;
}
-static ADDRESS_MAP_START( imolagp_master_map, AS_PROGRAM, 8, imolagp_state )
+ADDRESS_MAP_START(imolagp_state::imolagp_master_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x2800, 0x2803) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
@@ -341,20 +345,20 @@ static ADDRESS_MAP_START( imolagp_master_map, AS_PROGRAM, 8, imolagp_state )
AM_RANGE(0x6000, 0x6000) AM_READ_PORT("DSWB")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( imolagp_master_io, AS_IO, 8, imolagp_state )
+ADDRESS_MAP_START(imolagp_state::imolagp_master_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(trigger_slave_nmi_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( imolagp_slave_map, AS_PROGRAM, 8, imolagp_state )
+ADDRESS_MAP_START(imolagp_state::imolagp_slave_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x9fff, 0xa000) AM_READ(receive_data_r)
AM_RANGE(0xc000, 0xffff) AM_WRITE(screenram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( imolagp_slave_io, AS_IO, 8, imolagp_state )
+ADDRESS_MAP_START(imolagp_state::imolagp_slave_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0xff) AM_READ(imola_draw_mode_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/imsai.cpp b/src/mame/drivers/imsai.cpp
index 203f71135eb..2450f5930dd 100644
--- a/src/mame/drivers/imsai.cpp
+++ b/src/mame/drivers/imsai.cpp
@@ -40,6 +40,8 @@ public:
DECLARE_WRITE8_MEMBER(control_w);
void imsai(machine_config &config);
+ void imsai_io(address_map &map);
+ void imsai_mem(address_map &map);
private:
uint8_t m_term_data;
virtual void machine_reset() override;
@@ -49,7 +51,7 @@ private:
};
-static ADDRESS_MAP_START(imsai_mem, AS_PROGRAM, 8, imsai_state)
+ADDRESS_MAP_START(imsai_state::imsai_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("prom", 0)
AM_RANGE(0xd000, 0xd0ff) AM_RAM
@@ -57,7 +59,7 @@ static ADDRESS_MAP_START(imsai_mem, AS_PROGRAM, 8, imsai_state)
AM_RANGE(0xd800, 0xdfff) AM_ROM AM_REGION("prom", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(imsai_io, AS_IO, 8, imsai_state)
+ADDRESS_MAP_START(imsai_state::imsai_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x02) AM_READ(keyin_r) AM_DEVWRITE("terminal", generic_terminal_device, write)
diff --git a/src/mame/drivers/inder.cpp b/src/mame/drivers/inder.cpp
index 8ab5ad05d8a..d47509eb6c7 100644
--- a/src/mame/drivers/inder.cpp
+++ b/src/mame/drivers/inder.cpp
@@ -86,6 +86,12 @@ public:
void brvteam(machine_config &config);
void canasta(machine_config &config);
void lapbylap(machine_config &config);
+ void brvteam_map(address_map &map);
+ void canasta_map(address_map &map);
+ void inder_map(address_map &map);
+ void inder_sub_map(address_map &map);
+ void lapbylap_map(address_map &map);
+ void lapbylap_sub_map(address_map &map);
private:
void update_mus();
bool m_pc0;
@@ -109,7 +115,7 @@ private:
required_ioport_array<11> m_switches;
};
-static ADDRESS_MAP_START( brvteam_map, AS_PROGRAM, 8, inder_state )
+ADDRESS_MAP_START(inder_state::brvteam_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x20ff) AM_WRITE(disp_w)
AM_RANGE(0x4000, 0x43ff) AM_RAM // pair of 2114
@@ -120,7 +126,7 @@ static ADDRESS_MAP_START( brvteam_map, AS_PROGRAM, 8, inder_state )
AM_RANGE(0x4b00, 0x4b00) AM_WRITE(sn_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( canasta_map, AS_PROGRAM, 8, inder_state )
+ADDRESS_MAP_START(inder_state::canasta_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x20ff) AM_WRITE(disp_w)
AM_RANGE(0x4000, 0x43ff) AM_RAM // pair of 2114
@@ -133,7 +139,7 @@ static ADDRESS_MAP_START( canasta_map, AS_PROGRAM, 8, inder_state )
AM_RANGE(0x4b02, 0x4b02) AM_DEVWRITE("ay", ay8910_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lapbylap_map, AS_PROGRAM, 8, inder_state )
+ADDRESS_MAP_START(inder_state::lapbylap_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x20ff) AM_WRITE(disp_w)
AM_RANGE(0x4000, 0x43ff) AM_RAM // pair of 2114
@@ -144,7 +150,7 @@ static ADDRESS_MAP_START( lapbylap_map, AS_PROGRAM, 8, inder_state )
AM_RANGE(0x4b00, 0x4b00) AM_WRITE(sndcmd_lapbylap_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lapbylap_sub_map, AS_PROGRAM, 8, inder_state )
+ADDRESS_MAP_START(inder_state::lapbylap_sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM // 6116
AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("ay1", ay8910_device, address_w)
@@ -155,7 +161,7 @@ static ADDRESS_MAP_START( lapbylap_sub_map, AS_PROGRAM, 8, inder_state )
AM_RANGE(0xa002, 0xa002) AM_DEVWRITE("ay2", ay8910_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( inder_map, AS_PROGRAM, 8, inder_state )
+ADDRESS_MAP_START(inder_state::inder_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("nvram") // 6116, battery-backed
AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x13fc) AM_DEVREADWRITE("ppi60", i8255_device, read, write)
@@ -167,7 +173,7 @@ static ADDRESS_MAP_START( inder_map, AS_PROGRAM, 8, inder_state )
AM_RANGE(0x6ce0, 0x6ce0) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( inder_sub_map, AS_PROGRAM, 8, inder_state )
+ADDRESS_MAP_START(inder_state::inder_sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_MIRROR(0x1800) AM_RAM // 6116
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("ppi", i8255_device, read, write)
diff --git a/src/mame/drivers/inderp.cpp b/src/mame/drivers/inderp.cpp
index 1b0a3715a22..c120a9cfd4c 100644
--- a/src/mame/drivers/inderp.cpp
+++ b/src/mame/drivers/inderp.cpp
@@ -37,6 +37,7 @@ public:
DECLARE_READ8_MEMBER(inputs_r);
void inderp(machine_config &config);
+ void maincpu_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_ioport_array<10> m_inputs;
@@ -44,7 +45,7 @@ private:
u8 m_irqcnt;
};
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, inderp_state )
+ADDRESS_MAP_START(inderp_state::maincpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x500) AM_RAM // 2x 5101/2101, battery-backed
AM_RANGE(0x0200, 0x02ff) AM_MIRROR(0x400) // outputs CI-110 (displays)
diff --git a/src/mame/drivers/indiana.cpp b/src/mame/drivers/indiana.cpp
index 2b3228fa551..1122c3f1f93 100644
--- a/src/mame/drivers/indiana.cpp
+++ b/src/mame/drivers/indiana.cpp
@@ -39,10 +39,11 @@ public:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
void indiana(machine_config &config);
+ void indiana_mem(address_map &map);
};
-static ADDRESS_MAP_START(indiana_mem, AS_PROGRAM, 32, indiana_state)
+ADDRESS_MAP_START(indiana_state::indiana_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0000ffff) AM_MIRROR(0x7f800000) AM_ROM AM_REGION("user1", 0) // 64Kb of EPROM
AM_RANGE(0x00100000, 0x00107fff) AM_MIRROR(0x7f8f8000) AM_RAM // SRAM 32Kb of SRAM
diff --git a/src/mame/drivers/indigo.cpp b/src/mame/drivers/indigo.cpp
index edf5d1869e8..acfb503a170 100644
--- a/src/mame/drivers/indigo.cpp
+++ b/src/mame/drivers/indigo.cpp
@@ -61,6 +61,9 @@ public:
static void cdrom_config(device_t *device);
void indigo4k(machine_config &config);
void indigo3k(machine_config &config);
+ void indigo3k_map(address_map &map);
+ void indigo4k_map(address_map &map);
+ void indigo_map(address_map &map);
private:
struct hpc_t
{
@@ -463,7 +466,7 @@ WRITE32_MEMBER(indigo_state::int_w)
osd_printf_info("INT: write %x to ofs %x (mask %x) (PC=%x)\n", data, offset, mem_mask, m_maincpu->pc());
}
-static ADDRESS_MAP_START( indigo_map, AS_PROGRAM, 32, indigo_state )
+ADDRESS_MAP_START(indigo_state::indigo_map)
AM_RANGE( 0x00000000, 0x001fffff ) AM_RAM AM_SHARE("share10")
AM_RANGE( 0x08000000, 0x08ffffff ) AM_RAM AM_SHARE("share5")
AM_RANGE( 0x09000000, 0x097fffff ) AM_RAM AM_SHARE("share6")
@@ -475,12 +478,12 @@ static ADDRESS_MAP_START( indigo_map, AS_PROGRAM, 32, indigo_state )
AM_RANGE( 0x1fbd9000, 0x1fbd903f ) AM_READWRITE(int_r, int_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( indigo3k_map, AS_PROGRAM, 32, indigo_state )
+ADDRESS_MAP_START(indigo_state::indigo3k_map)
AM_IMPORT_FROM( indigo_map )
AM_RANGE( 0x1fc00000, 0x1fc3ffff ) AM_ROM AM_SHARE("share2") AM_REGION( "user1", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( indigo4k_map, AS_PROGRAM, 32, indigo_state )
+ADDRESS_MAP_START(indigo_state::indigo4k_map)
AM_IMPORT_FROM( indigo_map )
AM_RANGE( 0x1fa00000, 0x1fa1ffff ) AM_DEVREADWRITE("sgi_mc", sgi_mc_device, read, write )
AM_RANGE( 0x1fc00000, 0x1fc7ffff ) AM_ROM AM_SHARE("share2") AM_REGION( "user1", 0 )
diff --git a/src/mame/drivers/indy_indigo2.cpp b/src/mame/drivers/indy_indigo2.cpp
index 89eed7ae805..a0da4719e65 100644
--- a/src/mame/drivers/indy_indigo2.cpp
+++ b/src/mame/drivers/indy_indigo2.cpp
@@ -665,6 +665,7 @@ public:
void ip225015(machine_config &config);
void ip224613(machine_config &config);
void ip244415(machine_config &config);
+ void ip225015_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -1165,7 +1166,7 @@ WRITE32_MEMBER(ip22_state::hpc3_unkpbus0_w)
//COMBINE_DATA(&m_unkpbus0[offset]);
}
-static ADDRESS_MAP_START( ip225015_map, AS_PROGRAM, 32, ip22_state )
+ADDRESS_MAP_START(ip22_state::ip225015_map)
AM_RANGE( 0x00000000, 0x0007ffff ) AM_RAMBANK( "bank1" ) /* mirror of first 512k of main RAM */
AM_RANGE( 0x08000000, 0x0fffffff ) AM_SHARE("mainram") AM_RAM_WRITE(ip22_write_ram) /* 128 MB of main RAM */
AM_RANGE( 0x1f0f0000, 0x1f0f1fff ) AM_DEVREADWRITE("newport", newport_video_device, rex3_r, rex3_w )
diff --git a/src/mame/drivers/instantm.cpp b/src/mame/drivers/instantm.cpp
index 703c80e26e6..c5717f69aa2 100644
--- a/src/mame/drivers/instantm.cpp
+++ b/src/mame/drivers/instantm.cpp
@@ -44,6 +44,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(clock_w);
void instantm(machine_config &config);
+ void main_map(address_map &map);
+ void sub_io(address_map &map);
+ void sub_map(address_map &map);
private:
u8 m_port01;
bool m_clock_en;
@@ -77,7 +80,7 @@ WRITE_LINE_MEMBER( instantm_state::clock_w )
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, instantm_state )
+ADDRESS_MAP_START(instantm_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x8000) //AM_WRITE
@@ -92,12 +95,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, instantm_state )
ADDRESS_MAP_END
// doesn't use ram
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, instantm_state )
+ADDRESS_MAP_START(instantm_state::sub_map)
AM_RANGE(0x0000, 0xffff) AM_ROM
AM_RANGE(0x0000, 0x0000) AM_DEVWRITE("dac", dac_byte_interface, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_io, AS_PROGRAM, 8, instantm_state )
+ADDRESS_MAP_START(instantm_state::sub_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_READWRITE(port01_r,port01_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/instruct.cpp b/src/mame/drivers/instruct.cpp
index b8ad90ebdb0..4141ec76974 100644
--- a/src/mame/drivers/instruct.cpp
+++ b/src/mame/drivers/instruct.cpp
@@ -78,6 +78,9 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER(instruct);
INTERRUPT_GEN_MEMBER(t2l_int);
void instruct(machine_config &config);
+ void data_map(address_map &map);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
uint16_t m_lar;
@@ -215,7 +218,7 @@ INTERRUPT_GEN_MEMBER( instruct_state::t2l_int )
}
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, instruct_state )
+ADDRESS_MAP_START(instruct_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0ffe) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x0fff, 0x0fff) AM_READWRITE(port_r,port_w)
@@ -224,7 +227,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, instruct_state )
AM_RANGE(0x2000, 0x7fff) AM_RAM AM_SHARE("extram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, instruct_state )
+ADDRESS_MAP_START(instruct_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x07, 0x07) AM_READWRITE(port_r,port_w)
AM_RANGE(0xf8, 0xf8) AM_WRITE(portf8_w)
@@ -235,7 +238,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, instruct_state )
AM_RANGE(0xfe, 0xfe) AM_READ(portfe_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_map, AS_DATA, 8, instruct_state )
+ADDRESS_MAP_START(instruct_state::data_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(port_r,port_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/inteladv.cpp b/src/mame/drivers/inteladv.cpp
index 9fedefb6729..05b57d758ff 100644
--- a/src/mame/drivers/inteladv.cpp
+++ b/src/mame/drivers/inteladv.cpp
@@ -35,6 +35,8 @@ public:
uint32_t screen_update_inteladv(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void inteladv(machine_config &config);
+ void inteladv_main(address_map &map);
+ void inteladv(address_map &map);
protected:
virtual void machine_start() override;
@@ -58,7 +60,7 @@ uint32_t inteladv_state::screen_update_inteladv(screen_device &screen, bitmap_in
return 0;
}
-static ADDRESS_MAP_START( inteladv_main, AS_PROGRAM, 8, inteladv_state )
+ADDRESS_MAP_START(inteladv_state::inteladv_main)
AM_RANGE(0x0000, 0x01ff) AM_RAM // zero page and stack
AM_RANGE(0x4000, 0x5fff) AM_ROM AM_REGION("maincpu", 0x0000) // boot code at 4000
AM_RANGE(0x8000, 0x8fff) AM_ROM AM_REGION("maincpu", 0x8000) // fixed ROM region?
diff --git a/src/mame/drivers/intellec4.cpp b/src/mame/drivers/intellec4.cpp
index cff6bc9b716..f13f69cb531 100644
--- a/src/mame/drivers/intellec4.cpp
+++ b/src/mame/drivers/intellec4.cpp
@@ -102,6 +102,14 @@ public:
void intellec4(machine_config &config);
+ void intellec4_program_banks(address_map &map);
+ void intellec4_program_memory(address_map &map);
+ void intellec4_ram_memory(address_map &map);
+ void intellec4_ram_ports(address_map &map);
+ void intellec4_ram_status(address_map &map);
+ void intellec4_rom(address_map &map);
+ void intellec4_rom_port_banks(address_map &map);
+ void intellec4_rom_ports(address_map &map);
protected:
intellec4_state(machine_config const &mconfig, device_type type, char const *tag)
: driver_device(mconfig, type, tag)
@@ -226,7 +234,7 @@ private:
System address spaces
----------------------------------*/
-ADDRESS_MAP_START(intellec4_program_banks, mcs40_cpu_device_base::AS_ROM, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_program_banks)
ADDRESS_MAP_UNMAP_LOW
// 0x0000...0x0fff MON
@@ -240,7 +248,7 @@ ADDRESS_MAP_START(intellec4_program_banks, mcs40_cpu_device_base::AS_ROM, 8, int
// 0x3000...0x3fff unmapped in case someone presses two mode switches at once
ADDRESS_MAP_END
-ADDRESS_MAP_START(intellec4_rom_port_banks, mcs40_cpu_device_base::AS_ROM_PORTS, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_rom_port_banks)
ADDRESS_MAP_UNMAP_HIGH
// 0x0000...0x07ff MON
@@ -263,32 +271,32 @@ ADDRESS_MAP_END
CPU views of address spaces
---------------------------------*/
-ADDRESS_MAP_START(intellec4_rom, mcs40_cpu_device_base::AS_ROM, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_rom)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x0fff) AM_DEVICE("prgbank", address_map_bank_device, amap8)
ADDRESS_MAP_END
-ADDRESS_MAP_START(intellec4_ram_memory, mcs40_cpu_device_base::AS_RAM_MEMORY, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_ram_memory)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("memory") // 4 * 4002
ADDRESS_MAP_END
-ADDRESS_MAP_START(intellec4_rom_ports, mcs40_cpu_device_base::AS_ROM_PORTS, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_rom_ports)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_DEVICE("rpbank", address_map_bank_device, amap8)
ADDRESS_MAP_END
-ADDRESS_MAP_START(intellec4_ram_status, mcs40_cpu_device_base::AS_RAM_STATUS, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_ram_status)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x003f) AM_RAM AM_SHARE("status") // 4 * 4002
ADDRESS_MAP_END
-ADDRESS_MAP_START(intellec4_ram_ports, mcs40_cpu_device_base::AS_RAM_PORTS, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_ram_ports)
AM_RANGE(0x00, 0x00) AM_WRITE(ram0_out)
AM_RANGE(0x01, 0x01) AM_WRITE(ram1_out)
ADDRESS_MAP_END
-ADDRESS_MAP_START(intellec4_program_memory, mcs40_cpu_device_base::AS_PROGRAM_MEMORY, 8, intellec4_state)
+ADDRESS_MAP_START(intellec4_state::intellec4_program_memory)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x01ff) AM_READWRITE(pm_read, pm_write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/interact.cpp b/src/mame/drivers/interact.cpp
index 86ec90e7887..43692e7f52c 100644
--- a/src/mame/drivers/interact.cpp
+++ b/src/mame/drivers/interact.cpp
@@ -78,10 +78,11 @@ public:
uint32_t screen_update_interact(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void hector1(machine_config &config);
void interact(machine_config &config);
+ void interact_mem(address_map &map);
};
-static ADDRESS_MAP_START(interact_mem, AS_PROGRAM, 8, interact_state )
+ADDRESS_MAP_START(interact_state::interact_mem)
ADDRESS_MAP_UNMAP_HIGH
/* Main ROM page*/
AM_RANGE(0x0000,0x3fff) AM_ROM /*BANK(2)*/
diff --git a/src/mame/drivers/interpro.cpp b/src/mame/drivers/interpro.cpp
index ac44985b1ea..c0dd2e7f77b 100644
--- a/src/mame/drivers/interpro.cpp
+++ b/src/mame/drivers/interpro.cpp
@@ -320,87 +320,87 @@ READ8_MEMBER(interpro_state::nodeid_r)
}
// these maps connect the cpu virtual addresses to the mmu
-static ADDRESS_MAP_START(c300_insn_map, AS_PROGRAM, 32, interpro_state)
+ADDRESS_MAP_START(interpro_state::c300_insn_map)
AM_RANGE(0x00000000, 0xffffffff) AM_DEVREAD(INTERPRO_MMU_TAG "_i", cammu_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(c300_data_map, AS_DATA, 32, interpro_state)
+ADDRESS_MAP_START(interpro_state::c300_data_map)
AM_RANGE(0x00000000, 0xffffffff) AM_DEVREADWRITE(INTERPRO_MMU_TAG "_d", cammu_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(c400_insn_map, AS_PROGRAM, 32, interpro_state)
+ADDRESS_MAP_START(interpro_state::c400_insn_map)
AM_RANGE(0x00000000, 0xffffffff) AM_DEVREAD(INTERPRO_MMU_TAG, cammu_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(c400_data_map, AS_DATA, 32, interpro_state)
+ADDRESS_MAP_START(interpro_state::c400_data_map)
AM_RANGE(0x00000000, 0xffffffff) AM_DEVREADWRITE(INTERPRO_MMU_TAG, cammu_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(interpro_common_map, 0, 32, interpro_state)
+ADDRESS_MAP_START(interpro_state::interpro_common_map)
// FIXME: don't know what this range is for
AM_RANGE(0x08000000, 0x08000fff) AM_NOP
AM_RANGE(0x4f007e00, 0x4f007eff) AM_DEVICE(INTERPRO_SGA_TAG, interpro_sga_device, map)
- AM_RANGE(0x7f000100, 0x7f00011f) AM_DEVICE8(INTERPRO_FDC_TAG, upd765_family_device, map, 0xff)
+ AM_RANGE(0x7f000100, 0x7f00011f) AM_DEVICE8(INTERPRO_FDC_TAG, upd765_family_device, map, 0x000000ff)
AM_RANGE(0x7f000200, 0x7f0002ff) AM_DEVICE(INTERPRO_ARBGA_TAG, interpro_arbga_device, map)
- AM_RANGE(0x7f000300, 0x7f000303) AM_READ16(sreg_error_r, 0xffff)
- AM_RANGE(0x7f000304, 0x7f000307) AM_READWRITE16(sreg_status_r, sreg_led_w, 0xffff)
- AM_RANGE(0x7f000308, 0x7f00030b) AM_READWRITE16(sreg_ctrl1_r, sreg_ctrl1_w, 0xffff)
- AM_RANGE(0x7f00030c, 0x7f00030f) AM_READWRITE16(sreg_ctrl2_r, sreg_ctrl2_w, 0xffff)
+ AM_RANGE(0x7f000300, 0x7f000303) AM_READ16(sreg_error_r, 0x0000ffff)
+ AM_RANGE(0x7f000304, 0x7f000307) AM_READWRITE16(sreg_status_r, sreg_led_w, 0x0000ffff)
+ AM_RANGE(0x7f000308, 0x7f00030b) AM_READWRITE16(sreg_ctrl1_r, sreg_ctrl1_w, 0x0000ffff)
+ AM_RANGE(0x7f00030c, 0x7f00030f) AM_READWRITE16(sreg_ctrl2_r, sreg_ctrl2_w, 0x0000ffff)
- AM_RANGE(0x7f00031c, 0x7f00031f) AM_READWRITE16(sreg_ctrl3_r, sreg_ctrl3_w, 0xffff)
+ AM_RANGE(0x7f00031c, 0x7f00031f) AM_READWRITE16(sreg_ctrl3_r, sreg_ctrl3_w, 0x0000ffff)
- AM_RANGE(0x7f000400, 0x7f00040f) AM_DEVREADWRITE8(INTERPRO_SCC1_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff)
- AM_RANGE(0x7f000410, 0x7f00041f) AM_DEVREADWRITE8(INTERPRO_SCC2_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff)
+ AM_RANGE(0x7f000400, 0x7f00040f) AM_DEVREADWRITE8(INTERPRO_SCC1_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0x000000ff)
+ AM_RANGE(0x7f000410, 0x7f00041f) AM_DEVREADWRITE8(INTERPRO_SCC2_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0x000000ff)
- AM_RANGE(0x7f000500, 0x7f000503) AM_DEVREADWRITE8_MOD(INTERPRO_RTC_TAG, mc146818_device, read, write, xor<0x1>, 0xff)
- AM_RANGE(0x7f000600, 0x7f000603) AM_DEVWRITE8(INTERPRO_RTC_TAG, mc146818_device, write, 0xff)
+ ;map(0x7f000500, 0x7f000503).lrw8("rtc_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_rtc->read(space, offset^1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_rtc->write(space, offset^1, data, mem_mask); }).umask32(0x000000ff);
+ AM_RANGE(0x7f000600, 0x7f000603) AM_DEVWRITE8(INTERPRO_RTC_TAG, mc146818_device, write, 0x000000ff)
AM_RANGE(0x7f000600, 0x7f00060f) AM_READ8(nodeid_r, 0xff)
// the system board id prom
AM_RANGE(0x7f000700, 0x7f00077f) AM_ROM AM_REGION(INTERPRO_IDPROM_TAG, 0)
// scsi registers have unusual address mapping
- AM_RANGE(0x7f001000, 0x7f001003) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, tcounter_lo_r, tcount_lo_w, 0xff00)
- AM_RANGE(0x7f001100, 0x7f001103) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, tcounter_hi_r, tcount_hi_w, 0xff00)
- AM_RANGE(0x7f001200, 0x7f001203) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, fifo_r, fifo_w, 0xff00)
- AM_RANGE(0x7f001300, 0x7f001303) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, command_r, command_w, 0xff00)
- AM_RANGE(0x7f001400, 0x7f001403) AM_DEVREAD8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, status_r, 0xff00) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, bus_id_w, 0xff00)
- AM_RANGE(0x7f001500, 0x7f001503) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, istatus_r, timeout_w, 0xff00)
- AM_RANGE(0x7f001600, 0x7f001603) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, seq_step_r, sync_period_w, 0xff00)
- AM_RANGE(0x7f001700, 0x7f001703) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, fifo_flags_r, sync_offset_w, 0xff00)
- AM_RANGE(0x7f001800, 0x7f001803) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, conf_r, conf_w, 0xff00)
- AM_RANGE(0x7f001900, 0x7f001903) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, clock_w, 0xff00)
- AM_RANGE(0x7f001a00, 0x7f001a03) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, test_w, 0xff00)
- AM_RANGE(0x7f001b00, 0x7f001b03) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, conf2_r, conf2_w, 0xff00)
+ AM_RANGE(0x7f001000, 0x7f001003) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, tcounter_lo_r, tcount_lo_w, 0x0000ff00)
+ AM_RANGE(0x7f001100, 0x7f001103) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, tcounter_hi_r, tcount_hi_w, 0x0000ff00)
+ AM_RANGE(0x7f001200, 0x7f001203) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, fifo_r, fifo_w, 0x0000ff00)
+ AM_RANGE(0x7f001300, 0x7f001303) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, command_r, command_w, 0x0000ff00)
+ AM_RANGE(0x7f001400, 0x7f001403) AM_DEVREAD8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, status_r, 0xff00) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, bus_id_w, 0x0000ff00)
+ AM_RANGE(0x7f001500, 0x7f001503) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, istatus_r, timeout_w, 0x0000ff00)
+ AM_RANGE(0x7f001600, 0x7f001603) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, seq_step_r, sync_period_w, 0x0000ff00)
+ AM_RANGE(0x7f001700, 0x7f001703) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, fifo_flags_r, sync_offset_w, 0x0000ff00)
+ AM_RANGE(0x7f001800, 0x7f001803) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, conf_r, conf_w, 0x0000ff00)
+ AM_RANGE(0x7f001900, 0x7f001903) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, clock_w, 0x0000ff00)
+ AM_RANGE(0x7f001a00, 0x7f001a03) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, test_w, 0x0000ff00)
+ AM_RANGE(0x7f001b00, 0x7f001b03) AM_DEVREADWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c90a_device, conf2_r, conf2_w, 0x0000ff00)
AM_RANGE(0x7f0fff00, 0x7f0fffff) AM_DEVICE(INTERPRO_IOGA_TAG, interpro_ioga_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(turquoise_base_map, 0, 32, turquoise_state)
+ADDRESS_MAP_START(turquoise_state::turquoise_base_map)
AM_IMPORT_FROM(interpro_common_map)
AM_RANGE(0x40000000, 0x4000003f) AM_DEVICE(INTERPRO_MCGA_TAG, interpro_mcga_device, map)
- AM_RANGE(0x7f000300, 0x7f000303) AM_WRITE8(sreg_error_w, 0xff)
+ AM_RANGE(0x7f000300, 0x7f000303) AM_WRITE8(sreg_error_w, 0x000000ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(turquoise_main_map, 0, 32, turquoise_state)
+ADDRESS_MAP_START(turquoise_state::turquoise_main_map)
AM_IMPORT_FROM(turquoise_base_map)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_SHARE(RAM_TAG)
AM_RANGE(0x7f100000, 0x7f13ffff) AM_ROM AM_REGION(INTERPRO_EPROM_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sapphire_base_map, 0, 32, sapphire_state)
+ADDRESS_MAP_START(sapphire_state::sapphire_base_map)
AM_IMPORT_FROM(interpro_common_map)
AM_RANGE(0x40000000, 0x4000004f) AM_DEVICE(INTERPRO_MCGA_TAG, interpro_fmcc_device, map)
- AM_RANGE(0x7f001c00, 0x7f001c03) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c94_device, conf3_w, 0xff00)
- AM_RANGE(0x7f001f00, 0x7f001f03) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c94_device, fifo_align_w, 0xff00)
+ AM_RANGE(0x7f001c00, 0x7f001c03) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c94_device, conf3_w, 0x0000ff00)
+ AM_RANGE(0x7f001f00, 0x7f001f03) AM_DEVWRITE8(INTERPRO_SCSI_DEVICE_TAG, ncr53c94_device, fifo_align_w, 0x0000ff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sapphire_main_map, 0, 32, sapphire_state)
+ADDRESS_MAP_START(sapphire_state::sapphire_main_map)
AM_IMPORT_FROM(sapphire_base_map)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_SHARE(RAM_TAG)
@@ -409,7 +409,7 @@ static ADDRESS_MAP_START(sapphire_main_map, 0, 32, sapphire_state)
AM_RANGE(0x7f180000, 0x7f1fffff) AM_DEVREADWRITE8(INTERPRO_FLASH_TAG "_hi", intel_28f010_device, read, write, 0xff00ff00) AM_MASK(0x3ffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(turquoise_io_map, 1, 32, interpro_state)
+ADDRESS_MAP_START(turquoise_state::turquoise_io_map)
AM_IMPORT_FROM(turquoise_base_map)
AM_RANGE(0x00000800, 0x000009ff) AM_DEVICE(INTERPRO_MMU_TAG "_d", cammu_c3_device, map)
@@ -417,13 +417,13 @@ static ADDRESS_MAP_START(turquoise_io_map, 1, 32, interpro_state)
AM_RANGE(0x00000c00, 0x00000dff) AM_DEVICE(INTERPRO_MMU_TAG "_d", cammu_c3_device, map_global)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sapphire_io_map, 1, 32, interpro_state)
+ADDRESS_MAP_START(sapphire_state::sapphire_io_map)
AM_IMPORT_FROM(sapphire_base_map)
AM_RANGE(0x00000000, 0x00001fff) AM_DEVICE(INTERPRO_MMU_TAG, cammu_c4_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(interpro_boot_map, 2, 32, interpro_state)
+ADDRESS_MAP_START(interpro_state::interpro_boot_map)
// FIXME: the real system may have some initial boot instructions in this boot
// memory space which jump to the start of the boot eprom code, or there may
// be some special address decoding logic for boot. For now, we fake it in the
@@ -431,11 +431,11 @@ static ADDRESS_MAP_START(interpro_boot_map, 2, 32, interpro_state)
AM_RANGE(0x00000000, 0x00001fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(interpro_82586_map, 0, 16, turquoise_state)
+ADDRESS_MAP_START(turquoise_state::interpro_82586_map)
AM_RANGE(0x00000000, 0x00ffffff) AM_DEVREADWRITE(INTERPRO_IOGA_TAG, turquoise_ioga_device, eth_r, eth_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(interpro_82596_map, 0, 32, sapphire_state)
+ADDRESS_MAP_START(sapphire_state::interpro_82596_map)
AM_RANGE(0x00000000, 0xffffffff) AM_DEVREADWRITE(INTERPRO_IOGA_TAG, sapphire_ioga_device, eth_r, eth_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/intrscti.cpp b/src/mame/drivers/intrscti.cpp
index c8ad502e011..299c58895e2 100644
--- a/src/mame/drivers/intrscti.cpp
+++ b/src/mame/drivers/intrscti.cpp
@@ -40,6 +40,10 @@ public:
virtual void video_start() override;
uint32_t screen_update_intrscti(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void intrscti(machine_config &config);
+ void intrscti_io_map(address_map &map);
+ void intrscti_map(address_map &map);
+ void intrscti_sub_io_map(address_map &map);
+ void intrscti_sub_map(address_map &map);
};
void intrscti_state::video_start()
@@ -81,27 +85,27 @@ uint32_t intrscti_state::screen_update_intrscti(screen_device &screen, bitmap_in
}
-static ADDRESS_MAP_START( intrscti_map, AS_PROGRAM, 8, intrscti_state )
+ADDRESS_MAP_START(intrscti_state::intrscti_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0x7000, 0x77ff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x8000, 0x8fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intrscti_io_map, AS_IO, 8, intrscti_state )
+ADDRESS_MAP_START(intrscti_state::intrscti_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intrscti_sub_map, AS_PROGRAM, 8, intrscti_state )
+ADDRESS_MAP_START(intrscti_state::intrscti_sub_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
// AM_RANGE(0x0000, 0xffff) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intrscti_sub_io_map, AS_IO, 8, intrscti_state )
+ADDRESS_MAP_START(intrscti_state::intrscti_sub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0xff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/intv.cpp b/src/mame/drivers/intv.cpp
index ff74ec7ebf8..4070e39ec97 100644
--- a/src/mame/drivers/intv.cpp
+++ b/src/mame/drivers/intv.cpp
@@ -279,7 +279,7 @@ static INPUT_PORTS_START( intvkbd )
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_CODE(KEYCODE_7_PAD)
INPUT_PORTS_END
-static ADDRESS_MAP_START( intv_mem, AS_PROGRAM, 16, intv_state )
+ADDRESS_MAP_START(intv_state::intv_mem)
AM_RANGE(0x0000, 0x003f) AM_READWRITE(intv_stic_r, intv_stic_w)
AM_RANGE(0x0100, 0x01ef) AM_READWRITE(intv_ram8_r, intv_ram8_w)
AM_RANGE(0x01f0, 0x01ff) AM_DEVREADWRITE8("ay8914", ay8914_device, read, write, 0x00ff)
@@ -305,7 +305,7 @@ static ADDRESS_MAP_START( intv_mem, AS_PROGRAM, 16, intv_state )
AM_RANGE(0xf000, 0xffff) AM_DEVREAD("cartslot", intv_cart_slot_device, read_romf0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intvoice_mem, AS_PROGRAM, 16, intv_state )
+ADDRESS_MAP_START(intv_state::intvoice_mem)
AM_RANGE(0x0000, 0x003f) AM_READWRITE(intv_stic_r, intv_stic_w)
AM_RANGE(0x0080, 0x0081) AM_DEVREADWRITE("voice", intv_voice_device, read_speech, write_speech) // Intellivoice
AM_RANGE(0x0100, 0x01ef) AM_READWRITE(intv_ram8_r, intv_ram8_w)
@@ -332,7 +332,7 @@ static ADDRESS_MAP_START( intvoice_mem, AS_PROGRAM, 16, intv_state )
AM_RANGE(0xf000, 0xffff) AM_DEVREAD("voice", intv_voice_device, read_romf0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intv2_mem , AS_PROGRAM, 16, intv_state )
+ADDRESS_MAP_START(intv_state::intv2_mem)
AM_RANGE(0x0000, 0x003f) AM_READWRITE(intv_stic_r, intv_stic_w)
AM_RANGE(0x0100, 0x01ef) AM_READWRITE(intv_ram8_r, intv_ram8_w)
AM_RANGE(0x01f0, 0x01ff) AM_DEVREADWRITE8("ay8914", ay8914_device, read, write, 0x00ff)
@@ -358,7 +358,7 @@ static ADDRESS_MAP_START( intv2_mem , AS_PROGRAM, 16, intv_state )
AM_RANGE(0xf000, 0xffff) AM_DEVREAD("cartslot", intv_cart_slot_device, read_romf0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intvecs_mem , AS_PROGRAM, 16, intv_state )
+ADDRESS_MAP_START(intv_state::intvecs_mem)
AM_RANGE(0x0000, 0x003f) AM_READWRITE(intv_stic_r, intv_stic_w)
AM_RANGE(0x0080, 0x0081) AM_DEVREADWRITE("speech", sp0256_device, spb640_r, spb640_w) /* Intellivoice */
// AM_RANGE(0x00E0, 0x00E3) AM_READWRITE( intv_ecs_uart_r, intv_ecs_uart_w )
@@ -387,7 +387,7 @@ static ADDRESS_MAP_START( intvecs_mem , AS_PROGRAM, 16, intv_state )
AM_RANGE(0xf000, 0xffff) AM_DEVREADWRITE("ecs", intv_ecs_device, read_romf0, write_romf0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intvkbd_mem , AS_PROGRAM, 16, intv_state )
+ADDRESS_MAP_START(intv_state::intvkbd_mem)
AM_RANGE(0x0000, 0x003f) AM_READWRITE(intv_stic_r, intv_stic_w)
AM_RANGE(0x0100, 0x01ef) AM_READWRITE(intv_ram8_r, intv_ram8_w)
AM_RANGE(0x01f0, 0x01ff) AM_DEVREADWRITE8("ay8914", ay8914_device, read, write, 0x00ff)
@@ -410,7 +410,7 @@ static ADDRESS_MAP_START( intvkbd_mem , AS_PROGRAM, 16, intv_state )
AM_RANGE(0xf000, 0xffff) AM_DEVREAD("cartslot", intv_cart_slot_device, read_romf0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intvkbd2_mem , AS_PROGRAM, 8, intv_state )
+ADDRESS_MAP_START(intv_state::intvkbd2_mem)
ADDRESS_MAP_UNMAP_HIGH /* Required because of probing */
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(intvkbd_dualport8_lsb_r, intvkbd_dualport8_lsb_w) /* Dual-port RAM */
AM_RANGE(0x4000, 0x40bf) AM_READWRITE(intvkbd_io_r, intvkbd_io_w)
diff --git a/src/mame/drivers/inufuku.cpp b/src/mame/drivers/inufuku.cpp
index 2dabaf1a48d..df93a669411 100644
--- a/src/mame/drivers/inufuku.cpp
+++ b/src/mame/drivers/inufuku.cpp
@@ -111,7 +111,7 @@ CUSTOM_INPUT_MEMBER(inufuku_state::soundflag_r)
******************************************************************************/
-static ADDRESS_MAP_START( inufuku_map, AS_PROGRAM, 16, inufuku_state )
+ADDRESS_MAP_START(inufuku_state::inufuku_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // main rom
// AM_RANGE(0x100000, 0x100007) AM_WRITENOP // ?
@@ -149,13 +149,13 @@ ADDRESS_MAP_END
******************************************************************************/
-static ADDRESS_MAP_START( inufuku_sound_map, AS_PROGRAM, 8, inufuku_state )
+ADDRESS_MAP_START(inufuku_state::inufuku_sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( inufuku_sound_io_map, AS_IO, 8, inufuku_state )
+ADDRESS_MAP_START(inufuku_state::inufuku_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(inufuku_soundrombank_w)
AM_RANGE(0x04, 0x04) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
diff --git a/src/mame/drivers/invqix.cpp b/src/mame/drivers/invqix.cpp
index 7e3b7fefec2..e6a01ea37ba 100644
--- a/src/mame/drivers/invqix.cpp
+++ b/src/mame/drivers/invqix.cpp
@@ -149,6 +149,8 @@ public:
DECLARE_WRITE16_MEMBER(vctl_w);
void invqix(machine_config &config);
+ void invqix_io_map(address_map &map);
+ void invqix_prg_map(address_map &map);
protected:
// devices
required_device<cpu_device> m_maincpu;
@@ -275,7 +277,7 @@ WRITE16_MEMBER(invqix_state::vctl_w)
m_vctl = data;
}
-static ADDRESS_MAP_START(invqix_prg_map, AS_PROGRAM, 16, invqix_state)
+ADDRESS_MAP_START(invqix_state::invqix_prg_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_REGION("program", 0)
AM_RANGE(0x200000, 0x21ffff) AM_RAM
AM_RANGE(0x400000, 0x400001) AM_DEVWRITE8("oki", okim9810_device, write_tmp_register, 0x00ff)
@@ -285,7 +287,7 @@ static ADDRESS_MAP_START(invqix_prg_map, AS_PROGRAM, 16, invqix_state)
AM_RANGE(0x620004, 0x620005) AM_WRITE(vctl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(invqix_io_map, AS_IO, 16, invqix_state)
+ADDRESS_MAP_START(invqix_state::invqix_io_map)
AM_RANGE(h8_device::PORT_1, h8_device::PORT_1) AM_READ_PORT("P1")
AM_RANGE(h8_device::PORT_2, h8_device::PORT_2) AM_READ_PORT("SYSTEM") AM_WRITENOP
AM_RANGE(h8_device::PORT_3, h8_device::PORT_3) AM_READWRITE(port3_r, port3_w)
diff --git a/src/mame/drivers/ipc.cpp b/src/mame/drivers/ipc.cpp
index 54cbcc54710..3d6345a9e39 100644
--- a/src/mame/drivers/ipc.cpp
+++ b/src/mame/drivers/ipc.cpp
@@ -55,19 +55,21 @@ public:
{ }
void ipc(machine_config &config);
+ void ipc_io(address_map &map);
+ void ipc_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(ipc_mem, AS_PROGRAM, 8, ipc_state)
+ADDRESS_MAP_START(ipc_state::ipc_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xdfff) AM_RAM
AM_RANGE(0xe800, 0xffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ipc_io, AS_IO, 8, ipc_state)
+ADDRESS_MAP_START(ipc_state::ipc_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("pit", pit8253_device, read, write)
diff --git a/src/mame/drivers/ipds.cpp b/src/mame/drivers/ipds.cpp
index 59d712c608c..e04d1504040 100644
--- a/src/mame/drivers/ipds.cpp
+++ b/src/mame/drivers/ipds.cpp
@@ -38,6 +38,8 @@ public:
uint8_t m_term_data;
virtual void machine_reset() override;
void ipds(machine_config &config);
+ void ipds_io(address_map &map);
+ void ipds_mem(address_map &map);
};
READ8_MEMBER( ipds_state::ipds_b0_r )
@@ -61,13 +63,13 @@ WRITE8_MEMBER( ipds_state::ipds_b1_w )
{
}
-static ADDRESS_MAP_START(ipds_mem, AS_PROGRAM, 8, ipds_state)
+ADDRESS_MAP_START(ipds_state::ipds_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ipds_io, AS_IO, 8, ipds_state)
+ADDRESS_MAP_START(ipds_state::ipds_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xb0, 0xb0) AM_READ(ipds_b0_r)
diff --git a/src/mame/drivers/iq151.cpp b/src/mame/drivers/iq151.cpp
index de14d02f6f7..27d72dd9f28 100644
--- a/src/mame/drivers/iq151.cpp
+++ b/src/mame/drivers/iq151.cpp
@@ -105,6 +105,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(iq151_break);
TIMER_DEVICE_CALLBACK_MEMBER(cassette_timer);
void iq151(machine_config &config);
+ void iq151_io(address_map &map);
+ void iq151_mem(address_map &map);
};
READ8_MEMBER(iq151_state::keyboard_row_r)
@@ -204,7 +206,7 @@ WRITE8_MEMBER(iq151_state::cartslot_io_w)
elem->io_write(offset, data);
}
-static ADDRESS_MAP_START(iq151_mem, AS_PROGRAM, 8, iq151_state)
+ADDRESS_MAP_START(iq151_state::iq151_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xffff ) AM_READWRITE(cartslot_r, cartslot_w)
@@ -213,7 +215,7 @@ static ADDRESS_MAP_START(iq151_mem, AS_PROGRAM, 8, iq151_state)
AM_RANGE( 0xf000, 0xffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(iq151_io, AS_IO, 8, iq151_state)
+ADDRESS_MAP_START(iq151_state::iq151_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0xff ) AM_READWRITE(cartslot_io_r, cartslot_io_w)
diff --git a/src/mame/drivers/iqblock.cpp b/src/mame/drivers/iqblock.cpp
index 02ee6485481..b08ed9a646c 100644
--- a/src/mame/drivers/iqblock.cpp
+++ b/src/mame/drivers/iqblock.cpp
@@ -111,13 +111,13 @@ WRITE8_MEMBER(iqblock_state::port_C_w)
/* bit 7 could be a second coin counter, but coin 2 doesn't seem to work... */
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, iqblock_state )
+ADDRESS_MAP_START(iqblock_state::main_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("rambase")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, iqblock_state )
+ADDRESS_MAP_START(iqblock_state::main_portmap)
AM_RANGE(0x2000, 0x23ff) AM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x2800, 0x2bff) AM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
AM_RANGE(0x5080, 0x5083) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
diff --git a/src/mame/drivers/iqunlim.cpp b/src/mame/drivers/iqunlim.cpp
index 61041faf558..46a1e8ccd05 100644
--- a/src/mame/drivers/iqunlim.cpp
+++ b/src/mame/drivers/iqunlim.cpp
@@ -68,6 +68,7 @@ public:
virtual uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void iqunlim(machine_config &config);
+ void iqunlim_mem(address_map &map);
};
uint32_t iqunlim_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
@@ -75,7 +76,7 @@ uint32_t iqunlim_state::screen_update(screen_device &screen, bitmap_rgb32 &bitma
return 0;
}
-static ADDRESS_MAP_START(iqunlim_mem, AS_PROGRAM, 16, iqunlim_state)
+ADDRESS_MAP_START(iqunlim_state::iqunlim_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1FFFFF) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/iris3130.cpp b/src/mame/drivers/iris3130.cpp
index 981f654611c..e9b8cacc3e4 100644
--- a/src/mame/drivers/iris3130.cpp
+++ b/src/mame/drivers/iris3130.cpp
@@ -94,6 +94,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(duartb_irq_handler);
required_device<cpu_device> m_maincpu;
void sgi_ip2(machine_config &config);
+ void sgi_ip2_map(address_map &map);
protected:
required_shared_ptr<uint32_t> m_mainram;
required_device<mc68681_device> m_duarta;
@@ -373,7 +374,7 @@ void sgi_ip2_state::machine_reset()
***************************************************************************/
-static ADDRESS_MAP_START(sgi_ip2_map, AS_PROGRAM, 32, sgi_ip2_state )
+ADDRESS_MAP_START(sgi_ip2_state::sgi_ip2_map)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x02100000, 0x0210ffff) AM_RAM AM_SHARE("bss") // ??? I don't understand the need for this...
AM_RANGE(0x30000000, 0x30017fff) AM_ROM AM_REGION("maincpu", 0)
diff --git a/src/mame/drivers/irisha.cpp b/src/mame/drivers/irisha.cpp
index dbd53ebf642..cc5697d51c3 100644
--- a/src/mame/drivers/irisha.cpp
+++ b/src/mame/drivers/irisha.cpp
@@ -50,6 +50,8 @@ public:
required_shared_ptr<uint8_t> m_p_videoram;
void irisha(machine_config &config);
+ void irisha_io(address_map &map);
+ void irisha_mem(address_map &map);
private:
bool m_sg1_line;
bool m_keypressed;
@@ -68,13 +70,13 @@ private:
/* Address maps */
-static ADDRESS_MAP_START(irisha_mem, AS_PROGRAM, 8, irisha_state )
+ADDRESS_MAP_START(irisha_state::irisha_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0xdfff) AM_RAM // RAM
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( irisha_io , AS_IO, 8, irisha_state )
+ADDRESS_MAP_START(irisha_state::irisha_io)
AM_RANGE(0x04, 0x05) AM_READ(irisha_keyboard_r)
AM_RANGE(0x06, 0x06) AM_DEVREADWRITE("uart",i8251_device, data_r, data_w)
AM_RANGE(0x07, 0x07) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/irobot.cpp b/src/mame/drivers/irobot.cpp
index ae19de17951..b4410383fa4 100644
--- a/src/mame/drivers/irobot.cpp
+++ b/src/mame/drivers/irobot.cpp
@@ -149,7 +149,7 @@ WRITE8_MEMBER(irobot_state::quad_pokeyn_w)
*
*************************************/
-static ADDRESS_MAP_START( irobot_map, AS_PROGRAM, 8, irobot_state )
+ADDRESS_MAP_START(irobot_state::irobot_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_RAMBANK("bank2")
AM_RANGE(0x1000, 0x103f) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/ironhors.cpp b/src/mame/drivers/ironhors.cpp
index 268ca757210..083d386f48a 100644
--- a/src/mame/drivers/ironhors.cpp
+++ b/src/mame/drivers/ironhors.cpp
@@ -59,7 +59,7 @@ WRITE8_MEMBER(ironhors_state::filter_w)
*
*************************************/
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, ironhors_state )
+ADDRESS_MAP_START(ironhors_state::master_map)
AM_RANGE(0x0000, 0x0002) AM_RAM
AM_RANGE(0x0003, 0x0003) AM_RAM_WRITE(charbank_w)
AM_RANGE(0x0004, 0x0004) AM_RAM AM_SHARE("int_enable")
@@ -87,18 +87,18 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, ironhors_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, ironhors_state )
+ADDRESS_MAP_START(ironhors_state::slave_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_io_map, AS_IO, 8, ironhors_state )
+ADDRESS_MAP_START(ironhors_state::slave_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym2203", ym2203_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( farwest_master_map, AS_PROGRAM, 8, ironhors_state )
+ADDRESS_MAP_START(ironhors_state::farwest_master_map)
AM_RANGE(0x0000, 0x1bff) AM_ROM
AM_RANGE(0x0000, 0x0002) AM_RAM
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( farwest_master_map, AS_PROGRAM, 8, ironhors_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( farwest_slave_map, AS_PROGRAM, 8, ironhors_state )
+ADDRESS_MAP_START(ironhors_state::farwest_slave_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym2203", ym2203_device, read, write)
@@ -449,7 +449,7 @@ MACHINE_CONFIG_DERIVED(ironhors_state::farwest, ironhors)
MCFG_CPU_MODIFY("soundcpu")
MCFG_CPU_PROGRAM_MAP(farwest_slave_map)
- MCFG_CPU_IO_MAP(0)
+ MCFG_DEVICE_REMOVE_ADDRESS_MAP(AS_IO)
MCFG_GFXDECODE_MODIFY("gfxdecode", farwest)
MCFG_VIDEO_START_OVERRIDE(ironhors_state,farwest)
diff --git a/src/mame/drivers/isbc.cpp b/src/mame/drivers/isbc.cpp
index e7c08bd2fa7..49018eff004 100644
--- a/src/mame/drivers/isbc.cpp
+++ b/src/mame/drivers/isbc.cpp
@@ -89,6 +89,15 @@ public:
void isbc8605(machine_config &config);
void isbc286(machine_config &config);
void isbc8630(machine_config &config);
+ void isbc2861_mem(address_map &map);
+ void isbc286_io(address_map &map);
+ void isbc286_mem(address_map &map);
+ void isbc8605_io(address_map &map);
+ void isbc8630_io(address_map &map);
+ void isbc86_mem(address_map &map);
+ void isbc_io(address_map &map);
+ void rpc86_io(address_map &map);
+ void rpc86_mem(address_map &map);
protected:
void machine_reset() override;
private:
@@ -112,13 +121,13 @@ void isbc_state::machine_reset()
m_megabyte_page = 0;
}
-static ADDRESS_MAP_START(rpc86_mem, AS_PROGRAM, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::rpc86_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0xcffff) AM_RAM
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rpc86_io, AS_IO, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::rpc86_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0080, 0x008f) AM_DEVREADWRITE8("sbx1", isbx_slot_device, mcs0_r, mcs0_w, 0x00ff)
AM_RANGE(0x0090, 0x009f) AM_DEVREADWRITE8("sbx1", isbx_slot_device, mcs1_r, mcs1_w, 0x00ff)
@@ -134,25 +143,25 @@ static ADDRESS_MAP_START(rpc86_io, AS_IO, 16, isbc_state)
AM_RANGE(0x00de, 0x00df) AM_DEVREADWRITE8("uart8251", i8251_device, status_r, control_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc8605_io, AS_IO, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::isbc8605_io)
AM_IMPORT_FROM(rpc86_io)
AM_RANGE(0x0000, 0x002f) AM_DEVICE8("isbc_208", isbc_208_device, map, 0xffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc8630_io, AS_IO, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::isbc8630_io)
AM_IMPORT_FROM(rpc86_io)
AM_RANGE(0x00c0, 0x00c7) AM_WRITE8(edge_intr_clear_w, 0xff00)
AM_RANGE(0x00c8, 0x00df) AM_WRITE8(status_register_w, 0xff00)
AM_RANGE(0x0100, 0x0101) AM_DEVWRITE8("isbc_215g", isbc_215g_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc86_mem, AS_PROGRAM, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::isbc86_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0xfbfff) AM_RAM
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc_io, AS_IO, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::isbc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00c0, 0x00c3) AM_DEVREADWRITE8("pic_0", pic8259_device, read, write, 0x00ff)
AM_RANGE(0x00c4, 0x00c7) AM_DEVREADWRITE8("pic_0", pic8259_device, read, write, 0x00ff)
@@ -164,7 +173,7 @@ static ADDRESS_MAP_START(isbc_io, AS_IO, 16, isbc_state)
AM_RANGE(0x00de, 0x00df) AM_DEVREADWRITE8("uart8251", i8251_device, status_r, control_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc286_io, AS_IO, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::isbc286_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0080, 0x008f) AM_DEVREADWRITE8("sbx1", isbx_slot_device, mcs0_r, mcs0_w, 0x00ff)
AM_RANGE(0x0080, 0x008f) AM_DEVREADWRITE8("sbx1", isbx_slot_device, mcs0_r, mcs0_w, 0xff00)
@@ -183,14 +192,14 @@ static ADDRESS_MAP_START(isbc286_io, AS_IO, 16, isbc_state)
AM_RANGE(0x0100, 0x0101) AM_DEVWRITE8("isbc_215g", isbc_215g_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc286_mem, AS_PROGRAM, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::isbc286_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0xdffff) AM_RAM
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("user1",0)
AM_RANGE(0xfe0000, 0xffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc2861_mem, AS_PROGRAM, 16, isbc_state)
+ADDRESS_MAP_START(isbc_state::isbc2861_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0xdffff) AM_RAM
AM_RANGE(0xe0000, 0xfffff) AM_READWRITE(bioslo_r, bioslo_w) AM_SHARE("biosram")
diff --git a/src/mame/drivers/isbc8010.cpp b/src/mame/drivers/isbc8010.cpp
index dc26699e4f6..50494ff9326 100644
--- a/src/mame/drivers/isbc8010.cpp
+++ b/src/mame/drivers/isbc8010.cpp
@@ -61,6 +61,10 @@ public:
void isbc8010b(machine_config &config);
void isbc8010a(machine_config &config);
void isbc8010(machine_config &config);
+ void isbc8010_io(address_map &map);
+ void isbc8010_mem(address_map &map);
+ void isbc8010a_mem(address_map &map);
+ void isbc8010b_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<i8251_device> m_usart;
@@ -73,25 +77,25 @@ private:
uint8_t m_usart_clock_state;
};
-static ADDRESS_MAP_START(isbc8010_mem, AS_PROGRAM, 8, isbc8010_state)
+ADDRESS_MAP_START(isbc8010_state::isbc8010_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x3c00, 0x3fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc8010a_mem, AS_PROGRAM, 8, isbc8010_state)
+ADDRESS_MAP_START(isbc8010_state::isbc8010a_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3c00, 0x3fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc8010b_mem, AS_PROGRAM, 8, isbc8010_state)
+ADDRESS_MAP_START(isbc8010_state::isbc8010b_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3bff) AM_ROM
AM_RANGE(0x3c00, 0x3fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc8010_io, AS_IO, 8, isbc8010_state)
+ADDRESS_MAP_START(isbc8010_state::isbc8010_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xe4, 0xe7) AM_DEVREADWRITE(I8255A_1_TAG, i8255_device, read, write)
diff --git a/src/mame/drivers/isbc8030.cpp b/src/mame/drivers/isbc8030.cpp
index 6ed5435a643..8b67e43ad7d 100644
--- a/src/mame/drivers/isbc8030.cpp
+++ b/src/mame/drivers/isbc8030.cpp
@@ -58,6 +58,8 @@ public:
{ }
void isbc8030(machine_config &config);
+ void isbc8030_io(address_map &map);
+ void isbc8030_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<i8251_device> m_usart;
@@ -67,13 +69,13 @@ private:
required_device<rs232_port_device> m_rs232;
};
-static ADDRESS_MAP_START(isbc8030_mem, AS_PROGRAM, 8, isbc8030_state)
+ADDRESS_MAP_START(isbc8030_state::isbc8030_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc8030_io, AS_IO, 8, isbc8030_state)
+ADDRESS_MAP_START(isbc8030_state::isbc8030_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xd8, 0xd9) AM_DEVREADWRITE(I8259A_TAG, pic8259_device, read, write)
diff --git a/src/mame/drivers/iskr103x.cpp b/src/mame/drivers/iskr103x.cpp
index 593f08d3a26..03805f2c763 100644
--- a/src/mame/drivers/iskr103x.cpp
+++ b/src/mame/drivers/iskr103x.cpp
@@ -38,15 +38,17 @@ public:
required_device<cpu_device> m_maincpu;
void iskr1030m(machine_config &config);
void iskr1031(machine_config &config);
+ void iskr1031_io(address_map &map);
+ void iskr1031_map(address_map &map);
};
-static ADDRESS_MAP_START( iskr1031_map, AS_PROGRAM, 16, iskr103x_state )
+ADDRESS_MAP_START(iskr103x_state::iskr1031_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(iskr1031_io, AS_IO, 16, iskr103x_state)
+ADDRESS_MAP_START(iskr103x_state::iskr1031_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", ibm5160_mb_device, map, 0xffff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/istellar.cpp b/src/mame/drivers/istellar.cpp
index b6004fb85a4..2afb8cc846a 100644
--- a/src/mame/drivers/istellar.cpp
+++ b/src/mame/drivers/istellar.cpp
@@ -66,6 +66,12 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void istellar(machine_config &config);
+ void z80_0_io(address_map &map);
+ void z80_0_mem(address_map &map);
+ void z80_1_io(address_map &map);
+ void z80_1_mem(address_map &map);
+ void z80_2_io(address_map &map);
+ void z80_2_mem(address_map &map);
};
@@ -174,7 +180,7 @@ WRITE8_MEMBER(istellar_state::z80_2_ldp_write)
/* PROGRAM MAPS */
-static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8, istellar_state )
+ADDRESS_MAP_START(istellar_state::z80_0_mem)
AM_RANGE(0x0000,0x9fff) AM_ROM
AM_RANGE(0xa000,0xa7ff) AM_RAM
AM_RANGE(0xa800,0xabff) AM_RAM AM_SHARE("tile_ram")
@@ -182,12 +188,12 @@ static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8, istellar_state )
AM_RANGE(0xb000,0xb3ff) AM_RAM AM_SHARE("sprite_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_1_mem, AS_PROGRAM, 8, istellar_state )
+ADDRESS_MAP_START(istellar_state::z80_1_mem)
AM_RANGE(0x0000,0x1fff) AM_ROM
AM_RANGE(0x4000,0x47ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_2_mem, AS_PROGRAM, 8, istellar_state )
+ADDRESS_MAP_START(istellar_state::z80_2_mem)
AM_RANGE(0x0000,0x17ff) AM_ROM
AM_RANGE(0x1800,0x1fff) AM_RAM
AM_RANGE(0xc000,0xc000) AM_READ(z80_2_unknown_read) /* Seems to be thrown away every time it's read - maybe interrupt related? */
@@ -195,7 +201,7 @@ ADDRESS_MAP_END
/* IO MAPS */
-static ADDRESS_MAP_START( z80_0_io, AS_IO, 8, istellar_state )
+ADDRESS_MAP_START(istellar_state::z80_0_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_READ_PORT("IN0")
AM_RANGE(0x02,0x02) AM_READ_PORT("DSW1")
@@ -204,14 +210,14 @@ static ADDRESS_MAP_START( z80_0_io, AS_IO, 8, istellar_state )
AM_RANGE(0x05,0x05) AM_READWRITE(z80_0_latch1_read,z80_0_latch2_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_1_io, AS_IO, 8, istellar_state )
+ADDRESS_MAP_START(istellar_state::z80_1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_NOP /*AM_READWRITE(z80_1_slatch_read,z80_1_slatch_write)*/
AM_RANGE(0x01,0x01) AM_NOP /*AM_READWRITE(z80_1_nmienable,z80_1_soundwrite_front)*/
AM_RANGE(0x02,0x02) AM_NOP /*AM_WRITE(z80_1_soundwrite_rear)*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_2_io, AS_IO, 8, istellar_state )
+ADDRESS_MAP_START(istellar_state::z80_2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_READWRITE(z80_2_ldp_read,z80_2_ldp_write)
AM_RANGE(0x01,0x01) AM_READWRITE(z80_2_latch2_read,z80_2_latch1_write)
diff --git a/src/mame/drivers/istrebiteli.cpp b/src/mame/drivers/istrebiteli.cpp
index bf9bc0013e7..607a0fe1ab9 100644
--- a/src/mame/drivers/istrebiteli.cpp
+++ b/src/mame/drivers/istrebiteli.cpp
@@ -169,6 +169,8 @@ public:
uint8_t m_spr_xy[8];
uint8_t m_tileram[16];
void istreb(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
};
void istrebiteli_state::machine_start()
@@ -298,12 +300,12 @@ WRITE8_MEMBER(istrebiteli_state::spr_xy_w)
m_spr_xy[offset ^ 7] = data;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, istrebiteli_state)
+ADDRESS_MAP_START(istrebiteli_state::mem_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, istrebiteli_state)
+ADDRESS_MAP_START(istrebiteli_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xb0, 0xbf) AM_WRITE(tileram_w)
diff --git a/src/mame/drivers/itech32.cpp b/src/mame/drivers/itech32.cpp
index 13bbbb9867e..ee227812cad 100644
--- a/src/mame/drivers/itech32.cpp
+++ b/src/mame/drivers/itech32.cpp
@@ -894,7 +894,7 @@ void itech32_state::nvram_init(nvram_device &nvram, void *base, size_t length)
*************************************/
/*------ Time Killers memory layout ------*/
-static ADDRESS_MAP_START( timekill_map, AS_PROGRAM, 16, itech32_state )
+ADDRESS_MAP_START(itech32_state::timekill_map)
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x040000, 0x040001) AM_READ_PORT("P1")
AM_RANGE(0x048000, 0x048001) AM_READ_PORT("P2")
@@ -912,7 +912,7 @@ ADDRESS_MAP_END
/*------ BloodStorm and later games memory layout ------*/
-static ADDRESS_MAP_START( bloodstm_map, AS_PROGRAM, 16, itech32_state )
+ADDRESS_MAP_START(itech32_state::bloodstm_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("P1") AM_WRITE(int1_ack_w)
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P2")
@@ -972,7 +972,7 @@ WRITE32_MEMBER(itech32_state::test2_w)
}
#endif
-static ADDRESS_MAP_START( drivedge_map, AS_PROGRAM, 32, itech32_state )
+ADDRESS_MAP_START(itech32_state::drivedge_map)
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x40000) AM_RAM AM_SHARE("nvram")
#if LOG_DRIVEDGE_UNINIT_RAM
AM_RANGE(0x000100, 0x0003ff) AM_MIRROR(0x40000) AM_READWRITE(test1_r, test1_w)
@@ -1000,20 +1000,20 @@ AM_RANGE(0x000c00, 0x007fff) AM_MIRROR(0x40000) AM_READWRITE(test2_r, test2_w)
AM_RANGE(0x600000, 0x607fff) AM_ROM AM_REGION("user1", 0) AM_SHARE("main_rom")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drivedge_tms1_map, AS_PROGRAM, 32, itech32_state )
+ADDRESS_MAP_START(itech32_state::drivedge_tms1_map)
AM_RANGE(0x000000, 0x001fff) AM_RAM AM_SHARE("tms1_boot")
AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x400) AM_RAM_WRITE(tms1_trigger_w) AM_SHARE("tms1_ram")
AM_RANGE(0x080000, 0x0bffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drivedge_tms2_map, AS_PROGRAM, 32, itech32_state )
+ADDRESS_MAP_START(itech32_state::drivedge_tms2_map)
AM_RANGE(0x000000, 0x0003ff) AM_MIRROR(0x8400) AM_RAM_WRITE(tms2_trigger_w) AM_SHARE("tms2_ram")
AM_RANGE(0x080000, 0x08ffff) AM_RAM
ADDRESS_MAP_END
/*------ 68EC020-based memory layout ------*/
-static ADDRESS_MAP_START( itech020_map, AS_PROGRAM, 32, itech32_state )
+ADDRESS_MAP_START(itech32_state::itech020_map)
AM_RANGE(0x000000, 0x007fff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x080000, 0x080003) AM_READ_PORT("P1") AM_WRITE(int1_ack32_w)
AM_RANGE(0x100000, 0x100003) AM_READ_PORT("P2")
@@ -1044,7 +1044,7 @@ ADDRESS_MAP_END
*************************************/
/*------ Rev 1 sound board memory layout ------*/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, itech32_state )
+ADDRESS_MAP_START(itech32_state::sound_map)
AM_RANGE(0x0000, 0x0000) AM_WRITE(sound_return_w)
AM_RANGE(0x0400, 0x0400) AM_READ(sound_data_r)
AM_RANGE(0x0800, 0x083f) AM_MIRROR(0x80) AM_DEVREADWRITE("ensoniq", es5506_device, read, write)
@@ -1058,7 +1058,7 @@ ADDRESS_MAP_END
/*------ Rev 2 sound board memory layout ------*/
-static ADDRESS_MAP_START( sound_020_map, AS_PROGRAM, 8, itech32_state )
+ADDRESS_MAP_START(itech32_state::sound_020_map)
AM_RANGE(0x0000, 0x0000) AM_MIRROR(0x400) AM_READ(sound_data_r)
AM_RANGE(0x0800, 0x083f) AM_MIRROR(0x80) AM_DEVREADWRITE("ensoniq", es5506_device, read, write)
AM_RANGE(0x0c00, 0x0c00) AM_WRITE(sound_bank_w)
diff --git a/src/mame/drivers/itech8.cpp b/src/mame/drivers/itech8.cpp
index 101aa7b555f..5c64f8acc82 100644
--- a/src/mame/drivers/itech8.cpp
+++ b/src/mame/drivers/itech8.cpp
@@ -857,7 +857,7 @@ WRITE8_MEMBER(itech8_state::ninclown_palette_w)
*************************************/
/*------ common layout with TMS34061 at 0000 ------*/
-static ADDRESS_MAP_START( tmslo_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::tmslo_map)
AM_RANGE(0x0000, 0x0fff) AM_READWRITE(tms34061_r, tms34061_w)
AM_RANGE(0x1100, 0x1100) AM_WRITENOP
AM_RANGE(0x1120, 0x1120) AM_WRITE(sound_data_w)
@@ -873,7 +873,7 @@ ADDRESS_MAP_END
/*------ common layout with TMS34061 at 1000 ------*/
-static ADDRESS_MAP_START( tmshi_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::tmshi_map)
AM_RANGE(0x1000, 0x1fff) AM_READWRITE(tms34061_r, tms34061_w)
AM_RANGE(0x0100, 0x0100) AM_WRITENOP
AM_RANGE(0x0120, 0x0120) AM_WRITE(sound_data_w)
@@ -889,7 +889,7 @@ ADDRESS_MAP_END
/*------ Golden Tee Golf II 1992 layout ------*/
-static ADDRESS_MAP_START( gtg2_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::gtg2_map)
AM_RANGE(0x0100, 0x0100) AM_READ_PORT("40") AM_WRITE(nmi_ack_w)
AM_RANGE(0x0120, 0x0120) AM_READ_PORT("60") AM_WRITE(page_w)
AM_RANGE(0x0140, 0x015f) AM_WRITE(palette_w)
@@ -904,7 +904,7 @@ static ADDRESS_MAP_START( gtg2_map, AS_PROGRAM, 8, itech8_state )
ADDRESS_MAP_END
/*------ Ninja Clowns layout ------*/
-static ADDRESS_MAP_START( ninclown_map, AS_PROGRAM, 16, itech8_state )
+ADDRESS_MAP_START(itech8_state::ninclown_map)
AM_RANGE(0x000000, 0x00007f) AM_RAM AM_REGION("maincpu", 0)
AM_RANGE(0x000080, 0x003fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x004000, 0x03ffff) AM_ROM
@@ -928,7 +928,7 @@ ADDRESS_MAP_END
*************************************/
/*------ YM2203-based sound ------*/
-static ADDRESS_MAP_START( sound2203_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::sound2203_map)
AM_RANGE(0x0000, 0x0000) AM_WRITENOP
AM_RANGE(0x1000, 0x1000) AM_READ(sound_data_r)
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x0002) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -939,7 +939,7 @@ ADDRESS_MAP_END
/*------ YM2608B-based sound ------*/
-static ADDRESS_MAP_START( sound2608b_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::sound2608b_map)
AM_RANGE(0x1000, 0x1000) AM_WRITENOP
AM_RANGE(0x2000, 0x2000) AM_READ(sound_data_r)
AM_RANGE(0x4000, 0x4003) AM_DEVREADWRITE("ymsnd", ym2608_device, read, write)
@@ -949,7 +949,7 @@ ADDRESS_MAP_END
/*------ YM3812-based sound ------*/
-static ADDRESS_MAP_START( sound3812_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::sound3812_map)
AM_RANGE(0x0000, 0x0000) AM_WRITENOP
AM_RANGE(0x1000, 0x1000) AM_READ(sound_data_r)
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
@@ -961,7 +961,7 @@ ADDRESS_MAP_END
/*------ external YM3812-based sound board ------*/
-static ADDRESS_MAP_START( sound3812_external_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::sound3812_external_map)
AM_RANGE(0x0000, 0x0000) AM_WRITENOP
AM_RANGE(0x1000, 0x1000) AM_READ(sound_data_r)
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
@@ -979,12 +979,12 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( slikz80_mem_map, AS_PROGRAM, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::slikz80_mem_map)
AM_RANGE(0x0000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slikz80_io_map, AS_IO, 8, itech8_state )
+ADDRESS_MAP_START(itech8_state::slikz80_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(slikz80_port_r, slikz80_port_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/itgambl2.cpp b/src/mame/drivers/itgambl2.cpp
index aa45eefcd15..5d099431225 100644
--- a/src/mame/drivers/itgambl2.cpp
+++ b/src/mame/drivers/itgambl2.cpp
@@ -81,6 +81,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<palette_device> m_palette;
void itgambl2(machine_config &config);
+ void itgambl2_map(address_map &map);
};
@@ -154,7 +155,7 @@ uint32_t itgambl2_state::screen_update_itgambl2(screen_device &screen, bitmap_rg
* Memory map information *
*************************/
-static ADDRESS_MAP_START( itgambl2_map, AS_PROGRAM, 16, itgambl2_state )
+ADDRESS_MAP_START(itgambl2_state::itgambl2_map)
AM_RANGE(0x000000, 0x3fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/itgambl3.cpp b/src/mame/drivers/itgambl3.cpp
index d1ce4cd1ba9..19239096550 100644
--- a/src/mame/drivers/itgambl3.cpp
+++ b/src/mame/drivers/itgambl3.cpp
@@ -67,6 +67,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<palette_device> m_palette;
void itgambl3(machine_config &config);
+ void itgambl3_map(address_map &map);
};
@@ -140,7 +141,7 @@ uint32_t itgambl3_state::screen_update_itgambl3(screen_device &screen, bitmap_rg
* Memory map information *
*************************/
-static ADDRESS_MAP_START( itgambl3_map, AS_PROGRAM, 16, itgambl3_state )
+ADDRESS_MAP_START(itgambl3_state::itgambl3_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0xffffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/itgamble.cpp b/src/mame/drivers/itgamble.cpp
index 9aa7073b728..2f49385b182 100644
--- a/src/mame/drivers/itgamble.cpp
+++ b/src/mame/drivers/itgamble.cpp
@@ -76,6 +76,7 @@ public:
void mnumber(machine_config &config);
void itgamble(machine_config &config);
+ void itgamble_map(address_map &map);
protected:
// devices
@@ -107,7 +108,7 @@ uint32_t itgamble_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
* Memory map information *
*************************/
-static ADDRESS_MAP_START( itgamble_map, AS_PROGRAM, 16, itgamble_state )
+ADDRESS_MAP_START(itgamble_state::itgamble_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0xffffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/itt3030.cpp b/src/mame/drivers/itt3030.cpp
index e35901811b9..1cc7611580c 100644
--- a/src/mame/drivers/itt3030.cpp
+++ b/src/mame/drivers/itt3030.cpp
@@ -251,6 +251,9 @@ public:
DECLARE_PALETTE_INIT(itt3030);
void itt3030(machine_config &config);
+ void itt3030_io(address_map &map);
+ void itt3030_map(address_map &map);
+ void lower48_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -287,18 +290,18 @@ private:
// The upper 16K is always the top 16K of the first bank, F5 can set this to 32K
// Port F6 bits 7-5 select banks 0-7, bit 4 enables bank 8
-static ADDRESS_MAP_START( itt3030_map, AS_PROGRAM, 8, itt3030_state )
+ADDRESS_MAP_START(itt3030_state::itt3030_map)
AM_RANGE(0x0000, 0xbfff) AM_DEVICE("lowerbank", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lower48_map, AS_PROGRAM, 8, itt3030_state )
+ADDRESS_MAP_START(itt3030_state::lower48_map)
AM_RANGE(0x60000, 0x607ff) AM_ROM AM_REGION("maincpu", 0) // begin "page 8"
AM_RANGE(0x60800, 0x60fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x61000, 0x610ff) AM_RAM AM_MIRROR(0x100) // only 256 bytes, but ROM also clears 11xx?
AM_RANGE(0x63000, 0x63fff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( itt3030_io, AS_IO, 8, itt3030_state )
+ADDRESS_MAP_START(itt3030_state::itt3030_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x20, 0x2f) AM_DEVREADWRITE("crt5027", crt5027_device, read, write)
AM_RANGE(0x30, 0x31) AM_DEVREADWRITE("kbdmcu", i8741_device, upi41_master_r, upi41_master_w)
diff --git a/src/mame/drivers/jack.cpp b/src/mame/drivers/jack.cpp
index 8969cad7dd6..be814afa2ca 100644
--- a/src/mame/drivers/jack.cpp
+++ b/src/mame/drivers/jack.cpp
@@ -177,7 +177,7 @@ WRITE8_MEMBER(jack_state::joinem_control_w)
*
*************************************/
-static ADDRESS_MAP_START( jack_map, AS_PROGRAM, 8, jack_state )
+ADDRESS_MAP_START(jack_state::jack_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM
AM_RANGE(0xb000, 0xb07f) AM_RAM AM_SHARE("spriteram")
@@ -195,18 +195,18 @@ static ADDRESS_MAP_START( jack_map, AS_PROGRAM, 8, jack_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, jack_state )
+ADDRESS_MAP_START(jack_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( striv_map, AS_PROGRAM, 8, jack_state )
+ADDRESS_MAP_START(jack_state::striv_map)
AM_IMPORT_FROM( jack_map )
AM_RANGE(0xb000, 0xb0ff) AM_WRITENOP
AM_RANGE(0xc000, 0xcfff) AM_READ(striv_question_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( joinem_map, AS_PROGRAM, 8, jack_state )
+ADDRESS_MAP_START(jack_state::joinem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0xb000, 0xb07f) AM_RAM AM_SHARE("spriteram")
@@ -223,19 +223,19 @@ static ADDRESS_MAP_START( joinem_map, AS_PROGRAM, 8, jack_state )
AM_RANGE(0xbc00, 0xbfff) AM_RAM_WRITE(jack_colorram_w) AM_SHARE("colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( unclepoo_map, AS_PROGRAM, 8, jack_state )
+ADDRESS_MAP_START(jack_state::unclepoo_map)
AM_IMPORT_FROM( joinem_map )
AM_RANGE(0x9000, 0x97ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, jack_state )
+ADDRESS_MAP_START(jack_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x6000, 0x6fff) AM_WRITENOP /* R/C filter ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, jack_state )
+ADDRESS_MAP_START(jack_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
AM_RANGE(0x80, 0x80) AM_DEVWRITE("aysnd", ay8910_device, address_w)
@@ -943,7 +943,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(jack_state::treahunt, jack)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/jackal.cpp b/src/mame/drivers/jackal.cpp
index 142c8fa2fd4..33f9c4110cf 100644
--- a/src/mame/drivers/jackal.cpp
+++ b/src/mame/drivers/jackal.cpp
@@ -162,7 +162,7 @@ WRITE8_MEMBER(jackal_state::jackal_spriteram_w)
*
*************************************/
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, jackal_state )
+ADDRESS_MAP_START(jackal_state::master_map)
AM_RANGE(0x0000, 0x0003) AM_RAM AM_SHARE("videoctrl") // scroll + other things
AM_RANGE(0x0004, 0x0004) AM_WRITE(jackal_flipscreen_w)
AM_RANGE(0x0010, 0x0010) AM_READ_PORT("DSW1")
@@ -181,7 +181,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, jackal_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, jackal_state )
+ADDRESS_MAP_START(jackal_state::slave_map)
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x4000, 0x43ff) AM_RAM_DEVWRITE("palette", palette_device, write_indirect) AM_SHARE("palette") // self test only checks 0x4000-0x423f, 007327 should actually go up to 4fff
AM_RANGE(0x6000, 0x605f) AM_RAM // SOUND RAM (Self test check 0x6000-605f, 0x7c00-0x7fff)
diff --git a/src/mame/drivers/jackie.cpp b/src/mame/drivers/jackie.cpp
index 11d8834f9de..160e1bb3d22 100644
--- a/src/mame/drivers/jackie.cpp
+++ b/src/mame/drivers/jackie.cpp
@@ -133,6 +133,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_DEVICE_CALLBACK_MEMBER(irq);
void jackie(machine_config &config);
+ void jackie_io_map(address_map &map);
+ void jackie_prg_map(address_map &map);
};
@@ -386,12 +388,12 @@ READ8_MEMBER(jackie_state::expram_r)
}
-static ADDRESS_MAP_START( jackie_prg_map, AS_PROGRAM, 8, jackie_state )
+ADDRESS_MAP_START(jackie_state::jackie_prg_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM AM_REGION("maincpu", 0xf000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jackie_io_map, AS_IO, 8, jackie_state )
+ADDRESS_MAP_START(jackie_state::jackie_io_map)
AM_RANGE(0x0520, 0x0524) AM_WRITE(unk_reg1_lo_w)
AM_RANGE(0x0d20, 0x0d24) AM_WRITE(unk_reg1_hi_w)
AM_RANGE(0x0560, 0x0564) AM_WRITE(unk_reg2_lo_w)
diff --git a/src/mame/drivers/jackpool.cpp b/src/mame/drivers/jackpool.cpp
index 332a96ff495..4bd8a0f024d 100644
--- a/src/mame/drivers/jackpool.cpp
+++ b/src/mame/drivers/jackpool.cpp
@@ -52,6 +52,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void jackpool(machine_config &config);
+ void jackpool_mem(address_map &map);
};
@@ -137,7 +138,7 @@ WRITE_LINE_MEMBER(jackpool_state::map_vreg_w)
m_map_vreg = state;
}
-static ADDRESS_MAP_START( jackpool_mem, AS_PROGRAM, 16, jackpool_state )
+ADDRESS_MAP_START(jackpool_state::jackpool_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x120000, 0x1200ff) AM_RAM
diff --git a/src/mame/drivers/jade.cpp b/src/mame/drivers/jade.cpp
index cfbd8d3c70a..db6fe90f663 100644
--- a/src/mame/drivers/jade.cpp
+++ b/src/mame/drivers/jade.cpp
@@ -34,18 +34,20 @@ public:
{ }
void jade(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, jade_state)
+ADDRESS_MAP_START(jade_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x0800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, jade_state)
+ADDRESS_MAP_START(jade_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x28, 0x2b) AM_DEVREADWRITE("ctc2", z80ctc_device, read, write)
diff --git a/src/mame/drivers/jaguar.cpp b/src/mame/drivers/jaguar.cpp
index d7830fb4893..5bc12633083 100644
--- a/src/mame/drivers/jaguar.cpp
+++ b/src/mame/drivers/jaguar.cpp
@@ -1105,7 +1105,7 @@ WRITE16_MEMBER(jaguar_state::gpu_clut_w16){ if (!(offset&1)) { gpu_clut_w(space,
READ16_MEMBER(jaguar_state::gpu_ram_r16){ if (!(offset&1)) { return gpu_ram_r(space, offset>>1, mem_mask<<16) >> 16; } else { return gpu_ram_r(space, offset>>1, mem_mask); } }
WRITE16_MEMBER(jaguar_state::gpu_ram_w16){ if (!(offset&1)) { gpu_ram_w(space, offset>>1, data << 16, mem_mask << 16); } else { gpu_ram_w(space, offset>>1, data, mem_mask); } }
-static ADDRESS_MAP_START( jaguar_map, AS_PROGRAM, 16, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::jaguar_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_MIRROR(0x200000) AM_READWRITE(shared_ram_r16, shared_ram_w16 );
AM_RANGE(0x800000, 0xdfffff) AM_READWRITE(cart_base_r16, cart_base_w16 )
@@ -1293,7 +1293,7 @@ WRITE32_MEMBER(jaguar_state::butch_regs_w)
}
}
-static ADDRESS_MAP_START( jaguarcd_map, AS_PROGRAM, 16, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::jaguarcd_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_MIRROR(0x200000) AM_READWRITE(shared_ram_r16, shared_ram_w16 );
AM_RANGE(0x800000, 0x83ffff) AM_ROM AM_REGION("cdbios", 0)
@@ -1320,7 +1320,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( r3000_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::r3000_map)
AM_RANGE(0x04000000, 0x047fffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x04800000, 0x04bfffff) AM_ROMBANK("maingfxbank")
AM_RANGE(0x04c00000, 0x04dfffff) AM_ROMBANK("mainsndbank")
@@ -1351,7 +1351,7 @@ static ADDRESS_MAP_START( r3000_map, AS_PROGRAM, 32, jaguar_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m68020_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::m68020_map)
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x800000, 0x9fffff) AM_ROM AM_REGION("maincpu", 0) AM_SHARE("rom")
AM_RANGE(0xa00000, 0xa1ffff) AM_RAM AM_SHARE("mainram")
@@ -1386,7 +1386,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( gpu_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::gpu_map)
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x800000, 0xbfffff) AM_ROMBANK("gpugfxbank")
AM_RANGE(0xc00000, 0xdfffff) AM_ROMBANK("dspsndbank")
@@ -1409,7 +1409,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsp_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::dsp_map)
AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x800000, 0xbfffff) AM_ROMBANK("gpugfxbank")
AM_RANGE(0xc00000, 0xdfffff) AM_ROMBANK("dspsndbank")
@@ -1422,7 +1422,7 @@ ADDRESS_MAP_END
/* ToDo, these maps SHOULD be merged with the ones above */
-static ADDRESS_MAP_START( jag_gpu_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::jag_gpu_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_MIRROR(0x200000) AM_SHARE("sharedram") AM_REGION("maincpu", 0)
AM_RANGE(0x800000, 0xdfffff) AM_ROM AM_SHARE("cart") AM_REGION("maincpu", 0x800000)
@@ -1440,7 +1440,7 @@ static ADDRESS_MAP_START( jag_gpu_map, AS_PROGRAM, 32, jaguar_state )
AM_RANGE(0xf1d000, 0xf1dfff) AM_ROM AM_SHARE("waverom") AM_REGION("waverom", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jag_dsp_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::jag_dsp_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_MIRROR(0x200000) AM_RAM AM_SHARE("sharedram") AM_REGION("maincpu", 0)
AM_RANGE(0x800000, 0xdfffff) AM_ROM AM_SHARE("cart") AM_REGION("maincpu", 0x800000)
@@ -1458,7 +1458,7 @@ static ADDRESS_MAP_START( jag_dsp_map, AS_PROGRAM, 32, jaguar_state )
AM_RANGE(0xf1d000, 0xf1dfff) AM_ROM AM_REGION("waverom", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jagcd_gpu_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::jagcd_gpu_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_MIRROR(0x200000) AM_SHARE("sharedram") AM_REGION("maincpu", 0)
AM_RANGE(0x800000, 0x83ffff) AM_ROM AM_REGION("cdbios", 0)
@@ -1477,7 +1477,7 @@ static ADDRESS_MAP_START( jagcd_gpu_map, AS_PROGRAM, 32, jaguar_state )
AM_RANGE(0xf1d000, 0xf1dfff) AM_ROM AM_SHARE("waverom") AM_REGION("waverom", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jagcd_dsp_map, AS_PROGRAM, 32, jaguar_state )
+ADDRESS_MAP_START(jaguar_state::jagcd_dsp_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_MIRROR(0x200000) AM_RAM AM_SHARE("sharedram") AM_REGION("maincpu", 0)
AM_RANGE(0x800000, 0x83ffff) AM_ROM AM_REGION("cdbios", 0)
diff --git a/src/mame/drivers/jailbrek.cpp b/src/mame/drivers/jailbrek.cpp
index dbc97373c45..b486b5185f2 100644
--- a/src/mame/drivers/jailbrek.cpp
+++ b/src/mame/drivers/jailbrek.cpp
@@ -136,7 +136,7 @@ WRITE8_MEMBER(jailbrek_state::speech_w)
m_vlm->rst((data >> 2) & 1);
}
-static ADDRESS_MAP_START( jailbrek_map, AS_PROGRAM, 8, jailbrek_state )
+ADDRESS_MAP_START(jailbrek_state::jailbrek_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1000, 0x10bf) AM_RAM AM_SHARE("spriteram")
@@ -161,7 +161,7 @@ static ADDRESS_MAP_START( jailbrek_map, AS_PROGRAM, 8, jailbrek_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vlm_map, 0, 8, jailbrek_state )
+ADDRESS_MAP_START(jailbrek_state::vlm_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/jalmah.cpp b/src/mame/drivers/jalmah.cpp
index 0d4797373b5..5923ea99b4c 100644
--- a/src/mame/drivers/jalmah.cpp
+++ b/src/mame/drivers/jalmah.cpp
@@ -234,6 +234,8 @@ public:
required_device<palette_device> m_palette;
void urashima(machine_config &config);
void jalmah(machine_config &config);
+ void jalmah(address_map &map);
+ void urashima(address_map &map);
};
@@ -1015,7 +1017,7 @@ WRITE16_MEMBER(jalmah_state::jalmah_flip_screen_w)
// popmessage("%04x",data);
}
-static ADDRESS_MAP_START( jalmah, AS_PROGRAM, 16, jalmah_state )
+ADDRESS_MAP_START(jalmah_state::jalmah)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("DSW")
@@ -1039,7 +1041,7 @@ static ADDRESS_MAP_START( jalmah, AS_PROGRAM, 16, jalmah_state )
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("jmcu_code")/*extra RAM for MCU code prg (NOT ON REAL HW!!!)*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START( urashima, AS_PROGRAM, 16, jalmah_state )
+ADDRESS_MAP_START(jalmah_state::urashima)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("DSW")
diff --git a/src/mame/drivers/jangou.cpp b/src/mame/drivers/jangou.cpp
index 255e0854b17..a60df09a0d3 100644
--- a/src/mame/drivers/jangou.cpp
+++ b/src/mame/drivers/jangou.cpp
@@ -113,6 +113,18 @@ public:
void roylcrdn(machine_config &config);
void cntrygrl(machine_config &config);
void jangou(machine_config &config);
+ void cntrygrl_cpu0_io(address_map &map);
+ void cntrygrl_cpu0_map(address_map &map);
+ void cpu0_io(address_map &map);
+ void cpu0_map(address_map &map);
+ void cpu1_io(address_map &map);
+ void cpu1_map(address_map &map);
+ void jngolady_cpu0_map(address_map &map);
+ void jngolady_cpu1_io(address_map &map);
+ void jngolady_cpu1_map(address_map &map);
+ void nsc_map(address_map &map);
+ void roylcrdn_cpu0_io(address_map &map);
+ void roylcrdn_cpu0_map(address_map &map);
};
@@ -326,12 +338,12 @@ WRITE8_MEMBER(jangou_state::slave_com_w)
*
*************************************/
-static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::cpu0_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu0_io, AS_IO, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::cpu0_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -344,11 +356,11 @@ static ADDRESS_MAP_START( cpu0_io, AS_IO, 8, jangou_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::cpu1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_io, AS_IO, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::cpu1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_READ(sound_latch_r)
AM_RANGE(0x01,0x01) AM_WRITE(cvsd_w)
@@ -362,18 +374,18 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( jngolady_cpu0_map, AS_PROGRAM, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::jngolady_cpu0_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xe000, 0xe000) AM_READWRITE(master_com_r,master_com_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jngolady_cpu1_map, AS_PROGRAM, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::jngolady_cpu1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jngolady_cpu1_io, AS_IO, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::jngolady_cpu1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_READ(sound_latch_r)
AM_RANGE(0x01,0x01) AM_WRITE(adpcm_w)
@@ -381,7 +393,7 @@ static ADDRESS_MAP_START( jngolady_cpu1_io, AS_IO, 8, jangou_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::nsc_map)
AM_RANGE(0x0000, 0x007f) AM_RAM //internal ram for irq etc.
AM_RANGE(0x8000, 0x8000) AM_WRITENOP //write-only,irq related?
AM_RANGE(0x9000, 0x9000) AM_READWRITE(slave_com_r,slave_com_w)
@@ -395,13 +407,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( cntrygrl_cpu0_map, AS_PROGRAM, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::cntrygrl_cpu0_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
// AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cntrygrl_cpu0_io, AS_IO, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::cntrygrl_cpu0_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -420,12 +432,12 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( roylcrdn_cpu0_map, AS_PROGRAM, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::roylcrdn_cpu0_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x7000, 0x77ff) AM_RAM AM_SHARE("nvram") /* MK48Z02B-15 ZEROPOWER RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roylcrdn_cpu0_io, AS_IO, 8, jangou_state )
+ADDRESS_MAP_START(jangou_state::roylcrdn_cpu0_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/jankenmn.cpp b/src/mame/drivers/jankenmn.cpp
index 07b9f54482e..7adf616dfac 100644
--- a/src/mame/drivers/jankenmn.cpp
+++ b/src/mame/drivers/jankenmn.cpp
@@ -174,6 +174,8 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER(hopper_status_r);
void jankenmn(machine_config &config);
+ void jankenmn_map(address_map &map);
+ void jankenmn_port_map(address_map &map);
};
@@ -250,13 +252,13 @@ CUSTOM_INPUT_MEMBER(jankenmn_state::hopper_status_r)
* Memory Map Definition *
*********************************************/
-static ADDRESS_MAP_START( jankenmn_map, AS_PROGRAM, 8, jankenmn_state )
+ADDRESS_MAP_START(jankenmn_state::jankenmn_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jankenmn_port_map, AS_IO, 8, jankenmn_state )
+ADDRESS_MAP_START(jankenmn_state::jankenmn_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
diff --git a/src/mame/drivers/jantotsu.cpp b/src/mame/drivers/jantotsu.cpp
index 1dd57856304..8253745bc2d 100644
--- a/src/mame/drivers/jantotsu.cpp
+++ b/src/mame/drivers/jantotsu.cpp
@@ -144,6 +144,8 @@ public:
required_device<msm5205_device> m_adpcm;
required_device<palette_device> m_palette;
void jantotsu(machine_config &config);
+ void jantotsu_io(address_map &map);
+ void jantotsu_map(address_map &map);
};
@@ -332,13 +334,13 @@ WRITE_LINE_MEMBER(jantotsu_state::jan_adpcm_int)
*
*************************************/
-static ADDRESS_MAP_START( jantotsu_map, AS_PROGRAM, 8, jantotsu_state )
+ADDRESS_MAP_START(jantotsu_state::jantotsu_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_READWRITE(jantotsu_bitmap_r, jantotsu_bitmap_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jantotsu_io, AS_IO, 8, jantotsu_state )
+ADDRESS_MAP_START(jantotsu_state::jantotsu_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_DEVWRITE("sn1", sn76489a_device, write)
AM_RANGE(0x01, 0x01) AM_READ(jantotsu_dsw2_r) AM_DEVWRITE("sn2", sn76489a_device, write)
diff --git a/src/mame/drivers/jchan.cpp b/src/mame/drivers/jchan.cpp
index 150a9774b0f..3a4c4c8bc84 100644
--- a/src/mame/drivers/jchan.cpp
+++ b/src/mame/drivers/jchan.cpp
@@ -223,6 +223,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(vblank);
void jchan(machine_config &config);
+ void jchan_main(address_map &map);
+ void jchan_sub(address_map &map);
};
@@ -428,7 +430,7 @@ WRITE16_MEMBER(jchan_state::sknsspr_sprite32regs_2_w)
}
-static ADDRESS_MAP_START( jchan_main, AS_PROGRAM, 16, jchan_state )
+ADDRESS_MAP_START(jchan_state::jchan_main)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // Work RAM - [A] grid tested, cleared ($9d6-$a54)
@@ -453,7 +455,7 @@ static ADDRESS_MAP_START( jchan_main, AS_PROGRAM, 16, jchan_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jchan_sub, AS_PROGRAM, 16, jchan_state )
+ADDRESS_MAP_START(jchan_state::jchan_sub)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM - grid tested, cleared ($612-$6dc)
diff --git a/src/mame/drivers/jclub2.cpp b/src/mame/drivers/jclub2.cpp
index 750fd7eb155..534a09f84c1 100644
--- a/src/mame/drivers/jclub2.cpp
+++ b/src/mame/drivers/jclub2.cpp
@@ -170,6 +170,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void jclub2(machine_config &config);
+ void jclub2_map(address_map &map);
private:
required_device<st0020_device> m_st0020;
};
@@ -200,6 +201,9 @@ public:
DECLARE_READ32_MEMBER(cmd_stat_word_r);
void jclub2o(machine_config &config);
+ void jclub2o_map(address_map &map);
+ void st0016_io(address_map &map);
+ void st0016_mem(address_map &map);
private:
uint8_t m_cmd1;
uint8_t m_cmd2;
@@ -238,6 +242,7 @@ public:
DECLARE_VIDEO_START(darkhors);
void darkhors(machine_config &config);
+ void darkhors_map(address_map &map);
private:
required_shared_ptr<uint32_t> m_tmapram;
required_shared_ptr<uint32_t> m_tmapscroll;
@@ -567,7 +572,7 @@ WRITE32_MEMBER(jclub2o_state::cmd2_word_w)
}
}
-static ADDRESS_MAP_START( jclub2o_map, AS_PROGRAM, 32, jclub2o_state )
+ADDRESS_MAP_START(jclub2o_state::jclub2o_map)
AM_RANGE(0x000000, 0x27ffff) AM_ROM
AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_SHARE("nvram") // battery
@@ -649,7 +654,7 @@ WRITE8_MEMBER(jclub2o_state::cmd2_w)
logerror("%s: cmd2_w %02x\n", machine().describe_context(), m_cmd2);
}
-static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, jclub2o_state )
+ADDRESS_MAP_START(jclub2o_state::st0016_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xe800, 0xe8ff) AM_RAM
@@ -658,7 +663,7 @@ static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, jclub2o_state )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( st0016_io, AS_IO, 8, jclub2o_state )
+ADDRESS_MAP_START(jclub2o_state::st0016_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w)
AM_RANGE(0xc0, 0xc0) AM_READWRITE(cmd1_r, cmd1_w)
@@ -690,7 +695,7 @@ WRITE32_MEMBER(common_state::eeprom_93c46_w)
}
}
-static ADDRESS_MAP_START( jclub2_map, AS_PROGRAM, 32, jclub2_state )
+ADDRESS_MAP_START(jclub2_state::jclub2_map)
AM_RANGE(0x000000, 0x27ffff) AM_ROM
AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_SHARE("nvram") // battery
@@ -779,7 +784,7 @@ WRITE32_MEMBER(darkhors_state::out1_w)
}
}
-static ADDRESS_MAP_START( darkhors_map, AS_PROGRAM, 32, darkhors_state )
+ADDRESS_MAP_START(darkhors_state::darkhors_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_SHARE("nvram") // battery
diff --git a/src/mame/drivers/jedi.cpp b/src/mame/drivers/jedi.cpp
index ece7c810e60..76904028678 100644
--- a/src/mame/drivers/jedi.cpp
+++ b/src/mame/drivers/jedi.cpp
@@ -266,7 +266,7 @@ WRITE8_MEMBER(jedi_state::nvram_enable_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, jedi_state )
+ADDRESS_MAP_START(jedi_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0300) AM_RAM_WRITE(nvram_data_w) AM_SHARE("nvram")
AM_RANGE(0x0c00, 0x0c00) AM_MIRROR(0x03fe) AM_READ_PORT("0c00") AM_WRITENOP
diff --git a/src/mame/drivers/jeutel.cpp b/src/mame/drivers/jeutel.cpp
index 9508d4a5085..2deb428b4ff 100644
--- a/src/mame/drivers/jeutel.cpp
+++ b/src/mame/drivers/jeutel.cpp
@@ -46,6 +46,10 @@ public:
DECLARE_WRITE8_MEMBER(sndcmd_w);
TIMER_DEVICE_CALLBACK_MEMBER(timer_a);
void jeutel(machine_config &config);
+ void jeutel_cpu2(address_map &map);
+ void jeutel_cpu3(address_map &map);
+ void jeutel_cpu3_io(address_map &map);
+ void jeutel_map(address_map &map);
private:
bool m_timer_a;
uint8_t m_sndcmd;
@@ -57,7 +61,7 @@ private:
};
-static ADDRESS_MAP_START( jeutel_map, AS_PROGRAM, 8, jeutel_state )
+ADDRESS_MAP_START(jeutel_state::jeutel_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("shared")
@@ -65,7 +69,7 @@ static ADDRESS_MAP_START( jeutel_map, AS_PROGRAM, 8, jeutel_state )
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jeutel_cpu2, AS_PROGRAM, 8, jeutel_state )
+ADDRESS_MAP_START(jeutel_state::jeutel_cpu2)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0x2000)
AM_RANGE(0x2000, 0x2003) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -75,14 +79,14 @@ static ADDRESS_MAP_START( jeutel_cpu2, AS_PROGRAM, 8, jeutel_state )
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("shared")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jeutel_cpu3, AS_PROGRAM, 8, jeutel_state )
+ADDRESS_MAP_START(jeutel_state::jeutel_cpu3)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0x3000)
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_WRITE(sndcmd_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jeutel_cpu3_io, AS_IO, 8, jeutel_state )
+ADDRESS_MAP_START(jeutel_state::jeutel_cpu3_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("aysnd", ay8910_device, data_w)
diff --git a/src/mame/drivers/joctronic.cpp b/src/mame/drivers/joctronic.cpp
index 91274f0cc39..8f35c410a4c 100644
--- a/src/mame/drivers/joctronic.cpp
+++ b/src/mame/drivers/joctronic.cpp
@@ -62,6 +62,14 @@ public:
void slalom03(machine_config &config);
void joctronic(machine_config &config);
void bldyrolr(machine_config &config);
+ void bldyrolr_maincpu_map(address_map &map);
+ void joctronic_sound_io_map(address_map &map);
+ void joctronic_sound_map(address_map &map);
+ void maincpu_io_map(address_map &map);
+ void maincpu_map(address_map &map);
+ void slalom03_maincpu_map(address_map &map);
+ void slalom03_sound_io_map(address_map &map);
+ void slalom03_sound_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_soundcpu;
@@ -119,7 +127,7 @@ WRITE8_MEMBER(joctronic_state::drivers_b_w)
logerror("drivers_b[%d] = $%02X\n", offset, data);
}
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::maincpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("nvram")
@@ -169,7 +177,7 @@ WRITE8_MEMBER(joctronic_state::display_ck_w)
logerror("display_ck[%d] = $%02X\n", offset, data);
}
-static ADDRESS_MAP_START( slalom03_maincpu_map, AS_PROGRAM, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::slalom03_maincpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("nvram")
@@ -196,12 +204,12 @@ WRITE8_MEMBER(joctronic_state::bldyrolr_unknown_w)
logerror("bldyrolr_unknown = $%02X\n", data);
}
-static ADDRESS_MAP_START( bldyrolr_maincpu_map, AS_PROGRAM, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::bldyrolr_maincpu_map)
AM_IMPORT_FROM(slalom03_maincpu_map)
AM_RANGE(0xc000, 0xc000) AM_READWRITE(bldyrolr_unknown_r, bldyrolr_unknown_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maincpu_io_map, AS_IO, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::maincpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x03)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
@@ -253,14 +261,14 @@ WRITE_LINE_MEMBER(joctronic_state::vck_w)
}
}
-static ADDRESS_MAP_START( joctronic_sound_map, AS_PROGRAM, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::joctronic_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x1800) AM_RAM // only lower half of 2016 used?
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x1fff) AM_READ(soundlatch_nmi_r) // SCSP
AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1fff) AM_WRITE(resint_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( joctronic_sound_io_map, AS_IO, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::joctronic_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x03)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd1", ay8910_device, address_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("aysnd1", ay8910_device, data_w)
@@ -268,13 +276,13 @@ static ADDRESS_MAP_START( joctronic_sound_io_map, AS_IO, 8, joctronic_state )
AM_RANGE(0x03, 0x03) AM_DEVWRITE("aysnd2", ay8910_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slalom03_sound_map, AS_PROGRAM, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::slalom03_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank")
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x3800) AM_RAM // only lower half of 2016 used?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slalom03_sound_io_map, AS_IO, 8, joctronic_state )
+ADDRESS_MAP_START(joctronic_state::slalom03_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x07)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd1", ay8910_device, address_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("aysnd1", ay8910_device, data_w)
diff --git a/src/mame/drivers/jokrwild.cpp b/src/mame/drivers/jokrwild.cpp
index 571654d5eb3..5abe0c584da 100644
--- a/src/mame/drivers/jokrwild.cpp
+++ b/src/mame/drivers/jokrwild.cpp
@@ -107,6 +107,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void jokrwild(machine_config &config);
+ void jokrwild_map(address_map &map);
};
@@ -177,7 +178,7 @@ READ8_MEMBER(jokrwild_state::rng_r)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( jokrwild_map, AS_PROGRAM, 8, jokrwild_state )
+ADDRESS_MAP_START(jokrwild_state::jokrwild_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM_WRITE(jokrwild_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0400, 0x07ff) AM_RAM //FIXME: backup RAM
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(jokrwild_colorram_w) AM_SHARE("colorram")
diff --git a/src/mame/drivers/jollyjgr.cpp b/src/mame/drivers/jollyjgr.cpp
index f9f5a76a2e9..4d3892a5ac9 100644
--- a/src/mame/drivers/jollyjgr.cpp
+++ b/src/mame/drivers/jollyjgr.cpp
@@ -176,6 +176,8 @@ public:
required_device<palette_device> m_bm_palette;
void fspider(machine_config &config);
void jollyjgr(machine_config &config);
+ void fspider_map(address_map &map);
+ void jollyjgr_map(address_map &map);
};
@@ -239,7 +241,7 @@ WRITE8_MEMBER(jollyjgr_state::jollyjgr_coin_lookout_w)
*
*************************************/
-static ADDRESS_MAP_START( jollyjgr_map, AS_PROGRAM, 8, jollyjgr_state )
+ADDRESS_MAP_START(jollyjgr_state::jollyjgr_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8ff8, 0x8ff8) AM_READ_PORT("DSW1")
@@ -256,7 +258,7 @@ static ADDRESS_MAP_START( jollyjgr_map, AS_PROGRAM, 8, jollyjgr_state )
AM_RANGE(0xa000, 0xffff) AM_RAM AM_SHARE("bitmap")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fspider_map, AS_PROGRAM, 8, jollyjgr_state )
+ADDRESS_MAP_START(jollyjgr_state::fspider_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8ff8, 0x8ff8) AM_READ_PORT("DSW1")
diff --git a/src/mame/drivers/jongkyo.cpp b/src/mame/drivers/jongkyo.cpp
index 8a3913a79e0..80da6b5ef99 100644
--- a/src/mame/drivers/jongkyo.cpp
+++ b/src/mame/drivers/jongkyo.cpp
@@ -67,6 +67,9 @@ public:
uint32_t screen_update_jongkyo(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void jongkyo(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void jongkyo_memmap(address_map &map);
+ void jongkyo_portmap(address_map &map);
};
@@ -239,7 +242,7 @@ WRITE8_MEMBER(jongkyo_state::unknown_w)
*
*************************************/
-static ADDRESS_MAP_START( jongkyo_memmap, AS_PROGRAM, 8, jongkyo_state )
+ADDRESS_MAP_START(jongkyo_state::jongkyo_memmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITE(videoram2_w) // wrong, this doesn't seem to be video ram on write..
AM_RANGE(0x4000, 0x6bff) AM_ROM // fixed rom
AM_RANGE(0x6c00, 0x6fff) AM_ROMBANK("bank1") // banked (8 banks)
@@ -247,13 +250,13 @@ static ADDRESS_MAP_START( jongkyo_memmap, AS_PROGRAM, 8, jongkyo_state )
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, jongkyo_state )
+ADDRESS_MAP_START(jongkyo_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x6bff) AM_ROMBANK("bank0d")
AM_RANGE(0x6c00, 0x6fff) AM_ROMBANK("bank1d")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jongkyo_portmap, AS_IO, 8, jongkyo_state )
+ADDRESS_MAP_START(jongkyo_state::jongkyo_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// R 01 keyboard
AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
@@ -497,7 +500,7 @@ MACHINE_CONFIG_START(jongkyo_state::jongkyo)
MCFG_CPU_ADD("maincpu", SEGA_315_5084,JONGKYO_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(jongkyo_memmap)
MCFG_CPU_IO_MAP(jongkyo_portmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", jongkyo_state, irq0_line_hold)
MCFG_SEGACRPT_SET_SIZE(0x6c00)
MCFG_SEGACRPT_SET_NUMBANKS(8)
diff --git a/src/mame/drivers/jonos.cpp b/src/mame/drivers/jonos.cpp
index ad604bef3ca..00c013aab61 100644
--- a/src/mame/drivers/jonos.cpp
+++ b/src/mame/drivers/jonos.cpp
@@ -38,6 +38,7 @@ public:
void kbd_put(u8 data);
void jonos(machine_config &config);
+ void jonos_mem(address_map &map);
private:
u8 m_framecnt;
u8 m_term_data;
@@ -51,7 +52,7 @@ private:
-static ADDRESS_MAP_START(jonos_mem, AS_PROGRAM, 8, jonos_state)
+ADDRESS_MAP_START(jonos_state::jonos_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x1800, 0x27ff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/joystand.cpp b/src/mame/drivers/joystand.cpp
index f34e8ebff33..3c32fa3e752 100644
--- a/src/mame/drivers/joystand.cpp
+++ b/src/mame/drivers/joystand.cpp
@@ -204,6 +204,7 @@ public:
virtual void machine_reset() override;
INTERRUPT_GEN_MEMBER(joystand_interrupt);
void joystand(machine_config &config);
+ void joystand_map(address_map &map);
};
const rgb_t joystand_state::BG15_TRANSPARENT = 0x99999999;
@@ -444,7 +445,7 @@ WRITE16_MEMBER(joystand_state::cart_w)
bg15_tiles_dirty = true;
}
-static ADDRESS_MAP_START( joystand_map, AS_PROGRAM, 16, joystand_state )
+ADDRESS_MAP_START(joystand_state::joystand_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAM
AM_RANGE(0x200000, 0x200003) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff)
diff --git a/src/mame/drivers/jp.cpp b/src/mame/drivers/jp.cpp
index 1575045460a..0a6ecb3c56b 100644
--- a/src/mame/drivers/jp.cpp
+++ b/src/mame/drivers/jp.cpp
@@ -59,6 +59,8 @@ public:
void jp(machine_config &config);
void jps(machine_config &config);
+ void jp_map(address_map &map);
+ void jp_sound_map(address_map &map);
private:
void update_display();
virtual void machine_start() override;
@@ -77,7 +79,7 @@ private:
};
-static ADDRESS_MAP_START( jp_map, AS_PROGRAM, 8, jp_state )
+ADDRESS_MAP_START(jp_state::jp_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("nvram") // ram-"5128" battery backed
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1ffc) AM_DEVWRITE("ay", ay8910_device, address_w)
@@ -87,7 +89,7 @@ static ADDRESS_MAP_START( jp_map, AS_PROGRAM, 8, jp_state )
AM_RANGE(0xc000, 0xc007) AM_MIRROR(0x1ff8) AM_WRITE(out2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jp_sound_map, AS_PROGRAM, 8, jp_state )
+ADDRESS_MAP_START(jp_state::jp_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // includes ADPCM data from 0x0400 to 0x3fff
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x5000, 0x5000) AM_WRITE(sample_bank_w)
diff --git a/src/mame/drivers/jpmimpct.cpp b/src/mame/drivers/jpmimpct.cpp
index 3db90aa8fa7..3a134968d51 100644
--- a/src/mame/drivers/jpmimpct.cpp
+++ b/src/mame/drivers/jpmimpct.cpp
@@ -585,7 +585,7 @@ WRITE16_MEMBER(jpmimpct_state::jpmio_w)
* Main CPU memory handlers
*
*************************************/
-static ADDRESS_MAP_START( m68k_program_map, AS_PROGRAM, 16, jpmimpct_state )
+ADDRESS_MAP_START(jpmimpct_state::m68k_program_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM
AM_RANGE(0x00100000, 0x001fffff) AM_ROM
AM_RANGE(0x00400000, 0x00403fff) AM_RAM AM_SHARE("nvram")
@@ -613,7 +613,7 @@ ADDRESS_MAP_END
* Main CPU memory handlers
*
*************************************/
-static ADDRESS_MAP_START( awp68k_program_map, AS_PROGRAM, 16, jpmimpct_state )
+ADDRESS_MAP_START(jpmimpct_state::awp68k_program_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM // most games are 0x00000000 - 0x0003ffff, but some QPS ones go up to fffff, check for any mirroring etc.
AM_RANGE(0x00400000, 0x00403fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x00480000, 0x0048001f) AM_READWRITE(duart_1_r, duart_1_w)
@@ -651,7 +651,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, jpmimpct_state )
+ADDRESS_MAP_START(jpmimpct_state::tms_program_map)
AM_RANGE(0x00000000, 0x003fffff) AM_MIRROR(0xf8000000) AM_RAM AM_SHARE("vram")
AM_RANGE(0x00800000, 0x00ffffff) AM_MIRROR(0xf8000000) AM_ROM AM_REGION("user1", 0x100000)
AM_RANGE(0x02000000, 0x027fffff) AM_MIRROR(0xf8000000) AM_ROM AM_REGION("user1", 0)
diff --git a/src/mame/drivers/jpmmps.cpp b/src/mame/drivers/jpmmps.cpp
index d4d3ffc2863..3417aa3d713 100644
--- a/src/mame/drivers/jpmmps.cpp
+++ b/src/mame/drivers/jpmmps.cpp
@@ -151,6 +151,8 @@ public:
virtual void machine_reset() override;
void jpmmps(machine_config &config);
+ void jpmmps_io_map(address_map &map);
+ void jpmmps_map(address_map &map);
protected:
// devices
@@ -163,7 +165,7 @@ public:
DECLARE_WRITE8_MEMBER(jpmmps_ic22_portc_w);
};
-static ADDRESS_MAP_START( jpmmps_map, AS_PROGRAM, 8, jpmmps_state )
+ADDRESS_MAP_START(jpmmps_state::jpmmps_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc003) AM_DEVREADWRITE("ppi8255_ic26", i8255_device, read, write)
@@ -174,7 +176,7 @@ static ADDRESS_MAP_START( jpmmps_map, AS_PROGRAM, 8, jpmmps_state )
AM_RANGE(0xe800, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jpmmps_io_map, AS_IO, 8, jpmmps_state )
+ADDRESS_MAP_START(jpmmps_state::jpmmps_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("tms9902_ic5", tms9902_device, cruread, cruwrite)
diff --git a/src/mame/drivers/jpms80.cpp b/src/mame/drivers/jpms80.cpp
index fcbacf080a8..6cd5547645b 100644
--- a/src/mame/drivers/jpms80.cpp
+++ b/src/mame/drivers/jpms80.cpp
@@ -62,6 +62,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(io_enable_w);
void jpms80(machine_config &config);
+ void jpms80_io_map(address_map &map);
+ void jpms80_map(address_map &map);
protected:
// devices
@@ -86,12 +88,12 @@ WRITE_LINE_MEMBER(jpms80_state::io_enable_w)
{
}
-static ADDRESS_MAP_START( jpms80_map, AS_PROGRAM, 8, jpms80_state )
+ADDRESS_MAP_START(jpms80_state::jpms80_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x3fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jpms80_io_map, AS_IO, 8, jpms80_state )
+ADDRESS_MAP_START(jpms80_state::jpms80_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x1ff)
// AM_RANGE(0x0000, 0x001f) // I/O & Optic (in)
AM_RANGE(0x0000, 0x0007) AM_DEVWRITE("outlatch0", ls259_device, write_d0)
diff --git a/src/mame/drivers/jpmsru.cpp b/src/mame/drivers/jpmsru.cpp
index 23ffce88394..5fe0a58a6c4 100644
--- a/src/mame/drivers/jpmsru.cpp
+++ b/src/mame/drivers/jpmsru.cpp
@@ -32,6 +32,9 @@ public:
void jpmsru(machine_config &config);
void jpmsru_4(machine_config &config);
+ void jpmsru_4_map(address_map &map);
+ void jpmsru_io(address_map &map);
+ void jpmsru_map(address_map &map);
protected:
// devices
@@ -45,20 +48,20 @@ public:
/* System with RAM at 0x0c00 */
-static ADDRESS_MAP_START( jpmsru_map, AS_PROGRAM, 8, jpmsru_state )
+ADDRESS_MAP_START(jpmsru_state::jpmsru_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0eff) AM_RAM
ADDRESS_MAP_END
/* System with RAM at 0x0e00 */
-static ADDRESS_MAP_START( jpmsru_4_map, AS_PROGRAM, 8, jpmsru_state )
+ADDRESS_MAP_START(jpmsru_state::jpmsru_4_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0eff) AM_RAM
AM_RANGE(0x0f00, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jpmsru_io, AS_IO, 8, jpmsru_state )
+ADDRESS_MAP_START(jpmsru_state::jpmsru_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/jpmsys5.cpp b/src/mame/drivers/jpmsys5.cpp
index 513d3653bf9..81b6e99122d 100644
--- a/src/mame/drivers/jpmsys5.cpp
+++ b/src/mame/drivers/jpmsys5.cpp
@@ -277,7 +277,7 @@ READ16_MEMBER(jpmsys5_state::jpm_upd7759_r)
*
*************************************/
-static ADDRESS_MAP_START( jpm_sys5_common_map, AS_PROGRAM, 16, jpmsys5_state )
+ADDRESS_MAP_START(jpmsys5_state::jpm_sys5_common_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("nvram")
@@ -292,19 +292,19 @@ static ADDRESS_MAP_START( jpm_sys5_common_map, AS_PROGRAM, 16, jpmsys5_state )
AM_RANGE(0x04c000, 0x04c0ff) AM_READ(mux_r) AM_WRITE(mux_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 68000_awp_map, AS_PROGRAM, 16, jpmsys5_state )
+ADDRESS_MAP_START(jpmsys5_state::m68000_awp_map)
AM_IMPORT_FROM(jpm_sys5_common_map)
AM_RANGE(0x0460a0, 0x0460a3) AM_DEVWRITE8("ym2413", ym2413_device, write, 0x00ff)
AM_RANGE(0x04c100, 0x04c105) AM_READWRITE(jpm_upd7759_r, jpm_upd7759_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 68000_awp_map_saa, AS_PROGRAM, 16, jpmsys5_state )
+ADDRESS_MAP_START(jpmsys5_state::m68000_awp_map_saa)
AM_IMPORT_FROM(jpm_sys5_common_map)
AM_RANGE(0x0460a0, 0x0460a3) AM_DEVWRITE8("saa", saa1099_device, write, 0x00ff)
AM_RANGE(0x04c100, 0x04c105) AM_READWRITE(jpm_upd7759_r, jpm_upd7759_w) // do the SAA boards have the UPD?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 68000_map, AS_PROGRAM, 16, jpmsys5_state )
+ADDRESS_MAP_START(jpmsys5_state::m68000_map)
AM_IMPORT_FROM(jpm_sys5_common_map)
AM_RANGE(0x01fffe, 0x01ffff) AM_WRITE(rombank_w) // extra on video system (rom board?) (although regular games do write here?)
AM_RANGE(0x020000, 0x03ffff) AM_ROMBANK("bank1") // extra on video system (rom board?)
@@ -618,7 +618,7 @@ MACHINE_RESET_MEMBER(jpmsys5_state,jpmsys5v)
MACHINE_CONFIG_START(jpmsys5_state::jpmsys5v)
MCFG_CPU_ADD("maincpu", M68000, XTAL(8'000'000))
- MCFG_CPU_PROGRAM_MAP(68000_map)
+ MCFG_CPU_PROGRAM_MAP(m68000_map)
MCFG_DEVICE_ADD("acia6850_0", ACIA6850, 0)
MCFG_ACIA6850_TXD_HANDLER(WRITELINE(jpmsys5_state, a0_tx_w))
@@ -835,7 +835,7 @@ MACHINE_RESET_MEMBER(jpmsys5_state,jpmsys5)
MACHINE_CONFIG_START(jpmsys5_state::jpmsys5_ym)
MCFG_CPU_ADD("maincpu", M68000, XTAL(8'000'000))
- MCFG_CPU_PROGRAM_MAP(68000_awp_map)
+ MCFG_CPU_PROGRAM_MAP(m68000_awp_map)
MCFG_DEVICE_ADD("acia6850_0", ACIA6850, 0)
MCFG_ACIA6850_TXD_HANDLER(WRITELINE(jpmsys5_state, a0_tx_w))
@@ -888,7 +888,7 @@ MACHINE_CONFIG_END
// the first rev PCB used an SAA1099
MACHINE_CONFIG_START(jpmsys5_state::jpmsys5)
MCFG_CPU_ADD("maincpu", M68000, XTAL(8'000'000))
- MCFG_CPU_PROGRAM_MAP(68000_awp_map_saa)
+ MCFG_CPU_PROGRAM_MAP(m68000_awp_map_saa)
MCFG_DEVICE_ADD("acia6850_0", ACIA6850, 0)
MCFG_ACIA6850_TXD_HANDLER(WRITELINE(jpmsys5_state, a0_tx_w))
diff --git a/src/mame/drivers/jpmsys7.cpp b/src/mame/drivers/jpmsys7.cpp
index d256c8eff11..9da4732afbd 100644
--- a/src/mame/drivers/jpmsys7.cpp
+++ b/src/mame/drivers/jpmsys7.cpp
@@ -34,6 +34,7 @@ public:
{ }
void jpmsys7(machine_config &config);
+ void jpmsys7_map(address_map &map);
protected:
// devices
@@ -41,7 +42,7 @@ protected:
};
-static ADDRESS_MAP_START( jpmsys7_map, AS_PROGRAM, 32, jpmsys7_state )
+ADDRESS_MAP_START(jpmsys7_state::jpmsys7_map)
AM_RANGE(0x00000000, 0x002fffff) AM_ROM
AM_RANGE(0x10000000, 0x1000ffff) AM_RAM
AM_RANGE(0x20000018, 0x2000001b) AM_WRITENOP // large data upload like astra/pluto?
diff --git a/src/mame/drivers/jr100.cpp b/src/mame/drivers/jr100.cpp
index 4680b5c2816..5419e92b447 100644
--- a/src/mame/drivers/jr100.cpp
+++ b/src/mame/drivers/jr100.cpp
@@ -73,6 +73,7 @@ public:
void jr100(machine_config &config);
+ void jr100_mem(address_map &map);
protected:
required_device<via6522_device> m_via;
required_device<cassette_image_device> m_cassette;
@@ -129,7 +130,7 @@ WRITE8_MEMBER(jr100_state::jr100_via_w)
m_via->write(space,offset,data);
}
-static ADDRESS_MAP_START(jr100_mem, AS_PROGRAM, 8, jr100_state )
+ADDRESS_MAP_START(jr100_state::jr100_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("ram")
AM_RANGE(0xc000, 0xc0ff) AM_RAM AM_SHARE("pcg")
diff --git a/src/mame/drivers/jr200.cpp b/src/mame/drivers/jr200.cpp
index 236726645fa..2ede1966cc5 100644
--- a/src/mame/drivers/jr200.cpp
+++ b/src/mame/drivers/jr200.cpp
@@ -76,6 +76,7 @@ public:
TIMER_CALLBACK_MEMBER(timer_d_callback);
void jr200(machine_config &config);
+ void jr200_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<beep_device> m_beeper;
@@ -371,7 +372,7 @@ WRITE8_MEMBER(jr200_state::mn1271_io_w)
}
}
-static ADDRESS_MAP_START(jr200_mem, AS_PROGRAM, 8, jr200_state )
+ADDRESS_MAP_START(jr200_state::jr200_mem)
/*
0000-3fff RAM
4000-4fff RAM ( 4k expansion)
diff --git a/src/mame/drivers/jrpacman.cpp b/src/mame/drivers/jrpacman.cpp
index 0d53c87a836..93b85e7355c 100644
--- a/src/mame/drivers/jrpacman.cpp
+++ b/src/mame/drivers/jrpacman.cpp
@@ -119,6 +119,8 @@ public:
DECLARE_DRIVER_INIT(jrpacman);
INTERRUPT_GEN_MEMBER(vblank_irq);
void jrpacman(machine_config &config);
+ void main_map(address_map &map);
+ void port_map(address_map &map);
};
@@ -140,7 +142,7 @@ WRITE_LINE_MEMBER(jrpacman_state::irq_mask_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, jrpacman_state )
+ADDRESS_MAP_START(jrpacman_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM_WRITE(jrpacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4800, 0x4fef) AM_RAM
@@ -158,7 +160,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, jrpacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map, AS_IO, 8, jrpacman_state )
+ADDRESS_MAP_START(jrpacman_state::port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0, 0) AM_WRITE(jrpacman_interrupt_vector_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/jtc.cpp b/src/mame/drivers/jtc.cpp
index 23c6fbb7f78..f728bb9c396 100644
--- a/src/mame/drivers/jtc.cpp
+++ b/src/mame/drivers/jtc.cpp
@@ -55,6 +55,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_busy);
void basic(machine_config &config);
void jtc(machine_config &config);
+ void jtc_mem(address_map &map);
};
@@ -65,6 +66,7 @@ public:
: jtc_state(mconfig, type, tag)
{ }
void jtces88(machine_config &config);
+ void jtc_es1988_mem(address_map &map);
};
@@ -78,6 +80,7 @@ public:
virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void jtces23(machine_config &config);
+ void jtc_es23_mem(address_map &map);
};
@@ -100,6 +103,7 @@ public:
std::unique_ptr<uint8_t[]> m_color_ram_g;
std::unique_ptr<uint8_t[]> m_color_ram_b;
void jtces40(machine_config &config);
+ void jtc_es40_mem(address_map &map);
};
@@ -206,7 +210,7 @@ WRITE8_MEMBER( jtces40_state::banksel_w )
/* Memory Maps */
-static ADDRESS_MAP_START( jtc_mem, AS_PROGRAM, 8, jtc_state )
+ADDRESS_MAP_START(jtc_state::jtc_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x7001, 0x7001) AM_MIRROR(0x0ff0) AM_READ_PORT("Y1")
AM_RANGE(0x7002, 0x7002) AM_MIRROR(0x0ff0) AM_READ_PORT("Y2")
@@ -224,7 +228,7 @@ static ADDRESS_MAP_START( jtc_mem, AS_PROGRAM, 8, jtc_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jtc_es1988_mem, AS_PROGRAM, 8, jtces88_state )
+ADDRESS_MAP_START(jtces88_state::jtc_es1988_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0800, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_ROM
@@ -244,7 +248,7 @@ static ADDRESS_MAP_START( jtc_es1988_mem, AS_PROGRAM, 8, jtces88_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jtc_es23_mem, AS_PROGRAM, 8, jtces23_state )
+ADDRESS_MAP_START(jtces23_state::jtc_es23_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0800, 0x17ff) AM_ROM
AM_RANGE(0x7000, 0x7000) AM_MIRROR(0x0ff0) AM_READ_PORT("Y0")
@@ -267,7 +271,7 @@ static ADDRESS_MAP_START( jtc_es23_mem, AS_PROGRAM, 8, jtces23_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jtc_es40_mem, AS_PROGRAM, 8, jtces40_state )
+ADDRESS_MAP_START(jtces40_state::jtc_es40_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0800, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_READWRITE(videoram_r, videoram_w)
diff --git a/src/mame/drivers/jubilee.cpp b/src/mame/drivers/jubilee.cpp
index ab757ed19ed..7b7bfb9a71c 100644
--- a/src/mame/drivers/jubilee.cpp
+++ b/src/mame/drivers/jubilee.cpp
@@ -231,6 +231,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void jubileep(machine_config &config);
+ void jubileep_cru_map(address_map &map);
+ void jubileep_map(address_map &map);
};
@@ -294,7 +296,7 @@ INTERRUPT_GEN_MEMBER(jubilee_state::jubileep_interrupt)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( jubileep_map, AS_PROGRAM, 8, jubilee_state )
+ADDRESS_MAP_START(jubilee_state::jubileep_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x2fff) AM_ROM
@@ -566,7 +568,7 @@ READ8_MEMBER(jubilee_state::mux_port_r)
}
-static ADDRESS_MAP_START( jubileep_cru_map, AS_IO, 8, jubilee_state )
+ADDRESS_MAP_START(jubilee_state::jubileep_cru_map)
AM_RANGE(0x00c8, 0x00c8) AM_READ(mux_port_r) /* multiplexed input port */
AM_RANGE(0x0000, 0x07ff) AM_WRITE(unk_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/juicebox.cpp b/src/mame/drivers/juicebox.cpp
index 78a49f9ddf8..e4f27c52c56 100644
--- a/src/mame/drivers/juicebox.cpp
+++ b/src/mame/drivers/juicebox.cpp
@@ -66,6 +66,7 @@ public:
DECLARE_WRITE32_MEMBER(s3c44b0_gpio_port_w);
DECLARE_WRITE16_MEMBER(s3c44b0_i2s_data_w);
void juicebox(machine_config &config);
+ void juicebox_map(address_map &map);
};
inline void juicebox_state::verboselog(int n_level, const char *s_fmt, ...)
@@ -287,7 +288,7 @@ void juicebox_state::machine_reset()
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( juicebox_map, AS_PROGRAM, 32, juicebox_state )
+ADDRESS_MAP_START(juicebox_state::juicebox_map)
AM_RANGE(0x00000000, 0x007fffff) AM_ROM
AM_RANGE(0x04000000, 0x04ffffff) AM_READWRITE(juicebox_nand_r, juicebox_nand_w )
AM_RANGE(0x0c000000, 0x0c1fffff) AM_RAM AM_MIRROR(0x00600000)
diff --git a/src/mame/drivers/jungleyo.cpp b/src/mame/drivers/jungleyo.cpp
index b166cc415a2..a63491930a3 100644
--- a/src/mame/drivers/jungleyo.cpp
+++ b/src/mame/drivers/jungleyo.cpp
@@ -60,6 +60,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void jungleyo(machine_config &config);
+ void jungleyo_map(address_map &map);
};
void jungleyo_state::video_start()
@@ -72,7 +73,7 @@ uint32_t jungleyo_state::screen_update_jungleyo(screen_device &screen, bitmap_in
}
-static ADDRESS_MAP_START( jungleyo_map, AS_PROGRAM, 16, jungleyo_state )
+ADDRESS_MAP_START(jungleyo_state::jungleyo_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/junior.cpp b/src/mame/drivers/junior.cpp
index 04d5e0c79e6..e8ca25c0036 100644
--- a/src/mame/drivers/junior.cpp
+++ b/src/mame/drivers/junior.cpp
@@ -56,12 +56,13 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(junior_update_leds);
required_device<cpu_device> m_maincpu;
void junior(machine_config &config);
+ void junior_mem(address_map &map);
};
-static ADDRESS_MAP_START(junior_mem, AS_PROGRAM, 8, junior_state)
+ADDRESS_MAP_START(junior_state::junior_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1FFF)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM // 1K RAM
diff --git a/src/mame/drivers/junofrst.cpp b/src/mame/drivers/junofrst.cpp
index 701e8594267..b6ec69308ae 100644
--- a/src/mame/drivers/junofrst.cpp
+++ b/src/mame/drivers/junofrst.cpp
@@ -133,6 +133,10 @@ public:
INTERRUPT_GEN_MEMBER(_30hz_irq);
void junofrst(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
+ void mcu_io_map(address_map &map);
+ void mcu_map(address_map &map);
};
@@ -275,7 +279,7 @@ WRITE8_MEMBER(junofrst_state::i8039_irqen_and_status_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, junofrst_state )
+ADDRESS_MAP_START(junofrst_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x8000, 0x800f) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x8010, 0x8010) AM_READ_PORT("DSW2")
@@ -295,7 +299,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, junofrst_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, junofrst_state )
+ADDRESS_MAP_START(junofrst_state::audio_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -307,12 +311,12 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, junofrst_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, junofrst_state )
+ADDRESS_MAP_START(junofrst_state::mcu_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, junofrst_state )
+ADDRESS_MAP_START(junofrst_state::mcu_io_map)
AM_RANGE(0x00, 0xff) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/jupace.cpp b/src/mame/drivers/jupace.cpp
index bd48db76edf..cb6b465788d 100644
--- a/src/mame/drivers/jupace.cpp
+++ b/src/mame/drivers/jupace.cpp
@@ -129,6 +129,8 @@ public:
DECLARE_SNAPSHOT_LOAD_MEMBER( ace );
void ace(machine_config &config);
+ void ace_io(address_map &map);
+ void ace_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<i8255_device> m_ppi;
@@ -411,7 +413,7 @@ WRITE8_MEMBER(ace_state::pio_bc_w)
// ADDRESS_MAP( ace_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( ace_mem, AS_PROGRAM, 8, ace_state )
+ADDRESS_MAP_START(ace_state::ace_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("video_ram")
AM_RANGE(0x2800, 0x2bff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("char_ram") AM_REGION(Z80_TAG, 0xfc00)
@@ -424,7 +426,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ace_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( ace_io, AS_IO, 8, ace_state )
+ADDRESS_MAP_START(ace_state::ace_io)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x00fe) AM_SELECT(0xff00) AM_READWRITE(io_r, io_w)
AM_RANGE(0x01, 0x01) AM_MIRROR(0xff00) AM_READ_PORT("JOY")
AM_RANGE(0x41, 0x41) AM_MIRROR(0xff80) AM_READWRITE(ppi_pa_r, ppi_pa_w)
diff --git a/src/mame/drivers/jupiter.cpp b/src/mame/drivers/jupiter.cpp
index b7abb883d25..6c4401204ba 100644
--- a/src/mame/drivers/jupiter.cpp
+++ b/src/mame/drivers/jupiter.cpp
@@ -56,6 +56,7 @@ public:
DECLARE_DRIVER_INIT(jupiter2);
void jupiter2(machine_config &config);
+ void jupiter2_mem(address_map &map);
private:
virtual void machine_start() override;
required_device<cpu_device> m_maincpu;
@@ -82,6 +83,8 @@ public:
DECLARE_READ8_MEMBER(ff_r);
void jupiter3(machine_config &config);
+ void jupiter3_io(address_map &map);
+ void jupiter3_mem(address_map &map);
private:
virtual void machine_reset() override;
uint8_t m_term_data;
@@ -101,7 +104,7 @@ private:
// ADDRESS_MAP( jupiter_m6800_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( jupiter2_mem, AS_PROGRAM, 8, jupiter2_state )
+ADDRESS_MAP_START(jupiter2_state::jupiter2_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0xc000, 0xcfff) AM_RAM // Video RAM
AM_RANGE(0xf000, 0xff00) AM_ROM AM_REGION(MCM6571AP_TAG, 0)
@@ -129,7 +132,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( jupiter3_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( jupiter3_mem, AS_PROGRAM, 8, jupiter3_state )
+ADDRESS_MAP_START(jupiter3_state::jupiter3_mem)
AM_RANGE(0x0000, 0xbfff) AM_RAM AM_SHARE("ram")
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xe000, 0xefff) AM_ROM AM_REGION(Z80_TAG, 0)
@@ -141,7 +144,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( jupiter3_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( jupiter3_io, AS_IO, 8, jupiter3_state )
+ADDRESS_MAP_START(jupiter3_state::jupiter3_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xa1, 0xa4) AM_READ(ff_r)
AM_RANGE(0xb0, 0xb0) AM_READ(status_r)
diff --git a/src/mame/drivers/jvh.cpp b/src/mame/drivers/jvh.cpp
index 627fa92490e..452e907ce7b 100644
--- a/src/mame/drivers/jvh.cpp
+++ b/src/mame/drivers/jvh.cpp
@@ -23,6 +23,10 @@ public:
void jvh2(machine_config &config);
void jvh(machine_config &config);
+ void escape_io(address_map &map);
+ void jvh_map(address_map &map);
+ void jvh_sub_map(address_map &map);
+ void movmastr_io(address_map &map);
protected:
// devices
@@ -36,12 +40,12 @@ public:
-static ADDRESS_MAP_START( jvh_map, AS_PROGRAM, 8, jvh_state )
+ADDRESS_MAP_START(jvh_state::jvh_map)
AM_RANGE(0x0000, 0x3bff) AM_ROM
AM_RANGE(0x3c00, 0x3cff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( escape_io, AS_IO, 8, jvh_state )
+ADDRESS_MAP_START(jvh_state::escape_io)
//AM_RANGE(0x01, 0x02) AM_READ(sw1_r)
//AM_RANGE(0x03, 0x05) AM_READ(dip_r)
//AM_RANGE(0x06, 0x07) AM_READ(sw6_r)
@@ -66,7 +70,7 @@ static ADDRESS_MAP_START( escape_io, AS_IO, 8, jvh_state )
//AM_RANGE(0x75, 0x7f) AM_WRITE(sol_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( movmastr_io, AS_IO, 8, jvh_state )
+ADDRESS_MAP_START(jvh_state::movmastr_io)
//AM_RANGE(0x01, 0x02) AM_READ(sw1_r)
//AM_RANGE(0x03, 0x05) AM_READ(dip_r)
//AM_RANGE(0x08, 0x09) AM_READ(sw6_r)
@@ -94,7 +98,7 @@ static ADDRESS_MAP_START( movmastr_io, AS_IO, 8, jvh_state )
//AM_RANGE(0x75, 0x7f) AM_WRITE(sol_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jvh_sub_map, AS_PROGRAM, 8, jvh_state )
+ADDRESS_MAP_START(jvh_state::jvh_sub_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0080, 0x008f) AM_DEVREADWRITE("via", via6522_device, read, write)
AM_RANGE(0xc000, 0xdfff) AM_MIRROR(0x2000) AM_ROM
diff --git a/src/mame/drivers/k1003.cpp b/src/mame/drivers/k1003.cpp
index f4d12fdf502..0587c35d22e 100644
--- a/src/mame/drivers/k1003.cpp
+++ b/src/mame/drivers/k1003.cpp
@@ -60,6 +60,8 @@ public:
DECLARE_WRITE8_MEMBER(disp_w);
void k1003(machine_config &config);
+ void k1003_io(address_map &map);
+ void k1003_mem(address_map &map);
private:
uint8_t m_disp_1;
uint8_t m_disp_2;
@@ -69,7 +71,7 @@ private:
};
-static ADDRESS_MAP_START( k1003_mem, AS_PROGRAM, 8, k1003_state )
+ADDRESS_MAP_START(k1003_state::k1003_mem)
AM_RANGE(0x0000,0x07ff) AM_ROM
AM_RANGE(0x0800,0x17ff) AM_RAM
AM_RANGE(0x1800,0x1fff) AM_ROM
@@ -118,7 +120,7 @@ WRITE8_MEMBER( k1003_state::disp_w )
output().set_digit_value(bit_to_dec(data)*2+1, m_disp_2);
}
-static ADDRESS_MAP_START( k1003_io, AS_IO, 8, k1003_state )
+ADDRESS_MAP_START(k1003_state::k1003_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00,0x00) AM_READ(key_r)
AM_RANGE(0x02,0x02) AM_READ(port2_r)
diff --git a/src/mame/drivers/k8915.cpp b/src/mame/drivers/k8915.cpp
index 7f472c491ed..f4003f8c400 100644
--- a/src/mame/drivers/k8915.cpp
+++ b/src/mame/drivers/k8915.cpp
@@ -33,6 +33,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void k8915(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_framecnt;
virtual void machine_reset() override;
@@ -51,14 +53,14 @@ WRITE8_MEMBER( k8915_state::k8915_a8_w )
membank("boot")->set_entry(1); // rom at 0000
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, k8915_state)
+ADDRESS_MAP_START(k8915_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("boot")
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x1800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, k8915_state)
+ADDRESS_MAP_START(k8915_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x50, 0x53) AM_DEVREADWRITE("sio", z80sio_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x58, 0x5b) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
diff --git a/src/mame/drivers/kaneko16.cpp b/src/mame/drivers/kaneko16.cpp
index 6e621570089..ead915916b1 100644
--- a/src/mame/drivers/kaneko16.cpp
+++ b/src/mame/drivers/kaneko16.cpp
@@ -306,7 +306,7 @@ WRITE16_MEMBER(kaneko16_berlwall_state::berlwall_spriteregs_w)
m_kaneko_spr->kaneko16_sprites_regs_w(space, offset, data, mem_mask);
}
-static ADDRESS_MAP_START( berlwall, AS_PROGRAM, 16, kaneko16_berlwall_state )
+ADDRESS_MAP_START(kaneko16_berlwall_state::berlwall)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // Work RAM
AM_RANGE(0x30e000, 0x30ffff) AM_READWRITE(berlwall_spriteram_r, berlwall_spriteram_w) AM_SHARE("spriteram") // Sprites (scrambled RAM)
@@ -346,7 +346,7 @@ WRITE16_MEMBER(kaneko16_state::bakubrkr_oki_bank_w)
}
}
-static ADDRESS_MAP_START( bakubrkr, AS_PROGRAM, 16, kaneko16_state )
+ADDRESS_MAP_START(kaneko16_state::bakubrkr)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM
AM_RANGE(0x400000, 0x40001f) AM_READ(kaneko16_ay1_YM2149_r) // Sound
@@ -374,7 +374,7 @@ ADDRESS_MAP_END
Blaze On
***************************************************************************/
-static ADDRESS_MAP_START( blazeon, AS_PROGRAM, 16, kaneko16_state )
+ADDRESS_MAP_START(kaneko16_state::blazeon)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x300000, 0x30ffff) AM_RAM // Work RAM
AM_RANGE(0x500000, 0x500fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette") // Palette
@@ -428,7 +428,7 @@ WRITE16_MEMBER(kaneko16_gtmr_state::bloodwar_coin_lockout_w)
}
}
-static ADDRESS_MAP_START( bloodwar, AS_PROGRAM, 16, kaneko16_gtmr_state )
+ADDRESS_MAP_START(kaneko16_gtmr_state::bloodwar)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("mcuram")
@@ -482,7 +482,7 @@ WRITE16_MEMBER(kaneko16_gtmr_state::bonkadv_oki_1_bank_w)
}
-static ADDRESS_MAP_START( bonkadv, AS_PROGRAM, 16, kaneko16_gtmr_state )
+ADDRESS_MAP_START(kaneko16_gtmr_state::bonkadv)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("mcuram") // Shared With MCU
@@ -550,7 +550,7 @@ WRITE16_MEMBER(kaneko16_gtmr_state::gtmr_oki_1_bank_w)
}
}
-static ADDRESS_MAP_START( gtmr_map, AS_PROGRAM, 16, kaneko16_gtmr_state )
+ADDRESS_MAP_START(kaneko16_gtmr_state::gtmr_map)
AM_RANGE(0x000000, 0x0ffffd) AM_ROM // ROM
AM_RANGE(0x0ffffe, 0x0fffff) AM_READ(gtmr_wheel_r) // Wheel Value
@@ -619,7 +619,7 @@ READ16_MEMBER(kaneko16_gtmr_state::gtmr2_IN1_r)
return (ioport("P2")->read() & (ioport("FAKE")->read() | ~0x7100));
}
-static ADDRESS_MAP_START( gtmr2_map, AS_PROGRAM, 16, kaneko16_gtmr_state )
+ADDRESS_MAP_START(kaneko16_gtmr_state::gtmr2_map)
AM_RANGE(0x000000, 0x0ffffd) AM_ROM // ROM
AM_RANGE(0x0ffffe, 0x0fffff) AM_READ(gtmr2_wheel_r) // Wheel Value
@@ -665,7 +665,7 @@ ADDRESS_MAP_END
Magical Crystal
***************************************************************************/
-static ADDRESS_MAP_START( mgcrystl, AS_PROGRAM, 16, kaneko16_state )
+ADDRESS_MAP_START(kaneko16_state::mgcrystl)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x300000, 0x30ffff) AM_RAM // Work RAM
AM_RANGE(0x400000, 0x40001f) AM_READWRITE(kaneko16_ay1_YM2149_r, kaneko16_ay1_YM2149_w) // Sound
@@ -724,7 +724,7 @@ WRITE16_MEMBER(kaneko16_shogwarr_state::brapboys_oki_bank_w)
}
-static ADDRESS_MAP_START( shogwarr, AS_PROGRAM, 16, kaneko16_shogwarr_state )
+ADDRESS_MAP_START(kaneko16_shogwarr_state::shogwarr)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("mainram") // Work RAM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("mcuram")
@@ -763,13 +763,13 @@ ADDRESS_MAP_END
Blaze On
***************************************************************************/
-static ADDRESS_MAP_START( blazeon_soundmem, AS_PROGRAM, 8, kaneko16_state )
+ADDRESS_MAP_START(kaneko16_state::blazeon_soundmem)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROM // ROM (supposed to be banked?)
AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blazeon_soundport, AS_IO, 8, kaneko16_state )
+ADDRESS_MAP_START(kaneko16_state::blazeon_soundport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x06, 0x06) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -787,7 +787,7 @@ WRITE8_MEMBER(kaneko16_state::wingforc_oki_bank_w)
logerror("%s: unknown OKI bank %02X\n", machine().describe_context(), data);
}
-static ADDRESS_MAP_START( wingforc_soundport, AS_IO, 8, kaneko16_state )
+ADDRESS_MAP_START(kaneko16_state::wingforc_soundport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x00) // 02 written at boot
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -2364,12 +2364,12 @@ static const uint16_t shogwarr_default_eeprom[64] = {
0x0000, 0x0000, 0x0000, 0x0000, 0x0010, 0x0000, 0x0000, 0xFFFF
};
-static ADDRESS_MAP_START( shogwarr_oki1_map, 0, 8, kaneko16_shogwarr_state )
+ADDRESS_MAP_START(kaneko16_shogwarr_state::shogwarr_oki1_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("bank10")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shogwarr_oki2_map, 0, 8, kaneko16_shogwarr_state )
+ADDRESS_MAP_START(kaneko16_shogwarr_state::shogwarr_oki2_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROMBANK("bank11")
ADDRESS_MAP_END
@@ -2444,7 +2444,7 @@ static const uint16_t brapboys_default_eeprom[64] = {
0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0x0035, 0xFFFF, 0xFFFF, 0xFFFF
};
-static ADDRESS_MAP_START( brapboys_oki2_map, 0, 8, kaneko16_shogwarr_state )
+ADDRESS_MAP_START(kaneko16_shogwarr_state::brapboys_oki2_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("bank11")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/kangaroo.cpp b/src/mame/drivers/kangaroo.cpp
index ff4e5ba91ba..4d395ee5ff4 100644
--- a/src/mame/drivers/kangaroo.cpp
+++ b/src/mame/drivers/kangaroo.cpp
@@ -251,7 +251,7 @@ WRITE8_MEMBER(kangaroo_state::kangaroo_coin_counter_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, kangaroo_state )
+ADDRESS_MAP_START(kangaroo_state::main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_WRITE(kangaroo_videoram_w)
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1")
@@ -271,7 +271,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, kangaroo_state )
+ADDRESS_MAP_START(kangaroo_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -281,7 +281,7 @@ ADDRESS_MAP_END
/* yes, this is identical */
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, kangaroo_state )
+ADDRESS_MAP_START(kangaroo_state::sound_portmap)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/karnov.cpp b/src/mame/drivers/karnov.cpp
index 456f523227a..c5ee575e6a4 100644
--- a/src/mame/drivers/karnov.cpp
+++ b/src/mame/drivers/karnov.cpp
@@ -428,7 +428,7 @@ READ16_MEMBER(karnov_state::karnov_control_r)
*
*************************************/
-static ADDRESS_MAP_START( karnov_map, AS_PROGRAM, 16, karnov_state )
+ADDRESS_MAP_START(karnov_state::karnov_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x063fff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x080000, 0x080fff) AM_RAM AM_SHARE("spriteram")
@@ -441,19 +441,19 @@ static ADDRESS_MAP_START( karnov_map, AS_PROGRAM, 16, karnov_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( base_sound_map, AS_PROGRAM, 8, karnov_state )
+ADDRESS_MAP_START(karnov_state::base_sound_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( karnov_sound_map, AS_PROGRAM, 8, karnov_state )
+ADDRESS_MAP_START(karnov_state::karnov_sound_map)
AM_IMPORT_FROM(base_sound_map)
AM_RANGE(0x1800, 0x1801) AM_DEVWRITE("ym2", ym3526_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( karnovjbl_sound_map, AS_PROGRAM, 8, karnov_state )
+ADDRESS_MAP_START(karnov_state::karnovjbl_sound_map)
AM_IMPORT_FROM(base_sound_map)
AM_RANGE(0x1800, 0x1801) AM_DEVWRITE("ym2", ym3812_device, write)
ADDRESS_MAP_END
@@ -861,11 +861,11 @@ MACHINE_CONFIG_DERIVED(karnov_state::karnovjbl, karnov)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( chelnovjbl_mcu_map, AS_PROGRAM, 8, karnov_state )
+ADDRESS_MAP_START(karnov_state::chelnovjbl_mcu_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chelnovjbl_mcu_io_map, AS_IO, 8, karnov_state )
+ADDRESS_MAP_START(karnov_state::chelnovjbl_mcu_io_map)
//internal port
// AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(p1_r, p1_w)
// AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(p3_r, p3_w)
diff --git a/src/mame/drivers/kas89.cpp b/src/mame/drivers/kas89.cpp
index ae813d6fdc2..d15e1160554 100644
--- a/src/mame/drivers/kas89.cpp
+++ b/src/mame/drivers/kas89.cpp
@@ -259,6 +259,10 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(kas89_nmi_cb);
TIMER_DEVICE_CALLBACK_MEMBER(kas89_sound_nmi_cb);
void kas89(machine_config &config);
+ void audio_io(address_map &map);
+ void audio_map(address_map &map);
+ void kas89_io(address_map &map);
+ void kas89_map(address_map &map);
};
@@ -507,7 +511,7 @@ WRITE8_MEMBER(kas89_state::led_mux_select_w)
* Memory Map *
**************************************/
-static ADDRESS_MAP_START( kas89_map, AS_PROGRAM, 8, kas89_state )
+ADDRESS_MAP_START(kas89_state::kas89_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x0037, 0x0037) AM_WRITENOP /* WTF? */
AM_RANGE(0x8000, 0x81ff) AM_RAM /* empty */
@@ -522,7 +526,7 @@ static ADDRESS_MAP_START( kas89_map, AS_PROGRAM, 8, kas89_state )
AM_RANGE(0x9800, 0x9fff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kas89_io, AS_IO, 8, kas89_state )
+ADDRESS_MAP_START(kas89_state::kas89_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x43) AM_DEVREADWRITE("v9938", v9938_device, read, write)
AM_RANGE(0x80, 0x80) AM_WRITE(mux_w)
@@ -571,12 +575,12 @@ ADDRESS_MAP_END
4aa1 : ret
*/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, kas89_state )
+ADDRESS_MAP_START(kas89_state::audio_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_io, AS_IO, 8, kas89_state )
+ADDRESS_MAP_START(kas89_state::audio_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(int_ack_w) // comm out (1st Z80). seems to write here the value previously read through soundlatch (port 0x02).
AM_RANGE(0x02, 0x02) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/kaypro.cpp b/src/mame/drivers/kaypro.cpp
index 97dc30f4919..81f045d0a7e 100644
--- a/src/mame/drivers/kaypro.cpp
+++ b/src/mame/drivers/kaypro.cpp
@@ -64,13 +64,13 @@ READ8_MEMBER( kaypro_state::kaypro484_87_r ) { return 0x7f; } /* to bypass un
************************************************************/
-static ADDRESS_MAP_START( kaypro_map, AS_PROGRAM, 8, kaypro_state )
+ADDRESS_MAP_START(kaypro_state::kaypro_map)
AM_RANGE(0x0000, 0x2fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x3000, 0x3fff) AM_RAMBANK("bank3")
AM_RANGE(0x4000, 0xffff) AM_RAM AM_REGION("rambank", 0x4000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kayproii_io, AS_IO, 8, kaypro_state )
+ADDRESS_MAP_START(kaypro_state::kayproii_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVWRITE("brg", com8116_device, stt_w)
@@ -81,7 +81,7 @@ static ADDRESS_MAP_START( kayproii_io, AS_IO, 8, kaypro_state )
AM_RANGE(0x1c, 0x1f) AM_DEVREADWRITE("z80pio_s", z80pio_device, read_alt, write_alt)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kaypro484_io, AS_IO, 8, kaypro_state )
+ADDRESS_MAP_START(kaypro_state::kaypro484_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVWRITE("brg", com8116_device, str_w)
diff --git a/src/mame/drivers/kc.cpp b/src/mame/drivers/kc.cpp
index 348693bafa4..8798dbe0764 100644
--- a/src/mame/drivers/kc.cpp
+++ b/src/mame/drivers/kc.cpp
@@ -22,7 +22,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START(kc85_4_io, AS_IO, 8, kc85_4_state)
+ADDRESS_MAP_START(kc85_4_state::kc85_4_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(expansion_io_read, expansion_io_write)
@@ -32,7 +32,7 @@ static ADDRESS_MAP_START(kc85_4_io, AS_IO, 8, kc85_4_state)
AM_RANGE(0x008c, 0x008f) AM_MIRROR(0xff00) AM_DEVREADWRITE("z80ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(kc85_4_mem, AS_PROGRAM, 8, kc85_4_state)
+ADDRESS_MAP_START(kc85_4_state::kc85_4_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_READWRITE_BANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_READWRITE_BANK("bank2")
@@ -42,7 +42,7 @@ static ADDRESS_MAP_START(kc85_4_mem, AS_PROGRAM, 8, kc85_4_state)
AM_RANGE(0xe000, 0xffff) AM_READ_BANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(kc85_3_mem, AS_PROGRAM, 8, kc_state)
+ADDRESS_MAP_START(kc_state::kc85_3_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_READWRITE_BANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_READWRITE_BANK("bank2")
@@ -51,7 +51,7 @@ static ADDRESS_MAP_START(kc85_3_mem, AS_PROGRAM, 8, kc_state)
AM_RANGE(0xe000, 0xffff) AM_READ_BANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(kc85_3_io, AS_IO, 8, kc_state)
+ADDRESS_MAP_START(kc_state::kc85_3_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(expansion_io_read, expansion_io_write)
diff --git a/src/mame/drivers/kchamp.cpp b/src/mame/drivers/kchamp.cpp
index 96b895d9d13..3e37055672b 100644
--- a/src/mame/drivers/kchamp.cpp
+++ b/src/mame/drivers/kchamp.cpp
@@ -104,7 +104,7 @@ WRITE8_MEMBER(kchamp_state::sound_control_w)
m_audiocpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
}
-static ADDRESS_MAP_START( kchampvs_map, AS_PROGRAM, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchampvs_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(kchamp_videoram_w) AM_SHARE("videoram")
@@ -114,11 +114,11 @@ static ADDRESS_MAP_START( kchampvs_map, AS_PROGRAM, 8, kchamp_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kchampvs_io_map, AS_IO, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchampvs_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x00, 0x07) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
@@ -127,12 +127,12 @@ static ADDRESS_MAP_START( kchampvs_io_map, AS_IO, 8, kchamp_state )
AM_RANGE(0xc0, 0xc0) AM_READ_PORT("DSW")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kchampvs_sound_map, AS_PROGRAM, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchampvs_sound_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kchampvs_sound_io_map, AS_IO, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchampvs_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x01, 0x01) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -163,7 +163,7 @@ WRITE8_MEMBER(kchamp_state::kc_sound_control_w)
m_dac->set_output_gain(0, BIT(data,0) ? 1.0 : 0);
}
-static ADDRESS_MAP_START( kchamp_map, AS_PROGRAM, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchamp_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe3ff) AM_RAM_WRITE(kchamp_videoram_w) AM_SHARE("videoram")
@@ -172,7 +172,7 @@ static ADDRESS_MAP_START( kchamp_map, AS_PROGRAM, 8, kchamp_state )
AM_RANGE(0xeb00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kchamp_io_map, AS_IO, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchamp_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_READ_PORT("DSW")
AM_RANGE(0x80, 0x87) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
@@ -182,12 +182,12 @@ static ADDRESS_MAP_START( kchamp_io_map, AS_IO, 8, kchamp_state )
AM_RANGE(0xa8, 0xa8) AM_READ(sound_reset_r) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kchamp_sound_map, AS_PROGRAM, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchamp_sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe2ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kchamp_sound_io_map, AS_IO, 8, kchamp_state )
+ADDRESS_MAP_START(kchamp_state::kchamp_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
@@ -400,7 +400,7 @@ MACHINE_CONFIG_START(kchamp_state::kchampvs)
MCFG_CPU_ADD("maincpu", Z80, XTAL(12'000'000)/4) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(kchampvs_map)
MCFG_CPU_IO_MAP(kchampvs_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", kchamp_state, kc_interrupt)
MCFG_CPU_ADD("audiocpu", Z80, XTAL(12'000'000)/4) /* verified on pcb */
diff --git a/src/mame/drivers/kdt6.cpp b/src/mame/drivers/kdt6.cpp
index 43e39e93d11..b9d07a50faa 100644
--- a/src/mame/drivers/kdt6.cpp
+++ b/src/mame/drivers/kdt6.cpp
@@ -106,6 +106,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(siob_tx_w);
void psi98(machine_config &config);
+ void psi98_io(address_map &map);
+ void psi98_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -148,7 +150,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( psi98_mem, AS_PROGRAM, 8, kdt6_state )
+ADDRESS_MAP_START(kdt6_state::psi98_mem)
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("page0_r") AM_WRITE_BANK("page0_w")
AM_RANGE(0x1000, 0x1fff) AM_READ_BANK("page1_r") AM_WRITE_BANK("page1_w")
AM_RANGE(0x2000, 0x2fff) AM_READ_BANK("page2_r") AM_WRITE_BANK("page2_w")
@@ -167,7 +169,7 @@ static ADDRESS_MAP_START( psi98_mem, AS_PROGRAM, 8, kdt6_state )
AM_RANGE(0xf000, 0xffff) AM_READ_BANK("pagef_r") AM_WRITE_BANK("pagef_w")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psi98_io, AS_IO, 8, kdt6_state )
+ADDRESS_MAP_START(kdt6_state::psi98_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("dma", z80dma_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("sio", z80sio_device, cd_ba_r, cd_ba_w)
diff --git a/src/mame/drivers/kenseim.cpp b/src/mame/drivers/kenseim.cpp
index ccee1e984c6..c506cc28d2a 100644
--- a/src/mame/drivers/kenseim.cpp
+++ b/src/mame/drivers/kenseim.cpp
@@ -251,6 +251,8 @@ public:
int mole_state_b[6];
void kenseim(machine_config &config);
+ void kenseim_io_map(address_map &map);
+ void kenseim_map(address_map &map);
};
@@ -454,12 +456,12 @@ WRITE8_MEMBER(kenseim_state::cpu_porte_w)
-static ADDRESS_MAP_START( kenseim_map, AS_PROGRAM, 8, kenseim_state )
+ADDRESS_MAP_START(kenseim_state::kenseim_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kenseim_io_map, AS_IO, 8, kenseim_state )
+ADDRESS_MAP_START(kenseim_state::kenseim_io_map)
AM_RANGE(0x20, 0x27) AM_MIRROR(0xff00) AM_DEVREADWRITE("mb89363b", mb89363b_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/kickgoal.cpp b/src/mame/drivers/kickgoal.cpp
index b60c008eb84..434e5c201fa 100644
--- a/src/mame/drivers/kickgoal.cpp
+++ b/src/mame/drivers/kickgoal.cpp
@@ -473,7 +473,7 @@ WRITE16_MEMBER(kickgoal_state::kickgoal_eeprom_w)
/* Memory Maps *****************************************************************/
-static ADDRESS_MAP_START( kickgoal_program_map, AS_PROGRAM, 16, kickgoal_state )
+ADDRESS_MAP_START(kickgoal_state::kickgoal_program_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
/// AM_RANGE(0x30001e, 0x30001f) AM_WRITE(kickgoal_snd_w)
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("P1_P2")
@@ -626,7 +626,7 @@ void kickgoal_state::machine_reset()
}
-static ADDRESS_MAP_START( oki_map, 0, 8, kickgoal_state )
+ADDRESS_MAP_START(kickgoal_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/kim1.cpp b/src/mame/drivers/kim1.cpp
index d71128cf118..7a4834879e9 100644
--- a/src/mame/drivers/kim1.cpp
+++ b/src/mame/drivers/kim1.cpp
@@ -66,7 +66,7 @@ TODO:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START(kim1_map, AS_PROGRAM, 8, kim1_state)
+ADDRESS_MAP_START(kim1_state::kim1_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0xe000) AM_RAM
AM_RANGE(0x1700, 0x173f) AM_MIRROR(0xe000) AM_DEVREADWRITE("miot_u3", mos6530_device, read, write )
AM_RANGE(0x1740, 0x177f) AM_MIRROR(0xe000) AM_DEVREADWRITE("miot_u2", mos6530_device, read, write )
diff --git a/src/mame/drivers/kingdrby.cpp b/src/mame/drivers/kingdrby.cpp
index 5df9d46bf5c..367adcebde6 100644
--- a/src/mame/drivers/kingdrby.cpp
+++ b/src/mame/drivers/kingdrby.cpp
@@ -133,6 +133,15 @@ public:
void kingdrbb(machine_config &config);
void cowrace(machine_config &config);
void kingdrby(machine_config &config);
+ void cowrace_sound_io(address_map &map);
+ void cowrace_sound_map(address_map &map);
+ void master_io_map(address_map &map);
+ void master_map(address_map &map);
+ void slave_1986_map(address_map &map);
+ void slave_io_map(address_map &map);
+ void slave_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
@@ -409,19 +418,19 @@ WRITE8_MEMBER(kingdrby_state::led_array_w)
*
*************************************/
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::master_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x33ff) AM_RAM AM_MIRROR(0xc00) AM_SHARE("share1")
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(sc0_vram_w) AM_SHARE("vram")
AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(sc0_attr_w) AM_SHARE("attr")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_io_map, AS_IO, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::master_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_NOP //interrupt ack
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::slave_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x3fff) AM_ROM //sound rom, tested for the post check
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("nvram") //backup ram
@@ -441,7 +450,7 @@ WRITE8_MEMBER(kingdrby_state::kingdrbb_lamps_w)
// (same as the inputs but active high)
}
-static ADDRESS_MAP_START( slave_1986_map, AS_PROGRAM, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::slave_1986_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x3fff) AM_ROM //sound rom tested for the post check
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") //backup ram
@@ -460,28 +469,28 @@ static ADDRESS_MAP_START( slave_1986_map, AS_PROGRAM, 8, kingdrby_state )
AM_RANGE(0x7c00, 0x7c00) AM_READ_PORT("DSW")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_io_map, AS_IO, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::slave_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_NOP //interrupt ack
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cowrace_sound_map, AS_PROGRAM, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::cowrace_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cowrace_sound_io, AS_IO, 8, kingdrby_state )
+ADDRESS_MAP_START(kingdrby_state::cowrace_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ym2203_device, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/kingobox.cpp b/src/mame/drivers/kingobox.cpp
index 1d4cddedb94..4da81267f99 100644
--- a/src/mame/drivers/kingobox.cpp
+++ b/src/mame/drivers/kingobox.cpp
@@ -52,7 +52,7 @@ WRITE8_MEMBER(kingofb_state::sound_command_w)
}
-static ADDRESS_MAP_START( kingobox_map, AS_PROGRAM, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::kingobox_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share2") /* shared with sprite cpu */
@@ -72,7 +72,7 @@ static ADDRESS_MAP_START( kingobox_map, AS_PROGRAM, 8, kingofb_state )
AM_RANGE(0xfc05, 0xfc05) AM_READ_PORT("EXTRA")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kingobox_video_map, AS_PROGRAM, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::kingobox_video_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1") /* shared with main */
@@ -82,7 +82,7 @@ static ADDRESS_MAP_START( kingobox_video_map, AS_PROGRAM, 8, kingofb_state )
AM_RANGE(0xcc00, 0xcfff) AM_RAM_WRITE(kingofb_colorram2_w) AM_SHARE("colorram2") /* foreground colorram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kingobox_sprite_map, AS_PROGRAM, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::kingobox_sprite_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share2") /* shared with main */
@@ -90,13 +90,13 @@ static ADDRESS_MAP_START( kingobox_sprite_map, AS_PROGRAM, 8, kingofb_state )
AM_RANGE(0xc400, 0xc43f) AM_RAM /* something related to scroll? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kingobox_sound_map, AS_PROGRAM, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::kingobox_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_WRITENOP /* ??? */
AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kingobox_sound_io_map, AS_IO, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::kingobox_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_byte_interface, write)
AM_RANGE(0x08, 0x08) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
@@ -104,7 +104,7 @@ static ADDRESS_MAP_START( kingobox_sound_io_map, AS_IO, 8, kingofb_state )
ADDRESS_MAP_END
/* Ring King */
-static ADDRESS_MAP_START( ringking_map, AS_PROGRAM, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::ringking_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share2") /* shared with sprite cpu */
@@ -123,7 +123,7 @@ static ADDRESS_MAP_START( ringking_map, AS_PROGRAM, 8, kingofb_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM /* ???? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ringking_video_map, AS_PROGRAM, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::ringking_video_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") /* shared with main */
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( ringking_video_map, AS_PROGRAM, 8, kingofb_state )
AM_RANGE(0xa400, 0xa7ff) AM_RAM_WRITE(kingofb_colorram2_w) AM_SHARE("colorram2") /* foreground colorram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ringking_sprite_map, AS_PROGRAM, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::ringking_sprite_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share2") /* shared with main */
@@ -141,7 +141,7 @@ static ADDRESS_MAP_START( ringking_sprite_map, AS_PROGRAM, 8, kingofb_state )
AM_RANGE(0xa400, 0xa43f) AM_RAM /* something related to scroll? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ringking_sound_io_map, AS_IO, 8, kingofb_state )
+ADDRESS_MAP_START(kingofb_state::ringking_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_byte_interface, write)
AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/kingpin.cpp b/src/mame/drivers/kingpin.cpp
index 968fb9beab5..fa37ea12b90 100644
--- a/src/mame/drivers/kingpin.cpp
+++ b/src/mame/drivers/kingpin.cpp
@@ -57,6 +57,9 @@ public:
DECLARE_WRITE8_MEMBER(sound_nmi_w);
void kingpin(machine_config &config);
+ void kingpin_io_map(address_map &map);
+ void kingpin_program_map(address_map &map);
+ void kingpin_sound_map(address_map &map);
};
@@ -66,12 +69,12 @@ WRITE8_MEMBER(kingpin_state::sound_nmi_w)
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( kingpin_program_map, AS_PROGRAM, 8, kingpin_state )
+ADDRESS_MAP_START(kingpin_state::kingpin_program_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kingpin_io_map, AS_IO, 8, kingpin_state )
+ADDRESS_MAP_START(kingpin_state::kingpin_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
@@ -84,7 +87,7 @@ static ADDRESS_MAP_START( kingpin_io_map, AS_IO, 8, kingpin_state )
//AM_RANGE(0x70, 0x70) AM_WRITENOP // ?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kingpin_sound_map, AS_PROGRAM, 8, kingpin_state )
+ADDRESS_MAP_START(kingpin_state::kingpin_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
//AM_RANGE(0x8400, 0x8400) AM_READNOP // ?
diff --git a/src/mame/drivers/kinst.cpp b/src/mame/drivers/kinst.cpp
index 5e7b533a1b1..83e885a3205 100644
--- a/src/mame/drivers/kinst.cpp
+++ b/src/mame/drivers/kinst.cpp
@@ -231,6 +231,7 @@ public:
required_device<dcs_audio_2k_device> m_dcs;
void kinst(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -447,7 +448,7 @@ WRITE32_MEMBER(kinst_state::control_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, kinst_state )
+ADDRESS_MAP_START(kinst_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x08000000, 0x087fffff) AM_RAM AM_SHARE("rambase2")
diff --git a/src/mame/drivers/kissproto.cpp b/src/mame/drivers/kissproto.cpp
index 5d41c8cf979..e6e0029b86e 100644
--- a/src/mame/drivers/kissproto.cpp
+++ b/src/mame/drivers/kissproto.cpp
@@ -20,6 +20,7 @@ public:
{ }
void kissp(machine_config &config);
+ void kissp_map(address_map &map);
protected:
// devices
@@ -32,7 +33,7 @@ public:
};
-static ADDRESS_MAP_START( kissp_map, AS_PROGRAM, 8, kissp_state )
+ADDRESS_MAP_START(kissp_state::kissp_map)
AM_RANGE(0x0000, 0x0fff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/klax.cpp b/src/mame/drivers/klax.cpp
index 71ae90801c2..e95d6fc2fa4 100644
--- a/src/mame/drivers/klax.cpp
+++ b/src/mame/drivers/klax.cpp
@@ -79,7 +79,7 @@ MACHINE_RESET_MEMBER(klax_state,klax)
*
*************************************/
-static ADDRESS_MAP_START( klax_map, AS_PROGRAM, 16, klax_state )
+ADDRESS_MAP_START(klax_state::klax_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
AM_RANGE(0x1f0000, 0x1fffff) AM_DEVWRITE("eeprom", eeprom_parallel_28xx_device, unlock_write16)
@@ -96,7 +96,7 @@ static ADDRESS_MAP_START( klax_map, AS_PROGRAM, 16, klax_state )
AM_RANGE(0x3f2800, 0x3f3fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( klax2bl_map, AS_PROGRAM, 16, klax_state )
+ADDRESS_MAP_START(klax_state::klax2bl_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
AM_RANGE(0x1f0000, 0x1fffff) AM_DEVWRITE("eeprom", eeprom_parallel_28xx_device, unlock_write16)
@@ -232,7 +232,7 @@ MACHINE_CONFIG_START(klax_state::klax)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( bootleg_sound_map, AS_PROGRAM, 8, klax_state )
+ADDRESS_MAP_START(klax_state::bootleg_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/kncljoe.cpp b/src/mame/drivers/kncljoe.cpp
index 2811e68a40e..cbeac9957b3 100644
--- a/src/mame/drivers/kncljoe.cpp
+++ b/src/mame/drivers/kncljoe.cpp
@@ -45,7 +45,7 @@ WRITE8_MEMBER(kncljoe_state::sound_cmd_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, kncljoe_state )
+ADDRESS_MAP_START(kncljoe_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(kncljoe_videoram_w) AM_SHARE("videoram")
AM_RANGE(0xd000, 0xd001) AM_WRITE(kncljoe_scroll_w) AM_SHARE("scrollregs")
@@ -103,14 +103,14 @@ WRITE8_MEMBER(kncljoe_state::unused_w)
//unused - no MSM on the pcb
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, kncljoe_state )
+ADDRESS_MAP_START(kncljoe_state::sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x0fff) AM_WRITENOP
AM_RANGE(0x1000, 0x1fff) AM_WRITE(sound_irq_ack_w)
AM_RANGE(0x2000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, kncljoe_state )
+ADDRESS_MAP_START(kncljoe_state::sound_portmap)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(m6803_port1_r, m6803_port1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(m6803_port2_r, m6803_port2_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/koftball.cpp b/src/mame/drivers/koftball.cpp
index bccef20ed74..02d138c8250 100644
--- a/src/mame/drivers/koftball.cpp
+++ b/src/mame/drivers/koftball.cpp
@@ -74,6 +74,8 @@ public:
uint32_t screen_update_koftball(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_DEVICE_CALLBACK_MEMBER(bmc_interrupt);
void koftball(machine_config &config);
+ void koftball_mem(address_map &map);
+ void ramdac_map(address_map &map);
};
@@ -147,7 +149,7 @@ WRITE16_MEMBER(koftball_state::bmc_2_videoram_w)
m_tilemap_2->mark_tile_dirty(offset);
}
-static ADDRESS_MAP_START( koftball_mem, AS_PROGRAM, 16, koftball_state )
+ADDRESS_MAP_START(koftball_state::koftball_mem)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x220000, 0x22ffff) AM_RAM AM_SHARE("main_ram")
@@ -174,7 +176,7 @@ static ADDRESS_MAP_START( koftball_mem, AS_PROGRAM, 16, koftball_state )
AM_RANGE(0x360000, 0x360001) AM_WRITE(prot_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, koftball_state )
+ADDRESS_MAP_START(koftball_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/koikoi.cpp b/src/mame/drivers/koikoi.cpp
index 53020bb0ff4..a2aff475d94 100644
--- a/src/mame/drivers/koikoi.cpp
+++ b/src/mame/drivers/koikoi.cpp
@@ -83,6 +83,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void koikoi(machine_config &config);
+ void koikoi_io_map(address_map &map);
+ void koikoi_map(address_map &map);
};
@@ -230,7 +232,7 @@ WRITE8_MEMBER(koikoi_state::io_w)
*
*************************************/
-static ADDRESS_MAP_START( koikoi_map, AS_PROGRAM, 8, koikoi_state )
+ADDRESS_MAP_START(koikoi_state::koikoi_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0x7000, 0x77ff) AM_RAM_WRITE(vram_w) AM_SHARE("videoram")
@@ -238,7 +240,7 @@ static ADDRESS_MAP_START( koikoi_map, AS_PROGRAM, 8, koikoi_state )
AM_RANGE(0x9000, 0x9007) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( koikoi_io_map, AS_IO, 8, koikoi_state )
+ADDRESS_MAP_START(koikoi_state::koikoi_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x02) AM_WRITENOP //watchdog
AM_RANGE(0x03, 0x03) AM_DEVREAD("aysnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/konamigq.cpp b/src/mame/drivers/konamigq.cpp
index 4ce806a8005..038c8c29da7 100644
--- a/src/mame/drivers/konamigq.cpp
+++ b/src/mame/drivers/konamigq.cpp
@@ -126,6 +126,10 @@ public:
void scsi_dma_read( uint32_t *p_n_psxram, uint32_t n_address, int32_t n_size );
void scsi_dma_write( uint32_t *p_n_psxram, uint32_t n_address, int32_t n_size );
void konamigq(machine_config &config);
+ void konamigq_dasp_map(address_map &map);
+ void konamigq_k054539_map(address_map &map);
+ void konamigq_map(address_map &map);
+ void konamigq_sound_map(address_map &map);
};
/* EEPROM */
@@ -163,7 +167,7 @@ READ8_MEMBER(konamigq_state::pcmram_r)
/* Video */
-static ADDRESS_MAP_START( konamigq_map, AS_PROGRAM, 32, konamigq_state )
+ADDRESS_MAP_START(konamigq_state::konamigq_map)
AM_RANGE(0x1f000000, 0x1f00001f) AM_DEVREADWRITE8("am53cf96", am53cf96_device, read, write, 0x00ff00ff)
AM_RANGE(0x1f100000, 0x1f10001f) AM_DEVREADWRITE8("k056800", k056800_device, host_r, host_w, 0x00ff00ff)
AM_RANGE(0x1f180000, 0x1f180003) AM_WRITE16(eeprom_w, 0x0000ffff)
@@ -226,7 +230,7 @@ WRITE16_MEMBER(konamigq_state::tms57002_control_word_w)
}
/* 68000 memory handling - near identical to Konami GX */
-static ADDRESS_MAP_START( konamigq_sound_map, AS_PROGRAM, 16, konamigq_state )
+ADDRESS_MAP_START(konamigq_state::konamigq_sound_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x2004ff) AM_DEVREADWRITE8("k054539_1", k054539_device, read, write, 0xff00)
@@ -239,13 +243,13 @@ ADDRESS_MAP_END
/* TMS57002 memory handling */
-static ADDRESS_MAP_START( konamigq_dasp_map, AS_DATA, 8, konamigq_state )
+ADDRESS_MAP_START(konamigq_state::konamigq_dasp_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
/* K058141 memory handling */
-static ADDRESS_MAP_START( konamigq_k054539_map, 0, 8, konamigq_state )
+ADDRESS_MAP_START(konamigq_state::konamigq_k054539_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_REGION("k054539", 0)
AM_RANGE(0x080000, 0x3fffff) AM_RAM AM_SHARE("pcmram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/konamigv.cpp b/src/mame/drivers/konamigv.cpp
index b2e198bc824..f2a43917c86 100644
--- a/src/mame/drivers/konamigv.cpp
+++ b/src/mame/drivers/konamigv.cpp
@@ -165,6 +165,11 @@ public:
void kdeadeye(machine_config &config);
void btchamp(machine_config &config);
void konamigv(machine_config &config);
+ void btchamp_map(address_map &map);
+ void kdeadeye_map(address_map &map);
+ void konamigv_map(address_map &map);
+ void simpbowl_map(address_map &map);
+ void tmosh_map(address_map &map);
protected:
virtual void driver_start() override;
@@ -180,7 +185,7 @@ private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( konamigv_map, AS_PROGRAM, 32, konamigv_state )
+ADDRESS_MAP_START(konamigv_state::konamigv_map)
AM_RANGE(0x1f000000, 0x1f00001f) AM_DEVREADWRITE8("am53cf96", am53cf96_device, read, write, 0x00ff00ff)
AM_RANGE(0x1f100000, 0x1f100003) AM_READ_PORT("P1")
AM_RANGE(0x1f100004, 0x1f100007) AM_READ_PORT("P2")
@@ -190,7 +195,7 @@ static ADDRESS_MAP_START( konamigv_map, AS_PROGRAM, 32, konamigv_state )
AM_RANGE(0x1f780000, 0x1f780003) AM_WRITENOP /* watchdog? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( simpbowl_map, AS_PROGRAM, 32, konamigv_state )
+ADDRESS_MAP_START(konamigv_state::simpbowl_map)
AM_IMPORT_FROM( konamigv_map )
AM_RANGE(0x1f680080, 0x1f68008f) AM_READWRITE16(flash_r, flash_w, 0xffffffff)
@@ -198,7 +203,7 @@ static ADDRESS_MAP_START( simpbowl_map, AS_PROGRAM, 32, konamigv_state )
AM_RANGE(0x1f6800c8, 0x1f6800cb) AM_DEVREAD8("upd", upd4701_device, reset_xy, 0x0000ff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( btchamp_map, AS_PROGRAM, 32, konamigv_state )
+ADDRESS_MAP_START(konamigv_state::btchamp_map)
AM_IMPORT_FROM( konamigv_map )
AM_RANGE(0x1f380000, 0x1f3fffff) AM_DEVREADWRITE16("flash", intelfsh16_device, read, write, 0xffffffff)
@@ -208,7 +213,7 @@ static ADDRESS_MAP_START( btchamp_map, AS_PROGRAM, 32, konamigv_state )
AM_RANGE(0x1f6800e0, 0x1f6800e3) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kdeadeye_map, AS_PROGRAM, 32, konamigv_state )
+ADDRESS_MAP_START(konamigv_state::kdeadeye_map)
AM_IMPORT_FROM( konamigv_map )
AM_RANGE(0x1f380000, 0x1f3fffff) AM_DEVREADWRITE16("flash", intelfsh16_device, read, write, 0xffffffff)
@@ -220,7 +225,7 @@ static ADDRESS_MAP_START( kdeadeye_map, AS_PROGRAM, 32, konamigv_state )
AM_RANGE(0x1f6800e0, 0x1f6800e3) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmosh_map, AS_PROGRAM, 32, konamigv_state )
+ADDRESS_MAP_START(konamigv_state::tmosh_map)
AM_IMPORT_FROM( konamigv_map )
AM_RANGE(0x1f680080, 0x1f680083) AM_READ16(tokimeki_serial_r, 0x0000ffff)
diff --git a/src/mame/drivers/konamigx.cpp b/src/mame/drivers/konamigx.cpp
index ec6e292a3bb..cf7d6392032 100644
--- a/src/mame/drivers/konamigx.cpp
+++ b/src/mame/drivers/konamigx.cpp
@@ -985,7 +985,7 @@ WRITE32_MEMBER(konamigx_state::type1_cablamps_w)
/* 68EC020 memory handlers */
/**********************************************************************************/
-static ADDRESS_MAP_START( gx_base_memmap, AS_PROGRAM, 32, konamigx_state )
+ADDRESS_MAP_START(konamigx_state::gx_base_memmap)
AM_RANGE(0x000000, 0x01ffff) AM_ROM // BIOS ROM
AM_RANGE(0x200000, 0x3fffff) AM_ROM // main program ROM
AM_RANGE(0x400000, 0x7fffff) AM_ROM // data ROM
@@ -1013,7 +1013,7 @@ static ADDRESS_MAP_START( gx_base_memmap, AS_PROGRAM, 32, konamigx_state )
AM_RANGE(0xda2000, 0xda3fff) AM_DEVREADWRITE("k056832", k056832_device, ram_long_r, ram_long_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gx_type1_map, AS_PROGRAM, 32, konamigx_state )
+ADDRESS_MAP_START(konamigx_state::gx_type1_map)
AM_IMPORT_FROM(gx_base_memmap)
AM_RANGE(0xd90000, 0xd97fff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette")
AM_RANGE(0xdc0000, 0xdc1fff) AM_RAM // LAN RAM? (Racin' Force has, Open Golf doesn't)
@@ -1032,13 +1032,13 @@ static ADDRESS_MAP_START( gx_type1_map, AS_PROGRAM, 32, konamigx_state )
AM_RANGE(0xfc0000, 0xfc00ff) AM_RAM // chip 22N / S
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gx_type2_map, AS_PROGRAM, 32, konamigx_state )
+ADDRESS_MAP_START(konamigx_state::gx_type2_map)
AM_IMPORT_FROM(gx_base_memmap)
AM_RANGE(0xcc0000, 0xcc0003) AM_WRITE(esc_w)
AM_RANGE(0xd90000, 0xd97fff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gx_type3_map, AS_PROGRAM, 32, konamigx_state )
+ADDRESS_MAP_START(konamigx_state::gx_type3_map)
AM_IMPORT_FROM(gx_base_memmap)
AM_RANGE(0xd90000, 0xd97fff) AM_RAM
//AM_RANGE(0xcc0000, 0xcc0007) AM_WRITE(type4_prot_w)
@@ -1052,7 +1052,7 @@ static ADDRESS_MAP_START( gx_type3_map, AS_PROGRAM, 32, konamigx_state )
//AM_RANGE(0xf00000, 0xf07fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gx_type4_map, AS_PROGRAM, 32, konamigx_state )
+ADDRESS_MAP_START(konamigx_state::gx_type4_map)
AM_IMPORT_FROM(gx_base_memmap)
AM_RANGE(0xcc0000, 0xcc0007) AM_WRITE(type4_prot_w)
AM_RANGE(0xd90000, 0xd97fff) AM_RAM
@@ -1104,7 +1104,7 @@ WRITE16_MEMBER(konamigx_state::tms57002_control_word_w)
}
/* 68000 memory handling */
-static ADDRESS_MAP_START( gxsndmap, AS_PROGRAM, 16, konamigx_state )
+ADDRESS_MAP_START(konamigx_state::gxsndmap)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x2004ff) AM_DEVREADWRITE8("k054539_1", k054539_device, read, write, 0xff00)
@@ -1115,7 +1115,7 @@ static ADDRESS_MAP_START( gxsndmap, AS_PROGRAM, 16, konamigx_state )
AM_RANGE(0x580000, 0x580001) AM_WRITENOP // 'NRES' - D2: K056602 /RESET
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gxtmsmap, AS_DATA, 8, konamigx_state )
+ADDRESS_MAP_START(konamigx_state::gxtmsmap)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/konamim2.cpp b/src/mame/drivers/konamim2.cpp
index 179bae8bf07..42641f1be4b 100644
--- a/src/mame/drivers/konamim2.cpp
+++ b/src/mame/drivers/konamim2.cpp
@@ -281,6 +281,12 @@ public:
required_device<cpu_device> m_subcpu;
void m2(machine_config &config);
void _3do_m2(machine_config &config);
+ void _3do_m2_main(address_map &map);
+ void _3do_m2_main_m(address_map &map);
+ void _3do_m2_main_s(address_map &map);
+ void m2_main(address_map &map);
+ void m2_main_m(address_map &map);
+ void m2_main_s(address_map &map);
};
@@ -1164,7 +1170,7 @@ READ8_MEMBER(konamim2_state::id7_r)
return 0x07;
}
-static ADDRESS_MAP_START( m2_main, AS_PROGRAM, 64, konamim2_state )
+ADDRESS_MAP_START(konamim2_state::m2_main)
AM_RANGE(0x00000000, 0x0000007f) AM_RAM // ???
AM_RANGE(0x00010040, 0x00010047) AM_READWRITE(irq_enable_r, irq_enable_w)
AM_RANGE(0x00010050, 0x00010057) AM_READ(irq_active_r)
@@ -1203,30 +1209,30 @@ static ADDRESS_MAP_START( m2_main, AS_PROGRAM, 64, konamim2_state )
AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("boot", 0) AM_SHARE("share2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m2_main_m, AS_PROGRAM, 64, konamim2_state )
+ADDRESS_MAP_START(konamim2_state::m2_main_m)
AM_IMPORT_FROM( m2_main )
AM_RANGE(0x10000000, 0x10000007) AM_READ(cpu_r<true>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m2_main_s, AS_PROGRAM, 64, konamim2_state )
+ADDRESS_MAP_START(konamim2_state::m2_main_s)
AM_IMPORT_FROM( m2_main )
AM_RANGE(0x10000000, 0x10000007) AM_READ(cpu_r<false>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 3do_m2_main, AS_PROGRAM, 64, konamim2_state )
+ADDRESS_MAP_START(konamim2_state::_3do_m2_main)
// ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM( m2_main )
// AM_RANGE(0x00000000, 0x000cffff) devices?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 3do_m2_main_m, AS_PROGRAM, 64, konamim2_state )
- AM_IMPORT_FROM( 3do_m2_main )
+ADDRESS_MAP_START(konamim2_state::_3do_m2_main_m)
+ AM_IMPORT_FROM( _3do_m2_main )
AM_RANGE(0x10000000, 0x10000007) AM_READ(cpu_r<true>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 3do_m2_main_s, AS_PROGRAM, 64, konamim2_state )
- AM_IMPORT_FROM( 3do_m2_main )
+ADDRESS_MAP_START(konamim2_state::_3do_m2_main_s)
+ AM_IMPORT_FROM( _3do_m2_main )
AM_RANGE(0x10000000, 0x10000007) AM_READ(cpu_r<false>)
ADDRESS_MAP_END
@@ -1321,10 +1327,10 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(konamim2_state::_3do_m2, m2)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_PROGRAM_MAP(3do_m2_main_m)
+ MCFG_CPU_PROGRAM_MAP(_3do_m2_main_m)
MCFG_CPU_MODIFY("sub")
- MCFG_CPU_PROGRAM_MAP(3do_m2_main_s)
+ MCFG_CPU_PROGRAM_MAP(_3do_m2_main_s)
MCFG_SOFTWARE_LIST_ADD("cd_list","3do_m2")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/konendev.cpp b/src/mame/drivers/konendev.cpp
index 19ea604fddb..4b3d0846875 100644
--- a/src/mame/drivers/konendev.cpp
+++ b/src/mame/drivers/konendev.cpp
@@ -54,6 +54,7 @@ public:
{ }
void konendev(machine_config &config);
+ void konendev_map(address_map &map);
protected:
// devices
required_device<cpu_device> m_maincpu;
@@ -211,7 +212,7 @@ WRITE32_MEMBER(konendev_state::sound_data_w)
{
}
-static ADDRESS_MAP_START( konendev_map, AS_PROGRAM, 32, konendev_state )
+ADDRESS_MAP_START(konendev_state::konendev_map)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM
AM_RANGE(0x78000000, 0x78000003) AM_READ(mcu2_r)
AM_RANGE(0x78080000, 0x7808000f) AM_READWRITE(rtc_r, rtc_w)
diff --git a/src/mame/drivers/konin.cpp b/src/mame/drivers/konin.cpp
index 1d10e950618..a3213759971 100644
--- a/src/mame/drivers/konin.cpp
+++ b/src/mame/drivers/konin.cpp
@@ -58,16 +58,22 @@ public:
: driver_device(mconfig, type, tag)
, m_maincpu(*this, "maincpu")
, m_picu(*this, "picu")
+ , m_ioppi(*this, "ioppi")
+ , m_iopit(*this, "iopit")
{ }
DECLARE_WRITE8_MEMBER(picu_b_w);
DECLARE_WRITE_LINE_MEMBER(picu_r3_w);
void konin(machine_config &config);
+ void konin_io(address_map &map);
+ void konin_mem(address_map &map);
private:
virtual void machine_start() override;
required_device<cpu_device> m_maincpu;
required_device<i8214_device> m_picu;
+ required_device<i8255_device> m_ioppi;
+ required_device<pit8253_device> m_iopit;
};
WRITE8_MEMBER(konin_state::picu_b_w)
@@ -80,7 +86,7 @@ WRITE_LINE_MEMBER(konin_state::picu_r3_w)
m_picu->r_w(3, !state);
}
-static ADDRESS_MAP_START( konin_mem, AS_PROGRAM, 8, konin_state )
+ADDRESS_MAP_START(konin_state::konin_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0x5000, 0x7fff) AM_RAM
@@ -91,14 +97,15 @@ static ADDRESS_MAP_START( konin_mem, AS_PROGRAM, 8, konin_state )
AM_RANGE(0xff00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( konin_io, AS_IO, 8, konin_state )
+ADDRESS_MAP_START(konin_state::konin_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x24, 0x24) AM_WRITE(picu_b_w)
- AM_RANGE(0x80, 0x83) AM_DEVREADWRITE_MOD("ioppi", i8255_device, read, write, xor<3>)
+
+ ;map(0x80, 0x83).lrw8("ioppi_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_ioppi->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ioppi->write(space, offset^3, data, mem_mask); });
AM_RANGE(0xf6, 0xf6) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
AM_RANGE(0xf7, 0xf7) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
- AM_RANGE(0xf8, 0xfb) AM_DEVREADWRITE_MOD("iopit", pit8253_device, read, write, xor<3>)
+ ;map(0xf8, 0xfb).lrw8("iopit_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_iopit->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_iopit->write(space, offset^3, data, mem_mask); });
ADDRESS_MAP_END
/* Input ports */
diff --git a/src/mame/drivers/konmedal.cpp b/src/mame/drivers/konmedal.cpp
index eb1da3dbbe8..e7fe0db9ca6 100644
--- a/src/mame/drivers/konmedal.cpp
+++ b/src/mame/drivers/konmedal.cpp
@@ -88,6 +88,9 @@ public:
void shuriboy(machine_config &config);
void ddboy(machine_config &config);
void tsukande(machine_config &config);
+ void ddboy_main(address_map &map);
+ void medal_main(address_map &map);
+ void shuriboy_main(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -222,7 +225,7 @@ WRITE8_MEMBER(konmedal_state::bankswitch_w)
m_control = data & 0xf;
}
-static ADDRESS_MAP_START( medal_main, AS_PROGRAM, 8, konmedal_state )
+ADDRESS_MAP_START(konmedal_state::medal_main)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xafff) AM_RAM // work RAM?
@@ -241,7 +244,7 @@ static ADDRESS_MAP_START( medal_main, AS_PROGRAM, 8, konmedal_state )
AM_RANGE(0xe000, 0xffff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ddboy_main, AS_PROGRAM, 8, konmedal_state )
+ADDRESS_MAP_START(konmedal_state::ddboy_main)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM // work RAM
@@ -263,7 +266,7 @@ static ADDRESS_MAP_START( ddboy_main, AS_PROGRAM, 8, konmedal_state )
AM_RANGE(0xe000, 0xffff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shuriboy_main, AS_PROGRAM, 8, konmedal_state )
+ADDRESS_MAP_START(konmedal_state::shuriboy_main)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8800) AM_READ_PORT("IN2")
diff --git a/src/mame/drivers/konmedal68k.cpp b/src/mame/drivers/konmedal68k.cpp
index c4083ed5b29..f2c84b42710 100644
--- a/src/mame/drivers/konmedal68k.cpp
+++ b/src/mame/drivers/konmedal68k.cpp
@@ -78,6 +78,7 @@ public:
return m_k056832->piratesh_rom_r(space, offset, mem_mask);
}
+ void kzaurus_main(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -187,7 +188,7 @@ uint32_t konmedal68k_state::screen_update_konmedal68k(screen_device &screen, bit
return 0;
}
-static ADDRESS_MAP_START( kzaurus_main, AS_PROGRAM, 16, konmedal68k_state )
+ADDRESS_MAP_START(konmedal68k_state::kzaurus_main)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x400000, 0x403fff) AM_RAM
AM_RANGE(0x800000, 0x800001) AM_WRITE(control_w)
diff --git a/src/mame/drivers/kontest.cpp b/src/mame/drivers/kontest.cpp
index a522312a533..39a77f1b3ef 100644
--- a/src/mame/drivers/kontest.cpp
+++ b/src/mame/drivers/kontest.cpp
@@ -53,6 +53,8 @@ public:
DECLARE_WRITE8_MEMBER(control_w);
void kontest(machine_config &config);
+ void kontest_io(address_map &map);
+ void kontest_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -166,12 +168,12 @@ WRITE8_MEMBER(kontest_state::control_w)
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( kontest_map, AS_PROGRAM, 8, kontest_state )
+ADDRESS_MAP_START(kontest_state::kontest_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kontest_io, AS_IO, 8, kontest_state )
+ADDRESS_MAP_START(kontest_state::kontest_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("sn1", sn76489a_device, write)
AM_RANGE(0x04, 0x04) AM_DEVWRITE("sn2", sn76489a_device, write)
diff --git a/src/mame/drivers/kopunch.cpp b/src/mame/drivers/kopunch.cpp
index b6116917591..3383b026f00 100644
--- a/src/mame/drivers/kopunch.cpp
+++ b/src/mame/drivers/kopunch.cpp
@@ -72,7 +72,7 @@ INPUT_CHANGED_MEMBER(kopunch_state::right_coin_inserted)
********************************************************/
-static ADDRESS_MAP_START( kopunch_map, AS_PROGRAM, 8, kopunch_state )
+ADDRESS_MAP_START(kopunch_state::kopunch_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(vram_fg_w) AM_SHARE("vram_fg")
@@ -81,7 +81,7 @@ static ADDRESS_MAP_START( kopunch_map, AS_PROGRAM, 8, kopunch_state )
AM_RANGE(0x7400, 0x7bff) AM_RAM // more unused vram? or accidental writes?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kopunch_io_map, AS_IO, 8, kopunch_state )
+ADDRESS_MAP_START(kopunch_state::kopunch_io_map)
AM_RANGE(0x30, 0x33) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
AM_RANGE(0x34, 0x37) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
AM_RANGE(0x38, 0x3b) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write)
diff --git a/src/mame/drivers/kramermc.cpp b/src/mame/drivers/kramermc.cpp
index 1d91d721110..f84822c3b68 100644
--- a/src/mame/drivers/kramermc.cpp
+++ b/src/mame/drivers/kramermc.cpp
@@ -22,7 +22,7 @@ static GFXDECODE_START( kramermc )
GFXDECODE_END
/* Address maps */
-static ADDRESS_MAP_START(kramermc_mem, AS_PROGRAM, 8, kramermc_state )
+ADDRESS_MAP_START(kramermc_state::kramermc_mem)
AM_RANGE( 0x0000, 0x03ff ) AM_ROM // Monitor
AM_RANGE( 0x0400, 0x07ff ) AM_ROM // Debugger
AM_RANGE( 0x0800, 0x0bff ) AM_ROM // Reassembler
@@ -34,7 +34,7 @@ static ADDRESS_MAP_START(kramermc_mem, AS_PROGRAM, 8, kramermc_state )
AM_RANGE( 0xfc00, 0xffff ) AM_RAM // Video RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kramermc_io, AS_IO, 8, kramermc_state )
+ADDRESS_MAP_START(kramermc_state::kramermc_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xfc, 0x0ff) AM_DEVREADWRITE("z80pio", z80pio_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/kron.cpp b/src/mame/drivers/kron.cpp
index 6a17265ab98..34a43bf7d9d 100644
--- a/src/mame/drivers/kron.cpp
+++ b/src/mame/drivers/kron.cpp
@@ -147,6 +147,8 @@ kron180_state(const machine_config &mconfig, device_type type, const char *tag)
DECLARE_WRITE8_MEMBER( kbd_reset_w ){ LOGIO(("%s %02x = %02x\n", FUNCNAME, offset, data)); }
DECLARE_WRITE8_MEMBER( dreq_w ){ LOGIO(("%s %02x = %02x\n", FUNCNAME, offset, data)); }
void kron180(machine_config &config);
+ void kron180_iomap(address_map &map);
+ void kron180_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_shared_ptr<uint8_t> m_videoram;
@@ -156,7 +158,7 @@ private:
virtual void machine_start () override;
};
-static ADDRESS_MAP_START (kron180_mem, AS_PROGRAM, 8, kron180_state)
+ADDRESS_MAP_START(kron180_state::kron180_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x0000, 0x7fff) AM_ROM AM_REGION("roms", 0x8000)
AM_RANGE (0x8000, 0x85ff) AM_RAM AM_MIRROR(0x6000)
@@ -194,7 +196,7 @@ ADDRESS_MAP_END
*
* At the moment we emulate the screen at a high level so I just disregard the special functions on A16 - A18 by mirroring the mapping below
*/
-static ADDRESS_MAP_START( kron180_iomap, AS_IO, 8, kron180_state )
+ADDRESS_MAP_START(kron180_state::kron180_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x0000, 0x000f ) AM_WRITE(sn74259_w)
AM_RANGE( 0x0010, 0x001f ) AM_READWRITE(ap5_r, ap5_w)
diff --git a/src/mame/drivers/krz2000.cpp b/src/mame/drivers/krz2000.cpp
index 9e3147516f1..f5c5b511c2b 100644
--- a/src/mame/drivers/krz2000.cpp
+++ b/src/mame/drivers/krz2000.cpp
@@ -39,6 +39,7 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void k2000(machine_config &config);
+ void k2000_map(address_map &map);
};
void k2000_state::machine_start()
@@ -49,7 +50,7 @@ void k2000_state::machine_reset()
{
}
-static ADDRESS_MAP_START( k2000_map, AS_PROGRAM, 16, k2000_state )
+ADDRESS_MAP_START(k2000_state::k2000_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x100000, 0x11ffff) AM_RAM
AM_RANGE(0xfffc00, 0xffffff) AM_DEVREADWRITE("tmp68301", tmp68301_device, regs_r, regs_w) // TMP68301 Registers
diff --git a/src/mame/drivers/ksayakyu.cpp b/src/mame/drivers/ksayakyu.cpp
index 3d89b3f596f..97805aa157d 100644
--- a/src/mame/drivers/ksayakyu.cpp
+++ b/src/mame/drivers/ksayakyu.cpp
@@ -113,7 +113,7 @@ READ8_MEMBER(ksayakyu_state::int_ack_r)
return 0xff; // value not used
}
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, ksayakyu_state )
+ADDRESS_MAP_START(ksayakyu_state::maincpu_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x9fff) AM_ROM
@@ -131,7 +131,7 @@ static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, ksayakyu_state )
AM_RANGE(0xb800, 0xbfff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soundcpu_map, AS_PROGRAM, 8, ksayakyu_state )
+ADDRESS_MAP_START(ksayakyu_state::soundcpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0xa001, 0xa001) AM_DEVREAD("ay1", ay8910_device, data_r)
diff --git a/src/mame/drivers/ksys573.cpp b/src/mame/drivers/ksys573.cpp
index 41d5e15cf16..6b422383c95 100644
--- a/src/mame/drivers/ksys573.cpp
+++ b/src/mame/drivers/ksys573.cpp
@@ -523,6 +523,12 @@ public:
static void hyprbbc2_cassette_install(device_t *device);
static void hypbbc2p_cassette_install(device_t *device);
static void cr589_config(device_t *device);
+ void fbaitbc_map(address_map &map);
+ void flashbank_map(address_map &map);
+ void gunmania_map(address_map &map);
+ void konami573_map(address_map &map);
+ void konami573a_map(address_map &map);
+ void konami573d_map(address_map &map);
protected:
virtual void driver_start() override;
@@ -607,7 +613,7 @@ void ATTR_PRINTF( 3,4 ) ksys573_state::verboselog( int n_level, const char *s_f
}
}
-static ADDRESS_MAP_START( konami573_map, AS_PROGRAM, 32, ksys573_state )
+ADDRESS_MAP_START(ksys573_state::konami573_map)
AM_RANGE( 0x1f000000, 0x1f3fffff ) AM_DEVICE16( "flashbank", address_map_bank_device, amap16, 0xffffffff )
AM_RANGE( 0x1f400000, 0x1f400003 ) AM_READ_PORT( "IN0" ) AM_WRITE_PORT( "OUT0" )
AM_RANGE( 0x1f400004, 0x1f400007 ) AM_READ_PORT( "IN1" )
@@ -623,7 +629,7 @@ static ADDRESS_MAP_START( konami573_map, AS_PROGRAM, 32, ksys573_state )
AM_RANGE( 0x1f6a0000, 0x1f6a0003 ) AM_READWRITE16( security_r, security_w, 0x0000ffff )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flashbank_map, AS_PROGRAM, 16, ksys573_state )
+ADDRESS_MAP_START(ksys573_state::flashbank_map)
AM_RANGE( 0x0000000, 0x03fffff ) AM_DEVREADWRITE8( "29f016a.31m", intelfsh8_device, read, write, 0x00ff )
AM_RANGE( 0x0000000, 0x03fffff ) AM_DEVREADWRITE8( "29f016a.27m", intelfsh8_device, read, write, 0xff00 )
AM_RANGE( 0x0400000, 0x07fffff ) AM_DEVREADWRITE8( "29f016a.31l", intelfsh8_device, read, write, 0x00ff )
@@ -636,22 +642,22 @@ static ADDRESS_MAP_START( flashbank_map, AS_PROGRAM, 16, ksys573_state )
AM_RANGE( 0x8000000, 0xbffffff ) AM_DEVREADWRITE( "pccard2", pccard_slot_device, read_memory, write_memory )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( konami573d_map, AS_PROGRAM, 32, ksys573_state )
+ADDRESS_MAP_START(ksys573_state::konami573d_map)
AM_IMPORT_FROM( konami573_map )
AM_RANGE( 0x1f640000, 0x1f6400ff ) AM_DEVICE16( "k573dio", k573dio_device, amap, 0xffffffff )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( konami573a_map, AS_PROGRAM, 32, ksys573_state )
+ADDRESS_MAP_START(ksys573_state::konami573a_map)
AM_IMPORT_FROM( konami573_map )
AM_RANGE( 0x1f640000, 0x1f6400ff ) AM_READWRITE16( gx700pwbf_io_r, gx700pwbf_io_w, 0xffffffff )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fbaitbc_map, AS_PROGRAM, 32, ksys573_state )
+ADDRESS_MAP_START(ksys573_state::fbaitbc_map)
AM_IMPORT_FROM( konami573_map )
AM_RANGE( 0x1f640000, 0x1f6400ff ) AM_READWRITE16( ge765pwbba_r, ge765pwbba_w, 0xffffffff )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gunmania_map, AS_PROGRAM, 32, ksys573_state )
+ADDRESS_MAP_START(ksys573_state::gunmania_map)
AM_IMPORT_FROM( konami573_map )
AM_RANGE( 0x1f640000, 0x1f6400ff ) AM_READWRITE16( gunmania_r, gunmania_w, 0xffffffff )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/kungfur.cpp b/src/mame/drivers/kungfur.cpp
index 9617c850bc0..f07e24673ce 100644
--- a/src/mame/drivers/kungfur.cpp
+++ b/src/mame/drivers/kungfur.cpp
@@ -97,6 +97,7 @@ public:
required_device<msm5205_device> m_adpcm1;
required_device<msm5205_device> m_adpcm2;
void kungfur(machine_config &config);
+ void kungfur_map(address_map &map);
};
@@ -222,7 +223,7 @@ WRITE_LINE_MEMBER(kungfur_state::kfr_adpcm2_int)
}
-static ADDRESS_MAP_START( kungfur_map, AS_PROGRAM, 8, kungfur_state )
+ADDRESS_MAP_START(kungfur_state::kungfur_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_WRITE(kungfur_adpcm1_w)
AM_RANGE(0x4004, 0x4004) AM_WRITE(kungfur_adpcm2_w)
diff --git a/src/mame/drivers/kurukuru.cpp b/src/mame/drivers/kurukuru.cpp
index 27e9fec5221..1d394795c80 100644
--- a/src/mame/drivers/kurukuru.cpp
+++ b/src/mame/drivers/kurukuru.cpp
@@ -436,6 +436,14 @@ public:
DECLARE_WRITE_LINE_MEMBER(kurukuru_msm5205_vck);
void ppj(machine_config &config);
void kurukuru(machine_config &config);
+ void kurukuru_audio_io(address_map &map);
+ void kurukuru_audio_map(address_map &map);
+ void kurukuru_io(address_map &map);
+ void kurukuru_map(address_map &map);
+ void ppj_audio_io(address_map &map);
+ void ppj_audio_map(address_map &map);
+ void ppj_io(address_map &map);
+ void ppj_map(address_map &map);
};
#define MAIN_CLOCK XTAL(21'477'272)
@@ -536,13 +544,13 @@ WRITE8_MEMBER(kurukuru_state::kurukuru_soundlatch_w)
}
-static ADDRESS_MAP_START( kurukuru_map, AS_PROGRAM, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::kurukuru_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0xdfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kurukuru_io, AS_IO, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::kurukuru_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x0f) AM_WRITE(kurukuru_out_latch_w)
AM_RANGE(0x10, 0x10) AM_MIRROR(0x0f) AM_READ_PORT("DSW1")
@@ -555,13 +563,13 @@ static ADDRESS_MAP_START( kurukuru_io, AS_IO, 8, kurukuru_state )
AM_RANGE(0xd0, 0xd0) AM_MIRROR(0x0f) AM_DEVWRITE("ym2149", ay8910_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppj_map, AS_PROGRAM, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::ppj_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0xdfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppj_io, AS_IO, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::ppj_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x0f) AM_WRITE(kurukuru_bankswitch_w)
AM_RANGE(0x10, 0x13) AM_MIRROR(0x0c) AM_DEVREADWRITE( "v9938", v9938_device, read, write )
@@ -631,12 +639,12 @@ READ8_MEMBER(kurukuru_state::kurukuru_adpcm_timer_irqack_r)
}
-static ADDRESS_MAP_START( kurukuru_audio_map, AS_PROGRAM, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::kurukuru_audio_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kurukuru_audio_io, AS_IO, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::kurukuru_audio_io)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x0f) AM_WRITE(kurukuru_adpcm_data_w)
AM_RANGE(0x50, 0x50) AM_MIRROR(0x0f) AM_WRITE(kurukuru_adpcm_reset_w)
@@ -644,12 +652,12 @@ static ADDRESS_MAP_START( kurukuru_audio_io, AS_IO, 8, kurukuru_state )
AM_RANGE(0x70, 0x70) AM_MIRROR(0x0f) AM_READ(kurukuru_adpcm_timer_irqack_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppj_audio_map, AS_PROGRAM, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::ppj_audio_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppj_audio_io, AS_IO, 8, kurukuru_state )
+ADDRESS_MAP_START(kurukuru_state::ppj_audio_io)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x20, 0x20) AM_MIRROR(0x0f) AM_WRITE(kurukuru_adpcm_data_w)
AM_RANGE(0x30, 0x30) AM_MIRROR(0x0f) AM_WRITE(kurukuru_adpcm_reset_w)
diff --git a/src/mame/drivers/kyocera.cpp b/src/mame/drivers/kyocera.cpp
index 1e28db8639a..78a807f0258 100644
--- a/src/mame/drivers/kyocera.cpp
+++ b/src/mame/drivers/kyocera.cpp
@@ -563,26 +563,26 @@ WRITE8_MEMBER( kc85_state::lcd_w )
/* Memory Maps */
-static ADDRESS_MAP_START( kc85_mem, AS_PROGRAM, 8, kc85_state )
+ADDRESS_MAP_START(kc85_state::kc85_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8201_mem, AS_PROGRAM, 8, pc8201_state )
+ADDRESS_MAP_START(pc8201_state::pc8201_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tandy200_mem, AS_PROGRAM, 8, tandy200_state )
+ADDRESS_MAP_START(tandy200_state::tandy200_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xffff) AM_RAMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kc85_io, AS_IO, 8, kc85_state )
+ADDRESS_MAP_START(kc85_state::kc85_io)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x70, 0x70) AM_MIRROR(0x0f) optional RAM unit
// AM_RANGE(0x80, 0x80) AM_MIRROR(0x0f) optional I/O controller unit
@@ -595,12 +595,12 @@ static ADDRESS_MAP_START( kc85_io, AS_IO, 8, kc85_state )
AM_RANGE(0xf0, 0xf1) AM_MIRROR(0x0e) AM_READWRITE(lcd_r, lcd_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trsm100_io, AS_IO, 8, kc85_state )
+ADDRESS_MAP_START(kc85_state::trsm100_io)
AM_IMPORT_FROM(kc85_io)
AM_RANGE(0xa0, 0xa0) AM_MIRROR(0x0f) AM_WRITE(modem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8201_io, AS_IO, 8, pc8201_state )
+ADDRESS_MAP_START(pc8201_state::pc8201_io)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x70, 0x70) AM_MIRROR(0x0f) optional video interface 8255
AM_RANGE(0x80, 0x80) AM_MIRROR(0x03) AM_WRITE(romah_w)
@@ -616,7 +616,7 @@ static ADDRESS_MAP_START( pc8201_io, AS_IO, 8, pc8201_state )
AM_RANGE(0xf0, 0xf1) AM_MIRROR(0x0e) AM_READWRITE(lcd_r, lcd_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tandy200_io, AS_IO, 8, tandy200_state )
+ADDRESS_MAP_START(tandy200_state::tandy200_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x90, 0x9f) AM_DEVREADWRITE(RP5C01A_TAG, rp5c01_device, read, write)
// AM_RANGE(0xa0, 0xa0) AM_MIRROR(0x0f) AM_DEVWRITE(TCM5089_TAG, write)
diff --git a/src/mame/drivers/kyugo.cpp b/src/mame/drivers/kyugo.cpp
index a6e36adc364..4c179c841b0 100644
--- a/src/mame/drivers/kyugo.cpp
+++ b/src/mame/drivers/kyugo.cpp
@@ -40,7 +40,7 @@
*
*************************************/
-static ADDRESS_MAP_START( kyugo_main_map, AS_PROGRAM, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::kyugo_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(bgvideoram_w) AM_SHARE("bgvideoram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(bgattribram_w) AM_SHARE("bgattribram")
@@ -53,7 +53,7 @@ static ADDRESS_MAP_START( kyugo_main_map, AS_PROGRAM, 8, kyugo_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gyrodine_main_map, AS_PROGRAM, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::gyrodine_main_map)
AM_IMPORT_FROM(kyugo_main_map)
AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
@@ -71,7 +71,7 @@ WRITE_LINE_MEMBER(kyugo_state::nmi_mask_w)
m_nmi_mask = state;
}
-static ADDRESS_MAP_START( kyugo_main_portmap, AS_IO, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::kyugo_main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0x07)
AM_RANGE(0x00, 0x07) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
@@ -85,7 +85,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( gyrodine_sub_map, AS_PROGRAM, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::gyrodine_sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x8000, 0x8000) AM_READ_PORT("P2")
@@ -94,7 +94,7 @@ static ADDRESS_MAP_START( gyrodine_sub_map, AS_PROGRAM, 8, kyugo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( repulse_sub_map, AS_PROGRAM, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::repulse_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P2")
@@ -103,7 +103,7 @@ static ADDRESS_MAP_START( repulse_sub_map, AS_PROGRAM, 8, kyugo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( srdmissn_sub_map, AS_PROGRAM, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::srdmissn_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0xf400, 0xf400) AM_READ_PORT("SYSTEM")
@@ -112,7 +112,7 @@ static ADDRESS_MAP_START( srdmissn_sub_map, AS_PROGRAM, 8, kyugo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( legend_sub_map, AS_PROGRAM, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::legend_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0xf800, 0xf800) AM_READ_PORT("SYSTEM")
@@ -121,7 +121,7 @@ static ADDRESS_MAP_START( legend_sub_map, AS_PROGRAM, 8, kyugo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flashgala_sub_map, AS_PROGRAM, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::flashgala_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc040, 0xc040) AM_READ_PORT("SYSTEM")
AM_RANGE(0xc080, 0xc080) AM_READ_PORT("P1")
@@ -142,7 +142,7 @@ WRITE8_MEMBER(kyugo_state::coin_counter_w)
machine().bookkeeping().coin_counter_w(offset, data & 1);
}
-static ADDRESS_MAP_START( gyrodine_sub_portmap, AS_IO, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::gyrodine_sub_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("ay1", ay8910_device, data_r)
@@ -150,7 +150,7 @@ static ADDRESS_MAP_START( gyrodine_sub_portmap, AS_IO, 8, kyugo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( repulse_sub_portmap, AS_IO, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::repulse_sub_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("ay1", ay8910_device, data_r)
@@ -159,7 +159,7 @@ static ADDRESS_MAP_START( repulse_sub_portmap, AS_IO, 8, kyugo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flashgala_sub_portmap, AS_IO, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::flashgala_sub_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x41) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x42, 0x42) AM_DEVREAD("ay1", ay8910_device, data_r)
@@ -168,7 +168,7 @@ static ADDRESS_MAP_START( flashgala_sub_portmap, AS_IO, 8, kyugo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( srdmissn_sub_portmap, AS_IO, 8, kyugo_state )
+ADDRESS_MAP_START(kyugo_state::srdmissn_sub_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x82, 0x82) AM_DEVREAD("ay1", ay8910_device, data_r)
diff --git a/src/mame/drivers/labyrunr.cpp b/src/mame/drivers/labyrunr.cpp
index 59631029fd1..09aacf3569b 100644
--- a/src/mame/drivers/labyrunr.cpp
+++ b/src/mame/drivers/labyrunr.cpp
@@ -46,7 +46,7 @@ WRITE8_MEMBER(labyrunr_state::labyrunr_bankswitch_w)
machine().bookkeeping().coin_counter_w(1, data & 0x10);
}
-static ADDRESS_MAP_START( labyrunr_map, AS_PROGRAM, 8, labyrunr_state )
+ADDRESS_MAP_START(labyrunr_state::labyrunr_map)
AM_RANGE(0x0000, 0x0007) AM_DEVWRITE("k007121", k007121_device, ctrl_w)
AM_RANGE(0x0020, 0x005f) AM_RAM AM_SHARE("scrollram")
AM_RANGE(0x0800, 0x0800) AM_DEVREADWRITE("ym1", ym2203_device, read_port_r, write_port_w)
diff --git a/src/mame/drivers/ladybug.cpp b/src/mame/drivers/ladybug.cpp
index 61379b9413d..2e5358c085f 100644
--- a/src/mame/drivers/ladybug.cpp
+++ b/src/mame/drivers/ladybug.cpp
@@ -70,7 +70,7 @@ TODO:
#include "speaker.h"
-static ADDRESS_MAP_START( ladybug_map, AS_PROGRAM, 8, ladybug_state )
+ADDRESS_MAP_START(ladybug_state::ladybug_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x73ff) AM_WRITEONLY AM_SHARE("spriteram")
@@ -87,7 +87,7 @@ static ADDRESS_MAP_START( ladybug_map, AS_PROGRAM, 8, ladybug_state )
AM_RANGE(0xe000, 0xe000) AM_READ_PORT("IN2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, ladybug_state )
+ADDRESS_MAP_START(ladybug_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
@@ -553,7 +553,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(ladybug_state::dorodon, ladybug)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ladyfrog.cpp b/src/mame/drivers/ladyfrog.cpp
index 3968b1e4730..9dc6a69ab09 100644
--- a/src/mame/drivers/ladyfrog.cpp
+++ b/src/mame/drivers/ladyfrog.cpp
@@ -117,7 +117,7 @@ READ8_MEMBER(ladyfrog_state::snd_flag_r)
return m_snd_flag | 0xfd;
}
-static ADDRESS_MAP_START( ladyfrog_map, AS_PROGRAM, 8, ladyfrog_state )
+ADDRESS_MAP_START(ladyfrog_state::ladyfrog_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc07f) AM_RAM
AM_RANGE(0xc080, 0xc87f) AM_READWRITE(ladyfrog_videoram_r, ladyfrog_videoram_w) AM_SHARE("videoram")
@@ -138,7 +138,7 @@ static ADDRESS_MAP_START( ladyfrog_map, AS_PROGRAM, 8, ladyfrog_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ladyfrog_sound_map, AS_PROGRAM, 8, ladyfrog_state )
+ADDRESS_MAP_START(ladyfrog_state::ladyfrog_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_WRITENOP
diff --git a/src/mame/drivers/laser3k.cpp b/src/mame/drivers/laser3k.cpp
index effec0d7b18..f1eb3943d58 100644
--- a/src/mame/drivers/laser3k.cpp
+++ b/src/mame/drivers/laser3k.cpp
@@ -112,6 +112,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(ay3600_data_ready_w);
void laser3k(machine_config &config);
+ void banks_map(address_map &map);
+ void laser3k_map(address_map &map);
private:
uint8_t m_bank0val, m_bank1val, m_bank2val, m_bank3val;
int m_flash;
@@ -134,14 +136,14 @@ private:
ADDRESS MAP
***************************************************************************/
-static ADDRESS_MAP_START( laser3k_map, AS_PROGRAM, 8, laser3k_state )
+ADDRESS_MAP_START(laser3k_state::laser3k_map)
AM_RANGE(0x0000, 0x3fff) AM_DEVICE("bank0", address_map_bank_device, amap8)
AM_RANGE(0x4000, 0x7fff) AM_DEVICE("bank1", address_map_bank_device, amap8)
AM_RANGE(0x8000, 0xbfff) AM_DEVICE("bank2", address_map_bank_device, amap8)
AM_RANGE(0xc000, 0xffff) AM_DEVICE("bank3", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( banks_map, AS_PROGRAM, 8, laser3k_state )
+ADDRESS_MAP_START(laser3k_state::banks_map)
AM_RANGE(0x00000, 0x2ffff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0x38000, 0x3bfff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x3c000, 0x3c0ff) AM_READWRITE(io_r, io_w)
diff --git a/src/mame/drivers/laserbas.cpp b/src/mame/drivers/laserbas.cpp
index b12d6558aff..f245a9a2df1 100644
--- a/src/mame/drivers/laserbas.cpp
+++ b/src/mame/drivers/laserbas.cpp
@@ -126,6 +126,8 @@ public:
required_device<dac_byte_interface> m_dac5;
required_device<dac_byte_interface> m_dac6;
void laserbas(machine_config &config);
+ void laserbas_io(address_map &map);
+ void laserbas_memory(address_map &map);
};
TIMER_DEVICE_CALLBACK_MEMBER( laserbas_state::laserbas_scanline )
@@ -328,7 +330,7 @@ WRITE_LINE_MEMBER(laserbas_state::pit_out_5_w)
write_pit_out(5,state);
}
-static ADDRESS_MAP_START( laserbas_memory, AS_PROGRAM, 8, laserbas_state )
+ADDRESS_MAP_START(laserbas_state::laserbas_memory)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0xbfff) AM_READWRITE(vram_r, vram_w)
AM_RANGE(0xc000, 0xf7ff) AM_ROM AM_WRITENOP
@@ -336,7 +338,7 @@ static ADDRESS_MAP_START( laserbas_memory, AS_PROGRAM, 8, laserbas_state )
AM_RANGE(0xfc00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( laserbas_io, AS_IO, 8, laserbas_state )
+ADDRESS_MAP_START(laserbas_state::laserbas_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("crtc", mc6845_device, register_w)
diff --git a/src/mame/drivers/laserbat.cpp b/src/mame/drivers/laserbat.cpp
index fffa2937e62..5e3196b34f9 100644
--- a/src/mame/drivers/laserbat.cpp
+++ b/src/mame/drivers/laserbat.cpp
@@ -165,7 +165,7 @@ READ8_MEMBER(laserbat_state_base::rrowx_r)
*/
-static ADDRESS_MAP_START( laserbat_map, AS_PROGRAM, 8, laserbat_state_base )
+ADDRESS_MAP_START(laserbat_state_base::laserbat_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x13ff) AM_ROM
@@ -183,7 +183,7 @@ static ADDRESS_MAP_START( laserbat_map, AS_PROGRAM, 8, laserbat_state_base )
AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( laserbat_io_map, AS_IO, 8, laserbat_state_base )
+ADDRESS_MAP_START(laserbat_state_base::laserbat_io_map)
AM_RANGE(0x00, 0x00) AM_READ(rhsc_r) AM_WRITE(cnt_eff_w)
AM_RANGE(0x01, 0x01) /* RBALL */ AM_WRITE(cnt_nav_w)
AM_RANGE(0x02, 0x02) AM_READ(rrowx_r) AM_WRITE(csound1_w)
diff --git a/src/mame/drivers/lasso.cpp b/src/mame/drivers/lasso.cpp
index 3147da1679e..066c00d61ed 100644
--- a/src/mame/drivers/lasso.cpp
+++ b/src/mame/drivers/lasso.cpp
@@ -74,7 +74,7 @@ WRITE8_MEMBER(lasso_state::sound_select_w)
}
-static ADDRESS_MAP_START( lasso_main_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::lasso_main_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(lasso_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_colorram_w) AM_SHARE("colorram")
@@ -91,7 +91,7 @@ static ADDRESS_MAP_START( lasso_main_map, AS_PROGRAM, 8, lasso_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lasso_audio_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::lasso_audio_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x5000, 0x7fff) AM_ROM
AM_RANGE(0xb000, 0xb000) AM_WRITEONLY AM_SHARE("chip_data")
@@ -102,14 +102,14 @@ static ADDRESS_MAP_START( lasso_audio_map, AS_PROGRAM, 8, lasso_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lasso_coprocessor_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::lasso_coprocessor_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("bitmap_ram")
AM_RANGE(0x8000, 0x8fff) AM_MIRROR(0x7000) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chameleo_main_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::chameleo_main_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(lasso_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_colorram_w) AM_SHARE("colorram")
@@ -128,7 +128,7 @@ static ADDRESS_MAP_START( chameleo_main_map, AS_PROGRAM, 8, lasso_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chameleo_audio_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::chameleo_audio_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_ROM
@@ -140,7 +140,7 @@ static ADDRESS_MAP_START( chameleo_audio_map, AS_PROGRAM, 8, lasso_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wwjgtin_main_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::wwjgtin_main_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0c00, 0x0fff) AM_RAM_WRITE(lasso_colorram_w) AM_SHARE("colorram")
@@ -159,7 +159,7 @@ static ADDRESS_MAP_START( wwjgtin_main_map, AS_PROGRAM, 8, lasso_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wwjgtin_audio_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::wwjgtin_audio_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x4000, 0x7fff) AM_MIRROR(0x8000) AM_ROM
AM_RANGE(0xb000, 0xb000) AM_WRITEONLY AM_SHARE("chip_data")
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( wwjgtin_audio_map, AS_PROGRAM, 8, lasso_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pinbo_main_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::pinbo_main_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(lasso_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_colorram_w) AM_SHARE("colorram")
@@ -188,13 +188,13 @@ static ADDRESS_MAP_START( pinbo_main_map, AS_PROGRAM, 8, lasso_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pinbo_audio_map, AS_PROGRAM, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::pinbo_audio_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pinbo_audio_io_map, AS_IO, 8, lasso_state )
+ADDRESS_MAP_START(lasso_state::pinbo_audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("ay1", ay8910_device, data_r)
diff --git a/src/mame/drivers/lastbank.cpp b/src/mame/drivers/lastbank.cpp
index 3915ee6c25c..94a4440ab5c 100644
--- a/src/mame/drivers/lastbank.cpp
+++ b/src/mame/drivers/lastbank.cpp
@@ -87,6 +87,10 @@ public:
void ram_bank_w(uint16_t offset, uint8_t data, uint8_t bank_num);
TIMER_DEVICE_CALLBACK_MEMBER(lastbank_irq_scanline);
void lastbank(machine_config &config);
+ void lastbank_audio_io(address_map &map);
+ void lastbank_audio_map(address_map &map);
+ void lastbank_map(address_map &map);
+ void tc0091lvc_map(address_map &map);
};
void lastbank_state::video_start()
@@ -251,7 +255,7 @@ CUSTOM_INPUT_MEMBER(lastbank_state::sound_status_r)
return BIT(m_sound_flags, 0) << 1 | BIT(m_sound_flags, 1);
}
-static ADDRESS_MAP_START( tc0091lvc_map, AS_PROGRAM, 8, lastbank_state )
+ADDRESS_MAP_START(lastbank_state::tc0091lvc_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_READ(lastbank_rom_r)
@@ -269,7 +273,7 @@ static ADDRESS_MAP_START( tc0091lvc_map, AS_PROGRAM, 8, lastbank_state )
AM_RANGE(0xff08, 0xff08) AM_READWRITE(lastbank_rom_bank_r, lastbank_rom_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lastbank_map, AS_PROGRAM, 8, lastbank_state )
+ADDRESS_MAP_START(lastbank_state::lastbank_map)
AM_IMPORT_FROM( tc0091lvc_map )
AM_RANGE(0xa000, 0xa00d) AM_NOP // MSM62X42B or equivalent probably read from here
AM_RANGE(0xa800, 0xa800) AM_READ_PORT("COINS")
@@ -286,13 +290,13 @@ static ADDRESS_MAP_START( lastbank_map, AS_PROGRAM, 8, lastbank_state )
AM_RANGE(0xa81f, 0xa81f) AM_READ_PORT("DSW3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lastbank_audio_map, AS_PROGRAM, 8, lastbank_state )
+ADDRESS_MAP_START(lastbank_state::lastbank_audio_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lastbank_audio_io, AS_IO, 8, lastbank_state )
+ADDRESS_MAP_START(lastbank_state::lastbank_audio_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x06) AM_DEVREADWRITE("essnd", es8712_device, read, write)
AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/lastduel.cpp b/src/mame/drivers/lastduel.cpp
index 9ffbec24699..a983b50404a 100644
--- a/src/mame/drivers/lastduel.cpp
+++ b/src/mame/drivers/lastduel.cpp
@@ -141,7 +141,7 @@ WRITE16_MEMBER(lastduel_state::lastduel_sound_w)
/******************************************************************************/
-static ADDRESS_MAP_START( lastduel_map, AS_PROGRAM, 16, lastduel_state )
+ADDRESS_MAP_START(lastduel_state::lastduel_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0xfc0000, 0xfc0003) AM_WRITENOP /* Written rarely */
AM_RANGE(0xfc0800, 0xfc0fff) AM_RAM AM_SHARE("spriteram")
@@ -157,7 +157,7 @@ static ADDRESS_MAP_START( lastduel_map, AS_PROGRAM, 16, lastduel_state )
AM_RANGE(0xfe0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( madgear_map, AS_PROGRAM, 16, lastduel_state )
+ADDRESS_MAP_START(lastduel_state::madgear_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0xfc1800, 0xfc1fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xfc4000, 0xfc4001) AM_READ_PORT("DSW1") AM_WRITE(lastduel_flip_w)
@@ -174,7 +174,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, lastduel_state )
+ADDRESS_MAP_START(lastduel_state::sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
AM_RANGE(0xe800, 0xe801) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
@@ -187,7 +187,7 @@ WRITE8_MEMBER(lastduel_state::mg_bankswitch_w)
membank("bank1")->set_entry(data & 0x01);
}
-static ADDRESS_MAP_START( madgear_sound_map, AS_PROGRAM, 8, lastduel_state )
+ADDRESS_MAP_START(lastduel_state::madgear_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xcfff) AM_ROMBANK("bank1")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
diff --git a/src/mame/drivers/lastfght.cpp b/src/mame/drivers/lastfght.cpp
index 1ad331d952b..1694ec5e56a 100644
--- a/src/mame/drivers/lastfght.cpp
+++ b/src/mame/drivers/lastfght.cpp
@@ -103,6 +103,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void lastfght(machine_config &config);
+ void lastfght_map(address_map &map);
+ void ramdac_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -405,7 +407,7 @@ WRITE16_MEMBER(lastfght_state::sound_w)
Memory Maps
***************************************************************************/
-static ADDRESS_MAP_START( lastfght_map, AS_PROGRAM, 16, lastfght_state )
+ADDRESS_MAP_START(lastfght_state::lastfght_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_REGION("maincpu", 0)
@@ -436,7 +438,7 @@ static ADDRESS_MAP_START( lastfght_map, AS_PROGRAM, 16, lastfght_state )
AM_RANGE( 0xc00006, 0xc00007 ) AM_READWRITE(c00006_r, c00006_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, lastfght_state )
+ADDRESS_MAP_START(lastfght_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/lazercmd.cpp b/src/mame/drivers/lazercmd.cpp
index 4b48e81591f..e2957962b1f 100644
--- a/src/mame/drivers/lazercmd.cpp
+++ b/src/mame/drivers/lazercmd.cpp
@@ -410,7 +410,7 @@ READ8_MEMBER(lazercmd_state::lazercmd_hardware_r)
*
*************************************************************/
-static ADDRESS_MAP_START( lazercmd_map, AS_PROGRAM, 8, lazercmd_state )
+ADDRESS_MAP_START(lazercmd_state::lazercmd_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x1c00, 0x1c1f) AM_RAM
AM_RANGE(0x1c20, 0x1eff) AM_RAM AM_SHARE("videoram")
@@ -419,7 +419,7 @@ static ADDRESS_MAP_START( lazercmd_map, AS_PROGRAM, 8, lazercmd_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( medlanes_map, AS_PROGRAM, 8, lazercmd_state )
+ADDRESS_MAP_START(lazercmd_state::medlanes_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x1000, 0x17ff) AM_ROM
AM_RANGE(0x1c00, 0x1c1f) AM_RAM
@@ -429,7 +429,7 @@ static ADDRESS_MAP_START( medlanes_map, AS_PROGRAM, 8, lazercmd_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbonk_map, AS_PROGRAM, 8, lazercmd_state )
+ADDRESS_MAP_START(lazercmd_state::bbonk_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x1c00, 0x1c1f) AM_RAM
AM_RANGE(0x1c20, 0x1eff) AM_RAM AM_SHARE("videoram")
@@ -438,7 +438,7 @@ static ADDRESS_MAP_START( bbonk_map, AS_PROGRAM, 8, lazercmd_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lazercmd_portmap, AS_DATA, 8, lazercmd_state )
+ADDRESS_MAP_START(lazercmd_state::lazercmd_portmap)
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(lazercmd_ctrl_port_r, lazercmd_ctrl_port_w)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(lazercmd_data_port_r, lazercmd_data_port_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/lb186.cpp b/src/mame/drivers/lb186.cpp
index 89fcd0dc3c7..27eab5f7754 100644
--- a/src/mame/drivers/lb186.cpp
+++ b/src/mame/drivers/lb186.cpp
@@ -34,6 +34,8 @@ public:
DECLARE_FLOPPY_FORMATS( floppy_formats );
void lb186(machine_config &config);
static void ncr5380(device_t *device);
+ void lb186_io(address_map &map);
+ void lb186_map(address_map &map);
};
WRITE8_MEMBER(lb186_state::scsi_dack_w)
@@ -87,12 +89,12 @@ WRITE8_MEMBER(lb186_state::drive_sel_w)
floppy->ss_w(BIT(data, 4));
}
-static ADDRESS_MAP_START( lb186_map, AS_PROGRAM, 16, lb186_state )
+ADDRESS_MAP_START(lb186_state::lb186_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM // fixed 256k for now
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lb186_io, AS_IO, 16, lb186_state )
+ADDRESS_MAP_START(lb186_state::lb186_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x1000, 0x101f) AM_DEVREADWRITE8("duart", scn2681_device, read, write, 0x00ff)
AM_RANGE(0x1080, 0x108f) AM_DEVREADWRITE8("scsibus:7:ncr5380", ncr5380n_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/lbeach.cpp b/src/mame/drivers/lbeach.cpp
index 66dfe1ab6f7..57a749a21a3 100644
--- a/src/mame/drivers/lbeach.cpp
+++ b/src/mame/drivers/lbeach.cpp
@@ -80,6 +80,7 @@ public:
DECLARE_PALETTE_INIT(lbeach);
uint32_t screen_update_lbeach(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void lbeach(machine_config &config);
+ void lbeach_map(address_map &map);
};
@@ -215,7 +216,7 @@ READ8_MEMBER(lbeach_state::lbeach_in2_r)
return (ioport("IN2")->read() & 0x3f) | d6 | d7;
}
-static ADDRESS_MAP_START( lbeach_map, AS_PROGRAM, 8, lbeach_state )
+ADDRESS_MAP_START(lbeach_state::lbeach_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x4000, 0x41ff) AM_RAM_WRITE(lbeach_bg_vram_w) AM_SHARE("bg_vram")
AM_RANGE(0x4000, 0x4000) AM_READ(lbeach_in1_r)
diff --git a/src/mame/drivers/lc80.cpp b/src/mame/drivers/lc80.cpp
index f8b8394fd5b..1857209024b 100644
--- a/src/mame/drivers/lc80.cpp
+++ b/src/mame/drivers/lc80.cpp
@@ -48,7 +48,7 @@
/* Memory Maps */
-static ADDRESS_MAP_START( lc80_mem, AS_PROGRAM, 8, lc80_state )
+ADDRESS_MAP_START(lc80_state::lc80_mem)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_ROMBANK("bank1")
AM_RANGE(0x0800, 0x0fff) AM_ROMBANK("bank2")
@@ -58,13 +58,13 @@ static ADDRESS_MAP_START( lc80_mem, AS_PROGRAM, 8, lc80_state )
ADDRESS_MAP_END
#if 0
-static ADDRESS_MAP_START( sc80_mem, AS_PROGRAM, 8, lc80_state )
+ADDRESS_MAP_START(lc80_state::sc80_mem)
AM_IMPORT_FROM(lc80_mem)
AM_RANGE(0xc000, 0xcfff) AM_ROM
ADDRESS_MAP_END
#endif
-static ADDRESS_MAP_START( lc80_io, AS_IO, 8, lc80_state )
+ADDRESS_MAP_START(lc80_state::lc80_io)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x14, 0x17) AM_DEVREADWRITE(Z80PIO1_TAG, z80pio_device, read, write)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE(Z80PIO2_TAG, z80pio_device, read, write)
diff --git a/src/mame/drivers/lcmate2.cpp b/src/mame/drivers/lcmate2.cpp
index cd0883de271..53df0486b8c 100644
--- a/src/mame/drivers/lcmate2.cpp
+++ b/src/mame/drivers/lcmate2.cpp
@@ -63,6 +63,8 @@ public:
DECLARE_WRITE8_MEMBER( bankswitch_w );
DECLARE_PALETTE_INIT(lcmate2);
void lcmate2(machine_config &config);
+ void lcmate2_io(address_map &map);
+ void lcmate2_mem(address_map &map);
};
WRITE8_MEMBER( lcmate2_state::speaker_w )
@@ -93,14 +95,14 @@ WRITE8_MEMBER( lcmate2_state::bankswitch_w )
membank("rombank")->set_entry(data&0x0f);
}
-static ADDRESS_MAP_START(lcmate2_mem, AS_PROGRAM, 8, lcmate2_state)
+ADDRESS_MAP_START(lcmate2_state::lcmate2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4000, 0x7fff ) AM_ROMBANK("rombank")
AM_RANGE( 0x8000, 0x9fff ) AM_RAM AM_MIRROR(0x6000) AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(lcmate2_io, AS_IO, 8, lcmate2_state)
+ADDRESS_MAP_START(lcmate2_state::lcmate2_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x000f) AM_DEVREADWRITE("rtc", rp5c15_device, read, write)
AM_RANGE(0x1000, 0x1000) AM_WRITE(speaker_w)
diff --git a/src/mame/drivers/leapster.cpp b/src/mame/drivers/leapster.cpp
index a3225fd5313..e4595df5e1c 100644
--- a/src/mame/drivers/leapster.cpp
+++ b/src/mame/drivers/leapster.cpp
@@ -242,6 +242,8 @@ public:
}
void leapster(machine_config &config);
+ void leapster_aux(address_map &map);
+ void leapster_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<generic_slot_device> m_cart;
@@ -290,7 +292,7 @@ void leapster_state::machine_reset()
{
}
-static ADDRESS_MAP_START( leapster_map, AS_PROGRAM, 32, leapster_state )
+ADDRESS_MAP_START(leapster_state::leapster_map)
AM_RANGE(0x00000000, 0x007fffff) AM_ROM AM_MIRROR(0x40000000) // pointers in the bios region seem to be to the 40xxxxxx region, either we mirror there or something (real bios?) is acutally missing
AM_RANGE(0x0180D800, 0x0180D803) AM_READ(leapster_random_r)
AM_RANGE(0x03000000, 0x030007ff) AM_RAM // puts stack here, writes a pointer @ 0x03000000 on startup
@@ -298,7 +300,7 @@ static ADDRESS_MAP_START( leapster_map, AS_PROGRAM, 32, leapster_state )
// AM_RANGE(0x80000000, 0x807fffff) AM_ROMBANK("cartrom") // game ROM pointers are all to the 80xxxxxx region, so I assume it maps here - installed if a cart is present
ADDRESS_MAP_END
-static ADDRESS_MAP_START( leapster_aux, AS_IO, 32, leapster_state )
+ADDRESS_MAP_START(leapster_state::leapster_aux)
AM_RANGE(0x00000004b, 0x00000004b) AM_WRITE(leapster_aux004b_w) // this address isn't used by ARC internal stuff afaik, so probably leapster specific
ADDRESS_MAP_END
diff --git a/src/mame/drivers/legionna.cpp b/src/mame/drivers/legionna.cpp
index 31570893b94..456fbe86def 100644
--- a/src/mame/drivers/legionna.cpp
+++ b/src/mame/drivers/legionna.cpp
@@ -104,7 +104,7 @@ READ8_MEMBER(legionna_state::denjinmk_sound_comms_r)
return m_seibu_sound->main_r(space, (offset >> 1) & 7);
}
-static ADDRESS_MAP_START( legionna_cop_mem, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::legionna_cop_mem)
AM_RANGE(0x100400, 0x100401) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_sprite_dma_param_lo_w) // grainbow
AM_RANGE(0x100402, 0x100403) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_sprite_dma_param_hi_w) // grainbow
AM_RANGE(0x10040c, 0x10040d) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_sprite_dma_size_w) // grainbow
@@ -180,14 +180,14 @@ static ADDRESS_MAP_START( legionna_cop_mem, AS_PROGRAM, 16, legionna_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( legionna_map, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::legionna_map)
AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM
AM_RANGE(0x100470, 0x100471) AM_WRITENOP // toggles 0x2000 / 0x0000, tile bank on some games
AM_RANGE(0x100600, 0x10064f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
AM_RANGE(0x100680, 0x100681) AM_WRITENOP // irq ack?
- AM_RANGE(0x100700, 0x10071f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x100700, 0x10071f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x100740, 0x100741) AM_READ_PORT("DSW1")
AM_RANGE(0x100744, 0x100745) AM_READ_PORT("PLAYERS12")
AM_RANGE(0x100748, 0x100749) AM_READ_PORT("PLAYERS34")
@@ -203,7 +203,7 @@ static ADDRESS_MAP_START( legionna_map, AS_PROGRAM, 16, legionna_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::heatbrl_map)
AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM
@@ -214,7 +214,7 @@ static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16, legionna_state )
AM_RANGE(0x100744, 0x100745) AM_READ_PORT("PLAYERS12")
AM_RANGE(0x100748, 0x100749) AM_READ_PORT("PLAYERS34")
AM_RANGE(0x10074c, 0x10074d) AM_READ_PORT("SYSTEM")
- AM_RANGE(0x1007c0, 0x1007df) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x1007c0, 0x1007df).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x100800, 0x100fff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
AM_RANGE(0x101800, 0x101fff) AM_RAM // _WRITE(legionna_midground_w) AM_SHARE("mid_data")
@@ -224,14 +224,14 @@ static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16, legionna_state )
AM_RANGE(0x108000, 0x11ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( godzilla_map, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::godzilla_map)
AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM
AM_RANGE(0x100470, 0x100471) AM_WRITE(denjinmk_setgfxbank)
AM_RANGE(0x100600, 0x10064f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
AM_RANGE(0x100680, 0x100681) AM_WRITENOP // irq ack?
- AM_RANGE(0x100700, 0x10071f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x100700, 0x10071f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x100740, 0x100741) AM_READ_PORT("DSW1")
AM_RANGE(0x100744, 0x100745) AM_READ_PORT("PLAYERS12")
AM_RANGE(0x100748, 0x100749) AM_READ_PORT("PLAYERS34")
@@ -251,14 +251,14 @@ static ADDRESS_MAP_START( godzilla_map, AS_PROGRAM, 16, legionna_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( denjinmk_map, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::denjinmk_map)
AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM
AM_RANGE(0x100470, 0x100471) AM_WRITE(denjinmk_setgfxbank)
AM_RANGE(0x100600, 0x10064f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
AM_RANGE(0x100680, 0x100681) AM_WRITENOP // irq ack?
- AM_RANGE(0x100700, 0x10071f) AM_READ8(denjinmk_sound_comms_r, 0xff) AM_DEVWRITE8_MOD("seibu_sound", seibu_sound_device, main_w, rshift<1>, 0x00ff)
+ ;map(0x100700, 0x10071f).r(this, FUNC(legionna_state::denjinmk_sound_comms_r)).lw8("seibu_sound_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x100740, 0x100741) AM_READ_PORT("DSW1")
AM_RANGE(0x100744, 0x100745) AM_READ_PORT("PLAYERS12")
AM_RANGE(0x100748, 0x100749) AM_READ_PORT("PLAYERS34")
@@ -277,14 +277,14 @@ static ADDRESS_MAP_START( denjinmk_map, AS_PROGRAM, 16, legionna_state )
AM_RANGE(0x11f000, 0x11ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( grainbow_map, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::grainbow_map)
AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM
AM_RANGE(0x100480, 0x100487) AM_WRITE(grainbow_layer_config_w) // probably a COP feature
AM_RANGE(0x100600, 0x10064f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
AM_RANGE(0x100680, 0x100681) AM_WRITENOP // irq ack?
- AM_RANGE(0x100700, 0x10071f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x100700, 0x10071f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x100740, 0x100741) AM_READ_PORT("DSW1")
AM_RANGE(0x100744, 0x100745) AM_READ_PORT("PLAYERS12")
AM_RANGE(0x100748, 0x100749) AM_READ_PORT("PLAYERS34")
@@ -302,13 +302,13 @@ static ADDRESS_MAP_START( grainbow_map, AS_PROGRAM, 16, legionna_state )
AM_RANGE(0x108000, 0x11ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cupsoc_mem, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::cupsoc_mem)
AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM
AM_RANGE(0x100600, 0x10064f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
AM_RANGE(0x100680, 0x100681) AM_WRITENOP // irq ack?
- AM_RANGE(0x100700, 0x10071f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x100700, 0x10071f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x100740, 0x100741) AM_READ_PORT("DSW1")
AM_RANGE(0x100744, 0x100745) AM_READ_PORT("PLAYERS12")
AM_RANGE(0x100748, 0x100749) AM_READ_PORT("PLAYERS34")
@@ -329,18 +329,18 @@ static ADDRESS_MAP_START( cupsoc_mem, AS_PROGRAM, 16, legionna_state )
AM_RANGE(0x11e000, 0x11ffff) AM_RAM /*Stack Ram*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cupsocs_mem, AS_PROGRAM, 16, legionna_state )
+ADDRESS_MAP_START(legionna_state::cupsocs_mem)
AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1003ff) AM_RAM
- AM_RANGE(0x100600, 0x10067f) AM_DEVREADWRITE_MOD("crtc", seibu_crtc_device, read, write, xor<0x20>)
+ ;map(0x100600, 0x10067f).lrw16("crtc_rw", [this](address_space &space, offs_t offset, u16 mem_mask){ return m_crtc->read(space, offset ^ 0x20, mem_mask); }, [this](address_space &space, offs_t offset, u16 data, u16 mem_mask){ m_crtc->write(space, offset ^ 0x20, data, mem_mask); });
AM_RANGE(0x100680, 0x100681) AM_WRITENOP // irq ack?
AM_RANGE(0x100700, 0x100701) AM_READ_PORT("DSW1")
AM_RANGE(0x100704, 0x100705) AM_READ_PORT("PLAYERS12")
AM_RANGE(0x100708, 0x100709) AM_READ_PORT("PLAYERS34")
AM_RANGE(0x10070c, 0x10070d) AM_READ_PORT("SYSTEM")
AM_RANGE(0x10071c, 0x10071d) AM_READ_PORT("DSW2")
- AM_RANGE(0x100740, 0x10075f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x100740, 0x10075f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x100800, 0x100fff) AM_RAM // _WRITE(legionna_background_w) AM_SHARE("back_data")
AM_RANGE(0x101000, 0x1017ff) AM_RAM // _WRITE(legionna_foreground_w) AM_SHARE("fore_data")
AM_RANGE(0x101800, 0x101fff) AM_RAM // _WRITE(legionna_midground_w) AM_SHARE("mid_data")
diff --git a/src/mame/drivers/leland.cpp b/src/mame/drivers/leland.cpp
index ab5ff39e3f3..639fb44ec59 100644
--- a/src/mame/drivers/leland.cpp
+++ b/src/mame/drivers/leland.cpp
@@ -82,7 +82,7 @@
*
*************************************/
-static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8, leland_state )
+ADDRESS_MAP_START(leland_state::master_map_program)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xdfff) AM_ROMBANK("bank2") AM_WRITE(leland_battery_ram_w) AM_SHARE("battery")
@@ -91,13 +91,13 @@ static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8, leland_state )
AM_RANGE(0xf800, 0xf801) AM_WRITE(leland_master_video_addr_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_map_io, AS_IO, 8, leland_state )
+ADDRESS_MAP_START(leland_state::master_map_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_WRITE(leland_master_alt_bankswitch_w)
AM_RANGE(0xfd, 0xff) AM_READWRITE(leland_master_analog_key_r, leland_master_analog_key_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_redline_map_io, AS_IO, 8, leland_state )
+ADDRESS_MAP_START(leland_state::master_redline_map_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_WRITE(leland_master_alt_bankswitch_w)
AM_RANGE(0xf2, 0xf2) AM_DEVREADWRITE("custom", leland_80186_sound_device, leland_80186_response_r, leland_80186_command_lo_w)
@@ -106,7 +106,7 @@ static ADDRESS_MAP_START( master_redline_map_io, AS_IO, 8, leland_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_map_program_2, AS_PROGRAM, 8, leland_state )
+ADDRESS_MAP_START(leland_state::master_map_program_2)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xdfff) AM_ROMBANK("bank2") AM_WRITE(ataxx_battery_ram_w) AM_SHARE("battery")
@@ -115,7 +115,7 @@ static ADDRESS_MAP_START( master_map_program_2, AS_PROGRAM, 8, leland_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_map_io_2, AS_IO, 8, leland_state )
+ADDRESS_MAP_START(leland_state::master_map_io_2)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x04) AM_DEVREAD("custom", leland_80186_sound_device, leland_80186_response_r)
AM_RANGE(0x05, 0x05) AM_DEVWRITE("custom", leland_80186_sound_device, leland_80186_command_hi_w)
@@ -134,7 +134,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( slave_small_map_program, AS_PROGRAM, 8, leland_state )
+ADDRESS_MAP_START(leland_state::slave_small_map_program)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0xdfff) AM_ROMBANK("bank3")
AM_RANGE(0xe000, 0xefff) AM_RAM
@@ -144,7 +144,7 @@ static ADDRESS_MAP_START( slave_small_map_program, AS_PROGRAM, 8, leland_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_large_map_program, AS_PROGRAM, 8, leland_state )
+ADDRESS_MAP_START(leland_state::slave_large_map_program)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0xbfff) AM_ROMBANK("bank3")
AM_RANGE(0xc000, 0xc000) AM_WRITE(leland_slave_large_banksw_w)
@@ -154,14 +154,14 @@ static ADDRESS_MAP_START( slave_large_map_program, AS_PROGRAM, 8, leland_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map_io, AS_IO, 8, leland_state )
+ADDRESS_MAP_START(leland_state::slave_map_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x1f) AM_READWRITE(leland_svram_port_r, leland_svram_port_w)
AM_RANGE(0x40, 0x5f) AM_READWRITE(leland_svram_port_r, leland_svram_port_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map_program, AS_PROGRAM, 8, leland_state )
+ADDRESS_MAP_START(leland_state::slave_map_program)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x9fff) AM_ROMBANK("bank3")
AM_RANGE(0xa000, 0xdfff) AM_ROM
@@ -172,11 +172,59 @@ static ADDRESS_MAP_START( slave_map_program, AS_PROGRAM, 8, leland_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map_io_2, AS_IO, 8, leland_state )
+ADDRESS_MAP_START(leland_state::slave_map_io_2)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x60, 0x7f) AM_READWRITE(ataxx_svram_port_r, ataxx_svram_port_w)
ADDRESS_MAP_END
+/*************************************
+ *
+ * Sound CPU memory handlers
+ *
+ *************************************/
+
+ADDRESS_MAP_START(leland_state::leland_80186_map_program)
+ AM_RANGE(0x00000, 0x03fff) AM_MIRROR(0x1c000) AM_RAM
+ AM_RANGE(0x20000, 0xfffff) AM_ROM
+ADDRESS_MAP_END
+
+ADDRESS_MAP_START(leland_state::ataxx_80186_map_io)
+ADDRESS_MAP_END
+
+ADDRESS_MAP_START(leland_state::redline_80186_map_io)
+ AM_RANGE(0x0000, 0xffff) AM_DEVWRITE("custom", redline_80186_sound_device, redline_dac_w)
+ADDRESS_MAP_END
+
+
+ADDRESS_MAP_START(leland_state::leland_80186_map_io)
+ AM_RANGE(0x0000, 0xffff) AM_DEVWRITE("custom", leland_80186_sound_device, dac_w)
+ADDRESS_MAP_END
+
+
+/************************************************************************
+
+Memory configurations:
+
+ Redline Racer:
+ FFDF7:80186 upper chip select = E03C -> E0000-FFFFF, 128k long
+ FFDF7:80186 lower chip select = 00FC -> 00000-00FFF, 4k long
+ FFDF7:80186 peripheral chip select = 013C -> 01000, 01080, 01100, 01180, 01200, 01280, 01300
+ FFDF7:80186 middle chip select = 81FC -> 80000-C0000, 64k chunks, 256k total
+ FFDF7:80186 middle P chip select = A0FC
+
+ Quarterback, Team Quarterback, AAFB, Super Offroad, Track Pack, Pigout, Viper:
+ FFDFA:80186 upper chip select = E03C -> E0000-FFFFF, 128k long
+ FFDFA:80186 peripheral chip select = 203C -> 20000, 20080, 20100, 20180, 20200, 20280, 20300
+ FFDFA:80186 middle chip select = 01FC -> 00000-7FFFF, 128k chunks, 512k total
+ FFDFA:80186 middle P chip select = C0FC
+
+ Ataxx, Indy Heat, World Soccer Finals:
+ FFD9D:80186 upper chip select = E03C -> E0000-FFFFF, 128k long
+ FFD9D:80186 peripheral chip select = 043C -> 04000, 04080, 04100, 04180, 04200, 04280, 04300
+ FFD9D:80186 middle chip select = 01FC -> 00000-7FFFF, 128k chunks, 512k total
+ FFD9D:80186 middle P chip select = C0BC
+
+************************************************************************/
/*************************************
diff --git a/src/mame/drivers/lemmings.cpp b/src/mame/drivers/lemmings.cpp
index 380542b4cf6..bb9ca81113c 100644
--- a/src/mame/drivers/lemmings.cpp
+++ b/src/mame/drivers/lemmings.cpp
@@ -68,7 +68,7 @@ WRITE16_MEMBER( lemmings_state::lem_protection_region_0_146_w )
/******************************************************************************/
-static ADDRESS_MAP_START( lemmings_map, AS_PROGRAM, 16, lemmings_state )
+ADDRESS_MAP_START(lemmings_state::lemmings_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram")
@@ -87,7 +87,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, lemmings_state )
+ADDRESS_MAP_START(lemmings_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/lethal.cpp b/src/mame/drivers/lethal.cpp
index 23853413c22..9a7b97e882a 100644
--- a/src/mame/drivers/lethal.cpp
+++ b/src/mame/drivers/lethal.cpp
@@ -340,7 +340,7 @@ READ8_MEMBER(lethal_state::gunsaux_r)
return res;
}
-static ADDRESS_MAP_START( le_main, AS_PROGRAM, 8, lethal_state )
+ADDRESS_MAP_START(lethal_state::le_main)
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1")
AM_RANGE(0x2000, 0x3fff) AM_RAM // work RAM
AM_RANGE(0x4000, 0x7fff) AM_DEVICE("bank4000", address_map_bank_device, amap8)
@@ -360,7 +360,7 @@ static ADDRESS_MAP_START( le_main, AS_PROGRAM, 8, lethal_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x38000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank4000_map, AS_PROGRAM, 8, lethal_state )
+ADDRESS_MAP_START(lethal_state::bank4000_map)
// VRD = 0 or 1, CBNK = 0
AM_RANGE(0x0840, 0x084f) AM_MIRROR(0x8000) AM_DEVREADWRITE("k053244", k05324x_device, k053244_r, k053244_w)
AM_RANGE(0x0880, 0x089f) AM_MIRROR(0x8000) AM_DEVREADWRITE("k054000", k054000_device, read, write)
@@ -380,7 +380,7 @@ static ADDRESS_MAP_START( bank4000_map, AS_PROGRAM, 8, lethal_state )
AM_RANGE(0x4000, 0x7fff) AM_MIRROR(0x8000) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( le_sound, AS_PROGRAM, 8, lethal_state )
+ADDRESS_MAP_START(lethal_state::le_sound)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xfa2f) AM_DEVREADWRITE("k054539", k054539_device, read, write)
diff --git a/src/mame/drivers/lethalj.cpp b/src/mame/drivers/lethalj.cpp
index 32cf64bd085..96e76bdaf7a 100644
--- a/src/mame/drivers/lethalj.cpp
+++ b/src/mame/drivers/lethalj.cpp
@@ -209,7 +209,7 @@ WRITE16_MEMBER(lethalj_state::cclownz_control_w)
*
*************************************/
-static ADDRESS_MAP_START( lethalj_map, AS_PROGRAM, 16, lethalj_state )
+ADDRESS_MAP_START(lethalj_state::lethalj_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM
AM_RANGE(0x04000000, 0x0400000f) AM_DEVREADWRITE8("oki1", okim6295_device, read, write, 0x00ff)
AM_RANGE(0x04000010, 0x0400001f) AM_DEVREADWRITE8("oki2", okim6295_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/lft.cpp b/src/mame/drivers/lft.cpp
index 66afb4962cb..a8592878a18 100644
--- a/src/mame/drivers/lft.cpp
+++ b/src/mame/drivers/lft.cpp
@@ -28,6 +28,8 @@ public:
DECLARE_READ16_MEMBER(status_r);
void lft(machine_config &config);
+ void lft_io(address_map &map);
+ void lft_mem(address_map &map);
private:
uint8_t m_term_data;
virtual void machine_reset() override;
@@ -35,13 +37,13 @@ private:
required_device<generic_terminal_device> m_terminal;
};
-static ADDRESS_MAP_START(lft_mem, AS_PROGRAM, 16, lft_state)
+ADDRESS_MAP_START(lft_state::lft_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x5ffff) AM_RAM
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(lft_io, AS_IO, 16, lft_state)
+ADDRESS_MAP_START(lft_state::lft_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// screen 1
diff --git a/src/mame/drivers/lg-dvd.cpp b/src/mame/drivers/lg-dvd.cpp
index 8e252aeba3f..12ad3ad8799 100644
--- a/src/mame/drivers/lg-dvd.cpp
+++ b/src/mame/drivers/lg-dvd.cpp
@@ -18,6 +18,7 @@ public:
{ }
void lg(machine_config &config);
+ void lg_dvd_map(address_map &map);
protected:
required_device<i80c52_device> m_maincpu;
};
@@ -25,7 +26,7 @@ protected:
static INPUT_PORTS_START( lg )
INPUT_PORTS_END
-static ADDRESS_MAP_START( lg_dvd_map, AS_PROGRAM, 8, lg_dvd_state )
+ADDRESS_MAP_START(lg_dvd_state::lg_dvd_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/lgp.cpp b/src/mame/drivers/lgp.cpp
index 975dd38e1bf..632164a3161 100644
--- a/src/mame/drivers/lgp.cpp
+++ b/src/mame/drivers/lgp.cpp
@@ -99,6 +99,10 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void lgp(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_program_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_program_map(address_map &map);
};
@@ -155,7 +159,7 @@ WRITE8_MEMBER(lgp_state::ldp_write)
/* PROGRAM MAPS */
-static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, lgp_state )
+ADDRESS_MAP_START(lgp_state::main_program_map)
AM_RANGE(0x0000,0x7fff) AM_ROM
AM_RANGE(0xe000,0xe3ff) AM_RAM AM_SHARE("tile_ram")
AM_RANGE(0xe400,0xe7ff) AM_RAM AM_SHARE("tile_ctrl_ram")
@@ -171,7 +175,7 @@ static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, lgp_state )
AM_RANGE(0xf000,0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8, lgp_state )
+ADDRESS_MAP_START(lgp_state::sound_program_map)
AM_RANGE(0x0000,0x3fff) AM_ROM
AM_RANGE(0x8000,0x83ff) AM_RAM
AM_RANGE(0x8400,0x8407) AM_RAM /* Needs handler! Communications? */
@@ -180,13 +184,13 @@ ADDRESS_MAP_END
/* IO MAPS */
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, lgp_state )
+ADDRESS_MAP_START(lgp_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0xfd,0xfd) AM_READ_PORT("IN_TEST")
// AM_RANGE(0xfe,0xfe) AM_READ_PORT("IN_TEST")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, lgp_state )
+ADDRESS_MAP_START(lgp_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/liberate.cpp b/src/mame/drivers/liberate.cpp
index 5410ba93f91..4855c7d2efb 100644
--- a/src/mame/drivers/liberate.cpp
+++ b/src/mame/drivers/liberate.cpp
@@ -240,7 +240,7 @@ WRITE8_MEMBER(liberate_state::prosport_charram_w)
*
*************************************/
-static ADDRESS_MAP_START( prosport_map, AS_PROGRAM, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::prosport_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x2000) AM_RAM
AM_RANGE(0x0200, 0x021f) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(prosport_bg_vram_w) AM_SHARE("bg_vram")
@@ -254,7 +254,7 @@ static ADDRESS_MAP_START( prosport_map, AS_PROGRAM, 8, liberate_state )
AM_RANGE(0x8000, 0x800f) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( liberate_map, AS_PROGRAM, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::liberate_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x3fff) AM_ROM /* Mirror of main rom */
AM_RANGE(0x4000, 0x7fff) AM_READ(deco16_bank_r)
@@ -267,11 +267,11 @@ static ADDRESS_MAP_START( liberate_map, AS_PROGRAM, 8, liberate_state )
AM_RANGE(0x8000, 0x800f) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::decrypted_opcodes_map)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prosoccr_map, AS_PROGRAM, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::prosoccr_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x3fff) AM_ROM /* Mirror of main rom */
AM_RANGE(0x4000, 0x7fff) AM_READ(prosoccr_bank_r)
@@ -284,17 +284,17 @@ static ADDRESS_MAP_START( prosoccr_map, AS_PROGRAM, 8, liberate_state )
AM_RANGE(0xa000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( deco16_io_map, AS_IO, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::deco16_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(deco16_bank_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("TILT")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prosoccr_io_map, AS_IO, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::prosoccr_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(prosoccr_io_bank_w)
//AM_RANGE(0x01, 0x01) AM_READ_PORT("TILT")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( liberatb_map, AS_PROGRAM, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::liberatb_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x00fe, 0x00fe) AM_READ_PORT("IN0")
AM_RANGE(0x1000, 0x3fff) AM_ROM /* Mirror of main rom */
@@ -318,7 +318,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( prosoccr_sound_map, AS_PROGRAM, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::prosoccr_sound_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8912_device, data_w)
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8912_device, address_w)
@@ -329,7 +329,7 @@ static ADDRESS_MAP_START( prosoccr_sound_map, AS_PROGRAM, 8, liberate_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( liberate_sound_map, AS_PROGRAM, 8, liberate_state )
+ADDRESS_MAP_START(liberate_state::liberate_sound_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_WRITENOP
AM_RANGE(0x3000, 0x3000) AM_DEVWRITE("ay1", ay8912_device, data_w)
@@ -774,7 +774,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(liberate_state::liberate, liberate_base)
MCFG_DEVICE_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(liberate_state::liberatb, liberate_base)
diff --git a/src/mame/drivers/liberatr.cpp b/src/mame/drivers/liberatr.cpp
index f79479c8a02..9ba2ebad5fe 100644
--- a/src/mame/drivers/liberatr.cpp
+++ b/src/mame/drivers/liberatr.cpp
@@ -283,7 +283,7 @@ WRITE8_MEMBER( liberatr_state::earom_control_w )
*
*************************************/
-static ADDRESS_MAP_START( liberatr_map, AS_PROGRAM, 8, liberatr_state )
+ADDRESS_MAP_START(liberatr_state::liberatr_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(bitmap_w) AM_SHARE("bitmapram") /* overlapping for my convenience */
AM_RANGE(0x0000, 0x0000) AM_RAM AM_SHARE("xcoord")
AM_RANGE(0x0001, 0x0001) AM_RAM AM_SHARE("ycoord")
@@ -313,7 +313,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( liberat2_map, AS_PROGRAM, 8, liberatr_state )
+ADDRESS_MAP_START(liberatr_state::liberat2_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(bitmap_w) AM_SHARE("bitmapram") /* overlapping for my convenience */
AM_RANGE(0x0000, 0x0000) AM_RAM AM_SHARE("xcoord")
AM_RANGE(0x0001, 0x0001) AM_RAM AM_SHARE("ycoord")
diff --git a/src/mame/drivers/limenko.cpp b/src/mame/drivers/limenko.cpp
index a0e65246f35..cf3d1fca247 100644
--- a/src/mame/drivers/limenko.cpp
+++ b/src/mame/drivers/limenko.cpp
@@ -116,6 +116,11 @@ public:
void copy_sprites(bitmap_ind16 &bitmap, bitmap_ind16 &sprites_bitmap, bitmap_ind8 &priority_bitmap, const rectangle &cliprect);
void limenko(machine_config &config);
void spotty(machine_config &config);
+ void limenko_io_map(address_map &map);
+ void limenko_map(address_map &map);
+ void spotty_io_map(address_map &map);
+ void spotty_map(address_map &map);
+ void spotty_sound_io_map(address_map &map);
};
/*****************************************************************************************************
@@ -224,7 +229,7 @@ WRITE8_MEMBER(limenko_state::qs1000_p3_w)
MEMORY MAPS
*****************************************************************************************************/
-static ADDRESS_MAP_START( limenko_map, AS_PROGRAM, 32, limenko_state )
+ADDRESS_MAP_START(limenko_state::limenko_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x40000000, 0x403fffff) AM_ROM AM_REGION("user2",0)
AM_RANGE(0x80000000, 0x80007fff) AM_RAM_WRITE(fg_videoram_w) AM_SHARE("fg_videoram")
@@ -239,7 +244,7 @@ static ADDRESS_MAP_START( limenko_map, AS_PROGRAM, 32, limenko_state )
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( limenko_io_map, AS_IO, 32, limenko_state )
+ADDRESS_MAP_START(limenko_state::limenko_io_map)
AM_RANGE(0x0000, 0x0003) AM_READ_PORT("IN0")
AM_RANGE(0x0800, 0x0803) AM_READ_PORT("IN1")
AM_RANGE(0x1000, 0x1003) AM_READ_PORT("IN2")
@@ -251,7 +256,7 @@ ADDRESS_MAP_END
/* Spotty memory map */
-static ADDRESS_MAP_START( spotty_map, AS_PROGRAM, 32, limenko_state )
+ADDRESS_MAP_START(limenko_state::spotty_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x40002000, 0x400024d3) AM_RAM //?
AM_RANGE(0x80000000, 0x80007fff) AM_RAM_WRITE(fg_videoram_w) AM_SHARE("fg_videoram")
@@ -266,7 +271,7 @@ static ADDRESS_MAP_START( spotty_map, AS_PROGRAM, 32, limenko_state )
AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spotty_io_map, AS_IO, 32, limenko_state )
+ADDRESS_MAP_START(limenko_state::spotty_io_map)
AM_RANGE(0x0000, 0x0003) AM_READ_PORT("IN0")
AM_RANGE(0x0800, 0x0803) AM_READ_PORT("IN1")
AM_RANGE(0x0800, 0x0803) AM_WRITENOP // hopper related
@@ -295,7 +300,7 @@ READ8_MEMBER(limenko_state::spotty_sound_r)
return m_oki->read(space,0);
}
-static ADDRESS_MAP_START( spotty_sound_io_map, AS_IO, 8, limenko_state )
+ADDRESS_MAP_START(limenko_state::spotty_sound_io_map)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READ(spotty_sound_r) AM_DEVWRITE("oki", okim6295_device, write) //? sound latch and ?
AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(spotty_sound_cmd_r, spotty_sound_cmd_w) //not sure about anything...
ADDRESS_MAP_END
diff --git a/src/mame/drivers/lisa.cpp b/src/mame/drivers/lisa.cpp
index a4e11c7d68c..e00810861ed 100644
--- a/src/mame/drivers/lisa.cpp
+++ b/src/mame/drivers/lisa.cpp
@@ -23,11 +23,11 @@
ADDRESS MAP
***************************************************************************/
-static ADDRESS_MAP_START(lisa_map, AS_PROGRAM, 16, lisa_state )
+ADDRESS_MAP_START(lisa_state::lisa_map)
AM_RANGE(0x000000, 0xffffff) AM_READWRITE(lisa_r, lisa_w) /* no fixed map, we use an MMU */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(lisa_fdc_map, AS_PROGRAM, 8, lisa_state )
+ADDRESS_MAP_START(lisa_state::lisa_fdc_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff) // only 8k of address space
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("fdc_ram") /* RAM (shared with 68000) */
AM_RANGE(0x0400, 0x07ff) AM_READWRITE(lisa_fdc_io_r, lisa_fdc_io_w) /* disk controller (IWM and TTL logic) */
@@ -35,7 +35,7 @@ static ADDRESS_MAP_START(lisa_fdc_map, AS_PROGRAM, 8, lisa_state )
AM_RANGE(0x1000, 0x1fff) AM_ROM AM_REGION("fdccpu", 0x1000) AM_SHARE("fdc_rom") /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(lisa210_fdc_map, AS_PROGRAM, 8, lisa_state )
+ADDRESS_MAP_START(lisa_state::lisa210_fdc_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff) // only 8k of address space
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("fdc_ram") /* RAM (shared with 68000) */
AM_RANGE(0x0400, 0x07ff) AM_NOP /* nothing, or RAM wrap-around ??? */
diff --git a/src/mame/drivers/littlerb.cpp b/src/mame/drivers/littlerb.cpp
index 6ccbcb49e03..a265d80c6a5 100644
--- a/src/mame/drivers/littlerb.cpp
+++ b/src/mame/drivers/littlerb.cpp
@@ -106,6 +106,7 @@ public:
DECLARE_DRIVER_INIT(littlerb);
void littlerb(machine_config &config);
+ void littlerb_main(address_map &map);
};
@@ -130,7 +131,7 @@ WRITE16_MEMBER(littlerb_state::littlerb_r_sound_w)
//popmessage("%04x %04x",m_sound_index_l,m_sound_index_r);
}
-static ADDRESS_MAP_START( littlerb_main, AS_PROGRAM, 16, littlerb_state )
+ADDRESS_MAP_START(littlerb_state::littlerb_main)
AM_RANGE(0x000008, 0x000017) AM_WRITENOP
AM_RANGE(0x000020, 0x00002f) AM_WRITENOP
AM_RANGE(0x000070, 0x000073) AM_WRITENOP
diff --git a/src/mame/drivers/lkage.cpp b/src/mame/drivers/lkage.cpp
index db6c38ccb8f..ed93dfd02f8 100644
--- a/src/mame/drivers/lkage.cpp
+++ b/src/mame/drivers/lkage.cpp
@@ -116,7 +116,7 @@ READ8_MEMBER(lkage_state::sound_status_r)
return 0xff;
}
-static ADDRESS_MAP_START( lkage_map, AS_PROGRAM, 8, lkage_state )
+ADDRESS_MAP_START(lkage_state::lkage_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM /* work ram */
AM_RANGE(0xe800, 0xefff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -138,13 +138,13 @@ static ADDRESS_MAP_START( lkage_map, AS_PROGRAM, 8, lkage_state )
AM_RANGE(0xf400, 0xffff) AM_RAM_WRITE(lkage_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lkage_map_mcu, AS_PROGRAM, 8, lkage_state )
+ADDRESS_MAP_START(lkage_state::lkage_map_mcu)
AM_IMPORT_FROM(lkage_map)
AM_RANGE(0xf062, 0xf062) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
AM_RANGE(0xf087, 0xf087) AM_READ(mcu_status_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lkage_map_boot, AS_PROGRAM, 8, lkage_state )
+ADDRESS_MAP_START(lkage_state::lkage_map_boot)
AM_IMPORT_FROM(lkage_map)
AM_RANGE(0xf062, 0xf062) AM_READWRITE(fake_mcu_r, fake_mcu_w)
AM_RANGE(0xf087, 0xf087) AM_READ(fake_status_r)
@@ -156,7 +156,7 @@ READ8_MEMBER(lkage_state::port_fetch_r)
return memregion("user1")->base()[offset];
}
-static ADDRESS_MAP_START( lkage_io_map, AS_IO, 8, lkage_state )
+ADDRESS_MAP_START(lkage_state::lkage_io_map)
AM_RANGE(0x4000, 0x7fff) AM_READ(port_fetch_r)
ADDRESS_MAP_END
@@ -165,7 +165,7 @@ ADDRESS_MAP_END
/* sound section is almost identical to Bubble Bobble, YM2203 instead of YM3526 */
-static ADDRESS_MAP_START( lkage_sound_map, AS_PROGRAM, 8, lkage_state )
+ADDRESS_MAP_START(lkage_state::lkage_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
diff --git a/src/mame/drivers/llc.cpp b/src/mame/drivers/llc.cpp
index 2a456c8feec..e414555ba38 100644
--- a/src/mame/drivers/llc.cpp
+++ b/src/mame/drivers/llc.cpp
@@ -58,14 +58,14 @@
/* Address maps */
-static ADDRESS_MAP_START( llc1_mem, AS_PROGRAM, 8, llc_state )
+ADDRESS_MAP_START(llc_state::llc1_mem)
AM_RANGE(0x0000, 0x07ff) AM_ROM // Monitor ROM
AM_RANGE(0x0800, 0x13ff) AM_ROM // BASIC ROM
AM_RANGE(0x1400, 0x1bff) AM_RAM // RAM
AM_RANGE(0x1c00, 0x1fff) AM_RAM AM_SHARE("videoram") // Video RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( llc1_io, AS_IO, 8, llc_state )
+ADDRESS_MAP_START(llc_state::llc1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xEC, 0xEF) AM_DEVREADWRITE("z80pio2", z80pio_device, read, write)
@@ -73,14 +73,14 @@ static ADDRESS_MAP_START( llc1_io, AS_IO, 8, llc_state )
AM_RANGE(0xF8, 0xFB) AM_DEVREADWRITE("z80ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( llc2_mem, AS_PROGRAM, 8, llc_state )
+ADDRESS_MAP_START(llc_state::llc2_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x5fff) AM_RAMBANK("bank2")
AM_RANGE(0x6000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( llc2_io, AS_IO, 8, llc_state )
+ADDRESS_MAP_START(llc_state::llc2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xE0, 0xE3) AM_WRITE(llc2_rom_disable_w)
diff --git a/src/mame/drivers/lockon.cpp b/src/mame/drivers/lockon.cpp
index e3206331a39..a701964d7c0 100644
--- a/src/mame/drivers/lockon.cpp
+++ b/src/mame/drivers/lockon.cpp
@@ -147,7 +147,7 @@ WRITE16_MEMBER(lockon_state::emres_w)
*
*************************************/
-static ADDRESS_MAP_START( main_v30, AS_PROGRAM, 16, lockon_state )
+ADDRESS_MAP_START(lockon_state::main_v30)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x03fff) AM_RAM
AM_RANGE(0x04000, 0x04003) AM_READWRITE(lockon_crtc_r, lockon_crtc_w)
@@ -169,7 +169,7 @@ static ADDRESS_MAP_START( main_v30, AS_PROGRAM, 16, lockon_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ground_v30, AS_PROGRAM, 16, lockon_state )
+ADDRESS_MAP_START(lockon_state::ground_v30)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x03fff) AM_RAM
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("scene_ram")
@@ -182,7 +182,7 @@ static ADDRESS_MAP_START( ground_v30, AS_PROGRAM, 16, lockon_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( object_v30, AS_PROGRAM, 16, lockon_state )
+ADDRESS_MAP_START(lockon_state::object_v30)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x03fff) AM_RAM
AM_RANGE(0x04000, 0x04001) AM_READWRITE(lockon_obj_4000_r, lockon_obj_4000_w)
@@ -192,7 +192,7 @@ static ADDRESS_MAP_START( object_v30, AS_PROGRAM, 16, lockon_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8, lockon_state )
+ADDRESS_MAP_START(lockon_state::sound_prg)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x7000) AM_WRITE(sound_vol)
@@ -200,7 +200,7 @@ static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8, lockon_state )
AM_RANGE(0x7800, 0x7fff) AM_MIRROR(0x8000) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, lockon_state )
+ADDRESS_MAP_START(lockon_state::sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x02, 0x02) AM_NOP
diff --git a/src/mame/drivers/lola8a.cpp b/src/mame/drivers/lola8a.cpp
index 51501405593..eeb0f31efb3 100644
--- a/src/mame/drivers/lola8a.cpp
+++ b/src/mame/drivers/lola8a.cpp
@@ -57,6 +57,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void lola8a(machine_config &config);
+ void lola8a_io(address_map &map);
+ void lola8a_mem(address_map &map);
private:
uint8_t m_portb;
virtual void machine_reset() override { m_maincpu->set_pc(0x8000); }
@@ -66,7 +68,7 @@ private:
required_shared_ptr<uint8_t> m_p_videoram;
};
-static ADDRESS_MAP_START(lola8a_mem, AS_PROGRAM, 8, lola8a_state)
+ADDRESS_MAP_START(lola8a_state::lola8a_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x1fff ) AM_RAM // 6264 at G45
AM_RANGE( 0x2000, 0x3fff ) AM_RAM // 6264 at F45
@@ -78,7 +80,7 @@ static ADDRESS_MAP_START(lola8a_mem, AS_PROGRAM, 8, lola8a_state)
AM_RANGE( 0xe000, 0xffff ) AM_RAM AM_SHARE("videoram") // 6264 at G67
ADDRESS_MAP_END
-static ADDRESS_MAP_START(lola8a_io, AS_IO, 8, lola8a_state)
+ADDRESS_MAP_START(lola8a_state::lola8a_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x80, 0x80) AM_DEVWRITE(AY8910_TAG, ay8910_device, address_w)
AM_RANGE(0x84, 0x84) AM_DEVREADWRITE(AY8910_TAG, ay8910_device, data_r, data_w)
diff --git a/src/mame/drivers/looping.cpp b/src/mame/drivers/looping.cpp
index 1cc218cd33c..e4a64c63d1e 100644
--- a/src/mame/drivers/looping.cpp
+++ b/src/mame/drivers/looping.cpp
@@ -168,6 +168,10 @@ public:
required_device<generic_latch_8_device> m_soundlatch;
required_device<watchdog_timer_device> m_watchdog;
void looping(machine_config &config);
+ void looping_io_map(address_map &map);
+ void looping_map(address_map &map);
+ void looping_sound_io_map(address_map &map);
+ void looping_sound_map(address_map &map);
};
@@ -539,7 +543,7 @@ READ8_MEMBER(looping_state::protection_r)
*
*************************************/
-static ADDRESS_MAP_START( looping_map, AS_PROGRAM, 8, looping_state )
+ADDRESS_MAP_START(looping_state::looping_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(looping_videoram_w) AM_SHARE("videoram")
@@ -557,13 +561,13 @@ static ADDRESS_MAP_START( looping_map, AS_PROGRAM, 8, looping_state )
AM_RANGE(0xf803, 0xf803) AM_MIRROR(0x03fc) AM_READWRITE(adc_r, adc_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( looping_io_map, AS_IO, 8, looping_state )
+ADDRESS_MAP_START(looping_state::looping_io_map)
AM_RANGE(0x400, 0x407) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( looping_sound_map, AS_PROGRAM, 8, looping_state )
+ADDRESS_MAP_START(looping_state::looping_sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0x3800, 0x3bff) AM_RAM
@@ -575,7 +579,7 @@ static ADDRESS_MAP_START( looping_sound_map, AS_PROGRAM, 8, looping_state )
AM_RANGE(0x3e02, 0x3e02) AM_MIRROR(0x00f4) AM_DEVREAD("tms", tms5220_device, status_r) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( looping_sound_io_map, AS_IO, 8, looping_state )
+ADDRESS_MAP_START(looping_state::looping_sound_io_map)
AM_RANGE(0x000, 0x007) AM_DEVWRITE("sen0", ls259_device, write_d0)
AM_RANGE(0x008, 0x00f) AM_DEVWRITE("sen1", ls259_device, write_d0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/lordgun.cpp b/src/mame/drivers/lordgun.cpp
index 41fc1a5b7e1..4f180aa628c 100644
--- a/src/mame/drivers/lordgun.cpp
+++ b/src/mame/drivers/lordgun.cpp
@@ -278,7 +278,7 @@ WRITE16_MEMBER(lordgun_state::lordgun_soundlatch_w)
m_soundcpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( lordgun_map, AS_PROGRAM, 16, lordgun_state )
+ADDRESS_MAP_START(lordgun_state::lordgun_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("priority_ram") // PRIORITY
@@ -310,7 +310,7 @@ static ADDRESS_MAP_START( lordgun_map, AS_PROGRAM, 16, lordgun_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aliencha_map, AS_PROGRAM, 16, lordgun_state )
+ADDRESS_MAP_START(lordgun_state::aliencha_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("priority_ram") // PRIORITY
@@ -337,7 +337,7 @@ static ADDRESS_MAP_START( aliencha_map, AS_PROGRAM, 16, lordgun_state )
AM_RANGE(0x50b900, 0x50b9ff) AM_READWRITE(aliencha_protection_r, aliencha_protection_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ymf278_map, 0, 8, lordgun_state)
+ADDRESS_MAP_START(lordgun_state::ymf278_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
ADDRESS_MAP_END
@@ -347,7 +347,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( lordgun_soundmem_map, AS_PROGRAM, 8, lordgun_state )
+ADDRESS_MAP_START(lordgun_state::lordgun_soundmem_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -359,7 +359,7 @@ WRITE8_MEMBER(lordgun_state::lordgun_okibank_w)
// popmessage("OKI %x", data);
}
-static ADDRESS_MAP_START( lordgun_soundio_map, AS_IO, 8, lordgun_state )
+ADDRESS_MAP_START(lordgun_state::lordgun_soundio_map)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ymsnd", ym3812_device, write)
AM_RANGE(0x2000, 0x2000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
@@ -369,7 +369,7 @@ static ADDRESS_MAP_START( lordgun_soundio_map, AS_IO, 8, lordgun_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aliencha_soundio_map, AS_IO, 8, lordgun_state )
+ADDRESS_MAP_START(lordgun_state::aliencha_soundio_map)
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
AM_RANGE(0x4000, 0x4000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x5000, 0x5000) AM_WRITENOP // writes 03 then 07 at end of NMI
diff --git a/src/mame/drivers/lsasquad.cpp b/src/mame/drivers/lsasquad.cpp
index 2b8814829ee..0d5de79829c 100644
--- a/src/mame/drivers/lsasquad.cpp
+++ b/src/mame/drivers/lsasquad.cpp
@@ -170,7 +170,7 @@ WRITE8_MEMBER(lsasquad_state::lsasquad_bankswitch_w)
/* other bits unknown */
}
-static ADDRESS_MAP_START( lsasquad_map, AS_PROGRAM, 8, lsasquad_state )
+ADDRESS_MAP_START(lsasquad_state::lsasquad_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM /* SRAM */
@@ -192,7 +192,7 @@ static ADDRESS_MAP_START( lsasquad_map, AS_PROGRAM, 8, lsasquad_state )
AM_RANGE(0xee00, 0xee00) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lsasquad_sound_map, AS_PROGRAM, 8, lsasquad_state )
+ADDRESS_MAP_START(lsasquad_state::lsasquad_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -207,7 +207,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( storming_map, AS_PROGRAM, 8, lsasquad_state )
+ADDRESS_MAP_START(lsasquad_state::storming_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM /* SRAM */
@@ -371,7 +371,7 @@ INPUT_PORTS_END
/* DAIKAIJU */
-static ADDRESS_MAP_START( daikaiju_map, AS_PROGRAM, 8, lsasquad_state )
+ADDRESS_MAP_START(lsasquad_state::daikaiju_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM /* SRAM */
@@ -390,7 +390,7 @@ static ADDRESS_MAP_START( daikaiju_map, AS_PROGRAM, 8, lsasquad_state )
AM_RANGE(0xee00, 0xee00) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( daikaiju_sound_map, AS_PROGRAM, 8, lsasquad_state )
+ADDRESS_MAP_START(lsasquad_state::daikaiju_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
diff --git a/src/mame/drivers/ltcasino.cpp b/src/mame/drivers/ltcasino.cpp
index 6daaa8adbd3..b63f0e530e7 100644
--- a/src/mame/drivers/ltcasino.cpp
+++ b/src/mame/drivers/ltcasino.cpp
@@ -44,6 +44,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void ltcasino(machine_config &config);
+ void ltcasino_map(address_map &map);
};
@@ -80,7 +81,7 @@ WRITE8_MEMBER(ltcasino_state::ltcasino_tile_atr_w)
}
-static ADDRESS_MAP_START( ltcasino_map, AS_PROGRAM, 8, ltcasino_state )
+ADDRESS_MAP_START(ltcasino_state::ltcasino_map)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xcfff) AM_ROM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(ltcasino_tile_num_w) AM_SHARE("tile_nuram")
diff --git a/src/mame/drivers/ltd.cpp b/src/mame/drivers/ltd.cpp
index ad13cecc124..7d2455f7f80 100644
--- a/src/mame/drivers/ltd.cpp
+++ b/src/mame/drivers/ltd.cpp
@@ -75,6 +75,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_r);
void ltd4(machine_config &config);
void ltd3(machine_config &config);
+ void ltd3_map(address_map &map);
+ void ltd4_io(address_map &map);
+ void ltd4_map(address_map &map);
private:
bool m_timer_r;
bool m_clear;
@@ -89,14 +92,14 @@ private:
};
-static ADDRESS_MAP_START( ltd3_map, AS_PROGRAM, 8, ltd_state )
+ADDRESS_MAP_START(ltd_state::ltd3_map)
AM_RANGE(0x0000, 0x007f) AM_RAM AM_SHARE("nvram") // internal to the cpu
AM_RANGE(0x0080, 0x0087) AM_MIRROR(0x78) AM_READ(io_r)
AM_RANGE(0x0800, 0x2fff) AM_WRITE(io_w)
AM_RANGE(0xc000, 0xcfff) AM_ROM AM_MIRROR(0x3000) AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ltd4_map, AS_PROGRAM, 8, ltd_state )
+ADDRESS_MAP_START(ltd_state::ltd4_map)
AM_RANGE(0x0000, 0x001f) AM_RAM // internal to the cpu
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("nvram")
@@ -111,7 +114,7 @@ static ADDRESS_MAP_START( ltd4_map, AS_PROGRAM, 8, ltd_state )
AM_RANGE(0xc000, 0xdfff) AM_ROM AM_MIRROR(0x2000) AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ltd4_io, AS_IO, 8, ltd_state )
+ADDRESS_MAP_START(ltd_state::ltd4_io)
AM_RANGE(0x0100, 0x0100) AM_READWRITE(port1_r,port1_w)
AM_RANGE(0x0101, 0x0101) AM_READWRITE(port2_r,port2_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/luckgrln.cpp b/src/mame/drivers/luckgrln.cpp
index e9bd391277a..24ac7727d52 100644
--- a/src/mame/drivers/luckgrln.cpp
+++ b/src/mame/drivers/luckgrln.cpp
@@ -165,6 +165,11 @@ public:
required_device<palette_device> m_palette;
void _7smash(machine_config &config);
void luckgrln(machine_config &config);
+ void _7smash_io(address_map &map);
+ void _7smash_map(address_map &map);
+ void common_portmap(address_map &map);
+ void luckgrln_io(address_map &map);
+ void mainmap(address_map &map);
};
@@ -394,7 +399,7 @@ uint32_t luckgrln_state::screen_update_luckgrln(screen_device &screen, bitmap_in
return 0;
}
-static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8, luckgrln_state )
+ADDRESS_MAP_START(luckgrln_state::mainmap)
AM_RANGE(0x00000, 0x03fff) AM_ROM
AM_RANGE(0x10000, 0x1ffff) AM_ROM AM_REGION("rom_data",0x10000)
AM_RANGE(0x20000, 0x2ffff) AM_ROM AM_REGION("rom_data",0x00000)
@@ -429,7 +434,7 @@ static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8, luckgrln_state )
AM_RANGE(0xf0000, 0xfffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( _7smash_map, AS_PROGRAM, 8, luckgrln_state )
+ADDRESS_MAP_START(luckgrln_state::_7smash_map)
AM_IMPORT_FROM( mainmap )
AM_RANGE(0x00000, 0x0bfff) AM_ROM
AM_RANGE(0x10000, 0x2ffff) AM_UNMAP
@@ -548,7 +553,7 @@ WRITE8_MEMBER(luckgrln_state::counters_w)
/* are some of these reads / writes mirrored? there seem to be far too many */
-static ADDRESS_MAP_START( common_portmap, AS_IO, 8, luckgrln_state )
+ADDRESS_MAP_START(luckgrln_state::common_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x003f) AM_RAM // Z180 internal regs
AM_RANGE(0x0060, 0x0060) AM_WRITE(output_w)
@@ -600,7 +605,7 @@ static ADDRESS_MAP_START( common_portmap, AS_IO, 8, luckgrln_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( luckgrln_io, AS_IO, 8, luckgrln_state )
+ADDRESS_MAP_START(luckgrln_state::luckgrln_io)
AM_IMPORT_FROM( common_portmap )
AM_RANGE(0x0090, 0x009f) AM_DEVREADWRITE("rtc", msm6242_device, read, write)
ADDRESS_MAP_END
@@ -611,7 +616,7 @@ READ8_MEMBER(luckgrln_state::test_r)
return 0xff;
}
-static ADDRESS_MAP_START( _7smash_io, AS_IO, 8, luckgrln_state )
+ADDRESS_MAP_START(luckgrln_state::_7smash_io)
AM_IMPORT_FROM( common_portmap )
AM_RANGE(0x66, 0x66) AM_READ(test_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/lucky74.cpp b/src/mame/drivers/lucky74.cpp
index 026e0cc04a2..020aace5b80 100644
--- a/src/mame/drivers/lucky74.cpp
+++ b/src/mame/drivers/lucky74.cpp
@@ -926,7 +926,7 @@ INTERRUPT_GEN_MEMBER(lucky74_state::nmi_interrupt)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( lucky74_map, AS_PROGRAM, 8, lucky74_state )
+ADDRESS_MAP_START(lucky74_state::lucky74_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("nvram") /* NVRAM */
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(lucky74_fg_videoram_w) AM_SHARE("fg_videoram") /* VRAM1-1 */
@@ -946,7 +946,7 @@ static ADDRESS_MAP_START( lucky74_map, AS_PROGRAM, 8, lucky74_state )
AM_RANGE(0xf800, 0xf803) AM_READWRITE(copro_sm7831_r, copro_sm7831_w) /* SM7831 Co-Processor */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lucky74_portmap, AS_IO, 8, lucky74_state )
+ADDRESS_MAP_START(lucky74_state::lucky74_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x05) AM_READWRITE(custom_09R81P_port_r, custom_09R81P_port_w) /* custom 09R81P (samples system) */
AM_RANGE(0xff, 0xff) AM_RAM // presumably HS satellite control port (check patched in Lucky 74)
diff --git a/src/mame/drivers/luckybal.cpp b/src/mame/drivers/luckybal.cpp
index afbe48888c0..1f26a2d0ba0 100644
--- a/src/mame/drivers/luckybal.cpp
+++ b/src/mame/drivers/luckybal.cpp
@@ -313,6 +313,8 @@ public:
required_device_array<cd4099_device, 3> m_latch;
void luckybal(machine_config &config);
+ void main_io(address_map &map);
+ void main_map(address_map &map);
};
@@ -320,12 +322,12 @@ public:
* Memory Map *
**************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, luckybal_state )
+ADDRESS_MAP_START(luckybal_state::main_map)
AM_RANGE(0x0000, 0x57ff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM // 6264 SRAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io, AS_IO, 8, luckybal_state )
+ADDRESS_MAP_START(luckybal_state::main_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x90, 0x90) AM_WRITE(port90_bitswap_w)
AM_RANGE(0xc0, 0xc3) AM_READWRITE(ppi_bitswap_r, ppi_bitswap_w)
diff --git a/src/mame/drivers/lvcards.cpp b/src/mame/drivers/lvcards.cpp
index bbf8176af26..cb296311832 100644
--- a/src/mame/drivers/lvcards.cpp
+++ b/src/mame/drivers/lvcards.cpp
@@ -148,7 +148,7 @@ READ8_MEMBER(lvcards_state::payout_r)
return m_result;
}
-static ADDRESS_MAP_START( ponttehk_map, AS_PROGRAM, 8, lvcards_state )
+ADDRESS_MAP_START(lvcards_state::ponttehk_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(lvcards_videoram_w) AM_SHARE("videoram")
@@ -158,7 +158,7 @@ static ADDRESS_MAP_START( ponttehk_map, AS_PROGRAM, 8, lvcards_state )
AM_RANGE(0xa002, 0xa002) AM_READ(payout_r) AM_WRITE(control_port_2a_w)//AM_WRITENOP // ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lvcards_map, AS_PROGRAM, 8, lvcards_state )
+ADDRESS_MAP_START(lvcards_state::lvcards_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(lvcards_videoram_w) AM_SHARE("videoram")
@@ -169,13 +169,13 @@ static ADDRESS_MAP_START( lvcards_map, AS_PROGRAM, 8, lvcards_state )
AM_RANGE(0xc000, 0xdfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lvcards_io_map, AS_IO, 8, lvcards_state )
+ADDRESS_MAP_START(lvcards_state::lvcards_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lvpoker_map, AS_PROGRAM, 8, lvcards_state )
+ADDRESS_MAP_START(lvcards_state::lvpoker_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(lvcards_videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/lviv.cpp b/src/mame/drivers/lviv.cpp
index c47e50ebaf2..84db4393cf1 100644
--- a/src/mame/drivers/lviv.cpp
+++ b/src/mame/drivers/lviv.cpp
@@ -297,13 +297,13 @@ Timings:
/* I/O ports */
-static ADDRESS_MAP_START(io_map, AS_IO, 8, lviv_state )
+ADDRESS_MAP_START(lviv_state::io_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(lviv_io_r,lviv_io_w)
ADDRESS_MAP_END
/* memory w/r functions */
-static ADDRESS_MAP_START(lviv_mem , AS_PROGRAM, 8, lviv_state )
+ADDRESS_MAP_START(lviv_state::lviv_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
diff --git a/src/mame/drivers/lwings.cpp b/src/mame/drivers/lwings.cpp
index e0aa00952ab..d8e606fbe2d 100644
--- a/src/mame/drivers/lwings.cpp
+++ b/src/mame/drivers/lwings.cpp
@@ -285,7 +285,7 @@ WRITE8_MEMBER(lwings_state::msm5205_w)
m_msm->vclk_w(0);
}
-static ADDRESS_MAP_START( avengers_map, AS_PROGRAM, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::avengers_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xddff) AM_RAM
@@ -309,7 +309,7 @@ static ADDRESS_MAP_START( avengers_map, AS_PROGRAM, 8, lwings_state )
AM_RANGE(0xf80e, 0xf80e) AM_WRITE(lwings_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lwings_map, AS_PROGRAM, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::lwings_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xddff) AM_RAM
@@ -330,7 +330,7 @@ static ADDRESS_MAP_START( lwings_map, AS_PROGRAM, 8, lwings_state )
AM_RANGE(0xf80e, 0xf80e) AM_WRITE(lwings_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trojan_map, AS_PROGRAM, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::trojan_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xddff) AM_RAM
@@ -354,7 +354,7 @@ static ADDRESS_MAP_START( trojan_map, AS_PROGRAM, 8, lwings_state )
AM_RANGE(0xf80e, 0xf80e) AM_WRITE(lwings_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lwings_sound_map, AS_PROGRAM, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::lwings_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -366,7 +366,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( fball_map, AS_PROGRAM, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::fball_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xddff) AM_RAM
@@ -398,13 +398,13 @@ WRITE8_MEMBER(lwings_state::fball_oki_bank_w)
membank("samplebank")->set_entry((data >> 1) & 0x7);
}
-static ADDRESS_MAP_START( fball_oki_map, 0, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::fball_oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("samplebank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fball_sound_map, AS_PROGRAM, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::fball_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -417,17 +417,17 @@ static ADDRESS_MAP_START( fball_sound_map, AS_PROGRAM, 8, lwings_state )
ADDRESS_MAP_END
/* Yes, _no_ ram */
-static ADDRESS_MAP_START( trojan_adpcm_map, AS_PROGRAM, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::trojan_adpcm_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( avengers_adpcm_io_map, AS_IO, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::avengers_adpcm_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(avengers_adpcm_r)
AM_RANGE(0x01, 0x01) AM_WRITE(msm5205_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trojan_adpcm_io_map, AS_IO, 8, lwings_state )
+ADDRESS_MAP_START(lwings_state::trojan_adpcm_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
AM_RANGE(0x01, 0x01) AM_WRITE(msm5205_w)
diff --git a/src/mame/drivers/lwriter.cpp b/src/mame/drivers/lwriter.cpp
index 011c080831c..7a09dd85d27 100644
--- a/src/mame/drivers/lwriter.cpp
+++ b/src/mame/drivers/lwriter.cpp
@@ -128,6 +128,7 @@ public:
virtual void machine_start () override;
virtual void machine_reset () override;
void lwriter(machine_config &config);
+ void maincpu_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<scc8530_device> m_scc;
@@ -200,7 +201,7 @@ The ADB bit-bang transceiver MCU connects to the VIA CB1 (adbclk) and CB2 (adbda
as well as PA0 (ST1), PA2 (ST2) and PA3 (ADB /INT)
*/
-static ADDRESS_MAP_START (maincpu_map, AS_PROGRAM, 16, lwriter_state)
+ADDRESS_MAP_START(lwriter_state::maincpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_READWRITE(bankedarea_r, bankedarea_w)
AM_RANGE(0x200000, 0x2fffff) AM_ROM AM_REGION("rom", 0) // 1MB ROM
diff --git a/src/mame/drivers/lynx.cpp b/src/mame/drivers/lynx.cpp
index f80cfdd0ac4..8dc06f6394e 100644
--- a/src/mame/drivers/lynx.cpp
+++ b/src/mame/drivers/lynx.cpp
@@ -19,7 +19,7 @@
#include "lynx.lh"
-static ADDRESS_MAP_START( lynx_mem , AS_PROGRAM, 8, lynx_state )
+ADDRESS_MAP_START(lynx_state::lynx_mem)
AM_RANGE(0x0000, 0xfbff) AM_RAM AM_SHARE("mem_0000")
AM_RANGE(0xfc00, 0xfcff) AM_RAM AM_SHARE("mem_fc00")
AM_RANGE(0xfd00, 0xfdff) AM_RAM AM_SHARE("mem_fd00")
diff --git a/src/mame/drivers/m10.cpp b/src/mame/drivers/m10.cpp
index 9ceb7b721f3..ffbc92cfb07 100644
--- a/src/mame/drivers/m10.cpp
+++ b/src/mame/drivers/m10.cpp
@@ -525,7 +525,7 @@ INTERRUPT_GEN_MEMBER(m10_state::m15_interrupt)
*
*************************************/
-static ADDRESS_MAP_START( m10_main, AS_PROGRAM, 8, m10_state )
+ADDRESS_MAP_START(m10_state::m10_main)
AM_RANGE(0x0000, 0x02ff) AM_RAM AM_SHARE("memory") /* scratch ram */
AM_RANGE(0x1000, 0x2fff) AM_ROM AM_SHARE("rom")
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("videoram")
@@ -539,7 +539,7 @@ static ADDRESS_MAP_START( m10_main, AS_PROGRAM, 8, m10_state )
AM_RANGE(0xfc00, 0xffff) AM_ROM /* for the reset / interrupt vectors */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m11_main, AS_PROGRAM, 8, m10_state )
+ADDRESS_MAP_START(m10_state::m11_main)
AM_RANGE(0x0000, 0x02ff) AM_RAM AM_SHARE("memory") /* scratch ram */
AM_RANGE(0x1000, 0x2fff) AM_ROM AM_SHARE("rom")
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("videoram")
@@ -553,7 +553,7 @@ static ADDRESS_MAP_START( m11_main, AS_PROGRAM, 8, m10_state )
AM_RANGE(0xfc00, 0xffff) AM_ROM /* for the reset / interrupt vectors */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m15_main, AS_PROGRAM, 8, m10_state )
+ADDRESS_MAP_START(m10_state::m15_main)
AM_RANGE(0x0000, 0x02ff) AM_RAM AM_SHARE("memory") /* scratch ram */
AM_RANGE(0x1000, 0x33ff) AM_ROM AM_SHARE("rom")
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/m107.cpp b/src/mame/drivers/m107.cpp
index 93b77f3f8a6..627732bf462 100644
--- a/src/mame/drivers/m107.cpp
+++ b/src/mame/drivers/m107.cpp
@@ -96,7 +96,7 @@ WRITE16_MEMBER(m107_state::sound_reset_w)
/*****************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, m107_state )
+ADDRESS_MAP_START(m107_state::main_map)
AM_RANGE(0x00000, 0x9ffff) AM_ROM
AM_RANGE(0xa0000, 0xbffff) AM_ROMBANK("bank1")
AM_RANGE(0xd0000, 0xdffff) AM_RAM_WRITE(vram_w) AM_SHARE("vram_data")
@@ -106,7 +106,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, m107_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM AM_REGION("maincpu", 0x7fff0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 16, m107_state )
+ADDRESS_MAP_START(m107_state::main_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x02, 0x03) AM_READ_PORT("COINS_DSW3")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -123,7 +123,7 @@ static ADDRESS_MAP_START( main_portmap, AS_IO, 16, m107_state )
AM_RANGE(0xc0, 0xc1) AM_WRITE(sound_reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsoccr94_io_map, AS_IO, 16, m107_state )
+ADDRESS_MAP_START(m107_state::dsoccr94_io_map)
AM_IMPORT_FROM(main_portmap)
AM_RANGE(0x06, 0x07) AM_WRITE8(bankswitch_w, 0x00ff)
ADDRESS_MAP_END
@@ -139,14 +139,14 @@ WRITE16_MEMBER(m107_state::wpksoc_output_w)
popmessage("%04x",data);
}
-static ADDRESS_MAP_START( wpksoc_map, AS_PROGRAM, 16, m107_state )
+ADDRESS_MAP_START(m107_state::wpksoc_map)
AM_IMPORT_FROM(main_map)
AM_RANGE(0xf0000, 0xf0001) AM_READ_PORT("WPK_DSW0")
AM_RANGE(0xf0002, 0xf0003) AM_READ_PORT("WPK_DSW1")
AM_RANGE(0xf0004, 0xf0005) AM_READ_PORT("WPK_DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wpksoc_io_map, AS_IO, 16, m107_state )
+ADDRESS_MAP_START(m107_state::wpksoc_io_map)
AM_IMPORT_FROM(main_portmap)
AM_RANGE(0x22, 0x23) AM_WRITE(wpksoc_output_w)
AM_RANGE(0xc0, 0xc1) AM_READ_PORT("WPK_IN0")
@@ -155,7 +155,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, m107_state )
+ADDRESS_MAP_START(m107_state::sound_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0xa0000, 0xa3fff) AM_RAM
AM_RANGE(0xa8000, 0xa803f) AM_DEVREADWRITE8("irem", iremga20_device, irem_ga20_r, irem_ga20_w, 0x00ff)
diff --git a/src/mame/drivers/m14.cpp b/src/mame/drivers/m14.cpp
index d5e545905b4..e034cfe83e5 100644
--- a/src/mame/drivers/m14.cpp
+++ b/src/mame/drivers/m14.cpp
@@ -100,6 +100,8 @@ public:
INTERRUPT_GEN_MEMBER(m14_irq);
void m14(machine_config &config);
+ void m14_io_map(address_map &map);
+ void m14_map(address_map &map);
private:
/* video-related */
tilemap_t *m_m14_tilemap;
@@ -298,14 +300,14 @@ WRITE8_MEMBER(m14_state::sound_w)
*
*************************************/
-static ADDRESS_MAP_START( m14_map, AS_PROGRAM, 8, m14_state )
+ADDRESS_MAP_START(m14_state::m14_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0xe000, 0xe3ff) AM_RAM_WRITE(m14_vram_w) AM_SHARE("video_ram")
AM_RANGE(0xe400, 0xe7ff) AM_RAM_WRITE(m14_cram_w) AM_SHARE("color_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m14_io_map, AS_IO, 8, m14_state )
+ADDRESS_MAP_START(m14_state::m14_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf8, 0xf8) AM_READ_PORT("AN_PADDLE") AM_WRITE(ball_x_w)
AM_RANGE(0xf9, 0xf9) AM_READ_PORT("IN0") AM_WRITE(ball_y_w)
diff --git a/src/mame/drivers/m20.cpp b/src/mame/drivers/m20.cpp
index 88ebaed092c..695d29e1493 100644
--- a/src/mame/drivers/m20.cpp
+++ b/src/mame/drivers/m20.cpp
@@ -106,6 +106,9 @@ public:
MC6845_UPDATE_ROW(update_row);
void m20(machine_config &config);
+ void m20_data_mem(address_map &map);
+ void m20_io(address_map &map);
+ void m20_program_mem(address_map &map);
private:
offs_t m_memsize;
uint8_t m_port21;
@@ -316,13 +319,13 @@ B/W, 128K cards, 3 cards => 512K of memory:
*/
-static ADDRESS_MAP_START(m20_program_mem, AS_PROGRAM, 16, m20_state)
+ADDRESS_MAP_START(m20_state::m20_program_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x30000, 0x33fff ) AM_RAM AM_SHARE("videoram")
AM_RANGE( 0x40000, 0x41fff ) AM_ROM AM_REGION("maincpu", 0x00000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(m20_data_mem, AS_DATA, 16, m20_state)
+ADDRESS_MAP_START(m20_state::m20_data_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x30000, 0x33fff ) AM_RAM AM_SHARE("videoram")
AM_RANGE( 0x40000, 0x41fff ) AM_ROM AM_REGION("maincpu", 0x00000)
@@ -696,7 +699,7 @@ void m20_state::install_memory()
}
}
-static ADDRESS_MAP_START(m20_io, AS_IO, 16, m20_state)
+ADDRESS_MAP_START(m20_state::m20_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x07) AM_DEVREADWRITE8("fd1797", fd1797_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/m24.cpp b/src/mame/drivers/m24.cpp
index 4fd958cd694..dd573ff22b9 100644
--- a/src/mame/drivers/m24.cpp
+++ b/src/mame/drivers/m24.cpp
@@ -57,6 +57,9 @@ public:
bool m_kbcibf, m_kbdata, m_i86_halt, m_i86_halt_perm;
static void cfg_m20_format(device_t *device);
void olivetti(machine_config &config);
+ void kbc_map(address_map &map);
+ void m24_io(address_map &map);
+ void m24_map(address_map &map);
};
void m24_state::machine_reset()
@@ -172,12 +175,12 @@ WRITE_LINE_MEMBER(m24_state::halt_i86_w)
m_i86_halt = state ? true : false;
}
-static ADDRESS_MAP_START( m24_map, AS_PROGRAM, 16, m24_state )
+ADDRESS_MAP_START(m24_state::m24_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(m24_io, AS_IO, 16, m24_state )
+ADDRESS_MAP_START(m24_state::m24_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", pc_noppi_mb_device, map, 0xffff)
AM_RANGE(0x0060, 0x0065) AM_READWRITE8(keyboard_r, keyboard_w, 0xffff)
@@ -186,7 +189,7 @@ static ADDRESS_MAP_START(m24_io, AS_IO, 16, m24_state )
AM_RANGE(0x80c0, 0x80c1) AM_DEVREADWRITE8("z8000_apb", m24_z8000_device, handshake_r, handshake_w, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(kbc_map, AS_PROGRAM, 8, m24_state)
+ADDRESS_MAP_START(m24_state::kbc_map)
AM_RANGE(0x8000, 0x8fff) AM_READ(kbcdata_r)
AM_RANGE(0xa000, 0xafff) AM_WRITE(kbcdata_w)
AM_RANGE(0xf800, 0xffff) AM_ROM AM_REGION("kbc", 0)
diff --git a/src/mame/drivers/m3.cpp b/src/mame/drivers/m3.cpp
index 2a11e706fe1..d95f02b0350 100644
--- a/src/mame/drivers/m3.cpp
+++ b/src/mame/drivers/m3.cpp
@@ -30,6 +30,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void m3(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -38,13 +40,13 @@ private:
required_device<palette_device> m_palette;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, m3_state )
+ADDRESS_MAP_START(m3_state::mem_map)
AM_RANGE(0x0000, 0xe7ff) AM_RAM
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, m3_state )
+ADDRESS_MAP_START(m3_state::io_map)
ADDRESS_MAP_GLOBAL_MASK (0xff)
AM_RANGE(0x84, 0x84) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
AM_RANGE(0x85, 0x85) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
diff --git a/src/mame/drivers/m5.cpp b/src/mame/drivers/m5.cpp
index 5db3ba7d6f6..52bcfb7b66e 100644
--- a/src/mame/drivers/m5.cpp
+++ b/src/mame/drivers/m5.cpp
@@ -697,7 +697,7 @@ WRITE8_MEMBER( m5_state::mem64KRX_w ) //out 0x7f
// ADDRESS_MAP( m5_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( m5_mem, AS_PROGRAM, 8, m5_state )
+ADDRESS_MAP_START(m5_state::m5_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_READ_BANK("bank1r") AM_WRITE_BANK("bank1w") //monitor rom(bios)
AM_RANGE(0x2000, 0x3fff) AM_READ_BANK("bank2r") AM_WRITE_BANK("bank2w")
@@ -713,7 +713,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( m5_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( m5_io, AS_IO, 8, m5_state )
+ADDRESS_MAP_START(m5_state::m5_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x0c) AM_DEVREADWRITE(Z80CTC_TAG, z80ctc_device, read, write)
@@ -741,7 +741,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( fd5_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( fd5_mem, AS_PROGRAM, 8, m5_state )
+ADDRESS_MAP_START(m5_state::fd5_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -751,7 +751,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( fd5_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( fd5_io, AS_IO, 8, m5_state )
+ADDRESS_MAP_START(m5_state::fd5_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVICE(UPD765_TAG, upd765a_device, map)
AM_RANGE(0x10, 0x10) AM_READWRITE(fd5_data_r, fd5_data_w)
@@ -1006,7 +1006,7 @@ static const z80_daisy_config m5_daisy_chain[] =
//-------------------------------------------------
-static ADDRESS_MAP_START( m5_mem_brno, AS_PROGRAM, 8, brno_state )
+ADDRESS_MAP_START(brno_state::m5_mem_brno)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_READWRITE_BANK("bank1")
AM_RANGE(0x1000, 0x1fff) AM_READWRITE_BANK("bank2")
@@ -1029,7 +1029,7 @@ ADDRESS_MAP_END
//-------------------------------------------------
// ADDRESS_MAP( brno_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( brno_io, AS_IO, 8, brno_state )
+ADDRESS_MAP_START(brno_state::brno_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x0c) AM_DEVREADWRITE(Z80CTC_TAG, z80ctc_device, read, write)
diff --git a/src/mame/drivers/m52.cpp b/src/mame/drivers/m52.cpp
index 29cf84c4167..1e30de508fc 100644
--- a/src/mame/drivers/m52.cpp
+++ b/src/mame/drivers/m52.cpp
@@ -60,7 +60,7 @@
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, m52_state )
+ADDRESS_MAP_START(m52_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(m52_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(m52_colorram_w) AM_SHARE("colorram")
@@ -77,7 +77,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, m52_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alpha1v_map, AS_PROGRAM, 8, m52_state )
+ADDRESS_MAP_START(m52_state::alpha1v_map)
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(m52_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(m52_colorram_w) AM_SHARE("colorram")
@@ -92,7 +92,7 @@ static ADDRESS_MAP_START( alpha1v_map, AS_PROGRAM, 8, m52_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, m52_state )
+ADDRESS_MAP_START(m52_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x1f) AM_WRITE(m52_scroll_w)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x1f) AM_WRITE(m52_bg1xpos_w)
diff --git a/src/mame/drivers/m57.cpp b/src/mame/drivers/m57.cpp
index b0b1a66a4ec..bd3dd9eb230 100644
--- a/src/mame/drivers/m57.cpp
+++ b/src/mame/drivers/m57.cpp
@@ -69,7 +69,7 @@
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, m57_state )
+ADDRESS_MAP_START(m57_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(m57_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9000, 0x91ff) AM_RAM AM_SHARE("scrollram")
diff --git a/src/mame/drivers/m58.cpp b/src/mame/drivers/m58.cpp
index d49894b4e5e..9ea823bee8c 100644
--- a/src/mame/drivers/m58.cpp
+++ b/src/mame/drivers/m58.cpp
@@ -27,7 +27,7 @@
*
*************************************/
-static ADDRESS_MAP_START( yard_map, AS_PROGRAM, 8, m58_state )
+ADDRESS_MAP_START(m58_state::yard_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9000, 0x9fff) AM_WRITE(scroll_panel_w)
diff --git a/src/mame/drivers/m62.cpp b/src/mame/drivers/m62.cpp
index 770e791a53f..3927f8dba70 100644
--- a/src/mame/drivers/m62.cpp
+++ b/src/mame/drivers/m62.cpp
@@ -173,7 +173,7 @@ WRITE8_MEMBER(m62_state::youjyudn_bankswitch_w)
}
-static ADDRESS_MAP_START( kungfum_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::kungfum_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(m62_hscroll_low_w)
AM_RANGE(0xb000, 0xb000) AM_WRITE(m62_hscroll_high_w)
@@ -184,7 +184,7 @@ static ADDRESS_MAP_START( kungfum_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kungfum_io_map, AS_IO, 8, m62_state )
+ADDRESS_MAP_START(m62_state::kungfum_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */
@@ -193,7 +193,7 @@ static ADDRESS_MAP_START( kungfum_io_map, AS_IO, 8, m62_state )
AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( battroad_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::battroad_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_SHARE("spriteram")
@@ -202,7 +202,7 @@ static ADDRESS_MAP_START( battroad_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( battroad_io_map, AS_IO, 8, m62_state )
+ADDRESS_MAP_START(m62_state::battroad_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */
@@ -215,14 +215,14 @@ static ADDRESS_MAP_START( battroad_io_map, AS_IO, 8, m62_state )
AM_RANGE(0x83, 0x83) AM_WRITE(battroad_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldrun_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::ldrun_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_SHARE("spriteram")
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(m62_tileram_w) AM_SHARE("m62_tileram")
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldrun2_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::ldrun2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_SHARE("spriteram")
@@ -230,7 +230,7 @@ static ADDRESS_MAP_START( ldrun2_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldrun2_io_map, AS_IO, 8, m62_state )
+ADDRESS_MAP_START(m62_state::ldrun2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */
@@ -241,7 +241,7 @@ static ADDRESS_MAP_START( ldrun2_io_map, AS_IO, 8, m62_state )
AM_RANGE(0x80, 0x81) AM_WRITE(ldrun2_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldrun3_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::ldrun3_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc800, 0xc800) AM_READ(ldrun3_prot_5_r)
AM_RANGE(0xcc00, 0xcc00) AM_READ(ldrun3_prot_7_r)
@@ -251,7 +251,7 @@ static ADDRESS_MAP_START( ldrun3_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(m62_tileram_w) AM_SHARE("m62_tileram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldrun3_io_map, AS_IO, 8, m62_state )
+ADDRESS_MAP_START(m62_state::ldrun3_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */
@@ -262,7 +262,7 @@ static ADDRESS_MAP_START( ldrun3_io_map, AS_IO, 8, m62_state )
AM_RANGE(0x81, 0x81) AM_WRITE(ldrun3_topbottom_mask_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldrun4_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::ldrun4_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_SHARE("spriteram")
@@ -271,7 +271,7 @@ static ADDRESS_MAP_START( ldrun4_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ldrun4_io_map, AS_IO, 8, m62_state )
+ADDRESS_MAP_START(m62_state::ldrun4_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */
@@ -282,7 +282,7 @@ static ADDRESS_MAP_START( ldrun4_io_map, AS_IO, 8, m62_state )
AM_RANGE(0x83, 0x83) AM_WRITE(m62_hscroll_low_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lotlot_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::lotlot_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(m62_textram_w) AM_SHARE("m62_textram")
AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_SHARE("spriteram")
@@ -290,7 +290,7 @@ static ADDRESS_MAP_START( lotlot_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kidniki_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::kidniki_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(m62_tileram_w) AM_SHARE("m62_tileram")
@@ -299,7 +299,7 @@ static ADDRESS_MAP_START( kidniki_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kidniki_io_map, AS_IO, 8, m62_state )
+ADDRESS_MAP_START(m62_state::kidniki_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */
@@ -314,7 +314,7 @@ static ADDRESS_MAP_START( kidniki_io_map, AS_IO, 8, m62_state )
AM_RANGE(0x85, 0x85) AM_WRITE(kidniki_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spelunkr_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::spelunkr_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM_WRITE(m62_tileram_w) AM_SHARE("m62_tileram")
@@ -329,7 +329,7 @@ static ADDRESS_MAP_START( spelunkr_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spelunk2_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::spelunk2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_ROMBANK("bank1")
AM_RANGE(0x9000, 0x9fff) AM_ROMBANK("bank2")
@@ -343,7 +343,7 @@ static ADDRESS_MAP_START( spelunk2_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( youjyudn_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::youjyudn_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_SHARE("spriteram")
@@ -352,7 +352,7 @@ static ADDRESS_MAP_START( youjyudn_map, AS_PROGRAM, 8, m62_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( youjyudn_io_map, AS_IO, 8, m62_state )
+ADDRESS_MAP_START(m62_state::youjyudn_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */
@@ -364,7 +364,7 @@ static ADDRESS_MAP_START( youjyudn_io_map, AS_IO, 8, m62_state )
AM_RANGE(0x83, 0x83) AM_WRITE(youjyudn_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( horizon_map, AS_PROGRAM, 8, m62_state )
+ADDRESS_MAP_START(m62_state::horizon_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc1ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc800, 0xc83f) AM_RAM_WRITE(horizon_scrollram_w) AM_SHARE("scrollram")
diff --git a/src/mame/drivers/m63.cpp b/src/mame/drivers/m63.cpp
index 564809ba135..1360b925612 100644
--- a/src/mame/drivers/m63.cpp
+++ b/src/mame/drivers/m63.cpp
@@ -213,6 +213,10 @@ public:
void atomboy(machine_config &config);
void m63(machine_config &config);
void fghtbskt(machine_config &config);
+ void fghtbskt_map(address_map &map);
+ void i8039_map(address_map &map);
+ void i8039_port_map(address_map &map);
+ void m63_map(address_map &map);
};
@@ -468,7 +472,7 @@ WRITE_LINE_MEMBER(m63_state::nmi_mask_w)
}
-static ADDRESS_MAP_START( m63_map, AS_PROGRAM, 8, m63_state )
+ADDRESS_MAP_START(m63_state::m63_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xd000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe1ff) AM_RAM
@@ -485,7 +489,7 @@ static ADDRESS_MAP_START( m63_map, AS_PROGRAM, 8, m63_state )
AM_RANGE(0xf806, 0xf806) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fghtbskt_map, AS_PROGRAM, 8, m63_state )
+ADDRESS_MAP_START(m63_state::fghtbskt_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -506,12 +510,12 @@ static ADDRESS_MAP_START( fghtbskt_map, AS_PROGRAM, 8, m63_state )
AM_RANGE(0xf807, 0xf807) AM_WRITE(fghtbskt_samples_w) // FIXME
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8039_map, AS_PROGRAM, 8, m63_state )
+ADDRESS_MAP_START(m63_state::i8039_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8039_port_map, AS_IO, 8, m63_state )
+ADDRESS_MAP_START(m63_state::i8039_port_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(snddata_r, snddata_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/m6805evs.cpp b/src/mame/drivers/m6805evs.cpp
index 12e62c809c7..4af4969fbbc 100644
--- a/src/mame/drivers/m6805evs.cpp
+++ b/src/mame/drivers/m6805evs.cpp
@@ -74,13 +74,14 @@ public:
{ }
void m6805evs(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
virtual void machine_reset() override;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, m6805evs_state )
+ADDRESS_MAP_START(m6805evs_state::mem_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
ADDRESS_MAP_UNMAP_HIGH
diff --git a/src/mame/drivers/m72.cpp b/src/mame/drivers/m72.cpp
index 81332048fac..fe72ec5c2e9 100644
--- a/src/mame/drivers/m72.cpp
+++ b/src/mame/drivers/m72.cpp
@@ -863,7 +863,7 @@ WRITE16_MEMBER(m72_state::soundram_w)
m_soundram[offset * 2 + 1] = data >> 8;
}
-static ADDRESS_MAP_START( m72_cpu1_common_map, AS_PROGRAM, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m72_cpu1_common_map)
AM_RANGE(0xc0000, 0xc03ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc8000, 0xc8bff) AM_READWRITE(palette1_r, palette1_w) AM_SHARE("paletteram")
AM_RANGE(0xcc000, 0xccbff) AM_READWRITE(palette2_r, palette2_w) AM_SHARE("paletteram2")
@@ -873,31 +873,31 @@ static ADDRESS_MAP_START( m72_cpu1_common_map, AS_PROGRAM, 16, m72_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m72_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::m72_map)
AM_IMPORT_FROM( m72_cpu1_common_map )
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0xa0000, 0xa3fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rtype_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::rtype_map)
AM_IMPORT_FROM( m72_cpu1_common_map )
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x40000, 0x43fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xmultiplm72_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::xmultiplm72_map)
AM_IMPORT_FROM( m72_cpu1_common_map )
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0x80000, 0x83fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dbreedm72_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::dbreedm72_map)
AM_IMPORT_FROM( m72_cpu1_common_map )
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0x90000, 0x93fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m81_cpu1_common_map, AS_PROGRAM, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m81_cpu1_common_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0xb0ffe, 0xb0fff) AM_WRITEONLY /* leftover from protection?? */
AM_RANGE(0xc0000, 0xc03ff) AM_RAM AM_SHARE("spriteram")
@@ -908,22 +908,22 @@ static ADDRESS_MAP_START( m81_cpu1_common_map, AS_PROGRAM, 16, m72_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xmultipl_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::xmultipl_map)
AM_IMPORT_FROM( m81_cpu1_common_map )
AM_RANGE(0x9c000, 0x9ffff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dbreed_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::dbreed_map)
AM_IMPORT_FROM( m81_cpu1_common_map )
AM_RANGE(0x88000, 0x8bfff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hharry_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::hharry_map)
AM_IMPORT_FROM( m81_cpu1_common_map )
AM_RANGE(0xa0000, 0xa3fff) AM_RAM /* work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m84_cpu1_common_map, AS_PROGRAM, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m84_cpu1_common_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0xb0000, 0xb0001) AM_WRITE(irq_line_w)
AM_RANGE(0xb4000, 0xb4001) AM_WRITENOP /* ??? */
@@ -934,7 +934,7 @@ static ADDRESS_MAP_START( m84_cpu1_common_map, AS_PROGRAM, 16, m72_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rtype2_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::rtype2_map)
AM_IMPORT_FROM( m84_cpu1_common_map )
AM_RANGE(0xd0000, 0xd3fff) AM_RAM_WRITE(videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0xd4000, 0xd7fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -942,7 +942,7 @@ static ADDRESS_MAP_START( rtype2_map, AS_PROGRAM, 16, m72_state)
AM_RANGE(0xd8000, 0xd8bff) AM_READWRITE(palette2_r, palette2_w) AM_SHARE("paletteram2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hharryu_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::hharryu_map)
AM_IMPORT_FROM( m84_cpu1_common_map )
AM_RANGE(0xd0000, 0xd3fff) AM_RAM_WRITE(videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0xd4000, 0xd7fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -950,7 +950,7 @@ static ADDRESS_MAP_START( hharryu_map, AS_PROGRAM, 16, m72_state)
AM_RANGE(0xa8000, 0xa8bff) AM_READWRITE(palette2_r, palette2_w) AM_SHARE("paletteram2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kengo_map, AS_PROGRAM, 16, m72_state)
+ADDRESS_MAP_START(m72_state::kengo_map)
AM_IMPORT_FROM( m84_cpu1_common_map )
AM_RANGE(0x80000, 0x83fff) AM_RAM_WRITE(videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0x84000, 0x87fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -959,7 +959,7 @@ static ADDRESS_MAP_START( kengo_map, AS_PROGRAM, 16, m72_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m82_map, AS_PROGRAM, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m82_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0xa0000, 0xa03ff) AM_RAM AM_SHARE("majtitle_rowscr")
AM_RANGE(0xa4000, 0xa4bff) AM_READWRITE(palette2_r, palette2_w) AM_SHARE("paletteram2")
@@ -978,7 +978,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( m72_portmap, AS_IO, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m72_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -994,7 +994,7 @@ static ADDRESS_MAP_START( m72_portmap, AS_IO, 16, m72_state )
/* { 0xc0, 0xc0 trigger sample, filled by init_ function */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m84_portmap, AS_IO, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m84_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -1007,7 +1007,7 @@ static ADDRESS_MAP_START( m84_portmap, AS_IO, 16, m72_state )
AM_RANGE(0x86, 0x87) AM_WRITE(scrollx2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m84_v33_portmap, AS_IO, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m84_v33_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -1021,7 +1021,7 @@ static ADDRESS_MAP_START( m84_v33_portmap, AS_IO, 16, m72_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( poundfor_portmap, AS_IO, 16, m72_state )
+ADDRESS_MAP_START(m72_state::poundfor_portmap)
AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
AM_RANGE(0x08, 0x0f) AM_DEVREAD8("upd4701l", upd4701_device, read_xy, 0x00ff)
@@ -1035,7 +1035,7 @@ static ADDRESS_MAP_START( poundfor_portmap, AS_IO, 16, m72_state )
AM_RANGE(0x86, 0x87) AM_WRITE(scrollx2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m82_portmap, AS_IO, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m82_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -1052,7 +1052,7 @@ static ADDRESS_MAP_START( m82_portmap, AS_IO, 16, m72_state )
AM_RANGE(0x8e, 0x8f) AM_WRITE(m82_gfx_ctrl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m81_portmap, AS_IO, 16, m72_state )
+ADDRESS_MAP_START(m72_state::m81_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -1069,16 +1069,16 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_ram_map, AS_PROGRAM, 8, m72_state )
+ADDRESS_MAP_START(m72_state::sound_ram_map)
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("soundram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_rom_map, AS_PROGRAM, 8, m72_state )
+ADDRESS_MAP_START(m72_state::sound_rom_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rtype_sound_portmap, AS_IO, 8, m72_state )
+ADDRESS_MAP_START(m72_state::rtype_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x02, 0x02) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1086,7 +1086,7 @@ static ADDRESS_MAP_START( rtype_sound_portmap, AS_IO, 8, m72_state )
AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_audio_device, sample_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, m72_state )
+ADDRESS_MAP_START(m72_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x02, 0x02) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1095,7 +1095,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, m72_state )
AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_audio_device, sample_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rtype2_sound_portmap, AS_IO, 8, m72_state )
+ADDRESS_MAP_START(m72_state::rtype2_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1106,7 +1106,7 @@ static ADDRESS_MAP_START( rtype2_sound_portmap, AS_IO, 8, m72_state )
// AM_RANGE(0x87, 0x87) AM_WRITENOP /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( poundfor_sound_portmap, AS_IO, 8, m72_state )
+ADDRESS_MAP_START(m72_state::poundfor_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x13) AM_DEVWRITE("m72", m72_audio_device, poundfor_sample_addr_w)
AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1114,7 +1114,7 @@ static ADDRESS_MAP_START( poundfor_sound_portmap, AS_IO, 8, m72_state )
AM_RANGE(0x42, 0x42) AM_DEVWRITE("m72", m72_audio_device, sound_irq_ack_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, m72_state )
+ADDRESS_MAP_START(m72_state::mcu_io_map)
/* External access */
AM_RANGE(0x0000, 0x0000) AM_READWRITE(mcu_sample_r, mcu_low_w)
AM_RANGE(0x0001, 0x0001) AM_WRITE(mcu_high_w)
diff --git a/src/mame/drivers/m79152pc.cpp b/src/mame/drivers/m79152pc.cpp
index 61fa7136400..6c67b063458 100644
--- a/src/mame/drivers/m79152pc.cpp
+++ b/src/mame/drivers/m79152pc.cpp
@@ -34,6 +34,8 @@ public:
uint32_t screen_update_m79152pc(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void m79152pc(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_shared_ptr<uint8_t> m_p_videoram;
@@ -43,7 +45,7 @@ private:
required_device<z80sio_device> m_uart;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, m79152pc_state )
+ADDRESS_MAP_START(m79152pc_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -51,7 +53,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, m79152pc_state )
AM_RANGE(0x9000, 0x9fff) AM_RAM AM_SHARE("attributes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, m79152pc_state )
+ADDRESS_MAP_START(m79152pc_state::io_map)
//ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x43) AM_DEVREADWRITE("uart", z80sio_device, cd_ba_r, cd_ba_w)
diff --git a/src/mame/drivers/m79amb.cpp b/src/mame/drivers/m79amb.cpp
index 6774ee641d8..768fbbf6ed0 100644
--- a/src/mame/drivers/m79amb.cpp
+++ b/src/mame/drivers/m79amb.cpp
@@ -118,7 +118,7 @@ WRITE8_MEMBER(m79amb_state::m79amb_8002_w)
output().set_value("EXP_LAMP", data ? 1 : 0);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, m79amb_state )
+ADDRESS_MAP_START(m79amb_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(ramtek_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x6000, 0x63ff) AM_RAM /* ?? */
diff --git a/src/mame/drivers/m90.cpp b/src/mame/drivers/m90.cpp
index 0ad909ddbc9..2e5dbc60356 100644
--- a/src/mame/drivers/m90.cpp
+++ b/src/mame/drivers/m90.cpp
@@ -67,7 +67,7 @@ WRITE16_MEMBER(m90_state::unknown_w)
/***************************************************************************/
-static ADDRESS_MAP_START( m90_main_cpu_map, AS_PROGRAM, 16, m90_state )
+ADDRESS_MAP_START(m90_state::m90_main_cpu_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0x80000, 0x8ffff) AM_ROMBANK("bank1") /* Quiz F1 only */
AM_RANGE(0xa0000, 0xa3fff) AM_RAM
@@ -76,7 +76,7 @@ static ADDRESS_MAP_START( m90_main_cpu_map, AS_PROGRAM, 16, m90_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dynablsb_main_cpu_map, AS_PROGRAM, 16, m90_state )
+ADDRESS_MAP_START(m90_state::dynablsb_main_cpu_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x6000e, 0x60fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xa0000, 0xa3fff) AM_RAM
@@ -85,7 +85,7 @@ static ADDRESS_MAP_START( dynablsb_main_cpu_map, AS_PROGRAM, 16, m90_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bomblord_main_cpu_map, AS_PROGRAM, 16, m90_state )
+ADDRESS_MAP_START(m90_state::bomblord_main_cpu_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0xa0000, 0xa3fff) AM_RAM
AM_RANGE(0xc000e, 0xc0fff) AM_RAM AM_SHARE("spriteram")
@@ -94,7 +94,7 @@ static ADDRESS_MAP_START( bomblord_main_cpu_map, AS_PROGRAM, 16, m90_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m90_main_cpu_io_map, AS_IO, 16, m90_state )
+ADDRESS_MAP_START(m90_state::m90_main_cpu_io_map)
AM_RANGE(0x00, 0x01) AM_DEVWRITE8("m72", m72_audio_device, sound_command_w, 0x00ff)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x02, 0x03) AM_WRITE(m90_coincounter_w)
@@ -104,7 +104,7 @@ static ADDRESS_MAP_START( m90_main_cpu_io_map, AS_IO, 16, m90_state )
AM_RANGE(0x80, 0x8f) AM_WRITE(m90_video_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dynablsb_main_cpu_io_map, AS_IO, 16, m90_state )
+ADDRESS_MAP_START(m90_state::dynablsb_main_cpu_io_map)
AM_RANGE(0x00, 0x01) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x02, 0x03) AM_WRITE(m90_coincounter_w)
@@ -118,12 +118,12 @@ ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START( m90_sound_cpu_map, AS_PROGRAM, 8, m90_state )
+ADDRESS_MAP_START(m90_state::m90_sound_cpu_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m90_sound_cpu_io_map, AS_IO, 8, m90_state )
+ADDRESS_MAP_START(m90_state::m90_sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -133,14 +133,14 @@ static ADDRESS_MAP_START( m90_sound_cpu_io_map, AS_IO, 8, m90_state )
AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_audio_device, sample_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dynablsb_sound_cpu_io_map, AS_IO, 8, m90_state )
+ADDRESS_MAP_START(m90_state::dynablsb_sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x82, 0x82) AM_DEVWRITE("dac", dac_byte_interface, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m99_sound_cpu_io_map, AS_IO, 8, m90_state )
+ADDRESS_MAP_START(m90_state::m99_sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("m72", m72_audio_device, poundfor_sample_addr_w)
AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/m92.cpp b/src/mame/drivers/m92.cpp
index 502384f47d9..73d7cc686d8 100644
--- a/src/mame/drivers/m92.cpp
+++ b/src/mame/drivers/m92.cpp
@@ -346,7 +346,7 @@ WRITE16_MEMBER(m92_state::m92_sound_reset_w)
/*****************************************************************************/
/* appears to be an earlier board */
-static ADDRESS_MAP_START( lethalth_map, AS_PROGRAM, 16, m92_state )
+ADDRESS_MAP_START(m92_state::lethalth_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0x80000, 0x8ffff) AM_RAM_WRITE(m92_vram_w) AM_SHARE("vram_data")
AM_RANGE(0xe0000, 0xeffff) AM_RAM /* System ram */
@@ -357,7 +357,7 @@ static ADDRESS_MAP_START( lethalth_map, AS_PROGRAM, 16, m92_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM AM_REGION("maincpu", 0x7fff0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m92_map, AS_PROGRAM, 16, m92_state )
+ADDRESS_MAP_START(m92_state::m92_map)
AM_RANGE(0x00000, 0x9ffff) AM_ROM
AM_RANGE(0xa0000, 0xbffff) AM_ROMBANK("bank1")
AM_RANGE(0xc0000, 0xcffff) AM_ROM AM_REGION("maincpu", 0x00000) /* Mirror used by In The Hunt as protection */
@@ -370,7 +370,7 @@ static ADDRESS_MAP_START( m92_map, AS_PROGRAM, 16, m92_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM AM_REGION("maincpu", 0x7fff0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m92_portmap, AS_IO, 16, m92_state )
+ADDRESS_MAP_START(m92_state::m92_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x02, 0x03) AM_READ_PORT("COINS_DSW3")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -391,7 +391,7 @@ WRITE16_MEMBER(m92_state::oki_bank_w)
m_oki->set_rom_bank((data+1) & 0x3); // +1?
}
-static ADDRESS_MAP_START( ppan_portmap, AS_IO, 16, m92_state )
+ADDRESS_MAP_START(m92_state::ppan_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2")
AM_RANGE(0x02, 0x03) AM_READ_PORT("COINS_DSW3")
AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW")
@@ -410,7 +410,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, m92_state )
+ADDRESS_MAP_START(m92_state::sound_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0xa0000, 0xa3fff) AM_RAM
AM_RANGE(0xa8000, 0xa803f) AM_DEVREADWRITE8("irem", iremga20_device, irem_ga20_r, irem_ga20_w, 0x00ff)
diff --git a/src/mame/drivers/mac.cpp b/src/mame/drivers/mac.cpp
index a1a0eb73354..1936032f791 100644
--- a/src/mame/drivers/mac.cpp
+++ b/src/mame/drivers/mac.cpp
@@ -591,7 +591,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(mac_state::mac_scanline)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(mac512ke_map, AS_PROGRAM, 16, mac_state )
+ADDRESS_MAP_START(mac_state::mac512ke_map)
AM_RANGE(0x800000, 0x9fffff) AM_READ(mac_scc_r)
AM_RANGE(0xa00000, 0xbfffff) AM_WRITE(mac_scc_w)
AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE(mac_iwm_r, mac_iwm_w)
@@ -599,7 +599,7 @@ static ADDRESS_MAP_START(mac512ke_map, AS_PROGRAM, 16, mac_state )
AM_RANGE(0xfffff0, 0xffffff) AM_READWRITE(mac_autovector_r, mac_autovector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macplus_map, AS_PROGRAM, 16, mac_state )
+ADDRESS_MAP_START(mac_state::macplus_map)
AM_RANGE(0x580000, 0x5fffff) AM_READWRITE(macplus_scsi_r, macplus_scsi_w)
AM_RANGE(0x800000, 0x9fffff) AM_READ(mac_scc_r)
AM_RANGE(0xa00000, 0xbfffff) AM_WRITE(mac_scc_w)
@@ -608,7 +608,7 @@ static ADDRESS_MAP_START(macplus_map, AS_PROGRAM, 16, mac_state )
AM_RANGE(0xfffff0, 0xffffff) AM_READWRITE(mac_autovector_r, mac_autovector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macse_map, AS_PROGRAM, 16, mac_state )
+ADDRESS_MAP_START(mac_state::macse_map)
AM_RANGE(0x580000, 0x5fffff) AM_READWRITE(macplus_scsi_r, macplus_scsi_w)
AM_RANGE(0x900000, 0x9fffff) AM_READ(mac_scc_r)
AM_RANGE(0xb00000, 0xbfffff) AM_WRITE(mac_scc_w)
@@ -617,7 +617,7 @@ static ADDRESS_MAP_START(macse_map, AS_PROGRAM, 16, mac_state )
AM_RANGE(0xfffff0, 0xffffff) AM_READWRITE(mac_autovector_r, mac_autovector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macprtb_map, AS_PROGRAM, 16, mac_state )
+ADDRESS_MAP_START(mac_state::macprtb_map)
AM_RANGE(0x900000, 0x93ffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0c0000)
AM_RANGE(0xf60000, 0xf6ffff) AM_READWRITE(mac_iwm_r, mac_iwm_w)
AM_RANGE(0xf70000, 0xf7ffff) AM_READWRITE(mac_via_r, mac_via_w)
@@ -629,7 +629,7 @@ static ADDRESS_MAP_START(macprtb_map, AS_PROGRAM, 16, mac_state )
AM_RANGE(0xfffff0, 0xffffff) AM_READWRITE(mac_autovector_r, mac_autovector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maclc_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::maclc_map)
ADDRESS_MAP_GLOBAL_MASK(0x80ffffff) // V8 uses bit 31 and 23-0 for address decoding only
AM_RANGE(0xa00000, 0xafffff) AM_ROM AM_REGION("bootrom", 0) // ROM (in 32-bit mode)
@@ -646,7 +646,7 @@ static ADDRESS_MAP_START(maclc_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0xf40000, 0xfbffff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maclc3_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::maclc3_map)
AM_RANGE(0x40000000, 0x400fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff00000)
AM_RANGE(0x50000000, 0x50001fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x00f00000)
@@ -665,7 +665,7 @@ static ADDRESS_MAP_START(maclc3_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0x60000000, 0x600fffff) AM_RAM AM_MIRROR(0x0ff00000) AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macii_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::macii_map)
AM_RANGE(0x40000000, 0x4003ffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ffc0000)
// MMU remaps I/O without the F
@@ -681,7 +681,7 @@ static ADDRESS_MAP_START(macii_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0x50040000, 0x50041fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x00f00000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maciici_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::maciici_map)
AM_RANGE(0x40000000, 0x4007ffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff80000)
AM_RANGE(0x50000000, 0x50001fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x00f00000)
@@ -696,7 +696,7 @@ static ADDRESS_MAP_START(maciici_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0x50040000, 0x50041fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x00f00000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macse30_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::macse30_map)
AM_RANGE(0x40000000, 0x4003ffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ffc0000)
AM_RANGE(0x50000000, 0x50001fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x00f00000)
@@ -714,7 +714,7 @@ static ADDRESS_MAP_START(macse30_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0xfeffe000, 0xfeffffff) AM_ROM AM_REGION("se30vrom", 0x0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maciifx_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::maciifx_map)
AM_RANGE(0x40000000, 0x4007ffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff80000)
AM_RANGE(0x50000000, 0x50001fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x00f00000)
@@ -732,7 +732,7 @@ static ADDRESS_MAP_START(maciifx_map, AS_PROGRAM, 32, mac_state )
ADDRESS_MAP_END
// ROM detects the "Jaws" ASIC by checking for I/O space mirrored at 0x01000000 boundries
-static ADDRESS_MAP_START(macpb140_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::macpb140_map)
AM_RANGE(0x40000000, 0x400fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff00000)
AM_RANGE(0x50000000, 0x50001fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x01f00000)
@@ -748,7 +748,7 @@ static ADDRESS_MAP_START(macpb140_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0xfee08000, 0xfeffffff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macpb160_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::macpb160_map)
AM_RANGE(0x40000000, 0x400fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff00000)
AM_RANGE(0x50f00000, 0x50f01fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff)
@@ -765,7 +765,7 @@ static ADDRESS_MAP_START(macpb160_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0x60000000, 0x6001ffff) AM_RAM AM_SHARE("vram") AM_MIRROR(0x0ffe0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macpb165c_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::macpb165c_map)
AM_RANGE(0x40000000, 0x400fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff00000)
AM_RANGE(0x50f00000, 0x50f01fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff)
@@ -787,7 +787,7 @@ static ADDRESS_MAP_START(macpb165c_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0xfcff8000, 0xfcffffff) AM_ROM AM_REGION("vrom", 0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macpd210_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::macpd210_map)
AM_RANGE(0x40000000, 0x400fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff00000)
AM_RANGE(0x50f00000, 0x50f01fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff)
@@ -806,7 +806,7 @@ static ADDRESS_MAP_START(macpd210_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0x60000000, 0x6001ffff) AM_RAM AM_SHARE("vram") AM_MIRROR(0x0ffe0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(quadra700_map, AS_PROGRAM, 32, mac_state )
+ADDRESS_MAP_START(mac_state::quadra700_map)
AM_RANGE(0x40000000, 0x400fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff00000)
AM_RANGE(0x50000000, 0x50001fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) AM_MIRROR(0x00fc0000)
@@ -825,7 +825,7 @@ static ADDRESS_MAP_START(quadra700_map, AS_PROGRAM, 32, mac_state )
AM_RANGE(0xf9800200, 0xf980023f) AM_READWRITE(dafb_dac_r, dafb_dac_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pwrmac_map, AS_PROGRAM, 64, mac_state )
+ADDRESS_MAP_START(mac_state::pwrmac_map)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM // 8 MB standard
AM_RANGE(0x40000000, 0x403fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0fc00000)
diff --git a/src/mame/drivers/mac128.cpp b/src/mame/drivers/mac128.cpp
index d99d8602501..af6e0c51ae1 100644
--- a/src/mame/drivers/mac128.cpp
+++ b/src/mame/drivers/mac128.cpp
@@ -262,6 +262,8 @@ public:
void mac512ke(machine_config &config);
void mac128k(machine_config &config);
void macplus(machine_config &config);
+ void mac512ke_map(address_map &map);
+ void macplus_map(address_map &map);
private:
// wait states for accessing the VIA
int m_via_cycles;
@@ -1276,7 +1278,7 @@ MAC_DRIVER_INIT(macplus, MODEL_MAC_PLUS)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(mac512ke_map, AS_PROGRAM, 16, mac128_state )
+ADDRESS_MAP_START(mac128_state::mac512ke_map)
AM_RANGE(0x000000, 0x3fffff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0x400000, 0x4fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x100000)
AM_RANGE(0x600000, 0x6fffff) AM_READWRITE(ram_600000_r, ram_600000_w)
@@ -1287,7 +1289,7 @@ static ADDRESS_MAP_START(mac512ke_map, AS_PROGRAM, 16, mac128_state )
AM_RANGE(0xfffff0, 0xffffff) AM_READWRITE(mac_autovector_r, mac_autovector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(macplus_map, AS_PROGRAM, 16, mac128_state )
+ADDRESS_MAP_START(mac128_state::macplus_map)
AM_RANGE(0x000000, 0x3fffff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0x400000, 0x4fffff) AM_ROM AM_REGION("bootrom", 0)
AM_RANGE(0x580000, 0x5fffff) AM_READWRITE(macplus_scsi_r, macplus_scsi_w)
diff --git a/src/mame/drivers/macp.cpp b/src/mame/drivers/macp.cpp
index 785b7442fb5..61333bd8f2f 100644
--- a/src/mame/drivers/macp.cpp
+++ b/src/mame/drivers/macp.cpp
@@ -20,23 +20,26 @@ public:
void macp(machine_config &config);
void macpmsm(machine_config &config);
void macp0(machine_config &config);
+ void macp0_map(address_map &map);
+ void macp_io(address_map &map);
+ void macp_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( macp_map, AS_PROGRAM, 8, macp_state )
+ADDRESS_MAP_START(macp_state::macp_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( macp0_map, AS_PROGRAM, 8, macp_state )
+ADDRESS_MAP_START(macp_state::macp0_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( macp_io, AS_IO, 8, macp_state )
+ADDRESS_MAP_START(macp_state::macp_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/macpci.cpp b/src/mame/drivers/macpci.cpp
index ccc9faa26c9..8053c5ae22b 100644
--- a/src/mame/drivers/macpci.cpp
+++ b/src/mame/drivers/macpci.cpp
@@ -60,7 +60,7 @@ READ64_MEMBER( macpci_state::unk2_r )
return 0;
}
-static ADDRESS_MAP_START(pippin_mem, AS_PROGRAM, 64, macpci_state)
+ADDRESS_MAP_START(macpci_state::pippin_mem)
AM_RANGE(0x00000000, 0x005fffff) AM_RAM
/* writes at 0x0*c01000 the string "Mr. Kesh" and wants it to be read back, true color VRAMs perhaps? */
diff --git a/src/mame/drivers/macrossp.cpp b/src/mame/drivers/macrossp.cpp
index d511f49babb..c2a5728037c 100644
--- a/src/mame/drivers/macrossp.cpp
+++ b/src/mame/drivers/macrossp.cpp
@@ -338,7 +338,7 @@ WRITE16_MEMBER(macrossp_state::palette_fade_w)
/*** MEMORY MAPS *************************************************************/
-static ADDRESS_MAP_START( macrossp_map, AS_PROGRAM, 32, macrossp_state )
+ADDRESS_MAP_START(macrossp_state::macrossp_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x802fff) AM_RAM AM_SHARE("spriteram")
/* SCR A Layer */
@@ -373,7 +373,7 @@ static ADDRESS_MAP_START( macrossp_map, AS_PROGRAM, 32, macrossp_state )
// AM_RANGE(0xfe0000, 0xfe0003) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( macrossp_sound_map, AS_PROGRAM, 16, macrossp_state )
+ADDRESS_MAP_START(macrossp_state::macrossp_sound_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x207fff) AM_RAM
AM_RANGE(0x400000, 0x40007f) AM_DEVREADWRITE8("ensoniq", es5506_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/macs.cpp b/src/mame/drivers/macs.cpp
index 1439005f66e..4e1afe6a6b3 100644
--- a/src/mame/drivers/macs.cpp
+++ b/src/mame/drivers/macs.cpp
@@ -99,11 +99,13 @@ public:
optional_device<generic_slot_device> m_cart2;
void macs(machine_config &config);
+ void macs_io(address_map &map);
+ void macs_mem(address_map &map);
};
-static ADDRESS_MAP_START( macs_mem, AS_PROGRAM, 8, macs_state )
+ADDRESS_MAP_START(macs_state::macs_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank4")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
//AM_RANGE(0xc000, 0xcfff) AM_READ(st0016_sprite_ram_r) AM_WRITE(st0016_sprite_ram_w)
@@ -189,7 +191,7 @@ WRITE8_MEMBER(macs_state::macs_output_w)
}
}
-static ADDRESS_MAP_START( macs_io, AS_IO, 8, macs_state )
+ADDRESS_MAP_START(macs_state::macs_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) /* video/crt regs ? */
AM_RANGE(0xc0, 0xc7) AM_READWRITE(macs_input_r,macs_output_w)
diff --git a/src/mame/drivers/madalien.cpp b/src/mame/drivers/madalien.cpp
index 1e7cc2b57e6..f13692b8996 100644
--- a/src/mame/drivers/madalien.cpp
+++ b/src/mame/drivers/madalien.cpp
@@ -67,7 +67,7 @@ WRITE8_MEMBER(madalien_state::madalien_portB_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, madalien_state )
+ADDRESS_MAP_START(madalien_state::main_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(madalien_videoram_w) AM_SHARE("videoram")
@@ -95,7 +95,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, madalien_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, madalien_state )
+ADDRESS_MAP_START(madalien_state::audio_map)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x1ffc) AM_RAM /* unknown device in an epoxy block, might be tilt detection */
AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x1ffc) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/madmotor.cpp b/src/mame/drivers/madmotor.cpp
index 3a14e69c13b..512b7f26380 100644
--- a/src/mame/drivers/madmotor.cpp
+++ b/src/mame/drivers/madmotor.cpp
@@ -53,13 +53,15 @@ public:
DECLARE_DRIVER_INIT(madmotor);
uint32_t screen_update_madmotor(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void madmotor(machine_config &config);
+ void madmotor_map(address_map &map);
+ void sound_map(address_map &map);
};
/******************************************************************************/
-static ADDRESS_MAP_START( madmotor_map, AS_PROGRAM, 16, madmotor_state )
+ADDRESS_MAP_START(madmotor_state::madmotor_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x180000, 0x180007) AM_DEVWRITE("tilegen1", deco_bac06_device, pf_control_0_w) /* text layer */
AM_RANGE(0x180010, 0x180017) AM_DEVWRITE("tilegen1", deco_bac06_device, pf_control_1_w)
@@ -87,7 +89,7 @@ ADDRESS_MAP_END
/******************************************************************************/
/* Physical memory map (21 bits) */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, madmotor_state )
+ADDRESS_MAP_START(madmotor_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_device, read, write)
diff --git a/src/mame/drivers/magic10.cpp b/src/mame/drivers/magic10.cpp
index 28880069a6c..fe0b2f95576 100644
--- a/src/mame/drivers/magic10.cpp
+++ b/src/mame/drivers/magic10.cpp
@@ -155,6 +155,11 @@ public:
void magic10(machine_config &config);
void hotslot(machine_config &config);
void sgsafari(machine_config &config);
+ void hotslot_map(address_map &map);
+ void magic102_map(address_map &map);
+ void magic10_map(address_map &map);
+ void magic10a_map(address_map &map);
+ void sgsafari_map(address_map &map);
};
@@ -311,7 +316,7 @@ WRITE16_MEMBER(magic10_state::magic10_out_w)
* Memory Maps *
***************************/
-static ADDRESS_MAP_START( magic10_map, AS_PROGRAM, 16, magic10_state )
+ADDRESS_MAP_START(magic10_state::magic10_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_SHARE("layer1_videoram")
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_SHARE("layer0_videoram")
@@ -327,7 +332,7 @@ static ADDRESS_MAP_START( magic10_map, AS_PROGRAM, 16, magic10_state )
AM_RANGE(0x600000, 0x603fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magic10a_map, AS_PROGRAM, 16, magic10_state )
+ADDRESS_MAP_START(magic10_state::magic10a_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_SHARE("layer1_videoram")
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_SHARE("layer0_videoram")
@@ -343,7 +348,7 @@ static ADDRESS_MAP_START( magic10a_map, AS_PROGRAM, 16, magic10_state )
AM_RANGE(0x600000, 0x603fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magic102_map, AS_PROGRAM, 16, magic10_state )
+ADDRESS_MAP_START(magic10_state::magic102_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_SHARE("layer1_videoram")
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_SHARE("layer0_videoram")
@@ -362,7 +367,7 @@ static ADDRESS_MAP_START( magic102_map, AS_PROGRAM, 16, magic10_state )
AM_RANGE(0x700080, 0x700087) AM_RAM AM_SHARE("vregs") // video registers?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotslot_map, AS_PROGRAM, 16, magic10_state )
+ADDRESS_MAP_START(magic10_state::hotslot_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_SHARE("layer1_videoram")
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_SHARE("layer0_videoram")
@@ -381,7 +386,7 @@ static ADDRESS_MAP_START( hotslot_map, AS_PROGRAM, 16, magic10_state )
AM_RANGE(0x700080, 0x700087) AM_RAM AM_SHARE("vregs")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgsafari_map, AS_PROGRAM, 16, magic10_state )
+ADDRESS_MAP_START(magic10_state::sgsafari_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_SHARE("layer1_videoram")
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_SHARE("layer0_videoram")
diff --git a/src/mame/drivers/magicard.cpp b/src/mame/drivers/magicard.cpp
index 3c00afa066a..7a157b57c0a 100644
--- a/src/mame/drivers/magicard.cpp
+++ b/src/mame/drivers/magicard.cpp
@@ -468,6 +468,10 @@ public:
required_device<palette_device> m_palette;
void magicard(machine_config &config);
void hotslots(machine_config &config);
+ void hotslots_mem(address_map &map);
+ void magicard_mem(address_map &map);
+ void ramdac_map(address_map &map);
+ void scc68070_mem(address_map &map);
};
@@ -897,7 +901,7 @@ WRITE16_MEMBER(magicard_state::scc68070_mmu_w)
* Memory Maps *
*************************/
-static ADDRESS_MAP_START( scc68070_mem, AS_PROGRAM, 16, magicard_state )
+ADDRESS_MAP_START(magicard_state::scc68070_mem)
AM_RANGE(0x80001000, 0x8000100f) AM_READWRITE(scc68070_ext_irqc_r,scc68070_ext_irqc_w) AM_SHARE("scc_xirqc_regs") //lir
AM_RANGE(0x80002000, 0x8000200f) AM_READWRITE(scc68070_iic_r,scc68070_iic_w) AM_SHARE("scc_iic_regs") //i2c
AM_RANGE(0x80002010, 0x8000201f) AM_READWRITE(scc68070_uart_r,scc68070_uart_w) AM_SHARE("scc_uart_regs")
@@ -908,7 +912,7 @@ static ADDRESS_MAP_START( scc68070_mem, AS_PROGRAM, 16, magicard_state )
AM_RANGE(0x80008000, 0x8000807f) AM_READWRITE(scc68070_mmu_r,scc68070_mmu_w) AM_SHARE("scc_mmu_regs")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magicard_mem, AS_PROGRAM, 16, magicard_state )
+ADDRESS_MAP_START(magicard_state::magicard_mem)
// ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_IMPORT_FROM(scc68070_mem)
AM_RANGE(0x00000000, 0x001ffbff) AM_MIRROR(0x00200000) AM_RAM AM_SHARE("magicram")
@@ -926,7 +930,7 @@ static ADDRESS_MAP_START( magicard_mem, AS_PROGRAM, 16, magicard_state )
AM_RANGE(0x001fffe0, 0x001fffff) AM_MIRROR(0x7fe00000) AM_READWRITE(philips_66470_r,philips_66470_w) AM_SHARE("pcab_vregs") //video registers
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotslots_mem, AS_PROGRAM, 16, magicard_state )
+ADDRESS_MAP_START(magicard_state::hotslots_mem)
// ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_IMPORT_FROM(scc68070_mem)
AM_RANGE(0x00000000, 0x001ffbff) AM_MIRROR(0x00200000) AM_RAM AM_SHARE("magicram")
@@ -980,7 +984,7 @@ INTERRUPT_GEN_MEMBER(magicard_state::magicard_irq)
device.execute().set_input_line_and_vector(1, HOLD_LINE, 0xf0 / 4);
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, magicard_state )
+ADDRESS_MAP_START(magicard_state::ramdac_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/magicfly.cpp b/src/mame/drivers/magicfly.cpp
index b4d4cfa4592..48f71e24c9d 100644
--- a/src/mame/drivers/magicfly.cpp
+++ b/src/mame/drivers/magicfly.cpp
@@ -485,6 +485,7 @@ public:
void bchance(machine_config &config);
void magicfly(machine_config &config);
void _7mezzo(machine_config &config);
+ void magicfly_map(address_map &map);
};
@@ -676,7 +677,7 @@ WRITE8_MEMBER(magicfly_state::mux_port_w)
* Memory map information *
*********************************************/
-static ADDRESS_MAP_START( magicfly_map, AS_PROGRAM, 8, magicfly_state )
+ADDRESS_MAP_START(magicfly_state::magicfly_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* MK48Z02B NVRAM */
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
diff --git a/src/mame/drivers/magictg.cpp b/src/mame/drivers/magictg.cpp
index bb27a7f4ff3..76b5c118755 100644
--- a/src/mame/drivers/magictg.cpp
+++ b/src/mame/drivers/magictg.cpp
@@ -227,6 +227,10 @@ public:
void zr36120_reset();
void magictg(machine_config &config);
+ void adsp_data_map(address_map &map);
+ void adsp_io_map(address_map &map);
+ void adsp_program_map(address_map &map);
+ void magictg_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -837,7 +841,7 @@ WRITE16_MEMBER( magictg_state::adsp_control_w )
*
*************************************/
-static ADDRESS_MAP_START( magictg_map, AS_PROGRAM, 32, magictg_state )
+ADDRESS_MAP_START(magictg_state::magictg_map)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM // 8MB RAM
AM_RANGE(0x00800000, 0x0081003f) AM_RAM // ?
AM_RANGE(0x0a000000, 0x0affffff) AM_DEVREADWRITE("voodoo_0", voodoo_device, voodoo_r, voodoo_w)
@@ -864,19 +868,19 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, magictg_state )
+ADDRESS_MAP_START(magictg_state::adsp_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("adsp_pram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, magictg_state )
+ADDRESS_MAP_START(magictg_state::adsp_data_map)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x0000, 0x03ff) AM_RAMBANK("databank")
AM_RANGE(0x0400, 0x3fdf) AM_RAM
AM_RANGE(0x3fe0, 0x3fff) AM_READWRITE(adsp_control_r, adsp_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_io_map, AS_IO, 16, magictg_state )
+ADDRESS_MAP_START(magictg_state::adsp_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/magmax.cpp b/src/mame/drivers/magmax.cpp
index 46a848507f4..4ee8495c548 100644
--- a/src/mame/drivers/magmax.cpp
+++ b/src/mame/drivers/magmax.cpp
@@ -190,7 +190,7 @@ WRITE16_MEMBER(magmax_state::magmax_vreg_w)
-static ADDRESS_MAP_START( magmax_map, AS_PROGRAM, 16, magmax_state )
+ADDRESS_MAP_START(magmax_state::magmax_map)
AM_RANGE(0x000000, 0x013fff) AM_ROM
AM_RANGE(0x018000, 0x018fff) AM_RAM
AM_RANGE(0x020000, 0x0207ff) AM_RAM AM_SHARE("videoram")
@@ -206,14 +206,14 @@ static ADDRESS_MAP_START( magmax_map, AS_PROGRAM, 16, magmax_state )
AM_RANGE(0x03001e, 0x03001f) AM_WRITE(cpu_irq_ack_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magmax_sound_map, AS_PROGRAM, 8, magmax_state )
+ADDRESS_MAP_START(magmax_state::magmax_sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff) // A15 not connected
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x1fff) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, acknowledge_r, acknowledge_w)
AM_RANGE(0x6000, 0x67ff) AM_MIRROR(0x1800) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magmax_sound_io_map, AS_IO, 8, magmax_state )
+ADDRESS_MAP_START(magmax_state::magmax_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/magnum.cpp b/src/mame/drivers/magnum.cpp
index d7c0a4e924d..2267aa27cd5 100644
--- a/src/mame/drivers/magnum.cpp
+++ b/src/mame/drivers/magnum.cpp
@@ -30,6 +30,8 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void magnum(machine_config &config);
+ void magnum_io(address_map &map);
+ void magnum_map(address_map &map);
protected:
virtual void machine_reset() override;
virtual void machine_start() override;
@@ -130,12 +132,12 @@ WRITE8_MEMBER(magnum_state::beep_w)
m_beep->set_state(BIT(data, 0));
}
-static ADDRESS_MAP_START( magnum_map, AS_PROGRAM, 16, magnum_state )
+ADDRESS_MAP_START(magnum_state::magnum_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM // fixed 256k for now
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magnum_io, AS_IO, 16, magnum_state )
+ADDRESS_MAP_START(magnum_state::magnum_io)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x000a, 0x000b) cdp1854 1
//AM_RANGE(0x000e, 0x000f) cpd1854 2
diff --git a/src/mame/drivers/magtouch.cpp b/src/mame/drivers/magtouch.cpp
index c8699c7cb47..25ff5a8018f 100644
--- a/src/mame/drivers/magtouch.cpp
+++ b/src/mame/drivers/magtouch.cpp
@@ -104,6 +104,8 @@ public:
virtual void machine_start() override;
static void magtouch_sb_conf(device_t *device);
void magtouch(machine_config &config);
+ void magtouch_io(address_map &map);
+ void magtouch_map(address_map &map);
};
/*************************************
@@ -133,7 +135,7 @@ WRITE8_MEMBER(magtouch_state::magtouch_io_w)
}
}
-static ADDRESS_MAP_START( magtouch_map, AS_PROGRAM, 32, magtouch_state )
+ADDRESS_MAP_START(magtouch_state::magtouch_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", trident_vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0)
@@ -143,7 +145,7 @@ static ADDRESS_MAP_START( magtouch_map, AS_PROGRAM, 32, magtouch_state )
AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( magtouch_io, AS_IO, 32, magtouch_state )
+ADDRESS_MAP_START(magtouch_state::magtouch_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x02e0, 0x02e7) AM_READWRITE8(magtouch_io_r, magtouch_io_w, 0xffffffff)
AM_RANGE(0x03b0, 0x03bf) AM_DEVREADWRITE8("vga", trident_vga_device, port_03b0_r, port_03b0_w, 0xffffffff)
diff --git a/src/mame/drivers/mainevt.cpp b/src/mame/drivers/mainevt.cpp
index 28ff1543770..9b79a243a64 100644
--- a/src/mame/drivers/mainevt.cpp
+++ b/src/mame/drivers/mainevt.cpp
@@ -154,7 +154,7 @@ WRITE8_MEMBER(mainevt_state::k052109_051960_w)
}
-static ADDRESS_MAP_START( mainevt_map, AS_PROGRAM, 8, mainevt_state )
+ADDRESS_MAP_START(mainevt_state::mainevt_map)
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w)
AM_RANGE(0x1f80, 0x1f80) AM_WRITE(mainevt_bankswitch_w)
@@ -179,7 +179,7 @@ static ADDRESS_MAP_START( mainevt_map, AS_PROGRAM, 8, mainevt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( devstors_map, AS_PROGRAM, 8, mainevt_state )
+ADDRESS_MAP_START(mainevt_state::devstors_map)
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w)
AM_RANGE(0x1f80, 0x1f80) AM_WRITE(mainevt_bankswitch_w)
@@ -203,7 +203,7 @@ static ADDRESS_MAP_START( devstors_map, AS_PROGRAM, 8, mainevt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mainevt_sound_map, AS_PROGRAM, 8, mainevt_state )
+ADDRESS_MAP_START(mainevt_state::mainevt_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("upd", upd7759_device, port_w)
@@ -214,7 +214,7 @@ static ADDRESS_MAP_START( mainevt_sound_map, AS_PROGRAM, 8, mainevt_state )
AM_RANGE(0xf000, 0xf000) AM_WRITE(mainevt_sh_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( devstors_sound_map, AS_PROGRAM, 8, mainevt_state )
+ADDRESS_MAP_START(mainevt_state::devstors_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/mainsnk.cpp b/src/mame/drivers/mainsnk.cpp
index 231642b66c4..3151e61003f 100644
--- a/src/mame/drivers/mainsnk.cpp
+++ b/src/mame/drivers/mainsnk.cpp
@@ -126,7 +126,7 @@ READ8_MEMBER(mainsnk_state::sound_ack_r)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mainsnk_state )
+ADDRESS_MAP_START(mainsnk_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -142,7 +142,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mainsnk_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(fgram_w) AM_SHARE("fgram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, mainsnk_state )
+ADDRESS_MAP_START(mainsnk_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -152,7 +152,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, mainsnk_state )
AM_RANGE(0xe008, 0xe009) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, mainsnk_state )
+ADDRESS_MAP_START(mainsnk_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(sound_ack_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/majorpkr.cpp b/src/mame/drivers/majorpkr.cpp
index 3dda13ab2fe..f0271ea12ca 100644
--- a/src/mame/drivers/majorpkr.cpp
+++ b/src/mame/drivers/majorpkr.cpp
@@ -512,6 +512,10 @@ public:
virtual void video_start() override;
uint32_t screen_update_majorpkr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void majorpkr(machine_config &config);
+ void map(address_map &map);
+ void palettebanks(address_map &map);
+ void portmap(address_map &map);
+ void vrambanks(address_map &map);
};
@@ -738,7 +742,7 @@ WRITE8_MEMBER(majorpkr_state::pulses_w)
* Memory map information *
*************************/
-static ADDRESS_MAP_START( map, AS_PROGRAM, 8, majorpkr_state )
+ADDRESS_MAP_START(majorpkr_state::map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_ROMBANK("rom_bank")
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("nvram")
@@ -746,11 +750,11 @@ static ADDRESS_MAP_START( map, AS_PROGRAM, 8, majorpkr_state )
AM_RANGE(0xf800, 0xffff) AM_DEVICE("vram_bank", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( palettebanks, AS_PROGRAM, 8, majorpkr_state )
+ADDRESS_MAP_START(majorpkr_state::palettebanks)
AM_RANGE(0x0000, 0x1fff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vrambanks, AS_PROGRAM, 8, majorpkr_state )
+ADDRESS_MAP_START(majorpkr_state::vrambanks)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(fg_vram_w) AM_SHARE("fg_vram")
AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(bg_vram_w) AM_SHARE("bg_vram")
AM_RANGE(0x1000, 0x1fff) AM_RAM // spare vram? cleared during boot along with fg and bg
@@ -777,7 +781,7 @@ ADDRESS_MAP_END
60 W ---> PSG SN76489/96 initialization routines.
(Maybe a leftover for different hardware).
*/
-static ADDRESS_MAP_START( portmap, AS_IO, 8, majorpkr_state )
+ADDRESS_MAP_START(majorpkr_state::portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(rom_bank_w)
AM_RANGE(0x01, 0x01) AM_WRITE(palette_bank_w)
diff --git a/src/mame/drivers/malzak.cpp b/src/mame/drivers/malzak.cpp
index d175f90bffc..44e2ec9226c 100644
--- a/src/mame/drivers/malzak.cpp
+++ b/src/mame/drivers/malzak.cpp
@@ -99,7 +99,7 @@ READ8_MEMBER(malzak_state::s2636_portA_r)
}
}
-static ADDRESS_MAP_START( malzak_map, AS_PROGRAM, 8, malzak_state )
+ADDRESS_MAP_START(malzak_state::malzak_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0fff) AM_ROMBANK("bank1")
@@ -119,7 +119,7 @@ static ADDRESS_MAP_START( malzak_map, AS_PROGRAM, 8, malzak_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( malzak2_map, AS_PROGRAM, 8, malzak_state )
+ADDRESS_MAP_START(malzak_state::malzak2_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0fff) AM_ROMBANK("bank1")
@@ -180,7 +180,7 @@ READ8_MEMBER(malzak_state::collision_r)
return 0xd0 + m_collision_counter;
}
-static ADDRESS_MAP_START( malzak_io_map, AS_IO, 8, malzak_state )
+ADDRESS_MAP_START(malzak_state::malzak_io_map)
AM_RANGE(0x00, 0x00) AM_READ(collision_r) // returns where a collision can occur.
AM_RANGE(0x40, 0x40) AM_WRITE(port40_w) // possibly sound codes for dual SN76477s
AM_RANGE(0x60, 0x60) AM_WRITE(port60_w) // possibly playfield scroll X offset
@@ -189,7 +189,7 @@ static ADDRESS_MAP_START( malzak_io_map, AS_IO, 8, malzak_state )
AM_RANGE(0xc0, 0xc0) AM_WRITE(portc0_w) // possibly playfield row selection for writing and/or collisions
ADDRESS_MAP_END
-static ADDRESS_MAP_START( malzak_data_map, AS_DATA, 8, malzak_state )
+ADDRESS_MAP_START(malzak_state::malzak_data_map)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(s2650_data_r) // read upon death
ADDRESS_MAP_END
diff --git a/src/mame/drivers/manohman.cpp b/src/mame/drivers/manohman.cpp
index 25308374be8..01f943cc6aa 100644
--- a/src/mame/drivers/manohman.cpp
+++ b/src/mame/drivers/manohman.cpp
@@ -154,6 +154,7 @@ public:
IRQ_CALLBACK_MEMBER(iack_handler);
void manohman(machine_config &config);
+ void mem_map(address_map &map);
private:
virtual void machine_start() override;
@@ -179,7 +180,7 @@ IRQ_CALLBACK_MEMBER(manohman_state::iack_handler)
* Memory Map Definition *
*********************************************/
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, manohman_state )
+ADDRESS_MAP_START(manohman_state::mem_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x100000, 0x10003f) AM_DEVREADWRITE8("pit", pit68230_device, read, write, 0x00ff)
AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE8("duart", mc68681_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/mappy.cpp b/src/mame/drivers/mappy.cpp
index e2208de3442..827044bb198 100644
--- a/src/mame/drivers/mappy.cpp
+++ b/src/mame/drivers/mappy.cpp
@@ -645,7 +645,7 @@ INTERRUPT_GEN_MEMBER(mappy_state::sub2_vblank_irq)
m_subcpu2->set_input_line(0, ASSERT_LINE);
}
-static ADDRESS_MAP_START( superpac_cpu1_map, AS_PROGRAM, 8, mappy_state )
+ADDRESS_MAP_START(mappy_state::superpac_cpu1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("videoram") /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") /* work RAM with embedded sprite RAM */
AM_RANGE(0x2000, 0x2000) AM_READWRITE(superpac_flipscreen_r, superpac_flipscreen_w)
@@ -657,7 +657,7 @@ static ADDRESS_MAP_START( superpac_cpu1_map, AS_PROGRAM, 8, mappy_state )
AM_RANGE(0xa000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( phozon_cpu1_map, AS_PROGRAM, 8, mappy_state )
+ADDRESS_MAP_START(mappy_state::phozon_cpu1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("videoram") /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") /* shared RAM with CPU #2/sprite RAM*/
AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w) /* shared RAM with the sound CPU */
@@ -668,7 +668,7 @@ static ADDRESS_MAP_START( phozon_cpu1_map, AS_PROGRAM, 8, mappy_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mappy_cpu1_map, AS_PROGRAM, 8, mappy_state )
+ADDRESS_MAP_START(mappy_state::mappy_cpu1_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(mappy_videoram_w) AM_SHARE("videoram") /* video RAM */
AM_RANGE(0x1000, 0x27ff) AM_RAM AM_SHARE("spriteram") /* work RAM with embedded sprite RAM */
AM_RANGE(0x3800, 0x3fff) AM_WRITE(mappy_scroll_w) /* scroll */
@@ -680,18 +680,18 @@ static ADDRESS_MAP_START( mappy_cpu1_map, AS_PROGRAM, 8, mappy_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM code (only a000-ffff in Mappy) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( superpac_cpu2_map, AS_PROGRAM, 8, mappy_state )
+ADDRESS_MAP_START(mappy_state::superpac_cpu2_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w) /* shared RAM with the main CPU (also sound registers) */
AM_RANGE(0x2000, 0x200f) AM_DEVWRITE("mainlatch", ls259_device, write_a0) /* various control bits */
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( phozon_cpu2_map, AS_PROGRAM, 8, mappy_state )
+ADDRESS_MAP_START(mappy_state::phozon_cpu2_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w) /* shared RAM with the main CPU + sound registers */
AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mappy_cpu2_map, AS_PROGRAM, 8, mappy_state )
+ADDRESS_MAP_START(mappy_state::mappy_cpu2_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w) /* shared RAM with the main CPU (also sound registers) */
AM_RANGE(0x2000, 0x200f) AM_DEVWRITE("mainlatch", ls259_device, write_a0) /* various control bits */
AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM code */
@@ -699,7 +699,7 @@ ADDRESS_MAP_END
/* extra CPU only present in Phozon */
-static ADDRESS_MAP_START( phozon_cpu3_map, AS_PROGRAM, 8, mappy_state )
+ADDRESS_MAP_START(mappy_state::phozon_cpu3_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("videoram") /* video RAM */
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") /* shared RAM with CPU #2/sprite RAM*/
AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w) /* shared RAM with CPU #2 */
diff --git a/src/mame/drivers/marineb.cpp b/src/mame/drivers/marineb.cpp
index f77653eabaf..4c8d7679364 100644
--- a/src/mame/drivers/marineb.cpp
+++ b/src/mame/drivers/marineb.cpp
@@ -65,7 +65,7 @@ WRITE_LINE_MEMBER(marineb_state::irq_mask_w)
m_irq_mask = state;
}
-static ADDRESS_MAP_START( marineb_map, AS_PROGRAM, 8, marineb_state )
+ADDRESS_MAP_START(marineb_state::marineb_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(marineb_videoram_w) AM_SHARE("videoram")
@@ -82,12 +82,12 @@ static ADDRESS_MAP_START( marineb_map, AS_PROGRAM, 8, marineb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( marineb_io_map, AS_IO, 8, marineb_state )
+ADDRESS_MAP_START(marineb_state::marineb_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x09) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wanted_io_map, AS_IO, 8, marineb_state )
+ADDRESS_MAP_START(marineb_state::wanted_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8912_device, address_data_w)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8912_device, address_data_w)
diff --git a/src/mame/drivers/marinedt.cpp b/src/mame/drivers/marinedt.cpp
index ad73c7744a3..87ba954a44f 100644
--- a/src/mame/drivers/marinedt.cpp
+++ b/src/mame/drivers/marinedt.cpp
@@ -135,6 +135,8 @@ public:
TILE_GET_INFO_MEMBER(get_tile_info);
void marinedt(machine_config &config);
+ void marinedt_io(address_map &map);
+ void marinedt_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -435,14 +437,14 @@ READ8_MEMBER(marinedt_state::pc3259_r)
return 0;
}
-static ADDRESS_MAP_START( marinedt_map, AS_PROGRAM, 8, marinedt_state )
+ADDRESS_MAP_START(marinedt_state::marinedt_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 is not decoded */
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("ipl",0)
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0x0400) AM_RAM_WRITE(vram_w) AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( marinedt_io, AS_IO, 8, marinedt_state )
+ADDRESS_MAP_START(marinedt_state::marinedt_io)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1")
AM_RANGE(0x01, 0x01) AM_READ(trackball_r)
diff --git a/src/mame/drivers/mario.cpp b/src/mame/drivers/mario.cpp
index ac75769b063..91f12bc620e 100644
--- a/src/mame/drivers/mario.cpp
+++ b/src/mame/drivers/mario.cpp
@@ -141,7 +141,7 @@ WRITE_LINE_MEMBER(mario_state::coin_counter_2_w)
*
*************************************/
-static ADDRESS_MAP_START( mario_map, AS_PROGRAM, 8, mario_state)
+ADDRESS_MAP_START(mario_state::mario_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x73ff) AM_RAM AM_SHARE("spriteram") /* physical sprite ram */
@@ -156,7 +156,7 @@ static ADDRESS_MAP_START( mario_map, AS_PROGRAM, 8, mario_state)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( masao_map, AS_PROGRAM, 8, mario_state)
+ADDRESS_MAP_START(mario_state::masao_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x73ff) AM_RAM AM_SHARE("spriteram") /* physical sprite ram */
@@ -171,7 +171,7 @@ static ADDRESS_MAP_START( masao_map, AS_PROGRAM, 8, mario_state)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mario_io_map, AS_IO, 8, mario_state)
+ADDRESS_MAP_START(mario_state::mario_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("z80dma", z80dma_device, read, write) /* dma controller */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/markham.cpp b/src/mame/drivers/markham.cpp
index 426a62da6b3..bbf9b5376c1 100644
--- a/src/mame/drivers/markham.cpp
+++ b/src/mame/drivers/markham.cpp
@@ -26,7 +26,7 @@ READ8_MEMBER(markham_state::markham_e004_r)
/****************************************************************************/
-static ADDRESS_MAP_START( markham_master_map, AS_PROGRAM, 8, markham_state )
+ADDRESS_MAP_START(markham_state::markham_master_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -50,7 +50,7 @@ static ADDRESS_MAP_START( markham_master_map, AS_PROGRAM, 8, markham_state )
AM_RANGE(0xe00e, 0xe00e) AM_WRITE(markham_flipscreen_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( markham_slave_map, AS_PROGRAM, 8, markham_state )
+ADDRESS_MAP_START(markham_state::markham_slave_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share1")
diff --git a/src/mame/drivers/marywu.cpp b/src/mame/drivers/marywu.cpp
index cfc56ec133c..1ab0082d7e9 100644
--- a/src/mame/drivers/marywu.cpp
+++ b/src/mame/drivers/marywu.cpp
@@ -40,6 +40,8 @@ public:
DECLARE_READ8_MEMBER(keyboard_r);
DECLARE_READ8_MEMBER(port_r);
void marywu(machine_config &config);
+ void io_map(address_map &map);
+ void program_map(address_map &map);
private:
uint8_t m_selected_7seg_module;
};
@@ -167,11 +169,11 @@ WRITE8_MEMBER( marywu_state::display_7seg_data_w )
output().set_digit_value(2 * m_selected_7seg_module + 1, patterns[(data >> 4) & 0x0F]);
}
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, marywu_state )
+ADDRESS_MAP_START(marywu_state::program_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, marywu_state )
+ADDRESS_MAP_START(marywu_state::io_map)
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x0800) AM_RAM /* HM6116: 2kbytes of Static RAM */
AM_RANGE(0x9000, 0x9000) AM_MIRROR(0x0ffc) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x9001, 0x9001) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
diff --git a/src/mame/drivers/mastboy.cpp b/src/mame/drivers/mastboy.cpp
index 84e264db430..c9631cc5c16 100644
--- a/src/mame/drivers/mastboy.cpp
+++ b/src/mame/drivers/mastboy.cpp
@@ -495,6 +495,8 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
void mastboy(machine_config &config);
+ void mastboy_io_map(address_map &map);
+ void mastboy_map(address_map &map);
};
@@ -660,7 +662,7 @@ INTERRUPT_GEN_MEMBER(mastboy_state::interrupt)
/* Memory Maps */
-static ADDRESS_MAP_START( mastboy_map, AS_PROGRAM, 8, mastboy_state )
+ADDRESS_MAP_START(mastboy_state::mastboy_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // Internal ROM
AM_RANGE(0x4000, 0x7fff) AM_ROM // External ROM
@@ -698,7 +700,7 @@ READ8_MEMBER(mastboy_state::nmi_read)
return 0x00;
}
-static ADDRESS_MAP_START( mastboy_io_map, AS_IO, 8, mastboy_state )
+ADDRESS_MAP_START(mastboy_state::mastboy_io_map)
AM_RANGE(0x38, 0x38) AM_READ(port_38_read)
AM_RANGE(0x39, 0x39) AM_READ(nmi_read)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/matmania.cpp b/src/mame/drivers/matmania.cpp
index 26766e35a25..6b6a7258997 100644
--- a/src/mame/drivers/matmania.cpp
+++ b/src/mame/drivers/matmania.cpp
@@ -75,7 +75,7 @@ WRITE8_MEMBER(matmania_state::maniach_sh_command_w)
*
*************************************/
-static ADDRESS_MAP_START( matmania_map, AS_PROGRAM, 8, matmania_state )
+ADDRESS_MAP_START(matmania_state::matmania_map)
AM_RANGE(0x0000, 0x077f) AM_RAM
AM_RANGE(0x0780, 0x07df) AM_WRITEONLY AM_SHARE("spriteram")
AM_RANGE(0x1000, 0x13ff) AM_RAM AM_SHARE("videoram2")
@@ -92,7 +92,7 @@ static ADDRESS_MAP_START( matmania_map, AS_PROGRAM, 8, matmania_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maniach_map, AS_PROGRAM, 8, matmania_state )
+ADDRESS_MAP_START(matmania_state::maniach_map)
AM_RANGE(0x0000, 0x077f) AM_RAM
AM_RANGE(0x0780, 0x07df) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x1000, 0x13ff) AM_RAM AM_SHARE("videoram2")
@@ -112,7 +112,7 @@ static ADDRESS_MAP_START( maniach_map, AS_PROGRAM, 8, matmania_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( matmania_sound_map, AS_PROGRAM, 8, matmania_state )
+ADDRESS_MAP_START(matmania_state::matmania_sound_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x2002, 0x2003) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
@@ -121,7 +121,7 @@ static ADDRESS_MAP_START( matmania_sound_map, AS_PROGRAM, 8, matmania_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maniach_sound_map, AS_PROGRAM, 8, matmania_state )
+ADDRESS_MAP_START(matmania_state::maniach_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ymsnd", ym3526_device, write)
AM_RANGE(0x2002, 0x2002) AM_DEVWRITE("dac", dac_byte_interface, write)
diff --git a/src/mame/drivers/maxaflex.cpp b/src/mame/drivers/maxaflex.cpp
index edab18b704e..d44b05030d2 100644
--- a/src/mame/drivers/maxaflex.cpp
+++ b/src/mame/drivers/maxaflex.cpp
@@ -62,6 +62,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(mf_interrupt);
void maxaflex(machine_config &config);
+ void a600xl_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -193,7 +194,7 @@ INPUT_CHANGED_MEMBER(maxaflex_state::coin_inserted)
-static ADDRESS_MAP_START(a600xl_mem, AS_PROGRAM, 8, maxaflex_state )
+ADDRESS_MAP_START(maxaflex_state::a600xl_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM
AM_RANGE(0x5000, 0x57ff) AM_ROM AM_REGION("maincpu", 0xd000) /* self test */
AM_RANGE(0x8000, 0xbfff) AM_ROM /* game cartridge */
diff --git a/src/mame/drivers/maygay1b.cpp b/src/mame/drivers/maygay1b.cpp
index f6b596356e3..3824c92134f 100644
--- a/src/mame/drivers/maygay1b.cpp
+++ b/src/mame/drivers/maygay1b.cpp
@@ -476,7 +476,7 @@ WRITE8_MEMBER(maygay1b_state::m1_lockout_w)
}
}
-static ADDRESS_MAP_START( m1_memmap, AS_PROGRAM, 8, maygay1b_state )
+ADDRESS_MAP_START(maygay1b_state::m1_memmap)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x2000) AM_WRITE(reel12_w)
@@ -561,7 +561,7 @@ WRITE8_MEMBER(maygay1b_state::nec_bank1_w)
m_upd7759->start_w(1);
}
-static ADDRESS_MAP_START( m1_nec_memmap, AS_PROGRAM, 8, maygay1b_state )
+ADDRESS_MAP_START(maygay1b_state::m1_nec_memmap)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x2000) AM_WRITE(reel12_w)
@@ -761,7 +761,7 @@ READ8_MEMBER(maygay1b_state::mcu_port2_r)
return ret;
}
-static ADDRESS_MAP_START( maygay_mcu_io, AS_IO, 8, maygay1b_state )
+ADDRESS_MAP_START(maygay1b_state::maygay_mcu_io)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE( mcu_port0_r, mcu_port0_w )
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE( mcu_port1_w )
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_READWRITE( mcu_port2_r, mcu_port2_w )
diff --git a/src/mame/drivers/maygayep.cpp b/src/mame/drivers/maygayep.cpp
index 0bfec3c8336..b66254022be 100644
--- a/src/mame/drivers/maygayep.cpp
+++ b/src/mame/drivers/maygayep.cpp
@@ -48,6 +48,7 @@ public:
void maygayep(machine_config &config);
+ void maygayep_map(address_map &map);
protected:
// devices
@@ -57,7 +58,7 @@ public:
};
// bp 29e58 in ep_simp reads the 'INITIALISE . . .' string
-static ADDRESS_MAP_START( maygayep_map, AS_PROGRAM, 16, maygayep_state )
+ADDRESS_MAP_START(maygayep_state::maygayep_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE( 0xfe0000, 0xffffff ) AM_RAM // merln at least?
diff --git a/src/mame/drivers/maygaysw.cpp b/src/mame/drivers/maygaysw.cpp
index bef0db0f8d5..3ca68e2b38f 100644
--- a/src/mame/drivers/maygaysw.cpp
+++ b/src/mame/drivers/maygaysw.cpp
@@ -110,11 +110,12 @@ public:
m_maincpu(*this, "maincpu") { }
required_device<cpu_device> m_maincpu;
void maygayew(machine_config &config);
+ void maygayew_map(address_map &map);
};
-static ADDRESS_MAP_START( maygayew_map, AS_PROGRAM, 16, maygayew_state )
+ADDRESS_MAP_START(maygayew_state::maygayew_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("mainrom",0)
AM_RANGE(0x100000, 0x13ffff) AM_ROM AM_REGION("mainrom",0)
AM_RANGE(0x200000, 0x23ffff) AM_ROM AM_REGION("mainrom",0)
diff --git a/src/mame/drivers/maygayv1.cpp b/src/mame/drivers/maygayv1.cpp
index 622eb2e3bb7..19e607477de 100644
--- a/src/mame/drivers/maygayv1.cpp
+++ b/src/mame/drivers/maygayv1.cpp
@@ -257,6 +257,10 @@ public:
DECLARE_WRITE_LINE_MEMBER(duart_irq_handler);
DECLARE_WRITE_LINE_MEMBER(duart_txa);
void maygayv1(machine_config &config);
+ void main_map(address_map &map);
+ void sound_data(address_map &map);
+ void sound_io(address_map &map);
+ void sound_prg(address_map &map);
};
@@ -551,7 +555,7 @@ WRITE16_MEMBER(maygayv1_state::vsync_int_ctrl)
m_maincpu->set_input_line(3, CLEAR_LINE);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, maygayv1_state )
+ADDRESS_MAP_START(maygayv1_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x100000, 0x17ffff) AM_ROM AM_REGION("maincpu", 0x80000)
@@ -643,15 +647,15 @@ WRITE8_MEMBER(maygayv1_state::mcu_w)
}
-static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8, maygayv1_state )
+ADDRESS_MAP_START(maygayv1_state::sound_prg)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_data, AS_DATA, 8, maygayv1_state )
+ADDRESS_MAP_START(maygayv1_state::sound_data)
AM_RANGE(0x0000, 0x1ff) AM_RAM // nothing?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, maygayv1_state )
+ADDRESS_MAP_START(maygayv1_state::sound_io)
AM_RANGE(0x00, 0xff) AM_READWRITE(mcu_r, mcu_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mazerbla.cpp b/src/mame/drivers/mazerbla.cpp
index 8d688222daa..139e083c44d 100644
--- a/src/mame/drivers/mazerbla.cpp
+++ b/src/mame/drivers/mazerbla.cpp
@@ -185,6 +185,15 @@ public:
IRQ_CALLBACK_MEMBER(irq_callback);
void greatgun(machine_config &config);
void mazerbla(machine_config &config);
+ void greatgun_cpu3_io_map(address_map &map);
+ void greatgun_io_map(address_map &map);
+ void greatgun_sound_map(address_map &map);
+ void mazerbla_cpu2_io_map(address_map &map);
+ void mazerbla_cpu2_map(address_map &map);
+ void mazerbla_cpu3_io_map(address_map &map);
+ void mazerbla_cpu3_map(address_map &map);
+ void mazerbla_io_map(address_map &map);
+ void mazerbla_map(address_map &map);
};
@@ -444,14 +453,14 @@ WRITE8_MEMBER(mazerbla_state::sound_int_clear_w)
*
*************************************/
-static ADDRESS_MAP_START( mazerbla_map, AS_PROGRAM, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::mazerbla_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xd800, 0xd800) AM_READ(cfb_zpu_int_req_clr)
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mazerbla_io_map, AS_IO, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::mazerbla_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x4c, 0x4f) AM_READWRITE(ls670_1_r, ls670_0_w)
AM_RANGE(0x60, 0x60) AM_WRITE(zpu_bcd_decoder_w) // AM_READ from protection pal, if populated
@@ -464,21 +473,21 @@ static ADDRESS_MAP_START( mazerbla_io_map, AS_IO, 8, mazerbla_state )
AM_RANGE(0x6e, 0x6f) AM_WRITE(zpu_led_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mazerbla_cpu2_map, AS_PROGRAM, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::mazerbla_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM /* main RAM (stack) */
AM_RANGE(0x8000, 0x83ff) AM_RAM /* waveform ???*/
AM_RANGE(0xc000, 0xc003) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mazerbla_cpu2_io_map, AS_IO, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::mazerbla_cpu2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(vsb_ls273_audio_control_w)
AM_RANGE(0x40, 0x41) AM_WRITENOP
AM_RANGE(0x80, 0x83) AM_READWRITE(ls670_0_r, ls670_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mazerbla_cpu3_map, AS_PROGRAM, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::mazerbla_cpu3_map)
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0x3800, 0x3fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank1") /* GFX roms */
@@ -489,7 +498,7 @@ static ADDRESS_MAP_START( mazerbla_cpu3_map, AS_PROGRAM, 8, mazerbla_state )
AM_RANGE(0xe000, 0xffff) AM_DEVREAD("vcu", mb_vcu_device, load_set_clr)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mazerbla_cpu3_io_map, AS_IO, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::mazerbla_cpu3_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("vcu", mb_vcu_device, background_color_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("vcu", mb_vcu_device, status_r) AM_WRITE(cfb_led_w)
@@ -505,7 +514,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( greatgun_io_map, AS_IO, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::greatgun_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x4c, 0x4c) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x60, 0x60) AM_WRITE(zpu_bcd_decoder_w)
@@ -515,7 +524,7 @@ static ADDRESS_MAP_START( greatgun_io_map, AS_IO, 8, mazerbla_state )
AM_RANGE(0x6e, 0x6f) AM_WRITE(zpu_led_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( greatgun_sound_map, AS_PROGRAM, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::greatgun_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVREAD("ay1", ay8910_device, data_r)
@@ -525,7 +534,7 @@ static ADDRESS_MAP_START( greatgun_sound_map, AS_PROGRAM, 8, mazerbla_state )
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("soundlatch", generic_latch_8_device, acknowledge_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( greatgun_cpu3_io_map, AS_IO, 8, mazerbla_state )
+ADDRESS_MAP_START(mazerbla_state::greatgun_cpu3_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_IMPORT_FROM( mazerbla_cpu3_io_map )
AM_RANGE(0x05, 0x05) AM_DEVWRITE("vcu", mb_vcu_device, vbank_clear_w)
diff --git a/src/mame/drivers/mbc200.cpp b/src/mame/drivers/mbc200.cpp
index 7f2f80fc8b7..c063f46b2e7 100644
--- a/src/mame/drivers/mbc200.cpp
+++ b/src/mame/drivers/mbc200.cpp
@@ -83,6 +83,10 @@ public:
required_device<palette_device> m_palette;
void mbc200(machine_config &config);
+ void mbc200_io(address_map &map);
+ void mbc200_mem(address_map &map);
+ void mbc200_sub_io(address_map &map);
+ void mbc200_sub_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -100,7 +104,7 @@ private:
};
-static ADDRESS_MAP_START(mbc200_mem, AS_PROGRAM, 8, mbc200_state)
+ADDRESS_MAP_START(mbc200_state::mbc200_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_RAM AM_REGION("maincpu", 0)
AM_RANGE( 0x1000, 0xffff ) AM_RAM
@@ -139,7 +143,7 @@ WRITE8_MEMBER( mbc200_state::pm_portb_w )
m_beep->set_state(BIT(data, 1)); // key-click
}
-static ADDRESS_MAP_START( mbc200_io , AS_IO, 8, mbc200_state)
+ADDRESS_MAP_START(mbc200_state::mbc200_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0xe0, 0xe0) AM_DEVREADWRITE("uart1", i8251_device, data_r, data_w)
@@ -153,7 +157,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbc200_sub_mem, AS_PROGRAM, 8, mbc200_state)
+ADDRESS_MAP_START(mbc200_state::mbc200_sub_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x2fff ) AM_ROM
AM_RANGE( 0x3000, 0x7fff ) AM_RAM
@@ -169,7 +173,7 @@ READ8_MEMBER(mbc200_state::p2_porta_r)
return tmp;
}
-static ADDRESS_MAP_START( mbc200_sub_io , AS_IO, 8, mbc200_state)
+ADDRESS_MAP_START(mbc200_state::mbc200_sub_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x70, 0x73) AM_DEVREADWRITE("ppi_1", i8255_device, read, write)
diff --git a/src/mame/drivers/mbc55x.cpp b/src/mame/drivers/mbc55x.cpp
index e85d16a6304..da8898f9339 100644
--- a/src/mame/drivers/mbc55x.cpp
+++ b/src/mame/drivers/mbc55x.cpp
@@ -36,7 +36,7 @@ const unsigned char mbc55x_palette[SCREEN_NO_COLOURS][3] =
};
-static ADDRESS_MAP_START(mbc55x_mem, AS_PROGRAM, 8, mbc55x_state)
+ADDRESS_MAP_START(mbc55x_state::mbc55x_mem)
AM_RANGE( 0x00000, 0x0FFFF ) AM_RAMBANK(RAM_BANK00_TAG)
AM_RANGE( 0x10000, 0x1FFFF ) AM_RAMBANK(RAM_BANK01_TAG)
AM_RANGE( 0x20000, 0x2FFFF ) AM_RAMBANK(RAM_BANK02_TAG)
@@ -58,7 +58,7 @@ static ADDRESS_MAP_START(mbc55x_mem, AS_PROGRAM, 8, mbc55x_state)
AM_RANGE( 0xFC000, 0xFDFFF ) AM_ROM AM_WRITENOP AM_REGION(MAINCPU_TAG, 0x0000) AM_MIRROR(0x002000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbc55x_io, AS_IO, 8, mbc55x_state)
+ADDRESS_MAP_START(mbc55x_state::mbc55x_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x0000, 0x0003) AM_READWRITE(mbcpic8259_r, mbcpic8259_w)
AM_RANGE( 0x0008, 0x000F) AM_READWRITE(mbc55x_disk_r, mbc55x_disk_w)
diff --git a/src/mame/drivers/mbee.cpp b/src/mame/drivers/mbee.cpp
index a0c67f9a964..bc74c257363 100644
--- a/src/mame/drivers/mbee.cpp
+++ b/src/mame/drivers/mbee.cpp
@@ -136,7 +136,7 @@ from Brett Selwood and Andrew Davies.
********************************************************************************/
-static ADDRESS_MAP_START(mbee_mem, AS_PROGRAM, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbee_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xefff) AM_ROM
@@ -144,7 +144,7 @@ static ADDRESS_MAP_START(mbee_mem, AS_PROGRAM, 8, mbee_state)
AM_RANGE(0xf800, 0xffff) AM_READWRITE(video_high_r, video_high_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeeic_mem, AS_PROGRAM, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeeic_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("pak")
@@ -153,7 +153,7 @@ static ADDRESS_MAP_START(mbeeic_mem, AS_PROGRAM, 8, mbee_state)
AM_RANGE(0xf800, 0xffff) AM_READWRITE(video_high_r, video_high_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeepc_mem, AS_PROGRAM, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeepc_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("pak")
@@ -162,7 +162,7 @@ static ADDRESS_MAP_START(mbeepc_mem, AS_PROGRAM, 8, mbee_state)
AM_RANGE(0xf800, 0xffff) AM_READWRITE(video_high_r, video_high_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeeppc_mem, AS_PROGRAM, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeeppc_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("basic")
AM_RANGE(0xa000, 0xbfff) AM_ROM
@@ -172,14 +172,14 @@ static ADDRESS_MAP_START(mbeeppc_mem, AS_PROGRAM, 8, mbee_state)
AM_RANGE(0xf800, 0xffff) AM_READWRITE(video_high_r, video_high_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbee56_mem, AS_PROGRAM, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbee56_mem)
AM_RANGE(0x0000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_READWRITE(video_low_r, video_low_w)
AM_RANGE(0xf800, 0xffff) AM_READWRITE(video_high_r, video_high_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbee256_mem, AS_PROGRAM, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbee256_mem)
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x1000, 0x1fff) AM_READ_BANK("bankr1") AM_WRITE_BANK("bankw1")
AM_RANGE(0x2000, 0x2fff) AM_READ_BANK("bankr2") AM_WRITE_BANK("bankw2")
@@ -198,7 +198,7 @@ static ADDRESS_MAP_START(mbee256_mem, AS_PROGRAM, 8, mbee_state)
AM_RANGE(0xf000, 0xffff) AM_READ_BANK("bankr15") AM_WRITE_BANK("bankw15")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeett_mem, AS_PROGRAM, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeett_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM
@@ -208,7 +208,7 @@ static ADDRESS_MAP_START(mbeett_mem, AS_PROGRAM, 8, mbee_state)
AM_RANGE(0xf800, 0xffff) AM_READWRITE(video_high_r, video_high_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbee_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbee_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_MIRROR(0x10) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
@@ -217,7 +217,7 @@ static ADDRESS_MAP_START(mbee_io, AS_IO, 8, mbee_state)
AM_RANGE(0x0d, 0x0d) AM_MIRROR(0x10) AM_DEVREAD("crtc", mc6845_device, register_r) AM_WRITE(m6545_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeeic_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeeic_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_MIRROR(0x10) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
@@ -229,7 +229,7 @@ static ADDRESS_MAP_START(mbeeic_io, AS_IO, 8, mbee_state)
AM_RANGE(0x0d, 0x0d) AM_MIRROR(0x10) AM_DEVREAD("crtc", mc6845_device, register_r) AM_WRITE(m6545_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeepc_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeepc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0003) AM_MIRROR(0xff10) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
AM_RANGE(0x0008, 0x0008) AM_MIRROR(0xff10) AM_READWRITE(port08_r, port08_w)
@@ -241,7 +241,7 @@ static ADDRESS_MAP_START(mbeepc_io, AS_IO, 8, mbee_state)
AM_RANGE(0x010a, 0x010a) AM_MIRROR(0xfe10) AM_READWRITE(telcom_high_r, port0a_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeeppc_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeeppc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0003) AM_MIRROR(0xff10) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
AM_RANGE(0x0008, 0x0008) AM_MIRROR(0xff10) AM_READWRITE(port08_r, port08_w)
@@ -254,7 +254,7 @@ static ADDRESS_MAP_START(mbeeppc_io, AS_IO, 8, mbee_state)
AM_RANGE(0x010a, 0x010a) AM_MIRROR(0xfe10) AM_READWRITE(telcom_high_r, port0a_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbeett_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbeett_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0003) AM_MIRROR(0xff00) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
AM_RANGE(0x0004, 0x0004) AM_MIRROR(0xff00) AM_WRITE(port04_w)
@@ -273,7 +273,7 @@ static ADDRESS_MAP_START(mbeett_io, AS_IO, 8, mbee_state)
AM_RANGE(0x0068, 0x006f) AM_MIRROR(0xff00) AM_DEVREADWRITE("scc", scc8530_t, reg_r, reg_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbee56_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbee56_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
@@ -286,7 +286,7 @@ static ADDRESS_MAP_START(mbee56_io, AS_IO, 8, mbee_state)
AM_RANGE(0x48, 0x4f) AM_READWRITE(fdc_status_r, fdc_motor_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbee128_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbee128_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
@@ -304,7 +304,7 @@ static ADDRESS_MAP_START(mbee128_io, AS_IO, 8, mbee_state)
AM_RANGE(0x50, 0x57) AM_WRITE(mbee128_50_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mbee256_io, AS_IO, 8, mbee_state)
+ADDRESS_MAP_START(mbee_state::mbee256_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0003) AM_MIRROR(0xff00) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
AM_RANGE(0x0004, 0x0004) AM_MIRROR(0xff00) AM_WRITE(port04_w)
diff --git a/src/mame/drivers/mc10.cpp b/src/mame/drivers/mc10.cpp
index abccddab66b..3e289125fba 100644
--- a/src/mame/drivers/mc10.cpp
+++ b/src/mame/drivers/mc10.cpp
@@ -52,6 +52,10 @@ public:
void alice90(machine_config &config);
void alice32(machine_config &config);
void mc10(machine_config &config);
+ void alice32_mem(address_map &map);
+ void alice90_mem(address_map &map);
+ void mc10_io(address_map &map);
+ void mc10_mem(address_map &map);
protected:
// device-level overrides
virtual void driver_start() override;
@@ -291,7 +295,7 @@ void mc10_state::driver_start()
ADDRESS MAPS
***************************************************************************/
-ADDRESS_MAP_START( mc10_mem, AS_PROGRAM, 8 , mc10_state)
+ADDRESS_MAP_START(mc10_state::mc10_mem)
AM_RANGE(0x0100, 0x3fff) AM_NOP /* unused */
AM_RANGE(0x4000, 0x4fff) AM_RAMBANK("bank1") /* 4k internal ram */
AM_RANGE(0x5000, 0x8fff) AM_RAMBANK("bank2") /* 16k memory expansion */
@@ -300,12 +304,12 @@ ADDRESS_MAP_START( mc10_mem, AS_PROGRAM, 8 , mc10_state)
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("maincpu", 0x0000) /* ROM */
ADDRESS_MAP_END
-ADDRESS_MAP_START( mc10_io, AS_IO, 8 , mc10_state)
+ADDRESS_MAP_START(mc10_state::mc10_io)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READWRITE(mc10_port1_r, mc10_port1_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(mc10_port2_r, mc10_port2_w)
ADDRESS_MAP_END
-ADDRESS_MAP_START( alice32_mem, AS_PROGRAM, 8 , mc10_state)
+ADDRESS_MAP_START(mc10_state::alice32_mem)
AM_RANGE(0x0100, 0x2fff) AM_NOP /* unused */
AM_RANGE(0x3000, 0x4fff) AM_RAMBANK("bank1") /* 8k internal ram */
AM_RANGE(0x5000, 0x8fff) AM_RAMBANK("bank2") /* 16k memory expansion */
@@ -315,7 +319,7 @@ ADDRESS_MAP_START( alice32_mem, AS_PROGRAM, 8 , mc10_state)
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("maincpu", 0x0000) /* ROM */
ADDRESS_MAP_END
-ADDRESS_MAP_START( alice90_mem, AS_PROGRAM, 8 , mc10_state)
+ADDRESS_MAP_START(mc10_state::alice90_mem)
AM_RANGE(0x0100, 0x2fff) AM_NOP /* unused */
AM_RANGE(0x3000, 0xafff) AM_RAMBANK("bank1") /* 32k internal ram */
AM_RANGE(0xbf20, 0xbf29) AM_DEVREADWRITE("ef9345", ef9345_device, data_r, data_w)
diff --git a/src/mame/drivers/mc1000.cpp b/src/mame/drivers/mc1000.cpp
index c7a3d3f7e2e..4dc228508de 100644
--- a/src/mame/drivers/mc1000.cpp
+++ b/src/mame/drivers/mc1000.cpp
@@ -123,6 +123,9 @@ public:
DECLARE_DRIVER_INIT(mc1000);
TIMER_DEVICE_CALLBACK_MEMBER(ne555_tick);
void mc1000(machine_config &config);
+ void mc1000_banking_mem(address_map &map);
+ void mc1000_io(address_map &map);
+ void mc1000_mem(address_map &map);
};
/* Memory Banking */
@@ -229,7 +232,7 @@ WRITE8_MEMBER( mc1000_state::mc6847_attr_w )
/* Memory Maps */
-static ADDRESS_MAP_START( mc1000_mem, AS_PROGRAM, 8, mc1000_state )
+ADDRESS_MAP_START(mc1000_state::mc1000_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1")
AM_RANGE(0x2000, 0x27ff) AM_RAMBANK("bank2") AM_SHARE("mc6845_vram")
AM_RANGE(0x2800, 0x3fff) AM_RAM AM_SHARE("ram2800")
@@ -239,7 +242,7 @@ static ADDRESS_MAP_START( mc1000_mem, AS_PROGRAM, 8, mc1000_state )
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION(Z80_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mc1000_banking_mem, AS_OPCODES, 8, mc1000_state )
+ADDRESS_MAP_START(mc1000_state::mc1000_banking_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1")
AM_RANGE(0x2000, 0x27ff) AM_RAMBANK("bank2") AM_SHARE("mc6845_vram")
AM_RANGE(0x2800, 0x3fff) AM_RAM AM_SHARE("ram2800")
@@ -249,7 +252,7 @@ static ADDRESS_MAP_START( mc1000_banking_mem, AS_OPCODES, 8, mc1000_state )
AM_RANGE(0xc000, 0xffff) AM_READ(rom_banking_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mc1000_io, AS_IO, 8, mc1000_state )
+ADDRESS_MAP_START(mc1000_state::mc1000_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x04) AM_READWRITE(printer_r, printer_w)
AM_RANGE(0x05, 0x05) AM_DEVWRITE("cent_data_out", output_latch_device, write)
@@ -538,7 +541,7 @@ MACHINE_CONFIG_START(mc1000_state::mc1000)
/* basic machine hardware */
MCFG_CPU_ADD(Z80_TAG, Z80, 3579545)
MCFG_CPU_PROGRAM_MAP(mc1000_mem)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(mc1000_banking_mem)
+ MCFG_CPU_OPCODES_MAP(mc1000_banking_mem)
MCFG_CPU_IO_MAP(mc1000_io)
/* timers */
diff --git a/src/mame/drivers/mc1502.cpp b/src/mame/drivers/mc1502.cpp
index 27cc0b5c801..22273754d9b 100644
--- a/src/mame/drivers/mc1502.cpp
+++ b/src/mame/drivers/mc1502.cpp
@@ -228,12 +228,12 @@ MACHINE_RESET_MEMBER(mc1502_state, mc1502)
* macros
*/
-static ADDRESS_MAP_START( mc1502_map, AS_PROGRAM, 8, mc1502_state )
+ADDRESS_MAP_START(mc1502_state::mc1502_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mc1502_io, AS_IO, 8, mc1502_state )
+ADDRESS_MAP_START(mc1502_state::mc1502_io)
AM_RANGE(0x0020, 0x0021) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
AM_RANGE(0x0028, 0x0028) AM_DEVREADWRITE("upd8251", i8251_device, data_r, data_w)
AM_RANGE(0x0029, 0x0029) AM_DEVREADWRITE("upd8251", i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/mc8020.cpp b/src/mame/drivers/mc8020.cpp
index cb84603ac59..089305b2335 100644
--- a/src/mame/drivers/mc8020.cpp
+++ b/src/mame/drivers/mc8020.cpp
@@ -39,6 +39,8 @@ public:
uint32_t screen_update_mc8020(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void mc8020(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
u8 m_row;
required_shared_ptr<u8> m_p_videoram;
@@ -46,7 +48,7 @@ private:
required_ioport_array<7> m_keyboard;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, mc8020_state )
+ADDRESS_MAP_START(mc8020_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0fff) AM_RAM AM_SHARE("videoram")// 1KB RAM ZRE
@@ -54,7 +56,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, mc8020_state )
AM_RANGE(0x6000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, mc8020_state )
+ADDRESS_MAP_START(mc8020_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
diff --git a/src/mame/drivers/mc8030.cpp b/src/mame/drivers/mc8030.cpp
index bbf10ff4092..c3fdfbe6a42 100644
--- a/src/mame/drivers/mc8030.cpp
+++ b/src/mame/drivers/mc8030.cpp
@@ -51,13 +51,15 @@ public:
uint32_t screen_update_mc8030(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void mc8030(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_region_ptr<u8> m_p_videoram;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, mc8030_state )
+ADDRESS_MAP_START(mc8030_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
// ZRE 4 * 2KB
AM_RANGE(0x0000, 0x1fff) AM_ROM // ZRE ROM's 4 * 2716
@@ -67,7 +69,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, mc8030_state )
AM_RANGE(0xc000, 0xffff) AM_RAM // ZRE RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, mc8030_state )
+ADDRESS_MAP_START(mc8030_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x30, 0x3f) AM_MIRROR(0xff00) AM_NOP //"mass storage"
AM_RANGE(0x80, 0x83) AM_MIRROR(0xff00) AM_DEVREADWRITE("zve_ctc", z80ctc_device, read, write) // user CTC
diff --git a/src/mame/drivers/mcatadv.cpp b/src/mame/drivers/mcatadv.cpp
index 9abd192aa16..aed96e3a0df 100644
--- a/src/mame/drivers/mcatadv.cpp
+++ b/src/mame/drivers/mcatadv.cpp
@@ -175,7 +175,7 @@ READ16_MEMBER(mcatadv_state::mcat_wd_r)
}
-static ADDRESS_MAP_START( mcatadv_map, AS_PROGRAM, 16, mcatadv_state )
+ADDRESS_MAP_START(mcatadv_state::mcatadv_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
@@ -214,7 +214,7 @@ WRITE8_MEMBER(mcatadv_state::mcatadv_sound_bw_w)
}
-static ADDRESS_MAP_START( mcatadv_sound_map, AS_PROGRAM, 8, mcatadv_state )
+ADDRESS_MAP_START(mcatadv_state::mcatadv_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM
AM_RANGE(0x4000, 0xbfff) AM_ROMBANK("bank1") // ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM
@@ -222,19 +222,19 @@ static ADDRESS_MAP_START( mcatadv_sound_map, AS_PROGRAM, 8, mcatadv_state )
AM_RANGE(0xf000, 0xf000) AM_WRITE(mcatadv_sound_bw_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcatadv_sound_io_map, AS_IO, 8, mcatadv_state )
+ADDRESS_MAP_START(mcatadv_state::mcatadv_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nost_sound_map, AS_PROGRAM, 8, mcatadv_state )
+ADDRESS_MAP_START(mcatadv_state::nost_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nost_sound_io_map, AS_IO, 8, mcatadv_state )
+ADDRESS_MAP_START(mcatadv_state::nost_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVWRITE("ymsnd", ym2610_device, write)
AM_RANGE(0x04, 0x07) AM_DEVREAD("ymsnd", ym2610_device, read)
diff --git a/src/mame/drivers/mcb216.cpp b/src/mame/drivers/mcb216.cpp
index 61dc8ae4680..735e3f41982 100644
--- a/src/mame/drivers/mcb216.cpp
+++ b/src/mame/drivers/mcb216.cpp
@@ -54,25 +54,28 @@ public:
void mcb216(machine_config &config);
void cb308(machine_config &config);
+ void cb308_mem(address_map &map);
+ void mcb216_io(address_map &map);
+ void mcb216_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<ay31015_device> m_uart;
};
-static ADDRESS_MAP_START(mcb216_mem, AS_PROGRAM, 8, mcb216_state)
+ADDRESS_MAP_START(mcb216_state::mcb216_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x2400, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mcb216_io, AS_IO, 8, mcb216_state)
+ADDRESS_MAP_START(mcb216_state::mcb216_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(port00_r)
AM_RANGE(0x01, 0x01) AM_READWRITE(port01_r,port01_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(cb308_mem, AS_PROGRAM, 8, mcb216_state)
+ADDRESS_MAP_START(mcb216_state::cb308_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_ROM AM_REGION("roms", 0)
diff --git a/src/mame/drivers/mccpm.cpp b/src/mame/drivers/mccpm.cpp
index f7c34e32f03..830b0d147b9 100644
--- a/src/mame/drivers/mccpm.cpp
+++ b/src/mame/drivers/mccpm.cpp
@@ -44,6 +44,8 @@ public:
{ }
void mccpm(machine_config &config);
+ void mccpm_io(address_map &map);
+ void mccpm_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -51,12 +53,12 @@ private:
};
-static ADDRESS_MAP_START(mccpm_mem, AS_PROGRAM, 8, mccpm_state)
+ADDRESS_MAP_START(mccpm_state::mccpm_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mccpm_io, AS_IO, 8, mccpm_state)
+ADDRESS_MAP_START(mccpm_state::mccpm_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("sio", z80sio_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/mcr.cpp b/src/mame/drivers/mcr.cpp
index 5fc07e1a87b..8b001a50b87 100644
--- a/src/mame/drivers/mcr.cpp
+++ b/src/mame/drivers/mcr.cpp
@@ -691,7 +691,7 @@ WRITE8_MEMBER(mcr_state::demoderb_op4_w)
*************************************/
/* address map verified from schematics */
-static ADDRESS_MAP_START( cpu_90009_map, AS_PROGRAM, 8, mcr_state )
+ADDRESS_MAP_START(mcr_state::cpu_90009_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x77ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("nvram")
@@ -702,7 +702,7 @@ static ADDRESS_MAP_START( cpu_90009_map, AS_PROGRAM, 8, mcr_state )
ADDRESS_MAP_END
/* upper I/O map determined by PAL; only SSIO ports are verified from schematics */
-static ADDRESS_MAP_START( cpu_90009_portmap, AS_IO, 8, mcr_state )
+ADDRESS_MAP_START(mcr_state::cpu_90009_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
SSIO_INPUT_PORTS("ssio")
@@ -720,7 +720,7 @@ ADDRESS_MAP_END
*************************************/
/* address map verified from schematics */
-static ADDRESS_MAP_START( cpu_90010_map, AS_PROGRAM, 8, mcr_state )
+ADDRESS_MAP_START(mcr_state::cpu_90010_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("nvram")
@@ -729,7 +729,7 @@ static ADDRESS_MAP_START( cpu_90010_map, AS_PROGRAM, 8, mcr_state )
ADDRESS_MAP_END
/* upper I/O map determined by PAL; only SSIO ports are verified from schematics */
-static ADDRESS_MAP_START( cpu_90010_portmap, AS_IO, 8, mcr_state )
+ADDRESS_MAP_START(mcr_state::cpu_90010_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
SSIO_INPUT_PORTS("ssio")
@@ -747,7 +747,7 @@ ADDRESS_MAP_END
*************************************/
/* address map verified from schematics */
-static ADDRESS_MAP_START( cpu_91490_map, AS_PROGRAM, 8, mcr_state )
+ADDRESS_MAP_START(mcr_state::cpu_91490_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram")
@@ -757,7 +757,7 @@ static ADDRESS_MAP_START( cpu_91490_map, AS_PROGRAM, 8, mcr_state )
ADDRESS_MAP_END
/* upper I/O map determined by PAL; only SSIO ports are verified from schematics */
-static ADDRESS_MAP_START( cpu_91490_portmap, AS_IO, 8, mcr_state )
+ADDRESS_MAP_START(mcr_state::cpu_91490_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
SSIO_INPUT_PORTS("ssio")
@@ -775,14 +775,14 @@ ADDRESS_MAP_END
*************************************/
/* address map verified from schematics */
-static ADDRESS_MAP_START( ipu_91695_map, AS_PROGRAM, 8, mcr_nflfoot_state )
+ADDRESS_MAP_START(mcr_nflfoot_state::ipu_91695_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
/* I/O verified from schematics */
-static ADDRESS_MAP_START( ipu_91695_portmap, AS_IO, 8, mcr_nflfoot_state )
+ADDRESS_MAP_START(mcr_nflfoot_state::ipu_91695_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0xe0) AM_DEVREADWRITE("ipu_pio0", z80pio_device, read, write)
diff --git a/src/mame/drivers/mcr3.cpp b/src/mame/drivers/mcr3.cpp
index f72bf246631..301c2e74cbc 100644
--- a/src/mame/drivers/mcr3.cpp
+++ b/src/mame/drivers/mcr3.cpp
@@ -481,7 +481,7 @@ READ8_MEMBER(mcr3_state::turbotag_kludge_r)
*************************************/
/* address map verified from schematics */
-static ADDRESS_MAP_START( mcrmono_map, AS_PROGRAM, 8, mcr3_state )
+ADDRESS_MAP_START(mcr3_state::mcrmono_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram")
@@ -493,7 +493,7 @@ static ADDRESS_MAP_START( mcrmono_map, AS_PROGRAM, 8, mcr3_state )
ADDRESS_MAP_END
/* I/O map verified from schematics */
-static ADDRESS_MAP_START( mcrmono_portmap, AS_IO, 8, mcr3_state )
+ADDRESS_MAP_START(mcr3_state::mcrmono_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x78) AM_READ_PORT("MONO.IP0")
@@ -515,7 +515,7 @@ ADDRESS_MAP_END
*************************************/
/* address map verified from schematics */
-static ADDRESS_MAP_START( spyhunt_map, AS_PROGRAM, 8, mcr3_state )
+ADDRESS_MAP_START(mcr3_state::spyhunt_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(spyhunt_videoram_w) AM_SHARE("videoram")
@@ -526,7 +526,7 @@ static ADDRESS_MAP_START( spyhunt_map, AS_PROGRAM, 8, mcr3_state )
ADDRESS_MAP_END
/* upper I/O map determined by PAL; only SSIO ports and scroll registers are verified from schematics */
-static ADDRESS_MAP_START( spyhunt_portmap, AS_IO, 8, mcr3_state )
+ADDRESS_MAP_START(mcr3_state::spyhunt_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
SSIO_INPUT_PORTS("ssio")
diff --git a/src/mame/drivers/mcr68.cpp b/src/mame/drivers/mcr68.cpp
index 6a4f7983d25..4a687cad66e 100644
--- a/src/mame/drivers/mcr68.cpp
+++ b/src/mame/drivers/mcr68.cpp
@@ -273,7 +273,7 @@ READ16_MEMBER(mcr68_state::trisport_port_1_r)
*
*************************************/
-static ADDRESS_MAP_START( mcr68_map, AS_PROGRAM, 16, mcr68_state )
+ADDRESS_MAP_START(mcr68_state::mcr68_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
@@ -297,7 +297,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( pigskin_map, AS_PROGRAM, 16, mcr68_state )
+ADDRESS_MAP_START(mcr68_state::pigskin_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
@@ -322,7 +322,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( trisport_map, AS_PROGRAM, 16, mcr68_state )
+ADDRESS_MAP_START(mcr68_state::trisport_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
diff --git a/src/mame/drivers/meadows.cpp b/src/mame/drivers/meadows.cpp
index d7327b97843..acf8f0ad914 100644
--- a/src/mame/drivers/meadows.cpp
+++ b/src/mame/drivers/meadows.cpp
@@ -323,7 +323,7 @@ INTERRUPT_GEN_MEMBER(meadows_state::audio_interrupt)
*
*************************************/
-static ADDRESS_MAP_START( meadows_main_map, AS_PROGRAM, 8, meadows_state )
+ADDRESS_MAP_START(meadows_state::meadows_main_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("INPUTS")
AM_RANGE(0x0c01, 0x0c01) AM_READ_PORT("STICK")
@@ -336,7 +336,7 @@ static ADDRESS_MAP_START( meadows_main_map, AS_PROGRAM, 8, meadows_state )
AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(meadows_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bowl3d_main_map, AS_PROGRAM, 8, meadows_state )
+ADDRESS_MAP_START(meadows_state::bowl3d_main_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("INPUTS1")
AM_RANGE(0x0c01, 0x0c01) AM_READ_PORT("INPUTS2")
@@ -349,7 +349,7 @@ static ADDRESS_MAP_START( bowl3d_main_map, AS_PROGRAM, 8, meadows_state )
AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(meadows_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( minferno_main_map, AS_PROGRAM, 8, meadows_state )
+ADDRESS_MAP_START(meadows_state::minferno_main_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x1c00, 0x1eff) AM_RAM_WRITE(meadows_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1f00, 0x1f00) AM_READ_PORT("JOY1")
@@ -362,7 +362,7 @@ static ADDRESS_MAP_START( minferno_main_map, AS_PROGRAM, 8, meadows_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( minferno_data_map, AS_DATA, 8, meadows_state )
+ADDRESS_MAP_START(meadows_state::minferno_data_map)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
@@ -374,7 +374,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, meadows_state )
+ADDRESS_MAP_START(meadows_state::audio_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0c03) AM_READWRITE(audio_hardware_r, audio_hardware_w)
AM_RANGE(0x0e00, 0x0eff) AM_RAM
diff --git a/src/mame/drivers/mediagx.cpp b/src/mame/drivers/mediagx.cpp
index 3e463fcf16d..58d16ec7b8c 100644
--- a/src/mame/drivers/mediagx.cpp
+++ b/src/mame/drivers/mediagx.cpp
@@ -191,6 +191,9 @@ public:
void install_speedups(const speedup_entry *entries, int count);
void init_mediagx();
void mediagx(machine_config &config);
+ void mediagx_io(address_map &map);
+ void mediagx_map(address_map &map);
+ void ramdac_map(address_map &map);
};
// Display controller registers
@@ -744,7 +747,7 @@ WRITE32_MEMBER(mediagx_state::ad1847_w)
/*****************************************************************************/
-static ADDRESS_MAP_START( mediagx_map, AS_PROGRAM, 32, mediagx_state )
+ADDRESS_MAP_START(mediagx_state::mediagx_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x000a0000, 0x000affff) AM_RAM
AM_RANGE(0x000b0000, 0x000b7fff) AM_RAM AM_SHARE("cga_ram")
@@ -757,7 +760,7 @@ static ADDRESS_MAP_START( mediagx_map, AS_PROGRAM, 32, mediagx_state )
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mediagx_io, AS_IO, 32, mediagx_state )
+ADDRESS_MAP_START(mediagx_state::mediagx_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0020, 0x0023) AM_READWRITE8(io20_r, io20_w, 0xffff0000)
AM_RANGE(0x00e8, 0x00eb) AM_NOP // I/O delay port
@@ -868,7 +871,7 @@ void mediagx_state::machine_reset()
dmadac_enable(&m_dmadac[0], 2, 1);
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, mediagx_state )
+ADDRESS_MAP_START(mediagx_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/megadriv_acbl.cpp b/src/mame/drivers/megadriv_acbl.cpp
index bfb91265a5b..8287e9edf75 100644
--- a/src/mame/drivers/megadriv_acbl.cpp
+++ b/src/mame/drivers/megadriv_acbl.cpp
@@ -264,7 +264,7 @@ connector, but of course, I can be wrong.
/************************************ Megadrive Bootlegs *************************************/
// smaller ROM region because some bootlegs check for RAM there (used by topshoot and hshavoc)
-static ADDRESS_MAP_START( md_bootleg_map, AS_PROGRAM, 16, md_boot_state )
+ADDRESS_MAP_START(md_boot_state::md_bootleg_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* Cartridge Program Rom */
AM_RANGE(0x200000, 0x2023ff) AM_RAM // tested
diff --git a/src/mame/drivers/megadriv_rad.cpp b/src/mame/drivers/megadriv_rad.cpp
index 2b97d4bffdf..fd48cd63078 100644
--- a/src/mame/drivers/megadriv_rad.cpp
+++ b/src/mame/drivers/megadriv_rad.cpp
@@ -24,7 +24,7 @@
#include "includes/megadriv_rad.h"
// todo, use actual MD map, easier once maps are part of base class.
-static ADDRESS_MAP_START( megadriv_radica_map, AS_PROGRAM, 16, megadriv_radica_state )
+ADDRESS_MAP_START(megadriv_radica_state::megadriv_radica_map)
AM_RANGE(0x000000, 0x3fffff) AM_READ(read) /* Cartridge Program Rom */
AM_RANGE(0xa00000, 0xa01fff) AM_READWRITE(megadriv_68k_read_z80_ram, megadriv_68k_write_z80_ram)
AM_RANGE(0xa02000, 0xa03fff) AM_WRITE(megadriv_68k_write_z80_ram)
diff --git a/src/mame/drivers/megaphx.cpp b/src/mame/drivers/megaphx.cpp
index d79db75989c..f1a14bbf21d 100644
--- a/src/mame/drivers/megaphx.cpp
+++ b/src/mame/drivers/megaphx.cpp
@@ -110,6 +110,7 @@ public:
DECLARE_DRIVER_INIT(megaphx);
void megaphx(machine_config &config);
+ void megaphx_68k_map(address_map &map);
protected:
virtual void machine_reset() override;
@@ -150,7 +151,7 @@ void hamboy_state::machine_reset()
m_indervid->set_bpp(4);
}
-static ADDRESS_MAP_START( megaphx_68k_map, AS_PROGRAM, 16, megaphx_state )
+ADDRESS_MAP_START(megaphx_state::megaphx_68k_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("boot", 0x00000) // or the rom doesn't map here? it contains the service mode grid amongst other things..
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("mainram") // maps over part of the rom??
AM_RANGE(0x040000, 0x040007) AM_DEVREADWRITE("inder_vid:tms", tms34010_device, host_r, host_w)
diff --git a/src/mame/drivers/megaplay.cpp b/src/mame/drivers/megaplay.cpp
index 717cb695384..df6e5e84d83 100644
--- a/src/mame/drivers/megaplay.cpp
+++ b/src/mame/drivers/megaplay.cpp
@@ -89,6 +89,8 @@ public:
uint32_t screen_update_megplay(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void megaplay(machine_config &config);
+ void megaplay_bios_io_map(address_map &map);
+ void megaplay_bios_map(address_map &map);
private:
uint32_t m_bios_mode; // determines whether ROM banks or Game data is to read from 0x8000-0xffff
@@ -585,7 +587,7 @@ WRITE8_MEMBER(mplay_state::game_w)
logerror("BIOS bank addr = %X\n", m_bios_bank_addr);
}
-static ADDRESS_MAP_START( megaplay_bios_map, AS_PROGRAM, 8, mplay_state )
+ADDRESS_MAP_START(mplay_state::megaplay_bios_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_RAM
AM_RANGE(0x5000, 0x5fff) AM_RAM
@@ -608,7 +610,7 @@ READ8_MEMBER(mplay_state::vdp1_count_r)
return m_vdp1->vcount_read(prg, offset);
}
-static ADDRESS_MAP_START( megaplay_bios_io_map, AS_IO, 8, mplay_state )
+ADDRESS_MAP_START(mplay_state::megaplay_bios_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("sn2", sn76496_device, write)
diff --git a/src/mame/drivers/megasys1.cpp b/src/mame/drivers/megasys1.cpp
index 4e01d16c7b6..ba6c05cf5b0 100644
--- a/src/mame/drivers/megasys1.cpp
+++ b/src/mame/drivers/megasys1.cpp
@@ -201,7 +201,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(megasys1_state::megasys1A_iganinju_scanline)
m_maincpu->set_input_line(2, HOLD_LINE);
}
-static ADDRESS_MAP_START( megasys1Z_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1Z_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM")
@@ -219,7 +219,7 @@ static ADDRESS_MAP_START( megasys1Z_map, AS_PROGRAM, 16, megasys1_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(ram_w) AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megasys1A_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1A_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_IMPORT_FROM(megasys1Z_map)
AM_RANGE(0x080008, 0x080009) AM_DEVREAD("soundlatch2", generic_latch_16_device, read) /* from sound cpu */
@@ -299,7 +299,7 @@ WRITE16_MEMBER(megasys1_state::ip_select_w) // TO MCU
}
-static ADDRESS_MAP_START( megasys1B_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1B_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x044000, 0x044001) AM_WRITE(active_layers_w)
@@ -319,7 +319,7 @@ static ADDRESS_MAP_START( megasys1B_map, AS_PROGRAM, 16, megasys1_state )
AM_RANGE(0x0e0000, 0x0e0001) AM_READWRITE(ip_select_r,ip_select_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megasys1B_edfbl_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1B_edfbl_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_IMPORT_FROM(megasys1B_map)
AM_RANGE(0x0e0002, 0x0e0003) AM_READ_PORT("SYSTEM")
@@ -330,7 +330,7 @@ static ADDRESS_MAP_START( megasys1B_edfbl_map, AS_PROGRAM, 16, megasys1_state )
//AM_RANGE(0x0e000e, 0x0e000f) AM_WRITE(soundlatch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megasys1B_monkelf_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1B_monkelf_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_IMPORT_FROM(megasys1B_map)
AM_RANGE(0x044200, 0x044205) AM_WRITE(monkelf_scroll0_w)
@@ -364,7 +364,7 @@ WRITE16_MEMBER(megasys1_state::ram_w )
}
-static ADDRESS_MAP_START( megasys1C_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1C_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x0c2000, 0x0c2005) AM_DEVWRITE("scroll0", megasys1_tilemap_device, scroll_w)
@@ -395,7 +395,7 @@ INTERRUPT_GEN_MEMBER(megasys1_state::megasys1D_irq)
device.execute().set_input_line(2, HOLD_LINE);
}
-static ADDRESS_MAP_START( megasys1D_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1D_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0c2000, 0x0c2005) AM_DEVWRITE("scroll0", megasys1_tilemap_device, scroll_w)
AM_RANGE(0x0c2008, 0x0c200d) AM_DEVWRITE("scroll1", megasys1_tilemap_device, scroll_w)
@@ -414,7 +414,7 @@ static ADDRESS_MAP_START( megasys1D_map, AS_PROGRAM, 16, megasys1_state )
AM_RANGE(0x1f0000, 0x1fffff) AM_RAM /*_WRITE(ram_w)*/ AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megasys1D_oki_map, 0, 8, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1D_oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
@@ -503,7 +503,7 @@ READ8_MEMBER(megasys1_state::oki_status_2_r)
***************************************************************************/
-static ADDRESS_MAP_START( megasys1A_sound_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1A_sound_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x040001) AM_DEVREAD("soundlatch", generic_latch_16_device, read)
AM_RANGE(0x060000, 0x060001) AM_DEVWRITE("soundlatch2", generic_latch_16_device, write) // to main cpu
@@ -515,7 +515,7 @@ static ADDRESS_MAP_START( megasys1A_sound_map, AS_PROGRAM, 16, megasys1_state )
AM_RANGE(0x0e0000, 0x0fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kickoffb_sound_map, AS_PROGRAM, 16, megasys1_state ) // TODO: wrong, needs to be checked range for range
+ADDRESS_MAP_START(megasys1_state::kickoffb_sound_map) // TODO: wrong, needs to be checked range for range
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x040001) AM_DEVREAD("soundlatch", generic_latch_16_device, read)
AM_RANGE(0x060000, 0x060001) AM_DEVWRITE("soundlatch2", generic_latch_16_device, write) // to main cpu
@@ -531,7 +531,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( megasys1B_sound_map, AS_PROGRAM, 16, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::megasys1B_sound_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x040001) AM_DEVREAD("soundlatch", generic_latch_16_device, read) AM_DEVWRITE("soundlatch2", generic_latch_16_device, write) /* from/to main cpu */
AM_RANGE(0x060000, 0x060001) AM_DEVREAD("soundlatch", generic_latch_16_device, read) AM_DEVWRITE("soundlatch2", generic_latch_16_device, write) /* from/to main cpu */
@@ -550,14 +550,14 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::z80_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch_z", generic_latch_8_device, read)
AM_RANGE(0xf000, 0xf000) AM_WRITENOP /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_sound_io_map, AS_IO, 8, megasys1_state )
+ADDRESS_MAP_START(megasys1_state::z80_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/megatech.cpp b/src/mame/drivers/megatech.cpp
index 3fae3dcb2c2..4ae65590bd2 100644
--- a/src/mame/drivers/megatech.cpp
+++ b/src/mame/drivers/megatech.cpp
@@ -145,6 +145,8 @@ public:
void megatech(machine_config &config);
void megatech_multislot(machine_config &config);
void megatech_fixedslot(machine_config &config);
+ void megatech_bios_map(address_map &map);
+ void megatech_bios_portmap(address_map &map);
private:
uint8_t m_mt_cart_select_reg;
uint32_t m_bios_port_ctrl;
@@ -520,7 +522,7 @@ WRITE8_MEMBER(mtech_state::banked_ram_w )
-static ADDRESS_MAP_START( megatech_bios_map, AS_PROGRAM, 8, mtech_state )
+ADDRESS_MAP_START(mtech_state::megatech_bios_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM // from bios rom (0x0000-0x2fff populated in ROM)
AM_RANGE(0x3000, 0x3fff) AM_READWRITE(banked_ram_r, banked_ram_w) // copies instruction data here at startup, must be banked
AM_RANGE(0x4000, 0x5fff) AM_RAM // plain ram?
@@ -574,7 +576,7 @@ READ8_MEMBER(mtech_state::vdp1_count_r)
return m_vdp1->vcount_read(prg, offset);
}
-static ADDRESS_MAP_START( megatech_bios_portmap, AS_IO, 8, mtech_state )
+ADDRESS_MAP_START(mtech_state::megatech_bios_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x3f, 0x3f) AM_WRITE(bios_port_ctrl_w)
AM_RANGE(0x7f, 0x7f) AM_WRITE(bios_port_7f_w)
diff --git a/src/mame/drivers/megazone.cpp b/src/mame/drivers/megazone.cpp
index 1eaa6f53a32..66fca566e9b 100644
--- a/src/mame/drivers/megazone.cpp
+++ b/src/mame/drivers/megazone.cpp
@@ -143,7 +143,7 @@ WRITE_LINE_MEMBER(megazone_state::irq_mask_w)
}
-static ADDRESS_MAP_START( megazone_map, AS_PROGRAM, 8, megazone_state )
+ADDRESS_MAP_START(megazone_state::megazone_map)
AM_RANGE(0x0000, 0x0007) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x1000, 0x1000) AM_WRITEONLY AM_SHARE("scrolly")
@@ -157,7 +157,7 @@ static ADDRESS_MAP_START( megazone_map, AS_PROGRAM, 8, megazone_state )
AM_RANGE(0x4000, 0xffff) AM_ROM /* 4000->5FFF is a debug rom */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megazone_sound_map, AS_PROGRAM, 8, megazone_state )
+ADDRESS_MAP_START(megazone_state::megazone_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x2000) AM_WRITE(megazone_i8039_irq_w) /* START line. Interrupts 8039 */
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("soundlatch", generic_latch_8_device, write) /* CODE line. Command Interrupts 8039 */
@@ -172,18 +172,18 @@ static ADDRESS_MAP_START( megazone_sound_map, AS_PROGRAM, 8, megazone_state )
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megazone_sound_io_map, AS_IO, 8, megazone_state )
+ADDRESS_MAP_START(megazone_state::megazone_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0x00, 0x02) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("aysnd", ay8910_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megazone_i8039_map, AS_PROGRAM, 8, megazone_state )
+ADDRESS_MAP_START(megazone_state::megazone_i8039_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megazone_i8039_io_map, AS_IO, 8, megazone_state )
+ADDRESS_MAP_START(megazone_state::megazone_i8039_io_map)
AM_RANGE(0x00, 0xff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/meijinsn.cpp b/src/mame/drivers/meijinsn.cpp
index a812c2088e8..5ccd9ccae50 100644
--- a/src/mame/drivers/meijinsn.cpp
+++ b/src/mame/drivers/meijinsn.cpp
@@ -107,6 +107,9 @@ public:
uint32_t screen_update_meijinsn(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_DEVICE_CALLBACK_MEMBER(meijinsn_interrupt);
void meijinsn(machine_config &config);
+ void meijinsn_map(address_map &map);
+ void meijinsn_sound_io_map(address_map &map);
+ void meijinsn_sound_map(address_map &map);
};
@@ -186,7 +189,7 @@ READ16_MEMBER(meijinsn_state::alpha_mcu_r)
-static ADDRESS_MAP_START( meijinsn_map, AS_PROGRAM, 16, meijinsn_state )
+ADDRESS_MAP_START(meijinsn_state::meijinsn_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080e00, 0x080fff) AM_READ(alpha_mcu_r) AM_WRITENOP
AM_RANGE(0x100000, 0x107fff) AM_RAM AM_SHARE("videoram")
@@ -197,12 +200,12 @@ static ADDRESS_MAP_START( meijinsn_map, AS_PROGRAM, 16, meijinsn_state )
AM_RANGE(0x1a0000, 0x1a0001) AM_READ_PORT("P1") AM_WRITE(sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meijinsn_sound_map, AS_PROGRAM, 8, meijinsn_state )
+ADDRESS_MAP_START(meijinsn_state::meijinsn_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meijinsn_sound_io_map, AS_IO, 8, meijinsn_state )
+ADDRESS_MAP_START(meijinsn_state::meijinsn_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/mekd2.cpp b/src/mame/drivers/mekd2.cpp
index b727eb64ddd..e98533f2520 100644
--- a/src/mame/drivers/mekd2.cpp
+++ b/src/mame/drivers/mekd2.cpp
@@ -115,6 +115,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(mekd2_p);
void mekd2(machine_config &config);
+ void mekd2_mem(address_map &map);
private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
uint8_t m_cass_data[4];
@@ -138,7 +139,7 @@ private:
************************************************************/
-static ADDRESS_MAP_START( mekd2_mem , AS_PROGRAM, 8, mekd2_state)
+ADDRESS_MAP_START(mekd2_state::mekd2_mem)
AM_RANGE(0x0000, 0x00ff) AM_RAM // user ram
AM_RANGE(0x8004, 0x8007) AM_DEVREADWRITE("pia_u", pia6821_device, read, write)
AM_RANGE(0x8008, 0x8009) AM_DEVREADWRITE("acia", acia6850_device, read, write)
diff --git a/src/mame/drivers/mephisto.cpp b/src/mame/drivers/mephisto.cpp
index 3fb219146d6..75768a46e89 100644
--- a/src/mame/drivers/mephisto.cpp
+++ b/src/mame/drivers/mephisto.cpp
@@ -120,6 +120,9 @@ public:
void mm4tk(machine_config &config);
void mm2(machine_config &config);
void mephisto(machine_config &config);
+ void mephisto_mem(address_map &map);
+ void mm2_mem(address_map &map);
+ void rebel5_mem(address_map &map);
protected:
required_ioport m_key1_0;
required_ioport m_key1_1;
@@ -219,7 +222,7 @@ WRITE8_MEMBER( mephisto_state::write_led_mm2 )
m_led7= BIT(data, 7) ? 0xff :0x00; //MM2
}
-static ADDRESS_MAP_START( rebel5_mem, AS_PROGRAM, 8, mephisto_state )
+ADDRESS_MAP_START(mephisto_state::rebel5_mem)
AM_RANGE( 0x0000, 0x1fff) AM_RAM // AM_BASE(m_p_ram)
AM_RANGE( 0x2000, 0x2007) AM_WRITE(write_led) // Status LEDs+ buzzer
AM_RANGE( 0x3000, 0x4000) AM_DEVREAD("board", mephisto_board_device, input_r)
@@ -231,7 +234,7 @@ static ADDRESS_MAP_START( rebel5_mem, AS_PROGRAM, 8, mephisto_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mephisto_mem, AS_PROGRAM, 8, mephisto_state )
+ADDRESS_MAP_START(mephisto_state::mephisto_mem)
AM_RANGE( 0x0000, 0x1fff) AM_RAM //AM_BASE(m_p_ram)
AM_RANGE( 0x2000, 0x2000) AM_WRITE(write_lcd)
AM_RANGE( 0x2400, 0x2407) AM_DEVWRITE("board", mephisto_board_device, led_w)
@@ -244,7 +247,7 @@ static ADDRESS_MAP_START( mephisto_mem, AS_PROGRAM, 8, mephisto_state )
AM_RANGE( 0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mm2_mem, AS_PROGRAM, 8, mephisto_state )
+ADDRESS_MAP_START(mephisto_state::mm2_mem)
AM_RANGE( 0x0000, 0x0fff) AM_RAM //AM_BASE(m_p_ram)
AM_RANGE( 0x1000, 0x1007) AM_WRITE(write_led_mm2) //Status LEDs
AM_RANGE( 0x1800, 0x1807) AM_READ(read_keys)
diff --git a/src/mame/drivers/mephisto_montec.cpp b/src/mame/drivers/mephisto_montec.cpp
index 491f59aefec..49e6a304f4b 100644
--- a/src/mame/drivers/mephisto_montec.cpp
+++ b/src/mame/drivers/mephisto_montec.cpp
@@ -69,6 +69,11 @@ public:
void montec(machine_config &config);
void monteciv(machine_config &config);
void megaiv(machine_config &config);
+ void megaiv_mem(address_map &map);
+ void mondial2_mem(address_map &map);
+ void montec_mem(address_map &map);
+ void smondial2_mem(address_map &map);
+ void smondial_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -240,7 +245,7 @@ READ8_MEMBER(mephisto_montec_state::megaiv_input_r)
}
-static ADDRESS_MAP_START(montec_mem , AS_PROGRAM, 8, mephisto_montec_state )
+ADDRESS_MAP_START(mephisto_montec_state::montec_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x2400, 0x2400 ) AM_READ(montec_input_r)
AM_RANGE( 0x2800, 0x2800 ) AM_DEVWRITE("board", mephisto_board_device, mux_w)
@@ -256,7 +261,7 @@ static ADDRESS_MAP_START(montec_mem , AS_PROGRAM, 8, mephisto_montec_state )
AM_RANGE( 0x8000, 0xffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(megaiv_mem , AS_PROGRAM, 8, mephisto_montec_state )
+ADDRESS_MAP_START(mephisto_montec_state::megaiv_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x2400, 0x2400 ) AM_WRITE(megaiv_led_w)
AM_RANGE( 0x2800, 0x2800 ) AM_DEVWRITE("board", mephisto_board_device, mux_w)
@@ -270,7 +275,7 @@ static ADDRESS_MAP_START(megaiv_mem , AS_PROGRAM, 8, mephisto_montec_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(smondial2_mem , AS_PROGRAM, 8, mephisto_montec_state )
+ADDRESS_MAP_START(mephisto_montec_state::smondial2_mem)
AM_IMPORT_FROM(megaiv_mem)
AM_RANGE( 0x4000, 0x7fff ) AM_DEVREAD("cartslot", generic_slot_device, read_rom)
ADDRESS_MAP_END
@@ -303,7 +308,7 @@ WRITE8_MEMBER(mephisto_montec_state::smondial_led_data_w)
m_beeper->set_state(BIT(m_leds_mux, 7));
}
-static ADDRESS_MAP_START(smondial_mem , AS_PROGRAM, 8, mephisto_montec_state )
+ADDRESS_MAP_START(mephisto_montec_state::smondial_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x4000, 0x4007 ) AM_READ(megaiv_input_r)
AM_RANGE( 0x6400, 0x6407 ) AM_WRITE(smondial_led_data_w)
@@ -334,7 +339,7 @@ WRITE8_MEMBER(mephisto_montec_state::mondial2_input_mux_w)
}
-static ADDRESS_MAP_START(mondial2_mem , AS_PROGRAM, 8, mephisto_montec_state )
+ADDRESS_MAP_START(mephisto_montec_state::mondial2_mem)
AM_RANGE( 0x0000, 0x07ff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x2000, 0x2000 ) AM_WRITE(mondial2_input_mux_w)
AM_RANGE( 0x2800, 0x2800 ) AM_DEVWRITE("board", mephisto_board_device, mux_w)
diff --git a/src/mame/drivers/mephistp.cpp b/src/mame/drivers/mephistp.cpp
index 3807f15da2c..ab022425fee 100644
--- a/src/mame/drivers/mephistp.cpp
+++ b/src/mame/drivers/mephistp.cpp
@@ -42,6 +42,10 @@ public:
DECLARE_WRITE8_MEMBER(sound_rombank_w);
void mephisto(machine_config &config);
+ void mephisto_8051_io(address_map &map);
+ void mephisto_8051_map(address_map &map);
+ void mephisto_map(address_map &map);
+ void sport2k_8051_io(address_map &map);
private:
u8 m_ay8910_data;
bool m_ay8910_bdir;
@@ -99,7 +103,7 @@ WRITE8_MEMBER(mephisto_pinball_state::sound_rombank_w)
m_soundbank->set_entry(data & 0xf);
}
-static ADDRESS_MAP_START( mephisto_map, AS_PROGRAM, 8, mephisto_pinball_state )
+ADDRESS_MAP_START(mephisto_pinball_state::mephisto_map)
AM_RANGE(0x00000, 0x07fff) AM_ROM AM_MIRROR(0x08000) AM_REGION("maincpu", 0)
AM_RANGE(0x10000, 0x107ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x12000, 0x1201f) AM_NOP //AM_DEVREADWRITE("muart", i8256_device, read, write)
@@ -112,12 +116,12 @@ static ADDRESS_MAP_START( mephisto_map, AS_PROGRAM, 8, mephisto_pinball_state )
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mephisto_8051_map, AS_PROGRAM, 8, mephisto_pinball_state )
+ADDRESS_MAP_START(mephisto_pinball_state::mephisto_8051_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mephisto_8051_io, AS_IO, 8, mephisto_pinball_state )
+ADDRESS_MAP_START(mephisto_pinball_state::mephisto_8051_io)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_WRITE(sound_rombank_w)
AM_RANGE(0x1000, 0x1000) AM_DEVWRITE("dac", dac08_device, write)
@@ -129,7 +133,7 @@ static ADDRESS_MAP_START( mephisto_8051_io, AS_IO, 8, mephisto_pinball_state )
ADDRESS_MAP_END
#ifdef UNUSED_DEFINITION
-static ADDRESS_MAP_START( sport2k_8051_io, AS_IO, 8, mephisto_pinball_state )
+ADDRESS_MAP_START(mephisto_pinball_state::sport2k_8051_io)
AM_IMPORT_FROM(mephisto_8051_data)
AM_RANGE(0x1800, 0x1801) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/merit.cpp b/src/mame/drivers/merit.cpp
index 48a16fa9c73..513b688d5ec 100644
--- a/src/mame/drivers/merit.cpp
+++ b/src/mame/drivers/merit.cpp
@@ -144,6 +144,20 @@ public:
void trvwhziv(machine_config &config);
void bigappg(machine_config &config);
void pitboss(machine_config &config);
+ void bigappg_map(address_map &map);
+ void casino5_map(address_map &map);
+ void couple_map(address_map &map);
+ void dodge_map(address_map &map);
+ void dtrvwz5_map(address_map &map);
+ void misdraw_map(address_map &map);
+ void phrcraze_io_map(address_map &map);
+ void phrcraze_map(address_map &map);
+ void pitboss_map(address_map &map);
+ void tictac_io_map(address_map &map);
+ void tictac_map(address_map &map);
+ void trvwhiz_io_map(address_map &map);
+ void trvwhiz_map(address_map &map);
+ void trvwhziv_map(address_map &map);
};
@@ -389,7 +403,7 @@ CUSTOM_INPUT_MEMBER(merit_state::rndbit_r)
return machine().rand();
}
-static ADDRESS_MAP_START( pitboss_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::pitboss_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -401,7 +415,7 @@ static ADDRESS_MAP_START( pitboss_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( casino5_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::casino5_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank2")
@@ -417,7 +431,7 @@ static ADDRESS_MAP_START( casino5_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigappg_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::bigappg_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc004, 0xc007) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
@@ -429,7 +443,7 @@ static ADDRESS_MAP_START( bigappg_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( misdraw_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::misdraw_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xb000, 0xb7ff) AM_RAM AM_SHARE("cpunvram") // overlays other NVRAM? or is it banked?
@@ -442,7 +456,7 @@ static ADDRESS_MAP_START( misdraw_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dodge_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::dodge_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc004, 0xc007) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -459,7 +473,7 @@ ADDRESS_MAP_END
* ==> mirror 1DF3 & ~effective_addr_lines
* */
-static ADDRESS_MAP_START( trvwhiz_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::trvwhiz_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4c00, 0x4cff) AM_READWRITE(questions_r, high_offset_w)
AM_RANGE(0x5400, 0x54ff) AM_WRITE(low_offset_w)
@@ -474,13 +488,13 @@ static ADDRESS_MAP_START( trvwhiz_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trvwhiz_io_map, AS_IO, 8, merit_state )
+ADDRESS_MAP_START(merit_state::trvwhiz_io_map)
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("aysnd", ay8912_device, address_w)
AM_RANGE(0x8100, 0x8100) AM_DEVWRITE("aysnd", ay8912_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( phrcraze_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::phrcraze_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM
AM_RANGE(0xc008, 0xc00b) AM_MIRROR(0x1df0) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
@@ -495,13 +509,13 @@ static ADDRESS_MAP_START( phrcraze_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( phrcraze_io_map, AS_IO, 8, merit_state )
+ADDRESS_MAP_START(merit_state::phrcraze_io_map)
AM_RANGE(0xc004, 0xc004) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8912_device, address_w)
AM_RANGE(0xc104, 0xc104) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8912_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tictac_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::tictac_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xc004, 0xc007) AM_MIRROR(0x1df0) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -516,13 +530,13 @@ static ADDRESS_MAP_START( tictac_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tictac_io_map, AS_IO, 8, merit_state )
+ADDRESS_MAP_START(merit_state::tictac_io_map)
AM_RANGE(0xc00c, 0xc00c) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8912_device, address_w)
AM_RANGE(0xc10c, 0xc10c) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8912_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trvwhziv_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::trvwhziv_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM
AM_RANGE(0xc004, 0xc007) AM_MIRROR(0x1df0) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -537,7 +551,7 @@ static ADDRESS_MAP_START( trvwhziv_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dtrvwz5_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::dtrvwz5_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xb000, 0xb0ff) AM_ROM /* protection? code jumps here */
@@ -553,7 +567,7 @@ static ADDRESS_MAP_START( dtrvwz5_map, AS_PROGRAM, 8, merit_state )
AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( couple_map, AS_PROGRAM, 8, merit_state )
+ADDRESS_MAP_START(merit_state::couple_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("backup_ram")
diff --git a/src/mame/drivers/meritm.cpp b/src/mame/drivers/meritm.cpp
index fb3c061934f..24cdf29546c 100644
--- a/src/mame/drivers/meritm.cpp
+++ b/src/mame/drivers/meritm.cpp
@@ -271,6 +271,12 @@ public:
void meritm_crt250(machine_config &config);
void meritm_crt250_questions(machine_config &config);
void meritm_crt250_crt252_crt258(machine_config &config);
+ void meritm_crt250_crt258_io_map(address_map &map);
+ void meritm_crt250_io_map(address_map &map);
+ void meritm_crt250_map(address_map &map);
+ void meritm_crt250_questions_map(address_map &map);
+ void meritm_io_map(address_map &map);
+ void meritm_map(address_map &map);
};
@@ -531,12 +537,12 @@ READ8_MEMBER(meritm_state::meritm_ds1644_r)
*
*************************************/
-static ADDRESS_MAP_START( meritm_crt250_map, AS_PROGRAM, 8, meritm_state )
+ADDRESS_MAP_START(meritm_state::meritm_crt250_map)
AM_RANGE(0x0000, 0xdfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meritm_crt250_questions_map, AS_PROGRAM, 8, meritm_state )
+ADDRESS_MAP_START(meritm_state::meritm_crt250_questions_map)
AM_RANGE(0x0000, 0xdfff) AM_ROMBANK("bank1")
AM_RANGE(0x0000, 0x0000) AM_WRITE(meritm_crt250_questions_lo_w)
AM_RANGE(0x0001, 0x0001) AM_WRITE(meritm_crt250_questions_hi_w)
@@ -544,7 +550,7 @@ static ADDRESS_MAP_START( meritm_crt250_questions_map, AS_PROGRAM, 8, meritm_sta
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meritm_crt250_io_map, AS_IO, 8, meritm_state )
+ADDRESS_MAP_START(meritm_state::meritm_crt250_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("v9938_0", v9938_device, read, write)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("v9938_1", v9938_device, read, write)
@@ -556,7 +562,7 @@ static ADDRESS_MAP_START( meritm_crt250_io_map, AS_IO, 8, meritm_state )
AM_RANGE(0xff, 0xff) AM_WRITE(meritm_crt250_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meritm_crt250_crt258_io_map, AS_IO, 8, meritm_state )
+ADDRESS_MAP_START(meritm_state::meritm_crt250_crt258_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("v9938_0", v9938_device, read, write)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("v9938_1", v9938_device, read, write)
@@ -569,13 +575,13 @@ static ADDRESS_MAP_START( meritm_crt250_crt258_io_map, AS_IO, 8, meritm_state )
AM_RANGE(0xff, 0xff) AM_WRITE(meritm_crt250_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meritm_map, AS_PROGRAM, 8, meritm_state )
+ADDRESS_MAP_START(meritm_state::meritm_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xdfff) AM_ROMBANK("bank2")
AM_RANGE(0xe000, 0xffff) AM_RAMBANK("bank3") AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meritm_io_map, AS_IO, 8, meritm_state )
+ADDRESS_MAP_START(meritm_state::meritm_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(meritm_psd_a15_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
diff --git a/src/mame/drivers/mermaid.cpp b/src/mame/drivers/mermaid.cpp
index 9f5399e24a9..ec4cdbd97dc 100644
--- a/src/mame/drivers/mermaid.cpp
+++ b/src/mame/drivers/mermaid.cpp
@@ -157,7 +157,7 @@ WRITE_LINE_MEMBER(mermaid_state::nmi_mask_w)
/* Memory Map */
-static ADDRESS_MAP_START( mermaid_map, AS_PROGRAM, 8, mermaid_state )
+ADDRESS_MAP_START(mermaid_state::mermaid_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcbff) AM_RAM_WRITE(mermaid_videoram2_w) AM_SHARE("videoram2")
diff --git a/src/mame/drivers/mes.cpp b/src/mame/drivers/mes.cpp
index 805f73b2769..5f4838de696 100644
--- a/src/mame/drivers/mes.cpp
+++ b/src/mame/drivers/mes.cpp
@@ -33,6 +33,8 @@ public:
DECLARE_READ8_MEMBER(port08_r);
void mes(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
u8 m_term_data;
u8 m_port08;
@@ -55,14 +57,14 @@ READ8_MEMBER( mes_state::port08_r )
return m_port08 | (m_term_data ? 0x80 : 0);
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, mes_state )
+ADDRESS_MAP_START(mes_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x1000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, mes_state )
+ADDRESS_MAP_START(mes_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(port00_r)
AM_RANGE(0x08, 0x08) AM_READ(port08_r)
diff --git a/src/mame/drivers/metalmx.cpp b/src/mame/drivers/metalmx.cpp
index 2499102b939..0bb4dadfcd0 100644
--- a/src/mame/drivers/metalmx.cpp
+++ b/src/mame/drivers/metalmx.cpp
@@ -505,7 +505,7 @@ WRITE32_MEMBER(metalmx_state::timer_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, metalmx_state )
+ADDRESS_MAP_START(metalmx_state::main_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x3fffff) AM_ROM
AM_RANGE(0x400000, 0x4000ff) AM_READWRITE(host_gsp_r, host_gsp_w)
@@ -537,11 +537,11 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, metalmx_state )
+ADDRESS_MAP_START(metalmx_state::adsp_program_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("adsp_intprog")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, metalmx_state )
+ADDRESS_MAP_START(metalmx_state::adsp_data_map)
AM_RANGE(0x3800, 0x39ff) AM_RAM
AM_RANGE(0x2000, 0x2007) AM_RAM
AM_RANGE(0x3fe0, 0x3fff) AM_RAM // TODO: CPU control registers
@@ -554,7 +554,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( gsp_map, AS_PROGRAM, 16, metalmx_state )
+ADDRESS_MAP_START(metalmx_state::gsp_map)
AM_RANGE(0x88800000, 0x8880000f) AM_RAM /* ? */
AM_RANGE(0x88c00000, 0x88c0000f) AM_RAM /* ? */
AM_RANGE(0xc0000000, 0xc00003ff) AM_DEVREADWRITE("gsp", tms34020_device, io_register_r, io_register_w)
@@ -569,7 +569,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsp32c_1_map, AS_PROGRAM, 32, metalmx_state )
+ADDRESS_MAP_START(metalmx_state::dsp32c_1_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_RAM
AM_RANGE(0x600000, 0x67ffff) AM_RAM
@@ -586,7 +586,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsp32c_2_map, AS_PROGRAM, 32, metalmx_state )
+ADDRESS_MAP_START(metalmx_state::dsp32c_2_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_RAM
AM_RANGE(0x600000, 0x67ffff) AM_RAM
diff --git a/src/mame/drivers/metlclsh.cpp b/src/mame/drivers/metlclsh.cpp
index 5da539e0fd0..864dce8c82e 100644
--- a/src/mame/drivers/metlclsh.cpp
+++ b/src/mame/drivers/metlclsh.cpp
@@ -59,7 +59,7 @@ WRITE8_MEMBER(metlclsh_state::metlclsh_ack_nmi)
m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
}
-static ADDRESS_MAP_START( metlclsh_master_map, AS_PROGRAM, 8, metlclsh_state )
+ADDRESS_MAP_START(metlclsh_state::metlclsh_master_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xa000, 0xbfff) AM_ROM
@@ -106,7 +106,7 @@ WRITE8_MEMBER(metlclsh_state::metlclsh_flipscreen_w)
flip_screen_set(data & 1);
}
-static ADDRESS_MAP_START( metlclsh_slave_map, AS_PROGRAM, 8, metlclsh_state )
+ADDRESS_MAP_START(metlclsh_state::metlclsh_slave_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_WRITE(metlclsh_gfxbank_w) // bg tiles bank
diff --git a/src/mame/drivers/metlfrzr.cpp b/src/mame/drivers/metlfrzr.cpp
index 915040105a1..425c9ec4a4a 100644
--- a/src/mame/drivers/metlfrzr.cpp
+++ b/src/mame/drivers/metlfrzr.cpp
@@ -64,6 +64,8 @@ public:
uint8_t m_fg_tilebank;
bool m_rowscroll_enable;
void metlfrzr(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void metlfrzr_map(address_map &map);
};
@@ -176,7 +178,7 @@ WRITE8_MEMBER(metlfrzr_state::output_w)
// popmessage("%02x %02x",m_fg_tilebank,data & 3);
}
-static ADDRESS_MAP_START( metlfrzr_map, AS_PROGRAM, 8, metlfrzr_state )
+ADDRESS_MAP_START(metlfrzr_state::metlfrzr_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("vram")
@@ -204,7 +206,7 @@ static ADDRESS_MAP_START( metlfrzr_map, AS_PROGRAM, 8, metlfrzr_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("wram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, metlfrzr_state )
+ADDRESS_MAP_START(metlfrzr_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("wram") // executes code at 0xf5d5
@@ -363,7 +365,7 @@ MACHINE_CONFIG_START(metlfrzr_state::metlfrzr)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, XTAL(12'000'000) / 2)
MCFG_CPU_PROGRAM_MAP(metlfrzr_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", metlfrzr_state, scanline, "screen", 0, 1)
MCFG_DEVICE_ADD("t5182", T5182, 0)
diff --git a/src/mame/drivers/metro.cpp b/src/mame/drivers/metro.cpp
index 54265af6bdd..9cbe6690afc 100644
--- a/src/mame/drivers/metro.cpp
+++ b/src/mame/drivers/metro.cpp
@@ -494,7 +494,7 @@ WRITE_LINE_MEMBER(metro_state::vdp_blit_end_w)
*/
-static ADDRESS_MAP_START( metro_sound_map, AS_PROGRAM, 8, metro_state )
+ADDRESS_MAP_START(metro_state::metro_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM /* External ROM */
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") /* External ROM (Banked) */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* External RAM */
@@ -503,7 +503,7 @@ ADDRESS_MAP_END
/*****************/
-static ADDRESS_MAP_START( ymf278_map, 0, 8, metro_state )
+ADDRESS_MAP_START(metro_state::ymf278_map)
AM_RANGE(0x000000, 0x27ffff) AM_ROM
ADDRESS_MAP_END
@@ -544,7 +544,7 @@ READ16_MEMBER(metro_state::balcube_dsw_r)
}
-static ADDRESS_MAP_START( balcube_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::balcube_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x300000, 0x300001) AM_DEVREAD8("ymf", ymf278b_device, read, 0x00ff) // Sound
AM_RANGE(0x300000, 0x30000b) AM_DEVWRITE8("ymf", ymf278b_device, write, 0x00ff) // Sound
@@ -565,7 +565,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( daitoa_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::daitoa_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x17ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map )
AM_RANGE(0x1788a2, 0x1788a3) AM_READWRITE(metro_irq_cause_r, metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
@@ -585,7 +585,7 @@ ADDRESS_MAP_END
Bang Bang Ball
***************************************************************************/
-static ADDRESS_MAP_START( bangball_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::bangball_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0xb00000, 0xb00001) AM_DEVREAD8("ymf", ymf278b_device, read, 0x00ff) // Sound
AM_RANGE(0xb00000, 0xb0000b) AM_DEVWRITE8("ymf", ymf278b_device, write, 0x00ff) // Sound
@@ -605,7 +605,7 @@ ADDRESS_MAP_END
Battle Bubble
***************************************************************************/
-static ADDRESS_MAP_START( batlbubl_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::batlbubl_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x17ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map)
AM_RANGE(0x1788a2, 0x1788a3) AM_READWRITE(metro_irq_cause_r,metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
@@ -626,7 +626,7 @@ ADDRESS_MAP_END
Mouse Shooter GoGo
***************************************************************************/
-static ADDRESS_MAP_START( msgogo_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::msgogo_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x17ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map)
AM_RANGE(0x1788a2, 0x1788a3) AM_READWRITE(metro_irq_cause_r,metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
@@ -645,7 +645,7 @@ ADDRESS_MAP_END
Daitoride
***************************************************************************/
-static ADDRESS_MAP_START( daitorid_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::daitorid_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x47ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map)
AM_RANGE(0x4788a2, 0x4788a3) AM_READWRITE(metro_irq_cause_r, metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
@@ -664,7 +664,7 @@ ADDRESS_MAP_END
Dharma Doujou
***************************************************************************/
-static ADDRESS_MAP_START( dharma_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::dharma_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_MIRROR(0x0f0000) // RAM (mirrored)
AM_RANGE(0x800000, 0x87ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map)
@@ -683,7 +683,7 @@ ADDRESS_MAP_END
Karate Tournament
***************************************************************************/
-static ADDRESS_MAP_START( karatour_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::karatour_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x400001) AM_READWRITE(metro_soundstatus_r, metro_soundstatus_w) // From Sound CPU
AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN0") // Inputs
@@ -706,7 +706,7 @@ ADDRESS_MAP_END
/* same limited tilemap access as karatour */
-static ADDRESS_MAP_START( kokushi_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::kokushi_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x700000, 0x70ffff) AM_RAM AM_MIRROR(0x0f0000) // RAM (mirrored)
AM_RANGE(0x800000, 0x87ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map)
@@ -724,7 +724,7 @@ ADDRESS_MAP_END
Last Fortress
***************************************************************************/
-static ADDRESS_MAP_START( lastfort_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::lastfort_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_MIRROR(0x0f0000) // RAM (mirrored)
AM_RANGE(0x800000, 0x87ffff) AM_DEVICE("vdp", imagetek_i4100_device, map)
@@ -744,7 +744,7 @@ ADDRESS_MAP_END
/* the German version is halfway between lastfort and ladykill (karatour) memory maps */
/* todo: clean up input reads etc. */
-static ADDRESS_MAP_START( lastforg_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::lastforg_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x400001) AM_READWRITE(metro_soundstatus_r, metro_soundstatus_w) // From / To Sound CPU
AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN0") // Inputs
@@ -813,7 +813,7 @@ WRITE8_MEMBER(metro_state::gakusai_eeprom_w)
m_eeprom->clk_write(BIT(data, 1) ? ASSERT_LINE : CLEAR_LINE );
}
-static ADDRESS_MAP_START( gakusai_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::gakusai_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x27ffff) AM_DEVICE("vdp3", imagetek_i4300_device, v3_map )
AM_RANGE(0x278810, 0x27881f) AM_WRITEONLY AM_SHARE("irq_levels") // IRQ Levels
@@ -838,7 +838,7 @@ ADDRESS_MAP_END
Mahjong Gakuensai 2
***************************************************************************/
-static ADDRESS_MAP_START( gakusai2_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::gakusai2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x600000, 0x67ffff) AM_DEVICE("vdp3", imagetek_i4300_device, v3_map)
AM_RANGE(0x678810, 0x67881f) AM_WRITEONLY AM_SHARE("irq_levels") // IRQ Levels
@@ -888,7 +888,7 @@ WRITE8_MEMBER(metro_state::dokyusp_eeprom_reset_w)
m_eeprom->cs_write(BIT(data, 0) ? ASSERT_LINE : CLEAR_LINE);
}
-static ADDRESS_MAP_START( dokyusp_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::dokyusp_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x27ffff) AM_DEVICE("vdp3", imagetek_i4300_device, v3_map)
AM_RANGE(0x278810, 0x27881f) AM_WRITEONLY AM_SHARE("irq_levels") // IRQ Levels
@@ -913,7 +913,7 @@ ADDRESS_MAP_END
Mahjong Doukyuusei
***************************************************************************/
-static ADDRESS_MAP_START( dokyusei_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::dokyusei_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x47ffff) AM_DEVICE("vdp3", imagetek_i4300_device, v3_map)
AM_RANGE(0x478810, 0x47881f) AM_WRITEONLY AM_SHARE("irq_levels") // IRQ Levels
@@ -940,7 +940,7 @@ ADDRESS_MAP_END
Pang Pom's
***************************************************************************/
-static ADDRESS_MAP_START( pangpoms_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::pangpoms_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x47ffff) AM_DEVICE("vdp", imagetek_i4100_device, map)
AM_RANGE(0x4788a2, 0x4788a3) AM_READWRITE(metro_irq_cause_r,metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
@@ -962,7 +962,7 @@ ADDRESS_MAP_END
Poitto!
***************************************************************************/
-static ADDRESS_MAP_START( poitto_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::poitto_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_MIRROR(0x0f0000) // RAM (mirrored)
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN0") AM_WRITE(metro_soundstatus_w) // To Sound CPU
@@ -981,7 +981,7 @@ ADDRESS_MAP_END
Sky Alert
***************************************************************************/
-static ADDRESS_MAP_START( skyalert_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::skyalert_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x400001) AM_READWRITE(metro_soundstatus_r,metro_soundstatus_w) // From / To Sound CPU
AM_RANGE(0x400002, 0x400003) AM_READNOP AM_WRITE(metro_coin_lockout_1word_w) // Coin Lockout
@@ -1003,7 +1003,7 @@ ADDRESS_MAP_END
Pururun
***************************************************************************/
-static ADDRESS_MAP_START( pururun_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::pururun_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x400001) AM_READ_PORT("IN0") AM_WRITE(metro_soundstatus_w) // To Sound CPU
AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN1") //
@@ -1022,7 +1022,7 @@ ADDRESS_MAP_END
Toride II Adauchi Gaiden
***************************************************************************/
-static ADDRESS_MAP_START( toride2g_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::toride2g_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_MIRROR(0x0f0000) // RAM (mirrored)
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN0") AM_WRITE(metro_soundstatus_w) // Watchdog (R)? / To Sound CPU (W)
@@ -1056,20 +1056,20 @@ WRITE8_MEMBER(metro_state::blzntrnd_sh_bankswitch_w)
membank("bank1")->set_base(&RAM[bankaddress]);
}
-static ADDRESS_MAP_START( blzntrnd_sound_map, AS_PROGRAM, 8, metro_state )
+ADDRESS_MAP_START(metro_state::blzntrnd_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blzntrnd_sound_io_map, AS_IO, 8, metro_state )
+ADDRESS_MAP_START(metro_state::blzntrnd_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(blzntrnd_sh_bankswitch_w)
AM_RANGE(0x40, 0x40) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITENOP
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blzntrnd_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::blzntrnd_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x27ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map)
AM_RANGE(0x2788a2, 0x2788a3) AM_READWRITE(metro_irq_cause_r,metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
@@ -1097,7 +1097,7 @@ WRITE8_MEMBER(metro_state::mouja_sound_rombank_w)
membank("okibank")->set_entry((data >> 3) & 0x07);
}
-static ADDRESS_MAP_START( mouja_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::mouja_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x400000, 0x47ffff) AM_DEVICE("vdp3", imagetek_i4300_device, v3_map)
AM_RANGE(0x478810, 0x47881f) AM_WRITEONLY AM_SHARE("irq_levels") // IRQ Levels
@@ -1116,7 +1116,7 @@ static ADDRESS_MAP_START( mouja_map, AS_PROGRAM, 16, metro_state )
AM_RANGE(0xf00000, 0xf0ffff) AM_RAM AM_MIRROR(0x0f0000) // RAM (mirrored)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mouja_okimap, 0, 8, metro_state )
+ADDRESS_MAP_START(metro_state::mouja_okimap)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
@@ -1213,7 +1213,7 @@ WRITE16_MEMBER(metro_state::puzzlet_irq_enable_w)
// H8/3007 CPU
-static ADDRESS_MAP_START( puzzlet_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::puzzlet_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x430000, 0x433fff) AM_RAM
AM_RANGE(0x470000, 0x47dfff) AM_RAM
@@ -1241,7 +1241,7 @@ WRITE16_MEMBER(metro_state::puzzlet_portb_w)
// popmessage("PORTB %02x", data);
}
-static ADDRESS_MAP_START( puzzlet_io_map, AS_IO, 16, metro_state )
+ADDRESS_MAP_START(metro_state::puzzlet_io_map)
AM_RANGE(h8_device::PORT_7, h8_device::PORT_7) AM_READ_PORT("IN2")
AM_RANGE(h8_device::PORT_B, h8_device::PORT_B) AM_READ_PORT("DSW0") AM_WRITE(puzzlet_portb_w)
ADDRESS_MAP_END
@@ -1284,7 +1284,7 @@ WRITE_LINE_MEMBER(metro_state::vmetal_es8712_irq)
m_maincpu->set_input_line(3, state);
}
-static ADDRESS_MAP_START( vmetal_map, AS_PROGRAM, 16, metro_state )
+ADDRESS_MAP_START(metro_state::vmetal_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x17ffff) AM_DEVICE("vdp2", imagetek_i4220_device, v2_map)
AM_RANGE(0x1788a2, 0x1788a3) AM_READWRITE(metro_irq_cause_r, metro_irq_cause_w) // IRQ Cause / IRQ Acknowledge
diff --git a/src/mame/drivers/mexico86.cpp b/src/mame/drivers/mexico86.cpp
index 5c35327c759..0afe0e2c2c9 100644
--- a/src/mame/drivers/mexico86.cpp
+++ b/src/mame/drivers/mexico86.cpp
@@ -80,7 +80,7 @@ READ8_MEMBER(mexico86_state::kiki_ym2203_r)
*
*************************************/
-static ADDRESS_MAP_START( mexico86_map, AS_PROGRAM, 8, mexico86_state )
+ADDRESS_MAP_START(mexico86_state::mexico86_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* banked roms */
AM_RANGE(0xc000, 0xe7ff) AM_RAM AM_SHARE("mainram") /* shared with sound cpu */
@@ -93,7 +93,7 @@ static ADDRESS_MAP_START( mexico86_map, AS_PROGRAM, 8, mexico86_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("subram") /* communication ram - to connect 4 players's subboard */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mexico86_sound_map, AS_PROGRAM, 8, mexico86_state )
+ADDRESS_MAP_START(mexico86_state::mexico86_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xa7ff) AM_RAM AM_SHARE("mainram") /* shared with main */
AM_RANGE(0xa800, 0xbfff) AM_RAM
@@ -108,7 +108,7 @@ WRITE8_MEMBER(mexico86_state::mexico86_sub_output_w)
/*---- --x- <unknown, always high, irq ack?>*/
}
-static ADDRESS_MAP_START( mexico86_sub_cpu_map, AS_PROGRAM, 8, mexico86_state )
+ADDRESS_MAP_START(mexico86_state::mexico86_sub_cpu_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM /* sub cpu ram */
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("subram") /* shared with main */
diff --git a/src/mame/drivers/meyc8080.cpp b/src/mame/drivers/meyc8080.cpp
index 89183aa8457..69d7e4b962e 100644
--- a/src/mame/drivers/meyc8080.cpp
+++ b/src/mame/drivers/meyc8080.cpp
@@ -95,6 +95,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<dac_byte_interface> m_dac;
void meyc8080(machine_config &config);
+ void meyc8080_map(address_map &map);
};
@@ -310,7 +311,7 @@ WRITE8_MEMBER(meyc8080_state::meyc8080_dac_4_w)
*
*************************************/
-static ADDRESS_MAP_START( meyc8080_map, AS_PROGRAM, 8, meyc8080_state )
+ADDRESS_MAP_START(meyc8080_state::meyc8080_map)
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0x3800, 0x3800) AM_READ_PORT("IN0")
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("vram0")
diff --git a/src/mame/drivers/meyc8088.cpp b/src/mame/drivers/meyc8088.cpp
index 3fe66266de9..f9552ee9e2f 100644
--- a/src/mame/drivers/meyc8088.cpp
+++ b/src/mame/drivers/meyc8088.cpp
@@ -72,6 +72,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_meyc8088);
TIMER_DEVICE_CALLBACK_MEMBER(heartbeat_callback);
void meyc8088(machine_config &config);
+ void meyc8088_map(address_map &map);
};
@@ -213,7 +214,7 @@ WRITE8_MEMBER(meyc8088_state::video5_flip_w)
}
-static ADDRESS_MAP_START( meyc8088_map, AS_PROGRAM, 8, meyc8088_state )
+ADDRESS_MAP_START(meyc8088_state::meyc8088_map)
AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x70000, 0x77fff) AM_RAM AM_SHARE("vram")
AM_RANGE(0xb0000, 0xb00ff) AM_DEVREADWRITE("i8155_2", i8155_device, memory_r, memory_w)
diff --git a/src/mame/drivers/mfabfz.cpp b/src/mame/drivers/mfabfz.cpp
index 249266a239d..55622cc9664 100644
--- a/src/mame/drivers/mfabfz.cpp
+++ b/src/mame/drivers/mfabfz.cpp
@@ -57,19 +57,22 @@ public:
void mfabfz85(machine_config &config);
void mfabfz(machine_config &config);
+ void mfabfz85_io(address_map &map);
+ void mfabfz_io(address_map &map);
+ void mfabfz_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(mfabfz_mem, AS_PROGRAM, 8, mfabfz_state)
+ADDRESS_MAP_START(mfabfz_state::mfabfz_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mfabfz_io, AS_IO, 8, mfabfz_state)
+ADDRESS_MAP_START(mfabfz_state::mfabfz_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xbe, 0xbe) AM_DEVREADWRITE("uart1", i8251_device, data_r, data_w)
@@ -78,7 +81,7 @@ static ADDRESS_MAP_START(mfabfz_io, AS_IO, 8, mfabfz_state)
AM_RANGE(0xff, 0xff) AM_DEVREADWRITE("uart2", i8251_device, status_r, control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mfabfz85_io, AS_IO, 8, mfabfz_state)
+ADDRESS_MAP_START(mfabfz_state::mfabfz85_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xfe, 0xfe) AM_DEVREADWRITE("uart2", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/mgames.cpp b/src/mame/drivers/mgames.cpp
index 6ed1136deb8..1909f8fb10f 100644
--- a/src/mame/drivers/mgames.cpp
+++ b/src/mame/drivers/mgames.cpp
@@ -251,6 +251,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void mgames(machine_config &config);
+ void main_map(address_map &map);
};
@@ -523,7 +524,7 @@ WRITE8_MEMBER(mgames_state::outport7_w)
*/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mgames_state )
+ADDRESS_MAP_START(mgames_state::main_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
// AM_RANGE(0x0158, 0x0158) AM_WRITE (muxed_w)
AM_RANGE(0x3800, 0x38ff) AM_RAM AM_SHARE("nvram") /* NVRAM = 2x SCM5101E */
diff --git a/src/mame/drivers/mgavegas.cpp b/src/mame/drivers/mgavegas.cpp
index c70bd2b1dd3..36654e402dc 100644
--- a/src/mame/drivers/mgavegas.cpp
+++ b/src/mame/drivers/mgavegas.cpp
@@ -144,6 +144,7 @@ public:
void mgavegas(machine_config &config);
+ void mgavegas_map(address_map &map);
protected:
// devices
@@ -421,7 +422,7 @@ READ8_MEMBER(mgavegas_state::ay8910_b_r)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( mgavegas_map, AS_PROGRAM, 8, mgavegas_state )
+ADDRESS_MAP_START(mgavegas_state::mgavegas_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xa000, 0xa003) AM_READWRITE(r_a0,w_a0) // AY-3-8910
diff --git a/src/mame/drivers/mgolf.cpp b/src/mame/drivers/mgolf.cpp
index 009ddd651ca..b8f8fcf5c97 100644
--- a/src/mame/drivers/mgolf.cpp
+++ b/src/mame/drivers/mgolf.cpp
@@ -66,6 +66,7 @@ public:
double calc_plunger_pos();
void mgolf(machine_config &config);
+ void cpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -226,7 +227,7 @@ WRITE8_MEMBER(mgolf_state::wram_w)
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, mgolf_state )
+ADDRESS_MAP_START(mgolf_state::cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0040, 0x0040) AM_READ_PORT("40")
diff --git a/src/mame/drivers/mhavoc.cpp b/src/mame/drivers/mhavoc.cpp
index 8384455bc6d..1a4ed380bb4 100644
--- a/src/mame/drivers/mhavoc.cpp
+++ b/src/mame/drivers/mhavoc.cpp
@@ -277,7 +277,7 @@ WRITE8_MEMBER(mhavoc_state::dual_pokey_w)
*
*************************************/
-static ADDRESS_MAP_START( alpha_map, AS_PROGRAM, 8, mhavoc_state )
+ADDRESS_MAP_START(mhavoc_state::alpha_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x07ff) AM_RAMBANK("bank1") AM_SHARE("zram0")
AM_RANGE(0x0800, 0x09ff) AM_RAM
@@ -329,7 +329,7 @@ a15 a14 a13 a12 a11 a10 a09 a08 a07 a06 a05 a04 a03 a02 a01 a00
1 x * * * * * * * * * * * * * * R ROM 27128 @9S
*/
-static ADDRESS_MAP_START( gamma_map, AS_PROGRAM, 8, mhavoc_state )
+ADDRESS_MAP_START(mhavoc_state::gamma_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_MIRROR(0x1800) /* Program RAM (2K) */
AM_RANGE(0x2000, 0x203f) AM_READWRITE(quad_pokeyn_r, quad_pokeyn_w) AM_MIRROR(0x07C0) /* Quad Pokey read/write */
AM_RANGE(0x2800, 0x2800) AM_READ_PORT("IN1") AM_MIRROR(0x07ff) /* Gamma Input Port */
@@ -353,7 +353,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( alphaone_map, AS_PROGRAM, 8, mhavoc_state )
+ADDRESS_MAP_START(mhavoc_state::alphaone_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x07ff) AM_RAMBANK("bank1") AM_SHARE("zram0")
AM_RANGE(0x0800, 0x09ff) AM_RAM
diff --git a/src/mame/drivers/mice.cpp b/src/mame/drivers/mice.cpp
index 47766367754..bfc9877e73e 100644
--- a/src/mame/drivers/mice.cpp
+++ b/src/mame/drivers/mice.cpp
@@ -47,19 +47,23 @@ public:
void mice2(machine_config &config);
void mice(machine_config &config);
+ void mice2_io(address_map &map);
+ void mice2_mem(address_map &map);
+ void mice_io(address_map &map);
+ void mice_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(mice_mem, AS_PROGRAM, 8, mice_state)
+ADDRESS_MAP_START(mice_state::mice_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("mcp", 0)
AM_RANGE(0x4400, 0x47ff) AM_RAM //(U13)
AM_RANGE(0x6000, 0x60ff) AM_DEVREADWRITE("rpt", i8155_device, memory_r, memory_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mice_io, AS_IO, 8, mice_state)
+ADDRESS_MAP_START(mice_state::mice_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x50, 0x50) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
@@ -68,7 +72,7 @@ static ADDRESS_MAP_START(mice_io, AS_IO, 8, mice_state)
AM_RANGE(0x70, 0x73) AM_DEVREADWRITE("ppi", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mice2_mem, AS_PROGRAM, 8, mice_state)
+ADDRESS_MAP_START(mice_state::mice2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("cep", 0)
AM_RANGE(0x9000, 0x90ff) AM_DEVREADWRITE("rpt", i8155_device, memory_r, memory_w)
@@ -76,7 +80,7 @@ static ADDRESS_MAP_START(mice2_mem, AS_PROGRAM, 8, mice_state)
AM_RANGE(0xe800, 0xe8ff) AM_DEVREADWRITE("rtt8155", i8155_device, memory_r, memory_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mice2_io, AS_IO, 8, mice_state)
+ADDRESS_MAP_START(mice_state::mice2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/micral.cpp b/src/mame/drivers/micral.cpp
index 23c6a5801c8..32a2408acf7 100644
--- a/src/mame/drivers/micral.cpp
+++ b/src/mame/drivers/micral.cpp
@@ -82,6 +82,9 @@ public:
u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void micral(machine_config &config);
+ void io_kbd(address_map &map);
+ void mem_kbd(address_map &map);
+ void mem_map(address_map &map);
private:
u16 s_curpos;
u8 s_command;
@@ -144,7 +147,7 @@ WRITE8_MEMBER( micral_state::video_w )
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, micral_state )
+ADDRESS_MAP_START(micral_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xfeff) AM_ROM
@@ -157,7 +160,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, micral_state )
AM_RANGE(0xfffd, 0xffff) // more unknown ports
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mem_kbd, AS_PROGRAM, 8, micral_state )
+ADDRESS_MAP_START(micral_state::mem_kbd)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_RAM // byte returned to main cpu after receiving irq
@@ -177,7 +180,7 @@ static ADDRESS_MAP_START( mem_kbd, AS_PROGRAM, 8, micral_state )
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("X13")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_kbd, AS_IO, 8, micral_state )
+ADDRESS_MAP_START(micral_state::io_kbd)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("X14")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/micro20.cpp b/src/mame/drivers/micro20.cpp
index 6b3dd1f2337..823857d315f 100644
--- a/src/mame/drivers/micro20.cpp
+++ b/src/mame/drivers/micro20.cpp
@@ -63,6 +63,7 @@ public:
}
void micro20(machine_config &config);
+ void micro20_map(address_map &map);
private:
u8 m_tin;
u8 m_h4;
@@ -139,7 +140,7 @@ READ32_MEMBER(micro20_state::buserror_r)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(micro20_map, AS_PROGRAM, 32, micro20_state )
+ADDRESS_MAP_START(micro20_state::micro20_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x00200000, 0x002fffff) AM_READ(buserror_r)
AM_RANGE(0x00800000, 0x0083ffff) AM_ROM AM_REGION("bootrom", 0)
diff --git a/src/mame/drivers/micro3d.cpp b/src/mame/drivers/micro3d.cpp
index fd353051a0c..ab0bfc4ef17 100644
--- a/src/mame/drivers/micro3d.cpp
+++ b/src/mame/drivers/micro3d.cpp
@@ -204,7 +204,7 @@ INPUT_PORTS_END
*
*************************************/
-static ADDRESS_MAP_START( hostmem, AS_PROGRAM, 16, micro3d_state )
+ADDRESS_MAP_START(micro3d_state::hostmem)
AM_RANGE(0x000000, 0x143fff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_SHARE("shared_ram")
@@ -228,7 +228,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( vgbmem, AS_PROGRAM, 16, micro3d_state )
+ADDRESS_MAP_START(micro3d_state::vgbmem)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_SHARE("sprite_vram")
AM_RANGE(0x00800000, 0x00bfffff) AM_RAM
AM_RANGE(0x00c00000, 0x00c0000f) AM_READ_PORT("VGB_SW")
@@ -250,11 +250,11 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( drmath_prg, AS_PROGRAM, 32, micro3d_state )
+ADDRESS_MAP_START(micro3d_state::drmath_prg)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drmath_data, AS_DATA, 32, micro3d_state )
+ADDRESS_MAP_START(micro3d_state::drmath_data)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("drmath", 0)
AM_RANGE(0x00800000, 0x0083ffff) AM_READWRITE(micro3d_shared_r, micro3d_shared_w)
AM_RANGE(0x00400000, 0x004fffff) AM_RAM
@@ -275,11 +275,11 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( soundmem_prg, AS_PROGRAM, 8, micro3d_state )
+ADDRESS_MAP_START(micro3d_state::soundmem_prg)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soundmem_io, AS_IO, 8, micro3d_state )
+ADDRESS_MAP_START(micro3d_state::soundmem_io)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0xfd00, 0xfd01) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0xfe00, 0xfe00) AM_WRITE(micro3d_upd7759_w)
diff --git a/src/mame/drivers/microdec.cpp b/src/mame/drivers/microdec.cpp
index cf9b3a825d4..ee5ebf4c6e1 100644
--- a/src/mame/drivers/microdec.cpp
+++ b/src/mame/drivers/microdec.cpp
@@ -55,6 +55,8 @@ public:
DECLARE_DRIVER_INIT(microdec);
void microdec(machine_config &config);
+ void microdec_io(address_map &map);
+ void microdec_mem(address_map &map);
private:
uint8_t m_portf8;
bool m_fdc_rdy;
@@ -120,13 +122,13 @@ WRITE8_MEMBER( microdec_state::portf8_w )
m_floppy->mon_w(0);
}
-static ADDRESS_MAP_START(microdec_mem, AS_PROGRAM, 8, microdec_state)
+ADDRESS_MAP_START(microdec_state::microdec_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE( 0x1000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(microdec_io, AS_IO, 8, microdec_state)
+ADDRESS_MAP_START(microdec_state::microdec_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf5, 0xf5) AM_READ(portf5_r)
diff --git a/src/mame/drivers/microkit.cpp b/src/mame/drivers/microkit.cpp
index 21696f72e8f..fe216a8d688 100644
--- a/src/mame/drivers/microkit.cpp
+++ b/src/mame/drivers/microkit.cpp
@@ -54,6 +54,8 @@ public:
DECLARE_READ8_MEMBER(ram_r);
void microkit(machine_config &config);
+ void microkit_io(address_map &map);
+ void microkit_mem(address_map &map);
private:
virtual void machine_reset() override;
uint8_t m_resetcnt;
@@ -63,13 +65,13 @@ private:
required_device<generic_terminal_device> m_terminal;
};
-static ADDRESS_MAP_START( microkit_mem, AS_PROGRAM, 8, microkit_state )
+ADDRESS_MAP_START(microkit_state::microkit_mem)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ram_r,ram_w)
AM_RANGE(0x8000, 0x81ff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8200, 0x83ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( microkit_io, AS_IO, 8, microkit_state )
+ADDRESS_MAP_START(microkit_state::microkit_io)
AM_RANGE(0x07, 0x07) AM_WRITENOP // writes a lots of zeros here
ADDRESS_MAP_END
diff --git a/src/mame/drivers/micronic.cpp b/src/mame/drivers/micronic.cpp
index 5d154c9b197..fd740d694ae 100644
--- a/src/mame/drivers/micronic.cpp
+++ b/src/mame/drivers/micronic.cpp
@@ -218,12 +218,12 @@ WRITE8_MEMBER( micronic_state::rtc_data_w )
Machine
***************************************************************************/
-static ADDRESS_MAP_START(micronic_mem, AS_PROGRAM, 8, micronic_state)
+ADDRESS_MAP_START(micronic_state::micronic_mem)
AM_RANGE(0x0000, 0x7fff) AM_RAMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("ram_base")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(micronic_io, AS_IO, 8, micronic_state)
+ADDRESS_MAP_START(micronic_state::micronic_io)
ADDRESS_MAP_GLOBAL_MASK (0xff)
/* keypad */
diff --git a/src/mame/drivers/micropin.cpp b/src/mame/drivers/micropin.cpp
index 6bd213e7407..c2a8601dcb2 100644
--- a/src/mame/drivers/micropin.cpp
+++ b/src/mame/drivers/micropin.cpp
@@ -59,6 +59,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_a);
void pentacup2(machine_config &config);
void micropin(machine_config &config);
+ void micropin_map(address_map &map);
+ void pentacup2_io(address_map &map);
+ void pentacup2_map(address_map &map);
private:
uint8_t m_row;
uint8_t m_counter;
@@ -72,7 +75,7 @@ private:
};
-static ADDRESS_MAP_START( micropin_map, AS_PROGRAM, 8, micropin_state )
+ADDRESS_MAP_START(micropin_state::micropin_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM AM_SHARE("nvram") // 4x 6561 RAM
AM_RANGE(0x4000, 0x4005) AM_WRITE(sw_w)
@@ -89,12 +92,12 @@ static ADDRESS_MAP_START( micropin_map, AS_PROGRAM, 8, micropin_state )
AM_RANGE(0x6400, 0x7fff) AM_ROM AM_REGION("v1cpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pentacup2_map, AS_PROGRAM, 8, micropin_state )
+ADDRESS_MAP_START(micropin_state::pentacup2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pentacup2_io, AS_IO, 8, micropin_state )
+ADDRESS_MAP_START(micropin_state::pentacup2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0e) AM_WRITE(sw_w)
AM_RANGE(0x0f, 0x0f) AM_WRITE(lamp_w)
diff --git a/src/mame/drivers/microtan.cpp b/src/mame/drivers/microtan.cpp
index b33cdf34c1f..321d9088eea 100644
--- a/src/mame/drivers/microtan.cpp
+++ b/src/mame/drivers/microtan.cpp
@@ -55,7 +55,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START( microtan_map, AS_PROGRAM, 8, microtan_state )
+ADDRESS_MAP_START(microtan_state::microtan_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x03ff) AM_RAM_WRITE(microtan_videoram_w) AM_SHARE("videoram")
AM_RANGE(0xbc00, 0xbc00) AM_DEVWRITE("ay8910.1", ay8910_device, address_w)
diff --git a/src/mame/drivers/microterm.cpp b/src/mame/drivers/microterm.cpp
index d2e8fb88300..70a3d096028 100644
--- a/src/mame/drivers/microterm.cpp
+++ b/src/mame/drivers/microterm.cpp
@@ -30,6 +30,11 @@ public:
void mt420(machine_config &config);
void mt5510(machine_config &config);
+ void mt420_io_map(address_map &map);
+ void mt420_mem_map(address_map &map);
+ void mt420_vram_map(address_map &map);
+ void mt5510_io_map(address_map &map);
+ void mt5510_mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
optional_region_ptr<u8> m_p_chargen;
@@ -45,7 +50,7 @@ READ8_MEMBER(microterm_state::c000_r)
return machine().rand() & 0x80;
}
-static ADDRESS_MAP_START( mt420_mem_map, AS_PROGRAM, 8, microterm_state )
+ADDRESS_MAP_START(microterm_state::mt420_mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x9000, 0x9000) AM_WRITENOP
AM_RANGE(0xc000, 0xc000) AM_READ(c000_r) AM_WRITENOP
@@ -54,7 +59,7 @@ static ADDRESS_MAP_START( mt420_mem_map, AS_PROGRAM, 8, microterm_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mt420_io_map, AS_IO, 8, microterm_state )
+ADDRESS_MAP_START(microterm_state::mt420_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xe0, 0xef) AM_DEVREADWRITE("duart", scn2681_device, read, write)
AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("aci", mc2661_device, read, write)
@@ -64,17 +69,17 @@ SCN2674_DRAW_CHARACTER_MEMBER(microterm_state::draw_character)
{
}
-static ADDRESS_MAP_START( mt420_vram_map, 0, 8, microterm_state )
+ADDRESS_MAP_START(microterm_state::mt420_vram_map)
AM_RANGE(0x0000, 0x3fff) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mt5510_mem_map, AS_PROGRAM, 8, microterm_state )
+ADDRESS_MAP_START(microterm_state::mt5510_mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0) AM_WRITENOP
AM_RANGE(0x8000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mt5510_io_map, AS_IO, 8, microterm_state )
+ADDRESS_MAP_START(microterm_state::mt5510_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x60, 0x6f) AM_DEVREADWRITE("duart", scn2681_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/midas.cpp b/src/mame/drivers/midas.cpp
index a17c24061a6..83ab2da8454 100644
--- a/src/mame/drivers/midas.cpp
+++ b/src/mame/drivers/midas.cpp
@@ -106,6 +106,8 @@ public:
void hammer(machine_config &config);
void livequiz(machine_config &config);
+ void hammer_map(address_map &map);
+ void livequiz_map(address_map &map);
};
@@ -194,7 +196,7 @@ WRITE16_MEMBER(midas_state::livequiz_coin_w)
#endif
}
-static ADDRESS_MAP_START( livequiz_map, AS_PROGRAM, 16, midas_state )
+ADDRESS_MAP_START(midas_state::livequiz_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x900000, 0x900001) AM_READ_PORT("DSW_PLAYER1")
@@ -265,7 +267,7 @@ WRITE16_MEMBER(midas_state::hammer_motor_w)
#endif
}
-static ADDRESS_MAP_START( hammer_map, AS_PROGRAM, 16, midas_state )
+ADDRESS_MAP_START(midas_state::hammer_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x900000, 0x900001) AM_READ_PORT("DSW")
diff --git a/src/mame/drivers/midqslvr.cpp b/src/mame/drivers/midqslvr.cpp
index 20a9bb3a4bf..b3916af23f2 100644
--- a/src/mame/drivers/midqslvr.cpp
+++ b/src/mame/drivers/midqslvr.cpp
@@ -63,6 +63,8 @@ public:
virtual void machine_reset() override;
void intel82439tx_init();
void midqslvr(machine_config &config);
+ void midqslvr_io(address_map &map);
+ void midqslvr_map(address_map &map);
};
@@ -357,7 +359,7 @@ WRITE32_MEMBER(midqslvr_state::bios_ram_w)
}
}
-static ADDRESS_MAP_START(midqslvr_map, AS_PROGRAM, 32, midqslvr_state)
+ADDRESS_MAP_START(midqslvr_state::midqslvr_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c3fff) AM_ROMBANK("video_bank1") AM_WRITE(isa_ram1_w)
@@ -371,7 +373,7 @@ static ADDRESS_MAP_START(midqslvr_map, AS_PROGRAM, 32, midqslvr_state)
AM_RANGE(0xfff80000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(midqslvr_io, AS_IO, 32, midqslvr_state)
+ADDRESS_MAP_START(midqslvr_state::midqslvr_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
diff --git a/src/mame/drivers/midtunit.cpp b/src/mame/drivers/midtunit.cpp
index 79cbfd70998..c0eedccab22 100644
--- a/src/mame/drivers/midtunit.cpp
+++ b/src/mame/drivers/midtunit.cpp
@@ -44,7 +44,7 @@
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midtunit_state )
+ADDRESS_MAP_START(midtunit_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x003fffff) AM_READWRITE(midtunit_vram_r, midtunit_vram_w)
AM_RANGE(0x01000000, 0x013fffff) AM_RAM
diff --git a/src/mame/drivers/midvunit.cpp b/src/mame/drivers/midvunit.cpp
index 3e99a8086db..584446a20f8 100644
--- a/src/mame/drivers/midvunit.cpp
+++ b/src/mame/drivers/midvunit.cpp
@@ -577,7 +577,7 @@ WRITE8_MEMBER(midvunit_state::midvplus_xf1_w)
*
*************************************/
-static ADDRESS_MAP_START( midvunit_map, AS_PROGRAM, 32, midvunit_state )
+ADDRESS_MAP_START(midvunit_state::midvunit_map)
AM_RANGE(0x000000, 0x01ffff) AM_RAM AM_SHARE("ram_base")
AM_RANGE(0x400000, 0x41ffff) AM_RAM
AM_RANGE(0x600000, 0x600000) AM_WRITE(midvunit_dma_queue_w)
@@ -608,7 +608,7 @@ static ADDRESS_MAP_START( midvunit_map, AS_PROGRAM, 32, midvunit_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( midvplus_map, AS_PROGRAM, 32, midvunit_state )
+ADDRESS_MAP_START(midvunit_state::midvplus_map)
AM_RANGE(0x000000, 0x01ffff) AM_RAM AM_SHARE("ram_base")
AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_SHARE("fastram_base")
AM_RANGE(0x600000, 0x600000) AM_WRITE(midvunit_dma_queue_w)
diff --git a/src/mame/drivers/midwunit.cpp b/src/mame/drivers/midwunit.cpp
index 138508a7acf..1036bac056f 100644
--- a/src/mame/drivers/midwunit.cpp
+++ b/src/mame/drivers/midwunit.cpp
@@ -110,7 +110,7 @@ Notes:
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midwunit_state )
+ADDRESS_MAP_START(midwunit_state::main_map)
AM_RANGE(0x00000000, 0x003fffff) AM_READWRITE(midtunit_vram_r, midtunit_vram_w)
AM_RANGE(0x01000000, 0x013fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x01400000, 0x0145ffff) AM_READWRITE(midwunit_cmos_r, midwunit_cmos_w) AM_SHARE("nvram")
diff --git a/src/mame/drivers/midxunit.cpp b/src/mame/drivers/midxunit.cpp
index 6b2a777a149..69436d8baeb 100644
--- a/src/mame/drivers/midxunit.cpp
+++ b/src/mame/drivers/midxunit.cpp
@@ -104,7 +104,7 @@ There's a separate sound board also, but it wasn't available so is not documente
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midxunit_state )
+ADDRESS_MAP_START(midxunit_state::main_map)
AM_RANGE(0x00000000, 0x003fffff) AM_READWRITE(midtunit_vram_data_r, midtunit_vram_data_w)
AM_RANGE(0x00800000, 0x00bfffff) AM_READWRITE(midtunit_vram_color_r, midtunit_vram_color_w)
AM_RANGE(0x20000000, 0x20ffffff) AM_RAM
diff --git a/src/mame/drivers/midyunit.cpp b/src/mame/drivers/midyunit.cpp
index 0340e978216..9ec92001e9e 100644
--- a/src/mame/drivers/midyunit.cpp
+++ b/src/mame/drivers/midyunit.cpp
@@ -178,7 +178,7 @@ CUSTOM_INPUT_MEMBER(midyunit_state::adpcm_irq_state_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midyunit_state )
+ADDRESS_MAP_START(midyunit_state::main_map)
AM_RANGE(0x00000000, 0x001fffff) AM_READWRITE(midyunit_vram_r, midyunit_vram_w)
AM_RANGE(0x01000000, 0x010fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x01400000, 0x0140ffff) AM_READWRITE(midyunit_cmos_r, midyunit_cmos_w)
@@ -194,7 +194,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midyunit_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yawdim_sound_map, AS_PROGRAM, 8, midyunit_state )
+ADDRESS_MAP_START(midyunit_state::yawdim_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x97ff) AM_WRITE(yawdim_oki_bank_w)
diff --git a/src/mame/drivers/midzeus.cpp b/src/mame/drivers/midzeus.cpp
index 914e295f4b0..31b57ea7a76 100644
--- a/src/mame/drivers/midzeus.cpp
+++ b/src/mame/drivers/midzeus.cpp
@@ -78,6 +78,8 @@ public:
DECLARE_WRITE32_MEMBER(zeus2_timekeeper_w);
void thegrid(machine_config &config);
void crusnexo(machine_config &config);
+ void midzeus2(machine_config &config);
+ void zeus2_map(address_map &map);
private:
};
@@ -730,7 +732,7 @@ READ32_MEMBER(midzeus_state::invasn_gun_r)
*
*************************************/
-static ADDRESS_MAP_START( zeus_map, AS_PROGRAM, 32, midzeus_state )
+ADDRESS_MAP_START(midzeus_state::zeus_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_RAM AM_SHARE("ram_base")
AM_RANGE(0x400000, 0x41ffff) AM_RAM
@@ -745,7 +747,7 @@ static ADDRESS_MAP_START( zeus_map, AS_PROGRAM, 32, midzeus_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zeus2_map, AS_PROGRAM, 32, midzeus2_state )
+ADDRESS_MAP_START(midzeus2_state::zeus2_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_RAM AM_SHARE("ram_base")
AM_RANGE(0x400000, 0x43ffff) AM_RAM
@@ -1299,7 +1301,7 @@ MACHINE_CONFIG_DERIVED(midzeus_state::invasn, midzeus)
MCFG_MIDWAY_IOASIC_UPPER(468/* or 488 */)
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(midzeus_state::midzeus2)
+MACHINE_CONFIG_START(midzeus2_state::midzeus2)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", TMS32032, CPU_CLOCK)
diff --git a/src/mame/drivers/mightyframe.cpp b/src/mame/drivers/mightyframe.cpp
index 04eaf9b96fa..2e5c5dc1adf 100644
--- a/src/mame/drivers/mightyframe.cpp
+++ b/src/mame/drivers/mightyframe.cpp
@@ -25,11 +25,12 @@ public:
{ }
void mightyframe(machine_config &config);
+void mem_map(address_map &map);
private:
// required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, mightyframe_state )
+ADDRESS_MAP_START(mightyframe_state::mem_map)
AM_RANGE(0x000000, 0x007fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mikie.cpp b/src/mame/drivers/mikie.cpp
index 7abe616b3a4..5f78edb9f27 100644
--- a/src/mame/drivers/mikie.cpp
+++ b/src/mame/drivers/mikie.cpp
@@ -105,7 +105,7 @@ WRITE_LINE_MEMBER(mikie_state::irq_mask_w)
*
*************************************/
-static ADDRESS_MAP_START( mikie_map, AS_PROGRAM, 8, mikie_state )
+ADDRESS_MAP_START(mikie_state::mikie_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x2000, 0x2007) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
AM_RANGE(0x2100, 0x2100) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
@@ -125,7 +125,7 @@ static ADDRESS_MAP_START( mikie_map, AS_PROGRAM, 8, mikie_state )
AM_RANGE(0x6000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, mikie_state )
+ADDRESS_MAP_START(mikie_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_WRITENOP // sound command latch
diff --git a/src/mame/drivers/mikro80.cpp b/src/mame/drivers/mikro80.cpp
index 0e49cfbb8f8..06433364023 100644
--- a/src/mame/drivers/mikro80.cpp
+++ b/src/mame/drivers/mikro80.cpp
@@ -20,7 +20,7 @@
#include "speaker.h"
/* Address maps */
-static ADDRESS_MAP_START(mikro80_mem, AS_PROGRAM, 8, mikro80_state )
+ADDRESS_MAP_START(mikro80_state::mikro80_mem)
AM_RANGE( 0x0000, 0x07ff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x0800, 0xdfff ) AM_RAM // RAM
AM_RANGE( 0xe000, 0xe7ff ) AM_RAM AM_SHARE("cursor_ram")// Video RAM
@@ -29,18 +29,18 @@ static ADDRESS_MAP_START(mikro80_mem, AS_PROGRAM, 8, mikro80_state )
AM_RANGE( 0xf800, 0xffff ) AM_ROM // System ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mikro80_io , AS_IO, 8, mikro80_state )
+ADDRESS_MAP_START(mikro80_state::mikro80_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x01, 0x01) AM_READWRITE(mikro80_tape_r, mikro80_tape_w )
AM_RANGE( 0x04, 0x07) AM_READWRITE(mikro80_keyboard_r, mikro80_keyboard_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kristall_io , AS_IO, 8, mikro80_state )
+ADDRESS_MAP_START(mikro80_state::kristall_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( radio99_io , AS_IO, 8, mikro80_state )
+ADDRESS_MAP_START(mikro80_state::radio99_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x01, 0x01) AM_READWRITE(mikro80_tape_r, mikro80_tape_w )
AM_RANGE( 0x04, 0x04) AM_WRITE(radio99_sound_w)
diff --git a/src/mame/drivers/mikromik.cpp b/src/mame/drivers/mikromik.cpp
index 018578ac5bd..6221568aaed 100644
--- a/src/mame/drivers/mikromik.cpp
+++ b/src/mame/drivers/mikromik.cpp
@@ -264,7 +264,7 @@ WRITE8_MEMBER( mm1_state::ls259_w )
// ADDRESS_MAP( mm1_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( mm1_map, AS_PROGRAM, 8, mm1_state )
+ADDRESS_MAP_START(mm1_state::mm1_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mikrosha.cpp b/src/mame/drivers/mikrosha.cpp
index 0cb3c3fc65b..de6ed0b01f5 100644
--- a/src/mame/drivers/mikrosha.cpp
+++ b/src/mame/drivers/mikrosha.cpp
@@ -38,6 +38,8 @@ public:
DECLARE_MACHINE_RESET(mikrosha);
void mikrosha(machine_config &config);
+ void mikrosha_io(address_map &map);
+ void mikrosha_mem(address_map &map);
protected:
required_device<generic_slot_device> m_cart;
};
@@ -50,7 +52,7 @@ MACHINE_RESET_MEMBER(mikrosha_state,mikrosha)
}
/* Address maps */
-static ADDRESS_MAP_START(mikrosha_mem, AS_PROGRAM, 8, mikrosha_state )
+ADDRESS_MAP_START(mikrosha_state::mikrosha_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0xc000, 0xc003 ) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) AM_MIRROR(0x07fc)
@@ -62,7 +64,7 @@ static ADDRESS_MAP_START(mikrosha_mem, AS_PROGRAM, 8, mikrosha_state )
AM_RANGE( 0xf800, 0xffff ) AM_ROM // System ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mikrosha_io , AS_IO, 8, mikrosha_state )
+ADDRESS_MAP_START(mikrosha_state::mikrosha_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00, 0xff ) AM_READWRITE(radio_io_r,radio_io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mil4000.cpp b/src/mame/drivers/mil4000.cpp
index e539c621fc2..3070df23a31 100644
--- a/src/mame/drivers/mil4000.cpp
+++ b/src/mame/drivers/mil4000.cpp
@@ -167,6 +167,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
void chewheel(machine_config &config);
void mil4000(machine_config &config);
+ void chewheel_map(address_map &map);
+ void mil4000_map(address_map &map);
};
@@ -423,7 +425,7 @@ WRITE16_MEMBER(mil4000_state::unk_w)
}
-static ADDRESS_MAP_START( mil4000_map, AS_PROGRAM, 16, mil4000_state )
+ADDRESS_MAP_START(mil4000_state::mil4000_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x500000, 0x503fff) AM_RAM_WRITE(sc0_vram_w) AM_SHARE("sc0_vram") // CY62256L-70, U77
AM_RANGE(0x504000, 0x507fff) AM_RAM_WRITE(sc1_vram_w) AM_SHARE("sc1_vram") // CY62256L-70, U77
@@ -442,7 +444,7 @@ static ADDRESS_MAP_START( mil4000_map, AS_PROGRAM, 16, mil4000_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chewheel_map, AS_PROGRAM, 16, mil4000_state )
+ADDRESS_MAP_START(mil4000_state::chewheel_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x500000, 0x503fff) AM_RAM_WRITE(sc0_vram_w) AM_SHARE("sc0_vram") // V62C518256L-35P (U7).
AM_RANGE(0x504000, 0x507fff) AM_RAM_WRITE(sc1_vram_w) AM_SHARE("sc1_vram") // V62C518256L-35P (U7).
diff --git a/src/mame/drivers/milwaukee.cpp b/src/mame/drivers/milwaukee.cpp
index 0b26564d7d6..e703e31f450 100644
--- a/src/mame/drivers/milwaukee.cpp
+++ b/src/mame/drivers/milwaukee.cpp
@@ -30,12 +30,13 @@ public:
{ }
void milwaukee(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
//required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, milwaukee_state )
+ADDRESS_MAP_START(milwaukee_state::mem_map)
AM_RANGE(0x0000, 0xf7ff) AM_RAM
//AM_RANGE(0xf800, 0xf87f) expansion i/o
AM_RANGE(0xf880, 0xf881) AM_DEVREADWRITE("acia1", acia6850_device, read, write) // terminal
diff --git a/src/mame/drivers/mini2440.cpp b/src/mame/drivers/mini2440.cpp
index aabf17f2e5e..f8b9b80d2f5 100644
--- a/src/mame/drivers/mini2440.cpp
+++ b/src/mame/drivers/mini2440.cpp
@@ -57,6 +57,7 @@ public:
DECLARE_READ32_MEMBER(s3c2440_adc_data_r );
void mini2440(machine_config &config);
+ void mini2440_map(address_map &map);
};
inline void mini2440_state::verboselog(int n_level, const char *s_fmt, ...)
@@ -206,7 +207,7 @@ void mini2440_state::machine_reset()
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( mini2440_map, AS_PROGRAM, 32, mini2440_state )
+ADDRESS_MAP_START(mini2440_state::mini2440_map)
// AM_RANGE(0x00000000, 0x001fffff) AM_ROM
AM_RANGE(0x30000000, 0x37ffffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/miniboy7.cpp b/src/mame/drivers/miniboy7.cpp
index e449c2ecd1b..a6486d0d874 100644
--- a/src/mame/drivers/miniboy7.cpp
+++ b/src/mame/drivers/miniboy7.cpp
@@ -190,6 +190,7 @@ public:
DECLARE_PALETTE_INIT(miniboy7);
void miniboy7(machine_config &config);
+ void miniboy7_map(address_map &map);
private:
uint8_t m_ay_pb;
int m_gpri;
@@ -344,7 +345,7 @@ WRITE_LINE_MEMBER(miniboy7_state::pia_ca2_w)
* Memory Map Information *
***********************************/
-static ADDRESS_MAP_START( miniboy7_map, AS_PROGRAM, 8, miniboy7_state )
+ADDRESS_MAP_START(miniboy7_state::miniboy7_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM? */
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("videoram_a")
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("colorram_a")
diff --git a/src/mame/drivers/minicom.cpp b/src/mame/drivers/minicom.cpp
index d82b0251584..ce0708d42e2 100644
--- a/src/mame/drivers/minicom.cpp
+++ b/src/mame/drivers/minicom.cpp
@@ -56,6 +56,7 @@ public:
DECLARE_READ8_MEMBER(minicom_io_r);
DECLARE_DRIVER_INIT(minicom);
void minicom(machine_config &config);
+ void i87c52_io(address_map &map);
private:
uint8_t m_p[4];
uint16_t m_display_data;
@@ -65,7 +66,7 @@ private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(i87c52_io, AS_IO, 8, minicom_state)
+ADDRESS_MAP_START(minicom_state::i87c52_io)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(minicom_io_r, minicom_io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/miniforce.cpp b/src/mame/drivers/miniforce.cpp
index 1e411d2ea05..27e4f87313f 100644
--- a/src/mame/drivers/miniforce.cpp
+++ b/src/mame/drivers/miniforce.cpp
@@ -136,10 +136,11 @@ miniforce_state(const machine_config &mconfig, device_type type, const char *tag
virtual void machine_start () override;
virtual void machine_reset () override;
void miniforce(machine_config &config);
+ void miniforce_mem(address_map &map);
};
#if 0
-static ADDRESS_MAP_START (miniforce_mem, AS_PROGRAM, 32, miniforce_state)
+ADDRESS_MAP_START(miniforce_state::miniforce_mem)
ADDRESS_MAP_UNMAP_HIGH
/* The ROMs contains an OS9 bootloader. It is position independent but reset vector suggests that it sits flat on adress 0 (zero) */
// AM_RANGE (0x000000, 0x003fff) AM_ROM AM_REGION("roms", 0x000000) /* System EPROM Area 16Kb OS9 DEBUG - not verified */
diff --git a/src/mame/drivers/miniframe.cpp b/src/mame/drivers/miniframe.cpp
index f8569fc6948..aa62c8cc28f 100644
--- a/src/mame/drivers/miniframe.cpp
+++ b/src/mame/drivers/miniframe.cpp
@@ -57,6 +57,8 @@ public:
required_shared_ptr<uint16_t> m_mapram;
void miniframe(machine_config &config);
+ void miniframe_mem(address_map &map);
+ void ramrombank_map(address_map &map);
private:
uint16_t *m_ramptr;
uint32_t m_ramsize;
@@ -186,7 +188,7 @@ uint32_t miniframe_state::screen_update(screen_device &screen, bitmap_ind16 &bit
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( miniframe_mem, AS_PROGRAM, 16, miniframe_state )
+ADDRESS_MAP_START(miniframe_state::miniframe_mem)
AM_RANGE(0x000000, 0x3fffff) AM_DEVICE("ramrombank", address_map_bank_device, amap16)
AM_RANGE(0x400000, 0x4007ff) AM_RAM AM_SHARE("mapram")
AM_RANGE(0x450000, 0x450001) AM_WRITE(general_ctrl_w)
@@ -196,7 +198,7 @@ static ADDRESS_MAP_START( miniframe_mem, AS_PROGRAM, 16, miniframe_state )
AM_RANGE(0xc90000, 0xc90003) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramrombank_map, AS_PROGRAM, 16, miniframe_state )
+ADDRESS_MAP_START(miniframe_state::ramrombank_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_REGION("bootrom", 0)
AM_RANGE(0x400000, 0x7fffff) AM_READWRITE(ram_mmu_r, ram_mmu_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/minitel_2_rpic.cpp b/src/mame/drivers/minitel_2_rpic.cpp
index 6edb8572bde..b42f6b915b7 100644
--- a/src/mame/drivers/minitel_2_rpic.cpp
+++ b/src/mame/drivers/minitel_2_rpic.cpp
@@ -108,6 +108,8 @@ public:
DECLARE_WRITE8_MEMBER ( ts9347_io_w );
void minitel2(machine_config &config);
+ void mem_io(address_map &map);
+ void mem_prg(address_map &map);
protected:
required_ioport_array<16> m_io_kbd;
virtual void machine_start() override;
@@ -294,11 +296,11 @@ TIMER_DEVICE_CALLBACK_MEMBER(minitel_state::minitel_scanline)
m_ts9347->update_scanline((uint16_t)param);
}
-static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8, minitel_state )
+ADDRESS_MAP_START(minitel_state::mem_prg)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mem_io, AS_IO, 8, minitel_state )
+ADDRESS_MAP_START(minitel_state::mem_io)
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(dev_keyb_ser_r, dev_crtl_reg_w)
/* ts9347 */
AM_RANGE(0x4000, 0x5ffF) AM_READWRITE(ts9347_io_r, ts9347_io_w)
diff --git a/src/mame/drivers/minivadr.cpp b/src/mame/drivers/minivadr.cpp
index f1bc2702a5b..70bbec71ba8 100644
--- a/src/mame/drivers/minivadr.cpp
+++ b/src/mame/drivers/minivadr.cpp
@@ -52,6 +52,7 @@ public:
uint32_t screen_update_minivadr(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void minivadr(machine_config &config);
+ void minivadr_map(address_map &map);
};
/*************************************
@@ -86,7 +87,7 @@ uint32_t minivadr_state::screen_update_minivadr(screen_device &screen, bitmap_rg
}
-static ADDRESS_MAP_START( minivadr_map, AS_PROGRAM, 8, minivadr_state )
+ADDRESS_MAP_START(minivadr_state::minivadr_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xe008, 0xe008) AM_READ_PORT("INPUTS") AM_WRITENOP // W - ???
diff --git a/src/mame/drivers/mirage.cpp b/src/mame/drivers/mirage.cpp
index 6797ca1cb23..16eb3a27668 100644
--- a/src/mame/drivers/mirage.cpp
+++ b/src/mame/drivers/mirage.cpp
@@ -93,6 +93,7 @@ public:
uint32_t screen_update_mirage(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
DECO16IC_BANK_CB_MEMBER(bank_callback);
void mirage(machine_config &config);
+ void mirage_map(address_map &map);
};
void miragemj_state::video_start()
@@ -157,7 +158,7 @@ WRITE16_MEMBER(miragemj_state::okim0_rombank_w)
m_oki_bgm->set_rom_bank(data & 0x7);
}
-static ADDRESS_MAP_START( mirage_map, AS_PROGRAM, 16, miragemj_state )
+ADDRESS_MAP_START(miragemj_state::mirage_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
/* tilemaps */
AM_RANGE(0x100000, 0x101fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_r, pf1_data_w) // 0x100000 - 0x101fff tested
diff --git a/src/mame/drivers/mirax.cpp b/src/mame/drivers/mirax.cpp
index 9b2bc7e318c..81d9140c60d 100644
--- a/src/mame/drivers/mirax.cpp
+++ b/src/mame/drivers/mirax.cpp
@@ -160,6 +160,8 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
void mirax(machine_config &config);
+ void mirax_main_map(address_map &map);
+ void mirax_sound_map(address_map &map);
};
@@ -315,7 +317,7 @@ WRITE_LINE_MEMBER(mirax_state::flip_screen_y_w)
m_flipscreen_y = state;
}
-static ADDRESS_MAP_START( mirax_main_map, AS_PROGRAM, 8, mirax_state )
+ADDRESS_MAP_START(mirax_state::mirax_main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc800, 0xd7ff) AM_RAM
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("videoram")
@@ -331,7 +333,7 @@ static ADDRESS_MAP_START( mirax_main_map, AS_PROGRAM, 8, mirax_state )
// AM_RANGE(0xf900, 0xf900) //sound cmd mirror? ack?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mirax_sound_map, AS_PROGRAM, 8, mirax_state )
+ADDRESS_MAP_START(mirax_state::mirax_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/missb2.cpp b/src/mame/drivers/missb2.cpp
index eb77572379a..e9bb7051f5d 100644
--- a/src/mame/drivers/missb2.cpp
+++ b/src/mame/drivers/missb2.cpp
@@ -46,6 +46,9 @@ public:
void missb2(machine_config &config);
void bublpong(machine_config &config);
+ void maincpu_map(address_map &map);
+ void sound_map(address_map &map);
+ void subcpu_map(address_map &map);
protected:
void configure_banks();
@@ -176,7 +179,7 @@ READ8_MEMBER(missb2_state::missb2_oki_r)
/* Memory Maps */
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, missb2_state )
+ADDRESS_MAP_START(missb2_state::maincpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdcff) AM_RAM AM_SHARE("videoram")
@@ -200,7 +203,7 @@ static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, missb2_state )
AM_RANGE(0xff98, 0xff98) AM_WRITENOP // ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subcpu_map, AS_PROGRAM, 8, missb2_state )
+ADDRESS_MAP_START(missb2_state::subcpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x9000, 0x9fff) AM_ROMBANK("bank2") // ROM data for the background palette ram
AM_RANGE(0xa000, 0xafff) AM_ROMBANK("bank3") // ROM data for the background palette ram
@@ -216,7 +219,7 @@ ADDRESS_MAP_END
// Looks like the original bublbobl code modified to support the OKI M6295.
// due to some really wacky bugs in the way the oki6295 was hacked in place, writes will happen to
// many addresses other than 9000: 9000-9001, 0000-0001, 3827-3828, 44a8-44a9
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, missb2_state )
+ADDRESS_MAP_START(missb2_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_READWRITE(missb2_oki_r, missb2_oki_w) //AM_MIRROR(0x0fff) ???
diff --git a/src/mame/drivers/missile.cpp b/src/mame/drivers/missile.cpp
index 2d23a45a20b..e01640201ee 100644
--- a/src/mame/drivers/missile.cpp
+++ b/src/mame/drivers/missile.cpp
@@ -426,6 +426,8 @@ public:
void missileb(machine_config &config);
void missile(machine_config &config);
void missilea(machine_config &config);
+ void bootleg_main_map(address_map &map);
+ void main_map(address_map &map);
};
@@ -944,12 +946,12 @@ READ8_MEMBER(missile_state::bootleg_r)
*************************************/
/* complete memory map derived from schematics (implemented above) */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, missile_state )
+ADDRESS_MAP_START(missile_state::main_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(missile_r, missile_w) AM_SHARE("videoram")
ADDRESS_MAP_END
/* adjusted from the above to get the bootlegs to boot */
-static ADDRESS_MAP_START( bootleg_main_map, AS_PROGRAM, 8, missile_state )
+ADDRESS_MAP_START(missile_state::bootleg_main_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(bootleg_r, bootleg_w) AM_SHARE("videoram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mitchell.cpp b/src/mame/drivers/mitchell.cpp
index e098e2448b9..e19db9f99ad 100644
--- a/src/mame/drivers/mitchell.cpp
+++ b/src/mame/drivers/mitchell.cpp
@@ -315,7 +315,7 @@ WRITE8_MEMBER(mitchell_state::input_w)
*
*************************************/
-static ADDRESS_MAP_START( mgakuen_map, AS_PROGRAM, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::mgakuen_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM_DEVWRITE("palette", palette_device, write8) /* palette RAM */
@@ -325,7 +325,7 @@ static ADDRESS_MAP_START( mgakuen_map, AS_PROGRAM, 8, mitchell_state )
AM_RANGE(0xf000, 0xffff) AM_READWRITE(mgakuen_objram_r, mgakuen_objram_w) /* OBJ RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mitchell_map, AS_PROGRAM, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::mitchell_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(pang_paletteram_r,pang_paletteram_w) /* Banked palette RAM */
@@ -334,13 +334,13 @@ static ADDRESS_MAP_START( mitchell_map, AS_PROGRAM, 8, mitchell_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram") /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank0d")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1d")
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram") /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mitchell_io_map, AS_IO, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::mitchell_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(pang_gfxctrl_w) /* Palette bank, layer enable, coin counters, more */
AM_RANGE(0x00, 0x02) AM_READ(input_r) /* The Mahjong games and Block Block need special input treatment */
@@ -357,7 +357,7 @@ static ADDRESS_MAP_START( mitchell_io_map, AS_IO, 8, mitchell_state )
ADDRESS_MAP_END
/* spangbl */
-static ADDRESS_MAP_START( spangbl_map, AS_PROGRAM, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::spangbl_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_WRITENOP
AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(pang_paletteram_r, pang_paletteram_w) /* Banked palette RAM */
@@ -366,7 +366,7 @@ static ADDRESS_MAP_START( spangbl_map, AS_PROGRAM, 8, mitchell_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram") /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spangbl_io_map, AS_IO, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::spangbl_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x02) AM_READ(input_r)
AM_RANGE(0x00, 0x00) AM_WRITE(pangbl_gfxctrl_w) /* Palette bank, layer enable, coin counters, more */
@@ -387,7 +387,7 @@ WRITE8_MEMBER(mitchell_state::sound_bankswitch_w)
m_soundbank->set_entry(data & 7);
}
-static ADDRESS_MAP_START( spangbl_sound_map, AS_PROGRAM, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::spangbl_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank")
AM_RANGE(0xe000, 0xe000) AM_WRITE(sound_bankswitch_w)
@@ -397,7 +397,7 @@ static ADDRESS_MAP_START( spangbl_sound_map, AS_PROGRAM, 8, mitchell_state )
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pangba_sound_map, AS_PROGRAM, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::pangba_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank")
AM_RANGE(0xe000, 0xe000) AM_WRITE(sound_bankswitch_w)
@@ -414,7 +414,7 @@ WRITE8_MEMBER(mitchell_state::oki_banking_w)
m_oki->set_rom_bank(data & 3);
}
-static ADDRESS_MAP_START( mstworld_sound_map, AS_PROGRAM, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::mstworld_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(oki_banking_w)
@@ -428,7 +428,7 @@ WRITE8_MEMBER(mitchell_state::mstworld_sound_w)
m_audiocpu->set_input_line(0, HOLD_LINE);
}
-static ADDRESS_MAP_START( mstworld_io_map, AS_IO, 8, mitchell_state )
+ADDRESS_MAP_START(mitchell_state::mstworld_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(mstworld_gfxctrl_w) /* Palette bank, layer enable, coin counters, more */
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
@@ -1197,7 +1197,7 @@ MACHINE_CONFIG_START(mitchell_state::pang)
MCFG_CPU_ADD("maincpu",Z80, XTAL(16'000'000)/2) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(mitchell_map)
MCFG_CPU_IO_MAP(mitchell_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", mitchell_state, mitchell_irq, "screen", 0, 1)
MCFG_MACHINE_START_OVERRIDE(mitchell_state,mitchell)
@@ -1271,7 +1271,7 @@ MACHINE_CONFIG_DERIVED(mitchell_state::spangbl, pangnv)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(spangbl_map)
MCFG_CPU_IO_MAP(spangbl_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", mitchell_state, irq0_line_hold)
MCFG_DEVICE_REMOVE("scantimer")
@@ -1311,7 +1311,7 @@ MACHINE_CONFIG_START(mitchell_state::mstworld)
MCFG_CPU_ADD("maincpu", Z80, 6000000*4)
MCFG_CPU_PROGRAM_MAP(mitchell_map)
MCFG_CPU_IO_MAP(mstworld_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", mitchell_state, irq0_line_hold)
MCFG_CPU_ADD("audiocpu", Z80,6000000) /* 6 MHz? */
@@ -1352,7 +1352,7 @@ MACHINE_CONFIG_START(mitchell_state::marukin)
MCFG_CPU_ADD("maincpu", Z80, XTAL(16'000'000)/2) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(mitchell_map)
MCFG_CPU_IO_MAP(mitchell_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", mitchell_state, mitchell_irq, "screen", 0, 1)
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
@@ -1407,7 +1407,7 @@ MACHINE_CONFIG_START(mitchell_state::pkladiesbl)
MCFG_CPU_ADD("maincpu", Z80, XTAL(12'000'000)/2) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(mitchell_map)
MCFG_CPU_IO_MAP(mitchell_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", mitchell_state, mitchell_irq, "screen", 0, 1)
MCFG_EEPROM_SERIAL_93C46_ADD("eeprom")
diff --git a/src/mame/drivers/mits680b.cpp b/src/mame/drivers/mits680b.cpp
index 8ff8e5596f3..e70d2bea596 100644
--- a/src/mame/drivers/mits680b.cpp
+++ b/src/mame/drivers/mits680b.cpp
@@ -38,6 +38,7 @@ public:
DECLARE_READ8_MEMBER(status_check_r);
void mits680b(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
@@ -48,7 +49,7 @@ READ8_MEMBER( mits680b_state::status_check_r )
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, mits680b_state)
+ADDRESS_MAP_START(mits680b_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM // 1024 bytes RAM
AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("acia", acia6850_device, read, write)
diff --git a/src/mame/drivers/mjkjidai.cpp b/src/mame/drivers/mjkjidai.cpp
index c8efefd490b..075622f2806 100644
--- a/src/mame/drivers/mjkjidai.cpp
+++ b/src/mame/drivers/mjkjidai.cpp
@@ -80,7 +80,7 @@ WRITE8_MEMBER(mjkjidai_state::keyboard_select_hi_w)
}
-static ADDRESS_MAP_START( mjkjidai_map, AS_PROGRAM, 8, mjkjidai_state )
+ADDRESS_MAP_START(mjkjidai_state::mjkjidai_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -88,7 +88,7 @@ static ADDRESS_MAP_START( mjkjidai_map, AS_PROGRAM, 8, mjkjidai_state )
AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(mjkjidai_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjkjidai_io_map, AS_IO, 8, mjkjidai_state )
+ADDRESS_MAP_START(mjkjidai_state::mjkjidai_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi1", i8255_device, read, write)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi2", i8255_device, read, write)
diff --git a/src/mame/drivers/mjsenpu.cpp b/src/mame/drivers/mjsenpu.cpp
index 1b0325070f0..4122704a7b0 100644
--- a/src/mame/drivers/mjsenpu.cpp
+++ b/src/mame/drivers/mjsenpu.cpp
@@ -101,6 +101,8 @@ public:
required_device<palette_device> m_palette;
void mjsenpu(machine_config &config);
+ void mjsenpu_32bit_map(address_map &map);
+ void mjsenpu_io(address_map &map);
};
@@ -212,7 +214,7 @@ READ32_MEMBER(mjsenpu_state::muxed_inputs_r)
return 0x00000000;// 0xffffffff;
}
-static ADDRESS_MAP_START( mjsenpu_32bit_map, AS_PROGRAM, 32, mjsenpu_state )
+ADDRESS_MAP_START(mjsenpu_state::mjsenpu_32bit_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x40000000, 0x401fffff) AM_ROM AM_REGION("user2",0) // main game rom
@@ -227,7 +229,7 @@ static ADDRESS_MAP_START( mjsenpu_32bit_map, AS_PROGRAM, 32, mjsenpu_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjsenpu_io, AS_IO, 32, mjsenpu_state )
+ADDRESS_MAP_START(mjsenpu_state::mjsenpu_io)
AM_RANGE(0x4000, 0x4003) AM_READ(muxed_inputs_r)
AM_RANGE(0x4010, 0x4013) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/mjsister.cpp b/src/mame/drivers/mjsister.cpp
index 3ae23fddd0a..b43906bd9e2 100644
--- a/src/mame/drivers/mjsister.cpp
+++ b/src/mame/drivers/mjsister.cpp
@@ -92,6 +92,8 @@ public:
void plot1( int offset, uint8_t data );
void mjsister(machine_config &config);
+ void mjsister_io_map(address_map &map);
+ void mjsister_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -314,13 +316,13 @@ READ8_MEMBER(mjsister_state::keys_r)
*
*************************************/
-static ADDRESS_MAP_START( mjsister_map, AS_PROGRAM, 8, mjsister_state )
+ADDRESS_MAP_START(mjsister_state::mjsister_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_WRITE(videoram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjsister_io_map, AS_IO, 8, mjsister_state )
+ADDRESS_MAP_START(mjsister_state::mjsister_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITENOP /* HD46505? */
AM_RANGE(0x10, 0x10) AM_DEVWRITE("aysnd", ay8910_device, address_w)
diff --git a/src/mame/drivers/mk1.cpp b/src/mame/drivers/mk1.cpp
index b13cf4d156d..b5847b4dc99 100644
--- a/src/mame/drivers/mk1.cpp
+++ b/src/mame/drivers/mk1.cpp
@@ -64,6 +64,8 @@ public:
F3853_INTERRUPT_REQ_CB(mk1_interrupt);
required_device<cpu_device> m_maincpu;
void mk1(machine_config &config);
+ void mk1_io(address_map &map);
+ void mk1_mem(address_map &map);
};
@@ -106,13 +108,13 @@ WRITE8_MEMBER( mk1_state::mk1_f8_w )
if ( ! ( m_f8[1] & 8 ) ) m_led[3] = bitswap<8>( m_f8[0],2,1,3,4,5,6,7,0 );
}
-static ADDRESS_MAP_START( mk1_mem, AS_PROGRAM, 8, mk1_state )
+ADDRESS_MAP_START(mk1_state::mk1_mem)
AM_RANGE( 0x0000, 0x07ff ) AM_ROM
AM_RANGE( 0x1800, 0x18ff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mk1_io, AS_IO, 8, mk1_state )
+ADDRESS_MAP_START(mk1_state::mk1_io)
AM_RANGE( 0x0, 0x1 ) AM_READWRITE( mk1_f8_r, mk1_f8_w )
AM_RANGE( 0xc, 0xf ) AM_DEVREADWRITE("f3853", f3853_device, read, write )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mk14.cpp b/src/mame/drivers/mk14.cpp
index 4e5765663ee..0c37886d600 100644
--- a/src/mame/drivers/mk14.cpp
+++ b/src/mame/drivers/mk14.cpp
@@ -62,6 +62,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(cass_w);
DECLARE_READ_LINE_MEMBER(cass_r);
void mk14(machine_config &config);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -106,7 +107,7 @@ WRITE8_MEMBER( mk14_state::display_w )
}
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, mk14_state)
+ADDRESS_MAP_START(mk14_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x0fff)
AM_RANGE(0x000, 0x1ff) AM_MIRROR(0x600) AM_ROM // ROM
diff --git a/src/mame/drivers/mk2.cpp b/src/mame/drivers/mk2.cpp
index c6bb1dfa213..8127c6b1cb3 100644
--- a/src/mame/drivers/mk2.cpp
+++ b/src/mame/drivers/mk2.cpp
@@ -81,11 +81,12 @@ public:
virtual void machine_start() override;
TIMER_DEVICE_CALLBACK_MEMBER(update_leds);
void mk2(machine_config &config);
+ void mk2_mem(address_map &map);
};
// only lower 12 address bits on bus!
-static ADDRESS_MAP_START(mk2_mem , AS_PROGRAM, 8, mk2_state)
+ADDRESS_MAP_START(mk2_state::mk2_mem)
AM_RANGE( 0x0000, 0x01ff) AM_RAM // 2 2111, should be mirrored
AM_RANGE( 0x0b00, 0x0b0f) AM_DEVREADWRITE("miot", mos6530_device, read, write)
AM_RANGE( 0x0b80, 0x0bbf) AM_RAM // rriot ram
diff --git a/src/mame/drivers/mk85.cpp b/src/mame/drivers/mk85.cpp
index 408935b5774..88179ad6e90 100644
--- a/src/mame/drivers/mk85.cpp
+++ b/src/mame/drivers/mk85.cpp
@@ -38,10 +38,11 @@ public:
uint32_t screen_update_mk85(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void mk85(machine_config &config);
+ void mk85_mem(address_map &map);
};
-static ADDRESS_MAP_START(mk85_mem, AS_PROGRAM, 16, mk85_state)
+ADDRESS_MAP_START(mk85_state::mk85_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_ROM AM_MIRROR(0x4000)
AM_RANGE( 0x8000, 0xffff ) AM_RAM
diff --git a/src/mame/drivers/mk90.cpp b/src/mame/drivers/mk90.cpp
index 11d455b606c..b1c7da08647 100644
--- a/src/mame/drivers/mk90.cpp
+++ b/src/mame/drivers/mk90.cpp
@@ -33,10 +33,11 @@ public:
uint32_t screen_update_mk90(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void mk90(machine_config &config);
+ void mk90_mem(address_map &map);
};
-static ADDRESS_MAP_START(mk90_mem, AS_PROGRAM, 16, mk90_state)
+ADDRESS_MAP_START(mk90_state::mk90_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAM // RAM
AM_RANGE(0x4000, 0x7fff) AM_ROM // Extension ROM
diff --git a/src/mame/drivers/mkit09.cpp b/src/mame/drivers/mkit09.cpp
index 59482e5bbea..c16c0054b2a 100644
--- a/src/mame/drivers/mkit09.cpp
+++ b/src/mame/drivers/mkit09.cpp
@@ -59,6 +59,9 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(trigger_nmi);
void mkit09a(machine_config &config);
void mkit09(machine_config &config);
+ void mkit09_io(address_map &map);
+ void mkit09_mem(address_map &map);
+ void mkit09a_mem(address_map &map);
private:
uint8_t m_keydata;
virtual void machine_reset() override;
@@ -68,14 +71,14 @@ private:
};
-static ADDRESS_MAP_START(mkit09_mem, AS_PROGRAM, 8, mkit09_state)
+ADDRESS_MAP_START(mkit09_state::mkit09_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x07ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0xa004,0xa007) AM_MIRROR(0x1ff8) AM_DEVREADWRITE("pia", pia6821_device, read_alt, write_alt)
AM_RANGE(0xe000,0xe7ff) AM_MIRROR(0x1800) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mkit09a_mem, AS_PROGRAM, 8, mkit09_state)
+ADDRESS_MAP_START(mkit09_state::mkit09a_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x07ff) AM_RAM
AM_RANGE(0xe600,0xe603) AM_DEVREADWRITE("pia", pia6821_device, read_alt, write_alt)
@@ -83,7 +86,7 @@ static ADDRESS_MAP_START(mkit09a_mem, AS_PROGRAM, 8, mkit09_state)
AM_RANGE(0xf000,0xffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mkit09_io, AS_IO, 8, mkit09_state)
+ADDRESS_MAP_START(mkit09_state::mkit09_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mlanding.cpp b/src/mame/drivers/mlanding.cpp
index 60cc2f2ab42..754e23ba524 100644
--- a/src/mame/drivers/mlanding.cpp
+++ b/src/mame/drivers/mlanding.cpp
@@ -165,6 +165,13 @@ public:
void msm5205_update(int chip);
void mlanding(machine_config &config);
+ void audio_map_io(address_map &map);
+ void audio_map_prog(address_map &map);
+ void dsp_map_data(address_map &map);
+ void dsp_map_prog(address_map &map);
+ void main_map(address_map &map);
+ void mecha_map_prog(address_map &map);
+ void sub_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -709,7 +716,7 @@ READ8_MEMBER(mlanding_state::motor_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, mlanding_state )
+ADDRESS_MAP_START(mlanding_state::main_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM
AM_RANGE(0x100000, 0x17ffff) AM_RAM AM_SHARE("g_ram")
@@ -743,7 +750,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, mlanding_state )
+ADDRESS_MAP_START(mlanding_state::sub_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM
AM_RANGE(0x050000, 0x0503ff) AM_RAM AM_SHARE("dsp_prog")
@@ -762,11 +769,11 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( dsp_map_prog, AS_PROGRAM, 16, mlanding_state )
+ADDRESS_MAP_START(mlanding_state::dsp_map_prog)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dsp_prog")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp_map_data, AS_DATA, 16, mlanding_state )
+ADDRESS_MAP_START(mlanding_state::dsp_map_data)
AM_RANGE(0x0400, 0x1fff) AM_RAM AM_SHARE("dot_ram")
ADDRESS_MAP_END
@@ -776,7 +783,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( audio_map_prog, AS_PROGRAM, 8, mlanding_state )
+ADDRESS_MAP_START(mlanding_state::audio_map_prog)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -794,7 +801,7 @@ static ADDRESS_MAP_START( audio_map_prog, AS_PROGRAM, 8, mlanding_state )
AM_RANGE(0xfa00, 0xfa00) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map_io, AS_IO, 8, mlanding_state )
+ADDRESS_MAP_START(mlanding_state::audio_map_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
@@ -807,7 +814,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( mecha_map_prog, AS_PROGRAM, 8, mlanding_state )
+ADDRESS_MAP_START(mlanding_state::mecha_map_prog)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8fff) AM_RAM AM_SHARE("power_ram")
diff --git a/src/mame/drivers/mmagic.cpp b/src/mame/drivers/mmagic.cpp
index 4f730a5b5a8..293065e7598 100644
--- a/src/mame/drivers/mmagic.cpp
+++ b/src/mame/drivers/mmagic.cpp
@@ -92,6 +92,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void mmagic(machine_config &config);
+ void mmagic_io(address_map &map);
+ void mmagic_mem(address_map &map);
protected:
virtual void machine_start() override;
@@ -115,7 +117,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( mmagic_mem, AS_PROGRAM, 8, mmagic_state )
+ADDRESS_MAP_START(mmagic_state::mmagic_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x2000, 0x21ff) AM_RAM
@@ -125,7 +127,7 @@ static ADDRESS_MAP_START( mmagic_mem, AS_PROGRAM, 8, mmagic_state )
AM_RANGE(0x8004, 0x8004) AM_READ(vblank_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmagic_io, AS_IO, 8, mmagic_state )
+ADDRESS_MAP_START(mmagic_state::mmagic_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_WRITE(color_w)
AM_RANGE(0x81, 0x81) AM_WRITE(audio_w)
diff --git a/src/mame/drivers/mmd1.cpp b/src/mame/drivers/mmd1.cpp
index f238ed44397..0a9605b0c68 100644
--- a/src/mame/drivers/mmd1.cpp
+++ b/src/mame/drivers/mmd1.cpp
@@ -177,6 +177,10 @@ public:
required_device<cpu_device> m_maincpu;
void mmd1(machine_config &config);
void mmd2(machine_config &config);
+ void mmd1_io(address_map &map);
+ void mmd1_mem(address_map &map);
+ void mmd2_io(address_map &map);
+ void mmd2_mem(address_map &map);
};
@@ -245,7 +249,7 @@ READ8_MEMBER( mmd1_state::mmd1_keyboard_r )
return m_return_code;
}
-static ADDRESS_MAP_START(mmd1_mem, AS_PROGRAM, 8, mmd1_state)
+ADDRESS_MAP_START(mmd1_state::mmd1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x00ff ) AM_ROM // Main ROM
AM_RANGE( 0x0100, 0x01ff ) AM_ROM // Expansion slot
@@ -253,7 +257,7 @@ static ADDRESS_MAP_START(mmd1_mem, AS_PROGRAM, 8, mmd1_state)
AM_RANGE( 0x0300, 0x03ff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mmd1_io, AS_IO, 8, mmd1_state)
+ADDRESS_MAP_START(mmd1_state::mmd1_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x07)
AM_RANGE( 0x00, 0x00 ) AM_READWRITE(mmd1_keyboard_r, mmd1_port0_w)
@@ -261,7 +265,7 @@ static ADDRESS_MAP_START(mmd1_io, AS_IO, 8, mmd1_state)
AM_RANGE( 0x02, 0x02 ) AM_WRITE(mmd1_port2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mmd2_mem, AS_PROGRAM, 8, mmd1_state)
+ADDRESS_MAP_START(mmd1_state::mmd2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
AM_RANGE(0x0400, 0x0fff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank4")
@@ -270,7 +274,7 @@ static ADDRESS_MAP_START(mmd2_mem, AS_PROGRAM, 8, mmd1_state)
AM_RANGE(0xfc00, 0xfcff) AM_RAM // Scratchpad
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mmd2_io, AS_IO, 8, mmd1_state)
+ADDRESS_MAP_START(mmd1_state::mmd2_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00, 0x00 ) AM_WRITE(mmd1_port0_w)
AM_RANGE( 0x01, 0x01 ) AM_READWRITE(mmd2_01_r,mmd1_port1_w)
diff --git a/src/mame/drivers/mmm.cpp b/src/mame/drivers/mmm.cpp
index e0cdb2121e6..8028066b8df 100644
--- a/src/mame/drivers/mmm.cpp
+++ b/src/mame/drivers/mmm.cpp
@@ -19,6 +19,7 @@ public:
mmm_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
+ m_ctc(*this, "ctc"),
m_inputs(*this, "IN%u", 0)
{ }
@@ -27,8 +28,11 @@ public:
DECLARE_WRITE8_MEMBER(ay_porta_w);
void mmm(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
+ required_device<z80ctc_device> m_ctc;
required_ioport_array<8> m_inputs;
u8 m_strobe;
};
@@ -53,18 +57,18 @@ WRITE8_MEMBER(mmm_state::ay_porta_w)
logerror("Writing %02X to AY-3-8910 port A\n", data);
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, mmm_state )
+ADDRESS_MAP_START(mmm_state::mem_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x40ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, mmm_state )
+ADDRESS_MAP_START(mmm_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(strobe_w)
AM_RANGE(0x03, 0x03) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0x04, 0x04) AM_DEVWRITE("aysnd", ay8910_device, data_w)
AM_RANGE(0x05, 0x05) AM_DEVREAD("aysnd", ay8910_device, data_r)
- AM_RANGE(0x06, 0x06) AM_SELECT(0x30) AM_DEVREADWRITE_MOD("ctc", z80ctc_device, read, write, rshift<4>)
+ ;map(0x06, 0x06).select(0x30).lrw8("ctc_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_ctc->read(space, offset >> 4, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_ctc->write(space, offset >> 4, data, mem_mask); });
AM_RANGE(0x07, 0x07) AM_READ(inputs_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mmodular.cpp b/src/mame/drivers/mmodular.cpp
index 0bea946e5c0..df952d60bff 100644
--- a/src/mame/drivers/mmodular.cpp
+++ b/src/mame/drivers/mmodular.cpp
@@ -57,6 +57,11 @@ public:
void van16(machine_config &config);
void alm16(machine_config &config);
void gen32(machine_config &config);
+ void alm16_mem(address_map &map);
+ void alm32_mem(address_map &map);
+ void gen32_mem(address_map &map);
+ void van16_mem(address_map &map);
+ void van32_mem(address_map &map);
};
@@ -72,13 +77,14 @@ public:
DECLARE_READ8_MEMBER(berlinp_input_r);
void berlinp(machine_config &config);
+ void berlinp_mem(address_map &map);
private:
required_device<mephisto_board_device> m_board;
required_ioport m_keys;
};
-static ADDRESS_MAP_START(alm16_mem, AS_PROGRAM, 16, mmodular_state)
+ADDRESS_MAP_START(mmodular_state::alm16_mem)
AM_RANGE( 0x000000, 0x01ffff ) AM_ROM
AM_RANGE( 0xc00000, 0xc00001 ) AM_DEVREAD8("board", mephisto_board_device, input_r, 0xff00)
@@ -94,7 +100,7 @@ static ADDRESS_MAP_START(alm16_mem, AS_PROGRAM, 16, mmodular_state)
AM_RANGE( 0x800000, 0x803fff ) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(van16_mem, AS_PROGRAM, 16, mmodular_state)
+ADDRESS_MAP_START(mmodular_state::van16_mem)
AM_IMPORT_FROM(alm16_mem)
AM_RANGE( 0x000000, 0x03ffff ) AM_ROM
@@ -104,7 +110,7 @@ static ADDRESS_MAP_START(van16_mem, AS_PROGRAM, 16, mmodular_state)
// AM_RANGE( 0xe80006, 0xe80007 ) AM_READ(read_unknown3 ) // Bavaria sensors
ADDRESS_MAP_END
-static ADDRESS_MAP_START(alm32_mem, AS_PROGRAM, 32, mmodular_state)
+ADDRESS_MAP_START(mmodular_state::alm32_mem)
AM_RANGE( 0x00000000, 0x0001ffff ) AM_ROM
AM_RANGE( 0x800000fc, 0x800000ff ) AM_DEVREAD8("board", mephisto_board_device, input_r, 0xff000000)
@@ -121,7 +127,7 @@ static ADDRESS_MAP_START(alm32_mem, AS_PROGRAM, 32, mmodular_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(van32_mem, AS_PROGRAM, 32, mmodular_state)
+ADDRESS_MAP_START(mmodular_state::van32_mem)
AM_IMPORT_FROM(alm32_mem)
AM_RANGE( 0x00000000, 0x0003ffff ) AM_ROM
@@ -131,7 +137,7 @@ static ADDRESS_MAP_START(van32_mem, AS_PROGRAM, 32, mmodular_state)
// AM_RANGE( 0x9800000c, 0x9800000f ) AM_READ(read_unknown3 ) // Bavaria sensors
ADDRESS_MAP_END
-static ADDRESS_MAP_START(gen32_mem, AS_PROGRAM, 32, mmodular_state)
+ADDRESS_MAP_START(mmodular_state::gen32_mem)
AM_RANGE( 0x00000000, 0x0003ffff ) AM_ROM
AM_RANGE( 0xc8000004, 0xc8000007 ) AM_DEVWRITE8("board", mephisto_board_device, mux_w, 0xff000000)
@@ -161,7 +167,7 @@ READ8_MEMBER(berlinp_state::berlinp_input_r)
return m_board->input_r(space, offset) ^ 0xff;
}
-static ADDRESS_MAP_START(berlinp_mem, AS_PROGRAM, 32, berlinp_state)
+ADDRESS_MAP_START(berlinp_state::berlinp_mem)
AM_RANGE( 0x000000, 0x03ffff ) AM_ROM
AM_RANGE( 0x800000, 0x800003 ) AM_READ8(berlinp_input_r, 0xff000000)
diff --git a/src/mame/drivers/mod8.cpp b/src/mame/drivers/mod8.cpp
index 8c032e5d750..e71c55be4a8 100644
--- a/src/mame/drivers/mod8.cpp
+++ b/src/mame/drivers/mod8.cpp
@@ -73,6 +73,8 @@ public:
DECLARE_READ8_MEMBER(tty_r);
IRQ_CALLBACK_MEMBER(mod8_irq_callback);
void mod8(machine_config &config);
+ void mod8_io(address_map &map);
+ void mod8_mem(address_map &map);
private:
uint16_t m_tty_data;
uint8_t m_tty_key_data;
@@ -108,13 +110,13 @@ READ8_MEMBER( mod8_state::tty_r )
return d;
}
-static ADDRESS_MAP_START(mod8_mem, AS_PROGRAM, 8, mod8_state)
+ADDRESS_MAP_START(mod8_state::mod8_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000,0x6ff) AM_ROM
AM_RANGE(0x700,0xfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mod8_io, AS_IO, 8, mod8_state)
+ADDRESS_MAP_START(mod8_state::mod8_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_READ(tty_r)
diff --git a/src/mame/drivers/model1.cpp b/src/mame/drivers/model1.cpp
index d7cac0e0f33..08cababe5bd 100644
--- a/src/mame/drivers/model1.cpp
+++ b/src/mame/drivers/model1.cpp
@@ -863,7 +863,7 @@ WRITE16_MEMBER(model1_state::mr2_w)
logerror("MW 10[r10], %f (%x)\n", *(float *)(m_mr2+0x1f10/2), m_maincpu->pc());
}
-static ADDRESS_MAP_START( model1_mem, AS_PROGRAM, 16, model1_state )
+ADDRESS_MAP_START(model1_state::model1_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("bank1")
AM_RANGE(0x200000, 0x2fffff) AM_ROM
@@ -910,12 +910,12 @@ static ADDRESS_MAP_START( model1_mem, AS_PROGRAM, 16, model1_state )
AM_RANGE(0xf80000, 0xffffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model1_io, AS_IO, 16, model1_state )
+ADDRESS_MAP_START(model1_state::model1_io)
AM_RANGE(0xd20000, 0xd20003) AM_READ(model1_tgp_copro_ram_r)
AM_RANGE(0xd80000, 0xd80003) AM_READ(model1_tgp_copro_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model1_vr_mem, AS_PROGRAM, 16, model1_state )
+ADDRESS_MAP_START(model1_state::model1_vr_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("bank1")
AM_RANGE(0x200000, 0x2fffff) AM_ROM
@@ -962,7 +962,7 @@ static ADDRESS_MAP_START( model1_vr_mem, AS_PROGRAM, 16, model1_state )
AM_RANGE(0xfc0000, 0xffffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model1_vr_io, AS_IO, 16, model1_state )
+ADDRESS_MAP_START(model1_state::model1_vr_io)
AM_RANGE(0xd20000, 0xd20003) AM_READ(model1_vr_tgp_ram_r)
AM_RANGE(0xd80000, 0xd80003) AM_READ(model1_vr_tgp_r)
ADDRESS_MAP_END
@@ -1665,7 +1665,7 @@ MACHINE_CONFIG_DERIVED(model1_state::swa, model1)
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(DSBZ80_TAG, dsbz80_device, write_txd))
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( polhemus_map, AS_PROGRAM, 16, model1_state )
+ADDRESS_MAP_START(model1_state::polhemus_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x00000, 0x03fff) AM_RAM
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("polhemus", 0)
diff --git a/src/mame/drivers/model2.cpp b/src/mame/drivers/model2.cpp
index 7ee07b12800..aa826e11909 100644
--- a/src/mame/drivers/model2.cpp
+++ b/src/mame/drivers/model2.cpp
@@ -1441,7 +1441,7 @@ READ32_MEMBER(model2_state::polygon_count_r)
}
/* common map for all Model 2 versions */
-static ADDRESS_MAP_START( model2_base_mem, AS_PROGRAM, 32, model2_state )
+ADDRESS_MAP_START(model2_state::model2_base_mem)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_WRITENOP
AM_RANGE(0x00500000, 0x005fffff) AM_RAM AM_SHARE("workram")
@@ -1546,7 +1546,7 @@ READ8_MEMBER(model2_state::model2o_in_r)
}
/* original Model 2 overrides */
-static ADDRESS_MAP_START( model2o_mem, AS_PROGRAM, 32, model2_state )
+ADDRESS_MAP_START(model2_state::model2o_mem)
AM_IMPORT_FROM(model2_base_mem)
AM_RANGE(0x00200000, 0x0021ffff) AM_RAM
@@ -1582,7 +1582,7 @@ READ32_MEMBER(model2_state::copro_status_r)
}
/* 2A-CRX overrides */
-static ADDRESS_MAP_START( model2a_crx_mem, AS_PROGRAM, 32, model2_state )
+ADDRESS_MAP_START(model2_state::model2a_crx_mem)
AM_IMPORT_FROM(model2_base_mem)
AM_RANGE(0x00200000, 0x0023ffff) AM_RAM
@@ -1610,7 +1610,7 @@ static ADDRESS_MAP_START( model2a_crx_mem, AS_PROGRAM, 32, model2_state )
ADDRESS_MAP_END
/* 2B-CRX overrides */
-static ADDRESS_MAP_START( model2b_crx_mem, AS_PROGRAM, 32, model2_state )
+ADDRESS_MAP_START(model2_state::model2b_crx_mem)
AM_IMPORT_FROM(model2_base_mem)
AM_RANGE(0x00200000, 0x0023ffff) AM_RAM
@@ -1647,7 +1647,7 @@ static ADDRESS_MAP_START( model2b_crx_mem, AS_PROGRAM, 32, model2_state )
ADDRESS_MAP_END
/* 2C-CRX overrides */
-static ADDRESS_MAP_START( model2c_crx_mem, AS_PROGRAM, 32, model2_state )
+ADDRESS_MAP_START(model2_state::model2c_crx_mem)
AM_IMPORT_FROM(model2_base_mem)
AM_RANGE(0x00200000, 0x0023ffff) AM_RAM
@@ -2055,7 +2055,7 @@ WRITE16_MEMBER(model2_state::model2snd_ctrl)
}
}
-static ADDRESS_MAP_START( model2_snd, AS_PROGRAM, 16, model2_state )
+ADDRESS_MAP_START(model2_state::model2_snd)
AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_REGION("audiocpu", 0) AM_SHARE("soundram")
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp", scsp_device, read, write)
AM_RANGE(0x400000, 0x400001) AM_WRITE(model2snd_ctrl)
@@ -2102,7 +2102,7 @@ WRITE32_MEMBER(model2_state::copro_sharc_buffer_w)
m_bufferram[offset & 0x7fff] = data;
}
-static ADDRESS_MAP_START( copro_sharc_map, AS_DATA, 32, model2_state )
+ADDRESS_MAP_START(model2_state::copro_sharc_map)
AM_RANGE(0x0400000, 0x0bfffff) AM_READ(copro_sharc_input_fifo_r)
AM_RANGE(0x0c00000, 0x13fffff) AM_WRITE(copro_sharc_output_fifo_w)
AM_RANGE(0x1400000, 0x1bfffff) AM_READWRITE(copro_sharc_buffer_r, copro_sharc_buffer_w)
@@ -2111,7 +2111,7 @@ static ADDRESS_MAP_START( copro_sharc_map, AS_DATA, 32, model2_state )
ADDRESS_MAP_END
#if 0
-static ADDRESS_MAP_START( geo_sharc_map, AS_DATA, 32, model2_state )
+ADDRESS_MAP_START(model2_state::geo_sharc_map)
ADDRESS_MAP_END
#endif
@@ -2128,7 +2128,7 @@ WRITE32_MEMBER(model2_state::copro_tgp_buffer_w)
m_bufferram[offset&0x7fff] = data;
}
-static ADDRESS_MAP_START( copro_tgp_map, AS_PROGRAM, 32, model2_state )
+ADDRESS_MAP_START(model2_state::copro_tgp_map)
AM_RANGE(0x00000000, 0x00007fff) AM_RAM AM_SHARE("tgp_program")
AM_RANGE(0x00400000, 0x00407fff) AM_READWRITE(copro_tgp_buffer_r, copro_tgp_buffer_w)
AM_RANGE(0x00800000, 0x009fffff) AM_ROM AM_REGION("tgp", 0)
@@ -2217,12 +2217,12 @@ WRITE8_MEMBER(model2_state::driveio_port_w)
// popmessage("%02x",data);
}
-static ADDRESS_MAP_START( drive_map, AS_PROGRAM, 8, model2_state )
+ADDRESS_MAP_START(model2_state::drive_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drive_io_map, AS_IO, 8, model2_state )
+ADDRESS_MAP_START(model2_state::drive_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP //watchdog
AM_RANGE(0x20, 0x2f) AM_DEVREADWRITE("driveio1", sega_315_5296_device, read, write)
@@ -2384,12 +2384,12 @@ MACHINE_CONFIG_DERIVED(model2_state::indy500, model2b)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( rchase2_iocpu_map, AS_PROGRAM, 8, model2_state )
+ADDRESS_MAP_START(model2_state::rchase2_iocpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rchase2_ioport_map, AS_IO, 8, model2_state )
+ADDRESS_MAP_START(model2_state::rchase2_ioport_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_DEVREADWRITE("ioexp", cxd1095_device, read, write)
ADDRESS_MAP_END
@@ -2403,7 +2403,7 @@ MACHINE_CONFIG_DERIVED(model2_state::rchase2, model2b)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( copro_tgpx4_map, AS_PROGRAM, 64, model2_state )
+ADDRESS_MAP_START(model2_state::copro_tgpx4_map)
AM_RANGE(0x00000000, 0x00007fff) AM_RAM AM_SHARE("tgpx4_program")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/model3.cpp b/src/mame/drivers/model3.cpp
index ab3b190880d..b673ab33af9 100644
--- a/src/mame/drivers/model3.cpp
+++ b/src/mame/drivers/model3.cpp
@@ -1825,7 +1825,7 @@ WRITE64_MEMBER(model3_state::daytona2_rombank_w)
}
}
-static ADDRESS_MAP_START( model3_10_mem, AS_PROGRAM, 64, model3_state )
+ADDRESS_MAP_START(model3_state::model3_10_mem)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_SHARE("work_ram") /* work RAM */
AM_RANGE(0x84000000, 0x8400003f) AM_READ(real3d_status_r )
@@ -1847,7 +1847,7 @@ static ADDRESS_MAP_START( model3_10_mem, AS_PROGRAM, 64, model3_state )
AM_RANGE(0xff800000, 0xffffffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model3_mem, AS_PROGRAM, 64, model3_state )
+ADDRESS_MAP_START(model3_state::model3_mem)
AM_IMPORT_FROM( model3_10_mem )
AM_RANGE(0xc0000000, 0xc003ffff) AM_DEVICE32("comm_board", m3comm_device, m3_map, 0xffffffffffffffffU )
ADDRESS_MAP_END
@@ -5753,7 +5753,7 @@ WRITE16_MEMBER(model3_state::model3snd_ctrl)
}
}
-static ADDRESS_MAP_START( model3_snd, AS_PROGRAM, 16, model3_state )
+ADDRESS_MAP_START(model3_state::model3_snd)
AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_REGION("scsp1", 0) AM_SHARE("soundram")
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp1", scsp_device, read, write)
AM_RANGE(0x200000, 0x27ffff) AM_RAM AM_REGION("scsp2", 0)
diff --git a/src/mame/drivers/modellot.cpp b/src/mame/drivers/modellot.cpp
index 1e9dee2d75f..00bbc33a988 100644
--- a/src/mame/drivers/modellot.cpp
+++ b/src/mame/drivers/modellot.cpp
@@ -60,6 +60,8 @@ public:
uint32_t screen_update_modellot(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void modellot(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_term_data;
virtual void machine_reset() override;
@@ -68,14 +70,14 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, modellot_state)
+ADDRESS_MAP_START(modellot_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xbfff) AM_RAM // 48k ram
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, modellot_state)
+ADDRESS_MAP_START(modellot_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x77, 0x77) AM_READ(port77_r)
diff --git a/src/mame/drivers/mogura.cpp b/src/mame/drivers/mogura.cpp
index 7fcd4c78101..e552919d3ab 100644
--- a/src/mame/drivers/mogura.cpp
+++ b/src/mame/drivers/mogura.cpp
@@ -42,6 +42,8 @@ public:
DECLARE_PALETTE_INIT(mogura);
uint32_t screen_update_mogura(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void mogura(machine_config &config);
+ void mogura_io_map(address_map &map);
+ void mogura_map(address_map &map);
};
@@ -135,14 +137,14 @@ WRITE8_MEMBER(mogura_state::mogura_gfxram_w)
}
-static ADDRESS_MAP_START( mogura_map, AS_PROGRAM, 8, mogura_state )
+ADDRESS_MAP_START(mogura_state::mogura_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM // main ram
AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(mogura_gfxram_w) AM_SHARE("gfxram") // ram based characters
AM_RANGE(0xf000, 0xffff) AM_RAM_WRITE(mogura_tileram_w) AM_SHARE("tileram") // tilemap
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mogura_io_map, AS_IO, 8, mogura_state )
+ADDRESS_MAP_START(mogura_state::mogura_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP // ??
AM_RANGE(0x08, 0x08) AM_READ_PORT("SYSTEM")
diff --git a/src/mame/drivers/mole.cpp b/src/mame/drivers/mole.cpp
index 366e259ea09..f71e2073da6 100644
--- a/src/mame/drivers/mole.cpp
+++ b/src/mame/drivers/mole.cpp
@@ -86,6 +86,7 @@ public:
virtual void video_start() override;
uint32_t screen_update_mole(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void mole(machine_config &config);
+ void mole_map(address_map &map);
};
@@ -200,7 +201,7 @@ READ8_MEMBER(mole_state::mole_protection_r)
*
*************************************/
-static ADDRESS_MAP_START( mole_map, AS_PROGRAM, 8, mole_state )
+ADDRESS_MAP_START(mole_state::mole_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x08ff) AM_READ(mole_protection_r)
AM_RANGE(0x0800, 0x0800) AM_WRITENOP // ???
diff --git a/src/mame/drivers/molecular.cpp b/src/mame/drivers/molecular.cpp
index eae19450758..950c5d3178d 100644
--- a/src/mame/drivers/molecular.cpp
+++ b/src/mame/drivers/molecular.cpp
@@ -94,6 +94,10 @@ public:
DECLARE_PALETTE_INIT(molecula);
void molecula(machine_config &config);
+ void molecula_app_io(address_map &map);
+ void molecula_app_map(address_map &map);
+ void molecula_file_io(address_map &map);
+ void molecula_file_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -171,21 +175,21 @@ WRITE8_MEMBER( molecula_state::sio_w)
printf("%c\n",data);
}
-static ADDRESS_MAP_START( molecula_file_map, AS_PROGRAM, 8, molecula_state )
+ADDRESS_MAP_START(molecula_state::molecula_file_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(file_r,file_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( molecula_file_io, AS_IO, 8, molecula_state )
+ADDRESS_MAP_START(molecula_state::molecula_file_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x40, 0x43) AM_READWRITE(sio_r,sio_w)
AM_RANGE(0x72, 0x73) AM_WRITE(file_output_w) // unknown
ADDRESS_MAP_END
-static ADDRESS_MAP_START( molecula_app_map, AS_PROGRAM, 8, molecula_state )
+ADDRESS_MAP_START(molecula_state::molecula_app_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(app_r,app_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( molecula_app_io, AS_IO, 8, molecula_state )
+ADDRESS_MAP_START(molecula_state::molecula_app_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_WRITE(app_output_w)
AM_RANGE(0x60, 0x63) AM_READWRITE(sio_r,sio_w)
diff --git a/src/mame/drivers/momoko.cpp b/src/mame/drivers/momoko.cpp
index e6de58aa63e..58189b59db3 100644
--- a/src/mame/drivers/momoko.cpp
+++ b/src/mame/drivers/momoko.cpp
@@ -63,7 +63,7 @@ WRITE8_MEMBER(momoko_state::momoko_bg_read_bank_w)
/****************************************************************************/
-static ADDRESS_MAP_START( momoko_map, AS_PROGRAM, 8, momoko_state )
+ADDRESS_MAP_START(momoko_state::momoko_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd064, 0xd0ff) AM_RAM AM_SHARE("spriteram")
@@ -87,7 +87,7 @@ static ADDRESS_MAP_START( momoko_map, AS_PROGRAM, 8, momoko_state )
AM_RANGE(0xf007, 0xf007) AM_WRITE(momoko_bg_priority_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( momoko_sound_map, AS_PROGRAM, 8, momoko_state )
+ADDRESS_MAP_START(momoko_state::momoko_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITENOP /* unknown */
diff --git a/src/mame/drivers/monty.cpp b/src/mame/drivers/monty.cpp
index c82732ab6a5..079838f5fc1 100644
--- a/src/mame/drivers/monty.cpp
+++ b/src/mame/drivers/monty.cpp
@@ -61,6 +61,9 @@ public:
void monty(machine_config &config);
void mmonty(machine_config &config);
+ void mmonty_mem(address_map &map);
+ void monty_io(address_map &map);
+ void monty_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<speaker_sound_device> m_speaker;
@@ -76,13 +79,13 @@ private:
};
-static ADDRESS_MAP_START( monty_mem, AS_PROGRAM, 8, monty_state )
+ADDRESS_MAP_START(monty_state::monty_mem)
AM_RANGE(0x0000, 0xbfff) AM_ROM
//AM_RANGE(0x4000, 0x4000) // The main rom checks to see if another program is here on startup
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmonty_mem, AS_PROGRAM, 8, monty_state )
+ADDRESS_MAP_START(monty_state::mmonty_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
//AM_RANGE(0xc000, 0xc000) // The main rom checks to see if another program is here on startup
AM_RANGE(0x8000, 0xffff) AM_ROM
@@ -90,7 +93,7 @@ static ADDRESS_MAP_START( mmonty_mem, AS_PROGRAM, 8, monty_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( monty_io, AS_IO, 8, monty_state )
+ADDRESS_MAP_START(monty_state::monty_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(ioCommandWrite0_w)
AM_RANGE(0x01, 0x01) AM_WRITE(sound_w)
diff --git a/src/mame/drivers/monzagp.cpp b/src/mame/drivers/monzagp.cpp
index f9992ddde60..6b3f12fba30 100644
--- a/src/mame/drivers/monzagp.cpp
+++ b/src/mame/drivers/monzagp.cpp
@@ -82,6 +82,8 @@ public:
required_ioport m_dsw;
void monzagp(machine_config &config);
+ void monzagp_io(address_map &map);
+ void monzagp_map(address_map &map);
private:
uint8_t m_p1;
uint8_t m_p2;
@@ -260,7 +262,7 @@ uint32_t monzagp_state::screen_update_monzagp(screen_device &screen, bitmap_ind1
return 0;
}
-static ADDRESS_MAP_START( monzagp_map, AS_PROGRAM, 8, monzagp_state )
+ADDRESS_MAP_START(monzagp_state::monzagp_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
@@ -403,7 +405,7 @@ WRITE8_MEMBER(monzagp_state::port2_w)
}
-static ADDRESS_MAP_START( monzagp_io, AS_IO, 8, monzagp_state )
+ADDRESS_MAP_START(monzagp_state::monzagp_io)
AM_RANGE(0x00, 0xff) AM_READWRITE(port_r, port_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/moo.cpp b/src/mame/drivers/moo.cpp
index 9c665accbbe..a1eefccea5b 100644
--- a/src/mame/drivers/moo.cpp
+++ b/src/mame/drivers/moo.cpp
@@ -299,7 +299,7 @@ WRITE16_MEMBER(moo_state::moobl_oki_bank_w)
m_oki->set_rom_bank(data & 0x0f);
}
-static ADDRESS_MAP_START( moo_map, AS_PROGRAM, 16, moo_state )
+ADDRESS_MAP_START(moo_state::moo_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE("k056832", k056832_device, word_w)
AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE("k053246", k053247_device, k053246_word_w)
@@ -333,7 +333,7 @@ static ADDRESS_MAP_START( moo_map, AS_PROGRAM, 16, moo_state )
#endif
ADDRESS_MAP_END
-static ADDRESS_MAP_START( moobl_map, AS_PROGRAM, 16, moo_state )
+ADDRESS_MAP_START(moo_state::moobl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE("k056832", k056832_device, word_w)
AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE("k053246", k053247_device, k053246_word_w)
@@ -359,7 +359,7 @@ static ADDRESS_MAP_START( moobl_map, AS_PROGRAM, 16, moo_state )
AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bucky_map, AS_PROGRAM, 16, moo_state )
+ADDRESS_MAP_START(moo_state::bucky_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM
AM_RANGE(0x090000, 0x09ffff) AM_RAM AM_SHARE("spriteram") /* Sprite RAM */
@@ -395,7 +395,7 @@ static ADDRESS_MAP_START( bucky_map, AS_PROGRAM, 16, moo_state )
#endif
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, moo_state )
+ADDRESS_MAP_START(moo_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/mosaic.cpp b/src/mame/drivers/mosaic.cpp
index 171534517da..837d8d5f84c 100644
--- a/src/mame/drivers/mosaic.cpp
+++ b/src/mame/drivers/mosaic.cpp
@@ -117,7 +117,7 @@ READ8_MEMBER(mosaic_state::gfire2_protection_r)
-static ADDRESS_MAP_START( mosaic_map, AS_PROGRAM, 8, mosaic_state )
+ADDRESS_MAP_START(mosaic_state::mosaic_map)
AM_RANGE(0x00000, 0x0ffff) AM_ROM
AM_RANGE(0x20000, 0x21fff) AM_RAM
AM_RANGE(0x22000, 0x22fff) AM_RAM_WRITE(bgvideoram_w) AM_SHARE("bgvideoram")
@@ -125,7 +125,7 @@ static ADDRESS_MAP_START( mosaic_map, AS_PROGRAM, 8, mosaic_state )
AM_RANGE(0x24000, 0x241ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gfire2_map, AS_PROGRAM, 8, mosaic_state )
+ADDRESS_MAP_START(mosaic_state::gfire2_map)
AM_RANGE(0x00000, 0x0ffff) AM_ROM
AM_RANGE(0x10000, 0x17fff) AM_RAM
AM_RANGE(0x22000, 0x22fff) AM_RAM_WRITE(bgvideoram_w) AM_SHARE("bgvideoram")
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( gfire2_map, AS_PROGRAM, 8, mosaic_state )
AM_RANGE(0x24000, 0x241ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mosaic_io_map, AS_IO, 8, mosaic_state )
+ADDRESS_MAP_START(mosaic_state::mosaic_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_WRITENOP /* Z180 internal registers */
AM_RANGE(0x30, 0x30) AM_READNOP /* Z180 internal registers */
@@ -143,7 +143,7 @@ static ADDRESS_MAP_START( mosaic_io_map, AS_IO, 8, mosaic_state )
AM_RANGE(0x76, 0x76) AM_READ_PORT("P2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gfire2_io_map, AS_IO, 8, mosaic_state )
+ADDRESS_MAP_START(mosaic_state::gfire2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_WRITENOP /* Z180 internal registers */
AM_RANGE(0x30, 0x30) AM_READNOP /* Z180 internal registers */
diff --git a/src/mame/drivers/mouser.cpp b/src/mame/drivers/mouser.cpp
index 60da75c638e..a153c2136fb 100644
--- a/src/mame/drivers/mouser.cpp
+++ b/src/mame/drivers/mouser.cpp
@@ -64,7 +64,7 @@ INTERRUPT_GEN_MEMBER(mouser_state::mouser_sound_nmi_assert)
device.execute().set_input_line(INPUT_LINE_NMI, ASSERT_LINE);
}
-static ADDRESS_MAP_START( mouser_map, AS_PROGRAM, 8, mouser_state )
+ADDRESS_MAP_START(mouser_state::mouser_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6bff) AM_RAM
AM_RANGE(0x8800, 0x88ff) AM_WRITENOP /* unknown */
@@ -78,18 +78,18 @@ static ADDRESS_MAP_START( mouser_map, AS_PROGRAM, 8, mouser_state )
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("P2") AM_WRITE(mouser_sound_interrupt_w) /* byte to sound cpu */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, mouser_state )
+ADDRESS_MAP_START(mouser_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mouser_sound_map, AS_PROGRAM, 8, mouser_state )
+ADDRESS_MAP_START(mouser_state::mouser_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_READ(mouser_sound_byte_r)
AM_RANGE(0x4000, 0x4000) AM_WRITE(mouser_sound_nmi_clear_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mouser_sound_io_map, AS_IO, 8, mouser_state )
+ADDRESS_MAP_START(mouser_state::mouser_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
@@ -204,7 +204,7 @@ MACHINE_CONFIG_START(mouser_state::mouser)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, 4000000) /* 4 MHz ? */
MCFG_CPU_PROGRAM_MAP(mouser_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", mouser_state, mouser_nmi_interrupt) /* NMI is masked externally */
MCFG_CPU_ADD("audiocpu", Z80, 4000000) /* ??? */
diff --git a/src/mame/drivers/mpf1.cpp b/src/mame/drivers/mpf1.cpp
index 00bc233ef27..4beba6016d1 100644
--- a/src/mame/drivers/mpf1.cpp
+++ b/src/mame/drivers/mpf1.cpp
@@ -58,17 +58,17 @@
/* Address Maps */
-static ADDRESS_MAP_START( mpf1_map, AS_PROGRAM, 8, mpf1_state )
+ADDRESS_MAP_START(mpf1_state::mpf1_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1800, 0x1fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpf1_step, AS_OPCODES, 8, mpf1_state )
+ADDRESS_MAP_START(mpf1_state::mpf1_step)
AM_RANGE(0x0000, 0xffff) AM_READ(step_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpf1b_map, AS_PROGRAM, 8, mpf1_state )
+ADDRESS_MAP_START(mpf1_state::mpf1b_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1800, 0x1fff) AM_RAM
@@ -76,13 +76,13 @@ static ADDRESS_MAP_START( mpf1b_map, AS_PROGRAM, 8, mpf1_state )
AM_RANGE(0x5000, 0x6fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpf1p_map, AS_PROGRAM, 8, mpf1_state )
+ADDRESS_MAP_START(mpf1_state::mpf1p_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpf1_io_map, AS_IO, 8, mpf1_state )
+ADDRESS_MAP_START(mpf1_state::mpf1_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x3c) AM_DEVREADWRITE(I8255A_TAG, i8255_device, read, write)
@@ -90,7 +90,7 @@ static ADDRESS_MAP_START( mpf1_io_map, AS_IO, 8, mpf1_state )
AM_RANGE(0x80, 0x83) AM_MIRROR(0x3c) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpf1b_io_map, AS_IO, 8, mpf1_state )
+ADDRESS_MAP_START(mpf1_state::mpf1b_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x3c) AM_DEVREADWRITE(I8255A_TAG, i8255_device, read, write)
@@ -99,7 +99,7 @@ static ADDRESS_MAP_START( mpf1b_io_map, AS_IO, 8, mpf1_state )
AM_RANGE(0xfe, 0xfe) AM_MIRROR(0x01) AM_DEVREADWRITE(TMS5220_TAG, tms5220_device, status_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpf1p_io_map, AS_IO, 8, mpf1_state )
+ADDRESS_MAP_START(mpf1_state::mpf1p_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x3c) AM_DEVREADWRITE(I8255A_TAG, i8255_device, read, write)
@@ -357,7 +357,7 @@ MACHINE_CONFIG_START(mpf1_state::mpf1)
/* basic machine hardware */
MCFG_CPU_ADD(Z80_TAG, Z80, XTAL(3'579'545)/2)
MCFG_CPU_PROGRAM_MAP(mpf1_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(mpf1_step)
+ MCFG_CPU_OPCODES_MAP(mpf1_step)
MCFG_CPU_IO_MAP(mpf1_io_map)
MCFG_Z80_DAISY_CHAIN(mpf1_daisy_chain)
@@ -391,7 +391,7 @@ MACHINE_CONFIG_START(mpf1_state::mpf1b)
/* basic machine hardware */
MCFG_CPU_ADD(Z80_TAG, Z80, XTAL(3'579'545)/2)
MCFG_CPU_PROGRAM_MAP(mpf1b_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(mpf1_step)
+ MCFG_CPU_OPCODES_MAP(mpf1_step)
MCFG_CPU_IO_MAP(mpf1b_io_map)
MCFG_Z80_DAISY_CHAIN(mpf1_daisy_chain)
@@ -428,7 +428,7 @@ MACHINE_CONFIG_START(mpf1_state::mpf1p)
/* basic machine hardware */
MCFG_CPU_ADD(Z80_TAG, Z80, 2500000)
MCFG_CPU_PROGRAM_MAP(mpf1p_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(mpf1_step)
+ MCFG_CPU_OPCODES_MAP(mpf1_step)
MCFG_CPU_IO_MAP(mpf1p_io_map)
MCFG_Z80_DAISY_CHAIN(mpf1_daisy_chain)
diff --git a/src/mame/drivers/mps1230.cpp b/src/mame/drivers/mps1230.cpp
index 074b28e96e2..fdea1f07d12 100644
--- a/src/mame/drivers/mps1230.cpp
+++ b/src/mame/drivers/mps1230.cpp
@@ -99,6 +99,7 @@ public:
void mps1000(machine_config &config);
void mps1230(machine_config &config);
+ void mps1230_map(address_map &map);
private:
};
@@ -122,7 +123,7 @@ void mps1230_state::machine_reset()
ADDRESS MAP
***************************************************************************/
-static ADDRESS_MAP_START( mps1230_map, AS_PROGRAM, 8, mps1230_state )
+ADDRESS_MAP_START(mps1230_state::mps1230_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xc000, 0xdfff) AM_RAM // as per the service manual
AM_RANGE(0xff80, 0xffff) AM_RAM // internal in cpu
diff --git a/src/mame/drivers/mpu12wbk.cpp b/src/mame/drivers/mpu12wbk.cpp
index 83039fcbc12..82c775f7e76 100644
--- a/src/mame/drivers/mpu12wbk.cpp
+++ b/src/mame/drivers/mpu12wbk.cpp
@@ -240,6 +240,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void mpu12wbk(machine_config &config);
+ void mpu12wbk_map(address_map &map);
};
@@ -310,7 +311,7 @@ PALETTE_INIT_MEMBER(mpu12wbk_state, mpu12wbk)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( mpu12wbk_map, AS_PROGRAM, 8, mpu12wbk_state )
+ADDRESS_MAP_START(mpu12wbk_state::mpu12wbk_map)
AM_RANGE(0x1400, 0x1400) AM_DEVWRITE("crtc", mc6845_device, address_w) // OK
AM_RANGE(0x1401, 0x1401) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w) // OK
AM_RANGE(0x1e00, 0x1e01) AM_DEVREADWRITE("ay8910", ay8910_device, data_r, address_data_w) // hmmmmm....
diff --git a/src/mame/drivers/mpu2.cpp b/src/mame/drivers/mpu2.cpp
index 403414cf471..79164189700 100644
--- a/src/mame/drivers/mpu2.cpp
+++ b/src/mame/drivers/mpu2.cpp
@@ -50,13 +50,14 @@ public:
{ }
void mpu2(machine_config &config);
+ void mpu2_basemap(address_map &map);
protected:
// devices
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mpu2_basemap, AS_PROGRAM, 8, mpu2_state )
+ADDRESS_MAP_START(mpu2_state::mpu2_basemap)
ADDRESS_MAP_GLOBAL_MASK(0x3fff) // A14/A15 Not Connected
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_ROM AM_REGION("romp1", 0)
diff --git a/src/mame/drivers/mpu3.cpp b/src/mame/drivers/mpu3.cpp
index eb774094154..b0c6f88d89d 100644
--- a/src/mame/drivers/mpu3.cpp
+++ b/src/mame/drivers/mpu3.cpp
@@ -268,6 +268,7 @@ public:
required_device<meters_device> m_meters;
optional_device<roc10937_device> m_vfd;
void mpu3base(machine_config &config);
+ void mpu3_basemap(address_map &map);
};
#define DISPLAY_PORT 0
@@ -830,7 +831,7 @@ READ8_MEMBER(mpu3_state::mpu3ptm_r)
return ptm2->read(offset >>2);
}
-static ADDRESS_MAP_START( mpu3_basemap, AS_PROGRAM, 8, mpu3_state )
+ADDRESS_MAP_START(mpu3_state::mpu3_basemap)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x1000, 0xffff) AM_ROM
AM_RANGE(0x8800, 0x881f) AM_READWRITE(mpu3ptm_r, mpu3ptm_w)/* PTM6840 IC2 */
diff --git a/src/mame/drivers/mpu4dealem.cpp b/src/mame/drivers/mpu4dealem.cpp
index 2fb4e27530f..627e417ba33 100644
--- a/src/mame/drivers/mpu4dealem.cpp
+++ b/src/mame/drivers/mpu4dealem.cpp
@@ -39,6 +39,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(dealem_vsync_changed);
required_device<gfxdecode_device> m_gfxdecode;
void dealem(machine_config &config);
+ void dealem_memmap(address_map &map);
};
@@ -152,7 +153,7 @@ WRITE_LINE_MEMBER(mpu4dealem_state::dealem_vsync_changed)
*
*************************************/
-static ADDRESS_MAP_START( dealem_memmap, AS_PROGRAM, 8, mpu4dealem_state )
+ADDRESS_MAP_START(mpu4dealem_state::dealem_memmap)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
diff --git a/src/mame/drivers/mpu4plasma.cpp b/src/mame/drivers/mpu4plasma.cpp
index 35bf356b998..7e0032032ba 100644
--- a/src/mame/drivers/mpu4plasma.cpp
+++ b/src/mame/drivers/mpu4plasma.cpp
@@ -35,11 +35,12 @@ public:
}
uint32_t screen_update_mpu4plasma(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void mpu4plasma(machine_config &config);
+ void mpu4plasma_map(address_map &map);
};
INPUT_PORTS_EXTERN( mpu4 );
-static ADDRESS_MAP_START( mpu4plasma_map, AS_PROGRAM, 16, mpu4plasma_state )
+ADDRESS_MAP_START(mpu4plasma_state::mpu4plasma_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
// why does it test this much ram, just sloppy code expecting mirroring?
diff --git a/src/mame/drivers/mpu4vid.cpp b/src/mame/drivers/mpu4vid.cpp
index 5086f210e03..c6219100094 100644
--- a/src/mame/drivers/mpu4vid.cpp
+++ b/src/mame/drivers/mpu4vid.cpp
@@ -302,6 +302,11 @@ public:
void crmaze(machine_config &config);
void bwbvid5(machine_config &config);
void mating(machine_config &config);
+ void bwbvid5_68k_map(address_map &map);
+ void bwbvid_68k_map(address_map &map);
+ void mpu4_68k_map(address_map &map);
+ void mpu4_vram(address_map &map);
+ void mpu4oki_68k_map(address_map &map);
};
/*************************************
@@ -398,7 +403,7 @@ READ8_MEMBER(mpu4vid_state::vram_r)
return m_vid_mainram[offset];
}
-static ADDRESS_MAP_START( mpu4_vram, 0, 8, mpu4vid_state )
+ADDRESS_MAP_START(mpu4vid_state::mpu4_vram)
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
@@ -1175,7 +1180,7 @@ MACHINE_RESET_MEMBER(mpu4vid_state,mpu4_vid)
m_chr_value = 0;
}
-static ADDRESS_MAP_START( mpu4_68k_map, AS_PROGRAM, 16, mpu4vid_state )
+ADDRESS_MAP_START(mpu4vid_state::mpu4_68k_map)
AM_RANGE(0x000000, 0x7fffff) AM_ROM
AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_SHARE("vid_mainram")
// AM_RANGE(0x810000, 0x81ffff) AM_RAM /* ? */
@@ -1190,7 +1195,7 @@ static ADDRESS_MAP_START( mpu4_68k_map, AS_PROGRAM, 16, mpu4vid_state )
AM_RANGE(0xffd000, 0xffd00f) AM_READWRITE8(vidcharacteriser_r, vidcharacteriser_w,0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpu4oki_68k_map, AS_PROGRAM, 16, mpu4vid_state )
+ADDRESS_MAP_START(mpu4vid_state::mpu4oki_68k_map)
AM_RANGE(0x000000, 0x5fffff) AM_ROM //AM_WRITENOP
AM_RANGE(0x600000, 0x63ffff) AM_RAM /* The Mating Game has an extra 256kB RAM on the program card */
// AM_RANGE(0x640000, 0x7fffff) AM_NOP /* Possible bug, reads and writes here */
@@ -1209,7 +1214,7 @@ static ADDRESS_MAP_START( mpu4oki_68k_map, AS_PROGRAM, 16, mpu4vid_state )
// AM_RANGE(0xfff000, 0xffffff) AM_NOP /* Possible bug, reads and writes here */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bwbvid_68k_map, AS_PROGRAM, 16, mpu4vid_state )
+ADDRESS_MAP_START(mpu4vid_state::bwbvid_68k_map)
AM_RANGE(0x000000, 0x7fffff) AM_ROM
AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_SHARE("vid_mainram")
AM_RANGE(0x810000, 0x81ffff) AM_RAM /* ? */
@@ -1225,7 +1230,7 @@ static ADDRESS_MAP_START( bwbvid_68k_map, AS_PROGRAM, 16, mpu4vid_state )
//AM_RANGE(0xa00004, 0xa0000f) AM_READWRITE(bwb_characteriser16_r, bwb_characteriser16_w)//AM_READWRITE(adpcm_r, adpcm_w) CHR ?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bwbvid5_68k_map, AS_PROGRAM, 16, mpu4vid_state )
+ADDRESS_MAP_START(mpu4vid_state::bwbvid5_68k_map)
AM_RANGE(0x000000, 0x7fffff) AM_ROM
AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_SHARE("vid_mainram")
AM_RANGE(0x810000, 0x81ffff) AM_RAM /* ? */
@@ -1245,7 +1250,7 @@ static ADDRESS_MAP_START( bwbvid5_68k_map, AS_PROGRAM, 16, mpu4vid_state )
ADDRESS_MAP_END
/* TODO: Fix up MPU4 map*/
-static ADDRESS_MAP_START( mpu4_6809_map, AS_PROGRAM, 8, mpu4_state )
+ADDRESS_MAP_START(mpu4_state::mpu4_6809_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0801) AM_DEVREADWRITE("acia6850_0", acia6850_device, read, write)
AM_RANGE(0x0880, 0x0881) AM_NOP //Read/write here
diff --git a/src/mame/drivers/mpu5.cpp b/src/mame/drivers/mpu5.cpp
index 34cb769c132..15cfd7aadcd 100644
--- a/src/mame/drivers/mpu5.cpp
+++ b/src/mame/drivers/mpu5.cpp
@@ -233,6 +233,7 @@ public:
DECLARE_WRITE32_MEMBER(pic_w);
void mpu5(machine_config &config);
+ void mpu5_map(address_map &map);
protected:
// devices
@@ -526,7 +527,7 @@ WRITE32_MEMBER(mpu5_state::mpu5_mem_w)
}
-static ADDRESS_MAP_START( mpu5_map, AS_PROGRAM, 32, mpu5_state )
+ADDRESS_MAP_START(mpu5_state::mpu5_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(mpu5_mem_r, mpu5_mem_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mpz80.cpp b/src/mame/drivers/mpz80.cpp
index af0681621f8..338eec746c0 100644
--- a/src/mame/drivers/mpz80.cpp
+++ b/src/mame/drivers/mpz80.cpp
@@ -532,7 +532,7 @@ WRITE8_MEMBER( mpz80_state::disp_col_w )
// ADDRESS_MAP( mpz80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( mpz80_mem, AS_PROGRAM, 8, mpz80_state )
+ADDRESS_MAP_START(mpz80_state::mpz80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mmu_r, mmu_w)
/*
Task 0 Segment 0 map:
@@ -552,7 +552,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( mpz80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( mpz80_io, AS_IO, 8, mpz80_state )
+ADDRESS_MAP_START(mpz80_state::mpz80_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mmu_io_r, mmu_io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mquake.cpp b/src/mame/drivers/mquake.cpp
index fe2447f2b4d..59635c340b9 100644
--- a/src/mame/drivers/mquake.cpp
+++ b/src/mame/drivers/mquake.cpp
@@ -61,6 +61,10 @@ public:
DECLARE_WRITE16_MEMBER( coin_chip_w );
void mquake(machine_config &config);
+ void a500_mem(address_map &map);
+ void main_map(address_map &map);
+ void mquake_es5503_map(address_map &map);
+ void overlay_512kb_map(address_map &map);
private:
required_device<es5503_device> m_es5503;
required_region_ptr<uint8_t> m_es5503_rom;
@@ -80,7 +84,7 @@ READ8_MEMBER( mquake_state::es5503_sample_r )
return m_es5503_rom[offset + (m_es5503->get_channel_strobe() * 0x10000)];
}
-static ADDRESS_MAP_START( mquake_es5503_map, 0, 8, mquake_state )
+ADDRESS_MAP_START(mquake_state::mquake_es5503_map)
AM_RANGE(0x000000, 0x1ffff) AM_READ(es5503_sample_r)
ADDRESS_MAP_END
@@ -118,13 +122,13 @@ WRITE16_MEMBER( mquake_state::coin_chip_w )
*
*************************************/
-static ADDRESS_MAP_START( overlay_512kb_map, AS_PROGRAM, 16, mquake_state )
+ADDRESS_MAP_START(mquake_state::overlay_512kb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x180000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, mquake_state )
+ADDRESS_MAP_START(mquake_state::a500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -137,7 +141,7 @@ static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, mquake_state )
AM_RANGE(0xf80000, 0xffffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, mquake_state )
+ADDRESS_MAP_START(mquake_state::main_map)
AM_IMPORT_FROM(a500_mem)
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x204000, 0x2041ff) AM_DEVREADWRITE8("es5503", es5503_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/mrdo.cpp b/src/mame/drivers/mrdo.cpp
index 649b270d44a..76c7cf2c02d 100644
--- a/src/mame/drivers/mrdo.cpp
+++ b/src/mame/drivers/mrdo.cpp
@@ -46,7 +46,7 @@ READ8_MEMBER(mrdo_state::mrdo_SECRE_r)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mrdo_state )
+ADDRESS_MAP_START(mrdo_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(mrdo_bgvideoram_w) AM_SHARE("bgvideoram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(mrdo_fgvideoram_w) AM_SHARE("fgvideoram")
diff --git a/src/mame/drivers/mrflea.cpp b/src/mame/drivers/mrflea.cpp
index 68859fd93c0..3db1ab4b01a 100644
--- a/src/mame/drivers/mrflea.cpp
+++ b/src/mame/drivers/mrflea.cpp
@@ -97,7 +97,7 @@ WRITE8_MEMBER(mrflea_state::mrflea_data1_w)
*
*************************************/
-static ADDRESS_MAP_START( mrflea_master_map, AS_PROGRAM, 8, mrflea_state )
+ADDRESS_MAP_START(mrflea_state::mrflea_master_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(mrflea_videoram_w) AM_SHARE("videoram")
@@ -105,7 +105,7 @@ static ADDRESS_MAP_START( mrflea_master_map, AS_PROGRAM, 8, mrflea_state )
AM_RANGE(0xec00, 0xecff) AM_RAM_WRITE(mrflea_spriteram_w) AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrflea_master_io_map, AS_IO, 8, mrflea_state )
+ADDRESS_MAP_START(mrflea_state::mrflea_master_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog? */
AM_RANGE(0x40, 0x43) AM_DEVREADWRITE("mainppi", i8255_device, read, write)
@@ -113,14 +113,14 @@ static ADDRESS_MAP_START( mrflea_master_io_map, AS_IO, 8, mrflea_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrflea_slave_map, AS_PROGRAM, 8, mrflea_state )
+ADDRESS_MAP_START(mrflea_state::mrflea_slave_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x80ff) AM_RAM
AM_RANGE(0x9000, 0x905a) AM_RAM /* ? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrflea_slave_io_map, AS_IO, 8, mrflea_state )
+ADDRESS_MAP_START(mrflea_state::mrflea_slave_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog */
AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("pic", pic8259_device, read, write)
diff --git a/src/mame/drivers/mrgame.cpp b/src/mame/drivers/mrgame.cpp
index 25e9d1574e6..f542791498f 100644
--- a/src/mame/drivers/mrgame.cpp
+++ b/src/mame/drivers/mrgame.cpp
@@ -86,6 +86,12 @@ public:
required_shared_ptr<uint8_t> m_p_objectram;
required_device<gfxdecode_device> m_gfxdecode;
void mrgame(machine_config &config);
+ void audio1_io(address_map &map);
+ void audio1_map(address_map &map);
+ void audio2_io(address_map &map);
+ void audio2_map(address_map &map);
+ void main_map(address_map &map);
+ void video_map(address_map &map);
private:
bool m_ack1;
bool m_ack2;
@@ -110,7 +116,7 @@ private:
};
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, mrgame_state )
+ADDRESS_MAP_START(mrgame_state::main_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x020000, 0x02ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x030000, 0x030001) AM_READ8(rsw_r, 0xff) //RSW ACK
@@ -123,7 +129,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, mrgame_state )
AM_RANGE(0x03000e, 0x03000f) AM_WRITENOP //EXT ADD - lamp/sol data
ADDRESS_MAP_END
-static ADDRESS_MAP_START( video_map, AS_PROGRAM, 8, mrgame_state )
+ADDRESS_MAP_START(mrgame_state::video_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("video", 0)
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("videoram")
@@ -133,12 +139,12 @@ static ADDRESS_MAP_START( video_map, AS_PROGRAM, 8, mrgame_state )
AM_RANGE(0x8100, 0x8103) AM_MIRROR(0x7efc) AM_DEVREADWRITE("ppi", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio1_map, AS_PROGRAM, 8, mrgame_state )
+ADDRESS_MAP_START(mrgame_state::audio1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("audio1", 0)
AM_RANGE(0xfc00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio1_io, AS_IO, 8, mrgame_state )
+ADDRESS_MAP_START(mrgame_state::audio1_io)
ADDRESS_MAP_GLOBAL_MASK(3)
AM_RANGE(0x0000, 0x0000) AM_DEVWRITE("dacvol", dac_byte_interface, write) //DA1
AM_RANGE(0x0001, 0x0001) AM_READ(sound_r) //IN1
@@ -146,12 +152,12 @@ static ADDRESS_MAP_START( audio1_io, AS_IO, 8, mrgame_state )
AM_RANGE(0x0003, 0x0003) AM_WRITENOP //SGS pass data to M114
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio2_map, AS_PROGRAM, 8, mrgame_state )
+ADDRESS_MAP_START(mrgame_state::audio2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("audio2", 0)
AM_RANGE(0xfc00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio2_io, AS_IO, 8, mrgame_state )
+ADDRESS_MAP_START(mrgame_state::audio2_io)
ADDRESS_MAP_GLOBAL_MASK(7)
AM_RANGE(0x0000, 0x0000) AM_DEVWRITE("ldac", dac_byte_interface, write) //DA2
AM_RANGE(0x0001, 0x0001) AM_READ(sound_r) //IN2
diff --git a/src/mame/drivers/mrjong.cpp b/src/mame/drivers/mrjong.cpp
index 8d089d53437..35aa3d84bcc 100644
--- a/src/mame/drivers/mrjong.cpp
+++ b/src/mame/drivers/mrjong.cpp
@@ -72,7 +72,7 @@ READ8_MEMBER(mrjong_state::io_0x03_r)
*
*************************************/
-static ADDRESS_MAP_START( mrjong_map, AS_PROGRAM, 8, mrjong_state )
+ADDRESS_MAP_START(mrjong_state::mrjong_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa7ff) AM_RAM
@@ -80,7 +80,7 @@ static ADDRESS_MAP_START( mrjong_map, AS_PROGRAM, 8, mrjong_state )
AM_RANGE(0xe400, 0xe7ff) AM_RAM_WRITE(mrjong_colorram_w) AM_SHARE("colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrjong_io_map, AS_IO, 8, mrjong_state )
+ADDRESS_MAP_START(mrjong_state::mrjong_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P2") AM_WRITE(mrjong_flipscreen_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76489_device, write)
diff --git a/src/mame/drivers/ms0515.cpp b/src/mame/drivers/ms0515.cpp
index 77449ca6c10..1f319dd539b 100644
--- a/src/mame/drivers/ms0515.cpp
+++ b/src/mame/drivers/ms0515.cpp
@@ -101,6 +101,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(irq11_w);
void ms0515(machine_config &config);
+ void ms0515_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -127,7 +128,7 @@ private:
floppy_image_device *m_floppy;
};
-static ADDRESS_MAP_START(ms0515_mem, AS_PROGRAM, 16, ms0515_state)
+ADDRESS_MAP_START(ms0515_state::ms0515_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0000000, 0017777) AM_RAMBANK("bank0") // RAM
AM_RANGE(0020000, 0037777) AM_RAMBANK("bank1") // RAM
diff --git a/src/mame/drivers/ms32.cpp b/src/mame/drivers/ms32.cpp
index 1285da407da..0d6d7836db9 100644
--- a/src/mame/drivers/ms32.cpp
+++ b/src/mame/drivers/ms32.cpp
@@ -346,7 +346,7 @@ WRITE32_MEMBER(ms32_state::coin_counter_w)
machine().bookkeeping().coin_counter_w(1, data & 0x20);
}
-static ADDRESS_MAP_START( ms32_map, AS_PROGRAM, 32, ms32_state )
+ADDRESS_MAP_START(ms32_state::ms32_map)
/* RAM areas verified by testing on real hw - usually accessed at the 0xfc000000 + mirror */
AM_RANGE(0xc0000000, 0xc0007fff) AM_READWRITE8(ms32_nvram_r8, ms32_nvram_w8, 0x000000ff) AM_MIRROR(0x3c1f8000) // nvram is 8-bit wide, 0x2000 in size */
/* AM_RANGE(0xc0008000, 0xc01fffff) // mirrors of nvramram, handled above */
@@ -411,7 +411,7 @@ WRITE32_MEMBER(ms32_state::ms32_irq5_guess_w)
irq_raise(5);
}
-static ADDRESS_MAP_START( f1superb_map, AS_PROGRAM, 32, ms32_state )
+ADDRESS_MAP_START(ms32_state::f1superb_map)
AM_IMPORT_FROM(ms32_map)
AM_RANGE(0xfd0d0000, 0xfd0d0003) AM_READ_PORT("DSW2") // MB-93159
@@ -1373,7 +1373,7 @@ WRITE8_MEMBER(ms32_state::to_main_w)
irq_raise(1);
}
-static ADDRESS_MAP_START( ms32_sound_map, AS_PROGRAM, 8, ms32_state )
+ADDRESS_MAP_START(ms32_state::ms32_sound_map)
AM_RANGE(0x0000, 0x3eff) AM_ROM
AM_RANGE(0x3f00, 0x3f0f) AM_DEVREADWRITE("ymf", ymf271_device, read, write)
AM_RANGE(0x3f10, 0x3f10) AM_READWRITE(latch_r,to_main_w)
diff --git a/src/mame/drivers/ms6102.cpp b/src/mame/drivers/ms6102.cpp
index a5cc95d61af..67e15810dc4 100644
--- a/src/mame/drivers/ms6102.cpp
+++ b/src/mame/drivers/ms6102.cpp
@@ -89,6 +89,8 @@ public:
void kbd_put(u8 data);
void ms6102(machine_config &config);
+ void ms6102_io(address_map &map);
+ void ms6102_mem(address_map &map);
private:
bool m_kbd_ready;
uint8_t m_kbd_data;
@@ -107,14 +109,14 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START(ms6102_mem, AS_PROGRAM, 8, ms6102_state)
+ADDRESS_MAP_START(ms6102_state::ms6102_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x0000, 0x2fff) AM_ROM
AM_RANGE (0x3800, 0x3bff) AM_RAM AM_SHARE("nvram")
AM_RANGE (0xc000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ms6102_io, AS_IO, 8, ms6102_state)
+ADDRESS_MAP_START(ms6102_state::ms6102_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x00, 0x00) AM_DEVREADWRITE("i8251", i8251_device, data_r, data_w)
AM_RANGE (0x01, 0x01) AM_DEVREADWRITE("i8251", i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/ms9540.cpp b/src/mame/drivers/ms9540.cpp
index bc7d8560994..ff67aa63f08 100644
--- a/src/mame/drivers/ms9540.cpp
+++ b/src/mame/drivers/ms9540.cpp
@@ -41,6 +41,7 @@ public:
void kbd_put(u8 data);
void ms9540(machine_config &config);
+ void mem_map(address_map &map);
private:
uint8_t m_term_data;
virtual void machine_reset() override;
@@ -50,7 +51,7 @@ private:
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 16, ms9540_state)
+ADDRESS_MAP_START(ms9540_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("rambase")
diff --git a/src/mame/drivers/msbc1.cpp b/src/mame/drivers/msbc1.cpp
index 5c009eb1f5f..6aad51082d7 100644
--- a/src/mame/drivers/msbc1.cpp
+++ b/src/mame/drivers/msbc1.cpp
@@ -66,12 +66,13 @@ public:
{ }
void msbc1(machine_config &config);
+ void msbc1_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( msbc1_mem, AS_PROGRAM, 16, msbc1_state )
+ADDRESS_MAP_START(msbc1_state::msbc1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_RAM
AM_RANGE(0xf80000, 0xf87fff) AM_ROM AM_REGION(MC68000R12_TAG, 0)
diff --git a/src/mame/drivers/msisaac.cpp b/src/mame/drivers/msisaac.cpp
index edb16425e7c..d82da48efc8 100644
--- a/src/mame/drivers/msisaac.cpp
+++ b/src/mame/drivers/msisaac.cpp
@@ -174,7 +174,7 @@ WRITE8_MEMBER(msisaac_state::msisaac_mcu_w)
#endif
}
-static ADDRESS_MAP_START( msisaac_map, AS_PROGRAM, 8, msisaac_state )
+ADDRESS_MAP_START(msisaac_state::msisaac_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
AM_RANGE(0xe800, 0xefff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -240,7 +240,7 @@ WRITE8_MEMBER(msisaac_state::sound_control_1_w)
//popmessage("SND1 0=%2x 1=%2x", m_snd_ctrl0, m_snd_ctrl1);
}
-static ADDRESS_MAP_START( msisaac_sound_map, AS_PROGRAM, 8, msisaac_state )
+ADDRESS_MAP_START(msisaac_state::msisaac_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/mstation.cpp b/src/mame/drivers/mstation.cpp
index b6c118ed26d..f2a1cce7b98 100644
--- a/src/mame/drivers/mstation.cpp
+++ b/src/mame/drivers/mstation.cpp
@@ -98,6 +98,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(mstation_1hz_timer);
TIMER_DEVICE_CALLBACK_MEMBER(mstation_kb_timer);
void mstation(machine_config &config);
+ void mstation_banked_map(address_map &map);
+ void mstation_io(address_map &map);
+ void mstation_mem(address_map &map);
};
@@ -253,7 +256,7 @@ READ8_MEMBER( mstation_state::kb_r )
}
-static ADDRESS_MAP_START(mstation_banked_map, AS_PROGRAM, 8, mstation_state)
+ADDRESS_MAP_START(mstation_state::mstation_banked_map)
AM_RANGE(0x0000000, 0x00fffff) AM_MIRROR(0x0300000) AM_DEVREADWRITE("flash0", intelfsh8_device, read, write)
AM_RANGE(0x0400000, 0x041ffff) AM_MIRROR(0x03e0000) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0c00000, 0x0c7ffff) AM_MIRROR(0x0380000) AM_DEVREADWRITE("flash1", intelfsh8_device, read, write)
@@ -262,14 +265,14 @@ static ADDRESS_MAP_START(mstation_banked_map, AS_PROGRAM, 8, mstation_state)
AM_RANGE(0x1400000, 0x1403fff) AM_MIRROR(0x03fc000) AM_READWRITE(modem_r, modem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mstation_mem, AS_PROGRAM, 8, mstation_state)
+ADDRESS_MAP_START(mstation_state::mstation_mem)
AM_RANGE(0x0000, 0x3fff) AM_DEVREADWRITE("flash0", intelfsh8_device, read, write)
AM_RANGE(0x4000, 0x7fff) AM_DEVREADWRITE("bank0", address_map_bank_device, read8, write8)
AM_RANGE(0x8000, 0xbfff) AM_DEVREADWRITE("bank1", address_map_bank_device, read8, write8)
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("sysram") // system ram always first RAM bank
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mstation_io , AS_IO, 8, mstation_state)
+ADDRESS_MAP_START(mstation_state::mstation_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_READWRITE(kb_r, kb_w)
AM_RANGE( 0x02, 0x02 ) AM_WRITE(port2_w)
diff --git a/src/mame/drivers/msx.cpp b/src/mame/drivers/msx.cpp
index 0a7d8e8ee12..61f47d3ade3 100644
--- a/src/mame/drivers/msx.cpp
+++ b/src/mame/drivers/msx.cpp
@@ -539,7 +539,7 @@ PCB Layouts missing
#include "speaker.h"
-static ADDRESS_MAP_START ( msx_memory_map, AS_PROGRAM, 8, msx_state )
+ADDRESS_MAP_START(msx_state::msx_memory_map)
AM_RANGE(0x0000, 0xfffe) AM_READWRITE(msx_mem_read, msx_mem_write)
AM_RANGE(0xffff, 0xffff) AM_READWRITE(msx_sec_slot_r, msx_sec_slot_w)
ADDRESS_MAP_END
@@ -554,7 +554,7 @@ WRITE8_MEMBER(msx_state::msx_ay8910_w)
}
-static ADDRESS_MAP_START ( msx_io_map, AS_IO, 8, msx_state )
+ADDRESS_MAP_START(msx_state::msx_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// 0x7c - 0x7d : MSX-MUSIC/FM-PAC write port. Handlers will be installed if MSX-MUSIC is present in a system
@@ -570,7 +570,7 @@ static ADDRESS_MAP_START ( msx_io_map, AS_IO, 8, msx_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START ( msx2_io_map, AS_IO, 8, msx_state )
+ADDRESS_MAP_START(msx_state::msx2_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x40, 0x4f) AM_READWRITE(msx_switched_r, msx_switched_w)
@@ -588,7 +588,7 @@ static ADDRESS_MAP_START ( msx2_io_map, AS_IO, 8, msx_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START ( msx2p_io_map, AS_IO, 8, msx_state )
+ADDRESS_MAP_START(msx_state::msx2p_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x40, 0x4f) AM_READWRITE(msx_switched_r, msx_switched_w)
diff --git a/src/mame/drivers/mt735.cpp b/src/mame/drivers/mt735.cpp
index 63a693a3ed8..40c972026f2 100644
--- a/src/mame/drivers/mt735.cpp
+++ b/src/mame/drivers/mt735.cpp
@@ -21,6 +21,7 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void mt735(machine_config &config);
+ void mt735_map(address_map &map);
};
mt735_state::mt735_state(const machine_config &mconfig, device_type type, const char *tag) :
@@ -49,7 +50,7 @@ READ8_MEMBER(mt735_state::p5_r)
return 0x00;
}
-static ADDRESS_MAP_START( mt735_map, AS_PROGRAM, 16, mt735_state )
+ADDRESS_MAP_START(mt735_state::mt735_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x278000, 0x287fff) AM_RAM
AM_RANGE(0x400000, 0x4fffff) AM_RAM
diff --git a/src/mame/drivers/mtouchxl.cpp b/src/mame/drivers/mtouchxl.cpp
index 55c8af82ee8..0819e03a088 100644
--- a/src/mame/drivers/mtouchxl.cpp
+++ b/src/mame/drivers/mtouchxl.cpp
@@ -77,6 +77,9 @@ public:
DECLARE_READ8_MEMBER(coin_r);
void at486(machine_config &config);
static void cdrom(device_t *device);
+ void at32_io(address_map &map);
+ void at32_map(address_map &map);
+ void dbank_map(address_map &map);
};
WRITE8_MEMBER(mtxl_state::bank_w)
@@ -101,7 +104,7 @@ WRITE8_MEMBER(mtxl_state::key_w)
m_multikey->write_dq((data & 0x20) ? ASSERT_LINE : CLEAR_LINE);
}
-static ADDRESS_MAP_START( at32_map, AS_PROGRAM, 32, mtxl_state )
+ADDRESS_MAP_START(mtxl_state::at32_map)
ADDRESS_MAP_UNMAP_HIGH
#ifndef REAL_PCI_CHIPSET
AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("bank10")
@@ -112,7 +115,7 @@ static ADDRESS_MAP_START( at32_map, AS_PROGRAM, 32, mtxl_state )
#endif
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at32_io, AS_IO, 32, mtxl_state )
+ADDRESS_MAP_START(mtxl_state::at32_io)
ADDRESS_MAP_UNMAP_HIGH
#ifndef REAL_PCI_CHIPSET
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("mb:dma8237_1", am9517a_device, read, write, 0xffffffff)
@@ -135,7 +138,7 @@ static ADDRESS_MAP_START( at32_io, AS_IO, 32, mtxl_state )
#endif
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dbank_map, AS_PROGRAM, 32, mtxl_state )
+ADDRESS_MAP_START(mtxl_state::dbank_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_REGION("ioboard", 0)
AM_RANGE(0x100000, 0x17ffff) AM_DEVREADWRITE8("flash", intelfsh8_device, read, write, 0xffffffff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mtx.cpp b/src/mame/drivers/mtx.cpp
index b42f4aaca7b..bd639f2d6b7 100644
--- a/src/mame/drivers/mtx.cpp
+++ b/src/mame/drivers/mtx.cpp
@@ -46,14 +46,14 @@
ADDRESS_MAP( mtx_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( mtx_mem, AS_PROGRAM, 8, mtx_state )
+ADDRESS_MAP_START(mtx_state::mtx_mem)
ADDRESS_MAP_END
/*-------------------------------------------------
ADDRESS_MAP( mtx_io )
-------------------------------------------------*/
-static ADDRESS_MAP_START( mtx_io, AS_IO, 8, mtx_state )
+ADDRESS_MAP_START(mtx_state::mtx_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(mtx_strobe_r, mtx_bankswitch_w)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("tms9929a", tms9929a_device, vram_read, vram_write)
@@ -81,7 +81,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( rs128_io )
-------------------------------------------------*/
-static ADDRESS_MAP_START( rs128_io, AS_IO, 8, mtx_state )
+ADDRESS_MAP_START(mtx_state::rs128_io)
AM_IMPORT_FROM(mtx_io)
AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE(Z80DART_TAG, z80dart_device, cd_ba_r, cd_ba_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mugsmash.cpp b/src/mame/drivers/mugsmash.cpp
index 1014c609ad2..c595c113474 100644
--- a/src/mame/drivers/mugsmash.cpp
+++ b/src/mame/drivers/mugsmash.cpp
@@ -175,7 +175,7 @@ READ16_MEMBER(mugsmash_state::mugsmash_input_ports_r)
}
#endif
-static ADDRESS_MAP_START( mugsmash_map, AS_PROGRAM, 16, mugsmash_state )
+ADDRESS_MAP_START(mugsmash_state::mugsmash_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(mugsmash_videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0x082000, 0x082fff) AM_RAM_WRITE(mugsmash_videoram2_w) AM_SHARE("videoram2")
@@ -195,7 +195,7 @@ static ADDRESS_MAP_START( mugsmash_map, AS_PROGRAM, 16, mugsmash_state )
#endif
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mugsmash_sound_map, AS_PROGRAM, 8, mugsmash_state )
+ADDRESS_MAP_START(mugsmash_state::mugsmash_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
diff --git a/src/mame/drivers/multfish.cpp b/src/mame/drivers/multfish.cpp
index 67ef1baa087..cd4c589fc60 100644
--- a/src/mame/drivers/multfish.cpp
+++ b/src/mame/drivers/multfish.cpp
@@ -679,7 +679,7 @@ DRIVER_INIT_MEMBER(igrosoft_gamble_state,crzmon2ent)
// needs gfx (and palette) descrambles
}
-static ADDRESS_MAP_START( igrosoft_gamble_map, AS_PROGRAM, 8, igrosoft_gamble_state )
+ADDRESS_MAP_START(igrosoft_gamble_state::igrosoft_gamble_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITE(igrosoft_gamble_vid_w)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_READWRITE(igrosoft_gamble_timekeeper_r, igrosoft_gamble_timekeeper_w)
@@ -912,7 +912,7 @@ WRITE8_MEMBER(igrosoft_gamble_state::igrosoft_gamble_dispenable_w)
m_disp_enable = data;
}
-static ADDRESS_MAP_START( igrosoft_gamble_portmap, AS_IO, 8, igrosoft_gamble_state )
+ADDRESS_MAP_START(igrosoft_gamble_state::igrosoft_gamble_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_READ_PORT("IN0")
AM_RANGE(0x11, 0x11) AM_READ_PORT("IN1")
@@ -977,7 +977,7 @@ static ADDRESS_MAP_START( igrosoft_gamble_portmap, AS_IO, 8, igrosoft_gamble_sta
AM_RANGE(0xf8, 0xfd) AM_WRITE(igrosoft_gamble_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rollfr_portmap, AS_IO, 8, igrosoft_gamble_state )
+ADDRESS_MAP_START(igrosoft_gamble_state::rollfr_portmap)
AM_IMPORT_FROM(igrosoft_gamble_portmap)
AM_RANGE(0x33, 0x33) AM_WRITE(rollfr_hopper_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/multi16.cpp b/src/mame/drivers/multi16.cpp
index 46ccf106522..f3d796ca709 100644
--- a/src/mame/drivers/multi16.cpp
+++ b/src/mame/drivers/multi16.cpp
@@ -38,6 +38,8 @@ public:
virtual void video_start() override;
uint32_t screen_update_multi16(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void multi16(machine_config &config);
+ void multi16_io(address_map &map);
+ void multi16_map(address_map &map);
};
@@ -90,7 +92,7 @@ uint32_t multi16_state::screen_update_multi16(screen_device &screen, bitmap_ind1
return 0;
}
-static ADDRESS_MAP_START(multi16_map, AS_PROGRAM, 16, multi16_state)
+ADDRESS_MAP_START(multi16_state::multi16_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0x7ffff) AM_RAM
AM_RANGE(0xd8000,0xdffff) AM_RAM AM_SHARE("p_vram")
@@ -110,7 +112,7 @@ WRITE8_MEMBER( multi16_state::multi16_6845_data_w )
m_crtc->register_w(space, offset, data);
}
-static ADDRESS_MAP_START(multi16_io, AS_IO, 16, multi16_state)
+ADDRESS_MAP_START(multi16_state::multi16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0xffff) // i8259
AM_RANGE(0x40, 0x41) AM_WRITE8(multi16_6845_address_w, 0x00ff)
diff --git a/src/mame/drivers/multi8.cpp b/src/mame/drivers/multi8.cpp
index 8b392e4acf1..fb38fb40031 100644
--- a/src/mame/drivers/multi8.cpp
+++ b/src/mame/drivers/multi8.cpp
@@ -62,6 +62,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void multi8(machine_config &config);
+ void multi8_io(address_map &map);
+ void multi8_mem(address_map &map);
private:
uint8_t *m_p_vram;
uint8_t *m_p_wram;
@@ -286,14 +288,14 @@ WRITE8_MEMBER( multi8_state::kanji_w )
m_knj_addr = (offset == 0) ? (m_knj_addr & 0xff00) | (data & 0xff) : (m_knj_addr & 0x00ff) | (data << 8);
}
-static ADDRESS_MAP_START(multi8_mem, AS_PROGRAM, 8, multi8_state)
+ADDRESS_MAP_START(multi8_state::multi8_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_READWRITE(vram_r, vram_w)
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(multi8_io, AS_IO, 8, multi8_state)
+ADDRESS_MAP_START(multi8_state::multi8_io)
// ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(key_input_r) //keyboard
diff --git a/src/mame/drivers/multigam.cpp b/src/mame/drivers/multigam.cpp
index 068de19e395..3be90d6df2c 100644
--- a/src/mame/drivers/multigam.cpp
+++ b/src/mame/drivers/multigam.cpp
@@ -208,6 +208,10 @@ public:
void supergm3(machine_config &config);
void multigmt(machine_config &config);
void multigm3(machine_config &config);
+ void multigam_map(address_map &map);
+ void multigm3_map(address_map &map);
+ void multigmt_map(address_map &map);
+ void supergm3_map(address_map &map);
};
@@ -398,7 +402,7 @@ WRITE8_MEMBER(multigam_state::multigam_mapper2_w)
*******************************************************/
-static ADDRESS_MAP_START( multigam_map, AS_PROGRAM, 8, multigam_state )
+ADDRESS_MAP_START(multigam_state::multigam_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */
AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
@@ -414,7 +418,7 @@ static ADDRESS_MAP_START( multigam_map, AS_PROGRAM, 8, multigam_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_WRITE(multigam_mapper2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multigmt_map, AS_PROGRAM, 8, multigam_state )
+ADDRESS_MAP_START(multigam_state::multigmt_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */
AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
@@ -677,7 +681,7 @@ WRITE8_MEMBER(multigam_state::multigm3_switch_prg_rom)
*******************************************************/
-static ADDRESS_MAP_START( multigm3_map, AS_PROGRAM, 8, multigam_state )
+ADDRESS_MAP_START(multigam_state::multigm3_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */
AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
@@ -977,7 +981,7 @@ WRITE8_MEMBER(multigam_state::supergm3_chr_bank_w)
*******************************************************/
-static ADDRESS_MAP_START( supergm3_map, AS_PROGRAM, 8, multigam_state )
+ADDRESS_MAP_START(multigam_state::supergm3_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */
AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
diff --git a/src/mame/drivers/munchmo.cpp b/src/mame/drivers/munchmo.cpp
index 00e0618a7e0..fe13910ff5a 100644
--- a/src/mame/drivers/munchmo.cpp
+++ b/src/mame/drivers/munchmo.cpp
@@ -29,7 +29,6 @@ Stephh's notes (based on the game Z80 code and some tests) :
#include "includes/munchmo.h"
#include "cpu/z80/z80.h"
-#include "machine/74259.h"
#include "sound/ay8910.h"
#include "screen.h"
#include "speaker.h"
@@ -94,7 +93,7 @@ READ8_MEMBER(munchmo_state::ay2reset_r)
*
*************************************/
-static ADDRESS_MAP_START( mnchmobl_map, AS_PROGRAM, 8, munchmo_state )
+ADDRESS_MAP_START(munchmo_state::mnchmobl_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0xa000, 0xa3ff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("sprite_xpos")
@@ -104,7 +103,7 @@ static ADDRESS_MAP_START( mnchmobl_map, AS_PROGRAM, 8, munchmo_state )
AM_RANGE(0xbaba, 0xbaba) AM_WRITENOP /* ? */
AM_RANGE(0xbc00, 0xbc7f) AM_RAM AM_SHARE("status_vram")
AM_RANGE(0xbe00, 0xbe00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
- AM_RANGE(0xbe01, 0xbe01) AM_SELECT(0x0070) AM_DEVWRITE_MOD("mainlatch", ls259_device, write_d0, rshift<4>)
+ ;map(0xbe01, 0xbe01).select(0x0070).lw8("mainlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_mainlatch->write_d0(space, offset >> 4, data, mem_mask); });
AM_RANGE(0xbe02, 0xbe02) AM_READ_PORT("DSW1")
AM_RANGE(0xbe03, 0xbe03) AM_READ_PORT("DSW2")
AM_RANGE(0xbf00, 0xbf00) AM_WRITE(nmi_ack_w) // CNI 1-8C
@@ -115,7 +114,7 @@ static ADDRESS_MAP_START( mnchmobl_map, AS_PROGRAM, 8, munchmo_state )
ADDRESS_MAP_END
/* memory map provided thru schematics */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, munchmo_state )
+ADDRESS_MAP_START(munchmo_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE("ay1", ay8910_device, data_w)
diff --git a/src/mame/drivers/murogem.cpp b/src/mame/drivers/murogem.cpp
index fb79733e70a..e2199dd8cee 100644
--- a/src/mame/drivers/murogem.cpp
+++ b/src/mame/drivers/murogem.cpp
@@ -138,6 +138,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void murogem(machine_config &config);
+ void murogem_map(address_map &map);
};
@@ -154,7 +155,7 @@ WRITE8_MEMBER(murogem_state::outport_w)
}
-static ADDRESS_MAP_START( murogem_map, AS_PROGRAM, 8, murogem_state )
+ADDRESS_MAP_START(murogem_state::murogem_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x4001, 0x4001) AM_DEVWRITE("crtc", mc6845_device, register_w)
diff --git a/src/mame/drivers/murogmbl.cpp b/src/mame/drivers/murogmbl.cpp
index bc8435bffee..1abf9730073 100644
--- a/src/mame/drivers/murogmbl.cpp
+++ b/src/mame/drivers/murogmbl.cpp
@@ -65,6 +65,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void murogmbl(machine_config &config);
+ void murogmbl_map(address_map &map);
};
class slotunbl_state : public driver_device
@@ -88,6 +89,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void slotunbl(machine_config &config);
+ void slotunbl_map(address_map &map);
};
PALETTE_INIT_MEMBER(murogmbl_state, murogmbl)
@@ -142,7 +144,7 @@ PALETTE_INIT_MEMBER(slotunbl_state, slotunbl)
}
}
-static ADDRESS_MAP_START( murogmbl_map, AS_PROGRAM, 8, murogmbl_state )
+ADDRESS_MAP_START(murogmbl_state::murogmbl_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM
@@ -154,7 +156,7 @@ static ADDRESS_MAP_START( murogmbl_map, AS_PROGRAM, 8, murogmbl_state )
AM_RANGE(0x7800, 0x7800) AM_READNOP AM_DEVWRITE("dac", dac_byte_interface, write) /* read is always discarded */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slotunbl_map, AS_PROGRAM, 8, slotunbl_state )
+ADDRESS_MAP_START(slotunbl_state::slotunbl_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x4800, 0x4fff) AM_RAM
diff --git a/src/mame/drivers/mustache.cpp b/src/mame/drivers/mustache.cpp
index 4eb540302ef..2d62f7ccb8b 100644
--- a/src/mame/drivers/mustache.cpp
+++ b/src/mame/drivers/mustache.cpp
@@ -45,7 +45,7 @@ YM2151:
#define YM_CLOCK (XTAL1/4)
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, mustache_state )
+ADDRESS_MAP_START(mustache_state::memmap)
AM_RANGE(0x0000, 0x7fff) AM_DEVREAD("sei80bu", sei80bu_device, data_r)
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -65,7 +65,7 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, mustache_state )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, mustache_state )
+ADDRESS_MAP_START(mustache_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r)
AM_RANGE(0x8000, 0xbfff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
@@ -182,7 +182,7 @@ MACHINE_CONFIG_START(mustache_state::mustache)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, CPU_CLOCK)
MCFG_CPU_PROGRAM_MAP(memmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", mustache_state, scanline, "screen", 0, 1)
MCFG_DEVICE_ADD("sei80bu", SEI80BU, 0)
diff --git a/src/mame/drivers/mvme147.cpp b/src/mame/drivers/mvme147.cpp
index 918aa1fe0f2..72679da1e4b 100644
--- a/src/mame/drivers/mvme147.cpp
+++ b/src/mame/drivers/mvme147.cpp
@@ -216,6 +216,7 @@ mvme147_state(const machine_config &mconfig, device_type type, const char *tag)
virtual void machine_start () override;
virtual void machine_reset () override;
void mvme147(machine_config &config);
+ void mvme147_mem(address_map &map);
protected:
private:
@@ -234,7 +235,7 @@ private:
uint8_t m_vc_cntl_conf;
};
-static ADDRESS_MAP_START (mvme147_mem, AS_PROGRAM, 32, mvme147_state)
+ADDRESS_MAP_START(mvme147_state::mvme147_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x00000000, 0x00000007) AM_RAM AM_WRITE (bootvect_w) /* After first write we act as RAM */
AM_RANGE (0x00000000, 0x00000007) AM_ROM AM_READ (bootvect_r) /* ROM mirror just during reset */
diff --git a/src/mame/drivers/mw18w.cpp b/src/mame/drivers/mw18w.cpp
index 6bc99901f66..37255b01ba5 100644
--- a/src/mame/drivers/mw18w.cpp
+++ b/src/mame/drivers/mw18w.cpp
@@ -39,6 +39,8 @@ public:
DECLARE_WRITE8_MEMBER(mw18w_irq0_clear_w);
DECLARE_CUSTOM_INPUT_MEMBER(mw18w_sensors_r);
void mw18w(machine_config &config);
+ void mw18w_map(address_map &map);
+ void mw18w_portmap(address_map &map);
};
@@ -160,12 +162,12 @@ CUSTOM_INPUT_MEMBER(mw18w_state::mw18w_sensors_r)
}
-static ADDRESS_MAP_START( mw18w_map, AS_PROGRAM, 8, mw18w_state )
+ADDRESS_MAP_START(mw18w_state::mw18w_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mw18w_portmap, AS_IO, 8, mw18w_state )
+ADDRESS_MAP_START(mw18w_state::mw18w_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(mw18w_sound0_w)
diff --git a/src/mame/drivers/mw8080bw.cpp b/src/mame/drivers/mw8080bw.cpp
index ff4b4444e8d..d09f2688341 100644
--- a/src/mame/drivers/mw8080bw.cpp
+++ b/src/mame/drivers/mw8080bw.cpp
@@ -214,7 +214,7 @@ WRITE8_MEMBER(mw8080bw_state::mw8080bw_reversable_shift_count_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_WRITENOP
AM_RANGE(0x2000, 0x3fff) AM_MIRROR(0x4000) AM_RAM AM_SHARE("main_ram")
@@ -330,7 +330,7 @@ CUSTOM_INPUT_MEMBER(mw8080bw_state::seawolf_erase_input_r)
}
-static ADDRESS_MAP_START( seawolf_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::seawolf_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r)
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0")
@@ -442,7 +442,7 @@ WRITE8_MEMBER(mw8080bw_state::gunfight_io_w)
}
-static ADDRESS_MAP_START( gunfight_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::gunfight_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -636,7 +636,7 @@ WRITE8_MEMBER(mw8080bw_state::tornbase_io_w)
}
-static ADDRESS_MAP_START( tornbase_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::tornbase_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -756,7 +756,7 @@ MACHINE_CONFIG_END
*
*************************************/
-static ADDRESS_MAP_START( zzzap_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::zzzap_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -914,7 +914,7 @@ WRITE8_MEMBER(mw8080bw_state::maze_io_w)
}
-static ADDRESS_MAP_START( maze_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::maze_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x3)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
@@ -984,7 +984,7 @@ MACHINE_START_MEMBER(mw8080bw_state,boothill)
}
-static ADDRESS_MAP_START( boothill_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::boothill_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -1078,7 +1078,7 @@ WRITE8_MEMBER(mw8080bw_state::checkmat_io_w)
}
-static ADDRESS_MAP_START( checkmat_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::checkmat_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x3)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
@@ -1212,7 +1212,7 @@ CUSTOM_INPUT_MEMBER(mw8080bw_state::desertgu_dip_sw_0_1_r)
}
-static ADDRESS_MAP_START( desertgu_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::desertgu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r)
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0")
@@ -1336,7 +1336,7 @@ CUSTOM_INPUT_MEMBER(mw8080bw_state::dplay_pitch_right_input_r)
}
-static ADDRESS_MAP_START( dplay_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::dplay_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -1514,7 +1514,7 @@ MACHINE_START_MEMBER(mw8080bw_state,gmissile)
}
-static ADDRESS_MAP_START( gmissile_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::gmissile_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -1610,7 +1610,7 @@ MACHINE_START_MEMBER(mw8080bw_state,m4)
}
-static ADDRESS_MAP_START( m4_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::m4_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -1725,7 +1725,7 @@ CUSTOM_INPUT_MEMBER(mw8080bw_state::clowns_controller_r)
}
-static ADDRESS_MAP_START( clowns_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::clowns_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -1864,7 +1864,7 @@ MACHINE_CONFIG_END
*
*************************************/
-static ADDRESS_MAP_START( spacwalk_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::spacwalk_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
@@ -1960,7 +1960,7 @@ MACHINE_CONFIG_END
*
*************************************/
-static ADDRESS_MAP_START( shuffle_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::shuffle_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xf) /* yes, 4, and no mirroring on the read handlers */
AM_RANGE(0x01, 0x01) AM_DEVREAD("mb14241", mb14241_device, shift_result_r)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0")
@@ -2042,7 +2042,7 @@ MACHINE_CONFIG_END
*
*************************************/
-static ADDRESS_MAP_START( dogpatch_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::dogpatch_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -2192,7 +2192,7 @@ WRITE8_MEMBER(mw8080bw_state::spcenctr_io_w)
}
-static ADDRESS_MAP_START( spcenctr_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::spcenctr_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xfc) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0xfc) AM_READ_PORT("IN1")
@@ -2299,7 +2299,7 @@ MACHINE_START_MEMBER(mw8080bw_state,phantom2)
}
-static ADDRESS_MAP_START( phantom2_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::phantom2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r)
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0")
@@ -2426,7 +2426,7 @@ WRITE8_MEMBER(mw8080bw_state::bowler_lights_2_w)
}
-static ADDRESS_MAP_START( bowler_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::bowler_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xf) /* no masking on the reads, all 4 bits are decoded */
AM_RANGE(0x01, 0x01) AM_READ(bowler_shift_result_r)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0")
@@ -2612,7 +2612,7 @@ int mw8080bw_state::invaders_is_cabinet_cocktail()
}
-static ADDRESS_MAP_START( invaders_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::invaders_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
@@ -2745,7 +2745,7 @@ CUSTOM_INPUT_MEMBER(mw8080bw_state::blueshrk_coin_input_r)
}
-static ADDRESS_MAP_START( blueshrk_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::blueshrk_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r)
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0")
@@ -2827,7 +2827,7 @@ uint32_t mw8080bw_state::invad2ct_coin_input_r(void *param)
#endif
-static ADDRESS_MAP_START( invad2ct_io_map, AS_IO, 8, mw8080bw_state )
+ADDRESS_MAP_START(mw8080bw_state::invad2ct_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/mwarr.cpp b/src/mame/drivers/mwarr.cpp
index a42ede1bcf2..2fe9a3aca5e 100644
--- a/src/mame/drivers/mwarr.cpp
+++ b/src/mame/drivers/mwarr.cpp
@@ -115,6 +115,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void mwarr(machine_config &config);
+ void mwarr_map(address_map &map);
+ void oki2_map(address_map &map);
};
@@ -210,7 +212,7 @@ WRITE16_MEMBER(mwarr_state::mwarr_brightness_w)
*
*************************************/
-static ADDRESS_MAP_START( mwarr_map, AS_PROGRAM, 16, mwarr_state )
+ADDRESS_MAP_START(mwarr_state::mwarr_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x1007ff) AM_RAM_WRITE(bg_videoram_w) AM_SHARE("bg_videoram")
AM_RANGE(0x100800, 0x100fff) AM_RAM_WRITE(mlow_videoram_w) AM_SHARE("mlow_videoram")
@@ -233,7 +235,7 @@ static ADDRESS_MAP_START( mwarr_map, AS_PROGRAM, 16, mwarr_state )
AM_RANGE(0x190000, 0x190001) AM_DEVREADWRITE8("oki2", okim6295_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki2_map, 0, 8, mwarr_state)
+ADDRESS_MAP_START(mwarr_state::oki2_map)
/* $00000-$20000 stays the same in all sound banks, */
/* the second half of the bank is what gets switched */
AM_RANGE(0x00000, 0x1ffff) AM_ROM AM_REGION("oki2", 0)
diff --git a/src/mame/drivers/mwsub.cpp b/src/mame/drivers/mwsub.cpp
index 39789d9a85b..a3497e40650 100644
--- a/src/mame/drivers/mwsub.cpp
+++ b/src/mame/drivers/mwsub.cpp
@@ -37,6 +37,8 @@ public:
DECLARE_WRITE8_MEMBER(submar_led_w);
DECLARE_WRITE8_MEMBER(submar_irq_clear_w);
void submar(machine_config &config);
+ void submar_map(address_map &map);
+ void submar_portmap(address_map &map);
};
@@ -123,13 +125,13 @@ WRITE8_MEMBER(submar_state::submar_irq_clear_w)
}
-static ADDRESS_MAP_START( submar_map, AS_PROGRAM, 8, submar_state )
+ADDRESS_MAP_START(submar_state::submar_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x207f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( submar_portmap, AS_IO, 8, submar_state )
+ADDRESS_MAP_START(submar_state::submar_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(submar_sensor0_r, submar_motor_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(submar_sensor1_r, submar_lamp_w)
diff --git a/src/mame/drivers/mx2178.cpp b/src/mame/drivers/mx2178.cpp
index 85d177951a4..5098a0d5c4c 100644
--- a/src/mame/drivers/mx2178.cpp
+++ b/src/mame/drivers/mx2178.cpp
@@ -46,6 +46,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void mx2178(machine_config &config);
+ void mx2178_io(address_map &map);
+ void mx2178_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<palette_device> m_palette;
@@ -54,7 +56,7 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START(mx2178_mem, AS_PROGRAM, 8, mx2178_state)
+ADDRESS_MAP_START(mx2178_state::mx2178_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_SHARE("videoram")
@@ -62,7 +64,7 @@ static ADDRESS_MAP_START(mx2178_mem, AS_PROGRAM, 8, mx2178_state)
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mx2178_io, AS_IO, 8, mx2178_state)
+ADDRESS_MAP_START(mx2178_state::mx2178_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
diff --git a/src/mame/drivers/myb3k.cpp b/src/mame/drivers/myb3k.cpp
index 3cc07d78af3..a72a4014956 100644
--- a/src/mame/drivers/myb3k.cpp
+++ b/src/mame/drivers/myb3k.cpp
@@ -168,6 +168,8 @@ public:
void jb3000(machine_config &config);
void myb3k(machine_config &config);
+ void myb3k_io(address_map &map);
+ void myb3k_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -561,7 +563,7 @@ WRITE8_MEMBER( myb3k_state::myb3k_video_mode_w )
* OFF ON - ?
* ON ON - ?
**********************************************************/
-static ADDRESS_MAP_START(myb3k_map, AS_PROGRAM, 8, myb3k_state)
+ADDRESS_MAP_START(myb3k_state::myb3k_map)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x00000,0x3ffff) AM_RAM // It's either 128Kb or 256Kb RAM installed by machine_start()
AM_RANGE(0x40000,0x7ffff) AM_NOP
@@ -570,7 +572,7 @@ static ADDRESS_MAP_START(myb3k_map, AS_PROGRAM, 8, myb3k_state)
AM_RANGE(0xf0000,0xfffff) AM_ROM AM_REGION("ipl", 0) // Area 7, 8 x 8Kb
ADDRESS_MAP_END
-static ADDRESS_MAP_START(myb3k_io, AS_IO, 8, myb3k_state)
+ADDRESS_MAP_START(myb3k_state::myb3k_io)
ADDRESS_MAP_UNMAP_LOW
/* Main Unit 0-0x7ff */
// 0-3 8255A PPI parallel port
diff --git a/src/mame/drivers/mycom.cpp b/src/mame/drivers/mycom.cpp
index 7e9c8ec30ac..2b4c687bcd5 100644
--- a/src/mame/drivers/mycom.cpp
+++ b/src/mame/drivers/mycom.cpp
@@ -100,6 +100,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void mycom(machine_config &config);
+ void mycom_io(address_map &map);
+ void mycom_map(address_map &map);
private:
uint8_t m_0a;
uint16_t m_i_videoram;
@@ -214,14 +216,14 @@ WRITE8_MEMBER( mycom_state::vram_data_w )
m_p_videoram[m_i_videoram] = data;
}
-static ADDRESS_MAP_START(mycom_map, AS_PROGRAM, 8, mycom_state)
+ADDRESS_MAP_START(mycom_state::mycom_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("boot")
AM_RANGE(0x1000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xffff) AM_READWRITE(mycom_upper_r,mycom_upper_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mycom_io, AS_IO, 8, mycom_state)
+ADDRESS_MAP_START(mycom_state::mycom_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(mycom_00_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(vram_data_r,vram_data_w)
diff --git a/src/mame/drivers/mystston.cpp b/src/mame/drivers/mystston.cpp
index 4da9c1a0d69..c8438b61540 100644
--- a/src/mame/drivers/mystston.cpp
+++ b/src/mame/drivers/mystston.cpp
@@ -101,7 +101,7 @@ WRITE8_MEMBER(mystston_state::mystston_ay8910_select_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mystston_state )
+ADDRESS_MAP_START(mystston_state::main_map)
AM_RANGE(0x0000, 0x077f) AM_RAM
AM_RANGE(0x0780, 0x07df) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x07e0, 0x0fff) AM_RAM
diff --git a/src/mame/drivers/mystwarr.cpp b/src/mame/drivers/mystwarr.cpp
index d9a57c12282..d59c1838f4a 100644
--- a/src/mame/drivers/mystwarr.cpp
+++ b/src/mame/drivers/mystwarr.cpp
@@ -292,7 +292,7 @@ WRITE16_MEMBER(mystwarr_state::k053247_scattered_word_w)
/* 68000 memory handlers */
/* Mystic Warriors */
-static ADDRESS_MAP_START( mystwarr_map, AS_PROGRAM, 16, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::mystwarr_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("gx_workram")
AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(k053247_scattered_word_r,k053247_scattered_word_w) AM_SHARE("spriteram")
@@ -319,7 +319,7 @@ static ADDRESS_MAP_START( mystwarr_map, AS_PROGRAM, 16, mystwarr_state )
ADDRESS_MAP_END
/* Metamorphic Force */
-static ADDRESS_MAP_START( metamrph_map, AS_PROGRAM, 16, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::metamrph_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("gx_workram")
AM_RANGE(0x210000, 0x210fff) AM_DEVREADWRITE("k055673", k055673_device,k053247_word_r,k053247_word_w)
@@ -350,7 +350,7 @@ static ADDRESS_MAP_START( metamrph_map, AS_PROGRAM, 16, mystwarr_state )
ADDRESS_MAP_END
/* Violent Storm */
-static ADDRESS_MAP_START( viostorm_map, AS_PROGRAM, 16, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::viostorm_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("gx_workram")
AM_RANGE(0x210000, 0x210fff) AM_DEVREADWRITE("k055673", k055673_device, k053247_word_r,k053247_word_w)
@@ -444,7 +444,7 @@ WRITE16_MEMBER(mystwarr_state::mceeprom_w)
}
/* Martial Champion */
-static ADDRESS_MAP_START( martchmp_map, AS_PROGRAM, 16, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::martchmp_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // main program
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("gx_workram") // work RAM
AM_RANGE(0x300000, 0x3fffff) AM_ROM // data ROM
@@ -473,7 +473,7 @@ static ADDRESS_MAP_START( martchmp_map, AS_PROGRAM, 16, mystwarr_state )
ADDRESS_MAP_END
/* Ultimate Battler Dadandarn */
-static ADDRESS_MAP_START( dadandrn_map, AS_PROGRAM, 16, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::dadandrn_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program and data ROM
AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(k053247_scattered_word_r,k053247_scattered_word_w) AM_SHARE("spriteram")
AM_RANGE(0x410000, 0x411fff) AM_DEVREADWRITE("k056832", k056832_device,ram_word_r,ram_word_w) // tilemap RAM
@@ -509,7 +509,7 @@ ADDRESS_MAP_END
// a00000 = the 128k tilemap
// 800000 = the 256k tilemap
// c00000 = 936 tiles (7fffff window)
-static ADDRESS_MAP_START( gaiapols_map, AS_PROGRAM, 16, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::gaiapols_map)
AM_RANGE(0x000000, 0x2fffff) AM_ROM // main program
AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(k053247_scattered_word_r,k053247_scattered_word_w) AM_SHARE("spriteram")
AM_RANGE(0x410000, 0x411fff) AM_DEVREADWRITE("k056832", k056832_device,ram_word_r,ram_word_w) // tilemap RAM
@@ -560,7 +560,7 @@ WRITE8_MEMBER(mystwarr_state::sound_ctrl_w)
quite similar to xexex/gijoe/asterix's sound.
*/
-static ADDRESS_MAP_START( mystwarr_sound_map, AS_PROGRAM, 8, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::mystwarr_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("z80bank")
AM_RANGE(0x0000, 0xbfff) AM_WRITENOP
@@ -575,7 +575,7 @@ static ADDRESS_MAP_START( mystwarr_sound_map, AS_PROGRAM, 8, mystwarr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( martchmp_sound_map, AS_PROGRAM, 8, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::martchmp_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("z80bank")
AM_RANGE(0x0000, 0xbfff) AM_WRITENOP
@@ -590,7 +590,7 @@ static ADDRESS_MAP_START( martchmp_sound_map, AS_PROGRAM, 8, mystwarr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mystwarr_k054539_map, 0, 8, mystwarr_state )
+ADDRESS_MAP_START(mystwarr_state::mystwarr_k054539_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_REGION("k054539", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/myvision.cpp b/src/mame/drivers/myvision.cpp
index eff03f0c0cc..e5db2e67973 100644
--- a/src/mame/drivers/myvision.cpp
+++ b/src/mame/drivers/myvision.cpp
@@ -56,6 +56,8 @@ public:
DECLARE_WRITE8_MEMBER( ay_port_b_w );
void myvision(machine_config &config);
+ void myvision_io(address_map &map);
+ void myvision_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -69,7 +71,7 @@ private:
};
-static ADDRESS_MAP_START(myvision_mem, AS_PROGRAM, 8, myvision_state)
+ADDRESS_MAP_START(myvision_state::myvision_mem)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x0000, 0x5fff) // mapped by the cartslot
AM_RANGE(0xa000, 0xa7ff) AM_RAM
@@ -78,7 +80,7 @@ static ADDRESS_MAP_START(myvision_mem, AS_PROGRAM, 8, myvision_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(myvision_io, AS_IO, 8, myvision_state)
+ADDRESS_MAP_START(myvision_state::myvision_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay8910", ay8910_device, address_w)
diff --git a/src/mame/drivers/mz2000.cpp b/src/mame/drivers/mz2000.cpp
index 7d8b3021367..87274f9ac86 100644
--- a/src/mame/drivers/mz2000.cpp
+++ b/src/mame/drivers/mz2000.cpp
@@ -129,6 +129,9 @@ public:
void mz2000(machine_config &config);
void mz80b(machine_config &config);
+ void mz2000_io(address_map &map);
+ void mz2000_map(address_map &map);
+ void mz80b_io(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<mb8877_device> m_mb8877a;
@@ -399,12 +402,12 @@ WRITE8_MEMBER(mz2000_state::mz2000_gvram_mask_w)
m_gvram_mask = data;
}
-static ADDRESS_MAP_START(mz2000_map, AS_PROGRAM, 8, mz2000_state )
+ADDRESS_MAP_START(mz2000_state::mz2000_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xffff ) AM_READWRITE(mz2000_mem_r,mz2000_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mz80b_io, AS_IO, 8, mz2000_state )
+ADDRESS_MAP_START(mz2000_state::mz80b_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xd8, 0xdb) AM_READWRITE(fdc_r, fdc_w)
@@ -417,7 +420,7 @@ static ADDRESS_MAP_START(mz80b_io, AS_IO, 8, mz2000_state )
// AM_RANGE(0xf4, 0xf4) AM_WRITE(vram_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mz2000_io, AS_IO, 8, mz2000_state )
+ADDRESS_MAP_START(mz2000_state::mz2000_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_IMPORT_FROM(mz80b_io)
diff --git a/src/mame/drivers/mz2500.cpp b/src/mame/drivers/mz2500.cpp
index 7ba32891e53..6d41761be41 100644
--- a/src/mame/drivers/mz2500.cpp
+++ b/src/mame/drivers/mz2500.cpp
@@ -238,6 +238,8 @@ public:
void mz2500_reset(mz2500_state *state, uint8_t type);
required_device<palette_device> m_palette;
void mz2500(machine_config &config);
+ void mz2500_io(address_map &map);
+ void mz2500_map(address_map &map);
};
@@ -1223,7 +1225,7 @@ WRITE8_MEMBER(mz2500_state::floppy_side_w)
}
-static ADDRESS_MAP_START(mz2500_map, AS_PROGRAM, 8, mz2500_state )
+ADDRESS_MAP_START(mz2500_state::mz2500_map)
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(bank0_r,bank0_w)
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(bank1_r,bank1_w)
AM_RANGE(0x4000, 0x5fff) AM_READWRITE(bank2_r,bank2_w)
@@ -1507,7 +1509,7 @@ WRITE8_MEMBER(mz2500_state::mz2500_emm_data_w)
m_emm_ram[m_emm_offset] = data;
}
-static ADDRESS_MAP_START(mz2500_io, AS_IO, 8, mz2500_state )
+ADDRESS_MAP_START(mz2500_state::mz2500_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x60, 0x63) AM_WRITE(w3100a_w)
// AM_RANGE(0x63, 0x63) AM_READ(w3100a_r)
diff --git a/src/mame/drivers/mz3500.cpp b/src/mame/drivers/mz3500.cpp
index 8aef739fd0c..86c6d304df8 100644
--- a/src/mame/drivers/mz3500.cpp
+++ b/src/mame/drivers/mz3500.cpp
@@ -104,6 +104,12 @@ public:
UPD7220_DRAW_TEXT_LINE_MEMBER( hgdc_draw_text );
void mz3500(machine_config &config);
+ void mz3500_master_io(address_map &map);
+ void mz3500_master_map(address_map &map);
+ void mz3500_slave_io(address_map &map);
+ void mz3500_slave_map(address_map &map);
+ void upd7220_1_map(address_map &map);
+ void upd7220_2_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -585,11 +591,11 @@ READ8_MEMBER(mz3500_state::mz3500_fdc_dma_r)
return m_fdc->dma_r();
}
-static ADDRESS_MAP_START( mz3500_master_map, AS_PROGRAM, 8, mz3500_state )
+ADDRESS_MAP_START(mz3500_state::mz3500_master_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mz3500_master_mem_r,mz3500_master_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz3500_master_io, AS_IO, 8, mz3500_state )
+ADDRESS_MAP_START(mz3500_state::mz3500_master_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0xe4, 0xe7) SFD upd765
@@ -602,13 +608,13 @@ static ADDRESS_MAP_START( mz3500_master_io, AS_IO, 8, mz3500_state )
AM_RANGE(0xfc, 0xff) AM_READWRITE(mz3500_io_r,mz3500_io_w) // memory mapper
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz3500_slave_map, AS_PROGRAM, 8, mz3500_state )
+ADDRESS_MAP_START(mz3500_state::mz3500_slave_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("ipl", 0)
AM_RANGE(0x2000, 0x27ff) AM_READWRITE(mz3500_shared_ram_r, mz3500_shared_ram_w)
AM_RANGE(0x4000, 0x5fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz3500_slave_io, AS_IO, 8, mz3500_state )
+ADDRESS_MAP_START(mz3500_state::mz3500_slave_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x00, 0x0f) f/f and irq to master CPU
@@ -787,12 +793,12 @@ void mz3500_state::machine_reset()
}
-static ADDRESS_MAP_START( upd7220_1_map, 0, 16, mz3500_state )
+ADDRESS_MAP_START(mz3500_state::upd7220_1_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x00000, 0x00fff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd7220_2_map, 0, 16, mz3500_state )
+ADDRESS_MAP_START(mz3500_state::upd7220_2_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM // AM_SHARE("video_ram_2")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mz6500.cpp b/src/mame/drivers/mz6500.cpp
index 5adb093a7de..a9c1c94fb39 100644
--- a/src/mame/drivers/mz6500.cpp
+++ b/src/mame/drivers/mz6500.cpp
@@ -38,6 +38,9 @@ public:
required_device<palette_device> m_palette;
UPD7220_DISPLAY_PIXELS_MEMBER( hgdc_display_pixels );
void mz6500(machine_config &config);
+ void mz6500_io(address_map &map);
+ void mz6500_map(address_map &map);
+ void upd7220_map(address_map &map);
};
UPD7220_DISPLAY_PIXELS_MEMBER( mz6500_state::hgdc_display_pixels )
@@ -77,7 +80,7 @@ WRITE8_MEMBER( mz6500_state::mz6500_vram_w )
m_video_ram[offset] |= data << mask;
}
-static ADDRESS_MAP_START(mz6500_map, AS_PROGRAM, 16, mz6500_state)
+ADDRESS_MAP_START(mz6500_state::mz6500_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0x9ffff) AM_RAM
// AM_RANGE(0xa0000,0xbffff) kanji/dictionary ROM
@@ -85,7 +88,7 @@ static ADDRESS_MAP_START(mz6500_map, AS_PROGRAM, 16, mz6500_state)
AM_RANGE(0xfc000,0xfffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mz6500_io, AS_IO, 16, mz6500_state)
+ADDRESS_MAP_START(mz6500_state::mz6500_io)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x0000, 0x000f) i8237 dma
// AM_RANGE(0x0010, 0x001f) i8255
@@ -133,7 +136,7 @@ static SLOT_INTERFACE_START( mz6500_floppies )
SLOT_INTERFACE( "525hd", FLOPPY_525_HD )
SLOT_INTERFACE_END
-static ADDRESS_MAP_START( upd7220_map, 0, 16, mz6500_state )
+ADDRESS_MAP_START(mz6500_state::upd7220_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mz700.cpp b/src/mame/drivers/mz700.cpp
index 00fe811996a..e008f840ed5 100644
--- a/src/mame/drivers/mz700.cpp
+++ b/src/mame/drivers/mz700.cpp
@@ -113,14 +113,14 @@ TIMER_DEVICE_CALLBACK_MEMBER(mz_state::ne556_other_callback)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( mz700_mem, AS_PROGRAM, 8, mz_state )
+ADDRESS_MAP_START(mz_state::mz700_mem)
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x1000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xdfff) AM_RAMBANK("bankd")
AM_RANGE(0xe000, 0xffff) AM_DEVICE("banke", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz700_banke, AS_PROGRAM, 8, mz_state )
+ADDRESS_MAP_START(mz_state::mz700_banke)
// bank 0: ram (mz700_bank1)
AM_RANGE(0x0000, 0x1fff) AM_RAM
// bank 1: devices (mz700_bank3)
@@ -132,7 +132,7 @@ static ADDRESS_MAP_START( mz700_banke, AS_PROGRAM, 8, mz_state )
AM_RANGE(0x4000, 0x5fff) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz700_io, AS_IO, 8, mz_state )
+ADDRESS_MAP_START(mz_state::mz700_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mz700_bank_0_w)
AM_RANGE(0xe1, 0xe1) AM_WRITE(mz700_bank_1_w)
@@ -143,7 +143,7 @@ static ADDRESS_MAP_START( mz700_io, AS_IO, 8, mz_state )
AM_RANGE(0xe6, 0xe6) AM_WRITE(mz700_bank_6_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz800_mem, AS_PROGRAM, 8, mz_state )
+ADDRESS_MAP_START(mz_state::mz800_mem)
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x1000, 0x1fff) AM_RAMBANK("bank1")
AM_RANGE(0x2000, 0x7fff) AM_RAM
@@ -153,7 +153,7 @@ static ADDRESS_MAP_START( mz800_mem, AS_PROGRAM, 8, mz_state )
AM_RANGE(0xe000, 0xffff) AM_DEVICE("bankf", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz800_bankf, AS_PROGRAM, 8, mz_state )
+ADDRESS_MAP_START(mz_state::mz800_bankf)
// bank 0: ram (mz700_bank1)
AM_RANGE(0x0000, 0x1fff) AM_RAM
// bank 1: devices (mz700_bank3)
@@ -166,7 +166,7 @@ static ADDRESS_MAP_START( mz800_bankf, AS_PROGRAM, 8, mz_state )
AM_RANGE(0x4000, 0x5fff) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz800_io, AS_IO, 8, mz_state )
+ADDRESS_MAP_START(mz_state::mz800_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xcc, 0xcc) AM_WRITE(mz800_write_format_w )
AM_RANGE(0xcd, 0xcd) AM_WRITE(mz800_read_format_w )
diff --git a/src/mame/drivers/mz80.cpp b/src/mame/drivers/mz80.cpp
index f414d6bed60..bea469495e5 100644
--- a/src/mame/drivers/mz80.cpp
+++ b/src/mame/drivers/mz80.cpp
@@ -245,7 +245,7 @@ static INPUT_PORTS_START( mz80a )
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_CODE(KEYCODE_PLUS_PAD) PORT_CHAR(UCHAR_MAMEKEY(PLUS_PAD))
INPUT_PORTS_END
-static ADDRESS_MAP_START( mz80k_mem, AS_PROGRAM, 8, mz80_state )
+ADDRESS_MAP_START(mz80_state::mz80k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0xcfff) AM_RAM AM_SHARE("p_ram") // 48 KB of RAM
@@ -256,7 +256,7 @@ static ADDRESS_MAP_START( mz80k_mem, AS_PROGRAM, 8, mz80_state )
AM_RANGE(0xf000, 0xf3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mz80k_io, AS_IO, 8, mz80_state )
+ADDRESS_MAP_START(mz80_state::mz80k_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/mzr8105.cpp b/src/mame/drivers/mzr8105.cpp
index 55b7898b7d1..0f31f0bfc7f 100644
--- a/src/mame/drivers/mzr8105.cpp
+++ b/src/mame/drivers/mzr8105.cpp
@@ -179,11 +179,12 @@ mzr8105_state(const machine_config &mconfig, device_type type, const char *tag)
}
void mzr8105(machine_config &config);
+ void mzr8105_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START (mzr8105_mem, AS_PROGRAM, 16, mzr8105_state)
+ADDRESS_MAP_START(mzr8105_state::mzr8105_mem)
ADDRESS_MAP_UNMAP_HIGH
/* The ROMs contains an OS9 bootloader. It is position independent but reset vector suggests that it sits flat on adress 0 (zero) */
AM_RANGE (0x000000, 0x003fff) AM_ROM AM_REGION("roms", 0x000000) /* System EPROM Area 16Kb OS9 DEBUG - not verified */
diff --git a/src/mame/drivers/n64.cpp b/src/mame/drivers/n64.cpp
index 4f95800e6d7..103b1880864 100644
--- a/src/mame/drivers/n64.cpp
+++ b/src/mame/drivers/n64.cpp
@@ -40,6 +40,9 @@ public:
DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( n64dd );
void n64(machine_config &config);
void n64dd(machine_config &config);
+ void n64_map(address_map &map);
+ void n64dd_map(address_map &map);
+ void rsp_map(address_map &map);
};
READ32_MEMBER(n64_mess_state::dd_null_r)
@@ -47,7 +50,7 @@ READ32_MEMBER(n64_mess_state::dd_null_r)
return 0xffffffff;
}
-static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32, n64_mess_state )
+ADDRESS_MAP_START(n64_mess_state::n64_map)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_SHARE("rdram") // RDRAM
AM_RANGE(0x03f00000, 0x03f00027) AM_DEVREADWRITE("rcp", n64_periphs, rdram_reg_r, rdram_reg_w)
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_SHARE("rsp_dmem") // RSP DMEM
@@ -67,7 +70,7 @@ static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32, n64_mess_state )
AM_RANGE(0x1fc007c0, 0x1fc007ff) AM_DEVREADWRITE("rcp", n64_periphs, pif_ram_r, pif_ram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( n64dd_map, AS_PROGRAM, 32, n64_mess_state )
+ADDRESS_MAP_START(n64_mess_state::n64dd_map)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_SHARE("rdram") // RDRAM
AM_RANGE(0x03f00000, 0x03f00027) AM_DEVREADWRITE("rcp", n64_periphs, rdram_reg_r, rdram_reg_w)
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_SHARE("rsp_dmem") // RSP DMEM
@@ -88,7 +91,7 @@ static ADDRESS_MAP_START( n64dd_map, AS_PROGRAM, 32, n64_mess_state )
AM_RANGE(0x1fc007c0, 0x1fc007ff) AM_DEVREADWRITE("rcp", n64_periphs, pif_ram_r, pif_ram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rsp_map, AS_PROGRAM, 32, n64_mess_state )
+ADDRESS_MAP_START(n64_mess_state::rsp_map)
AM_RANGE(0x00000000, 0x00000fff) AM_RAM AM_SHARE("rsp_dmem")
AM_RANGE(0x00001000, 0x00001fff) AM_RAM AM_SHARE("rsp_imem")
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_SHARE("rsp_dmem")
diff --git a/src/mame/drivers/n8080.cpp b/src/mame/drivers/n8080.cpp
index e96d994b8da..62afd19ace2 100644
--- a/src/mame/drivers/n8080.cpp
+++ b/src/mame/drivers/n8080.cpp
@@ -34,20 +34,20 @@ READ8_MEMBER(n8080_state::n8080_shift_r)
return m_shift_data >> (8 - m_shift_bits);
}
-static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 8, n8080_state )
+ADDRESS_MAP_START(n8080_state::main_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( helifire_main_cpu_map, AS_PROGRAM, 8, n8080_state )
+ADDRESS_MAP_START(n8080_state::helifire_main_cpu_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, n8080_state )
+ADDRESS_MAP_START(n8080_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/nakajies.cpp b/src/mame/drivers/nakajies.cpp
index 5cb46218bc6..7b1a58337f6 100644
--- a/src/mame/drivers/nakajies.cpp
+++ b/src/mame/drivers/nakajies.cpp
@@ -345,6 +345,8 @@ public:
void nakajies220(machine_config &config);
void nakajies250(machine_config &config);
void dator3k(machine_config &config);
+ void nakajies_io_map(address_map &map);
+ void nakajies_map(address_map &map);
};
@@ -396,7 +398,7 @@ WRITE8_MEMBER( nakajies_state::bank6_w ) { bank_w( 6, offset, data ); }
WRITE8_MEMBER( nakajies_state::bank7_w ) { bank_w( 7, offset, data ); }
-static ADDRESS_MAP_START( nakajies_map, AS_PROGRAM, 8, nakajies_state )
+ADDRESS_MAP_START(nakajies_state::nakajies_map)
AM_RANGE( 0x00000, 0x1ffff ) AM_READ_BANK( "bank0" ) AM_WRITE( bank0_w )
AM_RANGE( 0x20000, 0x3ffff ) AM_READ_BANK( "bank1" ) AM_WRITE( bank1_w )
AM_RANGE( 0x40000, 0x5ffff ) AM_READ_BANK( "bank2" ) AM_WRITE( bank2_w )
@@ -499,7 +501,7 @@ READ8_MEMBER( nakajies_state::keyboard_r )
}
-static ADDRESS_MAP_START( nakajies_io_map, AS_IO, 8, nakajies_state )
+ADDRESS_MAP_START(nakajies_state::nakajies_io_map)
AM_RANGE( 0x0000, 0x0000 ) AM_WRITE( lcd_memory_start_w )
AM_RANGE( 0x0010, 0x0017 ) AM_WRITE( banking_w )
AM_RANGE( 0x0060, 0x0060 ) AM_READWRITE( irq_enable_r, irq_enable_w )
diff --git a/src/mame/drivers/namcofl.cpp b/src/mame/drivers/namcofl.cpp
index 518947fe621..10927e5a7e1 100644
--- a/src/mame/drivers/namcofl.cpp
+++ b/src/mame/drivers/namcofl.cpp
@@ -214,7 +214,7 @@ WRITE8_MEMBER(namcofl_state::namcofl_c116_w)
}
}
-static ADDRESS_MAP_START( namcofl_mem, AS_PROGRAM, 32, namcofl_state )
+ADDRESS_MAP_START(namcofl_state::namcofl_mem)
AM_RANGE(0x00000000, 0x000fffff) AM_RAMBANK("bank1")
AM_RANGE(0x10000000, 0x100fffff) AM_RAMBANK("bank2")
AM_RANGE(0x20000000, 0x201fffff) AM_ROM AM_REGION("data", 0)
@@ -311,13 +311,13 @@ READ8_MEMBER(namcofl_state::dac2_r){ return 0xff; }
READ8_MEMBER(namcofl_state::dac1_r){ return 0xff; }
READ8_MEMBER(namcofl_state::dac0_r){ return 0xff; }
-static ADDRESS_MAP_START( namcoc75_am, AS_PROGRAM, 16, namcofl_state )
+ADDRESS_MAP_START(namcofl_state::namcoc75_am)
AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE("c352", c352_device, read, write)
AM_RANGE(0x004000, 0x00bfff) AM_RAM_WRITE(mcu_shared_w) AM_SHARE("shareram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("c75data", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( namcoc75_io, AS_IO, 8, namcofl_state )
+ADDRESS_MAP_START(namcofl_state::namcoc75_io)
AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READWRITE(port6_r, port6_w)
AM_RANGE(M37710_PORT7, M37710_PORT7) AM_READ(port7_r)
AM_RANGE(M37710_ADC7_L, M37710_ADC7_L) AM_READ(dac7_r)
diff --git a/src/mame/drivers/namcona1.cpp b/src/mame/drivers/namcona1.cpp
index 107c34a0c08..6303abb3352 100644
--- a/src/mame/drivers/namcona1.cpp
+++ b/src/mame/drivers/namcona1.cpp
@@ -551,7 +551,7 @@ WRITE16_MEMBER(namcona1_state::mcu_mailbox_w_mcu)
COMBINE_DATA(&m_mcu_mailbox[offset%8]);
}
-static ADDRESS_MAP_START( namcona1_main_map, AS_PROGRAM, 16, namcona1_state )
+ADDRESS_MAP_START(namcona1_state::namcona1_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_SHARE("workram")
AM_RANGE(0x3f8000, 0x3fffff) AM_READWRITE(mcu_mailbox_r, mcu_mailbox_w_68k)
AM_RANGE(0x400000, 0xbfffff) AM_ROM AM_REGION("maskrom", 0) // data
@@ -579,7 +579,7 @@ WRITE8_MEMBER(xday2_namcona2_state::printer_w)
// ...
}
-static ADDRESS_MAP_START( xday2_main_map, AS_PROGRAM, 16, xday2_namcona2_state )
+ADDRESS_MAP_START(xday2_namcona2_state::xday2_main_map)
AM_IMPORT_FROM(namcona1_main_map)
// these two seems lamps and flash related (mux too?)
AM_RANGE(0xd00000, 0xd00001) AM_WRITENOP
@@ -635,7 +635,7 @@ WRITE16_MEMBER(namcona1_state::snd_w)
}
}
-static ADDRESS_MAP_START( namcona1_mcu_map, AS_PROGRAM, 16, namcona1_state )
+ADDRESS_MAP_START(namcona1_state::namcona1_mcu_map)
AM_RANGE(0x000800, 0x000fff) AM_READWRITE(mcu_mailbox_r, mcu_mailbox_w_mcu) // "Mailslot" communications ports
AM_RANGE(0x001000, 0x001fff) AM_READWRITE(snd_r, snd_w) // C140-alike sound chip
AM_RANGE(0x002000, 0x002fff) AM_READWRITE(na1mcu_shared_r, na1mcu_shared_w) // mirror of first page of shared work RAM
@@ -752,7 +752,7 @@ READ8_MEMBER(namcona1_state::portana_r)
return (port & bitnum[offset>>1]) ? 0xff : 0x00;
}
-static ADDRESS_MAP_START( namcona1_mcu_io_map, AS_IO, 8, namcona1_state )
+ADDRESS_MAP_START(namcona1_state::namcona1_mcu_io_map)
AM_RANGE(M37710_PORT4, M37710_PORT4) AM_READWRITE(port4_r, port4_w )
AM_RANGE(M37710_PORT5, M37710_PORT5) AM_READWRITE(port5_r, port5_w )
AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READWRITE(port6_r, port6_w )
diff --git a/src/mame/drivers/namconb1.cpp b/src/mame/drivers/namconb1.cpp
index 6047a766f6f..007a3597606 100644
--- a/src/mame/drivers/namconb1.cpp
+++ b/src/mame/drivers/namconb1.cpp
@@ -690,7 +690,7 @@ WRITE32_MEMBER(namconb1_state::share_w)
COMBINE_DATA(m_namconb_shareram+offset*2);
}
-static ADDRESS_MAP_START( namconb1_am, AS_PROGRAM, 32, namconb1_state )
+ADDRESS_MAP_START(namconb1_state::namconb1_am)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10001f) AM_READ(gunbulet_gun_r)
AM_RANGE(0x1c0000, 0x1cffff) AM_RAM
@@ -708,7 +708,7 @@ static ADDRESS_MAP_START( namconb1_am, AS_PROGRAM, 32, namconb1_state )
AM_RANGE(0x700000, 0x707fff) AM_DEVREADWRITE8("c116", namco_c116_device, read, write, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( namconb2_am, AS_PROGRAM, 32, namconb1_state )
+ADDRESS_MAP_START(namconb1_state::namconb2_am)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x1c0000, 0x1cffff) AM_RAM
AM_RANGE(0x1e4000, 0x1e4003) AM_READWRITE(randgen_r,srand_w)
@@ -752,7 +752,7 @@ WRITE16_MEMBER(namconb1_state::mcu_shared_w)
}
}
-static ADDRESS_MAP_START( namcoc75_am, AS_PROGRAM, 16, namconb1_state )
+ADDRESS_MAP_START(namconb1_state::namcoc75_am)
AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE("c352", c352_device, read, write)
AM_RANGE(0x004000, 0x00bfff) AM_RAM_WRITE(mcu_shared_w) AM_SHARE("namconb_share")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("c75data", 0)
@@ -835,7 +835,7 @@ READ8_MEMBER(namconb1_state::dac0_r)// bit 6
return (m_p3.read_safe(0xff)<<7)&0x80;
}
-static ADDRESS_MAP_START( namcoc75_io, AS_IO, 8, namconb1_state )
+ADDRESS_MAP_START(namconb1_state::namcoc75_io)
AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READWRITE(port6_r, port6_w)
AM_RANGE(M37710_PORT7, M37710_PORT7) AM_READ(port7_r)
AM_RANGE(M37710_ADC7_L, M37710_ADC7_L) AM_READ(dac7_r)
diff --git a/src/mame/drivers/namcond1.cpp b/src/mame/drivers/namcond1.cpp
index 9667e2a3cc8..a232631f91a 100644
--- a/src/mame/drivers/namcond1.cpp
+++ b/src/mame/drivers/namcond1.cpp
@@ -196,7 +196,7 @@ Some logic, resistors/caps/transistors, some connectors etc.
/*************************************************************/
-static ADDRESS_MAP_START( namcond1_map, AS_PROGRAM, 16, namcond1_state )
+ADDRESS_MAP_START(namcond1_state::namcond1_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x800000, 0x80000f) AM_DEVICE8("ygv608", ygv608_device, port_map, 0xff00)
@@ -204,7 +204,7 @@ static ADDRESS_MAP_START( namcond1_map, AS_PROGRAM, 16, namcond1_state )
AM_RANGE(0xc3ff00, 0xc3ffff) AM_READWRITE(cuskey_r,cuskey_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( abcheck_map, AS_PROGRAM, 16, namcond1_state )
+ADDRESS_MAP_START(namcond1_state::abcheck_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x600000, 0x607fff) AM_RAM AM_SHARE("zpr1")
@@ -298,7 +298,7 @@ WRITE16_MEMBER(namcond1_state::mcu_pa_write)
}
/* H8/3002 MCU stuff */
-static ADDRESS_MAP_START( nd1h8rwmap, AS_PROGRAM, 16, namcond1_state )
+ADDRESS_MAP_START(namcond1_state::nd1h8rwmap)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0xa00000, 0xa07fff) AM_DEVREADWRITE("c352", c352_device, read, write)
@@ -311,7 +311,7 @@ static ADDRESS_MAP_START( nd1h8rwmap, AS_PROGRAM, 16, namcond1_state )
AM_RANGE(0xffff1e, 0xffff1f) AM_NOP // ^
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nd1h8iomap, AS_IO, 16, namcond1_state )
+ADDRESS_MAP_START(namcond1_state::nd1h8iomap)
AM_RANGE(h8_device::PORT_7, h8_device::PORT_7) AM_READ(mcu_p7_read )
AM_RANGE(h8_device::PORT_A, h8_device::PORT_A) AM_READWRITE(mcu_pa_read, mcu_pa_write )
AM_RANGE(h8_device::ADC_0, h8_device::ADC_3) AM_NOP // MCU reads these, but the games have no analog controls
diff --git a/src/mame/drivers/namcops2.cpp b/src/mame/drivers/namcops2.cpp
index 3d01fb9896a..2e960f54334 100644
--- a/src/mame/drivers/namcops2.cpp
+++ b/src/mame/drivers/namcops2.cpp
@@ -888,6 +888,7 @@ public:
void system246(machine_config &config);
void system256(machine_config &config);
+ void ps2_map(address_map &map);
protected:
// devices
@@ -907,7 +908,7 @@ uint32_t namcops2_state::screen_update(screen_device &screen, bitmap_rgb32 &bitm
return 0;
}
-static ADDRESS_MAP_START(ps2_map, AS_PROGRAM, 32, namcops2_state)
+ADDRESS_MAP_START(namcops2_state::ps2_map)
AM_RANGE(0x00000000, 0x01ffffff) AM_RAM // 32 MB RAM in consumer PS2s, do these have more?
AM_RANGE(0x1fc00000, 0x1fdfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/namcos1.cpp b/src/mame/drivers/namcos1.cpp
index 148b3daa089..d4085dacc2a 100644
--- a/src/mame/drivers/namcos1.cpp
+++ b/src/mame/drivers/namcos1.cpp
@@ -394,15 +394,15 @@ WRITE8_MEMBER(namcos1_state::dac_gain_w)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, namcos1_state )
+ADDRESS_MAP_START(namcos1_state::main_map)
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE("c117", namco_c117_device, main_r, main_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, namcos1_state )
+ADDRESS_MAP_START(namcos1_state::sub_map)
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE("c117", namco_c117_device, sub_r, sub_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( virtual_map, AS_PROGRAM, 8, namcos1_state )
+ADDRESS_MAP_START(namcos1_state::virtual_map)
AM_RANGE(0x2c0000, 0x2c1fff) AM_WRITE(_3dcs_w)
AM_RANGE(0x2e0000, 0x2e7fff) AM_DEVREADWRITE("c116", namco_c116_device, read, write)
AM_RANGE(0x2f0000, 0x2f7fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -416,7 +416,7 @@ static ADDRESS_MAP_START( virtual_map, AS_PROGRAM, 8, namcos1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, namcos1_state )
+ADDRESS_MAP_START(namcos1_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("soundbank") /* Banked ROMs */
AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2151_device, status_r, write)
AM_RANGE(0x5000, 0x53ff) AM_DEVREADWRITE("namco", namco_cus30_device, namcos1_cus30_r, namcos1_cus30_w) AM_MIRROR(0x400) /* PSG ( Shared ) */
@@ -429,7 +429,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, namcos1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, namcos1_state )
+ADDRESS_MAP_START(namcos1_state::mcu_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("mcu", hd63701_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM /* built in RAM */
AM_RANGE(0x1000, 0x1003) AM_READ(dsw_r)
@@ -445,7 +445,7 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, namcos1_state )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("mcu", 0) /* internal ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, namcos1_state )
+ADDRESS_MAP_START(namcos1_state::mcu_port_map)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ_PORT("COIN") AM_WRITE(coin_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READNOP AM_WRITE(dac_gain_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/namcos10.cpp b/src/mame/drivers/namcos10.cpp
index 6729f0ca794..3e6eb004984 100644
--- a/src/mame/drivers/namcos10.cpp
+++ b/src/mame/drivers/namcos10.cpp
@@ -444,6 +444,9 @@ public:
void ns10_gjspace(machine_config &config);
void ns10_nflclsfb(machine_config &config);
void ns10_gamshara(machine_config &config);
+ void namcos10_map(address_map &map);
+ void namcos10_memm_map(address_map &map);
+ void namcos10_memn_map(address_map &map);
private:
enum {
I2CP_IDLE,
@@ -485,7 +488,7 @@ public:
};
-static ADDRESS_MAP_START( namcos10_map, AS_PROGRAM, 32, namcos10_state )
+ADDRESS_MAP_START(namcos10_state::namcos10_map)
AM_RANGE(0x1f500000, 0x1f501fff) AM_RAM AM_SHARE("share3") /* ram? stores block numbers */
AM_RANGE(0x9f500000, 0x9f501fff) AM_RAM AM_SHARE("share3") /* ram? stores block numbers */
AM_RANGE(0xbf500000, 0xbf501fff) AM_RAM AM_SHARE("share3") /* ram? stores block numbers */
@@ -671,7 +674,7 @@ void namcos10_state::i2c_update()
i2c_prev_clock = clock;
}
-static ADDRESS_MAP_START( namcos10_memm_map, AS_PROGRAM, 32, namcos10_state )
+ADDRESS_MAP_START(namcos10_state::namcos10_memm_map)
AM_IMPORT_FROM(namcos10_map)
AM_RANGE(0x1f300000, 0x1f300003) AM_WRITE16(crypto_switch_w, 0x0000ffff)
@@ -766,7 +769,7 @@ READ16_MEMBER(namcos10_state::nand_block_r)
return block[ offset ];
}
-static ADDRESS_MAP_START( namcos10_memn_map, AS_PROGRAM, 32, namcos10_state )
+ADDRESS_MAP_START(namcos10_state::namcos10_memn_map)
AM_IMPORT_FROM(namcos10_map)
AM_RANGE(0x1f300000, 0x1f300003) AM_WRITE16(crypto_switch_w, 0x0000ffff)
diff --git a/src/mame/drivers/namcos11.cpp b/src/mame/drivers/namcos11.cpp
index 6ccb2f9f808..db322aa8fd8 100644
--- a/src/mame/drivers/namcos11.cpp
+++ b/src/mame/drivers/namcos11.cpp
@@ -347,6 +347,12 @@ public:
void souledge(machine_config &config);
void tekken(machine_config &config);
void tekken2(machine_config &config);
+ void c76_io_map(address_map &map);
+ void c76_map(address_map &map);
+ void namcos11_map(address_map &map);
+ void ptblank2ua_map(address_map &map);
+ void rom8_64_map(address_map &map);
+ void rom8_map(address_map &map);
protected:
virtual void driver_start() override;
@@ -458,7 +464,7 @@ WRITE16_MEMBER( namcos11_state::c76_shared_w )
COMBINE_DATA( &m_sharedram.target()[ offset ] );
}
-static ADDRESS_MAP_START( namcos11_map, AS_PROGRAM, 32, namcos11_state )
+ADDRESS_MAP_START(namcos11_state::namcos11_map)
AM_RANGE(0x1fa04000, 0x1fa0ffff) AM_READWRITE16(c76_shared_r, c76_shared_w, 0xffffffff) /* shared ram with C76 */
AM_RANGE(0x1fa20000, 0x1fa2001f) AM_DEVREADWRITE16("keycus", ns11_keycus_device, read, write, 0xffffffff)
AM_RANGE(0x1fa30000, 0x1fa30fff) AM_DEVREADWRITE8("at28c16", at28c16_device, read, write, 0x00ff00ff) /* eeprom */
@@ -466,7 +472,7 @@ static ADDRESS_MAP_START( namcos11_map, AS_PROGRAM, 32, namcos11_state )
AM_RANGE(0x1fbf6000, 0x1fbf6003) AM_WRITENOP /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rom8_map, AS_PROGRAM, 32, namcos11_state )
+ADDRESS_MAP_START(namcos11_state::rom8_map)
AM_IMPORT_FROM(namcos11_map)
AM_RANGE(0x1f000000, 0x1f0fffff) AM_ROMBANK("bank1")
@@ -480,7 +486,7 @@ static ADDRESS_MAP_START( rom8_map, AS_PROGRAM, 32, namcos11_state )
AM_RANGE(0x1fa10020, 0x1fa1002f) AM_WRITE16(rom8_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rom8_64_map, AS_PROGRAM, 32, namcos11_state )
+ADDRESS_MAP_START(namcos11_state::rom8_64_map)
AM_IMPORT_FROM(namcos11_map)
AM_RANGE(0x1f000000, 0x1f0fffff) AM_ROMBANK("bank1")
@@ -495,14 +501,14 @@ static ADDRESS_MAP_START( rom8_64_map, AS_PROGRAM, 32, namcos11_state )
AM_RANGE(0x1fa10020, 0x1fa1002f) AM_READNOP AM_WRITE16(rom8_64_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ptblank2ua_map, AS_PROGRAM, 32, namcos11_state )
+ADDRESS_MAP_START(namcos11_state::ptblank2ua_map)
AM_IMPORT_FROM(rom8_64_map)
AM_RANGE(0x1f780000, 0x1f78000f) AM_READ16(lightgun_r, 0xffffffff)
AM_RANGE(0x1f788000, 0x1f788003) AM_WRITE16(lightgun_w, 0xffffffff)
ADDRESS_MAP_END
-ADDRESS_MAP_START( c76_map, AS_PROGRAM, 16, namcos11_state )
+ADDRESS_MAP_START(namcos11_state::c76_map)
AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE("c352", c352_device, read, write)
AM_RANGE(0x001000, 0x001001) AM_READ_PORT("PLAYER4")
AM_RANGE(0x001002, 0x001003) AM_READ_PORT("SWITCH")
@@ -516,7 +522,7 @@ ADDRESS_MAP_START( c76_map, AS_PROGRAM, 16, namcos11_state )
AM_RANGE(0x301000, 0x301001) AM_WRITENOP
ADDRESS_MAP_END
-ADDRESS_MAP_START( c76_io_map, AS_IO, 8, namcos11_state )
+ADDRESS_MAP_START(namcos11_state::c76_io_map)
AM_RANGE(M37710_ADC0_H, M37710_ADC7_H) AM_READNOP
AM_RANGE(M37710_ADC0_L, M37710_ADC0_L) AM_READ_PORT("ADC0")
AM_RANGE(M37710_ADC1_L, M37710_ADC1_L) AM_READ_PORT("ADC1")
diff --git a/src/mame/drivers/namcos12.cpp b/src/mame/drivers/namcos12.cpp
index c99e1e7b507..a06af8e3d9d 100644
--- a/src/mame/drivers/namcos12.cpp
+++ b/src/mame/drivers/namcos12.cpp
@@ -1169,6 +1169,21 @@ public:
void namcos12_sub_irq( screen_device &screen, bool vblank_state );
void coh700(machine_config &config);
+ void golgo13_h8iomap(address_map &map);
+ void jvsiomap(address_map &map);
+ void jvsmap(address_map &map);
+ void namcos12_map(address_map &map);
+ void plarailjvsiomap(address_map &map);
+ void plarailjvsmap(address_map &map);
+ void ptblank2_map(address_map &map);
+ void s12h8iomap(address_map &map);
+ void s12h8jvsiomap(address_map &map);
+ void s12h8railiomap(address_map &map);
+ void s12h8rwjvsmap(address_map &map);
+ void s12h8rwmap(address_map &map);
+ void tdjvsiomap(address_map &map);
+ void tdjvsmap(address_map &map);
+ void tektagt_map(address_map &map);
protected:
virtual void machine_reset() override;
};
@@ -1318,7 +1333,7 @@ void namcos12_state::namcos12_sub_irq( screen_device &screen, bool vblank_state
m_sub_portb = (m_sub_portb & 0x7f) | (vblank_state << 7);
}
-static ADDRESS_MAP_START( namcos12_map, AS_PROGRAM, 32, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::namcos12_map)
AM_RANGE(0x1f000000, 0x1f000003) AM_READNOP AM_WRITE16(bankoffset_w, 0x0000ffff) /* banking */
AM_RANGE(0x1f080000, 0x1f083fff) AM_READWRITE16(sharedram_r, sharedram_w, 0xffffffff) /* shared ram?? */
AM_RANGE(0x1f140000, 0x1f140fff) AM_DEVREADWRITE8("at28c16", at28c16_device, read, write, 0x00ff00ff) /* eeprom */
@@ -1332,14 +1347,14 @@ static ADDRESS_MAP_START( namcos12_map, AS_PROGRAM, 32, namcos12_state )
AM_RANGE(0x1fa00000, 0x1fbfffff) AM_ROMBANK("bank1") /* banked roms */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ptblank2_map, AS_PROGRAM, 32, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::ptblank2_map)
AM_IMPORT_FROM( namcos12_map )
AM_RANGE(0x1f780000, 0x1f78000f) AM_READ16(system11gun_r, 0xffffffff)
AM_RANGE(0x1f788000, 0x1f788003) AM_WRITE16(system11gun_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tektagt_map, AS_PROGRAM, 32, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::tektagt_map)
AM_IMPORT_FROM( namcos12_map )
AM_RANGE(0x1fb00000, 0x1fb00003) AM_READWRITE16(tektagt_protection_1_r, tektagt_protection_1_w, 0xffffffff)
@@ -1518,7 +1533,7 @@ void namcos12_boothack_state::machine_reset()
}
/* H8/3002 MCU stuff */
-static ADDRESS_MAP_START( s12h8rwmap, AS_PROGRAM, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::s12h8rwmap)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x280000, 0x287fff) AM_DEVREADWRITE("c352", c352_device, read, write)
@@ -1529,7 +1544,7 @@ static ADDRESS_MAP_START( s12h8rwmap, AS_PROGRAM, 16, namcos12_state )
ADDRESS_MAP_END
// map for JVS games w/o controls connected directly
-static ADDRESS_MAP_START( s12h8rwjvsmap, AS_PROGRAM, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::s12h8rwjvsmap)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x280000, 0x287fff) AM_DEVREADWRITE("c352", c352_device, read, write)
@@ -1583,7 +1598,7 @@ READ16_MEMBER(namcos12_state::s12_mcu_jvs_p8_r)
return 0x12; // bit 4 = JVS enable. aplarail requires it to be on, soulclbr & others will require JVS I/O if it's on
}
-static ADDRESS_MAP_START( s12h8iomap, AS_IO, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::s12h8iomap)
AM_RANGE(h8_device::PORT_6, h8_device::PORT_6) AM_READ(s12_mcu_p6_r)
AM_RANGE(h8_device::PORT_7, h8_device::PORT_7) AM_READ_PORT("DSW")
AM_RANGE(h8_device::PORT_8, h8_device::PORT_8) AM_READ(s12_mcu_p8_r) AM_WRITENOP
@@ -1595,7 +1610,7 @@ static ADDRESS_MAP_START( s12h8iomap, AS_IO, 16, namcos12_state )
AM_RANGE(h8_device::ADC_3, h8_device::ADC_3) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s12h8jvsiomap, AS_IO, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::s12h8jvsiomap)
AM_RANGE(h8_device::PORT_6, h8_device::PORT_6) AM_READ(s12_mcu_p6_r)
AM_RANGE(h8_device::PORT_7, h8_device::PORT_7) AM_READ_PORT("DSW")
AM_RANGE(h8_device::PORT_8, h8_device::PORT_8) AM_READ(s12_mcu_jvs_p8_r) AM_WRITENOP
@@ -1607,7 +1622,7 @@ static ADDRESS_MAP_START( s12h8jvsiomap, AS_IO, 16, namcos12_state )
AM_RANGE(h8_device::ADC_3, h8_device::ADC_3) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s12h8railiomap, AS_IO, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::s12h8railiomap)
AM_RANGE(h8_device::PORT_6, h8_device::PORT_6) AM_READ(s12_mcu_p6_r)
AM_RANGE(h8_device::PORT_7, h8_device::PORT_7) AM_READ_PORT("DSW")
AM_RANGE(h8_device::PORT_8, h8_device::PORT_8) AM_READ(s12_mcu_jvs_p8_r) AM_WRITENOP
@@ -1631,7 +1646,7 @@ READ16_MEMBER(namcos12_state::s12_mcu_gun_v_r)
return ioport("LIGHT0_Y")->read();
}
-static ADDRESS_MAP_START( golgo13_h8iomap, AS_IO, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::golgo13_h8iomap)
AM_IMPORT_FROM( s12h8iomap )
AM_RANGE(h8_device::ADC_1, h8_device::ADC_1) AM_READ(s12_mcu_gun_h_r)
@@ -1734,12 +1749,12 @@ MACHINE_CONFIG_DERIVED(namcos12_boothack_state::golgo13, coh700)
MACHINE_CONFIG_END
#define JVSCLOCK (XTAL(14'745'600))
-static ADDRESS_MAP_START( jvsmap, AS_PROGRAM, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::jvsmap)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("iocpu", 0)
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jvsiomap, AS_IO, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::jvsiomap)
ADDRESS_MAP_END
@@ -1782,14 +1797,14 @@ READ16_MEMBER(namcos12_state::iob_p6_r)
return sb | 0;
}
-static ADDRESS_MAP_START( tdjvsmap, AS_PROGRAM, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::tdjvsmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("iocpu", 0)
AM_RANGE(0x6000, 0x6001) AM_READ_PORT("IN01")
AM_RANGE(0x6002, 0x6003) AM_READ_PORT("IN23")
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tdjvsiomap, AS_IO, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::tdjvsiomap)
AM_RANGE(h8_device::PORT_4, h8_device::PORT_4) AM_READWRITE(iob_p4_r, iob_p4_w)
AM_RANGE(h8_device::PORT_6, h8_device::PORT_6) AM_READ(iob_p6_r)
AM_RANGE(h8_device::ADC_0, h8_device::ADC_0) AM_READ_PORT("STEER")
@@ -1797,14 +1812,14 @@ static ADDRESS_MAP_START( tdjvsiomap, AS_IO, 16, namcos12_state )
AM_RANGE(h8_device::ADC_2, h8_device::ADC_2) AM_READ_PORT("GAS")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( plarailjvsmap, AS_PROGRAM, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::plarailjvsmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("iocpu", 0)
AM_RANGE(0x6000, 0x6001) AM_READ_PORT("IN01")
AM_RANGE(0x6002, 0x6003) AM_READ_PORT("IN23")
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( plarailjvsiomap, AS_IO, 16, namcos12_state )
+ADDRESS_MAP_START(namcos12_state::plarailjvsiomap)
AM_RANGE(h8_device::PORT_4, h8_device::PORT_4) AM_READWRITE(iob_p4_r, iob_p4_w)
AM_RANGE(h8_device::PORT_6, h8_device::PORT_6) AM_READ_PORT("SERVICE")
AM_RANGE(h8_device::ADC_0, h8_device::ADC_0) AM_NOP
diff --git a/src/mame/drivers/namcos2.cpp b/src/mame/drivers/namcos2.cpp
index 404c3c8e999..f9b7beae5d7 100644
--- a/src/mame/drivers/namcos2.cpp
+++ b/src/mame/drivers/namcos2.cpp
@@ -594,7 +594,7 @@ READ8_MEMBER(namcos2_state::ack_mcu_vbl_r)
0xc00000 ONWARDS are unverified memory locations on the video board
*/
-static ADDRESS_MAP_START( namcos2_68k_default_cpu_board_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::namcos2_68k_default_cpu_board_am)
AM_RANGE(0x200000, 0x3fffff) AM_ROM AM_REGION("data_rom", 0)
AM_RANGE(0x400000, 0x41ffff) AM_READWRITE(c123_tilemap_videoram_r,c123_tilemap_videoram_w)
AM_RANGE(0x420000, 0x42003f) AM_READWRITE(c123_tilemap_control_r,c123_tilemap_control_w)
@@ -606,7 +606,7 @@ ADDRESS_MAP_END
/*************************************************************/
-static ADDRESS_MAP_START( common_default_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::common_default_am)
AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
AM_RANGE(0xc00000, 0xc03fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc40000, 0xc40001) AM_READWRITE(gfx_ctrl_r, gfx_ctrl_w)
@@ -615,7 +615,7 @@ static ADDRESS_MAP_START( common_default_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0xd00000, 0xd0000f) AM_READWRITE(namcos2_68k_key_r,namcos2_68k_key_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_default_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::master_default_am)
AM_IMPORT_FROM( common_default_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
@@ -623,7 +623,7 @@ static ADDRESS_MAP_START( master_default_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0x1c0000, 0x1fffff) AM_DEVICE("master_intc", namco_c148_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_default_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::slave_default_am)
AM_IMPORT_FROM( common_default_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
@@ -633,7 +633,7 @@ ADDRESS_MAP_END
/*************************************************************/
-static ADDRESS_MAP_START( common_finallap_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::common_finallap_am)
AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
AM_RANGE(0x300000, 0x33ffff) AM_READ(namcos2_finallap_prot_r)
AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_SHARE("spriteram")
@@ -642,7 +642,7 @@ static ADDRESS_MAP_START( common_finallap_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0x8c0000, 0x8c0001) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_finallap_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::master_finallap_am)
AM_IMPORT_FROM( common_finallap_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
@@ -650,7 +650,7 @@ static ADDRESS_MAP_START( master_finallap_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0x1c0000, 0x1fffff) AM_DEVICE("master_intc", namco_c148_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_finallap_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::slave_finallap_am)
AM_IMPORT_FROM( common_finallap_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
@@ -659,14 +659,14 @@ ADDRESS_MAP_END
/*************************************************************/
-static ADDRESS_MAP_START( common_sgunner_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::common_sgunner_am)
AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
AM_RANGE(0x800000, 0x8141ff) AM_READWRITE(c355_obj_ram_r,c355_obj_ram_w)
AM_RANGE(0x818000, 0x818001) AM_WRITENOP
AM_RANGE(0xa00000, 0xa0000f) AM_READWRITE(namcos2_68k_key_r,namcos2_68k_key_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_sgunner_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::master_sgunner_am)
AM_IMPORT_FROM( common_sgunner_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
@@ -674,7 +674,7 @@ static ADDRESS_MAP_START( master_sgunner_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0x1c0000, 0x1fffff) AM_DEVICE("master_intc", namco_c148_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_sgunner_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::slave_sgunner_am)
AM_IMPORT_FROM( common_sgunner_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
@@ -683,7 +683,7 @@ ADDRESS_MAP_END
/*************************************************************/
-static ADDRESS_MAP_START( common_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::common_metlhawk_am)
AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
AM_RANGE(0xc00000, 0xc03fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc40000, 0xc4ffff) AM_READWRITE(c169_roz_videoram_r,c169_roz_videoram_w) AM_SHARE("rozvideoram")
@@ -691,7 +691,7 @@ static ADDRESS_MAP_START( common_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0xe00000, 0xe00001) AM_READWRITE(gfx_ctrl_r, gfx_ctrl_w) /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::master_metlhawk_am)
AM_IMPORT_FROM( common_metlhawk_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
@@ -699,7 +699,7 @@ static ADDRESS_MAP_START( master_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0x1c0000, 0x1fffff) AM_DEVICE("master_intc", namco_c148_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_metlhawk_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::slave_metlhawk_am)
AM_IMPORT_FROM( common_metlhawk_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
@@ -708,7 +708,7 @@ ADDRESS_MAP_END
/*************************************************************/
-static ADDRESS_MAP_START( common_luckywld_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::common_luckywld_am)
AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am )
AM_RANGE(0x800000, 0x8141ff) AM_READWRITE(c355_obj_ram_r,c355_obj_ram_w)
AM_RANGE(0x818000, 0x818001) AM_NOP /* enable? */
@@ -721,7 +721,7 @@ static ADDRESS_MAP_START( common_luckywld_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0xf00000, 0xf00007) AM_READWRITE(namcos2_68k_key_r,namcos2_68k_key_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_luckywld_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::master_luckywld_am)
AM_IMPORT_FROM( common_luckywld_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM)
@@ -729,7 +729,7 @@ static ADDRESS_MAP_START( master_luckywld_am, AS_PROGRAM, 16, namcos2_state )
AM_RANGE(0x1c0000, 0x1fffff) AM_DEVICE("master_intc", namco_c148_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_luckywld_am, AS_PROGRAM, 16, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::slave_luckywld_am)
AM_IMPORT_FROM( common_luckywld_am )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM)
@@ -740,7 +740,7 @@ ADDRESS_MAP_END
/* 6809 SOUND CPU Memory declarations */
/*************************************************************/
-static ADDRESS_MAP_START( sound_default_am, AS_PROGRAM, 8, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::sound_default_am)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank6") /* banked */
AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
AM_RANGE(0x5000, 0x6fff) AM_DEVREADWRITE("c140", c140_device, c140_r,c140_w)
@@ -759,7 +759,7 @@ ADDRESS_MAP_END
/* 68705 IO CPU Memory declarations */
/*************************************************************/
-static ADDRESS_MAP_START( mcu_default_am, AS_PROGRAM, 8, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::mcu_default_am)
/* input ports and dips are mapped here */
AM_RANGE(0x0000, 0x003f) AM_RAM /* Fill in register to stop logging */
AM_RANGE(0x0000, 0x0000) AM_READNOP /* Keep logging quiet */
@@ -795,7 +795,7 @@ WRITE8_MEMBER(namcos2_state::c68_p3_w)
m_player_mux = (data & 0x80) ? 1 : 0;
}
-static ADDRESS_MAP_START( c68_default_am, AS_PROGRAM, 8, namcos2_state )
+ADDRESS_MAP_START(namcos2_state::c68_default_am)
/* input ports and dips are mapped here */
AM_RANGE(0x2000, 0x2000) AM_READ_PORT("DSW")
AM_RANGE(0x3000, 0x3000) AM_READ_PORT("MCUDI0")
diff --git a/src/mame/drivers/namcos21.cpp b/src/mame/drivers/namcos21.cpp
index 2f15b932afd..cd832de261f 100644
--- a/src/mame/drivers/namcos21.cpp
+++ b/src/mame/drivers/namcos21.cpp
@@ -978,17 +978,17 @@ WRITE16_MEMBER(namcos21_state::dsp_xf_w)
if (ENABLE_LOGGING) logerror("xf(%d)\n",data);
}
-static ADDRESS_MAP_START( master_dsp_program, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::master_dsp_program)
AM_RANGE(0x0000, 0x0fff) AM_ROM /* BIOS */
AM_RANGE(0x8000, 0xbfff) AM_RAM AM_SHARE("master_dsp_code")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_dsp_data, AS_DATA, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::master_dsp_data)
AM_RANGE(0x2000, 0x200f) AM_READWRITE(dspcuskey_r,dspcuskey_w)
AM_RANGE(0x8000, 0xffff) AM_READWRITE(dspram16_r,dspram16_w<false>) /* 0x8000 words */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_dsp_io, AS_IO, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::master_dsp_io)
AM_RANGE(0x00,0x00) AM_READWRITE(dsp_port0_r,dsp_port0_w)
AM_RANGE(0x01,0x01) AM_READWRITE(dsp_port1_r,dsp_port1_w)
AM_RANGE(0x02,0x02) AM_READWRITE(dsp_port2_r,dsp_port2_w)
@@ -1101,16 +1101,16 @@ READ16_MEMBER(namcos21_state::slave_portf_r)
return 1;
}
-static ADDRESS_MAP_START( slave_dsp_program, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::slave_dsp_program)
AM_RANGE(0x0000, 0x0fff) AM_ROM /* BIOS */
AM_RANGE(0x8000, 0x8fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_dsp_data, AS_DATA, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::slave_dsp_data)
/* no external data memory */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_dsp_io, AS_IO, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::slave_dsp_io)
AM_RANGE(0x00,0x00) AM_READWRITE(slave_port0_r,slave_port0_w)
AM_RANGE(0x02,0x02) AM_READ(slave_port2_r)
AM_RANGE(0x03,0x03) AM_READWRITE(slave_port3_r,slave_port3_w)
@@ -1235,7 +1235,7 @@ WRITE8_MEMBER(namcos21_state::namcos2_dualportram_byte_w)
/* MASTER 68000 CPU Memory declarations */
/*************************************************************/
-static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::common_map)
AM_RANGE(0x280000, 0x280001) AM_WRITENOP /* written once on startup */
AM_RANGE(0x400000, 0x400001) AM_WRITE(pointram_control_w)
AM_RANGE(0x440000, 0x440001) AM_READWRITE(pointram_data_r,pointram_data_w)
@@ -1254,7 +1254,7 @@ static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, namcos21_state )
AM_RANGE(0xc00000, 0xcfffff) AM_ROM AM_MIRROR(0x100000) AM_REGION("edata", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::master_map)
AM_IMPORT_FROM( common_map )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* private work RAM */
@@ -1263,7 +1263,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, namcos21_state )
AM_RANGE(0x200000, 0x20ffff) AM_READWRITE(dspram16_r,dspram16_w<true>) AM_SHARE("dspram16")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::slave_map)
AM_IMPORT_FROM( common_map )
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAM /* private work RAM */
@@ -1407,17 +1407,17 @@ READ16_MEMBER(namcos21_state::winrun_table_r)
return m_winrun_polydata[offset];
}
-static ADDRESS_MAP_START( winrun_dsp_program, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::winrun_dsp_program)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winrun_dsp_data, AS_DATA, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::winrun_dsp_data)
AM_RANGE( 0x2000, 0x200f ) AM_READWRITE(winrun_cuskey_r,winrun_cuskey_w)
AM_RANGE( 0x4000, 0x4fff ) AM_READWRITE(winrun_dspcomram_r,winrun_dspcomram_w)
AM_RANGE( 0x8000, 0xffff ) AM_READ(winrun_table_r )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winrun_dsp_io, AS_IO, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::winrun_dsp_io)
AM_RANGE(0x08,0x09) AM_READWRITE(winrun_dsp_pointrom_data_r,winrun_dsp_pointrom_addr_w)
AM_RANGE(0x0a,0x0a) AM_WRITE(winrun_dsp_render_w)
AM_RANGE(0x0b,0x0b) AM_WRITENOP
@@ -1464,7 +1464,7 @@ WRITE16_MEMBER(namcos21_state::winrun_dspcomram_control_w)
COMBINE_DATA( &m_winrun_dspcomram_control[offset] );
}
-static ADDRESS_MAP_START( winrun_master_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::winrun_master_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */
AM_RANGE(0x180000, 0x183fff) AM_READWRITE8(namcos2_68k_eeprom_r,namcos2_68k_eeprom_w,0x00ff)
@@ -1484,7 +1484,7 @@ static ADDRESS_MAP_START( winrun_master_map, AS_PROGRAM, 16, namcos21_state )
AM_RANGE(0xb80000, 0xb8000f) AM_DEVICE("sci", namco_c139_device, regs_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winrun_slave_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::winrun_slave_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAM
AM_RANGE(0x1c0000, 0x1fffff) AM_DEVICE("slave_intc", namco_c148_device, map)
@@ -1497,7 +1497,7 @@ static ADDRESS_MAP_START( winrun_slave_map, AS_PROGRAM, 16, namcos21_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( winrun_gpu_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::winrun_gpu_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READWRITE(winrun_gpu_color_r,winrun_gpu_color_w) /* ? */
AM_RANGE(0x180000, 0x19ffff) AM_RAM /* work RAM */
@@ -1516,7 +1516,7 @@ ADDRESS_MAP_END
/* SOUND 6809 CPU Memory declarations */
/*************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank6") /* banked */
AM_RANGE(0x3000, 0x3003) AM_WRITENOP /* ? */
AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
@@ -1536,7 +1536,7 @@ ADDRESS_MAP_END
/* I/O HD63705 MCU Memory declarations */
/*************************************************************/
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::mcu_map)
AM_RANGE(0x0000, 0x003f) AM_RAM
AM_RANGE(0x0000, 0x0000) AM_READNOP
AM_RANGE(0x0001, 0x0001) AM_READ_PORT("PORTB") /* p1,p2 start */
@@ -1563,7 +1563,7 @@ ADDRESS_MAP_END
/*************************************************************/
-static ADDRESS_MAP_START( driveyes_common_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::driveyes_common_map)
AM_RANGE(0x700000, 0x71ffff) AM_READWRITE(c355_obj_ram_r,c355_obj_ram_w)
AM_RANGE(0x720000, 0x720007) AM_READWRITE(c355_obj_position_r,c355_obj_position_w)
AM_RANGE(0x740000, 0x74ffff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -1576,7 +1576,7 @@ static ADDRESS_MAP_START( driveyes_common_map, AS_PROGRAM, 16, namcos21_state )
AM_RANGE(0xb80000, 0xb8000f) AM_DEVICE("sci", namco_c139_device, regs_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( driveyes_master_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::driveyes_master_map)
AM_IMPORT_FROM( driveyes_common_map )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* private work RAM */
@@ -1590,7 +1590,7 @@ static ADDRESS_MAP_START( driveyes_master_map, AS_PROGRAM, 16, namcos21_state )
AM_RANGE(0x440000, 0x440001) AM_READWRITE(pointram_data_r,pointram_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( driveyes_slave_map, AS_PROGRAM, 16, namcos21_state )
+ADDRESS_MAP_START(namcos21_state::driveyes_slave_map)
AM_IMPORT_FROM( driveyes_common_map )
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* private work RAM */
diff --git a/src/mame/drivers/namcos22.cpp b/src/mame/drivers/namcos22.cpp
index 163f9bada62..c5e799f0cad 100644
--- a/src/mame/drivers/namcos22.cpp
+++ b/src/mame/drivers/namcos22.cpp
@@ -1724,7 +1724,7 @@ WRITE32_MEMBER(namcos22_state::namcos22s_chipselect_w)
// System 22
-static ADDRESS_MAP_START( namcos22_am, AS_PROGRAM, 32, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::namcos22_am)
/**
* Program ROM (2M bytes)
* Mounted position: LLB: CPU 4D, LMB: CPU 2D, UMB: CPU 8D, UUB: CPU 6D
@@ -1927,7 +1927,7 @@ ADDRESS_MAP_END
// Super System 22
-static ADDRESS_MAP_START( namcos22s_am, AS_PROGRAM, 32, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::namcos22s_am)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x400000, 0x40001f) AM_READWRITE16(namcos22_keycus_r, namcos22_keycus_w, 0xffffffff)
AM_RANGE(0x410000, 0x413fff) AM_RAM /* C139 SCI buffer */
@@ -1976,7 +1976,7 @@ READ32_MEMBER(namcos22_state::namcos22_gun_r)
}
}
-static ADDRESS_MAP_START( timecris_am, AS_PROGRAM, 32, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::timecris_am)
AM_IMPORT_FROM( namcos22s_am )
AM_RANGE(0x430000, 0x43000f) AM_READ(namcos22_gun_r)
ADDRESS_MAP_END
@@ -2009,7 +2009,7 @@ WRITE32_MEMBER(namcos22_state::alpinesa_prot_w)
}
}
-static ADDRESS_MAP_START( alpinesa_am, AS_PROGRAM, 32, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::alpinesa_am)
AM_IMPORT_FROM( namcos22s_am )
AM_RANGE(0x200000, 0x200003) AM_READ(alpinesa_prot_r)
AM_RANGE(0x300000, 0x300003) AM_WRITE(alpinesa_prot_w)
@@ -2539,18 +2539,18 @@ WRITE16_MEMBER(namcos22_state::master_render_device_w)
}
}
-static ADDRESS_MAP_START( master_dsp_program, AS_PROGRAM, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::master_dsp_program)
AM_RANGE(0x0000, 0x0fff) AM_ROM /* internal ROM (4k words) */
AM_RANGE(0x4000, 0x7fff) AM_ROM AM_SHARE("masterextram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_dsp_data, AS_DATA, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::master_dsp_data)
AM_RANGE(0x1000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0x7fff) AM_READ(master_external_ram_r) AM_WRITE(master_external_ram_w)
AM_RANGE(0x8000, 0xffff) AM_READ(namcos22_dspram16_r) AM_WRITE(namcos22_dspram16_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_dsp_io, AS_IO, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::master_dsp_io)
AM_RANGE(0x0, 0x0) AM_READWRITE(point_loword_r, point_loword_iw)
AM_RANGE(0x1, 0x1) AM_READWRITE(point_hiword_ir, point_hiword_w)
AM_RANGE(0x2, 0x2) AM_READWRITE(pdp_begin_r, dsp_unk2_w)
@@ -2625,16 +2625,16 @@ WRITE16_MEMBER(namcos22_state::dsp_slave_portb_w)
/* The slave dsp uses this to transmit a command sequence to an external device. */
}
-static ADDRESS_MAP_START( slave_dsp_program, AS_PROGRAM, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::slave_dsp_program)
AM_RANGE(0x0000, 0x0fff) AM_ROM /* internal ROM */
AM_RANGE(0x8000, 0x9fff) AM_ROM AM_SHARE("slaveextram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_dsp_data, AS_DATA, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::slave_dsp_data)
AM_RANGE(0x8000, 0x9fff) AM_READWRITE(slave_external_ram_r, slave_external_ram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_dsp_io, AS_IO, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::slave_dsp_io)
/* unknown signal */
AM_RANGE(0x3, 0x3) AM_READ(dsp_slave_port3_r)
@@ -2705,7 +2705,7 @@ READ8_MEMBER(namcos22_state::iomcu_port4_s22_r)
return 0x00;
}
-static ADDRESS_MAP_START( mcu_s22_program, AS_PROGRAM, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::mcu_s22_program)
AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE("c352", c352_device, read, write)
AM_RANGE(0x004000, 0x00bfff) AM_READWRITE(s22mcu_shared_r, s22mcu_shared_w )
AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("mcu", 0)
@@ -2715,15 +2715,15 @@ static ADDRESS_MAP_START( mcu_s22_program, AS_PROGRAM, 16, namcos22_state )
AM_RANGE(0x308000, 0x308003) AM_NOP // volume control IC?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( iomcu_s22_program, AS_PROGRAM, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::iomcu_s22_program)
// is there any external memory or MMIO on this one?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_s22_io, AS_IO, 8, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::mcu_s22_io)
AM_RANGE(M37710_PORT4, M37710_PORT4) AM_READ(mcu_port4_s22_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( iomcu_s22_io, AS_IO, 8, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::iomcu_s22_io)
AM_RANGE(M37710_PORT4, M37710_PORT4) AM_READ(iomcu_port4_s22_r)
AM_RANGE(0x00, 0xff) AM_NOP
ADDRESS_MAP_END
@@ -2794,7 +2794,7 @@ READ8_MEMBER(namcos22_state::namcos22s_mcu_adc_r)
return (offset & 1) ? adc >> 8 : adc;
}
-static ADDRESS_MAP_START( mcu_program, AS_PROGRAM, 16, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::mcu_program)
AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE("c352", c352_device, read, write)
AM_RANGE(0x004000, 0x00bfff) AM_READWRITE(s22mcu_shared_r, s22mcu_shared_w )
AM_RANGE(0x00c000, 0x00ffff) AM_ROM AM_REGION("mcu", 0xc000)
@@ -2805,7 +2805,7 @@ static ADDRESS_MAP_START( mcu_program, AS_PROGRAM, 16, namcos22_state )
AM_RANGE(0x308000, 0x308003) AM_NOP // volume control IC?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_io, AS_IO, 8, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::mcu_io)
AM_RANGE(M37710_PORT4, M37710_PORT4) AM_READWRITE(mcu_port4_r, mcu_port4_w)
AM_RANGE(M37710_PORT5, M37710_PORT5) AM_READWRITE(mcu_port5_r, mcu_port5_w)
AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READWRITE(mcu_port6_r, mcu_port6_w)
@@ -2954,7 +2954,7 @@ WRITE8_MEMBER(namcos22_state::alpine_mcu_port5_w)
}
}
-static ADDRESS_MAP_START( alpine_io_map, AS_IO, 8, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::alpine_io_map)
AM_IMPORT_FROM( mcu_io )
AM_RANGE(M37710_PORT5, M37710_PORT5) AM_WRITE(alpine_mcu_port5_w)
ADDRESS_MAP_END
@@ -2971,7 +2971,7 @@ WRITE8_MEMBER(namcos22_state::propcycle_mcu_port5_w)
output().set_led_value(0, data & 2);
}
-static ADDRESS_MAP_START( propcycl_io_map, AS_IO, 8, namcos22_state )
+ADDRESS_MAP_START(namcos22_state::propcycl_io_map)
AM_IMPORT_FROM( mcu_io )
AM_RANGE(M37710_PORT5, M37710_PORT5) AM_WRITE(propcycle_mcu_port5_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/namcos23.cpp b/src/mame/drivers/namcos23.cpp
index a815c5a86f7..cd639e71c03 100644
--- a/src/mame/drivers/namcos23.cpp
+++ b/src/mame/drivers/namcos23.cpp
@@ -1604,6 +1604,15 @@ public:
void s23(machine_config &config);
void gmen(machine_config &config);
void timecrs2(machine_config &config);
+ void gmen_mips_map(address_map &map);
+ void gmen_sh2_map(address_map &map);
+ void gorgon_map(address_map &map);
+ void s23_map(address_map &map);
+ void s23h8iomap(address_map &map);
+ void s23h8rwmap(address_map &map);
+ void s23iobrdiomap(address_map &map);
+ void s23iobrdmap(address_map &map);
+ void timecrs2iobrdmap(address_map &map);
};
@@ -2881,7 +2890,7 @@ WRITE16_MEMBER(namcos23_state::sub_comm_w)
// System Gorgon
-static ADDRESS_MAP_START( gorgon_map, AS_PROGRAM, 32, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::gorgon_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffffff)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x01000000, 0x010000ff) AM_READWRITE(c435_r, c435_w)
@@ -2906,7 +2915,7 @@ static ADDRESS_MAP_START( gorgon_map, AS_PROGRAM, 32, namcos23_state )
ADDRESS_MAP_END
// (Super) System 23
-static ADDRESS_MAP_START( s23_map, AS_PROGRAM, 32, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::s23_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffffff)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x01000000, 0x010000ff) AM_READWRITE(c435_r, c435_w)
@@ -2954,7 +2963,7 @@ WRITE32_MEMBER(namcos23_state::sh2_shared_w)
COMBINE_DATA(&m_gmen_sh2_shared[offset]);
}
-static ADDRESS_MAP_START( gmen_mips_map, AS_PROGRAM, 32, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::gmen_mips_map)
AM_IMPORT_FROM(s23_map)
AM_RANGE(0x0e400000, 0x0e400003) AM_READ(gmen_trigger_sh2)
AM_RANGE(0x0e700000, 0x0e70ffff) AM_READWRITE(sh2_shared_r, sh2_shared_w)
@@ -2963,7 +2972,7 @@ ADDRESS_MAP_END
// SH2 memmap
/* TODO: of course, I believe that area 0x008***** is actually a bank of some sort ... */
-static ADDRESS_MAP_START( gmen_sh2_map, AS_PROGRAM, 32, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::gmen_sh2_map)
AM_RANGE(0x00000000, 0x0000ffff) AM_RAM AM_SHARE("gmen_sh2_shared")
AM_RANGE(0x00800000, 0x008fffff) AM_ROM AM_REGION("data", 0xc00000) //c00000 "data" for final furlong 2. 0x1b6bc0 "user1" for gunmen wars
AM_RANGE(0x01800000, 0x0183ffff) AM_RAM // ???
@@ -3076,7 +3085,7 @@ WRITE16_MEMBER(namcos23_state::mcu_pb_w)
}
-static ADDRESS_MAP_START( s23h8rwmap, AS_PROGRAM, 16, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::s23h8rwmap)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_READWRITE(sharedram_sub_r, sharedram_sub_w )
AM_RANGE(0x280000, 0x287fff) AM_DEVREADWRITE("c352", c352_device, read, write)
@@ -3087,7 +3096,7 @@ static ADDRESS_MAP_START( s23h8rwmap, AS_PROGRAM, 16, namcos23_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s23h8iomap, AS_IO, 16, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::s23h8iomap)
AM_RANGE(h8_device::PORT_6, h8_device::PORT_6) AM_READWRITE(mcu_p6_r, mcu_p6_w )
AM_RANGE(h8_device::PORT_8, h8_device::PORT_8) AM_READWRITE(mcu_p8_r, mcu_p8_w )
AM_RANGE(h8_device::PORT_A, h8_device::PORT_A) AM_READWRITE(mcu_pa_r, mcu_pa_w )
@@ -3150,7 +3159,7 @@ READ16_MEMBER(namcos23_state::iob_analog_r)
}
-static ADDRESS_MAP_START( s23iobrdmap, AS_PROGRAM, 16, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::s23iobrdmap)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("iocpu", 0)
AM_RANGE(0x6000, 0x6001) AM_READ_PORT("IN01")
AM_RANGE(0x6002, 0x6003) AM_READ_PORT("IN23")
@@ -3159,7 +3168,7 @@ static ADDRESS_MAP_START( s23iobrdmap, AS_PROGRAM, 16, namcos23_state )
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s23iobrdiomap, AS_IO, 16, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::s23iobrdiomap)
AM_RANGE(h8_device::PORT_4, h8_device::PORT_4) AM_READWRITE(iob_p4_r, iob_p4_w)
AM_RANGE(h8_device::PORT_5, h8_device::PORT_5) AM_NOP // bit 2 = status LED to indicate transmitting packet to main
AM_RANGE(h8_device::PORT_6, h8_device::PORT_6) AM_READWRITE(iob_p6_r, iob_p6_w)
@@ -3189,7 +3198,7 @@ READ8_MEMBER(namcos23_state::iob_gun_r)
return 0;
}
-static ADDRESS_MAP_START( timecrs2iobrdmap, AS_PROGRAM, 16, namcos23_state )
+ADDRESS_MAP_START(namcos23_state::timecrs2iobrdmap)
AM_IMPORT_FROM( s23iobrdmap )
AM_RANGE(0x7000, 0x700f) AM_READ8(iob_gun_r, 0xffff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/namcos86.cpp b/src/mame/drivers/namcos86.cpp
index f25b4a36c81..11281e64d9d 100644
--- a/src/mame/drivers/namcos86.cpp
+++ b/src/mame/drivers/namcos86.cpp
@@ -333,7 +333,7 @@ void namcos86_state::machine_start()
}
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::cpu1_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_WRITE(videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -365,13 +365,13 @@ ADDRESS_MAP_END
// skykiddx and hopmappy cpu2 programs do nothing but sit in a loop resetting the watchdog
// shared RAM is presumably mapped somewhere, but it's impossible to infer from program behaviour
-static ADDRESS_MAP_START( hopmappy_cpu2_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::hopmappy_cpu2_map)
AM_RANGE(0x8000, 0xffff) AM_ROM
AM_RANGE(0x9000, 0x9000) AM_WRITE(watchdog2_w)
AM_RANGE(0x9400, 0x9400) AM_WRITE(int_ack2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roishtar_cpu2_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::roishtar_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM_WRITE(spriteram_w) AM_SHARE("spriteram")
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(videoram1_w) AM_SHARE("videoram1")
@@ -380,7 +380,7 @@ static ADDRESS_MAP_START( roishtar_cpu2_map, AS_PROGRAM, 8, namcos86_state )
AM_RANGE(0xb000, 0xb000) AM_WRITE(int_ack2_w) // IRQ acknowledge
ADDRESS_MAP_END
-static ADDRESS_MAP_START( genpeitd_cpu2_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::genpeitd_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM_WRITE(videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(spriteram_w) AM_SHARE("spriteram")
@@ -389,7 +389,7 @@ static ADDRESS_MAP_START( genpeitd_cpu2_map, AS_PROGRAM, 8, namcos86_state )
AM_RANGE(0x8800, 0x8800) AM_WRITE(int_ack2_w) // IRQ acknowledge
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rthunder_cpu2_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::rthunder_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM_WRITE(spriteram_w) AM_SHARE("spriteram")
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -402,7 +402,7 @@ static ADDRESS_MAP_START( rthunder_cpu2_map, AS_PROGRAM, 8, namcos86_state )
// { 0xd804, 0xd806 } layer 3 scroll registers would be here
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wndrmomo_cpu2_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::wndrmomo_cpu2_map)
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(spriteram_w) AM_SHARE("spriteram")
AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(videoram1_w) AM_SHARE("videoram1")
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -412,7 +412,7 @@ static ADDRESS_MAP_START( wndrmomo_cpu2_map, AS_PROGRAM, 8, namcos86_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( common_mcu_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::common_mcu_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("mcu", hd63701_cpu_device, m6801_io_r,m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namco_cus30_device, namcos1_cus30_r, namcos1_cus30_w)
@@ -421,7 +421,7 @@ static ADDRESS_MAP_START( common_mcu_map, AS_PROGRAM, 8, namcos86_state )
AM_RANGE(0xf000, 0xffff) AM_ROM // internal ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hopmappy_mcu_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::hopmappy_mcu_map)
AM_IMPORT_FROM(common_mcu_map)
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x2020, 0x2020) AM_READ_PORT("IN0")
@@ -432,7 +432,7 @@ static ADDRESS_MAP_START( hopmappy_mcu_map, AS_PROGRAM, 8, namcos86_state )
AM_RANGE(0x8800, 0x8800) AM_WRITENOP // ??? written (not always) at end of interrupt
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roishtar_mcu_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::roishtar_mcu_map)
AM_IMPORT_FROM(common_mcu_map)
AM_RANGE(0x2000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x6001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -445,7 +445,7 @@ static ADDRESS_MAP_START( roishtar_mcu_map, AS_PROGRAM, 8, namcos86_state )
ADDRESS_MAP_END
// are these three actually different, or are the I/O ports simply mirrored from 0x2000-0x3fff?
-static ADDRESS_MAP_START( genpeitd_mcu_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::genpeitd_mcu_map)
AM_IMPORT_FROM(common_mcu_map)
AM_RANGE(0x2800, 0x2801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x2820, 0x2820) AM_READ_PORT("IN0")
@@ -457,7 +457,7 @@ static ADDRESS_MAP_START( genpeitd_mcu_map, AS_PROGRAM, 8, namcos86_state )
AM_RANGE(0xa800, 0xa800) AM_WRITENOP // ??? written (not always) at end of interrupt
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rthunder_mcu_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::rthunder_mcu_map)
AM_IMPORT_FROM(common_mcu_map)
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x2020, 0x2020) AM_READ_PORT("IN0")
@@ -469,7 +469,7 @@ static ADDRESS_MAP_START( rthunder_mcu_map, AS_PROGRAM, 8, namcos86_state )
AM_RANGE(0xb800, 0xb800) AM_WRITENOP // ??? written (not always) at end of interrupt
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wndrmomo_mcu_map, AS_PROGRAM, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::wndrmomo_mcu_map)
AM_IMPORT_FROM(common_mcu_map)
AM_RANGE(0x3800, 0x3801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x3820, 0x3820) AM_READ_PORT("IN0")
@@ -487,7 +487,7 @@ READ8_MEMBER(namcos86_state::readFF)
return 0xff;
}
-static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, namcos86_state )
+ADDRESS_MAP_START(namcos86_state::mcu_port_map)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ_PORT("IN2")
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(coin_w)
diff --git a/src/mame/drivers/nanos.cpp b/src/mame/drivers/nanos.cpp
index 754b47332ca..0ecd4600eec 100644
--- a/src/mame/drivers/nanos.cpp
+++ b/src/mame/drivers/nanos.cpp
@@ -62,6 +62,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void nanos(machine_config &config);
+ void nanos_io(address_map &map);
+ void nanos_mem(address_map &map);
private:
uint8_t m_key_command;
uint8_t m_last_code;
@@ -91,7 +93,7 @@ private:
-static ADDRESS_MAP_START(nanos_mem, AS_PROGRAM, 8, nanos_state)
+ADDRESS_MAP_START(nanos_state::nanos_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_READ_BANK("bank1") AM_WRITE_BANK("bank3")
AM_RANGE( 0x1000, 0xffff ) AM_RAMBANK("bank2")
ADDRESS_MAP_END
@@ -137,7 +139,7 @@ static const z80_daisy_config nanos_daisy_chain[] =
{ nullptr }
};
-static ADDRESS_MAP_START( nanos_io , AS_IO, 8, nanos_state)
+ADDRESS_MAP_START(nanos_state::nanos_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
/* CPU card */
diff --git a/src/mame/drivers/naomi.cpp b/src/mame/drivers/naomi.cpp
index 635d62ee305..18b9d556fdb 100644
--- a/src/mame/drivers/naomi.cpp
+++ b/src/mame/drivers/naomi.cpp
@@ -1694,7 +1694,7 @@ WRITE64_MEMBER(naomi_state::eeprom_93c46a_w )
* Naomi 1 address map
*/
-static ADDRESS_MAP_START( naomi_map, AS_PROGRAM, 64, naomi_state )
+ADDRESS_MAP_START(naomi_state::naomi_map)
/* Area 0 */
AM_RANGE(0x00000000, 0x001fffff) AM_MIRROR(0xa2000000) AM_ROM AM_REGION("maincpu", 0) AM_SHARE("rombase") // BIOS
@@ -1754,7 +1754,7 @@ WRITE32_MEMBER(naomi2_state::both_pvr2_ta_w)
space.write_dword(0x025f8000|offset*4,data,mem_mask);
}
-static ADDRESS_MAP_START( naomi2_map, AS_PROGRAM, 64, naomi2_state )
+ADDRESS_MAP_START(naomi2_state::naomi2_map)
/* Area 0 */
AM_RANGE(0x00000000, 0x001fffff) AM_MIRROR(0xa2000000) AM_ROM AM_REGION("maincpu", 0) AM_SHARE("rombase") // BIOS
@@ -1815,7 +1815,7 @@ static ADDRESS_MAP_START( naomi2_map, AS_PROGRAM, 64, naomi2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( naomi_port, AS_IO, 64, naomi_state )
+ADDRESS_MAP_START(naomi_state::naomi_port)
AM_RANGE(0x00, 0x0f) AM_READWRITE(eeprom_93c46a_r, eeprom_93c46a_w)
ADDRESS_MAP_END
@@ -1929,7 +1929,7 @@ WRITE64_MEMBER(atomiswave_state::aw_modem_w )
osd_printf_verbose("%s",string_format("MODEM: [%08x=%x] write %x to %x, mask %x\n", 0x600000+reg*4, dat, data, offset, mem_mask).c_str());
}
-static ADDRESS_MAP_START( aw_map, AS_PROGRAM, 64, atomiswave_state )
+ADDRESS_MAP_START(atomiswave_state::aw_map)
/* Area 0 */
AM_RANGE(0x00000000, 0x0001ffff) AM_READWRITE(aw_flash_r, aw_flash_w ) AM_REGION("awflash", 0)
AM_RANGE(0xa0000000, 0xa001ffff) AM_READWRITE(aw_flash_r, aw_flash_w ) AM_REGION("awflash", 0)
@@ -1984,11 +1984,11 @@ static ADDRESS_MAP_START( aw_map, AS_PROGRAM, 64, atomiswave_state )
//AM_RANGE(0x1c000000, 0x1fffffff) AM_NOP // SH4 Internal
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aw_port, AS_IO, 64, atomiswave_state )
+ADDRESS_MAP_START(atomiswave_state::aw_port)
// ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dc_audio_map, AS_PROGRAM, 32, dc_state )
+ADDRESS_MAP_START(dc_state::dc_audio_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_SHARE("dc_sound_ram") /* shared with SH-4 */
AM_RANGE(0x00800000, 0x00807fff) AM_READWRITE(dc_arm_aica_r, dc_arm_aica_w)
@@ -2698,8 +2698,6 @@ MACHINE_CONFIG_START(dc_state::naomi_aw_base)
MCFG_SH4_MD7(1)
MCFG_SH4_MD8(0)
MCFG_SH4_CLOCK(CPU_CLOCK)
- MCFG_CPU_PROGRAM_MAP(naomi_map)
- MCFG_CPU_IO_MAP(naomi_port)
MCFG_CPU_FORCE_NO_DRC()
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", dc_state, dc_scanline, "screen", 0, 1)
@@ -2731,6 +2729,10 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_START(naomi_state::naomi_base)
MCFG_FRAGMENT_ADD( naomi_aw_base )
+ MCFG_CPU_MODIFY("maincpu")
+ MCFG_CPU_PROGRAM_MAP(naomi_map)
+ MCFG_CPU_IO_MAP(naomi_port)
+
MCFG_EEPROM_SERIAL_93C46_ADD("main_eeprom")
MCFG_EEPROM_SERIAL_DEFAULT_VALUE(0)
@@ -2796,6 +2798,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED((naomi2_state::naomi2, naomi)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(naomi2_map)
+ MCFG_CPU_IO_MAP(naomi_port)
MACHINE_CONFIG_END
*/
/*
diff --git a/src/mame/drivers/nascom1.cpp b/src/mame/drivers/nascom1.cpp
index 4d8229ba101..c8d1ab715c0 100644
--- a/src/mame/drivers/nascom1.cpp
+++ b/src/mame/drivers/nascom1.cpp
@@ -85,7 +85,7 @@ public:
DECLARE_DEVICE_IMAGE_UNLOAD_MEMBER( nascom1_cassette );
DECLARE_SNAPSHOT_LOAD_MEMBER( nascom1 );
- void nascom1(machine_config &config);
+ void nascom(machine_config &config);
protected:
virtual void machine_reset() override;
@@ -101,6 +101,10 @@ public:
{ }
uint32_t screen_update_nascom(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+
+ void nascom1(machine_config &config);
+ void nascom1_io(address_map &map);
+ void nascom1_mem(address_map &map);
private:
};
@@ -127,6 +131,9 @@ public:
void nascom2(machine_config &config);
void nascom2c(machine_config &config);
+ void nascom2_io(address_map &map);
+ void nascom2_mem(address_map &map);
+ void nascom2c_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -466,13 +473,13 @@ void nascom_state::screen_update(bitmap_ind16 &bitmap, const rectangle &cliprect
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( nascom1_mem, AS_PROGRAM, 8, nascom1_state )
+ADDRESS_MAP_START(nascom1_state::nascom1_mem)
AM_RANGE(0x0000, 0x07ff) AM_ROM // MONITOR
AM_RANGE(0x0800, 0x0bff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x0c00, 0x0fff) AM_RAM // WRAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nascom1_io, AS_IO, 8, nascom1_state )
+ADDRESS_MAP_START(nascom1_state::nascom1_io)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x00) AM_READWRITE(nascom1_port_00_r, nascom1_port_00_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(nascom1_port_01_r, nascom1_port_01_w)
@@ -480,14 +487,14 @@ static ADDRESS_MAP_START( nascom1_io, AS_IO, 8, nascom1_state )
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("z80pio", z80pio_device, read, write )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nascom2_mem, AS_PROGRAM, 8, nascom2_state )
+ADDRESS_MAP_START(nascom2_state::nascom2_mem)
AM_RANGE(0x0000, 0x07ff) AM_ROM // MONITOR
AM_RANGE(0x0800, 0x0bff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x0c00, 0x0fff) AM_RAM // WRAM
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("basic", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nascom2_io, AS_IO, 8, nascom2_state )
+ADDRESS_MAP_START(nascom2_state::nascom2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(nascom1_port_00_r, nascom1_port_00_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(nascom1_port_01_r, nascom1_port_01_w)
@@ -495,7 +502,7 @@ static ADDRESS_MAP_START( nascom2_io, AS_IO, 8, nascom2_state )
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("z80pio", z80pio_device, read, write )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nascom2c_mem, AS_PROGRAM, 8, nascom2_state )
+ADDRESS_MAP_START(nascom2_state::nascom2c_mem)
AM_RANGE(0xf000, 0xf7ff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xf800, 0xfbff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xfc00, 0xffff) AM_RAM // WRAM
@@ -646,12 +653,7 @@ INPUT_PORTS_END
// MACHINE DRIVERS
//**************************************************************************
-MACHINE_CONFIG_START(nascom_state::nascom1)
- // main cpu
- MCFG_CPU_ADD("maincpu", Z80, XTAL(16'000'000) / 8)
- MCFG_CPU_PROGRAM_MAP(nascom1_mem)
- MCFG_CPU_IO_MAP(nascom1_io)
-
+MACHINE_CONFIG_START(nascom_state::nascom)
// video hardware
MCFG_SCREEN_ADD("screen", RASTER)
MCFG_SCREEN_REFRESH_RATE(50)
@@ -686,8 +688,14 @@ MACHINE_CONFIG_START(nascom_state::nascom1)
MCFG_SNAPSHOT_ADD("snapshot", nascom_state, nascom1, "nas", 0.5)
MACHINE_CONFIG_END
-MACHINE_CONFIG_DERIVED(nascom2_state::nascom2, nascom1)
- MCFG_CPU_REPLACE("maincpu", Z80, XTAL(16'000'000) / 4)
+MACHINE_CONFIG_DERIVED(nascom1_state::nascom1, nascom)
+ MCFG_CPU_ADD("maincpu", Z80, XTAL(16'000'000) / 8)
+ MCFG_CPU_PROGRAM_MAP(nascom1_mem)
+ MCFG_CPU_IO_MAP(nascom1_io)
+MACHINE_CONFIG_END
+
+MACHINE_CONFIG_DERIVED(nascom2_state::nascom2, nascom)
+ MCFG_CPU_ADD("maincpu", Z80, XTAL(16'000'000) / 4)
MCFG_CPU_PROGRAM_MAP(nascom2_mem)
MCFG_CPU_IO_MAP(nascom2_io)
diff --git a/src/mame/drivers/naughtyb.cpp b/src/mame/drivers/naughtyb.cpp
index f7a6562eaa9..a2f73212fc0 100644
--- a/src/mame/drivers/naughtyb.cpp
+++ b/src/mame/drivers/naughtyb.cpp
@@ -246,7 +246,7 @@ WRITE8_MEMBER(naughtyb_state::popflame_protection_w)
-static ADDRESS_MAP_START( naughtyb_map, AS_PROGRAM, 8, naughtyb_state )
+ADDRESS_MAP_START(naughtyb_state::naughtyb_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("videoram")
@@ -259,7 +259,7 @@ static ADDRESS_MAP_START( naughtyb_map, AS_PROGRAM, 8, naughtyb_state )
AM_RANGE(0xb800, 0xbfff) AM_READ(dsw0_port_r) // DSW0
ADDRESS_MAP_END
-static ADDRESS_MAP_START( popflame_map, AS_PROGRAM, 8, naughtyb_state )
+ADDRESS_MAP_START(naughtyb_state::popflame_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/nbmj8688.cpp b/src/mame/drivers/nbmj8688.cpp
index 166b0d414c4..1bf1232d414 100644
--- a/src/mame/drivers/nbmj8688.cpp
+++ b/src/mame/drivers/nbmj8688.cpp
@@ -121,17 +121,17 @@ DRIVER_INIT_MEMBER(nbmj8688_state,kaguya2)
}
-static ADDRESS_MAP_START( mjsikaku_map, AS_PROGRAM, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::mjsikaku_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( secolove_map, AS_PROGRAM, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::secolove_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ojousan_map, AS_PROGRAM, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::ojousan_map)
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x7fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0xffff) AM_ROM
@@ -146,7 +146,7 @@ READ8_MEMBER(nbmj8688_state::ff_r)
return 0xff;
}
-static ADDRESS_MAP_START( secolove_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::secolove_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -171,7 +171,7 @@ WRITE8_MEMBER(nbmj8688_state::barline_output_w)
machine().bookkeeping().coin_counter_w(0,data & 0x02);
}
-static ADDRESS_MAP_START( barline_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::barline_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, sndrombank1_w)
@@ -189,7 +189,7 @@ static ADDRESS_MAP_START( barline_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crystalg_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::crystalg_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -209,7 +209,7 @@ static ADDRESS_MAP_START( crystalg_io_map, AS_IO, 8, nbmj8688_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( otonano_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::otonano_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -228,7 +228,7 @@ static ADDRESS_MAP_START( otonano_io_map, AS_IO, 8, nbmj8688_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kaguya_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::kaguya_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -248,7 +248,7 @@ static ADDRESS_MAP_START( kaguya_io_map, AS_IO, 8, nbmj8688_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( iemoto_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::iemoto_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -270,7 +270,7 @@ static ADDRESS_MAP_START( iemoto_io_map, AS_IO, 8, nbmj8688_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( seiha_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::seiha_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -291,7 +291,7 @@ static ADDRESS_MAP_START( seiha_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xf0, 0xf0) AM_WRITE(scrolly_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjgaiden_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::mjgaiden_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -311,7 +311,7 @@ static ADDRESS_MAP_START( mjgaiden_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xf0, 0xf0) AM_WRITE(scrolly_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( p16bit_LCD_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::p16bit_LCD_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -337,7 +337,7 @@ static ADDRESS_MAP_START( p16bit_LCD_io_map, AS_IO, 8, nbmj8688_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjsikaku_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::mjsikaku_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -358,7 +358,7 @@ static ADDRESS_MAP_START( mjsikaku_io_map, AS_IO, 8, nbmj8688_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmsikaku_io_map, AS_IO, 8, nbmj8688_state )
+ADDRESS_MAP_START(nbmj8688_state::mmsikaku_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
diff --git a/src/mame/drivers/nbmj8891.cpp b/src/mame/drivers/nbmj8891.cpp
index ba1af9917e8..9c89125c121 100644
--- a/src/mame/drivers/nbmj8891.cpp
+++ b/src/mame/drivers/nbmj8891.cpp
@@ -227,82 +227,82 @@ DRIVER_INIT_MEMBER(nbmj8891_state,pairsten)
}
}
-static ADDRESS_MAP_START( gionbana_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::gionbana_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(palette_type1_r, palette_type1_w)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mgion_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::mgion_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(palette_type1_r, palette_type1_w)
AM_RANGE(0xf400, 0xf40f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( omotesnd_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::omotesnd_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(palette_type1_r, palette_type1_w)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hanamomo_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::hanamomo_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(palette_type1_r, palette_type1_w)
AM_RANGE(0xf400, 0xf40f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scandalm_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::scandalm_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(palette_type1_r, palette_type1_w)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( club90s_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::club90s_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf80f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xfc00, 0xfdff) AM_READWRITE(palette_type1_r, palette_type1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lovehous_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::lovehous_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(palette_type2_r, palette_type2_w)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maiko_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::maiko_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(palette_type2_r, palette_type2_w)
AM_RANGE(0xf400, 0xf40f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hnxmasev_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::hnxmasev_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf200, 0xf3ff) AM_READWRITE(palette_type2_r, palette_type2_w)
AM_RANGE(0xf700, 0xf70f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hnageman_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::hnageman_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(palette_type2_r, palette_type2_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmaiko_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::mmaiko_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(palette_type2_r, palette_type2_w)
AM_RANGE(0xf400, 0xf40f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hanaoji_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::hanaoji_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf200, 0xf3ff) AM_READWRITE(palette_type2_r, palette_type2_w)
AM_RANGE(0xf700, 0xf70f) AM_READWRITE(clut_r, clut_w)
@@ -314,7 +314,7 @@ READ8_MEMBER(nbmj8891_state::taiwanmb_unk_r)
return 0x00; // MCU or 1413M3 STATUS?
}
-static ADDRESS_MAP_START( taiwanmb_map, AS_PROGRAM, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::taiwanmb_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xec00, 0xedff) AM_READWRITE(palette_type3_r, palette_type3_w)
AM_RANGE(0xf800, 0xfeff) AM_RAM AM_SHARE("nvram")
@@ -336,7 +336,7 @@ static ADDRESS_MAP_START( taiwanmb_map, AS_PROGRAM, 8, nbmj8891_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gionbana_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::gionbana_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -355,7 +355,7 @@ static ADDRESS_MAP_START( gionbana_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mgion_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::mgion_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -374,7 +374,7 @@ static ADDRESS_MAP_START( mgion_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( omotesnd_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::omotesnd_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x07) AM_WRITE(blitter_w)
@@ -396,7 +396,7 @@ static ADDRESS_MAP_START( omotesnd_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hanamomo_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::hanamomo_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -415,7 +415,7 @@ static ADDRESS_MAP_START( hanamomo_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( msjiken_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::msjiken_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -434,7 +434,7 @@ static ADDRESS_MAP_START( msjiken_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scandal_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::scandal_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x40, 0x4f) AM_WRITE(clut_w)
@@ -453,7 +453,7 @@ static ADDRESS_MAP_START( scandal_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scandalm_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::scandalm_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x07) AM_WRITE(blitter_w)
@@ -473,7 +473,7 @@ static ADDRESS_MAP_START( scandalm_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bananadr_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::bananadr_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x07) AM_WRITE(blitter_w)
@@ -493,7 +493,7 @@ static ADDRESS_MAP_START( bananadr_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lovehous_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::lovehous_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -512,7 +512,7 @@ static ADDRESS_MAP_START( lovehous_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maiko_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::maiko_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
@@ -531,7 +531,7 @@ static ADDRESS_MAP_START( maiko_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( taiwanmb_io_map, AS_IO, 8, nbmj8891_state )
+ADDRESS_MAP_START(nbmj8891_state::taiwanmb_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x81, 0x81) AM_DEVREAD("fmsnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/nbmj8900.cpp b/src/mame/drivers/nbmj8900.cpp
index 7570ff8c7c2..64cb4c1002f 100644
--- a/src/mame/drivers/nbmj8900.cpp
+++ b/src/mame/drivers/nbmj8900.cpp
@@ -93,21 +93,21 @@ DRIVER_INIT_MEMBER(nbmj8900_state,togenkyo)
}
-static ADDRESS_MAP_START( ohpaipee_map, AS_PROGRAM, 8, nbmj8900_state )
+ADDRESS_MAP_START(nbmj8900_state::ohpaipee_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(palette_type1_r, palette_type1_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( togenkyo_map, AS_PROGRAM, 8, nbmj8900_state )
+ADDRESS_MAP_START(nbmj8900_state::togenkyo_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r, clut_w)
AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(palette_type1_r, palette_type1_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ohpaipee_io_map, AS_IO, 8, nbmj8900_state )
+ADDRESS_MAP_START(nbmj8900_state::ohpaipee_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("nb1413m3", nb1413m3_device, nmi_clock_w)
diff --git a/src/mame/drivers/nbmj8991.cpp b/src/mame/drivers/nbmj8991.cpp
index c9e1833e018..a103908169f 100644
--- a/src/mame/drivers/nbmj8991.cpp
+++ b/src/mame/drivers/nbmj8991.cpp
@@ -96,70 +96,70 @@ DRIVER_INIT_MEMBER(nbmj8991_state,tokimbsj)
}
-static ADDRESS_MAP_START( pstadium_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::pstadium_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf200, 0xf3ff) AM_RAM_WRITE(palette_type3_w) AM_SHARE("paletteram")
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // finalbny
ADDRESS_MAP_END
-static ADDRESS_MAP_START( triplew1_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::triplew1_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(palette_type3_w) AM_SHARE("paletteram")
AM_RANGE(0xf200, 0xf20f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // mjgottub
ADDRESS_MAP_END
-static ADDRESS_MAP_START( triplew2_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::triplew2_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(palette_type3_w) AM_SHARE("paletteram")
AM_RANGE(0xf400, 0xf40f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjlstory_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::mjlstory_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf200, 0xf3ff) AM_RAM_WRITE(palette_type3_w) AM_SHARE("paletteram")
AM_RANGE(0xf700, 0xf70f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galkoku_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::galkoku_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf400, 0xf5ff) AM_RAM_WRITE(palette_type1_w) AM_SHARE("paletteram")
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // hyouban
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galkaika_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::galkaika_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf400, 0xf5ff) AM_RAM_WRITE(palette_type2_w) AM_SHARE("paletteram")
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // tokimbsj
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tokyogal_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::tokyogal_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(palette_type2_w) AM_SHARE("paletteram")
AM_RANGE(0xf400, 0xf40f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( av2mj1bb_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::av2mj1bb_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(palette_type3_w) AM_SHARE("paletteram")
AM_RANGE(0xf500, 0xf50f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( av2mj2rg_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::av2mj2rg_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf00f) AM_READWRITE(clut_r,clut_w)
AM_RANGE(0xf200, 0xf3ff) AM_RAM_WRITE(palette_type3_w) AM_SHARE("paletteram")
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( galkoku_io_map, AS_IO, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::galkoku_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r) AM_WRITE(blitter_w)
AM_RANGE(0x80, 0x81) AM_DEVWRITE("fmsnd", ym3812_device, write)
@@ -173,7 +173,7 @@ static ADDRESS_MAP_START( galkoku_io_map, AS_IO, 8, nbmj8991_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hyouban_io_map, AS_IO, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::hyouban_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r) AM_WRITE(blitter_w)
AM_RANGE(0x81, 0x81) AM_DEVREAD("fmsnd", ay8910_device, data_r)
@@ -188,7 +188,7 @@ static ADDRESS_MAP_START( hyouban_io_map, AS_IO, 8, nbmj8991_state )
AM_RANGE(0xf1, 0xf1) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pstadium_io_map, AS_IO, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::pstadium_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_WRITE(blitter_w)
AM_RANGE(0x80, 0x80) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -201,7 +201,7 @@ static ADDRESS_MAP_START( pstadium_io_map, AS_IO, 8, nbmj8991_state )
AM_RANGE(0xf8, 0xf8) AM_DEVREAD("nb1413m3", nb1413m3_device, dipsw2_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( av2mj1bb_io_map, AS_IO, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::av2mj1bb_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x7f) AM_WRITE(blitter_w)
AM_RANGE(0x80, 0x80) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -216,13 +216,13 @@ static ADDRESS_MAP_START( av2mj1bb_io_map, AS_IO, 8, nbmj8991_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nbmj8991_sound_map, AS_PROGRAM, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::nbmj8991_sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nbmj8991_sound_io_map, AS_IO, 8, nbmj8991_state )
+ADDRESS_MAP_START(nbmj8991_state::nbmj8991_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("dac1", dac_byte_interface, write)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac2", dac_byte_interface, write)
diff --git a/src/mame/drivers/nbmj9195.cpp b/src/mame/drivers/nbmj9195.cpp
index 2741ef336bb..62655d87cbe 100644
--- a/src/mame/drivers/nbmj9195.cpp
+++ b/src/mame/drivers/nbmj9195.cpp
@@ -232,31 +232,31 @@ DRIVER_INIT_MEMBER(nbmj9195_state,nbmj9195)
}
-static ADDRESS_MAP_START( sailorws_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::sailorws_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(palette_w) AM_SHARE("paletteram")
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjuraden_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mjuraden_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf200, 0xf3ff) AM_RAM_WRITE(palette_w) AM_SHARE("paletteram")
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( koinomp_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::koinomp_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe1ff) AM_RAM_WRITE(palette_w) AM_SHARE("paletteram")
AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ngpgal_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::ngpgal_map)
AM_RANGE(0x0000, 0xcfff) AM_ROM
AM_RANGE(0xd000, 0xd1ff) AM_RAM_WRITE(palette_w) AM_SHARE("paletteram")
AM_RANGE(0xd800, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mscoutm_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mscoutm_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe5ff) AM_RAM
AM_RANGE(0xe600, 0xebff) AM_RAM_WRITE(nb22090_palette_w) AM_SHARE("paletteram")
@@ -264,7 +264,7 @@ static ADDRESS_MAP_START( mscoutm_map, AS_PROGRAM, 8, nbmj9195_state )
AM_RANGE(0xf200, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjegolf_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mjegolf_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe5ff) AM_RAM_WRITE(nb22090_palette_w) AM_SHARE("paletteram")
AM_RANGE(0xe600, 0xebff) AM_RAM
@@ -272,7 +272,7 @@ static ADDRESS_MAP_START( mjegolf_map, AS_PROGRAM, 8, nbmj9195_state )
AM_RANGE(0xf200, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjuraden_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mjuraden_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x90, 0x9f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -283,7 +283,7 @@ static ADDRESS_MAP_START( mjuraden_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xb6, 0xb6) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( koinomp_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::koinomp_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x90, 0x9f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -299,7 +299,7 @@ static ADDRESS_MAP_START( koinomp_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xcf, 0xcf) AM_MIRROR(0xff00) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( patimono_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::patimono_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_READ(blitter_1_r)
AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_WRITE(blitter_1_w)
@@ -314,7 +314,7 @@ static ADDRESS_MAP_START( patimono_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xd0, 0xdf) AM_MIRROR(0xff00) AM_WRITE(clut_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mmehyou_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mmehyou_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x90, 0x9f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -325,7 +325,7 @@ static ADDRESS_MAP_START( mmehyou_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xb0, 0xb0) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gal10ren_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::gal10ren_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -340,7 +340,7 @@ static ADDRESS_MAP_START( gal10ren_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xd8, 0xd8) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( renaiclb_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::renaiclb_io_map)
AM_RANGE(0x20, 0x20) AM_MIRROR(0xff00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x24, 0x24) AM_MIRROR(0xff00) AM_WRITENOP
AM_RANGE(0x28, 0x28) AM_MIRROR(0xff00) AM_WRITENOP
@@ -355,7 +355,7 @@ static ADDRESS_MAP_START( renaiclb_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf0, 0xff) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjlaman_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mjlaman_io_map)
AM_RANGE(0x20, 0x20) AM_MIRROR(0xff00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x22, 0x22) AM_MIRROR(0xff00) AM_WRITENOP
AM_RANGE(0x24, 0x24) AM_MIRROR(0xff00) AM_WRITENOP
@@ -370,7 +370,7 @@ static ADDRESS_MAP_START( mjlaman_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf0, 0xff) AM_MIRROR(0xff00) AM_WRITE(clut_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mkeibaou_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mkeibaou_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x90, 0x9f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -385,7 +385,7 @@ static ADDRESS_MAP_START( mkeibaou_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xde, 0xde) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pachiten_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::pachiten_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -400,7 +400,7 @@ static ADDRESS_MAP_START( pachiten_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xe6, 0xe6) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sailorws_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::sailorws_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -415,7 +415,7 @@ static ADDRESS_MAP_START( sailorws_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf6, 0xf6) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sailorwr_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::sailorwr_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -430,7 +430,7 @@ static ADDRESS_MAP_START( sailorwr_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xfe, 0xfe) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psailor1_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::psailor1_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -445,7 +445,7 @@ static ADDRESS_MAP_START( psailor1_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf6, 0xf6) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psailor2_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::psailor2_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -460,7 +460,7 @@ static ADDRESS_MAP_START( psailor2_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf6, 0xf6) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( otatidai_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::otatidai_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -475,7 +475,7 @@ static ADDRESS_MAP_START( otatidai_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xb8, 0xb8) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yosimoto_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::yosimoto_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -490,7 +490,7 @@ static ADDRESS_MAP_START( yosimoto_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xd0, 0xdf) AM_MIRROR(0xff00) AM_WRITE(clut_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yosimotm_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::yosimotm_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -505,7 +505,7 @@ static ADDRESS_MAP_START( yosimotm_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf8, 0xf8) AM_MIRROR(0xff00) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jituroku_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::jituroku_io_map)
AM_RANGE(0x60, 0x61) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x60, 0x6f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x70, 0x7f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -520,7 +520,7 @@ static ADDRESS_MAP_START( jituroku_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf8, 0xf8) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ngpgal_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::ngpgal_io_map)
AM_RANGE(0xa0, 0xa0) AM_MIRROR(0xff00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0xa4, 0xa4) AM_MIRROR(0xff00) AM_WRITENOP
AM_RANGE(0xa8, 0xa8) AM_MIRROR(0xff00) AM_WRITENOP
@@ -531,7 +531,7 @@ static ADDRESS_MAP_START( ngpgal_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xd0, 0xdf) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjgottsu_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mjgottsu_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x90, 0x9f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -542,7 +542,7 @@ static ADDRESS_MAP_START( mjgottsu_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xb0, 0xb0) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cmehyou_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::cmehyou_io_map)
AM_RANGE(0xa0, 0xa0) AM_MIRROR(0xff00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0xa8, 0xa8) AM_MIRROR(0xff00) AM_WRITENOP
AM_RANGE(0xb0, 0xb0) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
@@ -553,7 +553,7 @@ static ADDRESS_MAP_START( cmehyou_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xd0, 0xdf) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjkoiura_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mjkoiura_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_WRITE(blitter_0_w)
AM_RANGE(0x90, 0x9f) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
@@ -564,7 +564,7 @@ static ADDRESS_MAP_START( mjkoiura_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xb0, 0xb0) AM_MIRROR(0xff00) AM_WRITE(inputportsel_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mkoiuraa_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mkoiuraa_io_map)
AM_RANGE(0xa0, 0xa0) AM_MIRROR(0xff00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0xa4, 0xa4) AM_MIRROR(0xff00) AM_WRITENOP
AM_RANGE(0xa8, 0xa8) AM_MIRROR(0xff00) AM_WRITENOP
@@ -575,7 +575,7 @@ static ADDRESS_MAP_START( mkoiuraa_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xd0, 0xdf) AM_MIRROR(0xff00) AM_WRITE(clut_0_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mscoutm_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mscoutm_io_map)
AM_RANGE(0x80, 0x80) AM_MIRROR(0xff00) AM_READ(mscoutm_dipsw_1_r)
AM_RANGE(0x82, 0x82) AM_MIRROR(0xff00) AM_READ(mscoutm_dipsw_0_r)
AM_RANGE(0x84, 0x84) AM_MIRROR(0xff00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -592,7 +592,7 @@ static ADDRESS_MAP_START( mscoutm_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf0, 0xff) AM_MIRROR(0xff00) AM_WRITE(clut_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( imekura_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::imekura_io_map)
AM_RANGE(0x80, 0x80) AM_MIRROR(0xff00) AM_READ(mscoutm_dipsw_1_r)
AM_RANGE(0x82, 0x82) AM_MIRROR(0xff00) AM_READ(mscoutm_dipsw_0_r)
AM_RANGE(0x84, 0x84) AM_MIRROR(0xff00) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -609,7 +609,7 @@ static ADDRESS_MAP_START( imekura_io_map, AS_IO, 8, nbmj9195_state )
AM_RANGE(0xf0, 0xff) AM_MIRROR(0xff00) AM_WRITE(clut_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjegolf_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::mjegolf_io_map)
AM_RANGE(0x80, 0x86) AM_MIRROR(0xff00) AM_WRITENOP // nb22090 param ?
AM_RANGE(0xa0, 0xa1) AM_MIRROR(0xff00) AM_READ(blitter_0_r)
@@ -628,13 +628,13 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( sailorws_sound_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::sailorws_sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sailorws_sound_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::sailorws_sound_io_map)
AM_RANGE(0x80, 0x81) AM_MIRROR(0xff00) AM_DEVWRITE("ymsnd", ym3812_device, write)
ADDRESS_MAP_END
@@ -645,14 +645,14 @@ ADDRESS_MAP_END
TODO: it probably doesn't belong in here. Both CPUs are certainly tmpz84c011 tho ...
*/
-static ADDRESS_MAP_START( shabdama_map, AS_PROGRAM, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::shabdama_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
// AM_RANGE(0xd000, 0xd1ff) AM_RAM_WRITE(palette_w) AM_SHARE("paletteram")
// AM_RANGE(0xd800, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shabdama_io_map, AS_IO, 8, nbmj9195_state )
+ADDRESS_MAP_START(nbmj9195_state::shabdama_io_map)
// ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x60, 0x61) AM_READ(blitter_0_r)
// AM_RANGE(0x60, 0x6f) AM_WRITE(blitter_0_w)
diff --git a/src/mame/drivers/nc.cpp b/src/mame/drivers/nc.cpp
index 509644b78e0..f0bc3cccf6e 100644
--- a/src/mame/drivers/nc.cpp
+++ b/src/mame/drivers/nc.cpp
@@ -469,7 +469,7 @@ void nc_state::nc_common_init_machine()
m_uart_control = 0x0ff;
}
-static ADDRESS_MAP_START(nc_map, AS_PROGRAM, 8, nc_state )
+ADDRESS_MAP_START(nc_state::nc_map)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank5")
AM_RANGE(0x4000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE_BANK("bank6")
AM_RANGE(0x8000, 0xbfff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank7")
@@ -857,7 +857,7 @@ WRITE8_MEMBER(nc_state::nc100_memory_card_wait_state_w)
-static ADDRESS_MAP_START(nc100_io, AS_IO, 8, nc_state )
+ADDRESS_MAP_START(nc_state::nc100_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x0f) AM_WRITE(nc100_display_memory_start_w)
@@ -1264,7 +1264,7 @@ WRITE8_MEMBER(nc_state::nc200_poweroff_control_w)
nc200_video_set_backlight(((data ^ (1 << 2)) >> 2) & 0x01);
}
-static ADDRESS_MAP_START(nc200_io, AS_IO, 8, nc_state )
+ADDRESS_MAP_START(nc_state::nc200_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_WRITE(nc100_display_memory_start_w)
AM_RANGE(0x10, 0x13) AM_READWRITE(nc_memory_management_r, nc_memory_management_w)
diff --git a/src/mame/drivers/nds.cpp b/src/mame/drivers/nds.cpp
index 54309aba8a7..cab0db4fcdb 100644
--- a/src/mame/drivers/nds.cpp
+++ b/src/mame/drivers/nds.cpp
@@ -582,7 +582,7 @@ WRITE32_MEMBER(nds_state::arm9_io_w)
}
}
-static ADDRESS_MAP_START( nds_arm7_map, AS_PROGRAM, 32, nds_state )
+ADDRESS_MAP_START(nds_state::nds_arm7_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM AM_REGION("arm7", 0)
AM_RANGE(0x02000000, 0x023fffff) AM_RAM AM_MIRROR(0x00400000) AM_SHARE("mainram")
AM_RANGE(0x03000000, 0x03007fff) AM_MIRROR(0x007f8000) AM_DEVICE("nds7wram", address_map_bank_device, amap32)
@@ -590,7 +590,7 @@ static ADDRESS_MAP_START( nds_arm7_map, AS_PROGRAM, 32, nds_state )
AM_RANGE(0x04000000, 0x0410ffff) AM_READWRITE(arm7_io_r, arm7_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nds_arm9_map, AS_PROGRAM, 32, nds_state )
+ADDRESS_MAP_START(nds_state::nds_arm9_map)
AM_RANGE(0x02000000, 0x023fffff) AM_RAM AM_MIRROR(0x00400000) AM_SHARE("mainram")
AM_RANGE(0x03000000, 0x03007fff) AM_MIRROR(0x00ff8000) AM_DEVICE("nds9wram", address_map_bank_device, amap32)
AM_RANGE(0x04000000, 0x0410ffff) AM_READWRITE(arm9_io_r, arm9_io_w)
@@ -598,7 +598,7 @@ static ADDRESS_MAP_START( nds_arm9_map, AS_PROGRAM, 32, nds_state )
ADDRESS_MAP_END
// ARM7 views of WRAM
-static ADDRESS_MAP_START( nds7_wram_map, AS_PROGRAM, 32, nds_state )
+ADDRESS_MAP_START(nds_state::nds7_wram_map)
AM_RANGE(0x00000, 0x07fff) AM_READWRITE(wram_arm7mirror_r, wram_arm7mirror_w)
AM_RANGE(0x08000, 0x0bfff) AM_READWRITE(wram_first_half_r, wram_first_half_w)
AM_RANGE(0x0c000, 0x0ffff) AM_READWRITE(wram_first_half_r, wram_first_half_w)
@@ -608,7 +608,7 @@ static ADDRESS_MAP_START( nds7_wram_map, AS_PROGRAM, 32, nds_state )
ADDRESS_MAP_END
// ARM9 views of WRAM
-static ADDRESS_MAP_START( nds9_wram_map, AS_PROGRAM, 32, nds_state )
+ADDRESS_MAP_START(nds_state::nds9_wram_map)
AM_RANGE(0x00000, 0x07fff) AM_READWRITE(wram_first_half_r, wram_first_half_w)
AM_RANGE(0x08000, 0x0bfff) AM_READWRITE(wram_second_half_r, wram_second_half_w)
AM_RANGE(0x0c000, 0x0ffff) AM_READWRITE(wram_second_half_r, wram_second_half_w)
diff --git a/src/mame/drivers/nemesis.cpp b/src/mame/drivers/nemesis.cpp
index bb3b6445077..64746092fc4 100644
--- a/src/mame/drivers/nemesis.cpp
+++ b/src/mame/drivers/nemesis.cpp
@@ -251,7 +251,7 @@ WRITE8_MEMBER(nemesis_state::city_sound_bank_w)
}
-static ADDRESS_MAP_START( nemesis_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::nemesis_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x04ffff) AM_RAM_WRITE(nemesis_charram_word_w) AM_SHARE("charram")
AM_RANGE(0x050000, 0x051fff) AM_RAM
@@ -278,7 +278,7 @@ static ADDRESS_MAP_START( nemesis_map, AS_PROGRAM, 16, nemesis_state )
AM_RANGE(0x060000, 0x067fff) AM_RAM /* WORK RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gx400_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::gx400_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM /* ROM BIOS */
AM_RANGE(0x010000, 0x01ffff) AM_RAM
AM_RANGE(0x020000, 0x027fff) AM_READWRITE(gx400_sharedram_word_r, gx400_sharedram_word_w)
@@ -309,7 +309,7 @@ static ADDRESS_MAP_START( gx400_map, AS_PROGRAM, 16, nemesis_state )
AM_RANGE(0x080000, 0x0bffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( konamigt_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::konamigt_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x04ffff) AM_RAM_WRITE(nemesis_charram_word_w) AM_SHARE("charram")
AM_RANGE(0x050000, 0x051fff) AM_RAM
@@ -337,7 +337,7 @@ static ADDRESS_MAP_START( konamigt_map, AS_PROGRAM, 16, nemesis_state )
AM_RANGE(0x070000, 0x070001) AM_READ(konamigt_input_word_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rf2_gx400_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::rf2_gx400_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM /* ROM BIOS */
AM_RANGE(0x010000, 0x01ffff) AM_RAM
AM_RANGE(0x020000, 0x027fff) AM_READWRITE(gx400_sharedram_word_r, gx400_sharedram_word_w)
@@ -369,7 +369,7 @@ static ADDRESS_MAP_START( rf2_gx400_map, AS_PROGRAM, 16, nemesis_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0xa000, 0xafff) AM_DEVWRITE("k005289", k005289_device, ld1_w)
@@ -386,7 +386,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, nemesis_state )
AM_RANGE(0xe405, 0xe405) AM_DEVWRITE("ay2", ay8910_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gx400_sound_map, AS_PROGRAM, 8, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::gx400_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_SHARE("gx400_shared")
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("voiceram")
@@ -407,14 +407,14 @@ static ADDRESS_MAP_START( gx400_sound_map, AS_PROGRAM, 8, nemesis_state )
ADDRESS_MAP_END
// gx400 voice data is not in a ROM but in sound RAM at $8000
-static ADDRESS_MAP_START( gx400_vlm_map, 0, 8, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::gx400_vlm_map)
ADDRESS_MAP_GLOBAL_MASK(0x7ff)
AM_RANGE(0x000, 0x7ff) AM_RAM AM_SHARE("voiceram")
ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( salamand_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::salamand_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x087fff) AM_RAM
AM_RANGE(0x090000, 0x091fff) AM_DEVREADWRITE8("palette", palette_device, read8, write8, 0x00ff) AM_SHARE("palette")
@@ -439,7 +439,7 @@ static ADDRESS_MAP_START( salamand_map, AS_PROGRAM, 16, nemesis_state )
AM_RANGE(0x190f80, 0x190fff) AM_SHARE("yscroll2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blkpnthr_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::blkpnthr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x081fff) AM_DEVREADWRITE8("palette", palette_device, read8, write8, 0x00ff) AM_SHARE("palette")
AM_RANGE(0x090000, 0x097fff) AM_RAM
@@ -464,7 +464,7 @@ static ADDRESS_MAP_START( blkpnthr_map, AS_PROGRAM, 16, nemesis_state )
AM_RANGE(0x190000, 0x190fff) AM_RAM AM_SHARE("spriteram") /* more sprite ram ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( citybomb_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::citybomb_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x080000, 0x087fff) AM_RAM
AM_RANGE(0x0e0000, 0x0e1fff) AM_DEVREADWRITE8("palette", palette_device, read8, write8, 0x00ff) AM_SHARE("palette")
@@ -491,7 +491,7 @@ static ADDRESS_MAP_START( citybomb_map, AS_PROGRAM, 16, nemesis_state )
AM_RANGE(0x310000, 0x310fff) AM_RAM AM_SHARE("spriteram") /* more sprite ram ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nyanpani_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::nyanpani_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x047fff) AM_RAM
AM_RANGE(0x060000, 0x061fff) AM_DEVREADWRITE8("palette", palette_device, read8, write8, 0x00ff) AM_SHARE("palette")
@@ -523,7 +523,7 @@ READ8_MEMBER(nemesis_state::wd_r)
return m_frame_counter;
}
-static ADDRESS_MAP_START( sal_sound_map, AS_PROGRAM, 8, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::sal_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -534,12 +534,12 @@ static ADDRESS_MAP_START( sal_sound_map, AS_PROGRAM, 8, nemesis_state )
AM_RANGE(0xf000, 0xf000) AM_WRITE(salamand_speech_start_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( salamand_vlm_map, 0, 8, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::salamand_vlm_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blkpnthr_sound_map, AS_PROGRAM, 8, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::blkpnthr_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -548,7 +548,7 @@ static ADDRESS_MAP_START( blkpnthr_sound_map, AS_PROGRAM, 8, nemesis_state )
AM_RANGE(0xe000, 0xe000) AM_READ(wd_r) /* watchdog?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( city_sound_map, AS_PROGRAM, 8, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::city_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9800, 0x987f) AM_DEVREADWRITE("k051649", k051649_device, k051649_waveform_r, k051649_waveform_w)
@@ -564,7 +564,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( hcrash_map, AS_PROGRAM, 16, nemesis_state )
+ADDRESS_MAP_START(nemesis_state::hcrash_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x05ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM
diff --git a/src/mame/drivers/neogeo.cpp b/src/mame/drivers/neogeo.cpp
index a65f70b6db5..1c3b83ce9db 100644
--- a/src/mame/drivers/neogeo.cpp
+++ b/src/mame/drivers/neogeo.cpp
@@ -1410,7 +1410,7 @@ READ16_MEMBER(neogeo_state::banked_vectors_r)
*
*************************************/
-ADDRESS_MAP_START( neogeo_main_map, AS_PROGRAM, 16, neogeo_state )
+ADDRESS_MAP_START(neogeo_state::neogeo_main_map)
AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x0f0000) AM_RAM
/* some games have protection devices in the 0x200000 region, it appears to map to cart space, not surprising, the ROM is read here too */
@@ -1432,7 +1432,7 @@ ADDRESS_MAP_START( neogeo_main_map, AS_PROGRAM, 16, neogeo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map_slot, AS_PROGRAM, 16, neogeo_state )
+ADDRESS_MAP_START(neogeo_state::main_map_slot)
AM_IMPORT_FROM( neogeo_main_map )
AM_RANGE(0x000000, 0x00007f) AM_READ(banked_vectors_r)
ADDRESS_MAP_END
@@ -1447,7 +1447,7 @@ READ16_MEMBER(aes_state::aes_in2_r)
return ret;
}
-static ADDRESS_MAP_START( aes_main_map, AS_PROGRAM, 16, aes_state )
+ADDRESS_MAP_START(aes_state::aes_main_map)
AM_RANGE(0x000000, 0x00007f) AM_READ(banked_vectors_r)
AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x0f0000) AM_RAM
// some games have protection devices in the 0x200000 region, it appears to map to cart space, not surprising, the ROM is read here too
@@ -1474,7 +1474,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, neogeo_state )
+ADDRESS_MAP_START(neogeo_state::audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("audio_main")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("audio_8000")
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("audio_c000")
@@ -1491,7 +1491,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, neogeo_state )
+ADDRESS_MAP_START(neogeo_state::audio_io_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READ(audio_command_r) AM_DEVWRITE("soundlatch", generic_latch_8_device, clear_w)
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) AM_SELECT(0x0010) AM_WRITE(audio_cpu_enable_nmi_w)
diff --git a/src/mame/drivers/neogeocd.cpp b/src/mame/drivers/neogeocd.cpp
index b0dc37a2ff8..4fbb430b2a0 100644
--- a/src/mame/drivers/neogeocd.cpp
+++ b/src/mame/drivers/neogeocd.cpp
@@ -134,6 +134,9 @@ public:
std::unique_ptr<uint8_t[]> m_meminternal_data;
void neocd(machine_config &config);
+ void neocd_audio_io_map(address_map &map);
+ void neocd_audio_map(address_map &map);
+ void neocd_main_map(address_map &map);
protected:
int32_t SekIdle(int32_t nCycles);
@@ -886,7 +889,7 @@ MACHINE_RESET_MEMBER(ngcd_state,neocd)
*
*************************************/
-static ADDRESS_MAP_START( neocd_main_map, AS_PROGRAM, 16, ngcd_state )
+ADDRESS_MAP_START(ngcd_state::neocd_main_map)
// AM_RANGE(0x000000, 0x00007f) AM_READ_BANK("vectors") // writes will fall through to area below
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_REGION("maincpu", 0x00000)
AM_RANGE(0x000000, 0x00007f) AM_READ(banked_vectors_r)
@@ -919,12 +922,12 @@ ADDRESS_MAP_END
*************************************/
-static ADDRESS_MAP_START( neocd_audio_map, AS_PROGRAM, 8, ngcd_state )
+ADDRESS_MAP_START(ngcd_state::neocd_audio_map)
AM_RANGE(0x0000, 0xffff) AM_RAM AM_REGION("audiocpu", 0x00000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( neocd_audio_io_map, AS_IO, 8, ngcd_state )
+ADDRESS_MAP_START(ngcd_state::neocd_audio_io_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READ(audio_command_r) AM_DEVWRITE("soundlatch", generic_latch_8_device, clear_w)
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) AM_SELECT(0x0010) AM_WRITE(audio_cpu_enable_nmi_w)
diff --git a/src/mame/drivers/neoprint.cpp b/src/mame/drivers/neoprint.cpp
index 9ef1112f51b..8e8de5f18b5 100644
--- a/src/mame/drivers/neoprint.cpp
+++ b/src/mame/drivers/neoprint.cpp
@@ -71,6 +71,10 @@ public:
void neoprint(machine_config &config);
void nprsp(machine_config &config);
+ void neoprint_audio_io_map(address_map &map);
+ void neoprint_audio_map(address_map &map);
+ void neoprint_map(address_map &map);
+ void nprsp_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
@@ -243,7 +247,7 @@ WRITE8_MEMBER(neoprint_state::audio_result_w)
m_audio_result = data;
}
-static ADDRESS_MAP_START( neoprint_map, AS_PROGRAM, 16, neoprint_state )
+ADDRESS_MAP_START(neoprint_state::neoprint_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
/* AM_RANGE(0x100000, 0x17ffff) multi-cart or banking, some writes points here if anything lies there too */
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -311,7 +315,7 @@ READ16_MEMBER(neoprint_state::rom_window_r)
return rom[offset | 0x80000/2 | m_bank_val*0x40000/2];
}
-static ADDRESS_MAP_START( nprsp_map, AS_PROGRAM, 16, neoprint_state )
+ADDRESS_MAP_START(neoprint_state::nprsp_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_READ(rom_window_r)
AM_RANGE(0x200000, 0x200001) AM_READWRITE8(neoprint_audio_result_r, audio_command_w, 0xff00)
@@ -338,7 +342,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( neoprint_audio_map, AS_PROGRAM, 8, neoprint_state )
+ADDRESS_MAP_START(neoprint_state::neoprint_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM//AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_MAIN_BANK)
// AM_RANGE(0x8000, 0xbfff) AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_CART_BANK + 3)
// AM_RANGE(0xc000, 0xdfff) AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_CART_BANK + 2)
@@ -355,7 +359,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( neoprint_audio_io_map, AS_IO, 8, neoprint_state )
+ADDRESS_MAP_START(neoprint_state::neoprint_audio_io_map)
/*AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READWRITE(audio_command_r, audio_cpu_clear_nmi_w);*/ /* may not and NMI clear */
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READ(audio_command_r) AM_WRITENOP
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
diff --git a/src/mame/drivers/neptunp2.cpp b/src/mame/drivers/neptunp2.cpp
index cbe79e63a35..7042f8c3077 100644
--- a/src/mame/drivers/neptunp2.cpp
+++ b/src/mame/drivers/neptunp2.cpp
@@ -28,6 +28,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void neptunp2(machine_config &config);
+ void neptunp2_io(address_map &map);
+ void neptunp2_map(address_map &map);
protected:
// devices
@@ -52,7 +54,7 @@ READ8_MEMBER( neptunp2_state::test_r )
return machine().rand();
}
-static ADDRESS_MAP_START( neptunp2_map, AS_PROGRAM, 8, neptunp2_state )
+ADDRESS_MAP_START(neptunp2_state::neptunp2_map)
AM_RANGE(0x00000, 0xbffff) AM_ROM
AM_RANGE(0xe0000, 0xeffff) AM_RAM
@@ -69,7 +71,7 @@ static ADDRESS_MAP_START( neptunp2_map, AS_PROGRAM, 8, neptunp2_state )
AM_RANGE(0xffff0, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( neptunp2_io, AS_IO, 8, neptunp2_state )
+ADDRESS_MAP_START(neptunp2_state::neptunp2_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/nes.cpp b/src/mame/drivers/nes.cpp
index 96e69b8c2a9..8f3991b97dd 100644
--- a/src/mame/drivers/nes.cpp
+++ b/src/mame/drivers/nes.cpp
@@ -26,7 +26,7 @@ WRITE8_MEMBER(nes_state::nes_vh_sprite_dma_w)
m_ppu->spriteram_dma(space, data);
}
-static ADDRESS_MAP_START( nes_map, AS_PROGRAM, 8, nes_state )
+ADDRESS_MAP_START(nes_state::nes_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_MIRROR(0x1800) /* RAM */
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write) /* PPU registers */
AM_RANGE(0x4014, 0x4014) AM_WRITE(nes_vh_sprite_dma_w) /* stupid address space hole */
diff --git a/src/mame/drivers/nes_vt.cpp b/src/mame/drivers/nes_vt.cpp
index 0ba760e8472..8a6e8438f77 100644
--- a/src/mame/drivers/nes_vt.cpp
+++ b/src/mame/drivers/nes_vt.cpp
@@ -183,6 +183,18 @@ public:
void nes_vt_fp(machine_config &config);
void nes_vt_fa(machine_config &config);
+ void nes_vt_hum_map(address_map &map);
+ void nes_vt_pjoy_map(address_map &map);
+ void nes_vt_sp69_map(address_map &map);
+ void nes_vt_bt_map(address_map &map);
+ void nes_vt_cy_map(address_map &map);
+ void nes_vt_dg_map(address_map &map);
+ void nes_vt_hh_map(address_map &map);
+ void nes_vt_map(address_map &map);
+ void nes_vt_xx_map(address_map &map);
+ void nes_vt_fa_map(address_map &map);
+ void nes_vt_fp_map(address_map &map);
+ void prg_map(address_map &map);
private:
/* expansion nametable - todo, see if we can refactor NES code to be reusable without having to add full NES bus etc. */
@@ -1159,7 +1171,7 @@ WRITE8_MEMBER(nes_vt_state::vt03_4034_w)
m_vdma_ctrl = data;
}
-static ADDRESS_MAP_START( nes_vt_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_MASK(0x001F) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write) /* PPU registers */
@@ -1180,32 +1192,31 @@ ADDRESS_MAP_END
/* Some later VT models have more RAM */
-static ADDRESS_MAP_START( nes_vt_xx_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_xx_map)
AM_IMPORT_FROM(nes_vt_map)
AM_RANGE(0x0800, 0x0fff) AM_RAM
ADDRESS_MAP_END
-
-static ADDRESS_MAP_START( nes_vt_hum_map, AS_PROGRAM, 8, nes_vt_state )
-AM_IMPORT_FROM(nes_vt_map)
-AM_RANGE(0x4100, 0x410b) AM_WRITE(vt03_410x_hum_w)
-AM_RANGE(0x8000, 0xffff) AM_WRITE(vt03_8000_hum_w)
+ADDRESS_MAP_START(nes_vt_state::nes_vt_hum_map)
+ AM_IMPORT_FROM(nes_vt_map)
+ AM_RANGE(0x4100, 0x410b) AM_WRITE(vt03_410x_hum_w)
+ AM_RANGE(0x8000, 0xffff) AM_WRITE(vt03_8000_hum_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_pjoy_map, AS_PROGRAM, 8, nes_vt_state )
-AM_IMPORT_FROM(nes_vt_map)
-AM_RANGE(0x4100, 0x410b) AM_WRITE(vt03_410x_pjoy_w)
-AM_RANGE(0x8000, 0xffff) AM_WRITE(vt03_8000_pjoy_w)
+ADDRESS_MAP_START(nes_vt_state::nes_vt_pjoy_map)
+ AM_IMPORT_FROM(nes_vt_map)
+ AM_RANGE(0x4100, 0x410b) AM_WRITE(vt03_410x_pjoy_w)
+ AM_RANGE(0x8000, 0xffff) AM_WRITE(vt03_8000_pjoy_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_sp69_map, AS_PROGRAM, 8, nes_vt_state )
-AM_IMPORT_FROM(nes_vt_map)
-AM_RANGE(0x4100, 0x410b) AM_WRITE(vt03_410x_sp69_w)
-AM_RANGE(0x8000, 0xffff) AM_WRITE(vt03_8000_sp69_w)
+ADDRESS_MAP_START(nes_vt_state::nes_vt_sp69_map)
+ AM_IMPORT_FROM(nes_vt_map)
+ AM_RANGE(0x4100, 0x410b) AM_WRITE(vt03_410x_sp69_w)
+ AM_RANGE(0x8000, 0xffff) AM_WRITE(vt03_8000_sp69_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_cy_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_cy_map)
AM_IMPORT_FROM(nes_vt_xx_map)
AM_RANGE(0x41b0, 0x41bf) AM_READ(vt03_41bx_r) AM_WRITE(vt03_41bx_w)
AM_RANGE(0x48a0, 0x48af) AM_READ(vt03_48ax_r) AM_WRITE(vt03_48ax_w)
@@ -1215,13 +1226,13 @@ static ADDRESS_MAP_START( nes_vt_cy_map, AS_PROGRAM, 8, nes_vt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_bt_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_bt_map)
AM_IMPORT_FROM(nes_vt_xx_map)
AM_RANGE(0x412c, 0x412c) AM_WRITE(vt03_412c_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_hh_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_hh_map)
AM_RANGE(0x0000, 0x1fff) AM_MASK(0x0fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write) /* PPU registers */
@@ -1244,7 +1255,7 @@ static ADDRESS_MAP_START( nes_vt_hh_map, AS_PROGRAM, 8, nes_vt_state )
AM_RANGE(0x6000, 0x7fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_dg_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_dg_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write) /* PPU registers */
@@ -1265,7 +1276,7 @@ static ADDRESS_MAP_START( nes_vt_dg_map, AS_PROGRAM, 8, nes_vt_state )
AM_RANGE(0x6000, 0x7fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_fp_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_fp_map)
AM_IMPORT_FROM(nes_vt_hh_map)
AM_RANGE(0x411e, 0x411e) AM_WRITE(vtfp_411e_w)
AM_RANGE(0x4a00, 0x4a00) AM_WRITE(vtfp_4a00_w)
@@ -1276,7 +1287,7 @@ static ADDRESS_MAP_START( nes_vt_fp_map, AS_PROGRAM, 8, nes_vt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nes_vt_fa_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::nes_vt_fa_map)
AM_IMPORT_FROM(nes_vt_dg_map)
@@ -1285,7 +1296,7 @@ static ADDRESS_MAP_START( nes_vt_fa_map, AS_PROGRAM, 8, nes_vt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, nes_vt_state )
+ADDRESS_MAP_START(nes_vt_state::prg_map)
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("prg_bank0")
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("prg_bank1")
AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("prg_bank2")
diff --git a/src/mame/drivers/newbrain.cpp b/src/mame/drivers/newbrain.cpp
index 5981a97f840..9f7a5e57833 100644
--- a/src/mame/drivers/newbrain.cpp
+++ b/src/mame/drivers/newbrain.cpp
@@ -577,7 +577,7 @@ READ_LINE_MEMBER( newbrain_state::tdi_r )
// ADDRESS_MAP( newbrain_mreq )
//-------------------------------------------------
-static ADDRESS_MAP_START( newbrain_mreq, AS_PROGRAM, 8, newbrain_state )
+ADDRESS_MAP_START(newbrain_state::newbrain_mreq)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mreq_r, mreq_w)
ADDRESS_MAP_END
@@ -587,7 +587,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( newbrain_iorq )
//-------------------------------------------------
-static ADDRESS_MAP_START( newbrain_iorq, AS_IO, 8, newbrain_state )
+ADDRESS_MAP_START(newbrain_state::newbrain_iorq)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(iorq_r, iorq_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/news.cpp b/src/mame/drivers/news.cpp
index a8b6e36ce98..2f3df09ce25 100644
--- a/src/mame/drivers/news.cpp
+++ b/src/mame/drivers/news.cpp
@@ -24,7 +24,7 @@ driver by David Haywood
#include "speaker.h"
-static ADDRESS_MAP_START( news_map, AS_PROGRAM, 8, news_state )
+ADDRESS_MAP_START(news_state::news_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* 4000-7fff is written to during startup, probably leftover code */
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(news_fgram_w) AM_SHARE("fgram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(news_bgram_w) AM_SHARE("bgram")
diff --git a/src/mame/drivers/next.cpp b/src/mame/drivers/next.cpp
index 27b52a3495d..14ee7fcda33 100644
--- a/src/mame/drivers/next.cpp
+++ b/src/mame/drivers/next.cpp
@@ -892,7 +892,7 @@ WRITE_LINE_MEMBER(next_state::vblank_w)
}
}
-static ADDRESS_MAP_START( next_mem, AS_PROGRAM, 32, next_state )
+ADDRESS_MAP_START(next_state::next_mem)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x01000000, 0x0101ffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x02000000, 0x020001ff) AM_MIRROR(0x300200) AM_READWRITE(dma_ctrl_r, dma_ctrl_w)
@@ -932,34 +932,34 @@ static ADDRESS_MAP_START( next_mem, AS_PROGRAM, 32, next_state )
// AM_RANGE(0x1c000000, 0x1c03ffff) main RAM w AB function
ADDRESS_MAP_END
-static ADDRESS_MAP_START( next_0b_m_nofdc_mem, AS_PROGRAM, 32, next_state )
+ADDRESS_MAP_START(next_state::next_0b_m_nofdc_mem)
AM_IMPORT_FROM(next_mem)
AM_RANGE(0x0b000000, 0x0b03ffff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( next_fdc_mem, AS_PROGRAM, 32, next_state )
+ADDRESS_MAP_START(next_state::next_fdc_mem)
AM_IMPORT_FROM(next_mem)
AM_RANGE(0x02014100, 0x02014107) AM_MIRROR(0x300000) AM_DEVICE8("fdc", n82077aa_device, map, 0xffffffff)
AM_RANGE(0x02014108, 0x0201410b) AM_MIRROR(0x300000) AM_READWRITE(fdc_control_r, fdc_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( next_0b_m_mem, AS_PROGRAM, 32, next_state )
+ADDRESS_MAP_START(next_state::next_0b_m_mem)
AM_IMPORT_FROM(next_fdc_mem)
AM_RANGE(0x0b000000, 0x0b03ffff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( next_0c_m_mem, AS_PROGRAM, 32, next_state )
+ADDRESS_MAP_START(next_state::next_0c_m_mem)
AM_IMPORT_FROM(next_fdc_mem)
AM_RANGE(0x0c000000, 0x0c1fffff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( next_0c_c_mem, AS_PROGRAM, 32, next_state )
+ADDRESS_MAP_START(next_state::next_0c_c_mem)
AM_IMPORT_FROM(next_fdc_mem)
AM_RANGE(0x0c000000, 0x0c1fffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x02018180, 0x02018183) AM_MIRROR(0x300000) AM_WRITE8(ramdac_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( next_2c_c_mem, AS_PROGRAM, 32, next_state )
+ADDRESS_MAP_START(next_state::next_2c_c_mem)
AM_IMPORT_FROM(next_fdc_mem)
AM_RANGE(0x2c000000, 0x2c1fffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x02018180, 0x02018183) AM_MIRROR(0x300000) AM_WRITE8(ramdac_w, 0xffffffff)
diff --git a/src/mame/drivers/nexus3d.cpp b/src/mame/drivers/nexus3d.cpp
index 4134ad4e965..e6dacaae799 100644
--- a/src/mame/drivers/nexus3d.cpp
+++ b/src/mame/drivers/nexus3d.cpp
@@ -48,6 +48,7 @@ public:
virtual void video_start() override;
uint32_t screen_update_nexus3d(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void nexus3d(machine_config &config);
+ void nexus3d_map(address_map &map);
};
@@ -77,7 +78,7 @@ READ32_MEMBER(nexus3d_state::nexus3d_unk_r)
//
//}
-static ADDRESS_MAP_START( nexus3d_map, AS_PROGRAM, 32, nexus3d_state )
+ADDRESS_MAP_START(nexus3d_state::nexus3d_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x00400000, 0x01ffffff) AM_RAM // ?? uploads various data, + pointers to data in the 0x01ffxxxx range, might be video system related
diff --git a/src/mame/drivers/ngen.cpp b/src/mame/drivers/ngen.cpp
index b4f880383af..2db1164dfb7 100644
--- a/src/mame/drivers/ngen.cpp
+++ b/src/mame/drivers/ngen.cpp
@@ -146,6 +146,11 @@ public:
DECLARE_READ16_MEMBER(b38_crtc_r);
DECLARE_WRITE16_MEMBER(b38_crtc_w);
void ngen(machine_config &config);
+ void ngen386_io(address_map &map);
+ void ngen386_mem(address_map &map);
+ void ngen386i_mem(address_map &map);
+ void ngen_io(address_map &map);
+ void ngen_mem(address_map &map);
protected:
virtual void machine_reset() override;
virtual void machine_start() override;
@@ -855,7 +860,7 @@ void ngen_state::machine_reset()
}
// boot ROMs from modules are not mapped anywhere, instead, they have to send the code from the boot ROM via DMA
-static ADDRESS_MAP_START( ngen_mem, AS_PROGRAM, 16, ngen_state )
+ADDRESS_MAP_START(ngen_state::ngen_mem)
AM_RANGE(0x00000, 0xf7fff) AM_RAM
AM_RANGE(0xf8000, 0xf9fff) AM_RAM AM_SHARE("vram")
AM_RANGE(0xfa000, 0xfbfff) AM_RAM AM_SHARE("fontram")
@@ -863,7 +868,7 @@ static ADDRESS_MAP_START( ngen_mem, AS_PROGRAM, 16, ngen_state )
AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("bios",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ngen_io, AS_IO, 16, ngen_state )
+ADDRESS_MAP_START(ngen_state::ngen_io)
AM_RANGE(0x0000, 0x0001) AM_READWRITE(xbus_r,xbus_w)
// Floppy/Hard disk module
@@ -877,7 +882,7 @@ static ADDRESS_MAP_START( ngen_io, AS_IO, 16, ngen_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ngen386_mem, AS_PROGRAM, 32, ngen_state )
+ADDRESS_MAP_START(ngen_state::ngen386_mem)
AM_RANGE(0x00000000, 0x000f7fff) AM_RAM
AM_RANGE(0x000f8000, 0x000f9fff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x000fa000, 0x000fbfff) AM_RAM AM_SHARE("fontram")
@@ -887,7 +892,7 @@ static ADDRESS_MAP_START( ngen386_mem, AS_PROGRAM, 32, ngen_state )
AM_RANGE(0xffffe000, 0xffffffff) AM_ROM AM_REGION("bios",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ngen386i_mem, AS_PROGRAM, 32, ngen_state )
+ADDRESS_MAP_START(ngen_state::ngen386i_mem)
AM_RANGE(0x00000000, 0x000f7fff) AM_RAM
AM_RANGE(0x000f8000, 0x000f9fff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x000fa000, 0x000fbfff) AM_RAM AM_SHARE("fontram")
@@ -896,7 +901,7 @@ static ADDRESS_MAP_START( ngen386i_mem, AS_PROGRAM, 32, ngen_state )
AM_RANGE(0xffffc000, 0xffffffff) AM_ROM AM_REGION("bios",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ngen386_io, AS_IO, 32, ngen_state )
+ADDRESS_MAP_START(ngen_state::ngen386_io)
AM_RANGE(0x0000, 0x0003) AM_READWRITE16(xbus_r, xbus_w, 0x0000ffff)
// AM_RANGE(0xf800, 0xfeff) AM_READWRITE16(peripheral_r, peripheral_w,0xffffffff)
AM_RANGE(0xfd08, 0xfd0b) AM_READWRITE16(b38_crtc_r, b38_crtc_w,0xffffffff)
diff --git a/src/mame/drivers/ngp.cpp b/src/mame/drivers/ngp.cpp
index 330c8478c94..ede668bb89d 100644
--- a/src/mame/drivers/ngp.cpp
+++ b/src/mame/drivers/ngp.cpp
@@ -206,6 +206,9 @@ public:
void ngp_common(machine_config &config);
void ngp(machine_config &config);
void ngpc(machine_config &config);
+ void ngp_mem(address_map &map);
+ void z80_io(address_map &map);
+ void z80_mem(address_map &map);
protected:
bool m_nvram_loaded;
required_ioport m_io_controls;
@@ -550,7 +553,7 @@ WRITE8_MEMBER( ngp_state::flash1_w )
}
-static ADDRESS_MAP_START( ngp_mem, AS_PROGRAM, 8, ngp_state )
+ADDRESS_MAP_START(ngp_state::ngp_mem)
AM_RANGE( 0x000080, 0x0000bf ) AM_READWRITE(ngp_io_r, ngp_io_w) /* ngp/c specific i/o */
AM_RANGE( 0x004000, 0x006fff ) AM_RAM AM_SHARE("mainram") /* work ram */
AM_RANGE( 0x007000, 0x007fff ) AM_RAM AM_SHARE("share1") /* shared with sound cpu */
@@ -579,7 +582,7 @@ WRITE8_MEMBER( ngp_state::ngp_z80_signal_main_w )
}
-static ADDRESS_MAP_START( z80_mem, AS_PROGRAM, 8, ngp_state )
+ADDRESS_MAP_START(ngp_state::z80_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAM AM_SHARE("share1") /* shared with tlcs900 */
AM_RANGE( 0x4000, 0x4001 ) AM_DEVWRITE("t6w28", t6w28_device, write ) /* sound chip (right, left) */
AM_RANGE( 0x8000, 0x8000 ) AM_READWRITE( ngp_z80_comm_r, ngp_z80_comm_w ) /* main-sound communication */
@@ -596,7 +599,7 @@ WRITE8_MEMBER( ngp_state::ngp_z80_clear_irq )
}
-static ADDRESS_MAP_START( z80_io, AS_IO, 8, ngp_state )
+ADDRESS_MAP_START(ngp_state::z80_io)
AM_RANGE( 0x0000, 0xffff ) AM_WRITE( ngp_z80_clear_irq )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/nibble.cpp b/src/mame/drivers/nibble.cpp
index 2ee33ef7dff..0f04f4dd377 100644
--- a/src/mame/drivers/nibble.cpp
+++ b/src/mame/drivers/nibble.cpp
@@ -80,6 +80,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void nibble(machine_config &config);
+ void nibble_cru_map(address_map &map);
+ void nibble_map(address_map &map);
};
@@ -150,7 +152,7 @@ void nibble_state::machine_reset()
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( nibble_map, AS_PROGRAM, 16, nibble_state )
+ADDRESS_MAP_START(nibble_state::nibble_map)
// ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_WRITE(nibble_videoram_w) AM_SHARE("videoram") // placeholder
@@ -159,7 +161,7 @@ static ADDRESS_MAP_START( nibble_map, AS_PROGRAM, 16, nibble_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nibble_cru_map, AS_IO, 8, nibble_state )
+ADDRESS_MAP_START(nibble_state::nibble_cru_map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/nightgal.cpp b/src/mame/drivers/nightgal.cpp
index ddfa6204ab8..45806453198 100644
--- a/src/mame/drivers/nightgal.cpp
+++ b/src/mame/drivers/nightgal.cpp
@@ -107,6 +107,18 @@ public:
void sweetgal(machine_config &config);
void sgaltrop(machine_config &config);
void royalqn(machine_config &config);
+ void common_nsc_map(address_map &map);
+ void common_sexygal_io(address_map &map);
+ void royalqn_io(address_map &map);
+ void royalqn_map(address_map &map);
+ void royalqn_nsc_map(address_map &map);
+ void sexygal_audio_map(address_map &map);
+ void sexygal_io(address_map &map);
+ void sexygal_map(address_map &map);
+ void sexygal_nsc_map(address_map &map);
+ void sgaltrop_io(address_map &map);
+ void sgaltrop_nsc_map(address_map &map);
+ void sweetgal_map(address_map &map);
protected:
required_ioport m_io_cr_clear;
required_ioport m_io_coins;
@@ -352,7 +364,7 @@ WRITE8_MEMBER(nightgal_state::output_w)
* Common
********************************/
-static ADDRESS_MAP_START( common_nsc_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::common_nsc_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0080, 0x0080) AM_READ_PORT("BLIT_PORT")
AM_RANGE(0x0081, 0x0083) AM_READ(royalqn_nsc_blit_r)
@@ -386,19 +398,19 @@ WRITE8_MEMBER(nightgal_state::sexygal_audionmi_w)
}
-static ADDRESS_MAP_START( sweetgal_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::sweetgal_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x807f) AM_RAM AM_SHARE("sound_ram")
AM_RANGE(0xe000, 0xefff) AM_READWRITE(royalqn_comm_r, royalqn_comm_w) AM_SHARE("comms_ram")
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sexygal_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::sexygal_map)
AM_IMPORT_FROM(sweetgal_map)
AM_RANGE(0xa000, 0xa000) AM_WRITE(sexygal_audioff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( common_sexygal_io, AS_IO, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::common_sexygal_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10,0x10) AM_READ_PORT("DSWA") AM_WRITE(output_w)
AM_RANGE(0x11,0x11) AM_READ_PORT("SYSTEM") AM_WRITE(mux_w)
@@ -407,27 +419,27 @@ static ADDRESS_MAP_START( common_sexygal_io, AS_IO, 8, nightgal_state )
AM_RANGE(0x14,0x14) AM_MIRROR(0xe8) AM_READNOP AM_WRITE(royalqn_blitter_2_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sexygal_io, AS_IO, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::sexygal_io)
AM_IMPORT_FROM( common_sexygal_io )
AM_RANGE(0x00,0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgaltrop_io, AS_IO, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::sgaltrop_io)
AM_IMPORT_FROM( common_sexygal_io )
AM_RANGE(0x01,0x01) AM_DEVREAD("ymsnd", ym2203_device, data_r)
AM_RANGE(0x02,0x03) AM_DEVWRITE("ymsnd", ym2203_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sexygal_nsc_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::sexygal_nsc_map)
AM_IMPORT_FROM( common_nsc_map )
AM_RANGE(0x0080, 0x0086) AM_DEVICE("blitter",jangou_blitter_device, blit_v2_regs)
AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0x2c00) AM_READWRITE(royalqn_comm_r, royalqn_comm_w) AM_SHARE("comms_ram")
AM_RANGE(0xc000, 0xdfff) AM_MIRROR(0x2000) AM_ROM AM_REGION("subrom", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgaltrop_nsc_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::sgaltrop_nsc_map)
AM_IMPORT_FROM( common_nsc_map )
AM_RANGE(0x0080, 0x0086) AM_DEVICE("blitter",jangou_blitter_device, blit_v2_regs)
@@ -437,7 +449,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( sexygal_audio_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::sexygal_audio_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x2000, 0x207f) AM_RAM AM_SHARE("sound_ram")
@@ -450,14 +462,14 @@ ADDRESS_MAP_END
********************************/
-static ADDRESS_MAP_START( royalqn_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::royalqn_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_NOP
AM_RANGE(0xc000, 0xdfff) AM_READWRITE(royalqn_comm_r, royalqn_comm_w) AM_SHARE("comms_ram")
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( royalqn_io, AS_IO, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::royalqn_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01,0x01) AM_MIRROR(0xec) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x02,0x03) AM_MIRROR(0xec) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -471,7 +483,7 @@ static ADDRESS_MAP_START( royalqn_io, AS_IO, 8, nightgal_state )
AM_RANGE(0x17,0x17) AM_MIRROR(0xe8) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( royalqn_nsc_map, AS_PROGRAM, 8, nightgal_state )
+ADDRESS_MAP_START(nightgal_state::royalqn_nsc_map)
AM_IMPORT_FROM( common_nsc_map )
AM_RANGE(0x0080, 0x0086) AM_DEVICE("blitter",jangou_blitter_device, blit_v1_regs)
diff --git a/src/mame/drivers/ninjakd2.cpp b/src/mame/drivers/ninjakd2.cpp
index 1bf1b2a5bd8..d1cb7fff878 100644
--- a/src/mame/drivers/ninjakd2.cpp
+++ b/src/mame/drivers/ninjakd2.cpp
@@ -372,7 +372,7 @@ WRITE8_MEMBER(ninjakd2_state::ninjakd2_soundreset_w)
*
*************************************/
-static ADDRESS_MAP_START( ninjakd2_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::ninjakd2_main_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("KEYCOIN")
@@ -392,7 +392,7 @@ static ADDRESS_MAP_START( ninjakd2_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
AM_RANGE(0xfa00, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mnight_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::mnight_main_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xd9ff) AM_RAM
@@ -413,7 +413,7 @@ static ADDRESS_MAP_START( mnight_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( robokid_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::robokid_main_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -437,7 +437,7 @@ static ADDRESS_MAP_START( robokid_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( omegaf_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::omegaf_main_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("KEYCOIN") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -463,7 +463,7 @@ static ADDRESS_MAP_START( omegaf_main_cpu, AS_PROGRAM, 8, ninjakd2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ninjakd2_sound_cpu, AS_PROGRAM, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::ninjakd2_sound_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -471,7 +471,7 @@ static ADDRESS_MAP_START( ninjakd2_sound_cpu, AS_PROGRAM, 8, ninjakd2_state )
AM_RANGE(0xf000, 0xf000) AM_WRITE(ninjakd2_pcm_play_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ninjakid_nopcm_sound_cpu, AS_PROGRAM, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::ninjakid_nopcm_sound_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -479,12 +479,12 @@ static ADDRESS_MAP_START( ninjakid_nopcm_sound_cpu, AS_PROGRAM, 8, ninjakd2_stat
AM_RANGE(0xf000, 0xf000) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROM AM_REGION("soundcpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ninjakd2_sound_io, AS_IO, 8, ninjakd2_state )
+ADDRESS_MAP_START(ninjakd2_state::ninjakd2_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("2203.1", ym2203_device, write)
AM_RANGE(0x80, 0x81) AM_DEVWRITE("2203.2", ym2203_device, write)
@@ -980,13 +980,13 @@ MACHINE_CONFIG_DERIVED(ninjakd2_state::ninjakd2, ninjakd2_core)
MCFG_CPU_REPLACE("soundcpu", MC8123, MAIN_CLOCK_5) /* verified */
MCFG_CPU_PROGRAM_MAP(ninjakd2_sound_cpu)
MCFG_CPU_IO_MAP(ninjakd2_sound_io)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(ninjakd2_state::ninjakd2b, ninjakd2_core)
MCFG_CPU_MODIFY("soundcpu")
MCFG_CPU_PROGRAM_MAP(ninjakd2_sound_cpu)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(ninjakd2_state::mnight, ninjakd2_core)
diff --git a/src/mame/drivers/ninjaw.cpp b/src/mame/drivers/ninjaw.cpp
index d042b9c1c6b..312847450ea 100644
--- a/src/mame/drivers/ninjaw.cpp
+++ b/src/mame/drivers/ninjaw.cpp
@@ -420,7 +420,7 @@ WRITE16_MEMBER(ninjaw_state::tc0100scn_triple_screen_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( ninjaw_master_map, AS_PROGRAM, 16, ninjaw_state )
+ADDRESS_MAP_START(ninjaw_state::ninjaw_master_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* main ram */
AM_RANGE(0x200000, 0x200003) AM_DEVREADWRITE8("tc0040ioc", tc0040ioc_device, read, write, 0x00ff)
@@ -442,7 +442,7 @@ ADDRESS_MAP_END
// NB there could be conflicts between which cpu writes what to the
// palette, as our interleaving won't match the original board.
-static ADDRESS_MAP_START( ninjaw_slave_map, AS_PROGRAM, 16, ninjaw_state )
+ADDRESS_MAP_START(ninjaw_state::ninjaw_slave_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main ram */
AM_RANGE(0x200000, 0x200003) AM_DEVREADWRITE8("tc0040ioc", tc0040ioc_device, read, write, 0x00ff)
@@ -454,7 +454,7 @@ static ADDRESS_MAP_START( ninjaw_slave_map, AS_PROGRAM, 16, ninjaw_state )
AM_RANGE(0x360000, 0x360007) AM_DEVREADWRITE("tc0110pcr_3", tc0110pcr_device, word_r, step1_word_w) /* palette (3rd screen) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( darius2_master_map, AS_PROGRAM, 16, ninjaw_state )
+ADDRESS_MAP_START(ninjaw_state::darius2_master_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* main ram */
AM_RANGE(0x200000, 0x200003) AM_DEVREADWRITE8("tc0040ioc", tc0040ioc_device, read, write, 0x00ff)
@@ -473,7 +473,7 @@ static ADDRESS_MAP_START( darius2_master_map, AS_PROGRAM, 16, ninjaw_state )
AM_RANGE(0x360000, 0x360007) AM_DEVREADWRITE("tc0110pcr_3", tc0110pcr_device, word_r, step1_word_w) /* palette (3rd screen) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( darius2_slave_map, AS_PROGRAM, 16, ninjaw_state )
+ADDRESS_MAP_START(ninjaw_state::darius2_slave_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main ram */
AM_RANGE(0x200000, 0x200003) AM_DEVREADWRITE8("tc0040ioc", tc0040ioc_device, read, write, 0x00ff)
@@ -485,7 +485,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ninjaw_state )
+ADDRESS_MAP_START(ninjaw_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/nitedrvr.cpp b/src/mame/drivers/nitedrvr.cpp
index d69540ae481..42b6191761a 100644
--- a/src/mame/drivers/nitedrvr.cpp
+++ b/src/mame/drivers/nitedrvr.cpp
@@ -48,7 +48,7 @@
/* Memory Map */
-static ADDRESS_MAP_START( nitedrvr_map, AS_PROGRAM, 8, nitedrvr_state )
+ADDRESS_MAP_START(nitedrvr_state::nitedrvr_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x100) // SCRAM
AM_RANGE(0x0200, 0x027f) AM_READNOP AM_WRITE(nitedrvr_videoram_w) AM_MIRROR(0x180) AM_SHARE("videoram") // PFW
AM_RANGE(0x0400, 0x042f) AM_READNOP AM_WRITEONLY AM_MIRROR(0x1c0) AM_SHARE("hvc") // POSH, POSV, CHAR
diff --git a/src/mame/drivers/niyanpai.cpp b/src/mame/drivers/niyanpai.cpp
index 6e2f38eb4b3..76a81357f3f 100644
--- a/src/mame/drivers/niyanpai.cpp
+++ b/src/mame/drivers/niyanpai.cpp
@@ -123,7 +123,7 @@ WRITE16_MEMBER(niyanpai_state::musobana_inputport_w)
m_musobana_inputport = data;
}
-static ADDRESS_MAP_START( niyanpai_map, AS_PROGRAM, 16, niyanpai_state )
+ADDRESS_MAP_START(niyanpai_state::niyanpai_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x040fff) AM_RAM AM_SHARE("nvram")
@@ -158,7 +158,7 @@ static ADDRESS_MAP_START( niyanpai_map, AS_PROGRAM, 16, niyanpai_state )
AM_RANGE(0xfffc00, 0xffffff) AM_DEVREADWRITE("tmp68301", tmp68301_device, regs_r, regs_w) // TMP68301 Registers
ADDRESS_MAP_END
-static ADDRESS_MAP_START( musobana_map, AS_PROGRAM, 16, niyanpai_state )
+ADDRESS_MAP_START(niyanpai_state::musobana_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x040fff) AM_RAM
@@ -196,7 +196,7 @@ static ADDRESS_MAP_START( musobana_map, AS_PROGRAM, 16, niyanpai_state )
AM_RANGE(0xfffc00, 0xffffff) AM_DEVREADWRITE("tmp68301", tmp68301_device, regs_r, regs_w) // TMP68301 Registers
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mhhonban_map, AS_PROGRAM, 16, niyanpai_state )
+ADDRESS_MAP_START(niyanpai_state::mhhonban_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x040fff) AM_RAM
@@ -236,7 +236,7 @@ static ADDRESS_MAP_START( mhhonban_map, AS_PROGRAM, 16, niyanpai_state )
AM_RANGE(0xfffc00, 0xffffff) AM_DEVREADWRITE("tmp68301", tmp68301_device, regs_r, regs_w) // TMP68301 Registers
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zokumahj_map, AS_PROGRAM, 16, niyanpai_state )
+ADDRESS_MAP_START(niyanpai_state::zokumahj_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0ff000, 0x0fffff) AM_RAM
diff --git a/src/mame/drivers/nmg5.cpp b/src/mame/drivers/nmg5.cpp
index 3bc1ea17e88..39f204b1d27 100644
--- a/src/mame/drivers/nmg5.cpp
+++ b/src/mame/drivers/nmg5.cpp
@@ -299,6 +299,11 @@ public:
void garogun(machine_config &config);
void searchp2(machine_config &config);
void _7ordi(machine_config &config);
+ void nmg5_map(address_map &map);
+ void nmg5_sound_map(address_map &map);
+ void pclubys_map(address_map &map);
+ void pclubys_sound_map(address_map &map);
+ void sound_io_map(address_map &map);
};
@@ -362,7 +367,7 @@ WRITE8_MEMBER(nmg5_state::oki_banking_w)
********************************************************************/
-static ADDRESS_MAP_START( nmg5_map, AS_PROGRAM, 16, nmg5_state )
+ADDRESS_MAP_START(nmg5_state::nmg5_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x120000, 0x12ffff) AM_RAM
AM_RANGE(0x140000, 0x1407ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -382,7 +387,7 @@ static ADDRESS_MAP_START( nmg5_map, AS_PROGRAM, 16, nmg5_state )
AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_SHARE("bitmap")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pclubys_map, AS_PROGRAM, 16, nmg5_state )
+ADDRESS_MAP_START(nmg5_state::pclubys_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x440000, 0x4407ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -407,17 +412,17 @@ ADDRESS_MAP_END
********************************************************************/
-static ADDRESS_MAP_START( nmg5_sound_map, AS_PROGRAM, 8, nmg5_state )
+ADDRESS_MAP_START(nmg5_state::nmg5_sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pclubys_sound_map, AS_PROGRAM, 8, nmg5_state )
+ADDRESS_MAP_START(nmg5_state::pclubys_sound_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, nmg5_state )
+ADDRESS_MAP_START(nmg5_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(oki_banking_w)
AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
diff --git a/src/mame/drivers/nmk16.cpp b/src/mame/drivers/nmk16.cpp
index 990aeefedc7..bafad7598b8 100644
--- a/src/mame/drivers/nmk16.cpp
+++ b/src/mame/drivers/nmk16.cpp
@@ -321,7 +321,7 @@ WRITE16_MEMBER(nmk16_state::afega_soundlatch_w)
/***************************************************************************/
-static ADDRESS_MAP_START( vandyke_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::vandyke_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -339,7 +339,7 @@ static ADDRESS_MAP_START( vandyke_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vandykeb_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::vandykeb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -358,7 +358,7 @@ static ADDRESS_MAP_START( vandykeb_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( manybloc_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::manybloc_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -375,7 +375,7 @@ static ADDRESS_MAP_START( manybloc_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tharrier_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::tharrier_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ(tharrier_mcu_r) // AM_READ_PORT("IN1")
@@ -395,7 +395,7 @@ static ADDRESS_MAP_START( tharrier_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tharrier_sound_map, AS_PROGRAM, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::tharrier_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xf000, 0xf000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
@@ -405,7 +405,7 @@ static ADDRESS_MAP_START( tharrier_sound_map, AS_PROGRAM, 8, nmk16_state )
AM_RANGE(0xf700, 0xf700) AM_WRITE(tharrier_oki6295_bankswitch_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tharrier_sound_io_map, AS_IO, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::tharrier_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
ADDRESS_MAP_END
@@ -413,7 +413,7 @@ ADDRESS_MAP_END
//Read input port 1 030c8/ BAD
//3478 GOOD
-static ADDRESS_MAP_START( mustang_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::mustang_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -430,7 +430,7 @@ static ADDRESS_MAP_START( mustang_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mustangb_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::mustangb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -448,7 +448,7 @@ static ADDRESS_MAP_START( mustangb_map, AS_PROGRAM, 16, nmk16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( twinactn_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::twinactn_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -466,7 +466,7 @@ static ADDRESS_MAP_START( twinactn_map, AS_PROGRAM, 16, nmk16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( acrobatm_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::acrobatm_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x80000, 0x8ffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0xc0000, 0xc0001) AM_READ_PORT("IN0")
@@ -484,7 +484,7 @@ static ADDRESS_MAP_START( acrobatm_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0xd4000, 0xd47ff) AM_RAM_WRITE(nmk_txvideoram_w) AM_SHARE("nmk_txvideoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bioship_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::bioship_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -662,7 +662,7 @@ WRITE16_MEMBER(nmk16_state::hachamf_mainram_w)
}
-static ADDRESS_MAP_START( hachamf_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::hachamf_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
/* I/O Region */
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
@@ -889,7 +889,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(nmk16_state::hachamf_mcu_sim)
mcu_run(0);
}
-static ADDRESS_MAP_START( tdragon_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::tdragon_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x044022, 0x044023) AM_READNOP /* No Idea */
// AM_RANGE(0x0b0000, 0x0b7fff) AM_RAM /* Work RAM */
@@ -919,7 +919,7 @@ READ16_MEMBER(nmk16_state::tdragonb_prot_r)
return 0x0003;
}
-static ADDRESS_MAP_START( tdragonb_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::tdragonb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x044022, 0x044023) AM_READ(tdragonb_prot_r)
AM_RANGE(0x0b0000, 0x0bffff) AM_RAM AM_SHARE("mainram")
@@ -936,7 +936,7 @@ static ADDRESS_MAP_START( tdragonb_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0d0000, 0x0d07ff) AM_RAM_WRITE(nmk_txvideoram_w) AM_SHARE("nmk_txvideoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ssmissin_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::ssmissin_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0b0000, 0x0bffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x0c0000, 0x0c0001) AM_READ_PORT("IN0")
@@ -952,7 +952,7 @@ static ADDRESS_MAP_START( ssmissin_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0d0000, 0x0d07ff) AM_MIRROR(0x1800) AM_RAM_WRITE(nmk_txvideoram_w) AM_SHARE("nmk_txvideoram") //mirror for airattck
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ssmissin_sound_map, AS_PROGRAM, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::ssmissin_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(ssmissin_soundbank_w)
@@ -960,17 +960,17 @@ static ADDRESS_MAP_START( ssmissin_sound_map, AS_PROGRAM, 8, nmk16_state )
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki1_map, 0, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::oki1_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki2_map, 0, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::oki2_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( strahl_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::strahl_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x80000, 0x80001) AM_READ_PORT("IN0")
AM_RANGE(0x80002, 0x80003) AM_READ_PORT("IN1")
@@ -989,7 +989,7 @@ static ADDRESS_MAP_START( strahl_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0xf0000, 0xfffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( macross_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::macross_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -1007,7 +1007,7 @@ static ADDRESS_MAP_START( macross_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gunnail_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::gunnail_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -1027,7 +1027,7 @@ static ADDRESS_MAP_START( gunnail_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( macross2_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::macross2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("IN0")
AM_RANGE(0x100002, 0x100003) AM_READ_PORT("IN1")
@@ -1053,13 +1053,13 @@ static ADDRESS_MAP_START( macross2_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x1f0000, 0x1fffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tdragon3h_map, AS_PROGRAM, 16, nmk16_state ) // bootleg has these 2 swapped
+ADDRESS_MAP_START(nmk16_state::tdragon3h_map) // bootleg has these 2 swapped
AM_IMPORT_FROM(macross2_map)
AM_RANGE(0x10000e, 0x10000f) AM_READ_PORT("DSW2")
AM_RANGE(0x10000a, 0x10000b) AM_DEVREAD8("soundlatch2", generic_latch_8_device, read, 0x00ff) /* from Z80 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raphero_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::raphero_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("IN0")
AM_RANGE(0x100002, 0x100003) AM_READ_PORT("IN1")
@@ -1086,7 +1086,7 @@ static ADDRESS_MAP_START( raphero_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x1f0000, 0x1fffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raphero_sound_mem_map, AS_PROGRAM, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::raphero_sound_mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -1098,7 +1098,7 @@ static ADDRESS_MAP_START( raphero_sound_mem_map, AS_PROGRAM, 8, nmk16_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( macross2_sound_map, AS_PROGRAM, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::macross2_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* banked ROM */
AM_RANGE(0xa000, 0xa000) AM_READNOP /* IRQ ack? watchdog? */
@@ -1107,7 +1107,7 @@ static ADDRESS_MAP_START( macross2_sound_map, AS_PROGRAM, 8, nmk16_state )
AM_RANGE(0xf000, 0xf000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write) /* from 68000 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( macross2_sound_io_map, AS_IO, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::macross2_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("oki1", okim6295_device, read, write)
@@ -1115,7 +1115,7 @@ static ADDRESS_MAP_START( macross2_sound_io_map, AS_IO, 8, nmk16_state )
AM_RANGE(0x90, 0x97) AM_DEVWRITE("nmk112", nmk112_device, okibank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bjtwin_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::bjtwin_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1")
@@ -1132,7 +1132,7 @@ static ADDRESS_MAP_START( bjtwin_map, AS_PROGRAM, 16, nmk16_state )
AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atombjt_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::atombjt_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080014, 0x080015) AM_NOP // always 1 in this bootleg. Flip-screen switch not present according to dip sheet.
AM_RANGE(0x088000, 0x0887ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -5024,7 +5024,7 @@ WRITE16_MEMBER(nmk16_state::afega_scroll1_w)
*/
-static ADDRESS_MAP_START( afega_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::afega_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") // Buttons
@@ -5049,7 +5049,7 @@ static ADDRESS_MAP_START( afega_map, AS_PROGRAM, 16, nmk16_state )
ADDRESS_MAP_END
// firehawk has 0x100000 bytes of program rom (at least the switchable version) so the above can't work.
-static ADDRESS_MAP_START( firehawk_map, AS_PROGRAM, 16, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::firehawk_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fffff)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x280000, 0x280001) AM_READ_PORT("IN0") // Buttons
@@ -5089,7 +5089,7 @@ WRITE8_MEMBER(nmk16_state::spec2k_oki1_banking_w)
m_oki2->set_rom_bank(1);
}
-static ADDRESS_MAP_START( afega_sound_cpu, AS_PROGRAM, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::afega_sound_cpu)
AM_RANGE(0x0003, 0x0003) AM_WRITENOP // bug in sound prg?
AM_RANGE(0x0004, 0x0004) AM_WRITENOP // bug in sound prg?
AM_RANGE(0x0000, 0xefff) AM_ROM
@@ -5099,7 +5099,7 @@ static ADDRESS_MAP_START( afega_sound_cpu, AS_PROGRAM, 8, nmk16_state )
AM_RANGE(0xf80a, 0xf80a) AM_DEVREADWRITE("oki1", okim6295_device, read, write) // M6295
ADDRESS_MAP_END
-static ADDRESS_MAP_START( firehawk_sound_cpu, AS_PROGRAM, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::firehawk_sound_cpu)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_RAM // not used, only tested
@@ -5120,7 +5120,7 @@ WRITE8_MEMBER(nmk16_state::twinactn_oki_bank_w)
// logerror("%04x: oki bank %02x\n", m_audiocpu->pc(), data);
}
-static ADDRESS_MAP_START( twinactn_sound_cpu, AS_PROGRAM, 8, nmk16_state )
+ADDRESS_MAP_START(nmk16_state::twinactn_sound_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(twinactn_oki_bank_w)
diff --git a/src/mame/drivers/nmkmedal.cpp b/src/mame/drivers/nmkmedal.cpp
index 9e2eb2c6ca6..b0004e01e5d 100644
--- a/src/mame/drivers/nmkmedal.cpp
+++ b/src/mame/drivers/nmkmedal.cpp
@@ -41,11 +41,12 @@ public:
{ }
void trocana(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, nmkmedal_state )
+ADDRESS_MAP_START(nmkmedal_state::mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/nokia_3310.cpp b/src/mame/drivers/nokia_3310.cpp
index 76754d53485..247158e03c5 100644
--- a/src/mame/drivers/nokia_3310.cpp
+++ b/src/mame/drivers/nokia_3310.cpp
@@ -70,6 +70,7 @@ public:
void noki7110(machine_config &config);
void noki6210(machine_config &config);
void noki3310(machine_config &config);
+ void noki3310_map(address_map &map);
private:
void assert_fiq(int num);
void assert_irq(int num);
@@ -630,7 +631,7 @@ WRITE8_MEMBER(noki3310_state::mad2_mcuif_w)
}
-static ADDRESS_MAP_START( noki3310_map, AS_PROGRAM, 32, noki3310_state )
+ADDRESS_MAP_START(noki3310_state::noki3310_map)
ADDRESS_MAP_GLOBAL_MASK(0x00ffffff)
AM_RANGE(0x00000000, 0x0000ffff) AM_MIRROR(0x80000) AM_READWRITE16(ram_r, ram_w, 0xffffffff) // boot ROM / RAM
AM_RANGE(0x00010000, 0x00010fff) AM_MIRROR(0x8f000) AM_READWRITE16(dsp_ram_r, dsp_ram_w, 0xffffffff) // DSP shared memory
diff --git a/src/mame/drivers/norautp.cpp b/src/mame/drivers/norautp.cpp
index 0e95e1acd5d..5aa52a08438 100644
--- a/src/mame/drivers/norautp.cpp
+++ b/src/mame/drivers/norautp.cpp
@@ -829,13 +829,13 @@ READ8_MEMBER(norautp_state::test2_r)
+----------+---------+--------------+--------+--------------+--------+--------------+------------------------+
*/
-static ADDRESS_MAP_START( norautp_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::norautp_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_SHARE("nvram") /* 6116 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( norautp_portmap, AS_IO, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::norautp_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x60, 0x63) AM_MIRROR(0x1c) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
AM_RANGE(0xa0, 0xa3) AM_MIRROR(0x1c) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
@@ -860,69 +860,69 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( nortest1_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::nortest1_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x5000, 0x57ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( norautxp_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::norautxp_map)
// ADDRESS_MAP_GLOBAL_MASK(~0x4000)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x3fff) AM_ROM /* need to be checked */
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") /* HM6116 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( norautx4_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::norautx4_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") /* 6116 */
ADDRESS_MAP_END
#ifdef UNUSED_CODE
-static ADDRESS_MAP_START( norautx8_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::norautx8_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* need to be checked */
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram") /* 6116 */
ADDRESS_MAP_END
#endif
-static ADDRESS_MAP_START( kimble_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::kimble_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc800, 0xc9ff) AM_RAM /* working RAM? */
ADDRESS_MAP_END
#ifdef UNUSED_CODE
-static ADDRESS_MAP_START( norautxp_portmap, AS_IO, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::norautxp_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
#endif
-static ADDRESS_MAP_START( newhilop_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::newhilop_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("nvram") /* 6116 */
ADDRESS_MAP_END
/*********** 8080 based **********/
-static ADDRESS_MAP_START( dphl_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::dphl_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 not connected */
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("nvram") /* should be 2x 0x100 segments (4x 2111) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dphla_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::dphla_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ssjkrpkr_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::ssjkrpkr_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dphltest_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::dphltest_map)
// ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 not connected */
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x7fff) AM_RAM
@@ -942,12 +942,12 @@ ADDRESS_MAP_END
The code read on port $62, when is suppossed to be set as output.
*/
-static ADDRESS_MAP_START( kimbldhl_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::kimbldhl_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drhl_map, AS_PROGRAM, 8, norautp_state )
+ADDRESS_MAP_START(norautp_state::drhl_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 not connected */
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/notechan.cpp b/src/mame/drivers/notechan.cpp
index 84b9fda303c..e164a390b22 100644
--- a/src/mame/drivers/notechan.cpp
+++ b/src/mame/drivers/notechan.cpp
@@ -315,6 +315,8 @@ public:
DECLARE_WRITE8_MEMBER(out_fa_w);
DECLARE_WRITE8_MEMBER(out_ff_w);
void notechan(machine_config &config);
+ void notechan_map(address_map &map);
+ void notechan_port_map(address_map &map);
};
@@ -322,12 +324,12 @@ public:
* Memory Map Definition *
*********************************************/
-static ADDRESS_MAP_START( notechan_map, AS_PROGRAM, 8, notechan_state )
+ADDRESS_MAP_START(notechan_state::notechan_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( notechan_port_map, AS_IO, 8, notechan_state )
+ADDRESS_MAP_START(notechan_state::notechan_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0xf8, 0xf8) AM_READ_PORT("IN0") AM_WRITE(out_f8_w)
diff --git a/src/mame/drivers/notetaker.cpp b/src/mame/drivers/notetaker.cpp
index f512657656d..ba1f374e3fb 100644
--- a/src/mame/drivers/notetaker.cpp
+++ b/src/mame/drivers/notetaker.cpp
@@ -224,6 +224,8 @@ public:
virtual void machine_reset() override;
void notetakr(machine_config &config);
+ void notetaker_iocpu_io(address_map &map);
+ void notetaker_iocpu_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -547,7 +549,7 @@ BootSeqDone is 1, DisableROM is 0, mem map is 0x00000-0x00fff reading is t
BootSeqDone is 1, DisableROM is 1, mem map is entirely RAM or open bus for both reading and writing.
*/
-static ADDRESS_MAP_START(notetaker_iocpu_mem, AS_PROGRAM, 16, notetaker_state)
+ADDRESS_MAP_START(notetaker_state::notetaker_iocpu_mem)
/*
AM_RANGE(0x00000, 0x00fff) AM_ROM AM_REGION("iocpu", 0xff000) // rom is here if either BootSeqDone OR DisableROM are zero. the 1.5 source code and the schematics implies writes here are ignored while rom is enabled; if disablerom is 1 this goes to mainram
AM_RANGE(0x01000, 0x3ffff) AM_RAM AM_REGION("mainram", 0) // 256k of ram (less 4k), shared between both processors. rom goes here if bootseqdone is 0
@@ -595,7 +597,7 @@ x x x x 0 x x x x x x 1 1 0 1 x 1 1 1
x x x x 0 x x x x x x 1 1 1 0 x x x x . R SelADCHi
x x x x 0 x x x x x x 1 1 1 1 x x x x . W CRTSwitch
*/
-static ADDRESS_MAP_START(notetaker_iocpu_io, AS_IO, 16, notetaker_state)
+ADDRESS_MAP_START(notetaker_state::notetaker_iocpu_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_MIRROR(0x7E1C) AM_DEVREADWRITE8("iopic8259", pic8259_device, read, write, 0x00ff)
AM_RANGE(0x20, 0x21) AM_MIRROR(0x7E1E) AM_WRITE(IPConReg_w) // I/O processor (rom mapping, etc) control register
diff --git a/src/mame/drivers/nova2001.cpp b/src/mame/drivers/nova2001.cpp
index 97d883f0f00..b30fe4a05e6 100644
--- a/src/mame/drivers/nova2001.cpp
+++ b/src/mame/drivers/nova2001.cpp
@@ -180,7 +180,7 @@ MACHINE_START_MEMBER(nova2001_state,ninjakun)
*
*************************************/
-static ADDRESS_MAP_START( nova2001_map, AS_PROGRAM, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::nova2001_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE("fg_videoram")
AM_RANGE(0xa800, 0xafff) AM_RAM_WRITE(nova2001_bg_videoram_w) AM_SHARE("bg_videoram")
@@ -198,7 +198,7 @@ static ADDRESS_MAP_START( nova2001_map, AS_PROGRAM, 8, nova2001_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ninjakun_cpu1_map, AS_PROGRAM, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::ninjakun_cpu1_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
@@ -217,7 +217,7 @@ static ADDRESS_MAP_START( ninjakun_cpu1_map, AS_PROGRAM, 8, nova2001_state )
AM_RANGE(0xe400, 0xe7ff) AM_RAM AM_SHARE("share2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ninjakun_cpu2_map, AS_PROGRAM, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::ninjakun_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x7fff) AM_ROM AM_REGION("maincpu", 0x2000)
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
@@ -237,7 +237,7 @@ static ADDRESS_MAP_START( ninjakun_cpu2_map, AS_PROGRAM, 8, nova2001_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pkunwar_map, AS_PROGRAM, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::pkunwar_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(nova2001_bg_videoram_w) AM_SHARE("bg_videoram")
@@ -249,13 +249,13 @@ static ADDRESS_MAP_START( pkunwar_map, AS_PROGRAM, 8, nova2001_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pkunwar_io, AS_IO, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::pkunwar_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(pkunwar_flipscreen_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raiders5_cpu1_map, AS_PROGRAM, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::raiders5_cpu1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE("fg_videoram")
@@ -271,7 +271,7 @@ static ADDRESS_MAP_START( raiders5_cpu1_map, AS_PROGRAM, 8, nova2001_state )
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raiders5_cpu2_map, AS_PROGRAM, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::raiders5_cpu2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x8001, 0x8001) AM_DEVREAD("ay1", ay8910_device, data_r)
@@ -287,7 +287,7 @@ static ADDRESS_MAP_START( raiders5_cpu2_map, AS_PROGRAM, 8, nova2001_state )
AM_RANGE(0xe002, 0xe002) AM_WRITE(pkunwar_flipscreen_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raiders5_io, AS_IO, 8, nova2001_state )
+ADDRESS_MAP_START(nova2001_state::raiders5_io)
AM_RANGE(0x00, 0x00) AM_READNOP /* unknown */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/novag6502.cpp b/src/mame/drivers/novag6502.cpp
index 40f010f33ba..06b5ab75827 100644
--- a/src/mame/drivers/novag6502.cpp
+++ b/src/mame/drivers/novag6502.cpp
@@ -118,6 +118,10 @@ public:
DECLARE_WRITE8_MEMBER(sforte_lcd_control_w);
DECLARE_WRITE8_MEMBER(sforte_lcd_data_w);
void sforte(machine_config &config);
+ void cforte_map(address_map &map);
+ void sexpert_map(address_map &map);
+ void sforte_map(address_map &map);
+ void supercon_map(address_map &map);
};
@@ -502,7 +506,7 @@ WRITE8_MEMBER(novag6502_state::sforte_lcd_data_w)
// Super Constellation / Constellation Forte
-static ADDRESS_MAP_START( supercon_map, AS_PROGRAM, 8, novag6502_state )
+ADDRESS_MAP_START(novag6502_state::supercon_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x1c00, 0x1c00) AM_WRITENOP // printer/clock?
AM_RANGE(0x1d00, 0x1d00) AM_WRITENOP // printer/clock?
@@ -511,7 +515,7 @@ static ADDRESS_MAP_START( supercon_map, AS_PROGRAM, 8, novag6502_state )
AM_RANGE(0x2000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cforte_map, AS_PROGRAM, 8, novag6502_state )
+ADDRESS_MAP_START(novag6502_state::cforte_map)
AM_IMPORT_FROM( supercon_map )
AM_RANGE(0x1e00, 0x1e00) AM_READWRITE(supercon_input2_r, cforte_mux_w)
AM_RANGE(0x1f00, 0x1f00) AM_READWRITE(supercon_input1_r, cforte_control_w)
@@ -520,7 +524,7 @@ ADDRESS_MAP_END
// Super Expert / Super Forte
-static ADDRESS_MAP_START( sforte_map, AS_PROGRAM, 8, novag6502_state )
+ADDRESS_MAP_START(novag6502_state::sforte_map)
AM_RANGE(0x0000, 0x1fef) AM_RAM AM_SHARE("nvram") // 8KB RAM, but RAM CE pin is deactivated on $1ff0-$1fff
AM_RANGE(0x1ff0, 0x1ff0) AM_READ(sexpert_input1_r)
AM_RANGE(0x1ff1, 0x1ff1) AM_READ(sexpert_input2_r)
@@ -533,7 +537,7 @@ static ADDRESS_MAP_START( sforte_map, AS_PROGRAM, 8, novag6502_state )
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sexpert_map, AS_PROGRAM, 8, novag6502_state )
+ADDRESS_MAP_START(novag6502_state::sexpert_map)
AM_IMPORT_FROM( sforte_map )
AM_RANGE(0x1ff4, 0x1ff4) AM_WRITE(sexpert_leds_w)
AM_RANGE(0x1ff5, 0x1ff5) AM_WRITE(sexpert_mux_w)
diff --git a/src/mame/drivers/novag68k.cpp b/src/mame/drivers/novag68k.cpp
index 03af1f6bea1..537b882c7bb 100644
--- a/src/mame/drivers/novag68k.cpp
+++ b/src/mame/drivers/novag68k.cpp
@@ -51,6 +51,7 @@ public:
DECLARE_READ8_MEMBER(diablo68k_input1_r);
DECLARE_READ8_MEMBER(diablo68k_input2_r);
void diablo68k(machine_config &config);
+ void diablo68k_map(address_map &map);
};
@@ -111,7 +112,7 @@ READ8_MEMBER(novag68k_state::diablo68k_input2_r)
// Diablo 68000
-static ADDRESS_MAP_START( diablo68k_map, AS_PROGRAM, 16, novag68k_state )
+ADDRESS_MAP_START(novag68k_state::diablo68k_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x280000, 0x28ffff) AM_RAM
diff --git a/src/mame/drivers/novagf8.cpp b/src/mame/drivers/novagf8.cpp
index 17425bf2705..b3cdfc47e44 100644
--- a/src/mame/drivers/novagf8.cpp
+++ b/src/mame/drivers/novagf8.cpp
@@ -47,6 +47,8 @@ public:
DECLARE_READ8_MEMBER(delta1_io1_r);
void delta1(machine_config &config);
+ void delta1_io(address_map &map);
+ void delta1_map(address_map &map);
protected:
virtual void machine_start() override;
};
@@ -117,13 +119,13 @@ READ8_MEMBER(novagf8_state::delta1_io1_r)
// Delta-1
-static ADDRESS_MAP_START( delta1_map, AS_PROGRAM, 8, novagf8_state )
+ADDRESS_MAP_START(novagf8_state::delta1_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM // _A13
AM_RANGE(0x2000, 0x20ff) AM_MIRROR(0x1f00) AM_RAM // A13
ADDRESS_MAP_END
-static ADDRESS_MAP_START( delta1_io, AS_IO, 8, novagf8_state )
+ADDRESS_MAP_START(novagf8_state::delta1_io)
AM_RANGE(0x0, 0x0) AM_READWRITE(delta1_io0_r, delta1_io0_w )
AM_RANGE(0x1, 0x1) AM_READWRITE(delta1_io1_r, delta1_io1_w )
AM_RANGE(0xc, 0xf) AM_DEVREADWRITE("f3853", f3853_device, read, write )
diff --git a/src/mame/drivers/nsg6809.cpp b/src/mame/drivers/nsg6809.cpp
index b5a740a3197..7cfc0700af6 100644
--- a/src/mame/drivers/nsg6809.cpp
+++ b/src/mame/drivers/nsg6809.cpp
@@ -50,10 +50,11 @@ public:
required_device<cpu_device> m_maincpu;
void pitchhit(machine_config &config);
+ void main_map(address_map &map);
};
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, nsg6809_state )
+ADDRESS_MAP_START(nsg6809_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2800, 0x280f) AM_DEVREADWRITE("via", via6522_device, read, write)
AM_RANGE(0x3000, 0x3003) AM_DEVREADWRITE("acia", mos6551_device, read, write)
diff --git a/src/mame/drivers/nsm.cpp b/src/mame/drivers/nsm.cpp
index 66cb4101043..542262ce1b6 100644
--- a/src/mame/drivers/nsm.cpp
+++ b/src/mame/drivers/nsm.cpp
@@ -39,6 +39,8 @@ public:
DECLARE_WRITE8_MEMBER(cru_w);
DECLARE_WRITE8_MEMBER(oe_w);
void nsm(machine_config &config);
+ void nsm_io_map(address_map &map);
+ void nsm_map(address_map &map);
protected:
// devices
@@ -51,14 +53,14 @@ private:
uint8_t m_cru_count;
};
-static ADDRESS_MAP_START( nsm_map, AS_PROGRAM, 8, nsm_state )
+ADDRESS_MAP_START(nsm_state::nsm_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xefff) AM_RAM
AM_RANGE(0xffec, 0xffed) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0xffee, 0xffef) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nsm_io_map, AS_IO, 8, nsm_state )
+ADDRESS_MAP_START(nsm_state::nsm_io_map)
// 00-71 selected by IC600 (74LS151)
AM_RANGE(0x0000, 0x0001) AM_READ(ff_r) // 5v supply
AM_RANGE(0x0010, 0x0011) AM_READNOP // antenna
diff --git a/src/mame/drivers/nsmpoker.cpp b/src/mame/drivers/nsmpoker.cpp
index 66f520b9ac5..45646430fff 100644
--- a/src/mame/drivers/nsmpoker.cpp
+++ b/src/mame/drivers/nsmpoker.cpp
@@ -92,6 +92,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void nsmpoker(machine_config &config);
+ void nsmpoker_map(address_map &map);
+ void nsmpoker_portmap(address_map &map);
};
@@ -175,7 +177,7 @@ READ8_MEMBER(nsmpoker_state::debug_r)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( nsmpoker_map, AS_PROGRAM, 8, nsmpoker_state )
+ADDRESS_MAP_START(nsmpoker_state::nsmpoker_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x9000, 0xafff) AM_RAM // OK... cleared at beginning.
AM_RANGE(0xb000, 0xcfff) AM_ROM // WRONG... just to map the last rom somewhere.
@@ -183,7 +185,7 @@ static ADDRESS_MAP_START( nsmpoker_map, AS_PROGRAM, 8, nsmpoker_state )
AM_RANGE(0xf000, 0xffff) AM_RAM_WRITE(nsmpoker_colorram_w) AM_SHARE("colorram") // WRONG... just a placeholder.
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nsmpoker_portmap, AS_IO, 8, nsmpoker_state )
+ADDRESS_MAP_START(nsmpoker_state::nsmpoker_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_READ(debug_r) // kind of trap at beginning
ADDRESS_MAP_END
diff --git a/src/mame/drivers/nss.cpp b/src/mame/drivers/nss.cpp
index a10011b4d15..fd6fdc01de8 100644
--- a/src/mame/drivers/nss.cpp
+++ b/src/mame/drivers/nss.cpp
@@ -351,6 +351,10 @@ public:
DECLARE_READ8_MEMBER(spc_ram_100_r);
DECLARE_WRITE8_MEMBER(spc_ram_100_w);
void nss(machine_config &config);
+ void bios_io_map(address_map &map);
+ void bios_map(address_map &map);
+ void snes_map(address_map &map);
+ void spc_mem(address_map &map);
};
@@ -363,7 +367,7 @@ uint32_t nss_state::screen_update( screen_device &screen, bitmap_rgb32 &bitmap,
-static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8, nss_state )
+ADDRESS_MAP_START(nss_state::snes_map)
AM_RANGE(0x000000, 0x7dffff) AM_READWRITE(snes_r_bank1, snes_w_bank1)
AM_RANGE(0x7e0000, 0x7fffff) AM_RAM /* 8KB Low RAM, 24KB High RAM, 96KB Expanded RAM */
AM_RANGE(0x800000, 0xffffff) AM_READWRITE(snes_r_bank2, snes_w_bank2) /* Mirror and ROM */
@@ -379,7 +383,7 @@ WRITE8_MEMBER(nss_state::spc_ram_100_w)
m_spc700->spc_ram_w(space, offset + 0x100, data);
}
-static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8, nss_state )
+ADDRESS_MAP_START(nss_state::spc_mem)
AM_RANGE(0x0000, 0x00ef) AM_DEVREADWRITE("spc700", snes_sound_device, spc_ram_r, spc_ram_w) /* lower 32k ram */
AM_RANGE(0x00f0, 0x00ff) AM_DEVREADWRITE("spc700", snes_sound_device, spc_io_r, spc_io_w) /* spc io */
AM_RANGE(0x0100, 0xffff) AM_READWRITE(spc_ram_100_r, spc_ram_100_w)
@@ -502,7 +506,7 @@ WRITE8_MEMBER(nss_state::nss_prot_w)
}
-static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8, nss_state )
+ADDRESS_MAP_START(nss_state::bios_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9fff) AM_READWRITE(ram_wp_r,ram_wp_w)
@@ -619,7 +623,7 @@ WRITE8_MEMBER(nss_state::port_07_w)
m_joy_flag = 1;
}
-static ADDRESS_MAP_START( bios_io_map, AS_IO, 8, nss_state )
+ADDRESS_MAP_START(nss_state::bios_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_READ(port_00_r) AM_WRITE(port_00_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("FP") AM_WRITE(port_01_w)
diff --git a/src/mame/drivers/nwk-tr.cpp b/src/mame/drivers/nwk-tr.cpp
index 412595d893e..0178fb35dbc 100644
--- a/src/mame/drivers/nwk-tr.cpp
+++ b/src/mame/drivers/nwk-tr.cpp
@@ -340,6 +340,10 @@ public:
void lanc2_init();
void thrilld(machine_config &config);
void nwktr(machine_config &config);
+ void nwktr_map(address_map &map);
+ void sharc0_map(address_map &map);
+ void sharc1_map(address_map &map);
+ void sound_memmap(address_map &map);
};
@@ -653,7 +657,7 @@ void nwktr_state::machine_start()
m_sound_irq_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(nwktr_state::sound_irq), this));
}
-static ADDRESS_MAP_START( nwktr_map, AS_PROGRAM, 32, nwktr_state )
+ADDRESS_MAP_START(nwktr_state::nwktr_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("work_ram") /* Work RAM */
AM_RANGE(0x74000000, 0x740000ff) AM_DEVREADWRITE("k001604", k001604_device, reg_r, reg_w)
AM_RANGE(0x74010000, 0x74017fff) AM_RAM_WRITE(paletteram32_w) AM_SHARE("paletteram")
@@ -674,7 +678,7 @@ ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, nwktr_state )
+ADDRESS_MAP_START(nwktr_state::sound_memmap)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x200fff) AM_DEVREADWRITE("rfsnd", rf5c400_device, rf5c400_r, rf5c400_w) /* Ricoh RF5C400 */
@@ -706,7 +710,7 @@ WRITE32_MEMBER(nwktr_state::dsp_dataram1_w)
m_sharc1_dataram[offset] = data;
}
-static ADDRESS_MAP_START( sharc0_map, AS_DATA, 32, nwktr_state )
+ADDRESS_MAP_START(nwktr_state::sharc0_map)
AM_RANGE(0x0400000, 0x041ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w)
AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram0_r, dsp_dataram0_w)
AM_RANGE(0x1400000, 0x14fffff) AM_RAM
@@ -716,7 +720,7 @@ static ADDRESS_MAP_START( sharc0_map, AS_DATA, 32, nwktr_state )
AM_RANGE(0x3600000, 0x37fffff) AM_ROMBANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sharc1_map, AS_DATA, 32, nwktr_state)
+ADDRESS_MAP_START(nwktr_state::sharc1_map)
AM_RANGE(0x0400000, 0x041ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_1_shared_sharc_r, cgboard_1_shared_sharc_w)
AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram1_r, dsp_dataram1_w)
AM_RANGE(0x1400000, 0x14fffff) AM_RAM
diff --git a/src/mame/drivers/nycaptor.cpp b/src/mame/drivers/nycaptor.cpp
index db2e673509a..ca128d93d50 100644
--- a/src/mame/drivers/nycaptor.cpp
+++ b/src/mame/drivers/nycaptor.cpp
@@ -281,7 +281,7 @@ WRITE8_MEMBER(nycaptor_state::nycaptor_generic_control_w)
membank("bank1")->set_entry((data&0x08)>>3);
}
-static ADDRESS_MAP_START( nycaptor_master_map, AS_PROGRAM, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::nycaptor_master_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nycaptor_videoram_w) AM_SHARE("videoram")
@@ -307,7 +307,7 @@ static ADDRESS_MAP_START( nycaptor_master_map, AS_PROGRAM, 8, nycaptor_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nycaptor_slave_map, AS_PROGRAM, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::nycaptor_slave_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nycaptor_videoram_w) AM_SHARE("videoram")
AM_RANGE(0xd800, 0xd800) AM_READ_PORT("DSWA")
@@ -326,7 +326,7 @@ static ADDRESS_MAP_START( nycaptor_slave_map, AS_PROGRAM, 8, nycaptor_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
@@ -376,7 +376,7 @@ WRITE8_MEMBER(nycaptor_state::cyclshtg_generic_control_w)
}
-static ADDRESS_MAP_START( cyclshtg_master_map, AS_PROGRAM, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::cyclshtg_master_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(nycaptor_videoram_w) AM_SHARE("videoram")
@@ -401,7 +401,7 @@ static ADDRESS_MAP_START( cyclshtg_master_map, AS_PROGRAM, 8, nycaptor_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cyclshtg_slave_map, AS_PROGRAM, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::cyclshtg_slave_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(nycaptor_videoram_w) AM_SHARE("videoram")
AM_RANGE(0xd800, 0xd800) AM_READ_PORT("DSWA")
@@ -425,7 +425,7 @@ READ8_MEMBER(nycaptor_state::unk_r)
return machine().rand();
}
-static ADDRESS_MAP_START( bronx_master_map, AS_PROGRAM, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::bronx_master_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(nycaptor_videoram_w) AM_SHARE("videoram")
@@ -450,7 +450,7 @@ static ADDRESS_MAP_START( bronx_master_map, AS_PROGRAM, 8, nycaptor_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bronx_slave_map, AS_PROGRAM, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::bronx_slave_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(nycaptor_videoram_w) AM_SHARE("videoram")
AM_RANGE(0xd800, 0xd800) AM_READ_PORT("DSWA")
@@ -470,7 +470,7 @@ static ADDRESS_MAP_START( bronx_slave_map, AS_PROGRAM, 8, nycaptor_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bronx_slave_io_map, AS_IO, 8, nycaptor_state )
+ADDRESS_MAP_START(nycaptor_state::bronx_slave_io_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/nyny.cpp b/src/mame/drivers/nyny.cpp
index 69e8fc0d2a7..af5253116b1 100644
--- a/src/mame/drivers/nyny.cpp
+++ b/src/mame/drivers/nyny.cpp
@@ -158,6 +158,9 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
MC6845_END_UPDATE(crtc_end_update);
void nyny(machine_config &config);
+ void nyny_audio_1_map(address_map &map);
+ void nyny_audio_2_map(address_map &map);
+ void nyny_main_map(address_map &map);
};
@@ -423,7 +426,7 @@ WRITE8_MEMBER(nyny_state::nyny_pia_1_2_w)
}
-static ADDRESS_MAP_START( nyny_main_map, AS_PROGRAM, 8, nyny_state )
+ADDRESS_MAP_START(nyny_state::nyny_main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("videoram1")
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("colorram1")
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("videoram2")
@@ -441,7 +444,7 @@ static ADDRESS_MAP_START( nyny_main_map, AS_PROGRAM, 8, nyny_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nyny_audio_1_map, AS_PROGRAM, 8, nyny_state )
+ADDRESS_MAP_START(nyny_state::nyny_audio_1_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0x0080, 0x0fff) AM_NOP
@@ -458,7 +461,7 @@ static ADDRESS_MAP_START( nyny_audio_1_map, AS_PROGRAM, 8, nyny_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nyny_audio_2_map, AS_PROGRAM, 8, nyny_state )
+ADDRESS_MAP_START(nyny_state::nyny_audio_2_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0x0080, 0x0fff) AM_NOP
diff --git a/src/mame/drivers/ob68k1a.cpp b/src/mame/drivers/ob68k1a.cpp
index 2e7fc15f172..28a2d92527c 100644
--- a/src/mame/drivers/ob68k1a.cpp
+++ b/src/mame/drivers/ob68k1a.cpp
@@ -117,7 +117,7 @@ WRITE8_MEMBER( ob68k1a_state::pia_w )
// ADDRESS_MAP( ob68k1a_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( ob68k1a_mem, AS_PROGRAM, 16, ob68k1a_state )
+ADDRESS_MAP_START(ob68k1a_state::ob68k1a_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x01ffff) AM_RAM
AM_RANGE(0xfe0000, 0xfeffff) AM_ROM AM_REGION(MC68000L10_TAG, 0)
diff --git a/src/mame/drivers/octopus.cpp b/src/mame/drivers/octopus.cpp
index a5d2e1eafe5..93b55c0fdad 100644
--- a/src/mame/drivers/octopus.cpp
+++ b/src/mame/drivers/octopus.cpp
@@ -225,6 +225,11 @@ public:
};
void octopus(machine_config &config);
+ void octopus_io(address_map &map);
+ void octopus_mem(address_map &map);
+ void octopus_sub_io(address_map &map);
+ void octopus_sub_mem(address_map &map);
+ void octopus_vram(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -280,7 +285,7 @@ private:
};
-static ADDRESS_MAP_START( octopus_mem, AS_PROGRAM, 8, octopus_state )
+ADDRESS_MAP_START(octopus_state::octopus_mem)
AM_RANGE(0x00000, 0xcffff) AM_RAMBANK("main_ram_bank")
AM_RANGE(0xd0000, 0xdffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0xe0000, 0xe3fff) AM_NOP
@@ -290,7 +295,7 @@ static ADDRESS_MAP_START( octopus_mem, AS_PROGRAM, 8, octopus_state )
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( octopus_io, AS_IO, 8, octopus_state )
+ADDRESS_MAP_START(octopus_state::octopus_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE("dma1", am9517a_device, read, write)
AM_RANGE(0x10, 0x1f) AM_DEVREADWRITE("dma2", am9517a_device, read, write)
@@ -318,16 +323,16 @@ static ADDRESS_MAP_START( octopus_io, AS_IO, 8, octopus_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( octopus_sub_mem, AS_PROGRAM, 8, octopus_state )
+ADDRESS_MAP_START(octopus_state::octopus_sub_mem)
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE("z80_bank", address_map_bank_device, read8, write8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( octopus_sub_io, AS_IO, 8, octopus_state )
+ADDRESS_MAP_START(octopus_state::octopus_sub_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(z80_io_r, z80_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( octopus_vram, 0, 8, octopus_state )
+ADDRESS_MAP_START(octopus_state::octopus_vram)
AM_RANGE(0x0000,0xffff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/odyssey.cpp b/src/mame/drivers/odyssey.cpp
index abcf2476e32..da68746f3b3 100644
--- a/src/mame/drivers/odyssey.cpp
+++ b/src/mame/drivers/odyssey.cpp
@@ -84,6 +84,7 @@ public:
virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void odyssey(machine_config &config);
+ void odyssey_map(address_map &map);
};
void odyssey_state::video_start()
@@ -100,7 +101,7 @@ uint32_t odyssey_state::screen_update(screen_device &screen, bitmap_rgb32 &bitma
* Memory Map *
**************************************/
-static ADDRESS_MAP_START( odyssey_map, AS_PROGRAM, 32, odyssey_state )
+ADDRESS_MAP_START(odyssey_state::odyssey_map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/odyssey2.cpp b/src/mame/drivers/odyssey2.cpp
index 455424bb47f..b63eafdcd3d 100644
--- a/src/mame/drivers/odyssey2.cpp
+++ b/src/mame/drivers/odyssey2.cpp
@@ -64,6 +64,8 @@ public:
void odyssey2_cartslot(machine_config &config);
void videopac(machine_config &config);
void odyssey2(machine_config &config);
+ void odyssey2_io(address_map &map);
+ void odyssey2_mem(address_map &map);
protected:
/* constants */
static const uint8_t P1_BANK_LO_BIT = 0x01;
@@ -102,25 +104,26 @@ public:
void g7400(machine_config &config);
void odyssey3(machine_config &config);
+ void g7400_io(address_map &map);
protected:
uint8_t m_ic674_decode[8];
uint8_t m_ic678_decode[8];
};
-static ADDRESS_MAP_START( odyssey2_mem , AS_PROGRAM, 8, odyssey2_state )
+ADDRESS_MAP_START(odyssey2_state::odyssey2_mem)
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x0400, 0x0bff) AM_DEVREAD("cartslot", o2_cart_slot_device, read_rom04)
AM_RANGE(0x0c00, 0x0fff) AM_DEVREAD("cartslot", o2_cart_slot_device, read_rom0c)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( odyssey2_io , AS_IO, 8, odyssey2_state )
+ADDRESS_MAP_START(odyssey2_state::odyssey2_io)
AM_RANGE(0x00, 0xff) AM_READWRITE(io_read, io_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( g7400_io , AS_IO, 8, g7400_state )
+ADDRESS_MAP_START(g7400_state::g7400_io)
AM_RANGE(0x00, 0xff) AM_READWRITE(io_read, io_write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/offtwall.cpp b/src/mame/drivers/offtwall.cpp
index 8fc587e0eee..22ed1fdcb50 100644
--- a/src/mame/drivers/offtwall.cpp
+++ b/src/mame/drivers/offtwall.cpp
@@ -235,7 +235,7 @@ READ16_MEMBER(offtwall_state::unknown_verify_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, offtwall_state )
+ADDRESS_MAP_START(offtwall_state::main_map)
AM_RANGE(0x000000, 0x037fff) AM_ROM
AM_RANGE(0x038000, 0x03ffff) AM_READ(bankrom_r) AM_REGION("maincpu", 0x38000) AM_SHARE("bankrom_base")
AM_RANGE(0x120000, 0x120fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/ohmygod.cpp b/src/mame/drivers/ohmygod.cpp
index 725f98cff9f..4f097d864de 100644
--- a/src/mame/drivers/ohmygod.cpp
+++ b/src/mame/drivers/ohmygod.cpp
@@ -41,7 +41,7 @@ WRITE16_MEMBER(ohmygod_state::ohmygod_ctrl_w)
}
}
-static ADDRESS_MAP_START( ohmygod_map, AS_PROGRAM, 16, ohmygod_state )
+ADDRESS_MAP_START(ohmygod_state::ohmygod_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x300000, 0x303fff) AM_RAM
AM_RANGE(0x304000, 0x307fff) AM_RAM_WRITE(ohmygod_videoram_w) AM_SHARE("videoram")
@@ -62,7 +62,7 @@ static ADDRESS_MAP_START( ohmygod_map, AS_PROGRAM, 16, ohmygod_state )
AM_RANGE(0xd00000, 0xd00001) AM_WRITE(ohmygod_spritebank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, ohmygod_state )
+ADDRESS_MAP_START(ohmygod_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ojankohs.cpp b/src/mame/drivers/ojankohs.cpp
index 7dd199abe5a..41cc40f0154 100644
--- a/src/mame/drivers/ojankohs.cpp
+++ b/src/mame/drivers/ojankohs.cpp
@@ -96,7 +96,7 @@ WRITE8_MEMBER(ojankohs_state::ojankoc_ctrl_w)
}
-static ADDRESS_MAP_START( ojankohs_map, AS_PROGRAM, 8, ojankohs_state )
+ADDRESS_MAP_START(ojankohs_state::ojankohs_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(ojankohs_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9000, 0x9fff) AM_RAM_WRITE(ojankohs_colorram_w) AM_SHARE("colorram")
@@ -106,7 +106,7 @@ static ADDRESS_MAP_START( ojankohs_map, AS_PROGRAM, 8, ojankohs_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ojankoy_map, AS_PROGRAM, 8, ojankohs_state )
+ADDRESS_MAP_START(ojankohs_state::ojankoy_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM_WRITE(ojankohs_videoram_w) AM_SHARE("videoram")
AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(ojankohs_colorram_w) AM_SHARE("colorram")
@@ -115,14 +115,14 @@ static ADDRESS_MAP_START( ojankoy_map, AS_PROGRAM, 8, ojankohs_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ojankoc_map, AS_PROGRAM, 8, ojankohs_state )
+ADDRESS_MAP_START(ojankohs_state::ojankoc_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_WRITE(ojankoc_videoram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ojankohs_io_map, AS_IO, 8, ojankohs_state )
+ADDRESS_MAP_START(ojankohs_state::ojankohs_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("system") AM_WRITE(port_select_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(keymatrix_p1_r, ojankohs_rombank_w)
@@ -135,7 +135,7 @@ static ADDRESS_MAP_START( ojankohs_io_map, AS_IO, 8, ojankohs_state )
AM_RANGE(0x10, 0x11) AM_DEVWRITE("gga", vsystem_gga_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ojankoy_io_map, AS_IO, 8, ojankohs_state )
+ADDRESS_MAP_START(ojankohs_state::ojankoy_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("system") AM_WRITE(port_select_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(keymatrix_p1_r, ojankoy_rombank_w)
@@ -146,7 +146,7 @@ static ADDRESS_MAP_START( ojankoy_io_map, AS_IO, 8, ojankohs_state )
AM_RANGE(0x06, 0x07) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ccasino_io_map, AS_IO, 8, ojankohs_state )
+ADDRESS_MAP_START(ojankohs_state::ccasino_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("system") AM_WRITE(port_select_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(keymatrix_p1_r, ojankohs_rombank_w)
@@ -160,7 +160,7 @@ static ADDRESS_MAP_START( ccasino_io_map, AS_IO, 8, ojankohs_state )
AM_RANGE(0x10, 0x11) AM_DEVWRITE("gga", vsystem_gga_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ojankoc_io_map, AS_IO, 8, ojankohs_state )
+ADDRESS_MAP_START(ojankohs_state::ojankoc_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x1f) AM_WRITE(ojankoc_palette_w)
AM_RANGE(0xf9, 0xf9) AM_WRITE(ojankohs_msm5205_w)
diff --git a/src/mame/drivers/okean240.cpp b/src/mame/drivers/okean240.cpp
index 28ba7907d26..14047ca11bd 100644
--- a/src/mame/drivers/okean240.cpp
+++ b/src/mame/drivers/okean240.cpp
@@ -97,6 +97,10 @@ public:
void okean240a(machine_config &config);
void okean240t(machine_config &config);
void okean240(machine_config &config);
+ void okean240_io(address_map &map);
+ void okean240_mem(address_map &map);
+ void okean240a_io(address_map &map);
+ void okean240t_io(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -215,7 +219,7 @@ WRITE8_MEMBER(okean240_state::scroll_w)
m_scroll = data;
}
-static ADDRESS_MAP_START(okean240_mem, AS_PROGRAM, 8, okean240_state)
+ADDRESS_MAP_START(okean240_state::okean240_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("boot")
AM_RANGE(0x0800, 0x3fff) AM_RAM
@@ -224,7 +228,7 @@ static ADDRESS_MAP_START(okean240_mem, AS_PROGRAM, 8, okean240_state)
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(okean240_io, AS_IO, 8, okean240_state)
+ADDRESS_MAP_START(okean240_state::okean240_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x43) AM_DEVREADWRITE("ppikbd", i8255_device, read, write)
AM_RANGE(0x60, 0x63) AM_DEVREADWRITE("pit", pit8253_device, read, write)
@@ -236,7 +240,7 @@ static ADDRESS_MAP_START(okean240_io, AS_IO, 8, okean240_state)
AM_RANGE(0xe0, 0xe3) AM_DEVREADWRITE("ppie", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(okean240a_io, AS_IO, 8, okean240_state)
+ADDRESS_MAP_START(okean240_state::okean240a_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x43) AM_DEVREADWRITE("ppikbd", i8255_device, read, write)
AM_RANGE(0x60, 0x63) AM_DEVREADWRITE("pit", pit8253_device, read, write)
@@ -258,7 +262,7 @@ static ADDRESS_MAP_START(okean240a_io, AS_IO, 8, okean240_state)
// AM_RANGE(0xe0, 0xff)=ppaE0.data
ADDRESS_MAP_END
-static ADDRESS_MAP_START(okean240t_io, AS_IO, 8, okean240_state)
+ADDRESS_MAP_START(okean240_state::okean240t_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x20, 0x23) AM_WRITENOP
AM_RANGE(0x40, 0x43) AM_DEVREADWRITE("ppikbd", i8255_device, read, write)
diff --git a/src/mame/drivers/olibochu.cpp b/src/mame/drivers/olibochu.cpp
index 98fdb92340f..64c3d3d7159 100644
--- a/src/mame/drivers/olibochu.cpp
+++ b/src/mame/drivers/olibochu.cpp
@@ -105,6 +105,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(olibochu_scanline);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void olibochu(machine_config &config);
+ void olibochu_map(address_map &map);
+ void olibochu_sound_map(address_map &map);
};
@@ -268,7 +270,7 @@ WRITE8_MEMBER(olibochu_state::sound_command_w)
}
-static ADDRESS_MAP_START( olibochu_map, AS_PROGRAM, 8, olibochu_state )
+ADDRESS_MAP_START(olibochu_state::olibochu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(olibochu_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(olibochu_colorram_w) AM_SHARE("colorram")
@@ -287,7 +289,7 @@ static ADDRESS_MAP_START( olibochu_map, AS_PROGRAM, 8, olibochu_state )
AM_RANGE(0xf440, 0xf47f) AM_RAM AM_SHARE("spriteram2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( olibochu_sound_map, AS_PROGRAM, 8, olibochu_state )
+ADDRESS_MAP_START(olibochu_state::olibochu_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM
AM_RANGE(0x7000, 0x7000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) /* likely ay8910 input port, not direct */
diff --git a/src/mame/drivers/olyboss.cpp b/src/mame/drivers/olyboss.cpp
index 797ff6597fe..9ed88c75ee4 100644
--- a/src/mame/drivers/olyboss.cpp
+++ b/src/mame/drivers/olyboss.cpp
@@ -71,6 +71,8 @@ public:
DECLARE_READ8_MEMBER( dma_mem_r );
void olybossd(machine_config &config);
+ void olyboss_io(address_map &map);
+ void olyboss_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
@@ -89,14 +91,14 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START(olyboss_mem, AS_PROGRAM, 8, olyboss_state)
+ADDRESS_MAP_START(olyboss_state::olyboss_mem)
AM_RANGE(0x0000, 0x7ff ) AM_ROM AM_REGION("mainrom", 0)
AM_RANGE(0x800, 0xbffd) AM_RAM
AM_RANGE(0xbffe, 0xbfff) AM_READ(keyboard_read)
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(olyboss_io, AS_IO, 8, olyboss_state)
+ADDRESS_MAP_START(olyboss_state::olyboss_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0, 0x8) AM_DEVREADWRITE(I8257_TAG, i8257_device, read, write)
diff --git a/src/mame/drivers/omegrace.cpp b/src/mame/drivers/omegrace.cpp
index 108878f91d8..803f9afc576 100644
--- a/src/mame/drivers/omegrace.cpp
+++ b/src/mame/drivers/omegrace.cpp
@@ -251,6 +251,10 @@ public:
DECLARE_DRIVER_INIT(omegrace);
virtual void machine_reset() override;
void omegrace(machine_config &config);
+ void main_map(address_map &map);
+ void port_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_port(address_map &map);
};
@@ -356,7 +360,7 @@ WRITE8_MEMBER(omegrace_state::omegrace_soundlatch_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, omegrace_state )
+ADDRESS_MAP_START(omegrace_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4bff) AM_RAM
AM_RANGE(0x5c00, 0x5cff) AM_RAM AM_SHARE("nvram") /* NVRAM */
@@ -365,7 +369,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, omegrace_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map, AS_IO, 8, omegrace_state )
+ADDRESS_MAP_START(omegrace_state::port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x08) AM_READ(omegrace_vg_go_r)
AM_RANGE(0x09, 0x09) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
@@ -388,13 +392,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, omegrace_state )
+ADDRESS_MAP_START(omegrace_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_MIRROR(0x800)
AM_RANGE(0x1000, 0x13ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port, AS_IO, 8, omegrace_state )
+ADDRESS_MAP_START(omegrace_state::sound_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read) // the game reads from ay1 port b, but ay8912 only has port a
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8912_device, address_data_w)
diff --git a/src/mame/drivers/ondra.cpp b/src/mame/drivers/ondra.cpp
index e68c922df41..d2793f1429a 100644
--- a/src/mame/drivers/ondra.cpp
+++ b/src/mame/drivers/ondra.cpp
@@ -22,13 +22,13 @@
/* Address maps */
-static ADDRESS_MAP_START(ondra_mem, AS_PROGRAM, 8, ondra_state )
+ADDRESS_MAP_START(ondra_state::ondra_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0xdfff) AM_RAMBANK("bank2")
AM_RANGE(0xe000, 0xffff) AM_RAMBANK("bank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ondra_io, AS_IO, 8, ondra_state )
+ADDRESS_MAP_START(ondra_state::ondra_io)
ADDRESS_MAP_GLOBAL_MASK(0x0b)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x03, 0x03) AM_WRITE(ondra_port_03_w)
diff --git a/src/mame/drivers/oneshot.cpp b/src/mame/drivers/oneshot.cpp
index 1669b8e9e8b..4dabf63ff1d 100644
--- a/src/mame/drivers/oneshot.cpp
+++ b/src/mame/drivers/oneshot.cpp
@@ -109,7 +109,7 @@ WRITE16_MEMBER(oneshot_state::soundbank_w)
-static ADDRESS_MAP_START( oneshot_map, AS_PROGRAM, 16, oneshot_state )
+ADDRESS_MAP_START(oneshot_state::oneshot_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x087fff) AM_RAM
AM_RANGE(0x0c0000, 0x0c07ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -132,7 +132,7 @@ static ADDRESS_MAP_START( oneshot_map, AS_PROGRAM, 16, oneshot_state )
AM_RANGE(0x19c034, 0x19c035) AM_READ_PORT("P2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oneshot_sound_map, AS_PROGRAM, 8, oneshot_state )
+ADDRESS_MAP_START(oneshot_state::oneshot_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, write)
AM_RANGE(0x8001, 0x87ff) AM_RAM
diff --git a/src/mame/drivers/onetwo.cpp b/src/mame/drivers/onetwo.cpp
index b037f1f41af..c838830babe 100644
--- a/src/mame/drivers/onetwo.cpp
+++ b/src/mame/drivers/onetwo.cpp
@@ -94,6 +94,10 @@ public:
uint32_t screen_update_onetwo(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void set_color(int offset);
void onetwo(machine_config &config);
+ void main_cpu(address_map &map);
+ void main_cpu_io(address_map &map);
+ void sound_cpu(address_map &map);
+ void sound_cpu_io(address_map &map);
};
@@ -177,7 +181,7 @@ WRITE8_MEMBER(onetwo_state::palette2_w)
*
*************************************/
-static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, onetwo_state )
+ADDRESS_MAP_START(onetwo_state::main_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0x10000)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc800, 0xc87f) AM_RAM_WRITE(palette1_w) AM_SHARE("paletteram")
@@ -186,7 +190,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, onetwo_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_cpu_io, AS_IO, 8, onetwo_state )
+ADDRESS_MAP_START(onetwo_state::main_cpu_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_WRITE(onetwo_coin_counters_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -195,13 +199,13 @@ static ADDRESS_MAP_START( main_cpu_io, AS_IO, 8, onetwo_state )
AM_RANGE(0x04, 0x04) AM_READ_PORT("SYSTEM")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, onetwo_state )
+ADDRESS_MAP_START(onetwo_state::sound_cpu)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu_io, AS_IO, 8, onetwo_state )
+ADDRESS_MAP_START(onetwo_state::sound_cpu_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_device, status_port_r, control_port_w)
AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_device, write_port_w)
diff --git a/src/mame/drivers/onyx.cpp b/src/mame/drivers/onyx.cpp
index 158a0809054..c8d3af9c5b4 100644
--- a/src/mame/drivers/onyx.cpp
+++ b/src/mame/drivers/onyx.cpp
@@ -51,14 +51,33 @@ public:
onyx_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
, m_maincpu(*this, "maincpu")
+ , m_sio1(*this, "sio1")
+ , m_sio2(*this, "sio2")
+ , m_sio3(*this, "sio3")
+ , m_sio4(*this, "sio4")
+ , m_sio5(*this, "sio5")
+ , m_ctc1(*this, "ctc1")
+ , m_ctc2(*this, "ctc2")
+ , m_ctc3(*this, "ctc3")
+ , m_pio1(*this, "pio1")
+ , m_pio2(*this, "pio2")
{ }
DECLARE_MACHINE_RESET(c8002);
void c8002(machine_config &config);
void c5000(machine_config &config);
+ void c5000_io(address_map &map);
+ void c5000_mem(address_map &map);
+ void c8002_io(address_map &map);
+ void c8002_mem(address_map &map);
+ void subio(address_map &map);
+ void submem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
+ optional_device<z80sio_device> m_sio1, m_sio2, m_sio3, m_sio4, m_sio5;
+ optional_device<z80ctc_device> m_ctc1, m_ctc2, m_ctc3;
+ optional_device<z80pio_device> m_pio1, m_pio2;
};
@@ -71,7 +90,7 @@ MACHINE_RESET_MEMBER(onyx_state, c8002)
{
}
-static ADDRESS_MAP_START(c8002_mem, AS_PROGRAM, 16, onyx_state)
+ADDRESS_MAP_START(onyx_state::c8002_mem)
AM_RANGE(0x00000, 0x00fff) AM_ROM AM_SHARE("share0")
AM_RANGE(0x01000, 0x07fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x08000, 0x0ffff) AM_RAM AM_SHARE("share2") // Z8002 has 64k memory
@@ -83,25 +102,25 @@ ADDRESS_MAP_END
// AM_RANGE(0x08000, 0xfffff) AM_RAM AM_SHARE("share2")
//ADDRESS_MAP_END
-static ADDRESS_MAP_START(c8002_io, AS_IO, 8, onyx_state)
- AM_RANGE(0xff00, 0xff07) AM_DEVREADWRITE_MOD("sio1", z80sio_device, cd_ba_r, cd_ba_w, rshift<1>)
- AM_RANGE(0xff08, 0xff0f) AM_DEVREADWRITE_MOD("sio2", z80sio_device, cd_ba_r, cd_ba_w, rshift<1>)
- AM_RANGE(0xff10, 0xff17) AM_DEVREADWRITE_MOD("sio3", z80sio_device, cd_ba_r, cd_ba_w, rshift<1>)
- AM_RANGE(0xff18, 0xff1f) AM_DEVREADWRITE_MOD("sio4", z80sio_device, cd_ba_r, cd_ba_w, rshift<1>)
- AM_RANGE(0xff20, 0xff27) AM_DEVREADWRITE_MOD("sio5", z80sio_device, cd_ba_r, cd_ba_w, rshift<1>)
- AM_RANGE(0xff30, 0xff37) AM_DEVREADWRITE_MOD("ctc1", z80ctc_device, read, write, rshift<1>)
- AM_RANGE(0xff38, 0xff3f) AM_DEVREADWRITE_MOD("ctc2", z80ctc_device, read, write, rshift<1>)
- AM_RANGE(0xff40, 0xff47) AM_DEVREADWRITE_MOD("ctc3", z80ctc_device, read, write, rshift<1>)
- AM_RANGE(0xff50, 0xff57) AM_DEVREADWRITE_MOD("pio1", z80pio_device, read, write, rshift<1>)
- AM_RANGE(0xff58, 0xff5f) AM_DEVREADWRITE_MOD("pio2", z80pio_device, read, write, rshift<1>)
+ADDRESS_MAP_START(onyx_state::c8002_io)
+ map(0xff00, 0xff07).lrw8("sio1_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_sio1->cd_ba_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_sio1->cd_ba_w(space, offset >> 1, data, mem_mask); });
+ map(0xff08, 0xff0f).lrw8("sio2_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_sio1->cd_ba_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_sio1->cd_ba_w(space, offset >> 1, data, mem_mask); });
+ map(0xff10, 0xff17).lrw8("sio3_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_sio1->cd_ba_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_sio1->cd_ba_w(space, offset >> 1, data, mem_mask); });
+ map(0xff18, 0xff1f).lrw8("sio4_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_sio1->cd_ba_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_sio1->cd_ba_w(space, offset >> 1, data, mem_mask); });
+ map(0xff20, 0xff27).lrw8("sio5_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_sio1->cd_ba_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_sio1->cd_ba_w(space, offset >> 1, data, mem_mask); });
+ map(0xff30, 0xff37).lrw8("ctc1_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_ctc1->read(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ctc1->write(space, offset >> 1, data, mem_mask); });
+ map(0xff38, 0xff3f).lrw8("ctc2_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_ctc2->read(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ctc2->write(space, offset >> 1, data, mem_mask); });
+ map(0xff40, 0xff47).lrw8("ctc3_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_ctc3->read(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ctc3->write(space, offset >> 1, data, mem_mask); });
+ map(0xff50, 0xff57).lrw8("pio1_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_pio1->read(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_pio1->write(space, offset >> 1, data, mem_mask); });
+ map(0xff58, 0xff5f).lrw8("pio2_rw", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_pio2->read(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_pio2->write(space, offset >> 1, data, mem_mask); });
ADDRESS_MAP_END
-static ADDRESS_MAP_START(submem, AS_PROGRAM, 8, onyx_state)
+ADDRESS_MAP_START(onyx_state::submem)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(subio, AS_IO, 8, onyx_state)
+ADDRESS_MAP_START(onyx_state::subio)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pio1s", z80pio_device, read, write)
AM_RANGE(0x04, 0x04) AM_READNOP // disk status?
@@ -214,12 +233,12 @@ Labels of proms: 339, 153, XMN4, 2_1, 1_2
*********************************************************************************************************************************/
-static ADDRESS_MAP_START(c5000_mem, AS_PROGRAM, 8, onyx_state)
+ADDRESS_MAP_START(onyx_state::c5000_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(c5000_io, AS_IO, 8, onyx_state)
+ADDRESS_MAP_START(onyx_state::c5000_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("sio1", z80sio_device, cd_ba_r, cd_ba_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/opwolf.cpp b/src/mame/drivers/opwolf.cpp
index 3022a9053d7..43ba692da7c 100644
--- a/src/mame/drivers/opwolf.cpp
+++ b/src/mame/drivers/opwolf.cpp
@@ -346,7 +346,7 @@ WRITE8_MEMBER(opwolf_state::sound_bankswitch_w)
***********************************************************/
-static ADDRESS_MAP_START( opwolf_map, AS_PROGRAM, 16, opwolf_state )
+ADDRESS_MAP_START(opwolf_state::opwolf_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0f0000, 0x0f07ff) AM_MIRROR(0xf000) AM_READ(opwolf_cchip_data_r)
AM_RANGE(0x0f0802, 0x0f0803) AM_MIRROR(0xf000) AM_READ(opwolf_cchip_status_r)
@@ -370,7 +370,7 @@ static ADDRESS_MAP_START( opwolf_map, AS_PROGRAM, 16, opwolf_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( opwolfb_map, AS_PROGRAM, 16, opwolf_state )
+ADDRESS_MAP_START(opwolf_state::opwolfb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0f0008, 0x0f000b) AM_READ(opwolf_in_r) /* coins and buttons */
AM_RANGE(0x0ff000, 0x0fffff) AM_READWRITE(cchip_r,cchip_w)
@@ -390,7 +390,7 @@ static ADDRESS_MAP_START( opwolfb_map, AS_PROGRAM, 16, opwolf_state )
AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("pc090oj", pc090oj_device, word_r, word_w) /* sprite ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( opwolfp_map, AS_PROGRAM, 16, opwolf_state )
+ADDRESS_MAP_START(opwolf_state::opwolfp_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x107fff) AM_RAM
@@ -414,7 +414,7 @@ ADDRESS_MAP_END
This extra Z80 substitutes for the c-chip in the bootleg
*/
-static ADDRESS_MAP_START( opwolfb_sub_z80_map, AS_PROGRAM, 8, opwolf_state )
+ADDRESS_MAP_START(opwolf_state::opwolfb_sub_z80_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8800, 0x8800) AM_READ(z80_input1_r) /* read at PC=$637: poked to $c004 */
AM_RANGE(0x9000, 0x9000) AM_WRITENOP /* unknown write, 0 then 1 each interrupt */
@@ -550,7 +550,7 @@ WRITE8_MEMBER(opwolf_state::opwolf_adpcm_e_w)
// logerror("CPU #1 e00%i-data=%2x pc=%4x\n",offset,data,m_audiocpu->pc() );
}
-static ADDRESS_MAP_START( opwolf_sound_z80_map, AS_PROGRAM, 8, opwolf_state )
+ADDRESS_MAP_START(opwolf_state::opwolf_sound_z80_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0x8000, 0x8fff) AM_RAM
diff --git a/src/mame/drivers/orao.cpp b/src/mame/drivers/orao.cpp
index 1b37ddfa7b5..0fc6d11a229 100644
--- a/src/mame/drivers/orao.cpp
+++ b/src/mame/drivers/orao.cpp
@@ -26,7 +26,7 @@
/* Address maps */
-static ADDRESS_MAP_START(orao_mem, AS_PROGRAM, 8, orao_state )
+ADDRESS_MAP_START(orao_state::orao_mem)
AM_RANGE( 0x0000, 0x5fff ) AM_RAM AM_SHARE("memory")
AM_RANGE( 0x6000, 0x7fff ) AM_RAM AM_SHARE("video_ram") // video ram
AM_RANGE( 0x8000, 0x9fff ) AM_READWRITE(orao_io_r, orao_io_w )
diff --git a/src/mame/drivers/orbit.cpp b/src/mame/drivers/orbit.cpp
index 89d4a72f83c..8c92ff514cb 100644
--- a/src/mame/drivers/orbit.cpp
+++ b/src/mame/drivers/orbit.cpp
@@ -91,7 +91,7 @@ WRITE_LINE_MEMBER(orbit_state::hyper_led_w)
*
*************************************/
-static ADDRESS_MAP_START( orbit_map, AS_PROGRAM, 8, orbit_state )
+ADDRESS_MAP_START(orbit_state::orbit_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_MIRROR(0x07ff) AM_READ_PORT("P1")
diff --git a/src/mame/drivers/oric.cpp b/src/mame/drivers/oric.cpp
index 6d1a4391f17..3f547e03847 100644
--- a/src/mame/drivers/oric.cpp
+++ b/src/mame/drivers/oric.cpp
@@ -89,6 +89,7 @@ public:
void oric(machine_config &config);
void prav8d(machine_config &config);
+ void oric_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<palette_device> m_palette;
@@ -156,6 +157,7 @@ public:
virtual void machine_reset() override;
void telstrat(machine_config &config);
+ void telestrat_mem(address_map &map);
protected:
enum {
P_IRQEN = 0x01,
@@ -188,7 +190,7 @@ protected:
};
/* Ram is 64K, with 16K hidden by the rom. The 300-3ff is also hidden by the i/o */
-static ADDRESS_MAP_START(oric_mem, AS_PROGRAM, 8, oric_state )
+ADDRESS_MAP_START(oric_state::oric_mem)
AM_RANGE( 0x0000, 0xffff) AM_RAM AM_SHARE("ram")
AM_RANGE( 0x0300, 0x030f) AM_DEVREADWRITE("via6522", via6522_device, read, write) AM_MIRROR(0xf0)
AM_RANGE( 0xc000, 0xdfff) AM_READ_BANK("bank_c000_r") AM_WRITE_BANK("bank_c000_w")
@@ -199,7 +201,7 @@ ADDRESS_MAP_END
/*
The telestrat has the memory regions split into 16k blocks.
Memory region &c000-&ffff can be ram or rom. */
-static ADDRESS_MAP_START(telestrat_mem, AS_PROGRAM, 8, telestrat_state )
+ADDRESS_MAP_START(telestrat_state::telestrat_mem)
AM_RANGE( 0x0000, 0xffff) AM_RAM AM_SHARE("ram")
AM_RANGE( 0x0300, 0x030f) AM_DEVREADWRITE("via6522", via6522_device, read, write)
AM_RANGE( 0x0310, 0x0313) AM_DEVREADWRITE("fdc", fd1793_device, read, write)
diff --git a/src/mame/drivers/orion.cpp b/src/mame/drivers/orion.cpp
index f38bd338192..212627f56e6 100644
--- a/src/mame/drivers/orion.cpp
+++ b/src/mame/drivers/orion.cpp
@@ -25,7 +25,7 @@
/* Address maps */
/* Orion 128 */
-static ADDRESS_MAP_START(orion128_mem, AS_PROGRAM, 8, orion_state )
+ADDRESS_MAP_START(orion_state::orion128_mem)
AM_RANGE( 0x0000, 0xefff ) AM_RAMBANK("bank1")
AM_RANGE( 0xf000, 0xf3ff ) AM_RAMBANK("bank2")
AM_RANGE( 0xf400, 0xf4ff ) AM_READWRITE(orion128_system_r,orion128_system_w) // Keyboard and cassette
@@ -38,7 +38,7 @@ static ADDRESS_MAP_START(orion128_mem, AS_PROGRAM, 8, orion_state )
ADDRESS_MAP_END
/* Orion Z80 Card II */
-static ADDRESS_MAP_START( orion128_io , AS_IO, 8, orion_state )
+ADDRESS_MAP_START(orion_state::orion128_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0xf8, 0xf8) AM_WRITE(orion128_video_mode_w )
@@ -46,7 +46,7 @@ static ADDRESS_MAP_START( orion128_io , AS_IO, 8, orion_state )
AM_RANGE( 0xfa, 0xfa) AM_WRITE(orion128_video_page_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(orionz80_mem, AS_PROGRAM, 8, orion_state )
+ADDRESS_MAP_START(orion_state::orionz80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x4000, 0xefff ) AM_RAMBANK("bank2")
@@ -56,11 +56,11 @@ static ADDRESS_MAP_START(orionz80_mem, AS_PROGRAM, 8, orion_state )
ADDRESS_MAP_END
/* Orion Pro */
-static ADDRESS_MAP_START( orionz80_io , AS_IO, 8, orion_state )
+ADDRESS_MAP_START(orion_state::orionz80_io)
AM_RANGE( 0x0000, 0xffff) AM_READWRITE(orionz80_io_r, orionz80_io_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(orionpro_mem, AS_PROGRAM, 8, orion_state )
+ADDRESS_MAP_START(orion_state::orionpro_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x1fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x2000, 0x3fff ) AM_RAMBANK("bank2")
@@ -72,7 +72,7 @@ static ADDRESS_MAP_START(orionpro_mem, AS_PROGRAM, 8, orion_state )
AM_RANGE( 0xf800, 0xffff ) AM_RAMBANK("bank8")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( orionpro_io , AS_IO, 8, orion_state )
+ADDRESS_MAP_START(orion_state::orionpro_io)
AM_RANGE( 0x0000, 0xffff) AM_READWRITE(orionpro_io_r, orionpro_io_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/osbexec.cpp b/src/mame/drivers/osbexec.cpp
index b142649085c..f34a69aaf34 100644
--- a/src/mame/drivers/osbexec.cpp
+++ b/src/mame/drivers/osbexec.cpp
@@ -127,6 +127,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(modem_ri_w);
DECLARE_WRITE_LINE_MEMBER(comm_clk_a_w);
void osbexec(machine_config &config);
+ void osbexec_io(address_map &map);
+ void osbexec_mem(address_map &map);
};
@@ -207,7 +209,7 @@ READ8_MEMBER(osbexec_state::osbexec_rtc_r)
}
-static ADDRESS_MAP_START( osbexec_mem, AS_PROGRAM, 8, osbexec_state )
+ADDRESS_MAP_START(osbexec_state::osbexec_mem)
AM_RANGE( 0x0000, 0x1FFF ) AM_READ_BANK("0000") AM_WRITE(osbexec_0000_w ) /* ROM and maybe also banked ram */
AM_RANGE( 0x2000, 0x3FFF ) AM_RAMBANK("2000") /* Banked RAM */
AM_RANGE( 0x4000, 0xBFFF ) AM_RAMBANK("4000") /* Banked RAM */
@@ -217,7 +219,7 @@ static ADDRESS_MAP_START( osbexec_mem, AS_PROGRAM, 8, osbexec_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( osbexec_io, AS_IO, 8, osbexec_state )
+ADDRESS_MAP_START(osbexec_state::osbexec_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00, 0x03 ) AM_MIRROR( 0xff00 ) AM_DEVREADWRITE( "pia_0", pia6821_device, read, write) /* 6821 PIA @ UD12 */
AM_RANGE( 0x04, 0x07 ) AM_MIRROR( 0xff00 ) AM_DEVREADWRITE("ctc", pit8253_device, read, write) /* 8253 @UD1 */
diff --git a/src/mame/drivers/osborne1.cpp b/src/mame/drivers/osborne1.cpp
index 3c1b133d9b7..672c4e721b1 100644
--- a/src/mame/drivers/osborne1.cpp
+++ b/src/mame/drivers/osborne1.cpp
@@ -101,7 +101,7 @@ TODO:
static constexpr XTAL MAIN_CLOCK = 15.9744_MHz_XTAL;
-static ADDRESS_MAP_START( osborne1_mem, AS_PROGRAM, 8, osborne1_state )
+ADDRESS_MAP_START(osborne1_state::osborne1_mem)
AM_RANGE( 0x0000, 0x0FFF ) AM_READ_BANK("bank_0xxx") AM_WRITE(bank_0xxx_w)
AM_RANGE( 0x1000, 0x1FFF ) AM_READ_BANK("bank_1xxx") AM_WRITE(bank_1xxx_w)
AM_RANGE( 0x2000, 0x3FFF ) AM_READWRITE(bank_2xxx_3xxx_r, bank_2xxx_3xxx_w)
@@ -110,19 +110,19 @@ static ADDRESS_MAP_START( osborne1_mem, AS_PROGRAM, 8, osborne1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( osborne1_op, AS_OPCODES, 8, osborne1_state )
+ADDRESS_MAP_START(osborne1_state::osborne1_op)
AM_RANGE( 0x0000, 0xFFFF ) AM_READ(opcode_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( osborne1_io, AS_IO, 8, osborne1_state )
+ADDRESS_MAP_START(osborne1_state::osborne1_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x03 ) AM_MIRROR( 0xfc ) AM_WRITE(bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( osborne1nv_io, AS_IO, 8, osborne1_state )
+ADDRESS_MAP_START(osborne1_state::osborne1nv_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
@@ -282,7 +282,7 @@ GFXDECODE_END
MACHINE_CONFIG_START(osborne1_state::osborne1)
MCFG_CPU_ADD("maincpu", Z80, MAIN_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(osborne1_mem)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(osborne1_op)
+ MCFG_CPU_OPCODES_MAP(osborne1_op)
MCFG_CPU_IO_MAP(osborne1_io)
MCFG_Z80_SET_IRQACK_CALLBACK(WRITELINE(osborne1_state, irqack_w))
diff --git a/src/mame/drivers/osi.cpp b/src/mame/drivers/osi.cpp
index a832c1bd314..646b0d3ad02 100644
--- a/src/mame/drivers/osi.cpp
+++ b/src/mame/drivers/osi.cpp
@@ -448,7 +448,7 @@ WRITE_LINE_MEMBER( c1pmf_state::osi470_pia_cb2_w )
/* Memory Maps */
-static ADDRESS_MAP_START( osi600_mem, AS_PROGRAM, 8, sb2m600_state )
+ADDRESS_MAP_START(sb2m600_state::osi600_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_ROM
AM_RANGE(0xd000, 0xd3ff) AM_RAM AM_SHARE("video_ram")
@@ -457,7 +457,7 @@ static ADDRESS_MAP_START( osi600_mem, AS_PROGRAM, 8, sb2m600_state )
AM_RANGE(0xf800, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( uk101_mem, AS_PROGRAM, 8, uk101_state )
+ADDRESS_MAP_START(uk101_state::uk101_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_ROM
AM_RANGE(0xd000, 0xd3ff) AM_RAM AM_SHARE("video_ram")
@@ -467,7 +467,7 @@ static ADDRESS_MAP_START( uk101_mem, AS_PROGRAM, 8, uk101_state )
AM_RANGE(0xf800, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c1p_mem, AS_PROGRAM, 8, c1p_state )
+ADDRESS_MAP_START(c1p_state::c1p_mem)
AM_RANGE(0x0000, 0x4fff) AM_RAMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_ROM
AM_RANGE(0xc704, 0xc707) AM_DEVREADWRITE("pia_1", pia6821_device, read, write)
@@ -483,7 +483,7 @@ static ADDRESS_MAP_START( c1p_mem, AS_PROGRAM, 8, c1p_state )
AM_RANGE(0xf800, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c1pmf_mem, AS_PROGRAM, 8, c1pmf_state )
+ADDRESS_MAP_START(c1pmf_state::c1pmf_mem)
AM_RANGE(0x0000, 0x4fff) AM_RAMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc003) AM_DEVREADWRITE("pia_0", pia6821_device, read, write) // FDC
diff --git a/src/mame/drivers/othello.cpp b/src/mame/drivers/othello.cpp
index cd275823915..e320185885b 100644
--- a/src/mame/drivers/othello.cpp
+++ b/src/mame/drivers/othello.cpp
@@ -113,6 +113,10 @@ public:
DECLARE_PALETTE_INIT(othello);
MC6845_UPDATE_ROW(crtc_update_row);
void othello(machine_config &config);
+ void audio_map(address_map &map);
+ void audio_portmap(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
};
@@ -156,7 +160,7 @@ PALETTE_INIT_MEMBER(othello_state, othello)
palette.set_pen_color(0x0f, rgb_t(0xff, 0xff, 0xff));
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, othello_state )
+ADDRESS_MAP_START(othello_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x97ff) AM_NOP /* not populated */
AM_RANGE(0x9800, 0x9fff) AM_RAM AM_SHARE("videoram")
@@ -209,7 +213,7 @@ WRITE8_MEMBER(othello_state::tilebank_w)
logerror("tilebank -> %x\n", data);
}
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, othello_state )
+ADDRESS_MAP_START(othello_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x08) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x09, 0x09) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
@@ -253,12 +257,12 @@ WRITE8_MEMBER(othello_state::ay_data_w)
if (m_ay_select & 2) m_ay2->data_w(space, 0, data);
}
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, othello_state )
+ADDRESS_MAP_START(othello_state::audio_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_portmap, AS_IO, 8, othello_state )
+ADDRESS_MAP_START(othello_state::audio_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(latch_r)
AM_RANGE(0x01, 0x01) AM_WRITE(ay_data_w)
diff --git a/src/mame/drivers/othunder.cpp b/src/mame/drivers/othunder.cpp
index 5b690007152..120d8e4685a 100644
--- a/src/mame/drivers/othunder.cpp
+++ b/src/mame/drivers/othunder.cpp
@@ -470,7 +470,7 @@ WRITE8_MEMBER(othunder_state::tc0310fam_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( othunder_map, AS_PROGRAM, 16, othunder_state )
+ADDRESS_MAP_START(othunder_state::othunder_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM
AM_RANGE(0x090000, 0x09000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_device, read, write, 0x00ff)
@@ -487,7 +487,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, othunder_state )
+ADDRESS_MAP_START(othunder_state::z80_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/otomedius.cpp b/src/mame/drivers/otomedius.cpp
index a15eb72b412..58d48edc0da 100644
--- a/src/mame/drivers/otomedius.cpp
+++ b/src/mame/drivers/otomedius.cpp
@@ -34,6 +34,7 @@ public:
virtual void video_start() override;
uint32_t screen_update_konami_pc(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void konami_pc(machine_config &config);
+ void konami_pc_map(address_map &map);
};
void konami_pc_state::video_start()
@@ -45,7 +46,7 @@ uint32_t konami_pc_state::screen_update_konami_pc(screen_device &screen, bitmap_
return 0;
}
-static ADDRESS_MAP_START( konami_pc_map, AS_PROGRAM, 32, konami_pc_state )
+ADDRESS_MAP_START(konami_pc_state::konami_pc_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000f0000, 0x000fffff) AM_ROM AM_REGION("maincpu", 0x70000)
AM_RANGE(0xfff80000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0)
diff --git a/src/mame/drivers/overdriv.cpp b/src/mame/drivers/overdriv.cpp
index 0b5eea7d4ee..e466016fbf6 100644
--- a/src/mame/drivers/overdriv.cpp
+++ b/src/mame/drivers/overdriv.cpp
@@ -156,7 +156,7 @@ WRITE16_MEMBER(overdriv_state::slave_irq5_assert_w)
m_subcpu->set_input_line(5, HOLD_LINE);
}
-static ADDRESS_MAP_START( overdriv_master_map, AS_PROGRAM, 16, overdriv_state )
+ADDRESS_MAP_START(overdriv_state::overdriv_master_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM /* work RAM */
AM_RANGE(0x080000, 0x080fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -221,7 +221,7 @@ WRITE16_MEMBER(overdriv_state::objdma_w)
m_k053246->k053246_w(space,5,data,mem_mask);
}
-static ADDRESS_MAP_START( overdriv_slave_map, AS_PROGRAM, 16, overdriv_state )
+ADDRESS_MAP_START(overdriv_state::overdriv_slave_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM /* work RAM */
AM_RANGE(0x0c0000, 0x0c1fff) AM_RAM //AM_DEVREADWRITE("k053250_1", k053250_device, ram_r, ram_w)
@@ -244,7 +244,7 @@ WRITE8_MEMBER(overdriv_state::sound_ack_w)
m_audiocpu->set_input_line(M6809_IRQ_LINE, CLEAR_LINE);
}
-static ADDRESS_MAP_START( overdriv_sound_map, AS_PROGRAM, 8, overdriv_state )
+ADDRESS_MAP_START(overdriv_state::overdriv_sound_map)
AM_RANGE(0x0000, 0x0000) AM_WRITE(sound_ack_w)
// 0x012 read during explosions
// 0x180
@@ -255,7 +255,7 @@ static ADDRESS_MAP_START( overdriv_sound_map, AS_PROGRAM, 8, overdriv_state )
AM_RANGE(0x1000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( overdriv_k053260_map, 0, 8, overdriv_state )
+ADDRESS_MAP_START(overdriv_state::overdriv_k053260_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_REGION("k053260", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/p112.cpp b/src/mame/drivers/p112.cpp
index 113c6a7b42f..3f2b38406cb 100644
--- a/src/mame/drivers/p112.cpp
+++ b/src/mame/drivers/p112.cpp
@@ -50,16 +50,18 @@ public:
uint32_t screen_update_p112(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void p112(machine_config &config);
+ void p112_io(address_map &map);
+ void p112_mem(address_map &map);
};
-static ADDRESS_MAP_START(p112_mem, AS_PROGRAM, 8, p112_state)
+ADDRESS_MAP_START(p112_state::p112_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x07fff) AM_ROM
AM_RANGE(0x08000, 0xfffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(p112_io, AS_IO, 8, p112_state)
+ADDRESS_MAP_START(p112_state::p112_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/p2000t.cpp b/src/mame/drivers/p2000t.cpp
index a8bfccdcd0f..ffba4321bf6 100644
--- a/src/mame/drivers/p2000t.cpp
+++ b/src/mame/drivers/p2000t.cpp
@@ -36,7 +36,7 @@ Philips P2000 1 Memory map
/* port i/o functions */
-static ADDRESS_MAP_START( p2000t_io, AS_IO, 8, p2000t_state )
+ADDRESS_MAP_START(p2000t_state::p2000t_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_READ(p2000t_port_000f_r)
AM_RANGE(0x10, 0x1f) AM_WRITE(p2000t_port_101f_w)
@@ -50,7 +50,7 @@ static ADDRESS_MAP_START( p2000t_io, AS_IO, 8, p2000t_state )
ADDRESS_MAP_END
/* Memory w/r functions */
-static ADDRESS_MAP_START( p2000t_mem, AS_PROGRAM, 8, p2000t_state )
+ADDRESS_MAP_START(p2000t_state::p2000t_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x4fff) AM_ROM
AM_RANGE(0x5000, 0x57ff) AM_RAM AM_SHARE("videoram")
@@ -58,7 +58,7 @@ static ADDRESS_MAP_START( p2000t_mem, AS_PROGRAM, 8, p2000t_state )
AM_RANGE(0xa000, 0xffff) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( p2000m_mem, AS_PROGRAM, 8, p2000t_state )
+ADDRESS_MAP_START(p2000t_state::p2000m_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x4fff) AM_ROM
AM_RANGE(0x5000, 0x5fff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/p8k.cpp b/src/mame/drivers/p8k.cpp
index deeb85989c2..a4dfd157e8a 100644
--- a/src/mame/drivers/p8k.cpp
+++ b/src/mame/drivers/p8k.cpp
@@ -107,6 +107,11 @@ public:
void p8k(machine_config &config);
void p8k_16(machine_config &config);
+ void p8k_16_datamap(address_map &map);
+ void p8k_16_iomap(address_map &map);
+ void p8k_16_memmap(address_map &map);
+ void p8k_iomap(address_map &map);
+ void p8k_memmap(address_map &map);
private:
required_device<cpu_device> m_maincpu;
optional_device<p8k_16_daisy_device> m_daisy;
@@ -120,7 +125,7 @@ private:
****************************************************************************/
-static ADDRESS_MAP_START(p8k_memmap, AS_PROGRAM, 8, p8k_state)
+ADDRESS_MAP_START(p8k_state::p8k_memmap)
AM_RANGE(0x0000, 0x0FFF) AM_RAMBANK("bank0")
AM_RANGE(0x1000, 0x1FFF) AM_RAMBANK("bank1")
AM_RANGE(0x2000, 0x2FFF) AM_RAMBANK("bank2")
@@ -139,7 +144,7 @@ static ADDRESS_MAP_START(p8k_memmap, AS_PROGRAM, 8, p8k_state)
AM_RANGE(0xF000, 0xFFFF) AM_RAMBANK("bank15")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(p8k_iomap, AS_IO, 8, p8k_state)
+ADDRESS_MAP_START(p8k_state::p8k_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_READWRITE(p8k_port0_r,p8k_port0_w) // MH7489
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ctc0", z80ctc_device, read, write)
@@ -314,20 +319,20 @@ DRIVER_INIT_MEMBER(p8k_state,p8k)
****************************************************************************/
-static ADDRESS_MAP_START(p8k_16_memmap, AS_PROGRAM, 16, p8k_state)
+ADDRESS_MAP_START(p8k_state::p8k_16_memmap)
AM_RANGE(0x00000, 0x03fff) AM_ROM AM_SHARE("share0")
AM_RANGE(0x04000, 0x07fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x08000, 0xfffff) AM_RAM AM_SHARE("share2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(p8k_16_datamap, AS_DATA, 16, p8k_state)
+ADDRESS_MAP_START(p8k_state::p8k_16_datamap)
AM_RANGE(0x00000, 0x03fff) AM_ROM AM_SHARE("share0")
AM_RANGE(0x04000, 0x07fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x08000, 0xfffff) AM_RAM AM_SHARE("share2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(p8k_16_iomap, AS_IO, 16, p8k_state)
+ADDRESS_MAP_START(p8k_state::p8k_16_iomap)
// AM_RANGE(0x0fef0, 0x0feff) // clock
AM_RANGE(0x0ff80, 0x0ff87) AM_DEVREADWRITE8("sio", z80sio_device, cd_ba_r, cd_ba_w, 0xff)
AM_RANGE(0x0ff88, 0x0ff8f) AM_DEVREADWRITE8("sio1", z80sio_device, cd_ba_r, cd_ba_w, 0xff)
diff --git a/src/mame/drivers/pachifev.cpp b/src/mame/drivers/pachifev.cpp
index ae800788873..6135b480c91 100644
--- a/src/mame/drivers/pachifev.cpp
+++ b/src/mame/drivers/pachifev.cpp
@@ -114,6 +114,8 @@ public:
INTERRUPT_GEN_MEMBER(pachifev_vblank_irq);
required_device<cpu_device> m_maincpu;
void pachifev(machine_config &config);
+ void pachifev_cru(address_map &map);
+ void pachifev_map(address_map &map);
};
WRITE8_MEMBER(pachifev_state::controls_w)
@@ -138,7 +140,7 @@ READ8_MEMBER(pachifev_state::controls_r)
return output_bit;
}
-static ADDRESS_MAP_START( pachifev_map, AS_PROGRAM, 8, pachifev_state )
+ADDRESS_MAP_START(pachifev_state::pachifev_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
@@ -158,7 +160,7 @@ static ADDRESS_MAP_START( pachifev_map, AS_PROGRAM, 8, pachifev_state )
AM_RANGE(0xfffc, 0xffff) AM_NOP /* nmi */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pachifev_cru, AS_IO, 8, pachifev_state )
+ADDRESS_MAP_START(pachifev_state::pachifev_cru)
AM_RANGE(0x000, 0x000) AM_READ(controls_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pacland.cpp b/src/mame/drivers/pacland.cpp
index 46ea6fc8eb6..60cc17ec0bb 100644
--- a/src/mame/drivers/pacland.cpp
+++ b/src/mame/drivers/pacland.cpp
@@ -260,7 +260,7 @@ WRITE8_MEMBER(pacland_state::irq_2_ctrl_w)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pacland_state )
+ADDRESS_MAP_START(pacland_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x2000, 0x37ff) AM_RAM AM_SHARE("spriteram")
@@ -276,7 +276,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pacland_state )
AM_RANGE(0x9000, 0x9fff) AM_WRITE(flipscreen_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, pacland_state )
+ADDRESS_MAP_START(pacland_state::mcu_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("mcu", hd63701_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namco_cus30_device, namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */
@@ -294,7 +294,7 @@ READ8_MEMBER(pacland_state::readFF)
return 0xff;
}
-static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, pacland_state )
+ADDRESS_MAP_START(pacland_state::mcu_port_map)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ_PORT("IN2")
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(coin_w)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */
diff --git a/src/mame/drivers/pacman.cpp b/src/mame/drivers/pacman.cpp
index 920e411bec9..6a467bcd1c0 100644
--- a/src/mame/drivers/pacman.cpp
+++ b/src/mame/drivers/pacman.cpp
@@ -996,7 +996,7 @@ READ8_MEMBER(pacman_state::pacman_read_nop)
*
*************************************/
-static ADDRESS_MAP_START( pacman_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::pacman_map)
//A lot of games don't have an a15 at the cpu. Generally only games with a cpu daughter board can access the full 32k of romspace.
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
@@ -1017,7 +1017,7 @@ static ADDRESS_MAP_START( pacman_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( birdiy_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::birdiy_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1037,7 +1037,7 @@ static ADDRESS_MAP_START( birdiy_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mspacman_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::mspacman_map)
/* start with 0000-3fff and 8000-bfff mapped to the ROMs */
AM_RANGE(0x0000, 0xffff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_MIRROR(0x8000) AM_UNMAP
@@ -1070,7 +1070,7 @@ static ADDRESS_MAP_START( mspacman_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( woodpek_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::woodpek_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1091,7 +1091,7 @@ static ADDRESS_MAP_START( woodpek_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( numcrash_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::numcrash_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_ROM
/* 0x2800 - 0x2fff unmapped? */
@@ -1117,7 +1117,7 @@ static ADDRESS_MAP_START( numcrash_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alibaba_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::alibaba_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1144,7 +1144,7 @@ static ADDRESS_MAP_START( alibaba_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dremshpr_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::dremshpr_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1168,7 +1168,7 @@ static ADDRESS_MAP_START( dremshpr_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::epos_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1188,7 +1188,7 @@ static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s2650games_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::s2650games_map)
AM_RANGE(0x0000, 0x0fff) AM_ROMBANK("bank1")
AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0x6000) AM_WRITE(s2650games_colorram_w) AM_SHARE("colorram")
AM_RANGE(0x1400, 0x141f) AM_MIRROR(0x6000) AM_WRITE(s2650games_scroll_w)
@@ -1215,7 +1215,7 @@ static ADDRESS_MAP_START( s2650games_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rocktrv2_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::rocktrv2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1239,7 +1239,7 @@ static ADDRESS_MAP_START( rocktrv2_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigbucks_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::bigbucks_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1257,7 +1257,7 @@ static ADDRESS_MAP_START( bigbucks_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mschamp_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::mschamp_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1278,7 +1278,7 @@ static ADDRESS_MAP_START( mschamp_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( superabc_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::superabc_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1300,7 +1300,7 @@ static ADDRESS_MAP_START( superabc_map, AS_PROGRAM, 8, pacman_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crushs_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::crushs_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -1319,7 +1319,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( pengojpm_map, AS_PROGRAM, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::pengojpm_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
// AM_RANGE(0x1000, 0x1fff) // header check for 0x55aa at POST, diagnostic ROM?
AM_RANGE(0x4000, 0x7fff) AM_ROM
@@ -1352,66 +1352,66 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( writeport, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::writeport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(pacman_interrupt_vector_w) /* Pac-Man only */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vanvan_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::vanvan_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("sn1", sn76496_device, write)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("sn2", sn76496_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dremshpr_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::dremshpr_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x06, 0x07) AM_DEVWRITE("ay8910", ay8910_device, data_address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( piranha_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::piranha_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(piranha_interrupt_vector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nmouse_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::nmouse_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(nmouse_interrupt_vector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( epos_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::epos_portmap)
AM_IMPORT_FROM(writeport)
AM_RANGE(0x00, 0xff) AM_READ(epos_decryption_w) /* Switch protection logic */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mschamp_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::mschamp_portmap)
AM_IMPORT_FROM(writeport)
AM_RANGE(0x00, 0x00) AM_READ(mschamp_kludge_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigbucks_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::bigbucks_portmap)
AM_RANGE(0x0000, 0xffff) AM_READ(bigbucks_question_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s2650games_dataport, AS_DATA, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::s2650games_dataport)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_DEVWRITE("sn1", sn76496_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( drivfrcp_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::drivfrcp_portmap)
AM_RANGE(0x00, 0x00) AM_READNOP
AM_RANGE(0x01, 0x01) AM_READ(drivfrcp_port1_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( _8bpm_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::_8bpm_portmap)
AM_RANGE(0x00, 0x00) AM_READNOP
AM_RANGE(0x01, 0x01) AM_READ(_8bpm_port1_r)
AM_RANGE(0xe0, 0xe0) AM_READNOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( porky_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::porky_portmap)
AM_RANGE(0x01, 0x01) AM_READ(porky_port1_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crushs_portmap, AS_IO, 8, pacman_state )
+ADDRESS_MAP_START(pacman_state::crushs_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay8912", ay8912_device, data_address_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2")
@@ -3553,7 +3553,7 @@ MACHINE_CONFIG_DERIVED(pacman_state::birdiy, pacman)
/* basic machine hardware */
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(birdiy_map)
- MCFG_CPU_IO_MAP(0)
+ MCFG_DEVICE_REMOVE_ADDRESS_MAP(AS_IO)
MCFG_DEVICE_REPLACE("mainlatch", LS259, 0)
MCFG_ADDRESSABLE_LATCH_Q1_OUT_CB(WRITELINE(pacman_state, irq_mask_w))
diff --git a/src/mame/drivers/palm.cpp b/src/mame/drivers/palm.cpp
index bacb5b67cd4..3e588423ba6 100644
--- a/src/mame/drivers/palm.cpp
+++ b/src/mame/drivers/palm.cpp
@@ -66,6 +66,7 @@ public:
void palm(machine_config &config);
void palmpro(machine_config &config);
void pilot5k(machine_config &config);
+ void palm_map(address_map &map);
};
@@ -164,7 +165,7 @@ PALETTE_INIT_MEMBER(palm_state, palm)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(palm_map, AS_PROGRAM, 16, palm_state)
+ADDRESS_MAP_START(palm_state::palm_map)
AM_RANGE(0xc00000, 0xe07fff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0xfff000, 0xffffff) AM_DEVREADWRITE(MC68328_TAG, mc68328_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/palmz22.cpp b/src/mame/drivers/palmz22.cpp
index eb8aeb7e38d..e5d589e904a 100644
--- a/src/mame/drivers/palmz22.cpp
+++ b/src/mame/drivers/palmz22.cpp
@@ -104,6 +104,7 @@ public:
DECLARE_READ32_MEMBER(s3c2410_adc_data_r );
void palmz22(machine_config &config);
+ void palmz22_map(address_map &map);
};
@@ -267,7 +268,7 @@ void palmz22_state::machine_reset()
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( palmz22_map, AS_PROGRAM, 32, palmz22_state )
+ADDRESS_MAP_START(palmz22_state::palmz22_map)
AM_RANGE(0x30000000, 0x31ffffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pandoras.cpp b/src/mame/drivers/pandoras.cpp
index ee8a0e01682..347884531e3 100644
--- a/src/mame/drivers/pandoras.cpp
+++ b/src/mame/drivers/pandoras.cpp
@@ -117,7 +117,7 @@ WRITE_LINE_MEMBER(pandoras_state::coin_counter_2_w)
}
-static ADDRESS_MAP_START( pandoras_master_map, AS_PROGRAM, 8, pandoras_state )
+ADDRESS_MAP_START(pandoras_state::pandoras_master_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("spriteram") /* Work RAM (Shared with CPU B) */
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("colorram") /* Color RAM (shared with CPU B) */
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("videoram") /* Video RAM (shared with CPU B) */
@@ -132,7 +132,7 @@ static ADDRESS_MAP_START( pandoras_master_map, AS_PROGRAM, 8, pandoras_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pandoras_slave_map, AS_PROGRAM, 8, pandoras_state )
+ADDRESS_MAP_START(pandoras_state::pandoras_slave_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("spriteram") /* Work RAM (Shared with CPU A) */
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("colorram") /* Color RAM (shared with CPU A) */
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("videoram") /* Video RAM (shared with CPU A) */
@@ -150,7 +150,7 @@ static ADDRESS_MAP_START( pandoras_slave_map, AS_PROGRAM, 8, pandoras_state )
AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pandoras_sound_map, AS_PROGRAM, 8, pandoras_state )
+ADDRESS_MAP_START(pandoras_state::pandoras_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM /* ROM */
AM_RANGE(0x2000, 0x23ff) AM_RAM /* RAM */
AM_RANGE(0x4000, 0x4000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -161,11 +161,11 @@ static ADDRESS_MAP_START( pandoras_sound_map, AS_PROGRAM, 8, pandoras_state )
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write) /* sound command to the 8039 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pandoras_i8039_map, AS_PROGRAM, 8, pandoras_state )
+ADDRESS_MAP_START(pandoras_state::pandoras_i8039_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pandoras_i8039_io_map, AS_IO, 8, pandoras_state )
+ADDRESS_MAP_START(pandoras_state::pandoras_i8039_io_map)
AM_RANGE(0x00, 0xff) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pangofun.cpp b/src/mame/drivers/pangofun.cpp
index fe99e2fd940..610fa1b4e4b 100644
--- a/src/mame/drivers/pangofun.cpp
+++ b/src/mame/drivers/pangofun.cpp
@@ -110,10 +110,12 @@ public:
DECLARE_DRIVER_INIT(pangofun);
virtual void machine_start() override;
void pangofun(machine_config &config);
+ void pcat_io(address_map &map);
+ void pcat_map(address_map &map);
};
-static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pangofun_state )
+ADDRESS_MAP_START(pangofun_state::pcat_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0)
@@ -126,7 +128,7 @@ static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pangofun_state )
AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcat_io, AS_IO, 32, pangofun_state )
+ADDRESS_MAP_START(pangofun_state::pcat_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e0, 0x00e3) AM_WRITENOP
AM_RANGE(0x03b0, 0x03bf) AM_DEVREADWRITE8("vga", vga_device, port_03b0_r, port_03b0_w, 0xffffffff)
diff --git a/src/mame/drivers/panicr.cpp b/src/mame/drivers/panicr.cpp
index bb7a04ae87a..33d7e129243 100644
--- a/src/mame/drivers/panicr.cpp
+++ b/src/mame/drivers/panicr.cpp
@@ -125,6 +125,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(scanline);
void panicr(machine_config &config);
+ void panicr_map(address_map &map);
};
@@ -427,7 +428,7 @@ WRITE8_MEMBER(panicr_state::t5182shared_w)
}
-static ADDRESS_MAP_START( panicr_map, AS_PROGRAM, 8, panicr_state )
+ADDRESS_MAP_START(panicr_state::panicr_map)
AM_RANGE(0x00000, 0x01fff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x02000, 0x03cff) AM_RAM AM_SHARE("spriteram") // how big is sprite ram, some places definitely have sprites at 3000+
AM_RANGE(0x03d00, 0x03fff) AM_RAM
diff --git a/src/mame/drivers/paradise.cpp b/src/mame/drivers/paradise.cpp
index 9e5a9ec44cb..5e5bc6b0510 100644
--- a/src/mame/drivers/paradise.cpp
+++ b/src/mame/drivers/paradise.cpp
@@ -128,7 +128,7 @@ WRITE8_MEMBER(paradise_state::torus_coin_counter_w)
machine().bookkeeping().coin_counter_w(0, data ^ 0xff);
}
-static ADDRESS_MAP_START( base_map, AS_PROGRAM, 8, paradise_state )
+ADDRESS_MAP_START(paradise_state::base_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("prgbank") /* ROM (banked) */
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(vram_2_w) AM_SHARE("vram_2") /* Background */
@@ -136,27 +136,27 @@ static ADDRESS_MAP_START( base_map, AS_PROGRAM, 8, paradise_state )
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(vram_0_w) AM_SHARE("vram_0") /* Foreground */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( paradise_map, AS_PROGRAM, 8, paradise_state )
+ADDRESS_MAP_START(paradise_state::paradise_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xd800, 0xd8ff) AM_RAM // RAM
AM_RANGE(0xd900, 0xe0ff) AM_RAM AM_SHARE("spriteram") // Sprites
AM_RANGE(0xe100, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tgtball_map, AS_PROGRAM, 8, paradise_state )
+ADDRESS_MAP_START(paradise_state::tgtball_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xd800, 0xd8ff) AM_RAM // RAM
AM_RANGE(0xd900, 0xd9ff) AM_RAM AM_SHARE("spriteram") // Sprites
AM_RANGE(0xda00, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( torus_map, AS_PROGRAM, 8, paradise_state )
+ADDRESS_MAP_START(paradise_state::torus_map)
AM_IMPORT_FROM(base_map)
AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("spriteram") // Sprites
AM_RANGE(0xe000, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( torus_io_map, AS_IO, 8, paradise_state )
+ADDRESS_MAP_START(paradise_state::torus_io_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM_WRITE(palette_w) AM_SHARE("paletteram") // Palette
AM_RANGE(0x1800, 0x1800) AM_WRITE(priority_w) // Layers priority
AM_RANGE(0x2001, 0x2001) AM_WRITE(flipscreen_w) // Flip Screen
@@ -171,7 +171,7 @@ static ADDRESS_MAP_START( torus_io_map, AS_IO, 8, paradise_state )
AM_RANGE(0x8000, 0xffff) AM_RAM_WRITE(pixmap_w) AM_SHARE("videoram") // Pixmap
ADDRESS_MAP_END
-static ADDRESS_MAP_START( paradise_io_map, AS_IO, 8, paradise_state )
+ADDRESS_MAP_START(paradise_state::paradise_io_map)
AM_IMPORT_FROM(torus_io_map)
AM_RANGE(0x2007, 0x2007) AM_WRITE(paradise_okibank_w) // OKI 1 samples bank
AM_RANGE(0x2030, 0x2030) AM_DEVREADWRITE("oki2", okim6295_device, read, write) // OKI 1
diff --git a/src/mame/drivers/paranoia.cpp b/src/mame/drivers/paranoia.cpp
index dae6f71a90e..de95a8fa890 100644
--- a/src/mame/drivers/paranoia.cpp
+++ b/src/mame/drivers/paranoia.cpp
@@ -65,6 +65,12 @@ public:
DECLARE_WRITE8_MEMBER(i8155_c_w);
DECLARE_WRITE_LINE_MEMBER(i8155_timer_out);
void paranoia(machine_config &config);
+ void paranoia_8085_io_map(address_map &map);
+ void paranoia_8085_map(address_map &map);
+ void paranoia_z80_io_map(address_map &map);
+ void paranoia_z80_map(address_map &map);
+ void pce_io(address_map &map);
+ void pce_mem(address_map &map);
};
@@ -72,7 +78,7 @@ static INPUT_PORTS_START( paranoia )
PCE_STANDARD_INPUT_PORT_P1
INPUT_PORTS_END
-static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, paranoia_state )
+ADDRESS_MAP_START(paranoia_state::pce_mem)
AM_RANGE( 0x000000, 0x03FFFF) AM_ROM
AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000)
AM_RANGE( 0x1FE000, 0x1FE3FF) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
@@ -83,7 +89,7 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, paranoia_state )
AM_RANGE( 0x1FF400, 0x1FF7FF) AM_DEVREADWRITE("maincpu", h6280_device, irq_status_r, irq_status_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pce_io , AS_IO, 8, paranoia_state )
+ADDRESS_MAP_START(paranoia_state::pce_io)
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
ADDRESS_MAP_END
@@ -92,7 +98,7 @@ WRITE8_MEMBER(paranoia_state::i8085_d000_w)
//logerror( "D000 (8085) write %02x\n", data );
}
-static ADDRESS_MAP_START(paranoia_8085_map, AS_PROGRAM, 8, paranoia_state )
+ADDRESS_MAP_START(paranoia_state::paranoia_8085_map)
AM_RANGE( 0x0000, 0x7fff) AM_ROM
AM_RANGE( 0x8000, 0x80ff) AM_DEVREADWRITE("i8155", i8155_device, memory_r, memory_w)
AM_RANGE( 0x8100, 0x8107) AM_DEVREADWRITE("i8155", i8155_device, io_r, io_w)
@@ -100,10 +106,10 @@ static ADDRESS_MAP_START(paranoia_8085_map, AS_PROGRAM, 8, paranoia_state )
AM_RANGE( 0xe000, 0xe1ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(paranoia_8085_io_map, AS_IO, 8, paranoia_state )
+ADDRESS_MAP_START(paranoia_state::paranoia_8085_io_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(paranoia_z80_map, AS_PROGRAM, 8, paranoia_state )
+ADDRESS_MAP_START(paranoia_state::paranoia_z80_map)
AM_RANGE( 0x0000, 0x3fff) AM_ROM
AM_RANGE( 0x6000, 0x67ff) AM_RAM
AM_RANGE( 0x7000, 0x73ff) AM_RAM
@@ -127,7 +133,7 @@ WRITE8_MEMBER(paranoia_state::z80_io_37_w)
{
}
-static ADDRESS_MAP_START(paranoia_z80_io_map, AS_IO, 8, paranoia_state )
+ADDRESS_MAP_START(paranoia_state::paranoia_z80_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_READ(z80_io_01_r )
AM_RANGE( 0x02, 0x02 ) AM_READ(z80_io_02_r )
diff --git a/src/mame/drivers/parodius.cpp b/src/mame/drivers/parodius.cpp
index 2e480e74056..031851aa35a 100644
--- a/src/mame/drivers/parodius.cpp
+++ b/src/mame/drivers/parodius.cpp
@@ -92,7 +92,7 @@ WRITE8_MEMBER(parodius_state::sound_arm_nmi_w)
/********************************************/
-static ADDRESS_MAP_START( parodius_map, AS_PROGRAM, 8, parodius_state )
+ADDRESS_MAP_START(parodius_state::parodius_map)
AM_RANGE(0x0000, 0x07ff) AM_DEVICE("bank0000", address_map_bank_device, amap8)
AM_RANGE(0x0800, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x5fff) AM_DEVREADWRITE("k052109", k052109_device, read, write)
@@ -112,17 +112,17 @@ static ADDRESS_MAP_START( parodius_map, AS_PROGRAM, 8, parodius_state )
AM_RANGE(0xa000, 0xffff) AM_ROM AM_REGION("maincpu", 0x3a000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank0000_map, AS_PROGRAM, 8, parodius_state )
+ADDRESS_MAP_START(parodius_state::bank0000_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank2000_map, AS_PROGRAM, 8, parodius_state )
+ADDRESS_MAP_START(parodius_state::bank2000_map)
AM_RANGE(0x0000, 0x07ff) AM_DEVREADWRITE("k052109", k052109_device, read, write)
AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("k053245", k05324x_device, k053245_r, k053245_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( parodius_sound_map, AS_PROGRAM, 8, parodius_state )
+ADDRESS_MAP_START(parodius_state::parodius_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
diff --git a/src/mame/drivers/partner.cpp b/src/mame/drivers/partner.cpp
index 3fda5d860b9..841572e55bc 100644
--- a/src/mame/drivers/partner.cpp
+++ b/src/mame/drivers/partner.cpp
@@ -25,7 +25,7 @@
/* Address maps */
-static ADDRESS_MAP_START(partner_mem, AS_PROGRAM, 8, partner_state )
+ADDRESS_MAP_START(partner_state::partner_mem)
AM_RANGE( 0x0000, 0x07ff ) AM_RAMBANK("bank1")
AM_RANGE( 0x0800, 0x3fff ) AM_RAMBANK("bank2")
AM_RANGE( 0x4000, 0x5fff ) AM_RAMBANK("bank3")
diff --git a/src/mame/drivers/pasha2.cpp b/src/mame/drivers/pasha2.cpp
index 64cc3404601..6854296e319 100644
--- a/src/mame/drivers/pasha2.cpp
+++ b/src/mame/drivers/pasha2.cpp
@@ -125,6 +125,8 @@ public:
required_device<okim6295_device> m_oki2;
required_device<palette_device> m_palette;
void pasha2(machine_config &config);
+ void pasha2_io(address_map &map);
+ void pasha2_map(address_map &map);
};
@@ -231,7 +233,7 @@ WRITE16_MEMBER(pasha2_state::pasha2_lamps_w)
machine().output().set_value("lamp_p3_b", BIT(data, 10));
}
-static ADDRESS_MAP_START( pasha2_map, AS_PROGRAM, 16, pasha2_state )
+ADDRESS_MAP_START(pasha2_state::pasha2_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("wram")
AM_RANGE(0x40000000, 0x4001ffff) AM_RAM_WRITE(bitmap_0_w)
AM_RANGE(0x40020000, 0x4003ffff) AM_RAM_WRITE(bitmap_1_w)
@@ -247,7 +249,7 @@ static ADDRESS_MAP_START( pasha2_map, AS_PROGRAM, 16, pasha2_state )
AM_RANGE(0xfff80000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pasha2_io, AS_IO, 16, pasha2_state )
+ADDRESS_MAP_START(pasha2_state::pasha2_io)
AM_RANGE(0x08, 0x0b) AM_READNOP //sound status?
AM_RANGE(0x18, 0x1b) AM_READNOP //sound status?
AM_RANGE(0x20, 0x23) AM_WRITE(pasha2_lamps_w)
diff --git a/src/mame/drivers/paso1600.cpp b/src/mame/drivers/paso1600.cpp
index 7db517f20bd..dacd843b713 100644
--- a/src/mame/drivers/paso1600.cpp
+++ b/src/mame/drivers/paso1600.cpp
@@ -50,6 +50,8 @@ public:
uint32_t screen_update_paso1600(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void paso1600(machine_config &config);
+ void paso1600_io(address_map &map);
+ void paso1600_map(address_map &map);
private:
uint8_t m_crtc_vreg[0x100],m_crtc_index;
struct{
@@ -227,7 +229,7 @@ READ16_MEMBER( paso1600_state::test_hi_r )
return 0xffff;
}
-static ADDRESS_MAP_START(paso1600_map, AS_PROGRAM, 16, paso1600_state)
+ADDRESS_MAP_START(paso1600_state::paso1600_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0x7ffff) AM_RAM
AM_RANGE(0xb0000,0xb0fff) AM_RAM AM_SHARE("vram") // tvram
@@ -237,7 +239,7 @@ static ADDRESS_MAP_START(paso1600_map, AS_PROGRAM, 16, paso1600_state)
AM_RANGE(0xfe000,0xfffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(paso1600_io, AS_IO, 16, paso1600_state)
+ADDRESS_MAP_START(paso1600_state::paso1600_io)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000,0x000f) AM_DEVREADWRITE8("8237dma", am9517a_device, read, write, 0xffff)
AM_RANGE(0x0010,0x0011) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0xffff) // i8259
diff --git a/src/mame/drivers/pasogo.cpp b/src/mame/drivers/pasogo.cpp
index b42bc5c4108..76c11941c2a 100644
--- a/src/mame/drivers/pasogo.cpp
+++ b/src/mame/drivers/pasogo.cpp
@@ -175,6 +175,9 @@ public:
uint8_t m_ems_index;
uint16_t m_ems_bank[28];
void pasogo(machine_config &config);
+ void emsbank_map(address_map &map);
+ void pasogo_io(address_map &map);
+ void pasogo_mem(address_map &map);
};
@@ -439,20 +442,20 @@ WRITE16_MEMBER( pasogo_state::emsram_w )
m_ems->write16(space, offset & 0x1fff, data, mem_mask);
}
-static ADDRESS_MAP_START(emsbank_map, AS_PROGRAM, 16, pasogo_state)
+ADDRESS_MAP_START(pasogo_state::emsbank_map)
AM_RANGE(0x04080000, 0x040fffff) AM_RAM
AM_RANGE(0x08000000, 0x080fffff) AM_ROMBANK("bank27")
AM_RANGE(0x10000000, 0x1000ffff) AM_RAM // cart ram?
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pasogo_mem, AS_PROGRAM, 16, pasogo_state)
+ADDRESS_MAP_START(pasogo_state::pasogo_mem)
AM_RANGE(0x80000, 0xeffff) AM_READWRITE(emsram_r, emsram_w)
AM_RANGE(0xb8000, 0xbffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0xf0000, 0xfffff) AM_ROMBANK("bank27")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pasogo_io, AS_IO, 16, pasogo_state)
+ADDRESS_MAP_START(pasogo_state::pasogo_io)
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", ibm5160_mb_device, map, 0xffff)
AM_RANGE(0x0026, 0x0027) AM_READWRITE8(vg230_io_r, vg230_io_w, 0xffff)
AM_RANGE(0x006c, 0x006f) AM_READWRITE(ems_r, ems_w)
diff --git a/src/mame/drivers/pasopia.cpp b/src/mame/drivers/pasopia.cpp
index 170a5284e86..64737fd1401 100644
--- a/src/mame/drivers/pasopia.cpp
+++ b/src/mame/drivers/pasopia.cpp
@@ -54,6 +54,8 @@ public:
TIMER_CALLBACK_MEMBER(pio_timer);
void pasopia(machine_config &config);
+ void pasopia_io(address_map &map);
+ void pasopia_map(address_map &map);
private:
uint8_t m_hblank;
uint16_t m_vram_addr;
@@ -120,13 +122,13 @@ WRITE8_MEMBER( pasopia_state::pasopia_ctrl_w )
membank("bank1")->set_entry(m_ram_bank);
}
-static ADDRESS_MAP_START(pasopia_map, AS_PROGRAM, 8, pasopia_state)
+ADDRESS_MAP_START(pasopia_state::pasopia_map)
AM_RANGE(0x0000,0x7fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
AM_RANGE(0x8000,0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pasopia_io, AS_IO, 8, pasopia_state)
+ADDRESS_MAP_START(pasopia_state::pasopia_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
diff --git a/src/mame/drivers/pasopia7.cpp b/src/mame/drivers/pasopia7.cpp
index b71d303c732..c6902f31c08 100644
--- a/src/mame/drivers/pasopia7.cpp
+++ b/src/mame/drivers/pasopia7.cpp
@@ -91,6 +91,8 @@ public:
void p7_base(machine_config &config);
void p7_lcd(machine_config &config);
void p7_raster(machine_config &config);
+ void pasopia7_io(address_map &map);
+ void pasopia7_mem(address_map &map);
private:
uint8_t m_vram_sel;
uint8_t m_mio_sel;
@@ -696,7 +698,7 @@ WRITE8_MEMBER( pasopia7_state::pasopia7_io_w )
}
}
-static ADDRESS_MAP_START(pasopia7_mem, AS_PROGRAM, 8, pasopia7_state)
+ADDRESS_MAP_START(pasopia7_state::pasopia7_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_WRITE( ram_bank_w )
AM_RANGE( 0x0000, 0x3fff ) AM_ROMBANK("bank1")
@@ -705,7 +707,7 @@ static ADDRESS_MAP_START(pasopia7_mem, AS_PROGRAM, 8, pasopia7_state)
AM_RANGE( 0xc000, 0xffff ) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pasopia7_io, AS_IO, 8, pasopia7_state)
+ADDRESS_MAP_START(pasopia7_state::pasopia7_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xffff) AM_READWRITE( pasopia7_io_r, pasopia7_io_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pass.cpp b/src/mame/drivers/pass.cpp
index 1bd25a8593b..7f618192d04 100644
--- a/src/mame/drivers/pass.cpp
+++ b/src/mame/drivers/pass.cpp
@@ -114,7 +114,7 @@
/* todo: check all memory regions actually readable / read from */
-static ADDRESS_MAP_START( pass_map, AS_PROGRAM, 16, pass_state )
+ADDRESS_MAP_START(pass_state::pass_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM
AM_RANGE(0x200000, 0x200fff) AM_RAM_WRITE(pass_bg_videoram_w) AM_SHARE("bg_videoram") // Background
@@ -126,12 +126,12 @@ static ADDRESS_MAP_START( pass_map, AS_PROGRAM, 16, pass_state )
ADDRESS_MAP_END
/* sound cpu */
-static ADDRESS_MAP_START( pass_sound_map, AS_PROGRAM, 8, pass_state )
+ADDRESS_MAP_START(pass_state::pass_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pass_sound_io_map, AS_IO, 8, pass_state )
+ADDRESS_MAP_START(pass_state::pass_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x70, 0x71) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
diff --git a/src/mame/drivers/pastelg.cpp b/src/mame/drivers/pastelg.cpp
index d26b5c22672..492a968263b 100644
--- a/src/mame/drivers/pastelg.cpp
+++ b/src/mame/drivers/pastelg.cpp
@@ -45,7 +45,7 @@ READ8_MEMBER(pastelg_state::pastelg_sndrom_r)
return ROM[pastelg_blitter_src_addr_r() & 0x7fff];
}
-static ADDRESS_MAP_START( pastelg_map, AS_PROGRAM, 8, pastelg_state )
+ADDRESS_MAP_START(pastelg_state::pastelg_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
@@ -56,7 +56,7 @@ READ8_MEMBER(pastelg_state::pastelg_irq_ack_r)
return 0;
}
-static ADDRESS_MAP_START( pastelg_io_map, AS_IO, 8, pastelg_state )
+ADDRESS_MAP_START(pastelg_state::pastelg_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x00) AM_WRITENOP
AM_RANGE(0x00, 0x7f) AM_DEVREAD("nb1413m3", nb1413m3_device, sndrom_r)
@@ -111,7 +111,7 @@ CUSTOM_INPUT_MEMBER( pastelg_state::nb1413m3_busyflag_r )
return m_nb1413m3->m_busyflag & 0x01;
}
-static ADDRESS_MAP_START( threeds_io_map, AS_IO, 8, pastelg_state )
+ADDRESS_MAP_START(pastelg_state::threeds_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x81, 0x81) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x82, 0x83) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/patapata.cpp b/src/mame/drivers/patapata.cpp
index 40393e0ad4d..bfcd83c2fb0 100644
--- a/src/mame/drivers/patapata.cpp
+++ b/src/mame/drivers/patapata.cpp
@@ -49,6 +49,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void patapata(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void video_start() override;
@@ -180,7 +181,7 @@ also
*/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, patapata_state )
+ADDRESS_MAP_START(patapata_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/pb1000.cpp b/src/mame/drivers/pb1000.cpp
index 5ada4c2f91f..15edeeb37e9 100644
--- a/src/mame/drivers/pb1000.cpp
+++ b/src/mame/drivers/pb1000.cpp
@@ -76,9 +76,11 @@ public:
TIMER_CALLBACK_MEMBER(keyboard_timer);
void pb2000c(machine_config &config);
void pb1000(machine_config &config);
+ void pb1000_mem(address_map &map);
+ void pb2000c_mem(address_map &map);
};
-static ADDRESS_MAP_START(pb1000_mem, AS_PROGRAM, 16, pb1000_state)
+ADDRESS_MAP_START(pb1000_state::pb1000_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE( 0x00000, 0x00bff ) AM_ROM
//AM_RANGE( 0x00c00, 0x00c0f ) AM_NOP //I/O
@@ -87,7 +89,7 @@ static ADDRESS_MAP_START(pb1000_mem, AS_PROGRAM, 16, pb1000_state)
AM_RANGE( 0x18000, 0x1ffff ) AM_RAM AM_SHARE("nvram2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pb2000c_mem, AS_PROGRAM, 16, pb1000_state)
+ADDRESS_MAP_START(pb1000_state::pb2000c_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE( 0x00000, 0x0ffff ) AM_ROMBANK("bank1")
AM_RANGE( 0x00000, 0x00bff ) AM_ROM
diff --git a/src/mame/drivers/pbaction.cpp b/src/mame/drivers/pbaction.cpp
index 46e55fe81a9..2e09fefd21b 100644
--- a/src/mame/drivers/pbaction.cpp
+++ b/src/mame/drivers/pbaction.cpp
@@ -86,7 +86,7 @@ WRITE8_MEMBER(pbaction_state::nmi_mask_w)
m_nmi_mask = data & 1;
}
-static ADDRESS_MAP_START( pbaction_map, AS_PROGRAM, 8, pbaction_state )
+ADDRESS_MAP_START(pbaction_state::pbaction_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("work_ram")
AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(pbaction_videoram2_w) AM_SHARE("videoram2")
@@ -104,12 +104,12 @@ static ADDRESS_MAP_START( pbaction_map, AS_PROGRAM, 8, pbaction_state )
AM_RANGE(0xe800, 0xe800) AM_WRITE(pbaction_sh_command_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, pbaction_state )
+ADDRESS_MAP_START(pbaction_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pbaction_sound_map, AS_PROGRAM, 8, pbaction_state )
+ADDRESS_MAP_START(pbaction_state::pbaction_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -117,7 +117,7 @@ static ADDRESS_MAP_START( pbaction_sound_map, AS_PROGRAM, 8, pbaction_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pbaction_sound_io_map, AS_IO, 8, pbaction_state )
+ADDRESS_MAP_START(pbaction_state::pbaction_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x20, 0x21) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
@@ -327,7 +327,7 @@ MACHINE_CONFIG_DERIVED(pbaction_state::pbactionx, pbaction)
MCFG_CPU_REPLACE("maincpu", SEGA_CPU_PBACTIO4, 4000000) /* 4 MHz? */
MCFG_CPU_PROGRAM_MAP(pbaction_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", pbaction_state, vblank_irq)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pc.cpp b/src/mame/drivers/pc.cpp
index ae7f269d8c8..8edd1fd3f81 100644
--- a/src/mame/drivers/pc.cpp
+++ b/src/mame/drivers/pc.cpp
@@ -395,30 +395,37 @@ public:
void eagle1600(machine_config &config);
void laser_turbo_xt(machine_config &config);
void ibm5550(machine_config &config);
+ void epc_io(address_map &map);
+ void ibm5550_io(address_map &map);
+ void pc16_io(address_map &map);
+ void pc16_map(address_map &map);
+ void pc8_io(address_map &map);
+ void pc8_map(address_map &map);
+ void zenith_map(address_map &map);
};
-static ADDRESS_MAP_START( pc8_map, AS_PROGRAM, 8, pc_state )
+ADDRESS_MAP_START(pc_state::pc8_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zenith_map, AS_PROGRAM, 8, pc_state )
+ADDRESS_MAP_START(pc_state::zenith_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xf7fff) AM_RAM
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("bios", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc16_map, AS_PROGRAM, 16, pc_state )
+ADDRESS_MAP_START(pc_state::pc16_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pc8_io, AS_IO, 8, pc_state )
+ADDRESS_MAP_START(pc_state::pc8_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", ibm5160_mb_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pc16_io, AS_IO, 16, pc_state )
+ADDRESS_MAP_START(pc_state::pc16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", ibm5160_mb_device, map, 0xffff)
AM_RANGE(0x0070, 0x007f) AM_RAM // needed for Poisk-2
@@ -429,13 +436,13 @@ READ8_MEMBER(pc_state::unk_r)
return 0;
}
-static ADDRESS_MAP_START(ibm5550_io, AS_IO, 16, pc_state )
+ADDRESS_MAP_START(pc_state::ibm5550_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", ibm5160_mb_device, map, 0xffff)
AM_RANGE(0x00a0, 0x00a1) AM_READ8(unk_r, 0x00ff )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(epc_io, AS_IO, 8, pc_state)
+ADDRESS_MAP_START(pc_state::epc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", ibm5160_mb_device, map)
AM_RANGE(0x0070, 0x0070) AM_DEVREADWRITE("i8251", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/pc100.cpp b/src/mame/drivers/pc100.cpp
index 3b08d877897..bc977f862b6 100644
--- a/src/mame/drivers/pc100.cpp
+++ b/src/mame/drivers/pc100.cpp
@@ -146,6 +146,8 @@ public:
WRITE_LINE_MEMBER(rtc_portc_3_w) { m_rtc_portc = (m_rtc_portc & ~(1 << 3)) | ((state & 1) << 3); }
uint8_t m_rtc_portc;
void pc100(machine_config &config);
+ void pc100_io(address_map &map);
+ void pc100_map(address_map &map);
};
void pc100_state::video_start()
@@ -230,7 +232,7 @@ WRITE16_MEMBER( pc100_state::pc100_vram_w )
}
}
-static ADDRESS_MAP_START(pc100_map, AS_PROGRAM, 16, pc100_state)
+ADDRESS_MAP_START(pc100_state::pc100_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0xbffff) AM_RAM // work ram
AM_RANGE(0xc0000,0xdffff) AM_READWRITE(pc100_vram_r,pc100_vram_w) // vram, blitter based!
@@ -310,7 +312,7 @@ WRITE8_MEMBER( pc100_state::pc100_crtc_data_w )
/* everything is 8-bit bus wide */
-static ADDRESS_MAP_START(pc100_io, AS_IO, 16, pc100_state)
+ADDRESS_MAP_START(pc100_state::pc100_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE8("pic8259", pic8259_device, read, write, 0x00ff) // i8259
// AM_RANGE(0x04, 0x07) i8237?
diff --git a/src/mame/drivers/pc1500.cpp b/src/mame/drivers/pc1500.cpp
index 9c6a5310e14..33eca9e025e 100644
--- a/src/mame/drivers/pc1500.cpp
+++ b/src/mame/drivers/pc1500.cpp
@@ -54,9 +54,11 @@ public:
DECLARE_READ8_MEMBER( pc1500_kb_r );
DECLARE_PALETTE_INIT(pc1500);
void pc1500(machine_config &config);
+ void pc1500_mem(address_map &map);
+ void pc1500_mem_io(address_map &map);
};
-static ADDRESS_MAP_START( pc1500_mem , AS_PROGRAM, 8, pc1500_state)
+ADDRESS_MAP_START(pc1500_state::pc1500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff) AM_ROM //module ROM/RAM
AM_RANGE( 0x4000, 0x47ff) AM_RAM //user RAM
@@ -67,7 +69,7 @@ static ADDRESS_MAP_START( pc1500_mem , AS_PROGRAM, 8, pc1500_state)
AM_RANGE( 0xc000, 0xffff) AM_ROM //system ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1500_mem_io , AS_IO, 8, pc1500_state)
+ADDRESS_MAP_START(pc1500_state::pc1500_mem_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0xf000, 0xf00f) AM_DEVREADWRITE("lh5810", lh5810_device, data_r, data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pc1512.cpp b/src/mame/drivers/pc1512.cpp
index 671d125b9b3..055b8633a61 100644
--- a/src/mame/drivers/pc1512.cpp
+++ b/src/mame/drivers/pc1512.cpp
@@ -607,7 +607,7 @@ READ8_MEMBER( pc1640_state::io_r )
// ADDRESS_MAP( pc1512_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( pc1512_mem, AS_PROGRAM, 16, pc1512_state )
+ADDRESS_MAP_START(pc1512_state::pc1512_mem)
AM_RANGE(0x00000, 0x9ffff) AM_RAM
AM_RANGE(0xb8000, 0xbbfff) AM_READWRITE8(video_ram_r, video_ram_w, 0xffff)
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION(I8086_TAG, 0)
@@ -618,7 +618,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( pc1512_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( pc1512_io, AS_IO, 16, pc1512_state )
+ADDRESS_MAP_START(pc1512_state::pc1512_io)
// [RH] 29 Aug 2016: I can find no evidence to indicate that Amstrad had only 10 I/O lines, as the
// schematic calls for a stock 8086 and the I/O and data lines are multiplexed onto the same bus,
// plus address lines 20-10 are towards the middle of a standard ISA slot. If it turns out that this
@@ -643,7 +643,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( pc1640_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( pc1640_mem, AS_PROGRAM, 16, pc1640_state )
+ADDRESS_MAP_START(pc1640_state::pc1640_mem)
AM_RANGE(0x00000, 0x9ffff) AM_RAM
AM_RANGE(0xf0000, 0xf3fff) AM_MIRROR(0xc000) AM_ROM AM_REGION(I8086_TAG, 0)
ADDRESS_MAP_END
@@ -653,7 +653,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( pc1640_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( pc1640_io, AS_IO, 16, pc1640_state )
+ADDRESS_MAP_START(pc1640_state::pc1640_io)
AM_RANGE(0x0000, 0xffff) AM_READ8(io_r, 0xffff)
AM_RANGE(0x000, 0x00f) AM_DEVWRITE8(I8237A5_TAG, am9517a_device, write, 0xffff)
diff --git a/src/mame/drivers/pc2000.cpp b/src/mame/drivers/pc2000.cpp
index 74a14b087a8..f655cafec10 100644
--- a/src/mame/drivers/pc2000.cpp
+++ b/src/mame/drivers/pc2000.cpp
@@ -71,6 +71,8 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pc2000_cart);
void pc2000(machine_config &config);
void gl2000(machine_config &config);
+ void pc2000_io(address_map &map);
+ void pc2000_mem(address_map &map);
};
class gl3000s_state : public pc2000_state
@@ -87,6 +89,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void gl3000s(machine_config &config);
+ void gl3000s_io(address_map &map);
};
class gl4004_state : public pc2000_state
@@ -120,6 +123,8 @@ public:
HD44780_PIXEL_UPDATE(pc1000_pixel_update);
void misterx(machine_config &config);
void pc1000(machine_config &config);
+ void pc1000_io(address_map &map);
+ void pc1000_mem(address_map &map);
};
@@ -175,7 +180,7 @@ WRITE8_MEMBER( pc2000_state::beep_w )
m_beep_state = data;
}
-static ADDRESS_MAP_START(pc2000_mem, AS_PROGRAM, 8, pc2000_state)
+ADDRESS_MAP_START(pc2000_state::pc2000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank0")
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
@@ -183,7 +188,7 @@ static ADDRESS_MAP_START(pc2000_mem, AS_PROGRAM, 8, pc2000_state)
AM_RANGE(0xc000, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc2000_io , AS_IO, 8, pc2000_state)
+ADDRESS_MAP_START(pc2000_state::pc2000_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(rombank0_w)
@@ -292,7 +297,7 @@ SED1520_UPDATE_CB(gl3000s_screen_update_left)
}
-static ADDRESS_MAP_START( gl3000s_io , AS_IO, 8, gl3000s_state)
+ADDRESS_MAP_START(gl3000s_state::gl3000s_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_WRITE(rombank1_w)
@@ -357,7 +362,7 @@ HD44780_PIXEL_UPDATE(pc1000_state::pc1000_pixel_update)
}
}
-static ADDRESS_MAP_START(pc1000_mem, AS_PROGRAM, 8, pc1000_state)
+ADDRESS_MAP_START(pc1000_state::pc1000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("bios", 0x00000)
AM_RANGE(0x4000, 0x47ff) AM_RAM
@@ -365,7 +370,7 @@ static ADDRESS_MAP_START(pc1000_mem, AS_PROGRAM, 8, pc1000_state)
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1000_io , AS_IO, 8, pc1000_state)
+ADDRESS_MAP_START(pc1000_state::pc1000_io)
AM_RANGE(0x0000, 0x01ff) AM_READ(kb_r)
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0xfe) AM_READWRITE(lcdc_control_r, lcdc_control_w)
AM_RANGE(0x4100, 0x4100) AM_MIRROR(0xfe) AM_READWRITE(lcdc_data_r, lcdc_data_w)
diff --git a/src/mame/drivers/pc4.cpp b/src/mame/drivers/pc4.cpp
index 3593aac7967..387550ce755 100644
--- a/src/mame/drivers/pc4.cpp
+++ b/src/mame/drivers/pc4.cpp
@@ -61,13 +61,13 @@ WRITE8_MEMBER( pc4_state::beep_w )
m_beep->set_state(data&0x40);
}
-static ADDRESS_MAP_START(pc4_mem, AS_PROGRAM, 8, pc4_state)
+ADDRESS_MAP_START(pc4_state::pc4_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("rombank")
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pc4_io, AS_IO, 8, pc4_state)
+ADDRESS_MAP_START(pc4_state::pc4_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x000f) AM_DEVREADWRITE("rtc", rp5c01_device, read, write)
AM_RANGE(0x1000, 0x1000) AM_WRITE(beep_w)
diff --git a/src/mame/drivers/pc6001.cpp b/src/mame/drivers/pc6001.cpp
index 0be32cf3906..c28cd7e4663 100644
--- a/src/mame/drivers/pc6001.cpp
+++ b/src/mame/drivers/pc6001.cpp
@@ -227,7 +227,7 @@ WRITE8_MEMBER(pc6001_state::nec_ppi8255_w)
m_ppi->write(space,offset,data);
}
-static ADDRESS_MAP_START(pc6001_map, AS_PROGRAM, 8, pc6001_state )
+ADDRESS_MAP_START(pc6001_state::pc6001_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP
// AM_RANGE(0x4000, 0x5fff) // mapped by the cartslot
@@ -235,7 +235,7 @@ static ADDRESS_MAP_START(pc6001_map, AS_PROGRAM, 8, pc6001_state )
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc6001_io , AS_IO, 8, pc6001_state )
+ADDRESS_MAP_START(pc6001_state::pc6001_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
@@ -677,7 +677,7 @@ READ8_MEMBER(pc6001mk2_state::mk2_bank_w0_r)
return m_bank_w;
}
-static ADDRESS_MAP_START(pc6001mk2_map, AS_PROGRAM, 8, pc6001mk2_state )
+ADDRESS_MAP_START(pc6001mk2_state::pc6001mk2_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") AM_WRITE(mk2_work_ram0_w)
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank2") AM_WRITE(mk2_work_ram1_w)
@@ -689,7 +689,7 @@ static ADDRESS_MAP_START(pc6001mk2_map, AS_PROGRAM, 8, pc6001mk2_state )
AM_RANGE(0xe000, 0xffff) AM_ROMBANK("bank8") AM_WRITE(mk2_work_ram7_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc6001mk2_io , AS_IO, 8, pc6001mk2_state )
+ADDRESS_MAP_START(pc6001mk2_state::pc6001mk2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
@@ -739,7 +739,7 @@ WRITE8_MEMBER(pc6601_state::fdc_w)
{
}
-static ADDRESS_MAP_START( pc6601_io , AS_IO, 8, pc6601_state )
+ADDRESS_MAP_START(pc6601_state::pc6601_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_IMPORT_FROM( pc6001mk2_io )
@@ -908,7 +908,7 @@ READ8_MEMBER(pc6001sr_state::hw_rev_r)
return 0;
}
-static ADDRESS_MAP_START(pc6001sr_map, AS_PROGRAM, 8, pc6001sr_state )
+ADDRESS_MAP_START(pc6001sr_state::pc6001sr_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") AM_WRITE(sr_work_ram0_w)
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank2") AM_WRITE(sr_work_ram1_w)
@@ -920,7 +920,7 @@ static ADDRESS_MAP_START(pc6001sr_map, AS_PROGRAM, 8, pc6001sr_state )
AM_RANGE(0xe000, 0xffff) AM_ROMBANK("bank8") AM_WRITE(sr_work_ram7_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc6001sr_io , AS_IO, 8, pc6001sr_state )
+ADDRESS_MAP_START(pc6001sr_state::pc6001sr_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// 0x40-0x43 palette indexes
diff --git a/src/mame/drivers/pc8001.cpp b/src/mame/drivers/pc8001.cpp
index 67b0ae46451..afd79a03fdd 100644
--- a/src/mame/drivers/pc8001.cpp
+++ b/src/mame/drivers/pc8001.cpp
@@ -166,13 +166,13 @@ WRITE8_MEMBER( pc8001_state::port40_w )
/* Memory Maps */
-static ADDRESS_MAP_START( pc8001_mem, AS_PROGRAM, 8, pc8001_state )
+ADDRESS_MAP_START(pc8001_state::pc8001_mem)
AM_RANGE(0x0000, 0x5fff) AM_RAMBANK("bank1")
AM_RANGE(0x6000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8001_io, AS_IO, 8, pc8001_state )
+ADDRESS_MAP_START(pc8001_state::pc8001_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_READ_PORT("Y0")
@@ -219,14 +219,14 @@ static ADDRESS_MAP_START( pc8001_io, AS_IO, 8, pc8001_state )
AM_RANGE(0xfc, 0xff) AM_DEVREADWRITE(I8255A_TAG, i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8001mk2_mem, AS_PROGRAM, 8, pc8001mk2_state )
+ADDRESS_MAP_START(pc8001mk2_state::pc8001mk2_mem)
AM_RANGE(0x0000, 0x5fff) AM_RAMBANK("bank1")
AM_RANGE(0x6000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8001mk2_io, AS_IO, 8, pc8001mk2_state )
+ADDRESS_MAP_START(pc8001mk2_state::pc8001mk2_io)
AM_IMPORT_FROM(pc8001_io)
AM_RANGE(0x30, 0x30) AM_WRITE(port30_w)
AM_RANGE(0x31, 0x31) AM_WRITE(port31_w)
diff --git a/src/mame/drivers/pc8401a.cpp b/src/mame/drivers/pc8401a.cpp
index 0a5464c11fa..7b267341612 100644
--- a/src/mame/drivers/pc8401a.cpp
+++ b/src/mame/drivers/pc8401a.cpp
@@ -331,7 +331,7 @@ WRITE8_MEMBER( pc8401a_state::port71_w )
/* Memory Maps */
-static ADDRESS_MAP_START( pc8401a_mem, AS_PROGRAM, 8, pc8401a_state )
+ADDRESS_MAP_START(pc8401a_state::pc8401a_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAMBANK("bank1")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
@@ -339,12 +339,12 @@ static ADDRESS_MAP_START( pc8401a_mem, AS_PROGRAM, 8, pc8401a_state )
AM_RANGE(0xe800, 0xffff) AM_RAMBANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8401a_io, AS_IO, 8, pc8401a_state )
+ADDRESS_MAP_START(pc8401a_state::pc8401a_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8500_io, AS_IO, 8, pc8401a_state )
+ADDRESS_MAP_START(pc8401a_state::pc8500_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("Y.0")
diff --git a/src/mame/drivers/pc8801.cpp b/src/mame/drivers/pc8801.cpp
index 850beb151b0..c1107d26601 100644
--- a/src/mame/drivers/pc8801.cpp
+++ b/src/mame/drivers/pc8801.cpp
@@ -476,6 +476,10 @@ public:
void pc8801fh(machine_config &config);
void pc8801(machine_config &config);
void pc8801ma(machine_config &config);
+ void pc8801_io(address_map &map);
+ void pc8801_mem(address_map &map);
+ void pc8801fdc_io(address_map &map);
+ void pc8801fdc_mem(address_map &map);
protected:
virtual void video_start() override;
@@ -1160,7 +1164,7 @@ WRITE8_MEMBER(pc8801_state::pc8801_mem_w)
}
}
-static ADDRESS_MAP_START( pc8801_mem, AS_PROGRAM, 8, pc8801_state )
+ADDRESS_MAP_START(pc8801_state::pc8801_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(pc8801_mem_r,pc8801_mem_w)
ADDRESS_MAP_END
@@ -1761,7 +1765,7 @@ WRITE8_MEMBER(pc8801_state::pc8801_unk_w)
printf("Write port 0x33\n");
}
-static ADDRESS_MAP_START( pc8801_io, AS_IO, 8, pc8801_state )
+ADDRESS_MAP_START(pc8801_state::pc8801_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_READ_PORT("KEY0")
@@ -1864,7 +1868,7 @@ WRITE8_MEMBER(pc8801_state::fdc_8255_c_w)
m_i8255_1_pc = data;
}
-static ADDRESS_MAP_START( pc8801fdc_mem, AS_PROGRAM, 8, pc8801_state )
+ADDRESS_MAP_START(pc8801_state::pc8801fdc_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_RAM
ADDRESS_MAP_END
@@ -1907,7 +1911,7 @@ WRITE8_MEMBER(pc8801_state::fdc_drive_mode_w)
machine().device<upd765a_device>("upd765")->set_rate(data & 0x20 ? 500000 : 250000);
}
-static ADDRESS_MAP_START( pc8801fdc_io, AS_IO, 8, pc8801_state )
+ADDRESS_MAP_START(pc8801_state::pc8801fdc_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_WRITE(fdc_irq_vector_w) // Interrupt Opcode Port
AM_RANGE(0xf4, 0xf4) AM_WRITE(fdc_drive_mode_w) // Drive mode, 2d, 2dd, 2hd
diff --git a/src/mame/drivers/pc88va.cpp b/src/mame/drivers/pc88va.cpp
index b4a421867ef..4acb228b8a8 100644
--- a/src/mame/drivers/pc88va.cpp
+++ b/src/mame/drivers/pc88va.cpp
@@ -188,6 +188,10 @@ DECLARE_WRITE8_MEMBER(dma_memw_cb);
void execute_sprsw_cmd();
void pc88va(machine_config &config);
+ void pc88va_io_map(address_map &map);
+ void pc88va_map(address_map &map);
+ void pc88va_z80_io_map(address_map &map);
+ void pc88va_z80_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
required_device<gfxdecode_device> m_gfxdecode;
@@ -667,7 +671,7 @@ WRITE16_MEMBER(pc88va_state::sys_mem_w)
}
}
-static ADDRESS_MAP_START( pc88va_map, AS_PROGRAM, 16, pc88va_state )
+ADDRESS_MAP_START(pc88va_state::pc88va_map)
AM_RANGE(0x00000, 0x7ffff) AM_RAM
// AM_RANGE(0x80000, 0x9ffff) AM_RAM // EMM
AM_RANGE(0xa0000, 0xdffff) AM_READWRITE(sys_mem_r,sys_mem_w)
@@ -1242,7 +1246,7 @@ READ8_MEMBER(pc88va_state::no_subfdc_r)
}
#endif
-static ADDRESS_MAP_START( pc88va_io_map, AS_IO, 16, pc88va_state )
+ADDRESS_MAP_START(pc88va_state::pc88va_io_map)
AM_RANGE(0x0000, 0x000f) AM_READ8(key_r,0xffff) // Keyboard ROW reading
// AM_RANGE(0x0010, 0x0010) Printer / Calendar Clock Interface
AM_RANGE(0x0020, 0x0021) AM_NOP // RS-232C
@@ -1326,7 +1330,7 @@ TIMER_CALLBACK_MEMBER(pc88va_state::pc8801fd_upd765_tc_to_zero)
/* FDC subsytem CPU */
#if TEST_SUBFDC
-static ADDRESS_MAP_START( pc88va_z80_map, AS_PROGRAM, 8, pc88va_state )
+ADDRESS_MAP_START(pc88va_state::pc88va_z80_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_RAM
ADDRESS_MAP_END
@@ -1349,7 +1353,7 @@ WRITE8_MEMBER(pc88va_state::upd765_mc_w)
machine().device<floppy_connector>("upd765:1")->get_device()->mon_w(!(data & 2));
}
-static ADDRESS_MAP_START( pc88va_z80_io_map, AS_IO, 8, pc88va_state )
+ADDRESS_MAP_START(pc88va_state::pc88va_z80_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf0) AM_WRITE(fdc_irq_vector_w) // Interrupt Opcode Port
// AM_RANGE(0xf4, 0xf4) // Drive Control Port
diff --git a/src/mame/drivers/pc9801.cpp b/src/mame/drivers/pc9801.cpp
index ba2fd53891a..bf49153d944 100644
--- a/src/mame/drivers/pc9801.cpp
+++ b/src/mame/drivers/pc9801.cpp
@@ -672,7 +672,7 @@ READ8_MEMBER(pc9801_state::f0_r)
return 0xff;
}
-static ADDRESS_MAP_START( pc9801_map, AS_PROGRAM, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9801_map)
AM_RANGE(0xa0000, 0xa3fff) AM_READWRITE(tvram_r,tvram_w) //TVRAM
AM_RANGE(0xa8000, 0xbffff) AM_READWRITE8(gvram_r,gvram_w,0xffff) //bitmap VRAM
AM_RANGE(0xcc000, 0xcdfff) AM_ROM AM_REGION("sound_bios",0) //sound BIOS
@@ -682,7 +682,7 @@ static ADDRESS_MAP_START( pc9801_map, AS_PROGRAM, 16, pc9801_state )
ADDRESS_MAP_END
/* first device is even offsets, second one is odd offsets */
-static ADDRESS_MAP_START( pc9801_common_io, AS_IO, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9801_common_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("i8237", am9517a_device, read, write, 0xff00)
AM_RANGE(0x0000, 0x001f) AM_READWRITE8(pic_r, pic_w, 0x00ff) // i8259 PIC (bit 3 ON slave / master) / i8237 DMA
@@ -707,7 +707,7 @@ static ADDRESS_MAP_START( pc9801_common_io, AS_IO, 16, pc9801_state )
AM_RANGE(0x7fd8, 0x7fdf) AM_DEVREADWRITE8("ppi8255_mouse", i8255_device, read, write, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc9801_io, AS_IO, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9801_io)
AM_IMPORT_FROM(pc9801_common_io)
AM_RANGE(0x0020, 0x002f) AM_WRITE8(dmapg4_w,0xff00)
AM_RANGE(0x0068, 0x0069) AM_WRITE8(pc9801_video_ff_w,0x00ff) //mode FF / <undefined>
@@ -1082,11 +1082,11 @@ WRITE16_MEMBER(pc9801_state::grcg_gvram0_w)
upd7220_grcg_w(space, offset | (m_vram_bank << 16), data, mem_mask);
}
-static ADDRESS_MAP_START( ipl_bank, 0, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::ipl_bank)
AM_RANGE(0x00000, 0x2ffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc9801ux_map, AS_PROGRAM, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9801ux_map)
AM_RANGE(0x0a0000, 0x0a3fff) AM_READWRITE(tvram_r, tvram_w)
AM_RANGE(0x0a4000, 0x0a4fff) AM_READWRITE8(pc9801rs_knjram_r, pc9801rs_knjram_w, 0xffff)
AM_RANGE(0x0a8000, 0x0bffff) AM_READWRITE(grcg_gvram_r, grcg_gvram_w)
@@ -1094,7 +1094,7 @@ static ADDRESS_MAP_START( pc9801ux_map, AS_PROGRAM, 16, pc9801_state )
AM_RANGE(0x0e8000, 0x0fffff) AM_DEVICE("ipl_bank", address_map_bank_device, amap16)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc9801ux_io, AS_IO, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9801ux_io)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(pc9801_common_io)
AM_RANGE(0x0020, 0x002f) AM_WRITE8(dmapg8_w,0xff00)
@@ -1113,7 +1113,7 @@ static ADDRESS_MAP_START( pc9801ux_io, AS_IO, 16, pc9801_state )
AM_RANGE(0x3fd8, 0x3fdf) AM_DEVREADWRITE8("pit8253", pit8253_device, read, write, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc9801rs_map, AS_PROGRAM, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9801rs_map)
AM_IMPORT_FROM(pc9801ux_map)
// AM_RANGE(0x0d8000, 0x0d9fff) AM_ROM AM_REGION("ide",0)
AM_RANGE(0x0da000, 0x0dbfff) AM_RAM // ide ram
@@ -1121,7 +1121,7 @@ static ADDRESS_MAP_START( pc9801rs_map, AS_PROGRAM, 16, pc9801_state )
AM_RANGE(0xfe8000, 0xffffff) AM_DEVICE("ipl_bank", address_map_bank_device, amap16)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc9801rs_io, AS_IO, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9801rs_io)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(pc9801ux_io)
AM_RANGE(0x0430, 0x0433) AM_READWRITE8(ide_ctrl_r, ide_ctrl_w, 0x00ff)
@@ -1407,7 +1407,7 @@ WRITE16_MEMBER(pc9801_state::pc9821_grcg_gvram0_w)
}
-static ADDRESS_MAP_START( pc9821_map, AS_PROGRAM, 32, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9821_map)
//AM_RANGE(0x00080000, 0x0009ffff) AM_READWRITE8(winram_r, winram_w, 0xffffffff)
AM_RANGE(0x000a0000, 0x000a3fff) AM_READWRITE16(tvram_r, tvram_w, 0xffffffff)
AM_RANGE(0x000a4000, 0x000a4fff) AM_READWRITE8(pc9801rs_knjram_r, pc9801rs_knjram_w, 0xffffffff)
@@ -1422,7 +1422,7 @@ static ADDRESS_MAP_START( pc9821_map, AS_PROGRAM, 32, pc9801_state )
AM_RANGE(0xfffe8000, 0xffffffff) AM_DEVICE16("ipl_bank", address_map_bank_device, amap16, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc9821_io, AS_IO, 32, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::pc9821_io)
// ADDRESS_MAP_UNMAP_HIGH // TODO: a read to somewhere makes this to fail at POST
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("i8237", am9517a_device, read, write, 0xff00ff00)
AM_RANGE(0x0000, 0x001f) AM_READWRITE8(pic_r, pic_w, 0x00ff00ff) // i8259 PIC (bit 3 ON slave / master) / i8237 DMA
@@ -1507,15 +1507,15 @@ static ADDRESS_MAP_START( pc9821_io, AS_IO, 32, pc9801_state )
// AM_RANGE(0xfcd0, 0xfcd3) MIDI port, option F / <undefined>
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd7220_1_map, 0, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::upd7220_1_map)
AM_RANGE(0x00000, 0x03fff) AM_RAM AM_SHARE("video_ram_1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd7220_2_map, 0, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::upd7220_2_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("video_ram_2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd7220_grcg_2_map, 0, 16, pc9801_state )
+ADDRESS_MAP_START(pc9801_state::upd7220_grcg_2_map)
AM_RANGE(0x00000, 0x3ffff) AM_READWRITE(upd7220_grcg_r, upd7220_grcg_w) AM_SHARE("video_ram_2")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pcat_dyn.cpp b/src/mame/drivers/pcat_dyn.cpp
index 5935e828ebf..8e3c30ef962 100644
--- a/src/mame/drivers/pcat_dyn.cpp
+++ b/src/mame/drivers/pcat_dyn.cpp
@@ -61,6 +61,8 @@ public:
void nvram_init(nvram_device &nvram, void *base, size_t size);
static void pcat_dyn_sb_conf(device_t *device);
void pcat_dyn(machine_config &config);
+ void pcat_io(address_map &map);
+ void pcat_map(address_map &map);
};
void pcat_dyn_state::machine_start()
@@ -95,7 +97,7 @@ WRITE8_MEMBER(pcat_dyn_state::bank2_w)
m_nvram_bank->set_entry(data & 1);
}
-static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_dyn_state )
+ADDRESS_MAP_START(pcat_dyn_state::pcat_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", trident_vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0)
@@ -109,7 +111,7 @@ static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_dyn_state )
AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcat_io, AS_IO, 32, pcat_dyn_state )
+ADDRESS_MAP_START(pcat_dyn_state::pcat_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x03b0, 0x03bf) AM_DEVREADWRITE8("vga", trident_vga_device, port_03b0_r, port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_DEVREADWRITE8("vga", trident_vga_device, port_03c0_r, port_03c0_w, 0xffffffff)
diff --git a/src/mame/drivers/pcat_nit.cpp b/src/mame/drivers/pcat_nit.cpp
index fa184308011..d311b675f8d 100644
--- a/src/mame/drivers/pcat_nit.cpp
+++ b/src/mame/drivers/pcat_nit.cpp
@@ -109,6 +109,10 @@ public:
virtual void machine_start() override;
void bonanza(machine_config &config);
void pcat_nit(machine_config &config);
+ void bonanza_io_map(address_map &map);
+ void bonanza_map(address_map &map);
+ void pcat_map(address_map &map);
+ void pcat_nit_io(address_map &map);
};
/*************************************
@@ -148,7 +152,7 @@ WRITE8_MEMBER(pcat_nit_state::pcat_nit_rombank_w)
}
}
-static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_nit_state )
+ADDRESS_MAP_START(pcat_nit_state::pcat_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0) AM_WRITENOP
@@ -159,7 +163,7 @@ static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_nit_state )
AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bonanza_map, AS_PROGRAM, 32, pcat_nit_state )
+ADDRESS_MAP_START(pcat_nit_state::bonanza_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", cirrus_gd5428_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0) AM_WRITENOP
@@ -185,7 +189,7 @@ READ8_MEMBER(pcat_nit_state::pcat_nit_io_r)
}
}
-static ADDRESS_MAP_START( pcat_nit_io, AS_IO, 32, pcat_nit_state )
+ADDRESS_MAP_START(pcat_nit_state::pcat_nit_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0278, 0x027f) AM_READ8(pcat_nit_io_r, 0xffffffff) AM_WRITENOP
AM_RANGE(0x0280, 0x0283) AM_READNOP
@@ -195,7 +199,7 @@ static ADDRESS_MAP_START( pcat_nit_io, AS_IO, 32, pcat_nit_state )
AM_RANGE(0x03f8, 0x03ff) AM_DEVREADWRITE8("ns16450_0", ns16450_device, ins8250_r, ins8250_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bonanza_io_map, AS_IO, 32, pcat_nit_state )
+ADDRESS_MAP_START(pcat_nit_state::bonanza_io_map)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0278, 0x027f) AM_READ8(pcat_nit_io_r, 0xffffffff) AM_WRITENOP
AM_RANGE(0x0280, 0x0283) AM_READNOP
diff --git a/src/mame/drivers/pcd.cpp b/src/mame/drivers/pcd.cpp
index be4bb3bd08e..24d3cd1a7e2 100644
--- a/src/mame/drivers/pcd.cpp
+++ b/src/mame/drivers/pcd.cpp
@@ -82,6 +82,9 @@ public:
void pcx(machine_config &config);
void pcd(machine_config &config);
+ void pcd_io(address_map &map);
+ void pcd_map(address_map &map);
+ void pcx_io(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -434,13 +437,13 @@ READ16_MEMBER(pcd_state::mem_r)
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( pcd_map, AS_PROGRAM, 16, pcd_state )
+ADDRESS_MAP_START(pcd_state::pcd_map)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE8(nmi_io_r, nmi_io_w, 0xffff)
AM_RANGE(0x00000, 0x7ffff) AM_READWRITE(mem_r, mem_w)
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcd_io, AS_IO, 16, pcd_state )
+ADDRESS_MAP_START(pcd_state::pcd_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_READWRITE8(nmi_io_r, nmi_io_w, 0xffff)
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("nvram")
@@ -461,7 +464,7 @@ static ADDRESS_MAP_START( pcd_io, AS_IO, 16, pcd_state )
AM_RANGE(0xfb02, 0xffff) AM_READWRITE8(nmi_io_r, nmi_io_w, 0xffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcx_io, AS_IO, 16, pcd_state )
+ADDRESS_MAP_START(pcd_state::pcx_io)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(pcd_io)
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(mmu_r, mmu_w)
diff --git a/src/mame/drivers/pce.cpp b/src/mame/drivers/pce.cpp
index 795aa1c2c0f..e343a97ceef 100644
--- a/src/mame/drivers/pce.cpp
+++ b/src/mame/drivers/pce.cpp
@@ -249,7 +249,7 @@ INPUT_PORTS_END
-static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, pce_state )
+ADDRESS_MAP_START(pce_state::pce_mem)
AM_RANGE( 0x000000, 0x0FFFFF) AM_DEVREADWRITE("cartslot", pce_cart_slot_device, read_cart, write_cart)
AM_RANGE( 0x100000, 0x10FFFF) AM_RAM AM_SHARE("cd_ram")
AM_RANGE( 0x110000, 0x1EDFFF) AM_NOP
@@ -265,12 +265,12 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, pce_state )
AM_RANGE( 0x1FF800, 0x1FFBFF) AM_READWRITE( pce_cd_intf_r, pce_cd_intf_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pce_io , AS_IO, 8, pce_state )
+ADDRESS_MAP_START(pce_state::pce_io)
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgx_mem , AS_PROGRAM, 8, pce_state )
+ADDRESS_MAP_START(pce_state::sgx_mem)
AM_RANGE( 0x000000, 0x0FFFFF) AM_DEVREADWRITE("cartslot", pce_cart_slot_device, read_cart, write_cart)
AM_RANGE( 0x100000, 0x10FFFF) AM_RAM AM_SHARE("cd_ram")
AM_RANGE( 0x110000, 0x1EDFFF) AM_NOP
@@ -289,7 +289,7 @@ static ADDRESS_MAP_START( sgx_mem , AS_PROGRAM, 8, pce_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgx_io , AS_IO, 8, pce_state )
+ADDRESS_MAP_START(pce_state::sgx_io)
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE( "huc6202", huc6202_device, io_read, io_write )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pce220.cpp b/src/mame/drivers/pce220.cpp
index a262d4f4006..bf5e3c67a01 100644
--- a/src/mame/drivers/pce220.cpp
+++ b/src/mame/drivers/pce220.cpp
@@ -104,6 +104,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(on_irq);
TIMER_DEVICE_CALLBACK_MEMBER(pce220_timer_callback);
void pce220(machine_config &config);
+ void pce220_io(address_map &map);
+ void pce220_mem(address_map &map);
};
class pcg850v_state : public pce220_state
@@ -129,6 +131,7 @@ public:
DECLARE_WRITE8_MEMBER( g850v_lcd_data_w );
void pcg850v(machine_config &config);
void pcg815(machine_config &config);
+ void pcg850v_io(address_map &map);
};
uint32_t pce220_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
@@ -573,14 +576,14 @@ WRITE8_MEMBER( pcg850v_state::g850v_lcd_data_w )
}
-static ADDRESS_MAP_START(pce220_mem, AS_PROGRAM, 8, pce220_state)
+ADDRESS_MAP_START(pce220_state::pce220_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pce220_io , AS_IO, 8, pce220_state)
+ADDRESS_MAP_START(pce220_state::pce220_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_READ(kb_r)
@@ -604,7 +607,7 @@ static ADDRESS_MAP_START( pce220_io , AS_IO, 8, pce220_state)
AM_RANGE(0x5b, 0x5b) AM_READ(lcd_data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcg850v_io , AS_IO, 8, pcg850v_state)
+ADDRESS_MAP_START(pcg850v_state::pcg850v_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_READ(kb_r)
diff --git a/src/mame/drivers/pcfx.cpp b/src/mame/drivers/pcfx.cpp
index c03cd219c1a..404dc8b9ad3 100644
--- a/src/mame/drivers/pcfx.cpp
+++ b/src/mame/drivers/pcfx.cpp
@@ -50,6 +50,8 @@ public:
TIMER_CALLBACK_MEMBER(pad_func);
void pcfx(machine_config &config);
+ void pcfx_io(address_map &map);
+ void pcfx_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -92,7 +94,7 @@ WRITE8_MEMBER(pcfx_state::extio_w)
io_space.write_byte(offset, data);
}
-static ADDRESS_MAP_START( pcfx_mem, AS_PROGRAM, 32, pcfx_state )
+ADDRESS_MAP_START(pcfx_state::pcfx_mem)
AM_RANGE( 0x00000000, 0x001FFFFF ) AM_RAM /* RAM */
// AM_RANGE( 0x80000000, 0x807FFFFF ) AM_READWRITE8(extio_r,extio_w,0xffffffff) /* EXTIO */
AM_RANGE( 0xE0000000, 0xE7FFFFFF ) AM_NOP /* BackUp RAM */
@@ -183,7 +185,7 @@ WRITE16_MEMBER( pcfx_state::pad_w )
}
-static ADDRESS_MAP_START( pcfx_io, AS_IO, 32, pcfx_state )
+ADDRESS_MAP_START(pcfx_state::pcfx_io)
AM_RANGE( 0x00000000, 0x000000FF ) AM_READWRITE16(pad_r, pad_w, 0xffffffff) /* PAD */
AM_RANGE( 0x00000100, 0x000001FF ) AM_NOP /* HuC6230 */
AM_RANGE( 0x00000200, 0x000002FF ) AM_DEVICE16( "huc6271", huc6271_device, regs, 0xffff ) /* HuC6271 */
diff --git a/src/mame/drivers/pcktgal.cpp b/src/mame/drivers/pcktgal.cpp
index b000bb40363..dc322952205 100644
--- a/src/mame/drivers/pcktgal.cpp
+++ b/src/mame/drivers/pcktgal.cpp
@@ -71,7 +71,7 @@ READ8_MEMBER(pcktgal_state::adpcm_reset_r)
/***************************************************************************/
-static ADDRESS_MAP_START( pcktgal_map, AS_PROGRAM, 8, pcktgal_state )
+ADDRESS_MAP_START(pcktgal_state::pcktgal_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("tilegen1", deco_bac06_device, pf_data_8bit_r, pf_data_8bit_w)
AM_RANGE(0x1000, 0x11ff) AM_RAM AM_SHARE("spriteram")
@@ -89,7 +89,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( pcktgal_sound_map, AS_PROGRAM, 8, pcktgal_state )
+ADDRESS_MAP_START(pcktgal_state::pcktgal_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_device, write)
diff --git a/src/mame/drivers/pcm.cpp b/src/mame/drivers/pcm.cpp
index 8f93b1bd8d5..235468dd830 100644
--- a/src/mame/drivers/pcm.cpp
+++ b/src/mame/drivers/pcm.cpp
@@ -89,6 +89,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void pcm(machine_config &config);
+ void pcm_io(address_map &map);
+ void pcm_mem(address_map &map);
private:
bool m_cone;
uint8_t m_85;
@@ -158,14 +160,14 @@ WRITE8_MEMBER( pcm_state::pcm_85_w )
-static ADDRESS_MAP_START(pcm_mem, AS_PROGRAM, 8, pcm_state)
+ADDRESS_MAP_START(pcm_state::pcm_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x1fff ) AM_ROM // ROM
AM_RANGE( 0x2000, 0xf7ff ) AM_RAM // RAM
AM_RANGE( 0xf800, 0xffff ) AM_RAM AM_SHARE("videoram") // Video RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pcm_io, AS_IO, 8, pcm_state)
+ADDRESS_MAP_START(pcm_state::pcm_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ctc_s", z80ctc_device, read, write) // system CTC
diff --git a/src/mame/drivers/pcw.cpp b/src/mame/drivers/pcw.cpp
index 2e070e9fd37..01c51281838 100644
--- a/src/mame/drivers/pcw.cpp
+++ b/src/mame/drivers/pcw.cpp
@@ -192,7 +192,7 @@ WRITE_LINE_MEMBER( pcw_state::pcw_fdc_interrupt )
block 3 could be paged into any bank, and this explains the
setup of the memory below.
*/
-static ADDRESS_MAP_START(pcw_map, AS_PROGRAM, 8, pcw_state )
+ADDRESS_MAP_START(pcw_state::pcw_map)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank5")
AM_RANGE(0x4000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE_BANK("bank6")
AM_RANGE(0x8000, 0xbfff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank7")
@@ -948,7 +948,7 @@ WRITE8_MEMBER(pcw_state::pcw9512_parallel_w)
logerror("pcw9512 parallel w: offs: %04x data: %02x\n",offset,data);
}
-static ADDRESS_MAP_START(pcw_io, AS_IO, 8, pcw_state )
+ADDRESS_MAP_START(pcw_state::pcw_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x000, 0x001) AM_MIRROR(0x7e) AM_DEVICE("upd765", upd765a_device, map)
AM_RANGE(0x080, 0x0ef) AM_READWRITE(pcw_expansion_r, pcw_expansion_w)
@@ -964,7 +964,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START(pcw9512_io, AS_IO, 8, pcw_state )
+ADDRESS_MAP_START(pcw_state::pcw9512_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x000, 0x001) AM_MIRROR(0x7e) AM_DEVICE("upd765", upd765a_device, map)
AM_RANGE(0x080, 0x0ef) AM_READWRITE(pcw_expansion_r, pcw_expansion_w)
diff --git a/src/mame/drivers/pcw16.cpp b/src/mame/drivers/pcw16.cpp
index 86f31444aff..61c80319a80 100644
--- a/src/mame/drivers/pcw16.cpp
+++ b/src/mame/drivers/pcw16.cpp
@@ -142,7 +142,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(pcw16_state::pcw16_timer_callback)
}
}
-static ADDRESS_MAP_START(pcw16_map, AS_PROGRAM, 8, pcw16_state )
+ADDRESS_MAP_START(pcw16_state::pcw16_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(pcw16_mem_r, pcw16_mem_w)
ADDRESS_MAP_END
@@ -934,7 +934,7 @@ static SLOT_INTERFACE_START( pcw16_floppies )
SLOT_INTERFACE_END
-static ADDRESS_MAP_START(pcw16_io, AS_IO, 8, pcw16_state )
+ADDRESS_MAP_START(pcw16_state::pcw16_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
/* super i/o chip */
AM_RANGE(0x018, 0x01f) AM_DEVICE("fdc", pc_fdc_superio_device, map)
diff --git a/src/mame/drivers/pcxt.cpp b/src/mame/drivers/pcxt.cpp
index 80c5fbcee78..45210f27f20 100644
--- a/src/mame/drivers/pcxt.cpp
+++ b/src/mame/drivers/pcxt.cpp
@@ -95,6 +95,11 @@ public:
optional_device<address_map_bank_device> m_bank;
void tetriskr(machine_config &config);
void filetto(machine_config &config);
+ void bank_map(address_map &map);
+ void filetto_io(address_map &map);
+ void filetto_map(address_map &map);
+ void tetriskr_io(address_map &map);
+ void tetriskr_map(address_map &map);
};
@@ -359,12 +364,12 @@ WRITE8_MEMBER(pcxt_state::fdc_dor_w)
m_mb->m_pic8259->ir6_w(1);
}
-static ADDRESS_MAP_START( filetto_map, AS_PROGRAM, 8, pcxt_state )
+ADDRESS_MAP_START(pcxt_state::filetto_map)
AM_RANGE(0xc0000, 0xcffff) AM_DEVICE("bank", address_map_bank_device, amap8)
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( filetto_io, AS_IO, 8, pcxt_state )
+ADDRESS_MAP_START(pcxt_state::filetto_io)
ADDRESS_MAP_GLOBAL_MASK(0x3ff)
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", pc_noppi_mb_device, map)
AM_RANGE(0x0060, 0x0060) AM_READ(port_a_r) //not a real 8255
@@ -378,11 +383,11 @@ static ADDRESS_MAP_START( filetto_io, AS_IO, 8, pcxt_state )
AM_RANGE(0x03f5, 0x03f5) AM_READWRITE(fdc765_data_r,fdc765_data_w)//FDC Data
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tetriskr_map, AS_PROGRAM, 8, pcxt_state )
+ADDRESS_MAP_START(pcxt_state::tetriskr_map)
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tetriskr_io, AS_IO, 8, pcxt_state )
+ADDRESS_MAP_START(pcxt_state::tetriskr_io)
ADDRESS_MAP_GLOBAL_MASK(0x3ff)
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", pc_noppi_mb_device, map)
AM_RANGE(0x03c8, 0x03c8) AM_READ_PORT("IN0")
@@ -390,7 +395,7 @@ static ADDRESS_MAP_START( tetriskr_io, AS_IO, 8, pcxt_state )
// AM_RANGE(0x03ce, 0x03ce) AM_READ_PORT("IN1") //read then discarded?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank_map, 0, 8, pcxt_state )
+ADDRESS_MAP_START(pcxt_state::bank_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_REGION("game_prg", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pda600.cpp b/src/mame/drivers/pda600.cpp
index 5ab845b2aaa..c15acdf7b23 100644
--- a/src/mame/drivers/pda600.cpp
+++ b/src/mame/drivers/pda600.cpp
@@ -79,10 +79,12 @@ public:
uint8_t * m_video_ram;
void pda600(machine_config &config);
+ void pda600_io(address_map &map);
+ void pda600_mem(address_map &map);
};
-static ADDRESS_MAP_START(pda600_mem, AS_PROGRAM, 8, pda600_state)
+ADDRESS_MAP_START(pda600_state::pda600_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x1ffff) AM_ROM
//AM_RANGE(0x20000, 0x9ffff) AM_RAM // PCMCIA Card
@@ -90,7 +92,7 @@ static ADDRESS_MAP_START(pda600_mem, AS_PROGRAM, 8, pda600_state)
AM_RANGE(0xe0000, 0xfffff) AM_RAM AM_REGION("mainram", 0) AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pda600_io, AS_IO, 8, pda600_state)
+ADDRESS_MAP_START(pda600_state::pda600_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_NOP /* Z180 internal registers */
diff --git a/src/mame/drivers/pdp1.cpp b/src/mame/drivers/pdp1.cpp
index 886c4c9fcaf..2863f384518 100644
--- a/src/mame/drivers/pdp1.cpp
+++ b/src/mame/drivers/pdp1.cpp
@@ -71,7 +71,7 @@ To load and play a game:
*/
-static ADDRESS_MAP_START(pdp1_map, AS_PROGRAM, 32, pdp1_state )
+ADDRESS_MAP_START(pdp1_state::pdp1_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pdp11.cpp b/src/mame/drivers/pdp11.cpp
index fdfe62ea25d..b2de6e818c2 100644
--- a/src/mame/drivers/pdp11.cpp
+++ b/src/mame/drivers/pdp11.cpp
@@ -119,6 +119,8 @@ public:
void pdp11ub2(machine_config &config);
void pdp11(machine_config &config);
void pdp11qb(machine_config &config);
+ void pdp11_mem(address_map &map);
+ void pdp11qb_mem(address_map &map);
};
READ16_MEMBER(pdp11_state::teletype_ctrl_r)
@@ -159,7 +161,7 @@ WRITE16_MEMBER(pdp11_state::teletype_ctrl_w)
}
}
-static ADDRESS_MAP_START(pdp11_mem, AS_PROGRAM, 16, pdp11_state)
+ADDRESS_MAP_START(pdp11_state::pdp11_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xdfff ) AM_RAM // RAM
AM_RANGE( 0xea00, 0xfeff ) AM_ROM
@@ -168,7 +170,7 @@ static ADDRESS_MAP_START(pdp11_mem, AS_PROGRAM, 16, pdp11_state)
AM_RANGE( 0xfe78, 0xfe7b ) AM_DEVWRITE("rx01", rx01_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pdp11qb_mem, AS_PROGRAM, 16, pdp11_state)
+ADDRESS_MAP_START(pdp11_state::pdp11qb_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xe9ff ) AM_RAM // RAM
AM_RANGE( 0xea00, 0xefff ) AM_ROM
diff --git a/src/mame/drivers/pecom.cpp b/src/mame/drivers/pecom.cpp
index 53a1e7efaba..f0adf324b64 100644
--- a/src/mame/drivers/pecom.cpp
+++ b/src/mame/drivers/pecom.cpp
@@ -17,7 +17,7 @@
/* Address maps */
-static ADDRESS_MAP_START(pecom64_mem, AS_PROGRAM, 8, pecom_state )
+ADDRESS_MAP_START(pecom_state::pecom64_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x4000, 0x7fff ) AM_RAMBANK("bank2")
AM_RANGE( 0x8000, 0xbfff ) AM_ROM // ROM 1
@@ -26,7 +26,7 @@ static ADDRESS_MAP_START(pecom64_mem, AS_PROGRAM, 8, pecom_state )
AM_RANGE( 0xf800, 0xffff ) AM_RAMBANK("bank4") // CDP1869 / ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pecom64_io, AS_IO, 8, pecom_state )
+ADDRESS_MAP_START(pecom_state::pecom64_io)
AM_RANGE(0x01, 0x01) AM_WRITE(pecom_bank_w)
AM_RANGE(0x03, 0x03) AM_READ(pecom_keyboard_r)
AM_RANGE(0x03, 0x07) AM_WRITE(pecom_cdp1869_w)
diff --git a/src/mame/drivers/pegasus.cpp b/src/mame/drivers/pegasus.cpp
index 6e5d72232aa..e05460869b1 100644
--- a/src/mame/drivers/pegasus.cpp
+++ b/src/mame/drivers/pegasus.cpp
@@ -92,6 +92,8 @@ public:
void pegasusm(machine_config &config);
void pegasus(machine_config &config);
+ void pegasus_mem(address_map &map);
+ void pegasusm_mem(address_map &map);
private:
uint8_t m_kbd_row;
bool m_kbd_irq;
@@ -191,7 +193,7 @@ READ8_MEMBER( pegasus_state::pegasus_protection_r )
return data;
}
-static ADDRESS_MAP_START(pegasus_mem, AS_PROGRAM, 8, pegasus_state)
+ADDRESS_MAP_START(pegasus_state::pegasus_mem)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x0000, 0x2fff) // mapped by the cartslots 1-3
AM_RANGE(0xb000, 0xbdff) AM_RAM
@@ -204,7 +206,7 @@ static ADDRESS_MAP_START(pegasus_mem, AS_PROGRAM, 8, pegasus_state)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pegasusm_mem, AS_PROGRAM, 8, pegasus_state)
+ADDRESS_MAP_START(pegasus_state::pegasusm_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(pegasus_mem)
AM_RANGE(0x5000, 0xafff) AM_RAM
diff --git a/src/mame/drivers/pencil2.cpp b/src/mame/drivers/pencil2.cpp
index 0beaf56b627..568ba21f66d 100644
--- a/src/mame/drivers/pencil2.cpp
+++ b/src/mame/drivers/pencil2.cpp
@@ -116,6 +116,8 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER(printer_ready_r);
DECLARE_CUSTOM_INPUT_MEMBER(printer_ack_r);
void pencil2(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_start() override;
int m_centronics_busy;
@@ -127,7 +129,7 @@ private:
required_device<generic_slot_device> m_cart;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, pencil2_state)
+ADDRESS_MAP_START(pencil2_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x5fff) AM_WRITENOP // stop error log filling up
@@ -135,7 +137,7 @@ static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, pencil2_state)
//AM_RANGE(0x8000, 0xffff) // mapped by the cartslot
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, pencil2_state)
+ADDRESS_MAP_START(pencil2_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE("cent_data_out", output_latch_device, write)
diff --git a/src/mame/drivers/pengadvb.cpp b/src/mame/drivers/pengadvb.cpp
index 5a5b6079894..4d19820ec14 100644
--- a/src/mame/drivers/pengadvb.cpp
+++ b/src/mame/drivers/pengadvb.cpp
@@ -69,6 +69,9 @@ public:
virtual void machine_reset() override;
void pengadvb_decrypt(const char* region);
void pengadvb(machine_config &config);
+ void bank_mem(address_map &map);
+ void io_mem(address_map &map);
+ void program_mem(address_map &map);
};
@@ -93,11 +96,11 @@ WRITE8_MEMBER(pengadvb_state::megarom_bank_w)
m_bank[offset >> 13 & 3]->set_entry(data & 0xf);
}
-static ADDRESS_MAP_START( program_mem, AS_PROGRAM, 8, pengadvb_state )
+ADDRESS_MAP_START(pengadvb_state::program_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mem_r, mem_w) // 4 pages of 16KB
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank_mem, AS_PROGRAM, 8, pengadvb_state )
+ADDRESS_MAP_START(pengadvb_state::bank_mem)
// slot 0, MSX BIOS
AM_RANGE(0x00000, 0x07fff) AM_ROM AM_REGION("maincpu", 0)
@@ -112,7 +115,7 @@ static ADDRESS_MAP_START( bank_mem, AS_PROGRAM, 8, pengadvb_state )
AM_RANGE(0x3c000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_mem, AS_IO, 8, pengadvb_state )
+ADDRESS_MAP_START(pengadvb_state::io_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x98, 0x98) AM_DEVREADWRITE("tms9128", tms9128_device, vram_read, vram_write)
diff --git a/src/mame/drivers/pengo.cpp b/src/mame/drivers/pengo.cpp
index e3851e3cfab..d47fc05af92 100644
--- a/src/mame/drivers/pengo.cpp
+++ b/src/mame/drivers/pengo.cpp
@@ -89,6 +89,9 @@ public:
void pengoe(machine_config &config);
void pengou(machine_config &config);
void pengo(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void jrpacmbl_map(address_map &map);
+ void pengo_map(address_map &map);
};
@@ -136,7 +139,7 @@ WRITE_LINE_MEMBER(pengo_state::irq_mask_w)
m_irq_mask = state;
}
-static ADDRESS_MAP_START( pengo_map, AS_PROGRAM, 8, pengo_state )
+ADDRESS_MAP_START(pengo_state::pengo_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(pacman_videoram_w) AM_SHARE("videoram") /* video and color RAM, scratchpad RAM, sprite codes */
AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(pacman_colorram_w) AM_SHARE("colorram")
@@ -153,14 +156,14 @@ static ADDRESS_MAP_START( pengo_map, AS_PROGRAM, 8, pengo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, pengo_state )
+ADDRESS_MAP_START(pengo_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8800, 0x8fef) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x8ff0, 0x8fff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jrpacmbl_map, AS_PROGRAM, 8, pengo_state )
+ADDRESS_MAP_START(pengo_state::jrpacmbl_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(jrpacman_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8800, 0x8fef) AM_RAM
@@ -375,7 +378,7 @@ MACHINE_CONFIG_START(pengo_state::pengo)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6)
MCFG_CPU_PROGRAM_MAP(pengo_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", pengo_state, vblank_irq)
MCFG_DEVICE_ADD("latch", LS259, 0) // U27
@@ -420,7 +423,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(pengo_state::pengoe, pengo)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5010, MASTER_CLOCK/6)
MCFG_CPU_PROGRAM_MAP(pengo_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", pengo_state, vblank_irq)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pentagon.cpp b/src/mame/drivers/pentagon.cpp
index 9dde3096826..c6add6af322 100644
--- a/src/mame/drivers/pentagon.cpp
+++ b/src/mame/drivers/pentagon.cpp
@@ -43,6 +43,9 @@ public:
TIMER_CALLBACK_MEMBER(irq_off);
void pent1024(machine_config &config);
void pentagon(machine_config &config);
+ void pentagon_io(address_map &map);
+ void pentagon_mem(address_map &map);
+ void pentagon_switch(address_map &map);
protected:
required_memory_bank m_bank1;
required_memory_bank m_bank2;
@@ -177,14 +180,14 @@ READ8_MEMBER(pentagon_state::beta_disable_r)
return m_program->read_byte(offset + 0x4000);
}
-static ADDRESS_MAP_START(pentagon_mem, AS_PROGRAM, 8, pentagon_state)
+ADDRESS_MAP_START(pentagon_state::pentagon_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START (pentagon_io, AS_IO, 8, pentagon_state )
+ADDRESS_MAP_START(pentagon_state::pentagon_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0000) AM_WRITE(pentagon_port_7ffd_w) AM_MIRROR(0x7ffd) // (A15 | A1) == 0
AM_RANGE(0x001f, 0x001f) AM_DEVREADWRITE(BETA_DISK_TAG, beta_disk_device, status_r, command_w) AM_MIRROR(0xff00)
@@ -197,7 +200,7 @@ static ADDRESS_MAP_START (pentagon_io, AS_IO, 8, pentagon_state )
AM_RANGE(0xc000, 0xc000) AM_DEVREADWRITE("ay8912", ay8910_device, data_r, address_w) AM_MIRROR(0x3ffd)
ADDRESS_MAP_END
-static ADDRESS_MAP_START (pentagon_switch, AS_OPCODES, 8, pentagon_state)
+ADDRESS_MAP_START(pentagon_state::pentagon_switch)
AM_RANGE(0x0000, 0x3fff) AM_READ(beta_neutral_r) // Overlap with next because we want real addresses on the 3e00-3fff range
AM_RANGE(0x3d00, 0x3dff) AM_READ(beta_enable_r)
AM_RANGE(0x4000, 0xffff) AM_READ(beta_disable_r)
@@ -255,7 +258,7 @@ MACHINE_CONFIG_DERIVED(pentagon_state::pentagon, spectrum_128)
MCFG_CPU_CLOCK(XTAL(14'000'000) / 4)
MCFG_CPU_PROGRAM_MAP(pentagon_mem)
MCFG_CPU_IO_MAP(pentagon_io)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(pentagon_switch)
+ MCFG_CPU_OPCODES_MAP(pentagon_switch)
MCFG_CPU_VBLANK_INT_DRIVER("screen", pentagon_state, pentagon_interrupt)
MCFG_MACHINE_RESET_OVERRIDE(pentagon_state, pentagon )
diff --git a/src/mame/drivers/peoplepc.cpp b/src/mame/drivers/peoplepc.cpp
index e9e5497cfdf..0ffe4cbafcb 100644
--- a/src/mame/drivers/peoplepc.cpp
+++ b/src/mame/drivers/peoplepc.cpp
@@ -63,6 +63,8 @@ public:
uint8_t m_dma0pg;
void olypeopl(machine_config &config);
+ void peoplepc_io(address_map &map);
+ void peoplepc_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -188,7 +190,7 @@ void peoplepc_state::machine_start()
m_flop1->get_device()->setup_unload_cb(floppy_image_device::unload_cb(&peoplepc_state::floppy_unload, this));
}
-static ADDRESS_MAP_START( peoplepc_map, AS_PROGRAM, 16, peoplepc_state )
+ADDRESS_MAP_START(peoplepc_state::peoplepc_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x7ffff) AM_RAM
AM_RANGE(0xc0000, 0xdffff) AM_RAM AM_SHARE("gvram")
@@ -197,7 +199,7 @@ static ADDRESS_MAP_START( peoplepc_map, AS_PROGRAM, 16, peoplepc_state )
AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(peoplepc_io, AS_IO, 16, peoplepc_state )
+ADDRESS_MAP_START(peoplepc_state::peoplepc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0014, 0x0017) AM_DEVREADWRITE8("pic8259_1", pic8259_device, read, write, 0x00ff)
AM_RANGE(0x0018, 0x001b) AM_DEVREADWRITE8("pic8259_0", pic8259_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/peplus.cpp b/src/mame/drivers/peplus.cpp
index 1771aa6e1d6..c98c9d26cf9 100644
--- a/src/mame/drivers/peplus.cpp
+++ b/src/mame/drivers/peplus.cpp
@@ -338,6 +338,8 @@ public:
void handle_lightpen();
void peplus(machine_config &config);
+ void peplus_iomap(address_map &map);
+ void peplus_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -997,11 +999,11 @@ GFXDECODE_END
* Memory map information *
*************************/
-static ADDRESS_MAP_START( peplus_map, AS_PROGRAM, 8, peplus_state )
+ADDRESS_MAP_START(peplus_state::peplus_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_SHARE("prograram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( peplus_iomap, AS_IO, 8, peplus_state )
+ADDRESS_MAP_START(peplus_state::peplus_iomap)
// Battery-backed RAM (0x1000-0x01fff Extended RAM for Superboards Only)
AM_RANGE(0x0000, 0x1fff) AM_RAM_WRITE(peplus_cmos_w) AM_SHARE("cmos")
diff --git a/src/mame/drivers/pes.cpp b/src/mame/drivers/pes.cpp
index 3c9acb9d244..450c0c5bd66 100644
--- a/src/mame/drivers/pes.cpp
+++ b/src/mame/drivers/pes.cpp
@@ -223,13 +223,13 @@ void pes_state::machine_reset()
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(i80c31_mem, AS_PROGRAM, 8, pes_state)
+ADDRESS_MAP_START(pes_state::i80c31_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM /* 27C64 ROM */
// AM_RANGE(0x2000, 0x3fff) AM_RAM /* 6164 8k SRAM, not populated */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, pes_state)
+ADDRESS_MAP_START(pes_state::i80c31_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0, 0x0) AM_WRITE(rsq_wsq_w) /* /WS(0) and /RS(1) */
AM_RANGE(0x1, 0x1) AM_READWRITE(port1_r, port1_w) /* tms5220 reads and writes */
diff --git a/src/mame/drivers/pet.cpp b/src/mame/drivers/pet.cpp
index f53a3af6f62..408061f38e6 100644
--- a/src/mame/drivers/pet.cpp
+++ b/src/mame/drivers/pet.cpp
@@ -345,6 +345,7 @@ public:
void cbm3008(machine_config &config);
void pet2001(machine_config &config);
void pet2001n32(machine_config &config);
+ void pet2001_mem(address_map &map);
};
@@ -447,6 +448,7 @@ public:
uint8_t m_cr;
void cbm8296d(machine_config &config);
void cbm8296(machine_config &config);
+ void cbm8296_mem(address_map &map);
};
@@ -882,7 +884,7 @@ WRITE8_MEMBER( cbm8296_state::write )
// ADDRESS_MAP( pet2001_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( pet2001_mem, AS_PROGRAM, 8, pet_state )
+ADDRESS_MAP_START(pet_state::pet2001_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -891,7 +893,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( cbm8296_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( cbm8296_mem, AS_PROGRAM, 8, cbm8296_state )
+ADDRESS_MAP_START(cbm8296_state::cbm8296_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/peyper.cpp b/src/mame/drivers/peyper.cpp
index 20db75890e5..a5bba7a211d 100644
--- a/src/mame/drivers/peyper.cpp
+++ b/src/mame/drivers/peyper.cpp
@@ -67,6 +67,8 @@ public:
DECLARE_DRIVER_INIT(odin);
DECLARE_DRIVER_INIT(wolfman);
void peyper(machine_config &config);
+ void peyper_io(address_map &map);
+ void peyper_map(address_map &map);
private:
uint8_t m_digit;
uint8_t m_disp_layout[36];
@@ -195,13 +197,13 @@ CUSTOM_INPUT_MEMBER(peyper_state::wolfman_replay_hs_r)
}
-static ADDRESS_MAP_START( peyper_map, AS_PROGRAM, 8, peyper_state )
+ADDRESS_MAP_START(peyper_state::peyper_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x5FFF) AM_ROM
AM_RANGE(0x6000, 0x67FF) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( peyper_io, AS_IO, 8, peyper_state )
+ADDRESS_MAP_START(peyper_state::peyper_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("i8279", i8279_device, read, write)
diff --git a/src/mame/drivers/pg685.cpp b/src/mame/drivers/pg685.cpp
index 72df00a456c..63558c2a578 100644
--- a/src/mame/drivers/pg685.cpp
+++ b/src/mame/drivers/pg685.cpp
@@ -134,6 +134,9 @@ public:
void pg685(machine_config &config);
void pg675(machine_config &config);
void pg685oua12(machine_config &config);
+ void pg675_mem(address_map &map);
+ void pg685_mem(address_map &map);
+ void pg685oua12_mem(address_map &map);
private:
virtual void machine_reset() override;
virtual void video_start() override;
@@ -150,7 +153,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START(pg675_mem, AS_PROGRAM, 8, pg685_state)
+ADDRESS_MAP_START(pg685_state::pg675_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0xbffff) AM_RAM
AM_RANGE(0xf0000,0xf1fff) AM_RAM
@@ -175,7 +178,7 @@ static ADDRESS_MAP_START(pg675_mem, AS_PROGRAM, 8, pg685_state)
AM_RANGE(0xfc000,0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pg685_mem, AS_PROGRAM, 8, pg685_state)
+ADDRESS_MAP_START(pg685_state::pg685_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(pg675_mem)
AM_RANGE(0xf9f34, 0xf9f37) AM_DEVREADWRITE("bppit", pit8253_device, read, write)
@@ -187,7 +190,7 @@ static ADDRESS_MAP_START(pg685_mem, AS_PROGRAM, 8, pg685_state)
AM_RANGE(0xf9f79, 0xf9f79) AM_WRITE(f9f79_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pg685oua12_mem, AS_PROGRAM, 16, pg685_state)
+ADDRESS_MAP_START(pg685_state::pg685oua12_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0xdffff) AM_RAM
AM_RANGE(0xe0000,0xeffff) AM_RAM AM_SHARE ("framebuffer16")
diff --git a/src/mame/drivers/pgm.cpp b/src/mame/drivers/pgm.cpp
index 92d40067426..cf64c41a4da 100644
--- a/src/mame/drivers/pgm.cpp
+++ b/src/mame/drivers/pgm.cpp
@@ -299,11 +299,11 @@ WRITE8_MEMBER(pgm_state::z80_l3_w)
/*** Z80 (sound CPU)**********************************************************/
-ADDRESS_MAP_START( pgm_z80_mem, AS_PROGRAM, 8, pgm_state )
+ADDRESS_MAP_START(pgm_state::pgm_z80_mem)
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("z80_mainram")
ADDRESS_MAP_END
-ADDRESS_MAP_START( pgm_z80_io, AS_IO, 8, pgm_state )
+ADDRESS_MAP_START(pgm_state::pgm_z80_io)
AM_RANGE(0x8000, 0x8003) AM_DEVREADWRITE("ics", ics2115_device, read, write)
AM_RANGE(0x8100, 0x81ff) AM_DEVREAD("soundlatch3", generic_latch_8_device, read) AM_WRITE(z80_l3_w)
AM_RANGE(0x8200, 0x82ff) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, write)
@@ -312,7 +312,7 @@ ADDRESS_MAP_END
/*** 68000 (main CPU) + variants for protection devices **********************/
-ADDRESS_MAP_START( pgm_base_mem, AS_PROGRAM, 16, pgm_state )
+ADDRESS_MAP_START(pgm_state::pgm_base_mem)
AM_RANGE(0x700006, 0x700007) AM_WRITENOP // Watchdog?
AM_RANGE(0x800000, 0x81ffff) AM_RAM AM_MIRROR(0x0e0000) AM_SHARE("sram") /* Main Ram */
@@ -336,12 +336,12 @@ ADDRESS_MAP_START( pgm_base_mem, AS_PROGRAM, 16, pgm_state )
AM_RANGE(0xc10000, 0xc1ffff) AM_READWRITE(z80_ram_r, z80_ram_w) /* Z80 Program */
ADDRESS_MAP_END
-ADDRESS_MAP_START( pgm_mem, AS_PROGRAM, 16, pgm_state )
+ADDRESS_MAP_START(pgm_state::pgm_mem)
AM_IMPORT_FROM(pgm_base_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* BIOS ROM */
ADDRESS_MAP_END
-ADDRESS_MAP_START( pgm_basic_mem, AS_PROGRAM, 16, pgm_state )
+ADDRESS_MAP_START(pgm_state::pgm_basic_mem)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x3fffff) AM_ROMBANK("bank1") /* Game ROM */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pgm2.cpp b/src/mame/drivers/pgm2.cpp
index bf4cc0b9cb7..98f6e6cdd88 100644
--- a/src/mame/drivers/pgm2.cpp
+++ b/src/mame/drivers/pgm2.cpp
@@ -513,7 +513,7 @@ READ32_MEMBER(pgm2_state::pio_pdsr_r)
return (module_data_r() == ASSERT_LINE ? 1 : 0) << 8; // fpga data read and status (bit 7, must be 0)
}
-static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32, pgm2_state )
+ADDRESS_MAP_START(pgm2_state::pgm2_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM //AM_REGION("user1", 0x00000) // internal ROM
AM_RANGE(0x02000000, 0x0200ffff) AM_RAM AM_SHARE("sram") // 'battery ram' (in CPU?)
@@ -576,18 +576,18 @@ static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32, pgm2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pgm2_rom_map, AS_PROGRAM, 32, pgm2_state )
+ADDRESS_MAP_START(pgm2_state::pgm2_rom_map)
AM_IMPORT_FROM(pgm2_map)
AM_RANGE(0x10000000, 0x10ffffff) AM_ROM AM_REGION("user1", 0) // external ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pgm2_ram_rom_map, AS_PROGRAM, 32, pgm2_state )
+ADDRESS_MAP_START(pgm2_state::pgm2_ram_rom_map)
AM_IMPORT_FROM(pgm2_map)
AM_RANGE(0x10000000, 0x101fffff) AM_RAM AM_SHARE("romboard_ram") // we should also probably decrypt writes once the encryption is enabled, but the game never writes with it turned on anyway
AM_RANGE(0x10200000, 0x103fffff) AM_ROM AM_REGION("user1", 0) // external ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pgm2_module_rom_map, AS_PROGRAM, 32, pgm2_state )
+ADDRESS_MAP_START(pgm2_state::pgm2_module_rom_map)
AM_IMPORT_FROM(pgm2_rom_map)
AM_RANGE(0x10000000, 0x107fffff) AM_WRITE16(module_rom_w, 0xffffffff)
AM_RANGE(0x10000000, 0x1000000f) AM_READ16(module_rom_r, 0xffffffff)
diff --git a/src/mame/drivers/pgm3.cpp b/src/mame/drivers/pgm3.cpp
index 11eaa4e0e08..85bd95bb96c 100644
--- a/src/mame/drivers/pgm3.cpp
+++ b/src/mame/drivers/pgm3.cpp
@@ -68,9 +68,10 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_pgm3);
required_device<cpu_device> m_maincpu;
void pgm3(machine_config &config);
+ void pgm3_map(address_map &map);
};
-static ADDRESS_MAP_START( pgm3_map, AS_PROGRAM, 32, pgm3_state )
+ADDRESS_MAP_START(pgm3_state::pgm3_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/phc25.cpp b/src/mame/drivers/phc25.cpp
index ad8010d173f..dfc920f8540 100644
--- a/src/mame/drivers/phc25.cpp
+++ b/src/mame/drivers/phc25.cpp
@@ -119,14 +119,14 @@ WRITE_LINE_MEMBER( phc25_state::write_centronics_busy )
/* Memory Maps */
-static ADDRESS_MAP_START( phc25_mem, AS_PROGRAM, 8, phc25_state )
+ADDRESS_MAP_START(phc25_state::phc25_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x6000, 0x77ff) AM_RAM AM_SHARE("video_ram")
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( phc25_io, AS_IO, 8, phc25_state )
+ADDRESS_MAP_START(phc25_state::phc25_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("cent_data_out", output_latch_device, write)
diff --git a/src/mame/drivers/phoenix.cpp b/src/mame/drivers/phoenix.cpp
index e29130ab965..ec02821b57f 100644
--- a/src/mame/drivers/phoenix.cpp
+++ b/src/mame/drivers/phoenix.cpp
@@ -56,7 +56,7 @@ Pleiads:
#include "speaker.h"
-static ADDRESS_MAP_START( phoenix_memory_map, AS_PROGRAM, 8, phoenix_state )
+ADDRESS_MAP_START(phoenix_state::phoenix_memory_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_READ_BANK("bank1") AM_WRITE(phoenix_videoram_w) /* 2 pages selected by bit 0 of the video register */
AM_RANGE(0x5000, 0x53ff) AM_WRITE(phoenix_videoreg_w)
@@ -67,7 +67,7 @@ static ADDRESS_MAP_START( phoenix_memory_map, AS_PROGRAM, 8, phoenix_state )
AM_RANGE(0x7800, 0x7bff) AM_READ_PORT("DSW0") /* DSW */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pleiads_memory_map, AS_PROGRAM, 8, phoenix_state )
+ADDRESS_MAP_START(phoenix_state::pleiads_memory_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_READ_BANK("bank1") AM_WRITE(phoenix_videoram_w) /* 2 pages selected by bit 0 of the video register */
AM_RANGE(0x5000, 0x53ff) AM_WRITE(pleiads_videoreg_w)
@@ -78,7 +78,7 @@ static ADDRESS_MAP_START( pleiads_memory_map, AS_PROGRAM, 8, phoenix_state )
AM_RANGE(0x7800, 0x7bff) AM_READ_PORT("DSW0") /* DSW */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( survival_memory_map, AS_PROGRAM, 8, phoenix_state )
+ADDRESS_MAP_START(phoenix_state::survival_memory_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4fff) AM_READ_BANK("bank1") AM_WRITE(phoenix_videoram_w) /* 2 pages selected by bit 0 of the video register */
AM_RANGE(0x5000, 0x53ff) AM_WRITE(phoenix_videoreg_w)
diff --git a/src/mame/drivers/photon.cpp b/src/mame/drivers/photon.cpp
index aae27713c7d..05e195697a6 100644
--- a/src/mame/drivers/photon.cpp
+++ b/src/mame/drivers/photon.cpp
@@ -49,6 +49,8 @@ public:
required_device<speaker_sound_device> m_speaker;
void photon(machine_config &config);
+ void pk8000_io(address_map &map);
+ void pk8000_mem(address_map &map);
};
@@ -126,7 +128,7 @@ WRITE8_MEMBER(photon_state::_80_portc_w)
m_speaker->level_w(BIT(data,7));
}
-static ADDRESS_MAP_START(pk8000_mem, AS_PROGRAM, 8, photon_state )
+ADDRESS_MAP_START(photon_state::pk8000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_READ_BANK("bank1") AM_WRITE_BANK("bank5")
AM_RANGE( 0x4000, 0x7fff ) AM_READ_BANK("bank2") AM_WRITE_BANK("bank6")
@@ -134,7 +136,7 @@ static ADDRESS_MAP_START(pk8000_mem, AS_PROGRAM, 8, photon_state )
AM_RANGE( 0xc000, 0xffff ) AM_READ_BANK("bank4") AM_WRITE_BANK("bank8")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pk8000_io , AS_IO, 8, photon_state )
+ADDRESS_MAP_START(photon_state::pk8000_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
AM_RANGE(0x84, 0x87) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write)
diff --git a/src/mame/drivers/photon2.cpp b/src/mame/drivers/photon2.cpp
index b69ce54e343..c6c93c71f26 100644
--- a/src/mame/drivers/photon2.cpp
+++ b/src/mame/drivers/photon2.cpp
@@ -62,6 +62,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(spec_interrupt_hack);
void photon2(machine_config &config);
+ void spectrum_io(address_map &map);
+ void spectrum_mem(address_map &map);
};
@@ -256,13 +258,13 @@ WRITE8_MEMBER(photon2_state::misc_w)
*
*************************************/
-static ADDRESS_MAP_START (spectrum_mem, AS_PROGRAM, 8, photon2_state )
+ADDRESS_MAP_START(photon2_state::spectrum_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("mainbank")
AM_RANGE(0x4000, 0x5aff) AM_RAM AM_SHARE("spectrum_vram")
AM_RANGE(0x5b00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START (spectrum_io, AS_IO, 8, photon2_state )
+ADDRESS_MAP_START(photon2_state::spectrum_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x1f, 0x1f) AM_READ_PORT("JOY")
AM_RANGE(0x5b, 0x5b) AM_READ_PORT("COIN") AM_WRITE(misc_w)
diff --git a/src/mame/drivers/photoply.cpp b/src/mame/drivers/photoply.cpp
index affa338602b..c34522faf98 100644
--- a/src/mame/drivers/photoply.cpp
+++ b/src/mame/drivers/photoply.cpp
@@ -56,6 +56,8 @@ public:
DECLARE_DRIVER_INIT(photoply);
void photoply(machine_config &config);
+ void photoply_io(address_map &map);
+ void photoply_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -188,7 +190,7 @@ WRITE8_MEMBER(photoply_state::eeprom_w)
// Bits 4-7 are set for some writes, but may do nothing?
}
-static ADDRESS_MAP_START( photoply_map, AS_PROGRAM, 32, photoply_state )
+ADDRESS_MAP_START(photoply_state::photoply_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", cirrus_gd5446_device, mem_r, mem_w, 0xffffffff)
// AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
@@ -200,7 +202,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( photoply_io, AS_IO, 32, photoply_state )
+ADDRESS_MAP_START(photoply_state::photoply_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00eb) AM_NOP
diff --git a/src/mame/drivers/phunsy.cpp b/src/mame/drivers/phunsy.cpp
index db4b65720f1..6dbb0198fff 100644
--- a/src/mame/drivers/phunsy.cpp
+++ b/src/mame/drivers/phunsy.cpp
@@ -64,6 +64,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void phunsy(machine_config &config);
+ void phunsy_data(address_map &map);
+ void phunsy_io(address_map &map);
+ void phunsy_mem(address_map &map);
private:
uint8_t m_data_out;
uint8_t m_keyboard_input;
@@ -86,7 +89,7 @@ READ_LINE_MEMBER(phunsy_state::cass_r)
return (m_cass->input() > 0.03) ? 0 : 1;
}
-static ADDRESS_MAP_START( phunsy_mem, AS_PROGRAM, 8, phunsy_state )
+ADDRESS_MAP_START(phunsy_state::phunsy_mem)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x0800, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("videoram") // Video RAM
@@ -95,11 +98,11 @@ static ADDRESS_MAP_START( phunsy_mem, AS_PROGRAM, 8, phunsy_state )
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bankq") // Banked RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( phunsy_io, AS_IO, 8, phunsy_state )
+ADDRESS_MAP_START(phunsy_state::phunsy_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START( phunsy_data, AS_DATA, 8, phunsy_state )
+ADDRESS_MAP_START(phunsy_state::phunsy_data)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_WRITE(phunsy_ctrl_w)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(phunsy_data_r, phunsy_data_w)
diff --git a/src/mame/drivers/picno.cpp b/src/mame/drivers/picno.cpp
index 895b51a603f..74a88951399 100644
--- a/src/mame/drivers/picno.cpp
+++ b/src/mame/drivers/picno.cpp
@@ -42,18 +42,20 @@ public:
{ }
void picno(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, picno_state )
+ADDRESS_MAP_START(picno_state::mem_map)
AM_RANGE(0x00000, 0x07fff) AM_ROM AM_REGION("roms", 0) // 32kb internal rom
AM_RANGE(0x0fb80, 0x0ff7f) AM_RAM // internal ram
AM_RANGE(0x0ff80, 0x0ffff) // internal controls
AM_RANGE(0x10000, 0x8ffff) AM_ROM AM_REGION("roms", 0x8000) // guess
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, picno_state )
+ADDRESS_MAP_START(picno_state::io_map)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/piggypas.cpp b/src/mame/drivers/piggypas.cpp
index c30e3882b69..f923478bb8d 100644
--- a/src/mame/drivers/piggypas.cpp
+++ b/src/mame/drivers/piggypas.cpp
@@ -43,6 +43,8 @@ public:
uint8_t m_ctrl;
uint8_t m_digit_idx;
void piggypas(machine_config &config);
+ void piggypas_io(address_map &map);
+ void piggypas_map(address_map &map);
};
@@ -63,11 +65,11 @@ WRITE8_MEMBER(piggypas_state::mcs51_tx_callback)
output().set_digit_value(m_digit_idx++, bitswap<8>(data,7,6,4,3,2,1,0,5) & 0x7f);
}
-static ADDRESS_MAP_START( piggypas_map, AS_PROGRAM, 8, piggypas_state )
+ADDRESS_MAP_START(piggypas_state::piggypas_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( piggypas_io, AS_IO, 8, piggypas_state )
+ADDRESS_MAP_START(piggypas_state::piggypas_io)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE("ppi", i8255_device, read, write)
AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/pimps.cpp b/src/mame/drivers/pimps.cpp
index 9c69ad02982..976bdf6804d 100644
--- a/src/mame/drivers/pimps.cpp
+++ b/src/mame/drivers/pimps.cpp
@@ -83,19 +83,21 @@ public:
{ }
void pimps(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, pimps_state)
+ADDRESS_MAP_START(pimps_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, pimps_state)
+ADDRESS_MAP_START(pimps_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf0, 0xf0) AM_DEVREADWRITE("uart1", i8251_device, data_r, data_w)
AM_RANGE(0xf1, 0xf1) AM_DEVREADWRITE("uart1", i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/pinball2k.cpp b/src/mame/drivers/pinball2k.cpp
index 20e0cd30265..6823022afd2 100644
--- a/src/mame/drivers/pinball2k.cpp
+++ b/src/mame/drivers/pinball2k.cpp
@@ -98,6 +98,9 @@ public:
void draw_cga(bitmap_rgb32 &bitmap, const rectangle &cliprect);
void init_mediagx();
void mediagx(machine_config &config);
+ void mediagx_io(address_map &map);
+ void mediagx_map(address_map &map);
+ void ramdac_map(address_map &map);
};
// Display controller registers
@@ -473,7 +476,7 @@ static void cx5510_pci_w(device_t *busdevice, device_t *device, int function, in
/*****************************************************************************/
-static ADDRESS_MAP_START( mediagx_map, AS_PROGRAM, 32, pinball2k_state )
+ADDRESS_MAP_START(pinball2k_state::mediagx_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x000a0000, 0x000affff) AM_RAM
AM_RANGE(0x000b0000, 0x000b7fff) AM_RAM AM_SHARE("cga_ram")
@@ -486,7 +489,7 @@ static ADDRESS_MAP_START( mediagx_map, AS_PROGRAM, 32, pinball2k_state )
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mediagx_io, AS_IO, 32, pinball2k_state )
+ADDRESS_MAP_START(pinball2k_state::mediagx_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0020, 0x0023) AM_READWRITE8(io20_r, io20_w, 0xffff0000)
AM_RANGE(0x00e8, 0x00eb) AM_NOP // I/O delay port
@@ -588,7 +591,7 @@ void pinball2k_state::machine_reset()
m_maincpu->reset();
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, pinball2k_state )
+ADDRESS_MAP_START(pinball2k_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pingpong.cpp b/src/mame/drivers/pingpong.cpp
index 09160f6f20e..08783357944 100644
--- a/src/mame/drivers/pingpong.cpp
+++ b/src/mame/drivers/pingpong.cpp
@@ -89,7 +89,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(pingpong_state::merlinmm_interrupt)
}
}
-static ADDRESS_MAP_START( pingpong_map, AS_PROGRAM, 8, pingpong_state )
+ADDRESS_MAP_START(pingpong_state::pingpong_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(pingpong_colorram_w) AM_SHARE("colorram")
AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(pingpong_videoram_w) AM_SHARE("videoram")
@@ -106,7 +106,7 @@ static ADDRESS_MAP_START( pingpong_map, AS_PROGRAM, 8, pingpong_state )
AM_RANGE(0xa600, 0xa600) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( merlinmm_map, AS_PROGRAM, 8, pingpong_state )
+ADDRESS_MAP_START(pingpong_state::merlinmm_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x5400, 0x57ff) AM_RAM
diff --git a/src/mame/drivers/pinkiri8.cpp b/src/mame/drivers/pinkiri8.cpp
index c04a5c608a3..5b3d02d4dba 100644
--- a/src/mame/drivers/pinkiri8.cpp
+++ b/src/mame/drivers/pinkiri8.cpp
@@ -97,6 +97,8 @@ public:
void draw_background(bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void pinkiri8(machine_config &config);
+ void pinkiri8_io(address_map &map);
+ void pinkiri8_map(address_map &map);
};
@@ -107,7 +109,7 @@ class janshi_vdp_device : public device_t,
{
public:
janshi_vdp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
protected:
virtual void device_validity_check(validity_checker &valid) const override;
virtual void device_start() override;
@@ -117,7 +119,7 @@ protected:
};
-DEVICE_ADDRESS_MAP_START( map, 8, janshi_vdp_device )
+ADDRESS_MAP_START(janshi_vdp_device::map)
AM_RANGE(0xfc0000, 0xfc1fff) AM_RAM AM_SHARE("back_vram") // bg tilemap?
AM_RANGE(0xfc2000, 0xfc2fff) AM_RAM AM_SHARE("vram1") // xpos, colour, tile number etc.
@@ -138,7 +140,7 @@ DEFINE_DEVICE_TYPE(JANSHIVDP, janshi_vdp_device, "janshi_vdp", "Janshi VDP")
janshi_vdp_device::janshi_vdp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, JANSHIVDP, tag, owner, clock)
, device_memory_interface(mconfig, *this)
- , m_space_config("janshi_vdp", ENDIANNESS_LITTLE, 8,24, 0, address_map_delegate(FUNC(janshi_vdp_device::map), this))
+ , m_space_config("janshi_vdp", ENDIANNESS_LITTLE, 8,24, 0, address_map_constructor(FUNC(janshi_vdp_device::map), this))
{
}
@@ -374,7 +376,7 @@ uint32_t pinkiri8_state::screen_update_pinkiri8(screen_device &screen, bitmap_in
return 0;
}
-static ADDRESS_MAP_START( pinkiri8_map, AS_PROGRAM, 8, pinkiri8_state )
+ADDRESS_MAP_START(pinkiri8_state::pinkiri8_map)
AM_RANGE(0x00000, 0x0bfff) AM_ROM
AM_RANGE(0x0c000, 0x0dfff) AM_RAM
AM_RANGE(0x0e000, 0x0ffff) AM_ROM
@@ -459,7 +461,7 @@ READ8_MEMBER(pinkiri8_state::mux_p1_r)
return 0xff;
}
-static ADDRESS_MAP_START( pinkiri8_io, AS_IO, 8, pinkiri8_state )
+ADDRESS_MAP_START(pinkiri8_state::pinkiri8_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x3f) AM_RAM //Z180 internal I/O
AM_RANGE(0x60, 0x60) AM_WRITE(output_regs_w)
diff --git a/src/mame/drivers/pipbug.cpp b/src/mame/drivers/pipbug.cpp
index 955fc3066c2..b0464148490 100644
--- a/src/mame/drivers/pipbug.cpp
+++ b/src/mame/drivers/pipbug.cpp
@@ -59,6 +59,8 @@ public:
required_device<cpu_device> m_maincpu;
DECLARE_QUICKLOAD_LOAD_MEMBER( pipbug );
void pipbug(machine_config &config);
+ void pipbug_data(address_map &map);
+ void pipbug_mem(address_map &map);
};
WRITE8_MEMBER( pipbug_state::pipbug_ctrl_w )
@@ -66,13 +68,13 @@ WRITE8_MEMBER( pipbug_state::pipbug_ctrl_w )
// 0x80 is written here - not connected in the baby 2650
}
-static ADDRESS_MAP_START(pipbug_mem, AS_PROGRAM, 8, pipbug_state)
+ADDRESS_MAP_START(pipbug_state::pipbug_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x03ff) AM_ROM
AM_RANGE( 0x0400, 0x7fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pipbug_data, AS_DATA, 8, pipbug_state)
+ADDRESS_MAP_START(pipbug_state::pipbug_data)
// ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_WRITE(pipbug_ctrl_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pipedrm.cpp b/src/mame/drivers/pipedrm.cpp
index e9cc6d4a07b..ca85fcff707 100644
--- a/src/mame/drivers/pipedrm.cpp
+++ b/src/mame/drivers/pipedrm.cpp
@@ -191,6 +191,11 @@ public:
DECLARE_READ8_MEMBER( pending_command_r );
void pipedrm(machine_config &config);
void hatris(machine_config &config);
+ void hatris_sound_portmap(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
@@ -247,7 +252,7 @@ READ8_MEMBER(pipedrm_state::pending_command_r )
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pipedrm_state )
+ADDRESS_MAP_START(pipedrm_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1")
@@ -256,7 +261,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pipedrm_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, pipedrm_state )
+ADDRESS_MAP_START(pipedrm_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("gga", vsystem_gga_device, write)
AM_RANGE(0x20, 0x20) AM_READ_PORT("P1") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -276,14 +281,14 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, pipedrm_state )
+ADDRESS_MAP_START(pipedrm_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, pipedrm_state )
+ADDRESS_MAP_START(pipedrm_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x04) AM_WRITE(sound_bankswitch_w)
AM_RANGE(0x16, 0x16) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -292,7 +297,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, pipedrm_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hatris_sound_portmap, AS_IO, 8, pipedrm_state )
+ADDRESS_MAP_START(pipedrm_state::hatris_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x08) AM_DEVREADWRITE("ymsnd", ym2608_device, read, write)
AM_RANGE(0x04, 0x04) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/pipeline.cpp b/src/mame/drivers/pipeline.cpp
index 7b31a322c50..6476f3a16c1 100644
--- a/src/mame/drivers/pipeline.cpp
+++ b/src/mame/drivers/pipeline.cpp
@@ -113,6 +113,9 @@ public:
TIMER_CALLBACK_MEMBER(protection_deferred_w);
void pipeline(machine_config &config);
+ void cpu0_mem(address_map &map);
+ void cpu1_mem(address_map &map);
+ void sound_port(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<m68705r_device> m_mcu;
@@ -219,7 +222,7 @@ WRITE8_MEMBER(pipeline_state::protection_w)
machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100));
}
-static ADDRESS_MAP_START( cpu0_mem, AS_PROGRAM, 8, pipeline_state )
+ADDRESS_MAP_START(pipeline_state::cpu0_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x97ff) AM_RAM_WRITE(vram1_w) AM_SHARE("vram1")
@@ -230,13 +233,13 @@ static ADDRESS_MAP_START( cpu0_mem, AS_PROGRAM, 8, pipeline_state )
AM_RANGE(0xb840, 0xb840) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_mem, AS_PROGRAM, 8, pipeline_state )
+ADDRESS_MAP_START(pipeline_state::cpu1_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port, AS_IO, 8, pipeline_state )
+ADDRESS_MAP_START(pipeline_state::sound_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
AM_RANGE(0x06, 0x07) AM_NOP
diff --git a/src/mame/drivers/pirates.cpp b/src/mame/drivers/pirates.cpp
index 094c5a45152..ace366b6f0a 100644
--- a/src/mame/drivers/pirates.cpp
+++ b/src/mame/drivers/pirates.cpp
@@ -153,7 +153,7 @@ CUSTOM_INPUT_MEMBER(pirates_state::prot_r)
/* Memory Maps */
-static ADDRESS_MAP_START( pirates_map, AS_PROGRAM, 16, pirates_state )
+ADDRESS_MAP_START(pirates_state::pirates_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // main ram
AM_RANGE(0x300000, 0x300001) AM_READ_PORT("INPUTS")
diff --git a/src/mame/drivers/piratesh.cpp b/src/mame/drivers/piratesh.cpp
index 65f992908f5..8d463ce7344 100644
--- a/src/mame/drivers/piratesh.cpp
+++ b/src/mame/drivers/piratesh.cpp
@@ -104,6 +104,7 @@ public:
K056832_CB_MEMBER(piratesh_tile_callback);
K055673_CB_MEMBER(piratesh_sprite_callback);
void piratesh(machine_config &config);
+ void piratesh_map(address_map &map);
};
@@ -382,7 +383,7 @@ WRITE16_MEMBER(piratesh_state::control3_w)
}
-static ADDRESS_MAP_START( piratesh_map, AS_PROGRAM, 16, piratesh_state )
+ADDRESS_MAP_START(piratesh_state::piratesh_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x084000, 0x087fff) AM_RAM
diff --git a/src/mame/drivers/pitagjr.cpp b/src/mame/drivers/pitagjr.cpp
index 11035dad9f8..4ffa23cb47f 100644
--- a/src/mame/drivers/pitagjr.cpp
+++ b/src/mame/drivers/pitagjr.cpp
@@ -173,10 +173,11 @@ public:
DECLARE_PALETTE_INIT(pitagjr);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void pitajr(machine_config &config);
+ void pitajr_mem(address_map &map);
};
-static ADDRESS_MAP_START(pitajr_mem, AS_PROGRAM, 8, pitagjr_state)
+ADDRESS_MAP_START(pitagjr_state::pitajr_mem)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_ROM // boot ROM ???
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("rombank")
diff --git a/src/mame/drivers/pitnrun.cpp b/src/mame/drivers/pitnrun.cpp
index 7eb626748ca..930fd94ee5d 100644
--- a/src/mame/drivers/pitnrun.cpp
+++ b/src/mame/drivers/pitnrun.cpp
@@ -105,7 +105,7 @@ WRITE_LINE_MEMBER(pitnrun_state::vflip_w)
flip_screen_y_set(state);
}
-static ADDRESS_MAP_START( pitnrun_map, AS_PROGRAM, 8, pitnrun_state )
+ADDRESS_MAP_START(pitnrun_state::pitnrun_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -127,19 +127,19 @@ static ADDRESS_MAP_START( pitnrun_map, AS_PROGRAM, 8, pitnrun_state )
AM_RANGE(0xf000, 0xf000) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pitnrun_map_mcu, AS_PROGRAM, 8, pitnrun_state )
+ADDRESS_MAP_START(pitnrun_state::pitnrun_map_mcu)
AM_IMPORT_FROM(pitnrun_map)
AM_RANGE(0xc804, 0xc804) AM_WRITE(mcu_data_w)
AM_RANGE(0xd000, 0xd000) AM_READ(mcu_data_r)
AM_RANGE(0xd800, 0xd800) AM_READ(mcu_status_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pitnrun_sound_map, AS_PROGRAM, 8, pitnrun_state )
+ADDRESS_MAP_START(pitnrun_state::pitnrun_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3800, 0x3bff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pitnrun_sound_io_map, AS_IO, 8, pitnrun_state )
+ADDRESS_MAP_START(pitnrun_state::pitnrun_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("soundlatch", generic_latch_8_device, clear_w)
AM_RANGE(0x8c, 0x8d) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/pk8000.cpp b/src/mame/drivers/pk8000.cpp
index 937c7fe0f69..b91920c2176 100644
--- a/src/mame/drivers/pk8000.cpp
+++ b/src/mame/drivers/pk8000.cpp
@@ -66,6 +66,8 @@ public:
IRQ_CALLBACK_MEMBER(irq_callback);
void pk8000(machine_config &config);
+ void pk8000_io(address_map &map);
+ void pk8000_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<cassette_image_device> m_cassette;
@@ -184,7 +186,7 @@ READ8_MEMBER(pk8000_state::joy_2_r)
return retVal;
}
-static ADDRESS_MAP_START(pk8000_mem, AS_PROGRAM, 8, pk8000_state )
+ADDRESS_MAP_START(pk8000_state::pk8000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_READ_BANK("bank1") AM_WRITE_BANK("bank5")
AM_RANGE( 0x4000, 0x7fff ) AM_READ_BANK("bank2") AM_WRITE_BANK("bank6")
@@ -192,7 +194,7 @@ static ADDRESS_MAP_START(pk8000_mem, AS_PROGRAM, 8, pk8000_state )
AM_RANGE( 0xc000, 0xffff ) AM_READ_BANK("bank4") AM_WRITE_BANK("bank8")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pk8000_io , AS_IO, 8, pk8000_state )
+ADDRESS_MAP_START(pk8000_state::pk8000_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
AM_RANGE(0x84, 0x87) AM_DEVREADWRITE("ppi8255_2", i8255_device, read, write)
diff --git a/src/mame/drivers/pk8020.cpp b/src/mame/drivers/pk8020.cpp
index 8e9938642a1..ee56c09543c 100644
--- a/src/mame/drivers/pk8020.cpp
+++ b/src/mame/drivers/pk8020.cpp
@@ -23,10 +23,10 @@
#include "speaker.h"
/* Address maps */
-static ADDRESS_MAP_START(pk8020_mem, AS_PROGRAM, 8, pk8020_state )
+ADDRESS_MAP_START(pk8020_state::pk8020_mem)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pk8020_io , AS_IO, 8, pk8020_state )
+ADDRESS_MAP_START(pk8020_state::pk8020_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pkscram.cpp b/src/mame/drivers/pkscram.cpp
index cf51e0ac87c..ac780c39d3d 100644
--- a/src/mame/drivers/pkscram.cpp
+++ b/src/mame/drivers/pkscram.cpp
@@ -59,6 +59,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<screen_device> m_screen;
void pkscramble(machine_config &config);
+ void pkscramble_map(address_map &map);
};
@@ -118,7 +119,7 @@ WRITE16_MEMBER(pkscram_state::pkscramble_output_w)
machine().bookkeeping().coin_counter_w(0, data & 0x80);
}
-static ADDRESS_MAP_START( pkscramble_map, AS_PROGRAM, 16, pkscram_state )
+ADDRESS_MAP_START(pkscram_state::pkscramble_map)
ADDRESS_MAP_GLOBAL_MASK(0x7ffff)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x0400ff) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/pktgaldx.cpp b/src/mame/drivers/pktgaldx.cpp
index 24144403b2e..00df9656864 100644
--- a/src/mame/drivers/pktgaldx.cpp
+++ b/src/mame/drivers/pktgaldx.cpp
@@ -100,7 +100,7 @@ WRITE16_MEMBER( pktgaldx_state::vblank_ack_w )
m_maincpu->set_input_line(6, CLEAR_LINE);
}
-static ADDRESS_MAP_START( pktgaldx_map, AS_PROGRAM, 16, pktgaldx_state )
+ADDRESS_MAP_START(pktgaldx_state::pktgaldx_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_r, pf1_data_w)
@@ -124,7 +124,7 @@ static ADDRESS_MAP_START( pktgaldx_map, AS_PROGRAM, 16, pktgaldx_state )
AM_RANGE(0x170000, 0x17ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, pktgaldx_state )
+ADDRESS_MAP_START(pktgaldx_state::decrypted_opcodes_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
@@ -155,7 +155,7 @@ cpu #0 (PC=0000923C): unmapped program memory word read from 00167DB2 & 00FF
/* do the 300000 addresses somehow interact with the protection addresses on this bootleg? */
/* or maybe protection writes go to sound ... */
-static ADDRESS_MAP_START( pktgaldb_map, AS_PROGRAM, 16, pktgaldx_state )
+ADDRESS_MAP_START(pktgaldx_state::pktgaldb_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM AM_SHARE("pktgaldb_fgram") // fgram on original?
AM_RANGE(0x102000, 0x102fff) AM_RAM // bgram on original?
@@ -338,7 +338,7 @@ MACHINE_CONFIG_START(pktgaldx_state::pktgaldx)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M68000, 14000000)
MCFG_CPU_PROGRAM_MAP(pktgaldx_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/plan80.cpp b/src/mame/drivers/plan80.cpp
index 90297852859..6de34e4e90f 100644
--- a/src/mame/drivers/plan80.cpp
+++ b/src/mame/drivers/plan80.cpp
@@ -49,6 +49,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void plan80(machine_config &config);
+ void plan80_io(address_map &map);
+ void plan80_mem(address_map &map);
private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
uint8_t m_kbd_row;
@@ -86,7 +88,7 @@ WRITE8_MEMBER( plan80_state::plan80_09_w )
}
-static ADDRESS_MAP_START(plan80_mem, AS_PROGRAM, 8, plan80_state)
+ADDRESS_MAP_START(plan80_state::plan80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("boot")
AM_RANGE(0x0800, 0xefff) AM_RAM
@@ -94,7 +96,7 @@ static ADDRESS_MAP_START(plan80_mem, AS_PROGRAM, 8, plan80_state)
AM_RANGE(0xf800, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(plan80_io, AS_IO, 8, plan80_state)
+ADDRESS_MAP_START(plan80_state::plan80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x04) AM_READ(plan80_04_r)
diff --git a/src/mame/drivers/play_1.cpp b/src/mame/drivers/play_1.cpp
index 8f54d9a1bd6..8bb1eef7b98 100644
--- a/src/mame/drivers/play_1.cpp
+++ b/src/mame/drivers/play_1.cpp
@@ -56,6 +56,9 @@ public:
void chance(machine_config &config);
void play_1(machine_config &config);
+ void chance_map(address_map &map);
+ void play_1_io(address_map &map);
+ void play_1_map(address_map &map);
private:
uint16_t m_resetcnt;
uint16_t m_clockcnt;
@@ -69,21 +72,21 @@ private:
required_device<clock_device> m_monotone;
};
-static ADDRESS_MAP_START( play_1_map, AS_PROGRAM, 8, play_1_state )
+ADDRESS_MAP_START(play_1_state::play_1_map)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x0800, 0x081f) AM_RAM AM_SHARE("nvram") // capacitor acting as a 2-month "battery"
AM_RANGE(0x0c00, 0x0c1f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chance_map, AS_PROGRAM, 8, play_1_state )
+ADDRESS_MAP_START(play_1_state::chance_map)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x0bff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x0c00, 0x0c1f) AM_RAM
AM_RANGE(0x0e00, 0x0e1f) AM_RAM AM_SHARE("nvram") // capacitor acting as a 2-month "battery"
ADDRESS_MAP_END
-static ADDRESS_MAP_START( play_1_io, AS_IO, 8, play_1_state )
+ADDRESS_MAP_START(play_1_state::play_1_io)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(port01_w) //segments
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_WRITE(port02_w) // N1-8
AM_RANGE(0x03, 0x03) AM_READ_PORT("IN3") AM_WRITE(port03_w) // D1-4
diff --git a/src/mame/drivers/play_2.cpp b/src/mame/drivers/play_2.cpp
index b7d29dfad0a..d4769f533a8 100644
--- a/src/mame/drivers/play_2.cpp
+++ b/src/mame/drivers/play_2.cpp
@@ -81,6 +81,9 @@ public:
void play_2(machine_config &config);
void zira(machine_config &config);
+ void play_2_io(address_map &map);
+ void play_2_map(address_map &map);
+ void zira_sound_map(address_map &map);
private:
uint16_t m_clockcnt;
uint16_t m_resetcnt;
@@ -100,12 +103,12 @@ private:
};
-static ADDRESS_MAP_START( play_2_map, AS_PROGRAM, 8, play_2_state )
+ADDRESS_MAP_START(play_2_state::play_2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x2000, 0x20ff) AM_RAM AM_SHARE("nvram") // pair of 5101, battery-backed
ADDRESS_MAP_END
-static ADDRESS_MAP_START( play_2_io, AS_IO, 8, play_2_state )
+ADDRESS_MAP_START(play_2_state::play_2_io)
AM_RANGE(0x01, 0x01) AM_WRITE(port01_w) // digits
AM_RANGE(0x02, 0x02) AM_WRITE(port02_w)
AM_RANGE(0x03, 0x03) AM_DEVWRITE("1863", cdp1863_device, str_w)
@@ -115,7 +118,7 @@ static ADDRESS_MAP_START( play_2_io, AS_IO, 8, play_2_state )
AM_RANGE(0x07, 0x07) AM_WRITE(port07_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zira_sound_map, AS_PROGRAM, 8, play_2_state )
+ADDRESS_MAP_START(play_2_state::zira_sound_map)
AM_RANGE(0x000, 0x3ff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/play_3.cpp b/src/mame/drivers/play_3.cpp
index 2b6a342ed2a..7468ffc9171 100644
--- a/src/mame/drivers/play_3.cpp
+++ b/src/mame/drivers/play_3.cpp
@@ -94,6 +94,12 @@ public:
void sklflite(machine_config &config);
void play_3(machine_config &config);
void megaaton(machine_config &config);
+ void megaaton_io(address_map &map);
+ void play_3_audio_io(address_map &map);
+ void play_3_audio_map(address_map &map);
+ void play_3_io(address_map &map);
+ void play_3_map(address_map &map);
+ void sklflite_io(address_map &map);
private:
u16 m_clockcnt;
u16 m_resetcnt;
@@ -117,12 +123,12 @@ private:
};
-static ADDRESS_MAP_START( play_3_map, AS_PROGRAM, 8, play_3_state )
+ADDRESS_MAP_START(play_3_state::play_3_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x80ff) AM_RAM AM_SHARE("nvram") // pair of 5101, battery-backed
ADDRESS_MAP_END
-static ADDRESS_MAP_START( play_3_io, AS_IO, 8, play_3_state )
+ADDRESS_MAP_START(play_3_state::play_3_io)
AM_RANGE(0x01, 0x01) AM_WRITE(port01_w) // digits, scan-lines
AM_RANGE(0x02, 0x02) AM_WRITE(port02_w) // sound code
AM_RANGE(0x03, 0x03) AM_WRITE(port03_w) //
@@ -132,24 +138,24 @@ static ADDRESS_MAP_START( play_3_io, AS_IO, 8, play_3_state )
AM_RANGE(0x07, 0x07) AM_WRITE(port07_w) // flipflop clear
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megaaton_io, AS_IO, 8, play_3_state )
+ADDRESS_MAP_START(play_3_state::megaaton_io)
AM_IMPORT_FROM(play_3_io)
AM_RANGE(0x01, 0x01) AM_WRITE(megaaton_port01_w) // digits, scan-lines
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sklflite_io, AS_IO, 8, play_3_state )
+ADDRESS_MAP_START(play_3_state::sklflite_io)
AM_IMPORT_FROM(play_3_io)
AM_RANGE(0x03, 0x03) AM_WRITE(sklflite_port03_w) //
ADDRESS_MAP_END
-static ADDRESS_MAP_START( play_3_audio_map, AS_PROGRAM, 8, play_3_state )
+ADDRESS_MAP_START(play_3_state::play_3_audio_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("aysnd1", ay8910_device, data_r, address_data_w)
AM_RANGE(0x6000, 0x6001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("aysnd2", ay8910_device, data_r, address_data_w)
AM_RANGE(0x8000, 0x80ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( play_3_audio_io, AS_IO, 8, play_3_state )
+ADDRESS_MAP_START(play_3_state::play_3_audio_io)
AM_RANGE(0x01, 0x01) AM_WRITE(port01_a_w) // irq counter
AM_RANGE(0x02, 0x02) AM_READ(port02_a_r) // sound code
ADDRESS_MAP_END
diff --git a/src/mame/drivers/playch10.cpp b/src/mame/drivers/playch10.cpp
index 19f2c1f24b0..7ff27ddba96 100644
--- a/src/mame/drivers/playch10.cpp
+++ b/src/mame/drivers/playch10.cpp
@@ -350,7 +350,7 @@ WRITE8_MEMBER(playch10_state::time_w)
/******************************************************************************/
/* BIOS */
-static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8, playch10_state )
+ADDRESS_MAP_START(playch10_state::bios_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM // 8V
AM_RANGE(0x8800, 0x8fff) AM_READWRITE(ram_8w_r, ram_8w_w) AM_SHARE("ram_8w") // 8W
@@ -359,7 +359,7 @@ static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8, playch10_state )
AM_RANGE(0xe000, 0xffff) AM_READWRITE(pc10_prot_r, pc10_prot_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bios_io_map, AS_IO, 8, playch10_state )
+ADDRESS_MAP_START(playch10_state::bios_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("BIOS")
AM_RANGE(0x01, 0x01) AM_READ_PORT("SW1")
@@ -370,7 +370,7 @@ static ADDRESS_MAP_START( bios_io_map, AS_IO, 8, playch10_state )
AM_RANGE(0x10, 0x13) AM_WRITE(time_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cart_map, AS_PROGRAM, 8, playch10_state )
+ADDRESS_MAP_START(playch10_state::cart_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_MIRROR(0x1800) AM_SHARE("work_ram")
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_w)
diff --git a/src/mame/drivers/playmark.cpp b/src/mame/drivers/playmark.cpp
index 79534e85651..1bdab8861c7 100644
--- a/src/mame/drivers/playmark.cpp
+++ b/src/mame/drivers/playmark.cpp
@@ -261,7 +261,7 @@ WRITE8_MEMBER(playmark_state::hrdtimes_snd_control_w)
/***************************** 68000 Memory Maps ****************************/
-static ADDRESS_MAP_START( bigtwin_main_map, AS_PROGRAM, 16, playmark_state )
+ADDRESS_MAP_START(playmark_state::bigtwin_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x304000, 0x304001) AM_NOP /* watchdog? irq ack? */
AM_RANGE(0x440000, 0x4403ff) AM_RAM AM_SHARE("spriteram")
@@ -284,7 +284,7 @@ static ADDRESS_MAP_START( bigtwin_main_map, AS_PROGRAM, 16, playmark_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigtwinb_main_map, AS_PROGRAM, 16, playmark_state )
+ADDRESS_MAP_START(playmark_state::bigtwinb_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(hrdtimes_bgvideoram_w) AM_SHARE("videoram3")
AM_RANGE(0x104000, 0x107fff) AM_RAM_WRITE(hrdtimes_fgvideoram_w) AM_SHARE("videoram2")
@@ -302,7 +302,7 @@ static ADDRESS_MAP_START( bigtwinb_main_map, AS_PROGRAM, 16, playmark_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wbeachvl_main_map, AS_PROGRAM, 16, playmark_state )
+ADDRESS_MAP_START(playmark_state::wbeachvl_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x440000, 0x440fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x500000, 0x501fff) AM_RAM_WRITE(wbeachvl_bgvideoram_w) AM_SHARE("videoram3")
@@ -324,7 +324,7 @@ static ADDRESS_MAP_START( wbeachvl_main_map, AS_PROGRAM, 16, playmark_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( excelsr_main_map, AS_PROGRAM, 16, playmark_state )
+ADDRESS_MAP_START(playmark_state::excelsr_main_map)
AM_RANGE(0x000000, 0x2fffff) AM_ROM
AM_RANGE(0x304000, 0x304001) AM_WRITENOP /* watchdog? irq ack? */
AM_RANGE(0x440000, 0x440cff) AM_RAM AM_SHARE("spriteram")
@@ -344,7 +344,7 @@ static ADDRESS_MAP_START( excelsr_main_map, AS_PROGRAM, 16, playmark_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hrdtimes_main_map, AS_PROGRAM, 16, playmark_state )
+ADDRESS_MAP_START(playmark_state::hrdtimes_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x0bffff) AM_RAM
AM_RANGE(0x0c0000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0x0c0000)
@@ -369,7 +369,7 @@ static ADDRESS_MAP_START( hrdtimes_main_map, AS_PROGRAM, 16, playmark_state )
AM_RANGE(0x304000, 0x304001) AM_WRITENOP /* watchdog? irq ack? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotmind_main_map, AS_PROGRAM, 16, playmark_state )
+ADDRESS_MAP_START(playmark_state::hotmind_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(hrdtimes_bgvideoram_w) AM_SHARE("videoram3")
AM_RANGE(0x104000, 0x107fff) AM_RAM_WRITE(hrdtimes_fgvideoram_w) AM_SHARE("videoram2")
@@ -387,7 +387,7 @@ static ADDRESS_MAP_START( hotmind_main_map, AS_PROGRAM, 16, playmark_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( luckboomh_main_map, AS_PROGRAM, 16, playmark_state )
+ADDRESS_MAP_START(playmark_state::luckboomh_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(hrdtimes_bgvideoram_w) AM_SHARE("videoram3")
AM_RANGE(0x104000, 0x107fff) AM_RAM_WRITE(hrdtimes_fgvideoram_w) AM_SHARE("videoram2")
@@ -405,7 +405,7 @@ static ADDRESS_MAP_START( luckboomh_main_map, AS_PROGRAM, 16, playmark_state )
AM_RANGE(0xff8000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, playmark_state )
+ADDRESS_MAP_START(playmark_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/plus4.cpp b/src/mame/drivers/plus4.cpp
index 13ff0af84ce..b12d5eed6f2 100644
--- a/src/mame/drivers/plus4.cpp
+++ b/src/mame/drivers/plus4.cpp
@@ -156,6 +156,8 @@ public:
uint8_t m_kb;
void plus4(machine_config &config);
+ void plus4_mem(address_map &map);
+ void ted_videoram_map(address_map &map);
};
@@ -480,7 +482,7 @@ READ8_MEMBER( plus4_state::ted_videoram_r )
// ADDRESS_MAP( plus4_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( plus4_mem, AS_PROGRAM, 8, plus4_state )
+ADDRESS_MAP_START(plus4_state::plus4_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -489,7 +491,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ted_videoram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( ted_videoram_map, 0, 8, plus4_state )
+ADDRESS_MAP_START(plus4_state::ted_videoram_map)
AM_RANGE(0x0000, 0xffff) AM_READ(ted_videoram_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pluto5.cpp b/src/mame/drivers/pluto5.cpp
index f5a8cb56dc8..d23f252d66e 100644
--- a/src/mame/drivers/pluto5.cpp
+++ b/src/mame/drivers/pluto5.cpp
@@ -196,6 +196,7 @@ public:
DECLARE_WRITE32_MEMBER(pluto5_mem_w);
void pluto5(machine_config &config);
+ void pluto5_map(address_map &map);
protected:
// devices
@@ -238,7 +239,7 @@ WRITE32_MEMBER(pluto5_state::pluto5_mem_w)
}
-static ADDRESS_MAP_START( pluto5_map, AS_PROGRAM, 32, pluto5_state )
+ADDRESS_MAP_START(pluto5_state::pluto5_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(pluto5_mem_r, pluto5_mem_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/plygonet.cpp b/src/mame/drivers/plygonet.cpp
index 9533eb18e58..593dd930d72 100644
--- a/src/mame/drivers/plygonet.cpp
+++ b/src/mame/drivers/plygonet.cpp
@@ -413,7 +413,7 @@ WRITE16_MEMBER(polygonet_state::dsp56k_ram_bank04_write)
/**********************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, polygonet_state )
+ADDRESS_MAP_START(polygonet_state::main_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x21ffff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette")
AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE16("k053936", k053936_device, ctrl_r, ctrl_w, 0xffffffff)
@@ -437,13 +437,13 @@ ADDRESS_MAP_END
/**********************************************************************************/
-static ADDRESS_MAP_START( dsp_program_map, AS_PROGRAM, 16, polygonet_state )
+ADDRESS_MAP_START(polygonet_state::dsp_program_map)
AM_RANGE(0x7000, 0x7fff) AM_RAM AM_SHARE("dsp56k_p_mirror") /* Unsure of size, but 0x1000 matches bank01 */
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("dsp56k_p_8000")
AM_RANGE(0xc000, 0xc000) AM_READ(dsp56k_bootload_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp_data_map, AS_DATA, 16, polygonet_state )
+ADDRESS_MAP_START(polygonet_state::dsp_data_map)
AM_RANGE(0x0800, 0x5fff) AM_RAM /* Appears to not be affected by banking? */
AM_RANGE(0x6000, 0x6fff) AM_READWRITE(dsp56k_ram_bank00_read, dsp56k_ram_bank00_write)
AM_RANGE(0x7000, 0x7fff) AM_READWRITE(dsp56k_ram_bank01_read, dsp56k_ram_bank01_write) /* Mirrored in program space @ 0x7000 */
@@ -472,7 +472,7 @@ WRITE8_MEMBER(polygonet_state::sound_ctrl_w)
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, polygonet_state )
+ADDRESS_MAP_START(polygonet_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/pm68k.cpp b/src/mame/drivers/pm68k.cpp
index 8a00421992c..5588892fc8f 100644
--- a/src/mame/drivers/pm68k.cpp
+++ b/src/mame/drivers/pm68k.cpp
@@ -27,6 +27,7 @@ public:
{ }
void pm68k(machine_config &config);
+ void pm68k_mem(address_map &map);
private:
virtual void machine_reset() override;
required_shared_ptr<uint16_t> m_p_base;
@@ -34,7 +35,7 @@ private:
};
-static ADDRESS_MAP_START(pm68k_mem, AS_PROGRAM, 16, pm68k_state)
+ADDRESS_MAP_START(pm68k_state::pm68k_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("rambase")
diff --git a/src/mame/drivers/pmd85.cpp b/src/mame/drivers/pmd85.cpp
index c4ee70f3a40..bf274c4e9c7 100644
--- a/src/mame/drivers/pmd85.cpp
+++ b/src/mame/drivers/pmd85.cpp
@@ -220,17 +220,17 @@ uint32_t pmd85_state::screen_update_pmd85(screen_device &screen, bitmap_ind16 &b
/* I/O ports */
-static ADDRESS_MAP_START( pmd85_io_map, AS_IO, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::pmd85_io_map)
AM_RANGE( 0x00, 0xff) AM_READWRITE(pmd85_io_r, pmd85_io_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mato_io_map, AS_IO, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::mato_io_map)
AM_RANGE( 0x00, 0xff) AM_READWRITE(mato_io_r, mato_io_w )
ADDRESS_MAP_END
/* memory w/r functions */
-static ADDRESS_MAP_START( pmd85_mem , AS_PROGRAM, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::pmd85_mem)
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("bank1")
AM_RANGE(0x1000, 0x1fff) AM_RAMBANK("bank2")
AM_RANGE(0x2000, 0x2fff) AM_RAMBANK("bank3")
@@ -243,7 +243,7 @@ static ADDRESS_MAP_START( pmd85_mem , AS_PROGRAM, 8, pmd85_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank8")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pmd852a_mem , AS_PROGRAM, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::pmd852a_mem)
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("bank1")
AM_RANGE(0x1000, 0x1fff) AM_RAMBANK("bank2")
AM_RANGE(0x2000, 0x2fff) AM_RAMBANK("bank3")
@@ -256,7 +256,7 @@ static ADDRESS_MAP_START( pmd852a_mem , AS_PROGRAM, 8, pmd85_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank10")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pmd853_mem , AS_PROGRAM, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::pmd853_mem)
AM_RANGE(0x0000, 0x1fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank9")
AM_RANGE(0x2000, 0x3fff) AM_READ_BANK("bank2") AM_WRITE_BANK("bank10")
AM_RANGE(0x4000, 0x5fff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank11")
@@ -267,7 +267,7 @@ static ADDRESS_MAP_START( pmd853_mem , AS_PROGRAM, 8, pmd85_state )
AM_RANGE(0xe000, 0xffff) AM_READ_BANK("bank8") AM_WRITE_BANK("bank16")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alfa_mem , AS_PROGRAM, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::alfa_mem)
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("bank1")
AM_RANGE(0x1000, 0x33ff) AM_RAMBANK("bank2")
AM_RANGE(0x3400, 0x3fff) AM_RAMBANK("bank3")
@@ -278,14 +278,14 @@ static ADDRESS_MAP_START( alfa_mem , AS_PROGRAM, 8, pmd85_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank7")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mato_mem , AS_PROGRAM, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::mato_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_READ_BANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c2717_mem , AS_PROGRAM, 8, pmd85_state )
+ADDRESS_MAP_START(pmd85_state::c2717_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_READ_BANK("bank3")
diff --git a/src/mame/drivers/pmi80.cpp b/src/mame/drivers/pmi80.cpp
index 2c96a843622..5c804ae1597 100644
--- a/src/mame/drivers/pmi80.cpp
+++ b/src/mame/drivers/pmi80.cpp
@@ -50,6 +50,8 @@ public:
DECLARE_WRITE8_MEMBER(keyboard_w);
DECLARE_WRITE8_MEMBER(leds_w);
void pmi80(machine_config &config);
+ void pmi80_io(address_map &map);
+ void pmi80_mem(address_map &map);
private:
uint8_t m_keyrow;
bool m_ledready;
@@ -80,13 +82,13 @@ WRITE8_MEMBER( pmi80_state::leds_w )
}
}
-static ADDRESS_MAP_START(pmi80_mem, AS_PROGRAM, 8, pmi80_state)
+ADDRESS_MAP_START(pmi80_state::pmi80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x03ff ) AM_ROM
AM_RANGE( 0x0400, 0x1fff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pmi80_io, AS_IO, 8, pmi80_state)
+ADDRESS_MAP_START(pmi80_state::pmi80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf8, 0xf8) AM_WRITE(leds_w)
diff --git a/src/mame/drivers/pntnpuzl.cpp b/src/mame/drivers/pntnpuzl.cpp
index 49acfe94394..6f411608741 100644
--- a/src/mame/drivers/pntnpuzl.cpp
+++ b/src/mame/drivers/pntnpuzl.cpp
@@ -173,6 +173,8 @@ public:
DECLARE_DRIVER_INIT(pip);
required_device<via6522_device> m_via;
void pntnpuzl(machine_config &config);
+ void mcu_map(address_map &map);
+ void pntnpuzl_map(address_map &map);
};
@@ -279,7 +281,7 @@ READ16_MEMBER(pntnpuzl_state::irq4_ack_r)
}
-static ADDRESS_MAP_START( pntnpuzl_map, AS_PROGRAM, 16, pntnpuzl_state )
+ADDRESS_MAP_START(pntnpuzl_state::pntnpuzl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ(irq1_ack_r)
AM_RANGE(0x100000, 0x100001) AM_READ(irq2_ack_r)
@@ -299,7 +301,7 @@ static ADDRESS_MAP_START( pntnpuzl_map, AS_PROGRAM, 16, pntnpuzl_state )
AM_RANGE(0x400000, 0x407fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, pntnpuzl_state )
+ADDRESS_MAP_START(pntnpuzl_state::mcu_map)
AM_RANGE(0x2000, 0x3fff) AM_ROM AM_REGION("mcu", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pockchal.cpp b/src/mame/drivers/pockchal.cpp
index 2298a7db909..2e6b69cf9b7 100644
--- a/src/mame/drivers/pockchal.cpp
+++ b/src/mame/drivers/pockchal.cpp
@@ -49,6 +49,7 @@ public:
uint32_t m_rom_size;
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pockchalv1_cart);
void pockchalv1(machine_config &config);
+ void pockchalv1_map(address_map &map);
};
@@ -70,7 +71,7 @@ uint32_t pockchalv1_state::screen_update_pockchalv1(screen_device &screen, bitma
}
-static ADDRESS_MAP_START( pockchalv1_map, AS_PROGRAM, 8, pockchalv1_state )
+ADDRESS_MAP_START(pockchalv1_state::pockchalv1_map)
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pocketc.cpp b/src/mame/drivers/pocketc.cpp
index b305a1ba7ee..4de92e7f7c9 100644
--- a/src/mame/drivers/pocketc.cpp
+++ b/src/mame/drivers/pocketc.cpp
@@ -85,42 +85,42 @@
/* special keys
red c-ce and reset; warm boot, program NOT lost*/
-static ADDRESS_MAP_START( pc1401_mem , AS_PROGRAM, 8, pc1401_state )
+ADDRESS_MAP_START(pc1401_state::pc1401_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x3800, 0x47ff) AM_RAM
AM_RANGE( 0x6000, 0x67ff) AM_READWRITE(pc1401_lcd_read, pc1401_lcd_write ) AM_MIRROR(0x1000)
AM_RANGE( 0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1402_mem , AS_PROGRAM, 8, pc1401_state )
+ADDRESS_MAP_START(pc1401_state::pc1402_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x2000, 0x47ff) AM_RAM
AM_RANGE( 0x6000, 0x67ff) AM_READWRITE(pc1401_lcd_read, pc1401_lcd_write ) AM_MIRROR(0x1000)
AM_RANGE( 0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1250_mem , AS_PROGRAM, 8, pc1251_state )
+ADDRESS_MAP_START(pc1251_state::pc1250_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x4000, 0x7fff) AM_ROM
AM_RANGE( 0xc000, 0xc7ff) AM_RAM // 2KB RAM
AM_RANGE( 0xf800, 0xf8ff) AM_READWRITE(pc1251_lcd_read, pc1251_lcd_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1251_mem , AS_PROGRAM, 8, pc1251_state )
+ADDRESS_MAP_START(pc1251_state::pc1251_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x4000, 0x7fff) AM_ROM
AM_RANGE( 0xb800, 0xc7ff) AM_RAM // 4KB RAM
AM_RANGE( 0xf800, 0xf8ff) AM_READWRITE(pc1251_lcd_read, pc1251_lcd_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1255_mem , AS_PROGRAM, 8, pc1251_state )
+ADDRESS_MAP_START(pc1251_state::pc1255_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x4000, 0x7fff) AM_ROM
AM_RANGE( 0xa000, 0xc7ff) AM_RAM // 10KB RAM
AM_RANGE( 0xf800, 0xf8ff) AM_READWRITE(pc1251_lcd_read, pc1251_lcd_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1260_mem , AS_PROGRAM, 8, pc1251_state )
+ADDRESS_MAP_START(pc1251_state::pc1260_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x2000, 0x20ff) AM_READWRITE(pc1251_lcd_read, pc1251_lcd_write)
//AM_RANGE( 0x2800, 0x28ff) AM_READWRITE(pc1251_lcd_read, pc1251_lcd_write)
@@ -128,7 +128,7 @@ static ADDRESS_MAP_START( pc1260_mem , AS_PROGRAM, 8, pc1251_state )
AM_RANGE( 0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1261_mem , AS_PROGRAM, 8, pc1251_state )
+ADDRESS_MAP_START(pc1251_state::pc1261_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x2000, 0x20ff) AM_READWRITE(pc1251_lcd_read, pc1251_lcd_write)
//AM_RANGE( 0x2800, 0x28ff) AM_READWRITE(pc1251_lcd_read, pc1251_lcd_write)
@@ -137,13 +137,13 @@ static ADDRESS_MAP_START( pc1261_mem , AS_PROGRAM, 8, pc1251_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1350_mem , AS_PROGRAM, 8, pc1350_state )
+ADDRESS_MAP_START(pc1350_state::pc1350_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x7000, 0x7eff) AM_READWRITE(pc1350_lcd_read, pc1350_lcd_write )
AM_RANGE( 0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1403_mem , AS_PROGRAM, 8, pc1403_state )
+ADDRESS_MAP_START(pc1403_state::pc1403_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x3000, 0x30bf) AM_READWRITE(pc1403_lcd_read, pc1403_lcd_write )
AM_RANGE( 0x3800, 0x3fff) AM_READWRITE(pc1403_asic_read, pc1403_asic_write )
@@ -151,7 +151,7 @@ static ADDRESS_MAP_START( pc1403_mem , AS_PROGRAM, 8, pc1403_state )
AM_RANGE( 0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1403h_mem , AS_PROGRAM, 8, pc1403_state )
+ADDRESS_MAP_START(pc1403_state::pc1403h_mem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x3000, 0x30bf) AM_READWRITE(pc1403_lcd_read, pc1403_lcd_write )
AM_RANGE( 0x3800, 0x3fff) AM_READWRITE(pc1403_asic_read, pc1403_asic_write )
@@ -161,13 +161,13 @@ ADDRESS_MAP_END
#if 0
-static ADDRESS_MAP_START( pc1421_readmem , AS_PROGRAM, 8, pc1403_state )
+ADDRESS_MAP_START(pc1403_state::pc1421_readmem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x3800, 0x47ff) AM_RAM
AM_RANGE( 0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc1421_writemem , AS_PROGRAM, 8, pc1403_state )
+ADDRESS_MAP_START(pc1403_state::pc1421_writemem)
AM_RANGE( 0x0000, 0x1fff) AM_ROM
AM_RANGE( 0x2000, 0x37ff) AM_RAM
AM_RANGE( 0x3800, 0x47ff) AM_RAM
diff --git a/src/mame/drivers/pockstat.cpp b/src/mame/drivers/pockstat.cpp
index 852adb537ba..a97391e8f5a 100644
--- a/src/mame/drivers/pockstat.cpp
+++ b/src/mame/drivers/pockstat.cpp
@@ -155,6 +155,7 @@ public:
void ps_intc_set_interrupt_line(uint32_t line, int state);
void ps_timer_start(int index);
void pockstat(machine_config &config);
+ void pockstat_mem(address_map &map);
};
@@ -840,7 +841,7 @@ WRITE32_MEMBER(pockstat_state::ps_audio_w)
verboselog(0, "ps_audio_w: Unknown Write: %08x = %08x & %08x\n", 0xd800000 + (offset << 2), data, mem_mask);
}
-static ADDRESS_MAP_START(pockstat_mem, AS_PROGRAM, 32, pockstat_state )
+ADDRESS_MAP_START(pockstat_state::pockstat_mem)
AM_RANGE(0x00000000, 0x000007ff) AM_RAM
AM_RANGE(0x02000000, 0x02ffffff) AM_READ(ps_rombank_r)
AM_RANGE(0x04000000, 0x04003fff) AM_ROM AM_REGION("maincpu", 0)
diff --git a/src/mame/drivers/pofo.cpp b/src/mame/drivers/pofo.cpp
index 373aa71267a..d055832545b 100644
--- a/src/mame/drivers/pofo.cpp
+++ b/src/mame/drivers/pofo.cpp
@@ -160,6 +160,9 @@ public:
DECLARE_READ8_MEMBER(hd61830_rd_r);
IRQ_CALLBACK_MEMBER(portfolio_int_ack);
void portfolio(machine_config &config);
+ void portfolio_io(address_map &map);
+ void portfolio_lcdc(address_map &map);
+ void portfolio_mem(address_map &map);
};
@@ -774,7 +777,7 @@ WRITE8_MEMBER( portfolio_state::io_w )
// ADDRESS_MAP( portfolio_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( portfolio_mem, AS_PROGRAM, 8, portfolio_state )
+ADDRESS_MAP_START(portfolio_state::portfolio_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
@@ -783,7 +786,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( portfolio_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( portfolio_io, AS_IO, 8, portfolio_state )
+ADDRESS_MAP_START(portfolio_state::portfolio_io)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
@@ -792,7 +795,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( portfolio_lcdc )
//-------------------------------------------------
-static ADDRESS_MAP_START( portfolio_lcdc, 0, 8, portfolio_state )
+ADDRESS_MAP_START(portfolio_state::portfolio_lcdc)
ADDRESS_MAP_GLOBAL_MASK(0x7ff)
AM_RANGE(0x0000, 0x07ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/poisk1.cpp b/src/mame/drivers/poisk1.cpp
index 910e3903cf1..54cdaa63325 100644
--- a/src/mame/drivers/poisk1.cpp
+++ b/src/mame/drivers/poisk1.cpp
@@ -137,6 +137,8 @@ public:
DECLARE_READ8_MEMBER(p1_ppi2_portc_r);
const char *m_cputag;
void poisk1(machine_config &config);
+ void poisk1_io(address_map &map);
+ void poisk1_map(address_map &map);
};
/*
@@ -613,12 +615,12 @@ MACHINE_RESET_MEMBER(p1_state, poisk1)
* macros
*/
-static ADDRESS_MAP_START( poisk1_map, AS_PROGRAM, 8, p1_state )
+ADDRESS_MAP_START(p1_state::poisk1_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("bios", 0xc000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( poisk1_io, AS_IO, 8, p1_state )
+ADDRESS_MAP_START(p1_state::poisk1_io)
AM_RANGE(0x0020, 0x0021) AM_DEVREADWRITE("pic8259", pic8259_device, read, write)
AM_RANGE(0x0028, 0x002B) AM_READWRITE(p1_trap_r, p1_trap_w)
AM_RANGE(0x0040, 0x0043) AM_DEVREADWRITE("pit8253", pit8253_device, read, write)
diff --git a/src/mame/drivers/pokechmp.cpp b/src/mame/drivers/pokechmp.cpp
index 5b560c37883..3fb7d83f089 100644
--- a/src/mame/drivers/pokechmp.cpp
+++ b/src/mame/drivers/pokechmp.cpp
@@ -81,7 +81,7 @@ WRITE8_MEMBER(pokechmp_state::pokechmp_sound_w)
-static ADDRESS_MAP_START( pokechmp_map, AS_PROGRAM, 8, pokechmp_state )
+ADDRESS_MAP_START(pokechmp_state::pokechmp_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(pokechmp_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1000, 0x11ff) AM_RAM AM_SHARE("spriteram")
@@ -105,7 +105,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( pokechmp_sound_map, AS_PROGRAM, 8, pokechmp_state )
+ADDRESS_MAP_START(pokechmp_state::pokechmp_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_device, write)
@@ -119,7 +119,7 @@ static ADDRESS_MAP_START( pokechmp_sound_map, AS_PROGRAM, 8, pokechmp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pokechmp_oki_map, 0, 8, pokechmp_state )
+ADDRESS_MAP_START(pokechmp_state::pokechmp_oki_map)
AM_RANGE(0x00000, 0x37fff) AM_ROM
AM_RANGE(0x38000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pokemini.cpp b/src/mame/drivers/pokemini.cpp
index bea8657d8ee..cdf890942bf 100644
--- a/src/mame/drivers/pokemini.cpp
+++ b/src/mame/drivers/pokemini.cpp
@@ -78,6 +78,7 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pokemini_cart);
void pokemini(machine_config &config);
+ void pokemini_mem_map(address_map &map);
protected:
enum
{
@@ -122,7 +123,7 @@ READ8_MEMBER( pokemini_state::rom_r )
return m_cart->read_rom(space, offset & 0x1fffff);
}
-static ADDRESS_MAP_START( pokemini_mem_map, AS_PROGRAM, 8, pokemini_state )
+ADDRESS_MAP_START(pokemini_state::pokemini_mem_map)
AM_RANGE( 0x000000, 0x000fff ) AM_ROM /* bios */
AM_RANGE( 0x001000, 0x001fff ) AM_RAM AM_SHARE("p_ram") /* VRAM/RAM */
AM_RANGE( 0x002000, 0x0020ff ) AM_READWRITE(hwreg_r, hwreg_w) /* hardware registers */
diff --git a/src/mame/drivers/poker72.cpp b/src/mame/drivers/poker72.cpp
index 4816ba7ecda..87517f4d888 100644
--- a/src/mame/drivers/poker72.cpp
+++ b/src/mame/drivers/poker72.cpp
@@ -51,6 +51,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void poker72(machine_config &config);
+ void poker72_map(address_map &map);
};
@@ -114,7 +115,7 @@ WRITE8_MEMBER(poker72_state::tile_bank_w)
m_tile_bank = (data & 4) >> 2;
}
-static ADDRESS_MAP_START( poker72_map, AS_PROGRAM, 8, poker72_state )
+ADDRESS_MAP_START(poker72_state::poker72_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM //work ram
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE("vram")
diff --git a/src/mame/drivers/polepos.cpp b/src/mame/drivers/polepos.cpp
index c12d1fa2b1c..d786a1a6fec 100644
--- a/src/mame/drivers/polepos.cpp
+++ b/src/mame/drivers/polepos.cpp
@@ -422,7 +422,7 @@ MACHINE_RESET_MEMBER(polepos_state,polepos)
* CPU memory structures
*********************************************************************/
-static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, polepos_state )
+ADDRESS_MAP_START(polepos_state::z80_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x37ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("nvram") /* Battery Backup */
AM_RANGE(0x4000, 0x47ff) AM_READWRITE(polepos_sprite_r, polepos_sprite_w) /* Motion Object */
@@ -442,14 +442,14 @@ static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, polepos_state )
AM_RANGE(0xa300, 0xa300) AM_MIRROR(0x0cff) AM_DEVWRITE("polepos", polepos_sound_device, polepos_engine_sound_msb_w) /* Car Sound ( Upper Nibble ) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_io, AS_IO, 8, polepos_state )
+ADDRESS_MAP_START(polepos_state::z80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(polepos_adc_r) AM_WRITENOP
ADDRESS_MAP_END
/* the same memory map is used by both Z8002 CPUs; all RAM areas are shared */
-static ADDRESS_MAP_START( z8002_map, AS_PROGRAM, 16, polepos_state )
+ADDRESS_MAP_START(polepos_state::z8002_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(polepos_sprite16_r, polepos_sprite16_w) AM_SHARE("sprite16_memory") /* Motion Object */
AM_RANGE(0x9000, 0x97ff) AM_READWRITE(polepos_road16_r, polepos_road16_w) AM_SHARE("road16_memory") /* Road Memory */
@@ -459,12 +459,12 @@ static ADDRESS_MAP_START( z8002_map, AS_PROGRAM, 16, polepos_state )
AM_RANGE(0xc100, 0xc101) AM_MIRROR(0x38fe) AM_WRITE(polepos_road16_vscroll_w) /* Road vertical position */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z8002_map_1, AS_PROGRAM, 16, polepos_state )
+ADDRESS_MAP_START(polepos_state::z8002_map_1)
AM_IMPORT_FROM(z8002_map)
AM_RANGE(0x6000, 0x6001) AM_MIRROR(0x0ffe) AM_WRITE(polepos_z8002_nvi_enable_w<true>) /* NVI enable - *NOT* shared by the two CPUs */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z8002_map_2, AS_PROGRAM, 16, polepos_state )
+ADDRESS_MAP_START(polepos_state::z8002_map_2)
AM_IMPORT_FROM(z8002_map)
AM_RANGE(0x6000, 0x6001) AM_MIRROR(0x0ffe) AM_WRITE(polepos_z8002_nvi_enable_w<false>) /* NVI enable - *NOT* shared by the two CPUs */
ADDRESS_MAP_END
@@ -957,7 +957,7 @@ WRITE8_MEMBER(polepos_state::bootleg_soundlatch_w)
m_soundlatch->write(space, 0, data | 0xfc);
}
-static ADDRESS_MAP_START( topracern_io, AS_IO, 8, polepos_state )
+ADDRESS_MAP_START(polepos_state::topracern_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_IMPORT_FROM(z80_io)
// extra direct mapped inputs read
@@ -967,14 +967,14 @@ static ADDRESS_MAP_START( topracern_io, AS_IO, 8, polepos_state )
AM_RANGE(0x05, 0x05) AM_READ_PORT("DSWB") AM_WRITE(bootleg_soundlatch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_z80_bootleg_map, AS_PROGRAM, 8, polepos_state )
+ADDRESS_MAP_START(polepos_state::sound_z80_bootleg_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2700, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, acknowledge_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_z80_bootleg_iomap, AS_IO, 8, polepos_state )
+ADDRESS_MAP_START(polepos_state::sound_z80_bootleg_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("tms", tms5220_device, status_r, data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/polgar.cpp b/src/mame/drivers/polgar.cpp
index 32b0f33940c..9037a5ffc18 100644
--- a/src/mame/drivers/polgar.cpp
+++ b/src/mame/drivers/polgar.cpp
@@ -37,6 +37,7 @@ public:
void polgar10(machine_config &config);
void polgar(machine_config &config);
+ void polgar_mem(address_map &map);
protected:
optional_ioport m_keys;
};
@@ -59,6 +60,8 @@ public:
DECLARE_READ32_MEMBER(disable_boot_rom_r);
void mrisc(machine_config &config);
+ void mrisc_arm_mem(address_map &map);
+ void mrisc_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -89,6 +92,7 @@ public:
DECLARE_WRITE8_MEMBER(milano_io_w);
void milano(machine_config &config);
+ void milano_mem(address_map &map);
protected:
virtual void machine_reset() override;
virtual void machine_start() override;
@@ -117,6 +121,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(nmi_off) { m_maincpu->set_input_line(M6502_NMI_LINE, CLEAR_LINE); }
void modena(machine_config &config);
+ void modena_mem(address_map &map);
protected:
virtual void machine_reset() override;
virtual void machine_start() override;
@@ -145,6 +150,7 @@ public:
DECLARE_READ8_MEMBER(academy_input_r);
void academy(machine_config &config);
+ void academy_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -164,7 +170,7 @@ WRITE8_MEMBER(mephisto_polgar_state::polgar_led_w)
output().set_led_value(100 + offset, BIT(data, 7));
}
-static ADDRESS_MAP_START(polgar_mem, AS_PROGRAM, 8, mephisto_polgar_state)
+ADDRESS_MAP_START(mephisto_polgar_state::polgar_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x2000, 0x2000 ) AM_DEVWRITE("display", mephisto_display_modul_device, latch_w)
AM_RANGE( 0x2004, 0x2004 ) AM_DEVWRITE("display", mephisto_display_modul_device, io_w)
@@ -230,7 +236,7 @@ TIMER_CALLBACK_MEMBER(mephisto_risc_state::disable_boot_rom)
remove_boot_rom();
}
-static ADDRESS_MAP_START(mrisc_mem, AS_PROGRAM, 8, mephisto_risc_state)
+ADDRESS_MAP_START(mephisto_risc_state::mrisc_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x2000, 0x2000 ) AM_DEVWRITE("display", mephisto_display_modul_device, latch_w)
@@ -248,7 +254,7 @@ static ADDRESS_MAP_START(mrisc_mem, AS_PROGRAM, 8, mephisto_risc_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mrisc_arm_mem, AS_PROGRAM, 32, mephisto_risc_state)
+ADDRESS_MAP_START(mephisto_risc_state::mrisc_arm_mem)
AM_RANGE( 0x00000000, 0x000fffff ) AM_RAM
AM_RANGE( 0x00400000, 0x007fffff ) AM_READWRITE8(latch1_r, latch0_w, 0x000000ff)
AM_RANGE( 0x01800000, 0x01800003 ) AM_READ(disable_boot_rom_r)
@@ -283,7 +289,7 @@ WRITE8_MEMBER(mephisto_milano_state::milano_io_w)
m_display->io_w(space, offset, data & 0x0f);
}
-static ADDRESS_MAP_START(milano_mem, AS_PROGRAM, 8, mephisto_milano_state)
+ADDRESS_MAP_START(mephisto_milano_state::milano_mem)
AM_RANGE( 0x0000, 0x1fbf ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x1fc0, 0x1fc0 ) AM_DEVWRITE("display", mephisto_display_modul_device, latch_w)
@@ -332,7 +338,7 @@ WRITE8_MEMBER(mephisto_modena_state::modena_digits_w)
m_digits_idx = (m_digits_idx + 1) & 3;
}
-static ADDRESS_MAP_START(modena_mem, AS_PROGRAM, 8, mephisto_modena_state)
+ADDRESS_MAP_START(mephisto_modena_state::modena_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x4000, 0x4000 ) AM_WRITE(modena_digits_w)
AM_RANGE( 0x5000, 0x5000 ) AM_WRITE(modena_led_w)
@@ -379,7 +385,7 @@ READ8_MEMBER(mephisto_academy_state::academy_input_r)
return data ^ 0xff;
}
-static ADDRESS_MAP_START(academy_mem, AS_PROGRAM, 8, mephisto_academy_state )
+ADDRESS_MAP_START(mephisto_academy_state::academy_mem)
AM_RANGE( 0x0000, 0x1fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x2400, 0x2400 ) AM_READ(academy_input_r)
AM_RANGE( 0x2800, 0x2800 ) AM_DEVWRITE("board", mephisto_board_device, mux_w)
diff --git a/src/mame/drivers/policetr.cpp b/src/mame/drivers/policetr.cpp
index 95f3dec346e..06844094d34 100644
--- a/src/mame/drivers/policetr.cpp
+++ b/src/mame/drivers/policetr.cpp
@@ -241,7 +241,7 @@ WRITE32_MEMBER(policetr_state::speedup_w)
*
*************************************/
-static ADDRESS_MAP_START( policetr_map, AS_PROGRAM, 32, policetr_state )
+ADDRESS_MAP_START(policetr_state::policetr_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x00200000, 0x0020000f) AM_WRITE(policetr_video_w)
AM_RANGE(0x00400000, 0x00400003) AM_READ(policetr_video_r)
@@ -260,7 +260,7 @@ static ADDRESS_MAP_START( policetr_map, AS_PROGRAM, 32, policetr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sshooter_map, AS_PROGRAM, 32, policetr_state )
+ADDRESS_MAP_START(policetr_state::sshooter_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_SHARE("rambase")
AM_RANGE(0x00200000, 0x00200003) AM_WRITE(policetr_bsmt2000_data_w)
AM_RANGE(0x00300000, 0x00300003) AM_WRITE(policetr_palette_offset_w)
diff --git a/src/mame/drivers/poly.cpp b/src/mame/drivers/poly.cpp
index 2849ac3526d..9cd03a712bb 100644
--- a/src/mame/drivers/poly.cpp
+++ b/src/mame/drivers/poly.cpp
@@ -66,6 +66,7 @@ public:
DECLARE_WRITE8_MEMBER(baud_rate_w);
void poly(machine_config &config);
+ void poly_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -81,7 +82,7 @@ private:
};
-static ADDRESS_MAP_START(poly_mem, AS_PROGRAM, 8, poly_state)
+ADDRESS_MAP_START(poly_state::poly_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0x9fff) AM_RAM
AM_RANGE(0xa000,0xcfff) AM_ROM
diff --git a/src/mame/drivers/poly88.cpp b/src/mame/drivers/poly88.cpp
index d378c0434e5..10fc9853520 100644
--- a/src/mame/drivers/poly88.cpp
+++ b/src/mame/drivers/poly88.cpp
@@ -48,7 +48,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START(poly88_mem, AS_PROGRAM, 8, poly88_state )
+ADDRESS_MAP_START(poly88_state::poly88_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_ROM // Monitor ROM
AM_RANGE(0x0400, 0x0bff) AM_ROM // ROM Expansion
@@ -59,7 +59,7 @@ static ADDRESS_MAP_START(poly88_mem, AS_PROGRAM, 8, poly88_state )
AM_RANGE(0xf800, 0xfbff) AM_RAM AM_SHARE("video_ram") // Video RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( poly88_io, AS_IO, 8, poly88_state )
+ADDRESS_MAP_START(poly88_state::poly88_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
@@ -69,7 +69,7 @@ static ADDRESS_MAP_START( poly88_io, AS_IO, 8, poly88_state )
AM_RANGE(0xf8, 0xf8) AM_READ(poly88_keyboard_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(poly8813_mem, AS_PROGRAM, 8, poly88_state )
+ADDRESS_MAP_START(poly88_state::poly8813_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_ROM // Monitor ROM
AM_RANGE(0x0400, 0x0bff) AM_ROM // Disk System ROM
@@ -78,7 +78,7 @@ static ADDRESS_MAP_START(poly8813_mem, AS_PROGRAM, 8, poly88_state )
AM_RANGE(0x2000, 0xffff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( poly8813_io, AS_IO, 8, poly88_state )
+ADDRESS_MAP_START(poly88_state::poly8813_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/poly880.cpp b/src/mame/drivers/poly880.cpp
index ef4ec4692a1..7b5d55788e0 100644
--- a/src/mame/drivers/poly880.cpp
+++ b/src/mame/drivers/poly880.cpp
@@ -63,7 +63,7 @@ WRITE8_MEMBER( poly880_state::cldig_w )
/* Memory Maps */
-static ADDRESS_MAP_START( poly880_mem, AS_PROGRAM, 8, poly880_state )
+ADDRESS_MAP_START(poly880_state::poly880_mem)
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x0c00) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0x0c00) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_MIRROR(0x0c00) AM_ROM
@@ -72,7 +72,7 @@ static ADDRESS_MAP_START( poly880_mem, AS_PROGRAM, 8, poly880_state )
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( poly880_io, AS_IO, 8, poly880_state )
+ADDRESS_MAP_START(poly880_state::poly880_io)
ADDRESS_MAP_GLOBAL_MASK(0xaf)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE(Z80PIO1_TAG, z80pio_device, read_alt, write_alt)
AM_RANGE(0x84, 0x87) AM_DEVREADWRITE(Z80PIO2_TAG, z80pio_device, read_alt, write_alt)
diff --git a/src/mame/drivers/polyplay.cpp b/src/mame/drivers/polyplay.cpp
index 3359d232fea..4c5ca9cc674 100644
--- a/src/mame/drivers/polyplay.cpp
+++ b/src/mame/drivers/polyplay.cpp
@@ -232,7 +232,7 @@ INPUT_CHANGED_MEMBER(polyplay_state::input_changed)
}
/* memory mapping */
-static ADDRESS_MAP_START( polyplay_mem_zre, AS_PROGRAM, 8, polyplay_state )
+ADDRESS_MAP_START(polyplay_state::polyplay_mem_zre)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x8fff) AM_ROM
@@ -241,7 +241,7 @@ static ADDRESS_MAP_START( polyplay_mem_zre, AS_PROGRAM, 8, polyplay_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( polyplay_mem_zrepp, AS_PROGRAM, 8, polyplay_state )
+ADDRESS_MAP_START(polyplay_state::polyplay_mem_zrepp)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -255,13 +255,13 @@ static ADDRESS_MAP_START( polyplay_mem_zrepp, AS_PROGRAM, 8, polyplay_state )
ADDRESS_MAP_END
/* port mapping */
-static ADDRESS_MAP_START( polyplay_io_zre, AS_IO, 8, polyplay_state )
+ADDRESS_MAP_START(polyplay_state::polyplay_io_zre)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE(Z80CTC_TAG, z80ctc_device, read, write)
AM_RANGE(0x84, 0x87) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( polyplay_io_zrepp, AS_IO, 8, polyplay_state )
+ADDRESS_MAP_START(polyplay_state::polyplay_io_zrepp)
AM_IMPORT_FROM(polyplay_io_zre)
AM_RANGE(0x88, 0x8b) AM_DEVREADWRITE(Z80SIO_TAG, z80sio_device, cd_ba_r, cd_ba_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/poolshrk.cpp b/src/mame/drivers/poolshrk.cpp
index b0c4400f78c..d83a888d04c 100644
--- a/src/mame/drivers/poolshrk.cpp
+++ b/src/mame/drivers/poolshrk.cpp
@@ -101,7 +101,7 @@ READ8_MEMBER(poolshrk_state::irq_reset_r)
}
-static ADDRESS_MAP_START( poolshrk_cpu_map, AS_PROGRAM, 8, poolshrk_state )
+ADDRESS_MAP_START(poolshrk_state::poolshrk_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x2300) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_MIRROR(0x2000) AM_WRITEONLY AM_SHARE("playfield_ram")
diff --git a/src/mame/drivers/pooyan.cpp b/src/mame/drivers/pooyan.cpp
index 50c2d28ffca..f4423db46f4 100644
--- a/src/mame/drivers/pooyan.cpp
+++ b/src/mame/drivers/pooyan.cpp
@@ -64,7 +64,7 @@ WRITE_LINE_MEMBER(pooyan_state::coin_counter_2_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pooyan_state )
+ADDRESS_MAP_START(pooyan_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/popeye.cpp b/src/mame/drivers/popeye.cpp
index f6ad5d4fa83..2f9c830bf66 100644
--- a/src/mame/drivers/popeye.cpp
+++ b/src/mame/drivers/popeye.cpp
@@ -188,7 +188,7 @@ WRITE8_MEMBER(popeye_state::protection_w)
-static ADDRESS_MAP_START( tnx1_map, AS_PROGRAM, 8, popeye_state )
+ADDRESS_MAP_START(popeye_state::tnx1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_WRITENOP // Attempts to initialize this area with 00 on boot
@@ -202,7 +202,7 @@ static ADDRESS_MAP_START( tnx1_map, AS_PROGRAM, 8, popeye_state )
AM_RANGE(0xe000, 0xe001) AM_READWRITE(protection_r,protection_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tpp2_map, AS_PROGRAM, 8, popeye_state )
+ADDRESS_MAP_START(popeye_state::tpp2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM // unpopulated 7f
AM_RANGE(0x8800, 0x8bff) AM_RAM
@@ -216,7 +216,7 @@ static ADDRESS_MAP_START( tpp2_map, AS_PROGRAM, 8, popeye_state )
AM_RANGE(0xe000, 0xe001) AM_READWRITE(protection_r,protection_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( popeyebl_map, AS_PROGRAM, 8, popeye_state )
+ADDRESS_MAP_START(popeye_state::popeyebl_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8c00, 0x8c02) AM_RAM AM_SHARE("background_pos")
@@ -229,7 +229,7 @@ static ADDRESS_MAP_START( popeyebl_map, AS_PROGRAM, 8, popeye_state )
AM_RANGE(0xe000, 0xe01f) AM_ROM AM_REGION("blprot", 0x00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( popeye_io_map, AS_IO, 8, popeye_state )
+ADDRESS_MAP_START(popeye_state::popeye_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
diff --git a/src/mame/drivers/popobear.cpp b/src/mame/drivers/popobear.cpp
index ee6cf408f95..2bf5433bb19 100644
--- a/src/mame/drivers/popobear.cpp
+++ b/src/mame/drivers/popobear.cpp
@@ -132,6 +132,7 @@ public:
void postload();
void popobear(machine_config &config);
+ void popobear_mem(address_map &map);
};
@@ -472,7 +473,7 @@ WRITE8_MEMBER(popobear_state::irq_ack_w)
}
}
-static ADDRESS_MAP_START( popobear_mem, AS_PROGRAM, 16, popobear_state )
+ADDRESS_MAP_START(popobear_state::popobear_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x210000, 0x21ffff) AM_RAM
diff --git a/src/mame/drivers/popper.cpp b/src/mame/drivers/popper.cpp
index ed7efb68e79..f1b6be4c994 100644
--- a/src/mame/drivers/popper.cpp
+++ b/src/mame/drivers/popper.cpp
@@ -86,6 +86,8 @@ public:
DECLARE_READ8_MEMBER(inputs_r);
void popper(machine_config &config);
+ void main_map(address_map &map);
+ void sub_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -116,7 +118,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, popper_state )
+ADDRESS_MAP_START(popper_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_NOP
AM_RANGE(0xc000, 0xc0ff) AM_RAM
@@ -138,7 +140,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, popper_state )
AM_RANGE(0xfc00, 0xfc00) AM_MIRROR(0x03ff) AM_READ(watchdog_clear_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, popper_state )
+ADDRESS_MAP_START(popper_state::sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x7fff) AM_NOP
AM_RANGE(0x8000, 0x8003) AM_MIRROR(0x1ffc) AM_WRITE(ay1_w)
diff --git a/src/mame/drivers/portrait.cpp b/src/mame/drivers/portrait.cpp
index e027b88fc06..84a2fdd155b 100644
--- a/src/mame/drivers/portrait.cpp
+++ b/src/mame/drivers/portrait.cpp
@@ -122,7 +122,7 @@ WRITE8_MEMBER(portrait_state::negative_scroll_w)
m_scroll = - (data ^ 0xff);
}
-static ADDRESS_MAP_START( portrait_map, AS_PROGRAM, 8, portrait_state )
+ADDRESS_MAP_START(portrait_state::portrait_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(bgvideo_write) AM_SHARE("bgvideoram")
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(fgvideo_write) AM_SHARE("fgvideoram")
@@ -141,7 +141,7 @@ static ADDRESS_MAP_START( portrait_map, AS_PROGRAM, 8, portrait_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( portrait_sound_map, AS_PROGRAM, 8, portrait_state )
+ADDRESS_MAP_START(portrait_state::portrait_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/potgoldu.cpp b/src/mame/drivers/potgoldu.cpp
index 4319e2a6ce2..e66ae83aadb 100644
--- a/src/mame/drivers/potgoldu.cpp
+++ b/src/mame/drivers/potgoldu.cpp
@@ -38,6 +38,7 @@ public:
TMS340X0_SCANLINE_RGB32_CB_MEMBER(scanline_update);
void potgold(machine_config &config);
+ void potgold_map(address_map &map);
};
@@ -63,7 +64,7 @@ void potgold_state::machine_reset()
}
-static ADDRESS_MAP_START( potgold_map, AS_PROGRAM, 16, potgold_state )
+ADDRESS_MAP_START(potgold_state::potgold_map)
AM_RANGE(0xff000000, 0xffffffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/powerbal.cpp b/src/mame/drivers/powerbal.cpp
index 2a29a2f27c7..e285030c566 100644
--- a/src/mame/drivers/powerbal.cpp
+++ b/src/mame/drivers/powerbal.cpp
@@ -53,6 +53,9 @@ public:
DECLARE_WRITE16_MEMBER(oki_banking);
void magicstk(machine_config &config);
void powerbal(machine_config &config);
+ void magicstk_main_map(address_map &map);
+ void oki_map(address_map &map);
+ void powerbal_main_map(address_map &map);
};
@@ -89,7 +92,7 @@ WRITE16_MEMBER(powerbal_state::oki_banking)
m_okibank->set_entry(bank & (m_oki_numbanks - 1));
}
-static ADDRESS_MAP_START( magicstk_main_map, AS_PROGRAM, 16, powerbal_state )
+ADDRESS_MAP_START(powerbal_state::magicstk_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x088000, 0x0883ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x094000, 0x094001) AM_WRITENOP
@@ -108,7 +111,7 @@ static ADDRESS_MAP_START( magicstk_main_map, AS_PROGRAM, 16, powerbal_state )
AM_RANGE(0x100000, 0x100fff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( powerbal_main_map, AS_PROGRAM, 16, powerbal_state )
+ADDRESS_MAP_START(powerbal_state::powerbal_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x088000, 0x0883ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x094000, 0x094001) AM_WRITENOP
@@ -130,7 +133,7 @@ static ADDRESS_MAP_START( powerbal_main_map, AS_PROGRAM, 16, powerbal_state )
AM_RANGE(0x103000, 0x103fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, powerbal_state )
+ADDRESS_MAP_START(powerbal_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/powerins.cpp b/src/mame/drivers/powerins.cpp
index c2708252910..01f90743ca9 100644
--- a/src/mame/drivers/powerins.cpp
+++ b/src/mame/drivers/powerins.cpp
@@ -59,7 +59,7 @@ READ8_MEMBER(powerins_state::powerinsb_fake_ym2203_r)
}
-static ADDRESS_MAP_START( powerins_map, AS_PROGRAM, 16, powerins_state )
+ADDRESS_MAP_START(powerins_state::powerins_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P1_P2")
@@ -78,13 +78,13 @@ static ADDRESS_MAP_START( powerins_map, AS_PROGRAM, 16, powerins_state )
ADDRESS_MAP_END
/* powerinsa: same as the original one but without the sound cpu (and inferior sound HW) */
-static ADDRESS_MAP_START( powerinsa_map, AS_PROGRAM, 16, powerins_state )
+ADDRESS_MAP_START(powerins_state::powerinsa_map)
AM_IMPORT_FROM(powerins_map)
AM_RANGE(0x100030, 0x100031) AM_WRITE8(powerinsa_okibank_w, 0x00ff)
AM_RANGE(0x10003e, 0x10003f) AM_DEVREADWRITE8("oki1", okim6295_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( powerins_sound_map, AS_PROGRAM, 8, powerins_state )
+ADDRESS_MAP_START(powerins_state::powerins_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -92,7 +92,7 @@ static ADDRESS_MAP_START( powerins_sound_map, AS_PROGRAM, 8, powerins_state )
// AM_RANGE(0xe001, 0xe001) AM_WRITENOP // ?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( powerins_sound_io_map, AS_IO, 8, powerins_state )
+ADDRESS_MAP_START(powerins_state::powerins_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym2203", ym2203_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("oki1", okim6295_device, read, write)
@@ -100,7 +100,7 @@ static ADDRESS_MAP_START( powerins_sound_io_map, AS_IO, 8, powerins_state )
AM_RANGE(0x90, 0x97) AM_DEVWRITE("nmk112", nmk112_device, okibank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( powerinsb_sound_io_map, AS_IO, 8, powerins_state )
+ADDRESS_MAP_START(powerins_state::powerinsb_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(powerinsb_fake_ym2203_r) AM_WRITENOP
AM_RANGE(0x01, 0x01) AM_NOP
@@ -109,7 +109,7 @@ static ADDRESS_MAP_START( powerinsb_sound_io_map, AS_IO, 8, powerins_state )
AM_RANGE(0x90, 0x97) AM_DEVWRITE("nmk112", nmk112_device, okibank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( powerinsa_oki_map, 0, 8, powerins_state )
+ADDRESS_MAP_START(powerins_state::powerinsa_oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pp01.cpp b/src/mame/drivers/pp01.cpp
index 5f6f54ce880..56980b44c08 100644
--- a/src/mame/drivers/pp01.cpp
+++ b/src/mame/drivers/pp01.cpp
@@ -16,7 +16,7 @@
/* Address maps */
-static ADDRESS_MAP_START(pp01_mem, AS_PROGRAM, 8, pp01_state )
+ADDRESS_MAP_START(pp01_state::pp01_mem)
AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("bank1")
AM_RANGE(0x1000, 0x1fff) AM_RAMBANK("bank2")
AM_RANGE(0x2000, 0x2fff) AM_RAMBANK("bank3")
@@ -35,7 +35,7 @@ static ADDRESS_MAP_START(pp01_mem, AS_PROGRAM, 8, pp01_state )
AM_RANGE(0xf000, 0xffff) AM_RAMBANK("bank16")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pp01_io, AS_IO, 8, pp01_state )
+ADDRESS_MAP_START(pp01_state::pp01_io)
AM_RANGE(0xc0, 0xc3) AM_DEVREADWRITE("ppi8255", i8255_device, read, write) // system
//AM_RANGE(0xc4, 0xc7) AM_DEVREADWRITE("ppi8255", i8255_device, read, write) // user
AM_RANGE(0xc8, 0xc8) AM_MIRROR(2) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/ppmast93.cpp b/src/mame/drivers/ppmast93.cpp
index 77f32e8edd5..2bf18d06dca 100644
--- a/src/mame/drivers/ppmast93.cpp
+++ b/src/mame/drivers/ppmast93.cpp
@@ -172,6 +172,10 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ppmast93(machine_config &config);
+ void ppmast93_cpu1_io(address_map &map);
+ void ppmast93_cpu1_map(address_map &map);
+ void ppmast93_cpu2_io(address_map &map);
+ void ppmast93_cpu2_map(address_map &map);
};
@@ -200,7 +204,7 @@ WRITE8_MEMBER(ppmast93_state::port4_w)
membank("cpubank")->set_entry(data & 0x07);
}
-static ADDRESS_MAP_START( ppmast93_cpu1_map, AS_PROGRAM, 8, ppmast93_state )
+ADDRESS_MAP_START(ppmast93_state::ppmast93_cpu1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("cpubank")
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(bgram_w) AM_SHARE("bgram")
@@ -209,7 +213,7 @@ static ADDRESS_MAP_START( ppmast93_cpu1_map, AS_PROGRAM, 8, ppmast93_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppmast93_cpu1_io, AS_IO, 8, ppmast93_state )
+ADDRESS_MAP_START(ppmast93_state::ppmast93_cpu1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x02, 0x02) AM_READ_PORT("P2")
@@ -218,13 +222,13 @@ static ADDRESS_MAP_START( ppmast93_cpu1_io, AS_IO, 8, ppmast93_state )
AM_RANGE(0x08, 0x08) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppmast93_cpu2_map, AS_PROGRAM, 8, ppmast93_state )
+ADDRESS_MAP_START(ppmast93_state::ppmast93_cpu2_map)
AM_RANGE(0x0000, 0xfbff) AM_ROM AM_REGION("sub", 0x10000)
AM_RANGE(0xfc00, 0xfc00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xfd00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppmast93_cpu2_io, AS_IO, 8, ppmast93_state )
+ADDRESS_MAP_START(ppmast93_state::ppmast93_cpu2_io)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("sub", 0x20000)
AM_RANGE(0x0000, 0x0001) AM_MIRROR(0xff00) AM_DEVWRITE("ymsnd", ym2413_device, write)
AM_RANGE(0x0002, 0x0002) AM_MIRROR(0xff00) AM_DEVWRITE("dac", dac_byte_interface, write)
diff --git a/src/mame/drivers/prehisle.cpp b/src/mame/drivers/prehisle.cpp
index 8f658e9a0b8..693cead7ccc 100644
--- a/src/mame/drivers/prehisle.cpp
+++ b/src/mame/drivers/prehisle.cpp
@@ -30,7 +30,7 @@ WRITE16_MEMBER(prehisle_state::soundcmd_w)
/*******************************************************************************/
-static ADDRESS_MAP_START( prehisle_map, AS_PROGRAM, 16, prehisle_state )
+ADDRESS_MAP_START(prehisle_state::prehisle_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x070000, 0x073fff) AM_RAM
AM_RANGE(0x090000, 0x0907ff) AM_RAM_WRITE(tx_vram_w) AM_SHARE("tx_vram")
@@ -56,14 +56,14 @@ WRITE8_MEMBER(prehisle_state::D7759_upd_reset_w)
m_upd7759->reset_w(data & 0x80);
}
-static ADDRESS_MAP_START( prehisle_sound_map, AS_PROGRAM, 8, prehisle_state )
+ADDRESS_MAP_START(prehisle_state::prehisle_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xf800, 0xf800) AM_WRITENOP // ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prehisle_sound_io_map, AS_IO, 8, prehisle_state )
+ADDRESS_MAP_START(prehisle_state::prehisle_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_device, status_port_r, control_port_w)
AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_device, write_port_w)
diff --git a/src/mame/drivers/prestige.cpp b/src/mame/drivers/prestige.cpp
index ee5d900f2b0..cb2b71e4579 100644
--- a/src/mame/drivers/prestige.cpp
+++ b/src/mame/drivers/prestige.cpp
@@ -162,6 +162,9 @@ public:
void glcolor(machine_config &config);
void prestige(machine_config &config);
void gl7007sl(machine_config &config);
+ void glcolor_io(address_map &map);
+ void prestige_io(address_map &map);
+ void prestige_mem(address_map &map);
};
@@ -320,7 +323,7 @@ WRITE8_MEMBER( prestige_state::lcdc_w )
}
-static ADDRESS_MAP_START(prestige_mem, AS_PROGRAM, 8, prestige_state)
+ADDRESS_MAP_START(prestige_state::prestige_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3")
@@ -328,7 +331,7 @@ static ADDRESS_MAP_START(prestige_mem, AS_PROGRAM, 8, prestige_state)
AM_RANGE(0xe000, 0xffff) AM_RAMBANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prestige_io , AS_IO, 8, prestige_state)
+ADDRESS_MAP_START(prestige_state::prestige_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x05) AM_READWRITE(mouse_r, mouse_w)
@@ -338,7 +341,7 @@ static ADDRESS_MAP_START( prestige_io , AS_IO, 8, prestige_state)
AM_RANGE(0x50, 0x56) AM_READWRITE(bankswitch_r, bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( glcolor_io , AS_IO, 8, prestige_state)
+ADDRESS_MAP_START(prestige_state::glcolor_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x30, 0x3f) AM_WRITE(lcdc_w)
diff --git a/src/mame/drivers/primo.cpp b/src/mame/drivers/primo.cpp
index 7bfd2747ddb..55551c0ec35 100644
--- a/src/mame/drivers/primo.cpp
+++ b/src/mame/drivers/primo.cpp
@@ -117,31 +117,31 @@ Interrupts:
#include "formats/primoptp.h"
-static ADDRESS_MAP_START( primoa_port, AS_IO, 8, primo_state )
+ADDRESS_MAP_START(primo_state::primoa_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x3f ) AM_READWRITE(primo_be_1_r, primo_ki_1_w )
AM_RANGE( 0xfd, 0xfd ) AM_WRITE(primo_FD_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( primob_port, AS_IO, 8, primo_state )
+ADDRESS_MAP_START(primo_state::primob_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x3f ) AM_READWRITE(primo_be_1_r, primo_ki_1_w )
AM_RANGE( 0x40, 0x7f ) AM_READWRITE(primo_be_2_r, primo_ki_2_w )
AM_RANGE( 0xfd, 0xfd ) AM_WRITE(primo_FD_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( primo32_mem, AS_PROGRAM, 8, primo_state )
+ADDRESS_MAP_START(primo_state::primo32_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x4000, 0x7fff ) AM_RAM AM_MIRROR ( 0x8000 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( primo48_mem, AS_PROGRAM, 8, primo_state )
+ADDRESS_MAP_START(primo_state::primo48_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x4000, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0xbfff ) AM_RAM AM_MIRROR ( 0x4000 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( primo64_mem, AS_PROGRAM, 8, primo_state )
+ADDRESS_MAP_START(primo_state::primo64_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x4000, 0xffff ) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pro80.cpp b/src/mame/drivers/pro80.cpp
index d2ca812c57f..519d095aaa4 100644
--- a/src/mame/drivers/pro80.cpp
+++ b/src/mame/drivers/pro80.cpp
@@ -46,6 +46,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_p);
void pro80(machine_config &config);
+ void pro80_io(address_map &map);
+ void pro80_mem(address_map &map);
private:
uint8_t m_digit_sel;
uint8_t m_cass_in;
@@ -110,14 +112,14 @@ READ8_MEMBER( pro80_state::kp_r )
return data | m_cass_in | 0xc0;
}
-static ADDRESS_MAP_START( pro80_mem, AS_PROGRAM, 8, pro80_state )
+ADDRESS_MAP_START(pro80_state::pro80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_RAM
AM_RANGE(0x1400, 0x17ff) AM_RAM // 2nd RAM is optional
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pro80_io, AS_IO, 8, pro80_state )
+ADDRESS_MAP_START(pro80_state::pro80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x43) AM_DEVREADWRITE("pio", z80pio_device, read, write)
diff --git a/src/mame/drivers/proconn.cpp b/src/mame/drivers/proconn.cpp
index a4e5bdbd582..60ee5f0d952 100644
--- a/src/mame/drivers/proconn.cpp
+++ b/src/mame/drivers/proconn.cpp
@@ -180,6 +180,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(pio_5_m_out_brdy_w) { logerror("pio_5_m_out_brdy_w %02x\n", state); }
void proconn(machine_config &config);
+ void proconn_map(address_map &map);
+ void proconn_portmap(address_map &map);
protected:
// devices
@@ -204,7 +206,7 @@ public:
DECLARE_READ16_MEMBER(serial_receive);
};
-static ADDRESS_MAP_START( proconn_map, AS_PROGRAM, 8, proconn_state )
+ADDRESS_MAP_START(proconn_state::proconn_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -214,7 +216,7 @@ ADDRESS_MAP_END
// the mapping of the devices is rather ugly with address bits 8-9 providing the usual address bits 0-1 or 'offset'
// r0/r1/r2/r3 and w0/w1/w2/w3 might still be in the wrong order at the moment.
-static ADDRESS_MAP_START( proconn_portmap, AS_IO, 8, proconn_state )
+ADDRESS_MAP_START(proconn_state::proconn_portmap)
// ADDRESS_MAP_GLOBAL_MASK(0x3ff)
// sio (vfd should be connected to it?)
diff --git a/src/mame/drivers/prodigy.cpp b/src/mame/drivers/prodigy.cpp
index c134c40cc29..9db8d3b1b65 100644
--- a/src/mame/drivers/prodigy.cpp
+++ b/src/mame/drivers/prodigy.cpp
@@ -165,6 +165,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(irq_handler);
void prodigy(machine_config &config);
+ void maincpu_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<ttl74145_device> m_74145;
@@ -564,7 +565,7 @@ void prodigy_state::update_bcd()
}
}
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, prodigy_state )
+ADDRESS_MAP_START(prodigy_state::maincpu_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x200f) AM_DEVREADWRITE("via", via6522_device, read, write)
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("roms", 0x0000) AM_MIRROR(0x8000)
diff --git a/src/mame/drivers/prof180x.cpp b/src/mame/drivers/prof180x.cpp
index f15a3bbb676..1ab28499beb 100644
--- a/src/mame/drivers/prof180x.cpp
+++ b/src/mame/drivers/prof180x.cpp
@@ -186,11 +186,11 @@ READ8_MEMBER( prof180x_state::status_r )
/* Address Maps */
-static ADDRESS_MAP_START( prof180x_mem, AS_PROGRAM, 8, prof180x_state )
+ADDRESS_MAP_START(prof180x_state::prof180x_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prof180x_io , AS_IO, 8, prof180x_state )
+ADDRESS_MAP_START(prof180x_state::prof180x_io)
AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) AM_WRITE(flr_w)
AM_RANGE(0x09, 0x09) AM_SELECT(0xff00) AM_READ(status_r)
AM_RANGE(0x0a, 0x0a) AM_MIRROR(0xff00) AM_DEVREADWRITE(FDC9268_TAG, upd765a_device, mdma_r, mdma_w)
diff --git a/src/mame/drivers/prof80.cpp b/src/mame/drivers/prof80.cpp
index 175b0dd4cdb..4c1e8c6ec0f 100644
--- a/src/mame/drivers/prof80.cpp
+++ b/src/mame/drivers/prof80.cpp
@@ -271,7 +271,7 @@ WRITE8_MEMBER( prof80_state::unio_ctrl_w )
// ADDRESS_MAP( prof80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( prof80_mem, AS_PROGRAM, 8, prof80_state )
+ADDRESS_MAP_START(prof80_state::prof80_mem)
AM_RANGE(0x0000, 0xffff) AM_DEVICE(MMU_TAG, prof80_mmu_device, z80_program_map)
ADDRESS_MAP_END
@@ -280,7 +280,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( prof80_mmu )
//-------------------------------------------------
-static ADDRESS_MAP_START( prof80_mmu, AS_PROGRAM, 8, prof80_state )
+ADDRESS_MAP_START(prof80_state::prof80_mmu)
AM_RANGE(0x40000, 0x5ffff) AM_RAM
AM_RANGE(0xc0000, 0xdffff) AM_RAM
AM_RANGE(0xf0000, 0xf1fff) AM_MIRROR(0xe000) AM_ROM AM_REGION(Z80_TAG, 0)
@@ -291,7 +291,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( prof80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( prof80_io, AS_IO, 8, prof80_state )
+ADDRESS_MAP_START(prof80_state::prof80_io)
AM_RANGE(0x00, 0xd7) AM_MIRROR(0xff00) AM_DEVREADWRITE(ECBBUS_TAG, ecbbus_device, io_r, io_w)
// AM_RANGE(0x80, 0x8f) AM_MIRROR(0xff00) AM_DEVREADWRITE(UNIO_Z80STI_TAG, z80sti_device, read, write)
// AM_RANGE(0x94, 0x95) AM_MIRROR(0xff00) AM_DEVREADWRITE_LEGACY(UNIO_Z80SIO_TAG, z80sio_d_r, z80sio_d_w)
diff --git a/src/mame/drivers/progolf.cpp b/src/mame/drivers/progolf.cpp
index f5e48dded71..9d83d7a33ed 100644
--- a/src/mame/drivers/progolf.cpp
+++ b/src/mame/drivers/progolf.cpp
@@ -107,6 +107,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void progolfa(machine_config &config);
void progolf(machine_config &config);
+ void main_cpu(address_map &map);
+ void sound_cpu(address_map &map);
};
@@ -259,7 +261,7 @@ WRITE8_MEMBER(progolf_state::videoram_w)
m_videoram[offset] = data;
}
-static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, progolf_state )
+ADDRESS_MAP_START(progolf_state::main_cpu)
AM_RANGE(0x0000, 0x5fff) AM_RAM
AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(charram_w) AM_SHARE("fbram")
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(videoram_r, videoram_w) AM_SHARE("videoram")
@@ -275,7 +277,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, progolf_state )
AM_RANGE(0xb000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, progolf_state )
+ADDRESS_MAP_START(progolf_state::sound_cpu)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x4000, 0x4fff) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
AM_RANGE(0x5000, 0x5fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
diff --git a/src/mame/drivers/prophet600.cpp b/src/mame/drivers/prophet600.cpp
index 7b54cfec28e..3edba6498ed 100644
--- a/src/mame/drivers/prophet600.cpp
+++ b/src/mame/drivers/prophet600.cpp
@@ -106,6 +106,8 @@ public:
DECLARE_WRITE8_MEMBER(gate_w);
void prophet600(machine_config &config);
+ void cpu_map(address_map &map);
+ void io_map(address_map &map);
private:
uint16_t m_dac;
uint8_t m_scanrow;
@@ -237,7 +239,7 @@ READ8_MEMBER(prophet600_state::comparitor_r)
return m_comparitor;
}
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, prophet600_state )
+ADDRESS_MAP_START(prophet600_state::cpu_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION(MAINCPU_TAG, 0)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x3000, 0x37ff) AM_RAM
@@ -246,7 +248,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, prophet600_state )
AM_RANGE(0xe000, 0xe001) AM_DEVREAD(UART_TAG, acia6850_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, prophet600_state )
+ADDRESS_MAP_START(prophet600_state::io_map)
AM_RANGE(0x00, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE(PIT_TAG, pit8253_device, read, write)
AM_RANGE(0x08, 0x08) AM_MIRROR(0xff00) AM_WRITE(scanrow_w)
AM_RANGE(0x09, 0x09) AM_MIRROR(0xff00) AM_READWRITE(comparitor_r, led_w)
diff --git a/src/mame/drivers/proteus3.cpp b/src/mame/drivers/proteus3.cpp
index 742572327f8..c8e937a20b3 100644
--- a/src/mame/drivers/proteus3.cpp
+++ b/src/mame/drivers/proteus3.cpp
@@ -106,6 +106,7 @@ public:
DECLARE_WRITE_LINE_MEMBER (write_f15_clock){ write_acia_clocks(mc14411_device::TIMER_F15, state); }
void proteus3(machine_config &config);
+ void proteus3_mem(address_map &map);
private:
uint8_t m_video_data;
uint8_t m_flashcnt;
@@ -135,7 +136,7 @@ private:
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(proteus3_mem, AS_PROGRAM, 8, proteus3_state)
+ADDRESS_MAP_START(proteus3_state::proteus3_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAM
AM_RANGE(0x8004, 0x8007) AM_DEVREADWRITE("pia", pia6821_device, read, write)
diff --git a/src/mame/drivers/ps2.cpp b/src/mame/drivers/ps2.cpp
index 2d54930bb8a..94741a87f4a 100644
--- a/src/mame/drivers/ps2.cpp
+++ b/src/mame/drivers/ps2.cpp
@@ -26,6 +26,10 @@ public:
void ps2m30286(machine_config &config);
void ps2386(machine_config &config);
void at_softlists(machine_config &config);
+ void ps2_16_io(address_map &map);
+ void ps2_16_map(address_map &map);
+ void ps2_32_io(address_map &map);
+ void ps2_32_map(address_map &map);
protected:
void machine_start() override;
};
@@ -37,26 +41,26 @@ MACHINE_CONFIG_START(ps2_state::at_softlists)
MCFG_SOFTWARE_LIST_ADD("at_cdrom_list","ibm5170_cdrom")
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( ps2_16_map, AS_PROGRAM, 16, ps2_state )
+ADDRESS_MAP_START(ps2_state::ps2_16_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x09ffff) AM_RAMBANK("bank10")
AM_RANGE(0x0e0000, 0x0fffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0xfe0000, 0xffffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ps2_32_map, AS_PROGRAM, 32, ps2_state )
+ADDRESS_MAP_START(ps2_state::ps2_32_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("bank10")
AM_RANGE(0x000e0000, 0x000fffff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ps2_16_io, AS_IO, 16, ps2_state )
+ADDRESS_MAP_START(ps2_state::ps2_16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", at_mb_device, map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ps2_32_io, AS_IO, 32, ps2_state )
+ADDRESS_MAP_START(ps2_state::ps2_32_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE16("mb", at_mb_device, map, 0xffffffff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ps2sony.cpp b/src/mame/drivers/ps2sony.cpp
index 84ce178c0db..f2846731296 100644
--- a/src/mame/drivers/ps2sony.cpp
+++ b/src/mame/drivers/ps2sony.cpp
@@ -172,6 +172,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void ps2sony(machine_config &config);
+ void mem_map(address_map &map);
private:
virtual void video_start() override;
required_device<cpu_device> m_maincpu;
@@ -187,7 +188,7 @@ uint32_t ps2sony_state::screen_update(screen_device &screen, bitmap_rgb32 &bitma
return 0;
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 32, ps2sony_state)
+ADDRESS_MAP_START(ps2sony_state::mem_map)
AM_RANGE(0x00000000, 0x01ffffff) AM_RAM // 32 MB RAM
AM_RANGE(0x1fc00000, 0x1fdfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/psikyo.cpp b/src/mame/drivers/psikyo.cpp
index bf35034b813..d7f5f61ac69 100644
--- a/src/mame/drivers/psikyo.cpp
+++ b/src/mame/drivers/psikyo.cpp
@@ -229,7 +229,7 @@ READ32_MEMBER(psikyo_state::s1945_mcu_r)
***************************************************************************/
-static ADDRESS_MAP_START( psikyo_map, AS_PROGRAM, 32, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::psikyo_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM (not all used)
AM_RANGE(0x400000, 0x401fff) AM_RAM AM_SHARE("spriteram") // Sprites, buffered by two frames (list buffered + fb buffered)
AM_RANGE(0x600000, 0x601fff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette") // Palette
@@ -270,12 +270,12 @@ WRITE32_MEMBER(psikyo_state::s1945bl_oki_w)
printf("ACCESSING_BITS_0_7 ?? %08x %08x\n", data & 0x000000ff, mem_mask);
}
-static ADDRESS_MAP_START( s1945bl_oki_map, 0, 8, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::s1945bl_oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psikyo_bootleg_map, AS_PROGRAM, 32, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::psikyo_bootleg_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM (not all used)
AM_RANGE(0x200000, 0x200fff) AM_RAM AM_SHARE("boot_spritebuf") // RAM (it copies the spritelist here, the HW probably doesn't have automatic buffering like the originals?
@@ -308,7 +308,7 @@ READ32_MEMBER(psikyo_state::sngkace_input_r)
}
}
-static ADDRESS_MAP_START( sngkace_map, AS_PROGRAM, 32, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::sngkace_map)
AM_IMPORT_FROM(psikyo_map)
AM_RANGE(0xc00000, 0xc0000b) AM_READ(sngkace_input_r)
AM_RANGE(0xc00010, 0xc00013) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x000000ff)
@@ -319,13 +319,13 @@ WRITE8_MEMBER(psikyo_state::sngkace_sound_bankswitch_w)
membank("bank1")->set_entry(data & 0x03);
}
-static ADDRESS_MAP_START( sngkace_sound_map, AS_PROGRAM, 8, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::sngkace_sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM // ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM // RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") // Banked ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sngkace_sound_io_map, AS_IO, 8, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::sngkace_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(sngkace_sound_bankswitch_w)
@@ -349,13 +349,13 @@ READ32_MEMBER(psikyo_state::gunbird_input_r)
}
}
-static ADDRESS_MAP_START( gunbird_map, AS_PROGRAM, 32, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::gunbird_map)
AM_IMPORT_FROM(psikyo_map)
AM_RANGE(0xc00000, 0xc0000b) AM_READ(gunbird_input_r)
AM_RANGE(0xc00010, 0xc00013) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x000000ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s1945jn_map, AS_PROGRAM, 32, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::s1945jn_map)
AM_IMPORT_FROM(psikyo_map)
AM_RANGE(0xc00000, 0xc0000b) AM_READ(gunbird_input_r)
AM_RANGE(0xc00010, 0xc00013) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff0000)
@@ -366,13 +366,13 @@ WRITE8_MEMBER(psikyo_state::gunbird_sound_bankswitch_w)
membank("bank1")->set_entry((data >> 4) & 0x03);
}
-static ADDRESS_MAP_START( gunbird_sound_map, AS_PROGRAM, 8, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::gunbird_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0x81ff) AM_RAM // RAM
AM_RANGE(0x8200, 0xffff) AM_ROMBANK("bank1") // Banked ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gunbird_sound_io_map, AS_IO, 8, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::gunbird_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(gunbird_sound_bankswitch_w)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
@@ -396,14 +396,14 @@ READ32_MEMBER(psikyo_state::s1945_input_r)
}
}
-static ADDRESS_MAP_START( s1945_map, AS_PROGRAM, 32, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::s1945_map)
AM_IMPORT_FROM(psikyo_map)
AM_RANGE(0xc00000, 0xc0000b) AM_READ(s1945_input_r) // input ports
AM_RANGE(0xc00004, 0xc0000b) AM_WRITE(s1945_mcu_w) // protection and tile bank switching
AM_RANGE(0xc00010, 0xc00013) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s1945_sound_io_map, AS_IO, 8, psikyo_state )
+ADDRESS_MAP_START(psikyo_state::s1945_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(gunbird_sound_bankswitch_w)
AM_RANGE(0x02, 0x03) AM_WRITENOP
diff --git a/src/mame/drivers/psikyo4.cpp b/src/mame/drivers/psikyo4.cpp
index c7f9bdbc213..27b1ec05337 100644
--- a/src/mame/drivers/psikyo4.cpp
+++ b/src/mame/drivers/psikyo4.cpp
@@ -321,7 +321,7 @@ WRITE32_MEMBER(psikyo4_state::io_select_w)
logerror("Unk ioselect write %x mask %x\n", data, mem_mask);
}
-static ADDRESS_MAP_START( ps4_map, AS_PROGRAM, 32, psikyo4_state )
+ADDRESS_MAP_START(psikyo4_state::ps4_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM // program ROM (1 meg)
AM_RANGE(0x02000000, 0x021fffff) AM_ROM AM_REGION("maincpu", 0x100000) // data ROM
AM_RANGE(0x03000000, 0x030037ff) AM_RAM AM_SHARE("spriteram")
@@ -343,7 +343,7 @@ static ADDRESS_MAP_START( ps4_map, AS_PROGRAM, 32, psikyo4_state )
AM_RANGE(0x06000000, 0x060fffff) AM_RAM AM_SHARE("ram") // main RAM (1 meg)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ps4_ymf_map, 0, 8, psikyo4_state )
+ADDRESS_MAP_START(psikyo4_state::ps4_ymf_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROMBANK("ymfbank0")
AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("ymfbank1")
AM_RANGE(0x200000, 0x2fffff) AM_ROMBANK("ymfbank2")
diff --git a/src/mame/drivers/psikyosh.cpp b/src/mame/drivers/psikyosh.cpp
index fe7258cd97a..ee7172c0c3f 100644
--- a/src/mame/drivers/psikyosh.cpp
+++ b/src/mame/drivers/psikyosh.cpp
@@ -487,7 +487,7 @@ P1KEY11 29|30 P2KEY11
// ps3v1
-static ADDRESS_MAP_START( ps3v1_map, AS_PROGRAM, 32, psikyosh_state )
+ADDRESS_MAP_START(psikyosh_state::ps3v1_map)
// rom mapping
AM_RANGE(0x00000000, 0x000fffff) AM_ROM // program ROM (1 meg)
AM_RANGE(0x02000000, 0x020fffff) AM_ROM AM_REGION("maincpu", 0x100000) // data ROM
@@ -511,7 +511,7 @@ static ADDRESS_MAP_START( ps3v1_map, AS_PROGRAM, 32, psikyosh_state )
ADDRESS_MAP_END
// ps5, ps5v2
-static ADDRESS_MAP_START( ps5_map, AS_PROGRAM, 32, psikyosh_state )
+ADDRESS_MAP_START(psikyosh_state::ps5_map)
// rom mapping
AM_RANGE(0x00000000, 0x000fffff) AM_ROM // program ROM (1 meg)
// inputs/eeprom
diff --git a/src/mame/drivers/psion.cpp b/src/mame/drivers/psion.cpp
index 8ac66d8c13f..43980cca345 100644
--- a/src/mame/drivers/psion.cpp
+++ b/src/mame/drivers/psion.cpp
@@ -249,7 +249,7 @@ READ8_MEMBER( psion1_state::switchoff_r )
return 0;
}
-static ADDRESS_MAP_START(psion1_mem, AS_PROGRAM, 8, psion1_state)
+ADDRESS_MAP_START(psion1_state::psion1_mem)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(hd63701_int_reg_r, hd63701_int_reg_w)
AM_RANGE(0x0040, 0x00ff) AM_RAM AM_SHARE("sys_register")
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x07fe) AM_DEVREADWRITE("hd44780", hd44780_device, control_read, control_write)
@@ -261,7 +261,7 @@ static ADDRESS_MAP_START(psion1_mem, AS_PROGRAM, 8, psion1_state)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(psioncm_mem, AS_PROGRAM, 8, psion_state)
+ADDRESS_MAP_START(psion_state::psioncm_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x001f) AM_READWRITE(hd63701_int_reg_r, hd63701_int_reg_w)
AM_RANGE(0x0040, 0x00ff) AM_RAM AM_SHARE("sys_register")
@@ -270,7 +270,7 @@ static ADDRESS_MAP_START(psioncm_mem, AS_PROGRAM, 8, psion_state)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(psionla_mem, AS_PROGRAM, 8, psion_state)
+ADDRESS_MAP_START(psion_state::psionla_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x001f) AM_READWRITE(hd63701_int_reg_r, hd63701_int_reg_w)
AM_RANGE(0x0040, 0x00ff) AM_RAM AM_SHARE("sys_register")
@@ -279,7 +279,7 @@ static ADDRESS_MAP_START(psionla_mem, AS_PROGRAM, 8, psion_state)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(psionp350_mem, AS_PROGRAM, 8, psion_state)
+ADDRESS_MAP_START(psion_state::psionp350_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x001f) AM_READWRITE(hd63701_int_reg_r, hd63701_int_reg_w)
AM_RANGE(0x0040, 0x00ff) AM_RAM AM_SHARE("sys_register")
@@ -289,7 +289,7 @@ static ADDRESS_MAP_START(psionp350_mem, AS_PROGRAM, 8, psion_state)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(psionlam_mem, AS_PROGRAM, 8, psion_state)
+ADDRESS_MAP_START(psion_state::psionlam_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x001f) AM_READWRITE(hd63701_int_reg_r, hd63701_int_reg_w)
AM_RANGE(0x0040, 0x00ff) AM_RAM AM_SHARE("sys_register")
@@ -299,7 +299,7 @@ static ADDRESS_MAP_START(psionlam_mem, AS_PROGRAM, 8, psion_state)
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(psionlz_mem, AS_PROGRAM, 8, psion_state)
+ADDRESS_MAP_START(psion_state::psionlz_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x001f) AM_READWRITE(hd63701_int_reg_r, hd63701_int_reg_w)
AM_RANGE(0x0040, 0x00ff) AM_RAM AM_SHARE("sys_register")
diff --git a/src/mame/drivers/psx.cpp b/src/mame/drivers/psx.cpp
index 3620abf3c9e..2e59b135352 100644
--- a/src/mame/drivers/psx.cpp
+++ b/src/mame/drivers/psx.cpp
@@ -69,6 +69,8 @@ public:
void psu(machine_config &config);
void psj(machine_config &config);
+ void psx_map(address_map &map);
+ void subcpu_map(address_map &map);
private:
required_device<psx_parallel_slot_device> m_parallel;
};
@@ -501,11 +503,11 @@ void psx1_state::cd_dma_write( uint32_t *p_n_psxram, uint32_t n_address, int32_t
printf("cd_dma_write?!: addr %x, size %x\n", n_address, n_size);
}
-static ADDRESS_MAP_START( psx_map, AS_PROGRAM, 32, psx1_state )
+ADDRESS_MAP_START(psx1_state::psx_map)
AM_RANGE(0x1f000000, 0x1f07ffff) AM_READWRITE16(parallel_r, parallel_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subcpu_map, AS_PROGRAM, 8, psx1_state )
+ADDRESS_MAP_START(psx1_state::subcpu_map)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/psychic5.cpp b/src/mame/drivers/psychic5.cpp
index ae2d092e7fa..e986b246513 100644
--- a/src/mame/drivers/psychic5.cpp
+++ b/src/mame/drivers/psychic5.cpp
@@ -435,7 +435,7 @@ WRITE8_MEMBER(psychic5_state::bombsa_flipscreen_w)
***************************************************************************/
-static ADDRESS_MAP_START( psychic5_main_map, AS_PROGRAM, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::psychic5_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0xc000, 0xdfff) AM_DEVICE("vrambank", address_map_bank_device, amap8)
@@ -452,7 +452,7 @@ static ADDRESS_MAP_START( psychic5_main_map, AS_PROGRAM, 8, psychic5_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psychic5_vrambank_map, AS_PROGRAM, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::psychic5_vrambank_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(bg_videoram_w) AM_SHARE("bg_videoram")
AM_RANGE(0x1000, 0x1fff) AM_RAM
@@ -473,20 +473,20 @@ static ADDRESS_MAP_START( psychic5_vrambank_map, AS_PROGRAM, 8, psychic5_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psychic5_sound_map, AS_PROGRAM, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::psychic5_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psychic5_soundport_map, AS_IO, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::psychic5_soundport_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x80, 0x81) AM_DEVWRITE("ym2", ym2203_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bombsa_main_map, AS_PROGRAM, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::bombsa_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -505,20 +505,20 @@ static ADDRESS_MAP_START( bombsa_main_map, AS_PROGRAM, 8, psychic5_state )
AM_RANGE(0xe000, 0xffff) AM_DEVICE("vrambank", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bombsa_sound_map, AS_PROGRAM, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::bombsa_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xf000, 0xf000) AM_WRITEONLY // Is this a confirm of some sort?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bombsa_soundport_map, AS_IO, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::bombsa_soundport_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x80, 0x81) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bombsa_vrambank_map, AS_PROGRAM, 8, psychic5_state )
+ADDRESS_MAP_START(psychic5_state::bombsa_vrambank_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM_WRITE(bg_videoram_w) AM_SHARE("bg_videoram")
AM_RANGE(0x2000, 0x2000) AM_READ_PORT("SYSTEM")
diff --git a/src/mame/drivers/pt68k4.cpp b/src/mame/drivers/pt68k4.cpp
index 7f409292bf2..bf2a16cd379 100644
--- a/src/mame/drivers/pt68k4.cpp
+++ b/src/mame/drivers/pt68k4.cpp
@@ -126,6 +126,8 @@ public:
void pt68k2(machine_config &config);
void pt68k4(machine_config &config);
+ void pt68k2_mem(address_map &map);
+ void pt68k4_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -248,7 +250,7 @@ WRITE8_MEMBER(pt68k4_state::fdc_select_w)
}
}
-static ADDRESS_MAP_START(pt68k2_mem, AS_PROGRAM, 16, pt68k4_state)
+ADDRESS_MAP_START(pt68k4_state::pt68k2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("rambase") // 1MB RAM
AM_RANGE(0xf80000, 0xf8ffff) AM_ROM AM_REGION("roms", 0)
@@ -264,7 +266,7 @@ static ADDRESS_MAP_START(pt68k2_mem, AS_PROGRAM, 16, pt68k4_state)
AM_RANGE(0xff0000, 0xff0fff) AM_DEVREADWRITE8(TIMEKEEPER_TAG, timekeeper_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pt68k4_mem, AS_PROGRAM, 16, pt68k4_state)
+ADDRESS_MAP_START(pt68k4_state::pt68k4_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("rambase") // 1MB RAM (OS9 needs more)
AM_RANGE(0xf80000, 0xf8ffff) AM_ROM AM_REGION("roms", 0)
diff --git a/src/mame/drivers/ptcsol.cpp b/src/mame/drivers/ptcsol.cpp
index 02c21e23fd1..d098e0993f7 100644
--- a/src/mame/drivers/ptcsol.cpp
+++ b/src/mame/drivers/ptcsol.cpp
@@ -187,6 +187,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sol20(machine_config &config);
+ void sol20_io(address_map &map);
+ void sol20_mem(address_map &map);
private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
uint8_t m_sol20_fa;
@@ -450,7 +452,7 @@ WRITE8_MEMBER( sol20_state::sol20_fe_w )
m_sol20_fe = data;
}
-static ADDRESS_MAP_START( sol20_mem, AS_PROGRAM, 8, sol20_state)
+ADDRESS_MAP_START(sol20_state::sol20_mem)
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("boot")
AM_RANGE(0x0800, 0xbfff) AM_RAM // optional s100 ram
AM_RANGE(0xc000, 0xc7ff) AM_ROM
@@ -459,7 +461,7 @@ static ADDRESS_MAP_START( sol20_mem, AS_PROGRAM, 8, sol20_state)
AM_RANGE(0xd000, 0xffff) AM_RAM // optional s100 ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sol20_io, AS_IO, 8, sol20_state)
+ADDRESS_MAP_START(sol20_state::sol20_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf8, 0xf8) AM_READWRITE(sol20_f8_r,sol20_f8_w)
diff --git a/src/mame/drivers/pturn.cpp b/src/mame/drivers/pturn.cpp
index 2f7061193e7..b5c5c6bfa6b 100644
--- a/src/mame/drivers/pturn.cpp
+++ b/src/mame/drivers/pturn.cpp
@@ -144,6 +144,8 @@ public:
INTERRUPT_GEN_MEMBER(sub_intgen);
INTERRUPT_GEN_MEMBER(main_intgen);
void pturn(machine_config &config);
+ void main_map(address_map &map);
+ void sub_map(address_map &map);
};
@@ -341,7 +343,7 @@ READ8_MEMBER(pturn_state::custom_r)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pturn_state )
+ADDRESS_MAP_START(pturn_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcfff) AM_WRITENOP AM_READ(custom_r)
@@ -368,7 +370,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pturn_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, pturn_state )
+ADDRESS_MAP_START(pturn_state::sub_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(nmi_sub_enable_w)
diff --git a/src/mame/drivers/puckpkmn.cpp b/src/mame/drivers/puckpkmn.cpp
index d51d2f30787..b6f46d45c0c 100644
--- a/src/mame/drivers/puckpkmn.cpp
+++ b/src/mame/drivers/puckpkmn.cpp
@@ -213,7 +213,7 @@ static INPUT_PORTS_START( jzth )
INPUT_PORTS_END
-static ADDRESS_MAP_START( puckpkmn_map, AS_PROGRAM, 16, md_boot_state )
+ADDRESS_MAP_START(md_boot_state::puckpkmn_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM /* Main 68k Program Roms */
AM_RANGE(0x700010, 0x700011) AM_READ_PORT("P2")
AM_RANGE(0x700012, 0x700013) AM_READ_PORT("P1")
@@ -237,7 +237,7 @@ static ADDRESS_MAP_START( puckpkmn_map, AS_PROGRAM, 16, md_boot_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jzth_map, AS_PROGRAM, 16, md_boot_state )
+ADDRESS_MAP_START(md_boot_state::jzth_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x700010, 0x700011) AM_READ_PORT("P2")
AM_RANGE(0x700012, 0x700013) AM_READ_PORT("P1")
@@ -269,7 +269,7 @@ READ16_MEMBER(md_boot_state::puckpkmna_4b2476_r)
return 0x3400;
}
-static ADDRESS_MAP_START( puckpkmna_map, AS_PROGRAM, 16, md_boot_state )
+ADDRESS_MAP_START(md_boot_state::puckpkmna_map)
AM_IMPORT_FROM( puckpkmn_map )
AM_RANGE(0x4b2476, 0x4b2477) AM_READ(puckpkmna_4b2476_r)
AM_RANGE(0x70001c, 0x70001d) AM_READ(puckpkmna_70001c_r)
diff --git a/src/mame/drivers/pulsar.cpp b/src/mame/drivers/pulsar.cpp
index c684fb9e5dd..064bdd0afa2 100644
--- a/src/mame/drivers/pulsar.cpp
+++ b/src/mame/drivers/pulsar.cpp
@@ -69,6 +69,8 @@ public:
DECLARE_READ8_MEMBER(ppi_pc_r);
void pulsar(machine_config &config);
+ void pulsar_io(address_map &map);
+ void pulsar_mem(address_map &map);
private:
floppy_image_device *m_floppy;
required_device<cpu_device> m_maincpu;
@@ -79,14 +81,14 @@ private:
required_device<msm5832_device> m_rtc;
};
-static ADDRESS_MAP_START(pulsar_mem, AS_PROGRAM, 8, pulsar_state)
+ADDRESS_MAP_START(pulsar_state::pulsar_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x0800, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_READ_BANK("bankr1") AM_WRITE_BANK("bankw1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pulsar_io, AS_IO, 8, pulsar_state)
+ADDRESS_MAP_START(pulsar_state::pulsar_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc0, 0xc3) AM_MIRROR(0x0c) AM_DEVREADWRITE("dart", z80dart_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/punchout.cpp b/src/mame/drivers/punchout.cpp
index 9d30d2a418b..a094bd5ea3d 100644
--- a/src/mame/drivers/punchout.cpp
+++ b/src/mame/drivers/punchout.cpp
@@ -140,7 +140,7 @@ WRITE_LINE_MEMBER(punchout_state::nmi_mask_w)
m_nmi_mask = state;
}
-static ADDRESS_MAP_START( punchout_map, AS_PROGRAM, 8, punchout_state )
+ADDRESS_MAP_START(punchout_state::punchout_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
@@ -154,7 +154,7 @@ static ADDRESS_MAP_START( punchout_map, AS_PROGRAM, 8, punchout_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( armwrest_map, AS_PROGRAM, 8, punchout_state )
+ADDRESS_MAP_START(punchout_state::armwrest_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xd000, 0xd7ff) AM_RAM
@@ -169,7 +169,7 @@ static ADDRESS_MAP_START( armwrest_map, AS_PROGRAM, 8, punchout_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( punchout_io_map, AS_IO, 8, punchout_state )
+ADDRESS_MAP_START(punchout_state::punchout_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
@@ -182,7 +182,7 @@ static ADDRESS_MAP_START( punchout_io_map, AS_IO, 8, punchout_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( punchout_vlm_map, 0, 8, punchout_state )
+ADDRESS_MAP_START(punchout_state::punchout_vlm_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_ROM
ADDRESS_MAP_END
@@ -235,7 +235,7 @@ WRITE8_MEMBER(punchout_state::spunchout_rp5h01_clock_w)
m_rp5h01->test_w(data & 1);
}
-static ADDRESS_MAP_START( spnchout_io_map, AS_IO, 8, punchout_state )
+ADDRESS_MAP_START(punchout_state::spnchout_io_map)
AM_IMPORT_FROM( punchout_io_map )
AM_RANGE(0x05, 0x05) AM_MIRROR(0xf0) AM_WRITE(spunchout_rp5h01_reset_w)
AM_RANGE(0x06, 0x06) AM_MIRROR(0xf0) AM_WRITE(spunchout_rp5h01_clock_w)
@@ -244,7 +244,7 @@ ADDRESS_MAP_END
// 2A03 (sound)
-static ADDRESS_MAP_START( punchout_sound_map, AS_PROGRAM, 8, punchout_state )
+ADDRESS_MAP_START(punchout_state::punchout_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x4016, 0x4016) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x4017, 0x4017) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
diff --git a/src/mame/drivers/pv1000.cpp b/src/mame/drivers/pv1000.cpp
index fb5bdcc7086..83557663c86 100644
--- a/src/mame/drivers/pv1000.cpp
+++ b/src/mame/drivers/pv1000.cpp
@@ -174,17 +174,19 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void pv1000(machine_config &config);
+ void pv1000(address_map &map);
+ void pv1000_io(address_map &map);
};
-static ADDRESS_MAP_START( pv1000, AS_PROGRAM, 8, pv1000_state )
+ADDRESS_MAP_START(pv1000_state::pv1000)
//AM_RANGE(0x0000, 0x7fff) // mapped by the cartslot
AM_RANGE(0xb800, 0xbbff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xbc00, 0xbfff) AM_RAM_WRITE(gfxram_w) AM_REGION("gfxram", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pv1000_io, AS_IO, 8, pv1000_state )
+ADDRESS_MAP_START(pv1000_state::pv1000_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf8, 0xff) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pv2000.cpp b/src/mame/drivers/pv2000.cpp
index 875979575fa..ceec19c2b83 100644
--- a/src/mame/drivers/pv2000.cpp
+++ b/src/mame/drivers/pv2000.cpp
@@ -71,6 +71,8 @@ public:
virtual void machine_reset() override;
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(pv2000_cart);
void pv2000(machine_config &config);
+ void pv2000_io_map(address_map &map);
+ void pv2000_map(address_map &map);
};
@@ -176,7 +178,7 @@ WRITE8_MEMBER( pv2000_state::cass_out )
/* Memory Maps */
-static ADDRESS_MAP_START( pv2000_map, AS_PROGRAM, 8, pv2000_state )
+ADDRESS_MAP_START(pv2000_state::pv2000_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE("tms9928a", tms9928a_device, vram_read, vram_write)
@@ -188,7 +190,7 @@ static ADDRESS_MAP_START( pv2000_map, AS_PROGRAM, 8, pv2000_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pv2000_io_map, AS_IO, 8, pv2000_state )
+ADDRESS_MAP_START(pv2000_state::pv2000_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
//theres also printer and tape I/O (TODO)
diff --git a/src/mame/drivers/pv9234.cpp b/src/mame/drivers/pv9234.cpp
index 4ec3640008d..dbd03d117c1 100644
--- a/src/mame/drivers/pv9234.cpp
+++ b/src/mame/drivers/pv9234.cpp
@@ -42,6 +42,7 @@ public:
uint32_t screen_update_pv9234(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void pv9234(machine_config &config);
+ void pv9234_map(address_map &map);
protected:
virtual void machine_reset() override;
virtual void video_start() override;
@@ -104,7 +105,7 @@ WRITE32_MEMBER( pv9234_state::debug2_w )
logerror("debug2=%02x\n",data); // ignore the huge amount of zeroes here
}
-static ADDRESS_MAP_START(pv9234_map, AS_PROGRAM, 32, pv9234_state)
+ADDRESS_MAP_START(pv9234_state::pv9234_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_REGION("maincpu",0) //FLASH ROM!
// AM_RANGE(0x00000000, 0x00000033) AM_WRITE something
// AM_RANGE(0x00000044, 0x00000047) AM_WRITE something
diff --git a/src/mame/drivers/pve500.cpp b/src/mame/drivers/pve500.cpp
index 72ec514792a..77aff479374 100644
--- a/src/mame/drivers/pve500.cpp
+++ b/src/mame/drivers/pve500.cpp
@@ -87,6 +87,10 @@ public:
DECLARE_READ8_MEMBER(eeprom_r);
DECLARE_DRIVER_INIT(pve500);
void pve500(machine_config &config);
+ void maincpu_io(address_map &map);
+ void maincpu_prg(address_map &map);
+ void subcpu_io(address_map &map);
+ void subcpu_prg(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -116,21 +120,21 @@ static const z80_daisy_config maincpu_daisy_chain[] =
};
-static ADDRESS_MAP_START(maincpu_io, AS_IO, 8, pve500_state)
+ADDRESS_MAP_START(pve500_state::maincpu_io)
AM_RANGE(0x00, 0x03) AM_MIRROR(0xff00) AM_DEVREADWRITE("external_sio", z80sio0_device, cd_ba_r, cd_ba_w)
AM_RANGE(0x08, 0x0B) AM_MIRROR(0xff00) AM_DEVREADWRITE("external_ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(maincpu_prg, AS_PROGRAM, 8, pve500_state)
+ADDRESS_MAP_START(pve500_state::maincpu_prg)
AM_RANGE(0x0000, 0xbfff) AM_ROM // ICB7: 48kbytes EPROM
AM_RANGE(0xc000, 0xdfff) AM_RAM // ICD6: 8kbytes of RAM
AM_RANGE(0xe000, 0xe7ff) AM_MIRROR(0x1800) AM_DEVREADWRITE("mb8421", mb8421_device, left_r, left_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(subcpu_io, AS_IO, 8, pve500_state)
+ADDRESS_MAP_START(pve500_state::subcpu_io)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(subcpu_prg, AS_PROGRAM, 8, pve500_state)
+ADDRESS_MAP_START(pve500_state::subcpu_prg)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ICG5: 32kbytes EPROM
AM_RANGE(0x8000, 0x8007) AM_MIRROR(0x3ff8) AM_DEVREADWRITE("cxdio", cxd1095_device, read, write)
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x3800) AM_DEVREADWRITE("mb8421", mb8421_device, right_r, right_w)
diff --git a/src/mame/drivers/pwrview.cpp b/src/mame/drivers/pwrview.cpp
index c4a334f7f15..2599066f130 100644
--- a/src/mame/drivers/pwrview.cpp
+++ b/src/mame/drivers/pwrview.cpp
@@ -56,6 +56,10 @@ public:
MC6845_UPDATE_ROW(update_row);
void pwrview(machine_config &config);
+ void bios_bank(address_map &map);
+ void pwrview_fetch_map(address_map &map);
+ void pwrview_io(address_map &map);
+ void pwrview_map(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
@@ -333,7 +337,7 @@ READ8_MEMBER(pwrview_state::pitclock_r)
return 0;
}
-static ADDRESS_MAP_START(bios_bank, 0, 16, pwrview_state)
+ADDRESS_MAP_START(pwrview_state::bios_bank)
AM_RANGE(0x00000, 0x07fff) AM_ROM AM_REGION("bios", 0)
AM_RANGE(0x00000, 0x07fff) AM_WRITE(nmimem_w)
@@ -355,19 +359,19 @@ static ADDRESS_MAP_START(bios_bank, 0, 16, pwrview_state)
AM_RANGE(0x1c000, 0x1ffff) AM_ROM AM_REGION("bios", 0x4000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pwrview_map, AS_PROGRAM, 16, pwrview_state)
+ADDRESS_MAP_START(pwrview_state::pwrview_map)
AM_RANGE(0x00000, 0xf7fff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x00000, 0x003ff) AM_READWRITE(bank0_r, bank0_w)
AM_RANGE(0xf8000, 0xfffff) AM_DEVICE("bios_bank", address_map_bank_device, amap16)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pwrview_fetch_map, AS_OPCODES, 16, pwrview_state)
+ADDRESS_MAP_START(pwrview_state::pwrview_fetch_map)
AM_RANGE(0x00000, 0xf7fff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x00000, 0x003ff) AM_READ(bank0_r)
AM_RANGE(0xf8000, 0xfffff) AM_READ(fbios_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pwrview_io, AS_IO, 16, pwrview_state)
+ADDRESS_MAP_START(pwrview_state::pwrview_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(nmiio_r, nmiio_w)
AM_RANGE(0xc000, 0xc001) AM_READWRITE8(unk1_r, unk1_w, 0xff00)
@@ -396,7 +400,7 @@ SLOT_INTERFACE_END
MACHINE_CONFIG_START(pwrview_state::pwrview)
MCFG_CPU_ADD("maincpu", I80186, XTAL(16'000'000))
MCFG_CPU_PROGRAM_MAP(pwrview_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(pwrview_fetch_map)
+ MCFG_CPU_OPCODES_MAP(pwrview_fetch_map)
MCFG_CPU_IO_MAP(pwrview_io)
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/drivers/px4.cpp b/src/mame/drivers/px4.cpp
index ca336924e97..fd5e6ba3870 100644
--- a/src/mame/drivers/px4.cpp
+++ b/src/mame/drivers/px4.cpp
@@ -134,6 +134,8 @@ public:
DECLARE_WRITE_LINE_MEMBER( centronics_perror_w ) { m_centronics_perror = state; }
void px4(machine_config &config);
+ void px4_io(address_map &map);
+ void px4_mem(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -268,6 +270,7 @@ public:
DECLARE_READ8_MEMBER( ramdisk_control_r );
void px4p(machine_config &config);
+ void px4p_io(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -1256,12 +1259,12 @@ void px4p_state::machine_start()
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( px4_mem, AS_PROGRAM, 8, px4_state )
+ADDRESS_MAP_START(px4_state::px4_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( px4_io, AS_IO, 8, px4_state )
+ADDRESS_MAP_START(px4_state::px4_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// gapnit, 0x00-0x07
@@ -1290,7 +1293,7 @@ static ADDRESS_MAP_START( px4_io, AS_IO, 8, px4_state )
AM_RANGE(0x1a, 0x1f) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( px4p_io, AS_IO, 8, px4p_state )
+ADDRESS_MAP_START(px4p_state::px4p_io)
AM_IMPORT_FROM(px4_io)
AM_RANGE(0x90, 0x92) AM_WRITE(ramdisk_address_w )
AM_RANGE(0x93, 0x93) AM_READWRITE(ramdisk_data_r, ramdisk_data_w )
diff --git a/src/mame/drivers/px8.cpp b/src/mame/drivers/px8.cpp
index 8cc7cf43a75..30163e8df6a 100644
--- a/src/mame/drivers/px8.cpp
+++ b/src/mame/drivers/px8.cpp
@@ -511,7 +511,7 @@ WRITE8_MEMBER( px8_state::ksc_w )
ADDRESS_MAP( px8_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( px8_mem, AS_PROGRAM, 8, px8_state )
+ADDRESS_MAP_START(px8_state::px8_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAMBANK("bank0")
AM_RANGE(0x8000, 0xffff) AM_RAMBANK("bank1")
@@ -521,7 +521,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( px8_io )
-------------------------------------------------*/
-static ADDRESS_MAP_START( px8_io, AS_IO, 8, px8_state )
+ADDRESS_MAP_START(px8_state::px8_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x07) AM_READWRITE(gah40m_r, gah40m_w)
@@ -535,7 +535,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( px8_slave_mem )
-------------------------------------------------*/
-static ADDRESS_MAP_START( px8_slave_mem, AS_PROGRAM, 8, px8_state )
+ADDRESS_MAP_START(px8_state::px8_slave_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0020, 0x0023) AM_READWRITE(gah40s_r, gah40s_w)
// AM_RANGE(0x0024, 0x0027) AM_DEVREADWRITE_LEGACY(SED1320_TAG, )
@@ -549,7 +549,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( px8_slave_io )
-------------------------------------------------*/
-static ADDRESS_MAP_START( px8_slave_io, AS_IO, 8, px8_state )
+ADDRESS_MAP_START(px8_state::px8_slave_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(M6801_PORT1, M6801_PORT1)
AM_RANGE(M6801_PORT2, M6801_PORT2)
diff --git a/src/mame/drivers/pyl601.cpp b/src/mame/drivers/pyl601.cpp
index 72c962cd93c..5e2e4146531 100644
--- a/src/mame/drivers/pyl601.cpp
+++ b/src/mame/drivers/pyl601.cpp
@@ -98,6 +98,7 @@ public:
required_device<palette_device> m_palette;
void pyl601(machine_config &config);
void pyl601a(machine_config &config);
+ void pyl601_mem(address_map &map);
};
@@ -253,7 +254,7 @@ READ8_MEMBER(pyl601_state::floppy_r)
return m_floppy_ctrl;
}
-static ADDRESS_MAP_START(pyl601_mem, AS_PROGRAM, 8, pyl601_state )
+ADDRESS_MAP_START(pyl601_state::pyl601_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xbfff ) AM_RAMBANK("bank1")
AM_RANGE( 0xc000, 0xdfff ) AM_RAMBANK("bank2")
diff --git a/src/mame/drivers/pyson.cpp b/src/mame/drivers/pyson.cpp
index 04ec583b22a..14838183ab1 100644
--- a/src/mame/drivers/pyson.cpp
+++ b/src/mame/drivers/pyson.cpp
@@ -167,6 +167,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void pyson(machine_config &config);
+ void ps2_map(address_map &map);
protected:
// devices
@@ -186,7 +187,7 @@ uint32_t pyson_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
return 0;
}
-static ADDRESS_MAP_START(ps2_map, AS_PROGRAM, 32, pyson_state)
+ADDRESS_MAP_START(pyson_state::ps2_map)
AM_RANGE(0x00000000, 0x01ffffff) AM_RAM // 32 MB RAM in consumer PS2s, do these have more?
AM_RANGE(0x1fc00000, 0x1fdfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/pzletime.cpp b/src/mame/drivers/pzletime.cpp
index 227ae0071be..bb35ec083b4 100644
--- a/src/mame/drivers/pzletime.cpp
+++ b/src/mame/drivers/pzletime.cpp
@@ -77,6 +77,7 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void pzletime(machine_config &config);
+ void pzletime_map(address_map &map);
};
@@ -232,7 +233,7 @@ CUSTOM_INPUT_MEMBER(pzletime_state::ticket_status_r)
return (m_ticket && !(m_screen->frame_number() % 128));
}
-static ADDRESS_MAP_START( pzletime_map, AS_PROGRAM, 16, pzletime_state )
+ADDRESS_MAP_START(pzletime_state::pzletime_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x700000, 0x700005) AM_RAM_WRITE(video_regs_w) AM_SHARE("video_regs")
AM_RANGE(0x800000, 0x800001) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/qdrmfgp.cpp b/src/mame/drivers/qdrmfgp.cpp
index a4c248fc56c..6c3c29a22be 100644
--- a/src/mame/drivers/qdrmfgp.cpp
+++ b/src/mame/drivers/qdrmfgp.cpp
@@ -301,7 +301,7 @@ WRITE_LINE_MEMBER(qdrmfgp_state::gp2_ide_interrupt)
*
*************************************/
-static ADDRESS_MAP_START( qdrmfgp_map, AS_PROGRAM, 16, qdrmfgp_state )
+ADDRESS_MAP_START(qdrmfgp_state::qdrmfgp_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("workram") /* work ram */
AM_RANGE(0x180000, 0x183fff) AM_RAM AM_SHARE("nvram") /* backup ram */
@@ -324,7 +324,7 @@ static ADDRESS_MAP_START( qdrmfgp_map, AS_PROGRAM, 16, qdrmfgp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qdrmfgp2_map, AS_PROGRAM, 16, qdrmfgp_state )
+ADDRESS_MAP_START(qdrmfgp_state::qdrmfgp2_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x110fff) AM_RAM AM_SHARE("workram") /* work ram */
AM_RANGE(0x180000, 0x183fff) AM_RAM AM_SHARE("nvram") /* backup ram */
@@ -351,7 +351,7 @@ static ADDRESS_MAP_START( qdrmfgp2_map, AS_PROGRAM, 16, qdrmfgp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qdrmfgp_k054539_map, 0, 8, qdrmfgp_state )
+ADDRESS_MAP_START(qdrmfgp_state::qdrmfgp_k054539_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_REGION("k054539", 0)
AM_RANGE(0x100000, 0x45ffff) AM_RAM AM_SHARE("sndram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/qix.cpp b/src/mame/drivers/qix.cpp
index ae4705a60e2..b1e78db4e76 100644
--- a/src/mame/drivers/qix.cpp
+++ b/src/mame/drivers/qix.cpp
@@ -245,7 +245,7 @@ Interrupts:
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::main_map)
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8400, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_READNOP /* 6850 ACIA */
@@ -259,7 +259,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, qix_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kram3_main_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::kram3_main_map)
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8400, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_READNOP /* 6850 ACIA */
@@ -274,7 +274,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( zoo_main_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::zoo_main_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x0400, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0bff) AM_READNOP /* ACIA */
diff --git a/src/mame/drivers/ql.cpp b/src/mame/drivers/ql.cpp
index c4a693822a0..707afb7d409 100644
--- a/src/mame/drivers/ql.cpp
+++ b/src/mame/drivers/ql.cpp
@@ -197,6 +197,8 @@ public:
void ql_ntsc(machine_config &config);
void opd(machine_config &config);
void ql(machine_config &config);
+ void ipc_io(address_map &map);
+ void ql_mem(address_map &map);
};
@@ -494,7 +496,7 @@ READ8_MEMBER( ql_state::ipc_bus_r )
// ADDRESS_MAP( ql_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( ql_mem, AS_PROGRAM, 8, ql_state )
+ADDRESS_MAP_START(ql_state::ql_mem)
AM_RANGE(0x000000, 0x0fffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -503,7 +505,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( ipc_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( ipc_io, AS_IO, 8, ql_state )
+ADDRESS_MAP_START(ql_state::ipc_io)
AM_RANGE(0x00, 0x7f) AM_WRITE(ipc_w)
AM_RANGE(0x27, 0x28) AM_READNOP // IPC reads these to set P0 (bus) to Hi-Z mode
ADDRESS_MAP_END
diff --git a/src/mame/drivers/qtsbc.cpp b/src/mame/drivers/qtsbc.cpp
index 07ce68c5dfa..21453953e2b 100644
--- a/src/mame/drivers/qtsbc.cpp
+++ b/src/mame/drivers/qtsbc.cpp
@@ -53,6 +53,8 @@ public:
DECLARE_READ8_MEMBER( qtsbc_43_r );
void qtsbc(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -65,12 +67,12 @@ READ8_MEMBER( qtsbc_state::qtsbc_43_r )
return 0; // this controls where the new ram program gets built at. 0 = 0xE000.
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, qtsbc_state )
+ADDRESS_MAP_START(qtsbc_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("ram") AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, qtsbc_state )
+ADDRESS_MAP_START(qtsbc_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pit", pit8253_device, read, write)
diff --git a/src/mame/drivers/quakeat.cpp b/src/mame/drivers/quakeat.cpp
index eba72a4008c..b59b01480a5 100644
--- a/src/mame/drivers/quakeat.cpp
+++ b/src/mame/drivers/quakeat.cpp
@@ -77,6 +77,8 @@ public:
virtual void video_start() override;
uint32_t screen_update_quake(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void quake(machine_config &config);
+ void quake_io(address_map &map);
+ void quake_map(address_map &map);
};
@@ -89,11 +91,11 @@ uint32_t quakeat_state::screen_update_quake(screen_device &screen, bitmap_ind16
return 0;
}
-static ADDRESS_MAP_START( quake_map, AS_PROGRAM, 32, quakeat_state )
+ADDRESS_MAP_START(quakeat_state::quake_map)
AM_RANGE(0x00000000, 0x0000ffff) AM_ROM AM_REGION("pc_bios", 0) /* BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quake_io, AS_IO, 32, quakeat_state )
+ADDRESS_MAP_START(quakeat_state::quake_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00eb) AM_NOP
// AM_RANGE(0x01f0, 0x01f7) AM_DEVREADWRITE16("ide", ide_controller_device, read_cs0, write_cs0, 0xffffffff)
diff --git a/src/mame/drivers/quantum.cpp b/src/mame/drivers/quantum.cpp
index a0171cc0132..cbad8357780 100644
--- a/src/mame/drivers/quantum.cpp
+++ b/src/mame/drivers/quantum.cpp
@@ -75,6 +75,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<avg_quantum_device> m_avg;
void quantum(machine_config &config);
+ void main_map(address_map &map);
};
@@ -141,7 +142,7 @@ WRITE16_MEMBER(quantum_state::led_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, quantum_state )
+ADDRESS_MAP_START(quantum_state::main_map)
AM_RANGE(0x000000, 0x013fff) AM_ROM
AM_RANGE(0x018000, 0x01cfff) AM_RAM
AM_RANGE(0x800000, 0x801fff) AM_RAM AM_SHARE("vectorram")
diff --git a/src/mame/drivers/quasar.cpp b/src/mame/drivers/quasar.cpp
index d05c46c57a1..11d091150a7 100644
--- a/src/mame/drivers/quasar.cpp
+++ b/src/mame/drivers/quasar.cpp
@@ -110,7 +110,7 @@ READ_LINE_MEMBER(quasar_state::audio_t1_r)
// memory map taken from the manual
-static ADDRESS_MAP_START( quasar, AS_PROGRAM, 8, quasar_state )
+ADDRESS_MAP_START(quasar_state::quasar)
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_READ(cvs_bullet_ram_or_palette_r) AM_WRITE(quasar_bullet_w) AM_SHARE("bullet_ram")
AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_READWRITE(cvs_s2636_0_or_character_ram_r, cvs_s2636_0_or_character_ram_w)
@@ -123,12 +123,12 @@ static ADDRESS_MAP_START( quasar, AS_PROGRAM, 8, quasar_state )
AM_RANGE(0x6000, 0x73ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quasar_io, AS_IO, 8, quasar_state )
+ADDRESS_MAP_START(quasar_state::quasar_io)
AM_RANGE(0x00, 0x03) AM_READWRITE(quasar_IO_r, video_page_select_w)
AM_RANGE(0x08, 0x0b) AM_WRITE(io_page_select_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quasar_data, AS_DATA, 8, quasar_state )
+ADDRESS_MAP_START(quasar_state::quasar_data)
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READ(cvs_collision_r) AM_WRITENOP
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(cvs_collision_clear, quasar_sh_command_w)
ADDRESS_MAP_END
@@ -139,11 +139,11 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, quasar_state )
+ADDRESS_MAP_START(quasar_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, quasar_state )
+ADDRESS_MAP_START(quasar_state::sound_portmap)
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0x80) AM_READ(quasar_sh_command_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/queen.cpp b/src/mame/drivers/queen.cpp
index b8033634a07..92ce9bab749 100644
--- a/src/mame/drivers/queen.cpp
+++ b/src/mame/drivers/queen.cpp
@@ -55,6 +55,8 @@ public:
virtual void machine_reset() override;
void intel82439tx_init();
void queen(machine_config &config);
+ void queen_io(address_map &map);
+ void queen_map(address_map &map);
};
@@ -231,7 +233,7 @@ WRITE32_MEMBER(queen_state::bios_ram_w)
}
}
-static ADDRESS_MAP_START( queen_map, AS_PROGRAM, 32, queen_state )
+ADDRESS_MAP_START(queen_state::queen_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000e0000, 0x000effff) AM_ROMBANK("bios_ext") AM_WRITE(bios_ext_ram_w)
@@ -240,7 +242,7 @@ static ADDRESS_MAP_START( queen_map, AS_PROGRAM, 32, queen_state )
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( queen_io, AS_IO, 32, queen_state )
+ADDRESS_MAP_START(queen_state::queen_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
diff --git a/src/mame/drivers/quickpick5.cpp b/src/mame/drivers/quickpick5.cpp
index 94d5c0ffb09..17c762e6fa5 100644
--- a/src/mame/drivers/quickpick5.cpp
+++ b/src/mame/drivers/quickpick5.cpp
@@ -80,6 +80,7 @@ public:
DECLARE_WRITE8_MEMBER(vram_w);
void quickpick5(machine_config &config);
+ void quickpick5_main(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -263,7 +264,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(quickpick5_state::scanline)
}
}
-static ADDRESS_MAP_START( quickpick5_main, AS_PROGRAM, 8, quickpick5_state )
+ADDRESS_MAP_START(quickpick5_state::quickpick5_main)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdbff) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/quizdna.cpp b/src/mame/drivers/quizdna.cpp
index 0081aa00b48..deb80a0df0c 100644
--- a/src/mame/drivers/quizdna.cpp
+++ b/src/mame/drivers/quizdna.cpp
@@ -33,7 +33,7 @@ WRITE8_MEMBER(quizdna_state::gekiretu_rombank_w)
/****************************************************************************/
-static ADDRESS_MAP_START( quizdna_map, AS_PROGRAM, 8, quizdna_state )
+ADDRESS_MAP_START(quizdna_state::quizdna_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0x8000, 0x9fff) AM_WRITE(fg_ram_w)
@@ -44,7 +44,7 @@ static ADDRESS_MAP_START( quizdna_map, AS_PROGRAM, 8, quizdna_state )
AM_RANGE(0xf000, 0xffff) AM_RAM_WRITE(paletteram_xBGR_RRRR_GGGG_BBBB_w) AM_SHARE("paletteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gekiretu_map, AS_PROGRAM, 8, quizdna_state )
+ADDRESS_MAP_START(quizdna_state::gekiretu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0x8000, 0x9fff) AM_WRITE(fg_ram_w)
@@ -55,7 +55,7 @@ static ADDRESS_MAP_START( gekiretu_map, AS_PROGRAM, 8, quizdna_state )
AM_RANGE(0xf200, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quizdna_io_map, AS_IO, 8, quizdna_state )
+ADDRESS_MAP_START(quizdna_state::quizdna_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x03) AM_WRITE(bg_xscroll_w)
AM_RANGE(0x04, 0x04) AM_WRITE(bg_yscroll_w)
@@ -70,7 +70,7 @@ static ADDRESS_MAP_START( quizdna_io_map, AS_IO, 8, quizdna_state )
AM_RANGE(0xf0, 0xf0) AM_DEVREADWRITE("oki", okim6295_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gakupara_io_map, AS_IO, 8, quizdna_state )
+ADDRESS_MAP_START(quizdna_state::gakupara_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(bg_xscroll_w)
AM_RANGE(0x02, 0x02) AM_WRITE(bg_yscroll_w)
@@ -85,7 +85,7 @@ static ADDRESS_MAP_START( gakupara_io_map, AS_IO, 8, quizdna_state )
AM_RANGE(0xf0, 0xf0) AM_DEVREADWRITE("oki", okim6295_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gekiretu_io_map, AS_IO, 8, quizdna_state )
+ADDRESS_MAP_START(quizdna_state::gekiretu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x03) AM_WRITE(bg_xscroll_w)
AM_RANGE(0x04, 0x04) AM_WRITE(bg_yscroll_w)
diff --git a/src/mame/drivers/quizo.cpp b/src/mame/drivers/quizo.cpp
index 90d6835b66c..07abf04e9d9 100644
--- a/src/mame/drivers/quizo.cpp
+++ b/src/mame/drivers/quizo.cpp
@@ -54,6 +54,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void quizo(machine_config &config);
+ void memmap(address_map &map);
+ void portmap(address_map &map);
};
@@ -143,7 +145,7 @@ WRITE8_MEMBER(quizo_state::port60_w)
membank("bank1")->set_entry(rombankLookup[data]);
}
-static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, quizo_state )
+ADDRESS_MAP_START(quizo_state::memmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
@@ -151,7 +153,7 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, quizo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( portmap, AS_IO, 8, quizo_state )
+ADDRESS_MAP_START(quizo_state::portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x10, 0x10) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/quizpani.cpp b/src/mame/drivers/quizpani.cpp
index 4948a3b9de0..074c2bf1256 100644
--- a/src/mame/drivers/quizpani.cpp
+++ b/src/mame/drivers/quizpani.cpp
@@ -56,7 +56,7 @@ Stephh's notes (based on the games M68000 code and some tests) :
#include "speaker.h"
-static ADDRESS_MAP_START( quizpani_map, AS_PROGRAM, 16, quizpani_state )
+ADDRESS_MAP_START(quizpani_state::quizpani_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P1_P2")
diff --git a/src/mame/drivers/quizpun2.cpp b/src/mame/drivers/quizpun2.cpp
index 5591ba03765..34a9050d294 100644
--- a/src/mame/drivers/quizpun2.cpp
+++ b/src/mame/drivers/quizpun2.cpp
@@ -165,6 +165,11 @@ public:
bool m_mcu_repeat;
void quizpun(machine_config &config);
void quizpun2(machine_config &config);
+ void quizpun2_cop_map(address_map &map);
+ void quizpun2_io_map(address_map &map);
+ void quizpun2_map(address_map &map);
+ void quizpun2_sound_io_map(address_map &map);
+ void quizpun2_sound_map(address_map &map);
};
/***************************************************************************
@@ -318,7 +323,7 @@ WRITE8_MEMBER(quizpun2_state::soundlatch_w)
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( quizpun2_map, AS_PROGRAM, 8, quizpun2_state )
+ADDRESS_MAP_START(quizpun2_state::quizpun2_map)
AM_RANGE( 0x0000, 0x7fff ) AM_ROM
AM_RANGE( 0x8000, 0x9fff ) AM_ROMBANK("bank1")
@@ -329,7 +334,7 @@ static ADDRESS_MAP_START( quizpun2_map, AS_PROGRAM, 8, quizpun2_state )
AM_RANGE( 0xe000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quizpun2_io_map, AS_IO, 8, quizpun2_state )
+ADDRESS_MAP_START(quizpun2_state::quizpun2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x40, 0x40 ) AM_WRITE(irq_ack)
AM_RANGE( 0x50, 0x50 ) AM_WRITE(soundlatch_w)
@@ -341,7 +346,7 @@ static ADDRESS_MAP_START( quizpun2_io_map, AS_IO, 8, quizpun2_state )
AM_RANGE( 0xe0, 0xe0 ) AM_READWRITE(quizpun_protection_r, quizpun_protection_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quizpun2_cop_map, AS_PROGRAM, 8, quizpun2_state )
+ADDRESS_MAP_START(quizpun2_state::quizpun2_cop_map)
AM_RANGE( 0x000, 0x3ff ) AM_ROM AM_REGION("cop", 0)
ADDRESS_MAP_END
@@ -466,12 +471,12 @@ WRITE8_MEMBER(quizpun2_state::quizpun_68705_port_c_w)
Memory Maps - Sound CPU
***************************************************************************/
-static ADDRESS_MAP_START( quizpun2_sound_map, AS_PROGRAM, 8, quizpun2_state )
+ADDRESS_MAP_START(quizpun2_state::quizpun2_sound_map)
AM_RANGE( 0x0000, 0xf7ff ) AM_ROM
AM_RANGE( 0xf800, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quizpun2_sound_io_map, AS_IO, 8, quizpun2_state )
+ADDRESS_MAP_START(quizpun2_state::quizpun2_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_WRITENOP // IRQ end
AM_RANGE( 0x20, 0x20 ) AM_WRITENOP // NMI end
diff --git a/src/mame/drivers/quizshow.cpp b/src/mame/drivers/quizshow.cpp
index 69aa47d2701..5bc38a8f921 100644
--- a/src/mame/drivers/quizshow.cpp
+++ b/src/mame/drivers/quizshow.cpp
@@ -80,6 +80,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_DEVICE_CALLBACK_MEMBER(clock_timer_cb);
void quizshow(machine_config &config);
+ void mem_map(address_map &map);
};
@@ -227,7 +228,7 @@ WRITE8_MEMBER(quizshow_state::main_ram_w)
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, quizshow_state )
+ADDRESS_MAP_START(quizshow_state::mem_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x1802, 0x1802) AM_WRITE(audio_w)
diff --git a/src/mame/drivers/qvt103.cpp b/src/mame/drivers/qvt103.cpp
index 3472a599a7c..30368f877fc 100644
--- a/src/mame/drivers/qvt103.cpp
+++ b/src/mame/drivers/qvt103.cpp
@@ -27,6 +27,8 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void qvt103(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_region_ptr<u8> m_p_chargen;
@@ -37,7 +39,7 @@ u32 qvt103_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, con
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, qvt103_state )
+ADDRESS_MAP_START(qvt103_state::mem_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x6000, 0x6001) AM_DEVREADWRITE("kbdmcu", i8741_device, upi41_master_r, upi41_master_w)
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -45,7 +47,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, qvt103_state )
AM_RANGE(0xc000, 0xffff) AM_RAM // not entirely contiguous?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, qvt103_state )
+ADDRESS_MAP_START(qvt103_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x14, 0x17) AM_DEVREADWRITE("dart", z80dart_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
diff --git a/src/mame/drivers/qvt201.cpp b/src/mame/drivers/qvt201.cpp
index ecd3a1a27d4..47e20088cfa 100644
--- a/src/mame/drivers/qvt201.cpp
+++ b/src/mame/drivers/qvt201.cpp
@@ -28,6 +28,7 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void qvt201(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
@@ -42,7 +43,7 @@ u32 qvt201_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, con
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, qvt201_state )
+ADDRESS_MAP_START(qvt201_state::mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8800, 0x8fff) AM_RAM AM_SHARE("nvram")
//AM_RANGE(0x9000, 0x9007) AM_DEVREADWRITE("crtc", scn2672_device, read, write)
diff --git a/src/mame/drivers/qvt6800.cpp b/src/mame/drivers/qvt6800.cpp
index be52c759d3c..6d6b3618dad 100644
--- a/src/mame/drivers/qvt6800.cpp
+++ b/src/mame/drivers/qvt6800.cpp
@@ -30,6 +30,8 @@ public:
void qvt190(machine_config &config);
void qvt102(machine_config &config);
+ void qvt102_mem_map(address_map &map);
+ void qvt190_mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_region_ptr<u8> m_p_chargen;
@@ -40,7 +42,7 @@ MC6845_UPDATE_ROW(qvt6800_state::update_row)
{
}
-static ADDRESS_MAP_START( qvt102_mem_map, AS_PROGRAM, 8, qvt6800_state )
+ADDRESS_MAP_START(qvt6800_state::qvt102_mem_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2800, 0x2803) AM_DEVWRITE("ctc", z80ctc_device, write)
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("videoram")
@@ -50,7 +52,7 @@ static ADDRESS_MAP_START( qvt102_mem_map, AS_PROGRAM, 8, qvt6800_state )
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qvt190_mem_map, AS_PROGRAM, 8, qvt6800_state )
+ADDRESS_MAP_START(qvt6800_state::qvt190_mem_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2500, 0x2501) AM_DEVREADWRITE("acia1", acia6850_device, read, write)
AM_RANGE(0x2600, 0x2601) AM_DEVREADWRITE("acia2", acia6850_device, read, write)
diff --git a/src/mame/drivers/qx10.cpp b/src/mame/drivers/qx10.cpp
index b35966c1bc0..2b961de887c 100644
--- a/src/mame/drivers/qx10.cpp
+++ b/src/mame/drivers/qx10.cpp
@@ -157,6 +157,9 @@ public:
UPD7220_DISPLAY_PIXELS_MEMBER( hgdc_display_pixels );
UPD7220_DRAW_TEXT_LINE_MEMBER( hgdc_draw_text );
void qx10(machine_config &config);
+ void qx10_io(address_map &map);
+ void qx10_mem(address_map &map);
+ void upd7220_map(address_map &map);
};
UPD7220_DISPLAY_PIXELS_MEMBER( qx10_state::hgdc_display_pixels )
@@ -487,14 +490,14 @@ WRITE8_MEMBER( qx10_state::vram_bank_w )
}
}
-static ADDRESS_MAP_START(qx10_mem, AS_PROGRAM, 8, qx10_state)
+ADDRESS_MAP_START(qx10_state::qx10_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x8000, 0xdfff ) AM_RAMBANK("bank2")
AM_RANGE( 0xe000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qx10_io , AS_IO, 8, qx10_state)
+ADDRESS_MAP_START(qx10_state::qx10_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pit8253_1", pit8253_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("pit8253_2", pit8253_device, read, write)
@@ -658,7 +661,7 @@ WRITE16_MEMBER( qx10_state::vram_w )
COMBINE_DATA(&m_video_ram[offset + (0x20000 * bank)]);
}
-static ADDRESS_MAP_START( upd7220_map, 0, 16, qx10_state )
+ADDRESS_MAP_START(qx10_state::upd7220_map)
AM_RANGE(0x00000, 0x3ffff) AM_READWRITE(vram_r,vram_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/r2dtank.cpp b/src/mame/drivers/r2dtank.cpp
index 33cf11d72ab..16e2f4265d5 100644
--- a/src/mame/drivers/r2dtank.cpp
+++ b/src/mame/drivers/r2dtank.cpp
@@ -93,6 +93,8 @@ public:
required_device<generic_latch_8_device> m_soundlatch;
required_device<generic_latch_8_device> m_soundlatch2;
void r2dtank(machine_config &config);
+ void r2dtank_audio_map(address_map &map);
+ void r2dtank_main_map(address_map &map);
};
@@ -324,7 +326,7 @@ WRITE8_MEMBER(r2dtank_state::pia_comp_w)
}
-static ADDRESS_MAP_START( r2dtank_main_map, AS_PROGRAM, 8, r2dtank_state )
+ADDRESS_MAP_START(r2dtank_state::r2dtank_main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x2000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("colorram")
@@ -338,7 +340,7 @@ static ADDRESS_MAP_START( r2dtank_main_map, AS_PROGRAM, 8, r2dtank_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( r2dtank_audio_map, AS_PROGRAM, 8, r2dtank_state )
+ADDRESS_MAP_START(r2dtank_state::r2dtank_audio_map)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0xd000, 0xd003) AM_DEVREADWRITE("pia_audio", pia6821_device, read, write)
AM_RANGE(0xf000, 0xf000) AM_READWRITE(audio_command_r, audio_answer_w)
diff --git a/src/mame/drivers/r2dx_v33.cpp b/src/mame/drivers/r2dx_v33.cpp
index 5def6015cbb..eaf8ec43382 100644
--- a/src/mame/drivers/r2dx_v33.cpp
+++ b/src/mame/drivers/r2dx_v33.cpp
@@ -126,6 +126,11 @@ public:
void nzerotea(machine_config &config);
void rdx_v33(machine_config &config);
void zerotm2k(machine_config &config);
+ void nzerotea_map(address_map &map);
+ void nzeroteam_base_map(address_map &map);
+ void r2dx_oki_map(address_map &map);
+ void rdx_v33_map(address_map &map);
+ void zerotm2k_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -378,7 +383,7 @@ READ16_MEMBER(r2dx_v33_state::r2dx_debug_r)
return 0xffff;
}
-static ADDRESS_MAP_START( rdx_v33_map, AS_PROGRAM, 16, r2dx_v33_state )
+ADDRESS_MAP_START(r2dx_v33_state::rdx_v33_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM // vectors copied here
AM_RANGE(0x00400, 0x00401) AM_WRITE(r2dx_tilemapdma_w) // tilemaps to private buffer
@@ -446,7 +451,7 @@ static ADDRESS_MAP_START( rdx_v33_map, AS_PROGRAM, 16, r2dx_v33_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nzeroteam_base_map, AS_PROGRAM, 16, r2dx_v33_state )
+ADDRESS_MAP_START(r2dx_v33_state::nzeroteam_base_map)
AM_RANGE(0x00000, 0x003ff) AM_RAM //stack area
AM_RANGE(0x00400, 0x00401) AM_WRITE(r2dx_tilemapdma_w) // tilemaps to private buffer
@@ -482,7 +487,7 @@ static ADDRESS_MAP_START( nzeroteam_base_map, AS_PROGRAM, 16, r2dx_v33_state )
// AM_RANGE(0x00762, 0x00763) AM_READ(nzerotea_unknown_r)
- AM_RANGE(0x00780, 0x0079f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x00780, 0x0079f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x00800, 0x00fff) AM_RAM
AM_RANGE(0x01000, 0x0bfff) AM_RAM
@@ -500,7 +505,7 @@ static ADDRESS_MAP_START( nzeroteam_base_map, AS_PROGRAM, 16, r2dx_v33_state )
AM_RANGE(0x20000, 0xfffff) AM_ROM AM_REGION("maincpu", 0x20000 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nzerotea_map, AS_PROGRAM, 16, r2dx_v33_state )
+ADDRESS_MAP_START(r2dx_v33_state::nzerotea_map)
AM_IMPORT_FROM( nzeroteam_base_map )
AM_RANGE(0x00740, 0x00741) AM_READ_PORT("DSW")
AM_RANGE(0x00744, 0x00745) AM_READ_PORT("INPUT")
@@ -516,7 +521,7 @@ WRITE16_MEMBER(r2dx_v33_state::zerotm2k_eeprom_w)
m_eeprom->cs_write((data & 0x01) ? ASSERT_LINE : CLEAR_LINE);
}
-static ADDRESS_MAP_START( zerotm2k_map, AS_PROGRAM, 16, r2dx_v33_state )
+ADDRESS_MAP_START(r2dx_v33_state::zerotm2k_map)
AM_IMPORT_FROM( nzeroteam_base_map )
AM_RANGE(0x00740, 0x00741) AM_READ_PORT("P3_P4")
AM_RANGE(0x00744, 0x00745) AM_READ_PORT("INPUT")
@@ -764,7 +769,7 @@ MACHINE_RESET_MEMBER(r2dx_v33_state,nzeroteam)
mid_bank = 1;
}
-static ADDRESS_MAP_START( r2dx_oki_map, 0, 8, r2dx_v33_state )
+ADDRESS_MAP_START(r2dx_v33_state::r2dx_oki_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/r9751.cpp b/src/mame/drivers/r9751.cpp
index bf412d6c0b8..cf6850d71a7 100644
--- a/src/mame/drivers/r9751.cpp
+++ b/src/mame/drivers/r9751.cpp
@@ -114,6 +114,7 @@ public:
DECLARE_DRIVER_INIT(r9751);
void r9751(machine_config &config);
+ void r9751_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<pdc_device> m_pdc;
@@ -618,7 +619,7 @@ WRITE32_MEMBER( r9751_state::r9751_mmio_fff8_w )
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(r9751_mem, AS_PROGRAM, 32, r9751_state)
+ADDRESS_MAP_START(r9751_state::r9751_mem)
//ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000,0x00ffffff) AM_RAM AM_SHARE("main_ram") // 16MB
AM_RANGE(0x08000000,0x0800ffff) AM_ROM AM_REGION("prom", 0)
diff --git a/src/mame/drivers/rabbit.cpp b/src/mame/drivers/rabbit.cpp
index 99e88531c69..61d5a01e37e 100644
--- a/src/mame/drivers/rabbit.cpp
+++ b/src/mame/drivers/rabbit.cpp
@@ -128,6 +128,7 @@ public:
void rabbit(machine_config &config);
+ void rabbit_map(address_map &map);
protected:
virtual void video_start() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -712,7 +713,7 @@ WRITE32_MEMBER(rabbit_state::eeprom_write)
}
}
-static ADDRESS_MAP_START( rabbit_map, AS_PROGRAM, 32, rabbit_state )
+ADDRESS_MAP_START(rabbit_state::rabbit_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x000000, 0x000003) AM_WRITENOP // bug in code / emulation?
AM_RANGE(0x000010, 0x000013) AM_WRITENOP // bug in code / emulation?
diff --git a/src/mame/drivers/rad_eu3a05.cpp b/src/mame/drivers/rad_eu3a05.cpp
index e49463df2be..1c1c68d7cd5 100644
--- a/src/mame/drivers/rad_eu3a05.cpp
+++ b/src/mame/drivers/rad_eu3a05.cpp
@@ -236,6 +236,8 @@ public:
void radicasi(machine_config &config);
+ void radicasi_bank_map(address_map &map);
+ void radicasi_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -901,7 +903,7 @@ READ8_MEMBER(radica_eu3a05_state::read_full_space)
return fullbankspace.read_byte(offset);
}
-static ADDRESS_MAP_START( radicasi_map, AS_PROGRAM, 8, radica_eu3a05_state )
+ADDRESS_MAP_START(radica_eu3a05_state::radicasi_map)
// can the addresses move around?
AM_RANGE(0x0000, 0x05ff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x0600, 0x3dff) AM_RAM AM_SHARE("vram")
@@ -968,7 +970,7 @@ static ADDRESS_MAP_START( radicasi_map, AS_PROGRAM, 8, radica_eu3a05_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( radicasi_bank_map, AS_PROGRAM, 8, radica_eu3a05_state )
+ADDRESS_MAP_START(radica_eu3a05_state::radicasi_bank_map)
AM_RANGE(0x000000, 0xffffff) AM_NOP // shut up any logging when video params are invalid
AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x400000, 0x40ffff) AM_RAM // ?? only ever cleared maybe a mirror of below?
diff --git a/src/mame/drivers/rad_eu3a14.cpp b/src/mame/drivers/rad_eu3a14.cpp
index a494cee2c4b..7b95ef4d2bf 100644
--- a/src/mame/drivers/rad_eu3a14.cpp
+++ b/src/mame/drivers/rad_eu3a14.cpp
@@ -104,6 +104,8 @@ public:
// for callback
DECLARE_READ8_MEMBER(read_full_space);
+ void bank_map(address_map &map);
+ void radica_eu3a14_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -455,11 +457,11 @@ READ8_MEMBER(radica_eu3a14_state::radicasi_pal_ntsc_r)
//return 0x00; // PAL
}
-static ADDRESS_MAP_START( bank_map, AS_PROGRAM, 8, radica_eu3a14_state )
+ADDRESS_MAP_START(radica_eu3a14_state::bank_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( radica_eu3a14_map, AS_PROGRAM, 8, radica_eu3a14_state )
+ADDRESS_MAP_START(radica_eu3a14_state::radica_eu3a14_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x1fff) AM_RAM AM_SHARE("mainram") // 200-9ff is sprites? a00 - ??? is tilemap?
diff --git a/src/mame/drivers/radio86.cpp b/src/mame/drivers/radio86.cpp
index 59d0d13375c..79a04540d34 100644
--- a/src/mame/drivers/radio86.cpp
+++ b/src/mame/drivers/radio86.cpp
@@ -25,7 +25,7 @@
/* Address maps */
-static ADDRESS_MAP_START(radio86_mem, AS_PROGRAM, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::radio86_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0x8000, 0x8003 ) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) AM_MIRROR(0x1ffc)
@@ -35,17 +35,17 @@ static ADDRESS_MAP_START(radio86_mem, AS_PROGRAM, 8, radio86_state )
AM_RANGE( 0xf000, 0xffff ) AM_ROM // System ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( radio86_io , AS_IO, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::radio86_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x00, 0xff ) AM_READWRITE(radio_io_r,radio_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rk7007_io , AS_IO, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::rk7007_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x80, 0x83 ) AM_DEVREADWRITE("ms7007", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(radio86rom_mem, AS_PROGRAM, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::radio86rom_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0x8000, 0x8003 ) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) AM_MIRROR(0x1ffc)
@@ -55,7 +55,7 @@ static ADDRESS_MAP_START(radio86rom_mem, AS_PROGRAM, 8, radio86_state )
AM_RANGE( 0xf000, 0xffff ) AM_ROM // System ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(radio86ram_mem, AS_PROGRAM, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::radio86ram_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0xdfff ) AM_RAM // RAM
AM_RANGE( 0xe000, 0xe7ff ) AM_ROM // System ROM page 2
@@ -68,7 +68,7 @@ static ADDRESS_MAP_START(radio86ram_mem, AS_PROGRAM, 8, radio86_state )
AM_RANGE( 0xf800, 0xffff ) AM_ROM // System ROM page 1
ADDRESS_MAP_END
-static ADDRESS_MAP_START(radio86_16_mem, AS_PROGRAM, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::radio86_16_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0x3fff ) AM_RAM // RAM
@@ -81,7 +81,7 @@ static ADDRESS_MAP_START(radio86_16_mem, AS_PROGRAM, 8, radio86_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mikron2_mem, AS_PROGRAM, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::mikron2_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0xc000, 0xc003 ) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) AM_MIRROR(0x00fc)
@@ -91,7 +91,7 @@ static ADDRESS_MAP_START(mikron2_mem, AS_PROGRAM, 8, radio86_state )
AM_RANGE( 0xf000, 0xffff ) AM_ROM // System ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(impuls03_mem, AS_PROGRAM, 8, radio86_state )
+ADDRESS_MAP_START(radio86_state::impuls03_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x1000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0x8000, 0x8003 ) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write) AM_MIRROR(0x1ffc)
diff --git a/src/mame/drivers/raiden.cpp b/src/mame/drivers/raiden.cpp
index 875ab793ca9..4c827b4a0fe 100644
--- a/src/mame/drivers/raiden.cpp
+++ b/src/mame/drivers/raiden.cpp
@@ -83,7 +83,7 @@
/******************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, raiden_state )
+ADDRESS_MAP_START(raiden_state::main_map)
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("shared_ram")
@@ -97,7 +97,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, raiden_state )
AM_RANGE(0xa0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, raiden_state )
+ADDRESS_MAP_START(raiden_state::sub_map)
AM_RANGE(0x00000, 0x01fff) AM_RAM
AM_RANGE(0x02000, 0x027ff) AM_RAM_WRITE(raiden_background_w) AM_SHARE("back_data")
AM_RANGE(0x02800, 0x02fff) AM_RAM_WRITE(raiden_foreground_w) AM_SHARE("fore_data")
@@ -112,7 +112,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( raidenu_main_map, AS_PROGRAM, 16, raiden_state )
+ADDRESS_MAP_START(raiden_state::raidenu_main_map)
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x08000, 0x0803f) AM_WRITEONLY AM_SHARE("scroll_ram")
@@ -126,7 +126,7 @@ static ADDRESS_MAP_START( raidenu_main_map, AS_PROGRAM, 16, raiden_state )
AM_RANGE(0xa0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raidenu_sub_map, AS_PROGRAM, 16, raiden_state )
+ADDRESS_MAP_START(raiden_state::raidenu_sub_map)
AM_RANGE(0x00000, 0x05fff) AM_RAM
AM_RANGE(0x06000, 0x067ff) AM_RAM_WRITE(raiden_background_w) AM_SHARE("back_data")
AM_RANGE(0x06800, 0x06fff) AM_RAM_WRITE(raiden_foreground_w) AM_SHARE("fore_data")
@@ -140,7 +140,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( raidenb_main_map, AS_PROGRAM, 16, raiden_state )
+ADDRESS_MAP_START(raiden_state::raidenb_main_map)
AM_RANGE(0x00000, 0x06fff) AM_RAM
AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("shared_ram")
@@ -157,7 +157,7 @@ ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START( raiden_sound_map, AS_PROGRAM, 8, raiden_state )
+ADDRESS_MAP_START(raiden_state::raiden_sound_map)
AM_RANGE(0x0000, 0xffff) AM_DEVREAD("sei80bu", sei80bu_device, data_r)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -174,11 +174,11 @@ static ADDRESS_MAP_START( raiden_sound_map, AS_PROGRAM, 8, raiden_state )
AM_RANGE(0x6000, 0x6000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raiden_sound_decrypted_opcodes_map, AS_OPCODES, 8, raiden_state )
+ADDRESS_MAP_START(raiden_state::raiden_sound_decrypted_opcodes_map)
AM_RANGE(0x0000, 0xffff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sei80bu_encrypted_full_map, AS_PROGRAM, 8, raiden_state )
+ADDRESS_MAP_START(raiden_state::sei80bu_encrypted_full_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("audiocpu", 0)
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
@@ -370,7 +370,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(raiden_state::raidene, raiden)
MCFG_DEVICE_MODIFY("audiocpu")
MCFG_CPU_PROGRAM_MAP(raiden_sound_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(raiden_sound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(raiden_sound_decrypted_opcodes_map)
MCFG_DEVICE_ADD("sei80bu", SEI80BU, 0)
MCFG_DEVICE_PROGRAM_MAP(sei80bu_encrypted_full_map)
diff --git a/src/mame/drivers/raiden2.cpp b/src/mame/drivers/raiden2.cpp
index 8b151529cf6..c43b5090350 100644
--- a/src/mame/drivers/raiden2.cpp
+++ b/src/mame/drivers/raiden2.cpp
@@ -889,7 +889,7 @@ WRITE16_MEMBER(raiden2_state::sprite_prot_off_w)
}
/* MEMORY MAPS */
-static ADDRESS_MAP_START( raiden2_cop_mem, AS_PROGRAM, 16, raiden2_state )
+ADDRESS_MAP_START(raiden2_state::raiden2_cop_mem)
AM_RANGE(0x0041c, 0x0041d) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_angle_target_w) // angle target (for 0x6200 COP macro)
AM_RANGE(0x0041e, 0x0041f) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_angle_step_w) // angle step (for 0x6200 COP macro)
AM_RANGE(0x00420, 0x00421) AM_DEVWRITE("raiden2cop", raiden2cop_device, cop_itoa_low_w)
@@ -960,14 +960,14 @@ static ADDRESS_MAP_START( raiden2_cop_mem, AS_PROGRAM, 16, raiden2_state )
AM_RANGE(0x00762, 0x00763) AM_READ(sprite_prot_dst1_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raiden2_mem, AS_PROGRAM, 16, raiden2_state )
+ADDRESS_MAP_START(raiden2_state::raiden2_mem)
AM_RANGE(0x00000, 0x003ff) AM_RAM
AM_IMPORT_FROM( raiden2_cop_mem )
AM_RANGE(0x0068e, 0x0068f) AM_WRITENOP //irq ack / sprite buffering?
- AM_RANGE(0x00700, 0x0071f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x00700, 0x0071f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x00740, 0x00741) AM_READ_PORT("DSW")
AM_RANGE(0x00744, 0x00745) AM_READ_PORT("P1_P2")
@@ -990,7 +990,7 @@ static ADDRESS_MAP_START( raiden2_mem, AS_PROGRAM, 16, raiden2_state )
AM_RANGE(0x40000, 0xfffff) AM_ROM AM_REGION("maincpu", 0x40000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raidendx_mem, AS_PROGRAM, 16, raiden2_state )
+ADDRESS_MAP_START(raiden2_state::raidendx_mem)
AM_IMPORT_FROM( raiden2_mem )
AM_RANGE(0x00470, 0x00471) AM_READWRITE(cop_tile_bank_2_r,raidendx_cop_bank_2_w)
AM_RANGE(0x004d0, 0x004d7) AM_RAM //???
@@ -998,7 +998,7 @@ static ADDRESS_MAP_START( raidendx_mem, AS_PROGRAM, 16, raiden2_state )
// AM_RANGE(0x006ca, 0x006cb) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zeroteam_mem, AS_PROGRAM, 16, raiden2_state )
+ADDRESS_MAP_START(raiden2_state::zeroteam_mem)
AM_RANGE(0x00000, 0x003ff) AM_RAM
AM_IMPORT_FROM( raiden2_cop_mem )
@@ -1008,7 +1008,7 @@ static ADDRESS_MAP_START( zeroteam_mem, AS_PROGRAM, 16, raiden2_state )
AM_RANGE(0x0068e, 0x0068f) AM_WRITENOP // irq ack / sprite buffering?
- AM_RANGE(0x00700, 0x0071f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x00700, 0x0071f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x00740, 0x00741) AM_READ_PORT("DSW")
AM_RANGE(0x00744, 0x00745) AM_READ_PORT("P1_P2")
@@ -1029,7 +1029,7 @@ static ADDRESS_MAP_START( zeroteam_mem, AS_PROGRAM, 16, raiden2_state )
AM_RANGE(0x40000, 0xfffff) AM_ROM AM_REGION("maincpu", 0x40000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xsedae_mem, AS_PROGRAM, 16, raiden2_state )
+ADDRESS_MAP_START(raiden2_state::xsedae_mem)
AM_RANGE(0x00000, 0x003ff) AM_RAM
AM_IMPORT_FROM( raiden2_cop_mem )
@@ -1039,7 +1039,7 @@ static ADDRESS_MAP_START( xsedae_mem, AS_PROGRAM, 16, raiden2_state )
AM_RANGE(0x0068e, 0x0068f) AM_WRITENOP //irq ack / sprite buffering?
- AM_RANGE(0x00700, 0x0071f) AM_DEVREADWRITE8_MOD("seibu_sound", seibu_sound_device, main_r, main_w, rshift<1>, 0x00ff)
+ ;map(0x00700, 0x0071f).lrw8("seibu_sound_rw", [this](address_space &space, offs_t offset, u8 mem_mask){ return m_seibu_sound->main_r(space, offset >> 1, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_seibu_sound->main_w(space, offset >> 1, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x00740, 0x00741) AM_READ_PORT("DSW")
AM_RANGE(0x00744, 0x00745) AM_READ_PORT("P1_P2")
@@ -1059,7 +1059,7 @@ static ADDRESS_MAP_START( xsedae_mem, AS_PROGRAM, 16, raiden2_state )
AM_RANGE(0x20000, 0xfffff) AM_ROM AM_REGION("maincpu", 0x20000)
ADDRESS_MAP_END
-ADDRESS_MAP_START( raiden2_sound_map, AS_PROGRAM, 8, raiden2_state )
+ADDRESS_MAP_START(raiden2_state::raiden2_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -1080,7 +1080,7 @@ ADDRESS_MAP_START( raiden2_sound_map, AS_PROGRAM, 8, raiden2_state )
AM_RANGE(0x401a, 0x401a) AM_NOP
ADDRESS_MAP_END
-ADDRESS_MAP_START( zeroteam_sound_map, AS_PROGRAM, 8, raiden2_state )
+ADDRESS_MAP_START(raiden2_state::zeroteam_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
diff --git a/src/mame/drivers/rainbow.cpp b/src/mame/drivers/rainbow.cpp
index 5753d38c033..ea5e052d9fc 100644
--- a/src/mame/drivers/rainbow.cpp
+++ b/src/mame/drivers/rainbow.cpp
@@ -622,6 +622,11 @@ public:
DECLARE_WRITE_LINE_MEMBER(GDC_vblank_irq);
void rainbow(machine_config &config);
+ void rainbow8088_io(address_map &map);
+ void rainbow8088_map(address_map &map);
+ void rainbowz80_io(address_map &map);
+ void rainbowz80_mem(address_map &map);
+ void upd7220_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -899,7 +904,7 @@ void rainbow_state::machine_start()
#endif
}
-static ADDRESS_MAP_START(rainbow8088_map, AS_PROGRAM, 8, rainbow_state)
+ADDRESS_MAP_START(rainbow_state::rainbow8088_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_SHARE("sh_ram")
AM_RANGE(0x10000, END_OF_RAM) AM_RAM AM_SHARE("ext_ram") AM_WRITE(ext_ram_w)
@@ -921,7 +926,7 @@ AM_RANGE(0xee000, 0xeffff) AM_RAM AM_SHARE("p_ram")
AM_RANGE(0xf0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rainbow8088_io, AS_IO, 8, rainbow_state)
+ADDRESS_MAP_START(rainbow_state::rainbow8088_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1ff)
AM_RANGE(0x00, 0x00) AM_READWRITE(i8088_latch_r, i8088_latch_w)
@@ -1013,12 +1018,12 @@ AM_RANGE(0x69, 0x69) AM_READ(hd_status_69_r)
// 0x10c -> (MHFU disable register handled by 0x0c + AM_SELECT)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rainbowz80_mem, AS_PROGRAM, 8, rainbow_state)
+ADDRESS_MAP_START(rainbow_state::rainbowz80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(share_z80_r, share_z80_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rainbowz80_io, AS_IO, 8, rainbow_state)
+ADDRESS_MAP_START(rainbow_state::rainbowz80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(z80_latch_r, z80_latch_w)
@@ -3174,7 +3179,7 @@ GFXDECODE_ENTRY("chargen", 0x0000, rainbow_charlayout, 0, 1)
GFXDECODE_END
// Allocate 512 K (4 x 64 K x 16 bit) of memory (GDC-NEW):
-static ADDRESS_MAP_START( upd7220_map, 0, 16, rainbow_state)
+ADDRESS_MAP_START(rainbow_state::upd7220_map)
AM_RANGE(0x00000, 0x3ffff) AM_READWRITE(vram_r, vram_w) AM_SHARE("vram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/rallyx.cpp b/src/mame/drivers/rallyx.cpp
index a087e37a18a..56bd79b2745 100644
--- a/src/mame/drivers/rallyx.cpp
+++ b/src/mame/drivers/rallyx.cpp
@@ -283,7 +283,7 @@ WRITE_LINE_MEMBER(rallyx_state::coin_counter_2_w)
*
*************************************/
-static ADDRESS_MAP_START( rallyx_map, AS_PROGRAM, 8, rallyx_state )
+ADDRESS_MAP_START(rallyx_state::rallyx_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(rallyx_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9800, 0x9fff) AM_RAM
@@ -299,13 +299,13 @@ static ADDRESS_MAP_START( rallyx_map, AS_PROGRAM, 8, rallyx_state )
AM_RANGE(0xa180, 0xa187) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, rallyx_state )
+ADDRESS_MAP_START(rallyx_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0, 0) AM_WRITE(rallyx_interrupt_vector_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jungler_map, AS_PROGRAM, 8, rallyx_state )
+ADDRESS_MAP_START(rallyx_state::jungler_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(rallyx_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9800, 0x9fff) AM_RAM
diff --git a/src/mame/drivers/rambo.cpp b/src/mame/drivers/rambo.cpp
index 054ac390ab7..efb46d3b872 100644
--- a/src/mame/drivers/rambo.cpp
+++ b/src/mame/drivers/rambo.cpp
@@ -57,6 +57,9 @@ public:
virtual void machine_start() override;
virtual void machine_reset() override;
void rambo(machine_config &config);
+ void rambo_data_map(address_map &map);
+ void rambo_io_map(address_map &map);
+ void rambo_prg_map(address_map &map);
};
void rambo_state::machine_start()
@@ -104,15 +107,15 @@ WRITE8_MEMBER(rambo_state::port_w)
* Address maps *
\****************************************************/
-static ADDRESS_MAP_START( rambo_prg_map, AS_PROGRAM, 8, rambo_state )
+ADDRESS_MAP_START(rambo_state::rambo_prg_map)
AM_RANGE(0x0000, 0x1FFFF) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rambo_data_map, AS_DATA, 8, rambo_state )
+ADDRESS_MAP_START(rambo_state::rambo_data_map)
AM_RANGE(0x0200, 0x21FF) AM_RAM /* ATMEGA2560 Internal SRAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rambo_io_map, AS_IO, 8, rambo_state )
+ADDRESS_MAP_START(rambo_state::rambo_io_map)
AM_RANGE(AVR8_IO_PORTA, AVR8_IO_PORTL) AM_READWRITE( port_r, port_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/rampart.cpp b/src/mame/drivers/rampart.cpp
index 31b393a440b..3415aafec32 100644
--- a/src/mame/drivers/rampart.cpp
+++ b/src/mame/drivers/rampart.cpp
@@ -127,7 +127,7 @@ WRITE16_MEMBER(rampart_state::latch_w)
*************************************/
/* full memory map deduced from schematics and GALs */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, rampart_state )
+ADDRESS_MAP_START(rampart_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fffff)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x140000, 0x147fff) AM_MIRROR(0x438000) AM_ROM /* slapstic goes here */
diff --git a/src/mame/drivers/rastan.cpp b/src/mame/drivers/rastan.cpp
index b4057fd80dc..1eb9c45d895 100644
--- a/src/mame/drivers/rastan.cpp
+++ b/src/mame/drivers/rastan.cpp
@@ -208,7 +208,7 @@ WRITE8_MEMBER(rastan_state::rastan_msm5205_stop_w)
-static ADDRESS_MAP_START( rastan_map, AS_PROGRAM, 16, rastan_state )
+ADDRESS_MAP_START(rastan_state::rastan_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x10c000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x200fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -231,7 +231,7 @@ static ADDRESS_MAP_START( rastan_map, AS_PROGRAM, 16, rastan_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rastan_s_map, AS_PROGRAM, 8, rastan_state )
+ADDRESS_MAP_START(rastan_state::rastan_s_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x8fff) AM_RAM
diff --git a/src/mame/drivers/rastersp.cpp b/src/mame/drivers/rastersp.cpp
index f338fba4720..1b2110ad582 100644
--- a/src/mame/drivers/rastersp.cpp
+++ b/src/mame/drivers/rastersp.cpp
@@ -146,6 +146,9 @@ public:
IRQ_CALLBACK_MEMBER(irq_callback);
static void ncr53c700(device_t *device);
void rastersp(machine_config &config);
+ void cpu_map(address_map &map);
+ void dsp_map(address_map &map);
+ void io_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_reset() override;
@@ -670,7 +673,7 @@ READ32_MEMBER( rastersp_state::dsp_speedup_r )
*
*************************************/
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, rastersp_state )
+ADDRESS_MAP_START(rastersp_state::cpu_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("dram")
AM_RANGE(0x01000000, 0x010bffff) AM_NOP // External ROM
AM_RANGE(0x010c0000, 0x010cffff) AM_ROM AM_REGION("bios", 0)
@@ -681,7 +684,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, rastersp_state )
AM_RANGE(0xfff00000, 0xffffffff) AM_RAMBANK("bank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 32, rastersp_state )
+ADDRESS_MAP_START(rastersp_state::io_map)
AM_RANGE(0x0020, 0x0023) AM_WRITE(cyrix_cache_w)
AM_RANGE(0x1000, 0x1003) AM_READ_PORT("P1") AM_WRITE(port1_w)
AM_RANGE(0x1004, 0x1007) AM_READ_PORT("P2") AM_WRITE(port2_w)
@@ -694,7 +697,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 32, rastersp_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp_map, AS_PROGRAM, 32, rastersp_state )
+ADDRESS_MAP_START(rastersp_state::dsp_map)
AM_RANGE(0x000000, 0x0fffff) AM_RAMBANK("bank1")
AM_RANGE(0x400000, 0x40ffff) AM_ROM AM_REGION("dspboot", 0)
AM_RANGE(0x808000, 0x80807f) AM_READWRITE(tms32031_control_r, tms32031_control_w)
diff --git a/src/mame/drivers/ravens.cpp b/src/mame/drivers/ravens.cpp
index c5d0299674d..ced2772ae4a 100644
--- a/src/mame/drivers/ravens.cpp
+++ b/src/mame/drivers/ravens.cpp
@@ -105,6 +105,9 @@ public:
void ravens(machine_config &config);
void ravens2(machine_config &config);
+ void ravens2_io(address_map &map);
+ void ravens_io(address_map &map);
+ void ravens_mem(address_map &map);
private:
uint8_t m_term_char;
uint8_t m_term_data;
@@ -203,21 +206,21 @@ MACHINE_RESET_MEMBER( ravens_state, ravens2 )
}
-static ADDRESS_MAP_START( ravens_mem, AS_PROGRAM, 8, ravens_state )
+ADDRESS_MAP_START(ravens_state::ravens_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x07ff) AM_ROM
AM_RANGE( 0x0800, 0x1fff) AM_RAM
AM_RANGE( 0x2000, 0x7FFF) AM_RAM // for quickload, optional
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ravens_io, AS_IO, 8, ravens_state )
+ADDRESS_MAP_START(ravens_state::ravens_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x09, 0x09) AM_WRITE(leds_w) // LED output port
AM_RANGE(0x10, 0x15) AM_WRITE(display_w) // 6-led display
AM_RANGE(0x17, 0x17) AM_READ(port17_r) // pushbuttons
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ravens2_io, AS_IO, 8, ravens_state )
+ADDRESS_MAP_START(ravens_state::ravens2_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x07, 0x07) AM_READ(port07_r)
AM_RANGE(0x1b, 0x1b) AM_WRITE(port1b_w)
diff --git a/src/mame/drivers/rbisland.cpp b/src/mame/drivers/rbisland.cpp
index 34f62b38211..f6e966be623 100644
--- a/src/mame/drivers/rbisland.cpp
+++ b/src/mame/drivers/rbisland.cpp
@@ -346,7 +346,7 @@ WRITE16_MEMBER(rbisland_state::jumping_sound_w)
MEMORY STRUCTURES
***************************************************************************/
-static ADDRESS_MAP_START( rbisland_map, AS_PROGRAM, 16, rbisland_state )
+ADDRESS_MAP_START(rbisland_state::rbisland_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x10c000, 0x10ffff) AM_RAM /* main RAM */
AM_RANGE(0x200000, 0x200fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -367,7 +367,7 @@ static ADDRESS_MAP_START( rbisland_map, AS_PROGRAM, 16, rbisland_state )
AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("pc090oj", pc090oj_device, word_r, word_w) /* sprite ram + other stuff */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jumping_map, AS_PROGRAM, 16, rbisland_state )
+ADDRESS_MAP_START(rbisland_state::jumping_map)
AM_RANGE(0x000000, 0x09ffff) AM_ROM
AM_RANGE(0x10c000, 0x10ffff) AM_RAM /* main RAM */
AM_RANGE(0x200000, 0x200fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -408,7 +408,7 @@ READ8_MEMBER(rbisland_state::jumping_latch_r)
}
-static ADDRESS_MAP_START( rbisland_sound_map, AS_PROGRAM, 8, rbisland_state )
+ADDRESS_MAP_START(rbisland_state::rbisland_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -418,7 +418,7 @@ static ADDRESS_MAP_START( rbisland_sound_map, AS_PROGRAM, 8, rbisland_state )
AM_RANGE(0xa001, 0xa001) AM_DEVREADWRITE("ciu", pc060ha_device, slave_comm_r, slave_comm_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jumping_sound_map, AS_PROGRAM, 8, rbisland_state )
+ADDRESS_MAP_START(rbisland_state::jumping_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0xb000, 0xb001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
diff --git a/src/mame/drivers/rbmk.cpp b/src/mame/drivers/rbmk.cpp
index e42c4fe30d2..80e331e5045 100644
--- a/src/mame/drivers/rbmk.cpp
+++ b/src/mame/drivers/rbmk.cpp
@@ -93,6 +93,10 @@ public:
void rbmk(machine_config &config);
void rbspm(machine_config &config);
+ void mcu_io(address_map &map);
+ void mcu_mem(address_map &map);
+ void rbmk_mem(address_map &map);
+ void rbspm_mem(address_map &map);
protected:
virtual void video_start() override;
@@ -160,7 +164,7 @@ WRITE16_MEMBER(rbmk_state::eeprom_w)
}
-static ADDRESS_MAP_START( rbmk_mem, AS_PROGRAM, 16, rbmk_state )
+ADDRESS_MAP_START(rbmk_state::rbmk_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_WRITENOP
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x500000, 0x50ffff) AM_RAM
@@ -177,7 +181,7 @@ static ADDRESS_MAP_START( rbmk_mem, AS_PROGRAM, 16, rbmk_state )
AM_RANGE(0xc28000, 0xc28001) AM_WRITE(unk_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rbspm_mem, AS_PROGRAM, 16, rbmk_state )
+ADDRESS_MAP_START(rbmk_state::rbspm_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_WRITE(eeprom_w) // wrong
AM_RANGE(0x300000, 0x300001) AM_READWRITE(dip_mux_r, dip_mux_w)
@@ -193,7 +197,7 @@ static ADDRESS_MAP_START( rbspm_mem, AS_PROGRAM, 16, rbmk_state )
AM_RANGE(0x9c0000, 0x9c0fff) AM_RAM AM_SHARE("vidram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_mem, AS_PROGRAM, 8, rbmk_state )
+ADDRESS_MAP_START(rbmk_state::mcu_mem)
// AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
@@ -232,7 +236,7 @@ WRITE8_MEMBER(rbmk_state::mcu_io_mux_w)
m_mux_data = ~data;
}
-static ADDRESS_MAP_START( mcu_io, AS_IO, 8, rbmk_state )
+ADDRESS_MAP_START(rbmk_state::mcu_io)
AM_RANGE(0x0ff00, 0x0ffff) AM_READWRITE(mcu_io_r, mcu_io_w )
AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_WRITE(mcu_io_mux_w )
diff --git a/src/mame/drivers/rc702.cpp b/src/mame/drivers/rc702.cpp
index 5608090ed4e..dc16ac159f1 100644
--- a/src/mame/drivers/rc702.cpp
+++ b/src/mame/drivers/rc702.cpp
@@ -75,6 +75,8 @@ public:
void kbd_put(u8 data);
void rc702(machine_config &config);
+ void rc702_io(address_map &map);
+ void rc702_mem(address_map &map);
private:
bool m_q_state;
bool m_qbar_state;
@@ -95,12 +97,12 @@ private:
};
-static ADDRESS_MAP_START(rc702_mem, AS_PROGRAM, 8, rc702_state)
+ADDRESS_MAP_START(rc702_state::rc702_mem)
AM_RANGE(0x0000, 0x07ff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x0800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rc702_io, AS_IO, 8, rc702_state)
+ADDRESS_MAP_START(rc702_state::rc702_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("crtc", i8275_device, read, write)
diff --git a/src/mame/drivers/rc759.cpp b/src/mame/drivers/rc759.cpp
index c47eed08875..0c3768700e2 100644
--- a/src/mame/drivers/rc759.cpp
+++ b/src/mame/drivers/rc759.cpp
@@ -105,6 +105,8 @@ public:
DECLARE_READ8_MEMBER(irq_callback);
void rc759(machine_config &config);
+ void rc759_io(address_map &map);
+ void rc759_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -465,13 +467,13 @@ void rc759_state::machine_reset()
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( rc759_map, AS_PROGRAM, 16, rc759_state )
+ADDRESS_MAP_START(rc759_state::rc759_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
AM_RANGE(0xd0000, 0xd7fff) AM_MIRROR(0x08000) AM_RAM AM_SHARE("vram")
AM_RANGE(0xe8000, 0xeffff) AM_MIRROR(0x10000) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rc759_io, AS_IO, 16, rc759_state )
+ADDRESS_MAP_START(rc759_state::rc759_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000, 0x003) AM_MIRROR(0x0c) AM_DEVREADWRITE8("pic", pic8259_device, read, write, 0x00ff)
AM_RANGE(0x020, 0x021) AM_READ8(keyboard_r, 0x00ff)
diff --git a/src/mame/drivers/rcorsair.cpp b/src/mame/drivers/rcorsair.cpp
index 01f55af0571..2b91ce5df1e 100644
--- a/src/mame/drivers/rcorsair.cpp
+++ b/src/mame/drivers/rcorsair.cpp
@@ -73,6 +73,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void rcorsair(machine_config &config);
+ void rcorsair_main_map(address_map &map);
+ void rcorsair_sub_io_map(address_map &map);
+ void rcorsair_sub_map(address_map &map);
protected:
// devices
@@ -84,16 +87,16 @@ protected:
};
-static ADDRESS_MAP_START( rcorsair_main_map, AS_PROGRAM, 8, rcorsair_state )
+ADDRESS_MAP_START(rcorsair_state::rcorsair_main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0xa000, 0xa03f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rcorsair_sub_map, AS_PROGRAM, 8, rcorsair_state )
+ADDRESS_MAP_START(rcorsair_state::rcorsair_sub_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rcorsair_sub_io_map, AS_IO, 8, rcorsair_state )
+ADDRESS_MAP_START(rcorsair_state::rcorsair_sub_io_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( inports )
diff --git a/src/mame/drivers/rd100.cpp b/src/mame/drivers/rd100.cpp
index a9924bfc18a..21ad378c454 100644
--- a/src/mame/drivers/rd100.cpp
+++ b/src/mame/drivers/rd100.cpp
@@ -37,12 +37,13 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void rd100(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, rd100_state )
+ADDRESS_MAP_START(rd100_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_RAM
//AM_RANGE(0x8608, 0x860f) AM_DEVREADWRITE("timer", ptm6840_device, read, write)
diff --git a/src/mame/drivers/rd110.cpp b/src/mame/drivers/rd110.cpp
index 2fe748477ab..19171596eff 100644
--- a/src/mame/drivers/rd110.cpp
+++ b/src/mame/drivers/rd110.cpp
@@ -74,6 +74,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void d110(machine_config &config);
+ void d110_io(address_map &map);
+ void d110_map(address_map &map);
private:
uint8_t m_lcd_data_buffer[256];
@@ -214,7 +216,7 @@ PALETTE_INIT_MEMBER(d110_state, d110)
palette.set_pen_color(1, rgb_t(0, 0, 0));
}
-static ADDRESS_MAP_START( d110_map, AS_PROGRAM, 8, d110_state )
+ADDRESS_MAP_START(d110_state::d110_map)
AM_RANGE(0x0100, 0x0100) AM_WRITE(bank_w)
AM_RANGE(0x0200, 0x0200) AM_WRITE(so_w)
AM_RANGE(0x021a, 0x021a) AM_READ_PORT("SC0") AM_WRITENOP
@@ -226,7 +228,7 @@ static ADDRESS_MAP_START( d110_map, AS_PROGRAM, 8, d110_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("fixed")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( d110_io, AS_IO, 16, d110_state )
+ADDRESS_MAP_START(d110_state::d110_io)
AM_RANGE(i8x9x_device::SERIAL, i8x9x_device::SERIAL) AM_WRITE(midi_w)
AM_RANGE(i8x9x_device::P0, i8x9x_device::P0) AM_READ(port0_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/re900.cpp b/src/mame/drivers/re900.cpp
index 2b7da70bbfd..4115e38a526 100644
--- a/src/mame/drivers/re900.cpp
+++ b/src/mame/drivers/re900.cpp
@@ -122,6 +122,8 @@ public:
DECLARE_DRIVER_INIT(re900);
void re900(machine_config &config);
void bs94(machine_config &config);
+ void mem_io(address_map &map);
+ void mem_prg(address_map &map);
};
@@ -244,11 +246,11 @@ WRITE8_MEMBER(re900_state::watchdog_reset_w)
* Memory Map Information *
*******************************/
-static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8, re900_state )
+ADDRESS_MAP_START(re900_state::mem_prg)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_SHARE("rom")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mem_io, AS_IO, 8, re900_state )
+ADDRESS_MAP_START(re900_state::mem_io)
AM_RANGE(0x0000, 0xbfff) AM_READ(rom_r)
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xe000, 0xefff) AM_WRITE(watchdog_reset_w)
diff --git a/src/mame/drivers/realbrk.cpp b/src/mame/drivers/realbrk.cpp
index a98f5515cd1..5ae80e51511 100644
--- a/src/mame/drivers/realbrk.cpp
+++ b/src/mame/drivers/realbrk.cpp
@@ -155,7 +155,7 @@ WRITE16_MEMBER(realbrk_state::backup_ram_w)
***************************************************************************/
/*Basic memory map for this HW*/
-static ADDRESS_MAP_START( base_mem, AS_PROGRAM, 16, realbrk_state )
+ADDRESS_MAP_START(realbrk_state::base_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("spriteram") // Sprites
AM_RANGE(0x400000, 0x40ffff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette") // Palette
@@ -170,7 +170,7 @@ static ADDRESS_MAP_START( base_mem, AS_PROGRAM, 16, realbrk_state )
ADDRESS_MAP_END
/*realbrk specific memory map*/
-static ADDRESS_MAP_START( realbrk_mem, AS_PROGRAM, 16, realbrk_state )
+ADDRESS_MAP_START(realbrk_state::realbrk_mem)
AM_IMPORT_FROM(base_mem)
AM_RANGE(0x800008, 0x80000b) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) //
AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0") // P1 & P2 (Inputs)
@@ -180,7 +180,7 @@ static ADDRESS_MAP_START( realbrk_mem, AS_PROGRAM, 16, realbrk_state )
ADDRESS_MAP_END
/*pkgnsh specific memory map*/
-static ADDRESS_MAP_START( pkgnsh_mem, AS_PROGRAM, 16, realbrk_state )
+ADDRESS_MAP_START(realbrk_state::pkgnsh_mem)
AM_IMPORT_FROM(base_mem)
AM_RANGE(0x800008, 0x80000b) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0xff00) // YM2413
AM_RANGE(0xc00000, 0xc00013) AM_READ(pkgnsh_input_r ) // P1 & P2 (Inputs)
@@ -188,7 +188,7 @@ static ADDRESS_MAP_START( pkgnsh_mem, AS_PROGRAM, 16, realbrk_state )
ADDRESS_MAP_END
/*pkgnshdx specific memory map*/
-static ADDRESS_MAP_START( pkgnshdx_mem, AS_PROGRAM, 16, realbrk_state )
+ADDRESS_MAP_START(realbrk_state::pkgnshdx_mem)
AM_IMPORT_FROM(base_mem)
AM_RANGE(0x800008, 0x80000b) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) //
AM_RANGE(0xc00000, 0xc00013) AM_READ(pkgnshdx_input_r ) // P1 & P2 (Inputs)
@@ -197,7 +197,7 @@ static ADDRESS_MAP_START( pkgnshdx_mem, AS_PROGRAM, 16, realbrk_state )
ADDRESS_MAP_END
/*dai2kaku specific memory map*/
-static ADDRESS_MAP_START( dai2kaku_mem, AS_PROGRAM, 16, realbrk_state )
+ADDRESS_MAP_START(realbrk_state::dai2kaku_mem)
AM_IMPORT_FROM(base_mem)
AM_RANGE(0x605000, 0x6053ff) AM_RAM AM_SHARE("vram_0ras") // rasterinfo (0)
AM_RANGE(0x605400, 0x6057ff) AM_RAM AM_SHARE("vram_1ras") // rasterinfo (1)
diff --git a/src/mame/drivers/redalert.cpp b/src/mame/drivers/redalert.cpp
index 90174c4727c..cc955f31a4a 100644
--- a/src/mame/drivers/redalert.cpp
+++ b/src/mame/drivers/redalert.cpp
@@ -152,7 +152,7 @@ READ8_MEMBER(redalert_state::panther_unk_r)
*
*************************************/
-static ADDRESS_MAP_START( redalert_main_map, AS_PROGRAM, 8, redalert_state )
+ADDRESS_MAP_START(redalert_state::redalert_main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_SHARE("bitmap_videoram")
AM_RANGE(0x4000, 0x4fff) AM_RAM AM_SHARE("charram")
@@ -168,7 +168,7 @@ static ADDRESS_MAP_START( redalert_main_map, AS_PROGRAM, 8, redalert_state )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ww3_main_map, AS_PROGRAM, 8, redalert_state )
+ADDRESS_MAP_START(redalert_state::ww3_main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_SHARE("bitmap_videoram")
AM_RANGE(0x4000, 0x4fff) AM_RAM AM_SHARE("charram")
@@ -183,7 +183,7 @@ static ADDRESS_MAP_START( ww3_main_map, AS_PROGRAM, 8, redalert_state )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( panther_main_map, AS_PROGRAM, 8, redalert_state )
+ADDRESS_MAP_START(redalert_state::panther_main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_SHARE("bitmap_videoram")
AM_RANGE(0x4000, 0x4fff) AM_RAM AM_SHARE("charram")
@@ -198,7 +198,7 @@ static ADDRESS_MAP_START( panther_main_map, AS_PROGRAM, 8, redalert_state )
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( demoneye_main_map, AS_PROGRAM, 8, redalert_state )
+ADDRESS_MAP_START(redalert_state::demoneye_main_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_SHARE("bitmap_videoram")
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("charram")
diff --git a/src/mame/drivers/redclash.cpp b/src/mame/drivers/redclash.cpp
index 7f40a49565a..4e05db0f222 100644
--- a/src/mame/drivers/redclash.cpp
+++ b/src/mame/drivers/redclash.cpp
@@ -90,7 +90,7 @@ WRITE8_MEMBER(redclash_state::sraider_misc_w)
}
}
-static ADDRESS_MAP_START( sraider_cpu1_map, AS_PROGRAM, 8, redclash_state )
+ADDRESS_MAP_START(redclash_state::sraider_cpu1_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x73ff) AM_WRITEONLY AM_SHARE("spriteram")
@@ -107,7 +107,7 @@ static ADDRESS_MAP_START( sraider_cpu1_map, AS_PROGRAM, 8, redclash_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sraider_cpu2_map, AS_PROGRAM, 8, redclash_state )
+ADDRESS_MAP_START(redclash_state::sraider_cpu2_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_READ(sraider_sound_low_r)
@@ -118,7 +118,7 @@ static ADDRESS_MAP_START( sraider_cpu2_map, AS_PROGRAM, 8, redclash_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sraider_cpu2_io_map, AS_IO, 8, redclash_state )
+ADDRESS_MAP_START(redclash_state::sraider_cpu2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("sn1", sn76489_device, write)
AM_RANGE(0x08, 0x08) AM_DEVWRITE("sn2", sn76489_device, write)
@@ -134,7 +134,7 @@ WRITE8_MEMBER( redclash_state::irqack_w )
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( zerohour_map, AS_PROGRAM, 8, redclash_state )
+ADDRESS_MAP_START(redclash_state::zerohour_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x37ff) AM_RAM
AM_RANGE(0x3800, 0x3bff) AM_RAM AM_SHARE("spriteram")
@@ -153,7 +153,7 @@ static ADDRESS_MAP_START( zerohour_map, AS_PROGRAM, 8, redclash_state )
AM_RANGE(0x7800, 0x7800) AM_WRITE(irqack_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( redclash_map, AS_PROGRAM, 8, redclash_state )
+ADDRESS_MAP_START(redclash_state::redclash_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
// AM_RANGE(0x3000, 0x3000) AM_WRITENOP
// AM_RANGE(0x3800, 0x3800) AM_WRITENOP
diff --git a/src/mame/drivers/relief.cpp b/src/mame/drivers/relief.cpp
index 775d948b466..9dfdd86a3dd 100644
--- a/src/mame/drivers/relief.cpp
+++ b/src/mame/drivers/relief.cpp
@@ -107,7 +107,7 @@ WRITE16_MEMBER(relief_state::audio_volume_w)
}
}
-static ADDRESS_MAP_START( oki_map, 0, 8, relief_state )
+ADDRESS_MAP_START(relief_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("okibank")
AM_RANGE(0x20000, 0x3ffff) AM_ROM
ADDRESS_MAP_END
@@ -119,7 +119,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, relief_state )
+ADDRESS_MAP_START(relief_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
diff --git a/src/mame/drivers/renegade.cpp b/src/mame/drivers/renegade.cpp
index f2278c4d98f..125dbe7434e 100644
--- a/src/mame/drivers/renegade.cpp
+++ b/src/mame/drivers/renegade.cpp
@@ -230,7 +230,7 @@ WRITE8_MEMBER(renegade_state::coincounter_w)
/********************************************************************************************/
-static ADDRESS_MAP_START( renegade_nomcu_map, AS_PROGRAM, 8, renegade_state )
+ADDRESS_MAP_START(renegade_state::renegade_nomcu_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(fg_videoram_w) AM_SHARE("fg_videoram")
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_SHARE("spriteram")
@@ -248,13 +248,13 @@ static ADDRESS_MAP_START( renegade_nomcu_map, AS_PROGRAM, 8, renegade_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( renegade_map, AS_PROGRAM, 8, renegade_state )
+ADDRESS_MAP_START(renegade_state::renegade_map)
AM_IMPORT_FROM(renegade_nomcu_map)
AM_RANGE(0x3804, 0x3804) AM_DEVREADWRITE("mcu", taito68705_mcu_device, data_r, data_w)
AM_RANGE(0x3805, 0x3805) AM_READ(mcu_reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( renegade_sound_map, AS_PROGRAM, 8, renegade_state )
+ADDRESS_MAP_START(renegade_state::renegade_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x1800, 0x1800) AM_WRITE(adpcm_start_w)
diff --git a/src/mame/drivers/replicator.cpp b/src/mame/drivers/replicator.cpp
index 69bbf55d92d..3d488f3a951 100644
--- a/src/mame/drivers/replicator.cpp
+++ b/src/mame/drivers/replicator.cpp
@@ -187,6 +187,9 @@ public:
virtual void machine_reset() override;
DECLARE_PALETTE_INIT(replicator);
void replicator(machine_config &config);
+ void replicator_data_map(address_map &map);
+ void replicator_io_map(address_map &map);
+ void replicator_prg_map(address_map &map);
};
void replicator_state::machine_start()
@@ -529,15 +532,15 @@ WRITE8_MEMBER(replicator_state::port_w)
* Address maps *
\****************************************************/
-static ADDRESS_MAP_START( replicator_prg_map, AS_PROGRAM, 8, replicator_state )
+ADDRESS_MAP_START(replicator_state::replicator_prg_map)
AM_RANGE(0x0000, 0x1FFFF) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( replicator_data_map, AS_DATA, 8, replicator_state )
+ADDRESS_MAP_START(replicator_state::replicator_data_map)
AM_RANGE(0x0200, 0x21FF) AM_RAM /* ATMEGA1280 Internal SRAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( replicator_io_map, AS_IO, 8, replicator_state )
+ADDRESS_MAP_START(replicator_state::replicator_io_map)
AM_RANGE(AVR8_IO_PORTA, AVR8_IO_PORTL) AM_READWRITE( port_r, port_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/retofinv.cpp b/src/mame/drivers/retofinv.cpp
index 48176fc95be..5e29b3d014c 100644
--- a/src/mame/drivers/retofinv.cpp
+++ b/src/mame/drivers/retofinv.cpp
@@ -177,7 +177,7 @@ READ8_MEMBER(retofinv_state::mcu_status_r)
empty socket at IC73 from 6000-7fff) and if it finds a particular
string there, it jumps to that area, presumably for diagnostic use */
-static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, retofinv_state )
+ADDRESS_MAP_START(retofinv_state::bootleg_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x7fff, 0x7fff) AM_WRITE(coincounter_w)
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(fg_videoram_w) AM_SHARE("fg_videoram")
@@ -197,14 +197,14 @@ static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, retofinv_state )
AM_RANGE(0xf800, 0xf800) AM_READ(cpu0_mf800_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, retofinv_state )
+ADDRESS_MAP_START(retofinv_state::main_map)
AM_IMPORT_FROM(bootleg_map)
AM_RANGE(0xc003, 0xc003) AM_READ(mcu_status_r)
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("68705", taito68705_mcu_device, data_r)
AM_RANGE(0xe800, 0xe800) AM_DEVWRITE("68705", taito68705_mcu_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, retofinv_state )
+ADDRESS_MAP_START(retofinv_state::sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(fg_videoram_w) AM_SHARE("fg_videoram")
AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE("sharedram")
@@ -212,7 +212,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, retofinv_state )
AM_RANGE(0xc800, 0xc807) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, retofinv_state )
+ADDRESS_MAP_START(retofinv_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM /* 6116 sram at IC28 */
AM_RANGE(0x4000, 0x4000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/rex6000.cpp b/src/mame/drivers/rex6000.cpp
index 0ee0bd471c8..d1631f2e5e8 100644
--- a/src/mame/drivers/rex6000.cpp
+++ b/src/mame/drivers/rex6000.cpp
@@ -124,6 +124,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(sec_timer);
DECLARE_QUICKLOAD_LOAD_MEMBER(rex6000);
void rex6000(machine_config &config);
+ void rex6000_banked_map(address_map &map);
+ void rex6000_io(address_map &map);
+ void rex6000_mem(address_map &map);
};
@@ -148,6 +151,8 @@ public:
uint32_t screen_update_oz(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void oz750(machine_config &config);
+ void oz750_banked_map(address_map &map);
+ void oz750_io(address_map &map);
private:
int oz_wzd_extract_tag(const std::vector<uint8_t> &data, const char *tag, char *dest_buf);
@@ -365,7 +370,7 @@ WRITE8_MEMBER( oz750_state::kb_mask_w )
m_kb_mask = (m_kb_mask & 0xff00) | data;
}
-static ADDRESS_MAP_START(rex6000_banked_map, AS_PROGRAM, 8, rex6000_state)
+ADDRESS_MAP_START(rex6000_state::rex6000_banked_map)
AM_RANGE( 0x0000000, 0x00fffff ) AM_DEVREADWRITE("flash0a", intelfsh8_device, read, write)
AM_RANGE( 0x0100000, 0x01fffff ) AM_DEVREADWRITE("flash0b", intelfsh8_device, read, write)
AM_RANGE( 0x0c00000, 0x0cfffff ) AM_DEVREADWRITE("flash1a", intelfsh8_device, read, write)
@@ -375,7 +380,7 @@ static ADDRESS_MAP_START(rex6000_banked_map, AS_PROGRAM, 8, rex6000_state)
AM_RANGE( 0x2000000, 0x2007fff ) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(oz750_banked_map, AS_PROGRAM, 8, oz750_state)
+ADDRESS_MAP_START(oz750_state::oz750_banked_map)
AM_RANGE( 0x0000000, 0x01fffff ) AM_DEVREADWRITE("flash0a", intelfsh8_device, read, write)
AM_RANGE( 0x0200000, 0x02fffff ) AM_MIRROR(0x100000) AM_DEVREADWRITE("flash1a", intelfsh8_device, read, write)
AM_RANGE( 0x0600000, 0x07fffff ) AM_READWRITE(lcd_io_r, lcd_io_w)
@@ -384,7 +389,7 @@ static ADDRESS_MAP_START(oz750_banked_map, AS_PROGRAM, 8, oz750_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rex6000_mem, AS_PROGRAM, 8, rex6000_state)
+ADDRESS_MAP_START(rex6000_state::rex6000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_DEVREADWRITE("flash0a", intelfsh8_device, read, write)
AM_RANGE( 0x8000, 0x9fff ) AM_DEVREADWRITE("bank0", address_map_bank_device, read8, write8)
@@ -392,7 +397,7 @@ static ADDRESS_MAP_START(rex6000_mem, AS_PROGRAM, 8, rex6000_state)
AM_RANGE( 0xc000, 0xffff ) AM_RAMBANK("ram") //system RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rex6000_io, AS_IO, 8, rex6000_state)
+ADDRESS_MAP_START(rex6000_state::rex6000_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x04 ) AM_READWRITE(bankswitch_r, bankswitch_w)
@@ -406,7 +411,7 @@ static ADDRESS_MAP_START( rex6000_io, AS_IO, 8, rex6000_state)
AM_RANGE( 0x60, 0x6f ) AM_READWRITE(touchscreen_r, touchscreen_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oz750_io, AS_IO, 8, oz750_state)
+ADDRESS_MAP_START(oz750_state::oz750_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x04 ) AM_READWRITE(bankswitch_r, bankswitch_w)
diff --git a/src/mame/drivers/rgum.cpp b/src/mame/drivers/rgum.cpp
index 7eedc0b2dc2..1caa6888f71 100644
--- a/src/mame/drivers/rgum.cpp
+++ b/src/mame/drivers/rgum.cpp
@@ -44,6 +44,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void rgum(machine_config &config);
+ void rgum_map(address_map &map);
};
@@ -73,7 +74,7 @@ uint32_t rgum_state::screen_update_royalgum(screen_device &screen, bitmap_ind16
return 0;
}
-static ADDRESS_MAP_START( rgum_map, AS_PROGRAM, 8, rgum_state )
+ADDRESS_MAP_START(rgum_state::rgum_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM //not all of it?
AM_RANGE(0x0800, 0x0800) AM_DEVWRITE("crtc", mc6845_device, address_w)
diff --git a/src/mame/drivers/risc2500.cpp b/src/mame/drivers/risc2500.cpp
index 1a1915915ba..294dc74ce39 100644
--- a/src/mame/drivers/risc2500.cpp
+++ b/src/mame/drivers/risc2500.cpp
@@ -48,6 +48,7 @@ public:
void remove_boot_rom();
void risc2500(machine_config &config);
+ void risc2500_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
@@ -287,7 +288,7 @@ void risc2500_state::machine_reset()
install_boot_rom();
}
-static ADDRESS_MAP_START(risc2500_mem, AS_PROGRAM, 32, risc2500_state )
+ADDRESS_MAP_START(risc2500_state::risc2500_mem)
AM_RANGE( 0x00000000, 0x0001ffff ) AM_RAM
AM_RANGE( 0x01800000, 0x01800003 ) AM_READ(disable_boot_rom)
AM_RANGE( 0x01000000, 0x01000003 ) AM_READWRITE(p1000_r, p1000_w)
diff --git a/src/mame/drivers/riscpc.cpp b/src/mame/drivers/riscpc.cpp
index 0f690ddd150..463257d0c42 100644
--- a/src/mame/drivers/riscpc.cpp
+++ b/src/mame/drivers/riscpc.cpp
@@ -73,6 +73,7 @@ public:
void sarpc_j233(machine_config &config);
void a7000(machine_config &config);
void a7000p(machine_config &config);
+ void a7000_mem(address_map &map);
};
@@ -757,7 +758,7 @@ WRITE32_MEMBER( riscpc_state::a7000_iomd_w )
}
}
-static ADDRESS_MAP_START( a7000_mem, AS_PROGRAM, 32, riscpc_state)
+ADDRESS_MAP_START(riscpc_state::a7000_mem)
AM_RANGE(0x00000000, 0x003fffff) AM_MIRROR(0x00800000) AM_ROM AM_REGION("user1", 0)
// AM_RANGE(0x01000000, 0x01ffffff) AM_NOP //expansion ROM
// AM_RANGE(0x02000000, 0x02ffffff) AM_RAM //VRAM
diff --git a/src/mame/drivers/rltennis.cpp b/src/mame/drivers/rltennis.cpp
index efc61c347ab..201a4b16816 100644
--- a/src/mame/drivers/rltennis.cpp
+++ b/src/mame/drivers/rltennis.cpp
@@ -91,7 +91,7 @@ WRITE16_MEMBER(rltennis_state::snd2_w)
COMBINE_DATA(&m_data740000);
}
-static ADDRESS_MAP_START( rltennis_main, AS_PROGRAM, 16, rltennis_state )
+ADDRESS_MAP_START(rltennis_state::rltennis_main)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -179,7 +179,7 @@ void rltennis_state::machine_reset()
m_timer->adjust(attotime::from_hz(RLT_TIMER_FREQ));
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, rltennis_state )
+ADDRESS_MAP_START(rltennis_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb888_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/rm380z.cpp b/src/mame/drivers/rm380z.cpp
index aca5b6b1fc9..b12d6d1ccb9 100644
--- a/src/mame/drivers/rm380z.cpp
+++ b/src/mame/drivers/rm380z.cpp
@@ -171,7 +171,7 @@ Module timer tag static_vblank_timer name m_expire.seconds
#include "screen.h"
-static ADDRESS_MAP_START(rm380z_mem, AS_PROGRAM, 8, rm380z_state)
+ADDRESS_MAP_START(rm380z_state::rm380z_mem)
AM_RANGE( 0xe000, 0xefff ) AM_ROM AM_REGION(RM380Z_MAINCPU_TAG, 0)
AM_RANGE( 0xf000, 0xf5ff ) AM_READWRITE(videoram_read,videoram_write)
AM_RANGE( 0xf600, 0xf9ff ) AM_ROM AM_REGION(RM380Z_MAINCPU_TAG, 0x1000) /* Extra ROM space for COS4.0 */
@@ -180,7 +180,7 @@ static ADDRESS_MAP_START(rm380z_mem, AS_PROGRAM, 8, rm380z_state)
AM_RANGE( 0xfc00, 0xffff ) AM_READWRITE(hiram_read,hiram_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rm380z_io , AS_IO, 8, rm380z_state)
+ADDRESS_MAP_START(rm380z_state::rm380z_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xbf) AM_READWRITE(rm380z_portlow_r, rm380z_portlow_w)
AM_RANGE(0xc0, 0xc3) AM_DEVREADWRITE("wd1771", fd1771_device, read, write)
@@ -188,13 +188,13 @@ static ADDRESS_MAP_START( rm380z_io , AS_IO, 8, rm380z_state)
AM_RANGE(0xc5, 0xff) AM_READWRITE(rm380z_porthi_r, rm380z_porthi_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rm480z_mem, AS_PROGRAM, 8, rm380z_state)
+ADDRESS_MAP_START(rm380z_state::rm480z_mem)
AM_RANGE( 0x0000, 0xe7ff ) AM_RAM
AM_RANGE( 0xe800, 0xf7ff ) AM_ROM AM_REGION(RM380Z_MAINCPU_TAG, 0)
AM_RANGE( 0xf800, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rm480z_io , AS_IO, 8, rm380z_state)
+ADDRESS_MAP_START(rm380z_state::rm480z_io)
//AM_RANGE(0x00, 0x17) AM_RAM // videoram
//AM_RANGE(0x18, 0x18) AM_MIRROR(0xff00) // control port 0
//AM_RANGE(0x19, 0x19) AM_MIRROR(0xff00) // control port 1
diff --git a/src/mame/drivers/rmhaihai.cpp b/src/mame/drivers/rmhaihai.cpp
index cb29327b4bf..e31d0caf0fe 100644
--- a/src/mame/drivers/rmhaihai.cpp
+++ b/src/mame/drivers/rmhaihai.cpp
@@ -79,6 +79,10 @@ public:
void themj(machine_config &config);
void rmhaisei(machine_config &config);
void rmhaihai(machine_config &config);
+ void rmhaihai_io_map(address_map &map);
+ void rmhaihai_map(address_map &map);
+ void themj_io_map(address_map &map);
+ void themj_map(address_map &map);
};
@@ -227,7 +231,7 @@ MACHINE_RESET_MEMBER(rmhaihai_state,themj)
-static ADDRESS_MAP_START( rmhaihai_map, AS_PROGRAM, 8, rmhaihai_state )
+ADDRESS_MAP_START(rmhaihai_state::rmhaihai_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xa800, 0xafff) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
@@ -238,7 +242,7 @@ static ADDRESS_MAP_START( rmhaihai_map, AS_PROGRAM, 8, rmhaihai_state )
AM_RANGE(0xe000, 0xffff) AM_ROM /* rmhaisei only */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rmhaihai_io_map, AS_IO, 8, rmhaihai_state )
+ADDRESS_MAP_START(rmhaihai_state::rmhaihai_io_map)
AM_RANGE(0x0000, 0x7fff) AM_READ(samples_r)
AM_RANGE(0x8000, 0x8000) AM_READ(keyboard_r) AM_WRITENOP // ??
AM_RANGE(0x8001, 0x8001) AM_READNOP AM_WRITE(keyboard_w) // ??
@@ -251,7 +255,7 @@ static ADDRESS_MAP_START( rmhaihai_io_map, AS_IO, 8, rmhaihai_state )
AM_RANGE(0xbc0c, 0xbc0c) AM_WRITENOP // ??
ADDRESS_MAP_END
-static ADDRESS_MAP_START( themj_map, AS_PROGRAM, 8, rmhaihai_state )
+ADDRESS_MAP_START(rmhaihai_state::themj_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xa7ff) AM_RAM
@@ -261,7 +265,7 @@ static ADDRESS_MAP_START( themj_map, AS_PROGRAM, 8, rmhaihai_state )
AM_RANGE(0xe000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( themj_io_map, AS_IO, 8, rmhaihai_state )
+ADDRESS_MAP_START(rmhaihai_state::themj_io_map)
AM_RANGE(0x0000, 0x7fff) AM_READ(samples_r)
AM_RANGE(0x8000, 0x8000) AM_READ(keyboard_r) AM_WRITENOP // ??
AM_RANGE(0x8001, 0x8001) AM_READNOP AM_WRITE(keyboard_w) // ??
diff --git a/src/mame/drivers/rmnimbus.cpp b/src/mame/drivers/rmnimbus.cpp
index 2bbd5249183..13dc97c2f8b 100644
--- a/src/mame/drivers/rmnimbus.cpp
+++ b/src/mame/drivers/rmnimbus.cpp
@@ -36,7 +36,7 @@ static SLOT_INTERFACE_START(keyboard)
SLOT_INTERFACE("rmnkbd", RMNIMBUS_KEYBOARD)
SLOT_INTERFACE_END
-static ADDRESS_MAP_START(nimbus_mem, AS_PROGRAM, 16, rmnimbus_state )
+ADDRESS_MAP_START(rmnimbus_state::nimbus_mem)
AM_RANGE( 0x00000, 0x1FFFF ) AM_RAMBANK(RAM_BANK00_TAG)
AM_RANGE( 0x20000, 0x3FFFF ) AM_RAMBANK(RAM_BANK01_TAG)
AM_RANGE( 0x40000, 0x5FFFF ) AM_RAMBANK(RAM_BANK02_TAG)
@@ -48,7 +48,7 @@ static ADDRESS_MAP_START(nimbus_mem, AS_PROGRAM, 16, rmnimbus_state )
AM_RANGE( 0xF0000, 0xFFFFF ) AM_ROM AM_REGION(MAINCPU_TAG, 0x0f0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(nimbus_io, AS_IO, 16, rmnimbus_state )
+ADDRESS_MAP_START(rmnimbus_state::nimbus_io)
AM_RANGE( 0x0000, 0x0031) AM_READWRITE(nimbus_video_io_r, nimbus_video_io_w)
AM_RANGE( 0x0080, 0x0081) AM_READWRITE8(nimbus_mcu_r, nimbus_mcu_w, 0x00FF)
AM_RANGE( 0x0092, 0x0093) AM_READWRITE8(nimbus_iou_r, nimbus_iou_w, 0x00FF)
@@ -89,12 +89,12 @@ static INPUT_PORTS_START( nimbus )
INPUT_PORTS_END
-static ADDRESS_MAP_START(nimbus_iocpu_mem, AS_PROGRAM, 8, rmnimbus_state )
+ADDRESS_MAP_START(rmnimbus_state::nimbus_iocpu_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nimbus_iocpu_io , AS_IO, 8, rmnimbus_state )
+ADDRESS_MAP_START(rmnimbus_state::nimbus_iocpu_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x000FF) AM_READWRITE(nimbus_pc8031_iou_r, nimbus_pc8031_iou_w)
AM_RANGE(0x20000, 0x20004) AM_READWRITE(nimbus_pc8031_port_r, nimbus_pc8031_port_w)
diff --git a/src/mame/drivers/rmt32.cpp b/src/mame/drivers/rmt32.cpp
index e01770b979f..841565fcc47 100644
--- a/src/mame/drivers/rmt32.cpp
+++ b/src/mame/drivers/rmt32.cpp
@@ -217,6 +217,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(samples_timer_cb);
void mt32(machine_config &config);
+ void mt32_io(address_map &map);
+ void mt32_map(address_map &map);
private:
uint8_t lcd_data_buffer[256];
int lcd_data_buffer_pos;
@@ -332,7 +334,7 @@ PALETTE_INIT_MEMBER(mt32_state, mt32)
palette.set_pen_color(1, rgb_t(0, 255, 0));
}
-static ADDRESS_MAP_START( mt32_map, AS_PROGRAM, 8, mt32_state )
+ADDRESS_MAP_START(mt32_state::mt32_map)
AM_RANGE(0x0100, 0x0100) AM_WRITE(bank_w)
AM_RANGE(0x0200, 0x0200) AM_WRITE(so_w)
AM_RANGE(0x021a, 0x021a) AM_READ_PORT("SC0")
@@ -344,7 +346,7 @@ static ADDRESS_MAP_START( mt32_map, AS_PROGRAM, 8, mt32_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("fixed")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mt32_io, AS_IO, 16, mt32_state )
+ADDRESS_MAP_START(mt32_state::mt32_io)
AM_RANGE(i8x9x_device::A7, i8x9x_device::A7) AM_READ_PORT("A7")
AM_RANGE(i8x9x_device::SERIAL, i8x9x_device::SERIAL) AM_WRITE(midi_w)
AM_RANGE(i8x9x_device::P0, i8x9x_device::P0) AM_READ(port0_r)
diff --git a/src/mame/drivers/rockrage.cpp b/src/mame/drivers/rockrage.cpp
index 14471ce5019..548ea2db785 100644
--- a/src/mame/drivers/rockrage.cpp
+++ b/src/mame/drivers/rockrage.cpp
@@ -97,7 +97,7 @@ WRITE8_MEMBER(rockrage_state::rockrage_speech_w)
m_vlm->st((data >> 0) & 0x01);
}
-static ADDRESS_MAP_START( rockrage_map, AS_PROGRAM, 8, rockrage_state )
+ADDRESS_MAP_START(rockrage_state::rockrage_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("k007342", k007342_device, read, write) /* Color RAM + Video RAM */
AM_RANGE(0x2000, 0x21ff) AM_DEVREADWRITE("k007420", k007420_device, read, write) /* Sprite RAM */
AM_RANGE(0x2200, 0x23ff) AM_DEVREADWRITE("k007342", k007342_device, scroll_r, scroll_w) /* Scroll RAM */
@@ -117,7 +117,7 @@ static ADDRESS_MAP_START( rockrage_map, AS_PROGRAM, 8, rockrage_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rockrage_sound_map, AS_PROGRAM, 8, rockrage_state )
+ADDRESS_MAP_START(rockrage_state::rockrage_sound_map)
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("vlm", vlm5030_device, data_w) /* VLM5030 */
AM_RANGE(0x3000, 0x3000) AM_READ(rockrage_VLM5030_busy_r) /* VLM5030 */
AM_RANGE(0x4000, 0x4000) AM_WRITE(rockrage_speech_w) /* VLM5030 */
@@ -127,7 +127,7 @@ static ADDRESS_MAP_START( rockrage_sound_map, AS_PROGRAM, 8, rockrage_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rockrage_vlm_map, 0, 8, rockrage_state )
+ADDRESS_MAP_START(rockrage_state::rockrage_vlm_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/rocnrope.cpp b/src/mame/drivers/rocnrope.cpp
index c606c511c1a..724df7fb41e 100644
--- a/src/mame/drivers/rocnrope.cpp
+++ b/src/mame/drivers/rocnrope.cpp
@@ -60,7 +60,7 @@ WRITE_LINE_MEMBER(rocnrope_state::coin_counter_2_w)
*
*************************************/
-static ADDRESS_MAP_START( rocnrope_map, AS_PROGRAM, 8, rocnrope_state )
+ADDRESS_MAP_START(rocnrope_state::rocnrope_map)
AM_RANGE(0x3080, 0x3080) AM_READ_PORT("SYSTEM")
AM_RANGE(0x3081, 0x3081) AM_READ_PORT("P1")
AM_RANGE(0x3082, 0x3082) AM_READ_PORT("P2")
diff --git a/src/mame/drivers/rohga.cpp b/src/mame/drivers/rohga.cpp
index 5442a31d965..75e58cc6919 100644
--- a/src/mame/drivers/rohga.cpp
+++ b/src/mame/drivers/rohga.cpp
@@ -139,7 +139,7 @@ WRITE16_MEMBER(rohga_state::wizdfire_irq_ack_w)
/**********************************************************************************/
-static ADDRESS_MAP_START( rohga_map, AS_PROGRAM, 16, rohga_state )
+ADDRESS_MAP_START(rohga_state::rohga_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVWRITE("tilegen1", deco16ic_device, pf_control_w)
@@ -189,7 +189,7 @@ WRITE16_MEMBER( rohga_state::wf_protection_region_0_104_w )
}
-static ADDRESS_MAP_START( wizdfire_map, AS_PROGRAM, 16, rohga_state )
+ADDRESS_MAP_START(rohga_state::wizdfire_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x200fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_r, pf1_data_w)
@@ -239,7 +239,7 @@ WRITE16_MEMBER( rohga_state::nb_protection_region_0_146_w )
}
-static ADDRESS_MAP_START( nitrobal_map, AS_PROGRAM, 16, rohga_state )
+ADDRESS_MAP_START(rohga_state::nitrobal_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x200fff) AM_MIRROR(0x1000) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_r, pf1_data_w)
@@ -273,7 +273,7 @@ static ADDRESS_MAP_START( nitrobal_map, AS_PROGRAM, 16, rohga_state )
AM_RANGE(0xff8000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotb_base_map, AS_PROGRAM, 16, rohga_state )
+ADDRESS_MAP_START(rohga_state::hotb_base_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVWRITE("tilegen1", deco16ic_device, pf_control_w)
AM_RANGE(0x240000, 0x24000f) AM_DEVWRITE("tilegen2", deco16ic_device, pf_control_w)
@@ -301,21 +301,21 @@ static ADDRESS_MAP_START( hotb_base_map, AS_PROGRAM, 16, rohga_state )
AM_RANGE(0x3e0000, 0x3e1fff) AM_MIRROR(0x2000) AM_RAM_DEVWRITE("deco_common", decocomn_device, buffered_palette_w) AM_SHARE("paletteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( schmeisr_map, AS_PROGRAM, 16, rohga_state )
+ADDRESS_MAP_START(rohga_state::schmeisr_map)
AM_IMPORT_FROM(hotb_base_map)
AM_RANGE(0xff0000, 0xff7fff) AM_RAM /* Main ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hangzo_map, AS_PROGRAM, 16, rohga_state )
+ADDRESS_MAP_START(rohga_state::hangzo_map)
AM_IMPORT_FROM(hotb_base_map)
AM_RANGE(0x3f0000, 0x3f3fff) AM_RAM /* Main ram */
ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( rohga_sound_map, AS_PROGRAM, 8, rohga_state )
+ADDRESS_MAP_START(rohga_state::rohga_sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_NOP
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
@@ -327,7 +327,7 @@ static ADDRESS_MAP_START( rohga_sound_map, AS_PROGRAM, 8, rohga_state )
AM_RANGE(0x1ff400, 0x1ff403) AM_DEVWRITE("audiocpu", h6280_device, irq_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nitrobal_sound_map, AS_PROGRAM, 8, rohga_state )
+ADDRESS_MAP_START(rohga_state::nitrobal_sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_NOP
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
diff --git a/src/mame/drivers/rollerg.cpp b/src/mame/drivers/rollerg.cpp
index da65f2c4cda..980abd2a129 100644
--- a/src/mame/drivers/rollerg.cpp
+++ b/src/mame/drivers/rollerg.cpp
@@ -77,7 +77,7 @@ READ8_MEMBER(rollerg_state::pip_r)
return 0x7f;
}
-static ADDRESS_MAP_START( rollerg_map, AS_PROGRAM, 8, rollerg_state )
+ADDRESS_MAP_START(rollerg_state::rollerg_map)
AM_RANGE(0x0010, 0x0010) AM_WRITE(rollerg_0010_w)
AM_RANGE(0x0020, 0x0020) AM_DEVREADWRITE("watchdog", watchdog_timer_device, reset_r, reset_w)
AM_RANGE(0x0030, 0x0031) AM_DEVREADWRITE("k053260", k053260_device, main_read, main_write)
@@ -99,7 +99,7 @@ static ADDRESS_MAP_START( rollerg_map, AS_PROGRAM, 8, rollerg_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rollerg_sound_map, AS_PROGRAM, 8, rollerg_state )
+ADDRESS_MAP_START(rollerg_state::rollerg_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa02f) AM_DEVREADWRITE("k053260", k053260_device, read, write)
diff --git a/src/mame/drivers/rollext.cpp b/src/mame/drivers/rollext.cpp
index 4c0f546b3a8..584c35e486c 100644
--- a/src/mame/drivers/rollext.cpp
+++ b/src/mame/drivers/rollext.cpp
@@ -312,6 +312,7 @@ public:
void preprocess_texture_data();
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void rollext(machine_config &config);
+ void memmap(address_map &map);
};
void rollext_state::preprocess_texture_data()
@@ -508,7 +509,7 @@ WRITE32_MEMBER(rollext_state::cmd_callback)
// Master Processor memory map
-static ADDRESS_MAP_START(memmap, AS_PROGRAM, 32, rollext_state)
+ADDRESS_MAP_START(rollext_state::memmap)
AM_RANGE(0x40000000, 0x40ffffff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0x60000000, 0x600fffff) AM_RAM AM_SHARE("disp_ram")
AM_RANGE(0x80000000, 0x8000ffff) AM_RAM AM_SHARE("palette_ram")
diff --git a/src/mame/drivers/rollrace.cpp b/src/mame/drivers/rollrace.cpp
index 49db3efb2dd..d95c6974882 100644
--- a/src/mame/drivers/rollrace.cpp
+++ b/src/mame/drivers/rollrace.cpp
@@ -64,7 +64,7 @@ WRITE_LINE_MEMBER(rollrace_state::coin_counter_2_w)
machine().bookkeeping().coin_counter_w(1, state);
}
-static ADDRESS_MAP_START( rollrace_map, AS_PROGRAM, 8, rollrace_state )
+ADDRESS_MAP_START(rollrace_state::rollrace_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROM /* only rollace2 */
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -86,7 +86,7 @@ static ADDRESS_MAP_START( rollrace_map, AS_PROGRAM, 8, rollrace_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rollrace_sound_map, AS_PROGRAM, 8, rollrace_state )
+ADDRESS_MAP_START(rollrace_state::rollrace_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x2fff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(sound_nmi_mask_w)
diff --git a/src/mame/drivers/ron.cpp b/src/mame/drivers/ron.cpp
index c8542580198..257c4a5d733 100644
--- a/src/mame/drivers/ron.cpp
+++ b/src/mame/drivers/ron.cpp
@@ -67,6 +67,10 @@ public:
DECLARE_WRITE8_MEMBER(ay_pa_w);
void ron(machine_config &config);
+ void ron_audio_io(address_map &map);
+ void ron_audio_map(address_map &map);
+ void ron_io(address_map &map);
+ void ron_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -191,7 +195,7 @@ WRITE8_MEMBER(ron_state::sound_cmd_w)
m_audiocpu->set_input_line(INPUT_LINE_RESET, BIT(data, 7) ? CLEAR_LINE : ASSERT_LINE);
}
-static ADDRESS_MAP_START( ron_map, AS_PROGRAM, 8, ron_state )
+ADDRESS_MAP_START(ron_state::ron_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x8400, 0x87ff) AM_RAM
@@ -199,7 +203,7 @@ static ADDRESS_MAP_START( ron_map, AS_PROGRAM, 8, ron_state )
AM_RANGE(0x8c00, 0x8fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ron_io, AS_IO, 8, ron_state )
+ADDRESS_MAP_START(ron_state::ron_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x01) AM_READ(p1_mux_r)
@@ -209,11 +213,11 @@ static ADDRESS_MAP_START( ron_io, AS_IO, 8, ron_state )
AM_RANGE(0x0a, 0x0a) AM_WRITE(output_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ron_audio_map, AS_PROGRAM, 8, ron_state)
+ADDRESS_MAP_START(ron_state::ron_audio_map)
AM_RANGE(0x0000,0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ron_audio_io, AS_IO, 8, ron_state)
+ADDRESS_MAP_START(ron_state::ron_audio_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/rotaryf.cpp b/src/mame/drivers/rotaryf.cpp
index 92e892c9ef6..193a932c1bb 100644
--- a/src/mame/drivers/rotaryf.cpp
+++ b/src/mame/drivers/rotaryf.cpp
@@ -58,6 +58,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(rotaryf_interrupt);
void rotaryf(machine_config &config);
+ void rotaryf_io_map(address_map &map);
+ void rotaryf_map(address_map &map);
};
@@ -192,14 +194,14 @@ uint32_t rotaryf_state::screen_update(screen_device &screen, bitmap_rgb32 &bitma
}
-static ADDRESS_MAP_START( rotaryf_map, AS_PROGRAM, 8, rotaryf_state )
+ADDRESS_MAP_START(rotaryf_state::rotaryf_map)
AM_RANGE(0x0000, 0x17ff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x7000, 0x73ff) AM_MIRROR(0x0c00) AM_RAM
AM_RANGE(0x8000, 0x9fff) AM_MIRROR(0x4000) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xa000, 0xa1ff) AM_RAM /* writes 00, 18, 27, 3C, 7E, FE to A019, A039, A059... A179 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rotaryf_io_map, AS_IO, 8, rotaryf_state )
+ADDRESS_MAP_START(rotaryf_state::rotaryf_io_map)
AM_RANGE(0x02, 0x02) AM_WRITENOP
AM_RANGE(0x04, 0x04) AM_WRITENOP
AM_RANGE(0x07, 0x07) AM_WRITENOP
diff --git a/src/mame/drivers/roul.cpp b/src/mame/drivers/roul.cpp
index e75f009a375..963d4246ec6 100644
--- a/src/mame/drivers/roul.cpp
+++ b/src/mame/drivers/roul.cpp
@@ -100,6 +100,10 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void roul(machine_config &config);
+ void roul_cpu_io_map(address_map &map);
+ void roul_map(address_map &map);
+ void sound_cpu_io_map(address_map &map);
+ void sound_map(address_map &map);
};
@@ -200,12 +204,12 @@ WRITE8_MEMBER(roul_state::ball_w)
m_lamp_old = lamp;
}
-static ADDRESS_MAP_START( roul_map, AS_PROGRAM, 8, roul_state )
+ADDRESS_MAP_START(roul_state::roul_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roul_cpu_io_map, AS_IO, 8, roul_state )
+ADDRESS_MAP_START(roul_state::roul_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf4) AM_WRITE(blitter_cmd_w)
AM_RANGE(0xf5, 0xf5) AM_READ(blitter_status_r)
@@ -216,12 +220,12 @@ static ADDRESS_MAP_START( roul_cpu_io_map, AS_IO, 8, roul_state )
AM_RANGE(0xfe, 0xfe) AM_WRITE(sound_latch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, roul_state )
+ADDRESS_MAP_START(roul_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu_io_map, AS_IO, 8, roul_state )
+ADDRESS_MAP_START(roul_state::sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/route16.cpp b/src/mame/drivers/route16.cpp
index da1b8f7232b..58cbf7bec7f 100644
--- a/src/mame/drivers/route16.cpp
+++ b/src/mame/drivers/route16.cpp
@@ -217,7 +217,7 @@ WRITE8_MEMBER(route16_state::speakres_out2_w)
*
*************************************/
-static ADDRESS_MAP_START( route16_cpu1_map, AS_PROGRAM, 8, route16_state )
+ADDRESS_MAP_START(route16_state::route16_cpu1_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3000, 0x3001) AM_READ(route16_prot_read)
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(route16_sharedram_w<true>) AM_SHARE("sharedram")
@@ -228,7 +228,7 @@ static ADDRESS_MAP_START( route16_cpu1_map, AS_PROGRAM, 8, route16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( routex_cpu1_map, AS_PROGRAM, 8, route16_state )
+ADDRESS_MAP_START(route16_state::routex_cpu1_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(route16_sharedram_w<true>) AM_SHARE("sharedram")
AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(out0_w)
@@ -239,7 +239,7 @@ static ADDRESS_MAP_START( routex_cpu1_map, AS_PROGRAM, 8, route16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stratvox_cpu1_map, AS_PROGRAM, 8, route16_state )
+ADDRESS_MAP_START(route16_state::stratvox_cpu1_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(out0_w)
@@ -249,7 +249,7 @@ static ADDRESS_MAP_START( stratvox_cpu1_map, AS_PROGRAM, 8, route16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( speakres_cpu1_map, AS_PROGRAM, 8, route16_state )
+ADDRESS_MAP_START(route16_state::speakres_cpu1_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(out0_w)
@@ -260,7 +260,7 @@ static ADDRESS_MAP_START( speakres_cpu1_map, AS_PROGRAM, 8, route16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ttmahjng_cpu1_map, AS_PROGRAM, 8, route16_state )
+ADDRESS_MAP_START(route16_state::ttmahjng_cpu1_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(out0_w)
@@ -272,14 +272,14 @@ static ADDRESS_MAP_START( ttmahjng_cpu1_map, AS_PROGRAM, 8, route16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( route16_cpu2_map, AS_PROGRAM, 8, route16_state )
+ADDRESS_MAP_START(route16_state::route16_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(route16_sharedram_w<false>) AM_SHARE("sharedram")
AM_RANGE(0x8000, 0xbfff) AM_RAM AM_SHARE("videoram2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stratvox_cpu2_map, AS_PROGRAM, 8, route16_state )
+ADDRESS_MAP_START(route16_state::stratvox_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2800, 0x2800) AM_DEVWRITE("dac", dac_byte_interface, write)
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("sharedram")
@@ -287,7 +287,7 @@ static ADDRESS_MAP_START( stratvox_cpu2_map, AS_PROGRAM, 8, route16_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu1_io_map, AS_IO, 8, route16_state )
+ADDRESS_MAP_START(route16_state::cpu1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x1ff)
AM_RANGE(0x0000, 0x0000) AM_MIRROR(0x00ff) AM_DEVWRITE("ay8910", ay8910_device, data_w)
AM_RANGE(0x0100, 0x0100) AM_MIRROR(0x00ff) AM_DEVWRITE("ay8910", ay8910_device, address_w)
@@ -700,7 +700,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(route16_state::ttmahjng, route16)
MCFG_CPU_MODIFY("cpu1")
MCFG_CPU_PROGRAM_MAP(ttmahjng_cpu1_map)
- MCFG_CPU_IO_MAP(0)
+ MCFG_DEVICE_REMOVE_ADDRESS_MAP(AS_IO)
MCFG_MACHINE_START_OVERRIDE(route16_state, ttmahjng)
diff --git a/src/mame/drivers/rowamet.cpp b/src/mame/drivers/rowamet.cpp
index bbd5e17f330..e0b4685700a 100644
--- a/src/mame/drivers/rowamet.cpp
+++ b/src/mame/drivers/rowamet.cpp
@@ -50,6 +50,9 @@ public:
DECLARE_WRITE8_MEMBER(io_w);
TIMER_DEVICE_CALLBACK_MEMBER(timer_a);
void rowamet(machine_config &config);
+ void rowamet_map(address_map &map);
+ void rowamet_sub_io(address_map &map);
+ void rowamet_sub_map(address_map &map);
private:
uint8_t m_out_offs;
uint8_t m_sndcmd;
@@ -61,7 +64,7 @@ private:
};
-static ADDRESS_MAP_START( rowamet_map, AS_PROGRAM, 8, rowamet_state )
+ADDRESS_MAP_START(rowamet_state::rowamet_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x2800, 0x2800) AM_READ_PORT("X0")
AM_RANGE(0x2801, 0x2801) AM_READ_PORT("X1")
@@ -78,12 +81,12 @@ static ADDRESS_MAP_START( rowamet_map, AS_PROGRAM, 8, rowamet_state )
AM_RANGE(0x40a0, 0x40ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rowamet_sub_map, AS_PROGRAM, 8, rowamet_state )
+ADDRESS_MAP_START(rowamet_state::rowamet_sub_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0x2000)
AM_RANGE(0x1000, 0x17ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rowamet_sub_io, AS_IO, 8, rowamet_state )
+ADDRESS_MAP_START(rowamet_state::rowamet_sub_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(sound_r,mute_w)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("dac", dac_byte_interface, write)
diff --git a/src/mame/drivers/royalmah.cpp b/src/mame/drivers/royalmah.cpp
index 0a6842e082e..185ac69cb9e 100644
--- a/src/mame/drivers/royalmah.cpp
+++ b/src/mame/drivers/royalmah.cpp
@@ -244,6 +244,39 @@ public:
void mjclub(machine_config &config);
void makaijan(machine_config &config);
void janyoup2(machine_config &config);
+ void cafetime_map(address_map &map);
+ void daisyari_iomap(address_map &map);
+ void dondenmj_iomap(address_map &map);
+ void ippatsu_iomap(address_map &map);
+ void janoh_map(address_map &map);
+ void janoh_sub_iomap(address_map &map);
+ void janoh_sub_map(address_map &map);
+ void janptr96_iomap(address_map &map);
+ void janptr96_map(address_map &map);
+ void jansou_map(address_map &map);
+ void jansou_sub_iomap(address_map &map);
+ void jansou_sub_map(address_map &map);
+ void janyoup2_iomap(address_map &map);
+ void majs101b_iomap(address_map &map);
+ void makaijan_iomap(address_map &map);
+ void mjapinky_iomap(address_map &map);
+ void mjapinky_map(address_map &map);
+ void mjclub_iomap(address_map &map);
+ void mjdejavu_map(address_map &map);
+ void mjderngr_iomap(address_map &map);
+ void mjdiplob_iomap(address_map &map);
+ void mjifb_map(address_map &map);
+ void mjtensin_map(address_map &map);
+ void mjvegasa_map(address_map &map);
+ void mjyarou_iomap(address_map &map);
+ void royalmah_iomap(address_map &map);
+ void royalmah_map(address_map &map);
+ void seljan_iomap(address_map &map);
+ void seljan_map(address_map &map);
+ void suzume_iomap(address_map &map);
+ void tahjong_iomap(address_map &map);
+ void tahjong_map(address_map &map);
+ void tontonb_iomap(address_map &map);
protected:
virtual void machine_start() override;
@@ -573,14 +606,14 @@ WRITE8_MEMBER(royalmah_state::mjclub_bank_w)
}
-static ADDRESS_MAP_START( royalmah_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::royalmah_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_WRITENOP
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK( "mainbank" ) // banked ROMs not present in royalmah
AM_RANGE( 0x8000, 0xffff ) AM_WRITEONLY AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjapinky_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjapinky_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_WRITENOP
AM_RANGE( 0x7000, 0x77ff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x7800, 0x7fff ) AM_RAM
@@ -589,7 +622,7 @@ static ADDRESS_MAP_START( mjapinky_map, AS_PROGRAM, 8, royalmah_state )
AM_RANGE( 0x8000, 0x8000 ) AM_READ(mjapinky_dsw_r )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tahjong_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::tahjong_map)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM AM_WRITENOP
AM_RANGE( 0x4000, 0x6fff ) AM_ROMBANK("mainbank")
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
@@ -599,7 +632,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( royalmah_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::royalmah_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -607,7 +640,7 @@ static ADDRESS_MAP_START( royalmah_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x11, 0x11 ) AM_READ_PORT("SYSTEM") AM_WRITE(input_port_select_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ippatsu_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::ippatsu_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -617,18 +650,18 @@ static ADDRESS_MAP_START( ippatsu_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x13, 0x13 ) AM_READ_PORT("DSW3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( janyoup2_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::janyoup2_iomap)
AM_IMPORT_FROM( ippatsu_iomap )
AM_RANGE(0x20, 0x20) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x21, 0x21) AM_DEVWRITE("crtc", mc6845_device, register_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( seljan_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::seljan_map)
AM_RANGE( 0x0000, 0x8fff ) AM_ROM AM_WRITENOP
AM_RANGE( 0xe000, 0xefff ) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( seljan_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::seljan_iomap)
AM_RANGE( 0x0001, 0x0001 ) AM_MIRROR(0x7f00) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x0002, 0x0003 ) AM_MIRROR(0x7f00) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
AM_RANGE( 0x0010, 0x0010 ) AM_MIRROR(0x7f00) AM_READ_PORT("DSW1") AM_WRITE(royalmah_palbank_w )
@@ -640,7 +673,7 @@ static ADDRESS_MAP_START( seljan_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x7e00, 0xffff ) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tahjong_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::tahjong_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -650,7 +683,7 @@ static ADDRESS_MAP_START( tahjong_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x13, 0x13 ) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( suzume_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::suzume_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -660,7 +693,7 @@ static ADDRESS_MAP_START( suzume_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x81, 0x81 ) AM_WRITE(suzume_bank_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjyarou_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjyarou_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -669,7 +702,7 @@ static ADDRESS_MAP_START( mjyarou_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x12, 0x12 ) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dondenmj_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::dondenmj_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -680,7 +713,7 @@ static ADDRESS_MAP_START( dondenmj_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x87, 0x87 ) AM_WRITE(dynax_bank_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( makaijan_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::makaijan_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -691,7 +724,7 @@ static ADDRESS_MAP_START( makaijan_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x86, 0x86 ) AM_WRITE(dynax_bank_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( daisyari_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::daisyari_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -700,7 +733,7 @@ static ADDRESS_MAP_START( daisyari_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0xc0, 0xc0 ) AM_READWRITE(daisyari_dsw_r, daisyari_bank_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjclub_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjclub_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_READWRITE(mjclub_dsw_r, mjclub_bank_w )
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
@@ -709,7 +742,7 @@ static ADDRESS_MAP_START( mjclub_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x11, 0x11 ) AM_READ_PORT("SYSTEM") AM_WRITE(input_port_select_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjdiplob_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjdiplob_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -720,7 +753,7 @@ static ADDRESS_MAP_START( mjdiplob_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x63, 0x63 ) AM_READ_PORT("DSW3") // DSW3
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tontonb_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::tontonb_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -731,7 +764,7 @@ static ADDRESS_MAP_START( tontonb_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x47, 0x47 ) AM_READ_PORT("DSW3") // DSW3
ADDRESS_MAP_END
-static ADDRESS_MAP_START( majs101b_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::majs101b_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -740,7 +773,7 @@ static ADDRESS_MAP_START( majs101b_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x00, 0x00 ) AM_READWRITE(majs101b_dsw_r, dynax_bank_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjderngr_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjderngr_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
@@ -753,7 +786,7 @@ static ADDRESS_MAP_START( mjderngr_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x60, 0x60 ) AM_WRITE(mjderngr_palbank_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjapinky_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjapinky_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_WRITE(mjapinky_bank_w )
AM_RANGE( 0x01, 0x01 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
@@ -763,7 +796,7 @@ static ADDRESS_MAP_START( mjapinky_iomap, AS_IO, 8, royalmah_state )
AM_RANGE( 0x11, 0x11 ) AM_READ_PORT("SYSTEM") AM_WRITE(input_port_select_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( janoh_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::janoh_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_WRITENOP
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xffff ) AM_WRITEONLY AM_SHARE("videoram")
@@ -773,7 +806,7 @@ ADDRESS_MAP_END
/* this CPU makes little sense - what is it for? why so many addresses accessed?
-- it puts a value in shared ram to allow the main CPU to boot, then.. ?
*/
-static ADDRESS_MAP_START( janoh_sub_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::janoh_sub_map)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4100, 0x413f ) AM_RAM
AM_RANGE( 0x6000, 0x607f ) AM_RAM
@@ -782,7 +815,7 @@ static ADDRESS_MAP_START( janoh_sub_map, AS_PROGRAM, 8, royalmah_state )
AM_RANGE( 0xf000, 0xffff ) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( janoh_sub_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::janoh_sub_iomap)
ADDRESS_MAP_END
/****************************************************************************
@@ -867,7 +900,7 @@ WRITE8_MEMBER(royalmah_state::jansou_sound_w)
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( jansou_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::jansou_map)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM AM_WRITENOP
AM_RANGE( 0x6000, 0x600f ) AM_WRITE(jansou_colortable_w)
@@ -885,12 +918,12 @@ static ADDRESS_MAP_START( jansou_map, AS_PROGRAM, 8, royalmah_state )
AM_RANGE( 0x8000, 0xffff ) AM_WRITEONLY AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jansou_sub_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::jansou_sub_map)
AM_RANGE( 0x0000, 0xffff ) AM_ROM AM_WRITENOP // tries to write to the stack at irq generation
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jansou_sub_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::jansou_sub_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("dac", dac_byte_interface, write)
ADDRESS_MAP_END
@@ -900,7 +933,7 @@ ADDRESS_MAP_END
Janputer '96
****************************************************************************/
-static ADDRESS_MAP_START( janptr96_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::janptr96_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fff ) AM_RAMBANK("bank3") AM_SHARE("nvram") // nvram
AM_RANGE( 0x7000, 0x7fff ) AM_RAMBANK("rambank") // banked nvram
@@ -948,7 +981,7 @@ WRITE8_MEMBER(royalmah_state::janptr96_coin_counter_w)
machine().bookkeeping().coin_counter_w(1,data & 1); // out
}
-static ADDRESS_MAP_START( janptr96_iomap, AS_IO, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::janptr96_iomap)
AM_RANGE( 0x00, 0x00 ) AM_MIRROR(0xff00) AM_WRITE(janptr96_rombank_w ) // BANK ROM Select
AM_RANGE( 0x20, 0x20 ) AM_MIRROR(0xff00) AM_READWRITE(janptr96_unknown_r, janptr96_rambank_w )
AM_RANGE( 0x50, 0x50 ) AM_MIRROR(0xff00) AM_WRITE(mjderngr_palbank_w )
@@ -1023,7 +1056,7 @@ WRITE8_MEMBER(royalmah_state::mjifb_videoram_w)
m_videoram[offset + 0x4000] = data;
}
-static ADDRESS_MAP_START( mjifb_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjifb_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xbfff ) AM_READWRITE(mjifb_rom_io_r, mjifb_rom_io_w) AM_SHARE("videoram")
@@ -1113,7 +1146,7 @@ WRITE8_MEMBER(royalmah_state::mjdejavu_rom_io_w)
logerror("%04X: unmapped input write at %04X = %02X\n", m_maincpu->pc(), offset,data);
}
-static ADDRESS_MAP_START( mjdejavu_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjdejavu_map)
AM_RANGE( 0x0000, 0x6fff ) AM_ROM
AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x8000, 0xbfff ) AM_READWRITE(mjdejavu_rom_io_r, mjdejavu_rom_io_w) AM_SHARE("videoram")
@@ -1145,7 +1178,7 @@ WRITE8_MEMBER(royalmah_state::mjtensin_6ff3_w)
mjtensin_update_rombank();
}
-static ADDRESS_MAP_START( mjtensin_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjtensin_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x6fbf ) AM_RAM
AM_RANGE( 0x6fc1, 0x6fc1 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
@@ -1208,7 +1241,7 @@ WRITE8_MEMBER(royalmah_state::cafetime_7fe3_w)
// popmessage("%02x",data);
}
-static ADDRESS_MAP_START( cafetime_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::cafetime_map)
AM_RANGE( 0x0000, 0x5fff ) AM_ROM
AM_RANGE( 0x6000, 0x7eff ) AM_RAM AM_SHARE("nvram")
AM_RANGE( 0x7fc1, 0x7fc1 ) AM_DEVREAD("aysnd", ay8910_device, data_r)
@@ -1298,7 +1331,7 @@ READ8_MEMBER(royalmah_state::mjvegasa_12500_r)
return 0xff;
}
-static ADDRESS_MAP_START( mjvegasa_map, AS_PROGRAM, 8, royalmah_state )
+ADDRESS_MAP_START(royalmah_state::mjvegasa_map)
AM_RANGE( 0x00000, 0x05fff ) AM_ROM
AM_RANGE( 0x06000, 0x07fff ) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/rpunch.cpp b/src/mame/drivers/rpunch.cpp
index 749746aa93f..57c854f4112 100644
--- a/src/mame/drivers/rpunch.cpp
+++ b/src/mame/drivers/rpunch.cpp
@@ -202,7 +202,7 @@ WRITE8_MEMBER(rpunch_state::upd_data_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, rpunch_state )
+ADDRESS_MAP_START(rpunch_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x04ffff) AM_RAM AM_SHARE("bitmapram")
@@ -229,7 +229,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, rpunch_state )
+ADDRESS_MAP_START(rpunch_state::sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0xf200, 0xf200) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/rsc55.cpp b/src/mame/drivers/rsc55.cpp
index 4794c2ef581..30717f254b0 100644
--- a/src/mame/drivers/rsc55.cpp
+++ b/src/mame/drivers/rsc55.cpp
@@ -50,6 +50,8 @@ public:
sc55_state(const machine_config &mconfig, device_type type, const char *tag);
void sc55(machine_config &config);
+ void sc55_io(address_map &map);
+ void sc55_map(address_map &map);
};
sc55_state::sc55_state(const machine_config &mconfig, device_type type, const char *tag) :
@@ -58,11 +60,11 @@ sc55_state::sc55_state(const machine_config &mconfig, device_type type, const ch
{
}
-static ADDRESS_MAP_START( sc55_map, AS_PROGRAM, 8, sc55_state )
+ADDRESS_MAP_START(sc55_state::sc55_map)
AM_RANGE(0x1000, 0x3fff) AM_ROM AM_REGION("maincpu", 0x1000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sc55_io, AS_IO, 16, sc55_state )
+ADDRESS_MAP_START(sc55_state::sc55_io)
ADDRESS_MAP_END
MACHINE_CONFIG_START(sc55_state::sc55)
diff --git a/src/mame/drivers/rt1715.cpp b/src/mame/drivers/rt1715.cpp
index 033191be35d..60a3e4263ae 100644
--- a/src/mame/drivers/rt1715.cpp
+++ b/src/mame/drivers/rt1715.cpp
@@ -46,6 +46,10 @@ public:
void rt1715(machine_config &config);
void rt1715w(machine_config &config);
+ void k7658_io(address_map &map);
+ void k7658_mem(address_map &map);
+ void rt1715_io(address_map &map);
+ void rt1715_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -185,12 +189,12 @@ PALETTE_INIT_MEMBER(rt1715_state, rt1715)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( rt1715_mem, AS_PROGRAM, 8, rt1715_state )
+ADDRESS_MAP_START(rt1715_state::rt1715_mem)
AM_RANGE(0x0000, 0x07ff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank3")
AM_RANGE(0x0800, 0xffff) AM_RAMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rt1715_io, AS_IO, 8, rt1715_state )
+ADDRESS_MAP_START(rt1715_state::rt1715_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("a71", z80pio_device, read_alt, write_alt)
@@ -202,12 +206,12 @@ static ADDRESS_MAP_START( rt1715_io, AS_IO, 8, rt1715_state )
AM_RANGE(0x28, 0x28) AM_WRITE(rt1715_rom_disable)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( k7658_mem, AS_PROGRAM, 8, rt1715_state )
+ADDRESS_MAP_START(rt1715_state::k7658_mem)
AM_RANGE(0x0000, 0xffff) AM_WRITE(k7658_data_w)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0xf800) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( k7658_io, AS_IO, 8, rt1715_state )
+ADDRESS_MAP_START(rt1715_state::k7658_io)
AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x8000) AM_READ(k7658_led1_r)
AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x8000) AM_READ(k7658_led2_r)
AM_RANGE(0x8000, 0x9fff) AM_READ(k7658_data_r)
diff --git a/src/mame/drivers/runaway.cpp b/src/mame/drivers/runaway.cpp
index b3ae3ff0ca7..3058adc9f51 100644
--- a/src/mame/drivers/runaway.cpp
+++ b/src/mame/drivers/runaway.cpp
@@ -82,7 +82,7 @@ WRITE8_MEMBER(runaway_state::runaway_irq_ack_w)
}
-static ADDRESS_MAP_START( runaway_map, AS_PROGRAM, 8, runaway_state )
+ADDRESS_MAP_START(runaway_state::runaway_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07bf) AM_RAM_WRITE(runaway_video_ram_w) AM_SHARE("video_ram")
AM_RANGE(0x07c0, 0x07ff) AM_RAM AM_SHARE("sprite_ram")
diff --git a/src/mame/drivers/rungun.cpp b/src/mame/drivers/rungun.cpp
index 8a4fe3e5d5e..4fa03f6f0eb 100644
--- a/src/mame/drivers/rungun.cpp
+++ b/src/mame/drivers/rungun.cpp
@@ -176,7 +176,7 @@ WRITE16_MEMBER(rungun_state::palette_write)
cur_paldevice.set_pen_color(offset,pal5bit(r),pal5bit(g),pal5bit(b));
}
-static ADDRESS_MAP_START( rungun_map, AS_PROGRAM, 16, rungun_state )
+ADDRESS_MAP_START(rungun_state::rungun_map)
AM_RANGE(0x000000, 0x2fffff) AM_ROM // main program + data
AM_RANGE(0x300000, 0x3007ff) AM_READWRITE(palette_read,palette_write)
AM_RANGE(0x380000, 0x39ffff) AM_RAM // work RAM
@@ -236,7 +236,7 @@ WRITE_LINE_MEMBER(rungun_state::k054539_nmi_gen)
/* sound (this should be split into audio/xexex.c or pregx.c or so someday) */
-static ADDRESS_MAP_START( rungun_sound_map, AS_PROGRAM, 8, rungun_state )
+ADDRESS_MAP_START(rungun_state::rungun_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -250,7 +250,7 @@ static ADDRESS_MAP_START( rungun_sound_map, AS_PROGRAM, 8, rungun_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rungun_k054539_map, 0, 8, rungun_state )
+ADDRESS_MAP_START(rungun_state::rungun_k054539_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_REGION("k054539", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/rvoice.cpp b/src/mame/drivers/rvoice.cpp
index 99546098fbe..0b21d8708c9 100644
--- a/src/mame/drivers/rvoice.cpp
+++ b/src/mame/drivers/rvoice.cpp
@@ -89,6 +89,8 @@ public:
void null_kbd_put(u8 data);
required_device<cpu_device> m_maincpu;
void rvoicepc(machine_config &config);
+ void hd63701_main_io(address_map &map);
+ void hd63701_main_mem(address_map &map);
};
@@ -332,7 +334,7 @@ WRITE8_MEMBER(rvoice_state::main_hd63701_internal_registers_w)
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(hd63701_main_mem, AS_PROGRAM, 8, rvoice_state )
+ADDRESS_MAP_START(rvoice_state::hd63701_main_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0027) AM_READWRITE(main_hd63701_internal_registers_r, main_hd63701_internal_registers_w) // INTERNAL REGS
AM_RANGE(0x0040, 0x005f) AM_RAM // INTERNAL RAM (overlaps acia)
@@ -342,7 +344,7 @@ static ADDRESS_MAP_START(hd63701_main_mem, AS_PROGRAM, 8, rvoice_state )
AM_RANGE(0x8000, 0xffff) AM_ROM // 27512 EPROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(hd63701_main_io, AS_IO, 8, rvoice_state )
+ADDRESS_MAP_START(rvoice_state::hd63701_main_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/rx78.cpp b/src/mame/drivers/rx78.cpp
index a2c26f232df..10d4bceb5c3 100644
--- a/src/mame/drivers/rx78.cpp
+++ b/src/mame/drivers/rx78.cpp
@@ -100,6 +100,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void rx78(machine_config &config);
+ void rx78_io(address_map &map);
+ void rx78_mem(address_map &map);
private:
uint8_t m_vram_read_bank;
uint8_t m_vram_write_bank;
@@ -270,7 +272,7 @@ WRITE8_MEMBER( rx78_state::vdp_pri_mask_w )
}
-static ADDRESS_MAP_START(rx78_mem, AS_PROGRAM, 8, rx78_state)
+ADDRESS_MAP_START(rx78_state::rx78_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("roms", 0)
//AM_RANGE(0x2000, 0x5fff) // mapped by the cartslot
@@ -279,7 +281,7 @@ static ADDRESS_MAP_START(rx78_mem, AS_PROGRAM, 8, rx78_state)
AM_RANGE(0xec00, 0xffff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rx78_io, AS_IO, 8, rx78_state)
+ADDRESS_MAP_START(rx78_state::rx78_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0xe2, 0xe2) AM_READNOP AM_WRITENOP //printer
diff --git a/src/mame/drivers/s11.cpp b/src/mame/drivers/s11.cpp
index 7be1b6bc71d..70e298fc59b 100644
--- a/src/mame/drivers/s11.cpp
+++ b/src/mame/drivers/s11.cpp
@@ -28,7 +28,7 @@ ToDo:
#include "s11.lh"
-static ADDRESS_MAP_START( s11_main_map, AS_PROGRAM, 8, s11_state )
+ADDRESS_MAP_START(s11_state::s11_main_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
AM_RANGE(0x2200, 0x2200) AM_WRITE(sol3_w) // solenoids
@@ -40,7 +40,7 @@ static ADDRESS_MAP_START( s11_main_map, AS_PROGRAM, 8, s11_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s11_audio_map, AS_PROGRAM, 8, s11_state )
+ADDRESS_MAP_START(s11_state::s11_audio_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_WRITE(bank_w)
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pias", pia6821_device, read, write)
@@ -48,7 +48,7 @@ static ADDRESS_MAP_START( s11_audio_map, AS_PROGRAM, 8, s11_state )
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s11_bg_map, AS_PROGRAM, 8, s11_state )
+ADDRESS_MAP_START(s11_state::s11_bg_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia40", pia6821_device, read, write)
diff --git a/src/mame/drivers/s11a.cpp b/src/mame/drivers/s11a.cpp
index 03e827b81f9..6c8c8eab1e4 100644
--- a/src/mame/drivers/s11a.cpp
+++ b/src/mame/drivers/s11a.cpp
@@ -31,7 +31,7 @@ Note: To start a game, certain switches need to be activated. You must first pr
#include "s11a.lh"
-static ADDRESS_MAP_START( s11a_main_map, AS_PROGRAM, 8, s11a_state )
+ADDRESS_MAP_START(s11a_state::s11a_main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_MIRROR(0x00fc) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
AM_RANGE(0x2200, 0x2200) AM_MIRROR(0x01ff) AM_WRITE(sol3_w) // solenoids
@@ -43,7 +43,7 @@ static ADDRESS_MAP_START( s11a_main_map, AS_PROGRAM, 8, s11a_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s11a_audio_map, AS_PROGRAM, 8, s11a_state )
+ADDRESS_MAP_START(s11a_state::s11a_audio_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_WRITE(bank_w)
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pias", pia6821_device, read, write)
@@ -51,7 +51,7 @@ static ADDRESS_MAP_START( s11a_audio_map, AS_PROGRAM, 8, s11a_state )
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s11a_bg_map, AS_PROGRAM, 8, s11a_state )
+ADDRESS_MAP_START(s11a_state::s11a_bg_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia40", pia6821_device, read, write)
diff --git a/src/mame/drivers/s11b.cpp b/src/mame/drivers/s11b.cpp
index 74f1c0e292e..ed0801eda67 100644
--- a/src/mame/drivers/s11b.cpp
+++ b/src/mame/drivers/s11b.cpp
@@ -32,7 +32,7 @@
#include "s11b.lh"
-static ADDRESS_MAP_START( s11b_main_map, AS_PROGRAM, 8, s11b_state )
+ADDRESS_MAP_START(s11b_state::s11b_main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_MIRROR(0x00fc) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
AM_RANGE(0x2200, 0x2200) AM_MIRROR(0x01ff) AM_WRITE(sol3_w) // solenoids
@@ -44,7 +44,7 @@ static ADDRESS_MAP_START( s11b_main_map, AS_PROGRAM, 8, s11b_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s11b_audio_map, AS_PROGRAM, 8, s11b_state )
+ADDRESS_MAP_START(s11b_state::s11b_audio_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_RAM
AM_RANGE(0x1000, 0x1fff) AM_WRITE(bank_w)
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pias", pia6821_device, read, write)
@@ -52,7 +52,7 @@ static ADDRESS_MAP_START( s11b_audio_map, AS_PROGRAM, 8, s11b_state )
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s11b_bg_map, AS_PROGRAM, 8, s11b_state )
+ADDRESS_MAP_START(s11b_state::s11b_bg_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia40", pia6821_device, read, write)
diff --git a/src/mame/drivers/s11c.cpp b/src/mame/drivers/s11c.cpp
index a9caa21ba71..7516de3d663 100644
--- a/src/mame/drivers/s11c.cpp
+++ b/src/mame/drivers/s11c.cpp
@@ -14,7 +14,7 @@
#include "s11c.lh"
-static ADDRESS_MAP_START( s11c_main_map, AS_PROGRAM, 8, s11c_state )
+ADDRESS_MAP_START(s11c_state::s11c_main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_MIRROR(0x00fc) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
AM_RANGE(0x2200, 0x2200) AM_MIRROR(0x01ff) AM_WRITE(sol3_w) // solenoids
diff --git a/src/mame/drivers/s3.cpp b/src/mame/drivers/s3.cpp
index 1f985106785..830f28303d8 100644
--- a/src/mame/drivers/s3.cpp
+++ b/src/mame/drivers/s3.cpp
@@ -91,6 +91,8 @@ public:
DECLARE_MACHINE_RESET(s3a);
void s3a(machine_config &config);
void s3(machine_config &config);
+ void s3_audio_map(address_map &map);
+ void s3_main_map(address_map &map);
private:
uint8_t m_t_c;
uint8_t m_sound_data;
@@ -107,7 +109,7 @@ private:
optional_device<pia6821_device> m_pias;
};
-static ADDRESS_MAP_START( s3_main_map, AS_PROGRAM, 8, s3_state )
+ADDRESS_MAP_START(s3_state::s3_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("nvram")
@@ -118,7 +120,7 @@ static ADDRESS_MAP_START( s3_main_map, AS_PROGRAM, 8, s3_state )
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s3_audio_map, AS_PROGRAM, 8, s3_state )
+ADDRESS_MAP_START(s3_state::s3_audio_map)
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0400, 0x0403) AM_DEVREADWRITE("pias", pia6821_device, read, write) // sounds
diff --git a/src/mame/drivers/s4.cpp b/src/mame/drivers/s4.cpp
index a1eeadde28a..7a3c01daa7f 100644
--- a/src/mame/drivers/s4.cpp
+++ b/src/mame/drivers/s4.cpp
@@ -85,6 +85,8 @@ public:
DECLARE_MACHINE_RESET(s4a);
void s4(machine_config &config);
void s4a(machine_config &config);
+ void s4_audio_map(address_map &map);
+ void s4_main_map(address_map &map);
private:
uint8_t m_t_c;
uint8_t m_sound_data;
@@ -101,7 +103,7 @@ private:
optional_device<pia6821_device> m_pias;
};
-static ADDRESS_MAP_START( s4_main_map, AS_PROGRAM, 8, s4_state )
+ADDRESS_MAP_START(s4_state::s4_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("nvram")
@@ -112,7 +114,7 @@ static ADDRESS_MAP_START( s4_main_map, AS_PROGRAM, 8, s4_state )
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s4_audio_map, AS_PROGRAM, 8, s4_state )
+ADDRESS_MAP_START(s4_state::s4_audio_map)
ADDRESS_MAP_GLOBAL_MASK(0x0fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x0403) AM_DEVREADWRITE("pias", pia6821_device, read, write) // sounds
diff --git a/src/mame/drivers/s6.cpp b/src/mame/drivers/s6.cpp
index cf6ec513d63..2b3413cdab1 100644
--- a/src/mame/drivers/s6.cpp
+++ b/src/mame/drivers/s6.cpp
@@ -98,6 +98,8 @@ public:
DECLARE_MACHINE_RESET(s6);
DECLARE_DRIVER_INIT(s6);
void s6(machine_config &config);
+ void s6_audio_map(address_map &map);
+ void s6_main_map(address_map &map);
private:
uint8_t m_sound_data;
uint8_t m_strobe;
@@ -116,7 +118,7 @@ private:
required_device<pia6821_device> m_pia30;
};
-static ADDRESS_MAP_START( s6_main_map, AS_PROGRAM, 8, s6_state )
+ADDRESS_MAP_START(s6_state::s6_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("nvram")
@@ -127,7 +129,7 @@ static ADDRESS_MAP_START( s6_main_map, AS_PROGRAM, 8, s6_state )
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s6_audio_map, AS_PROGRAM, 8, s6_state )
+ADDRESS_MAP_START(s6_state::s6_audio_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x0403) AM_DEVREADWRITE("pias", pia6821_device, read, write)
diff --git a/src/mame/drivers/s6a.cpp b/src/mame/drivers/s6a.cpp
index 652853dba28..21b106c2a86 100644
--- a/src/mame/drivers/s6a.cpp
+++ b/src/mame/drivers/s6a.cpp
@@ -91,6 +91,8 @@ public:
DECLARE_MACHINE_RESET(s6a);
DECLARE_DRIVER_INIT(s6a);
void s6a(machine_config &config);
+ void s6a_audio_map(address_map &map);
+ void s6a_main_map(address_map &map);
private:
uint8_t m_sound_data;
uint8_t m_strobe;
@@ -109,7 +111,7 @@ private:
required_device<pia6821_device> m_pia30;
};
-static ADDRESS_MAP_START( s6a_main_map, AS_PROGRAM, 8, s6a_state )
+ADDRESS_MAP_START(s6a_state::s6a_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM AM_SHARE("nvram")
@@ -120,7 +122,7 @@ static ADDRESS_MAP_START( s6a_main_map, AS_PROGRAM, 8, s6a_state )
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s6a_audio_map, AS_PROGRAM, 8, s6a_state )
+ADDRESS_MAP_START(s6a_state::s6a_audio_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE("pias", pia6821_device, read, write)
AM_RANGE(0xb000, 0xffff) AM_ROM AM_REGION("audioroms", 0)
diff --git a/src/mame/drivers/s7.cpp b/src/mame/drivers/s7.cpp
index 745e26c6c94..60b9665c3cb 100644
--- a/src/mame/drivers/s7.cpp
+++ b/src/mame/drivers/s7.cpp
@@ -117,6 +117,8 @@ public:
DECLARE_MACHINE_RESET(s7);
DECLARE_DRIVER_INIT(s7);
void s7(machine_config &config);
+ void s7_audio_map(address_map &map);
+ void s7_main_map(address_map &map);
private:
uint8_t m_sound_data;
uint8_t m_strobe;
@@ -139,7 +141,7 @@ private:
required_device<pia6821_device> m_pia30;
};
-static ADDRESS_MAP_START( s7_main_map, AS_PROGRAM, 8, s7_state )
+ADDRESS_MAP_START(s7_state::s7_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x1000)
AM_RANGE(0x0100, 0x01ff) AM_READWRITE(nvram_r,nvram_w)
@@ -153,7 +155,7 @@ static ADDRESS_MAP_START( s7_main_map, AS_PROGRAM, 8, s7_state )
AM_RANGE(0x5000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s7_audio_map, AS_PROGRAM, 8, s7_state )
+ADDRESS_MAP_START(s7_state::s7_audio_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE("pias", pia6821_device, read, write)
AM_RANGE(0xb000, 0xffff) AM_ROM AM_REGION("audioroms", 0)
diff --git a/src/mame/drivers/s8.cpp b/src/mame/drivers/s8.cpp
index d12196cc6af..e55ab413759 100644
--- a/src/mame/drivers/s8.cpp
+++ b/src/mame/drivers/s8.cpp
@@ -92,6 +92,8 @@ public:
DECLARE_MACHINE_RESET(s8);
DECLARE_DRIVER_INIT(s8);
void s8(machine_config &config);
+ void s8_audio_map(address_map &map);
+ void s8_main_map(address_map &map);
private:
uint8_t m_sound_data;
uint8_t m_strobe;
@@ -109,7 +111,7 @@ private:
required_device<pia6821_device> m_pia30;
};
-static ADDRESS_MAP_START( s8_main_map, AS_PROGRAM, 8, s8_state )
+ADDRESS_MAP_START(s8_state::s8_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
@@ -120,7 +122,7 @@ static ADDRESS_MAP_START( s8_main_map, AS_PROGRAM, 8, s8_state )
AM_RANGE(0x5000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s8_audio_map, AS_PROGRAM, 8, s8_state )
+ADDRESS_MAP_START(s8_state::s8_audio_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x4000, 0x4003) AM_DEVREADWRITE("pias", pia6821_device, read, write)
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("audioroms", 0)
diff --git a/src/mame/drivers/s8a.cpp b/src/mame/drivers/s8a.cpp
index f75bcf083f4..f6d0a4863e7 100644
--- a/src/mame/drivers/s8a.cpp
+++ b/src/mame/drivers/s8a.cpp
@@ -68,6 +68,8 @@ public:
DECLARE_MACHINE_RESET(s8a);
DECLARE_DRIVER_INIT(s8a);
void s8a(machine_config &config);
+ void s8a_audio_map(address_map &map);
+ void s8a_main_map(address_map &map);
private:
uint8_t m_sound_data;
uint8_t m_strobe;
@@ -85,7 +87,7 @@ private:
required_device<pia6821_device> m_pia30;
};
-static ADDRESS_MAP_START( s8a_main_map, AS_PROGRAM, 8, s8a_state )
+ADDRESS_MAP_START(s8a_state::s8a_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
@@ -96,7 +98,7 @@ static ADDRESS_MAP_START( s8a_main_map, AS_PROGRAM, 8, s8a_state )
AM_RANGE(0x6000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s8a_audio_map, AS_PROGRAM, 8, s8a_state )
+ADDRESS_MAP_START(s8a_state::s8a_audio_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x2000, 0x2003) AM_DEVREADWRITE("pias", pia6821_device, read, write)
AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("audioroms", 0)
diff --git a/src/mame/drivers/s9.cpp b/src/mame/drivers/s9.cpp
index 9c372879a19..fe22e8fb541 100644
--- a/src/mame/drivers/s9.cpp
+++ b/src/mame/drivers/s9.cpp
@@ -79,6 +79,8 @@ public:
DECLARE_MACHINE_RESET(s9);
DECLARE_DRIVER_INIT(s9);
void s9(machine_config &config);
+ void s9_audio_map(address_map &map);
+ void s9_main_map(address_map &map);
private:
uint8_t m_sound_data;
uint8_t m_strobe;
@@ -97,7 +99,7 @@ private:
required_device<pia6821_device> m_pia30;
};
-static ADDRESS_MAP_START( s9_main_map, AS_PROGRAM, 8, s9_state )
+ADDRESS_MAP_START(s9_state::s9_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
@@ -108,7 +110,7 @@ static ADDRESS_MAP_START( s9_main_map, AS_PROGRAM, 8, s9_state )
AM_RANGE(0x4000, 0x7fff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( s9_audio_map, AS_PROGRAM, 8, s9_state )
+ADDRESS_MAP_START(s9_state::s9_audio_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x2003) AM_DEVREADWRITE("pias", pia6821_device, read, write)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("audioroms", 0)
diff --git a/src/mame/drivers/sacstate.cpp b/src/mame/drivers/sacstate.cpp
index 0586271a2e4..100acf5290a 100644
--- a/src/mame/drivers/sacstate.cpp
+++ b/src/mame/drivers/sacstate.cpp
@@ -54,6 +54,8 @@ public:
DECLARE_WRITE8_MEMBER(port08_w);
void kbd_put(u8 data);
void sacstate(machine_config &config);
+ void sacstate_io(address_map &map);
+ void sacstate_mem(address_map &map);
private:
uint8_t m_term_data;
uint8_t m_val;
@@ -92,13 +94,13 @@ WRITE8_MEMBER( sacstate_state::port08_w )
m_val = 0;
}
-static ADDRESS_MAP_START(sacstate_mem, AS_PROGRAM, 8, sacstate_state)
+ADDRESS_MAP_START(sacstate_state::sacstate_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000,0x7ff) AM_ROM
AM_RANGE(0x800,0xfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sacstate_io, AS_IO, 8, sacstate_state)
+ADDRESS_MAP_START(sacstate_state::sacstate_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00,0x00) AM_READ(port00_r)
diff --git a/src/mame/drivers/safarir.cpp b/src/mame/drivers/safarir.cpp
index 22da3117459..2465283736b 100644
--- a/src/mame/drivers/safarir.cpp
+++ b/src/mame/drivers/safarir.cpp
@@ -93,6 +93,7 @@ public:
uint32_t screen_update_safarir(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void safarir(machine_config &config);
void safarir_audio(machine_config &config);
+ void main_map(address_map &map);
};
@@ -341,7 +342,7 @@ void safarir_state::machine_start()
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, safarir_state )
+ADDRESS_MAP_START(safarir_state::main_map)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_READWRITE(ram_r, ram_w) AM_SHARE("ram")
AM_RANGE(0x2800, 0x2800) AM_MIRROR(0x03ff) AM_READNOP AM_WRITE(ram_bank_w)
diff --git a/src/mame/drivers/sage2.cpp b/src/mame/drivers/sage2.cpp
index 72f8ee64e00..474f467f889 100644
--- a/src/mame/drivers/sage2.cpp
+++ b/src/mame/drivers/sage2.cpp
@@ -36,7 +36,7 @@
// ADDRESS_MAP( sage2_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( sage2_mem, AS_PROGRAM, 16, sage2_state )
+ADDRESS_MAP_START(sage2_state::sage2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xffc000, 0xffc007) AM_DEVREADWRITE8(I8253_1_TAG, pit8253_device, read, write, 0x00ff)
AM_RANGE(0xffc010, 0xffc01f) AM_NOP //AM_DEVREADWRITE8(TMS9914_TAG, tms9914_device, read, write, 0x00ff)
diff --git a/src/mame/drivers/sam.cpp b/src/mame/drivers/sam.cpp
index dae7e84a8ab..48e09eec99e 100644
--- a/src/mame/drivers/sam.cpp
+++ b/src/mame/drivers/sam.cpp
@@ -11,9 +11,10 @@ public:
: driver_device(mconfig, type, tag) { }
void sam(machine_config &config);
+ void sam_map(address_map &map);
};
-static ADDRESS_MAP_START( sam_map, AS_PROGRAM, 32, sam_state)
+ADDRESS_MAP_START(sam_state::sam_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("boot",0)
AM_RANGE(0x00300000, 0x003fffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/samcoupe.cpp b/src/mame/drivers/samcoupe.cpp
index 471cbce3808..b6b705dd6b7 100644
--- a/src/mame/drivers/samcoupe.cpp
+++ b/src/mame/drivers/samcoupe.cpp
@@ -304,14 +304,14 @@ WRITE8_MEMBER(samcoupe_state::samcoupe_lpt2_strobe_w)
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( samcoupe_mem, AS_PROGRAM, 8, samcoupe_state )
+ADDRESS_MAP_START(samcoupe_state::samcoupe_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_READWRITE(sam_bank1_r, sam_bank1_w) // AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAM AM_READWRITE(sam_bank2_r, sam_bank2_w) // AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAM AM_READWRITE(sam_bank3_r, sam_bank3_w) // AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAM AM_READWRITE(sam_bank4_r, sam_bank4_w) // AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( samcoupe_io, AS_IO, 8, samcoupe_state )
+ADDRESS_MAP_START(samcoupe_state::samcoupe_io)
AM_RANGE(0x0080, 0x0081) AM_SELECT(0xff00) AM_WRITE(samcoupe_ext_mem_w)
AM_RANGE(0x00e0, 0x00e7) AM_SELECT(0xff10) AM_READWRITE(samcoupe_disk_r, samcoupe_disk_w)
AM_RANGE(0x00e8, 0x00e8) AM_SELECT(0xff00) AM_DEVWRITE("lpt1_data_out", output_latch_device, write)
diff --git a/src/mame/drivers/sandscrp.cpp b/src/mame/drivers/sandscrp.cpp
index bc4ffa9d1d5..32451c92954 100644
--- a/src/mame/drivers/sandscrp.cpp
+++ b/src/mame/drivers/sandscrp.cpp
@@ -133,6 +133,9 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
void update_irq_state();
void sandscrp(machine_config &config);
+ void sandscrp(address_map &map);
+ void sandscrp_soundmem(address_map &map);
+ void sandscrp_soundport(address_map &map);
};
@@ -273,7 +276,7 @@ WRITE16_MEMBER(sandscrp_state::soundlatch_word_w)
}
}
-static ADDRESS_MAP_START( sandscrp, AS_PROGRAM, 16, sandscrp_state )
+ADDRESS_MAP_START(sandscrp_state::sandscrp)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x100001) AM_WRITE(irq_cause_w) // IRQ Ack
@@ -323,13 +326,13 @@ WRITE8_MEMBER(sandscrp_state::soundlatch_w)
m_soundlatch2->write(space,0,data);
}
-static ADDRESS_MAP_START( sandscrp_soundmem, AS_PROGRAM, 8, sandscrp_state )
+ADDRESS_MAP_START(sandscrp_state::sandscrp_soundmem)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sandscrp_soundport, AS_IO, 8, sandscrp_state )
+ADDRESS_MAP_START(sandscrp_state::sandscrp_soundport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(bankswitch_w) // ROM Bank
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write) // PORTA/B read
diff --git a/src/mame/drivers/sangho.cpp b/src/mame/drivers/sangho.cpp
index 52bce7b25cd..98850b7c39f 100644
--- a/src/mame/drivers/sangho.cpp
+++ b/src/mame/drivers/sangho.cpp
@@ -102,6 +102,9 @@ public:
DECLARE_WRITE8_MEMBER(sec_slot_w);
void pzlestar(machine_config &config);
void sexyboom(machine_config &config);
+ void pzlestar_io_map(address_map &map);
+ void sangho_map(address_map &map);
+ void sexyboom_io_map(address_map &map);
};
/*
@@ -282,7 +285,7 @@ WRITE8_MEMBER(sangho_state::sec_slot_w)
}
-static ADDRESS_MAP_START( sangho_map, AS_PROGRAM, 8, sangho_state )
+ADDRESS_MAP_START(sangho_state::sangho_map)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank5")
AM_RANGE(0x4000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE_BANK("bank6")
AM_RANGE(0x8000, 0xbfff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank7")
@@ -291,7 +294,7 @@ ADDRESS_MAP_END
/* Puzzle Star Ports */
-static ADDRESS_MAP_START( pzlestar_io_map, AS_IO, 8, sangho_state )
+ADDRESS_MAP_START(sangho_state::pzlestar_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x7c, 0x7d) AM_DEVWRITE("ymsnd", ym2413_device, write)
AM_RANGE( 0x91, 0x91) AM_WRITE(pzlestar_bank_w )
@@ -304,7 +307,7 @@ ADDRESS_MAP_END
/* Sexy Boom Ports */
-static ADDRESS_MAP_START( sexyboom_io_map, AS_IO, 8, sangho_state )
+ADDRESS_MAP_START(sangho_state::sexyboom_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x7c, 0x7d) AM_DEVWRITE("ymsnd", ym2413_device, write)
AM_RANGE( 0xa0, 0xa0) AM_READ_PORT("P1")
diff --git a/src/mame/drivers/sanremmg.cpp b/src/mame/drivers/sanremmg.cpp
index 31c000f7b68..d803f7da54d 100644
--- a/src/mame/drivers/sanremmg.cpp
+++ b/src/mame/drivers/sanremmg.cpp
@@ -27,6 +27,7 @@ public:
uint32_t screen_update_sanremmg(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sanremmg(machine_config &config);
+ void sanremmg_map(address_map &map);
};
@@ -41,7 +42,7 @@ uint32_t sanremmg_state::screen_update_sanremmg(screen_device &screen, bitmap_in
-static ADDRESS_MAP_START( sanremmg_map, AS_PROGRAM, 32, sanremmg_state )
+ADDRESS_MAP_START(sanremmg_state::sanremmg_map)
AM_RANGE(0x00000000, 0x003fffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sanremo.cpp b/src/mame/drivers/sanremo.cpp
index 09b066daddb..ef6ac655ed3 100644
--- a/src/mame/drivers/sanremo.cpp
+++ b/src/mame/drivers/sanremo.cpp
@@ -132,6 +132,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void sanremo(machine_config &config);
+ void sanremo_map(address_map &map);
+ void sanremo_portmap(address_map &map);
};
@@ -222,13 +224,13 @@ WRITE8_MEMBER(sanremo_state::banksel_w)
* Memory map information *
*********************************************/
-static ADDRESS_MAP_START( sanremo_map, AS_PROGRAM, 8, sanremo_state )
+ADDRESS_MAP_START(sanremo_state::sanremo_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(sanremo_videoram_w) AM_SHARE("videoram") // 2x 76C28 (1x accessed directly, latched bank written to other like subsino etc.)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram") // battery backed UM6116
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sanremo_portmap, AS_IO, 8, sanremo_state )
+ADDRESS_MAP_START(sanremo_state::sanremo_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0")
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/sansa_fuze.cpp b/src/mame/drivers/sansa_fuze.cpp
index 22cacc36725..05a4cc23082 100644
--- a/src/mame/drivers/sansa_fuze.cpp
+++ b/src/mame/drivers/sansa_fuze.cpp
@@ -23,11 +23,12 @@ public:
required_device<cpu_device> m_maincpu;
void sansa_fuze(machine_config &config);
+ void sansa_fuze_map(address_map &map);
};
-static ADDRESS_MAP_START( sansa_fuze_map, AS_PROGRAM, 32, sansa_fuze_state )
+ADDRESS_MAP_START(sansa_fuze_state::sansa_fuze_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM
AM_RANGE(0x80000000, 0x8001ffff) AM_ROM AM_REGION("maincpu", 0x00000)
diff --git a/src/mame/drivers/sapi1.cpp b/src/mame/drivers/sapi1.cpp
index 9c445f9264c..2614c2515f8 100644
--- a/src/mame/drivers/sapi1.cpp
+++ b/src/mame/drivers/sapi1.cpp
@@ -89,6 +89,14 @@ public:
void sapi2(machine_config &config);
void sapi3a(machine_config &config);
void sapi3b(machine_config &config);
+ void sapi1_mem(address_map &map);
+ void sapi2_mem(address_map &map);
+ void sapi3_io(address_map &map);
+ void sapi3_mem(address_map &map);
+ void sapi3a_io(address_map &map);
+ void sapi3a_mem(address_map &map);
+ void sapi3b_io(address_map &map);
+ void sapi3b_mem(address_map &map);
private:
uint8_t m_term_data;
uint8_t m_keyboard_mask;
@@ -183,7 +191,7 @@ static const uint8_t MHB2501[] = {
/* Address maps */
-static ADDRESS_MAP_START(sapi1_mem, AS_PROGRAM, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x1fff) AM_ROM // Extension ROM
@@ -196,7 +204,7 @@ static ADDRESS_MAP_START(sapi1_mem, AS_PROGRAM, 8, sapi1_state )
AM_RANGE(0x4000, 0x7fff) AM_RAM // REM-1
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sapi2_mem, AS_PROGRAM, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x1fff) AM_ROM // Extension ROM
@@ -207,14 +215,14 @@ static ADDRESS_MAP_START(sapi2_mem, AS_PROGRAM, 8, sapi1_state )
AM_RANGE(0x4000, 0x7fff) AM_RAM // REM-1
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sapi3_mem, AS_PROGRAM, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi3_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RAMBANK("bank1")
AM_RANGE(0x0800, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sapi3a_mem, AS_PROGRAM, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi3a_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RAMBANK("bank1")
AM_RANGE(0x0800, 0xf7ff) AM_RAM
@@ -222,7 +230,7 @@ static ADDRESS_MAP_START(sapi3a_mem, AS_PROGRAM, 8, sapi1_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sapi3b_mem, AS_PROGRAM, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi3b_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RAMBANK("bank1")
AM_RANGE(0x0800, 0xafff) AM_RAM
@@ -230,14 +238,14 @@ static ADDRESS_MAP_START(sapi3b_mem, AS_PROGRAM, 8, sapi1_state )
AM_RANGE(0xb800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sapi3_io, AS_IO, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi3_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sapi3_00_w)
AM_RANGE(0x25, 0x25) AM_READWRITE(sapi3_25_r,sapi3_25_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sapi3a_io, AS_IO, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi3a_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sapi3_00_w)
@@ -248,7 +256,7 @@ static ADDRESS_MAP_START( sapi3a_io, AS_IO, 8, sapi1_state )
AM_RANGE(0x25, 0x25) AM_READWRITE(sapi3_25_r,sapi3_25_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sapi3b_io, AS_IO, 8, sapi1_state )
+ADDRESS_MAP_START(sapi1_state::sapi3b_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sapi3_00_w)
diff --git a/src/mame/drivers/sartorius.cpp b/src/mame/drivers/sartorius.cpp
index 26a2cd10828..e7a53ee6110 100644
--- a/src/mame/drivers/sartorius.cpp
+++ b/src/mame/drivers/sartorius.cpp
@@ -63,18 +63,21 @@ public:
}
void sart3733(machine_config &config);
+ void sart3733_memory(address_map &map);
+ void sart3733_rom(address_map &map);
+ void sart3733_status(address_map &map);
};
-ADDRESS_MAP_START(sart3733_rom, i4040_cpu_device::AS_ROM, 8, sart3733_state)
+ ADDRESS_MAP_START(sart3733_state::sart3733_rom)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("maincpu", 0x0000)
ADDRESS_MAP_END
-ADDRESS_MAP_START(sart3733_memory, i4040_cpu_device::AS_RAM_MEMORY, 8, sart3733_state)
+ ADDRESS_MAP_START(sart3733_state::sart3733_memory)
AM_RANGE(0x0000, 0x007f) AM_RAM // 2 * 4002
ADDRESS_MAP_END
-ADDRESS_MAP_START(sart3733_status, i4040_cpu_device::AS_RAM_STATUS, 8, sart3733_state)
+ ADDRESS_MAP_START(sart3733_state::sart3733_status)
AM_RANGE(0x0000, 0x001f) AM_RAM // 2 * 4002
ADDRESS_MAP_END
diff --git a/src/mame/drivers/saturn.cpp b/src/mame/drivers/saturn.cpp
index 1619823d96e..9de50308b27 100644
--- a/src/mame/drivers/saturn.cpp
+++ b/src/mame/drivers/saturn.cpp
@@ -497,6 +497,8 @@ public:
void saturnjp(machine_config &config);
void saturneu(machine_config &config);
void saturnus(machine_config &config);
+ void saturn_mem(address_map &map);
+ void sound_mem(address_map &map);
};
@@ -515,7 +517,7 @@ READ32_MEMBER( sat_console_state::abus_dummy_r )
return -1;
}
-static ADDRESS_MAP_START( saturn_mem, AS_PROGRAM, 32, sat_console_state )
+ADDRESS_MAP_START(sat_console_state::saturn_mem)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_MIRROR(0x20000000) AM_REGION("bios", 0) AM_WRITENOP // bios
AM_RANGE(0x00100000, 0x0010007f) AM_DEVREADWRITE8("smpc", smpc_hle_device, read, write, 0xffffffff)
AM_RANGE(0x00180000, 0x0018ffff) AM_READWRITE8(saturn_backupram_r, saturn_backupram_w,0xffffffff) AM_SHARE("share1")
@@ -545,7 +547,7 @@ static ADDRESS_MAP_START( saturn_mem, AS_PROGRAM, 32, sat_console_state )
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM // cache data array, Dragon Ball Z sprites relies on this
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 16, sat_console_state )
+ADDRESS_MAP_START(sat_console_state::sound_mem)
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("sound_ram")
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp", scsp_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sauro.cpp b/src/mame/drivers/sauro.cpp
index c646e87917c..6977c5acb2e 100644
--- a/src/mame/drivers/sauro.cpp
+++ b/src/mame/drivers/sauro.cpp
@@ -185,7 +185,7 @@ WRITE8_MEMBER(sauro_state::adpcm_w)
m_sp0256->ald_w(space, 0, data);
}
-static ADDRESS_MAP_START( sauro_map, AS_PROGRAM, 8, sauro_state )
+ADDRESS_MAP_START(sauro_state::sauro_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xe800, 0xebff) AM_RAM AM_SHARE("spriteram")
@@ -195,7 +195,7 @@ static ADDRESS_MAP_START( sauro_map, AS_PROGRAM, 8, sauro_state )
AM_RANGE(0xfc00, 0xffff) AM_RAM_WRITE(sauro_colorram2_w) AM_SHARE("colorram2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sauro_io_map, AS_IO, 8, sauro_state )
+ADDRESS_MAP_START(sauro_state::sauro_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1")
AM_RANGE(0x20, 0x20) AM_READ_PORT("DSW2")
@@ -208,7 +208,7 @@ static ADDRESS_MAP_START( sauro_io_map, AS_IO, 8, sauro_state )
AM_RANGE(0xe0, 0xe0) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sauro_sound_map, AS_PROGRAM, 8, sauro_state )
+ADDRESS_MAP_START(sauro_state::sauro_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ymsnd", ym3812_device, write)
@@ -219,7 +219,7 @@ static ADDRESS_MAP_START( sauro_sound_map, AS_PROGRAM, 8, sauro_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( saurob_sound_map, AS_PROGRAM, 8, sauro_state )
+ADDRESS_MAP_START(sauro_state::saurob_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ymsnd", ym3812_device, write)
@@ -230,7 +230,7 @@ static ADDRESS_MAP_START( saurob_sound_map, AS_PROGRAM, 8, sauro_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trckydoc_map, AS_PROGRAM, 8, sauro_state )
+ADDRESS_MAP_START(sauro_state::trckydoc_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xe800, 0xebff) AM_RAM AM_MIRROR(0x400) AM_SHARE("spriteram")
diff --git a/src/mame/drivers/savia84.cpp b/src/mame/drivers/savia84.cpp
index e8843ffe316..0e8b20cad4c 100644
--- a/src/mame/drivers/savia84.cpp
+++ b/src/mame/drivers/savia84.cpp
@@ -49,6 +49,8 @@ public:
DECLARE_WRITE8_MEMBER(savia84_8255_portc_w);
void savia84(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_kbd;
uint8_t m_segment;
@@ -59,14 +61,14 @@ private:
required_device<i8255_device> m_ppi8255;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, savia84_state )
+ADDRESS_MAP_START(savia84_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x7fff) // A15 not connected at the CPU
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x1800, 0x1fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, savia84_state )
+ADDRESS_MAP_START(savia84_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x07)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255_device, read, write) // ports F8-FB
diff --git a/src/mame/drivers/savquest.cpp b/src/mame/drivers/savquest.cpp
index de0730058f9..3735eac482d 100644
--- a/src/mame/drivers/savquest.cpp
+++ b/src/mame/drivers/savquest.cpp
@@ -114,6 +114,8 @@ public:
DECLARE_WRITE8_MEMBER(smram_w);
void savquest(machine_config &config);
+ void savquest_io(address_map &map);
+ void savquest_map(address_map &map);
protected:
@@ -730,7 +732,7 @@ WRITE8_MEMBER(savquest_state::smram_w)
}
-static ADDRESS_MAP_START(savquest_map, AS_PROGRAM, 32, savquest_state)
+ADDRESS_MAP_START(savquest_state::savquest_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_READWRITE8(smram_r,smram_w,0xffffffff) //AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
@@ -745,7 +747,7 @@ static ADDRESS_MAP_START(savquest_map, AS_PROGRAM, 32, savquest_state)
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(savquest_io, AS_IO, 32, savquest_state)
+ADDRESS_MAP_START(savquest_state::savquest_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x0070, 0x007f) AM_DEVREADWRITE8("rtc", ds12885_device, read, write, 0xffffffff)
diff --git a/src/mame/drivers/sbasketb.cpp b/src/mame/drivers/sbasketb.cpp
index 46f9d7c1641..d0e866938aa 100644
--- a/src/mame/drivers/sbasketb.cpp
+++ b/src/mame/drivers/sbasketb.cpp
@@ -79,7 +79,7 @@ WRITE_LINE_MEMBER(sbasketb_state::irq_mask_w)
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( sbasketb_map, AS_PROGRAM, 8, sbasketb_state )
+ADDRESS_MAP_START(sbasketb_state::sbasketb_map)
AM_RANGE(0x2000, 0x2fff) AM_RAM
AM_RANGE(0x3000, 0x33ff) AM_RAM_WRITE(sbasketb_colorram_w) AM_SHARE("colorram")
AM_RANGE(0x3400, 0x37ff) AM_RAM_WRITE(sbasketb_videoram_w) AM_SHARE("videoram")
@@ -101,7 +101,7 @@ static ADDRESS_MAP_START( sbasketb_map, AS_PROGRAM, 8, sbasketb_state )
AM_RANGE(0x6000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbasketb_sound_map, AS_PROGRAM, 8, sbasketb_state )
+ADDRESS_MAP_START(sbasketb_state::sbasketb_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/sbc6510.cpp b/src/mame/drivers/sbc6510.cpp
index 0eee789999d..cb289ea97c7 100644
--- a/src/mame/drivers/sbc6510.cpp
+++ b/src/mame/drivers/sbc6510.cpp
@@ -78,6 +78,10 @@ public:
DECLARE_READ8_MEMBER(key_r);
void sbc6510(machine_config &config);
+ void sbc6510_mem(address_map &map);
+ void sbc6510_video_data(address_map &map);
+ void sbc6510_video_io(address_map &map);
+ void sbc6510_video_mem(address_map &map);
private:
uint8_t m_key_row;
uint8_t m_2;
@@ -90,7 +94,7 @@ private:
};
-static ADDRESS_MAP_START( sbc6510_mem, AS_PROGRAM, 8, sbc6510_state )
+ADDRESS_MAP_START(sbc6510_state::sbc6510_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0001) AM_RAM
AM_RANGE(0x0002, 0x0002) AM_READWRITE(a2_r,a2_w)
@@ -101,15 +105,15 @@ static ADDRESS_MAP_START( sbc6510_mem, AS_PROGRAM, 8, sbc6510_state )
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbc6510_video_mem, AS_PROGRAM, 8, sbc6510_state )
+ADDRESS_MAP_START(sbc6510_state::sbc6510_video_mem)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbc6510_video_data, AS_DATA, 8, sbc6510_state )
+ADDRESS_MAP_START(sbc6510_state::sbc6510_video_data)
AM_RANGE(0x0100, 0x04ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbc6510_video_io, AS_IO, 8, sbc6510_state )
+ADDRESS_MAP_START(sbc6510_state::sbc6510_video_io)
ADDRESS_MAP_END
/* Input ports */
diff --git a/src/mame/drivers/sbowling.cpp b/src/mame/drivers/sbowling.cpp
index c7ad40f32d6..08222af30d2 100644
--- a/src/mame/drivers/sbowling.cpp
+++ b/src/mame/drivers/sbowling.cpp
@@ -88,6 +88,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void postload();
void sbowling(machine_config &config);
+ void main_map(address_map &map);
+ void port_map(address_map &map);
};
TILE_GET_INFO_MEMBER(sbowling_state::get_tile_info)
@@ -245,7 +247,7 @@ READ8_MEMBER(sbowling_state::controls_r)
return ioport("TRACKX")->read();
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sbowling_state )
+ADDRESS_MAP_START(sbowling_state::main_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0xf800, 0xf801) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -254,7 +256,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sbowling_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map, AS_IO, 8, sbowling_state )
+ADDRESS_MAP_START(sbowling_state::port_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(controls_r, pix_data_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(pix_data_r, pix_shift_w)
diff --git a/src/mame/drivers/sbrain.cpp b/src/mame/drivers/sbrain.cpp
index 698cb5617fb..1fefb4466d7 100644
--- a/src/mame/drivers/sbrain.cpp
+++ b/src/mame/drivers/sbrain.cpp
@@ -91,6 +91,10 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(kbd_scan);
void sbrain(machine_config &config);
+ void sbrain_io(address_map &map);
+ void sbrain_mem(address_map &map);
+ void sbrain_subio(address_map &map);
+ void sbrain_submem(address_map &map);
private:
bool m_busak;
u8 m_keydown;
@@ -119,7 +123,7 @@ private:
required_ioport_array<10> m_keyboard;
};
-static ADDRESS_MAP_START( sbrain_mem, AS_PROGRAM, 8, sbrain_state )
+ADDRESS_MAP_START(sbrain_state::sbrain_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE( 0x4000, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0xbfff ) AM_RAMBANK("bank2")
@@ -127,7 +131,7 @@ static ADDRESS_MAP_START( sbrain_mem, AS_PROGRAM, 8, sbrain_state )
AM_RANGE( 0xf800, 0xffff ) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbrain_io, AS_IO, 8, sbrain_state )
+ADDRESS_MAP_START(sbrain_state::sbrain_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_MIRROR(6) AM_DEVREADWRITE("uart0", i8251_device, data_r, data_w)
AM_RANGE(0x41, 0x41) AM_MIRROR(6) AM_DEVREADWRITE("uart0", i8251_device, status_r, control_w)
@@ -139,12 +143,12 @@ static ADDRESS_MAP_START( sbrain_io, AS_IO, 8, sbrain_state )
AM_RANGE(0x68, 0x6b) AM_MIRROR(4) AM_DEVREADWRITE("ppi", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbrain_submem, AS_PROGRAM, 8, sbrain_state )
+ADDRESS_MAP_START(sbrain_state::sbrain_submem)
AM_RANGE( 0x0000, 0x07ff ) AM_ROM
AM_RANGE( 0x8800, 0x8bff ) AM_RAM AM_REGION("subcpu", 0x8800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbrain_subio, AS_IO, 8, sbrain_state )
+ADDRESS_MAP_START(sbrain_state::sbrain_subio)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("fdc", fd1791_device, read, write)
AM_RANGE(0x10, 0x10) AM_READWRITE(port10_r,port10_w)
diff --git a/src/mame/drivers/sbrkout.cpp b/src/mame/drivers/sbrkout.cpp
index ef9854bf966..1329cd10e52 100644
--- a/src/mame/drivers/sbrkout.cpp
+++ b/src/mame/drivers/sbrkout.cpp
@@ -94,6 +94,8 @@ public:
required_device<palette_device> m_palette;
void sbrkoutct(machine_config &config);
void sbrkout(machine_config &config);
+ void main_map(address_map &map);
+ void sbrkoutct_main_map(address_map &map);
};
@@ -405,7 +407,7 @@ uint32_t sbrkout_state::screen_update_sbrkout(screen_device &screen, bitmap_ind1
*************************************/
/* full memory map derived from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sbrkout_state )
+ADDRESS_MAP_START(sbrkout_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x380) AM_RAMBANK("bank1")
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(sbrkout_videoram_w) AM_SHARE("videoram")
@@ -421,7 +423,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sbrkout_state )
AM_RANGE(0x2800, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbrkoutct_main_map, AS_PROGRAM, 8, sbrkout_state )
+ADDRESS_MAP_START(sbrkout_state::sbrkoutct_main_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x380) AM_RAMBANK("bank1")
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(sbrkout_videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/sbugger.cpp b/src/mame/drivers/sbugger.cpp
index dd4b82c23c4..00f92ab6aa9 100644
--- a/src/mame/drivers/sbugger.cpp
+++ b/src/mame/drivers/sbugger.cpp
@@ -111,7 +111,7 @@ Sound PCB
/* memory maps */
-static ADDRESS_MAP_START( sbugger_map, AS_PROGRAM, 8, sbugger_state )
+ADDRESS_MAP_START(sbugger_state::sbugger_map)
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0xc800, 0xcbff) AM_RAM_WRITE(videoram_attr_w) AM_SHARE("videoram_attr")
AM_RANGE(0xcc00, 0xcfff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -119,7 +119,7 @@ static ADDRESS_MAP_START( sbugger_map, AS_PROGRAM, 8, sbugger_state )
AM_RANGE(0xf400, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbugger_io_map, AS_IO, 8, sbugger_state )
+ADDRESS_MAP_START(sbugger_state::sbugger_io_map)
AM_RANGE(0xe0, 0xe7) AM_DEVREADWRITE("i8156", i8155_device, io_r, io_w)
AM_RANGE(0xe8, 0xe8) AM_DEVWRITE("sn76489.1", sn76489_device, write)
AM_RANGE(0xe9, 0xe9) AM_DEVWRITE("sn76489.2", sn76489_device, write)
diff --git a/src/mame/drivers/sc1.cpp b/src/mame/drivers/sc1.cpp
index 0f292a90a79..02272745947 100644
--- a/src/mame/drivers/sc1.cpp
+++ b/src/mame/drivers/sc1.cpp
@@ -63,6 +63,8 @@ public:
uint8_t m_matrix;
void sc1(machine_config &config);
+ void sc1_io(address_map &map);
+ void sc1_mem(address_map &map);
};
/***************************************************************************
@@ -122,13 +124,13 @@ READ8_MEMBER( sc1_state::pio_port_b_r )
}
-static ADDRESS_MAP_START(sc1_mem, AS_PROGRAM, 8, sc1_state)
+ADDRESS_MAP_START(sc1_state::sc1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_ROM
AM_RANGE( 0x4000, 0x43ff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sc1_io, AS_IO, 8, sc1_state)
+ADDRESS_MAP_START(sc1_state::sc1_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
diff --git a/src/mame/drivers/sc2.cpp b/src/mame/drivers/sc2.cpp
index cb0611bc329..8dddb57bd10 100644
--- a/src/mame/drivers/sc2.cpp
+++ b/src/mame/drivers/sc2.cpp
@@ -44,6 +44,8 @@ public:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
void sc2(machine_config &config);
+ void sc2_io(address_map &map);
+ void sc2_mem(address_map &map);
};
READ8_MEMBER( sc2_state::sc2_beep )
@@ -58,7 +60,7 @@ READ8_MEMBER( sc2_state::sc2_beep )
return 0xff;
}
-static ADDRESS_MAP_START(sc2_mem, AS_PROGRAM, 8, sc2_state)
+ADDRESS_MAP_START(sc2_state::sc2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0fff ) AM_ROM
AM_RANGE( 0x1000, 0x13ff ) AM_RAM
@@ -66,7 +68,7 @@ static ADDRESS_MAP_START(sc2_mem, AS_PROGRAM, 8, sc2_state)
AM_RANGE( 0x3c00, 0x3c00 ) AM_READ(sc2_beep)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sc2_io, AS_IO, 8, sc2_state)
+ADDRESS_MAP_START(sc2_state::sc2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0xfc) AM_DEVREADWRITE("z80pio", z80pio_device, read, write)
diff --git a/src/mame/drivers/scobra.cpp b/src/mame/drivers/scobra.cpp
index ac306545bd5..159c2ffd4c5 100644
--- a/src/mame/drivers/scobra.cpp
+++ b/src/mame/drivers/scobra.cpp
@@ -78,6 +78,20 @@ public:
void tazmani3(machine_config &config);
void hustlerb(machine_config &config);
void rescuefe(machine_config &config);
+ void hustler_map(address_map &map);
+ void hustler_sound_io_map(address_map &map);
+ void hustler_sound_map(address_map &map);
+ void hustlerb_map(address_map &map);
+ void hustlerb_sound_io_map(address_map &map);
+ void hustlerb_sound_map(address_map &map);
+ void mimonkey_map(address_map &map);
+ void minefldfe_map(address_map &map);
+ void rescuefe_map(address_map &map);
+ void scobra_sound_io_map(address_map &map);
+ void scobra_sound_map(address_map &map);
+ void tazmani3_map(address_map &map);
+ void type1_map(address_map &map);
+ void type2_map(address_map &map);
private:
optional_shared_ptr<uint8_t> m_soundram;
};
@@ -124,7 +138,7 @@ READ8_MEMBER(scobra_state::hustler_ppi8255_1_r){ return m_ppi8255_1->read(space,
WRITE8_MEMBER(scobra_state::hustler_ppi8255_0_w){ m_ppi8255_0->write(space, offset >> 3, data); }
WRITE8_MEMBER(scobra_state::hustler_ppi8255_1_w){ m_ppi8255_1->write(space, offset >> 3, data); }
-static ADDRESS_MAP_START( type1_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::type1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram") AM_MIRROR(0x0400)
@@ -142,7 +156,7 @@ static ADDRESS_MAP_START( type1_map, AS_PROGRAM, 8, scobra_state )
AM_RANGE(0xb000, 0xb000) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( type2_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::type2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x883f) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
@@ -161,7 +175,7 @@ static ADDRESS_MAP_START( type2_map, AS_PROGRAM, 8, scobra_state )
AM_RANGE(0xb00e, 0xb00e) AM_WRITE(galaxold_flip_screen_x_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tazmani3_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::tazmani3_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x883f) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
@@ -180,7 +194,7 @@ static ADDRESS_MAP_START( tazmani3_map, AS_PROGRAM, 8, scobra_state )
AM_RANGE(0xb00e, 0xb00e) AM_WRITE(galaxold_flip_screen_x_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hustler_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::hustler_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -197,7 +211,7 @@ static ADDRESS_MAP_START( hustler_map, AS_PROGRAM, 8, scobra_state )
AM_RANGE(0xe000, 0xe01f) AM_READWRITE(hustler_ppi8255_1_r, hustler_ppi8255_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hustlerb_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::hustlerb_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -215,7 +229,7 @@ static ADDRESS_MAP_START( hustlerb_map, AS_PROGRAM, 8, scobra_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::mimonkey_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram") AM_MIRROR(0x0400)
@@ -234,7 +248,7 @@ static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8, scobra_state )
ADDRESS_MAP_END
// weird address map like anteateruk in galaxian.c (also a free enterprise set)
-static ADDRESS_MAP_START( rescuefe_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::rescuefe_map)
AM_RANGE(0x0000, 0x05ff) AM_ROM
AM_RANGE(0x0600, 0x0fff) AM_RAM // sets stack here
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -269,7 +283,7 @@ static ADDRESS_MAP_START( rescuefe_map, AS_PROGRAM, 8, scobra_state )
// AM_RANGE(0xf000, 0xf000) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( minefldfe_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::minefldfe_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM // ok
AM_RANGE(0x0c00, 0x0c3f) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram") // ok
AM_RANGE(0x0c40, 0x0c5f) AM_RAM AM_SHARE("spriteram") // ok
@@ -312,7 +326,7 @@ WRITE8_MEMBER(scobra_state::scobra_soundram_w)
m_soundram[offset & 0x03ff] = data;
}
-static ADDRESS_MAP_START( scobra_sound_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::scobra_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_WRITENOP AM_SHARE("soundram") /* only here to initialize pointer */
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(scobra_soundram_r, scobra_soundram_w)
@@ -320,7 +334,7 @@ static ADDRESS_MAP_START( scobra_sound_map, AS_PROGRAM, 8, scobra_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scobra_sound_io_map, AS_IO, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::scobra_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_DEVWRITE("ay1", ay8910_device, address_w)
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("ay1", ay8910_device, data_r, data_w)
@@ -328,26 +342,26 @@ static ADDRESS_MAP_START( scobra_sound_io_map, AS_IO, 8, scobra_state )
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hustler_sound_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::hustler_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x6000, 0x6fff) AM_WRITE(frogger_filter_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hustler_sound_io_map, AS_IO, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::hustler_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
AM_RANGE(0x80, 0x80) AM_DEVWRITE("aysnd", ay8910_device, address_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hustlerb_sound_map, AS_PROGRAM, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::hustlerb_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_WRITE(frogger_filter_w)
AM_RANGE(0x8000, 0x8fff) AM_RAM_READ(scobra_soundram_r) AM_SHARE("soundram") /* only here to initialize pointer */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hustlerb_sound_io_map, AS_IO, 8, scobra_state )
+ADDRESS_MAP_START(scobra_state::hustlerb_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
diff --git a/src/mame/drivers/scopus.cpp b/src/mame/drivers/scopus.cpp
index e02dae15407..e14a9010f6e 100644
--- a/src/mame/drivers/scopus.cpp
+++ b/src/mame/drivers/scopus.cpp
@@ -46,6 +46,8 @@ public:
I8275_DRAW_CHARACTER_MEMBER(crtc_display_pixels);
void sagitta180(machine_config &config);
+ void maincpu_io_map(address_map &map);
+ void maincpu_map(address_map &map);
private:
/* devices */
required_device<palette_device> m_palette;
@@ -115,7 +117,7 @@ void sagitta180_state::machine_reset()
{
}
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, sagitta180_state )
+ADDRESS_MAP_START(sagitta180_state::maincpu_map)
ADDRESS_MAP_GLOBAL_MASK(0xffff)
AM_RANGE(0x0000, 0x07ff) AM_ROM
// AM_RANGE(0x0800, 0x17ff) AM_ROM
@@ -123,7 +125,7 @@ static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, sagitta180_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maincpu_io_map, AS_IO, 8, sagitta180_state )
+ADDRESS_MAP_START(sagitta180_state::maincpu_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW")
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
AM_RANGE(0x21, 0x21) AM_DEVREADWRITE("uart", i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/scorpion.cpp b/src/mame/drivers/scorpion.cpp
index 09caa0c4250..31137594861 100644
--- a/src/mame/drivers/scorpion.cpp
+++ b/src/mame/drivers/scorpion.cpp
@@ -36,6 +36,9 @@ public:
void scorpion(machine_config &config);
void profi(machine_config &config);
void quorum(machine_config &config);
+ void scorpion_io(address_map &map);
+ void scorpion_mem(address_map &map);
+ void scorpion_switch(address_map &map);
protected:
required_memory_bank m_bank1;
required_memory_bank m_bank2;
@@ -173,14 +176,14 @@ READ8_MEMBER(scorpion_state::beta_disable_r)
return m_program->read_byte(offset + 0x4000);
}
-static ADDRESS_MAP_START( scorpion_mem, AS_PROGRAM, 8, scorpion_state )
+ADDRESS_MAP_START(scorpion_state::scorpion_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") AM_WRITE(scorpion_0000_w)
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START (scorpion_io, AS_IO, 8, scorpion_state )
+ADDRESS_MAP_START(scorpion_state::scorpion_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x001f, 0x001f) AM_DEVREADWRITE(BETA_DISK_TAG, beta_disk_device, status_r, command_w) AM_MIRROR(0xff00)
AM_RANGE(0x003f, 0x003f) AM_DEVREADWRITE(BETA_DISK_TAG, beta_disk_device, track_r, track_w) AM_MIRROR(0xff00)
@@ -194,7 +197,7 @@ static ADDRESS_MAP_START (scorpion_io, AS_IO, 8, scorpion_state )
AM_RANGE(0x0021, 0x0021) AM_WRITE(scorpion_port_1ffd_w) AM_MIRROR(0x3fdc)
ADDRESS_MAP_END
-static ADDRESS_MAP_START (scorpion_switch, AS_OPCODES, 8, scorpion_state)
+ADDRESS_MAP_START(scorpion_state::scorpion_switch)
AM_RANGE(0x0000, 0x3fff) AM_READ(beta_neutral_r) // Overlap with previous because we want real addresses on the 3e00-3fff range
AM_RANGE(0x3d00, 0x3dff) AM_READ(beta_enable_r)
AM_RANGE(0x4000, 0xffff) AM_READ(beta_disable_r)
@@ -287,7 +290,7 @@ MACHINE_CONFIG_DERIVED(scorpion_state::scorpion, spectrum_128)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(scorpion_mem)
MCFG_CPU_IO_MAP(scorpion_io)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(scorpion_switch)
+ MCFG_CPU_OPCODES_MAP(scorpion_switch)
MCFG_MACHINE_START_OVERRIDE(scorpion_state, scorpion )
MCFG_MACHINE_RESET_OVERRIDE(scorpion_state, scorpion )
diff --git a/src/mame/drivers/scotrsht.cpp b/src/mame/drivers/scotrsht.cpp
index e8c457383ba..d56c8ab8bce 100644
--- a/src/mame/drivers/scotrsht.cpp
+++ b/src/mame/drivers/scotrsht.cpp
@@ -64,7 +64,7 @@ WRITE8_MEMBER(scotrsht_state::soundlatch_w)
m_audiocpu->set_input_line(0, HOLD_LINE);
}
-static ADDRESS_MAP_START( scotrsht_map, AS_PROGRAM, 8, scotrsht_state )
+ADDRESS_MAP_START(scotrsht_state::scotrsht_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1000, 0x10bf) AM_RAM AM_SHARE("spriteram") /* sprites */
@@ -88,13 +88,13 @@ static ADDRESS_MAP_START( scotrsht_map, AS_PROGRAM, 8, scotrsht_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scotrsht_sound_map, AS_PROGRAM, 8, scotrsht_state )
+ADDRESS_MAP_START(scotrsht_state::scotrsht_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scotrsht_sound_port, AS_IO, 8, scotrsht_state )
+ADDRESS_MAP_START(scotrsht_state::scotrsht_sound_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/scramble.cpp b/src/mame/drivers/scramble.cpp
index 4cfe5da3a8d..f59432b2946 100644
--- a/src/mame/drivers/scramble.cpp
+++ b/src/mame/drivers/scramble.cpp
@@ -40,7 +40,7 @@ Notes:
#include "speaker.h"
-static ADDRESS_MAP_START( scramble_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::scramble_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -71,14 +71,14 @@ WRITE8_MEMBER(scramble_state::scramble_soundram_w)
m_soundram[offset & 0x03ff] = data;
}
-static ADDRESS_MAP_START( scramble_sound_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::scramble_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_WRITENOP AM_SHARE("soundram") /* only here to initialize pointer */
AM_RANGE(0x8000, 0x8fff) AM_READWRITE(scramble_soundram_r, scramble_soundram_w)
AM_RANGE(0x9000, 0x9fff) AM_WRITE(scramble_filter_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scramble_sound_io_map, AS_IO, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::scramble_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_DEVWRITE("8910.1", ay8910_device, address_w)
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("8910.1", ay8910_device, data_r, data_w)
@@ -87,7 +87,7 @@ static ADDRESS_MAP_START( scramble_sound_io_map, AS_IO, 8, scramble_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ckongs_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::ckongs_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6bff) AM_RAM
AM_RANGE(0x7000, 0x7003) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -126,7 +126,7 @@ WRITE8_MEMBER(scramble_state::mars_ppi8255_1_w)
m_ppi8255_1->write(space, ((offset >> 2) & 0x02) | ((offset >> 1) & 0x01), data);
}
-static ADDRESS_MAP_START( mars_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::mars_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -149,7 +149,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( newsin7_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::newsin7_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -172,7 +172,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrkougar_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::mrkougar_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -193,7 +193,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotshock_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::hotshock_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -218,7 +218,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( hunchbks_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::hunchbks_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1210, 0x1213) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
AM_RANGE(0x1400, 0x143f) AM_RAM_WRITE(galaxold_attributesram_w) AM_SHARE("attributesram")
@@ -242,7 +242,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( mimonscr_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::mimonscr_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror address?, probably not */
AM_RANGE(0x4400, 0x47ff) AM_RAM
@@ -263,7 +263,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( ad2083_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::ad2083_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_SHARE("videoram")
@@ -291,7 +291,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( triplep_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::triplep_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_SHARE("videoram")
@@ -310,7 +310,7 @@ static ADDRESS_MAP_START( triplep_map, AS_PROGRAM, 8, scramble_state )
AM_RANGE(0x8100, 0x8103) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( triplep_io_map, AS_IO, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::triplep_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("8910.1", ay8910_device, data_address_w)
AM_RANGE(0x01, 0x01) AM_DEVREAD("8910.1", ay8910_device, data_r)
@@ -318,7 +318,7 @@ static ADDRESS_MAP_START( triplep_io_map, AS_IO, 8, scramble_state )
AM_RANGE(0x03, 0x03) AM_READ(triplep_pap_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotshock_sound_io_map, AS_IO, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::hotshock_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_DEVWRITE("8910.1", ay8910_device, address_w)
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("8910.1", ay8910_device, data_r, data_w)
@@ -336,14 +336,14 @@ READ8_MEMBER(scramble_state::hncholms_prot_r)
return 0;
}
-static ADDRESS_MAP_START( hunchbks_readport, AS_IO, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::hunchbks_readport)
AM_RANGE(0x00, 0x00) AM_READ(hncholms_prot_r)
ADDRESS_MAP_END
// Harem
-static ADDRESS_MAP_START( harem_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::harem_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
@@ -374,19 +374,19 @@ static ADDRESS_MAP_START( harem_map, AS_PROGRAM, 8, scramble_state )
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("rombank") // bitswapped rom
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("rombank_decrypted")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( harem_sound_map, AS_PROGRAM, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::harem_sound_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x6000, 0x6000) AM_READ(harem_digitalker_intr_r)
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0xa000, 0xafff) AM_WRITE(scramble_filter_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( harem_sound_io_map, AS_IO, 8, scramble_state )
+ADDRESS_MAP_START(scramble_state::harem_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// ports->speech:
@@ -1598,7 +1598,7 @@ MACHINE_CONFIG_DERIVED(scramble_state::harem, scramble)
/* basic machine hardware */
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(harem_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_MODIFY("audiocpu")
MCFG_CPU_PROGRAM_MAP(harem_sound_map)
diff --git a/src/mame/drivers/scregg.cpp b/src/mame/drivers/scregg.cpp
index ee22c8e3156..730e2c9b438 100644
--- a/src/mame/drivers/scregg.cpp
+++ b/src/mame/drivers/scregg.cpp
@@ -75,6 +75,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(scregg_interrupt);
void scregg(machine_config &config);
void dommy(machine_config &config);
+ void dommy_map(address_map &map);
+ void eggs_map(address_map &map);
};
@@ -97,7 +99,7 @@ READ8_MEMBER(scregg_state::scregg_irqack_r)
}
-static ADDRESS_MAP_START( dommy_map, AS_PROGRAM, 8, scregg_state )
+ADDRESS_MAP_START(scregg_state::dommy_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x23ff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x2400, 0x27ff) AM_RAM AM_SHARE("colorram")
@@ -112,7 +114,7 @@ static ADDRESS_MAP_START( dommy_map, AS_PROGRAM, 8, scregg_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eggs_map, AS_PROGRAM, 8, scregg_state )
+ADDRESS_MAP_START(scregg_state::eggs_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x1400, 0x17ff) AM_RAM AM_SHARE("colorram")
diff --git a/src/mame/drivers/scv.cpp b/src/mame/drivers/scv.cpp
index 7b37ec97988..863cd0ffb85 100644
--- a/src/mame/drivers/scv.cpp
+++ b/src/mame/drivers/scv.cpp
@@ -45,6 +45,7 @@ public:
void scv(machine_config &config);
void scv_pal(machine_config &config);
+ void scv_mem(address_map &map);
protected:
enum
{
@@ -69,7 +70,7 @@ protected:
};
-static ADDRESS_MAP_START( scv_mem, AS_PROGRAM, 8, scv_state )
+ADDRESS_MAP_START(scv_state::scv_mem)
AM_RANGE( 0x0000, 0x0fff ) AM_ROM // BIOS
AM_RANGE( 0x2000, 0x3403 ) AM_RAM AM_SHARE("videoram") // VRAM + 4 registers
diff --git a/src/mame/drivers/scyclone.cpp b/src/mame/drivers/scyclone.cpp
index f7f0bf14cc2..e88d11e53ff 100644
--- a/src/mame/drivers/scyclone.cpp
+++ b/src/mame/drivers/scyclone.cpp
@@ -89,6 +89,10 @@ public:
CUSTOM_INPUT_MEMBER(collision_r);
void scyclone(machine_config &config);
+ void scyclone_iomap(address_map &map);
+ void scyclone_map(address_map &map);
+ void scyclone_sub_iomap(address_map &map);
+ void scyclone_sub_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -295,7 +299,7 @@ uint32_t scyclone_state::screen_update_scyclone(screen_device &screen, bitmap_rg
-static ADDRESS_MAP_START( scyclone_map, AS_PROGRAM, 8, scyclone_state )
+ADDRESS_MAP_START(scyclone_state::scyclone_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x4400, 0x5fff) AM_READWRITE(vram_r,vram_w)
@@ -303,7 +307,7 @@ static ADDRESS_MAP_START( scyclone_map, AS_PROGRAM, 8, scyclone_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scyclone_iomap, AS_IO, 8, scyclone_state )
+ADDRESS_MAP_START(scyclone_state::scyclone_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("mb14241", mb14241_device, shift_result_r) AM_DEVWRITE("mb14241", mb14241_device, shift_count_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_DEVWRITE("mb14241", mb14241_device, shift_data_w)
@@ -322,7 +326,7 @@ static ADDRESS_MAP_START( scyclone_iomap, AS_IO, 8, scyclone_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scyclone_sub_map, AS_PROGRAM, 8, scyclone_state )
+ADDRESS_MAP_START(scyclone_state::scyclone_sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
@@ -334,7 +338,7 @@ static ADDRESS_MAP_START( scyclone_sub_map, AS_PROGRAM, 8, scyclone_state )
AM_RANGE(0x3005, 0x3005) AM_WRITE(snd_3005_w) // written at the same time, with the same data as 0x3001
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scyclone_sub_iomap, AS_IO, 8, scyclone_state )
+ADDRESS_MAP_START(scyclone_state::scyclone_sub_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sderby.cpp b/src/mame/drivers/sderby.cpp
index 551f310b46b..bfe91bc9957 100644
--- a/src/mame/drivers/sderby.cpp
+++ b/src/mame/drivers/sderby.cpp
@@ -296,7 +296,7 @@ WRITE16_MEMBER(sderby_state::roulette_out_w)
* Memory Maps *
***************************/
-static ADDRESS_MAP_START( sderby_map, AS_PROGRAM, 16, sderby_state )
+ADDRESS_MAP_START(sderby_state::sderby_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_SHARE("videoram") /* bg */
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_SHARE("md_videoram") /* mid */
@@ -314,7 +314,7 @@ static ADDRESS_MAP_START( sderby_map, AS_PROGRAM, 16, sderby_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sderbya_map, AS_PROGRAM, 16, sderby_state )
+ADDRESS_MAP_START(sderby_state::sderbya_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_SHARE("videoram") /* bg */
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_SHARE("md_videoram") /* mid */
@@ -333,7 +333,7 @@ static ADDRESS_MAP_START( sderbya_map, AS_PROGRAM, 16, sderby_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( luckboom_map, AS_PROGRAM, 16, sderby_state )
+ADDRESS_MAP_START(sderby_state::luckboom_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_SHARE("videoram") /* bg */
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_SHARE("md_videoram") /* mid */
@@ -351,7 +351,7 @@ static ADDRESS_MAP_START( luckboom_map, AS_PROGRAM, 16, sderby_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacewin_map, AS_PROGRAM, 16, sderby_state )
+ADDRESS_MAP_START(sderby_state::spacewin_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_SHARE("videoram") /* bg */
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_SHARE("md_videoram") /* mid */
@@ -372,7 +372,7 @@ static ADDRESS_MAP_START( spacewin_map, AS_PROGRAM, 16, sderby_state )
AM_RANGE(0x8fc000, 0x8fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shinygld_map, AS_PROGRAM, 16, sderby_state )
+ADDRESS_MAP_START(sderby_state::shinygld_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_SHARE("videoram") /* bg */
AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_SHARE("md_videoram") /* mid */
@@ -392,7 +392,7 @@ static ADDRESS_MAP_START( shinygld_map, AS_PROGRAM, 16, sderby_state )
AM_RANGE(0x7f0000, 0x7fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roulette_map, AS_PROGRAM, 16, sderby_state )
+ADDRESS_MAP_START(sderby_state::roulette_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x440000, 0x440fff) AM_WRITEONLY AM_SHARE("spriteram")
AM_RANGE(0x500000, 0x500fff) AM_RAM_WRITE(sderby_videoram_w) AM_SHARE("videoram") /* bg */
diff --git a/src/mame/drivers/sderby2.cpp b/src/mame/drivers/sderby2.cpp
index c2cbb5d1d3b..40f907dfd3d 100644
--- a/src/mame/drivers/sderby2.cpp
+++ b/src/mame/drivers/sderby2.cpp
@@ -79,6 +79,10 @@ public:
uint8_t main_data;
uint8_t host_io_40;
void sderby2(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_program_map(address_map &map);
+ void sub_io_map(address_map &map);
+ void sub_program_map(address_map &map);
};
@@ -178,7 +182,7 @@ READ8_MEMBER(sderby2_state::sub_io_0_r)
2KB of palette per screen? (0x7FF)
*/
-static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, sderby2_state )
+ADDRESS_MAP_START(sderby2_state::main_program_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xbfff) AM_RAM
@@ -190,7 +194,7 @@ static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, sderby2_state )
AM_RANGE(0xf000, 0xffff) AM_RAM // Is this banked?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, sderby2_state )
+ADDRESS_MAP_START(sderby2_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_READ(host_r)
AM_RANGE(0x20, 0x20) AM_WRITE(sub_nmi)
@@ -206,7 +210,7 @@ ADDRESS_MAP_END
18 x 2148 (1024x4) Side
4 x 2148 (1024x4) Near 316-5012 and 316-5011
*/
-static ADDRESS_MAP_START( sub_program_map, AS_PROGRAM, 8, sderby2_state )
+ADDRESS_MAP_START(sderby2_state::sub_program_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM // Tested at FFF, 1016, 102D
@@ -218,7 +222,7 @@ static ADDRESS_MAP_START( sub_program_map, AS_PROGRAM, 8, sderby2_state )
AM_RANGE(0xe000, 0xffff) AM_RAM // Tested at FE8
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_io_map, AS_IO, 8, sderby2_state )
+ADDRESS_MAP_START(sderby2_state::sub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(sub_io_0_r)
AM_RANGE(0x20, 0x20) AM_READ(sub_r)
diff --git a/src/mame/drivers/sdk80.cpp b/src/mame/drivers/sdk80.cpp
index 261d51b5344..9c10cc73505 100644
--- a/src/mame/drivers/sdk80.cpp
+++ b/src/mame/drivers/sdk80.cpp
@@ -54,6 +54,8 @@ public:
DECLARE_WRITE_LINE_MEMBER( usart_clock_tick );
void sdk80(machine_config &config);
+ void sdk80_io(address_map &map);
+ void sdk80_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<i8251_device> m_usart;
@@ -66,13 +68,13 @@ private:
uint8_t m_usart_clock_state;
};
-static ADDRESS_MAP_START(sdk80_mem, AS_PROGRAM, 8, sdk80_state)
+ADDRESS_MAP_START(sdk80_state::sdk80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x13ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sdk80_io, AS_IO, 8, sdk80_state)
+ADDRESS_MAP_START(sdk80_state::sdk80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xec, 0xef) AM_DEVREADWRITE(I8255A_1_TAG, i8255_device, read, write)
diff --git a/src/mame/drivers/sdk85.cpp b/src/mame/drivers/sdk85.cpp
index 88582fd451e..c0da59579b1 100644
--- a/src/mame/drivers/sdk85.cpp
+++ b/src/mame/drivers/sdk85.cpp
@@ -60,6 +60,8 @@ public:
void sdk85(machine_config &config);
+ void sdk85_io(address_map &map);
+ void sdk85_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -75,7 +77,7 @@ void sdk85_state::machine_reset()
m_maincpu->reset();
}
-static ADDRESS_MAP_START(sdk85_mem, AS_PROGRAM, 8, sdk85_state)
+ADDRESS_MAP_START(sdk85_state::sdk85_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_DEVREAD("romio", i8355_device, memory_r)
AM_RANGE(0x0800, 0x0fff) AM_DEVREAD("expromio", i8355_device, memory_r)
@@ -85,7 +87,7 @@ static ADDRESS_MAP_START(sdk85_mem, AS_PROGRAM, 8, sdk85_state)
AM_RANGE(0x2800, 0x28ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("expramio", i8155_device, memory_r, memory_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sdk85_io, AS_IO, 8, sdk85_state)
+ADDRESS_MAP_START(sdk85_state::sdk85_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_MIRROR(0x04) AM_DEVREADWRITE("romio", i8355_device, io_r, io_w)
AM_RANGE(0x08, 0x0b) AM_MIRROR(0x04) AM_DEVREADWRITE("expromio", i8355_device, io_r, io_w)
diff --git a/src/mame/drivers/sdk86.cpp b/src/mame/drivers/sdk86.cpp
index 96cde51f5f2..d214e156650 100644
--- a/src/mame/drivers/sdk86.cpp
+++ b/src/mame/drivers/sdk86.cpp
@@ -52,17 +52,19 @@ public:
DECLARE_READ8_MEMBER(kbd_r);
void sdk86(machine_config &config);
+ void sdk86_io(address_map &map);
+ void sdk86_mem(address_map &map);
private:
uint8_t m_digit;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(sdk86_mem, AS_PROGRAM, 16, sdk86_state)
+ADDRESS_MAP_START(sdk86_state::sdk86_mem)
AM_RANGE(0x00000, 0x00fff) AM_RAM //2K standard, or 4k (board fully populated)
AM_RANGE(0xfe000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sdk86_io, AS_IO, 16, sdk86_state)
+ADDRESS_MAP_START(sdk86_state::sdk86_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xfff0, 0xfff1) AM_MIRROR(4) AM_DEVREADWRITE8(I8251_TAG, i8251_device, data_r, data_w, 0xff)
AM_RANGE(0xfff2, 0xfff3) AM_MIRROR(4) AM_DEVREADWRITE8(I8251_TAG, i8251_device, status_r, control_w, 0xff)
diff --git a/src/mame/drivers/seabattl.cpp b/src/mame/drivers/seabattl.cpp
index f95c79f6759..da09ec3b6df 100644
--- a/src/mame/drivers/seabattl.cpp
+++ b/src/mame/drivers/seabattl.cpp
@@ -106,6 +106,8 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void seabattl(machine_config &config);
+ void seabattl_data_map(address_map &map);
+ void seabattl_map(address_map &map);
};
@@ -250,7 +252,7 @@ void seabattl_state::video_start()
***************************************************************************/
-static ADDRESS_MAP_START( seabattl_map, AS_PROGRAM, 8, seabattl_state )
+ADDRESS_MAP_START(seabattl_state::seabattl_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x2000, 0x33ff) AM_ROM
@@ -268,7 +270,7 @@ static ADDRESS_MAP_START( seabattl_map, AS_PROGRAM, 8, seabattl_state )
AM_RANGE(0x1f00, 0x1fff) AM_MIRROR(0x2000) AM_DEVREADWRITE("s2636", s2636_device, read_data, write_data)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( seabattl_data_map, AS_DATA, 8, seabattl_state )
+ADDRESS_MAP_START(seabattl_state::seabattl_data_map)
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE( seabattl_collision_r, seabattl_control_w )
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE( seabattl_collision_clear_r, seabattl_collision_clear_w )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sealy.cpp b/src/mame/drivers/sealy.cpp
index 95a06e2ea11..25bdb8250ec 100644
--- a/src/mame/drivers/sealy.cpp
+++ b/src/mame/drivers/sealy.cpp
@@ -53,6 +53,7 @@ public:
DECLARE_PALETTE_INIT(sealy);
uint32_t screen_update_sealy(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void sealy(machine_config &config);
+ void sealy_map(address_map &map);
};
@@ -69,7 +70,7 @@ uint32_t sealy_state::screen_update_sealy(screen_device &screen, bitmap_rgb32 &b
}
-static ADDRESS_MAP_START( sealy_map, AS_PROGRAM, 16, sealy_state )
+ADDRESS_MAP_START(sealy_state::sealy_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/seattle.cpp b/src/mame/drivers/seattle.cpp
index f83776894ce..f039e6b7c92 100644
--- a/src/mame/drivers/seattle.cpp
+++ b/src/mame/drivers/seattle.cpp
@@ -388,6 +388,11 @@ public:
void mace(machine_config &config);
void vaportrx(machine_config &config);
void sfrushrk(machine_config &config);
+ void seattle_cs0_map(address_map &map);
+ void seattle_cs1_map(address_map &map);
+ void seattle_cs2_map(address_map &map);
+ void seattle_cs3_map(address_map &map);
+ void seattle_flagstaff_cs3_map(address_map &map);
};
@@ -1100,19 +1105,19 @@ PCI Mem = 08000000-09FFFFFF
*/
-static ADDRESS_MAP_START(seattle_cs0_map, AS_PROGRAM, 32, seattle_state)
+ADDRESS_MAP_START(seattle_state::seattle_cs0_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(seattle_cs1_map, AS_PROGRAM, 32, seattle_state)
+ADDRESS_MAP_START(seattle_state::seattle_cs1_map)
AM_RANGE(0x01000000, 0x01000003) AM_WRITE(asic_fifo_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(seattle_cs2_map, AS_PROGRAM, 32, seattle_state)
+ADDRESS_MAP_START(seattle_state::seattle_cs2_map)
AM_RANGE(0x00000000, 0x00000003) AM_READWRITE(analog_port_r, analog_port_w) // Flagstaff only
ADDRESS_MAP_END
// This map shares the PHOENIX, SEATTLE, and SEATTLE_WIDGET calls
-static ADDRESS_MAP_START(seattle_cs3_map, AS_PROGRAM, 32, seattle_state)
+ADDRESS_MAP_START(seattle_state::seattle_cs3_map)
AM_RANGE(0x00000000, 0x0000003f) AM_DEVREADWRITE("ioasic", midway_ioasic_device, read, write)
AM_RANGE(0x00100000, 0x0011ffff) AM_READWRITE(cmos_r, cmos_w)
AM_RANGE(0x00800000, 0x0080001f) AM_READWRITE(carnevil_gun_r, carnevil_gun_w) // Carnevil driver only
@@ -1129,7 +1134,7 @@ static ADDRESS_MAP_START(seattle_cs3_map, AS_PROGRAM, 32, seattle_state)
AM_RANGE(0x01f00000, 0x01f00003) AM_READWRITE(asic_reset_r, asic_reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(seattle_flagstaff_cs3_map, AS_PROGRAM, 32, seattle_state)
+ADDRESS_MAP_START(seattle_state::seattle_flagstaff_cs3_map)
AM_RANGE(0x00000000, 0x0000003f) AM_DEVREADWRITE("ioasic", midway_ioasic_device, read, write)
AM_RANGE(0x00100000, 0x0011ffff) AM_READWRITE(cmos_r, cmos_w)
AM_RANGE(0x00c00000, 0x00c0003f) AM_READWRITE(ethernet_r, ethernet_w);
@@ -1872,10 +1877,10 @@ MACHINE_CONFIG_START(seattle_state::seattle_common)
MCFG_PCI_ROOT_ADD(":pci")
MCFG_GT64010_ADD(PCI_ID_GALILEO, ":maincpu", SYSTEM_CLOCK, GALILEO_IRQ_NUM)
- MCFG_GT64XXX_SET_CS(0, seattle_cs0_map)
- MCFG_GT64XXX_SET_CS(1, seattle_cs1_map)
- MCFG_GT64XXX_SET_CS(2, seattle_cs2_map)
- MCFG_GT64XXX_SET_CS(3, seattle_cs3_map)
+ MCFG_GT64XXX_SET_CS(0, seattle_state::seattle_cs0_map)
+ MCFG_GT64XXX_SET_CS(1, seattle_state::seattle_cs1_map)
+ MCFG_GT64XXX_SET_CS(2, seattle_state::seattle_cs2_map)
+ MCFG_GT64XXX_SET_CS(3, seattle_state::seattle_cs3_map)
MCFG_GT64XX_SET_SIMM0(0x00800000)
MCFG_IDE_PCI_ADD(PCI_ID_IDE, 0x100b0002, 0x01, 0x0)
@@ -1948,7 +1953,7 @@ MACHINE_CONFIG_DERIVED(seattle_state::flagstaff, seattle_common)
MCFG_MIPS3_SYSTEM_CLOCK(SYSTEM_CLOCK)
MCFG_DEVICE_MODIFY(PCI_ID_GALILEO)
- MCFG_GT64XXX_SET_CS(3, seattle_flagstaff_cs3_map)
+ MCFG_GT64XXX_SET_CS(3, seattle_state::seattle_flagstaff_cs3_map)
MCFG_SMC91C94_ADD("ethernet")
MCFG_SMC91C94_IRQ_CALLBACK(WRITELINE(seattle_state, ethernet_interrupt))
diff --git a/src/mame/drivers/seattlecmp.cpp b/src/mame/drivers/seattlecmp.cpp
index f6f5d4f6537..07a2a513e28 100644
--- a/src/mame/drivers/seattlecmp.cpp
+++ b/src/mame/drivers/seattlecmp.cpp
@@ -50,6 +50,8 @@ public:
DECLARE_READ8_MEMBER(pic_slave_ack);
void seattle(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device_array<pic8259_device, 2> m_pic;
@@ -65,13 +67,13 @@ READ8_MEMBER(seattle_comp_state::pic_slave_ack)
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 16, seattle_comp_state)
+ADDRESS_MAP_START(seattle_comp_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0xff7ff) AM_RAM
AM_RANGE(0xff800,0xfffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 16, seattle_comp_state)
+ADDRESS_MAP_START(seattle_comp_state::io_map)
//ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf0, 0xf1) AM_DEVREADWRITE8("pic1", pic8259_device, read, write, 0xffff)
diff --git a/src/mame/drivers/segac2.cpp b/src/mame/drivers/segac2.cpp
index bc3c5d17c4b..21e8723dd65 100644
--- a/src/mame/drivers/segac2.cpp
+++ b/src/mame/drivers/segac2.cpp
@@ -215,6 +215,7 @@ public:
int prot_func_pclubjv5(int in);
void segac2(machine_config &config);
void segac(machine_config &config);
+ void main_map(address_map &map);
};
@@ -638,7 +639,7 @@ WRITE16_MEMBER(segac2_state::print_club_camera_w)
******************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, segac2_state )
+ADDRESS_MAP_START(segac2_state::main_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_MIRROR(0x13fdfe) AM_READWRITE8(prot_r, prot_w, 0x00ff)
AM_RANGE(0x800200, 0x800201) AM_MIRROR(0x13fdfe) AM_WRITE8(control_w, 0x00ff)
diff --git a/src/mame/drivers/segacoin.cpp b/src/mame/drivers/segacoin.cpp
index 2711233d912..03c727c7721 100644
--- a/src/mame/drivers/segacoin.cpp
+++ b/src/mame/drivers/segacoin.cpp
@@ -34,6 +34,10 @@ public:
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
void westdrm(machine_config &config);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
@@ -45,23 +49,23 @@ public:
/* Memory maps */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, segacoin_state )
+ADDRESS_MAP_START(segacoin_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, segacoin_state )
+ADDRESS_MAP_START(segacoin_state::main_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segacoin_state )
+ADDRESS_MAP_START(segacoin_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segacoin_state )
+ADDRESS_MAP_START(segacoin_state::sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/segae.cpp b/src/mame/drivers/segae.cpp
index a3271606e6f..74ad723a84a 100644
--- a/src/mame/drivers/segae.cpp
+++ b/src/mame/drivers/segae.cpp
@@ -347,6 +347,12 @@ public:
void hangonjr(machine_config &config);
void systeme(machine_config &config);
void systemeb(machine_config &config);
+ void banked_decrypted_opcodes_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void io_map(address_map &map);
+ void systeme_map(address_map &map);
+ void vdp1_map(address_map &map);
+ void vdp2_map(address_map &map);
private:
// Devices
required_device<cpu_device> m_maincpu;
@@ -372,26 +378,26 @@ private:
****************************************************************************************/
/* we have to fill in the ROM addresses for systeme due to the encrypted games */
-static ADDRESS_MAP_START( systeme_map, AS_PROGRAM, 8, systeme_state )
+ADDRESS_MAP_START(systeme_state::systeme_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* Fixed ROM */
AM_RANGE(0x8000, 0xbfff) AM_READ_BANK("bank1") AM_WRITE_BANK("vram_write") /* Banked ROM */
AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, systeme_state )
+ADDRESS_MAP_START(systeme_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( banked_decrypted_opcodes_map, AS_OPCODES, 8, systeme_state )
+ADDRESS_MAP_START(systeme_state::banked_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank0d")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1d")
AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, systeme_state )
+ADDRESS_MAP_START(systeme_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7b, 0x7b) AM_DEVWRITE("sn1", segapsg_device, write)
@@ -411,12 +417,12 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, systeme_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vdp1_map, 0, 8, systeme_state )
+ADDRESS_MAP_START(systeme_state::vdp1_map)
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("vdp1_bank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vdp2_map, 0, 8, systeme_state )
+ADDRESS_MAP_START(systeme_state::vdp2_map)
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("vdp2_bank")
ADDRESS_MAP_END
@@ -925,14 +931,14 @@ MACHINE_CONFIG_DERIVED(systeme_state::systemex, systeme)
MCFG_CPU_REPLACE("maincpu", MC8123, XTAL(10'738'635)/2) /* Z80B @ 5.3693Mhz */
MCFG_CPU_PROGRAM_MAP(systeme_map)
MCFG_CPU_IO_MAP(io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(systeme_state::systemex_315_5177, systeme)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5177, XTAL(10'738'635)/2) /* Z80B @ 5.3693Mhz */
MCFG_CPU_PROGRAM_MAP(systeme_map)
MCFG_CPU_IO_MAP(io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGAZ80_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
@@ -940,7 +946,7 @@ MACHINE_CONFIG_DERIVED(systeme_state::systemeb, systeme)
MCFG_CPU_REPLACE("maincpu", MC8123, XTAL(10'738'635)/2) /* Z80B @ 5.3693Mhz */
MCFG_CPU_PROGRAM_MAP(systeme_map)
MCFG_CPU_IO_MAP(io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(banked_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(banked_decrypted_opcodes_map)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segag80r.cpp b/src/mame/drivers/segag80r.cpp
index 2ba754044ab..3e8f3aa02aa 100644
--- a/src/mame/drivers/segag80r.cpp
+++ b/src/mame/drivers/segag80r.cpp
@@ -332,7 +332,7 @@ WRITE8_MEMBER(segag80r_state::sindbadm_sn2_SN76496_w)
*************************************/
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, segag80r_state )
+ADDRESS_MAP_START(segag80r_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM /* CPU board ROM */
AM_RANGE(0x0800, 0x7fff) AM_ROM /* PROM board ROM area */
AM_RANGE(0x8000, 0xbfff) AM_ROM /* PROM board ROM area */
@@ -340,11 +340,11 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, segag80r_state )
AM_RANGE(0xe000, 0xffff) AM_RAM_WRITE(vidram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( g80r_opcodes_map, AS_OPCODES, 8, segag80r_state )
+ADDRESS_MAP_START(segag80r_state::g80r_opcodes_map)
AM_RANGE(0x0000, 0xffff) AM_READ(g80r_opcode_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sega_315_opcodes_map, AS_OPCODES, 8, segag80r_state )
+ADDRESS_MAP_START(segag80r_state::sega_315_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROM AM_REGION("maincpu", 0x8000)
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(mainram_w) AM_SHARE("mainram")
@@ -353,7 +353,7 @@ ADDRESS_MAP_END
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, segag80r_state )
+ADDRESS_MAP_START(segag80r_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xbe, 0xbf) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w)
AM_RANGE(0xf9, 0xf9) AM_MIRROR(0x04) AM_WRITE(coin_count_w)
@@ -362,7 +362,7 @@ static ADDRESS_MAP_START( main_portmap, AS_IO, 8, segag80r_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_ppi8255_portmap, AS_IO, 8, segag80r_state )
+ADDRESS_MAP_START(segag80r_state::main_ppi8255_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
AM_RANGE(0xbe, 0xbf) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w)
@@ -372,7 +372,7 @@ static ADDRESS_MAP_START( main_ppi8255_portmap, AS_IO, 8, segag80r_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sindbadm_portmap, AS_IO, 8, segag80r_state )
+ADDRESS_MAP_START(segag80r_state::sindbadm_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x42, 0x43) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
@@ -388,7 +388,7 @@ ADDRESS_MAP_END
*************************************/
/* complete memory map derived from System 1 schematics */
-static ADDRESS_MAP_START( sindbadm_sound_map, AS_PROGRAM, 8, segag80r_state )
+ADDRESS_MAP_START(segag80r_state::sindbadm_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_MIRROR(0x1ffc) AM_WRITE(sindbadm_sn1_SN76496_w)
@@ -835,7 +835,7 @@ MACHINE_CONFIG_START(segag80r_state::g80r_base)
MCFG_CPU_ADD("maincpu", Z80, VIDEO_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(main_map)
MCFG_CPU_IO_MAP(main_portmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(g80r_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(g80r_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", segag80r_state, segag80r_vblank_start)
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(segag80r_state, segag80r_irq_ack)
@@ -913,7 +913,7 @@ MACHINE_CONFIG_DERIVED(segag80r_state::monster2, monsterb)
MCFG_CPU_IO_MAP(main_ppi8255_portmap)
MCFG_CPU_VBLANK_INT_DRIVER("screen", segag80r_state, segag80r_vblank_start)
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(segag80r_state, segag80r_irq_ack)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(sega_315_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(sega_315_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
@@ -937,7 +937,7 @@ MACHINE_CONFIG_DERIVED(segag80r_state::sindbadm, g80r_base)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5028, VIDEO_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(main_map)
MCFG_CPU_IO_MAP(sindbadm_portmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(sega_315_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(sega_315_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", segag80r_state, sindbadm_vblank_start)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
diff --git a/src/mame/drivers/segag80v.cpp b/src/mame/drivers/segag80v.cpp
index ca5d4e1fb98..ebb5cb940cc 100644
--- a/src/mame/drivers/segag80v.cpp
+++ b/src/mame/drivers/segag80v.cpp
@@ -373,7 +373,7 @@ WRITE8_MEMBER(segag80v_state::unknown_w)
*************************************/
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, segag80v_state )
+ADDRESS_MAP_START(segag80v_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM /* CPU board ROM */
AM_RANGE(0x0800, 0xbfff) AM_ROM /* PROM board ROM area */
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(mainram_w) AM_SHARE("mainram")
@@ -382,7 +382,7 @@ ADDRESS_MAP_END
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, segag80v_state )
+ADDRESS_MAP_START(segag80v_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xbc, 0xbc) /* AM_READ ??? */
AM_RANGE(0xbd, 0xbe) AM_WRITE(multiply_w)
diff --git a/src/mame/drivers/segahang.cpp b/src/mame/drivers/segahang.cpp
index e95705b1eda..c43dfe7a2d3 100644
--- a/src/mame/drivers/segahang.cpp
+++ b/src/mame/drivers/segahang.cpp
@@ -396,7 +396,7 @@ void segahang_state::sharrier_i8751_sim()
// MAIN CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( hangon_map, AS_PROGRAM, 16, segahang_state )
+ADDRESS_MAP_START(segahang_state::hangon_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x20c000, 0x20ffff) AM_RAM AM_SHARE("workram")
@@ -410,12 +410,12 @@ static ADDRESS_MAP_START( hangon_map, AS_PROGRAM, 16, segahang_state )
AM_RANGE(0xe00000, 0xffffff) AM_READWRITE(hangon_io_r, hangon_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segahang_state )
+ADDRESS_MAP_START(segahang_state::decrypted_opcodes_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sharrier_map, AS_PROGRAM, 16, segahang_state )
+ADDRESS_MAP_START(segahang_state::sharrier_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("workram")
@@ -435,7 +435,7 @@ ADDRESS_MAP_END
//**************************************************************************
// On Super Hang On there is a memory mapper, like the System16 one, todo: emulate it!
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, segahang_state )
+ADDRESS_MAP_START(segahang_state::sub_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x7ffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
@@ -443,7 +443,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, segahang_state )
AM_RANGE(0x07c000, 0x07ffff) AM_RAM AM_SHARE("subram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fd1094_decrypted_opcodes_map, AS_OPCODES, 16, segahang_state )
+ADDRESS_MAP_START(segahang_state::fd1094_decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROMBANK("fd1094_decrypted_opcodes")
ADDRESS_MAP_END
@@ -451,7 +451,7 @@ ADDRESS_MAP_END
// SOUND CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( sound_map_2203, AS_PROGRAM, 8, segahang_state )
+ADDRESS_MAP_START(segahang_state::sound_map_2203)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x0800) AM_RAM
@@ -459,27 +459,27 @@ static ADDRESS_MAP_START( sound_map_2203, AS_PROGRAM, 8, segahang_state )
AM_RANGE(0xe000, 0xe0ff) AM_MIRROR(0x0f00) AM_DEVREADWRITE("pcm", segapcm_device, sega_pcm_r, sega_pcm_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap_2203, AS_IO, 8, segahang_state )
+ADDRESS_MAP_START(segahang_state::sound_portmap_2203)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_READ(sound_data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map_2151, AS_PROGRAM, 8, segahang_state )
+ADDRESS_MAP_START(segahang_state::sound_map_2151)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x700) AM_DEVREADWRITE("pcm", segapcm_device, sega_pcm_r, sega_pcm_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap_2151, AS_IO, 8, segahang_state )
+ADDRESS_MAP_START(segahang_state::sound_portmap_2151)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_READ(sound_data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap_2203x2, AS_IO, 8, segahang_state )
+ADDRESS_MAP_START(segahang_state::sound_portmap_2203x2)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
@@ -493,7 +493,7 @@ ADDRESS_MAP_END
// I8751 MCU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segahang_state )
+ADDRESS_MAP_START(segahang_state::mcu_io_map)
ADDRESS_MAP_END
@@ -933,7 +933,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segahang_state::shangonro, shangupb)
MCFG_CPU_REPLACE("subcpu", FD1094, 10000000)
MCFG_CPU_PROGRAM_MAP(sub_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(fd1094_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(fd1094_decrypted_opcodes_map)
MACHINE_CONFIG_END
@@ -971,7 +971,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segahang_state::endurobl, sharrier_base)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_FRAGMENT_ADD(sound_board_2203)
MACHINE_CONFIG_END
@@ -979,7 +979,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segahang_state::endurob2, sharrier_base)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_FRAGMENT_ADD(sound_board_2203x2)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segajw.cpp b/src/mame/drivers/segajw.cpp
index 7bca046c553..c2ea10ad8b0 100644
--- a/src/mame/drivers/segajw.cpp
+++ b/src/mame/drivers/segajw.cpp
@@ -62,6 +62,11 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER(hopper_sensors_r);
void segajw(machine_config &config);
+ void ramdac_map(address_map &map);
+ void segajw_audiocpu_io_map(address_map &map);
+ void segajw_audiocpu_map(address_map &map);
+ void segajw_hd63484_map(address_map &map);
+ void segajw_map(address_map &map);
protected:
// devices
@@ -161,7 +166,7 @@ CUSTOM_INPUT_MEMBER( segajw_state::coin_sensors_r )
return data;
}
-static ADDRESS_MAP_START( segajw_map, AS_PROGRAM, 16, segajw_state )
+ADDRESS_MAP_START(segajw_state::segajw_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_DEVREADWRITE("hd63484", hd63484_device, status16_r, address16_w)
@@ -184,18 +189,18 @@ static ADDRESS_MAP_START( segajw_map, AS_PROGRAM, 16, segajw_state )
AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( segajw_audiocpu_map, AS_PROGRAM, 8, segajw_state )
+ADDRESS_MAP_START(segajw_state::segajw_audiocpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( segajw_audiocpu_io_map, AS_IO, 8, segajw_state )
+ADDRESS_MAP_START(segajw_state::segajw_audiocpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ymsnd", ym3438_device, read, write)
AM_RANGE(0xc0, 0xc0) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( segajw_hd63484_map, 0, 16, segajw_state )
+ADDRESS_MAP_START(segajw_state::segajw_hd63484_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
AM_RANGE(0x80000, 0xbffff) AM_ROM AM_REGION("gfx1", 0)
ADDRESS_MAP_END
@@ -346,7 +351,7 @@ void segajw_state::machine_reset()
m_coin_counter = 0xff;
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, segajw_state )
+ADDRESS_MAP_START(segajw_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/segald.cpp b/src/mame/drivers/segald.cpp
index ffe7823223e..c6ab36ebf23 100644
--- a/src/mame/drivers/segald.cpp
+++ b/src/mame/drivers/segald.cpp
@@ -70,6 +70,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void astron(machine_config &config);
+ void mainmem(address_map &map);
+ void mainport(address_map &map);
};
/* VIDEO GOODS */
@@ -251,7 +253,7 @@ WRITE8_MEMBER(segald_state::astron_io_bankswitch_w)
/* PROGRAM MAP */
-static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8, segald_state )
+ADDRESS_MAP_START(segald_state::mainmem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
@@ -269,7 +271,7 @@ ADDRESS_MAP_END
/* I/O MAP */
-static ADDRESS_MAP_START( mainport, AS_IO, 8, segald_state )
+ADDRESS_MAP_START(segald_state::mainport)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(astron_io_bankswitch_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/segam1.cpp b/src/mame/drivers/segam1.cpp
index 02363bcc09b..56ced3aad5b 100644
--- a/src/mame/drivers/segam1.cpp
+++ b/src/mame/drivers/segam1.cpp
@@ -76,6 +76,11 @@ public:
required_device<ym3438_device> m_ymsnd;
void unkm1(machine_config &config);
void segam1(machine_config &config);
+ void segam1_comms_map(address_map &map);
+ void segam1_map(address_map &map);
+ void segam1_sound_io_map(address_map &map);
+ void segam1_sound_map(address_map &map);
+ void unkm1_sound_map(address_map &map);
};
void segam1_state::machine_start()
@@ -179,7 +184,7 @@ uint32_t segam1_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap
-static ADDRESS_MAP_START( segam1_map, AS_PROGRAM, 16, segam1_state )
+ADDRESS_MAP_START(segam1_state::segam1_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x340000, 0x340fff) AM_DEVREADWRITE8("dpram", mb8421_device, right_r, right_w, 0x00ff)
AM_RANGE(0xb00000, 0xb0ffff) AM_DEVREADWRITE("tile", segas24_tile_device, tile_r, tile_w)
@@ -200,25 +205,25 @@ static ADDRESS_MAP_START( segam1_map, AS_PROGRAM, 16, segam1_state )
AM_RANGE(0xf00000, 0xf03fff) AM_MIRROR(0x0fc000) AM_RAM // NVRAM?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( segam1_sound_map, AS_PROGRAM, 8, segam1_state )
+ADDRESS_MAP_START(segam1_state::segam1_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("soundbank")
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( unkm1_sound_map, AS_PROGRAM, 8, segam1_state )
+ADDRESS_MAP_START(segam1_state::unkm1_sound_map)
AM_IMPORT_FROM(segam1_sound_map)
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( segam1_sound_io_map, AS_IO, 8, segam1_state )
+ADDRESS_MAP_START(segam1_state::segam1_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ymsnd", ym3438_device, read, write)
AM_RANGE(0xa0, 0xa0) AM_WRITE(sound_a0_bank_w)
AM_RANGE(0xc0, 0xc0) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( segam1_comms_map, AS_PROGRAM, 8, segam1_state )
+ADDRESS_MAP_START(segam1_state::segam1_comms_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa7ff) AM_DEVREADWRITE("dpram", mb8421_device, left_r, left_w)
diff --git a/src/mame/drivers/segaorun.cpp b/src/mame/drivers/segaorun.cpp
index daa11c8c850..bd0d9cc74e3 100644
--- a/src/mame/drivers/segaorun.cpp
+++ b/src/mame/drivers/segaorun.cpp
@@ -883,7 +883,7 @@ WRITE_LINE_MEMBER(segaorun_state::m68k_reset_callback)
// MAIN CPU MEMORY MAP
//**************************************************************************
-static ADDRESS_MAP_START( outrun_map, AS_PROGRAM, 16, segaorun_state )
+ADDRESS_MAP_START(segaorun_state::outrun_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0xffffff) AM_DEVREADWRITE8("mapper", sega_315_5195_mapper_device, read, write, 0x00ff)
@@ -896,7 +896,7 @@ static ADDRESS_MAP_START( outrun_map, AS_PROGRAM, 16, segaorun_state )
AM_RANGE(0x500000, 0x507fff) AM_RAM AM_SHARE("workram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segaorun_state )
+ADDRESS_MAP_START(segaorun_state::decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROMBANK("fd1094_decrypted_opcodes")
ADDRESS_MAP_END
@@ -904,7 +904,7 @@ ADDRESS_MAP_END
// SECOND CPU MEMORY MAP
//**************************************************************************
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, segaorun_state )
+ADDRESS_MAP_START(segaorun_state::sub_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_SHARE("cpu1rom")
@@ -919,14 +919,14 @@ ADDRESS_MAP_END
// SOUND CPU MEMORY MAP
//**************************************************************************
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segaorun_state )
+ADDRESS_MAP_START(segaorun_state::sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("pcm", segapcm_device, sega_pcm_r, sega_pcm_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segaorun_state )
+ADDRESS_MAP_START(segaorun_state::sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1264,7 +1264,7 @@ MACHINE_CONFIG_DERIVED(segaorun_state::outrun_fd1094, outrun)
// basic machine hardware
MCFG_CPU_REPLACE("maincpu", FD1094, MASTER_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(outrun_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segaorun_state::outrun_fd1089a, outrun)
diff --git a/src/mame/drivers/segapico.cpp b/src/mame/drivers/segapico.cpp
index 7030bdbb948..b2516065176 100644
--- a/src/mame/drivers/segapico.cpp
+++ b/src/mame/drivers/segapico.cpp
@@ -156,6 +156,7 @@ public:
DECLARE_DRIVER_INIT(pico);
DECLARE_DRIVER_INIT(picou);
DECLARE_DRIVER_INIT(picoj);
+ void pico_mem(address_map &map);
};
class pico_state : public pico_base_state
@@ -340,7 +341,7 @@ WRITE16_MEMBER(pico_base_state::pico_68k_io_write )
}
}
-static ADDRESS_MAP_START( pico_mem, AS_PROGRAM, 16, pico_base_state )
+ADDRESS_MAP_START(pico_base_state::pico_mem)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x80001f) AM_READWRITE(pico_68k_io_read, pico_68k_io_write)
@@ -564,11 +565,12 @@ public:
required_device<copera_cart_slot_device> m_picocart;
DECLARE_MACHINE_START(copera);
void copera(machine_config &config);
+ void copera_mem(address_map &map);
};
-static ADDRESS_MAP_START( copera_mem, AS_PROGRAM, 16, copera_state )
+ADDRESS_MAP_START(copera_state::copera_mem)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
AM_RANGE(0x800000, 0x80001f) AM_READWRITE(pico_68k_io_read, pico_68k_io_write)
diff --git a/src/mame/drivers/segapm.cpp b/src/mame/drivers/segapm.cpp
index 814d98fd67e..573a1872366 100644
--- a/src/mame/drivers/segapm.cpp
+++ b/src/mame/drivers/segapm.cpp
@@ -24,6 +24,7 @@ public:
uint32_t screen_update_segapm(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void segapm(machine_config &config);
+ void segapm_map(address_map &map);
};
@@ -38,7 +39,7 @@ uint32_t segapm_state::screen_update_segapm(screen_device &screen, bitmap_ind16
-static ADDRESS_MAP_START( segapm_map, AS_PROGRAM, 16, segapm_state )
+ADDRESS_MAP_START(segapm_state::segapm_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
// A15100
diff --git a/src/mame/drivers/segas16a.cpp b/src/mame/drivers/segas16a.cpp
index 76191fea83c..f54c2775a63 100644
--- a/src/mame/drivers/segas16a.cpp
+++ b/src/mame/drivers/segas16a.cpp
@@ -960,7 +960,7 @@ void segas16a_state::sjryuko_lamp_changed_w(uint8_t changed, uint8_t newval)
// MAIN CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( system16a_map, AS_PROGRAM, 16, segas16a_state )
+ADDRESS_MAP_START(segas16a_state::system16a_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x380000) AM_ROM
AM_RANGE(0x400000, 0x407fff) AM_MIRROR(0xb88000) AM_DEVREADWRITE("segaic16vid", segaic16_video_device, tileram_r, tileram_w) AM_SHARE("tileram")
@@ -972,7 +972,7 @@ static ADDRESS_MAP_START( system16a_map, AS_PROGRAM, 16, segas16a_state )
AM_RANGE(0xc70000, 0xc73fff) AM_MIRROR(0x38c000) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segas16a_state )
+ADDRESS_MAP_START(segas16a_state::decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROMBANK("fd1094_decrypted_opcodes")
ADDRESS_MAP_END
@@ -980,18 +980,18 @@ ADDRESS_MAP_END
// SOUND CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas16a_state )
+ADDRESS_MAP_START(segas16a_state::sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe800, 0xe800) AM_READ(sound_data_r)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_decrypted_opcodes_map, AS_OPCODES, 8, segas16a_state )
+ADDRESS_MAP_START(segas16a_state::sound_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("sound_decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas16a_state )
+ADDRESS_MAP_START(segas16a_state::sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -999,7 +999,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas16a_state )
AM_RANGE(0xc0, 0xc0) AM_MIRROR(0x3f) AM_READ(sound_data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_no7751_portmap, AS_IO, 8, segas16a_state )
+ADDRESS_MAP_START(segas16a_state::sound_no7751_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1013,7 +1013,7 @@ ADDRESS_MAP_END
// I8751 MCU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segas16a_state )
+ADDRESS_MAP_START(segas16a_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mcu_io_r, mcu_io_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READNOP AM_WRITE(mcu_control_w)
@@ -2040,7 +2040,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segas16a_state::system16a_fd1094, system16a)
MCFG_CPU_REPLACE("maincpu", FD1094, 10000000)
MCFG_CPU_PROGRAM_MAP(system16a_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", segas16a_state, irq4_line_hold)
MACHINE_CONFIG_END
@@ -2075,7 +2075,7 @@ MACHINE_CONFIG_DERIVED(segas16a_state::system16a_no7751p, system16a_no7751)
MCFG_CPU_REPLACE("soundcpu", SEGA_315_5177, 4000000)
MCFG_CPU_PROGRAM_MAP(sound_map)
MCFG_CPU_IO_MAP(sound_no7751_portmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(sound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(sound_decrypted_opcodes_map)
MCFG_SEGAZ80_SET_DECRYPTED_TAG(":sound_decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas16b.cpp b/src/mame/drivers/segas16b.cpp
index 6635f27ffa3..1247b841905 100644
--- a/src/mame/drivers/segas16b.cpp
+++ b/src/mame/drivers/segas16b.cpp
@@ -1707,7 +1707,7 @@ WRITE16_MEMBER( segas16b_state::sjryuko_custom_io_w )
// MAIN CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( system16b_map, AS_PROGRAM, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::system16b_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0xffffff) AM_DEVREADWRITE8("mapper", sega_315_5195_mapper_device, read, write, 0x00ff)
@@ -1720,11 +1720,11 @@ static ADDRESS_MAP_START( system16b_map, AS_PROGRAM, 16, segas16b_state )
AM_RANGE(0x500000, 0x503fff) AM_RAM AM_SHARE("workram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROMBANK("fd1094_decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( system16c_map, AS_PROGRAM, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::system16c_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0xffffff) AM_DEVREADWRITE8("mapper", sega_315_5195_mapper_device, read, write, 0x00ff)
@@ -1737,7 +1737,7 @@ static ADDRESS_MAP_START( system16c_map, AS_PROGRAM, 16, segas16b_state )
AM_RANGE(0x500000, 0x53ffff) AM_RAM AM_SHARE("workram") // only change from system16b_map
ADDRESS_MAP_END
-static ADDRESS_MAP_START( system16b_bootleg_map, AS_PROGRAM, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::system16b_bootleg_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x23ffff) AM_RAM // used during startup for decompression
AM_RANGE(0x3f0000, 0x3fffff) AM_WRITE(rom_5704_bank_w)
@@ -1750,7 +1750,7 @@ static ADDRESS_MAP_START( system16b_bootleg_map, AS_PROGRAM, 16, segas16b_state
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("workram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( map_fpointbla, AS_PROGRAM, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::map_fpointbla)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x02000e, 0x02000f) AM_READ_PORT("P2")
AM_RANGE(0x0a0000, 0x0a001f) AM_RAM AM_SHARE("bootleg_scroll")
@@ -1765,17 +1765,17 @@ static ADDRESS_MAP_START( map_fpointbla, AS_PROGRAM, 16, segas16b_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("workram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map_x, AS_OPCODES, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::decrypted_opcodes_map_x)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map_fpointbla, AS_OPCODES, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::decrypted_opcodes_map_fpointbla)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lockonph_map, AS_PROGRAM, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::lockonph_map)
// this still appears to have a mapper device, does the hardware use it? should we move this to all be configured by it?
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x3f0000, 0x3fffff) AM_WRITE(rom_5704_bank_w)
@@ -1800,7 +1800,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( fpointbl_map, AS_PROGRAM, 16, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::fpointbl_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_DEVREADWRITE("segaic16vid", segaic16_video_device, tileram_r, tileram_w) AM_SHARE("tileram")
@@ -1826,7 +1826,7 @@ ADDRESS_MAP_END
Flash Point (Datsu bootlegs = fpointbl, fpointbj)
Has sound latch at $E000 instead of I/O ports $C0-FF
*/
-static ADDRESS_MAP_START( fpointbl_sound_map, AS_PROGRAM, 8, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::fpointbl_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xf800, 0xffff) AM_RAM
@@ -1848,7 +1848,7 @@ WRITE16_MEMBER(segas16b_state::bootleg_custom_io_w)
// SOUND CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xdfff) AM_ROMBANK("soundbank")
@@ -1856,13 +1856,13 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas16b_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_decrypted_opcodes_map, AS_OPCODES, 8, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::sound_decrypted_opcodes_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("sound_decrypted_opcodes")
AM_RANGE(0x8000, 0xdfff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
@@ -1872,13 +1872,13 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas16b_state )
ADDRESS_MAP_END
// similar to whizz / other philko games in sidearms.cpp, but with the m6295
-static ADDRESS_MAP_START( lockonph_sound_map, AS_PROGRAM, 8, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::lockonph_sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lockonph_sound_iomap, AS_IO, 8, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::lockonph_sound_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x40, 0x40) AM_WRITENOP // ??
@@ -1899,7 +1899,7 @@ WRITE8_MEMBER(segas16b_state::spin_68k_w)
m_maincpu->spin_until_time(m_maincpu->cycles_to_attotime(20000));
}
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segas16b_state )
+ADDRESS_MAP_START(segas16b_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x001f) AM_MIRROR(0xff00) AM_DEVREADWRITE("mapper", sega_315_5195_mapper_device, read, write)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READ_PORT("SERVICE") AM_WRITE(spin_68k_w)
@@ -3745,7 +3745,7 @@ MACHINE_CONFIG_DERIVED(segas16b_state::system16b_mc8123, system16b)
MCFG_CPU_REPLACE("soundcpu", MC8123, MASTER_CLOCK_10MHz/2)
MCFG_CPU_PROGRAM_MAP(sound_map)
MCFG_CPU_IO_MAP(sound_portmap)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(sound_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(sound_decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segas16b_state::system16b_fd1089a, system16b)
@@ -3763,7 +3763,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segas16b_state::system16b_fd1094, system16b)
MCFG_CPU_REPLACE("maincpu", FD1094, MASTER_CLOCK_10MHz)
MCFG_CPU_PROGRAM_MAP(system16b_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", segas16b_state, irq4_line_hold)
MACHINE_CONFIG_END
@@ -3811,7 +3811,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segas16b_state::system16b_split, system16b)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(system16b_bootleg_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map_x)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map_x)
MCFG_DEVICE_REMOVE("mapper")
MACHINE_CONFIG_END
@@ -3866,7 +3866,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segas16b_state::fpointbla, fpointbl)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(map_fpointbla)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map_fpointbla)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map_fpointbla)
MCFG_CPU_MODIFY("soundcpu")
MCFG_CPU_PROGRAM_MAP(sound_map)
@@ -9563,7 +9563,7 @@ WRITE16_MEMBER( isgsm_state::main_bank_change_w )
membank(ISGSM_MAIN_BANK)->set_base(memregion("maincpu")->base());
}
-static ADDRESS_MAP_START( isgsm_map, AS_PROGRAM, 16, isgsm_state )
+ADDRESS_MAP_START(isgsm_state::isgsm_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROMBANK(ISGSM_MAIN_BANK) AM_REGION("bios", 0) // this area is ALWAYS read-only, even when the game is banked in
AM_RANGE(0x200000, 0x23ffff) AM_RAM // used during startup for decompression
diff --git a/src/mame/drivers/segas18.cpp b/src/mame/drivers/segas18.cpp
index 3cc1d29bf59..e6fa31bc3a1 100644
--- a/src/mame/drivers/segas18.cpp
+++ b/src/mame/drivers/segas18.cpp
@@ -632,7 +632,7 @@ WRITE8_MEMBER( segas18_state::mcu_data_w )
*
*************************************/
-static ADDRESS_MAP_START( system18_map, AS_PROGRAM, 16, segas18_state )
+ADDRESS_MAP_START(segas18_state::system18_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0xffffff) AM_DEVREADWRITE8("mapper", sega_315_5195_mapper_device, read, write, 0x00ff)
@@ -645,7 +645,7 @@ static ADDRESS_MAP_START( system18_map, AS_PROGRAM, 16, segas18_state )
AM_RANGE(0x500000, 0x503fff) AM_RAM AM_SHARE("workram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segas18_state )
+ADDRESS_MAP_START(segas18_state::decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROMBANK("fd1094_decrypted_opcodes")
ADDRESS_MAP_END
@@ -655,7 +655,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas18_state )
+ADDRESS_MAP_START(segas18_state::sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("soundcpu", 0x10000)
AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("soundbank")
@@ -664,7 +664,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas18_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas18_state )
+ADDRESS_MAP_START(segas18_state::sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_MIRROR(0x0c) AM_DEVREADWRITE("ym1", ym3438_device, read, write)
@@ -681,7 +681,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segas18_state )
+ADDRESS_MAP_START(segas18_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
// port 2 not used for high order address byte
AM_RANGE(0x0000, 0x001f) AM_MIRROR(0xff00) AM_DEVREADWRITE("mapper", sega_315_5195_mapper_device, read, write)
@@ -1394,7 +1394,7 @@ MACHINE_CONFIG_DERIVED(segas18_state::system18_fd1094, system18)
// basic machine hardware
MCFG_CPU_REPLACE("maincpu", FD1094, 10000000)
MCFG_CPU_PROGRAM_MAP(system18_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", segas18_state, irq4_line_hold)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas24.cpp b/src/mame/drivers/segas24.cpp
index cbc3aa906da..697c622d8bc 100644
--- a/src/mame/drivers/segas24.cpp
+++ b/src/mame/drivers/segas24.cpp
@@ -1064,7 +1064,7 @@ fc-ff ramhi
*/
-static ADDRESS_MAP_START( system24_cpu1_map, AS_PROGRAM, 16, segas24_state )
+ADDRESS_MAP_START(segas24_state::system24_cpu1_map)
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x040000) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x080000, 0x0bffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
AM_RANGE(0x100000, 0x13ffff) AM_MIRROR(0x0c0000) AM_ROM AM_REGION("maincpu", 0)
@@ -1097,12 +1097,12 @@ static ADDRESS_MAP_START( system24_cpu1_map, AS_PROGRAM, 16, segas24_state )
AM_RANGE(0xf80000, 0xfbffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roughrac_cpu1_map, AS_PROGRAM, 16, segas24_state )
+ADDRESS_MAP_START(segas24_state::roughrac_cpu1_map)
AM_IMPORT_FROM(system24_cpu1_map)
AM_RANGE(0xc00000, 0xc00007) AM_MIRROR(0x07ffe0) AM_DEVREAD8("upd4701", upd4701_device, read_xy, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotrod_cpu1_map, AS_PROGRAM, 16, segas24_state )
+ADDRESS_MAP_START(segas24_state::hotrod_cpu1_map)
AM_IMPORT_FROM(system24_cpu1_map)
AM_RANGE(0xc00000, 0xc00007) AM_MIRROR(0x07ffe0) AM_DEVREAD8("upd1", upd4701_device, read_xy, 0x00ff)
AM_RANGE(0xc00008, 0xc0000f) AM_MIRROR(0x07ffe0) AM_DEVREAD8("upd2", upd4701_device, read_xy, 0x00ff)
@@ -1118,7 +1118,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( system24_cpu2_map, AS_PROGRAM, 16, segas24_state )
+ADDRESS_MAP_START(segas24_state::system24_cpu2_map)
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("subcpu")
AM_RANGE(0x080000, 0x0bffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
AM_RANGE(0x100000, 0x13ffff) AM_MIRROR(0x0c0000) AM_ROM AM_REGION("maincpu", 0)
@@ -1151,12 +1151,12 @@ static ADDRESS_MAP_START( system24_cpu2_map, AS_PROGRAM, 16, segas24_state )
AM_RANGE(0xf80000, 0xfbffff) AM_MIRROR(0x040000) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roughrac_cpu2_map, AS_PROGRAM, 16, segas24_state )
+ADDRESS_MAP_START(segas24_state::roughrac_cpu2_map)
AM_IMPORT_FROM(system24_cpu2_map)
AM_RANGE(0xc00000, 0xc00007) AM_MIRROR(0x07ffe0) AM_DEVREAD8("upd4701", upd4701_device, read_xy, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotrod_cpu2_map, AS_PROGRAM, 16, segas24_state )
+ADDRESS_MAP_START(segas24_state::hotrod_cpu2_map)
AM_IMPORT_FROM(system24_cpu2_map)
AM_RANGE(0xc00000, 0xc00007) AM_MIRROR(0x07ffe0) AM_DEVREAD8("upd1", upd4701_device, read_xy, 0x00ff)
AM_RANGE(0xc00008, 0xc0000f) AM_MIRROR(0x07ffe0) AM_DEVREAD8("upd2", upd4701_device, read_xy, 0x00ff)
@@ -1164,7 +1164,7 @@ static ADDRESS_MAP_START( hotrod_cpu2_map, AS_PROGRAM, 16, segas24_state )
AM_RANGE(0xc00012, 0xc00013) AM_MIRROR(0x07ffec) AM_DEVREADWRITE8("adc2", msm6253_device, d7_r, select_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segas24_state )
+ADDRESS_MAP_START(segas24_state::decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROMBANK("fd1094_decrypted_opcodes")
ADDRESS_MAP_END
@@ -1951,7 +1951,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segas24_state::system24_floppy_fd1094, system24_floppy)
MCFG_CPU_REPLACE("subcpu", FD1094, MASTER_CLOCK/2)
MCFG_CPU_PROGRAM_MAP(system24_cpu2_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(segas24_state::system24_floppy_fd_upd, system24_floppy_fd1094)
diff --git a/src/mame/drivers/segas32.cpp b/src/mame/drivers/segas32.cpp
index ac95297b211..966805c48d6 100644
--- a/src/mame/drivers/segas32.cpp
+++ b/src/mame/drivers/segas32.cpp
@@ -1119,7 +1119,7 @@ WRITE8_MEMBER(segas32_state::sound_dummy_w)
*
*************************************/
-static ADDRESS_MAP_START( system32_map, AS_PROGRAM, 16, segas32_state )
+ADDRESS_MAP_START(segas32_state::system32_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_MIRROR(0x0f0000) AM_RAM AM_SHARE("workram")
@@ -1140,7 +1140,7 @@ static ADDRESS_MAP_START( system32_map, AS_PROGRAM, 16, segas32_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multi32_map, AS_PROGRAM, 32, segas32_state )
+ADDRESS_MAP_START(segas32_state::multi32_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
@@ -1173,7 +1173,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( system32_sound_map, AS_PROGRAM, 8, segas32_state )
+ADDRESS_MAP_START(segas32_state::system32_sound_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("soundcpu", 0)
AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc00f) AM_MIRROR(0x0ff0) AM_DEVWRITE("rfsnd", rf5c68_device, rf5c68_w)
@@ -1181,7 +1181,7 @@ static ADDRESS_MAP_START( system32_sound_map, AS_PROGRAM, 8, segas32_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("z80_shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( system32_sound_portmap, AS_IO, 8, segas32_state )
+ADDRESS_MAP_START(segas32_state::system32_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_MIRROR(0x0c) AM_DEVREADWRITE("ym1", ym3438_device, read, write)
@@ -1194,14 +1194,14 @@ static ADDRESS_MAP_START( system32_sound_portmap, AS_IO, 8, segas32_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multi32_sound_map, AS_PROGRAM, 8, segas32_state )
+ADDRESS_MAP_START(segas32_state::multi32_sound_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("soundcpu", 0)
AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_DEVREADWRITE("sega", multipcm_device, read, write)
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("z80_shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multi32_sound_portmap, AS_IO, 8, segas32_state )
+ADDRESS_MAP_START(segas32_state::multi32_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_MIRROR(0x0c) AM_DEVREADWRITE("ymsnd", ym3438_device, read, write)
@@ -1213,7 +1213,7 @@ static ADDRESS_MAP_START( multi32_sound_portmap, AS_IO, 8, segas32_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multipcm_map, 0, 8, segas32_state )
+ADDRESS_MAP_START(segas32_state::multipcm_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x17ffff) AM_ROMBANK("multipcmbanklo")
AM_RANGE(0x180000, 0x1fffff) AM_ROMBANK("multipcmbankhi")
@@ -1225,7 +1225,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( v25_map, AS_PROGRAM, 8, segas32_state )
+ADDRESS_MAP_START(segas32_state::v25_map)
AM_RANGE(0x00000, 0x0ffff) AM_ROM AM_REGION("mcu", 0)
AM_RANGE(0x10000, 0x1ffff) AM_DEVREADWRITE("dpram", mb8421_device, left_r, left_w)
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("mcu", 0)
@@ -1238,11 +1238,11 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( upd7725_prg_map, AS_PROGRAM, 32, segas32_state )
+ADDRESS_MAP_START(segas32_state::upd7725_prg_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("dspprg", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd7725_data_map, AS_DATA, 16, segas32_state )
+ADDRESS_MAP_START(segas32_state::upd7725_data_map)
AM_RANGE(0x0000, 0x03ff) AM_ROM AM_REGION("dspdata", 0)
ADDRESS_MAP_END
@@ -2319,7 +2319,7 @@ segas32_regular_state::segas32_regular_state(const machine_config &mconfig, cons
-static ADDRESS_MAP_START( system32_analog_map, AS_PROGRAM, 16, segas32_state )
+ADDRESS_MAP_START(segas32_state::system32_analog_map)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(system32_map)
AM_RANGE(0xc00050, 0xc00057) AM_MIRROR(0x0fff80) AM_DEVREADWRITE8("adc", msm6253_device, d7_r, address_w, 0x00ff)
@@ -2354,7 +2354,7 @@ segas32_analog_state::segas32_analog_state(const machine_config &mconfig, device
-static ADDRESS_MAP_START( system32_trackball_map, AS_PROGRAM, 16, segas32_trackball_state )
+ADDRESS_MAP_START(segas32_trackball_state::system32_trackball_map)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(system32_map)
//AM_RANGE(0xc00040, 0xc0005f) AM_MIRROR(0x0fff80) AM_READWRITE8(sonic_custom_io_r, sonic_custom_io_w, 0x00ff)
@@ -2395,7 +2395,7 @@ segas32_trackball_state::segas32_trackball_state(const machine_config &mconfig,
-static ADDRESS_MAP_START( system32_4player_map, AS_PROGRAM, 16, segas32_state )
+ADDRESS_MAP_START(segas32_state::system32_4player_map)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(system32_map)
AM_RANGE(0xc00060, 0xc00067) AM_MIRROR(0x0fff80) AM_DEVREADWRITE8("ppi", i8255_device, read, write, 0x00ff)
@@ -2429,7 +2429,7 @@ segas32_4player_state::segas32_4player_state(const machine_config &mconfig, devi
-static ADDRESS_MAP_START( ga2_main_map, AS_PROGRAM, 16, segas32_state )
+ADDRESS_MAP_START(segas32_state::ga2_main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(system32_4player_map)
AM_RANGE(0xa00000, 0xa00fff) AM_DEVREADWRITE8("dpram", mb8421_device, right_r, right_w, 0x00ff)
@@ -2506,7 +2506,7 @@ WRITE_LINE_MEMBER(segas32_cd_state::scsi_drq_w)
printf("%02x DRQ\n",state);
}
-static ADDRESS_MAP_START( system32_cd_map, AS_PROGRAM, 16, segas32_state )
+ADDRESS_MAP_START(segas32_state::system32_cd_map)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(system32_map)
#if S32_KOKOROJI_TEST_CD
@@ -2641,7 +2641,7 @@ sega_multi32_state::sega_multi32_state(const machine_config &mconfig, device_typ
}
-static ADDRESS_MAP_START( multi32_analog_map, AS_PROGRAM, 32, sega_multi32_analog_state )
+ADDRESS_MAP_START(sega_multi32_analog_state::multi32_analog_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_IMPORT_FROM(multi32_map)
@@ -2686,7 +2686,7 @@ sega_multi32_analog_state::sega_multi32_analog_state(const machine_config &mconf
}
-static ADDRESS_MAP_START( multi32_6player_map, AS_PROGRAM, 32, segas32_state )
+ADDRESS_MAP_START(segas32_state::multi32_6player_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_IMPORT_FROM(multi32_map)
diff --git a/src/mame/drivers/segasp.cpp b/src/mame/drivers/segasp.cpp
index 4fa57231997..847e88c1e8f 100644
--- a/src/mame/drivers/segasp.cpp
+++ b/src/mame/drivers/segasp.cpp
@@ -178,7 +178,7 @@ READ64_MEMBER(segasp_state::sp_io_r)
}
// todo, base DC / Naomi stuff should be in it's own map, differences only here, same for Naomi 2 etc.
-static ADDRESS_MAP_START( segasp_map, AS_PROGRAM, 64, segasp_state )
+ADDRESS_MAP_START(segasp_state::segasp_map)
/* Area 0 */
AM_RANGE(0x00000000, 0x001fffff) AM_MIRROR(0xa2000000) AM_ROM AM_REGION("maincpu", 0) // BIOS
@@ -232,7 +232,7 @@ static ADDRESS_MAP_START( segasp_map, AS_PROGRAM, 64, segasp_state )
//AM_RANGE(0x1c000000, 0x1fffffff) AM_NOP // SH4 Internal
ADDRESS_MAP_END
-static ADDRESS_MAP_START( onchip_port, AS_IO, 64, segasp_state )
+ADDRESS_MAP_START(segasp_state::onchip_port)
AM_RANGE(0x00, 0x0f) AM_READWRITE(sn_93c46a_r, sn_93c46a_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/segaufo.cpp b/src/mame/drivers/segaufo.cpp
index 6f477f63f44..3cde336f063 100644
--- a/src/mame/drivers/segaufo.cpp
+++ b/src/mame/drivers/segaufo.cpp
@@ -131,6 +131,10 @@ public:
void ufo21(machine_config &config);
void newufo(machine_config &config);
void ufo800(machine_config &config);
+ void ex_ufo21_portmap(address_map &map);
+ void ex_ufo800_portmap(address_map &map);
+ void ufo_map(address_map &map);
+ void ufo_portmap(address_map &map);
};
@@ -449,12 +453,12 @@ READ8_MEMBER(ufo_state::ex_upd_busy_r)
/* Memory maps */
-static ADDRESS_MAP_START( ufo_map, AS_PROGRAM, 8, ufo_state )
+ADDRESS_MAP_START(ufo_state::ufo_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ufo_portmap, AS_IO, 8, ufo_state )
+ADDRESS_MAP_START(ufo_state::ufo_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pit", pit8254_device, read, write)
@@ -464,7 +468,7 @@ static ADDRESS_MAP_START( ufo_portmap, AS_IO, 8, ufo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ex_ufo21_portmap, AS_IO, 8, ufo_state )
+ADDRESS_MAP_START(ufo_state::ex_ufo21_portmap)
AM_IMPORT_FROM( ufo_portmap )
AM_RANGE(0x20, 0x20) AM_DEVWRITE("upd", upd7759_device, port_w)
AM_RANGE(0x60, 0x60) AM_WRITE(ex_upd_start_w) AM_READNOP
@@ -473,7 +477,7 @@ static ADDRESS_MAP_START( ex_ufo21_portmap, AS_IO, 8, ufo_state )
// AM_RANGE(0x68, 0x68) AM_WRITENOP // ?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ex_ufo800_portmap, AS_IO, 8, ufo_state )
+ADDRESS_MAP_START(ufo_state::ex_ufo800_portmap)
AM_IMPORT_FROM( ufo_portmap )
// AM_RANGE(0x60, 0x67) AM_NOP // unused?
// AM_RANGE(0x68, 0x68) AM_WRITENOP // ?
diff --git a/src/mame/drivers/segaxbd.cpp b/src/mame/drivers/segaxbd.cpp
index 538751e8522..44aa54f0230 100644
--- a/src/mame/drivers/segaxbd.cpp
+++ b/src/mame/drivers/segaxbd.cpp
@@ -958,7 +958,7 @@ WRITE16_MEMBER( segaxbd_state::paletteram_w )
// MAIN CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
@@ -989,7 +989,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, segaxbd_state )
AM_RANGE(0x3fc000, 0x3fffff) AM_RAM AM_SHARE("backup2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROMBANK("fd1094_decrypted_opcodes")
ADDRESS_MAP_END
@@ -997,7 +997,7 @@ ADDRESS_MAP_END
// SUB CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::sub_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
@@ -1017,14 +1017,14 @@ ADDRESS_MAP_END
// Z80 SOUND CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("pcm", segapcm_device, sega_pcm_r, sega_pcm_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1040,14 +1040,14 @@ ADDRESS_MAP_END
// Sound Board
// The extra sound is used when the cabinet is Deluxe(Air Drive), or Cockpit. The soundlatch is
// shared with the main board sound.
-static ADDRESS_MAP_START( smgp_sound2_map, AS_PROGRAM, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::smgp_sound2_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("pcm2", segapcm_device, sega_pcm_r, sega_pcm_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( smgp_sound2_portmap, AS_IO, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::smgp_sound2_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_READ(sound_data_r)
@@ -1060,13 +1060,13 @@ ADDRESS_MAP_END
//**************************************************************************
// Motor Board, not yet emulated
-static ADDRESS_MAP_START( smgp_airdrive_map, AS_PROGRAM, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::smgp_airdrive_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xafff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( smgp_airdrive_portmap, AS_IO, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::smgp_airdrive_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_READNOP
@@ -1080,14 +1080,14 @@ ADDRESS_MAP_END
//**************************************************************************
// Link Board, not yet emulated
-static ADDRESS_MAP_START( smgp_comm_map, AS_PROGRAM, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::smgp_comm_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM
AM_RANGE(0x4000, 0x47ff) AM_RAM // MB8421 Dual-Port SRAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( smgp_comm_portmap, AS_IO, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::smgp_comm_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
@@ -1099,13 +1099,13 @@ ADDRESS_MAP_END
//**************************************************************************
// Z80, unknown function
-static ADDRESS_MAP_START( rascot_z80_map, AS_PROGRAM, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::rascot_z80_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xafff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rascot_z80_portmap, AS_IO, 8, segaxbd_state )
+ADDRESS_MAP_START(segaxbd_state::rascot_z80_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
@@ -1793,7 +1793,7 @@ MACHINE_CONFIG_START(segaxbd_fd1094_state::device_add_mconfig)
MCFG_CPU_REPLACE("maincpu", FD1094, MASTER_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(main_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
@@ -1847,7 +1847,7 @@ MACHINE_CONFIG_START(segaxbd_lastsurv_fd1094_state::device_add_mconfig)
MCFG_CPU_REPLACE("maincpu", FD1094, MASTER_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(main_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
// basic machine hardware
// TODO: network board
@@ -1914,7 +1914,7 @@ MACHINE_CONFIG_START(segaxbd_smgp_fd1094_state::device_add_mconfig)
MCFG_CPU_REPLACE("maincpu", FD1094, MASTER_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(main_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
// basic machine hardware
MCFG_CPU_ADD("soundcpu2", Z80, SOUND_CLOCK/4)
diff --git a/src/mame/drivers/segaybd.cpp b/src/mame/drivers/segaybd.cpp
index 7a55ffd72b8..2d8898279f6 100644
--- a/src/mame/drivers/segaybd.cpp
+++ b/src/mame/drivers/segaybd.cpp
@@ -616,7 +616,7 @@ void segaybd_state::update_irqs()
// MAIN CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
@@ -635,7 +635,7 @@ ADDRESS_MAP_END
// SUB CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( subx_map, AS_PROGRAM, 16, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::subx_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
@@ -647,7 +647,7 @@ static ADDRESS_MAP_START( subx_map, AS_PROGRAM, 16, segaybd_state )
AM_RANGE(0x1fc000, 0x1fffff) AM_RAM AM_SHARE("backupram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( suby_map, AS_PROGRAM, 16, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::suby_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
@@ -666,14 +666,14 @@ ADDRESS_MAP_END
// Z80 SOUND CPU ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("pcm", segapcm_device, sega_pcm_r, sega_pcm_w)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -714,7 +714,7 @@ WRITE16_MEMBER(segaybd_state::link2_w)
logerror("link2_w %04x\n", data);
}
-static ADDRESS_MAP_START( main_map_link, AS_PROGRAM, 16, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::main_map_link)
AM_IMPORT_FROM(main_map)
AM_RANGE(0x190000, 0x190fff) AM_DEVREADWRITE8("mb8421", mb8421_device, left_r, left_w, 0x00ff)
AM_RANGE(0x191000, 0x191001) AM_READ(link_r)
@@ -722,7 +722,7 @@ static ADDRESS_MAP_START( main_map_link, AS_PROGRAM, 16, segaybd_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( link_map, AS_PROGRAM, 8, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::link_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM // 0x2000-0x2*** maybe shared with other boards?
@@ -736,7 +736,7 @@ READ8_MEMBER(segaybd_state::link_portc0_r)
}
#endif
-static ADDRESS_MAP_START( link_portmap, AS_IO, 8, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::link_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
@@ -745,7 +745,7 @@ static ADDRESS_MAP_START( link_portmap, AS_IO, 8, segaybd_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( motor_map, AS_PROGRAM, 8, segaybd_state )
+ADDRESS_MAP_START(segaybd_state::motor_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xffff) AM_RAM
diff --git a/src/mame/drivers/seibucats.cpp b/src/mame/drivers/seibucats.cpp
index 9c8b82189f8..315b9dcfd90 100644
--- a/src/mame/drivers/seibucats.cpp
+++ b/src/mame/drivers/seibucats.cpp
@@ -117,6 +117,7 @@ public:
DECLARE_DRIVER_INIT(seibucats);
void seibucats(machine_config &config);
+ void seibucats_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -162,7 +163,7 @@ WRITE16_MEMBER(seibucats_state::aux_rtc_w)
{
}
-static ADDRESS_MAP_START( seibucats_map, AS_PROGRAM, 32, seibucats_state )
+ADDRESS_MAP_START(seibucats_state::seibucats_map)
// TODO: map devices
AM_RANGE(0x00000000, 0x0003ffff) AM_RAM AM_SHARE("mainram")
diff --git a/src/mame/drivers/seibuspi.cpp b/src/mame/drivers/seibuspi.cpp
index 91e99e7d862..c5f78177031 100644
--- a/src/mame/drivers/seibuspi.cpp
+++ b/src/mame/drivers/seibuspi.cpp
@@ -996,7 +996,7 @@ WRITE32_MEMBER(seibuspi_state::ejsakura_input_select_w)
}
-static ADDRESS_MAP_START( base_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::base_map)
AM_RANGE(0x00000000, 0x0003ffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x00000400, 0x0000043f) AM_DEVREADWRITE16("crtc", seibu_crtc_device, read, write, 0xffffffff)
AM_RANGE(0x00000480, 0x00000483) AM_WRITE(tilemap_dma_start_w)
@@ -1012,7 +1012,7 @@ static ADDRESS_MAP_START( base_map, AS_PROGRAM, 32, seibuspi_state )
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0) AM_SHARE("share1") // ROM location in real-mode
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sei252_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::sei252_map)
//AM_RANGE(0x00000500, 0x0000057f) AM_DEVREADWRITE16("obj", sei252_device, read_xor, write_xor, 0xffffffff)
AM_RANGE(0x0000050c, 0x0000050f) AM_WRITE16(sprite_dma_start_w, 0xffff0000)
AM_RANGE(0x00000524, 0x00000527) AM_WRITENOP // SEI252 sprite decryption key, see machine/spisprit.c
@@ -1022,13 +1022,13 @@ static ADDRESS_MAP_START( sei252_map, AS_PROGRAM, 32, seibuspi_state )
AM_RANGE(0x0000053c, 0x0000053f) AM_WRITENOP // SEI252 sprite decryption table index, see machine/spisprit.c
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rise_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::rise_map)
//AM_RANGE(0x00000500, 0x0000057f) AM_DEVREADWRITE16("obj", seibu_encrypted_sprite_device, read, write, 0xffffffff)
AM_RANGE(0x0000054c, 0x0000054f) AM_WRITENOP // RISE10/11 sprite decryption key, see machine/seibuspi.c
AM_RANGE(0x00000560, 0x00000563) AM_WRITE16(sprite_dma_start_w, 0xffff0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spi_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::spi_map)
AM_IMPORT_FROM( base_map )
AM_IMPORT_FROM( sei252_map )
AM_RANGE(0x00000600, 0x00000603) AM_WRITENOP // ?
@@ -1046,7 +1046,7 @@ static ADDRESS_MAP_START( spi_map, AS_PROGRAM, 32, seibuspi_state )
AM_RANGE(0x00a00000, 0x013fffff) AM_ROM AM_REGION("sound01", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rdft2_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::rdft2_map)
AM_IMPORT_FROM( base_map )
AM_IMPORT_FROM( rise_map )
AM_RANGE(0x00000600, 0x00000603) AM_WRITENOP // ?
@@ -1064,7 +1064,7 @@ static ADDRESS_MAP_START( rdft2_map, AS_PROGRAM, 32, seibuspi_state )
AM_RANGE(0x00a00000, 0x013fffff) AM_ROM AM_REGION("sound01", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sxx2e_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::sxx2e_map)
AM_IMPORT_FROM( base_map )
AM_IMPORT_FROM( sei252_map )
AM_RANGE(0x00000680, 0x00000683) AM_READ8(sb_coin_r, 0x000000ff)
@@ -1079,7 +1079,7 @@ static ADDRESS_MAP_START( sxx2e_map, AS_PROGRAM, 32, seibuspi_state )
AM_RANGE(0x000006dc, 0x000006df) AM_READ8(spi_ds2404_unknown_r, 0x0000ff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sxx2f_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::sxx2f_map)
AM_IMPORT_FROM( base_map )
AM_IMPORT_FROM( rise_map )
AM_RANGE(0x00000680, 0x00000683) AM_READ8(sb_coin_r, 0x000000ff)
@@ -1090,7 +1090,7 @@ static ADDRESS_MAP_START( sxx2f_map, AS_PROGRAM, 32, seibuspi_state )
AM_RANGE(0x00000690, 0x00000693) AM_WRITENOP // ?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sys386i_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::sys386i_map)
AM_IMPORT_FROM( base_map )
AM_IMPORT_FROM( rise_map )
AM_RANGE(0x0000068c, 0x0000068f) AM_WRITE8(spi_layerbanks_eeprom_w, 0x00ff0000)
@@ -1099,7 +1099,7 @@ static ADDRESS_MAP_START( sys386i_map, AS_PROGRAM, 32, seibuspi_state )
AM_RANGE(0x01200004, 0x01200007) AM_DEVREADWRITE8("oki2", okim6295_device, read, write, 0x000000ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sys386f_map, AS_PROGRAM, 32, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::sys386f_map)
AM_RANGE(0x00000000, 0x0003ffff) AM_RAM AM_SHARE("mainram")
AM_IMPORT_FROM( rise_map )
AM_RANGE(0x00000010, 0x00000013) AM_READ8(spi_status_r, 0x000000ff)
@@ -1154,7 +1154,7 @@ WRITE8_MEMBER(seibuspi_state::spi_coin_w)
}
-static ADDRESS_MAP_START( sxx2e_soundmap, AS_PROGRAM, 8, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::sxx2e_soundmap)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM
AM_RANGE(0x4002, 0x4002) AM_WRITENOP // ?
@@ -1170,7 +1170,7 @@ static ADDRESS_MAP_START( sxx2e_soundmap, AS_PROGRAM, 8, seibuspi_state )
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spi_soundmap, AS_PROGRAM, 8, seibuspi_state )
+ADDRESS_MAP_START(seibuspi_state::spi_soundmap)
AM_IMPORT_FROM( sxx2e_soundmap )
AM_RANGE(0x4008, 0x4008) AM_DEVWRITE("soundfifo2", fifo7200_device, data_byte_w)
AM_RANGE(0x400a, 0x400a) AM_READ_PORT("JUMPERS") // TO DO: get these to actually work
diff --git a/src/mame/drivers/seicross.cpp b/src/mame/drivers/seicross.cpp
index ad3bd1ad4e1..b76941efae1 100644
--- a/src/mame/drivers/seicross.cpp
+++ b/src/mame/drivers/seicross.cpp
@@ -110,7 +110,7 @@ WRITE8_MEMBER(seicross_state::dac_w)
m_dac->write(data >> 4);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, seicross_state )
+ADDRESS_MAP_START(seicross_state::main_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8820, 0x887f) AM_RAM AM_SHARE("spriteram")
@@ -124,14 +124,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, seicross_state )
AM_RANGE(0xb800, 0xb800) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, seicross_state )
+ADDRESS_MAP_START(seicross_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x08) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x04, 0x04) AM_MIRROR(0x08) AM_DEVREAD("aysnd", ay8910_device, data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_nvram_map, AS_PROGRAM, 8, seicross_state )
+ADDRESS_MAP_START(seicross_state::mcu_nvram_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x1000, 0x10ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x2000) AM_WRITE(dac_w)
@@ -139,7 +139,7 @@ static ADDRESS_MAP_START( mcu_nvram_map, AS_PROGRAM, 8, seicross_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_no_nvram_map, AS_PROGRAM, 8, seicross_state )
+ADDRESS_MAP_START(seicross_state::mcu_no_nvram_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x1003, 0x1003) AM_READ_PORT("DSW1") /* DSW1 */
AM_RANGE(0x1005, 0x1005) AM_READ_PORT("DSW2") /* DSW2 */
@@ -149,7 +149,7 @@ static ADDRESS_MAP_START( mcu_no_nvram_map, AS_PROGRAM, 8, seicross_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, seicross_state )
+ADDRESS_MAP_START(seicross_state::decrypted_opcodes_map)
AM_RANGE(0x8000, 0xf7ff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
@@ -444,7 +444,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(seicross_state::friskytb, nvram)
MCFG_CPU_MODIFY("mcu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/seicupbl.cpp b/src/mame/drivers/seicupbl.cpp
index 06de38e6526..cebceb9e6c1 100644
--- a/src/mame/drivers/seicupbl.cpp
+++ b/src/mame/drivers/seicupbl.cpp
@@ -74,6 +74,8 @@ public:
TILE_GET_INFO_MEMBER(get_sc3_tileinfo);
void cupsocbl(machine_config &config);
+ void cupsocbl_mem(address_map &map);
+ void cupsocbl_sound_mem(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -319,7 +321,7 @@ WRITE16_MEMBER(seicupbl_state::vram_sc3_w)
m_sc_layer[3]->mark_tile_dirty(offset);
}
-static ADDRESS_MAP_START( cupsocbl_mem, AS_PROGRAM, 16, seicupbl_state )
+ADDRESS_MAP_START(seicupbl_state::cupsocbl_mem)
// AM_IMPORT_FROM( legionna_cop_mem )
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100400, 0x1005ff) AM_DEVREADWRITE("seibucop_boot", seibu_cop_bootleg_device, copdxbl_0_r,copdxbl_0_w) AM_SHARE("cop_mcu_ram")
@@ -347,7 +349,7 @@ WRITE8_MEMBER(seicupbl_state::okim_rombank_w)
m_oki->set_rom_bank(data & 0x7);
}
-static ADDRESS_MAP_START( cupsocbl_sound_mem, AS_PROGRAM, 8, seicupbl_state )
+ADDRESS_MAP_START(seicupbl_state::cupsocbl_sound_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(okim_rombank_w)
diff --git a/src/mame/drivers/selz80.cpp b/src/mame/drivers/selz80.cpp
index c3edd619aeb..f04c6a12788 100644
--- a/src/mame/drivers/selz80.cpp
+++ b/src/mame/drivers/selz80.cpp
@@ -57,6 +57,9 @@ public:
void selz80(machine_config &config);
void dagz80(machine_config &config);
+ void dagz80_mem(address_map &map);
+ void selz80_io(address_map &map);
+ void selz80_mem(address_map &map);
private:
uint8_t m_digit;
void setup_baud();
@@ -66,13 +69,13 @@ private:
required_device<clock_device> m_clock;
};
-static ADDRESS_MAP_START(dagz80_mem, AS_PROGRAM, 8, selz80_state)
+ADDRESS_MAP_START(selz80_state::dagz80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("ram")
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(selz80_mem, AS_PROGRAM, 8, selz80_state)
+ADDRESS_MAP_START(selz80_state::selz80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x27ff) AM_RAM // all 3 RAM sockets filled
@@ -80,7 +83,7 @@ static ADDRESS_MAP_START(selz80_mem, AS_PROGRAM, 8, selz80_state)
AM_RANGE(0xa000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(selz80_io, AS_IO, 8, selz80_state)
+ADDRESS_MAP_START(selz80_state::selz80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("i8279", i8279_device, read, write)
diff --git a/src/mame/drivers/sengokmj.cpp b/src/mame/drivers/sengokmj.cpp
index 0f8e4327742..084c277021b 100644
--- a/src/mame/drivers/sengokmj.cpp
+++ b/src/mame/drivers/sengokmj.cpp
@@ -65,7 +65,7 @@ RSSENGO2.72 chr.
#include "speaker.h"
-class sengokmj_state : public driver_device
+class sengokmj_state : public driver_device, protected seibu_sound_common
{
public:
sengokmj_state(const machine_config &mconfig, device_type type, const char *tag)
@@ -123,6 +123,8 @@ public:
void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect,int pri);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sengokmj(machine_config &config);
+ void sengokmj_io_map(address_map &map);
+ void sengokmj_map(address_map &map);
};
@@ -388,7 +390,7 @@ READ16_MEMBER(sengokmj_state::system_r)
return (ioport("SYSTEM")->read() & 0xffbf) | m_hopper_io;
}
-static ADDRESS_MAP_START( sengokmj_map, AS_PROGRAM, 16, sengokmj_state )
+ADDRESS_MAP_START(sengokmj_state::sengokmj_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM
AM_RANGE(0x08000, 0x09fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0c000, 0x0c7ff) AM_RAM_WRITE(seibucrtc_sc0vram_w) AM_SHARE("sc0_vram")
@@ -400,7 +402,7 @@ static ADDRESS_MAP_START( sengokmj_map, AS_PROGRAM, 16, sengokmj_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sengokmj_io_map, AS_IO, 16, sengokmj_state )
+ADDRESS_MAP_START(sengokmj_state::sengokmj_io_map)
AM_RANGE(0x4000, 0x400f) AM_DEVREADWRITE8("seibu_sound", seibu_sound_device, main_r, main_w, 0x00ff)
/*Areas from 8000-804f are for the custom Seibu CRTC.*/
AM_RANGE(0x8000, 0x804f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write)
diff --git a/src/mame/drivers/senjyo.cpp b/src/mame/drivers/senjyo.cpp
index e40f7b67d01..007910d250d 100644
--- a/src/mame/drivers/senjyo.cpp
+++ b/src/mame/drivers/senjyo.cpp
@@ -123,7 +123,7 @@ WRITE8_MEMBER(senjyo_state::sound_cmd_w)
m_pio->strobe_a(1);
}
-static ADDRESS_MAP_START( senjyo_map, AS_PROGRAM, 8, senjyo_state )
+ADDRESS_MAP_START(senjyo_state::senjyo_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(fgvideoram_w) AM_SHARE("fgvideoram")
@@ -156,11 +156,11 @@ static ADDRESS_MAP_START( senjyo_map, AS_PROGRAM, 8, senjyo_state )
AM_RANGE(0xd005, 0xd005) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, senjyo_state )
+ADDRESS_MAP_START(senjyo_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( senjyo_sound_map, AS_PROGRAM, 8, senjyo_state )
+ADDRESS_MAP_START(senjyo_state::senjyo_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("sn1", sn76496_device, write)
@@ -169,7 +169,7 @@ static ADDRESS_MAP_START( senjyo_sound_map, AS_PROGRAM, 8, senjyo_state )
AM_RANGE(0xd000, 0xd000) AM_WRITE(volume_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( senjyo_sound_io_map, AS_IO, 8, senjyo_state )
+ADDRESS_MAP_START(senjyo_state::senjyo_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("z80ctc", z80ctc_device, read, write)
@@ -190,7 +190,7 @@ WRITE8_MEMBER(senjyo_state::starforb_scrollx2)
m_scrollx1[offset] = data;
}
-static ADDRESS_MAP_START( starforb_map, AS_PROGRAM, 8, senjyo_state )
+ADDRESS_MAP_START(senjyo_state::starforb_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(fgvideoram_w) AM_SHARE("fgvideoram")
@@ -222,7 +222,7 @@ static ADDRESS_MAP_START( starforb_map, AS_PROGRAM, 8, senjyo_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( starforb_sound_map, AS_PROGRAM, 8, senjyo_state )
+ADDRESS_MAP_START(senjyo_state::starforb_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("sn1", sn76496_device, write)
@@ -601,7 +601,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(senjyo_state::senjyox_e, senjyo)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5015, 4000000) /* 4 MHz? */
MCFG_CPU_PROGRAM_MAP(senjyo_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", senjyo_state, irq0_line_assert)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
@@ -609,7 +609,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(senjyo_state::senjyox_a, senjyo)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5018, 4000000) /* 4 MHz? */
MCFG_CPU_PROGRAM_MAP(senjyo_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", senjyo_state, irq0_line_assert)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/seta.cpp b/src/mame/drivers/seta.cpp
index fdc0f55781f..c23564c2c37 100644
--- a/src/mame/drivers/seta.cpp
+++ b/src/mame/drivers/seta.cpp
@@ -1683,7 +1683,7 @@ WRITE16_MEMBER(seta_state::ipl2_ack_w)
writing to sharedram! */
-static ADDRESS_MAP_START( tndrcade_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::tndrcade_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x200001) AM_WRITE(ipl1_ack_w)
AM_RANGE(0x280000, 0x280001) AM_WRITENOP // ? 0 / 1 (sub cpu related?)
@@ -1706,7 +1706,7 @@ ADDRESS_MAP_END
(with slight variations, and Meta Fox protection hooked in)
***************************************************************************/
-static ADDRESS_MAP_START( downtown_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::downtown_map)
AM_RANGE(0x000000, 0x09ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", x1_010_device, word_r, word_w) // Sound
AM_RANGE(0x200000, 0x200001) AM_NOP // watchdog? (twineagl)
@@ -1731,7 +1731,7 @@ ADDRESS_MAP_END
Caliber 50
***************************************************************************/
-static ADDRESS_MAP_START( calibr50_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::calibr50_map)
AM_RANGE(0x000000, 0x09ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x100001) AM_READ(ipl2_ack_r)
AM_RANGE(0x200000, 0x200fff) AM_RAM // NVRAM
@@ -1806,7 +1806,7 @@ WRITE8_MEMBER(seta_state::usclssic_lockout_w)
}
-static ADDRESS_MAP_START( usclssic_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::usclssic_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM
AM_RANGE(0x800000, 0x8005ff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spriteylow_r16, spriteylow_w16) // Sprites Y
@@ -1833,7 +1833,7 @@ ADDRESS_MAP_END
Athena no Hatena?
***************************************************************************/
-static ADDRESS_MAP_START( atehate_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::atehate_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x900000, 0x9fffff) AM_RAM // RAM
AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", x1_010_device, word_r, word_w) // Sound
@@ -1856,7 +1856,7 @@ ADDRESS_MAP_END
Blandia
***************************************************************************/
-static ADDRESS_MAP_START( blandia_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::blandia_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB)
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM (main ram for zingzip, wrofaero writes to 20f000-20ffff)
AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara)
@@ -1891,7 +1891,7 @@ ADDRESS_MAP_END
(with slight variations)
***************************************************************************/
-static ADDRESS_MAP_START( blandiap_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::blandiap_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB)
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM (main ram for zingzip, wrofaero writes to 20f000-20ffff)
AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara)
@@ -1959,7 +1959,7 @@ READ16_MEMBER(seta_state::extra_r)
return m_extra_port.read_safe(0xff);
}
-static ADDRESS_MAP_START( wrofaero_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::wrofaero_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB)
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara)
@@ -1995,7 +1995,7 @@ static ADDRESS_MAP_START( wrofaero_map, AS_PROGRAM, 16, seta_state )
AM_RANGE(0xf00000, 0xf00001) AM_WRITENOP // ? Sound IRQ Ack
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zombraid_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::zombraid_map)
AM_IMPORT_FROM( wrofaero_map )
AM_RANGE(0x300000, 0x30ffff) AM_RAM AM_SHARE("nvram") // actually 8K x8 SRAM
AM_RANGE(0xf00000, 0xf00001) AM_WRITE(zombraid_gun_w)
@@ -2007,7 +2007,7 @@ READ16_MEMBER(seta_state::zingzipbl_unknown_r)
return 0x0000;
}
-static ADDRESS_MAP_START( zingzipbl_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::zingzipbl_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB)
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("workram") // RAM (pointer for zombraid crosshair hack)
AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara)
@@ -2045,7 +2045,7 @@ static ADDRESS_MAP_START( zingzipbl_map, AS_PROGRAM, 16, seta_state )
AM_RANGE(0xf00000, 0xf00001) AM_WRITENOP // ? Sound IRQ Ack
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jjsquawb_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::jjsquawb_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB)
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("workram") // RAM (pointer for zombraid crosshair hack)
AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara)
@@ -2082,7 +2082,7 @@ ADDRESS_MAP_END
Orbs
***************************************************************************/
-static ADDRESS_MAP_START( orbs_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::orbs_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM
AM_RANGE(0x100000, 0x100001) AM_READNOP // ?
@@ -2162,7 +2162,7 @@ WRITE16_MEMBER(seta_state::keroppi_prize_w)
}
}
-static ADDRESS_MAP_START( keroppi_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::keroppi_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM
AM_RANGE(0x100000, 0x100001) AM_READ(keroppi_protection_r) //
@@ -2195,7 +2195,7 @@ MACHINE_START_MEMBER(seta_state,keroppi)
***************************************************************************/
/* similar to krzybowl */
-static ADDRESS_MAP_START( blockcar_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::blockcar_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0xf00000, 0xf03fff) AM_RAM // RAM
AM_RANGE(0xf04000, 0xf041ff) AM_RAM // Backup RAM?
@@ -2215,7 +2215,7 @@ static ADDRESS_MAP_START( blockcar_map, AS_PROGRAM, 16, seta_state )
AM_RANGE(0xe00600, 0xe00607) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritectrl_r16, spritectrl_w16)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blockcarb_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::blockcarb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0xf00000, 0xf03fff) AM_RAM // RAM
AM_RANGE(0xf04000, 0xf041ff) AM_RAM // Backup RAM?
@@ -2241,7 +2241,7 @@ ADDRESS_MAP_END
Daioh
***************************************************************************/
-static ADDRESS_MAP_START( daioh_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::daioh_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM
AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P1") // P1
@@ -2274,7 +2274,7 @@ ADDRESS_MAP_END
Daioh (location test version)
***************************************************************************/
-static ADDRESS_MAP_START( daiohp_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::daiohp_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_MIRROR(0x080000) // ROM
AM_RANGE(0x100000, 0x17ffff) AM_ROM AM_MIRROR(0x080000) // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
@@ -2310,7 +2310,7 @@ ADDRESS_MAP_END
Dragon Unit, Quiz Kokology, Quiz Kokology 2, Strike Gunner
***************************************************************************/
-static ADDRESS_MAP_START( drgnunit_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::drgnunit_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM // ROM
AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM (qzkklogy)
AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM (drgnunit,stg)
@@ -2464,7 +2464,7 @@ WRITE8_MEMBER(setaroul_state::led_w)
show_outputs();
}
-static ADDRESS_MAP_START( setaroul_map, AS_PROGRAM, 16, setaroul_state )
+ADDRESS_MAP_START(setaroul_state::setaroul_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x800000, 0x800003) AM_NOP // RS232C Auto Time Set: r/w
@@ -2506,7 +2506,7 @@ ADDRESS_MAP_END
Extreme Downhill / Sokonuke
***************************************************************************/
-static ADDRESS_MAP_START( extdwnhl_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::extdwnhl_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
@@ -2540,7 +2540,7 @@ ADDRESS_MAP_END
(Kamen) Masked Riders Club Battle Race / Mad Shark
***************************************************************************/
-static ADDRESS_MAP_START( kamenrid_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::kamenrid_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x500000, 0x500001) AM_READ_PORT("P1") // P1
@@ -2570,7 +2570,7 @@ static ADDRESS_MAP_START( kamenrid_map, AS_PROGRAM, 16, seta_state )
ADDRESS_MAP_END
/* almost identical to kamenrid */
-static ADDRESS_MAP_START( madshark_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::madshark_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x500000, 0x500001) AM_READ_PORT("P1") // P1
@@ -2607,7 +2607,7 @@ WRITE16_MEMBER(seta_state::magspeed_lights_w)
}
/* almost identical to kamenrid */
-static ADDRESS_MAP_START( magspeed_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::magspeed_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x500000, 0x500001) AM_READ_PORT("P1") // P1
@@ -2643,7 +2643,7 @@ ADDRESS_MAP_END
Krazy Bowl
***************************************************************************/
-static ADDRESS_MAP_START( krzybowl_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::krzybowl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM
AM_RANGE(0x100000, 0x100001) AM_READNOP // ?
@@ -2683,7 +2683,7 @@ WRITE16_MEMBER(seta_state::msgundam_vregs_w)
/* Mirror RAM is necessary or startup, to clear Work RAM after the test */
-static ADDRESS_MAP_START( msgundam_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::msgundam_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_MIRROR(0x70000) // RAM
@@ -2713,7 +2713,7 @@ ADDRESS_MAP_END
***************************************************************************/
/* similar to wrofaero */
-static ADDRESS_MAP_START( oisipuzl_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::oisipuzl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x17ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
@@ -2742,7 +2742,7 @@ ADDRESS_MAP_END
/* Same as oisipuzl but with the sound system replaced */
-static ADDRESS_MAP_START( triplfun_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::triplfun_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x17ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
@@ -2797,7 +2797,7 @@ READ16_MEMBER(seta_state::kiwame_input_r)
}
}
-static ADDRESS_MAP_START( kiwame_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::kiwame_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram") // RAM
AM_RANGE(0x800000, 0x803fff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecode_r16, spritecode_w16) // Sprites Code + X + Attr
@@ -2828,7 +2828,7 @@ WRITE16_MEMBER(seta_state::thunderl_protection_w)
/* Similar to downtown etc. */
-static ADDRESS_MAP_START( thunderl_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::thunderl_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM
AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM
AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", x1_010_device, word_r, word_w) // Sound
@@ -2852,7 +2852,7 @@ static ADDRESS_MAP_START( thunderl_map, AS_PROGRAM, 16, seta_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thunderlbl_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::thunderlbl_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM
AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM
// AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", x1_010_device, word_r, word_w) // Sound
@@ -2879,7 +2879,7 @@ ADDRESS_MAP_END
Wiggie Waggie
***************************************************************************/
-static ADDRESS_MAP_START( wiggie_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::wiggie_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM // ROM
AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM
AM_RANGE(0x100000, 0x103fff) AM_NOP // X1_010 is not used
@@ -2903,7 +2903,7 @@ static ADDRESS_MAP_START( wiggie_map, AS_PROGRAM, 16, seta_state )
AM_RANGE(0xe04000, 0xe07fff) AM_RAM // (wits)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wiggie_sound_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::wiggie_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9800, 0x9800) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -2915,7 +2915,7 @@ ADDRESS_MAP_END
Ultraman Club / SD Gundam Neo Battling
***************************************************************************/
-static ADDRESS_MAP_START( umanclub_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::umanclub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x3003ff) AM_RAM AM_SHARE("paletteram") // Palette
@@ -2947,7 +2947,7 @@ WRITE8_MEMBER(seta_state::utoukond_sound_control_w)
// other bits used for banking? (low nibble seems to always be 2)
}
-static ADDRESS_MAP_START( utoukond_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::utoukond_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P1") // P1
@@ -2988,7 +2988,7 @@ WRITE16_MEMBER(seta_state::pairlove_prot_w)
m_pairslove_protram[offset] = data;
}
-static ADDRESS_MAP_START( pairlove_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::pairlove_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x100001) AM_WRITENOP // ? 1 (start of interrupts, main loop: watchdog?)
AM_RANGE(0x200000, 0x200001) AM_WRITENOP // ? 0/1 (IRQ acknowledge?)
@@ -3012,7 +3012,7 @@ ADDRESS_MAP_END
Crazy Fight
***************************************************************************/
-static ADDRESS_MAP_START( crazyfgt_map, AS_PROGRAM, 16, seta_state )
+ADDRESS_MAP_START(seta_state::crazyfgt_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM
AM_RANGE(0x610000, 0x610001) AM_READ_PORT("COINS")
@@ -3186,7 +3186,7 @@ READ16_MEMBER(jockeyc_state::trackball_r)
return 0;
}
-static ADDRESS_MAP_START( jockeyc_map, AS_PROGRAM, 16, jockeyc_state )
+ADDRESS_MAP_START(jockeyc_state::jockeyc_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB)
AM_RANGE(0x200000, 0x200001) AM_READWRITE(mux_r, jockeyc_mux_w)
@@ -3273,7 +3273,7 @@ READ16_MEMBER(jockeyc_state::inttoote_700000_r)
return m_inttoote_700000[offset] & 0x3f;
}
-static ADDRESS_MAP_START( inttoote_map, AS_PROGRAM, 16, jockeyc_state )
+ADDRESS_MAP_START(jockeyc_state::inttoote_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB)
AM_RANGE(0x200000, 0x200001) AM_READWRITE(mux_r, inttoote_mux_w)
@@ -3338,7 +3338,7 @@ WRITE8_MEMBER(seta_state::sub_bankswitch_lockout_w)
READ8_MEMBER(seta_state::ff_r){return 0xff;}
-static ADDRESS_MAP_START( tndrcade_sub_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::tndrcade_sub_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM
AM_RANGE(0x0800, 0x0800) AM_READ(ff_r) // ? (bits 0/1/2/3: 1 -> do test 0-ff/100-1e0/5001-57ff/banked rom)
//AM_RANGE(0x0800, 0x0800) AM_DEVREAD("soundlatch", generic_latch_8_device, read) //
@@ -3360,7 +3360,7 @@ ADDRESS_MAP_END
Twin Eagle
***************************************************************************/
-static ADDRESS_MAP_START( twineagl_sub_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::twineagl_sub_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM
AM_RANGE(0x0800, 0x0800) AM_DEVREAD("soundlatch", generic_latch_8_device, read) //
AM_RANGE(0x0801, 0x0801) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) //
@@ -3402,7 +3402,7 @@ READ8_MEMBER(seta_state::downtown_ip_r)
return 0;
}
-static ADDRESS_MAP_START( downtown_sub_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::downtown_sub_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM
AM_RANGE(0x0800, 0x0800) AM_DEVREAD("soundlatch", generic_latch_8_device, read) //
AM_RANGE(0x0801, 0x0801) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) //
@@ -3447,7 +3447,7 @@ WRITE8_MEMBER(seta_state::calibr50_soundlatch2_w)
m_subcpu->spin_until_time(attotime::from_usec(50)); // Allow the other cpu to reply
}
-static ADDRESS_MAP_START( calibr50_sub_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::calibr50_sub_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("x1snd", x1_010_device, read ,write) // Sound
AM_RANGE(0x4000, 0x4000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) // From Main CPU
AM_RANGE(0x4000, 0x4000) AM_WRITE(calibr50_sub_bankswitch_w) // Bankswitching
@@ -3461,7 +3461,7 @@ ADDRESS_MAP_END
Meta Fox
***************************************************************************/
-static ADDRESS_MAP_START( metafox_sub_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::metafox_sub_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM
AM_RANGE(0x0800, 0x0800) AM_DEVREAD("soundlatch", generic_latch_8_device, read) //
AM_RANGE(0x0801, 0x0801) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) //
@@ -3481,13 +3481,13 @@ ADDRESS_MAP_END
Ultra Toukon Densetsu
***************************************************************************/
-static ADDRESS_MAP_START( utoukond_sound_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::utoukond_sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_DEVREADWRITE("x1snd", x1_010_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( utoukond_sound_io_map, AS_IO, 8, seta_state )
+ADDRESS_MAP_START(seta_state::utoukond_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym3438_device, read, write)
AM_RANGE(0x80, 0x80) AM_WRITE(utoukond_sound_control_w)
@@ -8242,14 +8242,14 @@ MACHINE_CONFIG_START(seta_state::blockcar)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( blockcarb_sound_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::blockcarb_sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xd000, 0xdfff) AM_RAM
//AM_RANGE(0xf001, 0xf001) ??
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blockcarb_sound_portmap, AS_IO, 8, seta_state )
+ADDRESS_MAP_START(seta_state::blockcarb_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -9248,14 +9248,14 @@ MACHINE_CONFIG_START(seta_state::thunderl)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( thunderlbl_sound_map, AS_PROGRAM, 8, seta_state )
+ADDRESS_MAP_START(seta_state::thunderlbl_sound_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xdfff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thunderlbl_sound_portmap, AS_IO, 8, seta_state )
+ADDRESS_MAP_START(seta_state::thunderlbl_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/seta2.cpp b/src/mame/drivers/seta2.cpp
index d6337e0aec9..f6587902ee3 100644
--- a/src/mame/drivers/seta2.cpp
+++ b/src/mame/drivers/seta2.cpp
@@ -159,7 +159,7 @@ WRITE16_MEMBER(seta2_state::grdians_lockout_w)
// popmessage("%04X", data & 0xffff);
}
-static ADDRESS_MAP_START( grdians_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::grdians_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x304000, 0x30ffff) AM_RAM // ? seems tile data
@@ -195,7 +195,7 @@ WRITE16_MEMBER(seta2_state::gundamex_eeprom_w)
m_eeprom->cs_write((data & 0x4) ? ASSERT_LINE : CLEAR_LINE);
}
-static ADDRESS_MAP_START( gundamex_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::gundamex_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x500000, 0x57ffff) AM_ROM // ROM
@@ -259,7 +259,7 @@ WRITE16_MEMBER(seta2_state::mj4simai_keyboard_w)
m_keyboard_row = data & 0xff;
}
-static ADDRESS_MAP_START( mj4simai_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::mj4simai_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x600000, 0x600001) AM_READ(mj4simai_p1_r) // P1
@@ -283,7 +283,7 @@ ADDRESS_MAP_END
Kosodate Quiz My Angel
***************************************************************************/
-static ADDRESS_MAP_START( myangel_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::myangel_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x700000, 0x700001) AM_READ_PORT("P1") // P1
@@ -306,7 +306,7 @@ ADDRESS_MAP_END
Kosodate Quiz My Angel 2
***************************************************************************/
-static ADDRESS_MAP_START( myangel2_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::myangel2_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x600000, 0x600001) AM_READ_PORT("P1") // P1
@@ -351,7 +351,7 @@ WRITE16_MEMBER(seta2_state::pzlbowl_coin_counter_w)
}
}
-static ADDRESS_MAP_START( pzlbowl_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::pzlbowl_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x400300, 0x400301) AM_READ_PORT("DSW1") // DSW 1
@@ -374,7 +374,7 @@ ADDRESS_MAP_END
Penguin Bros
***************************************************************************/
-static ADDRESS_MAP_START( penbros_base_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::penbros_base_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x210000, 0x21ffff) AM_RAM // zeroed at startup, then never written again on originals, used on the bootleg
@@ -390,7 +390,7 @@ static ADDRESS_MAP_START( penbros_base_map, AS_PROGRAM, 16, seta2_state )
AM_RANGE(0xb40000, 0xb4ffff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( penbros_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::penbros_map)
AM_IMPORT_FROM(penbros_base_map)
AM_RANGE(0x300000, 0x30ffff) AM_RAM
AM_RANGE(0x500300, 0x500301) AM_READ_PORT("DSW1")
@@ -400,7 +400,7 @@ static ADDRESS_MAP_START( penbros_map, AS_PROGRAM, 16, seta2_state )
AM_RANGE(0xfffc00, 0xffffff) AM_DEVREADWRITE("tmp68301", tmp68301_device, regs_r, regs_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ablastb_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::ablastb_map)
AM_IMPORT_FROM(penbros_base_map)
AM_RANGE(0x508300, 0x508301) AM_READ_PORT("DSW1")
AM_RANGE(0x508302, 0x508303) AM_READ_PORT("DSW2")
@@ -446,7 +446,7 @@ WRITE16_MEMBER(seta2_state::reelquak_coin_w)
// popmessage("COIN %04X", data & 0xffff);
}
-static ADDRESS_MAP_START( reelquak_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::reelquak_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("nvram") // NVRAM (Battery Backed)
@@ -471,7 +471,7 @@ ADDRESS_MAP_END
***************************************************************************/
// To be done:
-static ADDRESS_MAP_START( namcostr_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::namcostr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0xc00000, 0xc3ffff) AM_RAM AM_SHARE("spriteram") // Sprites
@@ -497,7 +497,7 @@ WRITE16_MEMBER(seta2_state::samshoot_coin_w)
// popmessage("%04x",data);
}
-static ADDRESS_MAP_START( samshoot_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::samshoot_map)
AM_RANGE( 0x000000, 0x1fffff ) AM_ROM
AM_RANGE( 0x200000, 0x20ffff ) AM_RAM
AM_RANGE( 0x300000, 0x30ffff ) AM_RAM AM_SHARE("nvram")
@@ -592,7 +592,7 @@ WRITE16_MEMBER(staraudi_state::staraudi_tileram_w)
m_gfxdecode->gfx(i)->mark_dirty(tile);
}
-static ADDRESS_MAP_START( staraudi_map, AS_PROGRAM, 16, staraudi_state )
+ADDRESS_MAP_START(staraudi_state::staraudi_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x23ffff) AM_RAM // RAM
@@ -676,7 +676,7 @@ WRITE16_MEMBER(seta2_state::telpacfl_lockout_w)
// popmessage("LOCK %04X", data);
}
-static ADDRESS_MAP_START( telpacfl_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::telpacfl_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM
AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("nvram") // NVRAM (Battery Backed)
@@ -880,7 +880,7 @@ WRITE32_MEMBER(seta2_state::oki_write)
}
}
-static ADDRESS_MAP_START( funcube_map, AS_PROGRAM, 32, seta2_state )
+ADDRESS_MAP_START(seta2_state::funcube_map)
AM_RANGE( 0x00000000, 0x0007ffff ) AM_ROM
AM_RANGE( 0x00200000, 0x0020ffff ) AM_RAM
@@ -899,7 +899,7 @@ static ADDRESS_MAP_START( funcube_map, AS_PROGRAM, 32, seta2_state )
AM_RANGE(0xffffe000, 0xffffffff ) AM_RAM // SRAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( funcube2_map, AS_PROGRAM, 32, seta2_state )
+ADDRESS_MAP_START(seta2_state::funcube2_map)
AM_RANGE( 0x00000000, 0x0007ffff ) AM_ROM
AM_RANGE( 0x00200000, 0x0020ffff ) AM_RAM
@@ -920,7 +920,7 @@ ADDRESS_MAP_END
// Sub CPU
-static ADDRESS_MAP_START( funcube_sub_map, AS_PROGRAM, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::funcube_sub_map)
AM_RANGE( 0x000000, 0x01ffff ) AM_ROM
AM_RANGE( 0x200000, 0x20017f ) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
@@ -1014,14 +1014,14 @@ READ16_MEMBER(seta2_state::funcube_battery_r)
}
// cabinet linking on sci0
-static ADDRESS_MAP_START( funcube_sub_io, AS_IO, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::funcube_sub_io)
AM_RANGE( h8_device::PORT_7, h8_device::PORT_7 ) AM_READ(funcube_coins_r )
AM_RANGE( h8_device::PORT_4, h8_device::PORT_4 ) AM_READ(funcube_battery_r )
AM_RANGE( h8_device::PORT_A, h8_device::PORT_A ) AM_READWRITE(funcube_outputs_r, funcube_outputs_w ) AM_SHARE("funcube_outputs")
AM_RANGE( h8_device::PORT_B, h8_device::PORT_B ) AM_WRITE(funcube_leds_w ) AM_SHARE("funcube_leds")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( funcube2_sub_io, AS_IO, 16, seta2_state )
+ADDRESS_MAP_START(seta2_state::funcube2_sub_io)
AM_RANGE( h8_device::PORT_7, h8_device::PORT_7 ) AM_READ(funcube_coins_r )
AM_RANGE( h8_device::PORT_4, h8_device::PORT_4 ) AM_NOP // unused
AM_RANGE( h8_device::PORT_A, h8_device::PORT_A ) AM_READWRITE(funcube_outputs_r, funcube_outputs_w ) AM_SHARE("funcube_outputs")
diff --git a/src/mame/drivers/sf.cpp b/src/mame/drivers/sf.cpp
index 32a2e346785..4953f2a86eb 100644
--- a/src/mame/drivers/sf.cpp
+++ b/src/mame/drivers/sf.cpp
@@ -161,7 +161,7 @@ WRITE8_MEMBER(sf_state::msm2_5205_w)
m_msm2->vclk_w(0);
}
-static ADDRESS_MAP_START( sfan_map, AS_PROGRAM, 16, sf_state )
+ADDRESS_MAP_START(sf_state::sfan_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x04ffff) AM_ROM
AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -184,7 +184,7 @@ static ADDRESS_MAP_START( sfan_map, AS_PROGRAM, 16, sf_state )
AM_RANGE(0xffe000, 0xffffff) AM_RAM AM_SHARE("objectram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sfus_map, AS_PROGRAM, 16, sf_state )
+ADDRESS_MAP_START(sf_state::sfus_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x04ffff) AM_ROM
AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -207,7 +207,7 @@ static ADDRESS_MAP_START( sfus_map, AS_PROGRAM, 16, sf_state )
AM_RANGE(0xffe000, 0xffffff) AM_RAM AM_SHARE("objectram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sfjp_map, AS_PROGRAM, 16, sf_state )
+ADDRESS_MAP_START(sf_state::sfjp_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x04ffff) AM_ROM
AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -230,7 +230,7 @@ static ADDRESS_MAP_START( sfjp_map, AS_PROGRAM, 16, sf_state )
AM_RANGE(0xffe000, 0xffffff) AM_RAM AM_SHARE("objectram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, sf_state )
+ADDRESS_MAP_START(sf_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -238,13 +238,13 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, sf_state )
ADDRESS_MAP_END
/* Yes, _no_ ram */
-static ADDRESS_MAP_START( sound2_map, AS_PROGRAM, 8, sf_state )
+ADDRESS_MAP_START(sf_state::sound2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
AM_RANGE(0x0000, 0xffff) AM_WRITENOP /* avoid cluttering up error.log */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound2_io_map, AS_IO, 8, sf_state )
+ADDRESS_MAP_START(sf_state::sound2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(msm1_5205_w)
AM_RANGE(0x01, 0x01) AM_WRITE(msm2_5205_w)
diff --git a/src/mame/drivers/sfbonus.cpp b/src/mame/drivers/sfbonus.cpp
index 43fe3327381..d5e471a9b3b 100644
--- a/src/mame/drivers/sfbonus.cpp
+++ b/src/mame/drivers/sfbonus.cpp
@@ -472,6 +472,9 @@ public:
void draw_reel_layer(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int category);
uint32_t screen_update_sfbonus(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sfbonus(machine_config &config);
+ void ramdac_map(address_map &map);
+ void sfbonus_io(address_map &map);
+ void sfbonus_map(address_map &map);
};
@@ -1209,7 +1212,7 @@ uint32_t sfbonus_state::screen_update_sfbonus(screen_device &screen, bitmap_ind1
-static ADDRESS_MAP_START( sfbonus_map, AS_PROGRAM, 8, sfbonus_state )
+ADDRESS_MAP_START(sfbonus_state::sfbonus_map)
AM_RANGE(0x0000, 0xefff) AM_ROMBANK("bank1") AM_WRITE(sfbonus_videoram_w)
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
@@ -1279,7 +1282,7 @@ WRITE8_MEMBER(sfbonus_state::sfbonus_2c01_w)
}
-static ADDRESS_MAP_START( sfbonus_io, AS_IO, 8, sfbonus_state )
+ADDRESS_MAP_START(sfbonus_state::sfbonus_io)
AM_RANGE(0x0400, 0x0400) AM_READ_PORT("KEY1")
AM_RANGE(0x0408, 0x0408) AM_READ_PORT("KEY2")
AM_RANGE(0x0410, 0x0410) AM_READ_PORT("KEY3")
@@ -1356,7 +1359,7 @@ void sfbonus_state::machine_reset()
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, sfbonus_state )
+ADDRESS_MAP_START(sfbonus_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sfcbox.cpp b/src/mame/drivers/sfcbox.cpp
index 7bd97b9f20f..9f131ec4635 100644
--- a/src/mame/drivers/sfcbox.cpp
+++ b/src/mame/drivers/sfcbox.cpp
@@ -155,6 +155,10 @@ public:
DECLARE_READ8_MEMBER(spc_ram_100_r);
DECLARE_WRITE8_MEMBER(spc_ram_100_w);
void sfcbox(machine_config &config);
+ void sfcbox_io(address_map &map);
+ void sfcbox_map(address_map &map);
+ void snes_map(address_map &map);
+ void spc_mem(address_map &map);
};
uint32_t sfcbox_state::screen_update( screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect )
@@ -163,7 +167,7 @@ uint32_t sfcbox_state::screen_update( screen_device &screen, bitmap_rgb32 &bitma
return 0;
}
-static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8, sfcbox_state )
+ADDRESS_MAP_START(sfcbox_state::snes_map)
AM_RANGE(0x000000, 0x7dffff) AM_READWRITE(snes_r_bank1, snes_w_bank1)
AM_RANGE(0x7e0000, 0x7fffff) AM_RAM /* 8KB Low RAM, 24KB High RAM, 96KB Expanded RAM */
AM_RANGE(0x800000, 0xffffff) AM_READWRITE(snes_r_bank2, snes_w_bank2) /* Mirror and ROM */
@@ -179,13 +183,13 @@ WRITE8_MEMBER(sfcbox_state::spc_ram_100_w)
m_spc700->spc_ram_w(space, offset + 0x100, data);
}
-static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8, sfcbox_state )
+ADDRESS_MAP_START(sfcbox_state::spc_mem)
AM_RANGE(0x0000, 0x00ef) AM_DEVREADWRITE("spc700", snes_sound_device, spc_ram_r, spc_ram_w) /* lower 32k ram */
AM_RANGE(0x00f0, 0x00ff) AM_DEVREADWRITE("spc700", snes_sound_device, spc_io_r, spc_io_w) /* spc io */
AM_RANGE(0x0100, 0xffff) AM_READWRITE(spc_ram_100_r, spc_ram_100_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sfcbox_map, AS_PROGRAM, 8, sfcbox_state )
+ADDRESS_MAP_START(sfcbox_state::sfcbox_map)
AM_RANGE(0x00000, 0x0ffff) AM_ROM AM_REGION("krom", 0)
AM_RANGE(0x20000, 0x27fff) AM_RAM
AM_RANGE(0x40000, 0x47fff) AM_ROM AM_REGION("grom1", 0)
@@ -279,7 +283,7 @@ WRITE8_MEMBER( sfcbox_state::snes_map_1_w )
printf("%s SRAM Size\n",sram_size[((data & 0xc0) >> 6)]);
}
-static ADDRESS_MAP_START( sfcbox_io, AS_IO, 8, sfcbox_state )
+ADDRESS_MAP_START(sfcbox_state::sfcbox_io)
AM_RANGE(0x00, 0x3f) AM_RAM // internal i/o
AM_RANGE(0x0b, 0x0b) AM_DEVWRITE("mb90082",mb90082_device,write)
AM_RANGE(0x80, 0x80) AM_READ_PORT("KEY") AM_WRITE(port_80_w) // Keyswitch and Button Inputs / SNES Transfer and Misc Output
diff --git a/src/mame/drivers/sfkick.cpp b/src/mame/drivers/sfkick.cpp
index 35a9ed43644..1c795b255fc 100644
--- a/src/mame/drivers/sfkick.cpp
+++ b/src/mame/drivers/sfkick.cpp
@@ -226,6 +226,10 @@ public:
required_ioport m_dsw1;
required_ioport m_dsw2;
void sfkick(machine_config &config);
+ void sfkick_io_map(address_map &map);
+ void sfkick_map(address_map &map);
+ void sfkick_sound_io_map(address_map &map);
+ void sfkick_sound_map(address_map &map);
};
@@ -456,7 +460,7 @@ WRITE8_MEMBER(sfkick_state::page3_w)
-static ADDRESS_MAP_START( sfkick_map, AS_PROGRAM, 8, sfkick_state )
+ADDRESS_MAP_START(sfkick_state::sfkick_map)
AM_RANGE( 0x0000, 0x1fff) AM_ROMBANK("bank1")
AM_RANGE( 0x2000, 0x3fff) AM_ROMBANK("bank2")
AM_RANGE( 0x4000, 0x5fff) AM_ROMBANK("bank3")
@@ -471,7 +475,7 @@ static ADDRESS_MAP_START( sfkick_map, AS_PROGRAM, 8, sfkick_state )
AM_RANGE( 0xc000, 0xffff) AM_WRITE(page3_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sfkick_io_map, AS_IO, 8, sfkick_state )
+ADDRESS_MAP_START(sfkick_state::sfkick_io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0xa0, 0xa7) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -480,12 +484,12 @@ static ADDRESS_MAP_START( sfkick_io_map, AS_IO, 8, sfkick_state )
AM_RANGE( 0xb4, 0xb5) AM_RAM /* loopback ? req by sfkicka (MSX Bios leftover)*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sfkick_sound_map, AS_PROGRAM, 8, sfkick_state )
+ADDRESS_MAP_START(sfkick_state::sfkick_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sfkick_sound_io_map, AS_IO, 8, sfkick_state )
+ADDRESS_MAP_START(sfkick_state::sfkick_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x04, 0x05) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
diff --git a/src/mame/drivers/sg1000.cpp b/src/mame/drivers/sg1000.cpp
index 428d9e4ca89..70469438b20 100644
--- a/src/mame/drivers/sg1000.cpp
+++ b/src/mame/drivers/sg1000.cpp
@@ -123,7 +123,7 @@ WRITE8_MEMBER( sg1000_state::peripheral_w )
ADDRESS_MAP( sg1000_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( sg1000_map, AS_PROGRAM, 8, sg1000_state )
+ADDRESS_MAP_START(sg1000_state::sg1000_map)
AM_RANGE(0x0000, 0xbfff) AM_DEVREADWRITE(CARTSLOT_TAG, sega8_cart_slot_device, read_cart, write_cart)
AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3c00) AM_RAM
ADDRESS_MAP_END
@@ -132,7 +132,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( sg1000_io_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( sg1000_io_map, AS_IO, 8, sg1000_state )
+ADDRESS_MAP_START(sg1000_state::sg1000_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_DEVWRITE(SN76489AN_TAG, sn76489a_device, write)
AM_RANGE(0x80, 0x80) AM_MIRROR(0x3e) AM_DEVREADWRITE(TMS9918A_TAG, tms9918a_device, vram_read, vram_write)
@@ -144,7 +144,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( omv_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( omv_map, AS_PROGRAM, 8, sg1000_state )
+ADDRESS_MAP_START(sg1000_state::omv_map)
AM_RANGE(0x0000, 0xbfff) AM_READWRITE(omv_r, omv_w)
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x3800) AM_RAM
ADDRESS_MAP_END
@@ -153,7 +153,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( omv_io_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( omv_io_map, AS_IO, 8, sg1000_state )
+ADDRESS_MAP_START(sg1000_state::omv_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_DEVWRITE(SN76489AN_TAG, sn76489a_device, write)
AM_RANGE(0x80, 0x80) AM_MIRROR(0x3e) AM_DEVREADWRITE(TMS9918A_TAG, tms9918a_device, vram_read, vram_write)
@@ -170,7 +170,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( sc3000_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( sc3000_map, AS_PROGRAM, 8, sg1000_state )
+ADDRESS_MAP_START(sg1000_state::sc3000_map)
AM_RANGE(0x0000, 0xbfff) AM_DEVREADWRITE(CARTSLOT_TAG, sega8_cart_slot_device, read_cart, write_cart)
AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x3800) AM_RAM
ADDRESS_MAP_END
@@ -179,7 +179,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( sc3000_io_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( sc3000_io_map, AS_IO, 8, sg1000_state )
+ADDRESS_MAP_START(sg1000_state::sc3000_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE(SN76489AN_TAG, sn76489a_device, write)
AM_RANGE(0xbe, 0xbe) AM_DEVREADWRITE(TMS9918A_TAG, tms9918a_device, vram_read, vram_write)
@@ -202,7 +202,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( sf7000_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( sf7000_map, AS_PROGRAM, 8, sf7000_state )
+ADDRESS_MAP_START(sf7000_state::sf7000_map)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -211,7 +211,7 @@ ADDRESS_MAP_END
ADDRESS_MAP( sf7000_io_map )
-------------------------------------------------*/
-static ADDRESS_MAP_START( sf7000_io_map, AS_IO, 8, sf7000_state )
+ADDRESS_MAP_START(sf7000_state::sf7000_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE(SN76489AN_TAG, sn76489a_device, write)
AM_RANGE(0xbe, 0xbe) AM_DEVREADWRITE(TMS9918A_TAG, tms9918a_device, vram_read, vram_write)
diff --git a/src/mame/drivers/sg1000a.cpp b/src/mame/drivers/sg1000a.cpp
index de0384df255..9bf178a3a8f 100644
--- a/src/mame/drivers/sg1000a.cpp
+++ b/src/mame/drivers/sg1000a.cpp
@@ -293,6 +293,10 @@ public:
void sderby2s(machine_config &config);
void sg1000ax(machine_config &config);
void sg1000a(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void io_map(address_map &map);
+ void program_map(address_map &map);
+ void sderby2_io_map(address_map &map);
};
@@ -302,17 +306,17 @@ public:
*
*************************************/
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, sg1000a_state )
+ADDRESS_MAP_START(sg1000a_state::program_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_MIRROR(0x400)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, sg1000a_state )
+ADDRESS_MAP_START(sg1000a_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, sg1000a_state )
+ADDRESS_MAP_START(sg1000a_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("snsnd", sn76489a_device, write)
AM_RANGE(0xbe, 0xbe) AM_DEVREADWRITE("tms9928a", tms9928a_device, vram_read, vram_write)
@@ -320,7 +324,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, sg1000a_state )
AM_RANGE(0xdc, 0xdf) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sderby2_io_map, AS_IO, 8, sg1000a_state )
+ADDRESS_MAP_START(sg1000a_state::sderby2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("snsnd", sn76489a_device, write)
AM_RANGE(0xbe, 0xbe) AM_DEVREADWRITE("tms9928a", tms9928a_device, vram_read, vram_write)
@@ -488,7 +492,7 @@ MACHINE_CONFIG_DERIVED(sg1000a_state::sg1000ax, sg1000a)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5033, XTAL(3'579'545))
MCFG_CPU_PROGRAM_MAP(program_map)
MCFG_CPU_IO_MAP(io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sh4robot.cpp b/src/mame/drivers/sh4robot.cpp
index e5c6ed0ece0..8d3776e4f8a 100644
--- a/src/mame/drivers/sh4robot.cpp
+++ b/src/mame/drivers/sh4robot.cpp
@@ -42,12 +42,14 @@ public:
{ }
void sh4robot(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 64, sh4robot_state )
+ADDRESS_MAP_START(sh4robot_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x00000fff) AM_ROM
AM_RANGE(0x08000000, 0x08ffffff) AM_RAM // SDRAM 1
@@ -55,7 +57,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 64, sh4robot_state )
AM_RANGE(0xa0000000, 0xa0000fff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 64, sh4robot_state )
+ADDRESS_MAP_START(sh4robot_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/shadfrce.cpp b/src/mame/drivers/shadfrce.cpp
index 9880c8ced46..39be5021952 100644
--- a/src/mame/drivers/shadfrce.cpp
+++ b/src/mame/drivers/shadfrce.cpp
@@ -349,7 +349,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(shadfrce_state::scanline)
/* Memory Maps */
-static ADDRESS_MAP_START( shadfrce_map, AS_PROGRAM, 16, shadfrce_state )
+ADDRESS_MAP_START(shadfrce_state::shadfrce_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(bg0videoram_w) AM_SHARE("bg0videoram") /* video */
AM_RANGE(0x101000, 0x101fff) AM_RAM
@@ -385,7 +385,7 @@ WRITE8_MEMBER(shadfrce_state::oki_bankswitch_w)
m_oki->set_rom_bank(data & 1);
}
-static ADDRESS_MAP_START( shadfrce_sound_map, AS_PROGRAM, 8, shadfrce_state )
+ADDRESS_MAP_START(shadfrce_state::shadfrce_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/shangha3.cpp b/src/mame/drivers/shangha3.cpp
index a6f0a29ddba..05a4d7f998d 100644
--- a/src/mame/drivers/shangha3.cpp
+++ b/src/mame/drivers/shangha3.cpp
@@ -115,7 +115,7 @@ WRITE16_MEMBER(shangha3_state::irq_ack_w)
m_maincpu->set_input_line(4, CLEAR_LINE);
}
-static ADDRESS_MAP_START( shangha3_map, AS_PROGRAM, 16, shangha3_state )
+ADDRESS_MAP_START(shangha3_state::shangha3_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x200000, 0x200001) AM_READ_PORT("INPUTS")
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( shangha3_map, AS_PROGRAM, 16, shangha3_state )
AM_RANGE(0x360000, 0x360001) AM_WRITE(gfxlist_addr_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( heberpop_map, AS_PROGRAM, 16, shangha3_state )
+ADDRESS_MAP_START(shangha3_state::heberpop_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x200000, 0x200001) AM_READ_PORT("INPUTS")
@@ -149,7 +149,7 @@ static ADDRESS_MAP_START( heberpop_map, AS_PROGRAM, 16, shangha3_state )
AM_RANGE(0x800000, 0xb7ffff) AM_ROM AM_REGION("gfx1", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( blocken_map, AS_PROGRAM, 16, shangha3_state )
+ADDRESS_MAP_START(shangha3_state::blocken_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("INPUTS")
AM_RANGE(0x100002, 0x100003) AM_READ_PORT("SYSTEM") AM_WRITENOP // w -> unknown purpose
@@ -166,12 +166,12 @@ static ADDRESS_MAP_START( blocken_map, AS_PROGRAM, 16, shangha3_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( heberpop_sound_map, AS_PROGRAM, 8, shangha3_state )
+ADDRESS_MAP_START(shangha3_state::heberpop_sound_map)
AM_RANGE(0x0000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( heberpop_sound_io_map, AS_IO, 8, shangha3_state )
+ADDRESS_MAP_START(shangha3_state::heberpop_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym3438_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/shanghai.cpp b/src/mame/drivers/shanghai.cpp
index 2306b29c458..f0b466bb8cb 100644
--- a/src/mame/drivers/shanghai.cpp
+++ b/src/mame/drivers/shanghai.cpp
@@ -46,6 +46,13 @@ public:
void shanghai(machine_config &config);
void shangha2(machine_config &config);
void kothello(machine_config &config);
+ void hd63484_map(address_map &map);
+ void kothello_map(address_map &map);
+ void kothello_sound_map(address_map &map);
+ void shangha2_map(address_map &map);
+ void shangha2_portmap(address_map &map);
+ void shanghai_map(address_map &map);
+ void shanghai_portmap(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
@@ -93,20 +100,20 @@ WRITE8_MEMBER(shanghai_state::shanghai_coin_w)
machine().bookkeeping().coin_counter_w(1,data & 2);
}
-static ADDRESS_MAP_START( shanghai_map, AS_PROGRAM, 16, shanghai_state )
+ADDRESS_MAP_START(shanghai_state::shanghai_map)
AM_RANGE(0x00000, 0x03fff) AM_RAM
AM_RANGE(0x80000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shangha2_map, AS_PROGRAM, 16, shanghai_state )
+ADDRESS_MAP_START(shanghai_state::shangha2_map)
AM_RANGE(0x00000, 0x03fff) AM_RAM
AM_RANGE(0x04000, 0x041ff) AM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x80000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shanghai_portmap, AS_IO, 16, shanghai_state )
+ADDRESS_MAP_START(shanghai_state::shanghai_portmap)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("hd63484", hd63484_device, status16_r, address16_w)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("hd63484", hd63484_device, data16_r, data16_w)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE8("ymsnd", ym2203_device, read, write, 0x00ff)
@@ -117,7 +124,7 @@ static ADDRESS_MAP_START( shanghai_portmap, AS_IO, 16, shanghai_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shangha2_portmap, AS_IO, 16, shanghai_state )
+ADDRESS_MAP_START(shanghai_state::shangha2_portmap)
AM_RANGE(0x00, 0x01) AM_READ_PORT("P1")
AM_RANGE(0x10, 0x11) AM_READ_PORT("P2")
AM_RANGE(0x20, 0x21) AM_READ_PORT("SYSTEM")
@@ -127,7 +134,7 @@ static ADDRESS_MAP_START( shangha2_portmap, AS_IO, 16, shanghai_state )
AM_RANGE(0x50, 0x51) AM_WRITE8(shanghai_coin_w,0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kothello_map, AS_PROGRAM, 16, shanghai_state )
+ADDRESS_MAP_START(shanghai_state::kothello_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM
AM_RANGE(0x08010, 0x08011) AM_DEVREADWRITE("hd63484", hd63484_device, status16_r, address16_w)
AM_RANGE(0x08012, 0x08013) AM_DEVREADWRITE("hd63484", hd63484_device, data16_r, data16_w)
@@ -140,7 +147,7 @@ static ADDRESS_MAP_START( kothello_map, AS_PROGRAM, 16, shanghai_state )
AM_RANGE(0x80000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kothello_sound_map, AS_PROGRAM, 8, shanghai_state )
+ADDRESS_MAP_START(shanghai_state::kothello_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -377,7 +384,7 @@ static INPUT_PORTS_START( shangha2 )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_4C ) )
INPUT_PORTS_END
-static ADDRESS_MAP_START( hd63484_map, 0, 16, shanghai_state )
+ADDRESS_MAP_START(shanghai_state::hd63484_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/shangkid.cpp b/src/mame/drivers/shangkid.cpp
index d6a9d83a4e7..192fbff73eb 100644
--- a/src/mame/drivers/shangkid.cpp
+++ b/src/mame/drivers/shangkid.cpp
@@ -276,7 +276,7 @@ GFXDECODE_END
/***************************************************************************************/
-static ADDRESS_MAP_START( chinhero_main_map, AS_PROGRAM, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::chinhero_main_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(nmiq_1_w)
AM_RANGE(0xa800, 0xa800) AM_WRITE(nmiq_2_w)
@@ -291,7 +291,7 @@ static ADDRESS_MAP_START( chinhero_main_map, AS_PROGRAM, 8, shangkid_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shangkid_main_map, AS_PROGRAM, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::shangkid_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xa000) AM_WRITE(nmiq_1_w)
@@ -309,7 +309,7 @@ ADDRESS_MAP_END
/***************************************************************************************/
-static ADDRESS_MAP_START( chinhero_bbx_map, AS_PROGRAM, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::chinhero_bbx_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(nmiq_1_w)
AM_RANGE(0xa800, 0xa800) AM_WRITE(nmiq_2_w)
@@ -323,7 +323,7 @@ static ADDRESS_MAP_START( chinhero_bbx_map, AS_PROGRAM, 8, shangkid_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shangkid_bbx_map, AS_PROGRAM, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::shangkid_bbx_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(nmiq_1_w)
AM_RANGE(0xa800, 0xa800) AM_WRITE(nmiq_2_w)
@@ -337,29 +337,29 @@ static ADDRESS_MAP_START( shangkid_bbx_map, AS_PROGRAM, 8, shangkid_state )
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chinhero_bbx_portmap, AS_IO, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::chinhero_bbx_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shangkid_bbx_portmap, AS_IO, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::shangkid_bbx_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
ADDRESS_MAP_END
/***************************************************************************************/
-static ADDRESS_MAP_START( chinhero_sound_map, AS_PROGRAM, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::chinhero_sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_MIRROR(0x0800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shangkid_sound_map, AS_PROGRAM, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::shangkid_sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROMBANK("bank2") /* sample player writes to ROM area */
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_MIRROR(0x0800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_DEVWRITE("dac", dac_byte_interface, write)
ADDRESS_MAP_END
@@ -452,7 +452,7 @@ MACHINE_CONFIG_END
-static ADDRESS_MAP_START( dynamski_map, AS_PROGRAM, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::dynamski_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("videoram") /* tilemap */
AM_RANGE(0xc800, 0xcbff) AM_RAM
@@ -466,7 +466,7 @@ static ADDRESS_MAP_START( dynamski_map, AS_PROGRAM, 8, shangkid_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM /* work ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dynamski_portmap, AS_IO, 8, shangkid_state )
+ADDRESS_MAP_START(shangkid_state::dynamski_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
/* ports are reversed */
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/shaolins.cpp b/src/mame/drivers/shaolins.cpp
index cc181492913..cd8354845ff 100644
--- a/src/mame/drivers/shaolins.cpp
+++ b/src/mame/drivers/shaolins.cpp
@@ -32,7 +32,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(shaolins_state::interrupt)
-static ADDRESS_MAP_START( shaolins_map, AS_PROGRAM, 8, shaolins_state )
+ADDRESS_MAP_START(shaolins_state::shaolins_map)
AM_RANGE(0x0000, 0x0000) AM_WRITE(nmi_w) /* bit 0 = flip screen, bit 1 = nmi enable, bit 2 = ? */
/* bit 3, bit 4 = coin counters */
AM_RANGE(0x0100, 0x0100) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
diff --git a/src/mame/drivers/shisen.cpp b/src/mame/drivers/shisen.cpp
index 42b8a700102..cfadf844f6c 100644
--- a/src/mame/drivers/shisen.cpp
+++ b/src/mame/drivers/shisen.cpp
@@ -47,7 +47,7 @@ WRITE8_MEMBER(shisen_state::coin_w)
-static ADDRESS_MAP_START( shisen_map, AS_PROGRAM, 8, shisen_state )
+ADDRESS_MAP_START(shisen_state::shisen_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc800, 0xcaff) AM_RAM_WRITE(paletteram_w) AM_SHARE("paletteram")
@@ -55,7 +55,7 @@ static ADDRESS_MAP_START( shisen_map, AS_PROGRAM, 8, shisen_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shisen_io_map, AS_IO, 8, shisen_state )
+ADDRESS_MAP_START(shisen_state::shisen_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(dsw1_r, coin_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2") AM_DEVWRITE("m72", m72_audio_device, sound_command_w)
@@ -64,12 +64,12 @@ static ADDRESS_MAP_START( shisen_io_map, AS_IO, 8, shisen_state )
AM_RANGE(0x04, 0x04) AM_READ_PORT("COIN")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shisen_sound_map, AS_PROGRAM, 8, shisen_state )
+ADDRESS_MAP_START(shisen_state::shisen_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xfd00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shisen_sound_io_map, AS_IO, 8, shisen_state )
+ADDRESS_MAP_START(shisen_state::shisen_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x80, 0x80) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/shootaway2.cpp b/src/mame/drivers/shootaway2.cpp
index ba30b85e636..dfde3bbb7b8 100644
--- a/src/mame/drivers/shootaway2.cpp
+++ b/src/mame/drivers/shootaway2.cpp
@@ -37,6 +37,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void m74(machine_config &config);
+ void c68_map(address_map &map);
+ void sub_map(address_map &map);
protected:
// devices
@@ -64,11 +66,11 @@ uint32_t m74_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, c
return 0;
}
-static ADDRESS_MAP_START( c68_map, AS_PROGRAM, 8, m74_state )
+ADDRESS_MAP_START(m74_state::c68_map)
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, m74_state )
+ADDRESS_MAP_START(m74_state::sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("subcpu", 0)
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/shootout.cpp b/src/mame/drivers/shootout.cpp
index 621acb75eb9..6d52cc99338 100644
--- a/src/mame/drivers/shootout.cpp
+++ b/src/mame/drivers/shootout.cpp
@@ -103,7 +103,7 @@ WRITE8_MEMBER(shootout_state::coincounter_w)
/*******************************************************************************/
-static ADDRESS_MAP_START( shootout_map, AS_PROGRAM, 8, shootout_state )
+ADDRESS_MAP_START(shootout_state::shootout_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("DSW1") AM_WRITE(bankswitch_w)
AM_RANGE(0x1001, 0x1001) AM_READ_PORT("P1") AM_WRITE(flipscreen_w)
@@ -117,7 +117,7 @@ static ADDRESS_MAP_START( shootout_map, AS_PROGRAM, 8, shootout_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shootouj_map, AS_PROGRAM, 8, shootout_state )
+ADDRESS_MAP_START(shootout_state::shootouj_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("DSW1")
AM_RANGE(0x1001, 0x1001) AM_READ_PORT("P1")
@@ -136,7 +136,7 @@ ADDRESS_MAP_END
/*******************************************************************************/
/* same as Tryout */
-static ADDRESS_MAP_START( shootout_sound_map, AS_PROGRAM, 8, shootout_state )
+ADDRESS_MAP_START(shootout_state::shootout_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0xa000, 0xa000) AM_READ(sound_cpu_command_r)
diff --git a/src/mame/drivers/shougi.cpp b/src/mame/drivers/shougi.cpp
index 3bc4cd21c21..6fdfc7d6f09 100644
--- a/src/mame/drivers/shougi.cpp
+++ b/src/mame/drivers/shougi.cpp
@@ -119,6 +119,9 @@ public:
virtual void machine_start() override;
void shougi(machine_config &config);
+ void main_map(address_map &map);
+ void readport_sub(address_map &map);
+ void sub_map(address_map &map);
};
@@ -241,7 +244,7 @@ WRITE_LINE_MEMBER(shougi_state::nmi_enable_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, shougi_state )
+ADDRESS_MAP_START(shougi_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM /* 2114 x 2 (0x400 x 4bit each) */
AM_RANGE(0x4800, 0x480f) AM_DEVWRITE("mainlatch", ls259_device, write_a3)
@@ -267,12 +270,12 @@ READ8_MEMBER(shougi_state::semaphore_r)
}
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, shougi_state )
+ADDRESS_MAP_START(shougi_state::sub_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("sharedram") /* 2114 x 2 (0x400 x 4bit each) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( readport_sub, AS_IO, 8, shougi_state )
+ADDRESS_MAP_START(shougi_state::readport_sub)
ADDRESS_MAP_GLOBAL_MASK(0x00ff)
AM_RANGE(0x00, 0x00) AM_READ(semaphore_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/shtzone.cpp b/src/mame/drivers/shtzone.cpp
index 1f1a197c420..a1a4ac09aa9 100644
--- a/src/mame/drivers/shtzone.cpp
+++ b/src/mame/drivers/shtzone.cpp
@@ -63,9 +63,10 @@ public:
virtual void video_start() override;
uint32_t screen_update_shtzone(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void shtzone(machine_config &config);
+ void shtzone_map(address_map &map);
};
-static ADDRESS_MAP_START( shtzone_map, AS_PROGRAM, 8, shtzone_state )
+ADDRESS_MAP_START(shtzone_state::shtzone_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/shuuz.cpp b/src/mame/drivers/shuuz.cpp
index a3709bff147..eec725c9243 100644
--- a/src/mame/drivers/shuuz.cpp
+++ b/src/mame/drivers/shuuz.cpp
@@ -110,7 +110,7 @@ READ16_MEMBER(shuuz_state::special_port0_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, shuuz_state )
+ADDRESS_MAP_START(shuuz_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
AM_RANGE(0x101000, 0x101fff) AM_DEVWRITE("eeprom", eeprom_parallel_28xx_device, unlock_write16)
diff --git a/src/mame/drivers/sidearms.cpp b/src/mame/drivers/sidearms.cpp
index 39f9c3a73de..76d4eb8fcae 100644
--- a/src/mame/drivers/sidearms.cpp
+++ b/src/mame/drivers/sidearms.cpp
@@ -77,7 +77,7 @@ READ8_MEMBER(sidearms_state::turtship_ports_r)
}
-static ADDRESS_MAP_START( sidearms_map, AS_PROGRAM, 8, sidearms_state )
+ADDRESS_MAP_START(sidearms_state::sidearms_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc3ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -98,7 +98,7 @@ static ADDRESS_MAP_START( sidearms_map, AS_PROGRAM, 8, sidearms_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( turtship_map, AS_PROGRAM, 8, sidearms_state )
+ADDRESS_MAP_START(sidearms_state::turtship_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -119,7 +119,7 @@ static ADDRESS_MAP_START( turtship_map, AS_PROGRAM, 8, sidearms_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sidearms_sound_map, AS_PROGRAM, 8, sidearms_state )
+ADDRESS_MAP_START(sidearms_state::sidearms_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -142,7 +142,7 @@ WRITE8_MEMBER(sidearms_state::whizz_bankswitch_w)
membank("bank1")->set_entry(bank);
}
-static ADDRESS_MAP_START( whizz_map, AS_PROGRAM, 8, sidearms_state )
+ADDRESS_MAP_START(sidearms_state::whizz_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc3ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -166,12 +166,12 @@ static ADDRESS_MAP_START( whizz_map, AS_PROGRAM, 8, sidearms_state )
AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( whizz_sound_map, AS_PROGRAM, 8, sidearms_state )
+ADDRESS_MAP_START(sidearms_state::whizz_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( whizz_io_map, AS_IO, 8, sidearms_state )
+ADDRESS_MAP_START(sidearms_state::whizz_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x40, 0x40) AM_WRITENOP
diff --git a/src/mame/drivers/sidepckt.cpp b/src/mame/drivers/sidepckt.cpp
index 763356f34ba..d3e3d141288 100644
--- a/src/mame/drivers/sidepckt.cpp
+++ b/src/mame/drivers/sidepckt.cpp
@@ -197,7 +197,7 @@ WRITE8_MEMBER(sidepckt_state::i8751_w)
/******************************************************************************/
-static ADDRESS_MAP_START( sidepckt_map, AS_PROGRAM, 8, sidepckt_state )
+ADDRESS_MAP_START(sidepckt_state::sidepckt_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0x400) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x400) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
@@ -214,14 +214,14 @@ static ADDRESS_MAP_START( sidepckt_map, AS_PROGRAM, 8, sidepckt_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sidepcktb_map, AS_PROGRAM, 8, sidepckt_state )
+ADDRESS_MAP_START(sidepckt_state::sidepcktb_map)
AM_IMPORT_FROM( sidepckt_map )
AM_RANGE(0x3014, 0x3014) AM_READNOP
AM_RANGE(0x3018, 0x3018) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, sidepckt_state )
+ADDRESS_MAP_START(sidepckt_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym2", ym3526_device, write)
diff --git a/src/mame/drivers/sigmab52.cpp b/src/mame/drivers/sigmab52.cpp
index 7ff3c23d5c1..6b02a534559 100644
--- a/src/mame/drivers/sigmab52.cpp
+++ b/src/mame/drivers/sigmab52.cpp
@@ -178,6 +178,9 @@ public:
uint64_t m_hopper_start_cycles;
int m_audiocpu_cmd_irq;
void jwildb52(machine_config &config);
+ void jwildb52_hd63484_map(address_map &map);
+ void jwildb52_map(address_map &map);
+ void sound_prog_map(address_map &map);
};
@@ -306,7 +309,7 @@ WRITE8_MEMBER(sigmab52_state::palette_bank_w)
* Memory Maps *
*************************/
-static ADDRESS_MAP_START( jwildb52_map, AS_PROGRAM, 8, sigmab52_state )
+ADDRESS_MAP_START(sigmab52_state::jwildb52_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
@@ -357,7 +360,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( sound_prog_map, AS_PROGRAM, 8, sigmab52_state )
+ADDRESS_MAP_START(sigmab52_state::sound_prog_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x6020, 0x6027) AM_DEVREADWRITE("6840ptm_2", ptm6840_device, read, write)
AM_RANGE(0x6030, 0x6030) AM_WRITE(audiocpu_irq_ack_w)
@@ -371,7 +374,7 @@ ADDRESS_MAP_END
*/
-static ADDRESS_MAP_START( jwildb52_hd63484_map, 0, 16, sigmab52_state )
+ADDRESS_MAP_START(sigmab52_state::jwildb52_hd63484_map)
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0x20000, 0x3ffff) AM_ROM AM_REGION("gfx1", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sigmab98.cpp b/src/mame/drivers/sigmab98.cpp
index 65a6430fe18..a4b1faad03f 100644
--- a/src/mame/drivers/sigmab98.cpp
+++ b/src/mame/drivers/sigmab98.cpp
@@ -302,6 +302,22 @@ public:
void animalc(machine_config &config);
void sammymdl(machine_config &config);
void itazuram(machine_config &config);
+ void animalc_io(address_map &map);
+ void animalc_map(address_map &map);
+ void dashhero_io_map(address_map &map);
+ void dodghero_io_map(address_map &map);
+ void dodghero_mem_map(address_map &map);
+ void gegege_io_map(address_map &map);
+ void gegege_mem_map(address_map &map);
+ void gocowboy_io(address_map &map);
+ void gocowboy_map(address_map &map);
+ void haekaka_io(address_map &map);
+ void haekaka_map(address_map &map);
+ void itazuram_io(address_map &map);
+ void itazuram_map(address_map &map);
+ void pyenaget_io(address_map &map);
+ void tdoboon_io(address_map &map);
+ void tdoboon_map(address_map &map);
};
@@ -337,6 +353,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(lufykzku_irq);
void lufykzku(machine_config &config);
+ void lufykzku_io_map(address_map &map);
+ void lufykzku_mem_map(address_map &map);
};
@@ -782,7 +800,7 @@ READ8_MEMBER(sigmab98_state::dodghero_regs2_r)
}
}
-static ADDRESS_MAP_START( dodghero_mem_map, AS_PROGRAM, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::dodghero_mem_map)
AM_RANGE( 0x0000, 0x7fff ) AM_ROM
AM_RANGE( 0x8000, 0xa7ff ) AM_ROMBANK("rombank")
@@ -803,7 +821,7 @@ static ADDRESS_MAP_START( dodghero_mem_map, AS_PROGRAM, 8, sigmab98_state )
AM_RANGE( 0xf000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dodghero_io_map, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::dodghero_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x01 ) AM_DEVREADWRITE("ymz", ymz280b_device, read, write )
@@ -978,7 +996,7 @@ WRITE8_MEMBER(sigmab98_state::c8_w)
show_outputs();
}
-static ADDRESS_MAP_START( gegege_mem_map, AS_PROGRAM, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::gegege_mem_map)
AM_RANGE( 0x0000, 0x7fff ) AM_ROM
AM_RANGE( 0x8000, 0x9fff ) AM_ROMBANK("rombank")
@@ -999,7 +1017,7 @@ static ADDRESS_MAP_START( gegege_mem_map, AS_PROGRAM, 8, sigmab98_state )
AM_RANGE( 0xf000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gegege_io_map, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::gegege_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x01 ) AM_DEVREADWRITE("ymz", ymz280b_device, read, write )
@@ -1077,7 +1095,7 @@ READ8_MEMBER(sigmab98_state::dashhero_regs2_r)
}
}
-static ADDRESS_MAP_START( dashhero_io_map, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::dashhero_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x01 ) AM_DEVREADWRITE("ymz", ymz280b_device, read, write )
@@ -1209,7 +1227,7 @@ WRITE8_MEMBER(lufykzku_state::lufykzku_c8_w)
show_outputs();
}
-static ADDRESS_MAP_START( lufykzku_mem_map, AS_PROGRAM, 8, lufykzku_state )
+ADDRESS_MAP_START(lufykzku_state::lufykzku_mem_map)
AM_RANGE( 0x0000, 0x7fff ) AM_ROM
AM_RANGE( 0x8000, 0xbfff ) AM_RAMBANK("romrambank") AM_SHARE("nvram") // ROM | NVRAM
@@ -1226,7 +1244,7 @@ static ADDRESS_MAP_START( lufykzku_mem_map, AS_PROGRAM, 8, lufykzku_state )
AM_RANGE( 0xfc00, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lufykzku_io_map, AS_IO, 8, lufykzku_state )
+ADDRESS_MAP_START(lufykzku_state::lufykzku_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x00 ) AM_DEVWRITE("oki", okim9810_device, write )
AM_RANGE( 0x01, 0x01 ) AM_DEVWRITE("oki", okim9810_device, write_tmp_register )
@@ -1448,7 +1466,7 @@ READ8_MEMBER(sigmab98_state::sammymdl_coin_hopper_r)
return ret;
}
-static ADDRESS_MAP_START( animalc_map, AS_PROGRAM, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::animalc_map)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4000, 0x7fff ) AM_ROMBANK( "rombank" )
AM_RANGE( 0x8000, 0x8fff ) AM_RAMBANK( "rambank" ) AM_SHARE( "nvram" )
@@ -1467,7 +1485,7 @@ static ADDRESS_MAP_START( animalc_map, AS_PROGRAM, 8, sigmab98_state )
AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( animalc_io, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::animalc_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x02, 0x03 ) AM_READWRITE(animalc_rombank_r, animalc_rombank_w )
AM_RANGE( 0x04, 0x05 ) AM_READWRITE(animalc_rambank_r, animalc_rambank_w )
@@ -1737,7 +1755,7 @@ WRITE8_MEMBER(sigmab98_state::gocowboy_dc00_w)
logerror("%s: unknown write to %02x = %02x with rambank = %02x\n", machine().describe_context(), offset + 0xdc00, data, m_rambank);
}
-static ADDRESS_MAP_START( gocowboy_map, AS_PROGRAM, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::gocowboy_map)
AM_RANGE(0x0000, 0x43ff) AM_ROM
AM_RANGE( 0x4400, 0xdbff ) AM_READWRITE(gocowboy_4400_r, gocowboy_4400_w ) // SPRITERAM + PALETTERAM + VTABLE + VREGS | NVRAM
@@ -1764,7 +1782,7 @@ WRITE8_MEMBER(sigmab98_state::gocowboy_leds_w)
show_3_outputs();
}
-static ADDRESS_MAP_START( gocowboy_io, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::gocowboy_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x02, 0x03 ) AM_READWRITE(gocowboy_rombank_r, gocowboy_rombank_w )
AM_RANGE( 0x04, 0x05 ) AM_READWRITE(gocowboy_rambank_r, gocowboy_rambank_w )
@@ -2001,14 +2019,14 @@ WRITE8_MEMBER(sigmab98_state::haekaka_coin_counter_w)
show_3_outputs();
}
-static ADDRESS_MAP_START( haekaka_map, AS_PROGRAM, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::haekaka_map)
AM_RANGE( 0x0000, 0x7fff ) AM_ROM
AM_RANGE( 0xb000, 0xcfff ) AM_READWRITE(haekaka_b000_r, haekaka_b000_w )
AM_RANGE( 0xd000, 0xefff ) AM_RAM AM_SHARE( "nvram" )
AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( haekaka_io, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::haekaka_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x02, 0x03 ) AM_READWRITE(haekaka_rombank_r, haekaka_rombank_w )
AM_RANGE( 0x04, 0x05 ) AM_READWRITE(haekaka_rambank_r, haekaka_rambank_w )
@@ -2239,7 +2257,7 @@ READ8_MEMBER(sigmab98_state::itazuram_palette_r)
return m_paletteram[offset];
}
-static ADDRESS_MAP_START( itazuram_map, AS_PROGRAM, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::itazuram_map)
AM_RANGE( 0x0000, 0x37ff ) AM_ROM
AM_RANGE( 0x3800, 0x47ff ) AM_READ_BANK( "rombank0" ) AM_WRITE_BANK( "sprbank0" )
AM_RANGE( 0x4800, 0x57ff ) AM_READ_BANK( "rombank1" ) AM_WRITE_BANK( "sprbank1" )
@@ -2255,7 +2273,7 @@ static ADDRESS_MAP_START( itazuram_map, AS_PROGRAM, 8, sigmab98_state )
AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( itazuram_io, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::itazuram_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x02, 0x03 ) AM_READWRITE(itazuram_rombank_r, itazuram_rombank_w )
AM_RANGE( 0x04, 0x05 ) AM_READWRITE(itazuram_rambank_r, itazuram_rambank_w )
@@ -2276,7 +2294,7 @@ ADDRESS_MAP_END
Pye-nage Taikai
***************************************************************************/
-static ADDRESS_MAP_START( pyenaget_io, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::pyenaget_io)
AM_IMPORT_FROM( haekaka_io )
AM_RANGE( 0x31, 0x31 ) AM_READWRITE(sammymdl_coin_counter_r, sammymdl_coin_counter_w )
ADDRESS_MAP_END
@@ -2477,14 +2495,14 @@ WRITE8_MEMBER(sigmab98_state::tdoboon_c000_w)
logerror("%s: unknown write to %02x = %02x with rombank = %02x\n", machine().describe_context(), offset+0xc000, data, m_rombank);
}
-static ADDRESS_MAP_START( tdoboon_map, AS_PROGRAM, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::tdoboon_map)
AM_RANGE( 0x0000, 0xbfff ) AM_ROM
AM_RANGE( 0xc000, 0xcfff ) AM_READWRITE(tdoboon_c000_r, tdoboon_c000_w )
AM_RANGE( 0xd000, 0xefff ) AM_RAM AM_SHARE( "nvram" )
AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tdoboon_io, AS_IO, 8, sigmab98_state )
+ADDRESS_MAP_START(sigmab98_state::tdoboon_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x02, 0x03 ) AM_READWRITE(tdoboon_rombank_r, tdoboon_rombank_w )
AM_RANGE( 0x04, 0x05 ) AM_READWRITE(tdoboon_rambank_r, tdoboon_rambank_w )
diff --git a/src/mame/drivers/silkroad.cpp b/src/mame/drivers/silkroad.cpp
index eb5b88531c2..79519768e43 100644
--- a/src/mame/drivers/silkroad.cpp
+++ b/src/mame/drivers/silkroad.cpp
@@ -157,7 +157,7 @@ WRITE32_MEMBER(silkroad_state::silk_coin_counter_w)
}
}
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, silkroad_state )
+ADDRESS_MAP_START(silkroad_state::cpu_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x40c000, 0x40cfff) AM_RAM AM_SHARE("sprram") // sprites
AM_RANGE(0x600000, 0x603fff) AM_RAM_WRITE(paletteram32_xRRRRRGGGGGBBBBB_dword_w) AM_SHARE("paletteram") // palette
diff --git a/src/mame/drivers/silvmil.cpp b/src/mame/drivers/silvmil.cpp
index 5ed0db1e94b..9648d0c2a61 100644
--- a/src/mame/drivers/silvmil.cpp
+++ b/src/mame/drivers/silvmil.cpp
@@ -135,6 +135,8 @@ public:
void puzzlovek(machine_config &config);
void puzzlove(machine_config &config);
void silvmil(machine_config &config);
+ void silvmil_map(address_map &map);
+ void silvmil_sound_map(address_map &map);
};
@@ -181,7 +183,7 @@ uint32_t silvmil_state::screen_update_silvmil(screen_device &screen, bitmap_ind1
}
-static ADDRESS_MAP_START( silvmil_map, AS_PROGRAM, 16, silvmil_state )
+ADDRESS_MAP_START(silvmil_state::silvmil_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_WRITE(silvmil_tilebank1_w)
@@ -388,7 +390,7 @@ void silvmil_state::machine_reset()
}
-static ADDRESS_MAP_START( silvmil_sound_map, AS_PROGRAM, 8, silvmil_state )
+ADDRESS_MAP_START(silvmil_state::silvmil_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xd000, 0xd7ff) AM_RAM
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/simpl156.cpp b/src/mame/drivers/simpl156.cpp
index 39cbb70eb3c..3a6a88a8028 100644
--- a/src/mame/drivers/simpl156.cpp
+++ b/src/mame/drivers/simpl156.cpp
@@ -221,7 +221,7 @@ WRITE32_MEMBER(simpl156_state::simpl156_pf2_rowscroll_w)
/* Memory Map controled by PALs */
/* Joe and Mac Returns */
-static ADDRESS_MAP_START( joemacr_map, AS_PROGRAM, 32, simpl156_state )
+ADDRESS_MAP_START(simpl156_state::joemacr_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x107fff) AM_READWRITE(simpl156_mainram_r, simpl156_mainram_w) AM_SHARE("mainram") // main ram
@@ -243,7 +243,7 @@ ADDRESS_MAP_END
/* Chain Reaction */
-static ADDRESS_MAP_START( chainrec_map, AS_PROGRAM, 32, simpl156_state )
+ADDRESS_MAP_START(simpl156_state::chainrec_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_ROM // rom (32-bit)
AM_RANGE(0x200000, 0x200003) AM_READ_PORT("IN0")
@@ -265,7 +265,7 @@ ADDRESS_MAP_END
/* Magical Drop */
-static ADDRESS_MAP_START( magdrop_map, AS_PROGRAM, 32, simpl156_state )
+ADDRESS_MAP_START(simpl156_state::magdrop_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x200003) AM_READ_PORT("IN0")
@@ -287,7 +287,7 @@ ADDRESS_MAP_END
/* Magical Drop Plus 1 */
-static ADDRESS_MAP_START( magdropp_map, AS_PROGRAM, 32, simpl156_state )
+ADDRESS_MAP_START(simpl156_state::magdropp_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x200003) AM_READ_PORT("IN0")
@@ -309,7 +309,7 @@ ADDRESS_MAP_END
/* Mitchell MT5601-0 PCB (prtytime, charlien, osman) */
-static ADDRESS_MAP_START( mitchell156_map, AS_PROGRAM, 32, simpl156_state )
+ADDRESS_MAP_START(simpl156_state::mitchell156_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100003) AM_DEVREADWRITE8("okisfx", okim6295_device, read, write, 0x000000ff)
diff --git a/src/mame/drivers/simple_st0016.cpp b/src/mame/drivers/simple_st0016.cpp
index 8f934fcde85..1c77c7b72ef 100644
--- a/src/mame/drivers/simple_st0016.cpp
+++ b/src/mame/drivers/simple_st0016.cpp
@@ -38,7 +38,7 @@ void st0016_state::machine_start()
membank("bank1")->configure_entries(0, 256, memregion("maincpu")->base(), 0x4000);
}
-static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, st0016_state )
+ADDRESS_MAP_START(st0016_state::st0016_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xe7ff) AM_RAM
@@ -46,7 +46,7 @@ static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, st0016_state )
AM_RANGE(0xf000, 0xffff) AM_RAM /* work ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( renju_mem, AS_PROGRAM, 8, st0016_state )
+ADDRESS_MAP_START(st0016_state::renju_mem)
AM_IMPORT_FROM( st0016_mem )
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0x200000 )
ADDRESS_MAP_END
@@ -87,7 +87,7 @@ WRITE8_MEMBER(st0016_state::st0016_rom_bank_w)
// st0016_rom_bank = data;
}
-static ADDRESS_MAP_START( st0016_io, AS_IO, 8, st0016_state )
+ADDRESS_MAP_START(st0016_state::st0016_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc0, 0xc0) AM_READ_PORT("P1") AM_WRITE(mux_select_w)
AM_RANGE(0xc1, 0xc1) AM_READ_PORT("P2") AM_WRITENOP
@@ -138,7 +138,7 @@ WRITE8_MEMBER(st0016_state::latch8_w)
machine().scheduler().synchronize();
}
-static ADDRESS_MAP_START( v810_mem,AS_PROGRAM, 32, st0016_state )
+ADDRESS_MAP_START(st0016_state::v810_mem)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM
AM_RANGE(0x80000000, 0x8001ffff) AM_RAM
AM_RANGE(0xc0000000, 0xc001ffff) AM_RAM
@@ -146,7 +146,7 @@ static ADDRESS_MAP_START( v810_mem,AS_PROGRAM, 32, st0016_state )
AM_RANGE(0xfff80000, 0xffffffff) AM_ROMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( st0016_m2_io, AS_IO, 8, st0016_state )
+ADDRESS_MAP_START(st0016_state::st0016_m2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc0, 0xc3) AM_READ(latch8_r) AM_WRITE(latch8_w)
AM_RANGE(0xd0, 0xd0) AM_READ_PORT("P1") AM_WRITE(mux_select_w)
diff --git a/src/mame/drivers/simpsons.cpp b/src/mame/drivers/simpsons.cpp
index cafa550374d..138a1f78967 100644
--- a/src/mame/drivers/simpsons.cpp
+++ b/src/mame/drivers/simpsons.cpp
@@ -115,7 +115,7 @@ Notes:
***************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, simpsons_state )
+ADDRESS_MAP_START(simpsons_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("k052109", k052109_device, read, write)
AM_RANGE(0x0000, 0x0fff) AM_DEVICE("bank0000", address_map_bank_device, amap8)
AM_RANGE(0x2000, 0x3fff) AM_DEVICE("bank2000", address_map_bank_device, amap8)
@@ -138,12 +138,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, simpsons_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x78000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank0000_map, AS_PROGRAM, 8, simpsons_state )
+ADDRESS_MAP_START(simpsons_state::bank0000_map)
AM_RANGE(0x0000, 0x0fff) AM_DEVREADWRITE("k052109", k052109_device, read, write)
AM_RANGE(0x1000, 0x1fff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank2000_map, AS_PROGRAM, 8, simpsons_state )
+ADDRESS_MAP_START(simpsons_state::bank2000_map)
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(simpsons_k052109_r, simpsons_k052109_w)
AM_RANGE(0x2000, 0x2fff) AM_READWRITE(simpsons_k053247_r, simpsons_k053247_w)
AM_RANGE(0x3000, 0x3fff) AM_RAM
@@ -186,7 +186,7 @@ WRITE8_MEMBER(simpsons_state::z80_arm_nmi_w)
timer_set(attotime::from_usec(25), TIMER_NMI); /* kludge until the K053260 is emulated correctly */
}
-static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, simpsons_state )
+ADDRESS_MAP_START(simpsons_state::z80_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2")
AM_RANGE(0xf000, 0xf7ff) AM_RAM
diff --git a/src/mame/drivers/sitcom.cpp b/src/mame/drivers/sitcom.cpp
index 59af4682f35..7e2de43b3e8 100644
--- a/src/mame/drivers/sitcom.cpp
+++ b/src/mame/drivers/sitcom.cpp
@@ -75,6 +75,9 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(update_buttons);
void sitcom(machine_config &config);
+ void sitcom_bank(address_map &map);
+ void sitcom_io(address_map &map);
+ void sitcom_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -133,19 +136,19 @@ protected:
};
-ADDRESS_MAP_START( sitcom_bank, AS_PROGRAM, 8, sitcom_state )
+ADDRESS_MAP_START(sitcom_state::sitcom_bank)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("bootstrap", 0)
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-ADDRESS_MAP_START( sitcom_mem, AS_PROGRAM, 8, sitcom_state )
+ADDRESS_MAP_START(sitcom_state::sitcom_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_DEVICE("bank", address_map_bank_device, amap8)
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-ADDRESS_MAP_START( sitcom_io, AS_IO, 8, sitcom_state )
+ADDRESS_MAP_START(sitcom_state::sitcom_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x1c) AM_DEVREADWRITE("pia", i8255_device, read, write)
diff --git a/src/mame/drivers/sk1.cpp b/src/mame/drivers/sk1.cpp
index 9dd70c74d6e..9e2e49ef847 100644
--- a/src/mame/drivers/sk1.cpp
+++ b/src/mame/drivers/sk1.cpp
@@ -43,6 +43,7 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER(function_in) { return m_sw_function; }
DECLARE_CUSTOM_INPUT_MEMBER(mode_in) { return m_sw_mode; }
+ void sk1_memory(address_map &map);
protected:
virtual void driver_start() override;
@@ -79,7 +80,7 @@ void sk1_state::driver_start()
}
-ADDRESS_MAP_START(sk1_memory, AS_PROGRAM, 8, sk1_state)
+ADDRESS_MAP_START(sk1_state::sk1_memory)
// chip selects are driven by decoding A13 and A15 with IC3 quad 2-input NOR gate
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("lsi2", 0x0000)
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x4000) AM_RAM
diff --git a/src/mame/drivers/skeetsht.cpp b/src/mame/drivers/skeetsht.cpp
index 97c4b6442d7..94cf69c4cd2 100644
--- a/src/mame/drivers/skeetsht.cpp
+++ b/src/mame/drivers/skeetsht.cpp
@@ -61,6 +61,9 @@ public:
required_device<ay8910_device> m_ay;
required_device<tms34010_device> m_tms;
void skeetsht(machine_config &config);
+ void hc11_io_map(address_map &map);
+ void hc11_pgm_map(address_map &map);
+ void tms_program_map(address_map &map);
};
@@ -185,14 +188,14 @@ WRITE8_MEMBER(skeetsht_state::ay8910_w)
*
*************************************/
-static ADDRESS_MAP_START( hc11_pgm_map, AS_PROGRAM, 8, skeetsht_state )
+ADDRESS_MAP_START(skeetsht_state::hc11_pgm_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("68hc11", 0)
AM_RANGE(0x1800, 0x1800) AM_WRITE(ay8910_w)
AM_RANGE(0x2800, 0x2807) AM_READWRITE(tms_r, tms_w)
AM_RANGE(0xb600, 0xbdff) AM_RAM //internal EEPROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hc11_io_map, AS_IO, 8, skeetsht_state )
+ADDRESS_MAP_START(skeetsht_state::hc11_io_map)
AM_RANGE(MC68HC11_IO_PORTA, MC68HC11_IO_PORTA) AM_READWRITE(hc11_porta_r, hc11_porta_w)
ADDRESS_MAP_END
@@ -203,7 +206,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, skeetsht_state )
+ADDRESS_MAP_START(skeetsht_state::tms_program_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("tms_vram")
AM_RANGE(0x00440000, 0x004fffff) AM_READWRITE(ramdac_r, ramdac_w)
AM_RANGE(0xc0000000, 0xc00001ff) AM_DEVREADWRITE("tms", tms34010_device, io_register_r, io_register_w)
diff --git a/src/mame/drivers/skimaxx.cpp b/src/mame/drivers/skimaxx.cpp
index 09392857a32..40ee6ad62c0 100644
--- a/src/mame/drivers/skimaxx.cpp
+++ b/src/mame/drivers/skimaxx.cpp
@@ -91,6 +91,9 @@ public:
virtual void machine_reset() override;
virtual void video_start() override;
void skimaxx(machine_config &config);
+ void m68030_1_map(address_map &map);
+ void m68030_2_map(address_map &map);
+ void tms_program_map(address_map &map);
};
@@ -306,7 +309,7 @@ READ32_MEMBER(skimaxx_state::skimaxx_analog_r)
*
*************************************/
-static ADDRESS_MAP_START( 68030_1_map, AS_PROGRAM, 32, skimaxx_state )
+ADDRESS_MAP_START(skimaxx_state::m68030_1_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM
AM_RANGE(0x10000000, 0x10000003) AM_WRITE(skimaxx_sub_ctrl_w )
AM_RANGE(0x10100000, 0x1010000f) AM_DEVREADWRITE16("tms", tms34010_device, host_r, host_w, 0x0000ffff)
@@ -339,7 +342,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( 68030_2_map, AS_PROGRAM, 32, skimaxx_state )
+ADDRESS_MAP_START(skimaxx_state::m68030_2_map)
AM_RANGE(0x00000000, 0x003fffff) AM_ROM
AM_RANGE(0x20000000, 0x2007ffff) AM_READ(skimaxx_blitter_r ) // do blit
@@ -363,7 +366,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, skimaxx_state )
+ADDRESS_MAP_START(skimaxx_state::tms_program_map)
AM_RANGE(0x00000000, 0x0003ffff) AM_RAM
AM_RANGE(0x00050000, 0x0005ffff) AM_RAM
AM_RANGE(0x00220000, 0x003fffff) AM_RAM AM_SHARE("fg_buffer")
@@ -495,11 +498,11 @@ void skimaxx_state::machine_reset()
MACHINE_CONFIG_START(skimaxx_state::skimaxx)
MCFG_CPU_ADD("maincpu", M68EC030, XTAL(40'000'000))
- MCFG_CPU_PROGRAM_MAP(68030_1_map)
+ MCFG_CPU_PROGRAM_MAP(m68030_1_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", skimaxx_state, irq3_line_hold) // 1,3,7 are identical, rest is RTE
MCFG_CPU_ADD("subcpu", M68EC030, XTAL(40'000'000))
- MCFG_CPU_PROGRAM_MAP(68030_2_map)
+ MCFG_CPU_PROGRAM_MAP(m68030_2_map)
/* video hardware */
diff --git a/src/mame/drivers/skullxbo.cpp b/src/mame/drivers/skullxbo.cpp
index 6c37e60ac7f..693715b3417 100644
--- a/src/mame/drivers/skullxbo.cpp
+++ b/src/mame/drivers/skullxbo.cpp
@@ -99,7 +99,7 @@ WRITE16_MEMBER(skullxbo_state::skullxbo_mobwr_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, skullxbo_state )
+ADDRESS_MAP_START(skullxbo_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0xff0000, 0xff07ff) AM_WRITE(skullxbo_mobmsb_w)
AM_RANGE(0xff0800, 0xff0bff) AM_WRITE(skullxbo_halt_until_hblank_0_w)
diff --git a/src/mame/drivers/skyarmy.cpp b/src/mame/drivers/skyarmy.cpp
index 6a96bdee22c..13d30a14387 100644
--- a/src/mame/drivers/skyarmy.cpp
+++ b/src/mame/drivers/skyarmy.cpp
@@ -74,6 +74,8 @@ public:
INTERRUPT_GEN_MEMBER(nmi_source);
void skyarmy(machine_config &config);
+ void skyarmy_io_map(address_map &map);
+ void skyarmy_map(address_map &map);
};
void skyarmy_state::machine_start()
@@ -208,7 +210,7 @@ WRITE_LINE_MEMBER(skyarmy_state::nmi_enable_w)
}
-static ADDRESS_MAP_START( skyarmy_map, AS_PROGRAM, 8, skyarmy_state )
+ADDRESS_MAP_START(skyarmy_state::skyarmy_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram") /* Video RAM */
@@ -222,7 +224,7 @@ static ADDRESS_MAP_START( skyarmy_map, AS_PROGRAM, 8, skyarmy_state )
AM_RANGE(0xa000, 0xa007) AM_DEVWRITE("latch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( skyarmy_io_map, AS_IO, 8, skyarmy_state )
+ADDRESS_MAP_START(skyarmy_state::skyarmy_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay0", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("ay0", ay8910_device, data_r)
diff --git a/src/mame/drivers/skydiver.cpp b/src/mame/drivers/skydiver.cpp
index 9f8c957c16b..e78e160ec95 100644
--- a/src/mame/drivers/skydiver.cpp
+++ b/src/mame/drivers/skydiver.cpp
@@ -172,7 +172,7 @@ INTERRUPT_GEN_MEMBER(skydiver_state::interrupt)
*
*************************************/
-static ADDRESS_MAP_START( skydiver_map, AS_PROGRAM, 8, skydiver_state )
+ADDRESS_MAP_START(skydiver_state::skydiver_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x4300) AM_READWRITE(wram_r, wram_w)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x4000) AM_RAM /* RAM B1 */
diff --git a/src/mame/drivers/skyfox.cpp b/src/mame/drivers/skyfox.cpp
index 745c8d80618..9e21acfa4a8 100644
--- a/src/mame/drivers/skyfox.cpp
+++ b/src/mame/drivers/skyfox.cpp
@@ -50,7 +50,7 @@ WRITE8_MEMBER(skyfox_state::skyfox_vregs_w)
}
}
-static ADDRESS_MAP_START( skyfox_map, AS_PROGRAM, 8, skyfox_state )
+ADDRESS_MAP_START(skyfox_state::skyfox_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd3ff) AM_RAM AM_SHARE("spriteram")
@@ -69,7 +69,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( skyfox_sound_map, AS_PROGRAM, 8, skyfox_state )
+ADDRESS_MAP_START(skyfox_state::skyfox_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
// AM_RANGE(0x9000, 0x9001) AM_WRITENOP // ??
diff --git a/src/mame/drivers/skykid.cpp b/src/mame/drivers/skykid.cpp
index cfee009117c..816c5e7292f 100644
--- a/src/mame/drivers/skykid.cpp
+++ b/src/mame/drivers/skykid.cpp
@@ -104,7 +104,7 @@ void skykid_state::machine_start()
-static ADDRESS_MAP_START( skykid_map, AS_PROGRAM, 8, skykid_state )
+ADDRESS_MAP_START(skykid_state::skykid_map)
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") /* banked ROM */
AM_RANGE(0x2000, 0x2fff) AM_READWRITE(skykid_videoram_r,skykid_videoram_w) AM_SHARE("videoram")/* Video RAM (background) */
AM_RANGE(0x4000, 0x47ff) AM_READWRITE(skykid_textram_r,skykid_textram_w) AM_SHARE("textram") /* video RAM (text layer) */
@@ -120,7 +120,7 @@ static ADDRESS_MAP_START( skykid_map, AS_PROGRAM, 8, skykid_state )
AM_RANGE(0xa000, 0xa001) AM_WRITE(skykid_flipscreen_priority_w) /* flip screen & priority */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, skykid_state )
+ADDRESS_MAP_START(skykid_state::mcu_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("mcu", hd63701_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namco_cus30_device, namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */
@@ -137,7 +137,7 @@ READ8_MEMBER(skykid_state::readFF)
return 0xff;
}
-static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, skykid_state )
+ADDRESS_MAP_START(skykid_state::mcu_port_map)
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ(inputport_r) /* input ports read */
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(inputport_select_w) /* input port select */
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */
diff --git a/src/mame/drivers/skylncr.cpp b/src/mame/drivers/skylncr.cpp
index 80bc85bb86e..e1b5bb49134 100644
--- a/src/mame/drivers/skylncr.cpp
+++ b/src/mame/drivers/skylncr.cpp
@@ -219,6 +219,12 @@ public:
void bdream97(machine_config &config);
void skylncr(machine_config &config);
void mbutrfly(machine_config &config);
+ void bdream97_opcode_map(address_map &map);
+ void io_map_mbutrfly(address_map &map);
+ void io_map_skylncr(address_map &map);
+ void mem_map_skylncr(address_map &map);
+ void ramdac2_map(address_map &map);
+ void ramdac_map(address_map &map);
};
@@ -449,7 +455,7 @@ READ8_MEMBER(skylncr_state::bdream97_opcode_r)
* Memory Map *
**************************************/
-static ADDRESS_MAP_START( mem_map_skylncr, AS_PROGRAM, 8, skylncr_state )
+ADDRESS_MAP_START(skylncr_state::mem_map_skylncr)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
@@ -507,7 +513,7 @@ static ADDRESS_MAP_START( mem_map_skylncr, AS_PROGRAM, 8, skylncr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map_skylncr, AS_IO, 8, skylncr_state )
+ADDRESS_MAP_START(skylncr_state::io_map_skylncr)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write) /* Input Ports */
@@ -530,24 +536,24 @@ static ADDRESS_MAP_START( io_map_skylncr, AS_IO, 8, skylncr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map_mbutrfly, AS_IO, 8, skylncr_state )
+ADDRESS_MAP_START(skylncr_state::io_map_mbutrfly)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_IMPORT_FROM(io_map_skylncr)
AM_RANGE(0x60, 0x60) AM_WRITE(mbutrfly_prot_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bdream97_opcode_map, AS_OPCODES, 8, skylncr_state )
+ADDRESS_MAP_START(skylncr_state::bdream97_opcode_map)
AM_RANGE(0x0000, 0xffff) AM_READ(bdream97_opcode_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, skylncr_state )
+ADDRESS_MAP_START(skylncr_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac2_map, 0, 8, skylncr_state )
+ADDRESS_MAP_START(skylncr_state::ramdac2_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac2", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
@@ -1699,7 +1705,7 @@ MACHINE_CONFIG_DERIVED(skylncr_state::bdream97, skylncr)
/* basic machine hardware */
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(bdream97_opcode_map)
+ MCFG_CPU_OPCODES_MAP(bdream97_opcode_map)
MCFG_GFXDECODE_MODIFY("gfxdecode", bdream97)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/skyraid.cpp b/src/mame/drivers/skyraid.cpp
index 0f2c78b7002..29674d78989 100644
--- a/src/mame/drivers/skyraid.cpp
+++ b/src/mame/drivers/skyraid.cpp
@@ -71,7 +71,7 @@ WRITE8_MEMBER(skyraid_state::skyraid_scroll_w)
}
-static ADDRESS_MAP_START( skyraid_map, AS_PROGRAM, 8, skyraid_state )
+ADDRESS_MAP_START(skyraid_state::skyraid_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x300)
AM_RANGE(0x0400, 0x040f) AM_WRITEONLY AM_SHARE("pos_ram")
AM_RANGE(0x0800, 0x087f) AM_RAM AM_MIRROR(0x480) AM_SHARE("alpha_num_ram")
diff --git a/src/mame/drivers/slapfght.cpp b/src/mame/drivers/slapfght.cpp
index 4b2eb5abd96..11b51dc0cc3 100644
--- a/src/mame/drivers/slapfght.cpp
+++ b/src/mame/drivers/slapfght.cpp
@@ -273,7 +273,7 @@ Stephh's notes (based on the games Z80 code and some tests) :
***************************************************************************/
-static ADDRESS_MAP_START( perfrman_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::perfrman_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8fff) AM_RAM AM_SHARE("share1")
@@ -283,7 +283,7 @@ static ADDRESS_MAP_START( perfrman_map, AS_PROGRAM, 8, slapfght_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tigerh_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::tigerh_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
@@ -297,23 +297,23 @@ static ADDRESS_MAP_START( tigerh_map, AS_PROGRAM, 8, slapfght_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(fixcol_w) AM_SHARE("fixcolorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tigerh_map_mcu, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::tigerh_map_mcu)
AM_IMPORT_FROM( tigerh_map )
AM_RANGE(0xe803, 0xe803) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tigerhb1_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::tigerhb1_map)
AM_IMPORT_FROM( tigerh_map )
AM_RANGE(0xe803, 0xe803) AM_READWRITE(tigerhb1_prot_r, tigerhb1_prot_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tigerhb2_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::tigerhb2_map)
AM_IMPORT_FROM( tigerh_map )
AM_RANGE(0xe803, 0xe803) AM_NOP // no MCU
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slapfigh_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::slapfigh_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -328,22 +328,22 @@ static ADDRESS_MAP_START( slapfigh_map, AS_PROGRAM, 8, slapfght_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(fixcol_w) AM_SHARE("fixcolorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slapfigh_map_mcu, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::slapfigh_map_mcu)
AM_IMPORT_FROM( slapfigh_map )
AM_RANGE(0xe803, 0xe803) AM_DEVREADWRITE("bmcu", taito68705_mcu_device, data_r, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slapfighb1_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::slapfighb1_map)
AM_IMPORT_FROM( slapfigh_map )
AM_RANGE(0xe803, 0xe803) AM_NOP // no MCU
ADDRESS_MAP_END
-static ADDRESS_MAP_START( getstar_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::getstar_map)
AM_IMPORT_FROM( slapfigh_map )
AM_RANGE(0xe803, 0xe803) AM_READWRITE(getstar_mcusim_r, getstar_mcusim_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slapfighb2_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::slapfighb2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -389,25 +389,25 @@ READ8_MEMBER(slapfght_state::vblank_r)
return m_screen->vblank() ? 1 : 0;
}
-static ADDRESS_MAP_START( io_map_nomcu, AS_IO, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::io_map_nomcu)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(vblank_r)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE("mainlatch", ls259_device, write_a0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map_mcu, AS_IO, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::io_map_mcu)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(tigerh_mcu_status_r)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE("mainlatch", ls259_device, write_a0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( getstarb1_io_map, AS_IO, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::getstarb1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(getstarb1_prot_r)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE("mainlatch", ls259_device, write_a0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( getstarb2_io_map, AS_IO, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::getstarb2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(getstar_mcusim_status_r)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE("mainlatch", ls259_device, write_a0)
@@ -432,7 +432,7 @@ WRITE8_MEMBER(slapfght_state::sound_nmi_enable_w)
m_sound_nmi_enabled = offset ? false : true;
}
-static ADDRESS_MAP_START( perfrman_sound_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::perfrman_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8800, 0x8fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xa080, 0xa080) AM_DEVWRITE("ay1", ay8910_device, address_w)
@@ -444,7 +444,7 @@ static ADDRESS_MAP_START( perfrman_sound_map, AS_PROGRAM, 8, slapfght_state )
AM_RANGE(0xa0e0, 0xa0e0) AM_SELECT(0x0010) AM_WRITE(sound_nmi_enable_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tigerh_sound_map, AS_PROGRAM, 8, slapfght_state )
+ADDRESS_MAP_START(slapfght_state::tigerh_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xa080, 0xa080) AM_DEVWRITE("ay1", ay8910_device, address_w)
AM_RANGE(0xa081, 0xa081) AM_DEVREAD("ay1", ay8910_device, data_r)
diff --git a/src/mame/drivers/slapshot.cpp b/src/mame/drivers/slapshot.cpp
index 8d7cd5cd2c4..0eb6e58dc62 100644
--- a/src/mame/drivers/slapshot.cpp
+++ b/src/mame/drivers/slapshot.cpp
@@ -262,7 +262,7 @@ READ16_MEMBER(slapshot_state::msb_sound_r)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( slapshot_map, AS_PROGRAM, 16, slapshot_state )
+ADDRESS_MAP_START(slapshot_state::slapshot_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x500000, 0x50ffff) AM_RAM /* main RAM */
AM_RANGE(0x600000, 0x60ffff) AM_RAM AM_SHARE("spriteram") /* sprite ram */
@@ -277,7 +277,7 @@ static ADDRESS_MAP_START( slapshot_map, AS_PROGRAM, 16, slapshot_state )
AM_RANGE(0xd00000, 0xd00003) AM_READWRITE(msb_sound_r, msb_sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( opwolf3_map, AS_PROGRAM, 16, slapshot_state )
+ADDRESS_MAP_START(slapshot_state::opwolf3_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x500000, 0x50ffff) AM_RAM /* main RAM */
AM_RANGE(0x600000, 0x60ffff) AM_RAM AM_SHARE("spriteram") /* sprite ram */
@@ -296,7 +296,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( opwolf3_z80_sound_map, AS_PROGRAM, 8, slapshot_state )
+ADDRESS_MAP_START(slapshot_state::opwolf3_z80_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/slc1.cpp b/src/mame/drivers/slc1.cpp
index 8970c721810..17e9063bf2b 100644
--- a/src/mame/drivers/slc1.cpp
+++ b/src/mame/drivers/slc1.cpp
@@ -68,6 +68,8 @@ public:
DECLARE_READ8_MEMBER( io_r );
DECLARE_WRITE8_MEMBER( io_w );
void slc1(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
uint8_t m_digit;
bool m_kbd_type;
@@ -182,14 +184,14 @@ void slc1_state::machine_reset()
***************************************************************************/
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, slc1_state )
+ADDRESS_MAP_START(slc1_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x4fff)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM AM_MIRROR(0xc00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, slc1_state )
+ADDRESS_MAP_START(slc1_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(io_r,io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sleic.cpp b/src/mame/drivers/sleic.cpp
index 4464d34d885..acb29cc37c1 100644
--- a/src/mame/drivers/sleic.cpp
+++ b/src/mame/drivers/sleic.cpp
@@ -37,6 +37,7 @@ public:
{ }
void sleic(machine_config &config);
+ void sleic_map(address_map &map);
protected:
// devices
@@ -49,7 +50,7 @@ public:
};
-static ADDRESS_MAP_START( sleic_map, AS_PROGRAM, 8, sleic_state )
+ADDRESS_MAP_START(sleic_state::sleic_map)
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0xe0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/slicer.cpp b/src/mame/drivers/slicer.cpp
index c0418e04fca..7f3d853d63b 100644
--- a/src/mame/drivers/slicer.cpp
+++ b/src/mame/drivers/slicer.cpp
@@ -28,6 +28,8 @@ public:
template<unsigned int drive> DECLARE_WRITE_LINE_MEMBER(drive_sel_w);
void slicer(machine_config &config);
+ void slicer_io(address_map &map);
+ void slicer_map(address_map &map);
protected:
required_device<fd1797_device> m_fdc;
required_device<scsi_port_device> m_sasi;
@@ -62,12 +64,12 @@ WRITE_LINE_MEMBER(slicer_state::drive_sel_w)
m_fdc->set_floppy(floppy);
}
-static ADDRESS_MAP_START( slicer_map, AS_PROGRAM, 16, slicer_state )
+ADDRESS_MAP_START(slicer_state::slicer_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM // fixed 256k for now
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slicer_io, AS_IO, 16, slicer_state )
+ADDRESS_MAP_START(slicer_state::slicer_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_DEVREADWRITE8("fdc", fd1797_device, read, write, 0x00ff) //PCS0
AM_RANGE(0x0080, 0x00ff) AM_DEVREADWRITE8("duart", scn2681_device, read, write, 0x00ff) //PCS1
diff --git a/src/mame/drivers/sliver.cpp b/src/mame/drivers/sliver.cpp
index 84d53ba490d..2239c9f0a06 100644
--- a/src/mame/drivers/sliver.cpp
+++ b/src/mame/drivers/sliver.cpp
@@ -140,6 +140,11 @@ public:
void postload();
void sliver(machine_config &config);
+ void oki_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void sliver_map(address_map &map);
+ void soundmem_io(address_map &map);
+ void soundmem_prg(address_map &map);
};
void sliver_state::machine_start()
@@ -347,7 +352,7 @@ WRITE16_MEMBER(sliver_state::sound_w)
m_audiocpu->set_input_line(MCS51_INT0_LINE, HOLD_LINE);
}
-static ADDRESS_MAP_START( sliver_map, AS_PROGRAM, 16, sliver_state )
+ADDRESS_MAP_START(sliver_state::sliver_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVWRITE8("ramdac", ramdac_device, index_w, 0x00ff)
@@ -383,18 +388,18 @@ WRITE8_MEMBER(sliver_state::oki_setbank)
membank("okibank")->set_entry(bank);
}
-static ADDRESS_MAP_START( soundmem_prg, AS_PROGRAM, 8, sliver_state )
+ADDRESS_MAP_START(sliver_state::soundmem_prg)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soundmem_io, AS_IO, 8, sliver_state )
+ADDRESS_MAP_START(sliver_state::soundmem_io)
AM_RANGE(0x0100, 0x0100) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x0101, 0x0101) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
/* ports */
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(oki_setbank )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, sliver_state )
+ADDRESS_MAP_START(sliver_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
@@ -496,7 +501,7 @@ static INPUT_PORTS_START( sliver )
PORT_DIPUNUSED_DIPLOC( 0x8000, 0x0000, "SW2:8" ) /* Listed as "UNUSED (MUST ON)" */
INPUT_PORTS_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, sliver_state )
+ADDRESS_MAP_START(sliver_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_RAM AM_SHARE("colorram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/slotcarn.cpp b/src/mame/drivers/slotcarn.cpp
index 947201e1e13..6c701ad3c37 100644
--- a/src/mame/drivers/slotcarn.cpp
+++ b/src/mame/drivers/slotcarn.cpp
@@ -60,6 +60,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
void slotcarn(machine_config &config);
+ void slotcarn_map(address_map &map);
+ void spielbud_io_map(address_map &map);
};
@@ -170,7 +172,7 @@ WRITE_LINE_MEMBER(slotcarn_state::hsync_changed)
* Memory Map *
*******************************/
-static ADDRESS_MAP_START( slotcarn_map, AS_PROGRAM, 8, slotcarn_state )
+ADDRESS_MAP_START(slotcarn_state::slotcarn_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("backup_ram")
AM_RANGE(0x6800, 0x6fff) AM_RAM // spielbud
@@ -198,7 +200,7 @@ static ADDRESS_MAP_START( slotcarn_map, AS_PROGRAM, 8, slotcarn_state )
ADDRESS_MAP_END
// spielbud - is the ay mirrored, or are there now 2?
-static ADDRESS_MAP_START( spielbud_io_map, AS_IO, 8, slotcarn_state )
+ADDRESS_MAP_START(slotcarn_state::spielbud_io_map)
AM_RANGE(0xb000, 0xb000) AM_DEVWRITE("aysnd", ay8910_device, address_w)
AM_RANGE(0xb100, 0xb100) AM_DEVWRITE("aysnd", ay8910_device, data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sm1800.cpp b/src/mame/drivers/sm1800.cpp
index cbe2f8901f8..4bb3a5e595b 100644
--- a/src/mame/drivers/sm1800.cpp
+++ b/src/mame/drivers/sm1800.cpp
@@ -51,16 +51,18 @@ public:
IRQ_CALLBACK_MEMBER(sm1800_irq_callback);
I8275_DRAW_CHARACTER_MEMBER( crtc_display_pixels );
void sm1800(machine_config &config);
+ void sm1800_io(address_map &map);
+ void sm1800_mem(address_map &map);
};
-static ADDRESS_MAP_START(sm1800_mem, AS_PROGRAM, 8, sm1800_state)
+ADDRESS_MAP_START(sm1800_state::sm1800_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x07ff ) AM_ROM
//AM_RANGE( 0x0fb0, 0x0fff ) AM_DEVWRITE("i8275", i8275_device, dack_w)
AM_RANGE( 0x1000, 0x17ff ) AM_RAM // videoram looks like 1080-17FF, normal ascii
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sm1800_io, AS_IO, 8, sm1800_state)
+ADDRESS_MAP_START(sm1800_state::sm1800_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x3c, 0x3d ) AM_DEVREADWRITE("i8275", i8275_device, read, write)
diff --git a/src/mame/drivers/sm7238.cpp b/src/mame/drivers/sm7238.cpp
index 33946a46922..3fc4842537e 100644
--- a/src/mame/drivers/sm7238.cpp
+++ b/src/mame/drivers/sm7238.cpp
@@ -90,6 +90,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sm7238(machine_config &config);
+ void sm7238_io(address_map &map);
+ void sm7238_mem(address_map &map);
+ void videobank_map(address_map &map);
private:
void recompute_parameters();
@@ -122,7 +125,7 @@ private:
required_device<screen_device> m_screen;
};
-static ADDRESS_MAP_START( sm7238_mem, AS_PROGRAM, 8, sm7238_state )
+ADDRESS_MAP_START(sm7238_state::sm7238_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0x0000, 0x9fff) AM_ROM
AM_RANGE (0xa000, 0xa7ff) AM_RAM
@@ -133,12 +136,12 @@ static ADDRESS_MAP_START( sm7238_mem, AS_PROGRAM, 8, sm7238_state )
AM_RANGE (0xe000, 0xffff) AM_DEVICE("videobank", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( videobank_map, AS_PROGRAM, 8, sm7238_state )
+ADDRESS_MAP_START(sm7238_state::videobank_map)
AM_RANGE (0x0000, 0x1fff) AM_RAM AM_SHARE("videoram")
AM_RANGE (0x2000, 0x2fff) AM_MIRROR(0x1000) AM_WRITE(vmem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sm7238_io, AS_IO, 8, sm7238_state )
+ADDRESS_MAP_START(sm7238_state::sm7238_io)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE (0x40, 0x4f) AM_RAM // LUT
AM_RANGE (0xa0, 0xa0) AM_DEVREADWRITE("i8251line", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/smc777.cpp b/src/mame/drivers/smc777.cpp
index 38d9a7c2727..f4d5b5314c1 100644
--- a/src/mame/drivers/smc777.cpp
+++ b/src/mame/drivers/smc777.cpp
@@ -101,6 +101,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(fdc_drq_w);
void smc777(machine_config &config);
+ void smc777_io(address_map &map);
+ void smc777_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -606,12 +608,12 @@ WRITE8_MEMBER(smc777_state::irq_mask_w)
m_irq_mask = data & 1;
}
-static ADDRESS_MAP_START( smc777_mem, AS_PROGRAM, 8, smc777_state )
+ADDRESS_MAP_START(smc777_state::smc777_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(smc777_mem_r, smc777_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( smc777_io, AS_IO, 8, smc777_state )
+ADDRESS_MAP_START(smc777_state::smc777_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x07) AM_SELECT(0xff00) AM_READWRITE(vram_r, vram_w)
AM_RANGE(0x08, 0x0f) AM_SELECT(0xff00) AM_READWRITE(attr_r, attr_w)
diff --git a/src/mame/drivers/sms.cpp b/src/mame/drivers/sms.cpp
index 5a4951767be..140831a4634 100644
--- a/src/mame/drivers/sms.cpp
+++ b/src/mame/drivers/sms.cpp
@@ -264,7 +264,7 @@ DC00 - Selection buttons #2, 9-16 (R)
#define MASTER_CLOCK_PAL 53203425.0 /* 12 * subcarrier freq. (4.43361875MHz) */
-static ADDRESS_MAP_START( sms1_mem, AS_PROGRAM, 8, sms_state )
+ADDRESS_MAP_START(sms_state::sms1_mem)
AM_RANGE(0x0000, 0xbfff) AM_WRITE(write_cart)
AM_RANGE(0x0000, 0x3fff) AM_READ(read_0000)
AM_RANGE(0x4000, 0x7fff) AM_READ(read_4000)
@@ -274,7 +274,7 @@ static ADDRESS_MAP_START( sms1_mem, AS_PROGRAM, 8, sms_state )
AM_RANGE(0xfffc, 0xffff) AM_READWRITE(sms_mapper_r, sms_mapper_w) /* Bankswitch control */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sms_mem, AS_PROGRAM, 8, sms_state )
+ADDRESS_MAP_START(sms_state::sms_mem)
AM_RANGE(0x0000, 0xbfff) AM_WRITE(write_cart)
AM_RANGE(0x0000, 0x3fff) AM_READ(read_0000)
AM_RANGE(0x4000, 0x7fff) AM_READ(read_4000)
@@ -283,7 +283,7 @@ static ADDRESS_MAP_START( sms_mem, AS_PROGRAM, 8, sms_state )
AM_RANGE(0xfffc, 0xffff) AM_READWRITE(sms_mapper_r, sms_mapper_w) /* Bankswitch control */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sms_store_mem, AS_PROGRAM, 8, smssdisp_state )
+ADDRESS_MAP_START(smssdisp_state::sms_store_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM /* BIOS */
AM_RANGE(0x4000, 0x47ff) AM_RAM /* RAM */
AM_RANGE(0x6000, 0x7fff) AM_READ(store_cart_peek)
@@ -294,7 +294,7 @@ static ADDRESS_MAP_START( sms_store_mem, AS_PROGRAM, 8, smssdisp_state )
ADDRESS_MAP_END
// I/O ports $3E and $3F do not exist on Mark III
-static ADDRESS_MAP_START( sg1000m3_io, AS_IO, 8, sms_state )
+ADDRESS_MAP_START(sms_state::sg1000m3_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x40, 0x7f) AM_READWRITE(sms_count_r, sms_psg_w)
@@ -304,7 +304,7 @@ static ADDRESS_MAP_START( sg1000m3_io, AS_IO, 8, sms_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sms_io, AS_IO, 8, sms_state )
+ADDRESS_MAP_START(sms_state::sms_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_MIRROR(0x3e) AM_WRITE(sms_mem_control_w)
@@ -321,7 +321,7 @@ ADDRESS_MAP_END
// addresses.
// At least the mirrors for I/O ports $3E/$3F don't seem to exist there.
// Leaving the mirrors breaks the Korean cartridge bublboky.
-static ADDRESS_MAP_START( smskr_io, AS_IO, 8, sms_state )
+ADDRESS_MAP_START(sms_state::smskr_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x3e, 0x3e) AM_WRITE(sms_mem_control_w)
@@ -336,7 +336,7 @@ ADDRESS_MAP_END
// Mirrors for I/O ports $3E/$3F don't exist on the Japanese SMS.
// Also, $C0/$C1 are the only mirrors for I/O ports $DC/$DD.
-static ADDRESS_MAP_START( smsj_io, AS_IO, 8, sms_state )
+ADDRESS_MAP_START(sms_state::smsj_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x3e, 0x3e) AM_WRITE(sms_mem_control_w)
@@ -356,7 +356,7 @@ ADDRESS_MAP_END
// It seems the mirrors for I/O ports $3E/$3F also don't seem to exist on the
// Game Gear. Leaving the mirrors breaks 'gloc' (it freezes after 1st stage).
-static ADDRESS_MAP_START( gg_io, AS_IO, 8, sms_state )
+ADDRESS_MAP_START(sms_state::gg_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x00) AM_READ(gg_input_port_00_r)
diff --git a/src/mame/drivers/sms_bootleg.cpp b/src/mame/drivers/sms_bootleg.cpp
index 1c1f107726f..eb058e4f2fc 100644
--- a/src/mame/drivers/sms_bootleg.cpp
+++ b/src/mame/drivers/sms_bootleg.cpp
@@ -236,7 +236,7 @@ A Korean version has been seen too (unless this can be switched?)
-static ADDRESS_MAP_START( sms_supergame_map, AS_PROGRAM, 8, smsbootleg_state )
+ADDRESS_MAP_START(smsbootleg_state::sms_supergame_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xfff7) AM_RAM
// AM_RANGE(0xfffc, 0xffff) AM_READWRITE(sms_mapper_r, sms_mapper_w) /* Bankswitch control */
@@ -253,7 +253,7 @@ WRITE8_MEMBER(smsbootleg_state::port18_w)
}
-static ADDRESS_MAP_START( sms_supergame_io, AS_IO, 8, smsbootleg_state )
+ADDRESS_MAP_START(smsbootleg_state::sms_supergame_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
diff --git a/src/mame/drivers/smsmcorp.cpp b/src/mame/drivers/smsmcorp.cpp
index 5680b4a6c7b..aa0c7981ba9 100644
--- a/src/mame/drivers/smsmcorp.cpp
+++ b/src/mame/drivers/smsmcorp.cpp
@@ -255,6 +255,9 @@ public:
required_device<screen_device> m_screen;
void sureshot(machine_config &config);
void sms(machine_config &config);
+ void sms_map(address_map &map);
+ void sub_map(address_map &map);
+ void sureshot_map(address_map &map);
};
@@ -481,7 +484,7 @@ uint32_t smsmfg_state::screen_update_sms(screen_device &screen, bitmap_ind16 &bi
*
*************************************/
-static ADDRESS_MAP_START( sms_map, AS_PROGRAM, 8, smsmfg_state )
+ADDRESS_MAP_START(smsmfg_state::sms_map)
AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x00800, 0x00803) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
AM_RANGE(0x01000, 0x01007) AM_WRITE(video_w)
@@ -492,7 +495,7 @@ static ADDRESS_MAP_START( sms_map, AS_PROGRAM, 8, smsmfg_state )
AM_RANGE(0xf8000, 0xfffff) AM_ROM // mirror for vectors
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sureshot_map, AS_PROGRAM, 8, smsmfg_state )
+ADDRESS_MAP_START(smsmfg_state::sureshot_map)
AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x02000, 0x02007) AM_WRITE(video_w)
AM_RANGE(0x03000, 0x03003) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
@@ -501,7 +504,7 @@ static ADDRESS_MAP_START( sureshot_map, AS_PROGRAM, 8, smsmfg_state )
AM_RANGE(0xf8000, 0xfffff) AM_ROM // mirror for vectors
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, smsmfg_state )
+ADDRESS_MAP_START(smsmfg_state::sub_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x3100, 0x3103) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
diff --git a/src/mame/drivers/snes.cpp b/src/mame/drivers/snes.cpp
index e6808fde670..dbec33b71dd 100644
--- a/src/mame/drivers/snes.cpp
+++ b/src/mame/drivers/snes.cpp
@@ -108,6 +108,8 @@ public:
optional_device<sns_cart_slot_device> m_cartslot;
void snespal(machine_config &config);
void snes(machine_config &config);
+ void snes_map(address_map &map);
+ void spc_map(address_map &map);
};
@@ -1010,13 +1012,13 @@ WRITE8_MEMBER( snes_console_state::pfest94_lo_w )
*
*************************************/
-static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8, snes_console_state )
+ADDRESS_MAP_START(snes_console_state::snes_map)
// AM_RANGE(0x000000, 0x7dffff) AM_READWRITE(snes20_lo_r, snes20_lo_w)
AM_RANGE(0x7e0000, 0x7fffff) AM_RAM /* 8KB Low RAM, 24KB High RAM, 96KB Expanded RAM */
// AM_RANGE(0x800000, 0xffffff) AM_READWRITE(snes20_hi_r, snes20_hi_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spc_map, AS_PROGRAM, 8, snes_console_state )
+ADDRESS_MAP_START(snes_console_state::spc_map)
AM_RANGE(0x0000, 0x00ef) AM_DEVREADWRITE("spc700", snes_sound_device, spc_ram_r, spc_ram_w) /* lower 32k ram */
AM_RANGE(0x00f0, 0x00ff) AM_DEVREADWRITE("spc700", snes_sound_device, spc_io_r, spc_io_w) /* spc io */
AM_RANGE(0x0100, 0xffff) AM_READWRITE(spc_ram_100_r, spc_ram_100_w)
diff --git a/src/mame/drivers/snesb.cpp b/src/mame/drivers/snesb.cpp
index 9a7845abe68..e469105c51c 100644
--- a/src/mame/drivers/snesb.cpp
+++ b/src/mame/drivers/snesb.cpp
@@ -188,6 +188,9 @@ public:
void mk3snes(machine_config &config);
void ffight2b(machine_config &config);
void kinstb(machine_config &config);
+ void mcu_io_map(address_map &map);
+ void snesb_map(address_map &map);
+ void spc_mem(address_map &map);
};
@@ -294,7 +297,7 @@ READ8_MEMBER(snesb_state::snesb_coin_r)
}
-static ADDRESS_MAP_START( snesb_map, AS_PROGRAM, 8, snesb_state )
+ADDRESS_MAP_START(snesb_state::snesb_map)
AM_RANGE(0x000000, 0x7dffff) AM_READWRITE(snes_r_bank1, snes_w_bank1)
AM_RANGE(0x7e0000, 0x7fffff) AM_RAM /* 8KB Low RAM, 24KB High RAM, 96KB Expanded RAM */
AM_RANGE(0x800000, 0xffffff) AM_READWRITE(snes_r_bank2, snes_w_bank2) /* Mirror and ROM */
@@ -310,7 +313,7 @@ WRITE8_MEMBER(snesb_state::spc_ram_100_w)
m_spc700->spc_ram_w(space, offset + 0x100, data);
}
-static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8, snesb_state )
+ADDRESS_MAP_START(snesb_state::spc_mem)
AM_RANGE(0x0000, 0x00ef) AM_DEVREADWRITE("spc700", snes_sound_device, spc_ram_r, spc_ram_w) /* lower 32k ram */
AM_RANGE(0x00f0, 0x00ff) AM_DEVREADWRITE("spc700", snes_sound_device, spc_io_r, spc_io_w) /* spc io */
AM_RANGE(0x0100, 0xffff) AM_READWRITE(spc_ram_100_r, spc_ram_100_w)
@@ -718,7 +721,7 @@ MACHINE_CONFIG_START(snesb_state::kinstb)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.00)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, snesb_state )
+ADDRESS_MAP_START(snesb_state::mcu_io_map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/snk.cpp b/src/mame/drivers/snk.cpp
index 107e6bc70c8..fcca50cb5c7 100644
--- a/src/mame/drivers/snk.cpp
+++ b/src/mame/drivers/snk.cpp
@@ -819,7 +819,7 @@ CUSTOM_INPUT_MEMBER(snk_state::snk_bonus_r)
/************************************************************************/
-static ADDRESS_MAP_START( marvins_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::marvins_cpuA_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6000) AM_WRITE(marvins_palette_bank_w)
AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN0")
@@ -846,7 +846,7 @@ static ADDRESS_MAP_START( marvins_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xff00, 0xff00) AM_WRITE(marvins_scroll_msb_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( marvins_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::marvins_cpuB_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("spriteram")
@@ -867,7 +867,7 @@ ADDRESS_MAP_END
// vangrd2 accesses video registers at xxF1 instead of xx00
-static ADDRESS_MAP_START( madcrash_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::madcrash_cpuA_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN0")
AM_RANGE(0x8100, 0x8100) AM_READ_PORT("IN1")
@@ -894,7 +894,7 @@ static ADDRESS_MAP_START( madcrash_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xff00, 0xff00) AM_MIRROR(0xff) AM_WRITE(snk_fg_scrollx_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( madcrash_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::madcrash_cpuB_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0x8700, 0x8700) AM_WRITE(snk_cpuB_nmi_ack_w) // vangrd2
AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w) // madcrash
@@ -914,7 +914,7 @@ static ADDRESS_MAP_START( madcrash_cpuB_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( madcrush_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::madcrush_cpuA_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN0")
AM_RANGE(0x8100, 0x8100) AM_READ_PORT("IN1")
@@ -941,7 +941,7 @@ static ADDRESS_MAP_START( madcrush_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xff00, 0xff00) AM_WRITE(marvins_scroll_msb_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( madcrush_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::madcrush_cpuB_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") // + work ram
@@ -962,7 +962,7 @@ static ADDRESS_MAP_START( madcrush_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jcross_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::jcross_cpuA_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa100, 0xa100) AM_READ_PORT("IN1")
@@ -983,7 +983,7 @@ static ADDRESS_MAP_START( jcross_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xffff, 0xffff) AM_WRITENOP // simply a program patch to not write to two not existing video registers?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jcross_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::jcross_cpuB_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa700, 0xa700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram")
@@ -992,7 +992,7 @@ static ADDRESS_MAP_START( jcross_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgladiat_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::sgladiat_cpuA_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0")
AM_RANGE(0xa100, 0xa100) AM_READ_PORT("IN1")
@@ -1014,7 +1014,7 @@ static ADDRESS_MAP_START( sgladiat_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sgladiat_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::sgladiat_cpuB_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xa600, 0xa600) AM_WRITE(sgladiat_flipscreen_w) // flip screen, bg palette bank
@@ -1030,7 +1030,7 @@ static ADDRESS_MAP_START( sgladiat_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hal21_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::hal21_cpuA_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -1050,7 +1050,7 @@ static ADDRESS_MAP_START( hal21_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hal21_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::hal21_cpuB_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w)
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram")
@@ -1059,7 +1059,7 @@ static ADDRESS_MAP_START( hal21_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aso_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::aso_cpuA_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -1081,7 +1081,7 @@ static ADDRESS_MAP_START( aso_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aso_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::aso_cpuB_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
@@ -1091,7 +1091,7 @@ static ADDRESS_MAP_START( aso_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnk3_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::tnk3_cpuA_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -1114,7 +1114,7 @@ static ADDRESS_MAP_START( tnk3_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnk3_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::tnk3_cpuB_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // tnk3, athena
AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // fitegolf
@@ -1125,7 +1125,7 @@ static ADDRESS_MAP_START( tnk3_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ikari_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::ikari_cpuA_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -1160,7 +1160,7 @@ static ADDRESS_MAP_START( ikari_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ikari_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::ikari_cpuB_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc980, 0xc980) AM_WRITE(ikari_unknown_video_w)
@@ -1180,7 +1180,7 @@ static ADDRESS_MAP_START( ikari_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bermudat_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::bermudat_cpuA_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -1224,7 +1224,7 @@ static ADDRESS_MAP_START( bermudat_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bermudat_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::bermudat_cpuB_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc800, 0xc800) AM_WRITE(snk_bg_scrolly_w)
@@ -1243,7 +1243,7 @@ static ADDRESS_MAP_START( bermudat_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gwar_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::gwar_cpuA_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -1270,7 +1270,7 @@ static ADDRESS_MAP_START( gwar_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gwar_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::gwar_cpuB_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc8c0, 0xc8c0) AM_WRITE(gwar_tx_bank_w) // char and palette bank
@@ -1281,7 +1281,7 @@ static ADDRESS_MAP_START( gwar_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gwara_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::gwara_cpuA_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1")
@@ -1307,7 +1307,7 @@ static ADDRESS_MAP_START( gwara_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xfac0, 0xfac0) AM_WRITE(snk_sprite_split_point_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gwara_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::gwara_cpuB_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w)
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram")
@@ -1318,7 +1318,7 @@ static ADDRESS_MAP_START( gwara_cpuB_map, AS_PROGRAM, 8, snk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tdfever_cpuA_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::tdfever_cpuA_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc080, 0xc080) AM_READ_PORT("IN1")
@@ -1348,7 +1348,7 @@ static ADDRESS_MAP_START( tdfever_cpuA_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tdfever_cpuB_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::tdfever_cpuB_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // tdfever, tdfever2
AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // fsoccer
@@ -1361,7 +1361,7 @@ ADDRESS_MAP_END
/***********************************************************************/
-static ADDRESS_MAP_START( marvins_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::marvins_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_READ(marvins_soundlatch_r)
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
@@ -1371,13 +1371,13 @@ static ADDRESS_MAP_START( marvins_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( marvins_sound_portmap, AS_IO, 8, snk_state )
+ADDRESS_MAP_START(snk_state::marvins_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READNOP // read on startup, then the Z80 automatically pulls down the IORQ pin to ack irq
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jcross_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::jcross_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_READ(sgladiat_soundlatch_r)
@@ -1387,13 +1387,13 @@ static ADDRESS_MAP_START( jcross_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xe004, 0xe005) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jcross_sound_portmap, AS_IO, 8, snk_state )
+ADDRESS_MAP_START(snk_state::jcross_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(sgladiat_sound_irq_ack_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hal21_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::hal21_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_READ(sgladiat_soundlatch_r)
@@ -1403,13 +1403,13 @@ static ADDRESS_MAP_START( hal21_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xe008, 0xe009) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hal21_sound_portmap, AS_IO, 8, snk_state )
+ADDRESS_MAP_START(snk_state::hal21_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READNOP // read on startup, then the Z80 automatically pulls down the IORQ pin to ack irq
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnk3_YM3526_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::tnk3_YM3526_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1419,7 +1419,7 @@ static ADDRESS_MAP_START( tnk3_YM3526_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xe006, 0xe006) AM_READ(tnk3_ymirq_ack_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aso_YM3526_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::aso_YM3526_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1430,7 +1430,7 @@ static ADDRESS_MAP_START( aso_YM3526_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf006, 0xf006) AM_READ(tnk3_ymirq_ack_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( YM3526_YM3526_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::YM3526_YM3526_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1441,7 +1441,7 @@ static ADDRESS_MAP_START( YM3526_YM3526_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( YM3812_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::YM3812_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1450,7 +1450,7 @@ static ADDRESS_MAP_START( YM3812_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( YM3526_Y8950_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::YM3526_Y8950_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1461,7 +1461,7 @@ static ADDRESS_MAP_START( YM3526_Y8950_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( YM3812_Y8950_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::YM3812_Y8950_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -1472,7 +1472,7 @@ static ADDRESS_MAP_START( YM3812_Y8950_sound_map, AS_PROGRAM, 8, snk_state )
AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( Y8950_sound_map, AS_PROGRAM, 8, snk_state )
+ADDRESS_MAP_START(snk_state::Y8950_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/snk6502.cpp b/src/mame/drivers/snk6502.cpp
index 44ba340176f..6bd071c6b8f 100644
--- a/src/mame/drivers/snk6502.cpp
+++ b/src/mame/drivers/snk6502.cpp
@@ -347,7 +347,7 @@ CUSTOM_INPUT_MEMBER(snk6502_state::sasuke_count_r)
*
*************************************/
-static ADDRESS_MAP_START( sasuke_map, AS_PROGRAM, 8, snk6502_state )
+ADDRESS_MAP_START(snk6502_state::sasuke_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -366,7 +366,7 @@ static ADDRESS_MAP_START( sasuke_map, AS_PROGRAM, 8, snk6502_state )
AM_RANGE(0xf800, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( satansat_map, AS_PROGRAM, 8, snk6502_state )
+ADDRESS_MAP_START(snk6502_state::satansat_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -385,7 +385,7 @@ static ADDRESS_MAP_START( satansat_map, AS_PROGRAM, 8, snk6502_state )
AM_RANGE(0xf800, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vanguard_map, AS_PROGRAM, 8, snk6502_state )
+ADDRESS_MAP_START(snk6502_state::vanguard_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -406,7 +406,7 @@ static ADDRESS_MAP_START( vanguard_map, AS_PROGRAM, 8, snk6502_state )
AM_RANGE(0xf000, 0xffff) AM_ROM /* for the reset / interrupt vectors */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fantasy_map, AS_PROGRAM, 8, snk6502_state )
+ADDRESS_MAP_START(snk6502_state::fantasy_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -427,7 +427,7 @@ static ADDRESS_MAP_START( fantasy_map, AS_PROGRAM, 8, snk6502_state )
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pballoon_map, AS_PROGRAM, 8, snk6502_state )
+ADDRESS_MAP_START(snk6502_state::pballoon_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/snk68.cpp b/src/mame/drivers/snk68.cpp
index 87eb1995577..50e436cc871 100644
--- a/src/mame/drivers/snk68.cpp
+++ b/src/mame/drivers/snk68.cpp
@@ -104,7 +104,7 @@ WRITE8_MEMBER(snk68_state::sound_w)
/*******************************************************************************/
-static ADDRESS_MAP_START( pow_map, AS_PROGRAM, 16, snk68_state )
+ADDRESS_MAP_START(snk68_state::pow_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM
AM_RANGE(0x080000, 0x080001) AM_READ(control_1_r)
@@ -121,7 +121,7 @@ static ADDRESS_MAP_START( pow_map, AS_PROGRAM, 16, snk68_state )
AM_RANGE(0x400000, 0x400fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( searchar_map, AS_PROGRAM, 16, snk68_state )
+ADDRESS_MAP_START(snk68_state::searchar_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM
AM_RANGE(0x080000, 0x080005) AM_READ(protcontrols_r) /* Player 1 & 2 */
@@ -145,7 +145,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, snk68_state )
+ADDRESS_MAP_START(snk68_state::sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
@@ -163,7 +163,7 @@ WRITE8_MEMBER(snk68_state::D7759_upd_reset_w)
m_upd7759->reset_w(data & 0x80);
}
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, snk68_state )
+ADDRESS_MAP_START(snk68_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_device, status_port_r, control_port_w)
AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_device, write_port_w)
diff --git a/src/mame/drivers/snookr10.cpp b/src/mame/drivers/snookr10.cpp
index a887fbe250d..9b90455f256 100644
--- a/src/mame/drivers/snookr10.cpp
+++ b/src/mame/drivers/snookr10.cpp
@@ -764,7 +764,7 @@ READ8_MEMBER(snookr10_state::port2000_8_r)
* Memory map information *
*************************/
-static ADDRESS_MAP_START( snookr10_map, AS_PROGRAM, 8, snookr10_state )
+ADDRESS_MAP_START(snookr10_state::snookr10_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed 6116 */
AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x3000, 0x3000) AM_READ_PORT("IN0") /* IN0 */
@@ -779,7 +779,7 @@ static ADDRESS_MAP_START( snookr10_map, AS_PROGRAM, 8, snookr10_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tenballs_map, AS_PROGRAM, 8, snookr10_state )
+ADDRESS_MAP_START(snookr10_state::tenballs_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed 6116 */
AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x4000, 0x4000) AM_READ_PORT("IN0") /* IN0 */
@@ -793,7 +793,7 @@ static ADDRESS_MAP_START( tenballs_map, AS_PROGRAM, 8, snookr10_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crystalc_map, AS_PROGRAM, 8, snookr10_state )
+ADDRESS_MAP_START(snookr10_state::crystalc_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed 6116 */
AM_RANGE(0x1000, 0x1000) AM_WRITE(output_port_0_w) /* OUT0 */
AM_RANGE(0x1001, 0x1001) AM_WRITE(output_port_1_w) /* OUT1 */
diff --git a/src/mame/drivers/snowbros.cpp b/src/mame/drivers/snowbros.cpp
index 6d89c5ff4fc..090c2af4171 100644
--- a/src/mame/drivers/snowbros.cpp
+++ b/src/mame/drivers/snowbros.cpp
@@ -191,7 +191,7 @@ READ16_MEMBER(snowbros_state::toto_read)
/* Snow Bros Memory Map */
-static ADDRESS_MAP_START( snowbros_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::snowbros_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x200000, 0x200001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
@@ -208,12 +208,12 @@ static ADDRESS_MAP_START( snowbros_map, AS_PROGRAM, 16, snowbros_state )
AM_RANGE(0xa00000, 0xa00001) AM_WRITE(snowbros_irq2_ack_w) /* IRQ 2 acknowledge */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0x04, 0x04) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -265,17 +265,17 @@ WRITE8_MEMBER(snowbros_state::prot_io_w)
}
/* Semicom AT89C52 MCU */
-static ADDRESS_MAP_START( protection_map, AS_PROGRAM, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::protection_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( protection_iomap, AS_IO, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::protection_iomap)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(prot_io_r,prot_io_w)
ADDRESS_MAP_END
/* Winter Bobble - bootleg GFX chip */
-static ADDRESS_MAP_START( wintbob_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::wintbob_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x200000, 0x200001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
@@ -294,7 +294,7 @@ ADDRESS_MAP_END
/* Honey Dolls */
-static ADDRESS_MAP_START( honeydol_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::honeydol_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("hyperpac_ram")
AM_RANGE(0x200000, 0x200001) AM_WRITENOP /* ? */
@@ -310,13 +310,13 @@ static ADDRESS_MAP_START( honeydol_map, AS_PROGRAM, 16, snowbros_state )
AM_RANGE(0xb00000, 0xb01fff) AM_RAM AM_SHARE("spriteram16b")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( honeydol_sound_map, AS_PROGRAM, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::honeydol_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xe010, 0xe010) AM_DEVREADWRITE("oki", okim6295_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( honeydol_sound_io_map, AS_IO, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::honeydol_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write) // not connected?
AM_RANGE(0x04, 0x04) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -325,7 +325,7 @@ ADDRESS_MAP_END
/* Twin Adventure */
-static ADDRESS_MAP_START( twinadv_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::twinadv_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x200001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
@@ -352,7 +352,7 @@ WRITE8_MEMBER(snowbros_state::twinadv_oki_bank_w)
m_oki->set_rom_bank(bank);
}
-static ADDRESS_MAP_START( twinadv_sound_io_map, AS_IO, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::twinadv_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x02) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write) // back to 68k?
@@ -368,7 +368,7 @@ sound hardware is also different
*/
-static ADDRESS_MAP_START( hyperpac_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::hyperpac_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("hyperpac_ram")
AM_RANGE(0x300000, 0x300001) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
@@ -384,7 +384,7 @@ static ADDRESS_MAP_START( hyperpac_map, AS_PROGRAM, 16, snowbros_state )
AM_RANGE(0xa00000, 0xa00001) AM_WRITE(snowbros_irq2_ack_w) /* IRQ 2 acknowledge */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hyperpac_sound_map, AS_PROGRAM, 8, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::hyperpac_sound_map)
AM_RANGE(0x0000, 0xcfff) AM_ROM
AM_RANGE(0xd000, 0xd7ff) AM_RAM
AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_device,read,write)
@@ -499,7 +499,7 @@ WRITE16_MEMBER(snowbros_state::sb3_sound_w)
-static ADDRESS_MAP_START( snowbros3_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::snowbros3_map)
AM_RANGE( 0x000000, 0x03ffff) AM_ROM
AM_RANGE( 0x100000, 0x103fff) AM_RAM
AM_RANGE( 0x200000, 0x200001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
@@ -518,7 +518,7 @@ ADDRESS_MAP_END
/* Final Tetris */
-static ADDRESS_MAP_START( finalttr_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::finalttr_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("hyperpac_ram")
AM_RANGE(0x300000, 0x300001) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
@@ -536,7 +536,7 @@ static ADDRESS_MAP_START( finalttr_map, AS_PROGRAM, 16, snowbros_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yutnori_map, AS_PROGRAM, 16, snowbros_state )
+ADDRESS_MAP_START(snowbros_state::yutnori_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
// 0x100000 clr.w on startup
diff --git a/src/mame/drivers/socrates.cpp b/src/mame/drivers/socrates.cpp
index cdd4cc3a526..22c85530354 100644
--- a/src/mame/drivers/socrates.cpp
+++ b/src/mame/drivers/socrates.cpp
@@ -194,6 +194,10 @@ public:
void socrates_pal(machine_config &config);
void socrates(machine_config &config);
+ void socrates_rambank_map(address_map &map);
+ void socrates_rombank_map(address_map &map);
+ void z80_io(address_map &map);
+ void z80_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -214,6 +218,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER( send_input );
void iqunlimz(machine_config &config);
+ void iqunlimz_io(address_map &map);
+ void iqunlimz_mem(address_map &map);
+ void iqunlimz_rambank_map(address_map &map);
+ void iqunlimz_rombank_map(address_map &map);
protected:
virtual void machine_reset() override;
int get_color(int index, int y);
@@ -969,7 +977,7 @@ INPUT_CHANGED_MEMBER( iqunlimz_state::send_input )
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(z80_mem, AS_PROGRAM, 8, socrates_state )
+ADDRESS_MAP_START(socrates_state::z80_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM /* system rom, bank 0 (fixed) */
AM_RANGE(0x4000, 0x7fff) AM_DEVICE("rombank1", address_map_bank_device, amap8) /* banked rom space; system rom is banks 0 through F, cartridge rom is banks 10 onward, usually banks 10 through 17. area past the end of the cartridge, and the whole 10-ff area when no cartridge is inserted, reads as 0xF3 */
@@ -977,19 +985,19 @@ static ADDRESS_MAP_START(z80_mem, AS_PROGRAM, 8, socrates_state )
AM_RANGE(0xc000, 0xffff) AM_DEVICE("rambank2", address_map_bank_device, amap8) /* banked ram 'window' 1 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( socrates_rombank_map, AS_PROGRAM, 8, socrates_state )
+ADDRESS_MAP_START(socrates_state::socrates_rombank_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("maincpu", 0) AM_MIRROR(0xF00000) // xxxx 00** **** **** **** ****
AM_RANGE(0x040000, 0x07ffff) AM_READ(socrates_cart_r) AM_SELECT(0xF80000) // **** *1** **** **** **** ****
AM_RANGE(0x080000, 0x0bffff) AM_READ(read_f3) // xxxx 10** **** **** **** ****
ADDRESS_MAP_END
-static ADDRESS_MAP_START( socrates_rambank_map, AS_PROGRAM, 8, socrates_state )
+ADDRESS_MAP_START(socrates_state::socrates_rambank_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_RAM AM_REGION("vram", 0) AM_MIRROR(0x30000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z80_io, AS_IO, 8, socrates_state )
+ADDRESS_MAP_START(socrates_state::z80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(common_rom_bank_r, common_rom_bank_w) AM_MIRROR(0x7) /* rom bank select - RW - 8 bits */
@@ -1014,7 +1022,7 @@ static ADDRESS_MAP_START(z80_io, AS_IO, 8, socrates_state )
AM_RANGE(0x70, 0xFF) AM_READ(read_f3) // nothing mapped here afaik
ADDRESS_MAP_END
-static ADDRESS_MAP_START(iqunlimz_mem, AS_PROGRAM, 8, iqunlimz_state)
+ADDRESS_MAP_START(iqunlimz_state::iqunlimz_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_DEVICE("rombank2", address_map_bank_device, amap8)
AM_RANGE(0x4000, 0x7fff) AM_DEVICE("rombank1", address_map_bank_device, amap8)
@@ -1022,19 +1030,19 @@ static ADDRESS_MAP_START(iqunlimz_mem, AS_PROGRAM, 8, iqunlimz_state)
AM_RANGE(0xc000, 0xffff) AM_DEVICE("rambank2", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( iqunlimz_rombank_map, AS_PROGRAM, 8, iqunlimz_state )
+ADDRESS_MAP_START(iqunlimz_state::iqunlimz_rombank_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("maincpu", 0) AM_MIRROR(0xF00000) // xxxx 00** **** **** **** ****
AM_RANGE(0x040000, 0x07ffff) AM_READ(socrates_cart_r) AM_SELECT(0xF80000) // **** *1** **** **** **** ****
AM_RANGE(0x080000, 0x0bffff) AM_ROM AM_REGION("maincpu", 0x40000) AM_MIRROR(0xF00000)// xxxx 10** **** **** **** ****
ADDRESS_MAP_END
-static ADDRESS_MAP_START( iqunlimz_rambank_map, AS_PROGRAM, 8, iqunlimz_state )
+ADDRESS_MAP_START(iqunlimz_state::iqunlimz_rambank_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3ffff) AM_RAM AM_REGION("vram", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( iqunlimz_io , AS_IO, 8, iqunlimz_state)
+ADDRESS_MAP_START(iqunlimz_state::iqunlimz_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_READWRITE(common_rom_bank_r, common_rom_bank_w) AM_MIRROR(0x06)
diff --git a/src/mame/drivers/softbox.cpp b/src/mame/drivers/softbox.cpp
index 011ade084cf..4ec2dc79c40 100644
--- a/src/mame/drivers/softbox.cpp
+++ b/src/mame/drivers/softbox.cpp
@@ -123,7 +123,7 @@ WRITE8_MEMBER( softbox_state::dbrg_w )
// ADDRESS_MAP( softbox_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( softbox_mem, AS_PROGRAM, 8, softbox_state )
+ADDRESS_MAP_START(softbox_state::softbox_mem)
AM_RANGE(0x0000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION(Z80_TAG, 0)
ADDRESS_MAP_END
@@ -133,7 +133,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( softbox_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( softbox_io, AS_IO, 8, softbox_state )
+ADDRESS_MAP_START(softbox_state::softbox_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x08) AM_DEVREADWRITE(I8251_TAG, i8251_device, data_r, data_w)
AM_RANGE(0x09, 0x09) AM_DEVREADWRITE(I8251_TAG, i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/solomon.cpp b/src/mame/drivers/solomon.cpp
index 24af361061b..63a4c4d275c 100644
--- a/src/mame/drivers/solomon.cpp
+++ b/src/mame/drivers/solomon.cpp
@@ -49,7 +49,7 @@ WRITE8_MEMBER(solomon_state::nmi_mask_w)
m_nmi_mask = data & 1;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, solomon_state )
+ADDRESS_MAP_START(solomon_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(solomon_colorram_w) AM_SHARE("colorram")
@@ -71,14 +71,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, solomon_state )
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, solomon_state )
+ADDRESS_MAP_START(solomon_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xffff, 0xffff) AM_WRITENOP /* watchdog? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, solomon_state )
+ADDRESS_MAP_START(solomon_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x20, 0x21) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/sonson.cpp b/src/mame/drivers/sonson.cpp
index f1027234371..126d7fb8fd2 100644
--- a/src/mame/drivers/sonson.cpp
+++ b/src/mame/drivers/sonson.cpp
@@ -78,7 +78,7 @@ WRITE_LINE_MEMBER(sonson_state::coin2_counter_w)
machine().bookkeeping().coin_counter_w(1, state);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sonson_state )
+ADDRESS_MAP_START(sonson_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(sonson_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(sonson_colorram_w) AM_SHARE("colorram")
@@ -95,7 +95,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sonson_state )
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, sonson_state )
+ADDRESS_MAP_START(sonson_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/sorcerer.cpp b/src/mame/drivers/sorcerer.cpp
index d5b00609e4c..1cf32893baa 100644
--- a/src/mame/drivers/sorcerer.cpp
+++ b/src/mame/drivers/sorcerer.cpp
@@ -168,7 +168,7 @@ NOTES (2016-06-06)
#include "speaker.h"
-static ADDRESS_MAP_START( sorcerer_mem, AS_PROGRAM, 8, sorcerer_state)
+ADDRESS_MAP_START(sorcerer_state::sorcerer_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("boot")
AM_RANGE(0x0800, 0xbfff) AM_RAM
@@ -179,7 +179,7 @@ static ADDRESS_MAP_START( sorcerer_mem, AS_PROGRAM, 8, sorcerer_state)
AM_RANGE(0xfc00, 0xffff) AM_RAM AM_REGION("maincpu", 0xfc00) /* programmable chars */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sorcererd_mem, AS_PROGRAM, 8, sorcerer_state)
+ADDRESS_MAP_START(sorcerer_state::sorcererd_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("boot")
AM_RANGE(0x0800, 0xbbff) AM_RAM
@@ -192,7 +192,7 @@ static ADDRESS_MAP_START( sorcererd_mem, AS_PROGRAM, 8, sorcerer_state)
AM_RANGE(0xfc00, 0xffff) AM_RAM AM_REGION("maincpu", 0xfc00) /* programmable chars */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sorcerer_io, AS_IO, 8, sorcerer_state)
+ADDRESS_MAP_START(sorcerer_state::sorcerer_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xfc, 0xfc) AM_READWRITE( sorcerer_fc_r, sorcerer_fc_w )
diff --git a/src/mame/drivers/sothello.cpp b/src/mame/drivers/sothello.cpp
index 5166a2ddd81..76f111bdb52 100644
--- a/src/mame/drivers/sothello.cpp
+++ b/src/mame/drivers/sothello.cpp
@@ -74,6 +74,11 @@ public:
DECLARE_WRITE_LINE_MEMBER(adpcm_int);
void sothello(machine_config &config);
+ void maincpu_io_map(address_map &map);
+ void maincpu_mem_map(address_map &map);
+ void soundcpu_io_map(address_map &map);
+ void soundcpu_mem_map(address_map &map);
+ void subcpu_mem_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -161,14 +166,14 @@ READ8_MEMBER(sothello_state::soundcpu_status_r)
return m_soundcpu_busy;
}
-static ADDRESS_MAP_START( maincpu_mem_map, AS_PROGRAM, 8, sothello_state )
+ADDRESS_MAP_START(sothello_state::maincpu_mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank")
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_MIRROR(0x1800) AM_SHARE("mainsub")
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maincpu_io_map, AS_IO, 8, sothello_state )
+ADDRESS_MAP_START(sothello_state::maincpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x0f) AM_READ_PORT("INPUT1")
AM_RANGE( 0x10, 0x1f) AM_READ_PORT("INPUT2")
@@ -218,12 +223,12 @@ WRITE8_MEMBER(sothello_state::soundcpu_int_clear_w)
m_soundcpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( soundcpu_mem_map, AS_PROGRAM, 8, sothello_state )
+ADDRESS_MAP_START(sothello_state::soundcpu_mem_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM AM_REGION("soundcpu", 0)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soundcpu_io_map, AS_IO, 8, sothello_state )
+ADDRESS_MAP_START(sothello_state::soundcpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x01, 0x01) AM_WRITE(msm_data_w)
@@ -258,7 +263,7 @@ READ8_MEMBER(sothello_state::subcpu_status_r)
return 0;
}
-static ADDRESS_MAP_START( subcpu_mem_map, AS_PROGRAM, 8, sothello_state )
+ADDRESS_MAP_START(sothello_state::subcpu_mem_map)
AM_RANGE(0x0000, 0x1fff) AM_READWRITE(subcpu_status_r, subcpu_status_w)
AM_RANGE(0x2000, 0x77ff) AM_RAM
AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("mainsub") /* upper 0x800 of 6264 is shared with main cpu */
diff --git a/src/mame/drivers/spacefb.cpp b/src/mame/drivers/spacefb.cpp
index 0e93c4f390e..94aa1686437 100644
--- a/src/mame/drivers/spacefb.cpp
+++ b/src/mame/drivers/spacefb.cpp
@@ -206,7 +206,7 @@ void spacefb_state::machine_reset()
*
*************************************/
-static ADDRESS_MAP_START( spacefb_main_map, AS_PROGRAM, 8, spacefb_state )
+ADDRESS_MAP_START(spacefb_state::spacefb_main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_NOP
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x3c00) AM_RAM AM_SHARE("videoram")
@@ -215,7 +215,7 @@ static ADDRESS_MAP_START( spacefb_main_map, AS_PROGRAM, 8, spacefb_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacefb_audio_map, AS_PROGRAM, 8, spacefb_state )
+ADDRESS_MAP_START(spacefb_state::spacefb_audio_map)
ADDRESS_MAP_GLOBAL_MASK(0x3ff)
AM_RANGE(0x0000, 0x03ff) AM_ROM
ADDRESS_MAP_END
@@ -228,7 +228,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( spacefb_main_io_map, AS_IO, 8, spacefb_state )
+ADDRESS_MAP_START(spacefb_state::spacefb_main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2")
diff --git a/src/mame/drivers/spaceg.cpp b/src/mame/drivers/spaceg.cpp
index 961833917d5..3d6cd47143d 100644
--- a/src/mame/drivers/spaceg.cpp
+++ b/src/mame/drivers/spaceg.cpp
@@ -215,6 +215,7 @@ public:
uint8_t m_sound3;
void spaceg(machine_config &config);
+ void spaceg_map(address_map &map);
protected:
virtual void driver_start() override;
};
@@ -417,7 +418,7 @@ WRITE8_MEMBER(spaceg_state::sound3_w)
*
*************************************/
-static ADDRESS_MAP_START( spaceg_map, AS_PROGRAM, 8, spaceg_state )
+ADDRESS_MAP_START(spaceg_state::spaceg_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3000, 0x3fff) AM_ROM
AM_RANGE(0x7000, 0x77ff) AM_RAM
diff --git a/src/mame/drivers/spartanxtec.cpp b/src/mame/drivers/spartanxtec.cpp
index 2b9a950fbba..c5915a83259 100644
--- a/src/mame/drivers/spartanxtec.cpp
+++ b/src/mame/drivers/spartanxtec.cpp
@@ -69,6 +69,9 @@ public:
DECLARE_WRITE8_MEMBER(sound_irq_ack);
DECLARE_WRITE8_MEMBER(irq_ack);
void spartanxtec(machine_config &config);
+ void spartanxtec_map(address_map &map);
+ void spartanxtec_sound_io(address_map &map);
+ void spartanxtec_sound_map(address_map &map);
};
@@ -174,7 +177,7 @@ WRITE8_MEMBER(spartanxtec_state::irq_ack)
}
-static ADDRESS_MAP_START( spartanxtec_map, AS_PROGRAM, 8, spartanxtec_state )
+ADDRESS_MAP_START(spartanxtec_state::spartanxtec_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc400, 0xc7ff) AM_RAM AM_SHARE("spriteram")
@@ -206,7 +209,7 @@ WRITE8_MEMBER(spartanxtec_state::sound_irq_ack)
}
-static ADDRESS_MAP_START( spartanxtec_sound_map, AS_PROGRAM, 8, spartanxtec_state )
+ADDRESS_MAP_START(spartanxtec_state::spartanxtec_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
@@ -214,7 +217,7 @@ static ADDRESS_MAP_START( spartanxtec_sound_map, AS_PROGRAM, 8, spartanxtec_stat
AM_RANGE(0xc000, 0xc000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spartanxtec_sound_io, AS_IO, 8, spartanxtec_state )
+ADDRESS_MAP_START(spartanxtec_state::spartanxtec_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_WRITE( sound_irq_ack )
diff --git a/src/mame/drivers/spbactn.cpp b/src/mame/drivers/spbactn.cpp
index 33c331194c4..ae22ada2c5f 100644
--- a/src/mame/drivers/spbactn.cpp
+++ b/src/mame/drivers/spbactn.cpp
@@ -146,7 +146,7 @@ WRITE16_MEMBER(spbactn_state::main_irq_ack_w)
m_maincpu->set_input_line(M68K_IRQ_3, CLEAR_LINE);
}
-static ADDRESS_MAP_START( spbactn_map, AS_PROGRAM, 16, spbactn_state )
+ADDRESS_MAP_START(spbactn_state::spbactn_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x40000, 0x43fff) AM_RAM // main ram
AM_RANGE(0x50000, 0x50fff) AM_RAM AM_SHARE("spvideoram")
@@ -195,7 +195,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( spbactnp_map, AS_PROGRAM, 16, spbactn_state )
+ADDRESS_MAP_START(spbactn_state::spbactnp_map)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x40000, 0x43fff) AM_RAM // main ram
AM_RANGE(0x50000, 0x50fff) AM_RAM AM_SHARE("spvideoram")
@@ -218,7 +218,7 @@ static ADDRESS_MAP_START( spbactnp_map, AS_PROGRAM, 16, spbactn_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spbactn_sound_map, AS_PROGRAM, 8, spbactn_state )
+ADDRESS_MAP_START(spbactn_state::spbactn_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf800) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -230,7 +230,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( spbactnp_extra_map, AS_PROGRAM, 8, spbactn_state )
+ADDRESS_MAP_START(spbactn_state::spbactnp_extra_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("extraram2")
AM_RANGE(0xe000, 0xefff) AM_RAM
diff --git a/src/mame/drivers/spc1000.cpp b/src/mame/drivers/spc1000.cpp
index 083017534f1..0949b141643 100644
--- a/src/mame/drivers/spc1000.cpp
+++ b/src/mame/drivers/spc1000.cpp
@@ -179,6 +179,8 @@ public:
}
void spc1000(machine_config &config);
+ void spc1000_io(address_map &map);
+ void spc1000_mem(address_map &map);
private:
uint8_t m_IPLK;
uint8_t m_GMODE;
@@ -198,7 +200,7 @@ private:
required_device<centronics_device> m_centronics;
};
-static ADDRESS_MAP_START(spc1000_mem, AS_PROGRAM, 8, spc1000_state )
+ADDRESS_MAP_START(spc1000_state::spc1000_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
AM_RANGE(0x8000, 0xffff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank4")
@@ -262,7 +264,7 @@ READ8_MEMBER( spc1000_state::keyboard_r )
}
-static ADDRESS_MAP_START( spc1000_io , AS_IO, 8, spc1000_state )
+ADDRESS_MAP_START(spc1000_state::spc1000_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(gmode_r, gmode_w)
diff --git a/src/mame/drivers/spc1500.cpp b/src/mame/drivers/spc1500.cpp
index bfbce6a4703..39d7a66077e 100644
--- a/src/mame/drivers/spc1500.cpp
+++ b/src/mame/drivers/spc1500.cpp
@@ -292,6 +292,8 @@ public:
MC6845_RECONFIGURE(crtc_reconfig);
TIMER_DEVICE_CALLBACK_MEMBER(timer);
void spc1500(machine_config &config);
+ void spc1500_double_io(address_map &map);
+ void spc1500_mem(address_map &map);
private:
uint8_t *m_p_ram;
uint8_t m_ipl;
@@ -677,7 +679,7 @@ READ8_MEMBER( spc1500_state::io_r)
return 0xff;
}
-static ADDRESS_MAP_START( spc1500_double_io , AS_IO, 8, spc1500_state )
+ADDRESS_MAP_START(spc1500_state::spc1500_double_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x2000, 0xffff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x0000, 0x17ff) AM_RAM AM_SHARE("pcgram")
@@ -812,7 +814,7 @@ static INPUT_PORTS_START( spc1500 )
PORT_BIT(0x80, IP_ACTIVE_HIGH,IPT_UNUSED) // DIP SW3 for 200/400 line
INPUT_PORTS_END
-static ADDRESS_MAP_START(spc1500_mem, AS_PROGRAM, 8, spc1500_state )
+ADDRESS_MAP_START(spc1500_state::spc1500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
AM_RANGE(0x8000, 0xffff) AM_READWRITE_BANK("bank4")
diff --git a/src/mame/drivers/spcforce.cpp b/src/mame/drivers/spcforce.cpp
index 54294b91e1a..c0587014201 100644
--- a/src/mame/drivers/spcforce.cpp
+++ b/src/mame/drivers/spcforce.cpp
@@ -124,7 +124,7 @@ WRITE_LINE_MEMBER(spcforce_state::unknown_w)
// written very frequently
}
-static ADDRESS_MAP_START( spcforce_map, AS_PROGRAM, 8, spcforce_state )
+ADDRESS_MAP_START(spcforce_state::spcforce_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x7000, 0x7000) AM_READ_PORT("DSW") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -136,7 +136,7 @@ static ADDRESS_MAP_START( spcforce_map, AS_PROGRAM, 8, spcforce_state )
AM_RANGE(0xa000, 0xa3ff) AM_RAM AM_SHARE("scrollram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spcforce_sound_map, AS_PROGRAM, 8, spcforce_state )
+ADDRESS_MAP_START(spcforce_state::spcforce_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/spdodgeb.cpp b/src/mame/drivers/spdodgeb.cpp
index d1af2e92106..bb091f32371 100644
--- a/src/mame/drivers/spdodgeb.cpp
+++ b/src/mame/drivers/spdodgeb.cpp
@@ -236,7 +236,7 @@ WRITE8_MEMBER(spdodgeb_state::mcu63701_w)
-static ADDRESS_MAP_START( spdodgeb_map, AS_PROGRAM, 8, spdodgeb_state )
+ADDRESS_MAP_START(spdodgeb_state::spdodgeb_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x10ff) AM_WRITEONLY AM_SHARE("spriteram")
AM_RANGE(0x2000, 0x2fff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -253,7 +253,7 @@ static ADDRESS_MAP_START( spdodgeb_map, AS_PROGRAM, 8, spdodgeb_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spdodgeb_sound_map, AS_PROGRAM, 8, spdodgeb_state )
+ADDRESS_MAP_START(spdodgeb_state::spdodgeb_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x2800, 0x2801) AM_DEVWRITE("ymsnd", ym3812_device, write)
diff --git a/src/mame/drivers/spec128.cpp b/src/mame/drivers/spec128.cpp
index ba72b11aa18..b8436c5bb71 100644
--- a/src/mame/drivers/spec128.cpp
+++ b/src/mame/drivers/spec128.cpp
@@ -233,7 +233,7 @@ READ8_MEMBER( spectrum_state::spectrum_128_ula_r )
return vpos<193 ? m_screen_location[0x1800|(vpos&0xf8)<<2]:0xff;
}
-static ADDRESS_MAP_START (spectrum_128_io, AS_IO, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::spectrum_128_io)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(spectrum_port_fe_r,spectrum_port_fe_w) AM_SELECT(0xfffe)
AM_RANGE(0x0001, 0x0001) AM_WRITE(spectrum_128_port_7ffd_w) AM_MIRROR(0x7ffc) // (A15 | A1) == 0, note: reading from this port does write to it by value from data bus
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("ay8912", ay8910_device, data_w) AM_MIRROR(0x3ffd)
@@ -241,7 +241,7 @@ static ADDRESS_MAP_START (spectrum_128_io, AS_IO, 8, spectrum_state )
AM_RANGE(0x0001, 0x0001) AM_READ(spectrum_128_ula_r) AM_MIRROR(0xfffe)
ADDRESS_MAP_END
-static ADDRESS_MAP_START (spectrum_128_mem, AS_PROGRAM, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::spectrum_128_mem)
AM_RANGE( 0x0000, 0x3fff) AM_READWRITE(spectrum_128_bank1_r, spectrum_128_bank1_w)
AM_RANGE( 0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE( 0x8000, 0xbfff) AM_RAMBANK("bank3")
diff --git a/src/mame/drivers/special.cpp b/src/mame/drivers/special.cpp
index de6509a33d0..944ca60d82e 100644
--- a/src/mame/drivers/special.cpp
+++ b/src/mame/drivers/special.cpp
@@ -19,7 +19,7 @@
/* Address maps */
-static ADDRESS_MAP_START(specialist_mem, AS_PROGRAM, 8, special_state )
+ADDRESS_MAP_START(special_state::specialist_mem)
AM_RANGE( 0x0000, 0x2fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x3000, 0x8fff ) AM_RAM // RAM
AM_RANGE( 0x9000, 0xbfff ) AM_RAM AM_SHARE("videoram") // Video RAM
@@ -27,7 +27,7 @@ static ADDRESS_MAP_START(specialist_mem, AS_PROGRAM, 8, special_state )
AM_RANGE( 0xf800, 0xf803 ) AM_MIRROR(0x7fc) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(specialp_mem, AS_PROGRAM, 8, special_state )
+ADDRESS_MAP_START(special_state::specialp_mem)
AM_RANGE( 0x0000, 0x2fff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x3000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0x8000, 0xbfff ) AM_RAM AM_SHARE("videoram") // Video RAM
@@ -35,7 +35,7 @@ static ADDRESS_MAP_START(specialp_mem, AS_PROGRAM, 8, special_state )
AM_RANGE( 0xf800, 0xf803 ) AM_MIRROR(0x7fc) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(erik_mem, AS_PROGRAM, 8, special_state )
+ADDRESS_MAP_START(special_state::erik_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x4000, 0x8fff ) AM_RAMBANK("bank2")
AM_RANGE( 0x9000, 0xbfff ) AM_RAMBANK("bank3")
@@ -44,7 +44,7 @@ static ADDRESS_MAP_START(erik_mem, AS_PROGRAM, 8, special_state )
AM_RANGE( 0xf800, 0xffff ) AM_RAMBANK("bank6")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( erik_io_map, AS_IO, 8, special_state )
+ADDRESS_MAP_START(special_state::erik_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xf1, 0xf1) AM_READWRITE(erik_rr_reg_r, erik_rr_reg_w)
AM_RANGE(0xf2, 0xf2) AM_READWRITE(erik_rc_reg_r, erik_rc_reg_w)
@@ -52,7 +52,7 @@ static ADDRESS_MAP_START( erik_io_map, AS_IO, 8, special_state )
AM_RANGE(0xf4, 0xf7) AM_DEVREADWRITE("fd1793", fd1793_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(specimx_mem, AS_PROGRAM, 8, special_state )
+ADDRESS_MAP_START(special_state::specimx_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x8fff ) AM_RAMBANK("bank1")
AM_RANGE( 0x9000, 0xbfff ) AM_RAMBANK("bank2")
diff --git a/src/mame/drivers/specpls3.cpp b/src/mame/drivers/specpls3.cpp
index cd96c23a6b6..056c796efad 100644
--- a/src/mame/drivers/specpls3.cpp
+++ b/src/mame/drivers/specpls3.cpp
@@ -305,7 +305,7 @@ WRITE8_MEMBER( spectrum_state::spectrum_plus3_port_1ffd_w )
/* ports are not decoded full.
The function decodes the ports appropriately */
-static ADDRESS_MAP_START (spectrum_plus3_io, AS_IO, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::spectrum_plus3_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0000) AM_READWRITE(spectrum_port_fe_r,spectrum_port_fe_w) AM_SELECT(0xfffe)
AM_RANGE(0x4000, 0x4000) AM_WRITE(spectrum_plus3_port_7ffd_w) AM_MIRROR(0x3ffd)
@@ -316,7 +316,7 @@ static ADDRESS_MAP_START (spectrum_plus3_io, AS_IO, 8, spectrum_state )
AM_RANGE(0x3000, 0x3000) AM_READWRITE(spectrum_plus3_port_3ffd_r,spectrum_plus3_port_3ffd_w) AM_MIRROR(0x0ffd)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(spectrum_plus3_mem, AS_PROGRAM, 8, spectrum_state)
+ADDRESS_MAP_START(spectrum_state::spectrum_plus3_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
diff --git a/src/mame/drivers/spectra.cpp b/src/mame/drivers/spectra.cpp
index a2fd0d8179b..a2a477306e8 100644
--- a/src/mame/drivers/spectra.cpp
+++ b/src/mame/drivers/spectra.cpp
@@ -63,6 +63,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(nmitimer);
TIMER_DEVICE_CALLBACK_MEMBER(outtimer);
void spectra(machine_config &config);
+ void spectra_map(address_map &map);
private:
uint8_t m_porta;
uint8_t m_portb;
@@ -76,7 +77,7 @@ private:
};
-static ADDRESS_MAP_START( spectra_map, AS_PROGRAM, 8, spectra_state )
+ADDRESS_MAP_START(spectra_state::spectra_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xfff)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("nvram") // battery backed, 2x 5101L
diff --git a/src/mame/drivers/spectrum.cpp b/src/mame/drivers/spectrum.cpp
index 39c7974919d..efa61db70ce 100644
--- a/src/mame/drivers/spectrum.cpp
+++ b/src/mame/drivers/spectrum.cpp
@@ -431,7 +431,7 @@ READ8_MEMBER(spectrum_state::spectrum_port_ula_r)
/* Memory Maps */
-static ADDRESS_MAP_START (spectrum_mem, AS_PROGRAM, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::spectrum_mem)
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(spectrum_rom_r, spectrum_rom_w)
AM_RANGE(0x4000, 0x5aff) AM_RAM AM_SHARE("video_ram")
// AM_RANGE(0x5b00, 0x7fff) AM_RAM
@@ -440,7 +440,7 @@ ADDRESS_MAP_END
/* ports are not decoded full.
The function decodes the ports appropriately */
-static ADDRESS_MAP_START (spectrum_io, AS_IO, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::spectrum_io)
AM_RANGE(0x00, 0x00) AM_READWRITE(spectrum_port_fe_r, spectrum_port_fe_w) AM_SELECT(0xfffe)
AM_RANGE(0x01, 0x01) AM_READ(spectrum_port_ula_r) AM_MIRROR(0xfffe)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/speedatk.cpp b/src/mame/drivers/speedatk.cpp
index ef814f9f401..7355b410ad3 100644
--- a/src/mame/drivers/speedatk.cpp
+++ b/src/mame/drivers/speedatk.cpp
@@ -181,7 +181,7 @@ WRITE8_MEMBER(speedatk_state::key_matrix_status_w)
m_coin_settings = m_km_status & 0xf;
}
-static ADDRESS_MAP_START( speedatk_mem, AS_PROGRAM, 8, speedatk_state )
+ADDRESS_MAP_START(speedatk_state::speedatk_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_READWRITE(key_matrix_r,key_matrix_w)
AM_RANGE(0x8001, 0x8001) AM_READWRITE(key_matrix_status_r,key_matrix_status_w)
@@ -191,7 +191,7 @@ static ADDRESS_MAP_START( speedatk_mem, AS_PROGRAM, 8, speedatk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( speedatk_io, AS_IO, 8, speedatk_state )
+ADDRESS_MAP_START(speedatk_state::speedatk_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_WRITE(m6845_w) //h46505 address / data routing
AM_RANGE(0x24, 0x24) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
diff --git a/src/mame/drivers/speedbal.cpp b/src/mame/drivers/speedbal.cpp
index 881471817ea..b6c8f4081b2 100644
--- a/src/mame/drivers/speedbal.cpp
+++ b/src/mame/drivers/speedbal.cpp
@@ -54,7 +54,7 @@ WRITE8_MEMBER(speedbal_state::coincounter_w)
/* unknown: (data & 0x10) and (data & 4) */
}
-static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 8, speedbal_state )
+ADDRESS_MAP_START(speedbal_state::main_cpu_map)
AM_RANGE(0x0000, 0xdbff) AM_ROM
AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE("share1") // shared with SOUND
AM_RANGE(0xe000, 0xe1ff) AM_RAM_WRITE(background_videoram_w) AM_SHARE("bg_videoram")
@@ -69,7 +69,7 @@ WRITE8_MEMBER(speedbal_state::maincpu_50_w)
//logerror("%s: maincpu_50_w %02x\n", this->machine().describe_context(), data);
}
-static ADDRESS_MAP_START( main_cpu_io_map, AS_IO, 8, speedbal_state )
+ADDRESS_MAP_START(speedbal_state::main_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW2")
AM_RANGE(0x10, 0x10) AM_READ_PORT("DSW1")
@@ -79,7 +79,7 @@ static ADDRESS_MAP_START( main_cpu_io_map, AS_IO, 8, speedbal_state )
AM_RANGE(0x50, 0x50) AM_WRITE(maincpu_50_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8, speedbal_state )
+ADDRESS_MAP_START(speedbal_state::sound_cpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xd800, 0xdbff) AM_RAM
AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE("share1") // shared with MAIN CPU
@@ -117,7 +117,7 @@ WRITE8_MEMBER(speedbal_state::leds_shift_bit)
-static ADDRESS_MAP_START( sound_cpu_io_map, AS_IO, 8, speedbal_state )
+ADDRESS_MAP_START(speedbal_state::sound_cpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0x40, 0x40) AM_WRITE(leds_output_block)
diff --git a/src/mame/drivers/speedspn.cpp b/src/mame/drivers/speedspn.cpp
index 3637d83b705..7801e7cca14 100644
--- a/src/mame/drivers/speedspn.cpp
+++ b/src/mame/drivers/speedspn.cpp
@@ -93,7 +93,7 @@ WRITE8_MEMBER(speedspn_state::okibank_w)
/* main cpu */
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, speedspn_state )
+ADDRESS_MAP_START(speedspn_state::program_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette") /* RAM COLOUR */
AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(attram_w) AM_SHARE("attram")
@@ -104,7 +104,7 @@ static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, speedspn_state )
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("prgbank") /* banked ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, speedspn_state )
+ADDRESS_MAP_START(speedspn_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x07, 0x07) AM_WRITE(display_disable_w)
AM_RANGE(0x10, 0x10) AM_READ_PORT("SYSTEM")
@@ -118,7 +118,7 @@ ADDRESS_MAP_END
/* sound cpu */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, speedspn_state )
+ADDRESS_MAP_START(speedspn_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(okibank_w)
@@ -126,7 +126,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, speedspn_state )
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, speedspn_state )
+ADDRESS_MAP_START(speedspn_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/speglsht.cpp b/src/mame/drivers/speglsht.cpp
index a1d29ea0526..cff93fb280b 100644
--- a/src/mame/drivers/speglsht.cpp
+++ b/src/mame/drivers/speglsht.cpp
@@ -145,10 +145,13 @@ public:
DECLARE_WRITE8_MEMBER(st0016_rom_bank_w);
void speglsht(machine_config &config);
+ void speglsht_mem(address_map &map);
+ void st0016_io(address_map &map);
+ void st0016_mem(address_map &map);
};
-static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, speglsht_state )
+ADDRESS_MAP_START(speglsht_state::st0016_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
//AM_RANGE(0xc000, 0xcfff) AM_READ(st0016_sprite_ram_r) AM_WRITE(st0016_sprite_ram_w)
@@ -173,7 +176,7 @@ WRITE8_MEMBER(speglsht_state::st0016_rom_bank_w)
}
-static ADDRESS_MAP_START( st0016_io, AS_IO, 8, speglsht_state )
+ADDRESS_MAP_START(speglsht_state::st0016_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w)
AM_RANGE(0xe1, 0xe1) AM_WRITE(st0016_rom_bank_w)
@@ -252,7 +255,7 @@ READ32_MEMBER(speglsht_state::irq_ack_clear)
return 0;
}
-static ADDRESS_MAP_START( speglsht_mem, AS_PROGRAM, 32, speglsht_state )
+ADDRESS_MAP_START(speglsht_state::speglsht_mem)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM
AM_RANGE(0x01000000, 0x01007fff) AM_RAM //tested - STATIC RAM
AM_RANGE(0x01600000, 0x0160004f) AM_READWRITE(cop_r, cop_w) AM_SHARE("cop_ram")
diff --git a/src/mame/drivers/spiders.cpp b/src/mame/drivers/spiders.cpp
index 73a147bcfc3..10ed7094de8 100644
--- a/src/mame/drivers/spiders.cpp
+++ b/src/mame/drivers/spiders.cpp
@@ -415,7 +415,7 @@ READ8_MEMBER(spiders_state::gfx_rom_r)
*
*************************************/
-static ADDRESS_MAP_START( spiders_main_map, AS_PROGRAM, 8, spiders_state )
+ADDRESS_MAP_START(spiders_state::spiders_main_map)
AM_RANGE(0x0000, 0xbfff) AM_RAM AM_SHARE("ram")
AM_RANGE(0xc000, 0xc000) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0xc001, 0xc001) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w)
@@ -430,7 +430,7 @@ static ADDRESS_MAP_START( spiders_main_map, AS_PROGRAM, 8, spiders_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spiders_audio_map, AS_PROGRAM, 8, spiders_state )
+ADDRESS_MAP_START(spiders_state::spiders_audio_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0080, 0x0083) AM_DEVREADWRITE("pia4", pia6821_device, read, write)
AM_RANGE(0xf800, 0xffff) AM_ROM
diff --git a/src/mame/drivers/spinb.cpp b/src/mame/drivers/spinb.cpp
index 923b12c6805..a4bf7be936e 100644
--- a/src/mame/drivers/spinb.cpp
+++ b/src/mame/drivers/spinb.cpp
@@ -97,6 +97,12 @@ public:
void jolypark(machine_config &config);
void vrnwrld(machine_config &config);
void spinb(machine_config &config);
+ void dmd_io(address_map &map);
+ void dmd_mem(address_map &map);
+ void spinb_audio_map(address_map &map);
+ void spinb_map(address_map &map);
+ void spinb_music_map(address_map &map);
+ void vrnwrld_map(address_map &map);
private:
bool m_pc0a;
bool m_pc0m;
@@ -135,7 +141,7 @@ private:
required_ioport_array<11> m_switches;
};
-static ADDRESS_MAP_START( spinb_map, AS_PROGRAM, 8, spinb_state )
+ADDRESS_MAP_START(spinb_state::spinb_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("nvram") // 6164, battery-backed
AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x13fc) AM_DEVREADWRITE("ppi60", i8255_device, read, write)
@@ -148,7 +154,7 @@ static ADDRESS_MAP_START( spinb_map, AS_PROGRAM, 8, spinb_state )
AM_RANGE(0x6ce0, 0x6ce0) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vrnwrld_map, AS_PROGRAM, 8, spinb_state )
+ADDRESS_MAP_START(spinb_state::vrnwrld_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("nvram") // 6164, battery-backed
AM_RANGE(0xc000, 0xc003) AM_MIRROR(0x13fc) AM_DEVREADWRITE("ppi60", i8255_device, read, write)
@@ -161,7 +167,7 @@ static ADDRESS_MAP_START( vrnwrld_map, AS_PROGRAM, 8, spinb_state )
AM_RANGE(0xcce0, 0xcce0) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spinb_audio_map, AS_PROGRAM, 8, spinb_state )
+ADDRESS_MAP_START(spinb_state::spinb_audio_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM // 6164
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("ppia", i8255_device, read, write)
@@ -169,7 +175,7 @@ static ADDRESS_MAP_START( spinb_audio_map, AS_PROGRAM, 8, spinb_state )
AM_RANGE(0x8000, 0x8000) AM_READ(sndcmd_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spinb_music_map, AS_PROGRAM, 8, spinb_state )
+ADDRESS_MAP_START(spinb_state::spinb_music_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM // 6164
AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("ppim", i8255_device, read, write)
@@ -178,11 +184,11 @@ static ADDRESS_MAP_START( spinb_music_map, AS_PROGRAM, 8, spinb_state )
AM_RANGE(0xA000, 0xA000) AM_WRITE(volume_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dmd_mem, AS_PROGRAM, 8, spinb_state)
+ADDRESS_MAP_START(spinb_state::dmd_mem)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dmd_io, AS_IO, 8, spinb_state)
+ADDRESS_MAP_START(spinb_state::dmd_io)
AM_RANGE(0x0000, 0x1fff) AM_WRITE(dmdram_w)
AM_RANGE(0x0000, 0xffff) AM_READ(dmdram_r)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(p1_w)
diff --git a/src/mame/drivers/spirit76.cpp b/src/mame/drivers/spirit76.cpp
index 8bf85d70ad1..45dc39f88b7 100644
--- a/src/mame/drivers/spirit76.cpp
+++ b/src/mame/drivers/spirit76.cpp
@@ -41,13 +41,14 @@ public:
DECLARE_WRITE8_MEMBER(unk_w);
DECLARE_READ8_MEMBER(unk_r);
void spirit76(machine_config &config);
+ void maincpu_map(address_map &map);
private:
u8 m_t_c;
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, spirit76_state )
+ADDRESS_MAP_START(spirit76_state::maincpu_map)
ADDRESS_MAP_UNMAP_HIGH
// ADDRESS_MAP_GLOBAL_MASK(0xfff) // this could most likely go in once the memory map is sorted
AM_RANGE(0x0000, 0x00ff) AM_RAM // 2x 2112
diff --git a/src/mame/drivers/splash.cpp b/src/mame/drivers/splash.cpp
index f56003817b1..852d40b9d09 100644
--- a/src/mame/drivers/splash.cpp
+++ b/src/mame/drivers/splash.cpp
@@ -48,7 +48,6 @@ More notes about Funny Strip protection issues at the bottom of source file (DRI
#include "cpu/z80/z80.h"
#include "cpu/m68000/m68000.h"
-#include "machine/74259.h"
#include "sound/2203intf.h"
#include "sound/3812intf.h"
#include "screen.h"
@@ -74,14 +73,14 @@ WRITE_LINE_MEMBER(splash_state::coin2_counter_w)
machine().bookkeeping().coin_counter_w(1, state);
}
-static ADDRESS_MAP_START( splash_map, AS_PROGRAM, 16, splash_state )
+ADDRESS_MAP_START(splash_state::splash_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM /* ROM */
AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_SHARE("pixelram") /* Pixel Layer */
AM_RANGE(0x840000, 0x840001) AM_READ_PORT("DSW1")
AM_RANGE(0x840002, 0x840003) AM_READ_PORT("DSW2")
AM_RANGE(0x840004, 0x840005) AM_READ_PORT("P1")
AM_RANGE(0x840006, 0x840007) AM_READ_PORT("P2")
- AM_RANGE(0x84000a, 0x84000b) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0xff00)
+ ;map(0x84000a, 0x84000b).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0xff00);
AM_RANGE(0x84000e, 0x84000f) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
AM_RANGE(0x880000, 0x8817ff) AM_RAM_WRITE(vram_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x881800, 0x881803) AM_RAM AM_SHARE("vregs") /* Scroll registers */
@@ -107,7 +106,7 @@ WRITE_LINE_MEMBER(splash_state::splash_msm5205_int)
m_adpcm_data = (m_adpcm_data << 4) & 0xf0;
}
-static ADDRESS_MAP_START( splash_sound_map, AS_PROGRAM, 8, splash_state )
+ADDRESS_MAP_START(splash_state::splash_sound_map)
AM_RANGE(0x0000, 0xd7ff) AM_ROM /* ROM */
AM_RANGE(0xd800, 0xd800) AM_WRITE(splash_adpcm_data_w) /* ADPCM data for the MSM5205 chip */
AM_RANGE(0xe000, 0xe000) AM_WRITE(splash_adpcm_control_w)
@@ -150,7 +149,7 @@ WRITE_LINE_MEMBER(splash_state::ym_irq)
roldfrog_update_irq();
}
-static ADDRESS_MAP_START( roldfrog_map, AS_PROGRAM, 16, splash_state )
+ADDRESS_MAP_START(splash_state::roldfrog_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM /* ROM */
AM_RANGE(0x400000, 0x407fff) AM_ROM AM_SHARE("protdata") /* Protection Data */
AM_RANGE(0x408000, 0x4087ff) AM_RAM /* Extra Ram */
@@ -159,7 +158,7 @@ static ADDRESS_MAP_START( roldfrog_map, AS_PROGRAM, 16, splash_state )
AM_RANGE(0x840002, 0x840003) AM_READ_PORT("DSW2")
AM_RANGE(0x840004, 0x840005) AM_READ_PORT("P1")
AM_RANGE(0x840006, 0x840007) AM_READ_PORT("P2")
- AM_RANGE(0x84000a, 0x84000b) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0xff00)
+ ;map(0x84000a, 0x84000b).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0xff00);
AM_RANGE(0x84000e, 0x84000f) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
AM_RANGE(0x880000, 0x8817ff) AM_RAM_WRITE(vram_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x881800, 0x881803) AM_RAM AM_SHARE("vregs") /* Scroll registers */
@@ -171,7 +170,7 @@ static ADDRESS_MAP_START( roldfrog_map, AS_PROGRAM, 16, splash_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roldfrog_sound_map, AS_PROGRAM, 8, splash_state )
+ADDRESS_MAP_START(splash_state::roldfrog_sound_map)
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROM AM_ROMBANK("sound_bank")
@@ -183,7 +182,7 @@ READ8_MEMBER(splash_state::roldfrog_unk_r)
return 0xff;
}
-static ADDRESS_MAP_START( roldfrog_sound_io_map, AS_IO, 8, splash_state )
+ADDRESS_MAP_START(splash_state::roldfrog_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x31, 0x31) AM_WRITE(sound_bank_w)
@@ -212,7 +211,7 @@ WRITE8_MEMBER(funystrp_state::eeprom_w)
m_eeprom->clk_write(BIT(data, 5));
}
-static ADDRESS_MAP_START( funystrp_map, AS_PROGRAM, 16, funystrp_state )
+ADDRESS_MAP_START(funystrp_state::funystrp_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x1fffff) AM_RAM /* protection? RAM */
AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_SHARE("pixelram") /* Pixel Layer */
@@ -231,7 +230,7 @@ static ADDRESS_MAP_START( funystrp_map, AS_PROGRAM, 16, funystrp_state )
AM_RANGE(0xfe0000, 0xfeffff) AM_RAM AM_MIRROR(0x10000) /* there's fe0000 <-> ff0000 compare */ /* Work RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( funystrp_sound_map, AS_PROGRAM, 8, splash_state )
+ADDRESS_MAP_START(splash_state::funystrp_sound_map)
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROM AM_ROMBANK("sound_bank")
@@ -266,7 +265,7 @@ WRITE8_MEMBER(funystrp_state::msm2_data_w)
m_msm_toggle2=0;
}
-static ADDRESS_MAP_START( funystrp_sound_io_map, AS_IO, 8, funystrp_state )
+ADDRESS_MAP_START(funystrp_state::funystrp_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(msm1_data_w)
AM_RANGE(0x01, 0x01) AM_WRITE(msm2_data_w)
diff --git a/src/mame/drivers/splus.cpp b/src/mame/drivers/splus.cpp
index e0857eb7c2d..b7b840a4d4a 100644
--- a/src/mame/drivers/splus.cpp
+++ b/src/mame/drivers/splus.cpp
@@ -121,6 +121,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<i2cmem_device> m_i2cmem;
void splus(machine_config &config);
+ void splus_iomap(address_map &map);
+ void splus_map(address_map &map);
};
/* Static Variables */
@@ -591,11 +593,11 @@ DRIVER_INIT_MEMBER(splus_state,splus)
* Memory map information *
*************************/
-static ADDRESS_MAP_START( splus_map, AS_PROGRAM, 8, splus_state )
+ADDRESS_MAP_START(splus_state::splus_map)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_SHARE("prograram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( splus_iomap, AS_IO, 8, splus_state )
+ADDRESS_MAP_START(splus_state::splus_iomap)
// Serial I/O
AM_RANGE(0x0000, 0x0000) AM_READ(splus_serial_r) AM_WRITE(splus_serial_w)
diff --git a/src/mame/drivers/spoker.cpp b/src/mame/drivers/spoker.cpp
index 4e78d2a51e7..613f8b0cf7d 100644
--- a/src/mame/drivers/spoker.cpp
+++ b/src/mame/drivers/spoker.cpp
@@ -99,6 +99,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void spoker(machine_config &config);
void _3super8(machine_config &config);
+ void _3super8_portmap(address_map &map);
+ void spoker_map(address_map &map);
+ void spoker_portmap(address_map &map);
};
@@ -260,12 +263,12 @@ READ8_MEMBER(spoker_state::magic_r)
Memory Maps
***************************************************************************/
-static ADDRESS_MAP_START( spoker_map, AS_PROGRAM, 8, spoker_state )
+ADDRESS_MAP_START(spoker_state::spoker_map)
AM_RANGE(0x00000, 0x0f3ff) AM_ROM
AM_RANGE(0x0f400, 0x0ffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spoker_portmap, AS_IO, 8, spoker_state )
+ADDRESS_MAP_START(spoker_state::spoker_portmap)
AM_RANGE(0x0000, 0x003f) AM_RAM // Z180 internal regs
AM_RANGE(0x2000, 0x23ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x2400, 0x27ff) AM_RAM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
@@ -280,7 +283,7 @@ static ADDRESS_MAP_START( spoker_portmap, AS_IO, 8, spoker_state )
AM_RANGE(0x7000, 0x7fff) AM_RAM_WRITE(fg_color_w ) AM_SHARE("fg_color_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 3super8_portmap, AS_IO, 8, spoker_state )
+ADDRESS_MAP_START(spoker_state::_3super8_portmap)
// AM_RANGE(0x1000, 0x1fff) AM_WRITENOP
AM_RANGE(0x2000, 0x27ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x2800, 0x2fff) AM_RAM_DEVWRITE("palette", palette_device, write8_ext) AM_SHARE("palette_ext")
@@ -639,7 +642,7 @@ MACHINE_CONFIG_DERIVED(spoker_state::_3super8, spoker)
MCFG_CPU_REPLACE("maincpu", Z80, XTAL(24'000'000) / 4) /* z840006, 24/4 MHz? */
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(spoker_map)
- MCFG_CPU_IO_MAP(3super8_portmap)
+ MCFG_CPU_IO_MAP(_3super8_portmap)
MCFG_CPU_VBLANK_INT_DRIVER("screen", spoker_state, nmi_line_assert)
MCFG_CPU_PERIODIC_INT_DRIVER(spoker_state, irq0_line_hold, 120) // this signal comes from the PIC
diff --git a/src/mame/drivers/spool99.cpp b/src/mame/drivers/spool99.cpp
index ac91e20904d..8e21127e62c 100644
--- a/src/mame/drivers/spool99.cpp
+++ b/src/mame/drivers/spool99.cpp
@@ -138,6 +138,8 @@ public:
TILE_GET_INFO_MEMBER(get_tile_info);
void vcarn(machine_config &config);
void spool99(machine_config &config);
+ void spool99_map(address_map &map);
+ void vcarn_map(address_map &map);
};
TILE_GET_INFO_MEMBER(spool99_state::get_tile_info)
@@ -227,7 +229,7 @@ WRITE8_MEMBER(spool99_state::eeprom_dataline_w)
m_eeprom->di_write(data & 0x01);
}
-static ADDRESS_MAP_START( spool99_map, AS_PROGRAM, 8, spool99_state )
+ADDRESS_MAP_START(spool99_state::spool99_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x0100, 0xaeff) AM_ROM AM_REGION("maincpu", 0x100) AM_WRITENOP
AM_RANGE(0xaf00, 0xafff) AM_READ(spool99_io_r)
@@ -273,7 +275,7 @@ READ8_MEMBER(spool99_state::vcarn_io_r)
return ROM[0xa700+offset];
}
-static ADDRESS_MAP_START( vcarn_map, AS_PROGRAM, 8, spool99_state )
+ADDRESS_MAP_START(spool99_state::vcarn_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x0100, 0xa6ff) AM_ROM AM_REGION("maincpu", 0x100) AM_WRITENOP
AM_RANGE(0xa700, 0xa7ff) AM_READ(vcarn_io_r)
diff --git a/src/mame/drivers/sprcros2.cpp b/src/mame/drivers/sprcros2.cpp
index f2935404056..fb27551ef6d 100644
--- a/src/mame/drivers/sprcros2.cpp
+++ b/src/mame/drivers/sprcros2.cpp
@@ -105,6 +105,10 @@ public:
bool m_screen_enable;
uint8_t m_bg_scrollx, m_bg_scrolly;
void sprcros2(machine_config &config);
+ void master_io(address_map &map);
+ void master_map(address_map &map);
+ void slave_io(address_map &map);
+ void slave_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -239,7 +243,7 @@ WRITE8_MEMBER(sprcros2_state::bg_scrolly_w)
m_bg_scrolly = data;
}
-static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, sprcros2_state )
+ADDRESS_MAP_START(sprcros2_state::master_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM AM_REGION("master", 0)
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("master_rombank")
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("fgvram")
@@ -249,7 +253,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, sprcros2_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_io, AS_IO, 8, sprcros2_state )
+ADDRESS_MAP_START(sprcros2_state::master_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76489_device, write)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76489_device, write)
@@ -259,7 +263,7 @@ static ADDRESS_MAP_START( master_io, AS_IO, 8, sprcros2_state )
AM_RANGE(0x07, 0x07) AM_WRITE(master_output_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, sprcros2_state )
+ADDRESS_MAP_START(sprcros2_state::slave_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM AM_REGION("slave", 0)
AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("slave_rombank")
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("bgvram")
@@ -268,7 +272,7 @@ static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, sprcros2_state )
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_io, AS_IO, 8, sprcros2_state )
+ADDRESS_MAP_START(sprcros2_state::slave_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(bg_scrollx_w)
AM_RANGE(0x01, 0x01) AM_WRITE(bg_scrolly_w)
diff --git a/src/mame/drivers/sprint2.cpp b/src/mame/drivers/sprint2.cpp
index 35908666df0..364dfe95fac 100644
--- a/src/mame/drivers/sprint2.cpp
+++ b/src/mame/drivers/sprint2.cpp
@@ -242,7 +242,7 @@ WRITE_LINE_MEMBER(sprint2_state::lamp4_w)
output().set_led_value(3, state);
}
-static ADDRESS_MAP_START( sprint2_map, AS_PROGRAM, 8, sprint2_state )
+ADDRESS_MAP_START(sprint2_state::sprint2_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x03ff) AM_READWRITE(sprint2_wram_r,sprint2_wram_w)
AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(sprint2_video_ram_w) AM_SHARE("video_ram")
diff --git a/src/mame/drivers/sprint4.cpp b/src/mame/drivers/sprint4.cpp
index 40ebcca3dc9..72dda617441 100644
--- a/src/mame/drivers/sprint4.cpp
+++ b/src/mame/drivers/sprint4.cpp
@@ -237,7 +237,7 @@ WRITE8_MEMBER(sprint4_state::attract_w)
}
-static ADDRESS_MAP_START( sprint4_cpu_map, AS_PROGRAM, 8, sprint4_state )
+ADDRESS_MAP_START(sprint4_state::sprint4_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
diff --git a/src/mame/drivers/sprint8.cpp b/src/mame/drivers/sprint8.cpp
index b390a1d80f3..d860a9cd466 100644
--- a/src/mame/drivers/sprint8.cpp
+++ b/src/mame/drivers/sprint8.cpp
@@ -109,7 +109,7 @@ WRITE_LINE_MEMBER(sprint8_state::team_w)
}
-static ADDRESS_MAP_START( sprint8_map, AS_PROGRAM, 8, sprint8_state )
+ADDRESS_MAP_START(sprint8_state::sprint8_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(video_ram_w) AM_SHARE("video_ram")
AM_RANGE(0x1c00, 0x1c00) AM_READ(collision_r)
diff --git a/src/mame/drivers/spy.cpp b/src/mame/drivers/spy.cpp
index b0da6a78995..0c074740bcf 100644
--- a/src/mame/drivers/spy.cpp
+++ b/src/mame/drivers/spy.cpp
@@ -374,7 +374,7 @@ WRITE8_MEMBER(spy_state::k052109_051960_w)
m_k051960->k051960_w(space, offset - 0x3c00, data);
}
-static ADDRESS_MAP_START( spy_map, AS_PROGRAM, 8, spy_state )
+ADDRESS_MAP_START(spy_state::spy_map)
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(spy_bankedram1_r, spy_bankedram1_w) AM_SHARE("ram")
AM_RANGE(0x0800, 0x1aff) AM_RAM
AM_RANGE(0x2000, 0x5fff) AM_READWRITE(k052109_051960_r, k052109_051960_w)
@@ -392,7 +392,7 @@ static ADDRESS_MAP_START( spy_map, AS_PROGRAM, 8, spy_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spy_sound_map, AS_PROGRAM, 8, spy_state )
+ADDRESS_MAP_START(spy_state::spy_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(sound_bank_w)
diff --git a/src/mame/drivers/spyhuntertec.cpp b/src/mame/drivers/spyhuntertec.cpp
index 78cdf6959b8..3b1f0753645 100644
--- a/src/mame/drivers/spyhuntertec.cpp
+++ b/src/mame/drivers/spyhuntertec.cpp
@@ -112,6 +112,10 @@ public:
uint8_t m_analog_select;
uint8_t m_analog_count;
void spyhuntertec(machine_config &config);
+ void spyhuntertec_map(address_map &map);
+ void spyhuntertec_portmap(address_map &map);
+ void spyhuntertec_sound_map(address_map &map);
+ void spyhuntertec_sound_portmap(address_map &map);
};
WRITE8_MEMBER(spyhuntertec_state::ay1_porta_w)
@@ -420,7 +424,7 @@ READ8_MEMBER(spyhuntertec_state::spyhuntertec_in3_r)
return ret;
}
-static ADDRESS_MAP_START( spyhuntertec_map, AS_PROGRAM, 8, spyhuntertec_state )
+ADDRESS_MAP_START(spyhuntertec_state::spyhuntertec_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xdfff) AM_ROM
@@ -453,7 +457,7 @@ WRITE8_MEMBER(spyhuntertec_state::spyhuntertec_portf0_w)
if ((data != 0x03) && (data != 0x08)) printf("spyhuntertec_portf0_w %02x\n", data);
}
-static ADDRESS_MAP_START( spyhuntertec_portmap, AS_IO, 8, spyhuntertec_state )
+ADDRESS_MAP_START(spyhuntertec_state::spyhuntertec_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x04, 0x04) AM_WRITE(spyhuntertec_port04_w)
@@ -464,7 +468,7 @@ static ADDRESS_MAP_START( spyhuntertec_portmap, AS_IO, 8, spyhuntertec_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spyhuntertec_sound_map, AS_PROGRAM, 8, spyhuntertec_state )
+ADDRESS_MAP_START(spyhuntertec_state::spyhuntertec_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
@@ -477,7 +481,7 @@ WRITE8_MEMBER(spyhuntertec_state::sound_irq_ack)
m_audiocpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( spyhuntertec_sound_portmap, AS_IO, 8, spyhuntertec_state )
+ADDRESS_MAP_START(spyhuntertec_state::spyhuntertec_sound_portmap)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
diff --git a/src/mame/drivers/squale.cpp b/src/mame/drivers/squale.cpp
index 27e8a628e27..8c65bfbc4fe 100644
--- a/src/mame/drivers/squale.cpp
+++ b/src/mame/drivers/squale.cpp
@@ -135,6 +135,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(squale_scanline);
void squale(machine_config &config);
+ void squale_io(address_map &map);
+ void squale_mem(address_map &map);
private:
required_device<acia6850_device> m_acia;
required_device<ay8910_device> m_ay8910;
@@ -616,7 +618,7 @@ TIMER_DEVICE_CALLBACK_MEMBER( squale_state::squale_scanline )
m_ef9365->update_scanline((uint16_t)param);
}
-static ADDRESS_MAP_START(squale_mem, AS_PROGRAM, 8, squale_state)
+ADDRESS_MAP_START(squale_state::squale_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000,0xefff) AM_RAM
AM_RANGE(0xf000,0xf00f) AM_DEVREADWRITE("ef9365", ef9365_device, data_r, data_w)
@@ -634,7 +636,7 @@ static ADDRESS_MAP_START(squale_mem, AS_PROGRAM, 8, squale_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( squale_io, AS_IO, 8, squale_state)
+ADDRESS_MAP_START(squale_state::squale_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/srmp2.cpp b/src/mame/drivers/srmp2.cpp
index 0080134fa52..f2291c3800e 100644
--- a/src/mame/drivers/srmp2.cpp
+++ b/src/mame/drivers/srmp2.cpp
@@ -392,7 +392,7 @@ WRITE8_MEMBER(srmp2_state::srmp2_irq4_ack_w)
}
-static ADDRESS_MAP_START( srmp2_map, AS_PROGRAM, 16, srmp2_state )
+ADDRESS_MAP_START(srmp2_state::srmp2_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x0c0000, 0x0c3fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x140000, 0x143fff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecode_r16, spritecode_w16) /* Sprites Code + X + Attr */
@@ -425,7 +425,7 @@ READ8_MEMBER(srmp2_state::mjyuugi_irq4_ack_r)
return 0xff; // value returned doesn't matter
}
-static ADDRESS_MAP_START( mjyuugi_map, AS_PROGRAM, 16, srmp2_state )
+ADDRESS_MAP_START(srmp2_state::mjyuugi_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ_PORT("SYSTEM") /* Coinage */
AM_RANGE(0x100000, 0x100001) AM_WRITE(mjyuugi_flags_w) /* Coin Counter */
@@ -471,7 +471,7 @@ WRITE8_MEMBER(srmp2_state::srmp3_irq_ack_w)
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( srmp3_map, AS_PROGRAM, 8, srmp2_state )
+ADDRESS_MAP_START(srmp2_state::srmp3_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") /* rom bank */
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("nvram") /* work ram */
@@ -483,7 +483,7 @@ static ADDRESS_MAP_START( srmp3_map, AS_PROGRAM, 8, srmp2_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecodehigh_r8, spritecodehigh_w8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( srmp3_io_map, AS_IO, 8, srmp2_state )
+ADDRESS_MAP_START(srmp2_state::srmp3_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x20, 0x20) AM_WRITE(srmp3_irq_ack_w) /* interrupt acknowledge */
AM_RANGE(0x40, 0x40) AM_READ_PORT("SYSTEM") AM_WRITE(srmp3_flags_w) /* coin, service | GFX bank, counter, lockout */
@@ -496,7 +496,7 @@ static ADDRESS_MAP_START( srmp3_io_map, AS_IO, 8, srmp2_state )
AM_RANGE(0xe2, 0xe2) AM_DEVREAD("aysnd", ay8910_device, data_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rmgoldyh_map, AS_PROGRAM, 8, srmp2_state )
+ADDRESS_MAP_START(srmp2_state::rmgoldyh_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") /* rom bank */
AM_RANGE(0xa000, 0xafff) AM_RAM AM_SHARE("nvram") /* work ram */
@@ -518,7 +518,7 @@ WRITE8_MEMBER(srmp2_state::rmgoldyh_rombank_w)
membank("bank1")->set_entry(data & 0x1f);
}
-static ADDRESS_MAP_START( rmgoldyh_io_map, AS_IO, 8, srmp2_state )
+ADDRESS_MAP_START(srmp2_state::rmgoldyh_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_IMPORT_FROM(srmp3_io_map)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog */
diff --git a/src/mame/drivers/srmp5.cpp b/src/mame/drivers/srmp5.cpp
index 28306598a86..3c1f844c9b5 100644
--- a/src/mame/drivers/srmp5.cpp
+++ b/src/mame/drivers/srmp5.cpp
@@ -124,6 +124,9 @@ public:
DECLARE_WRITE8_MEMBER(st0016_rom_bank_w);
void srmp5(machine_config &config);
+ void srmp5_mem(address_map &map);
+ void st0016_io(address_map &map);
+ void st0016_mem(address_map &map);
};
@@ -355,7 +358,7 @@ READ32_MEMBER(srmp5_state::irq_ack_clear)
return 0;
}
-static ADDRESS_MAP_START( srmp5_mem, AS_PROGRAM, 32, srmp5_state )
+ADDRESS_MAP_START(srmp5_state::srmp5_mem)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM //maybe 0 - 2fffff ?
AM_RANGE(0x002f0000, 0x002f7fff) AM_RAM
AM_RANGE(0x01000000, 0x01000003) AM_WRITEONLY // 0xaa .. watchdog ?
@@ -385,7 +388,7 @@ static ADDRESS_MAP_START( srmp5_mem, AS_PROGRAM, 32, srmp5_state )
AM_RANGE(0x1eff003c, 0x1eff003f) AM_READ(irq_ack_clear)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, srmp5_state )
+ADDRESS_MAP_START(srmp5_state::st0016_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
//AM_RANGE(0xe900, 0xe9ff) // sound - internal
@@ -416,7 +419,7 @@ WRITE8_MEMBER(srmp5_state::st0016_rom_bank_w)
}
-static ADDRESS_MAP_START( st0016_io, AS_IO, 8, srmp5_state )
+ADDRESS_MAP_START(srmp5_state::st0016_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w)
AM_RANGE(0xc0, 0xc0) AM_READ(cmd1_r)
diff --git a/src/mame/drivers/srmp6.cpp b/src/mame/drivers/srmp6.cpp
index bd759ede2e0..f1e44dbc2ca 100644
--- a/src/mame/drivers/srmp6.cpp
+++ b/src/mame/drivers/srmp6.cpp
@@ -121,6 +121,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void srmp6(machine_config &config);
+ void srmp6_map(address_map &map);
};
#define VERBOSE 0
@@ -552,7 +553,7 @@ READ16_MEMBER(srmp6_state::srmp6_irq_ack_r)
return 0; // value read doesn't matter
}
-static ADDRESS_MAP_START( srmp6_map, AS_PROGRAM, 16, srmp6_state )
+ADDRESS_MAP_START(srmp6_state::srmp6_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x23ffff) AM_RAM // work RAM
AM_RANGE(0x600000, 0x7fffff) AM_ROMBANK("bank1") // banked ROM (used by ROM check)
diff --git a/src/mame/drivers/srumbler.cpp b/src/mame/drivers/srumbler.cpp
index 61b67ac0f8d..b92b611254e 100644
--- a/src/mame/drivers/srumbler.cpp
+++ b/src/mame/drivers/srumbler.cpp
@@ -81,7 +81,7 @@ to the page register.
Ignore the warnings about writing to unmapped memory.
*/
-static ADDRESS_MAP_START( srumbler_map, AS_PROGRAM, 8, srumbler_state )
+ADDRESS_MAP_START(srumbler_state::srumbler_map)
AM_RANGE(0x0000, 0x1dff) AM_RAM /* RAM (of 1 sort or another) */
AM_RANGE(0x1e00, 0x1fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(background_w) AM_SHARE("backgroundram")
@@ -107,7 +107,7 @@ static ADDRESS_MAP_START( srumbler_map, AS_PROGRAM, 8, srumbler_state )
AM_RANGE(0xf000, 0xffff) AM_ROMBANK("f000") /* Banked ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( srumbler_sound_map, AS_PROGRAM, 8, srumbler_state )
+ADDRESS_MAP_START(srumbler_state::srumbler_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ym2", ym2203_device, write)
diff --git a/src/mame/drivers/ssem.cpp b/src/mame/drivers/ssem.cpp
index c48810e07bc..3886d2cdafa 100644
--- a/src/mame/drivers/ssem.cpp
+++ b/src/mame/drivers/ssem.cpp
@@ -32,6 +32,7 @@ public:
void strlower(char *buf);
void ssem(machine_config &config);
+ void ssem_map(address_map &map);
private:
template <typename Format, typename... Params>
void glyph_print(bitmap_rgb32 &bitmap, int32_t x, int32_t y, Format &&fmt, Params &&...args);
@@ -76,7 +77,7 @@ inline uint32_t ssem_state::reverse(uint32_t v)
* Address map *
\****************************************************/
-static ADDRESS_MAP_START( ssem_map, AS_PROGRAM, 8, ssem_state )
+ADDRESS_MAP_START(ssem_state::ssem_map)
AM_RANGE(0x00, 0x7f) AM_RAM AM_SHARE("store")// Primary store
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ssfindo.cpp b/src/mame/drivers/ssfindo.cpp
index b6c0d7096b6..89a336c8a79 100644
--- a/src/mame/drivers/ssfindo.cpp
+++ b/src/mame/drivers/ssfindo.cpp
@@ -299,6 +299,9 @@ public:
void ssfindo(machine_config &config);
void ppcar(machine_config &config);
void tetfight(machine_config &config);
+ void ppcar_map(address_map &map);
+ void ssfindo_map(address_map &map);
+ void tetfight_map(address_map &map);
};
@@ -598,7 +601,7 @@ READ32_MEMBER(ssfindo_state::randomized_r)
return machine().rand();
}
-static ADDRESS_MAP_START( ssfindo_map, AS_PROGRAM, 32, ssfindo_state )
+ADDRESS_MAP_START(ssfindo_state::ssfindo_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM
AM_RANGE(0x03200000, 0x032001ff) AM_READWRITE(PS7500_IO_r,PS7500_IO_w)
AM_RANGE(0x03012e60, 0x03012e67) AM_NOP
@@ -616,7 +619,7 @@ static ADDRESS_MAP_START( ssfindo_map, AS_PROGRAM, 32, ssfindo_state )
AM_RANGE(0x10000000, 0x11ffffff) AM_RAM AM_SHARE("vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ppcar_map, AS_PROGRAM, 32, ssfindo_state )
+ADDRESS_MAP_START(ssfindo_state::ppcar_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM
AM_RANGE(0x03200000, 0x032001ff) AM_READWRITE(PS7500_IO_r,PS7500_IO_w)
AM_RANGE(0x03012b00, 0x03012bff) AM_READ(randomized_r) AM_WRITENOP
@@ -642,7 +645,7 @@ WRITE32_MEMBER(ssfindo_state::tetfight_unk_w)
//sound latch ?
}
-static ADDRESS_MAP_START( tetfight_map, AS_PROGRAM, 32, ssfindo_state )
+ADDRESS_MAP_START(ssfindo_state::tetfight_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM
AM_RANGE(0x03200000, 0x032001ff) AM_READWRITE(PS7500_IO_r,PS7500_IO_w)
AM_RANGE(0x03400000, 0x03400003) AM_WRITE(FIFO_w)
diff --git a/src/mame/drivers/sshangha.cpp b/src/mame/drivers/sshangha.cpp
index 18a89cee2ee..d7a9ffd1630 100644
--- a/src/mame/drivers/sshangha.cpp
+++ b/src/mame/drivers/sshangha.cpp
@@ -168,7 +168,7 @@ WRITE16_MEMBER( sshangha_state::sshangha_protection_region_8_146_w )
}
-static ADDRESS_MAP_START( sshangha_map, AS_PROGRAM, 16, sshangha_state )
+ADDRESS_MAP_START(sshangha_state::sshangha_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fffff)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10000f) AM_RAM AM_SHARE("sound_shared")
@@ -200,7 +200,7 @@ static ADDRESS_MAP_START( sshangha_map, AS_PROGRAM, 16, sshangha_state )
AM_RANGE(0x3f4000, 0x3f7fff) AM_READWRITE(sshangha_protection_region_d_146_r,sshangha_protection_region_d_146_w) AM_SHARE("prot_data")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sshanghb_map, AS_PROGRAM, 16, sshangha_state )
+ADDRESS_MAP_START(sshangha_state::sshanghb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x084000, 0x0847ff) AM_READ(sshanghb_protection16_r)
AM_RANGE(0x101000, 0x10100f) AM_RAM AM_SHARE("sound_shared") /* the bootleg writes here */
@@ -243,7 +243,7 @@ WRITE8_MEMBER(sshangha_state::sshangha_sound_shared_w)
}
/* Note: there's rom data after 0x8000 but the game never seem to call a rom bank, left-over? */
-static ADDRESS_MAP_START( sshangha_sound_map, AS_PROGRAM, 8, sshangha_state )
+ADDRESS_MAP_START(sshangha_state::sshangha_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0xc200, 0xc201) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/sshot.cpp b/src/mame/drivers/sshot.cpp
index de72ae918f8..12c6112fad2 100644
--- a/src/mame/drivers/sshot.cpp
+++ b/src/mame/drivers/sshot.cpp
@@ -189,6 +189,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void supershot(machine_config &config);
+ void supershot_map(address_map &map);
};
@@ -267,7 +268,7 @@ WRITE8_MEMBER(supershot_state::supershot_output1_w)
*
*************************************/
-static ADDRESS_MAP_START( supershot_map, AS_PROGRAM, 8, supershot_state )
+ADDRESS_MAP_START(supershot_state::supershot_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(supershot_vidram_w ) AM_SHARE("videoram")
AM_RANGE(0x4100, 0x41ff) AM_RAM
diff --git a/src/mame/drivers/ssingles.cpp b/src/mame/drivers/ssingles.cpp
index e5da51ab378..816dcafc84b 100644
--- a/src/mame/drivers/ssingles.cpp
+++ b/src/mame/drivers/ssingles.cpp
@@ -185,6 +185,10 @@ public:
required_device<cpu_device> m_maincpu;
void ssingles(machine_config &config);
void atamanot(machine_config &config);
+ void atamanot_io_map(address_map &map);
+ void atamanot_map(address_map &map);
+ void ssingles_io_map(address_map &map);
+ void ssingles_map(address_map &map);
};
//fake palette
@@ -333,7 +337,7 @@ CUSTOM_INPUT_MEMBER(ssingles_state::controls_r)
return data;
}
-static ADDRESS_MAP_START( ssingles_map, AS_PROGRAM, 8, ssingles_state )
+ADDRESS_MAP_START(ssingles_state::ssingles_map)
AM_RANGE(0x0000, 0x00ff) AM_WRITE(ssingles_videoram_w)
AM_RANGE(0x0800, 0x08ff) AM_WRITE(ssingles_colorram_w)
AM_RANGE(0x0000, 0x1fff) AM_ROM
@@ -371,7 +375,7 @@ WRITE8_MEMBER(ssingles_state::atamanot_prot_w)
}
-static ADDRESS_MAP_START( atamanot_map, AS_PROGRAM, 8, ssingles_state )
+ADDRESS_MAP_START(ssingles_state::atamanot_map)
AM_RANGE(0x0000, 0x00ff) AM_WRITE(ssingles_videoram_w)
AM_RANGE(0x0800, 0x08ff) AM_WRITE(ssingles_colorram_w)
AM_RANGE(0x0000, 0x3fff) AM_ROM
@@ -384,7 +388,7 @@ static ADDRESS_MAP_START( atamanot_map, AS_PROGRAM, 8, ssingles_state )
// AM_RANGE(0xc001, 0xc001) AM_READWRITE(c001_r, c001_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ssingles_io_map, AS_IO, 8, ssingles_state )
+ADDRESS_MAP_START(ssingles_state::ssingles_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay1", ay8910_device, address_w)
AM_RANGE(0x04, 0x04) AM_DEVWRITE("ay1", ay8910_device, data_w)
@@ -399,7 +403,7 @@ static ADDRESS_MAP_START( ssingles_io_map, AS_IO, 8, ssingles_state )
AM_RANGE(0xff, 0xff) AM_DEVWRITE("crtc", mc6845_device, register_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( atamanot_io_map, AS_IO, 8, ssingles_state )
+ADDRESS_MAP_START(ssingles_state::atamanot_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay1", ay8910_device, address_w)
AM_RANGE(0x04, 0x04) AM_DEVWRITE("ay1", ay8910_device, data_w)
diff --git a/src/mame/drivers/sslam.cpp b/src/mame/drivers/sslam.cpp
index 62a60ce9a9f..ce9881c2dae 100644
--- a/src/mame/drivers/sslam.cpp
+++ b/src/mame/drivers/sslam.cpp
@@ -375,7 +375,7 @@ WRITE16_MEMBER(sslam_state::powerbls_sound_w)
/* these will need verifying .. the game writes all over the place ... */
-static ADDRESS_MAP_START( sslam_program_map, AS_PROGRAM, 16, sslam_state )
+ADDRESS_MAP_START(sslam_state::sslam_program_map)
AM_RANGE(0x000000, 0xffffff) AM_ROM /* I don't honestly know where the rom is mirrored .. so all unmapped reads / writes go to rom */
AM_RANGE(0x000400, 0x07ffff) AM_RAM
@@ -398,7 +398,7 @@ static ADDRESS_MAP_START( sslam_program_map, AS_PROGRAM, 16, sslam_state )
AM_RANGE(0xf00000, 0xffffff) AM_RAM /* Main RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( powerbls_map, AS_PROGRAM, 16, sslam_state )
+ADDRESS_MAP_START(sslam_state::powerbls_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(powerbls_bg_tileram_w) AM_SHARE("bg_tileram")
AM_RANGE(0x104000, 0x107fff) AM_RAM // not used
@@ -462,7 +462,7 @@ WRITE8_MEMBER(sslam_state::playmark_snd_control_w)
// (data & 0x40) -> always set
}
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, sslam_state )
+ADDRESS_MAP_START(sslam_state::sound_io_map)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(playmark_snd_control_w)
AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(playmark_snd_command_r, playmark_oki_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ssozumo.cpp b/src/mame/drivers/ssozumo.cpp
index 3d031887c7d..0b5dae623ab 100644
--- a/src/mame/drivers/ssozumo.cpp
+++ b/src/mame/drivers/ssozumo.cpp
@@ -33,7 +33,7 @@ WRITE8_MEMBER(ssozumo_state::sh_command_w)
}
-static ADDRESS_MAP_START( ssozumo_map, AS_PROGRAM, 8, ssozumo_state )
+ADDRESS_MAP_START(ssozumo_state::ssozumo_map)
AM_RANGE(0x0000, 0x077f) AM_RAM
AM_RANGE(0x0780, 0x07ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(videoram2_w) AM_SHARE("videoram2")
@@ -58,7 +58,7 @@ WRITE8_MEMBER(ssozumo_state::sound_nmi_mask_w)
}
/* Same as Tag Team */
-static ADDRESS_MAP_START( ssozumo_sound_map, AS_PROGRAM, 8, ssozumo_state )
+ADDRESS_MAP_START(ssozumo_state::ssozumo_sound_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x2002, 0x2003) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/sspeedr.cpp b/src/mame/drivers/sspeedr.cpp
index de66d318e70..e3b9bca1138 100644
--- a/src/mame/drivers/sspeedr.cpp
+++ b/src/mame/drivers/sspeedr.cpp
@@ -81,14 +81,14 @@ WRITE8_MEMBER(sspeedr_state::sspeedr_sound_w)
}
-static ADDRESS_MAP_START( sspeedr_map, AS_PROGRAM, 8, sspeedr_state )
+ADDRESS_MAP_START(sspeedr_state::sspeedr_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x21ff) AM_RAM
AM_RANGE(0x7f00, 0x7f17) AM_WRITE(sspeedr_score_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sspeedr_io_map, AS_IO, 8, sspeedr_state )
+ADDRESS_MAP_START(sspeedr_state::sspeedr_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/ssrj.cpp b/src/mame/drivers/ssrj.cpp
index 38790e0874d..2d84d16d97d 100644
--- a/src/mame/drivers/ssrj.cpp
+++ b/src/mame/drivers/ssrj.cpp
@@ -62,7 +62,7 @@ READ8_MEMBER(ssrj_state::wheel_r)
return retval;
}
-static ADDRESS_MAP_START( ssrj_map, AS_PROGRAM, 8, ssrj_state )
+ADDRESS_MAP_START(ssrj_state::ssrj_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(vram1_w) AM_SHARE("vram1")
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(vram2_w) AM_SHARE("vram2")
diff --git a/src/mame/drivers/sstrangr.cpp b/src/mame/drivers/sstrangr.cpp
index 908f6811745..d6913a9cf44 100644
--- a/src/mame/drivers/sstrangr.cpp
+++ b/src/mame/drivers/sstrangr.cpp
@@ -37,6 +37,8 @@ public:
uint32_t screen_update_sstrngr2(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void sstrngr2(machine_config &config);
void sstrangr(machine_config &config);
+ void sstrangr_io_map(address_map &map);
+ void sstrangr_map(address_map &map);
};
@@ -134,7 +136,7 @@ WRITE8_MEMBER(sstrangr_state::port_w)
-static ADDRESS_MAP_START( sstrangr_map, AS_PROGRAM, 8, sstrangr_state )
+ADDRESS_MAP_START(sstrangr_state::sstrangr_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("ram")
@@ -142,7 +144,7 @@ static ADDRESS_MAP_START( sstrangr_map, AS_PROGRAM, 8, sstrangr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sstrangr_io_map, AS_IO, 8, sstrangr_state )
+ADDRESS_MAP_START(sstrangr_state::sstrangr_io_map)
AM_RANGE(0x41, 0x41) AM_READ_PORT("DSW")
AM_RANGE(0x42, 0x42) AM_READ_PORT("INPUTS")
AM_RANGE(0x44, 0x44) AM_READ_PORT("EXT") AM_WRITE(port_w)
diff --git a/src/mame/drivers/ssv.cpp b/src/mame/drivers/ssv.cpp
index b2b75e39790..3c7b3dba5d6 100644
--- a/src/mame/drivers/ssv.cpp
+++ b/src/mame/drivers/ssv.cpp
@@ -332,11 +332,11 @@ void ssv_state::machine_reset()
***************************************************************************/
-static ADDRESS_MAP_START( dsp_prg_map, AS_PROGRAM, 32, ssv_state )
+ADDRESS_MAP_START(ssv_state::dsp_prg_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("dspprg", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp_data_map, AS_DATA, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::dsp_data_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("dspdata", 0)
ADDRESS_MAP_END
@@ -427,7 +427,7 @@ READ16_MEMBER(ssv_state::drifto94_unknown_r)
return machine().rand() & 0xffff;
}
-static ADDRESS_MAP_START( drifto94_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::drifto94_map)
SSV_MAP( 0xc00000 )
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start
AM_RANGE(0x400000, 0x47ffff) AM_WRITEONLY // ?
@@ -477,7 +477,7 @@ WRITE16_MEMBER(ssv_state::gdfs_eeprom_w)
}
-static ADDRESS_MAP_START( gdfs_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::gdfs_map)
SSV_MAP( 0xc00000 )
AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(gdfs_tmapram_w) AM_SHARE("gdfs_tmapram")
AM_RANGE(0x420000, 0x43ffff) AM_RAM
@@ -515,7 +515,7 @@ READ16_MEMBER(ssv_state::hypreact_input_r)
return 0xffff;
}
-static ADDRESS_MAP_START( hypreact_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::hypreact_map)
SSV_MAP( 0xf00000 )
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 5 at the start
@@ -531,7 +531,7 @@ ADDRESS_MAP_END
Hyper Reaction 2
***************************************************************************/
-static ADDRESS_MAP_START( hypreac2_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::hypreac2_map)
SSV_MAP( 0xe00000 )
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 5 at the start
@@ -550,7 +550,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( janjans1_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::janjans1_map)
SSV_MAP( 0xc00000 )
AM_RANGE(0x210000, 0x210001) AM_WRITENOP // koikois2 but not janjans1
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start
@@ -564,7 +564,7 @@ ADDRESS_MAP_END
Keith & Lucy
***************************************************************************/
-static ADDRESS_MAP_START( keithlcy_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::keithlcy_map)
SSV_MAP( 0xe00000 )
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start
AM_RANGE(0x210010, 0x210011) AM_WRITENOP //
@@ -577,7 +577,7 @@ ADDRESS_MAP_END
Meosis Magic
***************************************************************************/
-static ADDRESS_MAP_START( meosism_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::meosism_map)
SSV_MAP( 0xf00000 )
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 5 at the start
@@ -602,7 +602,7 @@ WRITE16_MEMBER(ssv_state::mainram_w)
COMBINE_DATA(&m_mainram[offset]);
}
-static ADDRESS_MAP_START( mslider_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::mslider_map)
SSV_MAP( 0xf00000 )
AM_RANGE(0x010000, 0x01ffff) AM_READWRITE(mainram_r, mainram_w) // RAM Mirror
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start
@@ -615,7 +615,7 @@ ADDRESS_MAP_END
Gourmet Battle Quiz Ryohrioh CooKing
***************************************************************************/
-static ADDRESS_MAP_START( ryorioh_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::ryorioh_map)
SSV_MAP( 0xc00000 )
AM_RANGE(0x210000, 0x210001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start
@@ -638,7 +638,7 @@ READ16_MEMBER(ssv_state::srmp4_input_r)
return 0xffff;
}
-static ADDRESS_MAP_START( srmp4_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::srmp4_map)
SSV_MAP( 0xf00000 )
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1,5 at the start
@@ -685,7 +685,7 @@ READ16_MEMBER(ssv_state::srmp7_input_r)
return 0xffff;
}
-static ADDRESS_MAP_START( srmp7_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::srmp7_map)
SSV_MAP( 0xc00000 )
AM_RANGE(0x010000, 0x050faf) AM_RAM // More RAM
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)
@@ -703,7 +703,7 @@ ADDRESS_MAP_END
Survival Arts
***************************************************************************/
-static ADDRESS_MAP_START( survarts_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::survarts_map)
SSV_MAP( 0xf00000 )
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)
// AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 0,4 at the start
@@ -751,7 +751,7 @@ WRITE16_MEMBER(ssv_state::sxyreact_motor_w)
// popmessage("%04X",data); // 8 = motor on; 0 = motor off
}
-static ADDRESS_MAP_START( sxyreact_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::sxyreact_map)
SSV_MAP( 0xe00000 )
// AM_RANGE(0x020000, 0x03ffff) AM_READWRITE(mainram_r, mainram_w) // sxyreac2 reads / writes here, why?
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)
@@ -770,7 +770,7 @@ ADDRESS_MAP_END
/* comes as either a standalone board or a standard SSV rom board (verified) */
-static ADDRESS_MAP_START( twineag2_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::twineag2_map)
SSV_MAP( 0xe00000 )
AM_RANGE(0x010000, 0x03ffff) AM_RAM // More RAM
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r) // Watchdog (also value is cmp.b with mem 8)
@@ -785,7 +785,7 @@ ADDRESS_MAP_END
/* standalone board based on SSV hardware */
-static ADDRESS_MAP_START( ultrax_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::ultrax_map)
SSV_MAP( 0xe00000 )
AM_RANGE(0x010000, 0x03ffff) AM_RAM // More RAM
AM_RANGE(0x210000, 0x210001) AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r) // Watchdog (also value is cmp.b with memory address 8)
@@ -828,7 +828,7 @@ WRITE16_MEMBER(ssv_state::latch16_w)
machine().scheduler().synchronize();
}
-static ADDRESS_MAP_START( jsk_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::jsk_map)
SSV_MAP( 0xf00000 )
AM_RANGE(0x050000, 0x05ffff) AM_READWRITE(mainram_r, mainram_w) // RAM Mirror?
AM_RANGE(0x210000, 0x210001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
@@ -837,7 +837,7 @@ static ADDRESS_MAP_START( jsk_map, AS_PROGRAM, 16, ssv_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jsk_v810_mem, AS_PROGRAM, 32, ssv_state )
+ADDRESS_MAP_START(ssv_state::jsk_v810_mem)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM
AM_RANGE(0x80000000, 0x8001ffff) AM_RAM
AM_RANGE(0xc0000000, 0xc001ffff) AM_RAM
@@ -881,7 +881,7 @@ WRITE16_MEMBER(ssv_state::eaglshot_gfxram_w)
}
-static ADDRESS_MAP_START( eaglshot_map, AS_PROGRAM, 16, ssv_state )
+ADDRESS_MAP_START(ssv_state::eaglshot_map)
SSV_MAP( 0xf00000 )
AM_RANGE(0x180000, 0x1bffff) AM_READWRITE(eaglshot_gfxram_r, eaglshot_gfxram_w)
AM_RANGE(0x210000, 0x210001) AM_READNOP /*AM_DEVREAD("watchdog", watchdog_timer_device, reset16_r)*/ // Watchdog
diff --git a/src/mame/drivers/ssystem3.cpp b/src/mame/drivers/ssystem3.cpp
index 1a3ce92dcef..7371e9dbc21 100644
--- a/src/mame/drivers/ssystem3.cpp
+++ b/src/mame/drivers/ssystem3.cpp
@@ -219,7 +219,7 @@ DRIVER_INIT_MEMBER(ssystem3_state,ssystem3)
ssystem3_lcd_reset();
}
-static ADDRESS_MAP_START( ssystem3_map , AS_PROGRAM, 8, ssystem3_state )
+ADDRESS_MAP_START(ssystem3_state::ssystem3_map)
AM_RANGE( 0x0000, 0x03ff) AM_RAM
/*
67-de playfield ($40 means white, $80 black)
diff --git a/src/mame/drivers/st17xx.cpp b/src/mame/drivers/st17xx.cpp
index 993a3ad8374..1ad605a823c 100644
--- a/src/mame/drivers/st17xx.cpp
+++ b/src/mame/drivers/st17xx.cpp
@@ -54,11 +54,12 @@ public:
virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void st17xx(machine_config &config);
+ void cpu_map(address_map &map);
};
/* Memory Maps */
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, st17xx_state )
+ADDRESS_MAP_START(st17xx_state::cpu_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/st_mp100.cpp b/src/mame/drivers/st_mp100.cpp
index b8507da14ba..eade3d28ae7 100644
--- a/src/mame/drivers/st_mp100.cpp
+++ b/src/mame/drivers/st_mp100.cpp
@@ -59,6 +59,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_x);
TIMER_DEVICE_CALLBACK_MEMBER(u11_timer);
void st_mp100(machine_config &config);
+ void st_mp100_map(address_map &map);
private:
uint8_t m_u10a;
uint8_t m_u10b;
@@ -89,7 +90,7 @@ private:
};
-static ADDRESS_MAP_START( st_mp100_map, AS_PROGRAM, 8, st_mp100_state )
+ADDRESS_MAP_START(st_mp100_state::st_mp100_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("pia_u10", pia6821_device, read, write)
diff --git a/src/mame/drivers/st_mp200.cpp b/src/mame/drivers/st_mp200.cpp
index e98c0b5b68f..156acac97a3 100644
--- a/src/mame/drivers/st_mp200.cpp
+++ b/src/mame/drivers/st_mp200.cpp
@@ -70,6 +70,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(u11_timer);
void st_mp201(machine_config &config);
void st_mp200(machine_config &config);
+ void st_mp200_map(address_map &map);
private:
uint8_t m_u10a;
uint8_t m_u10b;
@@ -103,7 +104,7 @@ private:
};
-static ADDRESS_MAP_START( st_mp200_map, AS_PROGRAM, 8, st_mp200_state )
+ADDRESS_MAP_START(st_mp200_state::st_mp200_map)
//ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("pia_u10", pia6821_device, read, write)
diff --git a/src/mame/drivers/stactics.cpp b/src/mame/drivers/stactics.cpp
index b0e8143762d..53b513435cb 100644
--- a/src/mame/drivers/stactics.cpp
+++ b/src/mame/drivers/stactics.cpp
@@ -178,7 +178,7 @@ INTERRUPT_GEN_MEMBER(stactics_state::interrupt)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, stactics_state )
+ADDRESS_MAP_START(stactics_state::main_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x4000, 0x40ff) AM_MIRROR(0x0700) AM_RAM
AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x0fff) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/stadhero.cpp b/src/mame/drivers/stadhero.cpp
index 78a9e6dd617..9be53c637e2 100644
--- a/src/mame/drivers/stadhero.cpp
+++ b/src/mame/drivers/stadhero.cpp
@@ -53,7 +53,7 @@ WRITE16_MEMBER(stadhero_state::stadhero_control_w)
/******************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, stadhero_state )
+ADDRESS_MAP_START(stadhero_state::main_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x200000, 0x2007ff) AM_RAM_WRITE(stadhero_pf1_data_w) AM_SHARE("pf1_data")
AM_RANGE(0x240000, 0x240007) AM_DEVWRITE("tilegen1", deco_bac06_device, pf_control_0_w) /* text layer */
@@ -70,7 +70,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, stadhero_state )
+ADDRESS_MAP_START(stadhero_state::audio_map)
AM_RANGE(0x0000, 0x05ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_device, write)
diff --git a/src/mame/drivers/starcrus.cpp b/src/mame/drivers/starcrus.cpp
index 9a11a3a6dd5..eea560a28f5 100644
--- a/src/mame/drivers/starcrus.cpp
+++ b/src/mame/drivers/starcrus.cpp
@@ -20,12 +20,12 @@ palazzol@home.com
#include "speaker.h"
-static ADDRESS_MAP_START( starcrus_map, AS_PROGRAM, 8, starcrus_state )
+ADDRESS_MAP_START(starcrus_state::starcrus_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x10ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( starcrus_io_map, AS_IO, 8, starcrus_state )
+ADDRESS_MAP_START(starcrus_state::starcrus_io_map)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_WRITE(s1_x_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_WRITE(s1_y_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(coll_det_r, s2_x_w)
diff --git a/src/mame/drivers/starfire.cpp b/src/mame/drivers/starfire.cpp
index 74f3b9208c7..fb17eb11976 100644
--- a/src/mame/drivers/starfire.cpp
+++ b/src/mame/drivers/starfire.cpp
@@ -190,7 +190,7 @@ READ8_MEMBER(starfire_state::fireone_input_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, starfire_state )
+ADDRESS_MAP_START(starfire_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_READWRITE(starfire_scratch_r, starfire_scratch_w)
AM_RANGE(0xa000, 0xbfff) AM_READWRITE(starfire_colorram_r, starfire_colorram_w) AM_SHARE("colorram")
diff --git a/src/mame/drivers/stargame.cpp b/src/mame/drivers/stargame.cpp
index 74723a0c9dd..70528d26e7e 100644
--- a/src/mame/drivers/stargame.cpp
+++ b/src/mame/drivers/stargame.cpp
@@ -33,18 +33,22 @@ public:
DECLARE_MACHINE_RESET(stargame);
void stargame(machine_config &config);
+ void audiocpu_io(address_map &map);
+ void audiocpu_map(address_map &map);
+ void maincpu_io(address_map &map);
+ void maincpu_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
required_device<z80ctc_device> m_ctc;
};
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, stargame_state )
+ADDRESS_MAP_START(stargame_state::maincpu_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x7800) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maincpu_io, AS_IO, 8, stargame_state )
+ADDRESS_MAP_START(stargame_state::maincpu_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x09) AM_DEVWRITE("soundlatch", generic_latch_8_device, write) // CSON - command to the sound cpu - NMI to sound cpu
@@ -58,7 +62,7 @@ static ADDRESS_MAP_START( maincpu_io, AS_IO, 8, stargame_state )
AM_RANGE(0x70, 0x73) AM_MIRROR(0x0c) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audiocpu_map, AS_PROGRAM, 8, stargame_state )
+ADDRESS_MAP_START(stargame_state::audiocpu_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x4001) AM_MIRROR(0x3ffe) AM_DEVREADWRITE("mea8000", mea8000_device, read, write)
@@ -67,7 +71,7 @@ static ADDRESS_MAP_START( audiocpu_map, AS_PROGRAM, 8, stargame_state )
AM_RANGE(0xe000, 0xffff) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w) // COMAND - acknowledge NMI and read the sound command
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audiocpu_io, AS_IO, 8, stargame_state )
+ADDRESS_MAP_START(stargame_state::audiocpu_io)
ADDRESS_MAP_GLOBAL_MASK(0x01)
AM_RANGE(0x00, 0x00) AM_DEVREAD("ay", ay8910_device, data_r)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("ay", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/starshp1.cpp b/src/mame/drivers/starshp1.cpp
index 6d3519d3c5a..29b2fc5cd15 100644
--- a/src/mame/drivers/starshp1.cpp
+++ b/src/mame/drivers/starshp1.cpp
@@ -155,7 +155,7 @@ WRITE_LINE_MEMBER(starshp1_state::led_w)
}
-static ADDRESS_MAP_START( starshp1_map, AS_PROGRAM, 8, starshp1_state )
+ADDRESS_MAP_START(starshp1_state::starshp1_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x100)
AM_RANGE(0x2c00, 0x3fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("SYSTEM")
diff --git a/src/mame/drivers/starwars.cpp b/src/mame/drivers/starwars.cpp
index cbc4f4cb3fb..abe56b54bfb 100644
--- a/src/mame/drivers/starwars.cpp
+++ b/src/mame/drivers/starwars.cpp
@@ -130,7 +130,7 @@ WRITE8_MEMBER(starwars_state::esb_slapstic_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, starwars_state )
+ADDRESS_MAP_START(starwars_state::main_map)
AM_RANGE(0x0000, 0x2fff) AM_RAM AM_SHARE("vectorram") AM_REGION("maincpu", 0)
AM_RANGE(0x3000, 0x3fff) AM_ROM /* vector_rom */
AM_RANGE(0x4300, 0x431f) AM_READ_PORT("IN0")
@@ -160,7 +160,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, starwars_state )
AM_RANGE(0x8000, 0xffff) AM_ROM /* rest of main_rom */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( esb_main_map, AS_PROGRAM, 8, starwars_state )
+ADDRESS_MAP_START(starwars_state::esb_main_map)
AM_IMPORT_FROM(main_map)
AM_RANGE(0x8000, 0x9fff) AM_READWRITE(esb_slapstic_r, esb_slapstic_w)
AM_RANGE(0xa000, 0xffff) AM_ROMBANK("bank2")
@@ -173,7 +173,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, starwars_state )
+ADDRESS_MAP_START(starwars_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_DEVWRITE("mainlatch", generic_latch_8_device, write)
AM_RANGE(0x0800, 0x0fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read) /* SIN Read */
AM_RANGE(0x1000, 0x107f) AM_RAM /* 6532 ram */
diff --git a/src/mame/drivers/statriv2.cpp b/src/mame/drivers/statriv2.cpp
index 1c63f804059..606a4976a26 100644
--- a/src/mame/drivers/statriv2.cpp
+++ b/src/mame/drivers/statriv2.cpp
@@ -125,6 +125,8 @@ public:
void statriv2(machine_config &config);
void funcsino(machine_config &config);
void statriv2v(machine_config &config);
+ void statriv2_io_map(address_map &map);
+ void statriv2_map(address_map &map);
};
@@ -284,14 +286,14 @@ WRITE8_MEMBER(statriv2_state::ppi_portc_hi_w)
*
*************************************/
-static ADDRESS_MAP_START( statriv2_map, AS_PROGRAM, 8, statriv2_state )
+ADDRESS_MAP_START(statriv2_state::statriv2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x4800, 0x48ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(statriv2_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( statriv2_io_map, AS_IO, 8, statriv2_state )
+ADDRESS_MAP_START(statriv2_state::statriv2_io_map)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
AM_RANGE(0x28, 0x2b) AM_READ(question_data_r) AM_WRITEONLY AM_SHARE("question_offset")
AM_RANGE(0xb0, 0xb1) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/stellafr.cpp b/src/mame/drivers/stellafr.cpp
index 55d7a51c13c..b57bc552751 100644
--- a/src/mame/drivers/stellafr.cpp
+++ b/src/mame/drivers/stellafr.cpp
@@ -34,6 +34,7 @@ public:
DECLARE_WRITE8_MEMBER(ay8910_portb_w);
void stellafr(machine_config &config);
+ void stellafr_map(address_map &map);
protected:
// devices
@@ -70,7 +71,7 @@ WRITE8_MEMBER(stellafr_state::ay8910_portb_w)
-static ADDRESS_MAP_START( stellafr_map, AS_PROGRAM, 16, stellafr_state )
+ADDRESS_MAP_START(stellafr_state::stellafr_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x8000c0, 0x8000c1) AM_WRITE8(write_8000c1, 0x00ff)
AM_RANGE(0x800100, 0x800101) AM_READWRITE8(read_800101, write_800101, 0x00ff)
diff --git a/src/mame/drivers/stfight.cpp b/src/mame/drivers/stfight.cpp
index 66ad0ef3b45..57bcd81d3bc 100644
--- a/src/mame/drivers/stfight.cpp
+++ b/src/mame/drivers/stfight.cpp
@@ -267,7 +267,7 @@ TODO:
#include "speaker.h"
-static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, stfight_state )
+ADDRESS_MAP_START(stfight_state::cpu1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank") /* sf02.bin */
AM_RANGE(0xc000, 0xc0ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
@@ -286,7 +286,7 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, stfight_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stfight_cpu1_map, AS_PROGRAM, 8, stfight_state )
+ADDRESS_MAP_START(stfight_state::stfight_cpu1_map)
AM_IMPORT_FROM(cpu1_map)
AM_RANGE(0xc807, 0xc807) AM_DEVWRITE("stfight_vid", stfight_video_device, stfight_sprite_bank_w)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_DEVWRITE("stfight_vid", stfight_video_device, stfight_text_char_w) AM_SHARE("txram")
@@ -295,12 +295,12 @@ static ADDRESS_MAP_START( stfight_cpu1_map, AS_PROGRAM, 8, stfight_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, stfight_state )
+ADDRESS_MAP_START(stfight_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cshooter_cpu1_map, AS_PROGRAM, 8, stfight_state )
+ADDRESS_MAP_START(stfight_state::cshooter_cpu1_map)
AM_IMPORT_FROM(cpu1_map)
AM_RANGE(0xc801, 0xc801) AM_WRITE(stfight_bank_w)
AM_RANGE(0xd000, 0xd7ff) AM_RAM_DEVWRITE("airraid_vid", airraid_video_device, txram_w) AM_SHARE("txram")
@@ -311,7 +311,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, stfight_state )
+ADDRESS_MAP_START(stfight_state::cpu2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
@@ -495,7 +495,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(stfight_state::stfight, stfight_base)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(stfight_cpu1_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("stfight_vid:screen", stfight_state, stfight_vb_interrupt)
MCFG_STFIGHT_VIDEO_ADD("stfight_vid")
diff --git a/src/mame/drivers/stlforce.cpp b/src/mame/drivers/stlforce.cpp
index 0df7c593bc7..41911f08a89 100644
--- a/src/mame/drivers/stlforce.cpp
+++ b/src/mame/drivers/stlforce.cpp
@@ -92,7 +92,7 @@ WRITE8_MEMBER(stlforce_state::oki_bank_w)
}
}
-static ADDRESS_MAP_START( stlforce_map, AS_PROGRAM, 16, stlforce_state )
+ADDRESS_MAP_START(stlforce_state::stlforce_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x1007ff) AM_RAM_WRITE(bg_videoram_w) AM_SHARE("bg_videoram")
AM_RANGE(0x100800, 0x100fff) AM_RAM_WRITE(mlow_videoram_w) AM_SHARE("mlow_videoram")
@@ -115,7 +115,7 @@ static ADDRESS_MAP_START( stlforce_map, AS_PROGRAM, 16, stlforce_state )
AM_RANGE(0x410000, 0x410001) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( twinbrat_oki_map, 0, 8, stlforce_state )
+ADDRESS_MAP_START(stlforce_state::twinbrat_oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/stratos.cpp b/src/mame/drivers/stratos.cpp
index 00b704f9a72..35dc8d9896a 100644
--- a/src/mame/drivers/stratos.cpp
+++ b/src/mame/drivers/stratos.cpp
@@ -38,6 +38,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void stratos(machine_config &config);
+ void stratos_mem(address_map &map);
private:
std::unique_ptr<uint8_t[]> nvram_data;
uint8_t control, led_latch_control;
@@ -329,7 +330,7 @@ WRITE8_MEMBER(stratos_state::lcd_w)
}
}
-static ADDRESS_MAP_START( stratos_mem, AS_PROGRAM, 8, stratos_state )
+ADDRESS_MAP_START(stratos_state::stratos_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_WRITE(p2000_w)
AM_RANGE(0x2200, 0x2200) AM_READWRITE(p2200_r, p2200_w)
diff --git a/src/mame/drivers/strkzn.cpp b/src/mame/drivers/strkzn.cpp
index 8b3d5ed3682..e9ae2c19fe1 100644
--- a/src/mame/drivers/strkzn.cpp
+++ b/src/mame/drivers/strkzn.cpp
@@ -23,26 +23,30 @@ public:
{ }
void strkzn(machine_config &config);
+ void light_io(address_map &map);
+ void light_mem(address_map &map);
+ void main_io(address_map &map);
+ void main_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_lightcpu;
};
-static ADDRESS_MAP_START( main_mem, AS_PROGRAM, 8, strkzn_state )
+ADDRESS_MAP_START(strkzn_state::main_mem)
AM_RANGE(0x0000, 0xdfff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io, AS_IO, 8, strkzn_state )
+ADDRESS_MAP_START(strkzn_state::main_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( light_mem, AS_PROGRAM, 8, strkzn_state )
+ADDRESS_MAP_START(strkzn_state::light_mem)
AM_RANGE(0x00000, 0x00fff) AM_RAM
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("lightcpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( light_io, AS_IO, 8, strkzn_state )
+ADDRESS_MAP_START(strkzn_state::light_io)
AM_RANGE(0x0007, 0x0007) AM_READNOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/strnskil.cpp b/src/mame/drivers/strnskil.cpp
index 974f710237f..57cc27a6d5b 100644
--- a/src/mame/drivers/strnskil.cpp
+++ b/src/mame/drivers/strnskil.cpp
@@ -91,7 +91,7 @@ WRITE8_MEMBER(strnskil_state::protection_w)
/****************************************************************************/
-static ADDRESS_MAP_START( strnskil_map1, AS_PROGRAM, 8, strnskil_state )
+ADDRESS_MAP_START(strnskil_state::strnskil_map1)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
@@ -110,7 +110,7 @@ static ADDRESS_MAP_START( strnskil_map1, AS_PROGRAM, 8, strnskil_state )
AM_RANGE(0xd80a, 0xd80b) AM_WRITEONLY AM_SHARE("xscroll")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( strnskil_map2, AS_PROGRAM, 8, strnskil_state )
+ADDRESS_MAP_START(strnskil_state::strnskil_map2)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
diff --git a/src/mame/drivers/studio2.cpp b/src/mame/drivers/studio2.cpp
index ae954485c68..1935e2554c4 100644
--- a/src/mame/drivers/studio2.cpp
+++ b/src/mame/drivers/studio2.cpp
@@ -248,6 +248,8 @@ public:
uint8_t m_keylatch;
void studio2_cartslot(machine_config &config);
void studio2(machine_config &config);
+ void studio2_io_map(address_map &map);
+ void studio2_map(address_map &map);
};
class visicom_state : public studio2_state
@@ -266,6 +268,8 @@ public:
DECLARE_WRITE8_MEMBER( dma_w );
void visicom(machine_config &config);
+ void visicom_io_map(address_map &map);
+ void visicom_map(address_map &map);
};
class mpt02_state : public studio2_state
@@ -292,6 +296,8 @@ public:
required_shared_ptr<uint8_t> m_color_ram;
uint8_t m_color;
void mpt02(machine_config &config);
+ void mpt02_io_map(address_map &map);
+ void mpt02_map(address_map &map);
};
@@ -328,19 +334,19 @@ WRITE8_MEMBER( studio2_state::dispon_w )
/* Memory Maps */
-static ADDRESS_MAP_START( studio2_map, AS_PROGRAM, 8, studio2_state )
+ADDRESS_MAP_START(studio2_state::studio2_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x09ff) AM_MIRROR(0xf400) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( studio2_io_map, AS_IO, 8, studio2_state )
+ADDRESS_MAP_START(studio2_state::studio2_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x01, 0x01) AM_READ(dispon_r)
AM_RANGE(0x02, 0x02) AM_WRITE(keylatch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( visicom_map, AS_PROGRAM, 8, visicom_state )
+ADDRESS_MAP_START(visicom_state::visicom_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x0fff) AM_DEVREAD("cartslot", generic_slot_device, read_rom)
AM_RANGE(0x1000, 0x10ff) AM_RAM
@@ -348,19 +354,19 @@ static ADDRESS_MAP_START( visicom_map, AS_PROGRAM, 8, visicom_state )
AM_RANGE(0x1300, 0x13ff) AM_RAM AM_SHARE("color1_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( visicom_io_map, AS_IO, 8, visicom_state )
+ADDRESS_MAP_START(visicom_state::visicom_io_map)
AM_RANGE(0x01, 0x01) AM_WRITE(dispon_w)
AM_RANGE(0x02, 0x02) AM_WRITE(keylatch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpt02_map, AS_PROGRAM, 8, mpt02_state )
+ADDRESS_MAP_START(mpt02_state::mpt02_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x09ff) AM_RAM
AM_RANGE(0x0b00, 0x0b3f) AM_RAM AM_SHARE("color_ram")
AM_RANGE(0x0c00, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mpt02_io_map, AS_IO, 8, mpt02_state )
+ADDRESS_MAP_START(mpt02_state::mpt02_io_map)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE(CDP1864_TAG, cdp1864_device, dispon_r, step_bgcolor_w)
AM_RANGE(0x02, 0x02) AM_WRITE(keylatch_w)
AM_RANGE(0x04, 0x04) AM_DEVREADWRITE(CDP1864_TAG, cdp1864_device, dispoff_r, tone_latch_w)
diff --git a/src/mame/drivers/stuntair.cpp b/src/mame/drivers/stuntair.cpp
index 4645cb2550f..df3a34bf4f9 100644
--- a/src/mame/drivers/stuntair.cpp
+++ b/src/mame/drivers/stuntair.cpp
@@ -144,6 +144,9 @@ public:
uint32_t screen_update_stuntair(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_PALETTE_INIT(stuntair);
void stuntair(machine_config &config);
+ void stuntair_map(address_map &map);
+ void stuntair_sound_map(address_map &map);
+ void stuntair_sound_portmap(address_map &map);
};
@@ -317,7 +320,7 @@ WRITE8_MEMBER(stuntair_state::stuntair_sound_w)
}
// main Z80
-static ADDRESS_MAP_START( stuntair_map, AS_PROGRAM, 8, stuntair_state )
+ADDRESS_MAP_START(stuntair_state::stuntair_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xc800, 0xcbff) AM_RAM_WRITE(stuntair_bgattrram_w) AM_SHARE("bgattrram")
@@ -334,12 +337,12 @@ static ADDRESS_MAP_START( stuntair_map, AS_PROGRAM, 8, stuntair_state )
ADDRESS_MAP_END
// sound Z80
-static ADDRESS_MAP_START( stuntair_sound_map, AS_PROGRAM, 8, stuntair_state )
+ADDRESS_MAP_START(stuntair_state::stuntair_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stuntair_sound_portmap, AS_IO, 8, stuntair_state )
+ADDRESS_MAP_START(stuntair_state::stuntair_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x03, 0x03) AM_DEVWRITE("ay2", ay8910_device, address_w)
AM_RANGE(0x07, 0x07) AM_DEVWRITE("ay2", ay8910_device, data_w)
diff --git a/src/mame/drivers/stv.cpp b/src/mame/drivers/stv.cpp
index 7d6e010c722..b64288faab5 100644
--- a/src/mame/drivers/stv.cpp
+++ b/src/mame/drivers/stv.cpp
@@ -975,7 +975,7 @@ DRIVER_INIT_MEMBER(stv_state, hopper)
m_slave->space(AS_PROGRAM).install_readwrite_handler(0x00400000, 0x0040003f, read32_delegate(FUNC(stv_state::stv_ioga_r32),this), write32_delegate(FUNC(stv_state::hop_ioga_w32),this));
}
-static ADDRESS_MAP_START( stv_mem, AS_PROGRAM, 32, stv_state )
+ADDRESS_MAP_START(stv_state::stv_mem)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_MIRROR(0x20000000) AM_REGION("bios", 0) // bios
AM_RANGE(0x00100000, 0x0010007f) AM_DEVREADWRITE8("smpc", smpc_hle_device, read, write, 0xffffffff)
AM_RANGE(0x00180000, 0x0018ffff) AM_READWRITE8(saturn_backupram_r,saturn_backupram_w,0xffffffff) AM_SHARE("share1")
@@ -1001,7 +1001,7 @@ static ADDRESS_MAP_START( stv_mem, AS_PROGRAM, 32, stv_state )
AM_RANGE(0xc0000000, 0xc00007ff) AM_RAM // cache RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 16, stv_state )
+ADDRESS_MAP_START(stv_state::sound_mem)
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("sound_ram")
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp", scsp_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/su2000.cpp b/src/mame/drivers/su2000.cpp
index daadfd11bf9..8cbcbe1672c 100644
--- a/src/mame/drivers/su2000.cpp
+++ b/src/mame/drivers/su2000.cpp
@@ -66,6 +66,8 @@ public:
: pcat_base_state(mconfig, type, tag){ }
void su2000(machine_config &config);
+ void pcat_io(address_map &map);
+ void pcat_map(address_map &map);
};
@@ -75,7 +77,7 @@ public:
*
*************************************/
-static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, su2000_state )
+ADDRESS_MAP_START(su2000_state::pcat_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM
@@ -84,7 +86,7 @@ static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, su2000_state )
AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0x0f0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcat_io, AS_IO, 32, su2000_state )
+ADDRESS_MAP_START(su2000_state::pcat_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x03b0, 0x03bf) AM_DEVREADWRITE8("vga", vga_device, port_03b0_r, port_03b0_w, 0xffffffff)
AM_RANGE(0x03c0, 0x03cf) AM_DEVREADWRITE8("vga", vga_device, port_03c0_r, port_03c0_w, 0xffffffff)
diff --git a/src/mame/drivers/sub.cpp b/src/mame/drivers/sub.cpp
index c2aaf07f178..e4136cb5c0c 100644
--- a/src/mame/drivers/sub.cpp
+++ b/src/mame/drivers/sub.cpp
@@ -160,6 +160,10 @@ public:
INTERRUPT_GEN_MEMBER(main_irq);
INTERRUPT_GEN_MEMBER(sound_irq);
void sub(machine_config &config);
+ void subm_io(address_map &map);
+ void subm_map(address_map &map);
+ void subm_sound_io(address_map &map);
+ void subm_sound_map(address_map &map);
};
void sub_state::machine_start()
@@ -257,7 +261,7 @@ WRITE_LINE_MEMBER(sub_state::int_mask_w)
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( subm_map, AS_PROGRAM, 8, sub_state )
+ADDRESS_MAP_START(sub_state::subm_map)
AM_RANGE(0x0000, 0xafff) AM_ROM
AM_RANGE(0xb000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("attr")
@@ -282,18 +286,18 @@ WRITE8_MEMBER(sub_state::nmi_mask_w)
m_soundcpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
}
-static ADDRESS_MAP_START( subm_io, AS_IO, 8, sub_state )
+ADDRESS_MAP_START(sub_state::subm_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) AM_DEVWRITE("soundlatch", generic_latch_8_device, write) // to/from sound CPU
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subm_sound_map, AS_PROGRAM, 8, sub_state )
+ADDRESS_MAP_START(sub_state::subm_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_WRITE(nmi_mask_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subm_sound_io, AS_IO, 8, sub_state )
+ADDRESS_MAP_START(sub_state::subm_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write) // to/from main CPU
AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ay1", ay8910_device, data_r, address_data_w)
diff --git a/src/mame/drivers/subhuntr.cpp b/src/mame/drivers/subhuntr.cpp
index 4972188309b..a59f426dd98 100644
--- a/src/mame/drivers/subhuntr.cpp
+++ b/src/mame/drivers/subhuntr.cpp
@@ -44,6 +44,9 @@ public:
DECLARE_PALETTE_INIT(subhuntr);
uint32_t screen_update_subhuntr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void subhuntr(machine_config &config);
+ void subhuntr_data_map(address_map &map);
+ void subhuntr_io_map(address_map &map);
+ void subhuntr_map(address_map &map);
};
@@ -73,15 +76,15 @@ void subhuntr_state::video_start()
***************************************************************************/
-static ADDRESS_MAP_START( subhuntr_map, AS_PROGRAM, 8, subhuntr_state )
+ADDRESS_MAP_START(subhuntr_state::subhuntr_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1c00, 0x1fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subhuntr_io_map, AS_PROGRAM, 8, subhuntr_state )
+ADDRESS_MAP_START(subhuntr_state::subhuntr_io_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subhuntr_data_map, AS_DATA, 8, subhuntr_state )
+ADDRESS_MAP_START(subhuntr_state::subhuntr_data_map)
// AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE( , )
// AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE( , )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/subs.cpp b/src/mame/drivers/subs.cpp
index cd262787582..1d8374a3b20 100644
--- a/src/mame/drivers/subs.cpp
+++ b/src/mame/drivers/subs.cpp
@@ -51,7 +51,7 @@ PALETTE_INIT_MEMBER(subs_state, subs)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, subs_state )
+ADDRESS_MAP_START(subs_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0000, 0x0000) AM_WRITE(noise_reset_w)
diff --git a/src/mame/drivers/subsino.cpp b/src/mame/drivers/subsino.cpp
index b80ca9aa369..b2bd52f5b5d 100644
--- a/src/mame/drivers/subsino.cpp
+++ b/src/mame/drivers/subsino.cpp
@@ -337,6 +337,16 @@ public:
void victor21(machine_config &config);
void sharkpy(machine_config &config);
void victor5(machine_config &config);
+ void crsbingo_map(address_map &map);
+ void mtrainnv_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void sharkpy_map(address_map &map);
+ void srider_map(address_map &map);
+ void stbsub_map(address_map &map);
+ void subsino_iomap(address_map &map);
+ void tisub_map(address_map &map);
+ void victor21_map(address_map &map);
+ void victor5_map(address_map &map);
};
void subsino_state::machine_start()
@@ -833,7 +843,7 @@ WRITE8_MEMBER(subsino_state::subsino_out_b_w)
* Memory Maps *
***************************************************************************/
-static ADDRESS_MAP_START( srider_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::srider_map)
AM_RANGE( 0x00000, 0x0bfff ) AM_ROM
AM_RANGE( 0x0c000, 0x0cfff ) AM_RAM
@@ -857,7 +867,7 @@ static ADDRESS_MAP_START( srider_map, AS_PROGRAM, 8, subsino_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sharkpy_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::sharkpy_map)
AM_RANGE( 0x00000, 0x13fff ) AM_ROM //overlap unmapped regions
AM_RANGE( 0x09800, 0x09fff ) AM_RAM
@@ -886,7 +896,7 @@ that announces to the player that the card deck changes. If the protection check
this event makes the game to reset without any money in the bank.
*/
-static ADDRESS_MAP_START( victor21_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::victor21_map)
AM_RANGE( 0x00000, 0x08fff ) AM_ROM //overlap unmapped regions
AM_RANGE( 0x09800, 0x09fff ) AM_RAM
@@ -965,7 +975,7 @@ WRITE8_MEMBER(subsino_state::flash_w)
}
}
-static ADDRESS_MAP_START( victor5_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::victor5_map)
AM_IMPORT_FROM( victor21_map )
AM_RANGE( 0x0900a, 0x0900a ) AM_READWRITE(flash_r, flash_w )
AM_RANGE( 0x0900b, 0x0900b ) AM_READNOP //"flash" status, bit 0
@@ -978,7 +988,7 @@ READ8_MEMBER(subsino_state::hwcheck_r)
return 0x55;
}
-static ADDRESS_MAP_START( crsbingo_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::crsbingo_map)
AM_RANGE( 0x00000, 0x8fff ) AM_ROM //overlap unmapped regions
AM_RANGE( 0x09800, 0x09fff ) AM_RAM
@@ -1026,7 +1036,7 @@ WRITE8_MEMBER(subsino_state::subsino_out_c_w)
// popmessage("data %02x\n",data);
}
-static ADDRESS_MAP_START( tisub_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::tisub_map)
AM_RANGE( 0x00000, 0x0bfff ) AM_ROM // overlap unmapped regions
AM_RANGE( 0x09800, 0x09fff ) AM_RAM
@@ -1062,7 +1072,7 @@ static ADDRESS_MAP_START( tisub_map, AS_PROGRAM, 8, subsino_state )
AM_RANGE( 0x15c00, 0x15dff ) AM_RAM_WRITE(subsino_reel3_ram_w) AM_SHARE("reel3_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
@@ -1117,7 +1127,7 @@ READ8_MEMBER(subsino_state::reel_scrollattr_r)
return m_reel1_attr[offset];
}
-static ADDRESS_MAP_START( stbsub_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::stbsub_map)
AM_RANGE( 0x00000, 0x0bfff ) AM_ROM
AM_RANGE( 0x0c000, 0x0cfff ) AM_RAM
@@ -1155,7 +1165,7 @@ ADDRESS_MAP_END
Magic Train (Clear NVRAM ROM?)
***************************************************************************/
-static ADDRESS_MAP_START( mtrainnv_map, AS_PROGRAM, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::mtrainnv_map)
AM_RANGE( 0x00000, 0x0bfff ) AM_ROM
AM_RANGE( 0x0c000, 0x0cfff ) AM_RAM
@@ -1190,7 +1200,7 @@ static ADDRESS_MAP_START( mtrainnv_map, AS_PROGRAM, 8, subsino_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( subsino_iomap, AS_IO, 8, subsino_state )
+ADDRESS_MAP_START(subsino_state::subsino_iomap)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs
ADDRESS_MAP_END
diff --git a/src/mame/drivers/subsino2.cpp b/src/mame/drivers/subsino2.cpp
index d127b136e3f..56f04af30a4 100644
--- a/src/mame/drivers/subsino2.cpp
+++ b/src/mame/drivers/subsino2.cpp
@@ -191,6 +191,19 @@ public:
void expcard(machine_config &config);
void xplan(machine_config &config);
void xtrain(machine_config &config);
+ void bishjan_map(address_map &map);
+ void expcard_io(address_map &map);
+ void humlan_map(address_map &map);
+ void mtrain_io(address_map &map);
+ void mtrain_map(address_map &map);
+ void new2001_base_map(address_map &map);
+ void new2001_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void saklove_io(address_map &map);
+ void saklove_map(address_map &map);
+ void xplan_io(address_map &map);
+ void xplan_map(address_map &map);
+ void xtrain_io(address_map &map);
private:
inline void ss9601_get_tile_info(layer_t *l, tile_data &tileinfo, tilemap_memory_index tile_index);
};
@@ -907,7 +920,7 @@ WRITE16_MEMBER(subsino2_state::bishjan_outputs_w)
}
-static ADDRESS_MAP_START( bishjan_map, AS_PROGRAM, 16, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::bishjan_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_REGION("maincpu", 0)
@@ -956,7 +969,7 @@ static ADDRESS_MAP_START( bishjan_map, AS_PROGRAM, 16, subsino2_state )
AM_RANGE( 0xc00008, 0xc00009 ) AM_READ_PORT("RESET") AM_WRITE(bishjan_outputs_w ) AM_SHARE("outputs16")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
@@ -995,7 +1008,7 @@ WRITE16_MEMBER(subsino2_state::new2001_outputs_w)
}
// Same as bishjan (except for i/o and lo2 usage like xplan)
-static ADDRESS_MAP_START( new2001_base_map, AS_PROGRAM, 16, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::new2001_base_map)
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_REGION("maincpu", 0)
@@ -1048,7 +1061,7 @@ static ADDRESS_MAP_START( new2001_base_map, AS_PROGRAM, 16, subsino2_state )
AM_RANGE( 0xc00006, 0xc00007 ) AM_READ(bishjan_serial_r )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( new2001_map, AS_PROGRAM, 16, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::new2001_map)
AM_IMPORT_FROM(new2001_base_map)
AM_RANGE( 0xc00008, 0xc00009 ) AM_WRITE(new2001_outputs_w ) AM_SHARE("outputs16")
ADDRESS_MAP_END
@@ -1084,7 +1097,7 @@ WRITE16_MEMBER(subsino2_state::humlan_outputs_w)
// popmessage("0: %04x", m_outputs16[0]);
}
-static ADDRESS_MAP_START( humlan_map, AS_PROGRAM, 16, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::humlan_map)
AM_IMPORT_FROM(new2001_base_map)
AM_RANGE( 0xc00008, 0xc00009 ) AM_WRITE(humlan_outputs_w ) AM_SHARE("outputs16")
ADDRESS_MAP_END
@@ -1218,7 +1231,7 @@ READ8_MEMBER(subsino2_state::mtrain_prot_r)
return "SUBSION"[offset];
}
-static ADDRESS_MAP_START( mtrain_map, AS_PROGRAM, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::mtrain_map)
AM_RANGE( 0x00000, 0x06fff ) AM_ROM
AM_RANGE( 0x07800, 0x07fff ) AM_RAM AM_SHARE("nvram") // battery
@@ -1253,7 +1266,7 @@ static ADDRESS_MAP_START( mtrain_map, AS_PROGRAM, 8, subsino2_state )
AM_RANGE( 0x0a000, 0x0ffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mtrain_io, AS_IO, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::mtrain_io)
AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs
ADDRESS_MAP_END
@@ -1286,7 +1299,7 @@ WRITE8_MEMBER(subsino2_state::saklove_outputs_w)
// popmessage("0: %02x - 1: %02x - 2: %02x - 3: %02x", m_outputs[0], m_outputs[1], m_outputs[2], m_outputs[3]);
}
-static ADDRESS_MAP_START( saklove_map, AS_PROGRAM, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::saklove_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM AM_SHARE("nvram") // battery
// read lo (L1) (only half tilemap?)
@@ -1311,7 +1324,7 @@ static ADDRESS_MAP_START( saklove_map, AS_PROGRAM, 8, subsino2_state )
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("maincpu",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( saklove_io, AS_IO, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::saklove_io)
AM_RANGE(0x0000, 0x0000) AM_WRITE(ss9601_scrollctrl_w )
AM_RANGE(0x0020, 0x0020) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -1376,7 +1389,7 @@ WRITE8_MEMBER(subsino2_state::xplan_outputs_w)
// popmessage("0: %02x - 1: %02x - 2: %02x - 3: %02x", m_outputs[0], m_outputs[1], m_outputs[2], m_outputs[3]);
}
-static ADDRESS_MAP_START( xplan_map, AS_PROGRAM, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::xplan_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM AM_SHARE("nvram") // battery
// write both (L1, byte_lo2)
@@ -1410,7 +1423,7 @@ static ADDRESS_MAP_START( xplan_map, AS_PROGRAM, 8, subsino2_state )
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("maincpu",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xplan_io, AS_IO, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::xplan_io)
AM_RANGE(0x0000, 0x0000) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x0020, 0x0020) AM_WRITE(ss9601_byte_lo2_w )
@@ -1479,14 +1492,14 @@ WRITE8_MEMBER(subsino2_state::xtrain_outputs_w)
// popmessage("0: %02x - 1: %02x - 2: %02x - 3: %02x", m_outputs[0], m_outputs[1], m_outputs[2], m_outputs[3]);
}
-static ADDRESS_MAP_START( expcard_io, AS_IO, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::expcard_io)
AM_IMPORT_FROM( xplan_io )
// 306 = d, 307 = c, 308 = b, 309 = a
AM_RANGE(0x0306, 0x0309) AM_WRITE(expcard_outputs_w ) AM_SHARE("outputs")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xtrain_io, AS_IO, 8, subsino2_state )
+ADDRESS_MAP_START(subsino2_state::xtrain_io)
AM_IMPORT_FROM( xplan_io )
// 306 = d, 307 = c, 308 = b, 309 = a
diff --git a/src/mame/drivers/summit.cpp b/src/mame/drivers/summit.cpp
index c3af6cdfaf0..e8c20d92425 100644
--- a/src/mame/drivers/summit.cpp
+++ b/src/mame/drivers/summit.cpp
@@ -43,6 +43,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void summit(machine_config &config);
+ void mainmap(address_map &map);
};
@@ -76,7 +77,7 @@ WRITE8_MEMBER(summit_state::out_w)
}
-static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8, summit_state )
+ADDRESS_MAP_START(summit_state::mainmap)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM AM_SHARE("attr")
diff --git a/src/mame/drivers/sumt8035.cpp b/src/mame/drivers/sumt8035.cpp
index fe3270039af..2f37c88a623 100644
--- a/src/mame/drivers/sumt8035.cpp
+++ b/src/mame/drivers/sumt8035.cpp
@@ -25,6 +25,8 @@ public:
{ }
void summit(machine_config &config);
+ void sumt_map(address_map &map);
+ void sumt_portmap(address_map &map);
protected:
// devices
@@ -32,12 +34,12 @@ protected:
};
-static ADDRESS_MAP_START( sumt_map, AS_PROGRAM, 8, sumt8035_state )
+ADDRESS_MAP_START(sumt8035_state::sumt_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sumt_portmap, AS_IO, 8, sumt8035_state )
+ADDRESS_MAP_START(sumt8035_state::sumt_portmap)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/sun1.cpp b/src/mame/drivers/sun1.cpp
index bfec5435f91..2a167d8f6a0 100644
--- a/src/mame/drivers/sun1.cpp
+++ b/src/mame/drivers/sun1.cpp
@@ -76,6 +76,7 @@ public:
}
void sun1(machine_config &config);
+ void sun1_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -85,7 +86,7 @@ protected:
};
-static ADDRESS_MAP_START(sun1_mem, AS_PROGRAM, 16, sun1_state)
+ADDRESS_MAP_START(sun1_state::sun1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("p_ram") // 512 KB RAM / ROM at boot
AM_RANGE(0x00200000, 0x00203fff) AM_ROM AM_REGION("user1",0)
diff --git a/src/mame/drivers/sun2.cpp b/src/mame/drivers/sun2.cpp
index f6e00e974f3..15bcff610ad 100644
--- a/src/mame/drivers/sun2.cpp
+++ b/src/mame/drivers/sun2.cpp
@@ -177,6 +177,15 @@ public:
void sun2mbus(machine_config &config);
void sun2vme(machine_config &config);
+ void mbustype0space_map(address_map &map);
+ void mbustype1space_map(address_map &map);
+ void mbustype2space_map(address_map &map);
+ void mbustype3space_map(address_map &map);
+ void sun2_mem(address_map &map);
+ void vmetype0space_map(address_map &map);
+ void vmetype1space_map(address_map &map);
+ void vmetype2space_map(address_map &map);
+ void vmetype3space_map(address_map &map);
private:
uint16_t *m_rom_ptr, *m_ram_ptr;
uint8_t *m_idprom_ptr;
@@ -470,18 +479,18 @@ WRITE16_MEMBER( sun2_state::video_ctrl_w )
COMBINE_DATA(&m_bw2_ctrl);
}
-static ADDRESS_MAP_START(sun2_mem, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::sun2_mem)
AM_RANGE(0x000000, 0xffffff) AM_READWRITE( tl_mmu_r, tl_mmu_w )
ADDRESS_MAP_END
// VME memory spaces
// type 0 device space
-static ADDRESS_MAP_START(vmetype0space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::vmetype0space_map)
AM_RANGE(0x000000, 0x7fffff) AM_READWRITE(ram_r, ram_w)
ADDRESS_MAP_END
// type 1 device space
-static ADDRESS_MAP_START(vmetype1space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::vmetype1space_map)
AM_RANGE(0x000000, 0x01ffff) AM_RAM AM_SHARE("bw2_vram")
AM_RANGE(0x020000, 0x020001) AM_READWRITE( video_ctrl_r, video_ctrl_w )
AM_RANGE(0x7f0000, 0x7f07ff) AM_ROM AM_REGION("bootprom", 0) // uses MMU loophole to read 32k from a 2k window
@@ -499,16 +508,16 @@ static ADDRESS_MAP_START(vmetype1space_map, AS_PROGRAM, 16, sun2_state)
ADDRESS_MAP_END
// type 2 device space
-static ADDRESS_MAP_START(vmetype2space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::vmetype2space_map)
ADDRESS_MAP_END
// type 3 device space
-static ADDRESS_MAP_START(vmetype3space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::vmetype3space_map)
ADDRESS_MAP_END
// Multibus memory spaces
// type 0 device space
-static ADDRESS_MAP_START(mbustype0space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::mbustype0space_map)
AM_RANGE(0x000000, 0x3fffff) AM_READWRITE(ram_r, ram_w)
// 7f80000-7f807ff: Keyboard/mouse SCC8530
//AM_RANGE(0x7f8000, 0x7f8007) AM_DEVREADWRITE8(SCC1_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff00)
@@ -517,7 +526,7 @@ static ADDRESS_MAP_START(mbustype0space_map, AS_PROGRAM, 16, sun2_state)
ADDRESS_MAP_END
// type 1 device space
-static ADDRESS_MAP_START(mbustype1space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::mbustype1space_map)
AM_RANGE(0x000000, 0x0007ff) AM_ROM AM_REGION("bootprom", 0) // uses MMU loophole to read 32k from a 2k window
// 001000-0017ff: AM9518 encryption processor
// 001800-001fff: Parallel port
@@ -527,11 +536,11 @@ static ADDRESS_MAP_START(mbustype1space_map, AS_PROGRAM, 16, sun2_state)
ADDRESS_MAP_END
// type 2 device space (Multibus memory space)
-static ADDRESS_MAP_START(mbustype2space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::mbustype2space_map)
ADDRESS_MAP_END
// type 3 device space (Multibus I/O space)
-static ADDRESS_MAP_START(mbustype3space_map, AS_PROGRAM, 16, sun2_state)
+ADDRESS_MAP_START(sun2_state::mbustype3space_map)
ADDRESS_MAP_END
uint32_t sun2_state::bw2_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
diff --git a/src/mame/drivers/sun3.cpp b/src/mame/drivers/sun3.cpp
index b77ccfd1011..d11b8a7fde6 100644
--- a/src/mame/drivers/sun3.cpp
+++ b/src/mame/drivers/sun3.cpp
@@ -272,6 +272,12 @@ public:
void sun3_60(machine_config &config);
void sun3200(machine_config &config);
void sun3_50(machine_config &config);
+ void sun3_mem(address_map &map);
+ void vmetype0space_map(address_map &map);
+ void vmetype0space_novram_map(address_map &map);
+ void vmetype1space_map(address_map &map);
+ void vmetype2space_map(address_map &map);
+ void vmetype3space_map(address_map &map);
private:
uint32_t *m_rom_ptr, *m_ram_ptr;
uint8_t *m_idprom_ptr;
@@ -713,24 +719,24 @@ WRITE32_MEMBER(sun3_state::parity_w)
}
}
-static ADDRESS_MAP_START(sun3_mem, AS_PROGRAM, 32, sun3_state)
+ADDRESS_MAP_START(sun3_state::sun3_mem)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE( tl_mmu_r, tl_mmu_w )
ADDRESS_MAP_END
// type 0 device space
-static ADDRESS_MAP_START(vmetype0space_map, AS_PROGRAM, 32, sun3_state)
+ADDRESS_MAP_START(sun3_state::vmetype0space_map)
AM_RANGE(0x00000000, 0x08ffffff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0xfe400000, 0xfe41ffff) AM_RAM // not sure what's going on here (3/110)
AM_RANGE(0xff000000, 0xff03ffff) AM_RAM AM_SHARE("bw2_vram")
ADDRESS_MAP_END
// type 0 without VRAM (3/50)
-static ADDRESS_MAP_START(vmetype0space_novram_map, AS_PROGRAM, 32, sun3_state)
+ADDRESS_MAP_START(sun3_state::vmetype0space_novram_map)
AM_RANGE(0x00000000, 0x08ffffff) AM_READWRITE(ram_r, ram_w)
ADDRESS_MAP_END
// type 1 device space
-static ADDRESS_MAP_START(vmetype1space_map, AS_PROGRAM, 32, sun3_state)
+ADDRESS_MAP_START(sun3_state::vmetype1space_map)
AM_RANGE(0x00000000, 0x0000000f) AM_DEVREADWRITE8(SCC1_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff00ff00)
AM_RANGE(0x00020000, 0x0002000f) AM_DEVREADWRITE8(SCC2_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff00ff00)
AM_RANGE(0x00040000, 0x000407ff) AM_RAM AM_SHARE("nvram") // type 2816 parallel EEPROM
@@ -742,11 +748,11 @@ static ADDRESS_MAP_START(vmetype1space_map, AS_PROGRAM, 32, sun3_state)
ADDRESS_MAP_END
// type 2 device space
-static ADDRESS_MAP_START(vmetype2space_map, AS_PROGRAM, 32, sun3_state)
+ADDRESS_MAP_START(sun3_state::vmetype2space_map)
ADDRESS_MAP_END
// type 3 device space
-static ADDRESS_MAP_START(vmetype3space_map, AS_PROGRAM, 32, sun3_state)
+ADDRESS_MAP_START(sun3_state::vmetype3space_map)
ADDRESS_MAP_END
READ32_MEMBER(sun3_state::irqctrl_r)
diff --git a/src/mame/drivers/sun3x.cpp b/src/mame/drivers/sun3x.cpp
index ce1df76f478..29c594bfc8a 100644
--- a/src/mame/drivers/sun3x.cpp
+++ b/src/mame/drivers/sun3x.cpp
@@ -210,13 +210,15 @@ public:
void sun3_80(machine_config &config);
void sun3_460(machine_config &config);
+ void sun3_460_mem(address_map &map);
+ void sun3_80_mem(address_map &map);
private:
uint32_t m_enable, m_buserr, m_diag, m_printer, m_irqctrl, m_memreg, m_memerraddr;
uint32_t m_iommu[0x800];
bool m_bInBusErr;
};
-static ADDRESS_MAP_START(sun3_80_mem, AS_PROGRAM, 32, sun3x_state)
+ADDRESS_MAP_START(sun3x_state::sun3_80_mem)
AM_RANGE(0x00000000, 0x03ffffff) AM_RAM AM_SHARE("p_ram") AM_WRITE(ramwrite_w)
AM_RANGE(0x40000000, 0x40000003) AM_READWRITE(cause_buserr_r, cause_buserr_w)
AM_RANGE(0x50300000, 0x50300003) AM_READ(p4id_r)
@@ -239,7 +241,7 @@ static ADDRESS_MAP_START(sun3_80_mem, AS_PROGRAM, 32, sun3x_state)
AM_RANGE(0xfefe0000, 0xfefeffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sun3_460_mem, AS_PROGRAM, 32, sun3x_state)
+ADDRESS_MAP_START(sun3x_state::sun3_460_mem)
AM_RANGE(0x00000000, 0x03ffffff) AM_RAM AM_SHARE("p_ram") AM_WRITE(ramwrite_w)
AM_RANGE(0x09000000, 0x09000003) AM_READWRITE(cause_buserr_r, cause_buserr_w)
AM_RANGE(0x50300000, 0x50300003) AM_READ(p4id_r)
diff --git a/src/mame/drivers/sun4.cpp b/src/mame/drivers/sun4.cpp
index 71ed48b5b71..38f4717f161 100644
--- a/src/mame/drivers/sun4.cpp
+++ b/src/mame/drivers/sun4.cpp
@@ -594,6 +594,11 @@ public:
static void ncr5390(device_t *device);
void sun4c(machine_config &config);
void sun4(machine_config &config);
+ void sun4_mem(address_map &map);
+ void sun4c_mem(address_map &map);
+ void type0space_map(address_map &map);
+ void type1space_map(address_map &map);
+ void type1space_s4_map(address_map &map);
protected:
required_device<mb86901_device> m_maincpu;
@@ -1326,11 +1331,11 @@ void sun4_state::fcodes_command(int ref, const std::vector<std::string> &params)
#endif
}
-static ADDRESS_MAP_START(sun4_mem, AS_PROGRAM, 32, sun4_state)
+ADDRESS_MAP_START(sun4_state::sun4_mem)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE( sun4_mmu_r, sun4_mmu_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sun4c_mem, AS_PROGRAM, 32, sun4_state)
+ADDRESS_MAP_START(sun4_state::sun4c_mem)
AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE( sun4c_mmu_r, sun4c_mmu_w )
ADDRESS_MAP_END
@@ -1455,11 +1460,11 @@ WRITE32_MEMBER( sun4_state::ram_w )
}
}
-static ADDRESS_MAP_START(type0space_map, AS_PROGRAM, 32, sun4_state)
+ADDRESS_MAP_START(sun4_state::type0space_map)
AM_RANGE(0x00000000, 0x03ffffff) AM_READWRITE(ram_r, ram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(type1space_map, AS_PROGRAM, 32, sun4_state)
+ADDRESS_MAP_START(sun4_state::type1space_map)
AM_RANGE(0x00000000, 0x0000000f) AM_DEVREADWRITE8(SCC1_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff00ff00)
AM_RANGE(0x01000000, 0x0100000f) AM_DEVREADWRITE8(SCC2_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff00ff00)
AM_RANGE(0x02000000, 0x020007ff) AM_DEVREADWRITE8(TIMEKEEPER_TAG, timekeeper_device, read, write, 0xffffffff)
@@ -1474,7 +1479,7 @@ static ADDRESS_MAP_START(type1space_map, AS_PROGRAM, 32, sun4_state)
AM_RANGE(0x0e800000, 0x0e8fffff) AM_RAM AM_SHARE("bw2_vram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(type1space_s4_map, AS_PROGRAM, 32, sun4_state)
+ADDRESS_MAP_START(sun4_state::type1space_s4_map)
AM_RANGE(0x00000000, 0x0000000f) AM_DEVREADWRITE8(SCC1_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff00ff00)
AM_RANGE(0x01000000, 0x0100000f) AM_DEVREADWRITE8(SCC2_TAG, z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0xff00ff00)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/suna16.cpp b/src/mame/drivers/suna16.cpp
index d0688313bba..121c6d0da25 100644
--- a/src/mame/drivers/suna16.cpp
+++ b/src/mame/drivers/suna16.cpp
@@ -95,7 +95,7 @@ WRITE16_MEMBER(suna16_state::bestbest_coin_w)
Back Street Soccer
***************************************************************************/
-static ADDRESS_MAP_START( bssoccer_map, AS_PROGRAM, 16, suna16_state )
+ADDRESS_MAP_START(suna16_state::bssoccer_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM // RAM
AM_RANGE(0x400000, 0x4001ff) AM_READWRITE(paletteram_r, paletteram_w) // Banked Palette
@@ -151,7 +151,7 @@ WRITE8_MEMBER(suna16_state::uballoon_prot_w)
}
}
-static ADDRESS_MAP_START( uballoon_map, AS_PROGRAM, 16, suna16_state )
+ADDRESS_MAP_START(suna16_state::uballoon_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x800000, 0x803fff) AM_RAM // RAM
AM_RANGE(0x200000, 0x2001ff) AM_READWRITE(paletteram_r, paletteram_w) // Banked Palette
@@ -172,7 +172,7 @@ ADDRESS_MAP_END
Suna Quiz 6000 Academy
***************************************************************************/
-static ADDRESS_MAP_START( sunaq_map, AS_PROGRAM, 16, suna16_state )
+ADDRESS_MAP_START(suna16_state::sunaq_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x500000, 0x500001) AM_READ_PORT("P1") AM_WRITE(soundlatch_w) // To Sound CPU
AM_RANGE(0x500002, 0x500003) AM_READ_PORT("P2") AM_WRITE(flipscreen_w) // Flip Screen
@@ -205,7 +205,7 @@ WRITE8_MEMBER(suna16_state::bestbest_prot_w)
}
}
-static ADDRESS_MAP_START( bestbest_map, AS_PROGRAM, 16, suna16_state )
+ADDRESS_MAP_START(suna16_state::bestbest_map)
AM_RANGE( 0x000000, 0x03ffff ) AM_ROM AM_MIRROR(0xc0000) // ROM
AM_RANGE( 0x200000, 0x2fffff ) AM_ROM AM_REGION("user1", 0) // ROM
AM_RANGE( 0x500000, 0x500001 ) AM_READ_PORT("P1") AM_WRITE(soundlatch_w) // To Sound CPU
@@ -241,7 +241,7 @@ MACHINE_START_MEMBER(suna16_state,bestbest)
Back Street Soccer
***************************************************************************/
-static ADDRESS_MAP_START( bssoccer_sound_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bssoccer_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM // RAM
AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write) // YM2151
@@ -254,7 +254,7 @@ ADDRESS_MAP_END
Ultra Balloon
***************************************************************************/
-static ADDRESS_MAP_START( uballoon_sound_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::uballoon_sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM // ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM // RAM
AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write) // YM2151
@@ -265,7 +265,7 @@ ADDRESS_MAP_END
Suna Quiz 6000 Academy
***************************************************************************/
-static ADDRESS_MAP_START( sunaq_sound_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::sunaq_sound_map)
AM_RANGE(0x0000, 0xe82f) AM_ROM // ROM
AM_RANGE(0xe830, 0xf7ff) AM_RAM // RAM (writes to efxx, could be a program bug tho)
AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write) // YM2151
@@ -276,7 +276,7 @@ ADDRESS_MAP_END
Best Of Best
***************************************************************************/
-static ADDRESS_MAP_START( bestbest_sound_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bestbest_sound_map)
AM_RANGE( 0x0000, 0xbfff ) AM_ROM // ROM
AM_RANGE( 0xc000, 0xc001 ) AM_DEVWRITE("ymsnd", ym3526_device, write)
AM_RANGE( 0xc002, 0xc003 ) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) // AY8910
@@ -325,19 +325,19 @@ WRITE8_MEMBER(suna16_state::bssoccer_pcm_2_bankswitch_w)
/* Memory maps: Yes, *no* RAM */
-static ADDRESS_MAP_START( bssoccer_pcm_1_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bssoccer_pcm_1_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM // ROM
AM_RANGE(0x1000, 0xffff) AM_ROMBANK("bank1") // Banked ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bssoccer_pcm_2_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bssoccer_pcm_2_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM // ROM
AM_RANGE(0x1000, 0xffff) AM_ROMBANK("bank2") // Banked ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bssoccer_pcm_1_io_map, AS_IO, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bssoccer_pcm_1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) // From The Sound Z80
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ldac", dac_byte_interface, write)
@@ -345,7 +345,7 @@ static ADDRESS_MAP_START( bssoccer_pcm_1_io_map, AS_IO, 8, suna16_state )
AM_RANGE(0x03, 0x03) AM_WRITE(bssoccer_pcm_1_bankswitch_w) // Rom Bank
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bssoccer_pcm_2_io_map, AS_IO, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bssoccer_pcm_2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch3", generic_latch_8_device, read) // From The Sound Z80
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ldac2", dac_byte_interface, write)
@@ -369,12 +369,12 @@ WRITE8_MEMBER(suna16_state::uballoon_pcm_1_bankswitch_w)
/* Memory maps: Yes, *no* RAM */
-static ADDRESS_MAP_START( uballoon_pcm_1_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::uballoon_pcm_1_map)
AM_RANGE(0x0000, 0x03ff) AM_ROM // ROM
AM_RANGE(0x0400, 0xffff) AM_ROMBANK("bank1") // Banked ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( uballoon_pcm_1_io_map, AS_IO, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::uballoon_pcm_1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) // From The Sound Z80
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ldac", dac_byte_interface, write)
@@ -400,11 +400,11 @@ MACHINE_RESET_MEMBER(suna16_state,uballoon)
Best Of Best
***************************************************************************/
-static ADDRESS_MAP_START( bestbest_pcm_1_map, AS_PROGRAM, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bestbest_pcm_1_map)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bestbest_pcm_1_iomap, AS_IO, 8, suna16_state )
+ADDRESS_MAP_START(suna16_state::bestbest_pcm_1_iomap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) // From The Sound Z80
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ldac", dac_byte_interface, write)
diff --git a/src/mame/drivers/suna8.cpp b/src/mame/drivers/suna8.cpp
index 7d94f03c7cf..5fd69b95ff6 100644
--- a/src/mame/drivers/suna8.cpp
+++ b/src/mame/drivers/suna8.cpp
@@ -558,7 +558,7 @@ WRITE8_MEMBER(suna8_state::hardhead_flipscreen_w)
machine().bookkeeping().coin_lockout_w(1, data & 0x10);
}
-static ADDRESS_MAP_START( hardhead_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::hardhead_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
AM_RANGE(0xc000, 0xd7ff) AM_RAM // RAM
@@ -574,7 +574,7 @@ static ADDRESS_MAP_START( hardhead_map, AS_PROGRAM, 8, suna8_state )
AM_RANGE(0xe000, 0xffff) AM_RAM_WRITE(suna8_spriteram_w) AM_SHARE("spriteram") // Sprites
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hardhead_io_map, AS_IO, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::hardhead_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READNOP // ? IRQ Ack
ADDRESS_MAP_END
@@ -625,7 +625,7 @@ WRITE8_MEMBER(suna8_state::sranger_prot_w)
m_maincpu->space(AS_PROGRAM).write_byte(0xcd99,0xff);
}
-static ADDRESS_MAP_START( rranger_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::rranger_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
AM_RANGE(0xc000, 0xc000) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r) AM_DEVWRITE("soundlatch", generic_latch_8_device, write) // To Sound CPU
@@ -643,7 +643,7 @@ static ADDRESS_MAP_START( rranger_map, AS_PROGRAM, 8, suna8_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rranger_io_map, AS_IO, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::rranger_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READNOP // ? IRQ Ack
ADDRESS_MAP_END
@@ -732,7 +732,7 @@ WRITE8_MEMBER(suna8_state::brickzn_palbank_w)
if (data & ~0x01) logerror("CPU #0 - PC %04X: unknown palettebank bits: %02X\n",m_maincpu->pc(),data);
}
-static ADDRESS_MAP_START( brickzn11_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::brickzn11_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
@@ -860,7 +860,7 @@ WRITE8_MEMBER(suna8_state::brickzn_disab_palram_w)
m_paletteram_enab = 0;
}
-static ADDRESS_MAP_START( brickzn_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::brickzn_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
@@ -889,12 +889,12 @@ static ADDRESS_MAP_START( brickzn_map, AS_PROGRAM, 8, suna8_state )
AM_RANGE(0xe000, 0xffff) AM_READWRITE(suna8_banked_spriteram_r, suna8_banked_spriteram_w) // Sprites (Banked)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank0d")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1d")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( brickzn_io_map, AS_IO, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::brickzn_io_map)
AM_RANGE(0x0000, 0x0000) AM_WRITE(brickzn_disab_palram_w ) // Disable Palette RAM
AM_RANGE(0x00a1, 0x00a1) AM_WRITE(brickzn_enab_palram_w ) // Enable Palette RAM
ADDRESS_MAP_END
@@ -974,7 +974,7 @@ WRITE8_MEMBER(suna8_state::hardhea2_rambank_1_w)
}
-static ADDRESS_MAP_START( hardhea2_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::hardhea2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1") // P1 (Inputs)
@@ -1094,7 +1094,7 @@ WRITE8_MEMBER(suna8_state::starfigh_leds_w)
logerror("CPU #0 - PC %04X: rom bank = %02X\n",m_maincpu->pc(), m_rombank);
}
-static ADDRESS_MAP_START( starfigh_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::starfigh_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
@@ -1222,7 +1222,7 @@ READ8_MEMBER(suna8_state::sparkman_c0a3_r)
return (m_screen->frame_number() & 1) ? 0x80 : 0;
}
-static ADDRESS_MAP_START( sparkman_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::sparkman_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM
@@ -1259,7 +1259,7 @@ ADDRESS_MAP_END
Hard Head
***************************************************************************/
-static ADDRESS_MAP_START( hardhead_sound_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::hardhead_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0xa002, 0xa003) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -1270,7 +1270,7 @@ static ADDRESS_MAP_START( hardhead_sound_map, AS_PROGRAM, 8, suna8_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hardhead_sound_io_map, AS_IO, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::hardhead_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x01, 0x01) AM_READNOP // ? IRQ Ack
ADDRESS_MAP_END
@@ -1280,7 +1280,7 @@ ADDRESS_MAP_END
Rough Ranger
***************************************************************************/
-static ADDRESS_MAP_START( rranger_sound_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::rranger_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM
AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ym1", ym2203_device, write) // Samples + Music
AM_RANGE(0xa002, 0xa003) AM_DEVWRITE("ym2", ym2203_device, write) // Music + FX
@@ -1294,7 +1294,7 @@ ADDRESS_MAP_END
Brick Zone
***************************************************************************/
-static ADDRESS_MAP_START( brickzn_sound_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::brickzn_sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM // ROM
AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ymsnd", ym3812_device, write)
AM_RANGE(0xc002, 0xc003) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
@@ -1306,12 +1306,12 @@ ADDRESS_MAP_END
/* PCM Z80, 4 DACs (4 bits per sample), NO RAM !! */
-static ADDRESS_MAP_START( brickzn_pcm_map, AS_PROGRAM, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::brickzn_pcm_map)
AM_RANGE(0x0000, 0xffff) AM_ROM // ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( brickzn_pcm_io_map, AS_IO, 8, suna8_state )
+ADDRESS_MAP_START(suna8_state::brickzn_pcm_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) // From Sound CPU
AM_RANGE(0x00, 0x00) AM_DEVWRITE("ldac", dac_byte_interface, write)
@@ -1873,7 +1873,7 @@ MACHINE_CONFIG_START(suna8_state::hardhead)
MCFG_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* verified on pcb */
MCFG_CPU_PROGRAM_MAP(hardhead_map)
MCFG_CPU_IO_MAP(hardhead_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", suna8_state, irq0_line_hold) /* No NMI */
MCFG_CPU_ADD("audiocpu", Z80, SUNA8_MASTER_CLOCK / 8) /* verified on pcb */
@@ -1931,7 +1931,7 @@ MACHINE_CONFIG_START(suna8_state::rranger)
MCFG_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
MCFG_CPU_PROGRAM_MAP(rranger_map)
MCFG_CPU_IO_MAP(rranger_io_map)
-// MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+// MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", suna8_state, irq0_line_hold) /* IRQ & NMI ! */
MCFG_CPU_ADD("audiocpu", Z80, SUNA8_MASTER_CLOCK / 8) /* verified on pcb */
@@ -2053,7 +2053,7 @@ MACHINE_CONFIG_DERIVED(suna8_state::brickzn, brickzn11)
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(brickzn_map)
MCFG_CPU_IO_MAP(brickzn_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
@@ -2084,7 +2084,7 @@ MACHINE_CONFIG_DERIVED(suna8_state::hardhea2, brickzn)
MCFG_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* SUNA T568009 */
MCFG_CPU_PROGRAM_MAP(hardhea2_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", suna8_state, hardhea2_interrupt, "screen", 0, 1)
MCFG_MACHINE_RESET_OVERRIDE(suna8_state,hardhea2)
@@ -2111,7 +2111,7 @@ MACHINE_CONFIG_START(suna8_state::starfigh)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
MCFG_CPU_PROGRAM_MAP(starfigh_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", suna8_state, hardhea2_interrupt, "screen", 0, 1)
/* The sound section is identical to that of hardhead */
@@ -2166,7 +2166,7 @@ MACHINE_CONFIG_START(suna8_state::sparkman)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
MCFG_CPU_PROGRAM_MAP(sparkman_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", suna8_state, hardhea2_interrupt, "screen", 0, 1)
MCFG_CPU_ADD("audiocpu", Z80, SUNA8_MASTER_CLOCK / 4) /* ? */
diff --git a/src/mame/drivers/supbtime.cpp b/src/mame/drivers/supbtime.cpp
index 5a6937d4b39..d7c6141c19d 100644
--- a/src/mame/drivers/supbtime.cpp
+++ b/src/mame/drivers/supbtime.cpp
@@ -98,6 +98,10 @@ public:
void chinatwn(machine_config &config);
void supbtime(machine_config &config);
void tumblep(machine_config &config);
+ void chinatwn_map(address_map &map);
+ void sound_map(address_map &map);
+ void supbtime_map(address_map &map);
+ void tumblep_map(address_map &map);
private:
required_shared_ptr<uint16_t> m_spriteram;
required_shared_ptr<uint16_t> m_pf1_rowscroll;
@@ -112,7 +116,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( supbtime_map, AS_PROGRAM, 16, supbtime_state )
+ADDRESS_MAP_START(supbtime_state::supbtime_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x104000, 0x11ffff) AM_WRITENOP // Nothing there
@@ -132,7 +136,7 @@ static ADDRESS_MAP_START( supbtime_map, AS_PROGRAM, 16, supbtime_state )
AM_RANGE(0x342000, 0x3427ff) AM_RAM AM_SHARE("pf2_rowscroll")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chinatwn_map, AS_PROGRAM, 16, supbtime_state )
+ADDRESS_MAP_START(supbtime_state::chinatwn_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVWRITE8("soundlatch", generic_latch_8_device, write, 0x00ff)
AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram")
@@ -150,7 +154,7 @@ static ADDRESS_MAP_START( chinatwn_map, AS_PROGRAM, 16, supbtime_state )
AM_RANGE(0x342000, 0x3427ff) AM_RAM AM_SHARE("pf2_rowscroll") // unused
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tumblep_map, AS_PROGRAM, 16, supbtime_state )
+ADDRESS_MAP_START(supbtime_state::tumblep_map)
#if TUMBLEP_HACK
AM_RANGE(0x000000, 0x07ffff) AM_WRITEONLY // To write levels modifications
#endif
@@ -172,7 +176,7 @@ static ADDRESS_MAP_START( tumblep_map, AS_PROGRAM, 16, supbtime_state )
ADDRESS_MAP_END
// Physical memory map (21 bits)
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, supbtime_state )
+ADDRESS_MAP_START(supbtime_state::sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fffff)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_NOP // YM2203 - this board doesn't have one
diff --git a/src/mame/drivers/supdrapo.cpp b/src/mame/drivers/supdrapo.cpp
index e9d44f0ca5d..1dafe649ce0 100644
--- a/src/mame/drivers/supdrapo.cpp
+++ b/src/mame/drivers/supdrapo.cpp
@@ -110,6 +110,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void supdrapo(machine_config &config);
+ void sdpoker_mem(address_map &map);
};
@@ -276,7 +277,7 @@ void supdrapo_state::machine_reset()
Memory Map
**********************************************************************/
-static ADDRESS_MAP_START( sdpoker_mem, AS_PROGRAM, 8, supdrapo_state )
+ADDRESS_MAP_START(supdrapo_state::sdpoker_mem)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0x5000, 0x50ff) AM_RAM AM_SHARE("col_line")
AM_RANGE(0x57ff, 0x57ff) AM_RAM AM_SHARE("col_line")
diff --git a/src/mame/drivers/supduck.cpp b/src/mame/drivers/supduck.cpp
index 66426bfb9c8..03ccc19aa87 100644
--- a/src/mame/drivers/supduck.cpp
+++ b/src/mame/drivers/supduck.cpp
@@ -82,6 +82,9 @@ public:
DECLARE_WRITE8_MEMBER(okibank_w);
void supduck(machine_config &config);
+ void main_map(address_map &map);
+ void oki_map(address_map &map);
+ void sound_map(address_map &map);
protected:
// driver_device overrides
@@ -243,7 +246,7 @@ WRITE16_MEMBER(supduck_state::supduck_scroll_w)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, supduck_state )
+ADDRESS_MAP_START(supduck_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_WRITENOP
AM_RANGE(0xfe0000, 0xfe1fff) AM_RAM AM_SHARE("spriteram")
@@ -261,7 +264,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, supduck_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM /* working RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, supduck_state )
+ADDRESS_MAP_START(supduck_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(okibank_w)
@@ -269,7 +272,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, supduck_state )
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, supduck_state )
+ADDRESS_MAP_START(supduck_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/super6.cpp b/src/mame/drivers/super6.cpp
index 51711c9c4de..d51dd258589 100644
--- a/src/mame/drivers/super6.cpp
+++ b/src/mame/drivers/super6.cpp
@@ -277,7 +277,7 @@ WRITE8_MEMBER( super6_state::baud_w )
// ADDRESS_MAP( super6_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( super6_mem, AS_PROGRAM, 8, super6_state )
+ADDRESS_MAP_START(super6_state::super6_mem)
ADDRESS_MAP_END
@@ -285,7 +285,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( super6_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( super6_io, AS_IO, 8, super6_state )
+ADDRESS_MAP_START(super6_state::super6_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(Z80DART_TAG, z80dart_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read, write)
diff --git a/src/mame/drivers/super80.cpp b/src/mame/drivers/super80.cpp
index 3c9acd8985c..ec31a22c9fc 100644
--- a/src/mame/drivers/super80.cpp
+++ b/src/mame/drivers/super80.cpp
@@ -246,21 +246,21 @@ ToDo:
This makes the H and E monitor commands show FF */
READ8_MEMBER( super80_state::super80_read_ff ) { return 0xff; }
-static ADDRESS_MAP_START( super80_map, AS_PROGRAM, 8, super80_state )
+ADDRESS_MAP_START(super80_state::super80_map)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("boot") AM_REGION("maincpu", 0x0000)
AM_RANGE(0x4000, 0xbfff) AM_RAM AM_REGION("maincpu", 0x4000)
AM_RANGE(0xc000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_READ(super80_read_ff) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( super80m_map, AS_PROGRAM, 8, super80_state )
+ADDRESS_MAP_START(super80_state::super80m_map)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("boot") AM_REGION("maincpu", 0x0000)
AM_RANGE(0x4000, 0xbfff) AM_RAM AM_REGION("maincpu", 0x4000)
AM_RANGE(0xc000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM AM_REGION("maincpu", 0xf000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( super80v_map, AS_PROGRAM, 8, super80_state)
+ADDRESS_MAP_START(super80_state::super80v_map)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("boot")
AM_RANGE(0x4000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xefff) AM_ROM
@@ -268,7 +268,7 @@ static ADDRESS_MAP_START( super80v_map, AS_PROGRAM, 8, super80_state)
AM_RANGE(0xf800, 0xffff) AM_READWRITE(super80v_high_r, super80v_high_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( super80_io, AS_IO, 8, super80_state )
+ADDRESS_MAP_START(super80_state::super80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xdc, 0xdc) AM_DEVREAD("cent_status_in", input_buffer_device, read)
@@ -279,7 +279,7 @@ static ADDRESS_MAP_START( super80_io, AS_IO, 8, super80_state )
AM_RANGE(0xf8, 0xfb) AM_MIRROR(0x04) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( super80e_io, AS_IO, 8, super80_state )
+ADDRESS_MAP_START(super80_state::super80e_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xbc, 0xbc) AM_DEVREAD("cent_status_in", input_buffer_device, read)
@@ -290,7 +290,7 @@ static ADDRESS_MAP_START( super80e_io, AS_IO, 8, super80_state )
AM_RANGE(0xf8, 0xfb) AM_MIRROR(0x04) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( super80r_io, AS_IO, 8, super80_state )
+ADDRESS_MAP_START(super80_state::super80r_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x10, 0x10) AM_WRITE(super80v_10_w)
@@ -307,7 +307,7 @@ static ADDRESS_MAP_START( super80r_io, AS_IO, 8, super80_state )
AM_RANGE(0xf8, 0xfb) AM_MIRROR(0x04) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( super80v_io, AS_IO, 8, super80_state )
+ADDRESS_MAP_START(super80_state::super80v_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x10, 0x10) AM_WRITE(super80v_10_w)
diff --git a/src/mame/drivers/superchs.cpp b/src/mame/drivers/superchs.cpp
index 1f00265b10e..81328c73df7 100644
--- a/src/mame/drivers/superchs.cpp
+++ b/src/mame/drivers/superchs.cpp
@@ -130,7 +130,7 @@ WRITE32_MEMBER(superchs_state::superchs_stick_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( superchs_map, AS_PROGRAM, 32, superchs_state )
+ADDRESS_MAP_START(superchs_state::superchs_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x140000, 0x141fff) AM_RAM AM_SHARE("spriteram")
@@ -144,7 +144,7 @@ static ADDRESS_MAP_START( superchs_map, AS_PROGRAM, 32, superchs_state )
AM_RANGE(0x340000, 0x340003) AM_READWRITE(superchs_stick_r, superchs_stick_w) /* stick int request */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( superchs_cpub_map, AS_PROGRAM, 16, superchs_state )
+ADDRESS_MAP_START(superchs_state::superchs_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x600000, 0x60ffff) AM_DEVWRITE("tc0480scp", tc0480scp_device, word_w) /* Only written upon errors */
@@ -152,7 +152,7 @@ static ADDRESS_MAP_START( superchs_cpub_map, AS_PROGRAM, 16, superchs_state )
AM_RANGE(0xa00000, 0xa001ff) AM_RAM /* Extra road control?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chase3_cpub_map, AS_PROGRAM, 16, superchs_state )
+ADDRESS_MAP_START(superchs_state::chase3_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x400000, 0x40ffff) AM_RAM
diff --git a/src/mame/drivers/supercrd.cpp b/src/mame/drivers/supercrd.cpp
index 646d9b94bb6..d4319884f5c 100644
--- a/src/mame/drivers/supercrd.cpp
+++ b/src/mame/drivers/supercrd.cpp
@@ -195,6 +195,7 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void supercrd(machine_config &config);
+ void supercrd_map(address_map &map);
};
@@ -286,7 +287,7 @@ uint32_t supercrd_state::screen_update_supercrd(screen_device &screen, bitmap_in
* Memory map information *
*****************************/
-static ADDRESS_MAP_START( supercrd_map, AS_PROGRAM, 8, supercrd_state )
+ADDRESS_MAP_START(supercrd_state::supercrd_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(supercrd_videoram_w) AM_SHARE("videoram") // wrong
AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(supercrd_colorram_w) AM_SHARE("colorram") // wrong
diff --git a/src/mame/drivers/superdq.cpp b/src/mame/drivers/superdq.cpp
index 311d4792e8b..b3ac6070ecc 100644
--- a/src/mame/drivers/superdq.cpp
+++ b/src/mame/drivers/superdq.cpp
@@ -63,6 +63,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void superdq(machine_config &config);
+ void superdq_io(address_map &map);
+ void superdq_map(address_map &map);
};
TILE_GET_INFO_MEMBER(superdq_state::get_tile_info)
@@ -206,13 +208,13 @@ WRITE8_MEMBER(superdq_state::superdq_ld_w)
*
*************************************/
-static ADDRESS_MAP_START( superdq_map, AS_PROGRAM, 8, superdq_state )
+ADDRESS_MAP_START(superdq_state::superdq_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x5c00, 0x5fff) AM_RAM_WRITE(superdq_videoram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( superdq_io, AS_IO, 8, superdq_state )
+ADDRESS_MAP_START(superdq_state::superdq_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(superdq_ld_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/superqix.cpp b/src/mame/drivers/superqix.cpp
index fb838ba443f..421cb057cbc 100644
--- a/src/mame/drivers/superqix.cpp
+++ b/src/mame/drivers/superqix.cpp
@@ -979,7 +979,7 @@ MACHINE_START_MEMBER(hotsmash_state, pbillian)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, superqix_state_base )
+ADDRESS_MAP_START(superqix_state_base::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
// the following four ranges are part of a single 6264 64Kibit SRAM chip, called 'VRAM' in POST
@@ -989,7 +989,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, superqix_state_base )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pbillian_port_map, AS_IO, 8, hotsmash_state ) // used by both pbillian and hotsmash
+ADDRESS_MAP_START(hotsmash_state::pbillian_port_map) // used by both pbillian and hotsmash
AM_RANGE(0x0000, 0x01ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette") // 6116 sram near the jamma connector, "COLOR RAM" during POST
//AM_RANGE(0x0200, 0x03ff) AM_RAM // looks like leftover crap from a dev board which had double the color ram? zeroes written here, never read.
AM_RANGE(0x0401, 0x0401) AM_DEVREAD("ay1", ay8910_device, data_r) // ay i/o ports connect to "SYSTEM" and "BUTTONS" inputs which includes mcu semaphore flags
@@ -1002,7 +1002,7 @@ static ADDRESS_MAP_START( pbillian_port_map, AS_IO, 8, hotsmash_state ) // used
AM_RANGE(0x041b, 0x041b) AM_READNOP // input related? but probably not used, may be 'sample has stopped playing' flag? used by prebillian
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sqix_port_map, AS_IO, 8, superqix_state )
+ADDRESS_MAP_START(superqix_state::sqix_port_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x0401, 0x0401) AM_DEVREAD("ay1", ay8910_device, data_r)
AM_RANGE(0x0402, 0x0402) AM_DEVWRITE("ay1", ay8910_device, data_w)
@@ -1021,12 +1021,12 @@ ADDRESS_MAP_END
/* I8751 memory handlers */
-static ADDRESS_MAP_START( sqix_8031_mcu_io_map, AS_IO, 8, superqix_state )
+ADDRESS_MAP_START(superqix_state::sqix_8031_mcu_io_map)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(bootleg_mcu_port1_w)
AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(bootleg_mcu_port3_r, bootleg_mcu_port3_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sqix_mcu_io_map, AS_IO, 8, superqix_state )
+ADDRESS_MAP_START(superqix_state::sqix_mcu_io_map)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READ_PORT("SYSTEM")
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READ_PORT("DSW1")
AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_WRITE(mcu_port2_w)
diff --git a/src/mame/drivers/superslave.cpp b/src/mame/drivers/superslave.cpp
index 7607fd77ca7..b411210f136 100644
--- a/src/mame/drivers/superslave.cpp
+++ b/src/mame/drivers/superslave.cpp
@@ -67,6 +67,8 @@ public:
DECLARE_WRITE8_MEMBER( cmd_w );
void superslave(machine_config &config);
+ void superslave_io(address_map &map);
+ void superslave_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<com8116_device> m_dbrg;
@@ -253,7 +255,7 @@ WRITE8_MEMBER( superslave_state::cmd_w )
// ADDRESS_MAP( superslave_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( superslave_mem, AS_PROGRAM, 8, superslave_state )
+ADDRESS_MAP_START(superslave_state::superslave_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -262,7 +264,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( superslave_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( superslave_io, AS_IO, 8, superslave_state )
+ADDRESS_MAP_START(superslave_state::superslave_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(Z80DART_0_TAG, z80dart_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE(Z80DART_1_TAG, z80dart_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/supertnk.cpp b/src/mame/drivers/supertnk.cpp
index d8716b5f371..74a4787d196 100644
--- a/src/mame/drivers/supertnk.cpp
+++ b/src/mame/drivers/supertnk.cpp
@@ -136,6 +136,8 @@ public:
INTERRUPT_GEN_MEMBER(supertnk_interrupt);
required_device<cpu_device> m_maincpu;
void supertnk(machine_config &config);
+ void supertnk_io_map(address_map &map);
+ void supertnk_map(address_map &map);
};
@@ -304,7 +306,7 @@ void supertnk_state::machine_reset()
*
*************************************/
-static ADDRESS_MAP_START( supertnk_map, AS_PROGRAM, 8, supertnk_state )
+ADDRESS_MAP_START(supertnk_state::supertnk_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x17ff) AM_ROMBANK("bank1")
AM_RANGE(0x1800, 0x1bff) AM_RAM
@@ -324,7 +326,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( supertnk_io_map, AS_IO, 8, supertnk_state )
+ADDRESS_MAP_START(supertnk_state::supertnk_io_map)
AM_RANGE(0x0000, 0x0000) AM_WRITENOP
AM_RANGE(0x0400, 0x0400) AM_WRITE(supertnk_bitplane_select_0_w)
AM_RANGE(0x0401, 0x0401) AM_WRITE(supertnk_bitplane_select_1_w)
diff --git a/src/mame/drivers/superwng.cpp b/src/mame/drivers/superwng.cpp
index 5bd27677708..4a088d12157 100644
--- a/src/mame/drivers/superwng.cpp
+++ b/src/mame/drivers/superwng.cpp
@@ -98,6 +98,8 @@ public:
INTERRUPT_GEN_MEMBER(superwng_nmi_interrupt);
INTERRUPT_GEN_MEMBER(superwng_sound_nmi_assert);
void superwng(machine_config &config);
+ void superwng_map(address_map &map);
+ void superwng_sound_map(address_map &map);
};
WRITE8_MEMBER(superwng_state::superwng_unk_a187_w)
@@ -318,7 +320,7 @@ WRITE8_MEMBER(superwng_state::superwng_hopper_w)
{
}
-static ADDRESS_MAP_START( superwng_map, AS_PROGRAM, 8, superwng_state )
+ADDRESS_MAP_START(superwng_state::superwng_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x6fff) AM_ROMBANK("bank1")
AM_RANGE(0x7000, 0x7fff) AM_RAM
@@ -343,7 +345,7 @@ static ADDRESS_MAP_START( superwng_map, AS_PROGRAM, 8, superwng_state )
AM_RANGE(0xa187, 0xa187) AM_WRITE(superwng_unk_a187_w) // unknown, always(?) 0
ADDRESS_MAP_END
-static ADDRESS_MAP_START( superwng_sound_map, AS_PROGRAM, 8, superwng_state )
+ADDRESS_MAP_START(superwng_state::superwng_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_WRITE(superwng_sound_nmi_clear_w)
diff --git a/src/mame/drivers/supracan.cpp b/src/mame/drivers/supracan.cpp
index 6459c367a68..dceec793535 100644
--- a/src/mame/drivers/supracan.cpp
+++ b/src/mame/drivers/supracan.cpp
@@ -234,6 +234,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void supracan(machine_config &config);
+ void supracan_mem(address_map &map);
+ void supracan_sound_mem(address_map &map);
};
@@ -1116,7 +1118,7 @@ WRITE16_MEMBER( supracan_state::vram_w )
}
-static ADDRESS_MAP_START( supracan_mem, AS_PROGRAM, 16, supracan_state )
+ADDRESS_MAP_START(supracan_state::supracan_mem)
//AM_RANGE( 0x000000, 0x3fffff ) // mapped by the cartslot
AM_RANGE( 0xe80200, 0xe80201 ) AM_READ_PORT("P1")
AM_RANGE( 0xe80202, 0xe80203 ) AM_READ_PORT("P2")
@@ -1227,7 +1229,7 @@ WRITE8_MEMBER( supracan_state::_6502_soundmem_w )
}
}
-static ADDRESS_MAP_START( supracan_sound_mem, AS_PROGRAM, 8, supracan_state )
+ADDRESS_MAP_START(supracan_state::supracan_sound_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(_6502_soundmem_r, _6502_soundmem_w) AM_SHARE("soundram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/suprgolf.cpp b/src/mame/drivers/suprgolf.cpp
index 533c103215c..d24845eef1c 100644
--- a/src/mame/drivers/suprgolf.cpp
+++ b/src/mame/drivers/suprgolf.cpp
@@ -91,6 +91,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void suprgolf(machine_config &config);
+ void io_map(address_map &map);
+ void suprgolf_map(address_map &map);
};
TILE_GET_INFO_MEMBER(suprgolf_state::get_tile_info)
@@ -336,7 +338,7 @@ READ8_MEMBER(suprgolf_state::p2_r)
return (ioport("P2")->read() & 0xf0) | ((ioport("P2_ANALOG")->read() & 0xf));
}
-static ADDRESS_MAP_START( suprgolf_map, AS_PROGRAM, 8, suprgolf_state )
+ADDRESS_MAP_START(suprgolf_state::suprgolf_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x4000) AM_WRITE(rom2_bank_select_w )
@@ -347,7 +349,7 @@ static ADDRESS_MAP_START( suprgolf_map, AS_PROGRAM, 8, suprgolf_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, suprgolf_state )
+ADDRESS_MAP_START(suprgolf_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ppi8255_1", i8255_device, read, write)
diff --git a/src/mame/drivers/suprloco.cpp b/src/mame/drivers/suprloco.cpp
index 54215a0f147..c626495f7a7 100644
--- a/src/mame/drivers/suprloco.cpp
+++ b/src/mame/drivers/suprloco.cpp
@@ -44,7 +44,7 @@ WRITE_LINE_MEMBER(suprloco_state::pc0_w)
machine().output().set_lamp_value(0, state); // ???
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, suprloco_state )
+ADDRESS_MAP_START(suprloco_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc1ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xc200, 0xc7ff) AM_WRITENOP
@@ -60,12 +60,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, suprloco_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, suprloco_state )
+ADDRESS_MAP_START(suprloco_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROM AM_REGION("maincpu", 0x8000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, suprloco_state )
+ADDRESS_MAP_START(suprloco_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_DEVWRITE("sn1", sn76496_device, write)
@@ -178,7 +178,7 @@ MACHINE_CONFIG_START(suprloco_state::suprloco)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", SEGA_315_5015, 4000000) /* 4 MHz (?) */
MCFG_CPU_PROGRAM_MAP(main_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", suprloco_state, irq0_line_hold)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
diff --git a/src/mame/drivers/suprnova.cpp b/src/mame/drivers/suprnova.cpp
index bb878365e3d..c3c7598a5b5 100644
--- a/src/mame/drivers/suprnova.cpp
+++ b/src/mame/drivers/suprnova.cpp
@@ -722,7 +722,7 @@ WRITE32_MEMBER(skns_state::v3t_w)
m_btiles[offset*4+3] = (data & 0x000000ff) >> 0;
}
-static ADDRESS_MAP_START( skns_map, AS_PROGRAM, 32, skns_state )
+ADDRESS_MAP_START(skns_state::skns_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM /* BIOS ROM */
AM_RANGE(0x00400000, 0x0040000f) AM_WRITE(io_w) /* I/O Write */
AM_RANGE(0x00400000, 0x00400003) AM_READ_PORT("400000")
diff --git a/src/mame/drivers/suprridr.cpp b/src/mame/drivers/suprridr.cpp
index e25d8607ba3..27df0975849 100644
--- a/src/mame/drivers/suprridr.cpp
+++ b/src/mame/drivers/suprridr.cpp
@@ -143,7 +143,7 @@ WRITE8_MEMBER(suprridr_state::coin_lock_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, suprridr_state )
+ADDRESS_MAP_START(suprridr_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(bgram_w) AM_SHARE("bgram")
@@ -165,7 +165,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, suprridr_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_portmap, AS_IO, 8, suprridr_state )
+ADDRESS_MAP_START(suprridr_state::main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
@@ -178,13 +178,13 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, suprridr_state )
+ADDRESS_MAP_START(suprridr_state::sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x3800, 0x3bff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, suprridr_state )
+ADDRESS_MAP_START(suprridr_state::sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("soundlatch", generic_latch_8_device, acknowledge_w)
AM_RANGE(0x8c, 0x8d) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/suprslam.cpp b/src/mame/drivers/suprslam.cpp
index 05178d763b2..78081a6573b 100644
--- a/src/mame/drivers/suprslam.cpp
+++ b/src/mame/drivers/suprslam.cpp
@@ -102,7 +102,7 @@ WRITE8_MEMBER(suprslam_state::suprslam_sh_bankswitch_w)
/*** MEMORY MAPS *************************************************************/
-static ADDRESS_MAP_START( suprslam_map, AS_PROGRAM, 16, suprslam_state )
+ADDRESS_MAP_START(suprslam_state::suprslam_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0xfb0000, 0xfb1fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xfc0000, 0xfcffff) AM_RAM AM_SHARE("sp_videoram")
@@ -119,13 +119,13 @@ static ADDRESS_MAP_START( suprslam_map, AS_PROGRAM, 16, suprslam_state )
AM_RANGE(0xfff000, 0xfff01f) AM_DEVREADWRITE8("io", vs9209_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, suprslam_state )
+ADDRESS_MAP_START(suprslam_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, suprslam_state )
+ADDRESS_MAP_START(suprslam_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(suprslam_sh_bankswitch_w)
AM_RANGE(0x04, 0x04) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
diff --git a/src/mame/drivers/supstarf.cpp b/src/mame/drivers/supstarf.cpp
index fd0e617b7da..f89f99f5240 100644
--- a/src/mame/drivers/supstarf.cpp
+++ b/src/mame/drivers/supstarf.cpp
@@ -39,6 +39,10 @@ public:
DECLARE_WRITE8_MEMBER(lights_b_w);
void supstarf(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -53,22 +57,22 @@ private:
bool m_latch_select;
};
-static ADDRESS_MAP_START(main_map, AS_PROGRAM, 8, supstarf_state)
+ADDRESS_MAP_START(supstarf_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch1", i8212_device, read) AM_DEVWRITE("soundlatch2", i8212_device, strobe)
AM_RANGE(0xc000, 0xc7ff) AM_RAM // 5517 (2Kx8) at IC11
ADDRESS_MAP_END
-static ADDRESS_MAP_START(main_io_map, AS_IO, 8, supstarf_state)
+ADDRESS_MAP_START(supstarf_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_WRITE(driver_clk_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sound_map, AS_PROGRAM, 8, supstarf_state)
+ADDRESS_MAP_START(supstarf_state::sound_map)
AM_RANGE(0x000, 0xfff) AM_ROM // external EPROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sound_io_map, AS_IO, 8, supstarf_state)
+ADDRESS_MAP_START(supstarf_state::sound_io_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(psg_latch_r, psg_latch_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/surpratk.cpp b/src/mame/drivers/surpratk.cpp
index 7489bb10791..d2221d3c425 100644
--- a/src/mame/drivers/surpratk.cpp
+++ b/src/mame/drivers/surpratk.cpp
@@ -58,7 +58,7 @@ WRITE8_MEMBER(surpratk_state::surpratk_5fc0_w)
/********************************************/
-static ADDRESS_MAP_START( surpratk_map, AS_PROGRAM, 8, surpratk_state )
+ADDRESS_MAP_START(surpratk_state::surpratk_map)
AM_RANGE(0x0000, 0x07ff) AM_DEVICE("bank0000", address_map_bank_device, amap8)
AM_RANGE(0x0800, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") /* banked ROM */
@@ -76,7 +76,7 @@ static ADDRESS_MAP_START( surpratk_map, AS_PROGRAM, 8, surpratk_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x38000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank0000_map, AS_PROGRAM, 8, surpratk_state )
+ADDRESS_MAP_START(surpratk_state::bank0000_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("k053244", k05324x_device, k053245_r, k053245_w)
AM_RANGE(0x1000, 0x1fff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
diff --git a/src/mame/drivers/sv8000.cpp b/src/mame/drivers/sv8000.cpp
index d1b4cc5d4a4..3c292cb849a 100644
--- a/src/mame/drivers/sv8000.cpp
+++ b/src/mame/drivers/sv8000.cpp
@@ -68,6 +68,8 @@ public:
DECLARE_READ8_MEMBER( mc6847_videoram_r );
void sv8000(machine_config &config);
+ void sv8000_io(address_map &map);
+ void sv8000_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -95,7 +97,7 @@ private:
};
-static ADDRESS_MAP_START(sv8000_mem, AS_PROGRAM, 8, sv8000_state)
+ADDRESS_MAP_START(sv8000_state::sv8000_mem)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x0000, 0x0fff) // mapped by the cartslot
AM_RANGE( 0x8000, 0x83ff ) AM_RAM // Work RAM??
@@ -103,7 +105,7 @@ static ADDRESS_MAP_START(sv8000_mem, AS_PROGRAM, 8, sv8000_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sv8000_io, AS_IO, 8, sv8000_state)
+ADDRESS_MAP_START(sv8000_state::sv8000_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("i8255", i8255_device, read, write)
diff --git a/src/mame/drivers/svi318.cpp b/src/mame/drivers/svi318.cpp
index 4003549f9da..7dff385066a 100644
--- a/src/mame/drivers/svi318.cpp
+++ b/src/mame/drivers/svi318.cpp
@@ -95,6 +95,9 @@ public:
void svi318(machine_config &config);
void svi318n(machine_config &config);
void svi328(machine_config &config);
+ void svi3x8_io(address_map &map);
+ void svi3x8_io_bank(address_map &map);
+ void svi3x8_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -130,17 +133,17 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( svi3x8_mem, AS_PROGRAM, 8, svi3x8_state )
+ADDRESS_MAP_START(svi3x8_state::svi3x8_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mreq_r, mreq_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( svi3x8_io, AS_IO, 8, svi3x8_state )
+ADDRESS_MAP_START(svi3x8_state::svi3x8_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_DEVICE("io", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( svi3x8_io_bank, AS_PROGRAM, 8, svi3x8_state )
+ADDRESS_MAP_START(svi3x8_state::svi3x8_io_bank)
AM_RANGE(0x000, 0x0ff) AM_DEVREADWRITE("exp", svi_expander_device, iorq_r, iorq_w)
AM_RANGE(0x100, 0x17f) AM_DEVREADWRITE("exp", svi_expander_device, iorq_r, iorq_w)
AM_RANGE(0x180, 0x180) AM_MIRROR(0x22) AM_DEVWRITE("vdp", tms9928a_device, vram_write)
diff --git a/src/mame/drivers/svision.cpp b/src/mame/drivers/svision.cpp
index 908159c3fc9..d67e80137bd 100644
--- a/src/mame/drivers/svision.cpp
+++ b/src/mame/drivers/svision.cpp
@@ -259,7 +259,7 @@ WRITE8_MEMBER(svision_state::tvlink_w)
}
}
-static ADDRESS_MAP_START( svision_mem , AS_PROGRAM, 8, svision_state )
+ADDRESS_MAP_START(svision_state::svision_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(svision_r, svision_w) AM_SHARE("reg")
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("videoram")
@@ -268,7 +268,7 @@ static ADDRESS_MAP_START( svision_mem , AS_PROGRAM, 8, svision_state )
AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tvlink_mem , AS_PROGRAM, 8, svision_state )
+ADDRESS_MAP_START(svision_state::tvlink_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_READWRITE(tvlink_r, tvlink_w) AM_SHARE("reg")
AM_RANGE(0x4000, 0x5fff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/svmu.cpp b/src/mame/drivers/svmu.cpp
index 21c0b195835..3ace27fdbbe 100644
--- a/src/mame/drivers/svmu.cpp
+++ b/src/mame/drivers/svmu.cpp
@@ -55,6 +55,8 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER( svmu );
void svmu(machine_config &config);
+ void svmu_io_mem(address_map &map);
+ void svmu_mem(address_map &map);
private:
uint8_t m_page;
};
@@ -123,11 +125,11 @@ READ8_MEMBER(svmu_state::p7_r)
}
-static ADDRESS_MAP_START(svmu_mem, AS_PROGRAM, 8, svmu_state)
+ADDRESS_MAP_START(svmu_state::svmu_mem)
AM_RANGE( 0x0000, 0xffff ) AM_READWRITE(prog_r, prog_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(svmu_io_mem, AS_IO, 8, svmu_state)
+ADDRESS_MAP_START(svmu_state::svmu_io_mem)
AM_RANGE( LC8670_PORT1, LC8670_PORT1 ) AM_READWRITE(p1_r, p1_w)
AM_RANGE( LC8670_PORT3, LC8670_PORT3 ) AM_READ_PORT("P3")
AM_RANGE( LC8670_PORT7, LC8670_PORT7 ) AM_READ(p7_r)
diff --git a/src/mame/drivers/swtpc.cpp b/src/mame/drivers/swtpc.cpp
index d118785f773..7eaf6de0cd6 100644
--- a/src/mame/drivers/swtpc.cpp
+++ b/src/mame/drivers/swtpc.cpp
@@ -60,13 +60,14 @@ public:
void swtpcm(machine_config &config);
void swtpc(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
required_device<mc14411_device> m_brg;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, swtpc_state)
+ADDRESS_MAP_START(swtpc_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x8000, 0x8003) AM_MIRROR(0x1fc0) AM_DEVREADWRITE("io0", ss50_interface_port_device, read, write)
AM_RANGE(0x8004, 0x8007) AM_MIRROR(0x1fc0) AM_DEVREADWRITE("io1", ss50_interface_port_device, read, write)
diff --git a/src/mame/drivers/swtpc09.cpp b/src/mame/drivers/swtpc09.cpp
index ec1bfe254fe..9083102ca7e 100644
--- a/src/mame/drivers/swtpc09.cpp
+++ b/src/mame/drivers/swtpc09.cpp
@@ -60,13 +60,13 @@
/* Address map is dynamically setup when DAT memory is written to */
/* only ROM from FF00-FFFF and DAT memory at FFF0-FFFF (write only) is guaranteed always*/
-static ADDRESS_MAP_START(mp09_mem, AS_PROGRAM, 8, swtpc09_state)
+ADDRESS_MAP_START(swtpc09_state::mp09_mem)
AM_RANGE(0x0000, 0xfeff) AM_READWRITE(main_r, main_w)
AM_RANGE(0xff00, 0xffff) AM_ROM AM_REGION("maincpu", 0xff00)
AM_RANGE(0xff00, 0xff0f) AM_MIRROR(0xf0) AM_WRITEONLY AM_SHARE("dat")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(flex_dmf2_mem, AS_PROGRAM, 8, swtpc09_state)
+ADDRESS_MAP_START(swtpc09_state::flex_dmf2_mem)
AM_RANGE(0x00000, 0xfffff) AM_RAM AM_SHARE("mainram") // by default everything is ram, 1MB ram emulated
AM_RANGE(0xe000, 0xe003) AM_MIRROR(0xf0000) AM_NOP
AM_RANGE(0xe004, 0xe005) AM_MIRROR(0xf0000) AM_DEVREADWRITE("acia", acia6850_device, read, write)
@@ -80,7 +80,7 @@ static ADDRESS_MAP_START(flex_dmf2_mem, AS_PROGRAM, 8, swtpc09_state)
AM_RANGE(0xf800, 0xffff) AM_MIRROR(0xf0000) AM_ROM AM_REGION("maincpu", 0xf800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(flex_dc4_piaide_mem, AS_PROGRAM, 8, swtpc09_state)
+ADDRESS_MAP_START(swtpc09_state::flex_dc4_piaide_mem)
AM_RANGE(0x00000, 0xfffff) AM_RAM AM_SHARE("mainram") // by default everything is ram, 1MB ram emulated
AM_RANGE(0xe000, 0xe003) AM_MIRROR(0xf0000) AM_NOP
AM_RANGE(0xe004, 0xe005) AM_MIRROR(0xf0000) AM_DEVREADWRITE("acia", acia6850_device, read, write)
@@ -101,7 +101,7 @@ static ADDRESS_MAP_START(flex_dc4_piaide_mem, AS_PROGRAM, 8, swtpc09_state)
AM_RANGE(0xf800, 0xffff) AM_MIRROR(0xf0000) AM_ROM AM_REGION("maincpu", 0xf800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(uniflex_dmf2_mem, AS_PROGRAM, 8, swtpc09_state)
+ADDRESS_MAP_START(swtpc09_state::uniflex_dmf2_mem)
AM_RANGE(0x00000, 0xfffff) AM_RAM AM_SHARE("mainram") // by default everything is ram, 1MB ram emulated
AM_RANGE(0xe000, 0xe001) AM_MIRROR(0xf0000) AM_DEVREADWRITE("acia", acia6850_device, read, write)
AM_RANGE(0xe002, 0xe07f) AM_MIRROR(0xf0000) AM_NOP
@@ -115,7 +115,7 @@ static ADDRESS_MAP_START(uniflex_dmf2_mem, AS_PROGRAM, 8, swtpc09_state)
AM_RANGE(0xf800, 0xffff) AM_MIRROR(0xf0000) AM_ROM AM_REGION("maincpu", 0xf800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(uniflex_dmf3_mem, AS_PROGRAM, 8, swtpc09_state)
+ADDRESS_MAP_START(swtpc09_state::uniflex_dmf3_mem)
AM_RANGE(0x00000, 0xfffff) AM_RAM AM_SHARE("mainram") // by default everything is ram, 1MB ram emulated
AM_RANGE(0xe000, 0xe001) AM_MIRROR(0xf0000) AM_DEVREADWRITE("acia", acia6850_device, read, write)
AM_RANGE(0xe002, 0xe07f) AM_MIRROR(0xf0000) AM_NOP
diff --git a/src/mame/drivers/swyft.cpp b/src/mame/drivers/swyft.cpp
index ec9888a20ab..78605d70189 100644
--- a/src/mame/drivers/swyft.cpp
+++ b/src/mame/drivers/swyft.cpp
@@ -380,6 +380,7 @@ public:
uint8_t m_floppy_control;
void swyft(machine_config &config);
+ void swyft_mem(address_map &map);
//protected:
//virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
};
@@ -569,7 +570,7 @@ x x x x 1 1 ?1? ?0? ? 1 0 0 x x * * * * x x
*/
-static ADDRESS_MAP_START(swyft_mem, AS_PROGRAM, 8, swyft_state)
+ADDRESS_MAP_START(swyft_state::swyft_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x00ffff) AM_ROM // 64 KB ROM
diff --git a/src/mame/drivers/sym1.cpp b/src/mame/drivers/sym1.cpp
index d1207d3893a..5dd82d2e97a 100644
--- a/src/mame/drivers/sym1.cpp
+++ b/src/mame/drivers/sym1.cpp
@@ -78,6 +78,7 @@ public:
DECLARE_WRITE8_MEMBER(via3_a_w);
void sym1(machine_config &config);
+ void sym1_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
@@ -299,7 +300,7 @@ void sym1_state::machine_reset()
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( sym1_map, AS_PROGRAM, 8, sym1_state )
+ADDRESS_MAP_START(sym1_state::sym1_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM // U12/U13 RAM
AM_RANGE(0x0400, 0x07ff) AM_RAMBANK("bank2") AM_SHARE("ram_1k")
AM_RANGE(0x0800, 0x0bff) AM_RAMBANK("bank3") AM_SHARE("ram_2k")
diff --git a/src/mame/drivers/symbolics.cpp b/src/mame/drivers/symbolics.cpp
index 852dd8d8436..430bc0d26c0 100644
--- a/src/mame/drivers/symbolics.cpp
+++ b/src/mame/drivers/symbolics.cpp
@@ -106,6 +106,8 @@ public:
virtual void machine_reset() override;
void symbolics(machine_config &config);
+ void m68k_io(address_map &map);
+ void m68k_mem(address_map &map);
//protected:
// virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -244,7 +246,7 @@ currently dies at context switch code loaded to ram around 38EE0, see patent 488
*/
-static ADDRESS_MAP_START(m68k_mem, AS_PROGRAM, 16, symbolics_state )
+ADDRESS_MAP_START(symbolics_state::m68k_mem)
ADDRESS_MAP_UNMAP_HIGH
//AM_RANGE(0x000000, 0x01ffff) AM_ROM /* ROM lives here */
AM_RANGE(0x000000, 0x00bfff) AM_ROM
@@ -266,7 +268,7 @@ static ADDRESS_MAP_START(m68k_mem, AS_PROGRAM, 16, symbolics_state )
//FF018A is writable, gets 0x5555 written to it
ADDRESS_MAP_END
-static ADDRESS_MAP_START(m68k_io, AS_IO, 16, symbolics_state )
+ADDRESS_MAP_START(symbolics_state::m68k_io)
ADDRESS_MAP_END
/******************************************************************************
diff --git a/src/mame/drivers/sys2900.cpp b/src/mame/drivers/sys2900.cpp
index 43471de1431..25049ac5321 100644
--- a/src/mame/drivers/sys2900.cpp
+++ b/src/mame/drivers/sys2900.cpp
@@ -65,6 +65,8 @@ public:
DECLARE_DRIVER_INIT(sys2900);
uint32_t screen_update_sys2900(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sys2900(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
virtual void video_start() override;
@@ -75,7 +77,7 @@ protected:
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, sys2900_state)
+ADDRESS_MAP_START(sys2900_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x07ff ) AM_RAMBANK("boot")
AM_RANGE( 0x0800, 0xefff ) AM_RAM
@@ -83,7 +85,7 @@ static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, sys2900_state)
AM_RANGE( 0xf800, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, sys2900_state)
+ADDRESS_MAP_START(sys2900_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("sio1", z80sio_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/drivers/sys9002.cpp b/src/mame/drivers/sys9002.cpp
index abe3d721812..6c30d8296e5 100644
--- a/src/mame/drivers/sys9002.cpp
+++ b/src/mame/drivers/sys9002.cpp
@@ -39,6 +39,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void sys9002(machine_config &config);
+ void sys9002_io(address_map &map);
+ void sys9002_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_shared_ptr<uint8_t> m_p_videoram;
@@ -46,7 +48,7 @@ private:
};
-static ADDRESS_MAP_START(sys9002_mem, AS_PROGRAM, 8, sys9002_state)
+ADDRESS_MAP_START(sys9002_state::sys9002_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) AM_ROM // 4 * 4K ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM // 4 * 2k RAM
@@ -54,7 +56,7 @@ static ADDRESS_MAP_START(sys9002_mem, AS_PROGRAM, 8, sys9002_state)
AM_RANGE(0xc000, 0xc07f) AM_RAM // ??
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sys9002_io, AS_IO, 8, sys9002_state)
+ADDRESS_MAP_START(sys9002_state::sys9002_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0x04, 0x04) AM_DEVREADWRITE("crtc", mc6845_device, status_r, address_w) // left commented out as mame freezes after about 2 seconds
diff --git a/src/mame/drivers/systec.cpp b/src/mame/drivers/systec.cpp
index dad27f48089..ce1eb5e1bdd 100644
--- a/src/mame/drivers/systec.cpp
+++ b/src/mame/drivers/systec.cpp
@@ -49,17 +49,19 @@ public:
{ }
void systec(machine_config &config);
+ void systec_io(address_map &map);
+ void systec_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(systec_mem, AS_PROGRAM, 8, systec_state)
+ADDRESS_MAP_START(systec_state::systec_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_RAM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(systec_io, AS_IO, 8, systec_state)
+ADDRESS_MAP_START(systec_state::systec_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x68, 0x6b) // fdc?
AM_RANGE(0x6c, 0x6c) // motor control?
diff --git a/src/mame/drivers/system1.cpp b/src/mame/drivers/system1.cpp
index 19d1995ad98..89378a60d2a 100644
--- a/src/mame/drivers/system1.cpp
+++ b/src/mame/drivers/system1.cpp
@@ -741,7 +741,7 @@ WRITE8_MEMBER(system1_state::nobb_outport24_w)
*************************************/
/* main memory map */
-static ADDRESS_MAP_START( system1_map, AS_PROGRAM, 8, system1_state )
+ADDRESS_MAP_START(system1_state::system1_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("ram")
@@ -754,7 +754,7 @@ static ADDRESS_MAP_START( system1_map, AS_PROGRAM, 8, system1_state )
AM_RANGE(0xfc00, 0xffff) AM_WRITE(system1_sprite_collision_reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, system1_state )
+ADDRESS_MAP_START(system1_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("ram")
@@ -762,7 +762,7 @@ static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, system1_state )
AM_RANGE(0xd800, 0xdfff) AM_RAM_WRITE(system1_paletteram_w) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( banked_decrypted_opcodes_map, AS_OPCODES, 8, system1_state )
+ADDRESS_MAP_START(system1_state::banked_decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank0d")
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1d")
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("ram")
@@ -771,7 +771,7 @@ static ADDRESS_MAP_START( banked_decrypted_opcodes_map, AS_OPCODES, 8, system1_s
ADDRESS_MAP_END
/* same as normal System 1 except address map is shuffled (RAM/collision are swapped) */
-static ADDRESS_MAP_START( nobo_map, AS_PROGRAM, 8, system1_state )
+ADDRESS_MAP_START(system1_state::nobo_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xc3ff) AM_READWRITE(system1_mixer_collision_r, system1_mixer_collision_w)
@@ -785,7 +785,7 @@ static ADDRESS_MAP_START( nobo_map, AS_PROGRAM, 8, system1_state )
ADDRESS_MAP_END
/* I/O map for systems with an 8255 PPI */
-static ADDRESS_MAP_START( system1_ppi_io_map, AS_IO, 8, system1_state )
+ADDRESS_MAP_START(system1_state::system1_ppi_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x03) AM_READ_PORT("P1")
AM_RANGE(0x04, 0x04) AM_MIRROR(0x03) AM_READ_PORT("P2")
@@ -797,7 +797,7 @@ static ADDRESS_MAP_START( system1_ppi_io_map, AS_IO, 8, system1_state )
ADDRESS_MAP_END
/* I/O map for systems with a Z80 PIO chip */
-static ADDRESS_MAP_START( system1_pio_io_map, AS_IO, 8, system1_state )
+ADDRESS_MAP_START(system1_state::system1_pio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x03) AM_READ_PORT("P1")
AM_RANGE(0x04, 0x04) AM_MIRROR(0x03) AM_READ_PORT("P2")
@@ -816,7 +816,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, system1_state )
+ADDRESS_MAP_START(system1_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1fff) AM_DEVWRITE("sn1", sn76489a_device, write)
@@ -832,14 +832,14 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, system1_state )
+ADDRESS_MAP_START(system1_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mcu_io_r, mcu_io_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(mcu_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nob_mcu_io_map, AS_IO, 8, system1_state )
+ADDRESS_MAP_START(system1_state::nob_mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_RAM AM_SHARE("nob_mcu_latch")
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITEONLY AM_SHARE("nob_mcu_status")
@@ -2217,19 +2217,19 @@ MACHINE_CONFIG_END
#define ENCRYPTED_SYS1PPI_MAPS \
MCFG_CPU_PROGRAM_MAP(system1_map) \
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map) \
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map) \
MCFG_CPU_IO_MAP(system1_ppi_io_map) \
MCFG_CPU_VBLANK_INT_DRIVER("screen", system1_state, irq0_line_hold)
#define ENCRYPTED_SYS1PIO_MAPS \
MCFG_CPU_PROGRAM_MAP(system1_map) \
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map) \
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map) \
MCFG_CPU_IO_MAP(system1_pio_io_map) \
MCFG_CPU_VBLANK_INT_DRIVER("screen", system1_state, irq0_line_hold)
#define ENCRYPTED_SYS2_MC8123_MAPS \
MCFG_CPU_PROGRAM_MAP(system1_map) \
- MCFG_CPU_DECRYPTED_OPCODES_MAP(banked_decrypted_opcodes_map) \
+ MCFG_CPU_OPCODES_MAP(banked_decrypted_opcodes_map) \
MCFG_CPU_IO_MAP(system1_ppi_io_map) \
MCFG_CPU_VBLANK_INT_DRIVER("screen", system1_state, irq0_line_hold)
@@ -2446,7 +2446,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(system1_state::sys2x, sys2)
MCFG_DEVICE_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(system1_state::sys2_315_5177, sys2)
@@ -2481,7 +2481,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(system1_state::sys2xboot, sys2)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(banked_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(banked_decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(system1_state::sys2m, sys2)
@@ -2503,7 +2503,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(system1_state::sys2rowxboot, sys2row)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(banked_decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(banked_decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(system1_state::sys2rowm, sys2row)
diff --git a/src/mame/drivers/system16.cpp b/src/mame/drivers/system16.cpp
index 5d482508e7b..8e585f6a9dd 100644
--- a/src/mame/drivers/system16.cpp
+++ b/src/mame/drivers/system16.cpp
@@ -138,7 +138,7 @@ WRITE8_MEMBER(segas1x_bootleg_state::soundbank_msm_w)
}
-static ADDRESS_MAP_START( shinobib_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::shinobib_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM // tilemap ram on the original, used as a buffer on the bootlegs
AM_RANGE(0x410000, 0x410fff) AM_RAM AM_SHARE("textram")
@@ -183,7 +183,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::sys16_coinctrl_w)
}
}
-static ADDRESS_MAP_START( passshtb_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::passshtb_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x400000, 0x407fff) AM_RAM // tilemap ram on original, buffer on bootleg
@@ -263,7 +263,7 @@ READ16_MEMBER(segas1x_bootleg_state::passht4b_io3_r)
return m_passht4b_io3_val;
}
-static ADDRESS_MAP_START( passht4b_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::passht4b_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x400000, 0x407fff) AM_RAM // tilemap ram on original, buffer on bootleg
AM_RANGE(0x409000, 0x409fff) AM_RAM AM_SHARE("bg0_tileram")
@@ -310,7 +310,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::sys16_tilebank_w)
}
}
-static ADDRESS_MAP_START( wb3bbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::wb3bbl_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x3f0000, 0x3fffff) AM_WRITE(sys16_tilebank_w)
AM_RANGE(0x400000, 0x407fff) AM_RAM // tilemap ram on the original, used as a buffer on the bootlegs
@@ -418,7 +418,7 @@ WRITE8_MEMBER(segas1x_bootleg_state::tturfbl_soundbank_w)
}
}
-static ADDRESS_MAP_START(tturfbl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::tturfbl_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_READ(tturfbl_soundbank_r)
AM_RANGE(0xe000, 0xe000) AM_WRITE(tturfbl_soundbank_w)
@@ -427,7 +427,7 @@ static ADDRESS_MAP_START(tturfbl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tturfbl_sound_io_map, AS_IO, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::tturfbl_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x40, 0x40) AM_WRITENOP
@@ -436,7 +436,7 @@ ADDRESS_MAP_END
/*******************************************************************************/
-static ADDRESS_MAP_START(shinobi_datsu_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::shinobi_datsu_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank")
AM_RANGE(0xe000, 0xe001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
@@ -459,13 +459,13 @@ WRITE_LINE_MEMBER(segas1x_bootleg_state::datsu_msm5205_callback)
/*******************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe800, 0xe800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0xc0, 0xc0) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -473,7 +473,7 @@ ADDRESS_MAP_END
// 7759
-static ADDRESS_MAP_START( sound_7759_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sound_7759_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xdfff) AM_ROMBANK("bank1")
AM_RANGE(0xe800, 0xe800) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -491,7 +491,7 @@ WRITE8_MEMBER(segas1x_bootleg_state::upd7759_bank_w)//*
}
-static ADDRESS_MAP_START( sound_7759_io_map, AS_IO, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sound_7759_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x40, 0x40) AM_WRITE(upd7759_bank_w)
@@ -584,7 +584,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::s16bl_bgscrolly_w)
}
-static ADDRESS_MAP_START( goldnaxeb1_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::goldnaxeb1_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(sys16_textram_w) AM_SHARE("textram")
@@ -609,7 +609,7 @@ static ADDRESS_MAP_START( goldnaxeb1_map, AS_PROGRAM, 16, segas1x_bootleg_state
AM_RANGE(0xffc000, 0xffffff) AM_RAM // work ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bayrouteb1_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::bayrouteb1_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x500000, 0x503fff) AM_RAM // work ram
AM_RANGE(0x600000, 0x600fff) AM_RAM AM_SHARE("sprites")
@@ -630,7 +630,7 @@ static ADDRESS_MAP_START( bayrouteb1_map, AS_PROGRAM, 16, segas1x_bootleg_state
AM_RANGE(0x902006, 0x902007) AM_WRITE(sound_command_irq_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::decrypted_opcodes_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
@@ -678,7 +678,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::datsu_page3_w)
datsu_set_pages();
}
-static ADDRESS_MAP_START( bayrouteb2_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::bayrouteb2_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x500000, 0x503fff) AM_RAM // work ram
AM_RANGE(0x600000, 0x600fff) AM_RAM AM_SHARE("sprites")
@@ -702,7 +702,7 @@ static ADDRESS_MAP_START( bayrouteb2_map, AS_PROGRAM, 16, segas1x_bootleg_state
AM_RANGE(0x901006, 0x901007) AM_READ_PORT("P2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dduxbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::dduxbl_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x3f0000, 0x3fffff) AM_WRITE(sys16_tilebank_w)
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
@@ -795,7 +795,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::goldnaxeb2_bgpage_w)
set_bg_page(page ^ 0xffff);
}
-static ADDRESS_MAP_START( goldnaxeb2_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::goldnaxeb2_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(sys16_textram_w) AM_SHARE("textram")
@@ -831,7 +831,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::eswat_tilebank0_w)
}
}
-static ADDRESS_MAP_START( eswatbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::eswatbl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x3e2000, 0x3e2001) AM_WRITE(eswat_tilebank0_w) // external tile bank ( > 0x4000 tiles )
@@ -858,7 +858,7 @@ static ADDRESS_MAP_START( eswatbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM // work ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eswatbl2_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::eswatbl2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x123420, 0x12343f) AM_WRITENOP // written on boot only
AM_RANGE(0x200000, 0x200fff) AM_RAM AM_SHARE("sprites")
@@ -888,7 +888,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( tetrisbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::tetrisbl_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(sys16_textram_w) AM_SHARE("textram")
@@ -922,7 +922,7 @@ READ16_MEMBER(segas1x_bootleg_state::beautyb_unkx_r)
return m_beautyb_unkx;
}
-static ADDRESS_MAP_START( beautyb_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::beautyb_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_WRITENOP
AM_RANGE(0x010000, 0x03ffff) AM_WRITENOP
@@ -956,7 +956,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( tturfbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::tturfbl_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM // work ram
AM_RANGE(0x300000, 0x300fff) AM_RAM AM_SHARE("sprites")
@@ -1011,7 +1011,7 @@ READ8_MEMBER(segas1x_bootleg_state::system18_bank_r)
return 0xff;
}
-static ADDRESS_MAP_START( sound_18_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sound_18_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_READ(system18_bank_r)
/**** D/A register ****/
@@ -1035,7 +1035,7 @@ WRITE8_MEMBER(segas1x_bootleg_state::sys18_soundbank_w)
m_sound_bank = nullptr;
}
-static ADDRESS_MAP_START( sound_18_io_map, AS_IO, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sound_18_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("3438.0", ym3438_device, read, write)
AM_RANGE(0x90, 0x93) AM_DEVREADWRITE("3438.1", ym3438_device, read, write)
@@ -1087,7 +1087,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( shdancbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::shdancbl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(sys16_textram_w) AM_SHARE("textram")
@@ -1109,7 +1109,7 @@ static ADDRESS_MAP_START( shdancbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shdancbla_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::shdancbla_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(sys16_textram_w) AM_SHARE("textram")
@@ -1210,7 +1210,7 @@ WRITE8_MEMBER(segas1x_bootleg_state::shdancbl_bankctrl_w)
}
}
-static ADDRESS_MAP_START(shdancbl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::shdancbl_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_READ(shdancbl_soundbank_r)
AM_RANGE(0xc000, 0xc00f) AM_WRITENOP
@@ -1224,14 +1224,14 @@ static ADDRESS_MAP_START(shdancbl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_stat
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shdancbl_sound_io_map, AS_IO, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::shdancbl_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xa0, 0xbf) AM_WRITENOP
AM_RANGE(0xc0, 0xdf) AM_READNOP
ADDRESS_MAP_END
// shdancbla
-static ADDRESS_MAP_START(shdancbla_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::shdancbla_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_READ(shdancbl_soundbank_r)
@@ -1254,7 +1254,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( mwalkbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::mwalkbl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(sys16_textram_w) AM_SHARE("textram")
@@ -1302,7 +1302,7 @@ WRITE8_MEMBER(segas1x_bootleg_state::sys18bl_okibank_w) // TODO: verify correctn
}
/* bootleg doesn't have real vdp or i/o */
-static ADDRESS_MAP_START( astormbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::astormbl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM_WRITE(sys16_tileram_w) AM_SHARE("tileram")
AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(sys16_textram_w) AM_SHARE("textram")
@@ -1336,7 +1336,7 @@ static ADDRESS_MAP_START( astormbl_map, AS_PROGRAM, 16, segas1x_bootleg_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(sys18bl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sys18bl_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x9000, 0x9000) AM_WRITE(sys18bl_okibank_w)
AM_RANGE(0x9800, 0x9800) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -1344,7 +1344,7 @@ static ADDRESS_MAP_START(sys18bl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sys18bl_oki_map, 0, 8, segas1x_bootleg_state )
+ADDRESS_MAP_START(segas1x_bootleg_state::sys18bl_oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
@@ -1366,7 +1366,7 @@ WRITE16_MEMBER(segas1x_bootleg_state::ddcrewbl_spritebank_w)
// todo: this
-static ADDRESS_MAP_START(ddcrewbl_map, AS_PROGRAM, 16, segas1x_bootleg_state)
+ADDRESS_MAP_START(segas1x_bootleg_state::ddcrewbl_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM // ok
AM_RANGE(0x200000, 0x27ffff) AM_ROM // ok
@@ -2247,7 +2247,7 @@ MACHINE_CONFIG_START(segas1x_bootleg_state::goldnaxeb_base)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M68000, 10000000)
MCFG_CPU_PROGRAM_MAP(goldnaxeb1_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", segas1x_bootleg_state, irq4_line_hold)
diff --git a/src/mame/drivers/tagteam.cpp b/src/mame/drivers/tagteam.cpp
index 90274ad8f33..2811347c761 100644
--- a/src/mame/drivers/tagteam.cpp
+++ b/src/mame/drivers/tagteam.cpp
@@ -47,7 +47,7 @@ WRITE8_MEMBER(tagteam_state::irq_clear_w)
m_maincpu->set_input_line(M6502_IRQ_LINE, CLEAR_LINE);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tagteam_state )
+ADDRESS_MAP_START(tagteam_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x2000) AM_READ_PORT("P2") AM_WRITE(flipscreen_w)
AM_RANGE(0x2001, 0x2001) AM_READ_PORT("P1") AM_WRITE(control_w)
@@ -67,7 +67,7 @@ WRITE8_MEMBER(tagteam_state::sound_nmi_mask_w)
}
/* Same as Syusse Oozumou */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tagteam_state )
+ADDRESS_MAP_START(tagteam_state::sound_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
AM_RANGE(0x2002, 0x2003) AM_DEVWRITE("ay2", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/tail2nos.cpp b/src/mame/drivers/tail2nos.cpp
index 8ad19cfa1cb..5eb7237b3aa 100644
--- a/src/mame/drivers/tail2nos.cpp
+++ b/src/mame/drivers/tail2nos.cpp
@@ -35,7 +35,7 @@ WRITE8_MEMBER(tail2nos_state::sound_bankswitch_w)
membank("bank3")->set_entry(data & 0x01);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tail2nos_state )
+ADDRESS_MAP_START(tail2nos_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("user1", 0) /* extra ROM */
AM_RANGE(0x2c0000, 0x2dffff) AM_ROM AM_REGION("user2", 0)
@@ -55,13 +55,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tail2nos_state )
AM_RANGE(0xfff030, 0xfff033) AM_DEVREADWRITE8("acia", acia6850_device, read, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tail2nos_state )
+ADDRESS_MAP_START(tail2nos_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, tail2nos_state )
+ADDRESS_MAP_START(tail2nos_state::sound_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x07, 0x07) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
AM_RANGE(0x08, 0x0b) AM_DEVWRITE("ymsnd", ym2608_device, write)
diff --git a/src/mame/drivers/taito.cpp b/src/mame/drivers/taito.cpp
index 610186a4033..af3fd4f640c 100644
--- a/src/mame/drivers/taito.cpp
+++ b/src/mame/drivers/taito.cpp
@@ -84,6 +84,12 @@ public:
void taito4(machine_config &config);
void taito5(machine_config &config);
void taito_ay_audio(machine_config &config);
+ void shock_map(address_map &map);
+ void shock_sub_map(address_map &map);
+ void taito_map(address_map &map);
+ void taito_sub_map(address_map &map);
+ void taito_sub_map2(address_map &map);
+ void taito_sub_map5(address_map &map);
private:
uint8_t m_out_offs;
uint8_t m_sndcmd;
@@ -98,7 +104,7 @@ private:
};
-static ADDRESS_MAP_START( taito_map, AS_PROGRAM, 8, taito_state )
+ADDRESS_MAP_START(taito_state::taito_map)
AM_RANGE(0x0000, 0x27ff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x2800, 0x2800) AM_MIRROR(0x0080) AM_READ_PORT("X0")
AM_RANGE(0x2801, 0x2801) AM_MIRROR(0x0080) AM_READ_PORT("X1")
@@ -124,21 +130,21 @@ static ADDRESS_MAP_START( taito_map, AS_PROGRAM, 8, taito_state )
AM_RANGE(0x4800, 0x48ff) AM_ROM AM_REGION("roms", 0x2000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( taito_sub_map, AS_PROGRAM, 8, taito_state )
+ADDRESS_MAP_START(taito_state::taito_sub_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0400, 0x0403) AM_DEVREADWRITE("pia", pia6821_device, read, write)
AM_RANGE(0x0800, 0x1fff) AM_ROM AM_REGION("cpu2", 0x0800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( taito_sub_map2, AS_PROGRAM, 8, taito_state )
+ADDRESS_MAP_START(taito_state::taito_sub_map2)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0400, 0x0403) AM_DEVREADWRITE("pia", pia6821_device, read, write)
AM_RANGE(0x2000, 0x3fff) AM_ROM AM_REGION("cpu2", 0x2000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( taito_sub_map5, AS_PROGRAM, 8, taito_state )
+ADDRESS_MAP_START(taito_state::taito_sub_map5)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0400, 0x0403) AM_DEVREADWRITE("pia", pia6821_device, read, write)
@@ -153,7 +159,7 @@ static ADDRESS_MAP_START( taito_sub_map5, AS_PROGRAM, 8, taito_state )
AM_RANGE(0x2000, 0x7fff) AM_ROM AM_REGION("cpu2", 0x2000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shock_map, AS_PROGRAM, 8, taito_state )
+ADDRESS_MAP_START(taito_state::shock_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x1000, 0x100f) AM_RAM AM_SHARE("ram")
@@ -174,7 +180,7 @@ static ADDRESS_MAP_START( shock_map, AS_PROGRAM, 8, taito_state )
AM_RANGE(0x1800, 0x1bff) AM_ROM AM_REGION("roms", 0x1800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shock_sub_map, AS_PROGRAM, 8, taito_state )
+ADDRESS_MAP_START(taito_state::shock_sub_map)
ADDRESS_MAP_GLOBAL_MASK(0x0fff)
AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
AM_RANGE(0x0400, 0x0403) AM_DEVREADWRITE("pia", pia6821_device, read, write)
diff --git a/src/mame/drivers/taito_b.cpp b/src/mame/drivers/taito_b.cpp
index 262c6bd9aa6..ddb6e0a6889 100644
--- a/src/mame/drivers/taito_b.cpp
+++ b/src/mame/drivers/taito_b.cpp
@@ -466,7 +466,7 @@ WRITE16_MEMBER(taitob_state::realpunc_output_w)
AM_RANGE(ADDR+0x40000, ADDR+0x7ffff) AM_READWRITE(tc0180vcu_framebuffer_word_r, tc0180vcu_framebuffer_word_w)
-static ADDRESS_MAP_START( rastsag2_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::rastsag2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x600000, 0x607fff) AM_RAM /* Main RAM */ /*ashura up to 603fff only*/
@@ -477,7 +477,7 @@ static ADDRESS_MAP_START( rastsag2_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( crimec_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::crimec_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_device, read, write, 0xff00)
TC0180VCU_MEMRW( 0x400000 )
@@ -488,7 +488,7 @@ static ADDRESS_MAP_START( crimec_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tetrist_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::tetrist_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -498,7 +498,7 @@ static ADDRESS_MAP_START( tetrist_map, AS_PROGRAM, 16, taitob_state )
AM_RANGE(0xa00000, 0xa01fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tetrista_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::tetrista_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
TC0180VCU_MEMRW( 0x400000 )
@@ -509,7 +509,7 @@ static ADDRESS_MAP_START( tetrista_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hitice_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::hitice_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
TC0180VCU_MEMRW( 0x400000 )
AM_RANGE(0x600000, 0x60000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_device, read, write, 0xff00)
@@ -524,7 +524,7 @@ static ADDRESS_MAP_START( hitice_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rambo3_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::rambo3_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -543,7 +543,7 @@ static ADDRESS_MAP_START( rambo3_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pbobble_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::pbobble_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
TC0180VCU_MEMRW( 0x400000 )
AM_RANGE(0x500000, 0x50000f) AM_DEVREADWRITE("tc0640fio", tc0640fio_device, halfword_byteswap_r, halfword_byteswap_w)
@@ -559,7 +559,7 @@ static ADDRESS_MAP_START( pbobble_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
/* identical to pbobble, above??? */
-static ADDRESS_MAP_START( spacedx_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::spacedx_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
TC0180VCU_MEMRW( 0x400000 )
AM_RANGE(0x500000, 0x50000f) AM_DEVREADWRITE("tc0640fio", tc0640fio_device, halfword_byteswap_r, halfword_byteswap_w)
@@ -574,7 +574,7 @@ static ADDRESS_MAP_START( spacedx_map, AS_PROGRAM, 16, taitob_state )
AM_RANGE(0x900000, 0x90ffff) AM_RAM /* Main RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacedxo_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::spacedxo_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x100002, 0x100003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -589,7 +589,7 @@ static ADDRESS_MAP_START( spacedxo_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qzshowby_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::qzshowby_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE("tc0640fio", tc0640fio_device, halfword_byteswap_r, halfword_byteswap_w)
AM_RANGE(0x200024, 0x200025) AM_READ_PORT("P3_P4_A") /* player 3,4 start */
@@ -605,7 +605,7 @@ static ADDRESS_MAP_START( qzshowby_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( viofight_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::viofight_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_READNOP AM_DEVWRITE8("ciu", pc060ha_device, master_port_w, 0xff00)
AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("ciu", pc060ha_device, master_comm_r, master_comm_w, 0xff00)
@@ -616,7 +616,7 @@ static ADDRESS_MAP_START( viofight_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( masterw_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::masterw_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM /* Main RAM */
TC0180VCU_MEMRW( 0x400000 )
@@ -627,7 +627,7 @@ static ADDRESS_MAP_START( masterw_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( silentd_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::silentd_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x100002, 0x100003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -645,7 +645,7 @@ static ADDRESS_MAP_START( silentd_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( selfeena_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::selfeena_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM /* Main RAM */
TC0180VCU_MEMRW( 0x200000 )
@@ -657,7 +657,7 @@ static ADDRESS_MAP_START( selfeena_map, AS_PROGRAM, 16, taitob_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sbm_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::sbm_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* Main RAM */
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -667,7 +667,7 @@ static ADDRESS_MAP_START( sbm_map, AS_PROGRAM, 16, taitob_state )
TC0180VCU_MEMRW( 0x900000 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( realpunc_map, AS_PROGRAM, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::realpunc_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x110000, 0x12ffff) AM_RAM
@@ -685,11 +685,11 @@ static ADDRESS_MAP_START( realpunc_map, AS_PROGRAM, 16, taitob_state )
AM_RANGE(0x320002, 0x320003) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_comm_w, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( realpunc_hd63484_map, 0, 16, taitob_state )
+ADDRESS_MAP_START(taitob_state::realpunc_hd63484_map)
AM_RANGE(0x00000, 0x7ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( masterw_sound_map, AS_PROGRAM, 8, taitob_state )
+ADDRESS_MAP_START(taitob_state::masterw_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -698,7 +698,7 @@ static ADDRESS_MAP_START( masterw_sound_map, AS_PROGRAM, 8, taitob_state )
AM_RANGE(0xa001, 0xa001) AM_DEVREADWRITE("ciu", pc060ha_device, slave_comm_r, slave_comm_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitob_state )
+ADDRESS_MAP_START(taitob_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -713,7 +713,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitob_state )
AM_RANGE(0xf200, 0xf200) AM_WRITE(bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( viofight_sound_map, AS_PROGRAM, 8, taitob_state )
+ADDRESS_MAP_START(taitob_state::viofight_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x8fff) AM_RAM
diff --git a/src/mame/drivers/taito_f2.cpp b/src/mame/drivers/taito_f2.cpp
index e5a3e6987d4..874b7519ef8 100644
--- a/src/mame/drivers/taito_f2.cpp
+++ b/src/mame/drivers/taito_f2.cpp
@@ -619,7 +619,7 @@ WRITE16_MEMBER(taitof2_state::driveout_sound_command_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( finalb_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::finalb_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x200007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_device, word_r, word_w) /* palette */
@@ -633,7 +633,7 @@ static ADDRESS_MAP_START( finalb_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00002, 0xb00003) AM_WRITENOP /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dondokod_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::dondokod_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -648,7 +648,7 @@ static ADDRESS_MAP_START( dondokod_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megab_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::megab_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x100002, 0x100003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -664,7 +664,7 @@ static ADDRESS_MAP_START( megab_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thundfox_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::thundfox_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x101fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_device, read, write, 0x00ff)
@@ -679,7 +679,7 @@ static ADDRESS_MAP_START( thundfox_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x800000, 0x80001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cameltry_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::cameltry_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -695,7 +695,7 @@ static ADDRESS_MAP_START( cameltry_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xd00000, 0xd0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cameltrya_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::cameltrya_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -711,7 +711,7 @@ static ADDRESS_MAP_START( cameltrya_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xd00000, 0xd0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qtorimon_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::qtorimon_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x200007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_device, word_r, word_w) /* palette */
@@ -724,7 +724,7 @@ static ADDRESS_MAP_START( qtorimon_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x910000, 0x9120ff) AM_WRITENOP /* error in init code ? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( liquidk_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::liquidk_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -737,7 +737,7 @@ static ADDRESS_MAP_START( liquidk_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( quizhq_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::quizhq_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x200007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_device, word_r, word_w) /* palette */
@@ -758,7 +758,7 @@ static ADDRESS_MAP_START( quizhq_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x900000, 0x90ffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ssi_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::ssi_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, halfword_r, halfword_w)
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -771,7 +771,7 @@ static ADDRESS_MAP_START( ssi_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_SHARE("spriteram") /* sprite ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gunfront_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::gunfront_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -785,7 +785,7 @@ static ADDRESS_MAP_START( gunfront_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( growl_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::growl_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -808,7 +808,7 @@ static ADDRESS_MAP_START( growl_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mjnquest_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::mjnquest_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x110000, 0x11ffff) AM_RAM /* "sram" */
AM_RANGE(0x120000, 0x12ffff) AM_RAM
@@ -826,7 +826,7 @@ static ADDRESS_MAP_START( mjnquest_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x500000, 0x50ffff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( footchmp_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::footchmp_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("spriteram")
@@ -841,7 +841,7 @@ static ADDRESS_MAP_START( footchmp_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xa00002, 0xa00003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( koshien_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::koshien_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -855,7 +855,7 @@ static ADDRESS_MAP_START( koshien_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yuyugogo_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::yuyugogo_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, halfword_r, halfword_w)
AM_RANGE(0x400000, 0x400001) AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
@@ -869,7 +869,7 @@ static ADDRESS_MAP_START( yuyugogo_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xd00000, 0xdfffff) AM_ROM AM_REGION("extra", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ninjak_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::ninjak_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -884,7 +884,7 @@ static ADDRESS_MAP_START( ninjak_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* b00002 written like a watchdog?! */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( solfigtr_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::solfigtr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x201fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -905,7 +905,7 @@ static ADDRESS_MAP_START( solfigtr_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qzquest_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::qzquest_map)
AM_RANGE(0x000000, 0x17ffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, halfword_r, halfword_w)
AM_RANGE(0x300000, 0x300001) AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0x00ff)
@@ -917,7 +917,7 @@ static ADDRESS_MAP_START( qzquest_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x720000, 0x72000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_device, ctrl_word_r, ctrl_word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pulirula_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::pulirula_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -934,7 +934,7 @@ static ADDRESS_MAP_START( pulirula_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, halfword_r, halfword_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( metalb_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::metalb_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x300000, 0x30ffff) AM_RAM AM_SHARE("spriteram")
@@ -949,7 +949,7 @@ static ADDRESS_MAP_START( metalb_map, AS_PROGRAM, 16, taitof2_state )
// AM_RANGE(0xa00000, 0xa00001) AM_WRITENOP /* ??? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qzchikyu_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::qzchikyu_map)
AM_RANGE(0x000000, 0x17ffff) AM_ROM
AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, halfword_r, halfword_w)
AM_RANGE(0x300000, 0x300001) AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0x00ff)
@@ -961,7 +961,7 @@ static ADDRESS_MAP_START( qzchikyu_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0x720000, 0x72000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_device, ctrl_word_r, ctrl_word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yesnoj_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::yesnoj_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_SHARE("spriteram")
@@ -980,7 +980,7 @@ static ADDRESS_MAP_START( yesnoj_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xd00000, 0xd00001) AM_WRITENOP /* lots of similar writes */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( deadconx_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::deadconx_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("spriteram")
@@ -996,7 +996,7 @@ static ADDRESS_MAP_START( deadconx_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xa00002, 0xa00003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dinorex_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::dinorex_map)
AM_RANGE(0x000000, 0x2fffff) AM_ROM
AM_RANGE(0x300000, 0x30000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, halfword_r, halfword_w)
AM_RANGE(0x400000, 0x400fff) AM_WRITE(taitof2_sprite_extension_w) AM_SHARE("sprite_ext")
@@ -1011,7 +1011,7 @@ static ADDRESS_MAP_START( dinorex_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb00001) AM_WRITENOP /* watchdog? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qjinsei_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::qjinsei_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -1026,7 +1026,7 @@ static ADDRESS_MAP_START( qjinsei_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, halfword_r, halfword_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qcrayon_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::qcrayon_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
// AM_RANGE(0x200000, 0x200001) AM_WRITENOP /* unknown */
@@ -1042,7 +1042,7 @@ static ADDRESS_MAP_START( qcrayon_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_device, write, 0x00ff) /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qcrayon2_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::qcrayon2_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x300000, 0x301fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -1057,7 +1057,7 @@ static ADDRESS_MAP_START( qcrayon2_map, AS_PROGRAM, 16, taitof2_state )
AM_RANGE(0xb00000, 0xb017ff) AM_WRITE(taitof2_sprite_extension_w) AM_SHARE("sprite_ext")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( driftout_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::driftout_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0xff00)
AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_device, master_comm_r, master_comm_w, 0xff00)
@@ -1075,7 +1075,7 @@ static ADDRESS_MAP_START( driftout_map, AS_PROGRAM, 16, taitof2_state )
ADDRESS_MAP_END
/* same as driftout, except for sound address 0x200000 */
-static ADDRESS_MAP_START( driveout_map, AS_PROGRAM, 16, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::driveout_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x200003) AM_READNOP AM_WRITE(driveout_sound_command_w)
AM_RANGE(0x300000, 0x30ffff) AM_RAM
@@ -1094,7 +1094,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -1111,7 +1111,7 @@ ADDRESS_MAP_END
/* Alt version of Cameltry, YM2203 + M6925 sound */
-static ADDRESS_MAP_START( cameltrya_sound_map, AS_PROGRAM, 8, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::cameltrya_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // I can't see a bank control, but there ARE some bytes past 0x8000
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -1122,7 +1122,7 @@ static ADDRESS_MAP_START( cameltrya_sound_map, AS_PROGRAM, 8, taitof2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( driveout_sound_map, AS_PROGRAM, 8, taitof2_state )
+ADDRESS_MAP_START(taitof2_state::driveout_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(oki_bank_w)
diff --git a/src/mame/drivers/taito_f3.cpp b/src/mame/drivers/taito_f3.cpp
index 4144ca8787b..e00505aaa10 100644
--- a/src/mame/drivers/taito_f3.cpp
+++ b/src/mame/drivers/taito_f3.cpp
@@ -186,7 +186,7 @@ WRITE16_MEMBER(taito_f3_state::f3_unk_w)
/******************************************************************************/
-static ADDRESS_MAP_START( f3_map, AS_PROGRAM, 32, taito_f3_state )
+ADDRESS_MAP_START(taito_f3_state::f3_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x300000, 0x30007f) AM_WRITE(f3_sound_bankswitch_w)
AM_RANGE(0x400000, 0x41ffff) AM_MIRROR(0x20000) AM_RAM AM_SHARE("f3_ram")
@@ -206,7 +206,7 @@ static ADDRESS_MAP_START( f3_map, AS_PROGRAM, 32, taito_f3_state )
AM_RANGE(0xc80100, 0xc80103) AM_WRITE(f3_sound_reset_1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bubsympb_map, AS_PROGRAM, 32, taito_f3_state )
+ADDRESS_MAP_START(taito_f3_state::bubsympb_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x300000, 0x30007f) AM_WRITE(f3_sound_bankswitch_w)
AM_RANGE(0x400000, 0x41ffff) AM_MIRROR(0x20000) AM_RAM AM_SHARE("f3_ram")
diff --git a/src/mame/drivers/taito_h.cpp b/src/mame/drivers/taito_h.cpp
index 5237d5bff96..0f87aeffc48 100644
--- a/src/mame/drivers/taito_h.cpp
+++ b/src/mame/drivers/taito_h.cpp
@@ -235,7 +235,7 @@ WRITE8_MEMBER(taitoh_state::coin_control_w)
***************************************************************************/
-static ADDRESS_MAP_START( syvalion_map, AS_PROGRAM, 16, taitoh_state )
+ADDRESS_MAP_START(taitoh_state::syvalion_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_SHARE("m68000_mainram")
AM_RANGE(0x200000, 0x200001) AM_READ8(syvalion_input_bypass_r, 0x00ff) AM_DEVWRITE8("tc0040ioc", tc0040ioc_device, portreg_w, 0x00ff)
@@ -246,7 +246,7 @@ static ADDRESS_MAP_START( syvalion_map, AS_PROGRAM, 16, taitoh_state )
AM_RANGE(0x500800, 0x500fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( recordbr_map, AS_PROGRAM, 16, taitoh_state )
+ADDRESS_MAP_START(taitoh_state::recordbr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_SHARE("m68000_mainram")
AM_RANGE(0x200000, 0x200003) AM_DEVREADWRITE8("tc0040ioc", tc0040ioc_device, read, write, 0x00ff)
@@ -256,7 +256,7 @@ static ADDRESS_MAP_START( recordbr_map, AS_PROGRAM, 16, taitoh_state )
AM_RANGE(0x500800, 0x500fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tetristh_map, AS_PROGRAM, 16, taitoh_state )
+ADDRESS_MAP_START(taitoh_state::tetristh_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_SHARE("m68000_mainram")
AM_RANGE(0x200000, 0x200001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_device, master_port_w, 0x00ff)
@@ -266,7 +266,7 @@ static ADDRESS_MAP_START( tetristh_map, AS_PROGRAM, 16, taitoh_state )
AM_RANGE(0x500800, 0x500fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dleague_map, AS_PROGRAM, 16, taitoh_state )
+ADDRESS_MAP_START(taitoh_state::dleague_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_SHARE("m68000_mainram")
AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_device, read, write, 0x00ff)
@@ -278,7 +278,7 @@ static ADDRESS_MAP_START( dleague_map, AS_PROGRAM, 16, taitoh_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitoh_state )
+ADDRESS_MAP_START(taitoh_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/taito_l.cpp b/src/mame/drivers/taito_l.cpp
index 58858fd681f..76dab35aaef 100644
--- a/src/mame/drivers/taito_l.cpp
+++ b/src/mame/drivers/taito_l.cpp
@@ -467,7 +467,7 @@ WRITE8_MEMBER(champwr_state::msm5205_volume_w)
}
-static ADDRESS_MAP_START( common_banks_map, AS_PROGRAM, 8, taitol_state )
+ADDRESS_MAP_START(taitol_state::common_banks_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xcfff) AM_ROMBANK("bank2") AM_WRITE(bank0_w)
@@ -483,13 +483,13 @@ static ADDRESS_MAP_START( common_banks_map, AS_PROGRAM, 8, taitol_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fhawk_map, AS_PROGRAM, 8, fhawk_state )
+ADDRESS_MAP_START(fhawk_state::fhawk_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0xa000, 0xbfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fhawk_2_map, AS_PROGRAM, 8, fhawk_state )
+ADDRESS_MAP_START(fhawk_state::fhawk_2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank6")
AM_RANGE(0xc000, 0xc000) AM_WRITE(rombank2switch_w)
@@ -499,7 +499,7 @@ static ADDRESS_MAP_START( fhawk_2_map, AS_PROGRAM, 8, fhawk_state )
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fhawk_3_map, AS_PROGRAM, 8, fhawk_state )
+ADDRESS_MAP_START(fhawk_state::fhawk_3_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank7")
AM_RANGE(0x8000, 0x9fff) AM_RAM
@@ -509,7 +509,7 @@ static ADDRESS_MAP_START( fhawk_3_map, AS_PROGRAM, 8, fhawk_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raimais_map, AS_PROGRAM, 8, taitol_2cpu_state )
+ADDRESS_MAP_START(taitol_2cpu_state::raimais_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x87ff) AM_DEVREADWRITE("dpram", mb8421_device, right_r, right_w)
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("tc0040ioc", tc0040ioc_device, read, write)
@@ -518,7 +518,7 @@ static ADDRESS_MAP_START( raimais_map, AS_PROGRAM, 8, taitol_2cpu_state )
AM_RANGE(0xa000, 0xbfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raimais_2_map, AS_PROGRAM, 8, taitol_2cpu_state )
+ADDRESS_MAP_START(taitol_2cpu_state::raimais_2_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe7ff) AM_DEVREADWRITE("dpram", mb8421_device, left_r, left_w)
@@ -530,7 +530,7 @@ WRITE8_MEMBER(taitol_2cpu_state::sound_bankswitch_w)
m_audio_bnk->set_base(&m_audio_prg[(data & 0x03) * 0x4000]);
}
-static ADDRESS_MAP_START( raimais_3_map, AS_PROGRAM, 8, taitol_2cpu_state )
+ADDRESS_MAP_START(taitol_2cpu_state::raimais_3_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank7")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -545,13 +545,13 @@ static ADDRESS_MAP_START( raimais_3_map, AS_PROGRAM, 8, taitol_2cpu_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( champwr_map, AS_PROGRAM, 8, champwr_state )
+ADDRESS_MAP_START(champwr_state::champwr_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( champwr_2_map, AS_PROGRAM, 8, champwr_state )
+ADDRESS_MAP_START(champwr_state::champwr_2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank6")
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("share1")
@@ -562,7 +562,7 @@ static ADDRESS_MAP_START( champwr_2_map, AS_PROGRAM, 8, champwr_state )
AM_RANGE(0xf000, 0xf000) AM_READWRITE(rombank2switch_r, rombank2switch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( champwr_3_map, AS_PROGRAM, 8, champwr_state )
+ADDRESS_MAP_START(champwr_state::champwr_3_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank7")
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -577,14 +577,14 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( kurikint_map, AS_PROGRAM, 8, taitol_2cpu_state )
+ADDRESS_MAP_START(taitol_2cpu_state::kurikint_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa7ff) AM_DEVREADWRITE("dpram", mb8421_device, right_r, right_w)
AM_RANGE(0xa800, 0xa801) AM_DEVREADWRITE("tc0040ioc", tc0040ioc_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kurikint_2_map, AS_PROGRAM, 8, taitol_2cpu_state )
+ADDRESS_MAP_START(taitol_2cpu_state::kurikint_2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe7ff) AM_DEVREADWRITE("dpram", mb8421_device, left_r, left_w)
@@ -593,7 +593,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( puzznic_map, AS_PROGRAM, 8, taitol_1cpu_state )
+ADDRESS_MAP_START(taitol_1cpu_state::puzznic_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_READ(extport_select_and_ym2203_r) AM_DEVWRITE("ymsnd", ym2203_device, write)
@@ -604,7 +604,7 @@ static ADDRESS_MAP_START( puzznic_map, AS_PROGRAM, 8, taitol_1cpu_state )
ADDRESS_MAP_END
/* bootleg, doesn't have the MCU */
-static ADDRESS_MAP_START( puzznici_map, AS_PROGRAM, 8, taitol_1cpu_state )
+ADDRESS_MAP_START(taitol_1cpu_state::puzznici_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_READ(extport_select_and_ym2203_r) AM_DEVWRITE("ymsnd", ym2203_device, write)
@@ -615,7 +615,7 @@ static ADDRESS_MAP_START( puzznici_map, AS_PROGRAM, 8, taitol_1cpu_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( plotting_map, AS_PROGRAM, 8, taitol_1cpu_state )
+ADDRESS_MAP_START(taitol_1cpu_state::plotting_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_READ(extport_select_and_ym2203_r) AM_DEVWRITE("ymsnd", ym2203_device, write)
@@ -624,7 +624,7 @@ static ADDRESS_MAP_START( plotting_map, AS_PROGRAM, 8, taitol_1cpu_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( palamed_map, AS_PROGRAM, 8, taitol_1cpu_state )
+ADDRESS_MAP_START(taitol_1cpu_state::palamed_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -634,7 +634,7 @@ static ADDRESS_MAP_START( palamed_map, AS_PROGRAM, 8, taitol_1cpu_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cachat_map, AS_PROGRAM, 8, taitol_1cpu_state )
+ADDRESS_MAP_START(taitol_1cpu_state::cachat_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
@@ -645,11 +645,11 @@ static ADDRESS_MAP_START( cachat_map, AS_PROGRAM, 8, taitol_1cpu_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( horshoes_map, AS_PROGRAM, 8, horshoes_state )
+ADDRESS_MAP_START(horshoes_state::horshoes_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa003) AM_READ(extport_select_and_ym2203_r) AM_DEVWRITE("ymsnd", ym2203_device, write)
- AM_RANGE(0xa800, 0xa800) AM_SELECT(0x000c) AM_DEVREAD_MOD("upd4701", upd4701_device, read_xy, rshift<2>)
+ ;map(0xa800, 0xa800).select(0x000c).lr8("upd4701_r", [this](address_space &space, offs_t offset, u8 mem_mask) { return m_upd4701->read_xy(space, offset >> 2, mem_mask); });
AM_RANGE(0xa802, 0xa802) AM_DEVREAD("upd4701", upd4701_device, reset_x)
AM_RANGE(0xa803, 0xa803) AM_DEVREAD("upd4701", upd4701_device, reset_y)
AM_RANGE(0xb801, 0xb801) AM_READNOP // Watchdog or interrupt ack
@@ -657,14 +657,14 @@ static ADDRESS_MAP_START( horshoes_map, AS_PROGRAM, 8, horshoes_state )
AM_RANGE(0xbc00, 0xbc00) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( evilston_map, AS_PROGRAM, 8, taitol_2cpu_state )
+ADDRESS_MAP_START(taitol_2cpu_state::evilston_map)
AM_IMPORT_FROM(common_banks_map)
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xa7ff) AM_DEVREADWRITE("dpram", mb8421_device, right_r, right_w)
AM_RANGE(0xa800, 0xa807) AM_DEVREADWRITE("tc0510nio", tc0510nio_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( evilston_2_map, AS_PROGRAM, 8, taitol_2cpu_state )
+ADDRESS_MAP_START(taitol_2cpu_state::evilston_2_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xe7ff) AM_DEVREADWRITE("dpram", mb8421_device, left_r, left_w)
diff --git a/src/mame/drivers/taito_o.cpp b/src/mame/drivers/taito_o.cpp
index 9609776dc14..ec9ee0c7aa2 100644
--- a/src/mame/drivers/taito_o.cpp
+++ b/src/mame/drivers/taito_o.cpp
@@ -65,7 +65,7 @@ READ16_MEMBER(taitoo_state::io_r)
return retval;
}
-static ADDRESS_MAP_START( parentj_map, AS_PROGRAM, 16, taitoo_state )
+ADDRESS_MAP_START(taitoo_state::parentj_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM
AM_RANGE(0x200000, 0x20000f) AM_READWRITE(io_r, io_w) /* TC0220IOC ? */
diff --git a/src/mame/drivers/taito_x.cpp b/src/mame/drivers/taito_x.cpp
index 716a03c86e5..08f667e1a75 100644
--- a/src/mame/drivers/taito_x.cpp
+++ b/src/mame/drivers/taito_x.cpp
@@ -534,7 +534,7 @@ WRITE8_MEMBER(taitox_state::sound_bankswitch_w)
/**************************************************************************/
-static ADDRESS_MAP_START( superman_map, AS_PROGRAM, 16, taitox_state )
+ADDRESS_MAP_START(taitox_state::superman_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x300000, 0x300001) AM_WRITENOP /* written each frame at $3a9c, mostly 0x10 */
AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* written each frame at $3aa2, mostly 0x10 */
@@ -552,7 +552,7 @@ static ADDRESS_MAP_START( superman_map, AS_PROGRAM, 16, taitox_state )
AM_RANGE(0xf00000, 0xf03fff) AM_RAM /* Main RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( daisenpu_map, AS_PROGRAM, 16, taitox_state )
+ADDRESS_MAP_START(taitox_state::daisenpu_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
// AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* written each frame at $2ac, values change */
AM_RANGE(0x500000, 0x50000f) AM_READ(superman_dsw_input_r)
@@ -567,7 +567,7 @@ static ADDRESS_MAP_START( daisenpu_map, AS_PROGRAM, 16, taitox_state )
AM_RANGE(0xf00000, 0xf03fff) AM_RAM /* Main RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gigandes_map, AS_PROGRAM, 16, taitox_state )
+ADDRESS_MAP_START(taitox_state::gigandes_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* 0x1 written each frame at $d42, watchdog? */
AM_RANGE(0x500000, 0x500007) AM_READ(superman_dsw_input_r)
@@ -582,7 +582,7 @@ static ADDRESS_MAP_START( gigandes_map, AS_PROGRAM, 16, taitox_state )
AM_RANGE(0xf00000, 0xf03fff) AM_RAM /* Main RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ballbros_map, AS_PROGRAM, 16, taitox_state )
+ADDRESS_MAP_START(taitox_state::ballbros_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* 0x1 written each frame at $c56, watchdog? */
AM_RANGE(0x500000, 0x50000f) AM_READ(superman_dsw_input_r)
@@ -600,7 +600,7 @@ ADDRESS_MAP_END
/**************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitox_state )
+ADDRESS_MAP_START(taitox_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -614,7 +614,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitox_state )
AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( daisenpu_sound_map, AS_PROGRAM, 8, taitox_state )
+ADDRESS_MAP_START(taitox_state::daisenpu_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/taito_z.cpp b/src/mame/drivers/taito_z.cpp
index b891eb3296e..99bf567b3f0 100644
--- a/src/mame/drivers/taito_z.cpp
+++ b/src/mame/drivers/taito_z.cpp
@@ -1458,7 +1458,7 @@ WRITE8_MEMBER(taitoz_state::taitoz_pancontrol)
***********************************************************/
-static ADDRESS_MAP_START( contcirc_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::contcirc_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM
AM_RANGE(0x084000, 0x087fff) AM_RAM AM_SHARE("share1")
@@ -1470,7 +1470,7 @@ static ADDRESS_MAP_START( contcirc_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0x400000, 0x4006ff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( contcirc_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::contcirc_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM
AM_RANGE(0x084000, 0x087fff) AM_RAM AM_SHARE("share1")
@@ -1480,7 +1480,7 @@ static ADDRESS_MAP_START( contcirc_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chasehq_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::chasehq_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x107fff) AM_RAM
AM_RANGE(0x108000, 0x10bfff) AM_RAM AM_SHARE("share1")
@@ -1496,7 +1496,7 @@ static ADDRESS_MAP_START( chasehq_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xe00000, 0xe003ff) AM_READWRITE(chasehq_motor_r, chasehq_motor_w) /* motor cpu */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chq_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::chq_cpub_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x108000, 0x10bfff) AM_RAM AM_SHARE("share1")
@@ -1504,7 +1504,7 @@ static ADDRESS_MAP_START( chq_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( enforce_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::enforce_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1")
@@ -1516,7 +1516,7 @@ static ADDRESS_MAP_START( enforce_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0x620000, 0x62000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_device, ctrl_word_r, ctrl_word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( enforce_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::enforce_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1")
@@ -1525,7 +1525,7 @@ static ADDRESS_MAP_START( enforce_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bshark_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::bshark_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1")
@@ -1538,7 +1538,7 @@ static ADDRESS_MAP_START( bshark_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xd20000, 0xd2000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_device, ctrl_word_r, ctrl_word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bsharkjjs_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::bsharkjjs_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1")
@@ -1551,7 +1551,7 @@ static ADDRESS_MAP_START( bsharkjjs_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xd20000, 0xd2000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_device, ctrl_word_r, ctrl_word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bshark_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::bshark_cpub_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x108000, 0x10bfff) AM_RAM
AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1")
@@ -1564,7 +1564,7 @@ static ADDRESS_MAP_START( bshark_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sci_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::sci_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x107fff) AM_RAM
AM_RANGE(0x108000, 0x10bfff) AM_RAM AM_SHARE("share1")
@@ -1580,7 +1580,7 @@ static ADDRESS_MAP_START( sci_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xc08000, 0xc08001) AM_READWRITE(sci_spriteframe_r, sci_spriteframe_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sci_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::sci_cpub_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM
AM_RANGE(0x208000, 0x20bfff) AM_RAM AM_SHARE("share1")
@@ -1588,7 +1588,7 @@ static ADDRESS_MAP_START( sci_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nightstr_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::nightstr_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1")
@@ -1603,7 +1603,7 @@ static ADDRESS_MAP_START( nightstr_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xe40000, 0xe40007) AM_READWRITE(nightstr_stick_r, bshark_stick_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nightstr_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::nightstr_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1")
@@ -1611,7 +1611,7 @@ static ADDRESS_MAP_START( nightstr_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aquajack_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::aquajack_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1")
@@ -1623,7 +1623,7 @@ static ADDRESS_MAP_START( aquajack_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xc40000, 0xc403ff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aquajack_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::aquajack_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1")
@@ -1635,7 +1635,7 @@ static ADDRESS_MAP_START( aquajack_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacegun_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::spacegun_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x30c000, 0x30ffff) AM_RAM
AM_RANGE(0x310000, 0x31ffff) AM_RAM AM_SHARE("share1")
@@ -1645,7 +1645,7 @@ static ADDRESS_MAP_START( spacegun_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xb00000, 0xb00007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_device, word_r, step1_rbswap_word_w) /* palette */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacegun_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::spacegun_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x20c000, 0x20ffff) AM_RAM
AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("share1")
@@ -1659,7 +1659,7 @@ static ADDRESS_MAP_START( spacegun_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dblaxle_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::dblaxle_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x200000, 0x203fff) AM_RAM
AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("share1")
@@ -1675,7 +1675,7 @@ static ADDRESS_MAP_START( dblaxle_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xc08000, 0xc08001) AM_READWRITE(sci_spriteframe_r, sci_spriteframe_w) /* set in int6, seems to stay zero */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dblaxle_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::dblaxle_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x110000, 0x11ffff) AM_RAM AM_SHARE("share1")
@@ -1684,7 +1684,7 @@ static ADDRESS_MAP_START( dblaxle_cpub_map, AS_PROGRAM, 16, taitoz_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( racingb_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::racingb_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x110000, 0x11ffff) AM_RAM AM_SHARE("share1")
@@ -1699,7 +1699,7 @@ static ADDRESS_MAP_START( racingb_map, AS_PROGRAM, 16, taitoz_state )
AM_RANGE(0xb08000, 0xb08001) AM_READWRITE(sci_spriteframe_r, sci_spriteframe_w) /* alternates 0/0x100 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( racingb_cpub_map, AS_PROGRAM, 16, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::racingb_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x403fff) AM_RAM
AM_RANGE(0x410000, 0x41ffff) AM_RAM AM_SHARE("share1")
@@ -1710,7 +1710,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, taitoz_state )
+ADDRESS_MAP_START(taitoz_state::z80_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/taitoair.cpp b/src/mame/drivers/taitoair.cpp
index 17c583ee3d3..d8f9693edbb 100644
--- a/src/mame/drivers/taitoair.cpp
+++ b/src/mame/drivers/taitoair.cpp
@@ -379,7 +379,7 @@ WRITE8_MEMBER(taitoair_state::coin_control_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( airsys_map, AS_PROGRAM, 16, taitoair_state )
+ADDRESS_MAP_START(taitoair_state::airsys_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_SHARE("m68000_mainram")
AM_RANGE(0x140000, 0x140001) AM_WRITE(system_control_w) /* Pause the TMS32025 */
@@ -400,7 +400,7 @@ ADDRESS_MAP_END
/************************** Z80 ****************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitoair_state )
+ADDRESS_MAP_START(taitoair_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -512,11 +512,11 @@ READ16_MEMBER(taitoair_state::dsp_muldiv_2_r)
}
-static ADDRESS_MAP_START( DSP_map_program, AS_PROGRAM, 16, taitoair_state )
+ADDRESS_MAP_START(taitoair_state::DSP_map_program)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( DSP_map_data, AS_DATA, 16, taitoair_state )
+ADDRESS_MAP_START(taitoair_state::DSP_map_data)
AM_RANGE(0x2003, 0x2003) AM_READNOP //bit 0 DMA status flag or vblank
AM_RANGE(0x3000, 0x3002) AM_WRITE(dsp_flags_w)
AM_RANGE(0x3404, 0x3404) AM_WRITE(dsp_muldiv_a_1_w)
diff --git a/src/mame/drivers/taitogn.cpp b/src/mame/drivers/taitogn.cpp
index 7d590e52cd9..8a143d5eadf 100644
--- a/src/mame/drivers/taitogn.cpp
+++ b/src/mame/drivers/taitogn.cpp
@@ -402,6 +402,9 @@ public:
void coh3002t_cf(machine_config &config);
void coh3002t_t2(machine_config &config);
void coh3002t_t1(machine_config &config);
+ void flashbank_map(address_map &map);
+ void taitogn_map(address_map &map);
+ void taitogn_mp_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -632,7 +635,7 @@ DRIVER_INIT_MEMBER(taitogn_state,coh3002t_nz)
m_has_zoom = false;
}
-static ADDRESS_MAP_START( taitogn_map, AS_PROGRAM, 32, taitogn_state )
+ADDRESS_MAP_START(taitogn_state::taitogn_map)
AM_RANGE(0x1f000000, 0x1f7fffff) AM_DEVICE16("flashbank", address_map_bank_device, amap16, 0xffffffff)
AM_RANGE(0x1fa00000, 0x1fa00003) AM_READ_PORT("P1")
AM_RANGE(0x1fa00100, 0x1fa00103) AM_READ_PORT("P2")
@@ -658,7 +661,7 @@ static ADDRESS_MAP_START( taitogn_map, AS_PROGRAM, 32, taitogn_state )
AM_RANGE(0x1fbe0000, 0x1fbe01ff) AM_DEVREADWRITE8("taito_zoom", taito_zoom_device, shared_ram_r, shared_ram_w, 0x00ff00ff) // M66220FP for comms with the MN10200
ADDRESS_MAP_END
-static ADDRESS_MAP_START( flashbank_map, AS_PROGRAM, 16, taitogn_state )
+ADDRESS_MAP_START(taitogn_state::flashbank_map)
// Bank 0 has access to the sub-bios, the mn102 flash and the rf5c296 mem zone
AM_RANGE(0x00000000, 0x001fffff) AM_DEVREADWRITE("biosflash", intelfsh16_device, read, write)
AM_RANGE(0x00200000, 0x002fffff) AM_DEVREADWRITE("rf5c296", rf5c296_device, mem_r, mem_w )
@@ -675,16 +678,11 @@ static ADDRESS_MAP_START( flashbank_map, AS_PROGRAM, 16, taitogn_state )
AM_RANGE(0x10200000, 0x103fffff) AM_DEVREADWRITE("biosflash", intelfsh16_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( taitogn_mp_map, AS_PROGRAM, 32, taitogn_state )
+ADDRESS_MAP_START(taitogn_state::taitogn_mp_map)
AM_IMPORT_FROM(taitogn_map)
AM_RANGE(0x1fa10100, 0x1fa10103) AM_READ8(gnet_mahjong_panel_r, 0x000000ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( taitogn_mn_map, AS_PROGRAM, 16, taitogn_state )
- AM_IMPORT_FROM( taitozoom_mn_map )
- AM_RANGE(0x080000, 0x0fffff) AM_DEVREAD(":pgmflash", intelfsh16_device, read)
-ADDRESS_MAP_END
-
SLOT_INTERFACE_START(slot_ataflash)
SLOT_INTERFACE("taitopccard1", TAITO_PCCARD1)
SLOT_INTERFACE("taitopccard2", TAITO_PCCARD2)
@@ -753,8 +751,7 @@ MACHINE_CONFIG_START(taitogn_state::coh3002t)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.45)
MCFG_TAITO_ZOOM_ADD("taito_zoom")
- MCFG_CPU_MODIFY("taito_zoom:mn10200")
- MCFG_CPU_PROGRAM_MAP(taitogn_mn_map)
+ MCFG_TAITO_ZOOM_USE_FLASH
MCFG_DEVICE_MODIFY("taito_zoom:zsg2")
MCFG_ZSG2_EXT_READ_HANDLER(DEVREAD32(DEVICE_SELF_OWNER, taitogn_state, zsg2_ext_r))
diff --git a/src/mame/drivers/taitojc.cpp b/src/mame/drivers/taitojc.cpp
index 62e995d432f..4161d3d46f7 100644
--- a/src/mame/drivers/taitojc.cpp
+++ b/src/mame/drivers/taitojc.cpp
@@ -618,7 +618,7 @@ WRITE8_MEMBER(taitojc_state::jc_lan_w)
}
-static ADDRESS_MAP_START( taitojc_map, AS_PROGRAM, 32, taitojc_state )
+ADDRESS_MAP_START(taitojc_state::taitojc_map)
AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_MIRROR(0x200000)
AM_RANGE(0x00400000, 0x01bfffff) AM_ROM AM_REGION("gfx1", 0)
AM_RANGE(0x04000000, 0x040f7fff) AM_RAM AM_SHARE("vram")
@@ -668,7 +668,7 @@ WRITE8_MEMBER(taitojc_state::dendego_brakemeter_w)
}
}
-static ADDRESS_MAP_START( dendego_map, AS_PROGRAM, 32, taitojc_state )
+ADDRESS_MAP_START(taitojc_state::dendego_map)
AM_IMPORT_FROM( taitojc_map )
AM_RANGE(0x06e00000, 0x06e00003) AM_WRITE8(dendego_speedmeter_w, 0x00ff0000)
AM_RANGE(0x06e00004, 0x06e00007) AM_WRITE8(dendego_brakemeter_w, 0x00ff0000)
@@ -743,12 +743,12 @@ READ8_MEMBER(taitojc_state::hc11_analog_r)
}
-static ADDRESS_MAP_START( hc11_pgm_map, AS_PROGRAM, 8, taitojc_state )
+ADDRESS_MAP_START(taitojc_state::hc11_pgm_map)
AM_RANGE(0x4000, 0x5fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hc11_io_map, AS_IO, 8, taitojc_state )
+ADDRESS_MAP_START(taitojc_state::hc11_io_map)
AM_RANGE(MC68HC11_IO_PORTA, MC68HC11_IO_PORTA ) AM_READNOP // ?
AM_RANGE(MC68HC11_IO_PORTG, MC68HC11_IO_PORTG ) AM_READWRITE(hc11_comm_r, hc11_comm_w)
AM_RANGE(MC68HC11_IO_PORTH, MC68HC11_IO_PORTH ) AM_READWRITE(hc11_output_r, hc11_output_w)
@@ -845,12 +845,12 @@ WRITE16_MEMBER(taitojc_state::dsp_rom_w)
}
}
-static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, taitojc_state )
+ADDRESS_MAP_START(taitojc_state::tms_program_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_MIRROR(0x4000)
AM_RANGE(0x6000, 0x7fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms_data_map, AS_DATA, 16, taitojc_state )
+ADDRESS_MAP_START(taitojc_state::tms_data_map)
AM_RANGE(0x6a01, 0x6a02) AM_DEVWRITE("tc0780fpa", tc0780fpa_device, render_w)
AM_RANGE(0x6a11, 0x6a12) AM_NOP // same as 0x6a01..02 for the second renderer chip?
AM_RANGE(0x6b20, 0x6b20) AM_DEVWRITE("tc0780fpa", tc0780fpa_device, poly_fifo_w)
diff --git a/src/mame/drivers/taitopjc.cpp b/src/mame/drivers/taitopjc.cpp
index 01a27a5c04f..b3607153b87 100644
--- a/src/mame/drivers/taitopjc.cpp
+++ b/src/mame/drivers/taitopjc.cpp
@@ -161,6 +161,12 @@ public:
uint32_t m_dsp_rom_address;
void taitopjc(machine_config &config);
+ void mn10200_map(address_map &map);
+ void ppc603e_mem(address_map &map);
+ void tlcs900h_mem(address_map &map);
+ void tms_data_map(address_map &map);
+ void tms_io_map(address_map &map);
+ void tms_program_map(address_map &map);
};
void taitopjc_state::video_exit()
@@ -520,7 +526,7 @@ WRITE64_MEMBER(taitopjc_state::dsp_w)
// DBAT2 U: 0xc0000003 L: 0xc0000022 (0xc0000000...0xc001ffff)
// DBAT3 U: 0xfe0003ff L: 0xfe000022 (0xfe000000...0xffffffff)
-static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64, taitopjc_state )
+ADDRESS_MAP_START(taitopjc_state::ppc603e_mem)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM // Work RAM
AM_RANGE(0x40000000, 0x4000000f) AM_READWRITE(video_r, video_w)
AM_RANGE(0x80000000, 0x80003fff) AM_READWRITE(dsp_r, dsp_w)
@@ -619,7 +625,7 @@ WRITE16_MEMBER(taitopjc_state::tlcs_unk_w)
// 0xfc0fb5: INTRX1
// 0xfc0f41: INTTX1
-static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 16, taitopjc_state )
+ADDRESS_MAP_START(taitopjc_state::tlcs900h_mem)
AM_RANGE(0x010000, 0x02ffff) AM_RAM // Work RAM
AM_RANGE(0x040000, 0x0400ff) AM_READWRITE8(tlcs_sound_r, tlcs_sound_w, 0xffff)
AM_RANGE(0x044000, 0x045fff) AM_RAM AM_SHARE("nvram")
@@ -628,7 +634,7 @@ static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 16, taitopjc_state )
AM_RANGE(0xfc0000, 0xffffff) AM_ROM AM_REGION("io_cpu", 0)
ADDRESS_MAP_END
-ADDRESS_MAP_START( mn10200_map, AS_PROGRAM, 16, taitopjc_state )
+ADDRESS_MAP_START(taitopjc_state::mn10200_map)
AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("mn10200", 0)
ADDRESS_MAP_END
@@ -670,18 +676,18 @@ WRITE16_MEMBER(taitopjc_state::dsp_romh_w)
}
-static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, taitopjc_state )
+ADDRESS_MAP_START(taitopjc_state::tms_program_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("user2", 0)
AM_RANGE(0x4c00, 0xefff) AM_ROM AM_REGION("user2", 0x9800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms_data_map, AS_DATA, 16, taitopjc_state )
+ADDRESS_MAP_START(taitopjc_state::tms_data_map)
AM_RANGE(0x4000, 0x6fff) AM_ROM AM_REGION("user2", 0x8000)
AM_RANGE(0x7000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_READWRITE(tms_dspshare_r, tms_dspshare_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms_io_map, AS_IO, 16, taitopjc_state )
+ADDRESS_MAP_START(taitopjc_state::tms_io_map)
AM_RANGE(0x0053, 0x0053) AM_WRITE(dsp_roml_w)
AM_RANGE(0x0057, 0x0057) AM_WRITE(dsp_romh_w)
AM_RANGE(0x0058, 0x0058) AM_DEVWRITE("tc0780fpa", tc0780fpa_device, poly_fifo_w)
diff --git a/src/mame/drivers/taitosj.cpp b/src/mame/drivers/taitosj.cpp
index 50ebb4edd35..4b4e1a01f1a 100644
--- a/src/mame/drivers/taitosj.cpp
+++ b/src/mame/drivers/taitosj.cpp
@@ -202,7 +202,7 @@ CUSTOM_INPUT_MEMBER(taitosj_state::input_port_4_f0_r)
}
-static ADDRESS_MAP_START( taitosj_main_nomcu_map, AS_PROGRAM, 8, taitosj_state )
+ADDRESS_MAP_START(taitosj_state::taitosj_main_nomcu_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -243,7 +243,7 @@ ADDRESS_MAP_END
/* only difference is taitosj_fake_ replaced with taitosj_mcu_ */
-static ADDRESS_MAP_START( taitosj_main_mcu_map, AS_PROGRAM, 8, taitosj_state )
+ADDRESS_MAP_START(taitosj_state::taitosj_main_mcu_map)
AM_IMPORT_FROM( taitosj_main_nomcu_map )
AM_RANGE(0x8800, 0x8801) AM_MIRROR(0x07fe) AM_DEVREADWRITE("bmcu", taito_sj_security_mcu_device, data_r, data_w)
ADDRESS_MAP_END
@@ -272,7 +272,7 @@ CUSTOM_INPUT_MEMBER(taitosj_state::kikstart_gear_r)
}
// TODO: merge with above
-static ADDRESS_MAP_START( kikstart_main_map, AS_PROGRAM, 8, taitosj_state )
+ADDRESS_MAP_START(taitosj_state::kikstart_main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -368,7 +368,7 @@ WRITE8_MEMBER(taitosj_state::sound_semaphore2_clear_w)
}
-static ADDRESS_MAP_START( taitosj_audio_map, AS_PROGRAM, 8, taitosj_state )
+ADDRESS_MAP_START(taitosj_state::taitosj_audio_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x4800, 0x4801) AM_MIRROR(0x07f8) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/taitotx.cpp b/src/mame/drivers/taitotx.cpp
index 129bd64b5db..86d08588f2b 100644
--- a/src/mame/drivers/taitotx.cpp
+++ b/src/mame/drivers/taitotx.cpp
@@ -135,6 +135,7 @@ public:
virtual void video_start() override;
uint32_t screen_update_taito_type_x(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void taito_type_x(machine_config &config);
+ void taito_type_x_map(address_map &map);
};
@@ -150,7 +151,7 @@ uint32_t taito_type_x_state::screen_update_taito_type_x(screen_device &screen, b
return 0;
}
-static ADDRESS_MAP_START( taito_type_x_map, AS_PROGRAM, 32, taito_type_x_state )
+ADDRESS_MAP_START(taito_type_x_state::taito_type_x_map)
AM_RANGE(0x00, 0x0f) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/taitotz.cpp b/src/mame/drivers/taitotz.cpp
index 6c3f8a4a8b7..5494840fe17 100644
--- a/src/mame/drivers/taitotz.cpp
+++ b/src/mame/drivers/taitotz.cpp
@@ -619,6 +619,9 @@ public:
void init_taitotz_111a();
void taitotz(machine_config &config);
void landhigh(machine_config &config);
+ void landhigh_tlcs900h_mem(address_map &map);
+ void ppc603e_mem(address_map &map);
+ void tlcs900h_mem(address_map &map);
};
class taitotz_renderer : public poly_manager<float, taitotz_polydata, 6, 50000>
@@ -2059,7 +2062,7 @@ WRITE64_MEMBER(taitotz_state::ppc_common_w)
// 0x40000000...0x400fffff: BIOS Work RAM
// 0x40100000...0x40ffffff: User Work RAM
-static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64, taitotz_state)
+ADDRESS_MAP_START(taitotz_state::ppc603e_mem)
AM_RANGE(0x00000000, 0x0000001f) AM_READWRITE(video_chip_r, video_chip_w)
AM_RANGE(0x10000000, 0x1000001f) AM_READWRITE(video_fifo_r, video_fifo_w)
AM_RANGE(0x40000000, 0x40ffffff) AM_RAM AM_SHARE("work_ram") // Work RAM
@@ -2219,7 +2222,7 @@ READ16_MEMBER(taitotz_state::tlcs_ide1_r)
// 0xfc0d55: INTRX1 Serial 1 receive
// 0xfc0ce1: INTTX1 Serial 1 transmit
-static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 16, taitotz_state)
+ADDRESS_MAP_START(taitotz_state::tlcs900h_mem)
AM_RANGE(0x010000, 0x02ffff) AM_RAM // Work RAM
AM_RANGE(0x040000, 0x041fff) AM_RAM AM_SHARE("nvram") // Backup RAM
AM_RANGE(0x044000, 0x04400f) AM_READWRITE8(tlcs_rtc_r, tlcs_rtc_w, 0xffff)
@@ -2230,7 +2233,7 @@ static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 16, taitotz_state)
AM_RANGE(0xfc0000, 0xffffff) AM_ROM AM_REGION("io_cpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( landhigh_tlcs900h_mem, AS_PROGRAM, 16, taitotz_state)
+ADDRESS_MAP_START(taitotz_state::landhigh_tlcs900h_mem)
AM_RANGE(0x200000, 0x21ffff) AM_RAM // Work RAM
AM_RANGE(0x400000, 0x401fff) AM_RAM AM_SHARE("nvram") // Backup RAM
AM_RANGE(0x404000, 0x40400f) AM_READWRITE8(tlcs_rtc_r, tlcs_rtc_w, 0xffff)
diff --git a/src/mame/drivers/taitowlf.cpp b/src/mame/drivers/taitowlf.cpp
index 66ba1a24349..055bd749aaa 100644
--- a/src/mame/drivers/taitowlf.cpp
+++ b/src/mame/drivers/taitowlf.cpp
@@ -66,6 +66,8 @@ public:
uint32_t screen_update_taitowlf(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void intel82439tx_init();
void taitowlf(machine_config &config);
+ void taitowlf_io(address_map &map);
+ void taitowlf_map(address_map &map);
};
#if !ENABLE_VGA
@@ -269,7 +271,7 @@ WRITE32_MEMBER(taitowlf_state::bios_ram_w)
}
-static ADDRESS_MAP_START( taitowlf_map, AS_PROGRAM, 32, taitowlf_state )
+ADDRESS_MAP_START(taitowlf_state::taitowlf_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
#if ENABLE_VGA
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
@@ -289,7 +291,7 @@ static ADDRESS_MAP_START( taitowlf_map, AS_PROGRAM, 32, taitowlf_state )
AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(taitowlf_io, AS_IO, 32, taitowlf_state )
+ADDRESS_MAP_START(taitowlf_state::taitowlf_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00eb) AM_NOP
diff --git a/src/mame/drivers/tandy1t.cpp b/src/mame/drivers/tandy1t.cpp
index 1788640587f..bd5b85586e0 100644
--- a/src/mame/drivers/tandy1t.cpp
+++ b/src/mame/drivers/tandy1t.cpp
@@ -140,6 +140,14 @@ public:
void t1000sl2(machine_config &config);
void t1000hx(machine_config &config);
void t1000tx(machine_config &config);
+ void biosbank_map(address_map &map);
+ void tandy1000_16_io(address_map &map);
+ void tandy1000_286_map(address_map &map);
+ void tandy1000_bank_io(address_map &map);
+ void tandy1000_bank_map(address_map &map);
+ void tandy1000_io(address_map &map);
+ void tandy1000_map(address_map &map);
+ void tandy1000tx_io(address_map &map);
};
/* tandy 1000 eeprom
@@ -540,13 +548,13 @@ static INPUT_PORTS_START( t1000_101key )
PORT_INCLUDE(at_keyboard)
INPUT_PORTS_END
-static ADDRESS_MAP_START(tandy1000_map, AS_PROGRAM, 8, tandy1000_state )
+ADDRESS_MAP_START(tandy1000_state::tandy1000_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xb8000, 0xbffff) AM_DEVICE("pcvideo_t1000:vram", address_map_bank_device, amap8)
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tandy1000_io, AS_IO, 8, tandy1000_state )
+ADDRESS_MAP_START(tandy1000_state::tandy1000_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", t1000_mb_device, map)
AM_RANGE(0x0060, 0x0063) AM_READWRITE(tandy1000_pio_r, tandy1000_pio_w)
@@ -557,19 +565,19 @@ static ADDRESS_MAP_START(tandy1000_io, AS_IO, 8, tandy1000_state )
AM_RANGE(0x03d0, 0x03df) AM_DEVREAD("pcvideo_t1000", pcvideo_t1000_device, read) AM_DEVWRITE("pcvideo_t1000", pcvideo_t1000_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tandy1000_bank_map, AS_PROGRAM, 16, tandy1000_state )
+ADDRESS_MAP_START(tandy1000_state::tandy1000_bank_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xb8000, 0xbffff) AM_DEVICE8("pcvideo_t1000:vram", address_map_bank_device, amap8, 0xffff)
AM_RANGE(0xe0000, 0xeffff) AM_DEVICE("biosbank", address_map_bank_device, amap16)
AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION( "rom", 0x70000 )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(biosbank_map, 0, 16, tandy1000_state)
+ADDRESS_MAP_START(tandy1000_state::biosbank_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x80000, 0xfffff) AM_ROM AM_REGION("rom", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tandy1000_16_io, AS_IO, 16, tandy1000_state )
+ADDRESS_MAP_START(tandy1000_state::tandy1000_16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE8("mb", t1000_mb_device, map, 0xffff)
AM_RANGE(0x0060, 0x0063) AM_READWRITE8(tandy1000_pio_r, tandy1000_pio_w, 0xffff)
@@ -582,19 +590,19 @@ static ADDRESS_MAP_START(tandy1000_16_io, AS_IO, 16, tandy1000_state )
AM_RANGE(0xffe8, 0xffe9) AM_WRITE8(vram_bank_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tandy1000_bank_io, AS_IO, 16, tandy1000_state )
+ADDRESS_MAP_START(tandy1000_state::tandy1000_bank_io)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(tandy1000_16_io)
AM_RANGE(0xffea, 0xffeb) AM_READWRITE8(tandy1000_bank_r, tandy1000_bank_w, 0xffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tandy1000tx_io, AS_IO, 16, tandy1000_state )
+ADDRESS_MAP_START(tandy1000_state::tandy1000tx_io)
ADDRESS_MAP_UNMAP_HIGH
AM_IMPORT_FROM(tandy1000_16_io)
AM_RANGE(0x00a0, 0x00a1) AM_WRITE8(nmi_vram_bank_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tandy1000_286_map, AS_PROGRAM, 16, tandy1000_state )
+ADDRESS_MAP_START(tandy1000_state::tandy1000_286_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x000fffff)
AM_RANGE(0xb8000, 0xbffff) AM_DEVICE8("pcvideo_t1000:vram", address_map_bank_device, amap8, 0xffff)
diff --git a/src/mame/drivers/tandy2k.cpp b/src/mame/drivers/tandy2k.cpp
index 0c65d59a56d..e9bc1fce2e7 100644
--- a/src/mame/drivers/tandy2k.cpp
+++ b/src/mame/drivers/tandy2k.cpp
@@ -307,7 +307,7 @@ WRITE8_MEMBER( tandy2k_state::addr_ctrl_w )
// Memory Maps
-static ADDRESS_MAP_START( tandy2k_mem, AS_PROGRAM, 16, tandy2k_state )
+ADDRESS_MAP_START(tandy2k_state::tandy2k_mem)
ADDRESS_MAP_UNMAP_HIGH
// AM_RANGE(0x00000, 0xdffff) AM_RAM
AM_RANGE(0xe0000, 0xf7fff) AM_RAM AM_SHARE("hires_ram")
@@ -315,7 +315,7 @@ static ADDRESS_MAP_START( tandy2k_mem, AS_PROGRAM, 16, tandy2k_state )
AM_RANGE(0xfc000, 0xfdfff) AM_MIRROR(0x2000) AM_ROM AM_REGION(I80186_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tandy2k_io, AS_IO, 16, tandy2k_state )
+ADDRESS_MAP_START(tandy2k_state::tandy2k_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x00001) AM_MIRROR(0x8) AM_READWRITE8(enable_r, enable_w, 0x00ff)
AM_RANGE(0x00002, 0x00003) AM_MIRROR(0x8) AM_WRITE8(dma_mux_w, 0x00ff)
@@ -336,14 +336,14 @@ static ADDRESS_MAP_START( tandy2k_io, AS_IO, 16, tandy2k_state )
// AM_RANGE(0x0ff00, 0x0ffff) AM_READWRITE(i186_internal_port_r, i186_internal_port_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tandy2k_hd_io, AS_IO, 16, tandy2k_state )
+ADDRESS_MAP_START(tandy2k_state::tandy2k_hd_io)
AM_IMPORT_FROM(tandy2k_io)
// AM_RANGE(0x000e0, 0x000ff) AM_WRITE8(hdc_dack_w, 0x00ff)
// AM_RANGE(0x0026c, 0x0026d) AM_DEVREADWRITE8(WD1010_TAG, wd1010_device, hdc_reset_r, hdc_reset_w, 0x00ff)
// AM_RANGE(0x0026e, 0x0027f) AM_DEVREADWRITE8(WD1010_TAG, wd1010_device, wd1010_r, wd1010_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vpac_mem, 0, 8, tandy2k_state )
+ADDRESS_MAP_START(tandy2k_state::vpac_mem)
AM_RANGE(0x0000, 0x3fff) AM_READ(videoram_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tank8.cpp b/src/mame/drivers/tank8.cpp
index 6dd97588f5b..0a6313f5f1c 100644
--- a/src/mame/drivers/tank8.cpp
+++ b/src/mame/drivers/tank8.cpp
@@ -95,7 +95,7 @@ WRITE8_MEMBER(tank8_state::motor_w)
m_discrete->write(space, NODE_RELATIVE(TANK8_MOTOR1_EN, offset), data);
}
-static ADDRESS_MAP_START( tank8_cpu_map, AS_PROGRAM, 8, tank8_state )
+ADDRESS_MAP_START(tank8_state::tank8_cpu_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0400, 0x17ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_ROM
diff --git a/src/mame/drivers/tankbatt.cpp b/src/mame/drivers/tankbatt.cpp
index 6ae18807587..22da1c044b9 100644
--- a/src/mame/drivers/tankbatt.cpp
+++ b/src/mame/drivers/tankbatt.cpp
@@ -167,7 +167,7 @@ WRITE_LINE_MEMBER(tankbatt_state::coinlockout_w)
machine().bookkeeping().coin_lockout_w(1, state);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tankbatt_state )
+ADDRESS_MAP_START(tankbatt_state::main_map)
AM_RANGE(0x0000, 0x000f) AM_RAM AM_SHARE("bulletsram")
AM_RANGE(0x0010, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x07ff) AM_RAM
diff --git a/src/mame/drivers/tankbust.cpp b/src/mame/drivers/tankbust.cpp
index b0cdee5db8e..9fe3b3adda7 100644
--- a/src/mame/drivers/tankbust.cpp
+++ b/src/mame/drivers/tankbust.cpp
@@ -190,7 +190,7 @@ READ8_MEMBER(tankbust_state::some_changing_input)
return m_variable_data;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tankbust_state )
+ADDRESS_MAP_START(tankbust_state::main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank2")
@@ -209,7 +209,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tankbust_state )
//AM_RANGE(0xf800, 0xffff) AM_READ(read_from_unmapped_memory) /* a bug in game code ? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map_cpu2, AS_IO, 8, tankbust_state )
+ADDRESS_MAP_START(tankbust_state::port_map_cpu2)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x10) AM_DEVWRITE("ay2", ay8910_device, data_w)
AM_RANGE(0x30, 0x30) AM_DEVREADWRITE("ay2", ay8910_device, data_r, address_w)
@@ -218,7 +218,7 @@ static ADDRESS_MAP_START( port_map_cpu2, AS_IO, 8, tankbust_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( map_cpu2, AS_PROGRAM, 8, tankbust_state )
+ADDRESS_MAP_START(tankbust_state::map_cpu2)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x3fff) AM_WRITENOP /* garbage, written in initialization loop */
//0x4000 and 0x4040-0x4045 seem to be used (referenced in the code)
diff --git a/src/mame/drivers/taotaido.cpp b/src/mame/drivers/taotaido.cpp
index 4e014871184..c80d79e92c1 100644
--- a/src/mame/drivers/taotaido.cpp
+++ b/src/mame/drivers/taotaido.cpp
@@ -96,7 +96,7 @@ WRITE8_MEMBER(taotaido_state::unknown_output_w)
// Bits 5, 4 also used?
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, taotaido_state )
+ADDRESS_MAP_START(taotaido_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(bgvideoram_w) AM_SHARE("bgram") // bg ram?
AM_RANGE(0xa00000, 0xa01fff) AM_RAM AM_SHARE("spriteram") // sprite ram
@@ -122,13 +122,13 @@ WRITE8_MEMBER(taotaido_state::sh_bankswitch_w)
membank("soundbank")->set_entry(data & 0x03);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taotaido_state )
+ADDRESS_MAP_START(taotaido_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, taotaido_state )
+ADDRESS_MAP_START(taotaido_state::sound_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(sh_bankswitch_w)
diff --git a/src/mame/drivers/tapatune.cpp b/src/mame/drivers/tapatune.cpp
index 4fef345318e..15f806cbb3c 100644
--- a/src/mame/drivers/tapatune.cpp
+++ b/src/mame/drivers/tapatune.cpp
@@ -108,6 +108,9 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void tapatune(machine_config &config);
void tapatune_base(machine_config &config);
+ void maincpu_io_map(address_map &map);
+ void maincpu_map(address_map &map);
+ void video_map(address_map &map);
};
@@ -277,7 +280,7 @@ READ8_MEMBER(tapatune_state::read_data_from_68k)
*
*************************************/
-static ADDRESS_MAP_START( video_map, AS_PROGRAM, 16, tapatune_state )
+ADDRESS_MAP_START(tapatune_state::video_map)
AM_RANGE(0x000000, 0x2fffff) AM_ROM
AM_RANGE(0x300000, 0x31ffff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x320000, 0x33ffff) AM_RAM
@@ -289,13 +292,13 @@ static ADDRESS_MAP_START( video_map, AS_PROGRAM, 16, tapatune_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, tapatune_state )
+ADDRESS_MAP_START(tapatune_state::maincpu_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP
AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START ( maincpu_io_map, AS_IO, 8, tapatune_state )
+ADDRESS_MAP_START(tapatune_state::maincpu_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(bsmt_data_lo_w)
AM_RANGE(0x08, 0x08) AM_WRITE(bsmt_data_hi_w)
diff --git a/src/mame/drivers/targeth.cpp b/src/mame/drivers/targeth.cpp
index ee971efc58b..9a4f0417c6c 100644
--- a/src/mame/drivers/targeth.cpp
+++ b/src/mame/drivers/targeth.cpp
@@ -138,11 +138,11 @@ READ8_MEMBER(targeth_state::shareram_r)
}
-static ADDRESS_MAP_START( mcu_hostmem_map, 0, 8, targeth_state )
+ADDRESS_MAP_START(targeth_state::mcu_hostmem_map)
AM_RANGE(0x8000, 0xffff) AM_READWRITE(shareram_r, shareram_w) // confirmed that 0x8000 - 0xffff is a window into 68k shared RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, targeth_state )
+ADDRESS_MAP_START(targeth_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(vram_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x108000, 0x108007) AM_WRITEONLY AM_SHARE("vregs") /* Video Registers */
@@ -167,7 +167,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, targeth_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, targeth_state )
+ADDRESS_MAP_START(targeth_state::oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tasman.cpp b/src/mame/drivers/tasman.cpp
index 9bf2b0ee4b6..46b715073ce 100644
--- a/src/mame/drivers/tasman.cpp
+++ b/src/mame/drivers/tasman.cpp
@@ -81,6 +81,8 @@ public:
K056832_CB_MEMBER(tile_callback);
K053246_CB_MEMBER(sprite_callback);
void kongambl(machine_config &config);
+ void kongamaud_map(address_map &map);
+ void kongambl_map(address_map &map);
};
@@ -206,7 +208,7 @@ WRITE8_MEMBER(kongambl_state::kongambl_ff_w)
// printf("%02x\n",data);
}
-static ADDRESS_MAP_START( kongambl_map, AS_PROGRAM, 32, kongambl_state )
+ADDRESS_MAP_START(kongambl_state::kongambl_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // main program
AM_RANGE(0x100000, 0x11ffff) AM_RAM // work RAM
@@ -259,7 +261,7 @@ static ADDRESS_MAP_START( kongambl_map, AS_PROGRAM, 32, kongambl_state )
//AM_RANGE(0x780004, 0x780007) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kongamaud_map, AS_PROGRAM, 16, kongambl_state )
+ADDRESS_MAP_START(kongambl_state::kongamaud_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM // main program (mirrored?)
AM_RANGE(0x100000, 0x10ffff) AM_RAM // work RAM
AM_RANGE(0x180000, 0x180001) AM_WRITENOP
diff --git a/src/mame/drivers/tatsumi.cpp b/src/mame/drivers/tatsumi.cpp
index 1454fbd42ae..93e625615db 100644
--- a/src/mame/drivers/tatsumi.cpp
+++ b/src/mame/drivers/tatsumi.cpp
@@ -202,7 +202,7 @@ WRITE16_MEMBER(cyclwarr_state::cyclwarr_sound_w)
/***************************************************************************/
-static ADDRESS_MAP_START( apache3_v30_map, AS_PROGRAM, 16, apache3_state )
+ADDRESS_MAP_START(apache3_state::apache3_v30_map)
AM_RANGE(0x00000, 0x03fff) AM_RAM
AM_RANGE(0x04000, 0x07fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x08000, 0x08fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -216,7 +216,7 @@ static ADDRESS_MAP_START( apache3_v30_map, AS_PROGRAM, 16, apache3_state )
AM_RANGE(0xa0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apache3_68000_map, AS_PROGRAM, 16, apache3_state )
+ADDRESS_MAP_START(apache3_state::apache3_68000_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0x80000, 0x83fff) AM_RAM AM_SHARE("68k_ram")
AM_RANGE(0x90000, 0x93fff) AM_RAM AM_SHARE("spriteram")
@@ -228,7 +228,7 @@ static ADDRESS_MAP_START( apache3_68000_map, AS_PROGRAM, 16, apache3_state )
AM_RANGE(0xe0000, 0xe7fff) AM_READWRITE(apache3_z80_r, apache3_z80_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apache3_v20_map, AS_PROGRAM, 8, apache3_state )
+ADDRESS_MAP_START(apache3_state::apache3_v20_map)
AM_RANGE(0x00000, 0x01fff) AM_RAM
AM_RANGE(0x04000, 0x04003) AM_DEVREADWRITE("ppi", i8255_device, read, write)
AM_RANGE(0x06000, 0x06001) AM_READ_PORT("IN0") // esw
@@ -238,14 +238,14 @@ static ADDRESS_MAP_START( apache3_v20_map, AS_PROGRAM, 8, apache3_state )
AM_RANGE(0xf0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( apache3_z80_map, AS_PROGRAM, 8, apache3_state )
+ADDRESS_MAP_START(apache3_state::apache3_z80_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("apache3_z80_ram")
AM_RANGE(0x8000, 0xffff) AM_WRITE(apache3_road_x_w)
ADDRESS_MAP_END
/*****************************************************************/
-static ADDRESS_MAP_START( roundup5_v30_map, AS_PROGRAM, 16, roundup5_state )
+ADDRESS_MAP_START(roundup5_state::roundup5_v30_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM
AM_RANGE(0x08000, 0x0bfff) AM_RAM_WRITE(text_w) AM_SHARE("videoram")
AM_RANGE(0x0c000, 0x0c003) AM_WRITE(roundup5_crt_w)
@@ -261,7 +261,7 @@ static ADDRESS_MAP_START( roundup5_v30_map, AS_PROGRAM, 16, roundup5_state )
AM_RANGE(0x80000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roundup5_68000_map, AS_PROGRAM, 16, roundup5_state )
+ADDRESS_MAP_START(roundup5_state::roundup5_68000_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM
AM_RANGE(0x80000, 0x83fff) AM_RAM AM_SHARE("68k_ram")
AM_RANGE(0x90000, 0x93fff) AM_RAM AM_SHARE("spriteram")
@@ -273,7 +273,7 @@ static ADDRESS_MAP_START( roundup5_68000_map, AS_PROGRAM, 16, roundup5_state )
AM_RANGE(0xe0000, 0xe0001) AM_WRITE(roundup5_e0000_w) AM_SHARE("ru5_e0000_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( roundup5_z80_map, AS_PROGRAM, 8, roundup5_state )
+ADDRESS_MAP_START(roundup5_state::roundup5_z80_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xffef) AM_RAM
AM_RANGE(0xfff0, 0xfff1) AM_READ(tatsumi_hack_ym2151_r) AM_DEVWRITE("ymsnd", ym2151_device, write)
@@ -284,7 +284,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( cyclwarr_68000a_map, AS_PROGRAM, 16, cyclwarr_state )
+ADDRESS_MAP_START(cyclwarr_state::cyclwarr_68000a_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("cw_cpua_ram")
AM_RANGE(0x03e000, 0x03efff) AM_RAM
AM_RANGE(0x040000, 0x04ffff) AM_RAM AM_SHARE("cw_cpub_ram")
@@ -305,7 +305,7 @@ static ADDRESS_MAP_START( cyclwarr_68000a_map, AS_PROGRAM, 16, cyclwarr_state )
AM_RANGE(0x2c0000, 0x33ffff) AM_ROMBANK("bank1") /* CPU A ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cyclwarr_68000b_map, AS_PROGRAM, 16, cyclwarr_state )
+ADDRESS_MAP_START(cyclwarr_state::cyclwarr_68000b_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("cw_cpub_ram")
AM_RANGE(0x080000, 0x08ffff) AM_READWRITE(cyclwarr_videoram1_r, cyclwarr_videoram1_w)
@@ -324,7 +324,7 @@ static ADDRESS_MAP_START( cyclwarr_68000b_map, AS_PROGRAM, 16, cyclwarr_state )
AM_RANGE(0x2c0000, 0x33ffff) AM_ROMBANK("bank1") /* CPU A ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cyclwarr_z80_map, AS_PROGRAM, 8, cyclwarr_state )
+ADDRESS_MAP_START(cyclwarr_state::cyclwarr_z80_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xffef) AM_RAM
AM_RANGE(0xfff0, 0xfff1) AM_READ(tatsumi_hack_ym2151_r) AM_DEVWRITE("ymsnd", ym2151_device, write)
@@ -335,7 +335,7 @@ ADDRESS_MAP_END
/******************************************************************************/
-static ADDRESS_MAP_START( bigfight_68000a_map, AS_PROGRAM, 16, cyclwarr_state )
+ADDRESS_MAP_START(cyclwarr_state::bigfight_68000a_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("cw_cpua_ram")
AM_RANGE(0x03e000, 0x03efff) AM_RAM
@@ -358,7 +358,7 @@ static ADDRESS_MAP_START( bigfight_68000a_map, AS_PROGRAM, 16, cyclwarr_state )
AM_RANGE(0x200000, 0x27ffff) AM_ROMBANK("bank1") /* CPU B ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bigfight_68000b_map, AS_PROGRAM, 16, cyclwarr_state )
+ADDRESS_MAP_START(cyclwarr_state::bigfight_68000b_map)
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("cw_cpub_ram")
AM_RANGE(0x080000, 0x08ffff) AM_READWRITE(cyclwarr_videoram1_r, cyclwarr_videoram1_w)
AM_RANGE(0x090000, 0x09ffff) AM_READWRITE(cyclwarr_videoram0_r, cyclwarr_videoram0_w)
diff --git a/src/mame/drivers/tattack.cpp b/src/mame/drivers/tattack.cpp
index 9bbd563fe82..3948f60b36c 100644
--- a/src/mame/drivers/tattack.cpp
+++ b/src/mame/drivers/tattack.cpp
@@ -78,6 +78,7 @@ public:
uint32_t screen_update_tattack(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void tattack(machine_config &config);
+ void tattack_map(address_map &map);
protected:
virtual void video_start() override;
private:
@@ -263,7 +264,7 @@ WRITE8_MEMBER(tattack_state::sound_w)
}
}
-static ADDRESS_MAP_START( tattack_map, AS_PROGRAM, 8, tattack_state )
+ADDRESS_MAP_START(tattack_state::tattack_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x4000, 0x4000) AM_READ_PORT("AN_PADDLE") // $315, checks again with same memory, loops if different (?)
AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/tavernie.cpp b/src/mame/drivers/tavernie.cpp
index 368b6199a33..6dfd53a69d9 100644
--- a/src/mame/drivers/tavernie.cpp
+++ b/src/mame/drivers/tavernie.cpp
@@ -99,6 +99,8 @@ public:
void ivg09(machine_config &config);
void cpu09(machine_config &config);
+ void cpu09_mem(address_map &map);
+ void ivg09_mem(address_map &map);
private:
uint8_t m_term_data;
uint8_t m_pa;
@@ -114,7 +116,7 @@ private:
};
-static ADDRESS_MAP_START(cpu09_mem, AS_PROGRAM, 8, tavernie_state)
+ADDRESS_MAP_START(tavernie_state::cpu09_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x1000, 0x1fff) AM_NOP
AM_RANGE(0xeb00, 0xeb03) AM_DEVREADWRITE("pia", pia6821_device, read, write)
@@ -124,7 +126,7 @@ static ADDRESS_MAP_START(cpu09_mem, AS_PROGRAM, 8, tavernie_state)
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ivg09_mem, AS_PROGRAM, 8, tavernie_state)
+ADDRESS_MAP_START(tavernie_state::ivg09_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x2000, 0x2003) AM_DEVREADWRITE("pia_ivg", pia6821_device, read, write)
diff --git a/src/mame/drivers/taxidriv.cpp b/src/mame/drivers/taxidriv.cpp
index 9d7b1387d1c..808e0636cea 100644
--- a/src/mame/drivers/taxidriv.cpp
+++ b/src/mame/drivers/taxidriv.cpp
@@ -110,7 +110,7 @@ WRITE8_MEMBER(taxidriv_state::p8910_0b_w)
m_s4 = data & 1;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, taxidriv_state )
+ADDRESS_MAP_START(taxidriv_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM /* ??? */
AM_RANGE(0x9000, 0x9fff) AM_RAM /* ??? */
@@ -134,7 +134,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, taxidriv_state )
AM_RANGE(0xf800, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, taxidriv_state )
+ADDRESS_MAP_START(taxidriv_state::cpu2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM
AM_RANGE(0x8000, 0x87ff) AM_RAM
@@ -146,13 +146,13 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, taxidriv_state )
AM_RANGE(0xe004, 0xe004) AM_READ_PORT("P2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8, taxidriv_state )
+ADDRESS_MAP_START(taxidriv_state::cpu3_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x2000) AM_READNOP /* irq ack? */
AM_RANGE(0xfc00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu3_port_map, AS_IO, 8, taxidriv_state )
+ADDRESS_MAP_START(taxidriv_state::cpu3_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x01, 0x01) AM_DEVREAD("ay1", ay8910_device, data_r)
diff --git a/src/mame/drivers/tbowl.cpp b/src/mame/drivers/tbowl.cpp
index bebb79dabef..c21b081b592 100644
--- a/src/mame/drivers/tbowl.cpp
+++ b/src/mame/drivers/tbowl.cpp
@@ -57,7 +57,7 @@ WRITE8_MEMBER(tbowl_state::boardc_bankswitch_w)
/* Board B */
-static ADDRESS_MAP_START( 6206B_map, AS_PROGRAM, 8, tbowl_state )
+ADDRESS_MAP_START(tbowl_state::_6206B_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xa000, 0xbfff) AM_RAM_WRITE(bg2videoram_w) AM_SHARE("bg2videoram")
@@ -98,7 +98,7 @@ WRITE8_MEMBER(tbowl_state::trigger_nmi)
m_maincpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( 6206C_map, AS_PROGRAM, 8, tbowl_state )
+ADDRESS_MAP_START(tbowl_state::_6206C_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_READONLY
AM_RANGE(0xc000, 0xd7ff) AM_WRITEONLY
@@ -162,7 +162,7 @@ WRITE_LINE_MEMBER(tbowl_state::adpcm_int_2)
adpcm_int(m_msm2, 1);
}
-static ADDRESS_MAP_START( 6206A_map, AS_PROGRAM, 8, tbowl_state )
+ADDRESS_MAP_START(tbowl_state::_6206A_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("ym1", ym3812_device, write)
@@ -431,17 +431,17 @@ MACHINE_CONFIG_START(tbowl_state::tbowl)
/* CPU on Board '6206B' */
MCFG_CPU_ADD("maincpu", Z80, 8000000) /* NEC D70008AC-8 (Z80 Clone) */
- MCFG_CPU_PROGRAM_MAP(6206B_map)
+ MCFG_CPU_PROGRAM_MAP(_6206B_map)
MCFG_CPU_VBLANK_INT_DRIVER("lscreen", tbowl_state, irq0_line_hold)
/* CPU on Board '6206C' */
MCFG_CPU_ADD("sub", Z80, 8000000) /* NEC D70008AC-8 (Z80 Clone) */
- MCFG_CPU_PROGRAM_MAP(6206C_map)
+ MCFG_CPU_PROGRAM_MAP(_6206C_map)
MCFG_CPU_VBLANK_INT_DRIVER("lscreen", tbowl_state, irq0_line_hold)
/* CPU on Board '6206A' */
MCFG_CPU_ADD("audiocpu", Z80, 4000000) /* Actual Z80 */
- MCFG_CPU_PROGRAM_MAP(6206A_map)
+ MCFG_CPU_PROGRAM_MAP(_6206A_map)
MCFG_QUANTUM_TIME(attotime::from_hz(6000))
diff --git a/src/mame/drivers/tceptor.cpp b/src/mame/drivers/tceptor.cpp
index be6d9aefe21..763ebc6a2b0 100644
--- a/src/mame/drivers/tceptor.cpp
+++ b/src/mame/drivers/tceptor.cpp
@@ -145,7 +145,7 @@ READ8_MEMBER(tceptor_state::input1_r)
/*******************************************************************/
-static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8, tceptor_state )
+ADDRESS_MAP_START(tceptor_state::m6809_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(tceptor_tile_ram_w) AM_SHARE("tile_ram")
AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(tceptor_tile_attr_w) AM_SHARE("tile_attr")
@@ -165,7 +165,7 @@ static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8, tceptor_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m6502_a_map, AS_PROGRAM, 8, tceptor_state )
+ADDRESS_MAP_START(tceptor_state::m6502_a_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x0100, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x02ff) AM_RAM
@@ -177,7 +177,7 @@ static ADDRESS_MAP_START( m6502_a_map, AS_PROGRAM, 8, tceptor_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m6502_b_map, AS_PROGRAM, 8, tceptor_state )
+ADDRESS_MAP_START(tceptor_state::m6502_b_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x0100, 0x01ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("dac", dac_byte_interface, write)
@@ -186,7 +186,7 @@ static ADDRESS_MAP_START( m6502_b_map, AS_PROGRAM, 8, tceptor_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16, tceptor_state )
+ADDRESS_MAP_START(tceptor_state::m68k_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM // M68K ERROR 1
AM_RANGE(0x100000, 0x10ffff) AM_ROM // not sure
AM_RANGE(0x200000, 0x203fff) AM_RAM // M68K ERROR 0
@@ -198,7 +198,7 @@ static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16, tceptor_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, tceptor_state )
+ADDRESS_MAP_START(tceptor_state::mcu_map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE("mcu", hd63701_cpu_device, m6801_io_r, m6801_io_w)
AM_RANGE(0x0080, 0x00ff) AM_RAM
AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namco_cus30_device, namcos1_cus30_r, namcos1_cus30_w)
@@ -218,7 +218,7 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, tceptor_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, tceptor_state )
+ADDRESS_MAP_START(tceptor_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITENOP
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_WRITENOP
diff --git a/src/mame/drivers/tcl.cpp b/src/mame/drivers/tcl.cpp
index 715791302d5..5dcf8e10f64 100644
--- a/src/mame/drivers/tcl.cpp
+++ b/src/mame/drivers/tcl.cpp
@@ -60,6 +60,7 @@ public:
uint32_t screen_update_tcl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void tcl(machine_config &config);
+ void tcl_map(address_map &map);
};
@@ -71,7 +72,7 @@ uint32_t tcl_state::screen_update_tcl(screen_device &screen, bitmap_ind16 &bitma
return 0;
}
-static ADDRESS_MAP_START( tcl_map, AS_PROGRAM, 8, tcl_state )
+ADDRESS_MAP_START(tcl_state::tcl_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* bfff ? */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tdv2324.cpp b/src/mame/drivers/tdv2324.cpp
index fbb2ae09f5a..e357b63f902 100644
--- a/src/mame/drivers/tdv2324.cpp
+++ b/src/mame/drivers/tdv2324.cpp
@@ -132,7 +132,7 @@ WRITE8_MEMBER( tdv2324_state::tdv2324_main_io_e2 )
// ADDRESS_MAP( tdv2324_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( tdv2324_mem, AS_PROGRAM, 8, tdv2324_state )
+ADDRESS_MAP_START(tdv2324_state::tdv2324_mem)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_ROM AM_REGION(P8085AH_0_TAG, 0)
/* when copying code to 4000 area it runs right off the end of rom;
* I'm not sure if its supposed to mirror or read as open bus */
@@ -146,7 +146,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tdv2324_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( tdv2324_io, AS_IO, 8, tdv2324_state )
+ADDRESS_MAP_START(tdv2324_state::tdv2324_io)
//ADDRESS_MAP_GLOBAL_MASK(0xff)
/* 0x30 is read by main code and if high bit isn't set at some point it will never get anywhere */
/* e0, e2, e8, ea are written to */
@@ -164,7 +164,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tdv2324_sub_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( tdv2324_sub_mem, AS_PROGRAM, 8, tdv2324_state )
+ADDRESS_MAP_START(tdv2324_state::tdv2324_sub_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION(P8085AH_1_TAG, 0)
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x5000, 0x53ff) AM_RAM // EAROM
@@ -176,7 +176,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tdv2324_sub_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( tdv2324_sub_io, AS_IO, 8, tdv2324_state )
+ADDRESS_MAP_START(tdv2324_state::tdv2324_sub_io)
//ADDRESS_MAP_GLOBAL_MASK(0xff)
/* 20, 23, 30-36, 38, 3a, 3c, 3e, 60, 70 are written to */
AM_RANGE(0x20, 0x23) AM_DEVREADWRITE(P8253_5_1_TAG, pit8253_device, read, write)
@@ -188,7 +188,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tdv2324_fdc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( tdv2324_fdc_mem, AS_PROGRAM, 8, tdv2324_state )
+ADDRESS_MAP_START(tdv2324_state::tdv2324_fdc_mem)
// the following two are probably enabled/disabled via the JP2 jumper block next to the fdc cpu
//AM_RANGE(0x0000, 0x001f) AM_RAM // on-6802-die ram (optionally battery backed)
//AM_RANGE(0x0020, 0x007f) AM_RAM // on-6802-die ram
diff --git a/src/mame/drivers/tec1.cpp b/src/mame/drivers/tec1.cpp
index b5c66b64aaf..c022c5bedd2 100644
--- a/src/mame/drivers/tec1.cpp
+++ b/src/mame/drivers/tec1.cpp
@@ -125,6 +125,10 @@ public:
TIMER_CALLBACK_MEMBER(tec1_kbd_callback);
void tec1(machine_config &config);
void tecjmon(machine_config &config);
+ void tec1_io(address_map &map);
+ void tec1_map(address_map &map);
+ void tecjmon_io(address_map &map);
+ void tecjmon_map(address_map &map);
};
@@ -323,14 +327,14 @@ void tec1_state::machine_reset()
***************************************************************************/
-static ADDRESS_MAP_START( tec1_map, AS_PROGRAM, 8, tec1_state )
+ADDRESS_MAP_START(tec1_state::tec1_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x0fff) AM_RAM // on main board
AM_RANGE(0x1000, 0x3fff) AM_RAM // expansion
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tec1_io, AS_IO, 8, tec1_state )
+ADDRESS_MAP_START(tec1_state::tec1_io)
ADDRESS_MAP_GLOBAL_MASK(0x07)
AM_RANGE(0x00, 0x00) AM_READ(tec1_kbd_r)
AM_RANGE(0x01, 0x01) AM_WRITE(tec1_digit_w)
@@ -338,14 +342,14 @@ static ADDRESS_MAP_START( tec1_io, AS_IO, 8, tec1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tecjmon_map, AS_PROGRAM, 8, tec1_state )
+ADDRESS_MAP_START(tec1_state::tecjmon_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x37ff) AM_RAM
AM_RANGE(0x3800, 0x3fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tecjmon_io, AS_IO, 8, tec1_state )
+ADDRESS_MAP_START(tec1_state::tecjmon_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(tec1_kbd_r)
AM_RANGE(0x01, 0x01) AM_WRITE(tecjmon_digit_w)
diff --git a/src/mame/drivers/techno.cpp b/src/mame/drivers/techno.cpp
index d880efe7311..64bc7adf66d 100644
--- a/src/mame/drivers/techno.cpp
+++ b/src/mame/drivers/techno.cpp
@@ -48,6 +48,7 @@ public:
DECLARE_WRITE16_MEMBER(sound_w);
void techno(machine_config &config);
+ void techno_map(address_map &map);
private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual void machine_start() override;
@@ -66,7 +67,7 @@ private:
};
-static ADDRESS_MAP_START( techno_map, AS_PROGRAM, 16, techno_state )
+ADDRESS_MAP_START(techno_state::techno_map)
ADDRESS_MAP_GLOBAL_MASK(0x1ffff)
AM_RANGE(0x00000, 0x03fff) AM_ROM
AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("nvram") // battery backed-up
diff --git a/src/mame/drivers/tecmo.cpp b/src/mame/drivers/tecmo.cpp
index e4f99fd1292..d343efa7dd6 100644
--- a/src/mame/drivers/tecmo.cpp
+++ b/src/mame/drivers/tecmo.cpp
@@ -136,7 +136,7 @@ READ8_MEMBER(tecmo_state::dswb_h_r)
}
-static ADDRESS_MAP_START( rygar_map, AS_PROGRAM, 8, tecmo_state )
+ADDRESS_MAP_START(tecmo_state::rygar_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(txvideoram_w) AM_SHARE("txvideoram")
@@ -164,7 +164,7 @@ static ADDRESS_MAP_START( rygar_map, AS_PROGRAM, 8, tecmo_state )
AM_RANGE(0xf80b, 0xf80b) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gemini_map, AS_PROGRAM, 8, tecmo_state )
+ADDRESS_MAP_START(tecmo_state::gemini_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(txvideoram_w) AM_SHARE("txvideoram")
@@ -192,7 +192,7 @@ static ADDRESS_MAP_START( gemini_map, AS_PROGRAM, 8, tecmo_state )
AM_RANGE(0xf80b, 0xf80b) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( silkworm_map, AS_PROGRAM, 8, tecmo_state )
+ADDRESS_MAP_START(tecmo_state::silkworm_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(bgvideoram_w) AM_SHARE("bgvideoram")
AM_RANGE(0xc400, 0xc7ff) AM_RAM_WRITE(fgvideoram_w) AM_SHARE("fgvideoram")
@@ -221,7 +221,7 @@ static ADDRESS_MAP_START( silkworm_map, AS_PROGRAM, 8, tecmo_state )
AM_RANGE(0xf80b, 0xf80b) AM_WRITENOP /* ? if mapped to watchdog like in the others, causes reset */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rygar_sound_map, AS_PROGRAM, 8, tecmo_state )
+ADDRESS_MAP_START(tecmo_state::rygar_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ymsnd", ym3526_device, write)
@@ -231,7 +231,7 @@ static ADDRESS_MAP_START( rygar_sound_map, AS_PROGRAM, 8, tecmo_state )
AM_RANGE(0xf000, 0xf000) AM_DEVWRITE("soundlatch", generic_latch_8_device, acknowledge_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tecmo_sound_map, AS_PROGRAM, 8, tecmo_state )
+ADDRESS_MAP_START(tecmo_state::tecmo_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x2000, 0x207f) AM_RAM /* Silkworm set #2 has a custom CPU which */
/* writes code to this area */
diff --git a/src/mame/drivers/tecmo16.cpp b/src/mame/drivers/tecmo16.cpp
index c15dd736ab4..877bb32aa03 100644
--- a/src/mame/drivers/tecmo16.cpp
+++ b/src/mame/drivers/tecmo16.cpp
@@ -38,7 +38,7 @@ Notes:
/******************************************************************************/
-static ADDRESS_MAP_START( fstarfrc_map, AS_PROGRAM, 16, tecmo16_state )
+ADDRESS_MAP_START(tecmo16_state::fstarfrc_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM /* Main RAM */
AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(charram_w) AM_SHARE("charram")
@@ -61,7 +61,7 @@ static ADDRESS_MAP_START( fstarfrc_map, AS_PROGRAM, 16, tecmo16_state )
AM_RANGE(0x16001e, 0x16001f) AM_WRITE(scroll2_y_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ginkun_map, AS_PROGRAM, 16, tecmo16_state )
+ADDRESS_MAP_START(tecmo16_state::ginkun_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM /* Main RAM */
AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(charram_w) AM_SHARE("charram")
@@ -86,7 +86,7 @@ static ADDRESS_MAP_START( ginkun_map, AS_PROGRAM, 16, tecmo16_state )
AM_RANGE(0x16001e, 0x16001f) AM_WRITE(scroll2_y_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tecmo16_state )
+ADDRESS_MAP_START(tecmo16_state::sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xfbff) AM_RAM /* Sound RAM */
AM_RANGE(0xfc00, 0xfc00) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/tecmosys.cpp b/src/mame/drivers/tecmosys.cpp
index ba8c394e955..834ffd9a7ba 100644
--- a/src/mame/drivers/tecmosys.cpp
+++ b/src/mame/drivers/tecmosys.cpp
@@ -274,7 +274,7 @@ WRITE16_MEMBER(tecmosys_state::eeprom_w)
}
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tecmosys_state )
+ADDRESS_MAP_START(tecmosys_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM // work ram
AM_RANGE(0x210000, 0x210001) AM_READNOP // single byte overflow on stack defined as 0x210000
@@ -329,13 +329,13 @@ WRITE8_MEMBER(tecmosys_state::oki_bank_w)
memcpy( region+0x20000, region+0x80000 + upperbank * 0x20000, 0x20000 );
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tecmosys_state )
+ADDRESS_MAP_START(tecmosys_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xf7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, tecmosys_state )
+ADDRESS_MAP_START(tecmosys_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymf", ymf262_device, read, write)
AM_RANGE(0x10, 0x10) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/tecnbras.cpp b/src/mame/drivers/tecnbras.cpp
index 00cfd9bd2ea..fffc7856d3b 100644
--- a/src/mame/drivers/tecnbras.cpp
+++ b/src/mame/drivers/tecnbras.cpp
@@ -38,6 +38,8 @@ public:
// DECLARE_READ8_MEMBER(tecnbras_io_r);
DECLARE_DRIVER_INIT(tecnbras);
void tecnbras(machine_config &config);
+void i80c31_io(address_map &map);
+void i80c31_prg(address_map &map);
private:
int m_xcoord;
char m_digit[14][7];
@@ -46,13 +48,13 @@ private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(i80c31_prg, AS_PROGRAM, 8, tecnbras_state)
+ADDRESS_MAP_START(tecnbras_state::i80c31_prg)
AM_RANGE(0x0000, 0x7FFF) AM_ROM
AM_RANGE(0x8000, 0xFFFF) AM_RAM
ADDRESS_MAP_END
#define DMD_OFFSET 24 //This is a guess. We should verify the real hardware behaviour
-static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, tecnbras_state)
+ADDRESS_MAP_START(tecnbras_state::i80c31_io)
AM_RANGE(0x0100+DMD_OFFSET, 0x0145+DMD_OFFSET) AM_WRITE(set_x_position_w)
AM_RANGE(0x06B8, 0x06BC) AM_WRITE(print_column_w)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_NOP /*buzzer ?*/
diff --git a/src/mame/drivers/tehkanwc.cpp b/src/mame/drivers/tehkanwc.cpp
index d0307ad280f..f800dfcf999 100644
--- a/src/mame/drivers/tehkanwc.cpp
+++ b/src/mame/drivers/tehkanwc.cpp
@@ -229,7 +229,7 @@ WRITE_LINE_MEMBER(tehkanwc_state::adpcm_int)
-static ADDRESS_MAP_START( main_mem, AS_PROGRAM, 8, tehkanwc_state )
+ADDRESS_MAP_START(tehkanwc_state::main_mem)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
@@ -255,7 +255,7 @@ static ADDRESS_MAP_START( main_mem, AS_PROGRAM, 8, tehkanwc_state )
AM_RANGE(0xf870, 0xf870) AM_READ_PORT("DSW1") AM_WRITE(flipscreen_y_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_mem, AS_PROGRAM, 8, tehkanwc_state )
+ADDRESS_MAP_START(tehkanwc_state::sub_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1")
@@ -270,7 +270,7 @@ static ADDRESS_MAP_START( sub_mem, AS_PROGRAM, 8, tehkanwc_state )
AM_RANGE(0xf860, 0xf860) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8, tehkanwc_state )
+ADDRESS_MAP_START(tehkanwc_state::sound_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x8001, 0x8001) AM_WRITE(msm_reset_w)/* MSM51xx reset */
@@ -279,7 +279,7 @@ static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8, tehkanwc_state )
AM_RANGE(0xc000, 0xc000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(sound_answer_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port, AS_IO, 8, tehkanwc_state )
+ADDRESS_MAP_START(tehkanwc_state::sound_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("ay1", ay8910_device, data_r)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/tek405x.cpp b/src/mame/drivers/tek405x.cpp
index 966814cb904..1890f45a9ad 100644
--- a/src/mame/drivers/tek405x.cpp
+++ b/src/mame/drivers/tek405x.cpp
@@ -169,7 +169,7 @@ WRITE8_MEMBER( tek4051_state::lbs_w )
// ADDRESS_MAP( tek4051_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( tek4051_mem, AS_PROGRAM, 8, tek4051_state )
+ADDRESS_MAP_START(tek4051_state::tek4051_mem)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x7fff) AM_RAM // optional RAM
AM_RANGE(0x8000, 0x877f) AM_ROM AM_REGION(MC6800_TAG, 0)
@@ -193,7 +193,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( tek4052_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( tek4052_mem, AS_PROGRAM, 8, tek4052_state )
+ADDRESS_MAP_START(tek4052_state::tek4052_mem)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tek410x.cpp b/src/mame/drivers/tek410x.cpp
index 76fe13502e9..73d22389e7d 100644
--- a/src/mame/drivers/tek410x.cpp
+++ b/src/mame/drivers/tek410x.cpp
@@ -37,16 +37,18 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void tek4109a(machine_config &config);
void tek4107a(machine_config &config);
+ void tek4107a_io(address_map &map);
+ void tek4107a_mem(address_map &map);
};
/* Memory Maps */
-static ADDRESS_MAP_START( tek4107a_mem, AS_PROGRAM, 8, tek4107a_state )
+ADDRESS_MAP_START(tek4107a_state::tek4107a_mem)
AM_RANGE(0x00000, 0xbffff) AM_RAM
AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION(I80188_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tek4107a_io, AS_IO, 8, tek4107a_state )
+ADDRESS_MAP_START(tek4107a_state::tek4107a_io)
ADDRESS_MAP_END
/* Input Ports */
diff --git a/src/mame/drivers/tek440x.cpp b/src/mame/drivers/tek440x.cpp
index 238762e02bc..ef7518876a7 100644
--- a/src/mame/drivers/tek440x.cpp
+++ b/src/mame/drivers/tek440x.cpp
@@ -74,6 +74,8 @@ public:
required_shared_ptr<uint16_t> m_mainram;
required_shared_ptr<uint16_t> m_vram;
void tek4404(machine_config &config);
+ void fdccpu_map(address_map &map);
+ void maincpu_map(address_map &map);
};
/*************************************
@@ -145,7 +147,7 @@ uint32_t tek440x_state::screen_update(screen_device &screen, bitmap_ind16 &bitma
*
*************************************/
-static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 16, tek440x_state )
+ADDRESS_MAP_START(tek440x_state::maincpu_map)
AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x600000, 0x61ffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x740000, 0x747fff) AM_ROM AM_REGION("maincpu", 0)
@@ -166,7 +168,7 @@ static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 16, tek440x_state )
// 7be000-7bffff: SCSI (NCR 5385)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fdccpu_map, AS_PROGRAM, 8, tek440x_state )
+ADDRESS_MAP_START(tek440x_state::fdccpu_map)
AM_RANGE(0x0000, 0x1000) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("fdccpu", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tekxp33x.cpp b/src/mame/drivers/tekxp33x.cpp
index 566dea97d37..bdc7c856dee 100644
--- a/src/mame/drivers/tekxp33x.cpp
+++ b/src/mame/drivers/tekxp33x.cpp
@@ -54,16 +54,18 @@ public:
virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void tekxp330(machine_config &config);
+ void cpu_map(address_map &map);
+ void tms_map(address_map &map);
};
/* Memory Maps */
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, tekxp330_state )
+ADDRESS_MAP_START(tekxp330_state::cpu_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM
AM_RANGE(0x1fc00000, 0x1fdfffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 16, tekxp330_state )
+ADDRESS_MAP_START(tekxp330_state::tms_map)
ADDRESS_MAP_END
/* Input Ports */
diff --git a/src/mame/drivers/tempest.cpp b/src/mame/drivers/tempest.cpp
index 63fd1417eb8..df4a12e4777 100644
--- a/src/mame/drivers/tempest.cpp
+++ b/src/mame/drivers/tempest.cpp
@@ -340,6 +340,7 @@ public:
virtual void machine_start() override;
void tempest(machine_config &config);
+ void main_map(address_map &map);
};
@@ -440,7 +441,7 @@ READ8_MEMBER(tempest_state::rom_ae1f_r)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tempest_state )
+ADDRESS_MAP_START(tempest_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x080f) AM_WRITEONLY AM_SHARE("colorram")
AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/terak.cpp b/src/mame/drivers/terak.cpp
index bbbe73b4988..0917f65e756 100644
--- a/src/mame/drivers/terak.cpp
+++ b/src/mame/drivers/terak.cpp
@@ -31,6 +31,7 @@ public:
uint32_t screen_update_terak(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void terak(machine_config &config);
+ void mem_map(address_map &map);
private:
uint8_t m_unit;
uint8_t m_cmd;
@@ -68,7 +69,7 @@ WRITE16_MEMBER( terak_state::terak_fdc_data_w )
logerror("terak_fdc_data_w %04x\n",data);
}
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 16, terak_state)
+ADDRESS_MAP_START(terak_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xf5ff ) AM_RAM // RAM
diff --git a/src/mame/drivers/terco.cpp b/src/mame/drivers/terco.cpp
index 9113c44e86f..74de2532a5a 100644
--- a/src/mame/drivers/terco.cpp
+++ b/src/mame/drivers/terco.cpp
@@ -266,6 +266,7 @@ public:
//,m_ay3600(*this, "ay3600")
{ }
void t4490(machine_config &config);
+ void t4490_map(address_map &map);
private:
required_device<m6800_cpu_device> m_maincpu;
// virtual void machine_reset() override { m_maincpu->reset(); LOG("--->%s()\n", FUNCNAME); };
@@ -277,7 +278,7 @@ private:
//required_device<ay3600_device> m_ay3600;
};
-static ADDRESS_MAP_START( t4490_map, AS_PROGRAM, 8, t4490_state )
+ADDRESS_MAP_START(t4490_state::t4490_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x3000, 0x3fff) AM_ROM AM_REGION("maincpu", 0x3000)
AM_RANGE(0x9500, 0x95ff) AM_RAM
diff --git a/src/mame/drivers/terminals.cpp b/src/mame/drivers/terminals.cpp
index 7e1af667bbe..ffc7c743115 100644
--- a/src/mame/drivers/terminals.cpp
+++ b/src/mame/drivers/terminals.cpp
@@ -21,12 +21,13 @@ public:
{ }
void terminals(machine_config &config);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
//required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, terminals_state )
+ADDRESS_MAP_START(terminals_state::mem_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( terminals )
diff --git a/src/mame/drivers/terracre.cpp b/src/mame/drivers/terracre.cpp
index 86e2d8ae5cb..e8551ff4f44 100644
--- a/src/mame/drivers/terracre.cpp
+++ b/src/mame/drivers/terracre.cpp
@@ -231,7 +231,7 @@ MACHINE_START_MEMBER(terracre_state,amazon)
save_item(NAME(m_mAmazonProtReg));
}
-static ADDRESS_MAP_START( terracre_map, AS_PROGRAM, 16, terracre_state )
+ADDRESS_MAP_START(terracre_state::terracre_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x020000, 0x0201ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x020200, 0x021fff) AM_RAM
@@ -250,7 +250,7 @@ static ADDRESS_MAP_START( terracre_map, AS_PROGRAM, 16, terracre_state )
AM_RANGE(0x028000, 0x0287ff) AM_RAM_WRITE(amazon_foreground_w) AM_SHARE("fg_videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amazon_base_map, AS_PROGRAM, 16, terracre_state )
+ADDRESS_MAP_START(terracre_state::amazon_base_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x0401ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x040200, 0x040fff) AM_RAM
@@ -269,17 +269,17 @@ static ADDRESS_MAP_START( amazon_base_map, AS_PROGRAM, 16, terracre_state )
AM_RANGE(0x070000, 0x070003) AM_NOP // protection (nop for bootlegs)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( amazon_1412m2_map, AS_PROGRAM, 16, terracre_state)
+ADDRESS_MAP_START(terracre_state::amazon_1412m2_map)
AM_IMPORT_FROM( amazon_base_map )
AM_RANGE(0x070000, 0x070003) AM_READWRITE(amazon_protection_r, amazon_protection_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, terracre_state )
+ADDRESS_MAP_START(terracre_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_3526_io_map, AS_IO, 8, terracre_state )
+ADDRESS_MAP_START(terracre_state::sound_3526_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3526_device, write)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_byte_interface, write)
@@ -288,7 +288,7 @@ static ADDRESS_MAP_START( sound_3526_io_map, AS_IO, 8, terracre_state )
AM_RANGE(0x06, 0x06) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_2203_io_map, AS_IO, 8, terracre_state )
+ADDRESS_MAP_START(terracre_state::sound_2203_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_byte_interface, write)
diff --git a/src/mame/drivers/testconsole.cpp b/src/mame/drivers/testconsole.cpp
index ffa8d403d34..41f65dba165 100644
--- a/src/mame/drivers/testconsole.cpp
+++ b/src/mame/drivers/testconsole.cpp
@@ -89,6 +89,8 @@ public:
}
void whousetc(machine_config &config);
+ void io_map(address_map &map);
+ void program_map(address_map &map);
protected:
virtual void machine_reset() override
{
@@ -100,7 +102,7 @@ protected:
};
-ADDRESS_MAP_START(program_map, AS_PROGRAM, 8, whouse_testcons_state)
+ADDRESS_MAP_START(whouse_testcons_state::program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x2003) AM_DEVWRITE("dsp0", dl1416_device, bus_w)
@@ -115,7 +117,7 @@ ADDRESS_MAP_START(program_map, AS_PROGRAM, 8, whouse_testcons_state)
AM_RANGE(0x8803, 0x8803) AM_READ_PORT("row3")
ADDRESS_MAP_END
-ADDRESS_MAP_START(io_map, AS_IO, 8, whouse_testcons_state)
+ADDRESS_MAP_START(whouse_testcons_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x80, 0x87) AM_DEVREADWRITE("i8155", i8155_device, io_r, io_w)
diff --git a/src/mame/drivers/tetrisp2.cpp b/src/mame/drivers/tetrisp2.cpp
index c47fa444207..137ef555341 100644
--- a/src/mame/drivers/tetrisp2.cpp
+++ b/src/mame/drivers/tetrisp2.cpp
@@ -301,7 +301,7 @@ WRITE16_MEMBER(tetrisp2_state::tetrisp2_coincounter_w)
***************************************************************************/
-static ADDRESS_MAP_START( tetrisp2_map, AS_PROGRAM, 16, tetrisp2_state )
+ADDRESS_MAP_START(tetrisp2_state::tetrisp2_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM
@@ -356,7 +356,7 @@ WRITE16_MEMBER(tetrisp2_state::nndmseal_b20000_w)
// popmessage("%04x",data);
}
-static ADDRESS_MAP_START( nndmseal_map, AS_PROGRAM, 16, tetrisp2_state )
+ADDRESS_MAP_START(tetrisp2_state::nndmseal_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM
@@ -399,7 +399,7 @@ static ADDRESS_MAP_START( nndmseal_map, AS_PROGRAM, 16, tetrisp2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rockn1_map, AS_PROGRAM, 16, tetrisp2_state )
+ADDRESS_MAP_START(tetrisp2_state::rockn1_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM
@@ -431,7 +431,7 @@ static ADDRESS_MAP_START( rockn1_map, AS_PROGRAM, 16, tetrisp2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rockn2_map, AS_PROGRAM, 16, tetrisp2_state )
+ADDRESS_MAP_START(tetrisp2_state::rockn2_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM
@@ -463,7 +463,7 @@ static ADDRESS_MAP_START( rockn2_map, AS_PROGRAM, 16, tetrisp2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rocknms_main_map, AS_PROGRAM, 16, tetrisp2_state )
+ADDRESS_MAP_START(tetrisp2_state::rocknms_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM
@@ -496,7 +496,7 @@ static ADDRESS_MAP_START( rocknms_main_map, AS_PROGRAM, 16, tetrisp2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rocknms_sub_map, AS_PROGRAM, 16, tetrisp2_state )
+ADDRESS_MAP_START(tetrisp2_state::rocknms_sub_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram2") // Object RAM
AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM
@@ -644,7 +644,7 @@ WRITE16_MEMBER(stepstag_state::stepstag_button_leds_w)
// Main CPU
-static ADDRESS_MAP_START( stepstag_map, AS_PROGRAM, 16, stepstag_state )
+ADDRESS_MAP_START(stepstag_state::stepstag_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM
AM_RANGE(0x108000, 0x10ffff) AM_RAM // Work RAM
@@ -683,7 +683,7 @@ static ADDRESS_MAP_START( stepstag_map, AS_PROGRAM, 16, stepstag_state )
ADDRESS_MAP_END
// Sub CPU (sprites)
-static ADDRESS_MAP_START( stepstag_sub_map, AS_PROGRAM, 16, stepstag_state )
+ADDRESS_MAP_START(stepstag_state::stepstag_sub_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -727,7 +727,7 @@ static ADDRESS_MAP_START( stepstag_sub_map, AS_PROGRAM, 16, stepstag_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vjdash_map, AS_PROGRAM, 16, stepstag_state )
+ADDRESS_MAP_START(stepstag_state::vjdash_map)
AM_IMPORT_FROM(stepstag_map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tg100.cpp b/src/mame/drivers/tg100.cpp
index 595f8487c03..12bf5d83162 100644
--- a/src/mame/drivers/tg100.cpp
+++ b/src/mame/drivers/tg100.cpp
@@ -46,22 +46,25 @@ public:
required_device<cpu_device> m_maincpu;
required_device<multipcm_device> m_ymw258;
void tg100(machine_config &config);
+ void tg100_io_map(address_map &map);
+ void tg100_map(address_map &map);
+ void ymw258_map(address_map &map);
};
/* all memory accesses are decoded by the gate array... */
-static ADDRESS_MAP_START( tg100_map, AS_PROGRAM, 16, tg100_state )
+ADDRESS_MAP_START(tg100_state::tg100_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM /* gate array stuff */
AM_RANGE(0x00080000, 0x0009ffff) AM_ROM AM_REGION("prgrom", 0x00000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tg100_io_map, AS_IO, 8, tg100_state )
+ADDRESS_MAP_START(tg100_state::tg100_io_map)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
static INPUT_PORTS_START( tg100 )
INPUT_PORTS_END
-static ADDRESS_MAP_START( ymw258_map, 0, 8, tg100_state )
+ADDRESS_MAP_START(tg100_state::ymw258_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tgtpanic.cpp b/src/mame/drivers/tgtpanic.cpp
index a459bf1e2dd..6bb7adabf56 100644
--- a/src/mame/drivers/tgtpanic.cpp
+++ b/src/mame/drivers/tgtpanic.cpp
@@ -38,6 +38,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void tgtpanic(machine_config &config);
+ void io_map(address_map &map);
+ void prg_map(address_map &map);
};
@@ -100,12 +102,12 @@ WRITE8_MEMBER(tgtpanic_state::color_w)
*
*************************************/
-static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, tgtpanic_state )
+ADDRESS_MAP_START(tgtpanic_state::prg_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, tgtpanic_state )
+ADDRESS_MAP_START(tgtpanic_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(color_w)
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/thayers.cpp b/src/mame/drivers/thayers.cpp
index 28113bad297..712e69bfc9e 100644
--- a/src/mame/drivers/thayers.cpp
+++ b/src/mame/drivers/thayers.cpp
@@ -105,6 +105,8 @@ public:
required_ioport_array<10> m_row;
void thayers(machine_config &config);
+ void thayers_io_map(address_map &map);
+ void thayers_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -615,13 +617,13 @@ READ8_MEMBER(thayers_state::ssi263_register_r)
/* Memory Maps */
-static ADDRESS_MAP_START( thayers_map, AS_PROGRAM, 8, thayers_state )
+ADDRESS_MAP_START(thayers_state::thayers_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xdfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thayers_io_map, AS_IO, 8, thayers_state )
+ADDRESS_MAP_START(thayers_state::thayers_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_READWRITE(ssi263_register_r, ssi263_register_w)
AM_RANGE(0x20, 0x20) AM_WRITE(control_w)
diff --git a/src/mame/drivers/thedealr.cpp b/src/mame/drivers/thedealr.cpp
index c3c9a105adc..898f84bc288 100644
--- a/src/mame/drivers/thedealr.cpp
+++ b/src/mame/drivers/thedealr.cpp
@@ -77,6 +77,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(screen_vblank);
void thedealr(machine_config &config);
+ void thedealr(address_map &map);
+ void thedealr_sub(address_map &map);
};
/***************************************************************************
@@ -271,7 +273,7 @@ WRITE8_MEMBER(thedealr_state::unk_w)
// popmessage("UNK %02x", data);
}
-static ADDRESS_MAP_START( thedealr, AS_PROGRAM, 8, thedealr_state )
+ADDRESS_MAP_START(thedealr_state::thedealr)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x2000) AM_RAM // w ff at boot (after clearing commram)
@@ -305,7 +307,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( thedealr_sub, AS_PROGRAM, 8, thedealr_state )
+ADDRESS_MAP_START(thedealr_state::thedealr_sub)
// Work RAM
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM
diff --git a/src/mame/drivers/thedeep.cpp b/src/mame/drivers/thedeep.cpp
index cb2cb068135..fc32b2d3caa 100644
--- a/src/mame/drivers/thedeep.cpp
+++ b/src/mame/drivers/thedeep.cpp
@@ -148,7 +148,7 @@ WRITE8_MEMBER(thedeep_state::e100_w)
logerror("pc %04x: e100 = %02x\n", m_maincpu->pc(),data);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, thedeep_state )
+ADDRESS_MAP_START(thedeep_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // ROM (banked)
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -176,7 +176,7 @@ ADDRESS_MAP_END
***************************************************************************/
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, thedeep_state )
+ADDRESS_MAP_START(thedeep_state::audio_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ymsnd", ym2203_device, write) //
AM_RANGE(0x3000, 0x3000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) // From Main CPU
@@ -240,7 +240,7 @@ READ8_MEMBER(thedeep_state::p0_r)
return (ioport("COINS")->read() & 0xfe) | (coin_mux & 1);
}
-static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, thedeep_state )
+ADDRESS_MAP_START(thedeep_state::mcu_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(MCS51_PORT_P0,MCS51_PORT_P0) AM_READ(p0_r)
AM_RANGE(MCS51_PORT_P1,MCS51_PORT_P1) AM_WRITE(p1_w)
diff --git a/src/mame/drivers/thepit.cpp b/src/mame/drivers/thepit.cpp
index d42ba192576..0432ff13866 100644
--- a/src/mame/drivers/thepit.cpp
+++ b/src/mame/drivers/thepit.cpp
@@ -206,7 +206,7 @@ WRITE_LINE_MEMBER(thepit_state::nmi_mask_w)
}
-static ADDRESS_MAP_START( thepit_main_map, AS_PROGRAM, 8, thepit_state )
+ADDRESS_MAP_START(thepit_state::thepit_main_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_MIRROR(0x0400) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
@@ -221,7 +221,7 @@ static ADDRESS_MAP_START( thepit_main_map, AS_PROGRAM, 8, thepit_state )
AM_RANGE(0xb800, 0xb800) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( desertdan_main_map, AS_PROGRAM, 8, thepit_state )
+ADDRESS_MAP_START(thepit_state::desertdan_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8bff) AM_MIRROR(0x0400) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
@@ -236,7 +236,7 @@ static ADDRESS_MAP_START( desertdan_main_map, AS_PROGRAM, 8, thepit_state )
AM_RANGE(0xb800, 0xb800) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( intrepid_main_map, AS_PROGRAM, 8, thepit_state )
+ADDRESS_MAP_START(thepit_state::intrepid_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8c00, 0x8fff) AM_READ(intrepid_colorram_mirror_r) AM_WRITE(colorram_w) /* mirror for intrepi2 */
@@ -253,13 +253,13 @@ static ADDRESS_MAP_START( intrepid_main_map, AS_PROGRAM, 8, thepit_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, thepit_state )
+ADDRESS_MAP_START(thepit_state::audio_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3800, 0x3bff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, thepit_state )
+ADDRESS_MAP_START(thepit_state::audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("soundlatch", generic_latch_8_device, clear_w)
AM_RANGE(0x8c, 0x8d) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/thief.cpp b/src/mame/drivers/thief.cpp
index ea8692436f7..9ce812028a6 100644
--- a/src/mame/drivers/thief.cpp
+++ b/src/mame/drivers/thief.cpp
@@ -133,13 +133,13 @@ READ8_MEMBER( thief_state::thief_io_r )
return data;
}
-static ADDRESS_MAP_START( sharkatt_main_map, AS_PROGRAM, 8, thief_state )
+ADDRESS_MAP_START(thief_state::sharkatt_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM /* 2114 */
AM_RANGE(0xc000, 0xdfff) AM_READWRITE(thief_videoram_r, thief_videoram_w) /* 4116 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thief_main_map, AS_PROGRAM, 8, thief_state )
+ADDRESS_MAP_START(thief_state::thief_main_map)
AM_RANGE(0x0000, 0x0000) AM_WRITE(thief_blit_w)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM /* 2114 */
@@ -152,7 +152,7 @@ static ADDRESS_MAP_START( thief_main_map, AS_PROGRAM, 8, thief_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, thief_state )
+ADDRESS_MAP_START(thief_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog */
AM_RANGE(0x10, 0x10) AM_WRITE(thief_video_control_w)
diff --git a/src/mame/drivers/thomson.cpp b/src/mame/drivers/thomson.cpp
index c3e1e70b2a5..ec3c643565c 100644
--- a/src/mame/drivers/thomson.cpp
+++ b/src/mame/drivers/thomson.cpp
@@ -309,7 +309,7 @@ They can run the same software and accept the same devices and extensions.
/* ------------ address maps ------------ */
-static ADDRESS_MAP_START ( to7, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::to7)
AM_RANGE ( 0x0000, 0x3fff ) AM_READ_BANK ( THOM_CART_BANK ) AM_WRITE(to7_cartridge_w ) /* 4 * 16 KB */
AM_RANGE ( 0x4000, 0x5fff ) AM_READ_BANK ( THOM_VRAM_BANK ) AM_WRITE(to7_vram_w )
@@ -819,7 +819,7 @@ In arabic mode, Ctrl+E / Ctrl+X to start / stop typing in-line latin.
**********************************************************************/
-static ADDRESS_MAP_START ( to770, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::to770)
AM_RANGE ( 0x0000, 0x3fff ) AM_READ_BANK ( THOM_CART_BANK) AM_WRITE(to7_cartridge_w ) /* 4 * 16 KB */
AM_RANGE ( 0x4000, 0x5fff ) AM_READ_BANK ( THOM_VRAM_BANK) AM_WRITE(to770_vram_w )
@@ -1018,7 +1018,7 @@ Differences include:
**********************************************************************/
-static ADDRESS_MAP_START ( mo5, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::mo5)
AM_RANGE ( 0x0000, 0x1fff ) AM_READ_BANK ( THOM_VRAM_BANK ) AM_WRITE(to770_vram_w )
AM_RANGE ( 0x2000, 0x9fff ) AM_RAMBANK ( THOM_BASE_BANK )
@@ -1239,7 +1239,7 @@ It was replaced quickly with the improved TO9+.
**********************************************************************/
-static ADDRESS_MAP_START ( to9, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::to9)
AM_RANGE ( 0x0000, 0x3fff ) AM_READ_BANK ( THOM_CART_BANK ) AM_WRITE(to9_cartridge_w )/* 4 * 16 KB */
AM_RANGE ( 0x4000, 0x5fff ) AM_READ_BANK ( THOM_VRAM_BANK ) AM_WRITE(to770_vram_w )
@@ -1567,7 +1567,7 @@ The TO8D is simply a TO8 with an integrated 3"1/2 floppy drive.
**********************************************************************/
-static ADDRESS_MAP_START ( to8, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::to8)
AM_RANGE ( 0x0000, 0x3fff ) AM_READ_BANK ( THOM_CART_BANK) AM_WRITE(to8_cartridge_w ) /* 4 * 16 KB */
AM_RANGE ( 0x4000, 0x5fff ) AM_READ_BANK ( THOM_VRAM_BANK) AM_WRITE(to770_vram_w )
@@ -1778,7 +1778,7 @@ The differences with the TO8 are:
**********************************************************************/
-static ADDRESS_MAP_START ( to9p, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::to9p)
AM_RANGE ( 0x0000, 0x3fff ) AM_READ_BANK ( THOM_CART_BANK) AM_WRITE(to8_cartridge_w ) /* 4 * 16 KB */
AM_RANGE ( 0x4000, 0x5fff ) AM_READ_BANK ( THOM_VRAM_BANK) AM_WRITE(to770_vram_w )
@@ -1957,7 +1957,7 @@ a PC XT.
**********************************************************************/
-static ADDRESS_MAP_START ( mo6, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::mo6)
AM_RANGE ( 0x0000, 0x1fff ) AM_READ_BANK ( THOM_VRAM_BANK) AM_WRITE(to770_vram_w )
AM_RANGE ( 0x2000, 0x3fff ) AM_READ_BANK ( TO8_SYS_LO) AM_WRITE(to8_sys_lo_w )
@@ -2310,7 +2310,7 @@ Here are the differences between the MO6 and MO5NR:
**********************************************************************/
-static ADDRESS_MAP_START ( mo5nr, AS_PROGRAM, 8, thomson_state )
+ADDRESS_MAP_START(thomson_state::mo5nr)
AM_RANGE ( 0x0000, 0x1fff ) AM_READ_BANK ( THOM_VRAM_BANK) AM_WRITE(to770_vram_w )
AM_RANGE ( 0x2000, 0x3fff ) AM_READ_BANK ( TO8_SYS_LO) AM_WRITE(to8_sys_lo_w )
diff --git a/src/mame/drivers/thoop2.cpp b/src/mame/drivers/thoop2.cpp
index 654e54232e9..9e62bd48cdb 100644
--- a/src/mame/drivers/thoop2.cpp
+++ b/src/mame/drivers/thoop2.cpp
@@ -116,12 +116,12 @@ READ8_MEMBER(thoop2_state::shareram_r)
}
-static ADDRESS_MAP_START( mcu_hostmem_map, 0, 8, thoop2_state )
+ADDRESS_MAP_START(thoop2_state::mcu_hostmem_map)
AM_RANGE(0x8000, 0xffff) AM_READWRITE(shareram_r, shareram_w) // confirmed that 0x8000 - 0xffff is a window into 68k shared RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thoop2_map, AS_PROGRAM, 16, thoop2_state )
+ADDRESS_MAP_START(thoop2_state::thoop2_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(vram_w) AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x108000, 0x108007) AM_WRITEONLY AM_SHARE("vregs") /* Video Registers */
@@ -133,7 +133,7 @@ static ADDRESS_MAP_START( thoop2_map, AS_PROGRAM, 16, thoop2_state )
AM_RANGE(0x700004, 0x700005) AM_READ_PORT("P1")
AM_RANGE(0x700006, 0x700007) AM_READ_PORT("P2")
AM_RANGE(0x700008, 0x700009) AM_READ_PORT("SYSTEM")
- AM_RANGE(0x70000a, 0x70000b) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0x00ff)
+ ;map(0x70000a, 0x70000b).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x70000c, 0x70000d) AM_WRITE8(OKIM6295_bankswitch_w, 0x00ff) /* OKI6295 bankswitch */
AM_RANGE(0x70000e, 0x70000f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) /* OKI6295 data register */
AM_RANGE(0xfe0000, 0xfe7fff) AM_RAM /* Work RAM */
@@ -141,7 +141,7 @@ static ADDRESS_MAP_START( thoop2_map, AS_PROGRAM, 16, thoop2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, thoop2_state )
+ADDRESS_MAP_START(thoop2_state::oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/thunderj.cpp b/src/mame/drivers/thunderj.cpp
index 41f3ccf6c8d..79e582c77b1 100644
--- a/src/mame/drivers/thunderj.cpp
+++ b/src/mame/drivers/thunderj.cpp
@@ -116,7 +116,7 @@ WRITE16_MEMBER(thunderj_state::latch_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, thunderj_state )
+ADDRESS_MAP_START(thunderj_state::main_map)
AM_RANGE(0x000000, 0x09ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0x00ff)
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
@@ -149,7 +149,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16, thunderj_state )
+ADDRESS_MAP_START(thunderj_state::extra_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x060000, 0x07ffff) AM_ROM
AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1")
diff --git a/src/mame/drivers/thunderx.cpp b/src/mame/drivers/thunderx.cpp
index 5a17a27a1b1..6e27d353135 100644
--- a/src/mame/drivers/thunderx.cpp
+++ b/src/mame/drivers/thunderx.cpp
@@ -402,7 +402,7 @@ WRITE8_MEMBER(thunderx_state::k052109_051960_w)
/***************************************************************************/
-static ADDRESS_MAP_START( scontra_map, AS_PROGRAM, 8, thunderx_state )
+ADDRESS_MAP_START(thunderx_state::scontra_map)
AM_RANGE(0x0000, 0x3fff) AM_READWRITE(k052109_051960_r, k052109_051960_w) /* video RAM + sprite RAM */
AM_RANGE(0x1f80, 0x1f80) AM_WRITE(scontra_bankswitch_w) /* bankswitch control + coin counters */
@@ -423,38 +423,38 @@ static ADDRESS_MAP_START( scontra_map, AS_PROGRAM, 8, thunderx_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thunderx_map, AS_PROGRAM, 8, thunderx_state )
+ADDRESS_MAP_START(thunderx_state::thunderx_map)
AM_IMPORT_FROM(scontra_map)
AM_RANGE(0x1f80, 0x1f80) AM_WRITE(thunderx_videobank_w)
AM_RANGE(0x1f98, 0x1f98) AM_READWRITE(_1f98_r, thunderx_1f98_w) /* registers */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( gbusters_map, AS_PROGRAM, 8, thunderx_state )
+ADDRESS_MAP_START(thunderx_state::gbusters_map)
AM_IMPORT_FROM(scontra_map)
AM_RANGE(0x1f80, 0x1f80) AM_WRITE(gbusters_videobank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scontra_bank5800_map, AS_PROGRAM, 8, thunderx_state )
+ADDRESS_MAP_START(thunderx_state::scontra_bank5800_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x0800, 0x0fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thunderx_bank5800_map, AS_PROGRAM, 8, thunderx_state )
+ADDRESS_MAP_START(thunderx_state::thunderx_bank5800_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x0800, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_READWRITE(pmc_r, pmc_w) AM_SHARE("pmcram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thunderx_sound_map, AS_PROGRAM, 8, thunderx_state )
+ADDRESS_MAP_START(thunderx_state::thunderx_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( scontra_sound_map, AS_PROGRAM, 8, thunderx_state )
+ADDRESS_MAP_START(thunderx_state::scontra_sound_map)
AM_IMPORT_FROM(thunderx_sound_map)
AM_RANGE(0xb000, 0xb00d) AM_DEVREADWRITE("k007232", k007232_device, read, write)
AM_RANGE(0xf000, 0xf000) AM_WRITE(k007232_bankswitch_w)
diff --git a/src/mame/drivers/ti630.cpp b/src/mame/drivers/ti630.cpp
index 069935a37a7..a170a431384 100644
--- a/src/mame/drivers/ti630.cpp
+++ b/src/mame/drivers/ti630.cpp
@@ -55,6 +55,8 @@ public:
DECLARE_DRIVER_INIT(ti630);
DECLARE_PALETTE_INIT(ti630);
void ti630(machine_config &config);
+ void i80c31_io(address_map &map);
+ void i80c31_prg(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -64,7 +66,7 @@ private:
#define LOG_IO_PORTS 0
-static ADDRESS_MAP_START(i80c31_prg, AS_PROGRAM, 8, ti630_state)
+ADDRESS_MAP_START(ti630_state::i80c31_prg)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
@@ -72,7 +74,7 @@ DRIVER_INIT_MEMBER( ti630_state, ti630 )
{
}
-static ADDRESS_MAP_START(i80c31_io, AS_IO, 8, ti630_state)
+ADDRESS_MAP_START(ti630_state::i80c31_io)
AM_RANGE(0x0000,0x0000) /*AM_MIRROR(?)*/ AM_DEVWRITE("hd44780", hd44780_device, control_write)
AM_RANGE(0x1000,0x1000) /*AM_MIRROR(?)*/ AM_DEVWRITE("hd44780", hd44780_device, data_write)
AM_RANGE(0x2000,0x2000) /*AM_MIRROR(?)*/ AM_DEVREAD("hd44780", hd44780_device, control_read)
diff --git a/src/mame/drivers/ti74.cpp b/src/mame/drivers/ti74.cpp
index cfd8e21dd51..ddecc778809 100644
--- a/src/mame/drivers/ti74.cpp
+++ b/src/mame/drivers/ti74.cpp
@@ -117,6 +117,7 @@ public:
HD44780_PIXEL_UPDATE(ti95_pixel_update);
void ti74(machine_config &config);
void ti95(machine_config &config);
+ void main_map(address_map &map);
};
@@ -265,7 +266,7 @@ WRITE8_MEMBER(ti74_state::bankswitch_w)
// d3: N/C
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, ti74_state )
+ADDRESS_MAP_START(ti74_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE("hd44780", hd44780_device, read, write)
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("sysram.ic3")
diff --git a/src/mame/drivers/ti85.cpp b/src/mame/drivers/ti85.cpp
index 4e5d9985c99..a10b0125ec6 100644
--- a/src/mame/drivers/ti85.cpp
+++ b/src/mame/drivers/ti85.cpp
@@ -212,7 +212,7 @@ TI-86 ports:
/* port i/o functions */
-static ADDRESS_MAP_START( ti81_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti81_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ti85_port_0000_r, ti85_port_0000_w )
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
@@ -223,7 +223,7 @@ static ADDRESS_MAP_START( ti81_io, AS_IO, 8, ti85_state )
AM_RANGE(0x0007, 0x0007) AM_WRITE(ti81_port_0007_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti85_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti85_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ti85_port_0000_r, ti85_port_0000_w )
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
@@ -235,7 +235,7 @@ static ADDRESS_MAP_START( ti85_io, AS_IO, 8, ti85_state )
AM_RANGE(0x0007, 0x0007) AM_READWRITE(ti8x_serial_r, ti8x_serial_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti82_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti82_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ti8x_serial_r, ti8x_serial_w )
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
@@ -246,7 +246,7 @@ static ADDRESS_MAP_START( ti82_io, AS_IO, 8, ti85_state )
AM_RANGE(0x0011, 0x0011) AM_DEVREADWRITE("t6a04", t6a04_device, data_read, data_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti81v2_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti81v2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
AM_RANGE(0x0002, 0x0002) AM_READWRITE(ti82_port_0002_r, ti82_port_0002_w )
@@ -256,7 +256,7 @@ static ADDRESS_MAP_START( ti81v2_io, AS_IO, 8, ti85_state )
AM_RANGE(0x0011, 0x0011) AM_DEVREADWRITE("t6a04", t6a04_device, data_read, data_write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti83_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti83_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ti83_port_0000_r, ti83_port_0000_w ) //TODO
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
@@ -268,7 +268,7 @@ static ADDRESS_MAP_START( ti83_io, AS_IO, 8, ti85_state )
AM_RANGE(0x0014, 0x0014) AM_READ_PORT( "BATTERY" )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti83p_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti83p_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ti8x_plus_serial_r, ti8x_plus_serial_w)
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
@@ -282,7 +282,7 @@ static ADDRESS_MAP_START( ti83p_io, AS_IO, 8, ti85_state )
// AM_RANGE(0x0014, 0x0014) AM_WRITE(ti83p_port_0014_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti83pse_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti83pse_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ti8x_plus_serial_r, ti8x_plus_serial_w)
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
@@ -316,7 +316,7 @@ static ADDRESS_MAP_START( ti83pse_io, AS_IO, 8, ti85_state )
AM_RANGE(0x0056, 0x0056) AM_READ(ti84pse_port_0056_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti86_io, AS_IO, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti86_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0x0000) AM_READWRITE(ti85_port_0000_r, ti85_port_0000_w )
AM_RANGE(0x0001, 0x0001) AM_READWRITE(ti8x_keypad_r, ti8x_keypad_w )
@@ -330,36 +330,36 @@ ADDRESS_MAP_END
/* memory w/r functions */
-static ADDRESS_MAP_START( ti81_mem , AS_PROGRAM, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti81_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2")
AM_RANGE(0x8000, 0xffff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti86_mem , AS_PROGRAM, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti86_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti83pse_banked_mem , AS_PROGRAM, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti83pse_banked_mem)
AM_RANGE(0x0000, 0x1fffff) AM_DEVREADWRITE("flash", intelfsh8_device, read, write)
AM_RANGE(0x200000, 0x21BFFF) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti84p_banked_mem , AS_PROGRAM, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti84p_banked_mem)
AM_RANGE(0x0000, 0xfffff) AM_DEVREADWRITE("flash", intelfsh8_device, read, write)
AM_RANGE(0x200000, 0x21BFFF) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti83p_banked_mem , AS_PROGRAM, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti83p_banked_mem)
AM_RANGE(0x00000, 0x7ffff) AM_DEVREADWRITE("flash", intelfsh8_device, read, write)
AM_RANGE(0x100000, 0x107fff) AM_RAM AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ti83p_asic_mem , AS_PROGRAM, 8, ti85_state )
+ADDRESS_MAP_START(ti85_state::ti83p_asic_mem)
AM_RANGE(0x0000, 0x3fff) AM_DEVREADWRITE("membank1", address_map_bank_device, read8, write8)
AM_RANGE(0x4000, 0x7fff) AM_DEVREADWRITE("membank2", address_map_bank_device, read8, write8)
AM_RANGE(0x8000, 0xbfff) AM_DEVREADWRITE("membank3", address_map_bank_device, read8, write8)
diff --git a/src/mame/drivers/ti89.cpp b/src/mame/drivers/ti89.cpp
index 9da6c3f51fc..0f8c58c3bda 100644
--- a/src/mame/drivers/ti89.cpp
+++ b/src/mame/drivers/ti89.cpp
@@ -196,7 +196,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(ti68k_state::ti68k_timer_callback)
}
-static ADDRESS_MAP_START(ti92_mem, AS_PROGRAM, 16, ti68k_state)
+ADDRESS_MAP_START(ti68k_state::ti92_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x200000, 0x5fffff) AM_UNMAP // ROM
@@ -204,7 +204,7 @@ static ADDRESS_MAP_START(ti92_mem, AS_PROGRAM, 16, ti68k_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ti89_mem, AS_PROGRAM, 16, ti68k_state)
+ADDRESS_MAP_START(ti68k_state::ti89_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x200000, 0x3fffff) AM_READWRITE(flash_r, flash_w)
@@ -214,7 +214,7 @@ static ADDRESS_MAP_START(ti89_mem, AS_PROGRAM, 16, ti68k_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ti92p_mem, AS_PROGRAM, 16, ti68k_state)
+ADDRESS_MAP_START(ti68k_state::ti92p_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x200000, 0x3fffff) AM_NOP
@@ -224,7 +224,7 @@ static ADDRESS_MAP_START(ti92p_mem, AS_PROGRAM, 16, ti68k_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(v200_mem, AS_PROGRAM, 16, ti68k_state)
+ADDRESS_MAP_START(ti68k_state::v200_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x200000, 0x5fffff) AM_READWRITE(flash_r, flash_w)
@@ -233,7 +233,7 @@ static ADDRESS_MAP_START(v200_mem, AS_PROGRAM, 16, ti68k_state)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ti89t_mem, AS_PROGRAM, 16, ti68k_state)
+ADDRESS_MAP_START(ti68k_state::ti89t_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_MIRROR(0x200000) AM_SHARE("nvram")
AM_RANGE(0x600000, 0x6fffff) AM_READWRITE(ti68k_io_r, ti68k_io_w)
diff --git a/src/mame/drivers/ti990_10.cpp b/src/mame/drivers/ti990_10.cpp
index 296ae0d75dd..6be8da03640 100644
--- a/src/mame/drivers/ti990_10.cpp
+++ b/src/mame/drivers/ti990_10.cpp
@@ -107,6 +107,8 @@ public:
uint16_t m_intlines;
int m_ckon_state;
void ti990_10(machine_config &config);
+ void ti990_10_io(address_map &map);
+ void ti990_10_memmap(address_map &map);
};
@@ -275,7 +277,7 @@ WRITE_LINE_MEMBER(ti990_10_state::key_interrupt)
Memory map - see description above
*/
-static ADDRESS_MAP_START(ti990_10_memmap, AS_PROGRAM, 16, ti990_10_state )
+ADDRESS_MAP_START(ti990_10_state::ti990_10_memmap)
AM_RANGE(0x000000, 0x0fffff) AM_RAM /* let's say we have 1MB of RAM */
AM_RANGE(0x100000, 0x1ff7ff) AM_NOP /* free TILINE space */
@@ -292,7 +294,7 @@ ADDRESS_MAP_END
CRU map
*/
-static ADDRESS_MAP_START(ti990_10_io, AS_IO, 8, ti990_10_state )
+ADDRESS_MAP_START(ti990_10_state::ti990_10_io)
AM_RANGE(0x10, 0x11) AM_DEVREAD("vdt911", vdt911_device, cru_r)
AM_RANGE(0x80, 0x8f) AM_DEVWRITE("vdt911", vdt911_device, cru_w)
AM_RANGE(0x1fa, 0x1fb) AM_NOP // AM_READ(ti990_10_mapper_cru_r)
diff --git a/src/mame/drivers/ti990_4.cpp b/src/mame/drivers/ti990_4.cpp
index 55eea89d520..769c2face14 100644
--- a/src/mame/drivers/ti990_4.cpp
+++ b/src/mame/drivers/ti990_4.cpp
@@ -71,6 +71,9 @@ public:
void ti990_4v(machine_config &config);
void ti990_4(machine_config &config);
+ void cru_map(address_map &map);
+ void cru_map_v(address_map &map);
+ void memmap(address_map &map);
private:
void hold_load();
void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -210,7 +213,7 @@ READ8_MEMBER( ti990_4_state::interrupt_level )
Memory map - see description above
*/
-static ADDRESS_MAP_START(memmap, AS_PROGRAM, 16, ti990_4_state )
+ADDRESS_MAP_START(ti990_4_state::memmap)
AM_RANGE(0x0000, 0x7fff) AM_RAM /* dynamic RAM */
AM_RANGE(0x8000, 0xf7ff) AM_NOP /* reserved for expansion */
AM_RANGE(0xf800, 0xfbff) AM_RAM /* static RAM? */
@@ -240,7 +243,7 @@ ADDRESS_MAP_END
0x0a0-0x0bf: VDT3 (int ??? - wired to int 9, unused)
*/
-static ADDRESS_MAP_START(cru_map, AS_IO, 8, ti990_4_state )
+ADDRESS_MAP_START(ti990_4_state::cru_map)
AM_RANGE(0x00, 0x01) AM_DEVREAD("asr733", asr733_device, cru_r)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE("asr733", asr733_device, cru_w)
@@ -251,7 +254,7 @@ static ADDRESS_MAP_START(cru_map, AS_IO, 8, ti990_4_state )
AM_RANGE(0xff0, 0xfff) AM_WRITE( panel_write )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(cru_map_v, AS_IO, 8, ti990_4_state )
+ADDRESS_MAP_START(ti990_4_state::cru_map_v)
AM_RANGE(0x10, 0x11) AM_DEVREAD("vdt911", vdt911_device, cru_r)
AM_RANGE(0x80, 0x8f) AM_DEVWRITE("vdt911", vdt911_device, cru_w)
diff --git a/src/mame/drivers/ti99_2.cpp b/src/mame/drivers/ti99_2.cpp
index 181a97b5584..0257ad2f5cf 100644
--- a/src/mame/drivers/ti99_2.cpp
+++ b/src/mame/drivers/ti99_2.cpp
@@ -114,6 +114,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void ti99_2(machine_config &config);
+ void ti99_2_io(address_map &map);
+ void ti99_2_memmap(address_map &map);
};
@@ -217,7 +219,7 @@ GFXDECODE_END
Memory map - see description above
*/
-static ADDRESS_MAP_START( ti99_2_memmap, AS_PROGRAM, 8, ti99_2_state )
+ADDRESS_MAP_START(ti99_2_state::ti99_2_memmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM /* system ROM */
AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank1") /* system ROM, banked on 32kb ROMs protos */
AM_RANGE(0x6000, 0xdfff) AM_NOP /* free for expansion */
@@ -294,7 +296,7 @@ READ8_MEMBER(ti99_2_state::ti99_2_read_misc_cru)
return 0;
}
-static ADDRESS_MAP_START(ti99_2_io, AS_IO, 8, ti99_2_state )
+ADDRESS_MAP_START(ti99_2_state::ti99_2_io)
AM_RANGE(0x0E00, 0x0E7f) AM_READ(ti99_2_read_kbd)
AM_RANGE(0x0E80, 0x0Eff) AM_READ(ti99_2_read_misc_cru)
AM_RANGE(0x7000, 0x73ff) AM_WRITE(ti99_2_write_kbd)
diff --git a/src/mame/drivers/ti99_4p.cpp b/src/mame/drivers/ti99_4p.cpp
index e992eef846c..99db8ddf733 100644
--- a/src/mame/drivers/ti99_4p.cpp
+++ b/src/mame/drivers/ti99_4p.cpp
@@ -185,6 +185,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(video_interrupt_in);
void ti99_4p_60hz(machine_config &config);
+ void cru_map(address_map &map);
+ void memmap(address_map &map);
private:
void datamux_clock_in(int clock);
@@ -282,11 +284,11 @@ enum
ROM6UBASE = 0xe000
};
-static ADDRESS_MAP_START(memmap, AS_PROGRAM, 16, ti99_4p_state)
+ADDRESS_MAP_START(ti99_4p_state::memmap)
AM_RANGE(0x0000, 0xffff) AM_READWRITE( memread, memwrite ) AM_SETOFFSET( setoffset )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(cru_map, AS_IO, 8, ti99_4p_state)
+ADDRESS_MAP_START(ti99_4p_state::cru_map)
AM_RANGE(0x0000, 0x01ff) AM_READ( cruread )
AM_RANGE(0x0000, 0x003f) AM_DEVREAD(TI_TMS9901_TAG, tms9901_device, read)
diff --git a/src/mame/drivers/ti99_4x.cpp b/src/mame/drivers/ti99_4x.cpp
index 99aeee77169..d3a5321dd04 100644
--- a/src/mame/drivers/ti99_4x.cpp
+++ b/src/mame/drivers/ti99_4x.cpp
@@ -153,6 +153,8 @@ public:
void ti99_4a_60hz(machine_config &config);
void ti99_4a(machine_config &config);
void ti99_4_60hz(machine_config &config);
+ void cru_map(address_map &map);
+ void memmap(address_map &map);
private:
void set_keyboard_column(int number, int data);
int m_keyboard_column;
@@ -214,7 +216,7 @@ enum
/*
Memory map. All of the work is done in the datamux (see datamux.c).
*/
-static ADDRESS_MAP_START(memmap, AS_PROGRAM, 16, ti99_4x_state)
+ADDRESS_MAP_START(ti99_4x_state::memmap)
ADDRESS_MAP_GLOBAL_MASK(0xffff)
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE(TI99_DATAMUX_TAG, bus::ti99::internal::datamux_device, read, write) AM_DEVSETOFFSET(TI99_DATAMUX_TAG, bus::ti99::internal::datamux_device, setoffset)
ADDRESS_MAP_END
@@ -239,7 +241,7 @@ ADDRESS_MAP_END
Write:0000 - 01ff corresponds to bit 0 of base address 0000 - 03fe
*/
-static ADDRESS_MAP_START(cru_map, AS_IO, 8, ti99_4x_state)
+ADDRESS_MAP_START(ti99_4x_state::cru_map)
AM_RANGE(0x0000, 0x01ff) AM_READ(cruread)
AM_RANGE(0x0000, 0x0003) AM_MIRROR(0x003c) AM_DEVREAD(TI_TMS9901_TAG, tms9901_device, read)
diff --git a/src/mame/drivers/ti99_8.cpp b/src/mame/drivers/ti99_8.cpp
index 74ef442b379..8815dcfd9df 100644
--- a/src/mame/drivers/ti99_8.cpp
+++ b/src/mame/drivers/ti99_8.cpp
@@ -264,6 +264,8 @@ public:
void ti99_8(machine_config &config);
void ti99_8_60hz(machine_config &config);
void ti99_8_50hz(machine_config &config);
+ void crumap(address_map &map);
+ void memmap(address_map &map);
private:
// Keyboard support
void set_keyboard_column(int number, int data);
@@ -290,7 +292,7 @@ private:
Memory map. We have a configurable mapper, so we need to delegate the
job to the mapper completely.
*/
-static ADDRESS_MAP_START(memmap, AS_PROGRAM, 8, ti99_8_state)
+ADDRESS_MAP_START(ti99_8_state::memmap)
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE(TI998_MAINBOARD_TAG, bus::ti99::internal::mainboard8_device, read, write) AM_DEVSETOFFSET(TI998_MAINBOARD_TAG, bus::ti99::internal::mainboard8_device, setoffset)
ADDRESS_MAP_END
@@ -301,7 +303,7 @@ ADDRESS_MAP_END
(decoded by the "Vaquerro" chip, signal NNOICS*)
*/
-static ADDRESS_MAP_START(crumap, AS_IO, 8, ti99_8_state)
+ADDRESS_MAP_START(ti99_8_state::crumap)
AM_RANGE(0x0000, 0x02ff) AM_READ(cruread)
AM_RANGE(0x0000, 0x0003) AM_DEVREAD(TI_TMS9901_TAG, tms9901_device, read)
diff --git a/src/mame/drivers/tiamc1.cpp b/src/mame/drivers/tiamc1.cpp
index e9be8a809be..63bb24ed108 100644
--- a/src/mame/drivers/tiamc1.cpp
+++ b/src/mame/drivers/tiamc1.cpp
@@ -151,19 +151,19 @@ WRITE_LINE_MEMBER(tiamc1_state::pit8253_2_w)
}
-static ADDRESS_MAP_START( tiamc1_map, AS_PROGRAM, 8, tiamc1_state )
+ADDRESS_MAP_START(tiamc1_state::tiamc1_map)
AM_RANGE(0xb000, 0xb7ff) AM_WRITE(tiamc1_videoram_w)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kotrybolov_map, AS_PROGRAM, 8, tiamc1_state )
+ADDRESS_MAP_START(tiamc1_state::kotrybolov_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xf000, 0xf3ff) AM_WRITE(kot_videoram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tiamc1_io_map, AS_IO, 8, tiamc1_state )
+ADDRESS_MAP_START(tiamc1_state::tiamc1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x4f) AM_WRITE(tiamc1_sprite_y_w) /* sprites Y */
AM_RANGE(0x50, 0x5f) AM_WRITE(tiamc1_sprite_x_w) /* sprites X */
@@ -180,7 +180,7 @@ static ADDRESS_MAP_START( tiamc1_io_map, AS_IO, 8, tiamc1_state )
AM_RANGE(0xda, 0xda) AM_DEVWRITE("2x8253", tiamc1_sound_device, tiamc1_timer1_gate_w) /* timer 1 gate control */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kotrybolov_io_map, AS_IO, 8, tiamc1_state )
+ADDRESS_MAP_START(tiamc1_state::kotrybolov_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_WRITE(tiamc1_sprite_y_w) // sprites Y
AM_RANGE(0x10, 0x1f) AM_WRITE(tiamc1_sprite_x_w) // sprites X
diff --git a/src/mame/drivers/tickee.cpp b/src/mame/drivers/tickee.cpp
index 2cc96c48651..0bb3940781c 100644
--- a/src/mame/drivers/tickee.cpp
+++ b/src/mame/drivers/tickee.cpp
@@ -95,6 +95,10 @@ public:
void ghoshunt(machine_config &config);
void tickee(machine_config &config);
void mouseatk(machine_config &config);
+ void ghoshunt_map(address_map &map);
+ void mouseatk_map(address_map &map);
+ void rapidfir_map(address_map &map);
+ void tickee_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -436,7 +440,7 @@ WRITE16_MEMBER(tickee_state::sound_bank_w)
*
*************************************/
-static ADDRESS_MAP_START( tickee_map, AS_PROGRAM, 16, tickee_state )
+ADDRESS_MAP_START(tickee_state::tickee_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x04000000, 0x04003fff) AM_RAM AM_SHARE("nvram")
@@ -454,7 +458,7 @@ ADDRESS_MAP_END
/* addreses in the 04x range shifted slightly...*/
-static ADDRESS_MAP_START( ghoshunt_map, AS_PROGRAM, 16, tickee_state )
+ADDRESS_MAP_START(tickee_state::ghoshunt_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x04100000, 0x04103fff) AM_RAM AM_SHARE("nvram")
@@ -470,7 +474,7 @@ static ADDRESS_MAP_START( ghoshunt_map, AS_PROGRAM, 16, tickee_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mouseatk_map, AS_PROGRAM, 16, tickee_state )
+ADDRESS_MAP_START(tickee_state::mouseatk_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x04000000, 0x04003fff) AM_RAM AM_SHARE("nvram")
@@ -487,7 +491,7 @@ ADDRESS_MAP_END
/* newer hardware */
-static ADDRESS_MAP_START( rapidfir_map, AS_PROGRAM, 16, tickee_state )
+ADDRESS_MAP_START(tickee_state::rapidfir_map)
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x02000000, 0x027fffff) AM_READWRITE(rapidfir_transparent_r, rapidfir_transparent_w)
AM_RANGE(0xc0000000, 0xc00001ff) AM_DEVREADWRITE("maincpu", tms34010_device, io_register_r, io_register_w)
diff --git a/src/mame/drivers/tigeroad.cpp b/src/mame/drivers/tigeroad.cpp
index ea3238542c8..9c8807d90ed 100644
--- a/src/mame/drivers/tigeroad.cpp
+++ b/src/mame/drivers/tigeroad.cpp
@@ -70,7 +70,7 @@ WRITE8_MEMBER(tigeroad_state::msm5205_w)
/***************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tigeroad_state )
+ADDRESS_MAP_START(tigeroad_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0xfe0800, 0xfe0cff) AM_RAM AM_SHARE("spriteram")
@@ -86,14 +86,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tigeroad_state )
AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_SHARE("ram16")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pushman_map, AS_PROGRAM, 16, pushman_state )
+ADDRESS_MAP_START(pushman_state::pushman_map)
AM_IMPORT_FROM(main_map)
AM_RANGE(0x060000, 0x060007) AM_READ(mcu_comm_r)
AM_RANGE(0x060000, 0x060003) AM_WRITE(pushman_mcu_comm_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bballs_map, AS_PROGRAM, 16, pushman_state )
+ADDRESS_MAP_START(pushman_state::bballs_map)
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x00000, 0x3ffff) AM_ROM
AM_RANGE(0x60000, 0x60007) AM_READ(mcu_comm_r)
@@ -112,7 +112,7 @@ static ADDRESS_MAP_START( bballs_map, AS_PROGRAM, 16, pushman_state )
ADDRESS_MAP_END
/* Capcom games ONLY */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tigeroad_state )
+ADDRESS_MAP_START(tigeroad_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
@@ -120,30 +120,30 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tigeroad_state )
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, tigeroad_state )
+ADDRESS_MAP_START(tigeroad_state::sound_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write)
ADDRESS_MAP_END
/* toramich ONLY */
-static ADDRESS_MAP_START( sample_map, AS_PROGRAM, 8, tigeroad_state )
+ADDRESS_MAP_START(tigeroad_state::sample_map)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sample_port_map, AS_IO, 8, tigeroad_state )
+ADDRESS_MAP_START(tigeroad_state::sample_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch2", generic_latch_8_device, read)
AM_RANGE(0x01, 0x01) AM_WRITE(msm5205_w)
ADDRESS_MAP_END
/* Pushman / Bouncing Balls */
-static ADDRESS_MAP_START( comad_sound_map, AS_PROGRAM, 8, tigeroad_state )
+ADDRESS_MAP_START(tigeroad_state::comad_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( comad_sound_io_map, AS_IO, 8, tigeroad_state )
+ADDRESS_MAP_START(tigeroad_state::comad_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ym1", ym2203_device, write)
AM_RANGE(0x80, 0x81) AM_DEVWRITE("ym2", ym2203_device, write)
diff --git a/src/mame/drivers/tiki100.cpp b/src/mame/drivers/tiki100.cpp
index 361696ca30c..ea82836c2b8 100644
--- a/src/mame/drivers/tiki100.cpp
+++ b/src/mame/drivers/tiki100.cpp
@@ -293,12 +293,12 @@ WRITE8_MEMBER( tiki100_state::system_w )
/* Memory Maps */
-static ADDRESS_MAP_START( tiki100_mem, AS_PROGRAM, 8, tiki100_state )
+ADDRESS_MAP_START(tiki100_state::tiki100_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mrq_r, mrq_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tiki100_io, AS_IO, 8, tiki100_state )
+ADDRESS_MAP_START(tiki100_state::tiki100_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(iorq_r, iorq_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tim011.cpp b/src/mame/drivers/tim011.cpp
index e3617c94271..a7889a13901 100644
--- a/src/mame/drivers/tim011.cpp
+++ b/src/mame/drivers/tim011.cpp
@@ -44,16 +44,18 @@ public:
required_device<floppy_image_device> m_floppy2;
required_device<floppy_image_device> m_floppy3;
void tim011(machine_config &config);
+ void tim011_io(address_map &map);
+ void tim011_mem(address_map &map);
};
-static ADDRESS_MAP_START(tim011_mem, AS_PROGRAM, 8, tim011_state)
+ADDRESS_MAP_START(tim011_state::tim011_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x01fff) AM_ROM AM_MIRROR(0x3e000)
AM_RANGE(0x40000, 0x7ffff) AM_RAM // 256KB RAM 8 * 41256 DRAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tim011_io, AS_IO, 8, tim011_state)
+ADDRESS_MAP_START(tim011_state::tim011_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x007f) AM_RAM /* Z180 internal registers */
AM_RANGE(0x0080, 0x009f) AM_DEVICE(FDC9266_TAG, upd765a_device, map)
diff --git a/src/mame/drivers/tim100.cpp b/src/mame/drivers/tim100.cpp
index eee5715b55e..2ad54a9ecf0 100644
--- a/src/mame/drivers/tim100.cpp
+++ b/src/mame/drivers/tim100.cpp
@@ -39,6 +39,8 @@ public:
I8275_DRAW_CHARACTER_MEMBER( crtc_display_pixels );
void tim100(machine_config &config);
+ void tim100_io(address_map &map);
+ void tim100_mem(address_map &map);
private:
virtual void machine_start() override;
uint8_t *m_charmap;
@@ -49,7 +51,7 @@ private:
required_device<i8275_device> m_crtc;
};
-static ADDRESS_MAP_START(tim100_mem, AS_PROGRAM, 8, tim100_state)
+ADDRESS_MAP_START(tim100_state::tim100_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_ROM // 2764 at U16
AM_RANGE(0x2000, 0x27ff) AM_RAM AM_SHARE("videoram") // 2KB static ram CDM6116A at U15
@@ -61,7 +63,7 @@ static ADDRESS_MAP_START(tim100_mem, AS_PROGRAM, 8, tim100_state)
AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("crtc", i8275_device, read, write) // i8276
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tim100_io, AS_IO, 8, tim100_state)
+ADDRESS_MAP_START(tim100_state::tim100_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/timelimt.cpp b/src/mame/drivers/timelimt.cpp
index 58109b92285..510fb48783b 100644
--- a/src/mame/drivers/timelimt.cpp
+++ b/src/mame/drivers/timelimt.cpp
@@ -48,7 +48,7 @@ WRITE_LINE_MEMBER(timelimt_state::coin_lockout_w)
/***************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, timelimt_state )
+ADDRESS_MAP_START(timelimt_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM /* rom */
AM_RANGE(0x8000, 0x87ff) AM_RAM /* ram */
AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram") /* video ram */
@@ -67,17 +67,17 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, timelimt_state )
AM_RANGE(0xc804, 0xc804) AM_WRITENOP /* ???? not used */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, timelimt_state )
+ADDRESS_MAP_START(timelimt_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, timelimt_state )
+ADDRESS_MAP_START(timelimt_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3800, 0x3bff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, timelimt_state )
+ADDRESS_MAP_START(timelimt_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("soundlatch", generic_latch_8_device, clear_w)
AM_RANGE(0x8c, 0x8d) AM_DEVREADWRITE("ay1", ay8910_device, data_r, address_data_w)
diff --git a/src/mame/drivers/timeplt.cpp b/src/mame/drivers/timeplt.cpp
index 94a3ec9fec5..544f75b0973 100644
--- a/src/mame/drivers/timeplt.cpp
+++ b/src/mame/drivers/timeplt.cpp
@@ -53,7 +53,6 @@
#include "audio/timeplt.h"
#include "cpu/z80/z80.h"
-#include "machine/74259.h"
#include "machine/watchdog.h"
#include "sound/ay8910.h"
@@ -130,7 +129,7 @@ CUSTOM_INPUT_MEMBER(timeplt_state::chkun_hopper_status_r)
*
*************************************/
-static ADDRESS_MAP_START( timeplt_main_map, AS_PROGRAM, 8, timeplt_state )
+ADDRESS_MAP_START(timeplt_state::timeplt_main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0xa000, 0xa3ff) AM_RAM_WRITE(colorram_w) AM_SHARE("colorram")
@@ -141,18 +140,18 @@ static ADDRESS_MAP_START( timeplt_main_map, AS_PROGRAM, 8, timeplt_state )
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x0cff) AM_READ(scanline_r) AM_DEVWRITE("timeplt_audio", timeplt_audio_device, sound_data_w)
AM_RANGE(0xc200, 0xc200) AM_MIRROR(0x0cff) AM_READ_PORT("DSW1") AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0xc300, 0xc300) AM_MIRROR(0x0c9f) AM_READ_PORT("IN0")
- AM_RANGE(0xc300, 0xc30f) AM_MIRROR(0x0cf0) AM_DEVWRITE_MOD("mainlatch", ls259_device, write_d0, rshift<1>)
+ ;map(0xc300, 0xc30f).lw8("mainlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_mainlatch->write_d0(space, offset >> 1, data, mem_mask); });
AM_RANGE(0xc320, 0xc320) AM_MIRROR(0x0c9f) AM_READ_PORT("IN1")
AM_RANGE(0xc340, 0xc340) AM_MIRROR(0x0c9f) AM_READ_PORT("IN2")
AM_RANGE(0xc360, 0xc360) AM_MIRROR(0x0c9f) AM_READ_PORT("DSW0")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( psurge_main_map, AS_PROGRAM, 8, timeplt_state )
+ADDRESS_MAP_START(timeplt_state::psurge_main_map)
AM_IMPORT_FROM(timeplt_main_map)
AM_RANGE(0x6004, 0x6004) AM_READ(psurge_protection_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( chkun_main_map, AS_PROGRAM, 8, timeplt_state )
+ADDRESS_MAP_START(timeplt_state::chkun_main_map)
AM_IMPORT_FROM(timeplt_main_map)
AM_RANGE(0x6000, 0x67ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/timetrv.cpp b/src/mame/drivers/timetrv.cpp
index 172f8cf51ae..03b62dafd9a 100644
--- a/src/mame/drivers/timetrv.cpp
+++ b/src/mame/drivers/timetrv.cpp
@@ -51,6 +51,8 @@ public:
uint32_t screen_update_timetrv(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void timetrv(machine_config &config);
+ void timetrv_io(address_map &map);
+ void timetrv_map(address_map &map);
};
@@ -82,13 +84,13 @@ READ8_MEMBER(timetrv_state::in_r)
return 0xff;
}
-static ADDRESS_MAP_START( timetrv_map, AS_PROGRAM, 8, timetrv_state )
+ADDRESS_MAP_START(timetrv_state::timetrv_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM //irq vectors + work ram
AM_RANGE(0x10000, 0x107ff) AM_DEVREADWRITE("eeprom", eeprom_parallel_28xx_device, read, write)
AM_RANGE(0xc0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( timetrv_io, AS_IO, 8, timetrv_state )
+ADDRESS_MAP_START(timetrv_state::timetrv_io)
AM_RANGE(0x0122, 0x0123) AM_WRITENOP //eeprom write bits
AM_RANGE(0x1000, 0x1003) AM_DEVREADWRITE("ppi1", i8255_device, read, write)
AM_RANGE(0x1080, 0x1083) AM_DEVREADWRITE("ppi2", i8255_device, read, write)
diff --git a/src/mame/drivers/timex.cpp b/src/mame/drivers/timex.cpp
index 06cc0020f0e..7c942821517 100644
--- a/src/mame/drivers/timex.cpp
+++ b/src/mame/drivers/timex.cpp
@@ -525,7 +525,7 @@ void spectrum_state::ts2068_update_memory()
}
}
-static ADDRESS_MAP_START(ts2068_io, AS_IO, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::ts2068_io)
AM_RANGE(0xf4, 0xf4) AM_READWRITE(ts2068_port_f4_r,ts2068_port_f4_w ) AM_MIRROR(0xff00)
AM_RANGE(0xf5, 0xf5) AM_DEVWRITE("ay8912", ay8910_device, address_w ) AM_MIRROR(0xff00)
AM_RANGE(0xf6, 0xf6) AM_DEVREADWRITE("ay8912", ay8910_device, data_r, data_w ) AM_MIRROR(0xff00)
@@ -533,7 +533,7 @@ static ADDRESS_MAP_START(ts2068_io, AS_IO, 8, spectrum_state )
AM_RANGE(0xff, 0xff) AM_READWRITE(ts2068_port_ff_r,ts2068_port_ff_w ) AM_MIRROR(0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ts2068_mem, AS_PROGRAM, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::ts2068_mem)
AM_RANGE(0x0000, 0x1fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank9")
AM_RANGE(0x2000, 0x3fff) AM_READ_BANK("bank2") AM_WRITE_BANK("bank10")
AM_RANGE(0x4000, 0x5fff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank11")
@@ -569,12 +569,12 @@ WRITE8_MEMBER( spectrum_state::tc2048_port_ff_w )
logerror("Port %04x write %02x\n", offset, data);
}
-static ADDRESS_MAP_START(tc2048_io, AS_IO, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::tc2048_io)
AM_RANGE(0x00, 0x00) AM_READWRITE(spectrum_port_fe_r,spectrum_port_fe_w) AM_SELECT(0xfffe)
AM_RANGE(0xff, 0xff) AM_READWRITE(ts2068_port_ff_r,tc2048_port_ff_w) AM_MIRROR(0xff00)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tc2048_mem, AS_PROGRAM, 8, spectrum_state )
+ADDRESS_MAP_START(spectrum_state::tc2048_mem)
AM_RANGE( 0x0000, 0x3fff) AM_ROM
AM_RANGE( 0x4000, 0xffff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tk2000.cpp b/src/mame/drivers/tk2000.cpp
index d0dfdfa8522..9db862421e8 100644
--- a/src/mame/drivers/tk2000.cpp
+++ b/src/mame/drivers/tk2000.cpp
@@ -89,6 +89,8 @@ public:
DECLARE_WRITE8_MEMBER(c100_w);
void tk2000(machine_config &config);
+ void apple2_map(address_map &map);
+ void inhbank_map(address_map &map);
private:
int m_speaker_state;
int m_cassette_state;
@@ -446,14 +448,14 @@ WRITE8_MEMBER(tk2000_state::ram_w)
}
}
-static ADDRESS_MAP_START( apple2_map, AS_PROGRAM, 8, tk2000_state )
+ADDRESS_MAP_START(tk2000_state::apple2_map)
AM_RANGE(0x0000, 0xbfff) AM_READWRITE(ram_r, ram_w)
AM_RANGE(0xc000, 0xc07f) AM_READWRITE(c000_r, c000_w)
AM_RANGE(0xc080, 0xc0ff) AM_READWRITE(c080_r, c080_w)
AM_RANGE(0xc100, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( inhbank_map, AS_PROGRAM, 8, tk2000_state )
+ADDRESS_MAP_START(tk2000_state::inhbank_map)
AM_RANGE(0x0000, 0x3eff) AM_ROM AM_REGION("maincpu", 0x100)
AM_RANGE(0x4000, 0x7eff) AM_READWRITE(c100_r, c100_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tk80.cpp b/src/mame/drivers/tk80.cpp
index 3f1f940deb0..083928df09d 100644
--- a/src/mame/drivers/tk80.cpp
+++ b/src/mame/drivers/tk80.cpp
@@ -80,6 +80,12 @@ public:
void mikrolab(machine_config &config);
void nd80z(machine_config &config);
void tk85(machine_config &config);
+ void ics8080_mem(address_map &map);
+ void mikrolab_io(address_map &map);
+ void nd80z_io(address_map &map);
+ void tk80_io(address_map &map);
+ void tk80_mem(address_map &map);
+ void tk85_mem(address_map &map);
};
@@ -93,7 +99,7 @@ WRITE8_MEMBER( tk80_state::display_w )
output().set_digit_value(offset, data);
}
-static ADDRESS_MAP_START(tk80_mem, AS_PROGRAM, 8, tk80_state)
+ADDRESS_MAP_START(tk80_state::tk80_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x83ff) // A10-14 not connected
AM_RANGE(0x0000, 0x02ff) AM_ROM
@@ -102,7 +108,7 @@ static ADDRESS_MAP_START(tk80_mem, AS_PROGRAM, 8, tk80_state)
AM_RANGE(0x83f8, 0x83ff) AM_RAM AM_READWRITE(display_r,display_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tk85_mem, AS_PROGRAM, 8, tk80_state)
+ADDRESS_MAP_START(tk80_state::tk85_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x87ff) // A10-14 not connected
AM_RANGE(0x0000, 0x07ff) AM_ROM
@@ -110,7 +116,7 @@ static ADDRESS_MAP_START(tk85_mem, AS_PROGRAM, 8, tk80_state)
AM_RANGE(0x83f8, 0x83ff) AM_RAM AM_READWRITE(display_r,display_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ics8080_mem, AS_PROGRAM, 8, tk80_state)
+ADDRESS_MAP_START(tk80_state::ics8080_mem)
ADDRESS_MAP_UNMAP_HIGH
//ADDRESS_MAP_GLOBAL_MASK(0x87ff) // A10-14 not connected
AM_RANGE(0x0000, 0x1fff) AM_ROM
@@ -119,19 +125,19 @@ static ADDRESS_MAP_START(ics8080_mem, AS_PROGRAM, 8, tk80_state)
AM_RANGE(0x8400, 0x8fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tk80_io, AS_IO, 8, tk80_state)
+ADDRESS_MAP_START(tk80_state::tk80_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x03)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(mikrolab_io, AS_IO, 8, tk80_state)
+ADDRESS_MAP_START(tk80_state::mikrolab_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x03)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(nd80z_io, AS_IO, 8, tk80_state)
+ADDRESS_MAP_START(tk80_state::nd80z_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x03)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", i8255_device, read, write)
diff --git a/src/mame/drivers/tk80bs.cpp b/src/mame/drivers/tk80bs.cpp
index 03a42114231..edf84e06a2e 100644
--- a/src/mame/drivers/tk80bs.cpp
+++ b/src/mame/drivers/tk80bs.cpp
@@ -49,6 +49,7 @@ public:
uint32_t screen_update_tk80bs(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_shared_ptr<uint8_t> m_p_videoram;
void tk80bs(machine_config &config);
+ void tk80bs_mem(address_map &map);
private:
uint8_t m_term_data;
required_device<cpu_device> m_maincpu;
@@ -107,7 +108,7 @@ WRITE8_MEMBER( tk80bs_state::ppi_custom_w )
}
}
-static ADDRESS_MAP_START(tk80bs_mem, AS_PROGRAM, 8, tk80bs_state)
+ADDRESS_MAP_START(tk80bs_state::tk80bs_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
// AM_RANGE(0x0c00, 0x7bff) AM_ROM // ext
diff --git a/src/mame/drivers/tm990189.cpp b/src/mame/drivers/tm990189.cpp
index 6ad694eb8b4..cafe72443e6 100644
--- a/src/mame/drivers/tm990189.cpp
+++ b/src/mame/drivers/tm990189.cpp
@@ -162,6 +162,9 @@ public:
void hold_load();
void tm990_189_v(machine_config &config);
void tm990_189(machine_config &config);
+ void tm990_189_cru_map(address_map &map);
+ void tm990_189_memmap(address_map &map);
+ void tm990_189_v_memmap(address_map &map);
private:
void draw_digit(void);
void led_set(int number, bool state);
@@ -721,14 +724,14 @@ static const tms9901_interface sys9901reset_param =
0x3000-0x3fff: 4kb onboard ROM
*/
-static ADDRESS_MAP_START( tm990_189_memmap, AS_PROGRAM, 8, tm990189_state )
+ADDRESS_MAP_START(tm990189_state::tm990_189_memmap)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* RAM */
AM_RANGE(0x0800, 0x0fff) AM_ROM /* extra ROM - application programs with unibug, remaining 2kb of program for university basic */
AM_RANGE(0x1000, 0x2fff) AM_NOP /* reserved for expansion (RAM and/or tms9918 video controller) */
AM_RANGE(0x3000, 0x3fff) AM_ROM /* main ROM - unibug or university basic */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tm990_189_v_memmap, AS_PROGRAM, 8, tm990189_state )
+ADDRESS_MAP_START(tm990189_state::tm990_189_v_memmap)
AM_RANGE(0x0000, 0x07ff) AM_RAM /* RAM */
AM_RANGE(0x0800, 0x0fff) AM_ROM /* extra ROM - application programs with unibug, remaining 2kb of program for university basic */
@@ -796,7 +799,7 @@ ADDRESS_MAP_END
d
*/
-static ADDRESS_MAP_START( tm990_189_cru_map, AS_IO, 8, tm990189_state )
+ADDRESS_MAP_START(tm990189_state::tm990_189_cru_map)
AM_RANGE(0x0000, 0x003f) AM_DEVREAD(TMS9901_0_TAG, tms9901_device, read) /* user I/O tms9901 */
AM_RANGE(0x0040, 0x006f) AM_DEVREAD(TMS9901_1_TAG, tms9901_device, read) /* system I/O tms9901 */
AM_RANGE(0x0080, 0x00cf) AM_DEVREAD("tms9902", tms9902_device, cruread) /* optional tms9902 */
diff --git a/src/mame/drivers/tmaster.cpp b/src/mame/drivers/tmaster.cpp
index 239bab12ec1..53a762f3817 100644
--- a/src/mame/drivers/tmaster.cpp
+++ b/src/mame/drivers/tmaster.cpp
@@ -140,6 +140,7 @@ public:
void tm(machine_config &config);
void tmds1204(machine_config &config);
+ void tmaster_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
@@ -256,7 +257,7 @@ READ_LINE_MEMBER(tmaster_state::read_rand)
return machine().rand() & 1;
}
-static ADDRESS_MAP_START( tmaster_map, AS_PROGRAM, 16, tmaster_state )
+ADDRESS_MAP_START(tmaster_state::tmaster_map)
AM_RANGE( 0x000000, 0x1fffff ) AM_ROM
AM_RANGE( 0x200000, 0x27ffff ) AM_RAM
AM_RANGE( 0x280000, 0x28ffef ) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/drivers/tmc1800.cpp b/src/mame/drivers/tmc1800.cpp
index ec583614e1f..3d312130bcf 100644
--- a/src/mame/drivers/tmc1800.cpp
+++ b/src/mame/drivers/tmc1800.cpp
@@ -253,36 +253,36 @@ WRITE8_MEMBER( tmc1800_state::dispoff_w )
// Telmac 1800
-static ADDRESS_MAP_START( tmc1800_map, AS_PROGRAM, 8, tmc1800_state )
+ADDRESS_MAP_START(tmc1800_state::tmc1800_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x7800) AM_RAM
AM_RANGE(0x8000, 0x81ff) AM_MIRROR(0x7e00) AM_ROM AM_REGION(CDP1802_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmc1800_io_map, AS_IO, 8, tmc1800_state )
+ADDRESS_MAP_START(tmc1800_state::tmc1800_io_map)
AM_RANGE(0x01, 0x01) AM_READWRITE(dispon_r, dispoff_w)
AM_RANGE(0x02, 0x02) AM_WRITE(keylatch_w)
ADDRESS_MAP_END
// OSCOM 1000B
-static ADDRESS_MAP_START( osc1000b_map, AS_PROGRAM, 8, osc1000b_state )
+ADDRESS_MAP_START(osc1000b_state::osc1000b_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x7800) AM_RAM
AM_RANGE(0x8000, 0x81ff) AM_MIRROR(0x7e00) AM_ROM AM_REGION(CDP1802_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( osc1000b_io_map, AS_IO, 8, osc1000b_state )
+ADDRESS_MAP_START(osc1000b_state::osc1000b_io_map)
AM_RANGE(0x02, 0x02) AM_WRITE(keylatch_w)
ADDRESS_MAP_END
// Telmac 2000
-static ADDRESS_MAP_START( tmc2000_map, AS_PROGRAM, 8, tmc2000_state )
+ADDRESS_MAP_START(tmc2000_state::tmc2000_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x7fff) // RAM / monitor ROM
AM_RANGE(0x8000, 0xffff) // color RAM / monitor ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmc2000_io_map, AS_IO, 8, tmc2000_state )
+ADDRESS_MAP_START(tmc2000_state::tmc2000_io_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE(CDP1864_TAG, cdp1864_device, dispon_r, step_bgcolor_w)
AM_RANGE(0x02, 0x02) AM_WRITE(keylatch_w)
@@ -291,12 +291,12 @@ ADDRESS_MAP_END
// OSCOM Nano
-static ADDRESS_MAP_START( nano_map, AS_PROGRAM, 8, nano_state )
+ADDRESS_MAP_START(nano_state::nano_map)
AM_RANGE(0x0000, 0x7fff) // RAM / monitor ROM
AM_RANGE(0x8000, 0x81ff) AM_MIRROR(0x7e00) AM_ROM AM_REGION(CDP1802_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nano_io_map, AS_IO, 8, nano_state )
+ADDRESS_MAP_START(nano_state::nano_io_map)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE(CDP1864_TAG, cdp1864_device, dispon_r, step_bgcolor_w)
AM_RANGE(0x02, 0x02) AM_WRITE(keylatch_w)
AM_RANGE(0x04, 0x04) AM_DEVREAD(CDP1864_TAG, cdp1864_device, dispoff_r) AM_WRITE(bankswitch_w)
diff --git a/src/mame/drivers/tmc2000e.cpp b/src/mame/drivers/tmc2000e.cpp
index c093b77f6b1..3cc6a35eafd 100644
--- a/src/mame/drivers/tmc2000e.cpp
+++ b/src/mame/drivers/tmc2000e.cpp
@@ -82,13 +82,13 @@ WRITE8_MEMBER( tmc2000e_state::keyboard_latch_w )
/* Memory Maps */
-static ADDRESS_MAP_START( tmc2000e_map, AS_PROGRAM, 8, tmc2000e_state )
+ADDRESS_MAP_START(tmc2000e_state::tmc2000e_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0xc000, 0xdfff) AM_ROM
AM_RANGE(0xfc00, 0xffff) AM_WRITEONLY AM_SHARE("colorram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmc2000e_io_map, AS_IO, 8, tmc2000e_state )
+ADDRESS_MAP_START(tmc2000e_state::tmc2000e_io_map)
AM_RANGE(0x01, 0x01) AM_DEVWRITE(CDP1864_TAG, cdp1864_device, tone_latch_w)
AM_RANGE(0x02, 0x02) AM_DEVWRITE(CDP1864_TAG, cdp1864_device, step_bgcolor_w)
AM_RANGE(0x03, 0x03) AM_READWRITE(ascii_keyboard_r, keyboard_latch_w)
diff --git a/src/mame/drivers/tmc600.cpp b/src/mame/drivers/tmc600.cpp
index a8f1a9bc982..ee455d0b6dc 100644
--- a/src/mame/drivers/tmc600.cpp
+++ b/src/mame/drivers/tmc600.cpp
@@ -121,14 +121,14 @@ WRITE8_MEMBER( tmc600_state::printer_w )
/* Memory Maps */
-static ADDRESS_MAP_START( tmc600_map, AS_PROGRAM, 8, tmc600_state )
+ADDRESS_MAP_START(tmc600_state::tmc600_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x7fff) AM_RAM
AM_RANGE(0xf400, 0xf7ff) AM_DEVICE(CDP1869_TAG, cdp1869_device, char_map)
AM_RANGE(0xf800, 0xffff) AM_DEVICE(CDP1869_TAG, cdp1869_device, page_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmc600_io_map, AS_IO, 8, tmc600_state )
+ADDRESS_MAP_START(tmc600_state::tmc600_io_map)
AM_RANGE(0x03, 0x03) AM_DEVWRITE(CDP1852_KB_TAG, cdp1852_device, write)
AM_RANGE(0x04, 0x04) AM_DEVWRITE(CDP1852_TMC700_TAG, cdp1852_device, write)
AM_RANGE(0x05, 0x05) AM_READWRITE(rtc_r, vismac_data_w)
diff --git a/src/mame/drivers/tmmjprd.cpp b/src/mame/drivers/tmmjprd.cpp
index 1578039661c..d22179f0d7e 100644
--- a/src/mame/drivers/tmmjprd.cpp
+++ b/src/mame/drivers/tmmjprd.cpp
@@ -94,6 +94,7 @@ public:
void draw_tilemap(bitmap_ind16 &bitmap, const rectangle &cliprect, uint32_t*tileram, uint32_t*tileregs, uint8_t*rom );
void tmmjprd(machine_config &config);
void tmpdoki(machine_config &config);
+ void tmmjprd_map(address_map &map);
};
@@ -691,7 +692,7 @@ WRITE32_MEMBER(tmmjprd_state::brt_2_w)
}
}
-static ADDRESS_MAP_START( tmmjprd_map, AS_PROGRAM, 32, tmmjprd_state )
+ADDRESS_MAP_START(tmmjprd_state::tmmjprd_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200010, 0x200013) AM_READ(randomtmmjprds) // gfx chip status?
/* check these are used .. */
diff --git a/src/mame/drivers/tmnt.cpp b/src/mame/drivers/tmnt.cpp
index 81b8e108461..ddeca3654a1 100644
--- a/src/mame/drivers/tmnt.cpp
+++ b/src/mame/drivers/tmnt.cpp
@@ -469,7 +469,7 @@ WRITE8_MEMBER(tmnt_state::cuebrick_nvbank_w)
membank("nvrambank")->set_entry(data);
}
-static ADDRESS_MAP_START( cuebrick_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::cuebrick_main_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM /* main RAM */
AM_RANGE(0x060000, 0x063fff) AM_RAM /* main RAM */
@@ -489,7 +489,7 @@ static ADDRESS_MAP_START( cuebrick_main_map, AS_PROGRAM, 16, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mia_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::mia_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM /* main RAM */
AM_RANGE(0x060000, 0x063fff) AM_RAM /* main RAM */
@@ -511,7 +511,7 @@ static ADDRESS_MAP_START( mia_main_map, AS_PROGRAM, 16, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmnt_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::tmnt_main_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x063fff) AM_RAM /* main RAM */
AM_RANGE(0x080000, 0x080fff) AM_DEVREADWRITE8("palette", palette_device, read8, write8, 0x00ff) AM_SHARE("palette")
@@ -532,7 +532,7 @@ static ADDRESS_MAP_START( tmnt_main_map, AS_PROGRAM, 16, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( punkshot_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::punkshot_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM /* main RAM */
AM_RANGE(0x090000, 0x090fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -550,7 +550,7 @@ static ADDRESS_MAP_START( punkshot_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0xfffffc, 0xffffff) AM_READ(punkshot_kludge_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lgtnfght_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::lgtnfght_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0x090000, 0x093fff) AM_RAM /*main RAM */
@@ -575,7 +575,7 @@ WRITE16_MEMBER(tmnt_state::ssriders_soundkludge_w)
m_audiocpu->set_input_line_and_vector(0, HOLD_LINE, 0xff);
}
-static ADDRESS_MAP_START( blswhstl_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::blswhstl_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x180000, 0x183fff) AM_DEVREADWRITE("k052109", k052109_device, word_r, word_w)
AM_RANGE(0x204000, 0x207fff) AM_RAM /* main RAM */
@@ -616,7 +616,7 @@ WRITE16_MEMBER(tmnt_state::k053251_glfgreat_w)
}
}
-static ADDRESS_MAP_START( glfgreat_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::glfgreat_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM /* main RAM */
AM_RANGE(0x104000, 0x107fff) AM_READWRITE(k053245_scattered_word_r, k053245_scattered_word_w) AM_SHARE("spriteram")
@@ -638,7 +638,7 @@ static ADDRESS_MAP_START( glfgreat_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0x300000, 0x3fffff) AM_READ(glfgreat_rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prmrsocr_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::prmrsocr_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM /* main RAM */
AM_RANGE(0x104000, 0x107fff) AM_READWRITE(k053245_scattered_word_r, k053245_scattered_word_w) AM_SHARE("spriteram")
@@ -897,7 +897,7 @@ logerror("copy command %04x sprite %08x data %08x: %04x%04x %04x%04x modifiers
}
#endif
-static ADDRESS_MAP_START( tmnt2_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::tmnt2_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_SHARE("tmnt2_rom")
AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("sunset_104000") /* main RAM */
AM_RANGE(0x140000, 0x140fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -921,7 +921,7 @@ static ADDRESS_MAP_START( tmnt2_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0x600000, 0x603fff) AM_DEVREADWRITE("k052109", k052109_device, word_r, word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ssriders_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::ssriders_main_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x104000, 0x107fff) AM_RAM /* main RAM */
AM_RANGE(0x140000, 0x140fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -945,7 +945,7 @@ static ADDRESS_MAP_START( ssriders_main_map, AS_PROGRAM, 16, tmnt_state )
AM_RANGE(0x600000, 0x603fff) AM_DEVREADWRITE("k052109", k052109_device, word_r, word_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sunsetbl_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::sunsetbl_main_map)
AM_RANGE(0x000000, 0x0bffff) AM_ROM
AM_RANGE(0x104000, 0x107fff) AM_RAM /* main RAM */
AM_RANGE(0x14c000, 0x14cfff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -971,7 +971,7 @@ static ADDRESS_MAP_START( sunsetbl_main_map, AS_PROGRAM, 16, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thndrx2_main_map, AS_PROGRAM, 16, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::thndrx2_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM /* main RAM */
AM_RANGE(0x200000, 0x200fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -988,7 +988,7 @@ static ADDRESS_MAP_START( thndrx2_main_map, AS_PROGRAM, 16, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mia_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::mia_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -997,7 +997,7 @@ static ADDRESS_MAP_START( mia_audio_map, AS_PROGRAM, 8, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tmnt_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::tmnt_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_READWRITE(tmnt_sres_r, tmnt_sres_w) /* title music & UPD7759C reset */
@@ -1010,7 +1010,7 @@ static ADDRESS_MAP_START( tmnt_audio_map, AS_PROGRAM, 8, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( punkshot_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::punkshot_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1019,7 +1019,7 @@ static ADDRESS_MAP_START( punkshot_audio_map, AS_PROGRAM, 8, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lgtnfght_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::lgtnfght_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1027,7 +1027,7 @@ static ADDRESS_MAP_START( lgtnfght_audio_map, AS_PROGRAM, 8, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( glfgreat_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::glfgreat_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf82f) AM_DEVREADWRITE("k053260", k053260_device, read, write)
@@ -1035,7 +1035,7 @@ static ADDRESS_MAP_START( glfgreat_audio_map, AS_PROGRAM, 8, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ssriders_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::ssriders_audio_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1044,7 +1044,7 @@ static ADDRESS_MAP_START( ssriders_audio_map, AS_PROGRAM, 8, tmnt_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( thndrx2_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::thndrx2_audio_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf801) AM_MIRROR(0x0010) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1063,7 +1063,7 @@ WRITE8_MEMBER(tmnt_state::k054539_ctrl_w)
m_k054539->write(space, 0x200 + offset, data, 0xff);
}
-static ADDRESS_MAP_START( prmrsocr_audio_map, AS_PROGRAM, 8, tmnt_state )
+ADDRESS_MAP_START(tmnt_state::prmrsocr_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/tmspoker.cpp b/src/mame/drivers/tmspoker.cpp
index f516e50bdc2..1adcc453648 100644
--- a/src/mame/drivers/tmspoker.cpp
+++ b/src/mame/drivers/tmspoker.cpp
@@ -240,6 +240,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void tmspoker(machine_config &config);
+ void tmspoker_cru_map(address_map &map);
+ void tmspoker_map(address_map &map);
};
@@ -324,7 +326,7 @@ void tmspoker_state::machine_reset()
* Memory Map Information *
*************************/
//59a
-static ADDRESS_MAP_START( tmspoker_map, AS_PROGRAM, 8, tmspoker_state )
+ADDRESS_MAP_START(tmspoker_state::tmspoker_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x0fff) AM_ROMBANK("bank1")
AM_RANGE(0x2800, 0x2800) AM_READNOP AM_DEVWRITE("crtc", mc6845_device, address_w)
@@ -341,7 +343,7 @@ READ8_MEMBER(tmspoker_state::unk_r)
return 0;//0xff;//mame_rand(machine);
}
-static ADDRESS_MAP_START( tmspoker_cru_map, AS_IO, 8, tmspoker_state )
+ADDRESS_MAP_START(tmspoker_state::tmspoker_cru_map)
AM_RANGE(0x0000, 0x07ff) AM_READ(unk_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tnzs.cpp b/src/mame/drivers/tnzs.cpp
index d8b8845b987..2788d9acc25 100644
--- a/src/mame/drivers/tnzs.cpp
+++ b/src/mame/drivers/tnzs.cpp
@@ -720,7 +720,7 @@ WRITE8_MEMBER(kageki_state::csport_w)
}
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tnzs_base_state )
+ADDRESS_MAP_START(tnzs_base_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_DEVICE("mainbank", address_map_bank_device, amap8)
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecodelow_r8, spritecodelow_w8)
@@ -733,14 +733,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tnzs_base_state )
AM_RANGE(0xf800, 0xfbff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( prompal_main_map, AS_PROGRAM, 8, extrmatn_state )
+ADDRESS_MAP_START(extrmatn_state::prompal_main_map)
AM_IMPORT_FROM(main_map)
/* arknoid2, extrmatn, plumppop and drtoppel have PROMs instead of RAM */
/* drtoppel writes here anyway! (maybe leftover from tests during development) */
AM_RANGE(0xf800, 0xfbff) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnzsb_main_map, AS_PROGRAM, 8, tnzsb_state )
+ADDRESS_MAP_START(tnzsb_state::tnzsb_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_DEVICE("mainbank", address_map_bank_device, amap8)
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecodelow_r8, spritecodelow_w8)
@@ -754,7 +754,7 @@ static ADDRESS_MAP_START( tnzsb_main_map, AS_PROGRAM, 8, tnzsb_state )
AM_RANGE(0xf800, 0xfbff) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( base_sub_map, AS_PROGRAM, 8, tnzs_base_state )
+ADDRESS_MAP_START(tnzs_base_state::base_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("subbank")
AM_RANGE(0xa000, 0xa000) AM_WRITE(bankswitch1_w)
@@ -763,7 +763,7 @@ static ADDRESS_MAP_START( base_sub_map, AS_PROGRAM, 8, tnzs_base_state )
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnzs_sub_map, AS_PROGRAM, 8, tnzs_mcu_state )
+ADDRESS_MAP_START(tnzs_mcu_state::tnzs_sub_map)
AM_IMPORT_FROM(base_sub_map)
AM_RANGE(0xc000, 0xc001) AM_READWRITE(mcu_r, mcu_w) /* not present in insectx */
AM_RANGE(0xa000, 0xa000) AM_WRITE(bankswitch1_w)
@@ -772,19 +772,19 @@ static ADDRESS_MAP_START( tnzs_sub_map, AS_PROGRAM, 8, tnzs_mcu_state )
/* all by insectx. */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( arknoid2_sub_map, AS_PROGRAM, 8, arknoid2_state )
+ADDRESS_MAP_START(arknoid2_state::arknoid2_sub_map)
AM_IMPORT_FROM(tnzs_sub_map)
AM_RANGE(0xc000, 0xc001) AM_READWRITE(mcu_r, mcu_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kageki_sub_map, AS_PROGRAM, 8, kageki_state )
+ADDRESS_MAP_START(kageki_state::kageki_sub_map)
AM_IMPORT_FROM(base_sub_map)
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("IN1")
AM_RANGE(0xc002, 0xc002) AM_READ_PORT("IN2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( insectx_sub_map, AS_PROGRAM, 8, insectx_state )
+ADDRESS_MAP_START(insectx_state::insectx_sub_map)
AM_IMPORT_FROM(base_sub_map)
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("IN1")
@@ -793,7 +793,7 @@ ADDRESS_MAP_END
/* the later board is different, it has a third CPU (and of course no mcu) */
-static ADDRESS_MAP_START( tnzsb_base_sub_map, AS_PROGRAM, 8, tnzsb_state )
+ADDRESS_MAP_START(tnzsb_state::tnzsb_base_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("subbank")
AM_RANGE(0xa000, 0xa000) AM_WRITE(bankswitch1_w)
@@ -807,35 +807,35 @@ static ADDRESS_MAP_START( tnzsb_base_sub_map, AS_PROGRAM, 8, tnzsb_state )
AM_RANGE(0xe000, 0xefff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnzsb_sub_map, AS_PROGRAM, 8, tnzsb_state )
+ADDRESS_MAP_START(tnzsb_state::tnzsb_sub_map)
AM_IMPORT_FROM(tnzsb_base_sub_map)
AM_RANGE(0xf000, 0xf003) AM_READONLY
AM_RANGE(0xf000, 0xf3ff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kabukiz_sub_map, AS_PROGRAM, 8, kabukiz_state )
+ADDRESS_MAP_START(kabukiz_state::kabukiz_sub_map)
AM_IMPORT_FROM(tnzsb_base_sub_map)
AM_RANGE(0xf800, 0xfbff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnzsb_cpu2_map, AS_PROGRAM, 8, tnzsb_state )
+ADDRESS_MAP_START(tnzsb_state::tnzsb_cpu2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kabukiz_cpu2_map, AS_PROGRAM, 8, kabukiz_state )
+ADDRESS_MAP_START(kabukiz_state::kabukiz_cpu2_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("audiobank")
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tnzsb_io_map, AS_IO, 8, tnzsb_state )
+ADDRESS_MAP_START(tnzsb_state::tnzsb_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0x02, 0x02) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jpopnics_main_map, AS_PROGRAM, 8, jpopnics_state )
+ADDRESS_MAP_START(jpopnics_state::jpopnics_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_DEVICE("mainbank", address_map_bank_device, amap8)
AM_RANGE(0xc000, 0xcfff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecodelow_r8, spritecodelow_w8)
@@ -848,7 +848,7 @@ static ADDRESS_MAP_START( jpopnics_main_map, AS_PROGRAM, 8, jpopnics_state )
AM_RANGE(0xf800, 0xffff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jpopnics_sub_map, AS_PROGRAM, 8, jpopnics_state )
+ADDRESS_MAP_START(jpopnics_state::jpopnics_sub_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("subbank")
@@ -866,7 +866,7 @@ static ADDRESS_MAP_START( jpopnics_sub_map, AS_PROGRAM, 8, jpopnics_state )
ADDRESS_MAP_END
/* RAM/ROM bank that maps at 0x8000-0xbfff on maincpu */
-static ADDRESS_MAP_START( mainbank_map, AS_PROGRAM, 8, tnzs_base_state )
+ADDRESS_MAP_START(tnzs_base_state::mainbank_map)
AM_RANGE(0x00000, 0x07fff) AM_RAM // instead of the first two banks of ROM being repeated redundantly the hardware maps RAM here
AM_RANGE(0x08000, 0x1ffff) AM_ROM AM_REGION(":maincpu", 0x8000)
ADDRESS_MAP_END
@@ -1552,7 +1552,7 @@ MACHINE_CONFIG_START(tnzs_base_state::tnzs_base)
MCFG_SPEAKER_STANDARD_MONO("speaker")
MACHINE_CONFIG_END
-MACHINE_CONFIG_DERIVED(tnzs_base_state::tnzs, tnzs_base)
+MACHINE_CONFIG_DERIVED(tnzs_mcu_state::tnzs, tnzs_base)
MCFG_CPU_ADD("mcu", I8742, 12000000/2) /* 400KHz ??? - Main board Crystal is 12MHz */
MCFG_MCS48_PORT_P1_IN_CB(READ8(tnzs_mcu_state, mcu_port1_r))
MCFG_MCS48_PORT_P2_IN_CB(READ8(tnzs_mcu_state, mcu_port2_r))
diff --git a/src/mame/drivers/toaplan1.cpp b/src/mame/drivers/toaplan1.cpp
index 77f3456721f..4b0f58ab831 100644
--- a/src/mame/drivers/toaplan1.cpp
+++ b/src/mame/drivers/toaplan1.cpp
@@ -619,7 +619,7 @@ Stephh's and AWJ's notes (based on the games M68000 and Z80 code and some tests)
/***************************** 68000 Memory Map *****************************/
-static ADDRESS_MAP_START( rallybik_main_map, AS_PROGRAM, 16, toaplan1_rallybik_state )
+ADDRESS_MAP_START(toaplan1_rallybik_state::rallybik_main_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM
@@ -639,7 +639,7 @@ static ADDRESS_MAP_START( rallybik_main_map, AS_PROGRAM, 16, toaplan1_rallybik_s
AM_RANGE(0x1c8000, 0x1c8001) AM_WRITE(toaplan1_reset_sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( truxton_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::truxton_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x083fff) AM_RAM
AM_RANGE(0x0c0000, 0x0c0001) AM_READ(toaplan1_frame_done_r)
@@ -662,7 +662,7 @@ static ADDRESS_MAP_START( truxton_main_map, AS_PROGRAM, 16, toaplan1_state )
AM_RANGE(0x1d0000, 0x1d0001) AM_WRITE(toaplan1_reset_sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hellfire_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::hellfire_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x047fff) AM_RAM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("VBLANK")
@@ -685,7 +685,7 @@ static ADDRESS_MAP_START( hellfire_main_map, AS_PROGRAM, 16, toaplan1_state )
AM_RANGE(0x180008, 0x180009) AM_WRITE(toaplan1_reset_sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zerowing_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::zerowing_main_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x087fff) AM_RAM
@@ -708,7 +708,7 @@ static ADDRESS_MAP_START( zerowing_main_map, AS_PROGRAM, 16, toaplan1_state )
AM_RANGE(0x4c0006, 0x4c0007) AM_READWRITE(toaplan1_spritesizeram16_r, toaplan1_spritesizeram16_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( demonwld_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::demonwld_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x400001) AM_READ_PORT("VBLANK")
// AM_RANGE(0x400000, 0x400001) AM_WRITE(?? video frame related ??)
@@ -732,7 +732,7 @@ static ADDRESS_MAP_START( demonwld_main_map, AS_PROGRAM, 16, toaplan1_state )
AM_RANGE(0xe0000a, 0xe0000b) AM_WRITE(demonwld_dsp_ctrl_w) /* DSP Comms control */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( samesame_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::samesame_main_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x040000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x080003) AM_WRITE(toaplan1_tile_offsets_w)
@@ -763,7 +763,7 @@ static ADDRESS_MAP_START( samesame_main_map, AS_PROGRAM, 16, toaplan1_state )
AM_RANGE(0x1c0006, 0x1c0007) AM_READWRITE(toaplan1_spritesizeram16_r, toaplan1_spritesizeram16_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( outzone_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::outzone_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_READ(toaplan1_frame_done_r)
AM_RANGE(0x100002, 0x100003) AM_READWRITE(toaplan1_spriteram_offs_r, toaplan1_spriteram_offs_w)
@@ -785,7 +785,7 @@ static ADDRESS_MAP_START( outzone_main_map, AS_PROGRAM, 16, toaplan1_state )
AM_RANGE(0x340006, 0x340007) AM_WRITE(toaplan1_fcu_flipscreen_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( outzonecv_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::outzonecv_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
// AM_RANGE(0x040000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x087fff) AM_RAM
@@ -808,7 +808,7 @@ static ADDRESS_MAP_START( outzonecv_main_map, AS_PROGRAM, 16, toaplan1_state )
AM_RANGE(0x4c0006, 0x4c0007) AM_READWRITE(toaplan1_spritesizeram16_r, toaplan1_spritesizeram16_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vimana_main_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::vimana_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080003) AM_WRITE(toaplan1_tile_offsets_w)
AM_RANGE(0x080006, 0x080007) AM_WRITE(toaplan1_fcu_flipscreen_w)
@@ -833,12 +833,12 @@ ADDRESS_MAP_END
/***************************** Z80 Memory Map *******************************/
-static ADDRESS_MAP_START( toaplan1_sound_map, AS_PROGRAM, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::toaplan1_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rallybik_sound_io_map, AS_IO, 8, toaplan1_rallybik_state )
+ADDRESS_MAP_START(toaplan1_rallybik_state::rallybik_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x10, 0x10) AM_READ_PORT("P2")
@@ -849,7 +849,7 @@ static ADDRESS_MAP_START( rallybik_sound_io_map, AS_IO, 8, toaplan1_rallybik_sta
AM_RANGE(0x60, 0x61) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( truxton_sound_io_map, AS_IO, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::truxton_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x10, 0x10) AM_READ_PORT("P2")
@@ -861,7 +861,7 @@ static ADDRESS_MAP_START( truxton_sound_io_map, AS_IO, 8, toaplan1_state )
AM_RANGE(0x70, 0x70) AM_READ_PORT("TJUMP")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hellfire_sound_io_map, AS_IO, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::hellfire_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSWA")
AM_RANGE(0x10, 0x10) AM_READ_PORT("DSWB")
@@ -873,7 +873,7 @@ static ADDRESS_MAP_START( hellfire_sound_io_map, AS_IO, 8, toaplan1_state )
AM_RANGE(0x70, 0x71) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zerowing_sound_io_map, AS_IO, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::zerowing_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("P1")
AM_RANGE(0x08, 0x08) AM_READ_PORT("P2")
@@ -885,7 +885,7 @@ static ADDRESS_MAP_START( zerowing_sound_io_map, AS_IO, 8, toaplan1_state )
AM_RANGE(0xa8, 0xa9) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( demonwld_sound_io_map, AS_IO, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::demonwld_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0x20, 0x20) AM_READ_PORT("TJUMP")
@@ -897,7 +897,7 @@ static ADDRESS_MAP_START( demonwld_sound_io_map, AS_IO, 8, toaplan1_state )
AM_RANGE(0xe0, 0xe0) AM_READ_PORT("DSWA")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( outzone_sound_io_map, AS_IO, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::outzone_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0x04, 0x04) AM_WRITE(toaplan1_coin_w) /* Coin counter/lockout */
@@ -912,13 +912,13 @@ ADDRESS_MAP_END
/***************************** TMS32010 Memory Map **************************/
-static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::DSP_program_map)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
/* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */
-static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::DSP_io_map)
AM_RANGE(0, 0) AM_WRITE(demonwld_dsp_addrsel_w)
AM_RANGE(1, 1) AM_READWRITE(demonwld_dsp_r, demonwld_dsp_w)
AM_RANGE(3, 3) AM_WRITE(demonwld_dsp_bio_w)
@@ -927,13 +927,13 @@ ADDRESS_MAP_END
/***************************** HD647180 Memory Map **************************/
-static ADDRESS_MAP_START( vimana_hd647180_mem_map, AS_PROGRAM, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::vimana_hd647180_mem_map)
AM_RANGE(0x00000, 0x03fff) AM_ROM /* Internal 16k byte ROM */
AM_RANGE(0x08000, 0x087ff) AM_RAM AM_SHARE("sharedram") /* 2048 bytes of shared ram w/maincpu */
AM_RANGE(0x0fe00, 0x0ffff) AM_RAM /* Internal 512 byte RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vimana_hd647180_io_map, AS_IO, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::vimana_hd647180_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
// lots of low level 647180 peripherals are not emulated yet, ddr regs, timer regs etc, see comments below
// also see http://bitsavers.trailing-edge.com/pdf/hitachi/_dataBooks/U94_HD647180X_8-Bit_Microcontroller_Hardware_Manual_Jan88.pdf particularly page 38 (pdf page 56)
@@ -996,12 +996,12 @@ READ8_MEMBER(toaplan1_state::samesame_cmdavailable_r)
else return 0x00;
};
-static ADDRESS_MAP_START( samesame_hd647180_mem_map, AS_PROGRAM, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::samesame_hd647180_mem_map)
AM_RANGE(0x00000, 0x03fff) AM_ROM /* Internal 16k byte ROM */
AM_RANGE(0x0fe00, 0x0ffff) AM_RAM /* Internal 512 byte RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( samesame_hd647180_io_map, AS_IO, 8, toaplan1_state )
+ADDRESS_MAP_START(toaplan1_state::samesame_hd647180_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x63, 0x63) AM_READ( samesame_cmdavailable_r )
diff --git a/src/mame/drivers/toaplan2.cpp b/src/mame/drivers/toaplan2.cpp
index 9b5aaa1ae24..0999c8430ae 100644
--- a/src/mame/drivers/toaplan2.cpp
+++ b/src/mame/drivers/toaplan2.cpp
@@ -867,7 +867,7 @@ INTERRUPT_GEN_MEMBER(toaplan2_state::bbakraid_snd_interrupt)
-static ADDRESS_MAP_START( tekipaki_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::tekipaki_68k_mem)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x020000, 0x03ffff) AM_ROM // extra for Whoopee
AM_RANGE(0x080000, 0x082fff) AM_RAM
@@ -885,7 +885,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( ghox_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::ghox_68k_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x040001) AM_READ(ghox_p2_h_analog_r)
AM_RANGE(0x080000, 0x083fff) AM_RAM
@@ -898,7 +898,7 @@ static ADDRESS_MAP_START( ghox_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dogyuun_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::dogyuun_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x200010, 0x200011) AM_READ_PORT("IN1")
@@ -913,7 +913,7 @@ static ADDRESS_MAP_START( dogyuun_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kbash_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::kbash_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x200000, 0x200fff) AM_READWRITE(shared_ram_r, shared_ram_w )
@@ -927,7 +927,7 @@ static ADDRESS_MAP_START( kbash_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kbash2_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::kbash2_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x104000, 0x10401f) AM_RAM // Sound related?
@@ -948,7 +948,7 @@ static ADDRESS_MAP_START( kbash2_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( truxton2_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::truxton2_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x20000d) AM_DEVREADWRITE("gp9001", gp9001vdp_device, gp9001_vdp_r, gp9001_vdp_w)
@@ -971,7 +971,7 @@ static ADDRESS_MAP_START( truxton2_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pipibibs_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::pipibibs_68k_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x082fff) AM_RAM
AM_RANGE(0x0c0000, 0x0c0fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -987,7 +987,7 @@ static ADDRESS_MAP_START( pipibibs_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
// odd scroll registers
-static ADDRESS_MAP_START( pipibibi_bootleg_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::pipibibi_bootleg_68k_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x082fff) AM_RAM
AM_RANGE(0x083000, 0x0837ff) AM_DEVREADWRITE("gp9001", gp9001vdp_device, pipibibi_bootleg_spriteram16_r, pipibibi_bootleg_spriteram16_w) // SpriteRAM
@@ -1009,7 +1009,7 @@ static ADDRESS_MAP_START( pipibibi_bootleg_68k_mem, AS_PROGRAM, 16, toaplan2_sta
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fixeight_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::fixeight_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x200000, 0x200001) AM_READ_PORT("IN1")
@@ -1029,7 +1029,7 @@ static ADDRESS_MAP_START( fixeight_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fixeightbl_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::fixeightbl_68k_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // 0-7ffff ?
AM_RANGE(0x100000, 0x10ffff) AM_RAM // 100000-107fff 105000-105xxx 106000-106xxx 108000 - related to sound ?
AM_RANGE(0x200000, 0x200001) AM_READ_PORT("IN1")
@@ -1048,7 +1048,7 @@ static ADDRESS_MAP_START( fixeightbl_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vfive_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::vfive_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
// AM_RANGE(0x200000, 0x20ffff) AM_NOP // Read at startup by broken ROM checksum code - see notes
@@ -1063,7 +1063,7 @@ static ADDRESS_MAP_START( vfive_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( batsugun_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::batsugun_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x200010, 0x200011) AM_READ_PORT("IN1")
@@ -1077,7 +1077,7 @@ static ADDRESS_MAP_START( batsugun_68k_mem, AS_PROGRAM, 16, toaplan2_state )
AM_RANGE(0x700000, 0x700001) AM_READ(video_count_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pwrkick_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::pwrkick_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("nvram") // Only 10022C-10037B is actually saved as NVRAM
AM_RANGE(0x104000, 0x10ffff) AM_RAM
@@ -1099,7 +1099,7 @@ static ADDRESS_MAP_START( pwrkick_68k_mem, AS_PROGRAM, 16, toaplan2_state )
AM_RANGE(0x700038, 0x700039) AM_WRITE8(pwrkick_coin_lockout_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( othldrby_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::othldrby_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("nvram") // Only 10331E-103401 is actually saved as NVRAM
AM_RANGE(0x104000, 0x10ffff) AM_RAM
@@ -1135,7 +1135,7 @@ WRITE16_MEMBER(toaplan2_state::enmadaio_oki_bank_w)
}
-static ADDRESS_MAP_START( enmadaio_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::enmadaio_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM // AM_SHARE("nvram")
AM_RANGE(0x104000, 0x10ffff) AM_RAM
@@ -1161,7 +1161,7 @@ static ADDRESS_MAP_START( enmadaio_68k_mem, AS_PROGRAM, 16, toaplan2_state )
AM_RANGE(0x70002c, 0x70002d) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( snowbro2_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::snowbro2_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x300000, 0x30000d) AM_DEVREADWRITE("gp9001", gp9001vdp_device, gp9001_vdp_r, gp9001_vdp_w)
@@ -1181,7 +1181,7 @@ static ADDRESS_MAP_START( snowbro2_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mahoudai_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::mahoudai_68k_mem)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x218000, 0x21bfff) AM_READWRITE(shared_ram_r, shared_ram_w)
@@ -1203,7 +1203,7 @@ static ADDRESS_MAP_START( mahoudai_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( shippumd_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::shippumd_68k_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x218000, 0x21bfff) AM_READWRITE(shared_ram_r, shared_ram_w)
@@ -1226,7 +1226,7 @@ static ADDRESS_MAP_START( shippumd_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bgaregga_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::bgaregga_68k_mem)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM
AM_RANGE(0x218000, 0x21bfff) AM_READWRITE(shared_ram_r, shared_ram_w)
@@ -1248,7 +1248,7 @@ static ADDRESS_MAP_START( bgaregga_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( batrider_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::batrider_68k_mem)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
// actually 200000 - 20ffff is probably all main RAM, and the text and palette RAM are written via DMA
AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(toaplan2_tx_videoram_w) AM_SHARE("tx_videoram")
@@ -1278,7 +1278,7 @@ static ADDRESS_MAP_START( batrider_68k_mem, AS_PROGRAM, 16, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbakraid_68k_mem, AS_PROGRAM, 16, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::bbakraid_68k_mem)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
// actually 200000 - 20ffff is probably all main RAM, and the text and palette RAM are written via DMA
AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(toaplan2_tx_videoram_w) AM_SHARE("tx_videoram")
@@ -1309,14 +1309,14 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( pipibibs_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::pipibibs_sound_z80_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0xe000, 0xe001) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( raizing_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::raizing_sound_z80_mem)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0xe000, 0xe001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -1325,7 +1325,7 @@ static ADDRESS_MAP_START( raizing_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bgaregga_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::bgaregga_sound_z80_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("shared_ram")
@@ -1339,14 +1339,14 @@ static ADDRESS_MAP_START( bgaregga_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state
ADDRESS_MAP_END
-static ADDRESS_MAP_START( batrider_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::batrider_sound_z80_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xc000, 0xdfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( batrider_sound_z80_port, AS_IO, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::batrider_sound_z80_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_DEVWRITE("soundlatch3", generic_latch_8_device, write)
AM_RANGE(0x42, 0x42) AM_DEVWRITE("soundlatch4", generic_latch_8_device, write)
@@ -1362,13 +1362,13 @@ static ADDRESS_MAP_START( batrider_sound_z80_port, AS_IO, 8, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbakraid_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::bbakraid_sound_z80_mem)
AM_RANGE(0x0000, 0xbfff) AM_ROM // No banking? ROM only contains code and data up to 0x28DC
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bbakraid_sound_z80_port, AS_IO, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::bbakraid_sound_z80_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_DEVWRITE("soundlatch3", generic_latch_8_device, write)
AM_RANGE(0x42, 0x42) AM_DEVWRITE("soundlatch4", generic_latch_8_device, write)
@@ -1380,14 +1380,14 @@ static ADDRESS_MAP_START( bbakraid_sound_z80_port, AS_IO, 8, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( v25_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::v25_mem)
AM_RANGE(0x00000, 0x00001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x00004, 0x00004) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x80000, 0x87fff) AM_MIRROR(0x78000) AM_RAM AM_SHARE("shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kbash_v25_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::kbash_v25_mem)
AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("shared_ram")
AM_RANGE(0x04000, 0x04001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x04002, 0x04002) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -1395,7 +1395,7 @@ static ADDRESS_MAP_START( kbash_v25_mem, AS_PROGRAM, 8, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fixeight_v25_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::fixeight_v25_mem)
AM_RANGE(0x00000, 0x00000) AM_READ_PORT("IN1")
AM_RANGE(0x00002, 0x00002) AM_READ_PORT("IN2")
AM_RANGE(0x00004, 0x00004) AM_READ_PORT("IN3")
@@ -1405,18 +1405,18 @@ static ADDRESS_MAP_START( fixeight_v25_mem, AS_PROGRAM, 8, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vfive_v25_mem, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::vfive_v25_mem)
AM_RANGE(0x00000, 0x00001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x80000, 0x87fff) AM_MIRROR(0x78000) AM_RAM AM_SHARE("shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fixeightbl_oki, 0, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::fixeightbl_oki)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( enmadaio_oki, 0, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::enmadaio_oki)
AM_RANGE(0x00000, 0x3ffff) AM_ROMBANK("bank1")
ADDRESS_MAP_END
@@ -1428,12 +1428,12 @@ READ8_MEMBER(toaplan2_state::tekipaki_cmdavailable_r)
else return 0x00;
};
-static ADDRESS_MAP_START( hd647180_mem_map, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::hd647180_mem_map)
AM_RANGE(0x00000, 0x03fff) AM_ROM /* Internal 16k byte ROM */
AM_RANGE(0x0fe00, 0x0ffff) AM_RAM /* Internal 512 byte RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hd647180_io_map, AS_IO, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::hd647180_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x60, 0x60) AM_READ(tekipaki_cmdavailable_r)
@@ -1444,7 +1444,7 @@ static ADDRESS_MAP_START( hd647180_io_map, AS_IO, 8, toaplan2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ghox_hd647180_mem_map, AS_PROGRAM, 8, toaplan2_state )
+ADDRESS_MAP_START(toaplan2_state::ghox_hd647180_mem_map)
AM_RANGE(0x00000, 0x03fff) AM_ROM // Internal 16k byte ROM
AM_RANGE(0x0fe00, 0x0ffff) AM_RAM // Internal 512 byte RAM
AM_RANGE(0x3fe00, 0x3ffff) AM_RAM // Relocated internal RAM (RMCR = 30)
diff --git a/src/mame/drivers/toki.cpp b/src/mame/drivers/toki.cpp
index c97a307106c..b649b85e5fa 100644
--- a/src/mame/drivers/toki.cpp
+++ b/src/mame/drivers/toki.cpp
@@ -142,7 +142,7 @@ WRITE8_MEMBER(toki_state::tokib_adpcm_data_w)
/*****************************************************************************/
-static ADDRESS_MAP_START( toki_map, AS_PROGRAM, 16, toki_state )
+ADDRESS_MAP_START(toki_state::toki_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x06d7ff) AM_RAM
AM_RANGE(0x06d800, 0x06dfff) AM_RAM AM_SHARE("spriteram")
@@ -158,7 +158,7 @@ static ADDRESS_MAP_START( toki_map, AS_PROGRAM, 16, toki_state )
ADDRESS_MAP_END
/* In the bootleg, sound and sprites are remapped to 0x70000 */
-static ADDRESS_MAP_START( tokib_map, AS_PROGRAM, 16, toki_state )
+ADDRESS_MAP_START(toki_state::tokib_map)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x060000, 0x06dfff) AM_RAM
AM_RANGE(0x06e000, 0x06e7ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -182,7 +182,7 @@ ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START( toki_audio_map, AS_PROGRAM, 8, toki_state )
+ADDRESS_MAP_START(toki_state::toki_audio_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, data_r)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -200,12 +200,12 @@ static ADDRESS_MAP_START( toki_audio_map, AS_PROGRAM, 8, toki_state )
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( toki_audio_opcodes_map, AS_OPCODES, 8, toki_state )
+ADDRESS_MAP_START(toki_state::toki_audio_opcodes_map)
AM_RANGE(0x0000, 0x1fff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r)
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jujuba_audio_map, AS_PROGRAM, 8, toki_state )
+ADDRESS_MAP_START(toki_state::jujuba_audio_map)
AM_RANGE(0x0000, 0x1fff) AM_READ(jujuba_z80_data_decrypt)
AM_RANGE(0x2000, 0x27ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w)
@@ -223,7 +223,7 @@ static ADDRESS_MAP_START( jujuba_audio_map, AS_PROGRAM, 8, toki_state )
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( jujuba_audio_opcodes_map, AS_OPCODES, 8, toki_state )
+ADDRESS_MAP_START(toki_state::jujuba_audio_opcodes_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("audiocpu", 0)
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1")
ADDRESS_MAP_END
@@ -233,7 +233,7 @@ READ8_MEMBER(toki_state::jujuba_z80_data_decrypt)
return m_audiocpu_rom[offset] ^ 0x55;
}
-static ADDRESS_MAP_START( tokib_audio_map, AS_PROGRAM, 8, toki_state )
+ADDRESS_MAP_START(toki_state::tokib_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
AM_RANGE(0xe000, 0xe000) AM_WRITE(tokib_adpcm_control_w) /* MSM5205 + ROM bank */
@@ -494,7 +494,7 @@ MACHINE_CONFIG_START(toki_state::toki) /* KOYO 20.000MHz near the cpu */
MCFG_CPU_ADD("audiocpu", Z80, XTAL(14'318'181)/4) // verified on pcb
MCFG_CPU_PROGRAM_MAP(toki_audio_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(toki_audio_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(toki_audio_opcodes_map)
MCFG_DEVICE_ADD("sei80bu", SEI80BU, 0)
MCFG_DEVICE_ROM("audiocpu")
@@ -536,7 +536,7 @@ MACHINE_CONFIG_DERIVED(toki_state::jujuba, toki)
MCFG_DEVICE_MODIFY("audiocpu")
MCFG_CPU_PROGRAM_MAP(jujuba_audio_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(jujuba_audio_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(jujuba_audio_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_START(toki_state::tokib)
diff --git a/src/mame/drivers/tomcat.cpp b/src/mame/drivers/tomcat.cpp
index 630c09c49dd..2dfb94c5302 100644
--- a/src/mame/drivers/tomcat.cpp
+++ b/src/mame/drivers/tomcat.cpp
@@ -84,6 +84,9 @@ public:
required_device<cpu_device> m_dsp;
required_device<ls259_device> m_mainlatch;
void tomcat(machine_config &config);
+ void dsp_map(address_map &map);
+ void sound_map(address_map &map);
+ void tomcat_map(address_map &map);
};
@@ -239,7 +242,7 @@ WRITE8_MEMBER(tomcat_state::tomcat_nvram_w)
m_nvram[offset] = data;
}
-static ADDRESS_MAP_START( tomcat_map, AS_PROGRAM, 16, tomcat_state )
+ADDRESS_MAP_START(tomcat_state::tomcat_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x402000, 0x402001) AM_READ(tomcat_adcread_r) AM_WRITE(tomcat_adcon_w)
AM_RANGE(0x404000, 0x404001) AM_READ(tomcat_inputs_r) AM_DEVWRITE("avg", avg_tomcat_device, go_word_w)
@@ -254,7 +257,7 @@ static ADDRESS_MAP_START( tomcat_map, AS_PROGRAM, 16, tomcat_state )
AM_RANGE(0xffd000, 0xffdfff) AM_READWRITE8(tomcat_nvram_r, tomcat_nvram_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp_map, AS_PROGRAM, 16, tomcat_state )
+ADDRESS_MAP_START(tomcat_state::dsp_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("shared_ram")
ADDRESS_MAP_END
@@ -273,7 +276,7 @@ WRITE8_MEMBER(tomcat_state::soundlatches_w)
}
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tomcat_state )
+ADDRESS_MAP_START(tomcat_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x3000, 0x30df) AM_WRITE(soundlatches_w)
diff --git a/src/mame/drivers/tonton.cpp b/src/mame/drivers/tonton.cpp
index fdcc0c93015..e7b2d7c9198 100644
--- a/src/mame/drivers/tonton.cpp
+++ b/src/mame/drivers/tonton.cpp
@@ -51,6 +51,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<ticket_dispenser_device> m_hopper;
void tonton(machine_config &config);
+ void tonton_io(address_map &map);
+ void tonton_map(address_map &map);
};
#define MAIN_CLOCK XTAL(21'477'272)
@@ -86,13 +88,13 @@ WRITE8_MEMBER(tonton_state::hopper_w)
* Memory Map *
*************************************************/
-static ADDRESS_MAP_START( tonton_map, AS_PROGRAM, 8, tonton_state )
+ADDRESS_MAP_START(tonton_state::tonton_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tonton_io, AS_IO, 8, tonton_state )
+ADDRESS_MAP_START(tonton_state::tonton_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x00, 0x00) AM_WRITE(tonton_outport_w)
diff --git a/src/mame/drivers/toobin.cpp b/src/mame/drivers/toobin.cpp
index 49a5610f86d..cf630d1d1db 100644
--- a/src/mame/drivers/toobin.cpp
+++ b/src/mame/drivers/toobin.cpp
@@ -81,7 +81,7 @@ WRITE16_MEMBER(toobin_state::interrupt_scan_w)
*************************************/
/* full address map decoded from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, toobin_state )
+ADDRESS_MAP_START(toobin_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0xc7ffff)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0xc00000, 0xc07fff) AM_RAM_DEVWRITE("playfield", tilemap_device, write16) AM_SHARE("playfield")
diff --git a/src/mame/drivers/topspeed.cpp b/src/mame/drivers/topspeed.cpp
index 7f7cccc9f0c..8fb71ca7edb 100644
--- a/src/mame/drivers/topspeed.cpp
+++ b/src/mame/drivers/topspeed.cpp
@@ -377,7 +377,7 @@ WRITE_LINE_MEMBER(topspeed_state::z80ctc_to0)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( cpua_map, AS_PROGRAM, 16, topspeed_state )
+ADDRESS_MAP_START(topspeed_state::cpua_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x500000, 0x503fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -399,7 +399,7 @@ static ADDRESS_MAP_START( cpua_map, AS_PROGRAM, 16, topspeed_state )
AM_RANGE(0xe00000, 0xe0ffff) AM_RAM AM_SHARE("spritemap")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpub_map, AS_PROGRAM, 16, topspeed_state )
+ADDRESS_MAP_START(topspeed_state::cpub_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x880000, 0x880001) AM_READ8(input_bypass_r, 0x00ff) AM_DEVWRITE8("tc0040ioc", tc0040ioc_device, portreg_w, 0x00ff)
@@ -410,7 +410,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( z80_prg, AS_PROGRAM, 8, topspeed_state )
+ADDRESS_MAP_START(topspeed_state::z80_prg)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("sndbank")
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -421,7 +421,7 @@ static ADDRESS_MAP_START( z80_prg, AS_PROGRAM, 8, topspeed_state )
AM_RANGE(0xd000, 0xdfff) AM_WRITE(volume_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_io, AS_IO, 8, topspeed_state )
+ADDRESS_MAP_START(topspeed_state::z80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/toratora.cpp b/src/mame/drivers/toratora.cpp
index 172ccde4233..e3665a0682c 100644
--- a/src/mame/drivers/toratora.cpp
+++ b/src/mame/drivers/toratora.cpp
@@ -94,6 +94,7 @@ public:
uint32_t screen_update_toratora(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(toratora_timer);
void toratora(machine_config &config);
+ void main_map(address_map &map);
};
@@ -315,7 +316,7 @@ WRITE_LINE_MEMBER(toratora_state::sn2_ca2_u2_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, toratora_state )
+ADDRESS_MAP_START(toratora_state::main_map)
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x7fff) AM_ROM /* not fully populated */
AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("videoram")
diff --git a/src/mame/drivers/tosh1000.cpp b/src/mame/drivers/tosh1000.cpp
index 59661bf00c4..0589cef9f1f 100644
--- a/src/mame/drivers/tosh1000.cpp
+++ b/src/mame/drivers/tosh1000.cpp
@@ -83,6 +83,9 @@ public:
static void cfg_fdc_35(device_t *device);
void tosh1000(machine_config &config);
+ void tosh1000_io(address_map &map);
+ void tosh1000_map(address_map &map);
+ void tosh1000_romdos(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<address_map_bank_device> m_bankdev;
@@ -213,7 +216,7 @@ READ8_MEMBER(tosh1000_state::bram_r)
}
-static ADDRESS_MAP_START( tosh1000_romdos, AS_PROGRAM, 8, tosh1000_state )
+ADDRESS_MAP_START(tosh1000_state::tosh1000_romdos)
AM_RANGE(0x00000, 0x0ffff) AM_ROM AM_REGION("romdos", 0)
AM_RANGE(0x10000, 0x1ffff) AM_ROM AM_REGION("romdos", 0x10000)
AM_RANGE(0x20000, 0x2ffff) AM_ROM AM_REGION("romdos", 0x20000)
@@ -224,13 +227,13 @@ static ADDRESS_MAP_START( tosh1000_romdos, AS_PROGRAM, 8, tosh1000_state )
AM_RANGE(0x70000, 0x7ffff) AM_ROM AM_REGION("romdos", 0x70000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tosh1000_map, AS_PROGRAM, 8, tosh1000_state )
+ADDRESS_MAP_START(tosh1000_state::tosh1000_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xa0000, 0xaffff) AM_DEVREADWRITE("bankdev", address_map_bank_device, read8, write8)
AM_RANGE(0xf8000, 0xfffff) AM_ROM AM_REGION("bios", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tosh1000_io, AS_IO, 8, tosh1000_state )
+ADDRESS_MAP_START(tosh1000_state::tosh1000_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x00ff) AM_DEVICE("mb", ibm5160_mb_device, map)
AM_RANGE(0x00c0, 0x00c3) AM_READWRITE(bram_r, bram_w)
diff --git a/src/mame/drivers/tourtabl.cpp b/src/mame/drivers/tourtabl.cpp
index 06a380dcd48..4963e8cb0df 100644
--- a/src/mame/drivers/tourtabl.cpp
+++ b/src/mame/drivers/tourtabl.cpp
@@ -31,6 +31,7 @@ public:
DECLARE_READ16_MEMBER(tourtabl_read_input_port);
DECLARE_READ8_MEMBER(tourtabl_get_databus_contents);
void tourtabl(machine_config &config);
+ void main_map(address_map &map);
};
@@ -61,7 +62,7 @@ READ8_MEMBER(tourtabl_state::tourtabl_get_databus_contents)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tourtabl_state )
+ADDRESS_MAP_START(tourtabl_state::main_map)
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0100) AM_DEVREADWRITE("tia_video", tia_video_device, read, write)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x0100) AM_RAM
AM_RANGE(0x0280, 0x029f) AM_DEVREADWRITE("riot1", riot6532_device, read, write)
diff --git a/src/mame/drivers/tourvis.cpp b/src/mame/drivers/tourvis.cpp
index c3c76dfadff..8cfdbe99efc 100644
--- a/src/mame/drivers/tourvis.cpp
+++ b/src/mame/drivers/tourvis.cpp
@@ -209,6 +209,9 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(tourvision_cart);
void tourvision(machine_config &config);
+ void pce_io(address_map &map);
+ void pce_mem(address_map &map);
+ void tourvision_8085_map(address_map &map);
private:
required_device<cpu_device> m_subcpu;
required_device<generic_slot_device> m_cart;
@@ -330,7 +333,7 @@ static INPUT_PORTS_START( tourvision )
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_SPECIAL ) // games slot status in bits 3 to 7
INPUT_PORTS_END
-static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, tourvision_state )
+ADDRESS_MAP_START(tourvision_state::pce_mem)
AM_RANGE( 0x000000, 0x0FFFFF) AM_ROM
AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000)
AM_RANGE( 0x1FE000, 0x1FE3FF) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
@@ -341,7 +344,7 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, tourvision_state )
AM_RANGE( 0x1FF400, 0x1FF7FF) AM_DEVREADWRITE("maincpu", h6280_device, irq_status_r, irq_status_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pce_io , AS_IO, 8, tourvision_state )
+ADDRESS_MAP_START(tourvision_state::pce_io)
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
ADDRESS_MAP_END
@@ -350,7 +353,7 @@ WRITE8_MEMBER(tourvision_state::tourvision_8085_d000_w)
//logerror( "D000 (8085) write %02x\n", data );
}
-static ADDRESS_MAP_START(tourvision_8085_map, AS_PROGRAM, 8, tourvision_state )
+ADDRESS_MAP_START(tourvision_state::tourvision_8085_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x80ff) AM_DEVREADWRITE("i8155", i8155_device, memory_r, memory_w)
AM_RANGE(0x8100, 0x8107) AM_DEVREADWRITE("i8155", i8155_device, io_r, io_w)
diff --git a/src/mame/drivers/toypop.cpp b/src/mame/drivers/toypop.cpp
index 617462c0b40..d5f51d0da8c 100644
--- a/src/mame/drivers/toypop.cpp
+++ b/src/mame/drivers/toypop.cpp
@@ -103,6 +103,11 @@ public:
DECLARE_WRITE8_MEMBER(bg_rmw_w);
void toypop(machine_config &config);
void liblrabl(machine_config &config);
+ void master_liblrabl_map(address_map &map);
+ void master_toypop_map(address_map &map);
+ void namcos16_master_base_map(address_map &map);
+ void slave_map(address_map &map);
+ void sound_map(address_map &map);
protected:
// driver_device overrides
// virtual void machine_start() override;
@@ -350,7 +355,7 @@ WRITE8_MEMBER(namcos16_state::pal_bank_w)
m_pal_bank = offset & 1;
}
-static ADDRESS_MAP_START( namcos16_master_base_map, AS_PROGRAM, 8, namcos16_state )
+ADDRESS_MAP_START(namcos16_state::namcos16_master_base_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("fgvram")
AM_RANGE(0x0400, 0x07ff) AM_RAM AM_SHARE("fgattr")
AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("master_workram")
@@ -364,7 +369,7 @@ static ADDRESS_MAP_START( namcos16_master_base_map, AS_PROGRAM, 8, namcos16_stat
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("master_rom",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_liblrabl_map, AS_PROGRAM, 8, namcos16_state )
+ADDRESS_MAP_START(namcos16_state::master_liblrabl_map)
AM_IMPORT_FROM( namcos16_master_base_map )
AM_RANGE(0x6000, 0x63ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w)
AM_RANGE(0x6800, 0x680f) AM_DEVREADWRITE("58xx", namco58xx_device, read, write)
@@ -373,7 +378,7 @@ static ADDRESS_MAP_START( master_liblrabl_map, AS_PROGRAM, 8, namcos16_state )
AM_RANGE(0x7000, 0x7fff) AM_READNOP AM_WRITE(irq_ctrl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( master_toypop_map, AS_PROGRAM, 8, namcos16_state )
+ADDRESS_MAP_START(namcos16_state::master_toypop_map)
AM_IMPORT_FROM( namcos16_master_base_map )
AM_RANGE(0x6000, 0x600f) AM_DEVREADWRITE("58xx", namco58xx_device, read, write)
AM_RANGE(0x6010, 0x601f) AM_DEVREADWRITE("56xx_1", namco56xx_device, read, write)
@@ -382,7 +387,7 @@ static ADDRESS_MAP_START( master_toypop_map, AS_PROGRAM, 8, namcos16_state )
AM_RANGE(0x7000, 0x7000) AM_READWRITE(irq_enable_r,irq_disable_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, namcos16_state )
+ADDRESS_MAP_START(namcos16_state::slave_map)
AM_RANGE(0x000000, 0x007fff) AM_ROM AM_REGION("slave_rom", 0)
AM_RANGE(0x080000, 0x0bffff) AM_RAM
AM_RANGE(0x100000, 0x100fff) AM_READWRITE8(slave_shared_r,slave_shared_w,0x00ff)
@@ -391,7 +396,7 @@ static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, namcos16_state )
AM_RANGE(0x300000, 0x3fffff) AM_WRITE(slave_irq_enable_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, namcos16_state )
+ADDRESS_MAP_START(namcos16_state::sound_map)
AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w)
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("sound_rom", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tp84.cpp b/src/mame/drivers/tp84.cpp
index fda15d1999b..208fea67525 100644
--- a/src/mame/drivers/tp84.cpp
+++ b/src/mame/drivers/tp84.cpp
@@ -170,7 +170,7 @@ WRITE8_MEMBER(tp84_state::tp84_sh_irqtrigger_w)
-static ADDRESS_MAP_START( tp84_cpu1_map, AS_PROGRAM, 8, tp84_state )
+ADDRESS_MAP_START(tp84_state::tp84_cpu1_map)
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x2800, 0x2800) AM_READ_PORT("SYSTEM") AM_WRITEONLY AM_SHARE("palette_bank")
AM_RANGE(0x2820, 0x2820) AM_READ_PORT("P1")
@@ -190,7 +190,7 @@ static ADDRESS_MAP_START( tp84_cpu1_map, AS_PROGRAM, 8, tp84_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tp84b_cpu1_map, AS_PROGRAM, 8, tp84_state )
+ADDRESS_MAP_START(tp84_state::tp84b_cpu1_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("bg_videoram")
AM_RANGE(0x0400, 0x07ff) AM_RAM AM_SHARE("fg_videoram")
AM_RANGE(0x0800, 0x0bff) AM_RAM AM_SHARE("bg_colorram")
@@ -217,7 +217,7 @@ WRITE8_MEMBER(tp84_state::sub_irq_mask_w)
}
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, tp84_state )
+ADDRESS_MAP_START(tp84_state::cpu2_map)
// AM_RANGE(0x0000, 0x0000) AM_RAM /* Watch dog ?*/
AM_RANGE(0x2000, 0x2000) AM_READ(tp84_scanline_r) /* beam position */
AM_RANGE(0x4000, 0x4000) AM_WRITE(sub_irq_mask_w)
@@ -228,7 +228,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, tp84_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, tp84_state )
+ADDRESS_MAP_START(tp84_state::audio_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/tr175.cpp b/src/mame/drivers/tr175.cpp
index adb67f9af28..30ea1046592 100644
--- a/src/mame/drivers/tr175.cpp
+++ b/src/mame/drivers/tr175.cpp
@@ -27,6 +27,9 @@ public:
SCN2674_DRAW_CHARACTER_MEMBER(draw_character);
void tr175(machine_config &config);
+ void mem_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void vram_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
@@ -46,7 +49,7 @@ READ8_MEMBER(tr175_state::fff400_r)
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, tr175_state )
+ADDRESS_MAP_START(tr175_state::mem_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xfe8000, 0xfebfff) AM_RAM // 8-bit?
AM_RANGE(0xfefe00, 0xfefedd) AM_WRITENOP // 8-bit; cleared at startup
@@ -67,11 +70,11 @@ SCN2674_DRAW_CHARACTER_MEMBER(tr175_state::draw_character)
{
}
-static ADDRESS_MAP_START( vram_map, 0, 8, tr175_state )
+ADDRESS_MAP_START(tr175_state::vram_map)
AM_RANGE(0x0000, 0x3fff) AM_READNOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, tr175_state )
+ADDRESS_MAP_START(tr175_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/trackfld.cpp b/src/mame/drivers/trackfld.cpp
index abd624ed3b3..771c8c8b8bf 100644
--- a/src/mame/drivers/trackfld.cpp
+++ b/src/mame/drivers/trackfld.cpp
@@ -235,7 +235,7 @@ WRITE_LINE_MEMBER(trackfld_state::irq_mask_w)
m_maincpu->set_input_line(0, CLEAR_LINE);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::main_map)
AM_RANGE(0x1000, 0x1000) AM_MIRROR(0x007f) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w) /* AFE */
AM_RANGE(0x1080, 0x1087) AM_MIRROR(0x0078) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
AM_RANGE(0x1100, 0x1100) AM_MIRROR(0x007f) AM_DEVWRITE("soundlatch", generic_latch_8_device, write) /* 32 */
@@ -280,7 +280,7 @@ WRITE8_MEMBER(trackfld_state::trackfld_VLM5030_control_w)
}
-static ADDRESS_MAP_START( yieartf_map, AS_PROGRAM, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::yieartf_map)
AM_RANGE(0x0000, 0x0000) AM_READ(trackfld_speech_r) AM_WRITE(konami_SN76496_latch_w)
AM_RANGE(0x0001, 0x0001) AM_WRITE(konami_SN76496_w)
AM_RANGE(0x0002, 0x0002) AM_WRITE(trackfld_VLM5030_control_w)
@@ -306,7 +306,7 @@ static ADDRESS_MAP_START( yieartf_map, AS_PROGRAM, 8, trackfld_state )
AM_RANGE(0x6000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( reaktor_map, AS_PROGRAM, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::reaktor_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
/* all usual addresses +0x8000 */
AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
@@ -330,7 +330,7 @@ static ADDRESS_MAP_START( reaktor_map, AS_PROGRAM, 8, trackfld_state )
ADDRESS_MAP_END
/* Reaktor reads / writes some I/O ports, no idea what they're connected to, if anything */
-static ADDRESS_MAP_START( reaktor_io_map, AS_IO, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::reaktor_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP
AM_RANGE(0x01, 0x01) AM_NOP
@@ -338,7 +338,7 @@ static ADDRESS_MAP_START( reaktor_io_map, AS_IO, 8, trackfld_state )
AM_RANGE(0x03, 0x03) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mastkin_map, AS_PROGRAM, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::mastkin_map)
AM_RANGE(0x1000, 0x1000) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
AM_RANGE(0x10b0, 0x10b7) AM_READNOP AM_DEVWRITE("mainlatch", ls259_device, write_d0)
AM_RANGE(0x1100, 0x1100) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
@@ -361,7 +361,7 @@ static ADDRESS_MAP_START( mastkin_map, AS_PROGRAM, 8, trackfld_state )
AM_RANGE(0x6000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wizzquiz_map, AS_PROGRAM, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::wizzquiz_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE("watchdog", watchdog_timer_device, reset_r, reset_w)
AM_RANGE(0x1080, 0x1087) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
@@ -393,7 +393,7 @@ READ8_MEMBER(trackfld_state::trackfld_SN76496_r)
return 0xff; // ?
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -407,7 +407,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, trackfld_state )
AM_RANGE(0xe004, 0xe004) AM_MIRROR(0x1ff8) AM_DEVWRITE("vlm", vlm5030_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hyprolyb_sound_map, AS_PROGRAM, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::hyprolyb_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -421,7 +421,7 @@ static ADDRESS_MAP_START( hyprolyb_sound_map, AS_PROGRAM, 8, trackfld_state )
AM_RANGE(0xe004, 0xe004) AM_MIRROR(0x1ff8) AM_DEVWRITE("hyprolyb_adpcm", hyprolyb_adpcm_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vlm_map, 0, 8, trackfld_state )
+ADDRESS_MAP_START(trackfld_state::vlm_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
@@ -1029,7 +1029,7 @@ MACHINE_CONFIG_START(trackfld_state::yieartf)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( hyprolyb_adpcm_map, AS_PROGRAM, 8, hyprolyb_adpcm_device )
+ADDRESS_MAP_START(trackfld_state::hyprolyb_adpcm_map)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_DEVREAD("hyprolyb_adpcm", hyprolyb_adpcm_device, data_r)
AM_RANGE(0x1001, 0x1001) AM_DEVREAD("hyprolyb_adpcm", hyprolyb_adpcm_device, ready_r)
diff --git a/src/mame/drivers/tranz330.cpp b/src/mame/drivers/tranz330.cpp
index d05a806ee9c..c7f06e182f8 100644
--- a/src/mame/drivers/tranz330.cpp
+++ b/src/mame/drivers/tranz330.cpp
@@ -28,23 +28,19 @@
#include "tranz330.lh"
-static void construct_address_map_tranz330_mem(address_map &map)
+void tranz330_state::tranz330_mem(address_map &map)
{
- map.configure(AS_PROGRAM, 8);
-
map(0x0000, 0x7fff).rom();
map(0x8000, 0xffff).ram();
}
-static void construct_address_map_tranz330_io(address_map &map)
+void tranz330_state::tranz330_io(address_map &map)
{
- map.configure(AS_IO, 8);
map.global_mask(0xff);
-
- map(0x00, 0x03).rw(PIO_TAG, FUNC(z80pio_device::read_alt), FUNC(z80pio_device::write_alt));
- map(0x10, 0x13).rw(CTC_TAG, FUNC(z80ctc_device::read), FUNC(z80ctc_device::write));
- map(0x20, 0x23).rw(DART_TAG, FUNC(z80dart_device::ba_cd_r), FUNC(z80dart_device::ba_cd_w));
- map(0x30, 0x3f).rw(RTC_TAG, FUNC(msm6242_device::read), FUNC(msm6242_device::write));
+ map(0x00, 0x03).rw(m_pio, FUNC(z80pio_device::read_alt), FUNC(z80pio_device::write_alt));
+ map(0x10, 0x13).rw(m_ctc, FUNC(z80ctc_device::read), FUNC(z80ctc_device::write));
+ map(0x20, 0x23).rw(m_dart, FUNC(z80dart_device::ba_cd_r), FUNC(z80dart_device::ba_cd_w));
+ map(0x30, 0x3f).rw(m_rtc, FUNC(msm6242_device::read), FUNC(msm6242_device::write));
}
static void construct_ioport_tranz330(device_t &owner, ioport_list &portlist, std::string &errorbuf)
diff --git a/src/mame/drivers/travrusa.cpp b/src/mame/drivers/travrusa.cpp
index 7411a30540f..1e03cff2cb3 100644
--- a/src/mame/drivers/travrusa.cpp
+++ b/src/mame/drivers/travrusa.cpp
@@ -58,7 +58,7 @@ and 2764 eprom (swapped D3/D4 and D5/D6 data lines)
#include "screen.h"
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, travrusa_state )
+ADDRESS_MAP_START(travrusa_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(travrusa_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x9000, 0x9000) AM_WRITE(travrusa_scroll_x_low_w)
diff --git a/src/mame/drivers/tricep.cpp b/src/mame/drivers/tricep.cpp
index 38fca039d05..183e92d4a4e 100644
--- a/src/mame/drivers/tricep.cpp
+++ b/src/mame/drivers/tricep.cpp
@@ -30,6 +30,7 @@ public:
void kbd_put(u8 data);
void tricep(machine_config &config);
+ void tricep_mem(address_map &map);
protected:
virtual void machine_reset() override;
@@ -50,7 +51,7 @@ WRITE16_MEMBER( tricep_state::tricep_terminal_w )
m_terminal->write(space, 0, data >> 8);
}
-static ADDRESS_MAP_START(tricep_mem, AS_PROGRAM, 16, tricep_state)
+ADDRESS_MAP_START(tricep_state::tricep_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_SHARE("p_ram")
AM_RANGE(0x00fd0000, 0x00fd1fff) AM_ROM AM_REGION("user1",0)
diff --git a/src/mame/drivers/triforce.cpp b/src/mame/drivers/triforce.cpp
index 5579cf438e2..b01ebef3cb8 100644
--- a/src/mame/drivers/triforce.cpp
+++ b/src/mame/drivers/triforce.cpp
@@ -463,6 +463,7 @@ public:
required_device<ppc_device> m_maincpu;
void triforcegd(machine_config &config);
void triforce_base(machine_config &config);
+ void gc_map(address_map &map);
};
READ64_MEMBER(triforce_state::gc_pi_r)
@@ -483,7 +484,7 @@ WRITE64_MEMBER(triforce_state::gc_exi_w)
{
}
-static ADDRESS_MAP_START( gc_map, AS_PROGRAM, 64, triforce_state )
+ADDRESS_MAP_START(triforce_state::gc_map)
AM_RANGE(0x00000000, 0x017fffff) AM_RAM
AM_RANGE(0x0c003000, 0x0c003fff) AM_READWRITE(gc_pi_r, gc_pi_w)
AM_RANGE(0x0c006800, 0x0c0068ff) AM_READWRITE(gc_exi_r, gc_exi_w)
diff --git a/src/mame/drivers/triplhnt.cpp b/src/mame/drivers/triplhnt.cpp
index 26b5c122f3f..ac40901a816 100644
--- a/src/mame/drivers/triplhnt.cpp
+++ b/src/mame/drivers/triplhnt.cpp
@@ -114,7 +114,7 @@ READ8_MEMBER(triplhnt_state::da_latch_r)
}
-static ADDRESS_MAP_START( triplhnt_map, AS_PROGRAM, 8, triplhnt_state )
+ADDRESS_MAP_START(triplhnt_state::triplhnt_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x300)
AM_RANGE(0x0400, 0x04ff) AM_WRITEONLY AM_SHARE("playfield_ram")
diff --git a/src/mame/drivers/trs80.cpp b/src/mame/drivers/trs80.cpp
index a490597f53d..51d5f93c7a8 100644
--- a/src/mame/drivers/trs80.cpp
+++ b/src/mame/drivers/trs80.cpp
@@ -145,20 +145,20 @@ There don't seem to be any JV1 boot disks for Model III/4.
#include "formats/dmk_dsk.h"
-static ADDRESS_MAP_START( trs80_map, AS_PROGRAM, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::trs80_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x3800, 0x38ff) AM_READ(trs80_keyboard_r)
AM_RANGE(0x3c00, 0x3fff) AM_READWRITE(trs80_videoram_r, trs80_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4000, 0x7fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( trs80_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::trs80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xff, 0xff) AM_READWRITE(trs80_ff_r, trs80_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model1_map, AS_PROGRAM, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::model1_map)
AM_RANGE(0x0000, 0x377f) AM_ROM // sys80,ht1080 needs up to 375F
AM_RANGE(0x37de, 0x37de) AM_READWRITE(sys80_f9_r, sys80_f8_w)
AM_RANGE(0x37df, 0x37df) AM_READWRITE(trs80m4_eb_r, trs80m4_eb_w)
@@ -175,13 +175,13 @@ static ADDRESS_MAP_START( model1_map, AS_PROGRAM, 8, trs80_state )
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model1_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::model1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xff, 0xff) AM_READWRITE(trs80_ff_r, trs80_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sys80_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::sys80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xf8, 0xf8) AM_READWRITE(trs80m4_eb_r, sys80_f8_w)
@@ -191,11 +191,11 @@ static ADDRESS_MAP_START( sys80_io, AS_IO, 8, trs80_state )
AM_RANGE(0xff, 0xff) AM_READWRITE(trs80_ff_r, trs80_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lnw80_map, AS_PROGRAM, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::lnw80_map)
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( lnw80_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::lnw80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xe8, 0xe8) AM_READWRITE(trs80m4_e8_r, trs80m4_e8_w)
@@ -206,10 +206,10 @@ static ADDRESS_MAP_START( lnw80_io, AS_IO, 8, trs80_state )
AM_RANGE(0xff, 0xff) AM_READWRITE(trs80_ff_r, trs80_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model3_map, AS_PROGRAM, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::model3_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model3_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::model3_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xe0, 0xe3) AM_READWRITE(trs80m4_e0_r, trs80m4_e0_w)
@@ -229,7 +229,7 @@ static ADDRESS_MAP_START( model3_io, AS_IO, 8, trs80_state )
AM_RANGE(0xfc, 0xff) AM_READWRITE(trs80m4_ff_r, trs80m4_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model4_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::model4_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x84, 0x87) AM_WRITE(trs80m4_84_w)
@@ -252,7 +252,7 @@ static ADDRESS_MAP_START( model4_io, AS_IO, 8, trs80_state )
AM_RANGE(0xfc, 0xff) AM_READWRITE(trs80m4_ff_r, trs80m4_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( model4p_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::model4p_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x84, 0x87) AM_WRITE(trs80m4_84_w)
@@ -276,14 +276,14 @@ static ADDRESS_MAP_START( model4p_io, AS_IO, 8, trs80_state )
AM_RANGE(0xfc, 0xff) AM_READWRITE(trs80m4_ff_r, trs80m4_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meritum_map, AS_PROGRAM, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::meritum_map)
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0x3800, 0x38ff) AM_MIRROR(0x300) AM_READ(trs80_keyboard_r)
AM_RANGE(0x3c00, 0x3fff) AM_READWRITE(trs80_videoram_r, trs80_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( meritum_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::meritum_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
// There are specific writes to ports 03, F3, F7, F8, FA, FB, FD
@@ -302,7 +302,7 @@ static ADDRESS_MAP_START( meritum_io, AS_IO, 8, trs80_state )
AM_RANGE(0xff, 0xff) AM_READWRITE(trs80_ff_r, trs80_ff_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cp500_io, AS_IO, 8, trs80_state )
+ADDRESS_MAP_START(trs80_state::cp500_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0xe0, 0xe3) AM_READWRITE(trs80m4_e0_r, trs80m4_e0_w)
diff --git a/src/mame/drivers/trs80dt1.cpp b/src/mame/drivers/trs80dt1.cpp
index 36c49f15310..7131a4a7351 100644
--- a/src/mame/drivers/trs80dt1.cpp
+++ b/src/mame/drivers/trs80dt1.cpp
@@ -62,6 +62,9 @@ public:
I8275_DRAW_CHARACTER_MEMBER(crtc_update_row);
void trs80dt1(machine_config &config);
+ void data_map(address_map &map);
+ void io_map(address_map &map);
+ void prg_map(address_map &map);
private:
bool m_bow;
virtual void machine_reset() override;
@@ -141,15 +144,15 @@ WRITE8_MEMBER( trs80dt1_state::port3_w )
m_beep->set_state(BIT(data, 4));
}
-static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, trs80dt1_state )
+ADDRESS_MAP_START(trs80dt1_state::prg_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x2000, 0x27ff) AM_READ(dma_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_map, AS_DATA, 8, trs80dt1_state )
+ADDRESS_MAP_START(trs80dt1_state::data_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, trs80dt1_state )
+ADDRESS_MAP_START(trs80dt1_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xbfff) // A14 not used
AM_RANGE(0x0001, 0x0001) AM_WRITE(port1_w)
AM_RANGE(0x0003, 0x0003) AM_WRITE(port3_w)
diff --git a/src/mame/drivers/trs80m2.cpp b/src/mame/drivers/trs80m2.cpp
index 4807732d9d9..2d103a844fa 100644
--- a/src/mame/drivers/trs80m2.cpp
+++ b/src/mame/drivers/trs80m2.cpp
@@ -319,7 +319,7 @@ WRITE8_MEMBER( trs80m16_state::ual_w )
// ADDRESS_MAP( z80_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( z80_mem, AS_PROGRAM, 8, trs80m2_state )
+ADDRESS_MAP_START(trs80m2_state::z80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -328,7 +328,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( z80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( z80_io, AS_IO, 8, trs80m2_state )
+ADDRESS_MAP_START(trs80m2_state::z80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xe0, 0xe3) AM_DEVREADWRITE(Z80PIO_TAG, z80pio_device, read, write)
AM_RANGE(0xe4, 0xe7) AM_READWRITE(fdc_r, fdc_w)
@@ -348,7 +348,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( m16_z80_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( m16_z80_io, AS_IO, 8, trs80m16_state )
+ADDRESS_MAP_START(trs80m16_state::m16_z80_io)
AM_IMPORT_FROM(z80_io)
AM_RANGE(0xde, 0xde) AM_WRITE(tcl_w)
AM_RANGE(0xdf, 0xdf) AM_WRITE(ual_w)
@@ -359,7 +359,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( m68000_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( m68000_mem, AS_PROGRAM, 16, trs80m2_state )
+ADDRESS_MAP_START(trs80m2_state::m68000_mem)
// AM_RANGE(0x7800d0, 0x7800d1) 9519A (C/D = UDS)
// AM_RANGE(0x7800d2, 0x7800d3) limit/offset 2
// AM_RANGE(0x7800d4, 0x7800d5) limit/offset 1
diff --git a/src/mame/drivers/truco.cpp b/src/mame/drivers/truco.cpp
index 8e3df82e2ff..be5bc6f72c3 100644
--- a/src/mame/drivers/truco.cpp
+++ b/src/mame/drivers/truco.cpp
@@ -261,7 +261,7 @@ WRITE_LINE_MEMBER(truco_state::pia_irqb_w)
* Memory Map *
*******************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, truco_state )
+ADDRESS_MAP_START(truco_state::main_map)
AM_RANGE(0x0000, 0x17ff) AM_RAM /* General purpose RAM */
AM_RANGE(0x1800, 0x7bff) AM_RAM AM_SHARE("videoram") /* Video RAM */
AM_RANGE(0x7c00, 0x7fff) AM_RAM AM_SHARE("battery_ram") /* Battery backed RAM */
diff --git a/src/mame/drivers/trucocl.cpp b/src/mame/drivers/trucocl.cpp
index 079130f6dd8..4b233a0690f 100644
--- a/src/mame/drivers/trucocl.cpp
+++ b/src/mame/drivers/trucocl.cpp
@@ -92,7 +92,7 @@ WRITE8_MEMBER(trucocl_state::audio_dac_w)
m_dac_irq_timer->adjust(attotime::from_hz( 16000 ));
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, trucocl_state )
+ADDRESS_MAP_START(trucocl_state::main_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(trucocl_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(trucocl_colorram_w) AM_SHARE("colorram")
diff --git a/src/mame/drivers/trvmadns.cpp b/src/mame/drivers/trvmadns.cpp
index 1643ce25226..59f3e0398f3 100644
--- a/src/mame/drivers/trvmadns.cpp
+++ b/src/mame/drivers/trvmadns.cpp
@@ -125,6 +125,8 @@ public:
required_device<palette_device> m_palette;
required_shared_ptr<uint8_t> m_generic_paletteram_8;
void trvmadns(machine_config &config);
+ void cpu_map(address_map &map);
+ void io_map(address_map &map);
};
@@ -254,7 +256,7 @@ WRITE8_MEMBER(trvmadns_state::trvmadns_tileram_w)
}
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, trvmadns_state )
+ADDRESS_MAP_START(trvmadns_state::cpu_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_ROMBANK("bank1")
AM_RANGE(0x7000, 0x7fff) AM_ROMBANK("bank2")
@@ -266,7 +268,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, trvmadns_state )
AM_RANGE(0xe004, 0xe004) AM_WRITE(w3)//NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, trvmadns_state )
+ADDRESS_MAP_START(trvmadns_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0")
diff --git a/src/mame/drivers/trvquest.cpp b/src/mame/drivers/trvquest.cpp
index 7dd97c901ff..10df30fb293 100644
--- a/src/mame/drivers/trvquest.cpp
+++ b/src/mame/drivers/trvquest.cpp
@@ -61,7 +61,7 @@ WRITE_LINE_MEMBER(gameplan_state::trvquest_misc_w)
// data & 1 -> led on/off ?
}
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, gameplan_state )
+ADDRESS_MAP_START(gameplan_state::cpu_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") // cmos ram
AM_RANGE(0x2000, 0x27ff) AM_RAM // main ram
AM_RANGE(0x3800, 0x380f) AM_DEVREADWRITE("via6522_1", via6522_device, read, write)
diff --git a/src/mame/drivers/tryout.cpp b/src/mame/drivers/tryout.cpp
index 30775b52694..74e5ffbe42e 100644
--- a/src/mame/drivers/tryout.cpp
+++ b/src/mame/drivers/tryout.cpp
@@ -56,7 +56,7 @@ WRITE8_MEMBER(tryout_state::bankswitch_w)
membank("bank1")->set_entry(data & 0x01);
}
-static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, tryout_state )
+ADDRESS_MAP_START(tryout_state::main_cpu)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1")
@@ -77,7 +77,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, tryout_state )
AM_RANGE(0xfff0, 0xffff) AM_ROM AM_REGION("maincpu", 0xbff0) /* reset vectors */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, tryout_state )
+ADDRESS_MAP_START(tryout_state::sound_cpu)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2203_device, read, write)
AM_RANGE(0xa000, 0xa000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/ts3000.cpp b/src/mame/drivers/ts3000.cpp
index 79d65248f16..399f375844e 100644
--- a/src/mame/drivers/ts3000.cpp
+++ b/src/mame/drivers/ts3000.cpp
@@ -22,16 +22,18 @@ public:
{ }
void ts3000(machine_config &config);
+void io_map(address_map &map);
+void mem_map(address_map &map);
private:
// required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, ts3000_state )
+ADDRESS_MAP_START(ts3000_state::mem_map)
AM_RANGE(0x00000,0x0ffff) AM_RAM
AM_RANGE(0xfc000,0xfffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, ts3000_state )
+ADDRESS_MAP_START(ts3000_state::io_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( ts3000 )
diff --git a/src/mame/drivers/ts802.cpp b/src/mame/drivers/ts802.cpp
index 86e4bf34fa6..16f082f598e 100644
--- a/src/mame/drivers/ts802.cpp
+++ b/src/mame/drivers/ts802.cpp
@@ -55,6 +55,8 @@ public:
DECLARE_WRITE8_MEMBER(io_write_byte);
void kbd_put(u8 data);
void ts802(machine_config &config);
+ void ts802_io(address_map &map);
+ void ts802_mem(address_map &map);
private:
uint8_t m_term_data;
address_space *m_mem;
@@ -63,13 +65,13 @@ private:
required_device<generic_terminal_device> m_terminal;
};
-static ADDRESS_MAP_START(ts802_mem, AS_PROGRAM, 8, ts802_state)
+ADDRESS_MAP_START(ts802_state::ts802_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x1000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ts802_io, AS_IO, 8, ts802_state)
+ADDRESS_MAP_START(ts802_state::ts802_io)
//ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_READ(port00_r) // DIP switches
diff --git a/src/mame/drivers/ts803.cpp b/src/mame/drivers/ts803.cpp
index 47ff477724e..5c6b936bdb0 100644
--- a/src/mame/drivers/ts803.cpp
+++ b/src/mame/drivers/ts803.cpp
@@ -85,6 +85,8 @@ public:
uint32_t screen_update_ts803(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ts803(machine_config &config);
+ void ts803_io(address_map &map);
+ void ts803_mem(address_map &map);
private:
std::unique_ptr<uint8_t[]> m_videoram;
std::unique_ptr<uint8_t[]> m_56kram;
@@ -100,7 +102,7 @@ private:
required_ioport m_io_dsw;
};
-static ADDRESS_MAP_START(ts803_mem, AS_PROGRAM, 8, ts803_state)
+ADDRESS_MAP_START(ts803_state::ts803_mem)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x4000, 0xbfff) AM_RAMBANK("bank4")
AM_RANGE(0xc000, 0xffff) AM_RAM
@@ -129,7 +131,7 @@ Winchester Disk Controller B0-BF (WDC CE)
Graphics Controller C0-CF (GIO SEL)
*/
-static ADDRESS_MAP_START(ts803_io, AS_IO, 8, ts803_state)
+ADDRESS_MAP_START(ts803_state::ts803_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x0f) AM_READ_PORT("DSW")
diff --git a/src/mame/drivers/ts816.cpp b/src/mame/drivers/ts816.cpp
index bdd2cad334f..4de66497282 100644
--- a/src/mame/drivers/ts816.cpp
+++ b/src/mame/drivers/ts816.cpp
@@ -45,6 +45,8 @@ public:
DECLARE_DRIVER_INIT(ts816);
void ts816(machine_config &config);
+ void ts816_io(address_map &map);
+ void ts816_mem(address_map &map);
private:
uint8_t m_term_data;
uint8_t m_status;
@@ -56,14 +58,14 @@ private:
required_device<generic_terminal_device> m_terminal;
};
-static ADDRESS_MAP_START(ts816_mem, AS_PROGRAM, 8, ts816_state)
+ADDRESS_MAP_START(ts816_state::ts816_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff ) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE(0x4000, 0xdfff ) AM_RAMBANK("bank1")
AM_RANGE(0xe000, 0xffff ) AM_RAMBANK("bank2")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ts816_io, AS_IO, 8, ts816_state)
+ADDRESS_MAP_START(ts816_state::ts816_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) // Tape status byte 1
AM_RANGE(0x01, 0x01) // Tape status byte 2 and diagnostics mode
diff --git a/src/mame/drivers/tsamurai.cpp b/src/mame/drivers/tsamurai.cpp
index 82f828d9c0f..21bbdc4154b 100644
--- a/src/mame/drivers/tsamurai.cpp
+++ b/src/mame/drivers/tsamurai.cpp
@@ -143,7 +143,7 @@ WRITE_LINE_MEMBER(tsamurai_state::coin2_counter_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -173,7 +173,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0xfc00, 0xfc07) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( m660_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::m660_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
@@ -204,19 +204,19 @@ static ADDRESS_MAP_START( m660_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0xfc00, 0xfc07) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_io_map, AS_IO, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::z80_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_m660_io_map, AS_IO, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::z80_m660_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITENOP /* ? */
AM_RANGE(0x01, 0x01) AM_WRITENOP /* Written continuously. Increments with level. */
AM_RANGE(0x02, 0x02) AM_WRITENOP /* Always follows above with 0x01 data */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vsgongf_audio_io_map, AS_IO, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::vsgongf_audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
ADDRESS_MAP_END
@@ -237,7 +237,7 @@ READ8_MEMBER(tsamurai_state::m660_sound_command3_r)
}
/*******************************************************************************/
-static ADDRESS_MAP_START( sound1_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::sound1_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x6000) AM_READ(sound_command1_r)
AM_RANGE(0x6001, 0x6001) AM_WRITENOP /* ? - probably clear IRQ */
@@ -247,7 +247,7 @@ ADDRESS_MAP_END
/*******************************************************************************/
-static ADDRESS_MAP_START( sound2_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::sound2_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x6000) AM_READ(sound_command2_r)
AM_RANGE(0x6001, 0x6001) AM_WRITENOP /* ? - probably clear IRQ */
@@ -257,7 +257,7 @@ ADDRESS_MAP_END
/*******************************************************************************/
-static ADDRESS_MAP_START( sound1_m660_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::sound1_m660_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ(sound_command1_r)
AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */
@@ -267,7 +267,7 @@ ADDRESS_MAP_END
/*******************************************************************************/
-static ADDRESS_MAP_START( sound2_m660_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::sound2_m660_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ(sound_command2_r)
AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */
@@ -277,7 +277,7 @@ ADDRESS_MAP_END
/*******************************************************************************/
-static ADDRESS_MAP_START( sound3_m660_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::sound3_m660_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ(m660_sound_command3_r)
AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */
@@ -285,7 +285,7 @@ static ADDRESS_MAP_START( sound3_m660_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0xfffc, 0xffff) AM_RAM /* CPU writes here - music data */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound3_m660_io_map, AS_IO, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::sound3_m660_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
ADDRESS_MAP_END
@@ -332,7 +332,7 @@ WRITE8_MEMBER(tsamurai_state::vsgongf_sound_command_w)
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( vsgongf_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::vsgongf_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa003, 0xa003) AM_READONLY
AM_RANGE(0xa006, 0xa006) AM_READ(vsgongf_a006_r) /* protection */
@@ -356,7 +356,7 @@ static ADDRESS_MAP_START( vsgongf_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0xfc00, 0xfc07) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_vsgongf_map, AS_PROGRAM, 8, tsamurai_state )
+ADDRESS_MAP_START(tsamurai_state::sound_vsgongf_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM /* work RAM */
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(vsgongf_sound_nmi_enable_w) /* NMI enable */
diff --git a/src/mame/drivers/tsispch.cpp b/src/mame/drivers/tsispch.cpp
index d4e54bce8b8..31a429454ea 100644
--- a/src/mame/drivers/tsispch.cpp
+++ b/src/mame/drivers/tsispch.cpp
@@ -311,7 +311,7 @@ DRIVER_INIT_MEMBER(tsispch_state,prose2k)
1 1 0 * * * * * * * * * * * * * * * * s ROMs 2 and 3
1 1 1 * * * * * * * * * * * * * * * * s ROMs 0 and 1
*/
-static ADDRESS_MAP_START(i8086_mem, AS_PROGRAM, 16, tsispch_state)
+ADDRESS_MAP_START(tsispch_state::i8086_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x02FFF) AM_MIRROR(0x34000) AM_RAM // verified; 6264*2 sram, only first 3/4 used
AM_RANGE(0x03000, 0x03001) AM_MIRROR(0x341FC) AM_DEVREADWRITE8("i8251a_u15", i8251_device, data_r, data_w, 0x00FF)
@@ -325,15 +325,15 @@ static ADDRESS_MAP_START(i8086_mem, AS_PROGRAM, 16, tsispch_state)
ADDRESS_MAP_END
// Technically the IO line of the i8086 is completely ignored (it is running in 8086 MIN mode,I believe, which may ignore IO)
-static ADDRESS_MAP_START(i8086_io, AS_IO, 16, tsispch_state)
+ADDRESS_MAP_START(tsispch_state::i8086_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dsp_prg_map, AS_PROGRAM, 32, tsispch_state)
+ADDRESS_MAP_START(tsispch_state::dsp_prg_map)
AM_RANGE(0x0000, 0x01ff) AM_ROM AM_REGION("dspprg", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(dsp_data_map, AS_DATA, 16, tsispch_state)
+ADDRESS_MAP_START(tsispch_state::dsp_data_map)
AM_RANGE(0x0000, 0x01ff) AM_ROM AM_REGION("dspdata", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ttchamp.cpp b/src/mame/drivers/ttchamp.cpp
index 625f912fc64..7835218f4b6 100644
--- a/src/mame/drivers/ttchamp.cpp
+++ b/src/mame/drivers/ttchamp.cpp
@@ -142,6 +142,8 @@ public:
INTERRUPT_GEN_MEMBER(irq);
void ttchamp(machine_config &config);
+ void ttchamp_io(address_map &map);
+ void ttchamp_map(address_map &map);
};
ALLOW_SAVE_TYPE(ttchamp_state::picmode);
@@ -500,7 +502,7 @@ WRITE16_MEMBER(ttchamp_state::mem_w)
-static ADDRESS_MAP_START( ttchamp_map, AS_PROGRAM, 16, ttchamp_state )
+ADDRESS_MAP_START(ttchamp_state::ttchamp_map)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
@@ -542,7 +544,7 @@ WRITE16_MEMBER(ttchamp_state::port62_w)
m_rombank = 0;
}
-static ADDRESS_MAP_START( ttchamp_io, AS_IO, 16, ttchamp_state )
+ADDRESS_MAP_START(ttchamp_state::ttchamp_io)
AM_RANGE(0x0000, 0x0001) AM_WRITENOP // startup only, nmi enable?
AM_RANGE(0x0002, 0x0003) AM_READ_PORT("SYSTEM")
diff --git a/src/mame/drivers/tti.cpp b/src/mame/drivers/tti.cpp
index 568fdfae5e2..754e46ba7cb 100644
--- a/src/mame/drivers/tti.cpp
+++ b/src/mame/drivers/tti.cpp
@@ -34,6 +34,7 @@ public:
IRQ_CALLBACK_MEMBER(intack);
void tti(machine_config &config);
+ void prg_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<mc68901_device> m_mfp;
@@ -47,7 +48,7 @@ IRQ_CALLBACK_MEMBER(tti_state::intack)
static INPUT_PORTS_START( tti )
INPUT_PORTS_END
-static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, tti_state )
+ADDRESS_MAP_START(tti_state::prg_map)
AM_RANGE(0x00000, 0x07fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x7e000, 0x7ffff) AM_RAM
AM_RANGE(0x80000, 0x80017) AM_DEVREADWRITE("mfp", mc68901_device, read, write)
diff --git a/src/mame/drivers/tubep.cpp b/src/mame/drivers/tubep.cpp
index 0111fe5c7a5..284c92faba3 100644
--- a/src/mame/drivers/tubep.cpp
+++ b/src/mame/drivers/tubep.cpp
@@ -131,7 +131,7 @@ WRITE_LINE_MEMBER(tubep_state::coin2_counter_w)
}
-static ADDRESS_MAP_START( tubep_main_map, AS_PROGRAM, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::tubep_main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_RAM
AM_RANGE(0xc000, 0xc7ff) AM_WRITE(tubep_textram_w) AM_SHARE("textram") /* RAM on GFX PCB @B13 */
@@ -153,7 +153,7 @@ WRITE8_MEMBER(tubep_state::tubep_soundlatch_w)
m_sound_latch = (data&0x7f) | 0x80;
}
-static ADDRESS_MAP_START( tubep_main_portmap, AS_IO, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::tubep_main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x80) AM_READ_PORT("DSW1")
AM_RANGE(0x90, 0x90) AM_READ_PORT("DSW2")
@@ -184,7 +184,7 @@ WRITE8_MEMBER(tubep_state::second_cpu_irq_line_clear_w)
}
-static ADDRESS_MAP_START( tubep_second_map, AS_PROGRAM, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::tubep_second_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa000) AM_WRITE(tubep_background_a000_w)
AM_RANGE(0xc000, 0xc000) AM_WRITE(tubep_background_c000_w)
@@ -195,7 +195,7 @@ static ADDRESS_MAP_START( tubep_second_map, AS_PROGRAM, 8, tubep_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tubep_second_portmap, AS_IO, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::tubep_second_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x7f, 0x7f) AM_WRITE(second_cpu_irq_line_clear_w)
ADDRESS_MAP_END
@@ -224,14 +224,14 @@ WRITE8_MEMBER(tubep_state::tubep_sound_unknown)
}
-static ADDRESS_MAP_START( tubep_sound_map, AS_PROGRAM, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::tubep_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xd000, 0xd000) AM_READ(tubep_sound_irq_ack)
AM_RANGE(0xe000, 0xe7ff) AM_RAM /* 6116 #3 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tubep_sound_portmap, AS_IO, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::tubep_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_device, address_data_w)
@@ -362,7 +362,7 @@ MACHINE_RESET_MEMBER(tubep_state,tubep)
*************************************/
/* MS2010-A CPU (equivalent to NSC8105 with one new opcode: 0xec) on graphics PCB */
-static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::nsc_map)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("sprite_color")
AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share2")
AM_RANGE(0x2000, 0x2009) AM_WRITE(tubep_sprite_control_w)
@@ -378,7 +378,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( rjammer_main_map, AS_PROGRAM, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::rjammer_main_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_RAM /* MB8416 SRAM on daughterboard on main PCB (there are two SRAMs, this is the one on the left) */
AM_RANGE(0xc000, 0xc7ff) AM_WRITE(tubep_textram_w) AM_SHARE("textram")/* RAM on GFX PCB @B13 */
@@ -386,7 +386,7 @@ static ADDRESS_MAP_START( rjammer_main_map, AS_PROGRAM, 8, tubep_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rjammer_main_portmap, AS_IO, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::rjammer_main_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW2") /* a bug in game code (during attract mode) */
AM_RANGE(0x80, 0x80) AM_READ_PORT("DSW2")
@@ -401,7 +401,7 @@ static ADDRESS_MAP_START( rjammer_main_portmap, AS_IO, 8, tubep_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rjammer_second_map, AS_PROGRAM, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::rjammer_second_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_RAM /* M5M5117P @21G */
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") /* MB8416 on daughterboard (the one on the right) */
@@ -410,7 +410,7 @@ static ADDRESS_MAP_START( rjammer_second_map, AS_PROGRAM, 8, tubep_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rjammer_second_portmap, AS_IO, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::rjammer_second_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xb0, 0xb0) AM_WRITE(rjammer_background_page_w)
AM_RANGE(0xd0, 0xd0) AM_WRITE(rjammer_background_LS377_w)
@@ -562,13 +562,13 @@ WRITE8_MEMBER(tubep_state::rjammer_voice_intensity_control_w)
}
-static ADDRESS_MAP_START( rjammer_sound_map, AS_PROGRAM, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::rjammer_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM /* M5M5117P (M58125P @2C on schematics) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rjammer_sound_portmap, AS_IO, 8, tubep_state )
+ADDRESS_MAP_START(tubep_state::rjammer_sound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x10, 0x10) AM_WRITE(rjammer_voice_startstop_w)
diff --git a/src/mame/drivers/tugboat.cpp b/src/mame/drivers/tugboat.cpp
index 589c4b74a06..b23cf5e52d2 100644
--- a/src/mame/drivers/tugboat.cpp
+++ b/src/mame/drivers/tugboat.cpp
@@ -79,6 +79,7 @@ public:
int addr,int gfx0,int gfx1,int transparency);
void tugboat(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -232,7 +233,7 @@ void tugboat_state::machine_reset()
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tugboat_state )
+ADDRESS_MAP_START(tugboat_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x1060, 0x1061) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
diff --git a/src/mame/drivers/tumbleb.cpp b/src/mame/drivers/tumbleb.cpp
index 646146ac359..46b8c97c4ba 100644
--- a/src/mame/drivers/tumbleb.cpp
+++ b/src/mame/drivers/tumbleb.cpp
@@ -628,7 +628,7 @@ WRITE16_MEMBER(tumbleb_state::tumbleb2_soundmcu_w)
/******************************************************************************/
-static ADDRESS_MAP_START( tumblepopb_main_map, AS_PROGRAM, 16, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::tumblepopb_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
#if TUMBLEP_HACK
AM_RANGE(0x000000, 0x07ffff) AM_WRITEONLY /* To write levels modifications */
@@ -650,7 +650,7 @@ static ADDRESS_MAP_START( tumblepopb_main_map, AS_PROGRAM, 16, tumbleb_state )
AM_RANGE(0x342400, 0x34247f) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fncywld_main_map, AS_PROGRAM, 16, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::fncywld_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
#if FNCYWLD_HACK
AM_RANGE(0x000000, 0x0fffff) AM_WRITEONLY /* To write levels modifications */
@@ -679,7 +679,7 @@ READ16_MEMBER(tumbleb_state::semibase_unknown_r)
return machine().rand();
}
-static ADDRESS_MAP_START( htchctch_main_map, AS_PROGRAM, 16, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::htchctch_main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10000f) AM_READ(semibase_unknown_r)
AM_RANGE(0x100000, 0x100001) AM_WRITE(semicom_soundcmd_w)
@@ -705,7 +705,7 @@ WRITE16_MEMBER(tumbleb_state::jumpkids_sound_w)
m_audiocpu->set_input_line(0, HOLD_LINE);
}
-static ADDRESS_MAP_START( suprtrio_main_map, AS_PROGRAM, 16, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::suprtrio_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x700000, 0x700fff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0xa00000, 0xa0000f) AM_RAM AM_SHARE("control")
@@ -719,7 +719,7 @@ static ADDRESS_MAP_START( suprtrio_main_map, AS_PROGRAM, 16, tumbleb_state )
AM_RANGE(0xf00000, 0xf07fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pangpang_main_map, AS_PROGRAM, 16, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::pangpang_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x120000, 0x123fff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x140000, 0x1407ff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
@@ -753,7 +753,7 @@ WRITE8_MEMBER(tumbleb_state::oki_sound_bank_w)
memcpy(&oki[0x30000], &oki[(data * 0x10000) + 0x40000], 0x10000);
}
-static ADDRESS_MAP_START( semicom_sound_map, AS_PROGRAM, 8, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::semicom_sound_map)
AM_RANGE(0x0000, 0xcfff) AM_ROM
AM_RANGE(0xd000, 0xd7ff) AM_RAM
AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
@@ -763,7 +763,7 @@ static ADDRESS_MAP_START( semicom_sound_map, AS_PROGRAM, 8, tumbleb_state )
AM_RANGE(0xf00e, 0xf00e) AM_WRITE(oki_sound_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( suprtrio_sound_map, AS_PROGRAM, 8, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::suprtrio_sound_map)
AM_RANGE(0x0000, 0xcfff) AM_ROM
AM_RANGE(0xd000, 0xd7ff) AM_RAM
AM_RANGE(0xf002, 0xf002) AM_DEVREADWRITE("oki", okim6295_device, read, write)
@@ -774,7 +774,7 @@ ADDRESS_MAP_END
/* Jump Kids */
-static ADDRESS_MAP_START( jumpkids_main_map, AS_PROGRAM, 16, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::jumpkids_main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_WRITE(jumpkids_sound_w)
AM_RANGE(0x120000, 0x123fff) AM_RAM AM_SHARE("mainram")
@@ -802,7 +802,7 @@ WRITE8_MEMBER(tumbleb_state::jumpkids_oki_bank_w)
memcpy(sound1 + 0x20000, sound2 + bank * 0x20000, 0x20000);
}
-static ADDRESS_MAP_START( jumpkids_sound_map, AS_PROGRAM, 8, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::jumpkids_sound_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(jumpkids_oki_bank_w)
@@ -857,11 +857,11 @@ WRITE8_MEMBER(tumbleb_state::prot_io_w)
/* Semicom AT89C52 MCU */
-static ADDRESS_MAP_START( protection_map, AS_PROGRAM, 8, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::protection_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( protection_iomap, AS_IO, 8, tumbleb_state )
+ADDRESS_MAP_START(tumbleb_state::protection_iomap)
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(prot_io_r,prot_io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tunhunt.cpp b/src/mame/drivers/tunhunt.cpp
index 180f5941648..50985b29fb0 100644
--- a/src/mame/drivers/tunhunt.cpp
+++ b/src/mame/drivers/tunhunt.cpp
@@ -129,7 +129,7 @@ READ8_MEMBER(tunhunt_state::dsw2_4r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tunhunt_state )
+ADDRESS_MAP_START(tunhunt_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("workram") /* Work RAM */
AM_RANGE(0x1080, 0x10ff) AM_WRITEONLY
diff --git a/src/mame/drivers/turbo.cpp b/src/mame/drivers/turbo.cpp
index 8770bb50585..e9db173e4c4 100644
--- a/src/mame/drivers/turbo.cpp
+++ b/src/mame/drivers/turbo.cpp
@@ -499,7 +499,7 @@ WRITE8_MEMBER(turbo_state::spriteram_w)
*
*************************************/
-static ADDRESS_MAP_START( turbo_map, AS_PROGRAM, 8, turbo_state )
+ADDRESS_MAP_START(turbo_state::turbo_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0xa000, 0xa0ff) AM_MIRROR(0x0700) AM_READWRITE(spriteram_r, spriteram_w)
AM_RANGE(0xa800, 0xa807) AM_MIRROR(0x07f8) AM_DEVWRITE("outlatch", ls259_device, write_d0)
@@ -525,7 +525,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( subroc3d_map, AS_PROGRAM, 8, turbo_state )
+ADDRESS_MAP_START(turbo_state::subroc3d_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xa000, 0xa3ff) AM_RAM AM_SHARE("spritepos") // CONT RAM
AM_RANGE(0xa400, 0xa7ff) AM_RAM AM_SHARE("spriteram") // CONT RAM
@@ -549,7 +549,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( buckrog_map, AS_PROGRAM, 8, turbo_state )
+ADDRESS_MAP_START(turbo_state::buckrog_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(turbo_videoram_w) AM_SHARE("videoram") // FIX PAGE
AM_RANGE(0xc800, 0xc803) AM_MIRROR(0x07fc) AM_DEVREAD("i8255_0", i8255_device, read) AM_WRITE(buckrog_i8255_0_w) // 8255
@@ -565,18 +565,18 @@ static ADDRESS_MAP_START( buckrog_map, AS_PROGRAM, 8, turbo_state )
AM_RANGE(0xf800, 0xffff) AM_RAM // SCRATCH
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, turbo_state )
+ADDRESS_MAP_START(turbo_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( buckrog_cpu2_map, AS_PROGRAM, 8, turbo_state )
+ADDRESS_MAP_START(turbo_state::buckrog_cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x0000, 0xdfff) AM_WRITE(buckrog_bitmap_w)
AM_RANGE(0xe000, 0xe7ff) AM_MIRROR(0x1800) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( buckrog_cpu2_portmap, AS_IO, 8, turbo_state )
+ADDRESS_MAP_START(turbo_state::buckrog_cpu2_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READ(buckrog_cpu2_command_r)
ADDRESS_MAP_END
@@ -937,7 +937,7 @@ MACHINE_CONFIG_START(turbo_state::buckrog)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", Z80, MASTER_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(buckrog_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", turbo_state, irq0_line_hold)
MCFG_CPU_ADD("subcpu", Z80, MASTER_CLOCK/4)
@@ -990,7 +990,7 @@ MACHINE_CONFIG_DERIVED(turbo_state::buckroge, buckrog)
/* basic machine hardware */
MCFG_CPU_REPLACE("maincpu", SEGA_315_5014, MASTER_CLOCK/4)
MCFG_CPU_PROGRAM_MAP(buckrog_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", turbo_state, irq0_line_hold)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/turrett.cpp b/src/mame/drivers/turrett.cpp
index df98938e124..eb54eac40e6 100644
--- a/src/mame/drivers/turrett.cpp
+++ b/src/mame/drivers/turrett.cpp
@@ -85,7 +85,7 @@ void turrett_state::machine_reset()
*
*************************************/
-static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, turrett_state )
+ADDRESS_MAP_START(turrett_state::cpu_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_RAM
AM_RANGE(0x02000010, 0x02000013) AM_RAM
AM_RANGE(0x02000040, 0x02000043) AM_RAM
@@ -101,7 +101,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, turrett_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( turrett_sound_map, 0, 16, turrett_state )
+ADDRESS_MAP_START(turrett_state::turrett_sound_map)
AM_RANGE(0x0000000, 0x7ffffff) AM_RAM AM_SHARE("bank_a")
AM_RANGE(0x8000000, 0xfffffff) AM_RAM AM_SHARE("bank_b")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tutankhm.cpp b/src/mame/drivers/tutankhm.cpp
index df41b1b76cf..8ad4891e72a 100644
--- a/src/mame/drivers/tutankhm.cpp
+++ b/src/mame/drivers/tutankhm.cpp
@@ -127,7 +127,7 @@ WRITE8_MEMBER(tutankhm_state::sound_on_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tutankhm_state )
+ADDRESS_MAP_START(tutankhm_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x8000, 0x800f) AM_MIRROR(0x00f0) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
AM_RANGE(0x8100, 0x8100) AM_MIRROR(0x000f) AM_RAM AM_SHARE("scroll")
diff --git a/src/mame/drivers/tutor.cpp b/src/mame/drivers/tutor.cpp
index ec153e791d1..ee6e2a3de07 100644
--- a/src/mame/drivers/tutor.cpp
+++ b/src/mame/drivers/tutor.cpp
@@ -229,6 +229,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_busy);
void pyuutajr(machine_config &config);
void tutor(machine_config &config);
+ void pyuutajr_mem(address_map &map);
+ void tutor_io(address_map &map);
+ void tutor_memmap(address_map &map);
};
@@ -547,7 +550,7 @@ WRITE8_MEMBER( tutor_state::test_w )
}
#endif
-static ADDRESS_MAP_START(tutor_memmap, AS_PROGRAM, 8, tutor_state)
+ADDRESS_MAP_START(tutor_state::tutor_memmap)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_WRITENOP
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_WRITENOP
@@ -563,7 +566,7 @@ static ADDRESS_MAP_START(tutor_memmap, AS_PROGRAM, 8, tutor_state)
AM_RANGE(0xf000, 0xffff) AM_READ(tutor_highmem_r) AM_WRITENOP /*free for expansion (and internal processor RAM)*/
ADDRESS_MAP_END
-static ADDRESS_MAP_START(pyuutajr_mem, AS_PROGRAM, 8, tutor_state)
+ADDRESS_MAP_START(tutor_state::pyuutajr_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_WRITENOP
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_WRITENOP
@@ -591,7 +594,7 @@ ADDRESS_MAP_END
>ed00(r): tape input
*/
-static ADDRESS_MAP_START(tutor_io, AS_IO, 8, tutor_state)
+ADDRESS_MAP_START(tutor_state::tutor_io)
AM_RANGE(0xec0, 0xec7) AM_READ(key_r) /*keyboard interface*/
AM_RANGE(0xed0, 0xed0) AM_READ(tutor_cassette_r) /*cassette interface*/
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tv910.cpp b/src/mame/drivers/tv910.cpp
index e831debb201..902063754de 100644
--- a/src/mame/drivers/tv910.cpp
+++ b/src/mame/drivers/tv910.cpp
@@ -81,6 +81,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(ay3600_ako_w);
void tv910(machine_config &config);
+ void tv910_mem(address_map &map);
private:
required_device<m6502_device> m_maincpu;
required_device<input_merger_device> m_mainirq;
@@ -102,7 +103,7 @@ private:
uint8_t m_control;
};
-static ADDRESS_MAP_START(tv910_mem, AS_PROGRAM, 8, tv910_state)
+ADDRESS_MAP_START(tv910_state::tv910_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("vram") // VRAM
diff --git a/src/mame/drivers/tv912.cpp b/src/mame/drivers/tv912.cpp
index 7ae5f02895a..5b8045c856f 100644
--- a/src/mame/drivers/tv912.cpp
+++ b/src/mame/drivers/tv912.cpp
@@ -108,6 +108,9 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(uart_settings_changed);
void tv912(machine_config &config);
+ void bank_map(address_map &map);
+ void io_map(address_map &map);
+ void prog_map(address_map &map);
private:
enum
{
@@ -370,15 +373,15 @@ void tv912_state::machine_reset()
m_uart->set_input_pin(AY31015_CS, 1);
}
-static ADDRESS_MAP_START( prog_map, AS_PROGRAM, 8, tv912_state )
+ADDRESS_MAP_START(tv912_state::prog_map)
AM_RANGE(0x000, 0xfff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, tv912_state )
+ADDRESS_MAP_START(tv912_state::io_map)
AM_RANGE(0x00, 0xff) AM_DEVICE("bankdev", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bank_map, 0, 8, tv912_state )
+ADDRESS_MAP_START(tv912_state::bank_map)
AM_RANGE(0x000, 0x0ff) AM_MIRROR(0x300) AM_RAM
AM_RANGE(0x400, 0x403) AM_MIRROR(0x3c0) AM_SELECT(0x030) AM_READWRITE(crtc_r, crtc_w)
AM_RANGE(0x404, 0x404) AM_MIRROR(0x3f3) AM_READ(uart_data_r)
diff --git a/src/mame/drivers/tv950.cpp b/src/mame/drivers/tv950.cpp
index 5e665a95278..825e0bd66fc 100644
--- a/src/mame/drivers/tv950.cpp
+++ b/src/mame/drivers/tv950.cpp
@@ -76,6 +76,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(via_crtc_reset_w);
void tv950(machine_config &config);
+ void tv950_mem(address_map &map);
private:
uint8_t m_via_row;
uint8_t m_attr_row;
@@ -91,7 +92,7 @@ private:
int m_row;
};
-static ADDRESS_MAP_START(tv950_mem, AS_PROGRAM, 8, tv950_state)
+ADDRESS_MAP_START(tv950_state::tv950_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x2000, 0x3fff) AM_RAM AM_SHARE("vram") // VRAM
diff --git a/src/mame/drivers/tv990.cpp b/src/mame/drivers/tv990.cpp
index 681bdd80838..d3ea90bd866 100644
--- a/src/mame/drivers/tv990.cpp
+++ b/src/mame/drivers/tv990.cpp
@@ -92,6 +92,7 @@ public:
INTERRUPT_GEN_MEMBER(vblank);
DECLARE_INPUT_CHANGED_MEMBER(color);
void tv990(machine_config &config);
+ void tv990_mem(address_map &map);
private:
uint16_t tvi1111_regs[(0x100/2)+2];
emu_timer *m_rowtimer;
@@ -309,7 +310,7 @@ WRITE8_MEMBER(tv990_state::kbdc_w)
m_kbdc->data_w(space, 0, data);
}
-static ADDRESS_MAP_START(tv990_mem, AS_PROGRAM, 16, tv990_state)
+ADDRESS_MAP_START(tv990_state::tv990_mem)
AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x060000, 0x06ffff) AM_RAM AM_SHARE("vram") // character/attribute RAM
AM_RANGE(0x080000, 0x087fff) AM_RAM AM_SHARE("fontram") // font RAM
diff --git a/src/mame/drivers/tvboy.cpp b/src/mame/drivers/tvboy.cpp
index 1c9dead4253..4015dbd53a4 100644
--- a/src/mame/drivers/tvboy.cpp
+++ b/src/mame/drivers/tvboy.cpp
@@ -31,6 +31,8 @@ public:
void tvboyii(machine_config &config);
void supertvboy(machine_config &config);
+ void rom_map(address_map &map);
+ void tvboy_mem(address_map &map);
private:
required_device<address_map_bank_device> m_crom;
required_region_ptr<uint8_t> m_rom;
@@ -49,7 +51,7 @@ WRITE8_MEMBER(tvboy_state::bank_write) {
m_crom->set_bank(data);
}
-static ADDRESS_MAP_START(tvboy_mem, AS_PROGRAM, 8, tvboy_state ) // 6507 has 13-bit address space, 0x0000 - 0x1fff
+ADDRESS_MAP_START(tvboy_state::tvboy_mem) // 6507 has 13-bit address space, 0x0000 - 0x1fff
AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0f00) AM_DEVREADWRITE("tia_video", tia_video_device, read, write)
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x0d00) AM_RAM AM_SHARE("riot_ram")
#if USE_NEW_RIOT
@@ -61,7 +63,7 @@ static ADDRESS_MAP_START(tvboy_mem, AS_PROGRAM, 8, tvboy_state ) // 6507 has 13-
AM_RANGE(0x1000, 0x1fff) AM_DEVICE("crom", address_map_bank_device, amap8)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( rom_map, AS_PROGRAM, 8, tvboy_state )
+ADDRESS_MAP_START(tvboy_state::rom_map)
AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_REGION("mainrom", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tvc.cpp b/src/mame/drivers/tvc.cpp
index eb53713155c..5c52d9e345d 100644
--- a/src/mame/drivers/tvc.cpp
+++ b/src/mame/drivers/tvc.cpp
@@ -109,6 +109,8 @@ public:
uint8_t m_centronics_ff;
DECLARE_PALETTE_INIT(tvc);
void tvc(machine_config &config);
+ void tvc_io(address_map &map);
+ void tvc_mem(address_map &map);
};
@@ -350,14 +352,14 @@ WRITE8_MEMBER(tvc_state::cassette_w)
m_cassette->output(m_cassette_ff ? +1 : -1);
}
-static ADDRESS_MAP_START(tvc_mem, AS_PROGRAM, 8, tvc_state )
+ADDRESS_MAP_START(tvc_state::tvc_mem)
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank3")
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tvc_io , AS_IO, 8, tvc_state )
+ADDRESS_MAP_START(tvc_state::tvc_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(border_color_w)
diff --git a/src/mame/drivers/tvcapcom.cpp b/src/mame/drivers/tvcapcom.cpp
index 6904d5e5247..655b7b218e2 100644
--- a/src/mame/drivers/tvcapcom.cpp
+++ b/src/mame/drivers/tvcapcom.cpp
@@ -26,9 +26,10 @@ public:
uint32_t screen_update_tvcapcom(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
required_device<ppc_device> m_maincpu;
void tvcapcom(machine_config &config);
+ void gc_map(address_map &map);
};
-static ADDRESS_MAP_START( gc_map, AS_PROGRAM, 64, tvcapcom_state )
+ADDRESS_MAP_START(tvcapcom_state::gc_map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tvgame.cpp b/src/mame/drivers/tvgame.cpp
index d493bf6b145..5a76fb844c6 100644
--- a/src/mame/drivers/tvgame.cpp
+++ b/src/mame/drivers/tvgame.cpp
@@ -31,20 +31,22 @@ public:
DECLARE_WRITE8_MEMBER(speaker_w);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void tvgame(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<speaker_sound_device> m_speaker;
required_shared_ptr<uint8_t> m_p_videoram;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, tvgame_state )
+ADDRESS_MAP_START(tvgame_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_ROM
AM_RANGE( 0x8000, 0xbfff ) AM_RAM
AM_RANGE( 0xc000, 0xdfff ) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, tvgame_state )
+ADDRESS_MAP_START(tvgame_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(3)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x0003) AM_DEVREADWRITE("ppi", i8255_device, read, write)
diff --git a/src/mame/drivers/twin16.cpp b/src/mame/drivers/twin16.cpp
index 0a889cbbc3a..5e95de39504 100644
--- a/src/mame/drivers/twin16.cpp
+++ b/src/mame/drivers/twin16.cpp
@@ -164,7 +164,7 @@ WRITE8_MEMBER(twin16_state::upd_start_w)
/* Memory Maps */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, twin16_state )
+ADDRESS_MAP_START(twin16_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x9000) AM_WRITE(upd_reset_w)
@@ -176,7 +176,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, twin16_state )
AM_RANGE(0xf000, 0xf000) AM_READ(upd_busy_r) // miaj writes 0 to it
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, twin16_state )
+ADDRESS_MAP_START(twin16_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("comram")
// AM_RANGE(0x044000, 0x04ffff) AM_NOP // miaj
@@ -200,7 +200,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, twin16_state )
AM_RANGE(0x140000, 0x143fff) AM_RAM AM_SHARE("spriteram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, twin16_state )
+ADDRESS_MAP_START(twin16_state::sub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("comram")
// AM_RANGE(0x044000, 0x04ffff) AM_NOP // miaj
@@ -216,7 +216,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, twin16_state )
AM_RANGE(0x780000, 0x79ffff) AM_RAM AM_SHARE("sprite_gfx_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( fround_map, AS_PROGRAM, 16, fround_state )
+ADDRESS_MAP_START(fround_state::fround_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("comram")
AM_RANGE(0x060000, 0x063fff) AM_RAM
diff --git a/src/mame/drivers/twincobr.cpp b/src/mame/drivers/twincobr.cpp
index e8689747d7e..89791e00d09 100644
--- a/src/mame/drivers/twincobr.cpp
+++ b/src/mame/drivers/twincobr.cpp
@@ -393,7 +393,7 @@ Shark Zame
/***************************** 68000 Memory Map *****************************/
-static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 16, twincobr_state )
+ADDRESS_MAP_START(twincobr_state::main_program_map)
AM_RANGE(0x000000, 0x02ffff) AM_ROM
AM_RANGE(0x030000, 0x033fff) AM_RAM /* 68K and DSP shared RAM */
AM_RANGE(0x040000, 0x040fff) AM_RAM AM_SHARE("spriteram16")
@@ -423,12 +423,12 @@ ADDRESS_MAP_END
/***************************** Z80 Memory Map *******************************/
-static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8, twincobr_state )
+ADDRESS_MAP_START(twincobr_state::sound_program_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, twincobr_state )
+ADDRESS_MAP_START(twincobr_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0x10, 0x10) AM_READ_PORT("SYSTEM") /* Twin Cobra - Coin/Start */
@@ -440,13 +440,13 @@ ADDRESS_MAP_END
/***************************** TMS32010 Memory Map **************************/
-static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16, twincobr_state )
+ADDRESS_MAP_START(twincobr_state::DSP_program_map)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
/* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */
-static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16, twincobr_state )
+ADDRESS_MAP_START(twincobr_state::DSP_io_map)
AM_RANGE(0, 0) AM_WRITE(twincobr_dsp_addrsel_w)
AM_RANGE(1, 1) AM_READWRITE(twincobr_dsp_r, twincobr_dsp_w)
AM_RANGE(2, 2) AM_READWRITE(fsharkbt_dsp_r, fsharkbt_dsp_w)
@@ -456,7 +456,7 @@ ADDRESS_MAP_END
/******************* Flying Shark Bootleg i8741 Memory Map *******************/
-static ADDRESS_MAP_START( fsharkbt_i8741_io_map, AS_IO, 8, twincobr_state )
+ADDRESS_MAP_START(twincobr_state::fsharkbt_i8741_io_map)
/* IO map unknown as program code isn't dumped */
ADDRESS_MAP_END
diff --git a/src/mame/drivers/twinkle.cpp b/src/mame/drivers/twinkle.cpp
index 84a8d168f2e..040cf2eeed7 100644
--- a/src/mame/drivers/twinkle.cpp
+++ b/src/mame/drivers/twinkle.cpp
@@ -291,6 +291,9 @@ public:
void twinklex(machine_config &config);
void twinklei(machine_config &config);
void twinkle(machine_config &config);
+ void main_map(address_map &map);
+ void rf5c400_map(address_map &map);
+ void sound_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
@@ -766,7 +769,7 @@ READ8_MEMBER(twinkle_state::shared_psx_r)
return result;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, twinkle_state )
+ADDRESS_MAP_START(twinkle_state::main_map)
AM_RANGE(0x1f000000, 0x1f0007ff) AM_READWRITE8(shared_psx_r, shared_psx_w, 0x00ff00ff)
AM_RANGE(0x1f200000, 0x1f20001f) AM_DEVREADWRITE8("am53cf96", am53cf96_device, read, write, 0x00ff00ff)
AM_RANGE(0x1f20a01c, 0x1f20a01f) AM_WRITENOP /* scsi? */
@@ -915,7 +918,7 @@ WRITE16_MEMBER(twinkle_state::spu_led_w)
output().set_indexed_value("spu_led", 7, (~data >> 7) & 1);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, twinkle_state )
+ADDRESS_MAP_START(twinkle_state::sound_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAM
AM_RANGE(0x200000, 0x200001) AM_READ_PORT("SPU_DSW")
@@ -932,7 +935,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, twinkle_state )
AM_RANGE(0x800000, 0xffffff) AM_READWRITE(twinkle_waveram_r, twinkle_waveram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(rf5c400_map, 0, 16, twinkle_state)
+ADDRESS_MAP_START(twinkle_state::rf5c400_map)
AM_RANGE(0x0000000, 0x1ffffff) AM_RAM AM_SHARE("rfsnd")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/twins.cpp b/src/mame/drivers/twins.cpp
index dfb84a1bb28..524ca02f10d 100644
--- a/src/mame/drivers/twins.cpp
+++ b/src/mame/drivers/twins.cpp
@@ -120,6 +120,11 @@ public:
void spider(machine_config &config);
void twins(machine_config &config);
void twinsa(machine_config &config);
+ void ramdac_map(address_map &map);
+ void spider_io(address_map &map);
+ void twins_io(address_map &map);
+ void twins_map(address_map &map);
+ void twinsa_io(address_map &map);
};
@@ -277,11 +282,11 @@ WRITE16_MEMBER(twins_state::spider_blitter_w)
}
-static ADDRESS_MAP_START( twins_map, AS_PROGRAM, 16, twins_state )
+ADDRESS_MAP_START(twins_state::twins_map)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(spider_blitter_r, spider_blitter_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( twins_io, AS_IO, 16, twins_state )
+ADDRESS_MAP_START(twins_state::twins_io)
AM_RANGE(0x0000, 0x0003) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
AM_RANGE(0x0002, 0x0003) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff)
AM_RANGE(0x0004, 0x0005) AM_READWRITE(twins_port4_r, twins_port4_w)
@@ -415,7 +420,7 @@ MACHINE_CONFIG_END
-static ADDRESS_MAP_START( twinsa_io, AS_IO, 16, twins_state )
+ADDRESS_MAP_START(twins_state::twinsa_io)
AM_RANGE(0x0000, 0x0001) AM_DEVWRITE8("ramdac",ramdac_device,index_w,0x00ff)
AM_RANGE(0x0002, 0x0003) AM_DEVWRITE8("ramdac",ramdac_device,mask_w,0x00ff)
AM_RANGE(0x0004, 0x0005) AM_DEVREADWRITE8("ramdac",ramdac_device,pal_r,pal_w,0x00ff)
@@ -425,7 +430,7 @@ static ADDRESS_MAP_START( twinsa_io, AS_IO, 16, twins_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramdac_map, 0, 8, twins_state )
+ADDRESS_MAP_START(twins_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
@@ -540,7 +545,7 @@ READ16_MEMBER(twins_state::spider_port_1e_r)
}
-static ADDRESS_MAP_START( spider_io, AS_IO, 16, twins_state )
+ADDRESS_MAP_START(twins_state::spider_io)
AM_RANGE(0x0000, 0x0003) AM_DEVWRITE8("aysnd", ay8910_device, address_data_w, 0x00ff)
AM_RANGE(0x0002, 0x0003) AM_DEVREAD8("aysnd", ay8910_device, data_r, 0x00ff)
AM_RANGE(0x0004, 0x0005) AM_READWRITE(twins_port4_r, twins_port4_w)
diff --git a/src/mame/drivers/tx0.cpp b/src/mame/drivers/tx0.cpp
index dbc99186b97..2797d106724 100644
--- a/src/mame/drivers/tx0.cpp
+++ b/src/mame/drivers/tx0.cpp
@@ -80,12 +80,12 @@ DRIVER_INIT_MEMBER(tx0_state,tx0)
}
-static ADDRESS_MAP_START(tx0_64kw_map, AS_PROGRAM, 32, tx0_state )
+ADDRESS_MAP_START(tx0_state::tx0_64kw_map)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tx0_8kw_map, AS_PROGRAM, 32, tx0_state )
+ADDRESS_MAP_START(tx0_state::tx0_8kw_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/tx1.cpp b/src/mame/drivers/tx1.cpp
index bc6ab336f50..0a334e8cbc5 100644
--- a/src/mame/drivers/tx1.cpp
+++ b/src/mame/drivers/tx1.cpp
@@ -478,7 +478,7 @@ READ8_MEMBER(tx1_state::bbjr_analog_r)
*
*************************************/
-static ADDRESS_MAP_START( tx1_main, AS_PROGRAM, 16, tx1_state )
+ADDRESS_MAP_START(tx1_state::tx1_main)
AM_RANGE(0x00000, 0x00fff) AM_MIRROR(0x1000) AM_RAM
AM_RANGE(0x02000, 0x02fff) AM_MIRROR(0x1000) AM_RAM
AM_RANGE(0x04000, 0x04fff) AM_MIRROR(0x1000) AM_RAM AM_SHARE("nvram")
@@ -494,7 +494,7 @@ static ADDRESS_MAP_START( tx1_main, AS_PROGRAM, 16, tx1_state )
AM_RANGE(0x20000, 0x2ffff) AM_MIRROR(0xd0000) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tx1_math, AS_PROGRAM, 16, tx1_state )
+ADDRESS_MAP_START(tx1_state::tx1_math)
AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("math_ram")
AM_RANGE(0x00800, 0x00fff) AM_READWRITE(tx1_spcs_ram_r, tx1_spcs_ram_w)
AM_RANGE(0x01000, 0x01fff) AM_RAM AM_SHARE("rcram")
@@ -507,7 +507,7 @@ static ADDRESS_MAP_START( tx1_math, AS_PROGRAM, 16, tx1_state )
AM_RANGE(0x05000, 0x07fff) AM_READ(tx1_spcs_rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tx1_sound_prg, AS_PROGRAM, 8, tx1_state )
+ADDRESS_MAP_START(tx1_state::tx1_sound_prg)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x3000, 0x37ff) AM_RAM AM_MIRROR(0x800) AM_SHARE("z80_ram")
AM_RANGE(0x4000, 0x4000) AM_WRITE(z80_intreq_w)
@@ -517,7 +517,7 @@ static ADDRESS_MAP_START( tx1_sound_prg, AS_PROGRAM, 8, tx1_state )
AM_RANGE(0xb000, 0xbfff) AM_READWRITE(ts_r, ts_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tx1_sound_io, AS_IO, 8, tx1_state )
+ADDRESS_MAP_START(tx1_state::tx1_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
ADDRESS_MAP_END
@@ -529,7 +529,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( buggyboy_main, AS_PROGRAM, 16, tx1_state )
+ADDRESS_MAP_START(tx1_state::buggyboy_main)
AM_RANGE(0x00000, 0x03fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x04000, 0x04fff) AM_READWRITE(tx1_crtc_r, tx1_crtc_w)
AM_RANGE(0x08000, 0x09fff) AM_RAM AM_SHARE("vram")
@@ -544,7 +544,7 @@ static ADDRESS_MAP_START( buggyboy_main, AS_PROGRAM, 16, tx1_state )
AM_RANGE(0xf0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( buggybjr_main, AS_PROGRAM, 16, tx1_state )
+ADDRESS_MAP_START(tx1_state::buggybjr_main)
AM_RANGE(0x00000, 0x03fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x04000, 0x04fff) AM_READWRITE(tx1_crtc_r, tx1_crtc_w)
AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("vram")
@@ -559,7 +559,7 @@ static ADDRESS_MAP_START( buggybjr_main, AS_PROGRAM, 16, tx1_state )
AM_RANGE(0xf0000, 0xfffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( buggyboy_math, AS_PROGRAM, 16, tx1_state )
+ADDRESS_MAP_START(tx1_state::buggyboy_math)
AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("math_ram")
AM_RANGE(0x00800, 0x00fff) AM_READWRITE(buggyboy_spcs_ram_r, buggyboy_spcs_ram_w)
AM_RANGE(0x01000, 0x01fff) AM_RAM AM_SHARE("rcram")
@@ -571,7 +571,7 @@ static ADDRESS_MAP_START( buggyboy_math, AS_PROGRAM, 16, tx1_state )
ADDRESS_MAP_END
/* Buggy Boy Sound PCB TC033A */
-static ADDRESS_MAP_START( buggyboy_sound_prg, AS_PROGRAM, 8, tx1_state )
+ADDRESS_MAP_START(tx1_state::buggyboy_sound_prg)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("z80_ram")
AM_RANGE(0x6000, 0x6001) AM_READ(bb_analog_r)
@@ -582,7 +582,7 @@ static ADDRESS_MAP_START( buggyboy_sound_prg, AS_PROGRAM, 8, tx1_state )
ADDRESS_MAP_END
/* Buggy Boy Jr Sound PCB TC043 */
-static ADDRESS_MAP_START( buggybjr_sound_prg, AS_PROGRAM, 8, tx1_state )
+ADDRESS_MAP_START(tx1_state::buggybjr_sound_prg)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("z80_ram")
AM_RANGE(0x5000, 0x5003) AM_DEVREADWRITE("buggyboy", buggyboy_sound_device, pit8253_r, pit8253_w)
@@ -592,7 +592,7 @@ static ADDRESS_MAP_START( buggybjr_sound_prg, AS_PROGRAM, 8, tx1_state )
ADDRESS_MAP_END
/* Common */
-static ADDRESS_MAP_START( buggyboy_sound_io, AS_IO, 8, tx1_state )
+ADDRESS_MAP_START(tx1_state::buggyboy_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x40) AM_DEVREAD("ym1", ay8910_device, data_r)
AM_RANGE(0x40, 0x41) AM_DEVWRITE("ym1", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/uapce.cpp b/src/mame/drivers/uapce.cpp
index faa11c4c0f2..d79666573fa 100644
--- a/src/mame/drivers/uapce.cpp
+++ b/src/mame/drivers/uapce.cpp
@@ -121,6 +121,9 @@ public:
virtual void machine_reset() override;
required_device<discrete_device> m_discrete;
void uapce(machine_config &config);
+ void pce_io(address_map &map);
+ void pce_mem(address_map &map);
+ void z80_map(address_map &map);
};
#define UAPCE_SOUND_EN NODE_10
@@ -240,7 +243,7 @@ void uapce_state::machine_reset()
m_jamma_if_control_latch = 0;
}
-static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, uapce_state )
+ADDRESS_MAP_START(uapce_state::z80_map)
AM_RANGE( 0x0000, 0x07FF) AM_ROM
AM_RANGE( 0x0800, 0x0FFF) AM_RAM
AM_RANGE( 0x1000, 0x17FF) AM_WRITE(jamma_if_control_latch_w )
@@ -283,7 +286,7 @@ static INPUT_PORTS_START( uapce )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(1)
INPUT_PORTS_END
-static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, uapce_state )
+ADDRESS_MAP_START(uapce_state::pce_mem)
AM_RANGE( 0x000000, 0x09FFFF) AM_ROM
AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000)
AM_RANGE( 0x1FE000, 0x1FE3FF) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
@@ -294,7 +297,7 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, uapce_state )
AM_RANGE( 0x1FF400, 0x1FF7FF) AM_DEVREADWRITE("maincpu", h6280_device, irq_status_r, irq_status_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pce_io , AS_IO, 8, uapce_state )
+ADDRESS_MAP_START(uapce_state::pce_io)
AM_RANGE( 0x00, 0x03) AM_DEVREADWRITE( "huc6270", huc6270_device, read, write )
ADDRESS_MAP_END
diff --git a/src/mame/drivers/uknc.cpp b/src/mame/drivers/uknc.cpp
index 56d6c1414dd..45f07b80426 100644
--- a/src/mame/drivers/uknc.cpp
+++ b/src/mame/drivers/uknc.cpp
@@ -25,16 +25,18 @@ public:
uint32_t screen_update_uknc(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void uknc(machine_config &config);
+ void uknc_mem(address_map &map);
+ void uknc_sub_mem(address_map &map);
};
-static ADDRESS_MAP_START(uknc_mem, AS_PROGRAM, 16, uknc_state)
+ADDRESS_MAP_START(uknc_state::uknc_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0x8000, 0xffff ) AM_ROM // ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(uknc_sub_mem, AS_PROGRAM, 16, uknc_state)
+ADDRESS_MAP_START(uknc_state::uknc_sub_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x7fff ) AM_RAM // RAM
AM_RANGE( 0x8000, 0xffff ) AM_ROM // ROM
diff --git a/src/mame/drivers/ultraman.cpp b/src/mame/drivers/ultraman.cpp
index 5d54b1dd699..6f4ba3918cb 100644
--- a/src/mame/drivers/ultraman.cpp
+++ b/src/mame/drivers/ultraman.cpp
@@ -28,7 +28,7 @@ WRITE8_MEMBER(ultraman_state::sound_nmi_enable_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, ultraman_state )
+ADDRESS_MAP_START(ultraman_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM
AM_RANGE(0x180000, 0x183fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")/* Palette */
@@ -51,7 +51,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, ultraman_state )
AM_RANGE(0x304800, 0x304fff) AM_DEVREADWRITE8("k051960", k051960_device, k051960_r, k051960_w, 0x00ff) /* Sprite RAM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ultraman_state )
+ADDRESS_MAP_START(ultraman_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xc000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
@@ -60,7 +60,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ultraman_state )
AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write) /* YM2151 */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, ultraman_state )
+ADDRESS_MAP_START(ultraman_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("soundnmi", input_merger_device, in_clear<0>)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ultratnk.cpp b/src/mame/drivers/ultratnk.cpp
index 3dfcf08f6d5..ddc996441a2 100644
--- a/src/mame/drivers/ultratnk.cpp
+++ b/src/mame/drivers/ultratnk.cpp
@@ -161,7 +161,7 @@ WRITE8_MEMBER(ultratnk_state::explosion_w)
}
-static ADDRESS_MAP_START( ultratnk_cpu_map, AS_PROGRAM, 8, ultratnk_state )
+ADDRESS_MAP_START(ultratnk_state::ultratnk_cpu_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
diff --git a/src/mame/drivers/ultrsprt.cpp b/src/mame/drivers/ultrsprt.cpp
index 1b347610af5..8ae6b10c297 100644
--- a/src/mame/drivers/ultrsprt.cpp
+++ b/src/mame/drivers/ultrsprt.cpp
@@ -53,6 +53,8 @@ public:
uint32_t screen_update_ultrsprt(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ultrsprt(machine_config &config);
+ void sound_map(address_map &map);
+ void ultrsprt_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -146,7 +148,7 @@ READ16_MEMBER(ultrsprt_state::upd2_r)
/*****************************************************************************/
-static ADDRESS_MAP_START( ultrsprt_map, AS_PROGRAM, 32, ultrsprt_state )
+ADDRESS_MAP_START(ultrsprt_state::ultrsprt_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_RAMBANK("vram")
AM_RANGE(0x70000000, 0x70000003) AM_READWRITE8(eeprom_r, eeprom_w, 0xff000000)
AM_RANGE(0x70000020, 0x70000023) AM_READ16(upd1_r, 0xffffffff)
@@ -162,7 +164,7 @@ ADDRESS_MAP_END
/*****************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, ultrsprt_state )
+ADDRESS_MAP_START(ultrsprt_state::sound_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_ROM
AM_RANGE(0x00100000, 0x00101fff) AM_RAM
AM_RANGE(0x00200000, 0x0020000f) AM_DEVREADWRITE8("k056800", k056800_device, sound_r, sound_w, 0xffff)
diff --git a/src/mame/drivers/umipoker.cpp b/src/mame/drivers/umipoker.cpp
index f1d97403cf3..91cc5211003 100644
--- a/src/mame/drivers/umipoker.cpp
+++ b/src/mame/drivers/umipoker.cpp
@@ -82,6 +82,9 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void umipoker(machine_config &config);
+ void umipoker_audio_io_map(address_map &map);
+ void umipoker_audio_map(address_map &map);
+ void umipoker_map(address_map &map);
};
TILE_GET_INFO_MEMBER(umipoker_state::get_tile_info_0)
@@ -312,7 +315,7 @@ WRITE16_MEMBER(umipoker_state::saiyu_counters_w)
}
-static ADDRESS_MAP_START( umipoker_map, AS_PROGRAM, 16, umipoker_state )
+ADDRESS_MAP_START(umipoker_state::umipoker_map)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x403fff) AM_RAM AM_SHARE("nvram")
@@ -338,12 +341,12 @@ static ADDRESS_MAP_START( umipoker_map, AS_PROGRAM, 16, umipoker_state )
AM_RANGE(0xe0002e, 0xe0002f) AM_WRITE(umipoker_scrolly_3_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( umipoker_audio_map, AS_PROGRAM, 8, umipoker_state )
+ADDRESS_MAP_START(umipoker_state::umipoker_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_READWRITE(z80_shared_ram_r,z80_shared_ram_w) AM_SHARE("z80_wram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( umipoker_audio_io_map, AS_IO, 8, umipoker_state )
+ADDRESS_MAP_START(umipoker_state::umipoker_audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("oki", okim6295_device, read, write)
AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ym", ym3812_device, read, write)
diff --git a/src/mame/drivers/undrfire.cpp b/src/mame/drivers/undrfire.cpp
index 0c7725ed5b2..cb10ea8f41a 100644
--- a/src/mame/drivers/undrfire.cpp
+++ b/src/mame/drivers/undrfire.cpp
@@ -399,7 +399,7 @@ WRITE8_MEMBER(undrfire_state::cbombers_adc_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( undrfire_map, AS_PROGRAM, 32, undrfire_state )
+ADDRESS_MAP_START(undrfire_state::undrfire_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_SHARE("ram")
AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("spriteram")
@@ -420,7 +420,7 @@ static ADDRESS_MAP_START( undrfire_map, AS_PROGRAM, 32, undrfire_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cbombers_cpua_map, AS_PROGRAM, 32, undrfire_state )
+ADDRESS_MAP_START(undrfire_state::cbombers_cpua_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x21ffff) AM_RAM
AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("spriteram")
@@ -439,7 +439,7 @@ static ADDRESS_MAP_START( cbombers_cpua_map, AS_PROGRAM, 32, undrfire_state )
AM_RANGE(0xe00000, 0xe0ffff) AM_RAM AM_SHARE("shared_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cbombers_cpub_map, AS_PROGRAM, 16, undrfire_state )
+ADDRESS_MAP_START(undrfire_state::cbombers_cpub_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x400000, 0x40ffff) AM_RAM /* local ram */
// AM_RANGE(0x600000, 0x60ffff) AM_DEVWRITE("tc0480scp", tc0480scp_device, word_w) /* Only written upon errors */
diff --git a/src/mame/drivers/unianapc.cpp b/src/mame/drivers/unianapc.cpp
index 1afbcc15724..5a96394791e 100644
--- a/src/mame/drivers/unianapc.cpp
+++ b/src/mame/drivers/unianapc.cpp
@@ -42,6 +42,7 @@ public:
virtual void video_start() override;
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void unianapc(machine_config &config);
+ void unianapc_map(address_map &map);
};
void unianapc_state::video_start()
@@ -53,7 +54,7 @@ uint32_t unianapc_state::screen_update(screen_device &screen, bitmap_rgb32 &bitm
return 0;
}
-static ADDRESS_MAP_START( unianapc_map, AS_PROGRAM, 32, unianapc_state )
+ADDRESS_MAP_START(unianapc_state::unianapc_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( unianapc )
diff --git a/src/mame/drivers/unichamp.cpp b/src/mame/drivers/unichamp.cpp
index c528264d21a..4d288407f7e 100644
--- a/src/mame/drivers/unichamp.cpp
+++ b/src/mame/drivers/unichamp.cpp
@@ -82,6 +82,7 @@ public:
uint32_t screen_update_unichamp(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void unichamp(machine_config &config);
+ void unichamp_mem(address_map &map);
protected:
required_ioport m_ctrls;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
@@ -105,7 +106,7 @@ PALETTE_INIT_MEMBER(unichamp_state, unichamp)
}
-static ADDRESS_MAP_START( unichamp_mem, AS_PROGRAM, 16, unichamp_state )
+ADDRESS_MAP_START(unichamp_state::unichamp_mem)
ADDRESS_MAP_GLOBAL_MASK(0x1FFF) //B13/B14/B15 are grounded!
AM_RANGE(0x0000, 0x00FF) AM_READWRITE8(unichamp_gicram_r, unichamp_gicram_w, 0x00ff)
AM_RANGE(0x0100, 0x07FF) AM_READWRITE(unichamp_trapl_r, unichamp_trapl_w)
diff --git a/src/mame/drivers/unico.cpp b/src/mame/drivers/unico.cpp
index 0388f7595ab..c7c8a71e735 100644
--- a/src/mame/drivers/unico.cpp
+++ b/src/mame/drivers/unico.cpp
@@ -56,7 +56,7 @@ WRITE16_MEMBER(unico_state::burglarx_sound_bank_w)
}
}
-static ADDRESS_MAP_START( burglarx_map, AS_PROGRAM, 16, unico_state )
+ADDRESS_MAP_START(unico_state::burglarx_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("INPUTS")
@@ -141,7 +141,7 @@ READ16_MEMBER(unico_state::unico_guny_1_msb_r)
return ((y&0xff) ^ (m_screen->frame_number()&1))<<8;
}
-static ADDRESS_MAP_START( zeropnt_map, AS_PROGRAM, 16, unico_state )
+ADDRESS_MAP_START(unico_state::zeropnt_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM
AM_RANGE(0xef0000, 0xefffff) AM_RAM // RAM
AM_RANGE(0x800030, 0x800031) AM_WRITENOP // ? 0
@@ -213,7 +213,7 @@ WRITE32_MEMBER(unico_state::zeropnt2_eeprom_w)
}
}
-static ADDRESS_MAP_START( zeropnt2_map, AS_PROGRAM, 32, unico_state )
+ADDRESS_MAP_START(unico_state::zeropnt2_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM
AM_RANGE(0x800018, 0x80001b) AM_READ_PORT("SYSTEM")
AM_RANGE(0x800024, 0x800027) AM_DEVREADWRITE8("oki1", okim6295_device, read, write, 0x00ff0000) // Sound
diff --git a/src/mame/drivers/unior.cpp b/src/mame/drivers/unior.cpp
index 4e0b26a9aca..a5316a103a0 100644
--- a/src/mame/drivers/unior.cpp
+++ b/src/mame/drivers/unior.cpp
@@ -76,6 +76,8 @@ public:
I8275_DRAW_CHARACTER_MEMBER(display_pixels);
void unior(machine_config &config);
+ void unior_io(address_map &map);
+ void unior_mem(address_map &map);
private:
uint8_t m_4c;
uint8_t m_4e;
@@ -88,13 +90,13 @@ private:
required_region_ptr<u8> m_p_vram;
};
-static ADDRESS_MAP_START( unior_mem, AS_PROGRAM, 8, unior_state )
+ADDRESS_MAP_START(unior_state::unior_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xffff) AM_ROM AM_WRITE(vram_w) // main video
ADDRESS_MAP_END
-static ADDRESS_MAP_START( unior_io, AS_IO, 8, unior_state )
+ADDRESS_MAP_START(unior_state::unior_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x30, 0x38) AM_DEVREADWRITE("dma", i8257_device, read, write) // dma data
diff --git a/src/mame/drivers/unistar.cpp b/src/mame/drivers/unistar.cpp
index b312bbf343f..b9903f5e95e 100644
--- a/src/mame/drivers/unistar.cpp
+++ b/src/mame/drivers/unistar.cpp
@@ -30,6 +30,8 @@ public:
uint32_t screen_update_unistar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void unistar(machine_config &config);
+ void unistar_io(address_map &map);
+ void unistar_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -37,13 +39,13 @@ private:
};
-static ADDRESS_MAP_START(unistar_mem, AS_PROGRAM, 8, unistar_state)
+ADDRESS_MAP_START(unistar_state::unistar_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(unistar_io, AS_IO, 8, unistar_state)
+ADDRESS_MAP_START(unistar_state::unistar_io)
//ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x8c, 0x8d) AM_DEVREADWRITE("stc", am9513_device, read8, write8)
diff --git a/src/mame/drivers/univac.cpp b/src/mame/drivers/univac.cpp
index de334fdafa4..064cac27e8b 100644
--- a/src/mame/drivers/univac.cpp
+++ b/src/mame/drivers/univac.cpp
@@ -87,6 +87,8 @@ public:
u32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void uts20(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -186,14 +188,14 @@ WRITE8_MEMBER( univac_state::porte6_w )
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, univac_state )
+ADDRESS_MAP_START(univac_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x4fff ) AM_ROM AM_REGION("roms", 0)
AM_RANGE( 0x8000, 0xbfff ) AM_READWRITE(bank_r, bank_w)
AM_RANGE( 0xc000, 0xffff ) AM_RAM_WRITE(ram_w) AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, univac_state )
+ADDRESS_MAP_START(univac_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("uart", z80sio_device, cd_ba_r, cd_ba_w)
diff --git a/src/mame/drivers/unixpc.cpp b/src/mame/drivers/unixpc.cpp
index 6b30aec405e..5928a443939 100644
--- a/src/mame/drivers/unixpc.cpp
+++ b/src/mame/drivers/unixpc.cpp
@@ -76,6 +76,8 @@ public:
required_shared_ptr<uint16_t> m_videoram;
void unixpc(machine_config &config);
+ void ramrombank_map(address_map &map);
+ void unixpc_mem(address_map &map);
private:
uint16_t *m_ramptr;
uint32_t m_ramsize;
@@ -273,7 +275,7 @@ uint32_t unixpc_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( unixpc_mem, AS_PROGRAM, 16, unixpc_state )
+ADDRESS_MAP_START(unixpc_state::unixpc_mem)
AM_RANGE(0x000000, 0x3fffff) AM_DEVICE("ramrombank", address_map_bank_device, amap16)
AM_RANGE(0x400000, 0x4007ff) AM_RAM AM_SHARE("mapram")
AM_RANGE(0x420000, 0x427fff) AM_RAM AM_SHARE("videoram")
@@ -293,7 +295,7 @@ static ADDRESS_MAP_START( unixpc_mem, AS_PROGRAM, 16, unixpc_state )
// e70000 / e70002 = keyboard 6850 status/control and Rx data / Tx data
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ramrombank_map, AS_PROGRAM, 16, unixpc_state )
+ADDRESS_MAP_START(unixpc_state::ramrombank_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_REGION("bootrom", 0)
AM_RANGE(0x400000, 0x7fffff) AM_READWRITE(ram_mmu_r, ram_mmu_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/unkhorse.cpp b/src/mame/drivers/unkhorse.cpp
index 3e229750444..1204c6eb629 100644
--- a/src/mame/drivers/unkhorse.cpp
+++ b/src/mame/drivers/unkhorse.cpp
@@ -55,6 +55,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(interrupt);
void horse(machine_config &config);
+ void horse_io_map(address_map &map);
+ void horse_map(address_map &map);
};
void horse_state::machine_start()
@@ -97,14 +99,14 @@ uint32_t horse_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap,
***************************************************************************/
-static ADDRESS_MAP_START( horse_map, AS_PROGRAM, 8, horse_state )
+ADDRESS_MAP_START(horse_state::horse_map)
AM_RANGE(0x0000, 0x37ff) AM_ROM
AM_RANGE(0x4000, 0x40ff) AM_DEVREADWRITE("i8155", i8155_device, memory_r, memory_w)
AM_RANGE(0x6000, 0x7fff) AM_RAM AM_SHARE("vram")
AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x0800) AM_READWRITE(colorram_r, colorram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( horse_io_map, AS_IO, 8, horse_state )
+ADDRESS_MAP_START(horse_state::horse_io_map)
AM_RANGE(0x40, 0x47) AM_DEVREADWRITE("i8155", i8155_device, io_r, io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/upscope.cpp b/src/mame/drivers/upscope.cpp
index c65bf2c95ed..cf9c04b6956 100644
--- a/src/mame/drivers/upscope.cpp
+++ b/src/mame/drivers/upscope.cpp
@@ -61,6 +61,9 @@ public:
DECLARE_DRIVER_INIT(upscope);
void upscope(machine_config &config);
+ void a500_mem(address_map &map);
+ void main_map(address_map &map);
+ void overlay_512kb_map(address_map &map);
protected:
virtual void machine_reset() override;
@@ -204,13 +207,13 @@ WRITE8_MEMBER( upscope_state::coin_counter_w )
*
*************************************/
-static ADDRESS_MAP_START( overlay_512kb_map, AS_PROGRAM, 16, upscope_state )
+ADDRESS_MAP_START(upscope_state::overlay_512kb_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x180000) AM_RAM AM_SHARE("chip_ram")
AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, upscope_state )
+ADDRESS_MAP_START(upscope_state::a500_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x1fffff) AM_DEVICE("overlay", address_map_bank_device, amap16)
AM_RANGE(0xa00000, 0xbfffff) AM_READWRITE(cia_r, cia_w)
@@ -223,7 +226,7 @@ static ADDRESS_MAP_START( a500_mem, AS_PROGRAM, 16, upscope_state )
AM_RANGE(0xf80000, 0xffffff) AM_ROM AM_REGION("kickstart", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, upscope_state )
+ADDRESS_MAP_START(upscope_state::main_map)
AM_IMPORT_FROM(a500_mem)
AM_RANGE(0xf00000, 0xf7ffff) AM_ROM AM_REGION("user2", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/usgames.cpp b/src/mame/drivers/usgames.cpp
index 223ade5326f..76bb4d11740 100644
--- a/src/mame/drivers/usgames.cpp
+++ b/src/mame/drivers/usgames.cpp
@@ -64,7 +64,7 @@ WRITE8_MEMBER(usgames_state::lamps2_w)
}
-static ADDRESS_MAP_START( usgames_map, AS_PROGRAM, 8, usgames_state )
+ADDRESS_MAP_START(usgames_state::usgames_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x2000) AM_READ_PORT("DSW")
AM_RANGE(0x2010, 0x2010) AM_READ_PORT("INPUTS")
@@ -83,7 +83,7 @@ static ADDRESS_MAP_START( usgames_map, AS_PROGRAM, 8, usgames_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( usg185_map, AS_PROGRAM, 8, usgames_state )
+ADDRESS_MAP_START(usgames_state::usg185_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("aysnd", ay8912_device, address_data_w)
AM_RANGE(0x2400, 0x2400) AM_READ_PORT("DSW")
diff --git a/src/mame/drivers/ut88.cpp b/src/mame/drivers/ut88.cpp
index 03247d1bc19..3eabca2aa25 100644
--- a/src/mame/drivers/ut88.cpp
+++ b/src/mame/drivers/ut88.cpp
@@ -38,14 +38,14 @@ static GFXDECODE_START( ut88 )
GFXDECODE_END
/* Address maps */
-static ADDRESS_MAP_START( ut88mini_mem, AS_PROGRAM, 8, ut88_state )
+ADDRESS_MAP_START(ut88_state::ut88mini_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x03ff ) AM_ROM // System ROM
AM_RANGE( 0xc000, 0xc3ff ) AM_RAM // RAM
AM_RANGE( 0x9000, 0x9fff ) AM_WRITE(ut88mini_write_led) // 7seg LED
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ut88_mem, AS_PROGRAM, 8, ut88_state )
+ADDRESS_MAP_START(ut88_state::ut88_mem)
AM_RANGE( 0x0000, 0x07ff ) AM_RAMBANK("bank1") // First bank
AM_RANGE( 0x0800, 0xdfff ) AM_RAM // RAM
AM_RANGE( 0xe000, 0xe7ff ) AM_RAM // Video RAM (not used)
@@ -54,12 +54,12 @@ static ADDRESS_MAP_START( ut88_mem, AS_PROGRAM, 8, ut88_state )
AM_RANGE( 0xf800, 0xffff ) AM_ROM // System ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ut88mini_io, AS_IO, 8, ut88_state )
+ADDRESS_MAP_START(ut88_state::ut88mini_io)
AM_RANGE( 0xA0, 0xA0) AM_READ(ut88mini_keyboard_r)
AM_RANGE( 0xA1, 0xA1) AM_READ(ut88_tape_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ut88_io, AS_IO, 8, ut88_state )
+ADDRESS_MAP_START(ut88_state::ut88_io)
AM_RANGE( 0x04, 0x07) AM_READWRITE(ut88_keyboard_r, ut88_keyboard_w)
AM_RANGE( 0xA1, 0xA1) AM_READWRITE(ut88_tape_r, ut88_sound_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/uzebox.cpp b/src/mame/drivers/uzebox.cpp
index 75557b56364..8521fe56a0e 100644
--- a/src/mame/drivers/uzebox.cpp
+++ b/src/mame/drivers/uzebox.cpp
@@ -64,6 +64,9 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(uzebox_cart);
void uzebox(machine_config &config);
+ void uzebox_data_map(address_map &map);
+ void uzebox_io_map(address_map &map);
+ void uzebox_prg_map(address_map &map);
private:
int m_vpos;
uint64_t m_line_start_cycles;
@@ -194,15 +197,15 @@ READ8_MEMBER(uzebox_state::port_d_r)
* Address maps *
\****************************************************/
-static ADDRESS_MAP_START( uzebox_prg_map, AS_PROGRAM, 8, uzebox_state )
+ADDRESS_MAP_START(uzebox_state::uzebox_prg_map)
AM_RANGE(0x0000, 0xffff) AM_ROM // 64 KB internal eprom ATmega644
ADDRESS_MAP_END
-static ADDRESS_MAP_START( uzebox_data_map, AS_DATA, 8, uzebox_state )
+ADDRESS_MAP_START(uzebox_state::uzebox_data_map)
AM_RANGE(0x0100, 0x10ff) AM_RAM // 4KB RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( uzebox_io_map, AS_IO, 8, uzebox_state )
+ADDRESS_MAP_START(uzebox_state::uzebox_io_map)
AM_RANGE(AVR8_REG_A, AVR8_REG_A) AM_READWRITE( port_a_r, port_a_w )
AM_RANGE(AVR8_REG_B, AVR8_REG_B) AM_READWRITE( port_b_r, port_b_w )
AM_RANGE(AVR8_REG_C, AVR8_REG_C) AM_READWRITE( port_c_r, port_c_w )
diff --git a/src/mame/drivers/v100.cpp b/src/mame/drivers/v100.cpp
index 96a9436cadb..ca74dd190ed 100644
--- a/src/mame/drivers/v100.cpp
+++ b/src/mame/drivers/v100.cpp
@@ -55,6 +55,8 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void v100(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_start() override;
@@ -225,13 +227,13 @@ WRITE8_MEMBER(v100_state::ppi_porta_w)
//logerror("Writing %02X to PPI port A\n", data);
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, v100_state )
+ADDRESS_MAP_START(v100_state::mem_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x4000, 0x4fff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x5000, 0x5fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, v100_state )
+ADDRESS_MAP_START(v100_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE("vtac", crt5037_device, write)
AM_RANGE(0x10, 0x10) AM_WRITE(brg_w<0>)
diff --git a/src/mame/drivers/v102.cpp b/src/mame/drivers/v102.cpp
index 464a2f96c8b..03943feee47 100644
--- a/src/mame/drivers/v102.cpp
+++ b/src/mame/drivers/v102.cpp
@@ -31,6 +31,9 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void v102(machine_config &config);
+ void io_map(address_map &map);
+ void kbd_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_region_ptr<u8> m_p_chargen;
@@ -43,7 +46,7 @@ u32 v102_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, v102_state )
+ADDRESS_MAP_START(v102_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -51,7 +54,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, v102_state )
AM_RANGE(0xb800, 0xb9ff) AM_DEVREADWRITE("eeprom", eeprom_parallel_28xx_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, v102_state )
+ADDRESS_MAP_START(v102_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
//AM_RANGE(0x00, 0x3f) AM_DEVREADWRITE("vpac", crt9007_device, read, write)
AM_RANGE(0x18, 0x19) AM_WRITENOP
@@ -63,7 +66,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8, v102_state )
//AM_RANGE(0xbf, 0xbf) ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kbd_map, AS_PROGRAM, 8, v102_state )
+ADDRESS_MAP_START(v102_state::kbd_map)
AM_RANGE(0x000, 0x7ff) AM_ROM AM_REGION("keyboard", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/v1050.cpp b/src/mame/drivers/v1050.cpp
index 9e2b8f9794f..6ce0b43f9e2 100644
--- a/src/mame/drivers/v1050.cpp
+++ b/src/mame/drivers/v1050.cpp
@@ -466,7 +466,7 @@ WRITE8_MEMBER( v1050_state::sasi_ctrl_w )
// Memory Maps
-static ADDRESS_MAP_START( v1050_mem, AS_PROGRAM, 8, v1050_state )
+ADDRESS_MAP_START(v1050_state::v1050_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1")
AM_RANGE(0x2000, 0x3fff) AM_RAMBANK("bank2")
@@ -475,7 +475,7 @@ static ADDRESS_MAP_START( v1050_mem, AS_PROGRAM, 8, v1050_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( v1050_io, AS_IO, 8, v1050_state )
+ADDRESS_MAP_START(v1050_state::v1050_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x84, 0x87) AM_DEVREADWRITE(I8255A_DISP_TAG, i8255_device, read, write)
@@ -496,7 +496,7 @@ static ADDRESS_MAP_START( v1050_io, AS_IO, 8, v1050_state )
AM_RANGE(0xe1, 0xe1) AM_DEVREAD("scsi_ctrl_in", input_buffer_device, read) AM_WRITE(sasi_ctrl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( v1050_crt_mem, AS_PROGRAM, 8, v1050_state )
+ADDRESS_MAP_START(v1050_state::v1050_crt_mem)
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(videoram_r, videoram_w) AM_SHARE("video_ram")
AM_RANGE(0x8000, 0x8000) AM_DEVWRITE(H46505_TAG, mc6845_device, address_w)
AM_RANGE(0x8001, 0x8001) AM_DEVREADWRITE(H46505_TAG, mc6845_device, register_r, register_w)
diff --git a/src/mame/drivers/v6809.cpp b/src/mame/drivers/v6809.cpp
index 8544ed5308c..7660d5d82d4 100644
--- a/src/mame/drivers/v6809.cpp
+++ b/src/mame/drivers/v6809.cpp
@@ -94,6 +94,7 @@ public:
MC6845_ON_UPDATE_ADDR_CHANGED(crtc_update_addr);
void v6809(machine_config &config);
+ void v6809_mem(address_map &map);
private:
uint16_t m_video_address;
bool m_speaker_en;
@@ -112,7 +113,7 @@ private:
};
-static ADDRESS_MAP_START(v6809_mem, AS_PROGRAM, 8, v6809_state)
+ADDRESS_MAP_START(v6809_state::v6809_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xf000) AM_MIRROR(0xfe) AM_DEVREAD("crtc", mc6845_device, status_r) AM_WRITE(v6809_address_w)
diff --git a/src/mame/drivers/vamphalf.cpp b/src/mame/drivers/vamphalf.cpp
index 61e1baf558b..0b48823d4d1 100644
--- a/src/mame/drivers/vamphalf.cpp
+++ b/src/mame/drivers/vamphalf.cpp
@@ -224,6 +224,24 @@ public:
void aoh(machine_config &config);
void coolmini(machine_config &config);
void mrkicker(machine_config &config);
+ void aoh_io(address_map &map);
+ void aoh_map(address_map &map);
+ void banked_oki_map(address_map &map);
+ void boonggab_io(address_map &map);
+ void common_32bit_map(address_map &map);
+ void common_map(address_map &map);
+ void coolmini_io(address_map &map);
+ void finalgdr_io(address_map &map);
+ void jmpbreak_io(address_map &map);
+ void misncrft_io(address_map &map);
+ void mrdig_io(address_map &map);
+ void mrkicker_io(address_map &map);
+ void mrkickera_io(address_map &map);
+ void suplup_io(address_map &map);
+ void vamphalf_io(address_map &map);
+ void wyvernwg_io(address_map &map);
+ void yorijori_32bit_map(address_map &map);
+ void yorijori_io(address_map &map);
};
READ16_MEMBER(vamphalf_state::eeprom_r)
@@ -444,28 +462,28 @@ WRITE8_MEMBER( vamphalf_state::qs1000_p3_w )
}
-static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::common_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("wram")
AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_SHARE("tiles")
AM_RANGE(0x80000000, 0x8000ffff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( common_32bit_map, AS_PROGRAM, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::common_32bit_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("wram32")
AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_SHARE("tiles32")
AM_RANGE(0x80000000, 0x8000ffff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette")
AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yorijori_32bit_map, AS_PROGRAM, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::yorijori_32bit_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("wram32")
AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_SHARE("tiles32")
AM_RANGE(0x80000000, 0x8000ffff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette")
AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vamphalf_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::vamphalf_io)
AM_RANGE(0x0c0, 0x0c1) AM_NOP // return 0, when oki chip is read / written
AM_RANGE(0x0c2, 0x0c3) AM_DEVREADWRITE8("oki1", okim6295_device, read, write, 0x00ff)
AM_RANGE(0x140, 0x143) AM_DEVWRITE8("ymsnd", ym2151_device, register_w, 0x00ff)
@@ -477,7 +495,7 @@ static ADDRESS_MAP_START( vamphalf_io, AS_IO, 16, vamphalf_state )
AM_RANGE(0x608, 0x60b) AM_WRITE(eeprom_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( misncrft_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::misncrft_io)
AM_RANGE(0x100, 0x103) AM_WRITE(flipscreen_w)
AM_RANGE(0x200, 0x203) AM_READ_PORT("P1_P2")
AM_RANGE(0x240, 0x243) AM_READ_PORT("SYSTEM")
@@ -486,7 +504,7 @@ static ADDRESS_MAP_START( misncrft_io, AS_IO, 16, vamphalf_state )
AM_RANGE(0x580, 0x583) AM_READ(eeprom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( coolmini_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::coolmini_io)
AM_RANGE(0x200, 0x203) AM_WRITE(flipscreen_w)
AM_RANGE(0x300, 0x303) AM_READ_PORT("SYSTEM")
AM_RANGE(0x304, 0x307) AM_READ_PORT("P1_P2")
@@ -498,12 +516,12 @@ static ADDRESS_MAP_START( coolmini_io, AS_IO, 16, vamphalf_state )
AM_RANGE(0x7c0, 0x7c3) AM_READ(eeprom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrkicker_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::mrkicker_io)
AM_RANGE(0x002, 0x003) AM_WRITE(mrkicker_oki_bank_w)
AM_IMPORT_FROM(coolmini_io)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( suplup_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::suplup_io)
AM_RANGE(0x020, 0x023) AM_WRITE(eeprom_w)
AM_RANGE(0x040, 0x043) AM_READ_PORT("P1_P2")
AM_RANGE(0x060, 0x063) AM_READ_PORT("SYSTEM")
@@ -514,7 +532,7 @@ static ADDRESS_MAP_START( suplup_io, AS_IO, 16, vamphalf_state )
AM_RANGE(0x100, 0x103) AM_READ(eeprom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wyvernwg_io, AS_IO, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::wyvernwg_io)
AM_RANGE(0x1800, 0x1803) AM_READWRITE(wyvernwg_prot_r, wyvernwg_prot_w)
AM_RANGE(0x2000, 0x2003) AM_WRITE(flipscreen32_w)
AM_RANGE(0x2800, 0x2803) AM_READ_PORT("P1_P2")
@@ -524,7 +542,7 @@ static ADDRESS_MAP_START( wyvernwg_io, AS_IO, 32, vamphalf_state )
AM_RANGE(0x7c00, 0x7c03) AM_READ(eeprom32_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( finalgdr_io, AS_IO, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::finalgdr_io)
AM_RANGE(0x2400, 0x2403) AM_READ(finalgdr_prot_r)
AM_RANGE(0x2800, 0x2803) AM_WRITE(finalgdr_backupram_bank_w)
AM_RANGE(0x2c00, 0x2dff) AM_READWRITE(finalgdr_backupram_r, finalgdr_backupram_w)
@@ -541,7 +559,7 @@ static ADDRESS_MAP_START( finalgdr_io, AS_IO, 32, vamphalf_state )
AM_RANGE(0x60a0, 0x60a3) AM_WRITE(finalgdr_oki_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrkickera_io, AS_IO, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::mrkickera_io)
AM_RANGE(0x2400, 0x2403) AM_READ(eeprom32_r)
AM_RANGE(0x4000, 0x4003) AM_READNOP //?
AM_RANGE(0x4000, 0x4003) AM_WRITE(finalgdr_eeprom_w)
@@ -557,7 +575,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( jmpbreak_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::jmpbreak_io)
AM_RANGE(0x0c0, 0x0c3) AM_NOP // ?
AM_RANGE(0x100, 0x103) AM_WRITENOP // ?
AM_RANGE(0x240, 0x243) AM_READ_PORT("P1_P2")
@@ -570,7 +588,7 @@ static ADDRESS_MAP_START( jmpbreak_io, AS_IO, 16, vamphalf_state )
AM_RANGE(0x684, 0x687) AM_DEVREADWRITE8("ymsnd", ym2151_device, status_r, data_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mrdig_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::mrdig_io)
AM_RANGE(0x500, 0x503) AM_READ_PORT("P1_P2")
AM_RANGE(0x3c0, 0x3c3) AM_WRITE(eeprom_w)
AM_RANGE(0x180, 0x183) AM_READ(eeprom_r)
@@ -581,7 +599,7 @@ static ADDRESS_MAP_START( mrdig_io, AS_IO, 16, vamphalf_state )
AM_RANGE(0x0c4, 0x0c7) AM_DEVREADWRITE8("ymsnd", ym2151_device, status_r, data_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aoh_map, AS_PROGRAM, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::aoh_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("wram32")
AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_SHARE("tiles32")
AM_RANGE(0x80000000, 0x8000ffff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette")
@@ -590,7 +608,7 @@ static ADDRESS_MAP_START( aoh_map, AS_PROGRAM, 32, vamphalf_state )
AM_RANGE(0xffc00000, 0xffffffff) AM_ROM AM_REGION("user1",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( aoh_io, AS_IO, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::aoh_io)
AM_RANGE(0x0480, 0x0483) AM_WRITE(eeprom32_w)
AM_RANGE(0x0620, 0x0623) AM_DEVREADWRITE8("oki2", okim6295_device, read, write, 0x0000ff00)
AM_RANGE(0x0660, 0x0663) AM_DEVREADWRITE8("oki_1", okim6295_device, read, write, 0x0000ff00)
@@ -598,7 +616,7 @@ static ADDRESS_MAP_START( aoh_io, AS_IO, 32, vamphalf_state )
AM_RANGE(0x0680, 0x0683) AM_WRITE(aoh_oki_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( boonggab_io, AS_IO, 16, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::boonggab_io)
AM_RANGE(0x0c0, 0x0c3) AM_READ(eeprom_r)
AM_RANGE(0x200, 0x203) AM_NOP // seems unused
AM_RANGE(0x300, 0x303) AM_WRITE(flipscreen_w)
@@ -614,10 +632,10 @@ static ADDRESS_MAP_START( boonggab_io, AS_IO, 16, vamphalf_state )
AM_RANGE(0x744, 0x747) AM_DEVREADWRITE8("ymsnd", ym2151_device, status_r, data_w, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( yorijori_io, AS_IO, 32, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::yorijori_io)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( banked_oki_map, 0, 8, vamphalf_state )
+ADDRESS_MAP_START(vamphalf_state::banked_oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vaportra.cpp b/src/mame/drivers/vaportra.cpp
index 03fd01cb5bc..7f1ac4dc098 100644
--- a/src/mame/drivers/vaportra.cpp
+++ b/src/mame/drivers/vaportra.cpp
@@ -70,7 +70,7 @@ READ16_MEMBER(vaportra_state::vaportra_control_r)
/******************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vaportra_state )
+ADDRESS_MAP_START(vaportra_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x100000, 0x100003) AM_WRITE(vaportra_priority_w)
AM_RANGE(0x100006, 0x100007) AM_WRITE(vaportra_sound_w)
@@ -98,7 +98,7 @@ READ8_MEMBER(vaportra_state::vaportra_soundlatch_r)
return m_soundlatch->read(space, offset);
}
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vaportra_state )
+ADDRESS_MAP_START(vaportra_state::sound_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_device, read, write)
diff --git a/src/mame/drivers/vastar.cpp b/src/mame/drivers/vastar.cpp
index 72894f6c460..fcffdf37afa 100644
--- a/src/mame/drivers/vastar.cpp
+++ b/src/mame/drivers/vastar.cpp
@@ -140,7 +140,7 @@ WRITE_LINE_MEMBER(vastar_state::nmi_mask_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vastar_state )
+ADDRESS_MAP_START(vastar_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(bg2videoram_w) AM_SHARE("bg2videoram") AM_MIRROR(0x2000)
AM_RANGE(0x9000, 0x9fff) AM_RAM_WRITE(bg1videoram_w) AM_SHARE("bg1videoram") AM_MIRROR(0x2000)
@@ -150,13 +150,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vastar_state )
AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_port_map, AS_IO, 8, vastar_state )
+ADDRESS_MAP_START(vastar_state::main_port_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x07) AM_DEVWRITE("mainlatch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, vastar_state )
+ADDRESS_MAP_START(vastar_state::cpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x8000, 0x8000) AM_READ_PORT("P2")
@@ -164,7 +164,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, vastar_state )
AM_RANGE(0x8080, 0x8080) AM_READ_PORT("SYSTEM")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_port_map, AS_IO, 8, vastar_state )
+ADDRESS_MAP_START(vastar_state::cpu2_port_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_device, data_r)
diff --git a/src/mame/drivers/vax11.cpp b/src/mame/drivers/vax11.cpp
index 6d27e229fc9..af30b8493d5 100644
--- a/src/mame/drivers/vax11.cpp
+++ b/src/mame/drivers/vax11.cpp
@@ -92,6 +92,7 @@ public:
uint8_t m_term_data;
uint16_t m_term_status;
void vax11(machine_config &config);
+ void vax11_mem(address_map &map);
};
WRITE16_MEMBER(vax11_state::term_w)
@@ -115,7 +116,7 @@ READ16_MEMBER(vax11_state::term_rx_status_r)
return m_term_status;
}
-static ADDRESS_MAP_START(vax11_mem, AS_PROGRAM, 16, vax11_state)
+ADDRESS_MAP_START(vax11_state::vax11_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xbfff ) AM_RAM // RAM
AM_RANGE( 0xc000, 0xd7ff ) AM_ROM
diff --git a/src/mame/drivers/vball.cpp b/src/mame/drivers/vball.cpp
index 6f749d1ae47..38abc99d6aa 100644
--- a/src/mame/drivers/vball.cpp
+++ b/src/mame/drivers/vball.cpp
@@ -197,7 +197,7 @@ WRITE8_MEMBER(vball_state::scrollx_lo_w)
//Cheaters note: Scores are stored in ram @ 0x57-0x58 (though the space is used for other things between matches)
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vball_state )
+ADDRESS_MAP_START(vball_state::main_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x08ff) AM_RAM AM_SHARE("spriteram")
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("P1")
@@ -219,7 +219,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vball_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vball_state )
+ADDRESS_MAP_START(vball_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/vboy.cpp b/src/mame/drivers/vboy.cpp
index cd27537f9d3..131e4936697 100644
--- a/src/mame/drivers/vboy.cpp
+++ b/src/mame/drivers/vboy.cpp
@@ -226,6 +226,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(timer_pad_tick);
TIMER_DEVICE_CALLBACK_MEMBER(vboy_scanlineL);
void vboy(machine_config &config);
+ void vboy_io(address_map &map);
+ void vboy_mem(address_map &map);
};
@@ -1092,7 +1094,7 @@ WRITE8_MEMBER( vboy_state::rfb0_w ) { m_r_frame_0[offset] = data; }
WRITE8_MEMBER( vboy_state::rfb1_w ) { m_r_frame_1[offset] = data; }
-static ADDRESS_MAP_START( vboy_mem, AS_PROGRAM, 32, vboy_state )
+ADDRESS_MAP_START(vboy_state::vboy_mem)
ADDRESS_MAP_GLOBAL_MASK(0x07ffffff)
AM_RANGE( 0x00000000, 0x00005fff ) AM_READWRITE8(lfb0_r, lfb0_w,0xffffffff) // L frame buffer 0
AM_RANGE( 0x00006000, 0x00007fff ) AM_READWRITE16(font0_r, font0_w, 0xffffffff) // Font 0-511
@@ -1121,7 +1123,7 @@ static ADDRESS_MAP_START( vboy_mem, AS_PROGRAM, 32, vboy_state )
// AM_RANGE( 0x07000000, 0x071fffff ) AM_MIRROR(0x0e00000) AM_DEVREAD("cartslot", vboy_cart_slot_device, read_cart) /* ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vboy_io, AS_IO, 32, vboy_state )
+ADDRESS_MAP_START(vboy_state::vboy_io)
ADDRESS_MAP_GLOBAL_MASK(0x07ffffff)
AM_RANGE( 0x00000000, 0x00005fff ) AM_RAM AM_SHARE("l_frame_0") // L frame buffer 0
AM_RANGE( 0x00006000, 0x00007fff ) AM_READWRITE16(font0_r, font0_w, 0xffffffff) // Font 0-511
diff --git a/src/mame/drivers/vc4000.cpp b/src/mame/drivers/vc4000.cpp
index cc0a3c05bf5..748dc74391a 100644
--- a/src/mame/drivers/vc4000.cpp
+++ b/src/mame/drivers/vc4000.cpp
@@ -184,7 +184,7 @@ READ8_MEMBER( vc4000_state::elektor_cass_r )
return (m_cassette->input() > 0.03) ? 0xff : 0x7f;
}
-static ADDRESS_MAP_START( vc4000_mem, AS_PROGRAM, 8, vc4000_state )
+ADDRESS_MAP_START(vc4000_state::vc4000_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x07ff) AM_ROM
@@ -192,7 +192,7 @@ static ADDRESS_MAP_START( vc4000_mem, AS_PROGRAM, 8, vc4000_state )
AM_RANGE(0x1700, 0x17ff) AM_READWRITE(vc4000_video_r, vc4000_video_w) AM_MIRROR(0x0800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(elektor_mem, AS_PROGRAM, 8, vc4000_state)
+ADDRESS_MAP_START(vc4000_state::elektor_mem)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x07ff) AM_ROM
diff --git a/src/mame/drivers/vcombat.cpp b/src/mame/drivers/vcombat.cpp
index 0f131cd054c..f9a1432d416 100644
--- a/src/mame/drivers/vcombat.cpp
+++ b/src/mame/drivers/vcombat.cpp
@@ -140,6 +140,10 @@ public:
required_device<dac_word_interface> m_dac;
void shadfgtr(machine_config &config);
void vcombat(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void vid_0_map(address_map &map);
+ void vid_1_map(address_map &map);
};
uint32_t vcombat_state::update_screen(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect, int index)
@@ -351,7 +355,7 @@ WRITE16_MEMBER(vcombat_state::vcombat_dac_w)
fprintf(stderr, "dac overflow %04x\n", data & 0x801f);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vcombat_state )
+ADDRESS_MAP_START(vcombat_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
AM_RANGE(0x300000, 0x30ffff) AM_WRITE(main_video_write)
@@ -386,7 +390,7 @@ ADDRESS_MAP_END
/* The first i860 - middle board */
-static ADDRESS_MAP_START( vid_0_map, AS_PROGRAM, 64, vcombat_state )
+ADDRESS_MAP_START(vcombat_state::vid_0_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM_WRITE(v0_fb_w) /* Shared framebuffer - half of the bits lost to 32-bit bus */
AM_RANGE(0x20000000, 0x20000007) AM_RAM AM_SHARE("share6") /* M0<-P0 com 1 (0x440000 in 68k-land) */
AM_RANGE(0x40000000, 0x401fffff) AM_ROM AM_REGION("gfx", 0)
@@ -397,7 +401,7 @@ ADDRESS_MAP_END
/* The second i860 - top board */
-static ADDRESS_MAP_START( vid_1_map, AS_PROGRAM, 64, vcombat_state )
+ADDRESS_MAP_START(vcombat_state::vid_1_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM_WRITE(v1_fb_w) /* Half of the bits lost to 32-bit bus */
AM_RANGE(0x20000000, 0x20000007) AM_RAM AM_SHARE("share8") /* M0->P1 com 1 (0x540000 in 68k-land) */
AM_RANGE(0x40000000, 0x401fffff) AM_ROM AM_REGION("gfx", 0)
@@ -408,7 +412,7 @@ ADDRESS_MAP_END
/* Sound CPU */
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, vcombat_state )
+ADDRESS_MAP_START(vcombat_state::sound_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM
AM_RANGE(0x0c0000, 0x0c0001) AM_WRITE(vcombat_dac_w)
diff --git a/src/mame/drivers/vcs80.cpp b/src/mame/drivers/vcs80.cpp
index 867dc327b40..6a7e27515e6 100644
--- a/src/mame/drivers/vcs80.cpp
+++ b/src/mame/drivers/vcs80.cpp
@@ -65,16 +65,16 @@ WRITE8_MEMBER( vcs80_state::pio_w )
/* Memory Maps */
-static ADDRESS_MAP_START( vcs80_bd_mem, AS_PROGRAM, 8, vcs80_state )
+ADDRESS_MAP_START(vcs80_state::vcs80_bd_mem)
AM_RANGE(0x0000, 0x01ff) AM_ROM AM_REGION(Z80_TAG, 0)
AM_RANGE(0x0400, 0x07ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vcs80_mem, AS_PROGRAM, 8, vcs80_state )
+ADDRESS_MAP_START(vcs80_state::vcs80_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vcs80_io, AS_IO, 8, vcs80_state )
+ADDRESS_MAP_START(vcs80_state::vcs80_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vd.cpp b/src/mame/drivers/vd.cpp
index a6ce710f581..371711fbfb3 100644
--- a/src/mame/drivers/vd.cpp
+++ b/src/mame/drivers/vd.cpp
@@ -40,6 +40,8 @@ public:
DECLARE_WRITE8_MEMBER(sol_w) { };
TIMER_DEVICE_CALLBACK_MEMBER(irq);
void vd(machine_config &config);
+ void vd_io(address_map &map);
+ void vd_map(address_map &map);
protected:
// devices
@@ -59,13 +61,13 @@ READ8_MEMBER(vd_state::ack_r)
return 0; // this value is not used
}
-static ADDRESS_MAP_START( vd_map, AS_PROGRAM, 8, vd_state )
+ADDRESS_MAP_START(vd_state::vd_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x62ff) AM_RAM
AM_RANGE(0x6700, 0x67ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vd_io, AS_IO, 8, vd_state )
+ADDRESS_MAP_START(vd_state::vd_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("X0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("X1")
diff --git a/src/mame/drivers/vector06.cpp b/src/mame/drivers/vector06.cpp
index 9baf9a275fd..517ee4a32ef 100644
--- a/src/mame/drivers/vector06.cpp
+++ b/src/mame/drivers/vector06.cpp
@@ -27,26 +27,25 @@ TODO:
#include "includes/vector06.h"
#include "formats/vector06_dsk.h"
-#include "machine/i8255.h"
-#include "machine/pit8253.h"
#include "sound/wave.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
/* Address maps */
-static ADDRESS_MAP_START(vector06_mem, AS_PROGRAM, 8, vector06_state)
+ADDRESS_MAP_START(vector06_state::vector06_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE_BANK("bank1")
AM_RANGE(0x0000, 0x7fff) AM_READ_BANK("bank2")
AM_RANGE(0xa000, 0xdfff) AM_READWRITE_BANK("bank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vector06_io, AS_IO, 8, vector06_state)
+ADDRESS_MAP_START(vector06_state::vector06_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x00, 0x03) AM_DEVREADWRITE_MOD("ppi8255", i8255_device, read, write, xor<3>)
- AM_RANGE(0x04, 0x07) AM_DEVREADWRITE_MOD("ppi8255_2", i8255_device, read, write, xor<3>)
- AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE_MOD("pit8253", pit8253_device, read, write, xor<3>)
+ ;
+ map(0x00, 0x03).lrw8("ppi8255_rw", [this](address_space &space, offs_t offset, u8 mem_mask) -> u8 { return m_ppi8255->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ppi8255->write(space, offset^3, data, mem_mask); });
+ map(0x04, 0x07).lrw8("ppi8255_2_rw", [this](address_space &space, offs_t offset, u8 mem_mask) -> u8 { return m_ppi8255_2->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_ppi8255_2->write(space, offset^3, data, mem_mask); });
+ map(0x08, 0x0b).lrw8("pit8253_rw", [this](address_space &space, offs_t offset, u8 mem_mask) -> u8 { return m_pit8253->read(space, offset^3, mem_mask); }, [this](address_space &space, offs_t offset, u8 data, u8 mem_mask) { m_pit8253->write(space, offset^3, data, mem_mask); });
AM_RANGE(0x0c, 0x0c) AM_WRITE(vector06_color_set)
AM_RANGE(0x10, 0x10) AM_WRITE(vector06_ramdisk_w)
AM_RANGE(0x14, 0x15) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_address_w)
diff --git a/src/mame/drivers/vector4.cpp b/src/mame/drivers/vector4.cpp
index 9b86580b939..382458ae40d 100644
--- a/src/mame/drivers/vector4.cpp
+++ b/src/mame/drivers/vector4.cpp
@@ -25,13 +25,15 @@ public:
void vector4(machine_config &config);
+ void vector4_io(address_map &map);
+ void vector4_mem(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(vector4_mem, AS_PROGRAM, 8, vector4_state)
+ADDRESS_MAP_START(vector4_state::vector4_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xefff) AM_ROM
@@ -40,7 +42,7 @@ static ADDRESS_MAP_START(vector4_mem, AS_PROGRAM, 8, vector4_state)
AM_RANGE(0xfc00, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vector4_io, AS_IO, 8, vector4_state)
+ADDRESS_MAP_START(vector4_state::vector4_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x02, 0x02) AM_DEVREADWRITE("uart1", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/vectrex.cpp b/src/mame/drivers/vectrex.cpp
index 06c725b4d2b..9a54f86ee9e 100644
--- a/src/mame/drivers/vectrex.cpp
+++ b/src/mame/drivers/vectrex.cpp
@@ -24,7 +24,7 @@ Bruce Tomlin (hardware info)
#include "speaker.h"
-static ADDRESS_MAP_START(vectrex_map, AS_PROGRAM, 8, vectrex_state )
+ADDRESS_MAP_START(vectrex_state::vectrex_map)
AM_RANGE(0x0000, 0x7fff) AM_NOP // cart area, handled at machine_start
AM_RANGE(0xc800, 0xcbff) AM_RAM AM_MIRROR(0x0400) AM_SHARE("gce_vectorram")
AM_RANGE(0xd000, 0xd7ff) AM_READWRITE(vectrex_via_r, vectrex_via_w)
@@ -187,7 +187,7 @@ ROM_END
*****************************************************************/
-static ADDRESS_MAP_START(raaspec_map , AS_PROGRAM, 8, vectrex_state )
+ADDRESS_MAP_START(vectrex_state::raaspec_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xa000, 0xa000) AM_WRITE(raaspec_led_w)
diff --git a/src/mame/drivers/vectrix.cpp b/src/mame/drivers/vectrix.cpp
index e7b0c95bf47..fc4fb33e93b 100644
--- a/src/mame/drivers/vectrix.cpp
+++ b/src/mame/drivers/vectrix.cpp
@@ -27,17 +27,19 @@ public:
{ }
void vectrix(machine_config &config);
+void io_map(address_map &map);
+void mem_map(address_map &map);
private:
// required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, vectrix_state )
+ADDRESS_MAP_START(vectrix_state::mem_map)
AM_RANGE(0x00000,0x07fff) AM_RAM
AM_RANGE(0x0c000,0x0ffff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0xfc000,0xfffff) AM_ROM AM_REGION("roms", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, vectrix_state )
+ADDRESS_MAP_START(vectrix_state::io_map)
AM_RANGE(0x3000, 0x3000) AM_DEVREADWRITE("uart1", i8251_device, data_r, data_w)
AM_RANGE(0x3001, 0x3001) AM_DEVREADWRITE("uart1", i8251_device, status_r, control_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vega.cpp b/src/mame/drivers/vega.cpp
index fe75b923943..90662bcb5d3 100644
--- a/src/mame/drivers/vega.cpp
+++ b/src/mame/drivers/vega.cpp
@@ -169,6 +169,8 @@ public:
void draw_tilemap(screen_device& screen, bitmap_ind16& bitmap, const rectangle& cliprect);
uint32_t screen_update_vega(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void vega(machine_config &config);
+ void vega_io_map(address_map &map);
+ void vega_map(address_map &map);
};
WRITE8_MEMBER(vega_state::extern_w)
@@ -386,12 +388,12 @@ WRITE8_MEMBER(vega_state::rombank_w)
membank("bank1")->set_entry(data >>7);
}
-static ADDRESS_MAP_START( vega_map, AS_PROGRAM, 8, vega_state )
+ADDRESS_MAP_START(vega_state::vega_map)
AM_RANGE(0x000, 0x7ff) AM_ROMBANK("bank1")
AM_RANGE(0x800, 0xfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vega_io_map, AS_IO, 8, vega_state )
+ADDRESS_MAP_START(vega_state::vega_io_map)
AM_RANGE(0x00, 0xff) AM_READWRITE(extern_r, extern_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vegaeo.cpp b/src/mame/drivers/vegaeo.cpp
index a2f29a891c8..cc40a6535cd 100644
--- a/src/mame/drivers/vegaeo.cpp
+++ b/src/mame/drivers/vegaeo.cpp
@@ -50,6 +50,7 @@ public:
uint32_t screen_update_vega(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void vega(machine_config &config);
+ void vega_map(address_map &map);
};
READ8_MEMBER( vegaeo_state::qs1000_p1_r )
@@ -135,7 +136,7 @@ WRITE32_MEMBER(vegaeo_state::soundlatch_w)
}
-static ADDRESS_MAP_START( vega_map, AS_PROGRAM, 32, vegaeo_state )
+ADDRESS_MAP_START(vegaeo_state::vega_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM
AM_RANGE(0x80000000, 0x80013fff) AM_READWRITE(vega_vram_r, vega_vram_w)
AM_RANGE(0xfc000000, 0xfc0000ff) AM_DEVREADWRITE8("at28c16", at28c16_device, read, write, 0x000000ff)
diff --git a/src/mame/drivers/vegas.cpp b/src/mame/drivers/vegas.cpp
index c3017e6d098..d20808b4398 100644
--- a/src/mame/drivers/vegas.cpp
+++ b/src/mame/drivers/vegas.cpp
@@ -432,6 +432,13 @@ public:
void nbagold(machine_config &config);
void roadburn(machine_config &config);
void warfa(machine_config &config);
+ void vegas_cs2_map(address_map &map);
+ void vegas_cs3_map(address_map &map);
+ void vegas_cs4_map(address_map &map);
+ void vegas_cs5_map(address_map &map);
+ void vegas_cs6_map(address_map &map);
+ void vegas_cs7_map(address_map &map);
+ void vegas_cs8_map(address_map &map);
};
/*************************************
@@ -1652,25 +1659,25 @@ INPUT_PORTS_END
* Memory maps
*
*************************************/
-static ADDRESS_MAP_START(vegas_cs2_map, AS_PROGRAM, 32, vegas_state)
+ADDRESS_MAP_START(vegas_state::vegas_cs2_map)
AM_RANGE(0x00000000, 0x00007003) AM_READWRITE8(sio_r, sio_w, 0xffffffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vegas_cs3_map, AS_PROGRAM, 32, vegas_state)
+ADDRESS_MAP_START(vegas_state::vegas_cs3_map)
AM_RANGE(0x00000000, 0x00000003) AM_READWRITE(analog_port_r, analog_port_w)
//AM_RANGE(0x00001000, 0x00001003) AM_READWRITE(lcd_r, lcd_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vegas_cs4_map, AS_PROGRAM, 32, vegas_state)
+ADDRESS_MAP_START(vegas_state::vegas_cs4_map)
AM_RANGE(0x00000000, 0x00007fff) AM_READWRITE(timekeeper_r, timekeeper_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vegas_cs5_map, AS_PROGRAM, 32, vegas_state)
+ADDRESS_MAP_START(vegas_state::vegas_cs5_map)
AM_RANGE(0x00000000, 0x00000003) AM_READWRITE8(cpu_io_r, cpu_io_w, 0xffffffff)
AM_RANGE(0x00100000, 0x001fffff) AM_READ(unknown_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vegas_cs6_map, AS_PROGRAM, 32, vegas_state)
+ADDRESS_MAP_START(vegas_state::vegas_cs6_map)
AM_RANGE(0x00000000, 0x0000003f) AM_DEVREADWRITE("ioasic", midway_ioasic_device, packed_r, packed_w)
AM_RANGE(0x00001000, 0x00001003) AM_WRITE(asic_fifo_w)
AM_RANGE(0x00003000, 0x00003003) AM_WRITE(dcs3_fifo_full_w) // if (m_dcs_idma_cs != 0)
@@ -1678,14 +1685,14 @@ static ADDRESS_MAP_START(vegas_cs6_map, AS_PROGRAM, 32, vegas_state)
AM_RANGE(0x00007000, 0x00007003) AM_DEVREADWRITE("dcs", dcs_audio_device, dsio_idma_data_r, dsio_idma_data_w) // if (m_dcs_idma_cs == 6)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vegas_cs7_map, AS_PROGRAM, 32, vegas_state)
+ADDRESS_MAP_START(vegas_state::vegas_cs7_map)
//AM_RANGE(0x00000000, 0x00000003) AM_READWRITE8(nss_r, nss_w, 0xffffffff)
AM_RANGE(0x00001000, 0x0000100f) AM_READWRITE(ethernet_r, ethernet_w)
AM_RANGE(0x00005000, 0x00005003) AM_DEVWRITE("dcs", dcs_audio_device, dsio_idma_addr_w) // if (m_dcs_idma_cs == 7)
AM_RANGE(0x00007000, 0x00007003) AM_DEVREADWRITE("dcs", dcs_audio_device, dsio_idma_data_r, dsio_idma_data_w) // if (m_dcs_idma_cs == 7)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vegas_cs8_map, AS_PROGRAM, 32, vegas_state)
+ADDRESS_MAP_START(vegas_state::vegas_cs8_map)
AM_RANGE(0x01000000, 0x0100001f) AM_DEVREADWRITE8("uart1", ns16550_device, ins8250_r, ins8250_w, 0xff) // Serial ttyS01 (TL16C552 CS0)
AM_RANGE(0x01400000, 0x0140001f) AM_DEVREADWRITE8("uart2", ns16550_device, ins8250_r, ins8250_w, 0xff) // Serial ttyS02 (TL16C552 CS1)
AM_RANGE(0x01800000, 0x0180001f) AM_READWRITE8(parallel_r, parallel_w, 0xff) // Parallel UART (TL16C552 CS2)
@@ -1711,12 +1718,12 @@ MACHINE_CONFIG_START(vegas_state::vegascore)
MCFG_VRC5074_ADD(PCI_ID_NILE, ":maincpu")
MCFG_VRC5074_SET_SDRAM(0, 0x00800000)
- MCFG_VRC5074_SET_CS(2, vegas_cs2_map)
- MCFG_VRC5074_SET_CS(3, vegas_cs3_map)
- MCFG_VRC5074_SET_CS(4, vegas_cs4_map)
- MCFG_VRC5074_SET_CS(5, vegas_cs5_map)
- MCFG_VRC5074_SET_CS(6, vegas_cs6_map)
- MCFG_VRC5074_SET_CS(7, vegas_cs7_map)
+ MCFG_VRC5074_SET_CS(2, vegas_state::vegas_cs2_map)
+ MCFG_VRC5074_SET_CS(3, vegas_state::vegas_cs3_map)
+ MCFG_VRC5074_SET_CS(4, vegas_state::vegas_cs4_map)
+ MCFG_VRC5074_SET_CS(5, vegas_state::vegas_cs5_map)
+ MCFG_VRC5074_SET_CS(6, vegas_state::vegas_cs6_map)
+ MCFG_VRC5074_SET_CS(7, vegas_state::vegas_cs7_map)
MCFG_IDE_PCI_ADD(PCI_ID_IDE, 0x10950646, 0x05, 0x0)
MCFG_IDE_PCI_IRQ_HANDLER(DEVWRITELINE(PCI_ID_NILE, vrc5074_device, pci_intr_d))
@@ -1794,7 +1801,7 @@ MACHINE_CONFIG_DERIVED(vegas_state::denver, vegascore)
MCFG_DEVICE_MODIFY(PCI_ID_NILE)
MCFG_VRC5074_SET_SDRAM(0, 0x02000000)
- MCFG_VRC5074_SET_CS(8, vegas_cs8_map)
+ MCFG_VRC5074_SET_CS(8, vegas_state::vegas_cs8_map)
MCFG_DEVICE_REMOVE(PCI_ID_VIDEO)
MCFG_VOODOO_PCI_ADD(PCI_ID_VIDEO, TYPE_VOODOO_3, ":maincpu")
diff --git a/src/mame/drivers/vendetta.cpp b/src/mame/drivers/vendetta.cpp
index c0a0693595d..cfece5a39ec 100644
--- a/src/mame/drivers/vendetta.cpp
+++ b/src/mame/drivers/vendetta.cpp
@@ -199,7 +199,7 @@ READ8_MEMBER(vendetta_state::z80_irq_r)
/********************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vendetta_state )
+ADDRESS_MAP_START(vendetta_state::main_map)
AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1")
AM_RANGE(0x2000, 0x3fff) AM_RAM
@@ -227,7 +227,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vendetta_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x38000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( esckids_map, AS_PROGRAM, 8, vendetta_state )
+ADDRESS_MAP_START(vendetta_state::esckids_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM // 053248 64K SRAM
/* what is the desired effect of overlapping these memory regions anyway? */
AM_RANGE(0x2000, 0x5fff) AM_DEVREADWRITE("k052109", k052109_device, read, write) // 052109 (Tilemap)
@@ -253,17 +253,17 @@ static ADDRESS_MAP_START( esckids_map, AS_PROGRAM, 8, vendetta_state )
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("maincpu", 0x18000) // 053248 '975r01' 1M ROM (0x18000-0x1ffff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( videobank0_map, AS_PROGRAM, 8, vendetta_state )
+ADDRESS_MAP_START(vendetta_state::videobank0_map)
AM_RANGE(0x0000, 0x0fff) AM_DEVREADWRITE("k052109", k052109_device, read, write)
AM_RANGE(0x1000, 0x1fff) AM_DEVREADWRITE("k053246", k053247_device, k053247_r, k053247_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( videobank1_map, AS_PROGRAM, 8, vendetta_state )
+ADDRESS_MAP_START(vendetta_state::videobank1_map)
AM_RANGE(0x0000, 0x0fff) AM_READWRITE(K052109_r, K052109_w)
AM_RANGE(0x1000, 0x1fff) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vendetta_state )
+ADDRESS_MAP_START(vendetta_state::sound_map)
AM_RANGE(0x0000, 0xefff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/vertigo.cpp b/src/mame/drivers/vertigo.cpp
index 74207a0a84f..c64c1a77c37 100644
--- a/src/mame/drivers/vertigo.cpp
+++ b/src/mame/drivers/vertigo.cpp
@@ -35,7 +35,7 @@
*
*************************************/
-static ADDRESS_MAP_START( vertigo_map, AS_PROGRAM, 16, vertigo_state )
+ADDRESS_MAP_START(vertigo_state::vertigo_map)
AM_RANGE(0x000000, 0x000007) AM_ROM
AM_RANGE(0x000008, 0x001fff) AM_RAM AM_MIRROR(0x010000)
AM_RANGE(0x002000, 0x003fff) AM_RAM AM_SHARE("vectorram")
@@ -52,7 +52,7 @@ static ADDRESS_MAP_START( vertigo_map, AS_PROGRAM, 16, vertigo_state )
AM_RANGE(0x800000, 0x81ffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( exidy440_audio_map, AS_PROGRAM, 8, exidy440_sound_device )
+ADDRESS_MAP_START(vertigo_state::exidy440_audio_map)
AM_RANGE(0x0000, 0x7fff) AM_NOP
AM_RANGE(0x8000, 0x801f) AM_MIRROR(0x03e0) AM_DEVREADWRITE("custom", exidy440_sound_device, m6844_r, m6844_w)
AM_RANGE(0x8400, 0x840f) AM_MIRROR(0x03f0) AM_DEVREADWRITE("custom", exidy440_sound_device, sound_volume_r, sound_volume_w)
@@ -74,7 +74,7 @@ ADDRESS_MAP_END
*************************************/
#if 0
-static ADDRESS_MAP_START( vertigo_motor, AS_PROGRAM, 8, vertigo_state )
+ADDRESS_MAP_START(vertigo_state::vertigo_motor)
AM_RANGE(0x010, 0x07f) AM_RAM
AM_RANGE(0x080, 0x7ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vg5k.cpp b/src/mame/drivers/vg5k.cpp
index 8429ec4a871..74bb0dae6e4 100644
--- a/src/mame/drivers/vg5k.cpp
+++ b/src/mame/drivers/vg5k.cpp
@@ -103,6 +103,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(z80_irq);
TIMER_DEVICE_CALLBACK_MEMBER(vg5k_scanline);
void vg5k(machine_config &config);
+ void vg5k_io(address_map &map);
+ void vg5k_mem(address_map &map);
};
@@ -157,14 +159,14 @@ WRITE8_MEMBER ( vg5k_state::cassette_w )
}
-static ADDRESS_MAP_START( vg5k_mem, AS_PROGRAM, 8, vg5k_state)
+ADDRESS_MAP_START(vg5k_state::vg5k_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4000, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0xffff ) AM_NOP /* messram expansion memory */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vg5k_io , AS_IO, 8, vg5k_state)
+ADDRESS_MAP_START(vg5k_state::vg5k_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK (0xff)
diff --git a/src/mame/drivers/vgmplay.cpp b/src/mame/drivers/vgmplay.cpp
index 1c4c361c0ca..a662cc6a1a3 100644
--- a/src/mame/drivers/vgmplay.cpp
+++ b/src/mame/drivers/vgmplay.cpp
@@ -185,6 +185,22 @@ public:
DECLARE_WRITE8_MEMBER(scc_w);
void vgmplay(machine_config &config);
+ void c352_map(address_map &map);
+ void file_map(address_map &map);
+ void h6280_io_map(address_map &map);
+ void h6280_map(address_map &map);
+ void k053260_map(address_map &map);
+ void k054539a_map(address_map &map);
+ void k054539b_map(address_map &map);
+ void multipcma_map(address_map &map);
+ void multipcmb_map(address_map &map);
+ void nescpu_map(address_map &map);
+ void okim6295a_map(address_map &map);
+ void okim6295b_map(address_map &map);
+ void qsound_map(address_map &map);
+ void segapcm_map(address_map &map);
+ void soundchips16_map(address_map &map);
+ void soundchips_map(address_map &map);
private:
std::vector<uint8_t> m_file_data;
required_device<bitbanger_device> m_file;
@@ -1454,15 +1470,15 @@ WRITE8_MEMBER(vgmplay_state::scc_w)
static INPUT_PORTS_START( vgmplay )
INPUT_PORTS_END
-static ADDRESS_MAP_START( file_map, AS_PROGRAM, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::file_map)
AM_RANGE(0x00000000, 0xffffffff) AM_READ(file_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soundchips16_map, AS_IO16, 16, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::soundchips16_map)
AM_RANGE(vgmplay_device::A_C352, vgmplay_device::A_C352+0x7fff) AM_DEVWRITE ("c352", c352_device, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( soundchips_map, AS_IO, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::soundchips_map)
AM_RANGE(vgmplay_device::REG_SIZE, vgmplay_device::REG_SIZE+3) AM_READ(file_size_r)
AM_RANGE(vgmplay_device::A_YM2612, vgmplay_device::A_YM2612+3) AM_DEVWRITE ("ym2612", ym2612_device, write)
AM_RANGE(vgmplay_device::A_YM2151, vgmplay_device::A_YM2151+1) AM_DEVWRITE ("ym2151", ym2151_device, write)
@@ -1513,55 +1529,55 @@ static ADDRESS_MAP_START( soundchips_map, AS_IO, 8, vgmplay_state )
AM_RANGE(vgmplay_device::A_K051649, vgmplay_device::A_K051649+0xf) AM_WRITE (scc_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( segapcm_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::segapcm_map)
AM_RANGE(0, 0x1fffff) AM_DEVREAD("vgmplay", vgmplay_device, segapcm_rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multipcma_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::multipcma_map)
AM_RANGE(0, 0x3fffff) AM_DEVREAD("vgmplay", vgmplay_device, multipcm_rom_r<0>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( multipcmb_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::multipcmb_map)
AM_RANGE(0, 0x3fffff) AM_DEVREAD("vgmplay", vgmplay_device, multipcm_rom_r<1>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( k053260_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::k053260_map)
AM_RANGE(0, 0x1fffff) AM_DEVREAD("vgmplay", vgmplay_device, k053260_rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( okim6295a_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::okim6295a_map)
AM_RANGE(0, 0x3ffff) AM_DEVREAD("vgmplay", vgmplay_device, okim6295_rom_r<0>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( okim6295b_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::okim6295b_map)
AM_RANGE(0, 0x3ffff) AM_DEVREAD("vgmplay", vgmplay_device, okim6295_rom_r<1>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( k054539a_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::k054539a_map)
AM_RANGE(0, 0xffffff) AM_DEVREAD("vgmplay", vgmplay_device, k054539_rom_r<0>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( k054539b_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::k054539b_map)
AM_RANGE(0, 0xffffff) AM_DEVREAD("vgmplay", vgmplay_device, k054539_rom_r<1>)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( c352_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::c352_map)
AM_RANGE(0, 0xffffff) AM_DEVREAD("vgmplay", vgmplay_device, c352_rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qsound_map, 0, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::qsound_map)
AM_RANGE(0, 0xffffff) AM_DEVREAD("vgmplay", vgmplay_device, qsound_rom_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nescpu_map, AS_PROGRAM, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::nescpu_map)
AM_RANGE(0, 0xffff) AM_RAM AM_SHARE("nesapu_ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h6280_map, AS_PROGRAM, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::h6280_map)
AM_RANGE(0, 0xffff) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h6280_io_map, AS_IO, 8, vgmplay_state )
+ADDRESS_MAP_START(vgmplay_state::h6280_io_map)
AM_RANGE(0, 3) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vic10.cpp b/src/mame/drivers/vic10.cpp
index 554fb79983c..a081cf28d52 100644
--- a/src/mame/drivers/vic10.cpp
+++ b/src/mame/drivers/vic10.cpp
@@ -99,6 +99,9 @@ public:
int m_vic_irq;
int m_exp_irq;
void vic10(machine_config &config);
+ void vic10_mem(address_map &map);
+ void vic_colorram_map(address_map &map);
+ void vic_videoram_map(address_map &map);
};
@@ -242,7 +245,7 @@ READ8_MEMBER( vic10_state::vic_colorram_r )
// ADDRESS_MAP( vic10_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic10_mem, AS_PROGRAM, 8, vic10_state )
+ADDRESS_MAP_START(vic10_state::vic10_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -251,7 +254,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_videoram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_videoram_map, 0, 8, vic10_state )
+ADDRESS_MAP_START(vic10_state::vic_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(vic_videoram_r)
ADDRESS_MAP_END
@@ -260,7 +263,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_colorram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_colorram_map, 1, 8, vic10_state )
+ADDRESS_MAP_START(vic10_state::vic_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_READ(vic_colorram_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vic20.cpp b/src/mame/drivers/vic20.cpp
index 3c65ab64c5c..029a9d6b5d0 100644
--- a/src/mame/drivers/vic20.cpp
+++ b/src/mame/drivers/vic20.cpp
@@ -149,6 +149,9 @@ public:
void ntsc(machine_config &config);
void pal(machine_config &config);
void vic20(machine_config &config);
+ void vic20_mem(address_map &map);
+ void vic_colorram_map(address_map &map);
+ void vic_videoram_map(address_map &map);
};
@@ -356,7 +359,7 @@ READ8_MEMBER( vic20_state::vic_videoram_r )
// ADDRESS_MAP( vic20_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic20_mem, AS_PROGRAM, 8, vic20_state )
+ADDRESS_MAP_START(vic20_state::vic20_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -365,7 +368,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_videoram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_videoram_map, 0, 8, vic20_state )
+ADDRESS_MAP_START(vic20_state::vic_videoram_map)
AM_RANGE(0x0000, 0x3fff) AM_READ(vic_videoram_r)
ADDRESS_MAP_END
@@ -374,7 +377,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vic_colorram_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( vic_colorram_map, 1, 8, vic20_state )
+ADDRESS_MAP_START(vic20_state::vic_colorram_map)
AM_RANGE(0x000, 0x3ff) AM_RAM AM_SHARE("color_ram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vicdual.cpp b/src/mame/drivers/vicdual.cpp
index 9f2cba9237f..f85f5a0eee9 100644
--- a/src/mame/drivers/vicdual.cpp
+++ b/src/mame/drivers/vicdual.cpp
@@ -288,7 +288,7 @@ WRITE8_MEMBER(vicdual_state::depthch_io_w)
}
-static ADDRESS_MAP_START( depthch_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::depthch_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM
@@ -296,7 +296,7 @@ static ADDRESS_MAP_START( depthch_map, AS_PROGRAM, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( depthch_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::depthch_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
/* no decoder, just logic gates, so in theory the
@@ -369,7 +369,7 @@ WRITE8_MEMBER(vicdual_state::safari_io_w)
}
-static ADDRESS_MAP_START( safari_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::safari_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_NOP /* unused */
AM_RANGE(0x8000, 0x8fff) AM_MIRROR(0x3000) AM_RAM
@@ -379,7 +379,7 @@ static ADDRESS_MAP_START( safari_map, AS_PROGRAM, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( safari_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::safari_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
/* no decoder, just logic gates, so in theory the
@@ -452,7 +452,7 @@ WRITE8_MEMBER(vicdual_state::frogs_io_w)
}
-static ADDRESS_MAP_START( frogs_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::frogs_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM
@@ -460,7 +460,7 @@ static ADDRESS_MAP_START( frogs_map, AS_PROGRAM, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( frogs_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::frogs_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
/* no decoder, just logic gates, so in theory the
@@ -576,7 +576,7 @@ WRITE8_MEMBER(vicdual_state::headon_io_w)
}
-static ADDRESS_MAP_START( headon_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::headon_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x6000) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_NOP /* unused */
AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -585,7 +585,7 @@ static ADDRESS_MAP_START( headon_map, AS_PROGRAM, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( headon_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::headon_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
/* no decoder, just logic gates, so in theory the
@@ -594,7 +594,7 @@ static ADDRESS_MAP_START( headon_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sspaceat_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::sspaceat_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
/* no decoder, just logic gates, so in theory the
@@ -842,7 +842,7 @@ WRITE8_MEMBER(vicdual_state::digger_io_w)
}
-static ADDRESS_MAP_START( headon2_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::headon2_map)
AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x6000) AM_ROM
/* AM_RANGE(0x8000, 0x80ff) AM_MIRROR(0x3f00) */ /* schematics show this as battery backed RAM, but doesn't appear to be used */
AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -851,13 +851,13 @@ static ADDRESS_MAP_START( headon2_map, AS_PROGRAM, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( headon2_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::headon2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
AM_RANGE(0x00, 0x1f) AM_READWRITE(headon2_io_r, headon2_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( digger_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::digger_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x1f)
/* no decoder, just logic gates, so in theory the
@@ -1149,21 +1149,21 @@ WRITE8_MEMBER(vicdual_state::headonn_io_w)
}
-static ADDRESS_MAP_START( vicdual_dualgame_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::vicdual_dualgame_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM
AM_RANGE(0x8800, 0x8fff) AM_MIRROR(0x7000) AM_RAM_WRITE(characterram_w) AM_SHARE("characterram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( carhntds_dualgame_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::carhntds_dualgame_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM // also has part of a rom mapped at 0x4000
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM
AM_RANGE(0x8800, 0x8fff) AM_MIRROR(0x7000) AM_RAM_WRITE(characterram_w) AM_SHARE("characterram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( invho2_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::invho2_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1177,7 +1177,7 @@ static ADDRESS_MAP_START( invho2_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( invds_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::invds_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1190,7 +1190,7 @@ static ADDRESS_MAP_START( invds_io_map, AS_IO, 8, vicdual_state )
AM_RANGE(0x00, 0x7f) AM_WRITE(invds_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( carhntds_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::carhntds_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1203,7 +1203,7 @@ static ADDRESS_MAP_START( carhntds_io_map, AS_IO, 8, vicdual_state )
AM_RANGE(0x00, 0x7f) AM_WRITE(carhntds_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sspacaho_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::sspacaho_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1217,7 +1217,7 @@ static ADDRESS_MAP_START( sspacaho_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tranqgun_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::tranqgun_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("IN0")
@@ -1231,7 +1231,7 @@ static ADDRESS_MAP_START( tranqgun_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( spacetrk_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::spacetrk_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1245,7 +1245,7 @@ static ADDRESS_MAP_START( spacetrk_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( carnival_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::carnival_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1259,7 +1259,7 @@ static ADDRESS_MAP_START( carnival_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( brdrline_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::brdrline_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("IN0")
@@ -1273,7 +1273,7 @@ static ADDRESS_MAP_START( brdrline_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pulsar_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::pulsar_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1287,7 +1287,7 @@ static ADDRESS_MAP_START( pulsar_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( heiankyo_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::heiankyo_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("IN0")
@@ -1301,7 +1301,7 @@ static ADDRESS_MAP_START( heiankyo_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( alphaho_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::alphaho_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -1315,7 +1315,7 @@ static ADDRESS_MAP_START( alphaho_io_map, AS_IO, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( headonn_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::headonn_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -2224,7 +2224,7 @@ WRITE8_MEMBER(vicdual_state::samurai_io_w)
/* dual game hardware */
-static ADDRESS_MAP_START( samurai_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::samurai_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM AM_WRITE(samurai_protection_w)
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM
@@ -2232,7 +2232,7 @@ static ADDRESS_MAP_START( samurai_map, AS_PROGRAM, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( samurai_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::samurai_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x7f)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0")
@@ -2353,7 +2353,7 @@ WRITE8_MEMBER(nsub_state::nsub_io_w)
}
-static ADDRESS_MAP_START( nsub_map, AS_PROGRAM, 8, nsub_state )
+ADDRESS_MAP_START(nsub_state::nsub_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_NOP /* unused */
AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -2362,7 +2362,7 @@ static ADDRESS_MAP_START( nsub_map, AS_PROGRAM, 8, nsub_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nsub_io_map, AS_IO, 8, nsub_state )
+ADDRESS_MAP_START(nsub_state::nsub_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
/* no decoder, just logic gates, so in theory the
@@ -2540,7 +2540,7 @@ WRITE8_MEMBER(vicdual_state::invinco_io_w)
}
-static ADDRESS_MAP_START( invinco_map, AS_PROGRAM, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::invinco_map)
AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_NOP /* unused */
AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(videoram_w) AM_SHARE("videoram")
@@ -2549,7 +2549,7 @@ static ADDRESS_MAP_START( invinco_map, AS_PROGRAM, 8, vicdual_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( invinco_io_map, AS_IO, 8, vicdual_state )
+ADDRESS_MAP_START(vicdual_state::invinco_io_map)
ADDRESS_MAP_GLOBAL_MASK(0x0f)
/* no decoder, just logic gates, so in theory the
diff --git a/src/mame/drivers/victor9k.cpp b/src/mame/drivers/victor9k.cpp
index ada56ad34da..82d858be2cf 100644
--- a/src/mame/drivers/victor9k.cpp
+++ b/src/mame/drivers/victor9k.cpp
@@ -170,6 +170,7 @@ public:
void update_kback();
void victor9k(machine_config &config);
+ void victor9k_mem(address_map &map);
};
@@ -190,7 +191,7 @@ public:
// ADDRESS_MAP( victor9k_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( victor9k_mem, AS_PROGRAM, 8, victor9k_state )
+ADDRESS_MAP_START(victor9k_state::victor9k_mem)
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0x20000, 0xdffff) AM_NOP
AM_RANGE(0xe0000, 0xe0001) AM_MIRROR(0x7f00) AM_DEVREADWRITE(I8259A_TAG, pic8259_device, read, write)
diff --git a/src/mame/drivers/victory.cpp b/src/mame/drivers/victory.cpp
index 75ced2815fc..5e5f76d8115 100644
--- a/src/mame/drivers/victory.cpp
+++ b/src/mame/drivers/victory.cpp
@@ -126,7 +126,7 @@ WRITE8_MEMBER(victory_state::lamp_control_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, victory_state )
+ADDRESS_MAP_START(victory_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc0ff) AM_READ(video_control_r)
AM_RANGE(0xc100, 0xc1ff) AM_WRITE(video_control_w)
@@ -140,7 +140,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, victory_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, victory_state )
+ADDRESS_MAP_START(victory_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_MIRROR(0x03) AM_READ_PORT("SW2")
AM_RANGE(0x04, 0x04) AM_MIRROR(0x03) AM_READ_PORT("SW1")
diff --git a/src/mame/drivers/vidbrain.cpp b/src/mame/drivers/vidbrain.cpp
index 1a85fa17061..ec946198d24 100644
--- a/src/mame/drivers/vidbrain.cpp
+++ b/src/mame/drivers/vidbrain.cpp
@@ -226,7 +226,7 @@ WRITE8_MEMBER( vidbrain_state::f3853_w )
// ADDRESS_MAP( vidbrain_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( vidbrain_mem, AS_PROGRAM, 8, vidbrain_state )
+ADDRESS_MAP_START(vidbrain_state::vidbrain_mem)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("res1", 0)
AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x2300) AM_DEVREADWRITE(UV201_TAG, uv201_device, read, write)
@@ -242,7 +242,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vidbrain_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( vidbrain_io, AS_IO, 8, vidbrain_state )
+ADDRESS_MAP_START(vidbrain_state::vidbrain_io)
AM_RANGE(0x00, 0x00) AM_WRITE(keyboard_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(keyboard_r, sound_w)
AM_RANGE(0x0c, 0x0f) AM_WRITE(f3853_w)
diff --git a/src/mame/drivers/videopin.cpp b/src/mame/drivers/videopin.cpp
index 93bcd44700e..34e2d7a92b0 100644
--- a/src/mame/drivers/videopin.cpp
+++ b/src/mame/drivers/videopin.cpp
@@ -218,7 +218,7 @@ WRITE8_MEMBER(videopin_state::note_dvsr_w)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, videopin_state )
+ADDRESS_MAP_START(videopin_state::main_map)
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x0200, 0x07ff) AM_RAM_WRITE(video_ram_w) AM_SHARE("video_ram")
AM_RANGE(0x0800, 0x0800) AM_READ(misc_r) AM_WRITE(note_dvsr_w)
diff --git a/src/mame/drivers/videopkr.cpp b/src/mame/drivers/videopkr.cpp
index 6ca5a876fce..94334f3e871 100644
--- a/src/mame/drivers/videopkr.cpp
+++ b/src/mame/drivers/videopkr.cpp
@@ -385,6 +385,14 @@ public:
void fortune1(machine_config &config);
void blckjack(machine_config &config);
void bpoker(machine_config &config);
+ void i8039_io_port(address_map &map);
+ void i8039_map(address_map &map);
+ void i8039_sound_mem(address_map &map);
+ void i8039_sound_port(address_map &map);
+ void i8051_sound_mem(address_map &map);
+ void i8051_sound_port(address_map &map);
+ void i8751_io_port(address_map &map);
+ void i8751_map(address_map &map);
};
@@ -966,19 +974,19 @@ TIMER_DEVICE_CALLBACK_MEMBER(videopkr_state::sound_t1_callback)
* Memory Map Information *
*************************/
-static ADDRESS_MAP_START( i8039_map, AS_PROGRAM, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8039_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8039_io_port, AS_IO, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8039_io_port)
AM_RANGE(0x00, 0xff) AM_READWRITE(videopkr_io_r, videopkr_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8751_map, AS_PROGRAM, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8751_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8751_io_port, AS_IO, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8751_io_port)
AM_RANGE(0x0000, 0x0fff) AM_RAM // NVRAM?
AM_RANGE(0x8000, 0x8000) AM_NOP // ???
AM_RANGE(0x9000, 0x9000) AM_WRITEONLY // ???
@@ -989,20 +997,20 @@ static ADDRESS_MAP_START( i8751_io_port, AS_IO, 8, videopkr_state )
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_NOP // ???
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8039_sound_mem, AS_PROGRAM, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8039_sound_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8039_sound_port, AS_IO, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8039_sound_port)
AM_RANGE(0x00, 0xff) AM_READWRITE(sound_io_r, sound_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8051_sound_mem, AS_PROGRAM, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8051_sound_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( i8051_sound_port, AS_IO, 8, videopkr_state )
+ADDRESS_MAP_START(videopkr_state::i8051_sound_port)
AM_RANGE(0x0000, 0x1ff) AM_RAM
/* ports */
AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE(baby_sound_p0_r, baby_sound_p0_w)
diff --git a/src/mame/drivers/vigilant.cpp b/src/mame/drivers/vigilant.cpp
index ddc52643152..d1c0ad5e0ff 100644
--- a/src/mame/drivers/vigilant.cpp
+++ b/src/mame/drivers/vigilant.cpp
@@ -72,7 +72,7 @@ WRITE8_MEMBER(vigilant_state::kikcubic_coin_w)
-static ADDRESS_MAP_START( vigilant_map, AS_PROGRAM, 8, vigilant_state )
+ADDRESS_MAP_START(vigilant_state::vigilant_map)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* Fallthrough */
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc020, 0xc0df) AM_RAM AM_SHARE("spriteram")
@@ -81,7 +81,7 @@ static ADDRESS_MAP_START( vigilant_map, AS_PROGRAM, 8, vigilant_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vigilant_io_map, AS_IO, 8, vigilant_state )
+ADDRESS_MAP_START(vigilant_state::vigilant_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("m72", m72_audio_device, sound_command_w) /* SD */
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(vigilant_out2_w) /* OUT2 */
@@ -93,7 +93,7 @@ static ADDRESS_MAP_START( vigilant_io_map, AS_IO, 8, vigilant_state )
AM_RANGE(0x84, 0x84) AM_WRITE(vigilant_rear_color_w) /* RCOD */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kikcubic_map, AS_PROGRAM, 8, vigilant_state )
+ADDRESS_MAP_START(vigilant_state::kikcubic_map)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* Fallthrough */
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0xc000, 0xc0ff) AM_RAM AM_SHARE("spriteram")
@@ -102,7 +102,7 @@ static ADDRESS_MAP_START( kikcubic_map, AS_PROGRAM, 8, vigilant_state )
AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kikcubic_io_map, AS_IO, 8, vigilant_state )
+ADDRESS_MAP_START(vigilant_state::kikcubic_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_WRITE(kikcubic_coin_w) /* also flip screen, and...? */
AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2")
@@ -113,12 +113,12 @@ static ADDRESS_MAP_START( kikcubic_io_map, AS_IO, 8, vigilant_state )
// AM_RANGE(0x07, 0x07) AM_WRITENOP /* ?? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vigilant_state )
+ADDRESS_MAP_START(vigilant_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, vigilant_state )
+ADDRESS_MAP_START(vigilant_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
AM_RANGE(0x80, 0x81) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_DEVWRITE("m72", m72_audio_device, vigilant_sample_addr_w) /* STL / STH */
@@ -127,7 +127,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, vigilant_state )
AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_audio_device, sample_r) /* S ROM C */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( buccanrs_sound_io_map, AS_IO, 8, vigilant_state )
+ADDRESS_MAP_START(vigilant_state::buccanrs_sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
diff --git a/src/mame/drivers/vii.cpp b/src/mame/drivers/vii.cpp
index 42fca7eca5d..332a9095eba 100644
--- a/src/mame/drivers/vii.cpp
+++ b/src/mame/drivers/vii.cpp
@@ -141,6 +141,7 @@ public:
void spg2xx_base(machine_config &config);
void spg2xx_basep(machine_config &config);
void batman(machine_config &config);
+ void vii_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -1003,7 +1004,7 @@ WRITE16_MEMBER( spg2xx_game_state::spriteram_w )
}
*/
-static ADDRESS_MAP_START( vii_mem, AS_PROGRAM, 16, spg2xx_game_state )
+ADDRESS_MAP_START(spg2xx_game_state::vii_mem)
AM_RANGE( 0x000000, 0x3fffff ) AM_ROMBANK("cart")
AM_RANGE( 0x000000, 0x0027ff ) AM_RAM AM_SHARE("p_ram")
diff --git a/src/mame/drivers/vindictr.cpp b/src/mame/drivers/vindictr.cpp
index b61315d9f05..4df95846ef7 100644
--- a/src/mame/drivers/vindictr.cpp
+++ b/src/mame/drivers/vindictr.cpp
@@ -71,7 +71,7 @@ READ16_MEMBER(vindictr_state::port1_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vindictr_state )
+ADDRESS_MAP_START(vindictr_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0x3fffff)
AM_RANGE(0x000000, 0x05ffff) AM_ROM
diff --git a/src/mame/drivers/vip.cpp b/src/mame/drivers/vip.cpp
index ca597628409..59ad4496182 100644
--- a/src/mame/drivers/vip.cpp
+++ b/src/mame/drivers/vip.cpp
@@ -372,7 +372,7 @@ WRITE8_MEMBER( vip_state::io_w )
// ADDRESS_MAP( vip_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( vip_mem, AS_PROGRAM, 8, vip_state )
+ADDRESS_MAP_START(vip_state::vip_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
@@ -382,7 +382,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vip_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( vip_io, AS_IO, 8, vip_state )
+ADDRESS_MAP_START(vip_state::vip_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00, 0x07) AM_READWRITE(io_r, io_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/viper.cpp b/src/mame/drivers/viper.cpp
index 0c966ec864d..2ac06ee03b1 100644
--- a/src/mame/drivers/viper.cpp
+++ b/src/mame/drivers/viper.cpp
@@ -429,6 +429,7 @@ public:
uint32_t m_mpc8240_regs[256/4];
void viper(machine_config &config);
+ void viper_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -2073,7 +2074,7 @@ WRITE64_MEMBER(viper_state::unk_serial_w)
/*****************************************************************************/
-static ADDRESS_MAP_START(viper_map, AS_PROGRAM, 64, viper_state )
+ADDRESS_MAP_START(viper_state::viper_map)
// ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000000, 0x00ffffff) AM_MIRROR(0x1000000) AM_RAM AM_SHARE("workram")
AM_RANGE(0x80000000, 0x800fffff) AM_READWRITE32(epic_r, epic_w,0xffffffffffffffffU)
diff --git a/src/mame/drivers/vis.cpp b/src/mame/drivers/vis.cpp
index 63d66addf77..44a05807d3c 100644
--- a/src/mame/drivers/vis.cpp
+++ b/src/mame/drivers/vis.cpp
@@ -718,6 +718,8 @@ public:
DECLARE_WRITE8_MEMBER(unk1_w);
DECLARE_INPUT_CHANGED_MEMBER(update);
void vis(machine_config &config);
+ void at16_io(address_map &map);
+ void at16_map(address_map &map);
protected:
void machine_reset() override;
private:
@@ -830,7 +832,7 @@ WRITE8_MEMBER(vis_state::sysctl_w)
m_sysctl = data;
}
-static ADDRESS_MAP_START( at16_map, AS_PROGRAM, 16, vis_state )
+ADDRESS_MAP_START(vis_state::at16_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x09ffff) AM_RAM
AM_RANGE(0x0d8000, 0x0fffff) AM_ROM AM_REGION("bios", 0xd8000)
@@ -839,7 +841,7 @@ static ADDRESS_MAP_START( at16_map, AS_PROGRAM, 16, vis_state )
AM_RANGE(0xff0000, 0xffffff) AM_ROM AM_REGION("bios", 0xf0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( at16_io, AS_IO, 16, vis_state )
+ADDRESS_MAP_START(vis_state::at16_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("mb:dma8237_1", am9517a_device, read, write, 0xffff)
AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("mb:pic8259_master", pic8259_device, read, write, 0xffff)
diff --git a/src/mame/drivers/vixen.cpp b/src/mame/drivers/vixen.cpp
index 73ef74b20f7..71522532e45 100644
--- a/src/mame/drivers/vixen.cpp
+++ b/src/mame/drivers/vixen.cpp
@@ -260,14 +260,14 @@ READ8_MEMBER( vixen_state::port3_r )
//-------------------------------------------------
// when M1 is inactive: read and write of data
-static ADDRESS_MAP_START( vixen_mem, AS_PROGRAM, 8, vixen_state )
+ADDRESS_MAP_START(vixen_state::vixen_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_RAM
AM_RANGE(0xf000, 0xffff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank4") AM_SHARE("video_ram")
ADDRESS_MAP_END
// when M1 is active: read opcodes
-static ADDRESS_MAP_START( bios_mem, AS_OPCODES, 8, vixen_state )
+ADDRESS_MAP_START(vixen_state::bios_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xefff) AM_READ(opram_r)
AM_RANGE(0xf000, 0xffff) AM_READ(oprom_r)
@@ -278,7 +278,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( vixen_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( vixen_io, AS_IO, 8, vixen_state )
+ADDRESS_MAP_START(vixen_state::vixen_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE(FDC1797_TAG, fd1797_device, read, write)
@@ -741,7 +741,7 @@ MACHINE_CONFIG_START(vixen_state::vixen)
// basic machine hardware
MCFG_CPU_ADD(Z8400A_TAG, Z80, XTAL(23'961'600)/6)
MCFG_CPU_PROGRAM_MAP(vixen_mem)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(bios_mem)
+ MCFG_CPU_OPCODES_MAP(bios_mem)
MCFG_CPU_IO_MAP(vixen_io)
MCFG_CPU_IRQ_ACKNOWLEDGE_DRIVER(vixen_state,vixen_int_ack)
diff --git a/src/mame/drivers/vk100.cpp b/src/mame/drivers/vk100.cpp
index 43b4a22615e..6e57f728e90 100644
--- a/src/mame/drivers/vk100.cpp
+++ b/src/mame/drivers/vk100.cpp
@@ -258,6 +258,8 @@ public:
void vram_write(uint8_t data);
void vk100(machine_config &config);
+ void vk100_io(address_map &map);
+ void vk100_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -685,7 +687,7 @@ READ8_MEMBER(vk100_state::vk100_keyboard_column_r)
return code;
}
-static ADDRESS_MAP_START(vk100_mem, AS_PROGRAM, 8, vk100_state)
+ADDRESS_MAP_START(vk100_state::vk100_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x6fff ) AM_ROM
AM_RANGE( 0x7000, 0x700f ) AM_MIRROR(0x0ff0) AM_READ(vk100_keyboard_column_r)
@@ -733,7 +735,7 @@ ADDRESS_MAP_END
x 1 1 1 1 0 x x W unused
x 1 1 1 1 1 x x W unused
*/
-static ADDRESS_MAP_START(vk100_io, AS_IO, 8, vk100_state)
+ADDRESS_MAP_START(vk100_state::vk100_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff) // guess, probably correct
AM_RANGE(0x00, 0x00) AM_MIRROR(0xBE) AM_DEVWRITE("crtc", mc6845_device, address_w)
diff --git a/src/mame/drivers/vlc.cpp b/src/mame/drivers/vlc.cpp
index 2a3b4fd4096..d8d7fa170c6 100644
--- a/src/mame/drivers/vlc.cpp
+++ b/src/mame/drivers/vlc.cpp
@@ -210,6 +210,7 @@ public:
TILE_GET_INFO_MEMBER(get_bg_tile_info);
void nevada(machine_config &config);
+ void nevada_map(address_map &map);
};
/*
@@ -511,7 +512,7 @@ U40 MC68681 Pin27 OP4 JCM Bill Acceptor (J4-6, J4-7 Control)
00E000x0 68681 CS UART U18 RS1..RS4 REGISTER (A4..A7 ON RS1..RS4) Data bus on D15..D8
*/
/***************************************************************************/
-static ADDRESS_MAP_START( nevada_map, AS_PROGRAM, 16,nevada_state )
+ADDRESS_MAP_START(nevada_state::nevada_map)
AM_RANGE(0x00000000, 0x0000ffff) AM_RAM AM_SHARE("ram62256")
AM_RANGE(0x00010000, 0x00021fff) AM_RAM AM_SHARE("backup")
AM_RANGE(0x00900000, 0x00900001) AM_DEVWRITE8("crtc",mc6845_device, address_w,0x00ff )
diff --git a/src/mame/drivers/volfied.cpp b/src/mame/drivers/volfied.cpp
index 583aba07d95..30aa289d9a4 100644
--- a/src/mame/drivers/volfied.cpp
+++ b/src/mame/drivers/volfied.cpp
@@ -66,7 +66,7 @@ Stephh's notes (based on the game M68000 code and some tests) :
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, volfied_state )
+ADDRESS_MAP_START(volfied_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM /* program */
AM_RANGE(0x080000, 0x0fffff) AM_ROM /* tiles */
AM_RANGE(0x100000, 0x103fff) AM_RAM /* main */
@@ -83,7 +83,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, volfied_state )
AM_RANGE(0xf00c00, 0xf00c01) AM_WRITE(cchip_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, volfied_state )
+ADDRESS_MAP_START(volfied_state::z80_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8800) AM_DEVWRITE("ciu", pc060ha_device, slave_port_w)
diff --git a/src/mame/drivers/votrpss.cpp b/src/mame/drivers/votrpss.cpp
index 1ebbc5e1333..ee2bb5fb289 100644
--- a/src/mame/drivers/votrpss.cpp
+++ b/src/mame/drivers/votrpss.cpp
@@ -101,6 +101,8 @@ public:
IRQ_CALLBACK_MEMBER(irq_ack);
void votrpss(machine_config &config);
+ void votrpss_io(address_map &map);
+ void votrpss_mem(address_map &map);
private:
uint8_t m_term_data;
uint8_t m_porta;
@@ -117,7 +119,7 @@ private:
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(votrpss_mem, AS_PROGRAM, 8, votrpss_state)
+ADDRESS_MAP_START(votrpss_state::votrpss_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM /* main roms (in potted module) */
AM_RANGE(0x4000, 0x7fff) AM_NOP /* open bus/space for expansion rom (reads as 0xFF) */
@@ -127,7 +129,7 @@ static ADDRESS_MAP_START(votrpss_mem, AS_PROGRAM, 8, votrpss_state)
AM_RANGE(0xe000, 0xffff) AM_NOP /* open bus (space for more personality rom, not normally used) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(votrpss_io, AS_IO, 8, votrpss_state)
+ADDRESS_MAP_START(votrpss_state::votrpss_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_MIRROR(0x3c) AM_DEVREADWRITE("ppi", i8255_device, read, write)
AM_RANGE(0x40, 0x40) AM_MIRROR(0x3e) AM_DEVREADWRITE("uart", i8251_device, data_r, data_w)
diff --git a/src/mame/drivers/votrtnt.cpp b/src/mame/drivers/votrtnt.cpp
index 0c5ce51d07e..d83a2e7a385 100644
--- a/src/mame/drivers/votrtnt.cpp
+++ b/src/mame/drivers/votrtnt.cpp
@@ -54,6 +54,7 @@ public:
DECLARE_MACHINE_RESET(votrtnt);
void votrtnt(machine_config &config);
+ void _6802_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<votrax_sc01_device> m_votrax;
@@ -79,7 +80,7 @@ private:
x 1 1 x * * * * * * * * * * * * R ROM (2332 4kx8 Mask ROM, inside potted brick)
*/
-static ADDRESS_MAP_START(6802_mem, AS_PROGRAM, 8, votrtnt_state)
+ADDRESS_MAP_START(votrtnt_state::_6802_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x9c00) AM_RAM /* RAM, 2114*2 (0x400 bytes) mirrored 4x */
AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x9ffe) AM_DEVREADWRITE("acia", acia6850_device, read, write)
@@ -136,7 +137,7 @@ MACHINE_RESET_MEMBER( votrtnt_state, votrtnt )
MACHINE_CONFIG_START(votrtnt_state::votrtnt)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M6802, XTAL(2'457'600)) /* 2.4576MHz XTAL, verified; divided by 4 inside the m6802*/
- MCFG_CPU_PROGRAM_MAP(6802_mem)
+ MCFG_CPU_PROGRAM_MAP(_6802_mem)
MCFG_MACHINE_RESET_OVERRIDE(votrtnt_state, votrtnt)
diff --git a/src/mame/drivers/voyager.cpp b/src/mame/drivers/voyager.cpp
index d2f7a6a63b2..f485221a22c 100644
--- a/src/mame/drivers/voyager.cpp
+++ b/src/mame/drivers/voyager.cpp
@@ -57,6 +57,8 @@ public:
virtual void machine_reset() override;
void intel82439tx_init();
void voyager(machine_config &config);
+ void voyager_io(address_map &map);
+ void voyager_map(address_map &map);
};
@@ -233,7 +235,7 @@ WRITE32_MEMBER(voyager_state::bios_ram_w)
}
}
-static ADDRESS_MAP_START( voyager_map, AS_PROGRAM, 32, voyager_state )
+ADDRESS_MAP_START(voyager_state::voyager_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", trident_vga_device, mem_r, mem_w, 0xffffffff) // VGA VRAM
AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0)
@@ -261,7 +263,7 @@ static ADDRESS_MAP_START( voyager_map, AS_PROGRAM, 32, voyager_state )
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( voyager_io, AS_IO, 32, voyager_state )
+ADDRESS_MAP_START(voyager_state::voyager_io)
AM_IMPORT_FROM(pcat32_io_common)
//AM_RANGE(0x00e8, 0x00eb) AM_NOP
diff --git a/src/mame/drivers/vp101.cpp b/src/mame/drivers/vp101.cpp
index 2f27433302d..c8bdf61cd55 100644
--- a/src/mame/drivers/vp101.cpp
+++ b/src/mame/drivers/vp101.cpp
@@ -142,6 +142,8 @@ public:
void vp50(machine_config &config);
void vp101(machine_config &config);
+ void main_map(address_map &map);
+ void vp50_map(address_map &map);
protected:
// devices
@@ -309,7 +311,7 @@ WRITE32_MEMBER(vp10x_state::tty_w) // set breakpoint at bfc01430 to catch when
// printf("%c", data);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, vp10x_state )
+ADDRESS_MAP_START(vp10x_state::main_map)
AM_RANGE(0x00000000, 0x07ffffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x14000000, 0x14000003) AM_READ(test_r)
AM_RANGE(0x1c000000, 0x1c000003) AM_WRITE(tty_w) // RSS OS code uses this one
@@ -327,7 +329,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, vp10x_state )
AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vp50_map, AS_PROGRAM, 32, vp10x_state )
+ADDRESS_MAP_START(vp10x_state::vp50_map)
AM_RANGE(0x00000000, 0x03ffffff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x1f000010, 0x1f00001f) AM_DEVREADWRITE16("ata", ata_interface_device, read_cs1, write_cs1, 0xffffffff)
AM_RANGE(0x1f000020, 0x1f00002f) AM_DEVREADWRITE16("ata", ata_interface_device, read_cs0, write_cs0, 0xffffffff)
diff --git a/src/mame/drivers/vp122.cpp b/src/mame/drivers/vp122.cpp
index 653883d2bfb..9c3bb44fd1d 100644
--- a/src/mame/drivers/vp122.cpp
+++ b/src/mame/drivers/vp122.cpp
@@ -28,19 +28,22 @@ public:
SCN2674_DRAW_CHARACTER_MEMBER(draw_character);
void vp122(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
+ void vram_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, vp122_state )
+ADDRESS_MAP_START(vp122_state::mem_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0xe000, 0xe7ff) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, vp122_state )
+ADDRESS_MAP_START(vp122_state::io_map)
AM_RANGE(0x00, 0x07) AM_DEVREADWRITE("avdc", scn2674_device, read, write)
AM_RANGE(0x10, 0x1f) AM_DEVREADWRITE("duart", scn2681_device, read, write)
AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("usart", i8251_device, data_r, data_w)
@@ -55,7 +58,7 @@ SCN2674_DRAW_CHARACTER_MEMBER(vp122_state::draw_character)
{
}
-static ADDRESS_MAP_START( vram_map, 0, 8, vp122_state )
+ADDRESS_MAP_START(vp122_state::vram_map)
AM_RANGE(0x0000, 0x07ff) AM_NOP
AM_RANGE(0x1800, 0x2fff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vp60.cpp b/src/mame/drivers/vp60.cpp
index 85353e8d88b..92689f58a1c 100644
--- a/src/mame/drivers/vp60.cpp
+++ b/src/mame/drivers/vp60.cpp
@@ -26,6 +26,9 @@ public:
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void vp60(machine_config &config);
+ void io_map(address_map &map);
+ void kbd_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_region_ptr<u8> m_p_chargen;
@@ -36,15 +39,15 @@ u32 vp60_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const
return 0;
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, vp60_state )
+ADDRESS_MAP_START(vp60_state::mem_map)
AM_RANGE(0x0000, 0x2fff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, vp60_state )
+ADDRESS_MAP_START(vp60_state::io_map)
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kbd_map, AS_PROGRAM, 8, vp60_state )
+ADDRESS_MAP_START(vp60_state::kbd_map)
AM_RANGE(0x000, 0x3ff) AM_ROM AM_REGION("keyboard", 0)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vpoker.cpp b/src/mame/drivers/vpoker.cpp
index 3921e1d72bf..c2f21614c49 100644
--- a/src/mame/drivers/vpoker.cpp
+++ b/src/mame/drivers/vpoker.cpp
@@ -125,6 +125,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void vpoker(machine_config &config);
+ void main_map(address_map &map);
};
@@ -181,7 +182,7 @@ WRITE8_MEMBER(vpoker_state::blitter_w)
}
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vpoker_state )
+ADDRESS_MAP_START(vpoker_state::main_map)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x01ff) AM_RAM /* vpoker has 0x100, 5acespkr has 0x200 */
AM_RANGE(0x0400, 0x0407) AM_DEVREADWRITE("6840ptm", ptm6840_device, read, write)
diff --git a/src/mame/drivers/vroulet.cpp b/src/mame/drivers/vroulet.cpp
index c8e5c7b7c7f..849ba2271fc 100644
--- a/src/mame/drivers/vroulet.cpp
+++ b/src/mame/drivers/vroulet.cpp
@@ -82,6 +82,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void vroulet(machine_config &config);
+ void vroulet_io_map(address_map &map);
+ void vroulet_map(address_map &map);
};
@@ -148,7 +150,7 @@ uint32_t vroulet_state::screen_update(screen_device &screen, bitmap_ind16 &bitma
/* Memory Maps */
-static ADDRESS_MAP_START( vroulet_map, AS_PROGRAM, 8, vroulet_state )
+ADDRESS_MAP_START(vroulet_state::vroulet_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x8000, 0x8000) AM_NOP
@@ -159,7 +161,7 @@ static ADDRESS_MAP_START( vroulet_map, AS_PROGRAM, 8, vroulet_state )
AM_RANGE(0xc000, 0xc000) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vroulet_io_map, AS_IO, 8, vroulet_state )
+ADDRESS_MAP_START(vroulet_state::vroulet_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("aysnd", ay8910_device, data_r)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, data_address_w)
diff --git a/src/mame/drivers/vsmilepro.cpp b/src/mame/drivers/vsmilepro.cpp
index 7b030130b5b..1bb911cfb1b 100644
--- a/src/mame/drivers/vsmilepro.cpp
+++ b/src/mame/drivers/vsmilepro.cpp
@@ -35,11 +35,12 @@ public:
{ }
void vsmilpro(machine_config &config);
+ void vsmilpro_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(vsmilpro_map, AS_PROGRAM, 32, vsmilpro_state)
+ADDRESS_MAP_START(vsmilpro_state::vsmilpro_map)
AM_RANGE(0x00000000, 0x0007ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vsnes.cpp b/src/mame/drivers/vsnes.cpp
index d4a1a44b252..23dea358396 100644
--- a/src/mame/drivers/vsnes.cpp
+++ b/src/mame/drivers/vsnes.cpp
@@ -195,7 +195,7 @@ WRITE8_MEMBER(vsnes_state::vsnes_coin_counter_1_w)
/******************************************************************************/
-static ADDRESS_MAP_START( vsnes_cpu1_map, AS_PROGRAM, 8, vsnes_state )
+ADDRESS_MAP_START(vsnes_state::vsnes_cpu1_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("work_ram")
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu1", ppu2c0x_device, read, write)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_0_w)
@@ -206,7 +206,7 @@ static ADDRESS_MAP_START( vsnes_cpu1_map, AS_PROGRAM, 8, vsnes_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vsnes_cpu2_map, AS_PROGRAM, 8, vsnes_state )
+ADDRESS_MAP_START(vsnes_state::vsnes_cpu2_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("work_ram_1")
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu2", ppu2c0x_device, read, write)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_1_w)
@@ -244,7 +244,7 @@ READ8_MEMBER(vsnes_state::vsnes_bootleg_z80_data_r)
// the bootleg still makes writes to the PSG addresses, it seems the Z80 should interpret them to play the sounds
-static ADDRESS_MAP_START( vsnes_cpu1_bootleg_map, AS_PROGRAM, 8, vsnes_state )
+ADDRESS_MAP_START(vsnes_state::vsnes_cpu1_bootleg_map)
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("work_ram")
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu1", ppu2c0x_device, read, write)
AM_RANGE(0x4000, 0x4017) AM_WRITE(bootleg_sound_write)
@@ -261,7 +261,7 @@ READ8_MEMBER( vsnes_state::vsnes_bootleg_z80_latch_r )
return 0x00;
}
-static ADDRESS_MAP_START( vsnes_bootleg_z80_map, AS_PROGRAM, 8, vsnes_state )
+ADDRESS_MAP_START(vsnes_state::vsnes_bootleg_z80_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
diff --git a/src/mame/drivers/vt100.cpp b/src/mame/drivers/vt100.cpp
index 44df582d76e..12568f7f049 100644
--- a/src/mame/drivers/vt100.cpp
+++ b/src/mame/drivers/vt100.cpp
@@ -73,12 +73,16 @@ public:
void vt102(machine_config &config);
void vt100(machine_config &config);
void vt180(machine_config &config);
+ void vt100_io(address_map &map);
+ void vt100_mem(address_map &map);
+ void vt180_io(address_map &map);
+ void vt180_mem(address_map &map);
};
-static ADDRESS_MAP_START(vt100_mem, AS_PROGRAM, 8, vt100_state)
+ADDRESS_MAP_START(vt100_state::vt100_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x1fff ) AM_ROM // ROM ( 4 * 2K)
AM_RANGE( 0x2000, 0x2bff ) AM_RAM AM_SHARE("p_ram") // Screen and scratch RAM
@@ -90,13 +94,13 @@ static ADDRESS_MAP_START(vt100_mem, AS_PROGRAM, 8, vt100_state)
// 0xc000, 0xffff is unassigned
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vt180_mem, AS_PROGRAM, 8, vt100_state)
+ADDRESS_MAP_START(vt100_state::vt180_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x1fff ) AM_ROM
AM_RANGE( 0x2000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vt180_io, AS_IO, 8, vt100_state)
+ADDRESS_MAP_START(vt100_state::vt180_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
@@ -153,7 +157,7 @@ WRITE8_MEMBER( vt100_state::vt100_nvr_latch_w )
m_nvr->data_w(BIT(data, 2) ? 0 : !BIT(data, 0));
}
-static ADDRESS_MAP_START(vt100_io, AS_IO, 8, vt100_state)
+ADDRESS_MAP_START(vt100_state::vt100_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// 0x00, 0x01 PUSART (Intel 8251)
diff --git a/src/mame/drivers/vt220.cpp b/src/mame/drivers/vt220.cpp
index c89589012a9..dc5f179e0d2 100644
--- a/src/mame/drivers/vt220.cpp
+++ b/src/mame/drivers/vt220.cpp
@@ -55,25 +55,29 @@ public:
required_device<ram_device> m_ram;
void vt220(machine_config &config);
void vt220a(machine_config &config);
+ void vt220_io(address_map &map);
+ void vt220_mem(address_map &map);
+ void vt220a_io(address_map &map);
+ void vt220a_mem(address_map &map);
};
-static ADDRESS_MAP_START(vt220_mem, AS_PROGRAM, 8, vt220_state)
+ADDRESS_MAP_START(vt220_state::vt220_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vt220a_mem, AS_PROGRAM, 8, vt220_state)
+ADDRESS_MAP_START(vt220_state::vt220a_mem)
AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("maincpu", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vt220_io, AS_IO, 8, vt220_state)
+ADDRESS_MAP_START(vt220_state::vt220_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x2000, 0x2fff) AM_MIRROR(0xc000) AM_RAM
AM_RANGE(0x3800, 0x380f) AM_MIRROR(0xc7f0) AM_DEVREADWRITE("duart", scn2681_device, read, write)
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READNOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vt220a_io, AS_IO, 8, vt220_state)
+ADDRESS_MAP_START(vt220_state::vt220a_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vt240.cpp b/src/mame/drivers/vt240.cpp
index 6a093399333..f6029018551 100644
--- a/src/mame/drivers/vt240.cpp
+++ b/src/mame/drivers/vt240.cpp
@@ -124,6 +124,11 @@ public:
uint16_t m_scrl;
void mc7105(machine_config &config);
void vt240(machine_config &config);
+ void bank_map(address_map &map);
+ void upd7220_map(address_map &map);
+ void vt240_char_io(address_map &map);
+ void vt240_char_mem(address_map &map);
+ void vt240_mem(address_map &map);
};
void vt240_state::irq_encoder(int irq, int state)
@@ -537,14 +542,14 @@ WRITE8_MEMBER(vt240_state::hbscrl_w)
m_scrl = (m_scrl & 0xff) | ((data & 0x3f) << 8);
}
-static ADDRESS_MAP_START(bank_map, AS_PROGRAM, 16, vt240_state)
+ADDRESS_MAP_START(vt240_state::bank_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x1ffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x80000, 0x87fff) AM_RAM
ADDRESS_MAP_END
// PDF page 78 (4-25)
-static ADDRESS_MAP_START( vt240_mem, AS_PROGRAM, 16, vt240_state )
+ADDRESS_MAP_START(vt240_state::vt240_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE (0000000, 0167777) AM_READWRITE(mem_r, mem_w)
AM_RANGE (0170000, 0170037) AM_READWRITE8(mem_map_cs_r, mem_map_cs_w, 0x00ff)
@@ -574,14 +579,14 @@ static ADDRESS_MAP_START( vt240_mem, AS_PROGRAM, 16, vt240_state )
ADDRESS_MAP_END
// PDF page 134 (6-9)
-static ADDRESS_MAP_START(vt240_char_mem, AS_PROGRAM, 8, vt240_state)
+ADDRESS_MAP_START(vt240_state::vt240_char_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("charcpu", 0)
AM_RANGE(0x4000, 0x5fff) AM_ROM AM_REGION("charcpu", 0x8000)
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vt240_char_io, AS_IO, 8, vt240_state)
+ADDRESS_MAP_START(vt240_state::vt240_char_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("upd7220", upd7220_device, read, write)
@@ -598,7 +603,7 @@ static ADDRESS_MAP_START(vt240_char_io, AS_IO, 8, vt240_state)
AM_RANGE(0xf0, 0xf0) AM_WRITE(lbscrl_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( upd7220_map, 0, 16, vt240_state)
+ADDRESS_MAP_START(vt240_state::upd7220_map)
AM_RANGE(0x00000, 0x3ffff) AM_READWRITE(vram_r, vram_w) AM_SHARE("vram")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vt320.cpp b/src/mame/drivers/vt320.cpp
index 3349f373bf4..d7796cae164 100644
--- a/src/mame/drivers/vt320.cpp
+++ b/src/mame/drivers/vt320.cpp
@@ -30,6 +30,8 @@ public:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
void vt320(machine_config &config);
+ void vt320_io(address_map &map);
+ void vt320_mem(address_map &map);
};
/*
@@ -59,11 +61,11 @@ Texas Inst. 749X 75146
Signetics? 74LS373N
8-bit D-type latch. This has eight inputs and eight outputs.
*/
-static ADDRESS_MAP_START(vt320_mem, AS_PROGRAM, 8, vt320_state)
+ADDRESS_MAP_START(vt320_state::vt320_mem)
AM_RANGE(0x0000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vt320_io, AS_IO, 8, vt320_state)
+ADDRESS_MAP_START(vt320_state::vt320_io)
ADDRESS_MAP_END
/* Input ports */
diff --git a/src/mame/drivers/vt520.cpp b/src/mame/drivers/vt520.cpp
index 3b8016f3ae0..b834c38f910 100644
--- a/src/mame/drivers/vt520.cpp
+++ b/src/mame/drivers/vt520.cpp
@@ -31,10 +31,12 @@ public:
required_region_ptr<uint8_t> m_rom;
void vt520(machine_config &config);
void vt420(machine_config &config);
+ void vt520_io(address_map &map);
+ void vt520_mem(address_map &map);
};
-static ADDRESS_MAP_START(vt520_mem, AS_PROGRAM, 8, vt520_state)
+ADDRESS_MAP_START(vt520_state::vt520_mem)
AM_RANGE(0x0000, 0xffff) AM_RAMBANK("bank1")
ADDRESS_MAP_END
@@ -51,7 +53,7 @@ READ8_MEMBER( vt520_state::vt520_some_r )
return 0x40;
}
-static ADDRESS_MAP_START(vt520_io, AS_IO, 8, vt520_state)
+ADDRESS_MAP_START(vt520_state::vt520_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x7ffb, 0x7ffb) AM_READ(vt520_some_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vta2000.cpp b/src/mame/drivers/vta2000.cpp
index 29d2a99e0f6..da34f8f3b72 100644
--- a/src/mame/drivers/vta2000.cpp
+++ b/src/mame/drivers/vta2000.cpp
@@ -37,6 +37,8 @@ public:
DECLARE_PALETTE_INIT(vta2000);
void vta2000(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
@@ -44,14 +46,14 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START(mem_map, AS_PROGRAM, 8, vta2000_state)
+ADDRESS_MAP_START(vta2000_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_REGION("roms", 0)
AM_RANGE( 0x8000, 0xc7ff ) AM_RAM AM_SHARE("videoram")
AM_RANGE( 0xc800, 0xc8ff ) AM_ROM AM_REGION("roms", 0x5000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(io_map, AS_IO, 8, vta2000_state)
+ADDRESS_MAP_START(vta2000_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vtech1.cpp b/src/mame/drivers/vtech1.cpp
index 2b7a3a53b38..7afca3c973d 100644
--- a/src/mame/drivers/vtech1.cpp
+++ b/src/mame/drivers/vtech1.cpp
@@ -94,6 +94,11 @@ public:
void laser310h(machine_config &config);
void laser110(machine_config &config);
void laser210(machine_config &config);
+ void laser110_mem(address_map &map);
+ void laser210_mem(address_map &map);
+ void laser310_mem(address_map &map);
+ void vtech1_io(address_map &map);
+ void vtech1_shrg_io(address_map &map);
private:
static const uint8_t VZ_BASIC = 0xf0;
static const uint8_t VZ_MCODE = 0xf1;
@@ -298,33 +303,33 @@ DRIVER_INIT_MEMBER( vtech1_state, vtech1h )
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( laser110_mem, AS_PROGRAM, 8, vtech1_state )
+ADDRESS_MAP_START(vtech1_state::laser110_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM // basic rom
AM_RANGE(0x6800, 0x6fff) AM_READWRITE(vtech1_keyboard_r, vtech1_latch_w)
AM_RANGE(0x7000, 0x77ff) AM_RAM AM_SHARE("videoram") // 6847
AM_RANGE(0x7800, 0x7fff) AM_RAM // 2k user ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( laser210_mem, AS_PROGRAM, 8, vtech1_state )
+ADDRESS_MAP_START(vtech1_state::laser210_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM // basic rom
AM_RANGE(0x6800, 0x6fff) AM_READWRITE(vtech1_keyboard_r, vtech1_latch_w)
AM_RANGE(0x7000, 0x77ff) AM_RAM AM_SHARE("videoram") // 6847
AM_RANGE(0x7800, 0x8fff) AM_RAM // 6k user ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( laser310_mem, AS_PROGRAM, 8, vtech1_state )
+ADDRESS_MAP_START(vtech1_state::laser310_mem)
AM_RANGE(0x0000, 0x3fff) AM_ROM // basic rom
AM_RANGE(0x6800, 0x6fff) AM_READWRITE(vtech1_keyboard_r, vtech1_latch_w)
AM_RANGE(0x7000, 0x77ff) AM_RAM AM_SHARE("videoram") // 6847
AM_RANGE(0x7800, 0xb7ff) AM_RAM // 16k user ram
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vtech1_io, AS_IO, 8, vtech1_state )
+ADDRESS_MAP_START(vtech1_state::vtech1_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x40, 0x4f) AM_READ(vtech1_lightpen_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vtech1_shrg_io, AS_IO, 8, vtech1_state )
+ADDRESS_MAP_START(vtech1_state::vtech1_shrg_io)
AM_IMPORT_FROM(vtech1_io)
AM_RANGE(0xd0, 0xdf) AM_WRITE(vtech1_video_bank_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/vtech2.cpp b/src/mame/drivers/vtech2.cpp
index 48032b3ec0e..8d6a3a199d7 100644
--- a/src/mame/drivers/vtech2.cpp
+++ b/src/mame/drivers/vtech2.cpp
@@ -78,7 +78,7 @@
#include "formats/vt_cas.h"
-static ADDRESS_MAP_START(vtech2_mem, AS_PROGRAM, 8, vtech2_state )
+ADDRESS_MAP_START(vtech2_state::vtech2_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1")
AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank2")
@@ -86,7 +86,7 @@ static ADDRESS_MAP_START(vtech2_mem, AS_PROGRAM, 8, vtech2_state )
AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank4")
ADDRESS_MAP_END
-static ADDRESS_MAP_START(vtech2_io, AS_IO, 8, vtech2_state )
+ADDRESS_MAP_START(vtech2_state::vtech2_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x1f) AM_READWRITE(laser_fdc_r, laser_fdc_w)
AM_RANGE(0x40, 0x43) AM_WRITE(laser_bank_select_w)
diff --git a/src/mame/drivers/vulgus.cpp b/src/mame/drivers/vulgus.cpp
index 89c2b162970..eb959b3b3ba 100644
--- a/src/mame/drivers/vulgus.cpp
+++ b/src/mame/drivers/vulgus.cpp
@@ -58,7 +58,7 @@ INTERRUPT_GEN_MEMBER(vulgus_state::vblank_irq)
device.execute().set_input_line_and_vector(0, HOLD_LINE, 0xd7); /* RST 10h - vblank */
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vulgus_state )
+ADDRESS_MAP_START(vulgus_state::main_map)
AM_RANGE(0x0000, 0x9fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM")
AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P1")
@@ -77,7 +77,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vulgus_state )
AM_RANGE(0xe000, 0xefff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vulgus_state )
+ADDRESS_MAP_START(vulgus_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
diff --git a/src/mame/drivers/wacky_gator.cpp b/src/mame/drivers/wacky_gator.cpp
index 01f8e715eec..d445e5b14de 100644
--- a/src/mame/drivers/wacky_gator.cpp
+++ b/src/mame/drivers/wacky_gator.cpp
@@ -84,6 +84,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(nmi_timer) { m_maincpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE); }
void wackygtr(machine_config &config);
+ void program_map(address_map &map);
private:
int m_adpcm_sel;
uint16_t m_adpcm_pos;
@@ -250,7 +251,7 @@ WRITE_LINE_MEMBER(wackygtr_state::adpcm_int)
}
}
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, wackygtr_state )
+ADDRESS_MAP_START(wackygtr_state::program_map)
AM_RANGE(0x0200, 0x0200) AM_READNOP AM_WRITE(irq_ack_w)
AM_RANGE(0x0400, 0x0400) AM_READNOP AM_WRITE(firq_ack_w)
AM_RANGE(0x0600, 0x0600) AM_WRITE(disp0_w)
diff --git a/src/mame/drivers/wallc.cpp b/src/mame/drivers/wallc.cpp
index fc4956dd415..5b72a8c319c 100644
--- a/src/mame/drivers/wallc.cpp
+++ b/src/mame/drivers/wallc.cpp
@@ -81,6 +81,8 @@ public:
void wallc(machine_config &config);
void wallca(machine_config &config);
+ void unkitpkr_map(address_map &map);
+ void wallc_map(address_map &map);
protected:
virtual void video_start() override;
@@ -262,7 +264,7 @@ WRITE8_MEMBER(wallc_state::unkitpkr_out2_w)
{
}
-static ADDRESS_MAP_START( wallc_map, AS_PROGRAM, 8, wallc_state )
+ADDRESS_MAP_START(wallc_state::wallc_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(videoram_w) AM_MIRROR(0xc00) AM_SHARE("videoram") /* 2114, 2114 */
AM_RANGE(0xa000, 0xa3ff) AM_RAM /* 2114, 2114 */
@@ -279,7 +281,7 @@ static ADDRESS_MAP_START( wallc_map, AS_PROGRAM, 8, wallc_state )
AM_RANGE(0xb600, 0xb600) AM_DEVWRITE("aysnd", ay8912_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( unkitpkr_map, AS_PROGRAM, 8, wallc_state )
+ADDRESS_MAP_START(wallc_state::unkitpkr_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(videoram_w) AM_MIRROR(0xc00) AM_SHARE("videoram") /* 2114, 2114 */
AM_RANGE(0xa000, 0xa3ff) AM_RAM /* 2114, 2114 */
diff --git a/src/mame/drivers/wangpc.cpp b/src/mame/drivers/wangpc.cpp
index 793ee78737a..ad2cc9b8f5a 100644
--- a/src/mame/drivers/wangpc.cpp
+++ b/src/mame/drivers/wangpc.cpp
@@ -215,6 +215,8 @@ public:
int m_led[6];
void wangpc(machine_config &config);
+ void wangpc_io(address_map &map);
+ void wangpc_mem(address_map &map);
};
@@ -728,7 +730,7 @@ READ8_MEMBER( wangpc_state::option_id_r )
// ADDRESS_MAP( wangpc_mem )
//-------------------------------------------------
-static ADDRESS_MAP_START( wangpc_mem, AS_PROGRAM, 16, wangpc_state )
+ADDRESS_MAP_START(wangpc_state::wangpc_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000, 0x1ffff) AM_RAM
AM_RANGE(0x40000, 0xf3fff) AM_DEVREADWRITE(WANGPC_BUS_TAG, wangpcbus_device, mrdc_r, amwc_w)
@@ -740,7 +742,7 @@ ADDRESS_MAP_END
// ADDRESS_MAP( wangpc_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( wangpc_io, AS_IO, 16, wangpc_state )
+ADDRESS_MAP_START(wangpc_state::wangpc_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x1000, 0x1001) AM_WRITE8(fdc_ctrl_w, 0x00ff)
AM_RANGE(0x1004, 0x1005) AM_READWRITE8(deselect_drive1_r, deselect_drive1_w, 0x00ff)
diff --git a/src/mame/drivers/wardner.cpp b/src/mame/drivers/wardner.cpp
index d2df7e8d6a4..0ea5fcc56d0 100644
--- a/src/mame/drivers/wardner.cpp
+++ b/src/mame/drivers/wardner.cpp
@@ -153,6 +153,13 @@ public:
DECLARE_DRIVER_INIT(wardner);
void wardner(machine_config &config);
+ void DSP_io_map(address_map &map);
+ void DSP_program_map(address_map &map);
+ void main_bank_map(address_map &map);
+ void main_io_map(address_map &map);
+ void main_program_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_program_map(address_map &map);
protected:
virtual void driver_start() override;
virtual void machine_reset() override;
@@ -166,7 +173,7 @@ WRITE8_MEMBER(wardner_state::wardner_bank_w)
m_membank->set_bank(data & 7);
}
-static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, wardner_state )
+ADDRESS_MAP_START(wardner_state::main_program_map)
AM_RANGE(0x0000, 0x6fff) AM_ROM
AM_RANGE(0x7000, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0x8fff) AM_WRITE(wardner_sprite_w) // AM_SHARE("spriteram8")
@@ -177,7 +184,7 @@ ADDRESS_MAP_END
// Overlapped RAM/Banked ROM
// Can't use AM_RANGE(0x00000, 0x3ffff) for ROM because the shared pointers get messed up somehow
-static ADDRESS_MAP_START( main_bank_map, AS_PROGRAM, 8, wardner_state )
+ADDRESS_MAP_START(wardner_state::main_bank_map)
AM_RANGE(0x00000, 0x00fff) AM_READ(wardner_sprite_r) AM_SHARE("spriteram8")
AM_RANGE(0x01000, 0x01fff) AM_ROM AM_REGION("maincpu", 0x1000)
AM_RANGE(0x02000, 0x02fff) AM_READONLY AM_SHARE("palette")
@@ -186,7 +193,7 @@ static ADDRESS_MAP_START( main_bank_map, AS_PROGRAM, 8, wardner_state )
AM_RANGE(0x04800, 0x3ffff) AM_ROM AM_REGION("maincpu", 0x4800)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_io_map, AS_IO, 8, wardner_state )
+ADDRESS_MAP_START(wardner_state::main_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("crtc", mc6845_device, address_w)
AM_RANGE(0x02, 0x02) AM_DEVWRITE("crtc", mc6845_device, register_w)
@@ -211,14 +218,14 @@ ADDRESS_MAP_END
/***************************** Z80 Sound Memory Map *************************/
-static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8, wardner_state )
+ADDRESS_MAP_START(wardner_state::sound_program_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x807f) AM_RAM
AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0xc800, 0xcfff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, wardner_state )
+ADDRESS_MAP_START(wardner_state::sound_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
ADDRESS_MAP_END
@@ -226,13 +233,13 @@ ADDRESS_MAP_END
/***************************** TMS32010 Memory Map **************************/
-static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16, wardner_state )
+ADDRESS_MAP_START(wardner_state::DSP_program_map)
AM_RANGE(0x000, 0x5ff) AM_ROM
ADDRESS_MAP_END
/* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */
-static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16, wardner_state )
+ADDRESS_MAP_START(wardner_state::DSP_io_map)
AM_RANGE(0x00, 0x00) AM_WRITE(wardner_dsp_addrsel_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(wardner_dsp_r, wardner_dsp_w)
AM_RANGE(0x03, 0x03) AM_WRITE(twincobr_dsp_bio_w)
diff --git a/src/mame/drivers/warpsped.cpp b/src/mame/drivers/warpsped.cpp
index 5fa2dae2de7..3ac351519ff 100644
--- a/src/mame/drivers/warpsped.cpp
+++ b/src/mame/drivers/warpsped.cpp
@@ -121,6 +121,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_circles(bitmap_ind16 &bitmap);
void warpspeed(machine_config &config);
+ void warpspeed_io_map(address_map &map);
+ void warpspeed_map(address_map &map);
};
WRITE8_MEMBER(warpspeed_state::hardware_w)
@@ -231,13 +233,13 @@ uint32_t warpspeed_state::screen_update(screen_device &screen, bitmap_ind16 &bit
return 0;
}
-static ADDRESS_MAP_START( warpspeed_map, AS_PROGRAM, 8, warpspeed_state )
+ADDRESS_MAP_START(warpspeed_state::warpspeed_map)
AM_RANGE(0x0000, 0x0dff) AM_ROM
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(vidram_w ) AM_SHARE("videoram")
AM_RANGE(0x1c00, 0x1cff) AM_RAM AM_SHARE("workram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START ( warpspeed_io_map, AS_IO, 8, warpspeed_state )
+ADDRESS_MAP_START(warpspeed_state::warpspeed_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0")
AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1")
diff --git a/src/mame/drivers/warpwarp.cpp b/src/mame/drivers/warpwarp.cpp
index 4c2bedfa132..2c8917e2505 100644
--- a/src/mame/drivers/warpwarp.cpp
+++ b/src/mame/drivers/warpwarp.cpp
@@ -290,7 +290,7 @@ WRITE8_MEMBER(warpwarp_state::warpwarp_out0_w)
-static ADDRESS_MAP_START( geebee_map, AS_PROGRAM, 8, warpwarp_state )
+ADDRESS_MAP_START(warpwarp_state::geebee_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_MIRROR(0x400) AM_RAM_WRITE(geebee_videoram_w) AM_SHARE("geebee_videoram") // mirror used by kaitei due to a bug
AM_RANGE(0x3000, 0x37ff) AM_ROM AM_REGION("gfx1", 0) // 3000-33ff in geebee
@@ -300,14 +300,14 @@ static ADDRESS_MAP_START( geebee_map, AS_PROGRAM, 8, warpwarp_state )
AM_RANGE(0x7000, 0x7007) AM_MIRROR(0x0ff8) AM_DEVWRITE("latch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( geebee_port_map, AS_IO, 8, warpwarp_state )
+ADDRESS_MAP_START(warpwarp_state::geebee_port_map)
AM_RANGE(0x50, 0x53) AM_READ(geebee_in_r)
AM_RANGE(0x60, 0x6f) AM_WRITE(geebee_out6_w)
AM_RANGE(0x70, 0x77) AM_MIRROR(0x08) AM_DEVWRITE("latch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( bombbee_map, AS_PROGRAM, 8, warpwarp_state )
+ADDRESS_MAP_START(warpwarp_state::bombbee_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x4000, 0x47ff) AM_RAM_WRITE(warpwarp_videoram_w) AM_SHARE("videoram")
@@ -318,7 +318,7 @@ static ADDRESS_MAP_START( bombbee_map, AS_PROGRAM, 8, warpwarp_state )
AM_RANGE(0x6030, 0x6037) AM_MIRROR(0x0008) AM_DEVWRITE("latch", ls259_device, write_d0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( warpwarp_map, AS_PROGRAM, 8, warpwarp_state )
+ADDRESS_MAP_START(warpwarp_state::warpwarp_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0x4000, 0x47ff) AM_RAM_WRITE(warpwarp_videoram_w) AM_SHARE("videoram")
diff --git a/src/mame/drivers/warriorb.cpp b/src/mame/drivers/warriorb.cpp
index ae999186ceb..d8192a8eff0 100644
--- a/src/mame/drivers/warriorb.cpp
+++ b/src/mame/drivers/warriorb.cpp
@@ -223,7 +223,7 @@ WRITE16_MEMBER(warriorb_state::tc0100scn_dual_screen_w)
MEMORY STRUCTURES
***********************************************************/
-static ADDRESS_MAP_START( darius2d_map, AS_PROGRAM, 16, warriorb_state )
+ADDRESS_MAP_START(warriorb_state::darius2d_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* main ram */
AM_RANGE(0x200000, 0x213fff) AM_DEVREAD("tc0100scn_1", tc0100scn_device, word_r) AM_WRITE(tc0100scn_dual_screen_w) /* tilemaps (all screens) */
@@ -239,7 +239,7 @@ static ADDRESS_MAP_START( darius2d_map, AS_PROGRAM, 16, warriorb_state )
AM_RANGE(0x830000, 0x830003) AM_READWRITE(sound_r, sound_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( warriorb_map, AS_PROGRAM, 16, warriorb_state )
+ADDRESS_MAP_START(warriorb_state::warriorb_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x200000, 0x213fff) AM_RAM
AM_RANGE(0x300000, 0x313fff) AM_DEVREAD("tc0100scn_1", tc0100scn_device, word_r) AM_WRITE(tc0100scn_dual_screen_w) /* tilemaps (all screens) */
@@ -256,7 +256,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, warriorb_state )
+ADDRESS_MAP_START(warriorb_state::z80_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/wc90.cpp b/src/mame/drivers/wc90.cpp
index 3797a5e98fb..67cc913efb2 100644
--- a/src/mame/drivers/wc90.cpp
+++ b/src/mame/drivers/wc90.cpp
@@ -75,7 +75,7 @@ WRITE8_MEMBER(wc90_state::bankswitch1_w)
-static ADDRESS_MAP_START( wc90_map_1, AS_PROGRAM, 8, wc90_state )
+ADDRESS_MAP_START(wc90_state::wc90_map_1)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM /* Main RAM */
AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(fgvideoram_w) AM_SHARE("fgvideoram") /* fg video ram */
@@ -107,7 +107,7 @@ static ADDRESS_MAP_START( wc90_map_1, AS_PROGRAM, 8, wc90_state )
AM_RANGE(0xfce0, 0xfce0) AM_WRITE(bankswitch_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wc90_map_2, AS_PROGRAM, 8, wc90_state )
+ADDRESS_MAP_START(wc90_state::wc90_map_2)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("spriteram")
@@ -119,7 +119,7 @@ static ADDRESS_MAP_START( wc90_map_2, AS_PROGRAM, 8, wc90_state )
AM_RANGE(0xfc01, 0xfc01) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wc90_state )
+ADDRESS_MAP_START(wc90_state::sound_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xf000, 0xf7ff) AM_RAM
AM_RANGE(0xf800, 0xf803) AM_DEVREADWRITE("ymsnd", ym2608_device, read, write)
diff --git a/src/mame/drivers/wc90b.cpp b/src/mame/drivers/wc90b.cpp
index 0771d0220e1..12bfc75443a 100644
--- a/src/mame/drivers/wc90b.cpp
+++ b/src/mame/drivers/wc90b.cpp
@@ -140,7 +140,7 @@ WRITE8_MEMBER(wc90b_state::slave_irq_ack_w)
}
-static ADDRESS_MAP_START( wc90b_map1, AS_PROGRAM, 8, wc90b_state )
+ADDRESS_MAP_START(wc90b_state::wc90b_map1)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM /* Main RAM */
AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(fgvideoram_w) AM_SHARE("fgvideoram")
@@ -162,7 +162,7 @@ static ADDRESS_MAP_START( wc90b_map1, AS_PROGRAM, 8, wc90b_state )
AM_RANGE(0xfd0c, 0xfd0c) AM_READ(master_irq_ack_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wc90b_map2, AS_PROGRAM, 8, wc90b_state )
+ADDRESS_MAP_START(wc90b_state::wc90b_map2)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xcfff) AM_RAM
AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("spriteram")
@@ -175,7 +175,7 @@ static ADDRESS_MAP_START( wc90b_map2, AS_PROGRAM, 8, wc90b_state )
AM_RANGE(0xfd0c, 0xfd0c) AM_WRITE(slave_irq_ack_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, wc90b_state )
+ADDRESS_MAP_START(wc90b_state::sound_cpu)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("audiobank")
AM_RANGE(0xe000, 0xe000) AM_WRITE(adpcm_control_w)
diff --git a/src/mame/drivers/wecleman.cpp b/src/mame/drivers/wecleman.cpp
index 67d5341db37..10eb1e70b34 100644
--- a/src/mame/drivers/wecleman.cpp
+++ b/src/mame/drivers/wecleman.cpp
@@ -507,7 +507,7 @@ WRITE16_MEMBER(wecleman_state::blitter_w)
WEC Le Mans 24 Main CPU Handlers
***************************************************************************/
-static ADDRESS_MAP_START( wecleman_map, AS_PROGRAM, 16, wecleman_state )
+ADDRESS_MAP_START(wecleman_state::wecleman_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM (03c000-03ffff used as RAM sometimes!)
AM_RANGE(0x040000, 0x043fff) AM_RAM // RAM
AM_RANGE(0x040494, 0x040495) AM_WRITE(wecleman_videostatus_w) AM_SHARE("videostatus") // cloud blending control (HACK)
@@ -539,7 +539,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( hotchase_map, AS_PROGRAM, 16, wecleman_state )
+ADDRESS_MAP_START(wecleman_state::hotchase_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x040000, 0x041fff) AM_RAM // RAM
AM_RANGE(0x060000, 0x063fff) AM_RAM // RAM
@@ -569,7 +569,7 @@ ADDRESS_MAP_END
WEC Le Mans 24 Sub CPU Handlers
***************************************************************************/
-static ADDRESS_MAP_START( wecleman_sub_map, AS_PROGRAM, 16, wecleman_state )
+ADDRESS_MAP_START(wecleman_state::wecleman_sub_map)
AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM
AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("roadram") // Road
AM_RANGE(0x070000, 0x073fff) AM_RAM AM_SHARE("share1") // RAM (Shared with main CPU)
@@ -580,7 +580,7 @@ ADDRESS_MAP_END
Hot Chase Sub CPU Handlers
***************************************************************************/
-static ADDRESS_MAP_START( hotchase_sub_map, AS_PROGRAM, 16, wecleman_state )
+ADDRESS_MAP_START(wecleman_state::hotchase_sub_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM // ROM
AM_RANGE(0x020000, 0x020fff) AM_RAM AM_SHARE("roadram") // Road
AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("share1") // Shared with main CPU
@@ -640,7 +640,7 @@ WRITE8_MEMBER(wecleman_state::wecleman_K00723216_bank_w)
m_k007232->set_bank(0, ~data&1 ); //* (wecleman062gre)
}
-static ADDRESS_MAP_START( wecleman_sound_map, AS_PROGRAM, 8, wecleman_state )
+ADDRESS_MAP_START(wecleman_state::wecleman_sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_RAM
AM_RANGE(0x8500, 0x8500) AM_WRITENOP // increased with speed (global volume)?
@@ -756,7 +756,7 @@ WRITE8_MEMBER(wecleman_state::hotchase_3_k007232_w)
m_k007232_3->write(space, offset ^ 1, data);
}
-static ADDRESS_MAP_START( hotchase_sound_map, AS_PROGRAM, 8, wecleman_state )
+ADDRESS_MAP_START(wecleman_state::hotchase_sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x100d) AM_READWRITE(hotchase_1_k007232_r, hotchase_1_k007232_w) // 3 x K007232
AM_RANGE(0x2000, 0x200d) AM_READWRITE(hotchase_2_k007232_r, hotchase_2_k007232_w)
diff --git a/src/mame/drivers/welltris.cpp b/src/mame/drivers/welltris.cpp
index be90e9be39b..7705bb44530 100644
--- a/src/mame/drivers/welltris.cpp
+++ b/src/mame/drivers/welltris.cpp
@@ -332,7 +332,7 @@ WRITE8_MEMBER(welltris_state::sound_bankswitch_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, welltris_state )
+ADDRESS_MAP_START(welltris_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x17ffff) AM_ROM
AM_RANGE(0x800000, 0x81ffff) AM_RAM AM_SHARE("pixelram") /* Graph_1 & 2*/
@@ -355,13 +355,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, welltris_state )
AM_RANGE(0xfff00c, 0xfff00f) AM_DEVWRITE8("gga", vsystem_gga_device, write, 0x00ff)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, welltris_state )
+ADDRESS_MAP_START(welltris_state::sound_map)
AM_RANGE(0x0000, 0x77ff) AM_ROM
AM_RANGE(0x7800, 0x7fff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_ROMBANK("soundbank")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, welltris_state )
+ADDRESS_MAP_START(welltris_state::sound_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_WRITE(sound_bankswitch_w)
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
diff --git a/src/mame/drivers/wgp.cpp b/src/mame/drivers/wgp.cpp
index b2ce7742c3b..22149f34d02 100644
--- a/src/mame/drivers/wgp.cpp
+++ b/src/mame/drivers/wgp.cpp
@@ -609,7 +609,7 @@ WRITE8_MEMBER(wgp_state::sound_bankswitch_w)
MEMORY STRUCTURES
*****************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wgp_state )
+ADDRESS_MAP_START(wgp_state::main_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x10ffff) AM_RAM /* main CPUA ram */
AM_RANGE(0x140000, 0x143fff) AM_RAM AM_SHARE("sharedram")
@@ -628,7 +628,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wgp_state )
AM_RANGE(0x700000, 0x701fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 16 /* LAN areas not mapped... */, wgp_state )
+ADDRESS_MAP_START(wgp_state::cpu2_map) /* LAN areas not mapped... */
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM
AM_RANGE(0x140000, 0x143fff) AM_RAM AM_SHARE("sharedram")
@@ -644,7 +644,7 @@ ADDRESS_MAP_END
/***************************************************************************/
-static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, wgp_state )
+ADDRESS_MAP_START(wgp_state::z80_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/wheelfir.cpp b/src/mame/drivers/wheelfir.cpp
index 17c5f02f83c..96477b66f21 100644
--- a/src/mame/drivers/wheelfir.cpp
+++ b/src/mame/drivers/wheelfir.cpp
@@ -289,6 +289,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_wheelfir);
TIMER_DEVICE_CALLBACK_MEMBER(scanline_timer_callback);
void wheelfir(machine_config &config);
+ void ramdac_map(address_map &map);
+ void wheelfir_main(address_map &map);
+ void wheelfir_sub(address_map &map);
};
@@ -606,7 +609,7 @@ WRITE16_MEMBER(wheelfir_state::coin_cnt_w)
machine().bookkeeping().coin_counter_w(1, data & 0x02);
}
-static ADDRESS_MAP_START( wheelfir_main, AS_PROGRAM, 16, wheelfir_state )
+ADDRESS_MAP_START(wheelfir_state::wheelfir_main)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -627,7 +630,7 @@ static ADDRESS_MAP_START( wheelfir_main, AS_PROGRAM, 16, wheelfir_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wheelfir_sub, AS_PROGRAM, 16, wheelfir_state )
+ADDRESS_MAP_START(wheelfir_state::wheelfir_sub)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x200000, 0x20ffff) AM_RAM
@@ -744,7 +747,7 @@ void wheelfir_state::machine_start()
}
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, wheelfir_state )
+ADDRESS_MAP_START(wheelfir_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb888_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/white_mod.cpp b/src/mame/drivers/white_mod.cpp
index e8ecfb7385f..4cb4e61f28e 100644
--- a/src/mame/drivers/white_mod.cpp
+++ b/src/mame/drivers/white_mod.cpp
@@ -17,6 +17,7 @@ public:
{ }
void whitestar_mod(machine_config &config);
+ void whitestar_mod_map(address_map &map);
protected:
// devices
@@ -29,7 +30,7 @@ public:
};
-static ADDRESS_MAP_START( whitestar_mod_map, AS_PROGRAM, 8, whitestar_mod_state )
+ADDRESS_MAP_START(whitestar_mod_state::whitestar_mod_map)
AM_RANGE(0x0000, 0xffff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/whitestar.cpp b/src/mame/drivers/whitestar.cpp
index 1ae100ff657..78c35824531 100644
--- a/src/mame/drivers/whitestar.cpp
+++ b/src/mame/drivers/whitestar.cpp
@@ -40,6 +40,7 @@ public:
virtual void machine_start() override;
INTERRUPT_GEN_MEMBER(whitestar_firq_interrupt);
void whitestar(machine_config &config);
+ void whitestar_map(address_map &map);
};
static INPUT_PORTS_START( whitestar )
@@ -66,7 +67,7 @@ static INPUT_PORTS_START( whitestar )
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
-static ADDRESS_MAP_START( whitestar_map, AS_PROGRAM, 8, whitestar_state )
+ADDRESS_MAP_START(whitestar_state::whitestar_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM
AM_RANGE(0x3000, 0x3000) AM_READ_PORT("DEDICATED")
AM_RANGE(0x3100, 0x3100) AM_READ_PORT("DSW0")
diff --git a/src/mame/drivers/wicat.cpp b/src/mame/drivers/wicat.cpp
index 0c64f432835..a6cf8bb1e2b 100644
--- a/src/mame/drivers/wicat.cpp
+++ b/src/mame/drivers/wicat.cpp
@@ -128,6 +128,11 @@ public:
void wicat(machine_config &config);
+ void wicat_mem(address_map &map);
+ void wicat_video_io(address_map &map);
+ void wicat_video_mem(address_map &map);
+ void wicat_wd1000_io(address_map &map);
+ void wicat_wd1000_mem(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -155,7 +160,7 @@ private:
};
-static ADDRESS_MAP_START(wicat_mem, AS_PROGRAM, 16, wicat_state)
+ADDRESS_MAP_START(wicat_state::wicat_mem)
ADDRESS_MAP_UNMAP_LOW
ADDRESS_MAP_GLOBAL_MASK(0xffffff)
AM_RANGE(0x000000, 0x001fff) AM_ROM AM_REGION("c2", 0x0000)
@@ -179,12 +184,12 @@ static ADDRESS_MAP_START(wicat_mem, AS_PROGRAM, 16, wicat_state)
AM_RANGE(0xf00f00, 0xf00fff) AM_READWRITE(invalid_r,invalid_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(wicat_video_mem, AS_PROGRAM, 16, wicat_state)
+ADDRESS_MAP_START(wicat_state::wicat_video_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("g1", 0x0000)
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(wicat_video_io, AS_IO, 8, wicat_state)
+ADDRESS_MAP_START(wicat_state::wicat_video_io)
// these are largely wild guesses...
AM_RANGE(0x0000,0x0003) AM_READWRITE(video_timer_r,video_timer_w) // some sort of timer?
AM_RANGE(0x0100,0x0107) AM_READWRITE(video_uart0_r,video_uart0_w) // INS2651 UART #1
@@ -202,12 +207,12 @@ static ADDRESS_MAP_START(wicat_video_io, AS_IO, 8, wicat_state)
AM_RANGE(0x9000,0x9fff) AM_ROM AM_REGION("g2char",0x0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(wicat_wd1000_mem, AS_PROGRAM, 16, wicat_state)
+ADDRESS_MAP_START(wicat_state::wicat_wd1000_mem)
AM_RANGE(0x0000, 0x17ff) AM_ROM AM_REGION("wd3", 0x0000)
AM_RANGE(0x1800, 0x1fff) AM_NOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START(wicat_wd1000_io, AS_IO, 8, wicat_state)
+ADDRESS_MAP_START(wicat_state::wicat_wd1000_io)
AM_RANGE(0x0000, 0x00ff) AM_RAM // left bank - RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM // right bank - I/O ports (TODO)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/wico.cpp b/src/mame/drivers/wico.cpp
index f268f7f730c..83567c72533 100644
--- a/src/mame/drivers/wico.cpp
+++ b/src/mame/drivers/wico.cpp
@@ -71,6 +71,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(irq_housekeeping);
TIMER_DEVICE_CALLBACK_MEMBER(firq_housekeeping);
void wico(machine_config &config);
+ void ccpu_map(address_map &map);
+ void hcpu_map(address_map &map);
private:
bool m_zcen;
bool m_gten;
@@ -85,7 +87,7 @@ private:
};
// housekeeping cpu
-static ADDRESS_MAP_START( hcpu_map, AS_PROGRAM, 8, wico_state )
+ADDRESS_MAP_START(wico_state::hcpu_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("sharedram")
AM_RANGE(0x1fe0, 0x1fe0) AM_WRITE(muxld_w)
//AM_RANGE(0x1fe1, 0x1fe1) AM_WRITE(store_w)
@@ -107,7 +109,7 @@ static ADDRESS_MAP_START( hcpu_map, AS_PROGRAM, 8, wico_state )
ADDRESS_MAP_END
// command cpu
-static ADDRESS_MAP_START( ccpu_map, AS_PROGRAM, 8, wico_state )
+ADDRESS_MAP_START(wico_state::ccpu_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("sharedram") // 2128 2k RAM
//AM_RANGE(0x1fe0, 0x1fe0) AM_WRITE(muxld_w) // to display module
//AM_RANGE(0x1fe1, 0x1fe1) AM_WRITE(store_w) // enable save to nvram
diff --git a/src/mame/drivers/wildpkr.cpp b/src/mame/drivers/wildpkr.cpp
index 19dd672c27f..3c2aa2e9bfd 100644
--- a/src/mame/drivers/wildpkr.cpp
+++ b/src/mame/drivers/wildpkr.cpp
@@ -219,6 +219,10 @@ public:
IRQ_CALLBACK_MEMBER(tabpkr_irq_ack);
void wildpkr(machine_config &config);
void tabpkr(machine_config &config);
+ void hd63484_map(address_map &map);
+ void ramdac_map(address_map &map);
+ void tabpkr_map(address_map &map);
+ void wildpkr_map(address_map &map);
};
@@ -302,7 +306,7 @@ WRITE16_MEMBER(wildpkr_state::unknown_trigger_w)
* Memory Map *
*************************/
-static ADDRESS_MAP_START( wildpkr_map, AS_PROGRAM, 16, wildpkr_state )
+ADDRESS_MAP_START(wildpkr_state::wildpkr_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x113fff) AM_RAM
AM_RANGE(0x800000, 0x800001) AM_DEVREADWRITE("acrtc", hd63484_device, status16_r, address16_w)
@@ -319,7 +323,7 @@ static ADDRESS_MAP_START( wildpkr_map, AS_PROGRAM, 16, wildpkr_state )
AM_RANGE(0x800286, 0x800289) AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( tabpkr_map, AS_PROGRAM, 16, wildpkr_state )
+ADDRESS_MAP_START(wildpkr_state::tabpkr_map)
AM_RANGE(0x000000, 0x2fffff) AM_ROM
AM_RANGE(0x300000, 0x303fff) AM_RAM
AM_RANGE(0x400000, 0x400fff) AM_RAM_WRITE(nvram_w) AM_SHARE("nvram")
@@ -340,7 +344,7 @@ static ADDRESS_MAP_START( tabpkr_map, AS_PROGRAM, 16, wildpkr_state )
AM_RANGE(0x70000a, 0x70000b) AM_WRITENOP // only writes 0 at POST
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hd63484_map, 0, 16, wildpkr_state )
+ADDRESS_MAP_START(wildpkr_state::hd63484_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
@@ -432,7 +436,7 @@ void wildpkr_state::machine_start()
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, wildpkr_state )
+ADDRESS_MAP_START(wildpkr_state::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/williams.cpp b/src/mame/drivers/williams.cpp
index f8691982ade..3aa8dd32add 100644
--- a/src/mame/drivers/williams.cpp
+++ b/src/mame/drivers/williams.cpp
@@ -521,7 +521,7 @@ Reference video: https://www.youtube.com/watch?v=R5OeC6Wc_yI
*
*************************************/
-static ADDRESS_MAP_START( defender_map, AS_PROGRAM, 8, williams_state )
+ADDRESS_MAP_START(williams_state::defender_map)
AM_RANGE(0x0000, 0xbfff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0xc000, 0xcfff) AM_DEVICE("bankc000", address_map_bank_device, amap8)
AM_RANGE(0xd000, 0xdfff) AM_WRITE(defender_bank_select_w)
@@ -529,7 +529,7 @@ static ADDRESS_MAP_START( defender_map, AS_PROGRAM, 8, williams_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( defender_bankc000_map, AS_PROGRAM, 8, williams_state )
+ADDRESS_MAP_START(williams_state::defender_bankc000_map)
AM_RANGE(0x0000, 0x000f) AM_MIRROR(0x03e0) AM_WRITEONLY AM_SHARE("paletteram")
AM_RANGE(0x03ff, 0x03ff) AM_WRITE(williams_watchdog_reset_w)
AM_RANGE(0x0010, 0x001f) AM_MIRROR(0x03e0) AM_WRITE(defender_video_control_w)
@@ -549,7 +549,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( williams_map, AS_PROGRAM, 8, williams_state )
+ADDRESS_MAP_START(williams_state::williams_map)
AM_RANGE(0x0000, 0x8fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_SHARE("videoram")
AM_RANGE(0x9000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xc00f) AM_MIRROR(0x03f0) AM_WRITEONLY AM_SHARE("paletteram")
@@ -571,7 +571,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( sinistar_map, AS_PROGRAM, 8, williams_state )
+ADDRESS_MAP_START(williams_state::sinistar_map)
AM_RANGE(0x0000, 0x8fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_SHARE("videoram")
AM_RANGE(0x9000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xc00f) AM_MIRROR(0x03f0) AM_WRITEONLY AM_SHARE("paletteram")
@@ -594,7 +594,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( blaster_map, AS_PROGRAM, 8, blaster_state )
+ADDRESS_MAP_START(blaster_state::blaster_map)
AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_SHARE("videoram")
AM_RANGE(0x4000, 0x8fff) AM_READ_BANK("bank2") AM_WRITEONLY
AM_RANGE(0xbb00, 0xbbff) AM_WRITEONLY AM_SHARE("blaster_pal0")
@@ -622,7 +622,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( williams2_common_map, AS_PROGRAM, 8, williams2_state )
+ADDRESS_MAP_START(williams2_state::williams2_common_map)
AM_RANGE(0x0000, 0xbfff) AM_RAM AM_SHARE("videoram")
AM_RANGE(0x0000, 0x7fff) AM_READ_BANK("bank1")
AM_RANGE(0x8000, 0x87ff) AM_DEVICE("bank8000", address_map_bank_device, amap8)
@@ -643,14 +643,14 @@ static ADDRESS_MAP_START( williams2_common_map, AS_PROGRAM, 8, williams2_state )
AM_RANGE(0xcc00, 0xcfff) AM_RAM_WRITE(williams_cmos_w) AM_SHARE("nvram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( williams2_bank8000_map, AS_PROGRAM, 8, williams2_state )
+ADDRESS_MAP_START(williams2_state::williams2_bank8000_map)
AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("vram8000")
AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(williams2_paletteram_w) AM_SHARE("paletteram")
ADDRESS_MAP_END
/* mysticm and inferno: D000-DFFF is RAM */
-static ADDRESS_MAP_START( williams2_d000_ram_map, AS_PROGRAM, 8, williams2_state )
+ADDRESS_MAP_START(williams2_state::williams2_d000_ram_map)
AM_IMPORT_FROM(williams2_common_map)
AM_RANGE(0xd000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_ROM
@@ -658,7 +658,7 @@ ADDRESS_MAP_END
/* tshoot and joust2: D000-DFFF is ROM */
-static ADDRESS_MAP_START( williams2_d000_rom_map, AS_PROGRAM, 8, williams2_state )
+ADDRESS_MAP_START(williams2_state::williams2_d000_rom_map)
AM_IMPORT_FROM(williams2_common_map)
AM_RANGE(0xd000, 0xffff) AM_ROM
ADDRESS_MAP_END
@@ -671,14 +671,14 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( defender_sound_map, AS_PROGRAM, 8, williams_state )
+ADDRESS_MAP_START(williams_state::defender_sound_map)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE("pia_2", pia6821_device, read, write)
AM_RANGE(0xb000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, williams_state )
+ADDRESS_MAP_START(williams_state::sound_map)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0x0080, 0x00ff) AM_RAM /* MC6810 RAM */
AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE("pia_2", pia6821_device, read, write)
@@ -686,7 +686,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, williams_state )
ADDRESS_MAP_END
/* Same as above, but for second sound board */
-static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8, blaster_state )
+ADDRESS_MAP_START(blaster_state::sound_map_b)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0x0080, 0x00ff) AM_RAM /* MC6810 RAM */
AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE("pia_2b", pia6821_device, read, write)
@@ -701,7 +701,7 @@ ADDRESS_MAP_END
*
*************************************/
-static ADDRESS_MAP_START( williams2_sound_map, AS_PROGRAM, 8, williams2_state )
+ADDRESS_MAP_START(williams2_state::williams2_sound_map)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0x0080, 0x00ff) AM_RAM /* MC6810 RAM */
AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia_2", pia6821_device, read, write)
diff --git a/src/mame/drivers/wink.cpp b/src/mame/drivers/wink.cpp
index 75747fab254..6aa368ff2ca 100644
--- a/src/mame/drivers/wink.cpp
+++ b/src/mame/drivers/wink.cpp
@@ -63,6 +63,10 @@ public:
INTERRUPT_GEN_MEMBER(wink_sound);
void wink(machine_config &config);
+ void wink_io(address_map &map);
+ void wink_map(address_map &map);
+ void wink_sound_io(address_map &map);
+ void wink_sound_map(address_map &map);
};
@@ -133,7 +137,7 @@ WRITE8_MEMBER(wink_state::sound_irq_w)
//machine().scheduler().synchronize();
}
-static ADDRESS_MAP_START( wink_map, AS_PROGRAM, 8, wink_state )
+ADDRESS_MAP_START(wink_state::wink_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("nvram")
@@ -166,7 +170,7 @@ WRITE8_MEMBER(wink_state::prot_w)
//take a9-a15 and stuff them in a variable for later use.
}
-static ADDRESS_MAP_START( wink_io, AS_IO, 8, wink_state )
+ADDRESS_MAP_START(wink_state::wink_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x1f) AM_RAM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette") //0x10-0x1f is likely to be something else
// AM_RANGE(0x20, 0x20) AM_WRITENOP //??? seems unused..
@@ -189,13 +193,13 @@ static ADDRESS_MAP_START( wink_io, AS_IO, 8, wink_state )
AM_RANGE(0xe0, 0xff) AM_READ(prot_r) //load math unit from buffer & lower address-bus
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wink_sound_map, AS_PROGRAM, 8, wink_state )
+ADDRESS_MAP_START(wink_state::wink_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x43ff) AM_RAM
AM_RANGE(0x8000, 0x8000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wink_sound_io, AS_IO, 8, wink_state )
+ADDRESS_MAP_START(wink_state::wink_sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("aysnd", ay8910_device, data_r, data_w)
AM_RANGE(0x80, 0x80) AM_DEVWRITE("aysnd", ay8910_device, address_w)
diff --git a/src/mame/drivers/wiping.cpp b/src/mame/drivers/wiping.cpp
index a0948cea089..2e7265c2bf8 100644
--- a/src/mame/drivers/wiping.cpp
+++ b/src/mame/drivers/wiping.cpp
@@ -78,7 +78,7 @@ WRITE_LINE_MEMBER(wiping_state::sound_irq_mask_w)
m_sound_irq_mask = state;
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, wiping_state )
+ADDRESS_MAP_START(wiping_state::main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x8000, 0x83ff) AM_SHARE("videoram")
AM_RANGE(0x8400, 0x87ff) AM_SHARE("colorram")
@@ -92,7 +92,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, wiping_state )
AM_RANGE(0xb800, 0xb800) AM_DEVWRITE("watchdog", watchdog_timer_device, reset_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wiping_state )
+ADDRESS_MAP_START(wiping_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_DEVWRITE("wiping", wiping_sound_device, sound_w)
AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("share1")
diff --git a/src/mame/drivers/witch.cpp b/src/mame/drivers/witch.cpp
index b6a9851f5c4..6084892705e 100644
--- a/src/mame/drivers/witch.cpp
+++ b/src/mame/drivers/witch.cpp
@@ -302,6 +302,8 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
virtual void machine_reset() override;
void witch(machine_config &config);
+ void map_main(address_map &map);
+ void map_sub(address_map &map);
};
@@ -479,7 +481,7 @@ WRITE8_MEMBER(witch_state::yscroll_w)
m_scrolly=data;
}
-static ADDRESS_MAP_START( map_main, AS_PROGRAM, 8, witch_state )
+ADDRESS_MAP_START(witch_state::map_main)
AM_RANGE(0x0000, UNBANKED_SIZE-1) AM_ROM
AM_RANGE(UNBANKED_SIZE, 0x7fff) AM_ROMBANK("bank1")
AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
@@ -502,7 +504,7 @@ static ADDRESS_MAP_START( map_main, AS_PROGRAM, 8, witch_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( map_sub, AS_PROGRAM, 8, witch_state )
+ADDRESS_MAP_START(witch_state::map_sub)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
AM_RANGE(0x8008, 0x8009) AM_DEVREADWRITE("ym2", ym2203_device, read, write)
diff --git a/src/mame/drivers/wiz.cpp b/src/mame/drivers/wiz.cpp
index c3c7bf77bfd..3201c96dd9a 100644
--- a/src/mame/drivers/wiz.cpp
+++ b/src/mame/drivers/wiz.cpp
@@ -309,7 +309,7 @@ WRITE8_MEMBER(wiz_state::wiz_main_nmi_mask_w)
}
-static ADDRESS_MAP_START( kungfut_main_map, AS_PROGRAM, 8, wiz_state )
+ADDRESS_MAP_START(wiz_state::kungfut_main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xd000, 0xd3ff) AM_RAM AM_SHARE("videoram2")
@@ -333,18 +333,18 @@ static ADDRESS_MAP_START( kungfut_main_map, AS_PROGRAM, 8, wiz_state )
AM_RANGE(0xf818, 0xf818) AM_WRITE(wiz_bgcolor_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, wiz_state )
+ADDRESS_MAP_START(wiz_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wiz_main_map, AS_PROGRAM, 8, wiz_state )
+ADDRESS_MAP_START(wiz_state::wiz_main_map)
AM_IMPORT_FROM( kungfut_main_map )
AM_RANGE(0xc800, 0xc801) AM_WRITE(wiz_coin_counter_w)
AM_RANGE(0xd400, 0xd400) AM_READ(wiz_protection_r)
AM_RANGE(0xf000, 0xf000) AM_WRITE(wiz_sprite_bank_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stinger_main_map, AS_PROGRAM, 8, wiz_state )
+ADDRESS_MAP_START(wiz_state::stinger_main_map)
AM_IMPORT_FROM( kungfut_main_map )
// AM_RANGE(0xf008, 0xf00f) AM_WRITENOP // ?
AM_RANGE(0xf800, 0xf800) AM_DEVREAD("watchdog", watchdog_timer_device, reset_r)
@@ -361,7 +361,7 @@ WRITE8_MEMBER(wiz_state::wiz_sound_nmi_mask_w)
}
-static ADDRESS_MAP_START( kungfut_sound_map, AS_PROGRAM, 8, wiz_state )
+ADDRESS_MAP_START(wiz_state::kungfut_sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
@@ -371,7 +371,7 @@ static ADDRESS_MAP_START( kungfut_sound_map, AS_PROGRAM, 8, wiz_state )
AM_RANGE(0x7000, 0x7000) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_WRITE(wiz_sound_nmi_mask_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( stinger_sound_map, AS_PROGRAM, 8, wiz_state )
+ADDRESS_MAP_START(wiz_state::stinger_sound_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
@@ -841,7 +841,7 @@ MACHINE_CONFIG_DERIVED(wiz_state::stinger, kungfut)
/* basic machine hardware */
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(stinger_main_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
/* basic machine hardware */
MCFG_CPU_MODIFY("audiocpu")
diff --git a/src/mame/drivers/wmg.cpp b/src/mame/drivers/wmg.cpp
index 45b1a459f32..4dd207b9a8a 100644
--- a/src/mame/drivers/wmg.cpp
+++ b/src/mame/drivers/wmg.cpp
@@ -105,6 +105,8 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER(wmg_mux_r);
void wmg(machine_config &config);
+ void wmg_cpu1(address_map &map);
+ void wmg_cpu2(address_map &map);
private:
uint8_t m_wmg_c400;
@@ -124,7 +126,7 @@ private:
* Address Map
*
*************************************/
-static ADDRESS_MAP_START( wmg_cpu1, AS_PROGRAM, 8, wmg_state )
+ADDRESS_MAP_START(wmg_state::wmg_cpu1)
AM_RANGE(0x0000, 0x8fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_SHARE("videoram")
AM_RANGE(0x9000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xcfff) AM_ROMBANK("bank7")
@@ -132,7 +134,7 @@ static ADDRESS_MAP_START( wmg_cpu1, AS_PROGRAM, 8, wmg_state )
AM_RANGE(0xd000, 0xd000) AM_WRITE(wmg_d000_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wmg_cpu2, AS_PROGRAM, 8, wmg_state )
+ADDRESS_MAP_START(wmg_state::wmg_cpu2)
AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */
AM_RANGE(0x0080, 0x00ff) AM_RAM /* MC6810 RAM */
AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE("pia_2", pia6821_device, read, write)
diff --git a/src/mame/drivers/wms.cpp b/src/mame/drivers/wms.cpp
index b625e094e44..0484c351d58 100644
--- a/src/mame/drivers/wms.cpp
+++ b/src/mame/drivers/wms.cpp
@@ -102,6 +102,10 @@ public:
uint32_t screen_update_wms(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void wms(machine_config &config);
+ void adsp_data_map(address_map &map);
+ void adsp_program_map(address_map &map);
+ void wms_io(address_map &map);
+ void wms_map(address_map &map);
protected:
// devices
@@ -119,7 +123,7 @@ uint32_t wms_state::screen_update_wms(screen_device &screen, bitmap_ind16 &bitma
* Memory Map Information *
*********************************************/
-static ADDRESS_MAP_START( wms_map, AS_PROGRAM, 8, wms_state )
+ADDRESS_MAP_START(wms_state::wms_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM
AM_RANGE(0x60000, 0xfffff) AM_ROM AM_REGION("maincpu", 0x60000) // TODO: fix me
ADDRESS_MAP_END
@@ -129,15 +133,15 @@ READ8_MEMBER(wms_state::test_r)
return 1;
}
-static ADDRESS_MAP_START( wms_io, AS_IO, 8, wms_state )
+ADDRESS_MAP_START(wms_state::wms_io)
AM_RANGE(0x1207, 0x1207) AM_READ(test_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, wms_state )
+ADDRESS_MAP_START(wms_state::adsp_program_map)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, wms_state )
+ADDRESS_MAP_START(wms_state::adsp_data_map)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/wolfpack.cpp b/src/mame/drivers/wolfpack.cpp
index fe23e166beb..9967a8193b6 100644
--- a/src/mame/drivers/wolfpack.cpp
+++ b/src/mame/drivers/wolfpack.cpp
@@ -127,7 +127,7 @@ WRITE8_MEMBER(wolfpack_state::coldetres_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, wolfpack_state )
+ADDRESS_MAP_START(wolfpack_state::main_map)
AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x100)
AM_RANGE(0x1000, 0x1000) AM_READ_PORT("INPUTS")
AM_RANGE(0x1000, 0x10ff) AM_WRITEONLY AM_SHARE("alpha_num_ram")
diff --git a/src/mame/drivers/wpc_95.cpp b/src/mame/drivers/wpc_95.cpp
index 5c1e3b4d98e..962b057ce6b 100644
--- a/src/mame/drivers/wpc_95.cpp
+++ b/src/mame/drivers/wpc_95.cpp
@@ -61,6 +61,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(zc_timer);
void wpc_95(machine_config &config);
+ void wpc_95_map(address_map &map);
protected:
// devices
required_device<cpu_device> maincpu;
@@ -118,7 +119,7 @@ private:
bool sc_aux_lamps_handler(int sid, bool state);
};
-static ADDRESS_MAP_START( wpc_95_map, AS_PROGRAM, 8, wpc_95_state )
+ADDRESS_MAP_START(wpc_95_state::wpc_95_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x3000, 0x31ff) AM_RAMBANK("dmd0")
diff --git a/src/mame/drivers/wpc_an.cpp b/src/mame/drivers/wpc_an.cpp
index 9f517cca4e2..3872b2e2a2c 100644
--- a/src/mame/drivers/wpc_an.cpp
+++ b/src/mame/drivers/wpc_an.cpp
@@ -33,6 +33,7 @@ public:
void wpc_an_dd(machine_config &config);
void wpc_an(machine_config &config);
void wpc_an_base(machine_config &config);
+ void wpc_an_map(address_map &map);
protected:
// devices
@@ -70,7 +71,7 @@ private:
};
-static ADDRESS_MAP_START( wpc_an_map, AS_PROGRAM, 8, wpc_an_state )
+ADDRESS_MAP_START(wpc_an_state::wpc_an_map)
AM_RANGE(0x0000, 0x2fff) AM_READWRITE(ram_r,ram_w)
AM_RANGE(0x3000, 0x3faf) AM_RAM
AM_RANGE(0x3fb0, 0x3fff) AM_DEVREADWRITE("wpc",wpc_device,read,write) // WPC device
diff --git a/src/mame/drivers/wpc_dcs.cpp b/src/mame/drivers/wpc_dcs.cpp
index fd00b0e3d38..fbf595d7f7d 100644
--- a/src/mame/drivers/wpc_dcs.cpp
+++ b/src/mame/drivers/wpc_dcs.cpp
@@ -53,6 +53,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(zc_timer);
void wpc_dcs(machine_config &config);
+ void wpc_dcs_map(address_map &map);
protected:
// devices
required_device<cpu_device> maincpu;
@@ -72,7 +73,7 @@ private:
uint16_t rtc_base_day;
};
-static ADDRESS_MAP_START( wpc_dcs_map, AS_PROGRAM, 8, wpc_dcs_state )
+ADDRESS_MAP_START(wpc_dcs_state::wpc_dcs_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x3000, 0x31ff) AM_RAMBANK("dmd0")
diff --git a/src/mame/drivers/wpc_dot.cpp b/src/mame/drivers/wpc_dot.cpp
index 3fd3f879adb..7d4b046e972 100644
--- a/src/mame/drivers/wpc_dot.cpp
+++ b/src/mame/drivers/wpc_dot.cpp
@@ -9,7 +9,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START( wpc_dot_map, AS_PROGRAM, 8, wpc_dot_state )
+ADDRESS_MAP_START(wpc_dot_state::wpc_dot_map)
AM_RANGE(0x0000, 0x2fff) AM_READWRITE(ram_r,ram_w)
AM_RANGE(0x3000, 0x31ff) AM_RAMBANK("dmdbank1")
AM_RANGE(0x3200, 0x33ff) AM_RAMBANK("dmdbank2")
diff --git a/src/mame/drivers/wpc_flip1.cpp b/src/mame/drivers/wpc_flip1.cpp
index 6402a28be05..81ea8a18dfa 100644
--- a/src/mame/drivers/wpc_flip1.cpp
+++ b/src/mame/drivers/wpc_flip1.cpp
@@ -9,7 +9,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START( wpc_flip1_map, AS_PROGRAM, 8, wpc_flip1_state )
+ADDRESS_MAP_START(wpc_flip1_state::wpc_flip1_map)
AM_RANGE(0x0000, 0x2fff) AM_READWRITE(ram_r,ram_w)
AM_RANGE(0x3000, 0x31ff) AM_RAMBANK("dmdbank1")
AM_RANGE(0x3200, 0x33ff) AM_RAMBANK("dmdbank2")
diff --git a/src/mame/drivers/wpc_flip2.cpp b/src/mame/drivers/wpc_flip2.cpp
index f221ec95bea..ecd513bedf1 100644
--- a/src/mame/drivers/wpc_flip2.cpp
+++ b/src/mame/drivers/wpc_flip2.cpp
@@ -9,7 +9,7 @@
#include "speaker.h"
-static ADDRESS_MAP_START( wpc_flip2_map, AS_PROGRAM, 8, wpc_flip2_state )
+ADDRESS_MAP_START(wpc_flip2_state::wpc_flip2_map)
AM_RANGE(0x0000, 0x2fff) AM_READWRITE(ram_r,ram_w)
AM_RANGE(0x3000, 0x31ff) AM_RAMBANK("dmdbank1")
AM_RANGE(0x3200, 0x33ff) AM_RAMBANK("dmdbank2")
diff --git a/src/mame/drivers/wpc_s.cpp b/src/mame/drivers/wpc_s.cpp
index f66b4199022..852e559af01 100644
--- a/src/mame/drivers/wpc_s.cpp
+++ b/src/mame/drivers/wpc_s.cpp
@@ -56,6 +56,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(zc_timer);
void wpc_s(machine_config &config);
+ void wpc_s_map(address_map &map);
protected:
// devices
required_device<cpu_device> maincpu;
@@ -99,7 +100,7 @@ private:
uint16_t rtc_base_day;
};
-static ADDRESS_MAP_START( wpc_s_map, AS_PROGRAM, 8, wpc_s_state )
+ADDRESS_MAP_START(wpc_s_state::wpc_s_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("mainram")
AM_RANGE(0x3000, 0x31ff) AM_RAMBANK("dmd0")
AM_RANGE(0x3200, 0x33ff) AM_RAMBANK("dmd2")
diff --git a/src/mame/drivers/wrally.cpp b/src/mame/drivers/wrally.cpp
index f84847c1374..77b4d3be621 100644
--- a/src/mame/drivers/wrally.cpp
+++ b/src/mame/drivers/wrally.cpp
@@ -138,12 +138,12 @@ The PCB has a layout that can either use the 4 rom set of I7, I9, I11 & I13 or l
#include "speaker.h"
-static ADDRESS_MAP_START( mcu_hostmem_map, 0, 8, wrally_state )
+ADDRESS_MAP_START(wrally_state::mcu_hostmem_map)
AM_RANGE(0x0000, 0xffff) AM_MASK(0x3fff) AM_READWRITE(shareram_r, shareram_w) // shared RAM with the main CPU
ADDRESS_MAP_END
-static ADDRESS_MAP_START( wrally_map, AS_PROGRAM, 16, wrally_state )
+ADDRESS_MAP_START(wrally_state::wrally_map)
AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */
AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(vram_w) AM_SHARE("videoram") /* encrypted Video RAM */
AM_RANGE(0x108000, 0x108007) AM_RAM AM_SHARE("vregs") /* Video Registers */
@@ -154,7 +154,7 @@ static ADDRESS_MAP_START( wrally_map, AS_PROGRAM, 16, wrally_state )
AM_RANGE(0x700002, 0x700003) AM_READ_PORT("P1_P2")
AM_RANGE(0x700004, 0x700005) AM_READ_PORT("WHEEL")
AM_RANGE(0x700008, 0x700009) AM_READ_PORT("SYSTEM")
- AM_RANGE(0x70000a, 0x70000b) AM_SELECT(0x000070) AM_DEVWRITE8_MOD("outlatch", ls259_device, write_d0, rshift<3>, 0x00ff)
+ ;map(0x70000a, 0x70000b).select(0x000070).lw8("outlatch_w", [this](address_space &space, offs_t offset, u8 data, u8 mem_mask){ m_outlatch->write_d0(space, offset >> 3, data, mem_mask); }).umask16(0x00ff);
AM_RANGE(0x70000c, 0x70000d) AM_WRITE(okim6295_bankswitch_w) /* OKI6295 bankswitch */
AM_RANGE(0x70000e, 0x70000f) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) /* OKI6295 status/data register */
AM_RANGE(0xfec000, 0xfeffff) AM_RAM AM_SHARE("shareram") /* Work RAM (shared with DS5002FP) */
@@ -162,7 +162,7 @@ ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, wrally_state )
+ADDRESS_MAP_START(wrally_state::oki_map)
AM_RANGE(0x00000, 0x2ffff) AM_ROM
AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/wswan.cpp b/src/mame/drivers/wswan.cpp
index 8f81a285bd6..985e892fea1 100644
--- a/src/mame/drivers/wswan.cpp
+++ b/src/mame/drivers/wswan.cpp
@@ -42,20 +42,20 @@
#include "wswan.lh"
-static ADDRESS_MAP_START (wswan_mem, AS_PROGRAM, 8, wswan_state)
+ADDRESS_MAP_START(wswan_state::wswan_mem)
AM_RANGE(0x00000, 0x03fff) AM_DEVREADWRITE("vdp", wswan_video_device, vram_r, vram_w) // 16kb RAM / 4 colour tiles
AM_RANGE(0x04000, 0x0ffff) AM_NOP // nothing
//AM_RANGE(0x10000, 0xeffff) // cart range, setup at machine_start
AM_RANGE(0xf0000, 0xfffff) AM_READ(bios_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START (wscolor_mem, AS_PROGRAM, 8, wswan_state)
+ADDRESS_MAP_START(wswan_state::wscolor_mem)
AM_RANGE(0x00000, 0x0ffff) AM_DEVREADWRITE("vdp", wswan_video_device, vram_r, vram_w) // 16kb RAM / 4 colour tiles, 16 colour tiles + palettes
//AM_RANGE(0x10000, 0xeffff) // cart range, setup at machine_start
AM_RANGE(0xf0000, 0xfffff) AM_READ(bios_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START (wswan_io, AS_IO, 8, wswan_state)
+ADDRESS_MAP_START(wswan_state::wswan_io)
AM_RANGE(0x00, 0xff) AM_READWRITE(port_r, port_w) // I/O ports
ADDRESS_MAP_END
diff --git a/src/mame/drivers/wwfsstar.cpp b/src/mame/drivers/wwfsstar.cpp
index f8f4e3cc5ea..7efdf31a5b3 100644
--- a/src/mame/drivers/wwfsstar.cpp
+++ b/src/mame/drivers/wwfsstar.cpp
@@ -174,7 +174,7 @@ static constexpr XTAL PIXEL_CLOCK = MASTER_CLOCK / 4;
Pretty Straightforward
*******************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wwfsstar_state )
+ADDRESS_MAP_START(wwfsstar_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(fg0_videoram_w) AM_SHARE("fg0_videoram") /* FG0 Ram */
AM_RANGE(0x0c0000, 0x0c0fff) AM_RAM_WRITE(bg0_videoram_w) AM_SHARE("bg0_videoram") /* BG0 Ram */
@@ -192,7 +192,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wwfsstar_state )
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* Work Ram */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wwfsstar_state )
+ADDRESS_MAP_START(wwfsstar_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_device, read, write)
diff --git a/src/mame/drivers/wyse.cpp b/src/mame/drivers/wyse.cpp
index e3288c86847..66c21fce1b9 100644
--- a/src/mame/drivers/wyse.cpp
+++ b/src/mame/drivers/wyse.cpp
@@ -40,16 +40,18 @@ public:
{ }
void wyse(machine_config &config);
+void io_map(address_map &map);
+void mem_map(address_map &map);
private:
// required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, wyse_state )
+ADDRESS_MAP_START(wyse_state::mem_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("videoram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, wyse_state )
+ADDRESS_MAP_START(wyse_state::io_map)
ADDRESS_MAP_END
static INPUT_PORTS_START( wyse )
diff --git a/src/mame/drivers/wyvernf0.cpp b/src/mame/drivers/wyvernf0.cpp
index 4ca2c66a00b..0a59e4331e2 100644
--- a/src/mame/drivers/wyvernf0.cpp
+++ b/src/mame/drivers/wyvernf0.cpp
@@ -108,6 +108,8 @@ public:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
void wyvernf0(machine_config &config);
+ void sound_map(address_map &map);
+ void wyvernf0_map(address_map &map);
};
@@ -383,7 +385,7 @@ WRITE8_MEMBER(wyvernf0_state::nmi_enable_w)
}
}
-static ADDRESS_MAP_START( wyvernf0_map, AS_PROGRAM, 8, wyvernf0_state )
+ADDRESS_MAP_START(wyvernf0_state::wyvernf0_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
@@ -422,7 +424,7 @@ static ADDRESS_MAP_START( wyvernf0_map, AS_PROGRAM, 8, wyvernf0_state )
AM_RANGE(0xdc00, 0xdc00) AM_WRITENOP // irq ack?
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wyvernf0_state )
+ADDRESS_MAP_START(wyvernf0_state::sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("ay1", ym2149_device, address_data_w)
diff --git a/src/mame/drivers/x07.cpp b/src/mame/drivers/x07.cpp
index 5c2561e3a19..6bdd855c928 100644
--- a/src/mame/drivers/x07.cpp
+++ b/src/mame/drivers/x07.cpp
@@ -1220,7 +1220,7 @@ WRITE8_MEMBER( x07_state::x07_io_w )
}
}
-static ADDRESS_MAP_START(x07_mem, AS_PROGRAM, 8, x07_state)
+ADDRESS_MAP_START(x07_state::x07_mem)
ADDRESS_MAP_UNMAP_LOW
AM_RANGE(0x0000, 0x1fff) AM_NOP //RAM installed at runtime
AM_RANGE(0x2000, 0x7fff) AM_NOP //Memory Card RAM/ROM
@@ -1230,7 +1230,7 @@ static ADDRESS_MAP_START(x07_mem, AS_PROGRAM, 8, x07_state)
AM_RANGE(0xb000, 0xffff) AM_ROM AM_REGION("basic", 0) //BASIC ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x07_io , AS_IO, 8, x07_state)
+ADDRESS_MAP_START(x07_state::x07_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK (0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(x07_io_r, x07_io_w)
diff --git a/src/mame/drivers/x1.cpp b/src/mame/drivers/x1.cpp
index 945bc364e05..2c0c52668cd 100644
--- a/src/mame/drivers/x1.cpp
+++ b/src/mame/drivers/x1.cpp
@@ -1319,7 +1319,7 @@ WRITE8_MEMBER( x1_state::x1turbo_mem_w )
*
*************************************/
-static ADDRESS_MAP_START( x1_io_banks_common, AS_IO, 8, x1_state )
+ADDRESS_MAP_START(x1_state::x1_io_banks_common)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0e00, 0x0e02) AM_WRITE(x1_rom_w)
@@ -1350,7 +1350,7 @@ static ADDRESS_MAP_START( x1_io_banks_common, AS_IO, 8, x1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x1_io_banks, AS_IO, 8, x1_state )
+ADDRESS_MAP_START(x1_state::x1_io_banks)
AM_IMPORT_FROM(x1_io_banks_common)
// AM_RANGE(0x0700, 0x0701) TODO: user could install ym2151 on plain X1 too
@@ -1363,7 +1363,7 @@ static ADDRESS_MAP_START( x1_io_banks, AS_IO, 8, x1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x1turbo_io_banks, AS_IO, 8, x1_state )
+ADDRESS_MAP_START(x1_state::x1turbo_io_banks)
AM_IMPORT_FROM(x1_io_banks_common)
// a * at the end states devices used on plain X1 too
@@ -1408,15 +1408,15 @@ static ADDRESS_MAP_START( x1turbo_io_banks, AS_IO, 8, x1_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x1_mem, AS_PROGRAM, 8, x1_state )
+ADDRESS_MAP_START(x1_state::x1_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(x1_mem_r,x1_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x1turbo_mem, AS_PROGRAM, 8, x1_state )
+ADDRESS_MAP_START(x1_state::x1turbo_mem)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(x1turbo_mem_r,x1turbo_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x1_io, AS_IO, 8, x1_state )
+ADDRESS_MAP_START(x1_state::x1_io)
AM_RANGE(0x0000, 0xffff) AM_DEVICE("iobank", address_map_bank_device, amap8)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/x1twin.cpp b/src/mame/drivers/x1twin.cpp
index b1a8daab80a..730a9175aab 100644
--- a/src/mame/drivers/x1twin.cpp
+++ b/src/mame/drivers/x1twin.cpp
@@ -35,6 +35,10 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(ipl_reset);
DECLARE_INPUT_CHANGED_MEMBER(nmi_reset);
void x1twin(machine_config &config);
+ void pce_io(address_map &map);
+ void pce_mem(address_map &map);
+ void x1_io(address_map &map);
+ void x1_mem(address_map &map);
};
@@ -48,62 +52,18 @@ uint32_t x1twin_state::screen_update_x1pce(screen_device &screen, bitmap_rgb32 &
return 0;
}
-static ADDRESS_MAP_START( x1_io_banks_common, AS_IO, 8, x1_state )
- ADDRESS_MAP_UNMAP_HIGH
-
- AM_RANGE(0x0e00, 0x0e02) AM_WRITE(x1_rom_w)
- AM_RANGE(0x0e03, 0x0e03) AM_READ(x1_rom_r)
-
- AM_RANGE(0x0ff8, 0x0fff) AM_READWRITE(x1_fdc_r, x1_fdc_w)
-
- AM_RANGE(0x1300, 0x1300) AM_MIRROR(0x00ff) AM_WRITE(x1_pri_w)
- AM_RANGE(0x1400, 0x17ff) AM_READWRITE(x1_pcg_r, x1_pcg_w)
-
- AM_RANGE(0x1800, 0x1801) AM_WRITE(x1_6845_w)
-
- AM_RANGE(0x1900, 0x1900) AM_MIRROR(0x00ff) AM_READWRITE(x1_sub_io_r, x1_sub_io_w)
- AM_RANGE(0x1a00, 0x1a03) AM_MIRROR(0x00fc) AM_DEVREADWRITE("ppi8255_0", i8255_device, read, write)
- AM_RANGE(0x1b00, 0x1b00) AM_MIRROR(0x00ff) AM_DEVREADWRITE("ay", ay8910_device, data_r, data_w)
- AM_RANGE(0x1c00, 0x1c00) AM_MIRROR(0x00ff) AM_DEVWRITE("ay", ay8910_device, address_w)
- AM_RANGE(0x1d00, 0x1d00) AM_MIRROR(0x00ff) AM_WRITE(x1_rom_bank_1_w)
- AM_RANGE(0x1e00, 0x1e00) AM_MIRROR(0x00ff) AM_WRITE(x1_rom_bank_0_w)
-
- AM_RANGE(0x1fa0, 0x1fa3) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
- AM_RANGE(0x1fa8, 0x1fab) AM_DEVREADWRITE("ctc", z80ctc_device, read, write)
-
- AM_RANGE(0x2000, 0x27ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("avram")
-
- AM_RANGE(0x4000, 0xffff) AM_READWRITE_BANK("bitmapbank")
-
- AM_RANGE(0x10000, 0x1ffff) AM_READWRITE(x1_ex_gfxram_r, x1_ex_gfxram_w)
-ADDRESS_MAP_END
-
-
-static ADDRESS_MAP_START( x1_io_banks, AS_IO, 8, x1_state )
- AM_IMPORT_FROM(x1_io_banks_common)
-
-// AM_RANGE(0x0700, 0x0701) TODO: user could install ym2151 on plain X1 too
-
- AM_RANGE(0x1000, 0x1000) AM_MIRROR(0x00ff) AM_WRITE(x1_pal_b_w)
- AM_RANGE(0x1100, 0x1100) AM_MIRROR(0x00ff) AM_WRITE(x1_pal_r_w)
- AM_RANGE(0x1200, 0x1200) AM_MIRROR(0x00ff) AM_WRITE(x1_pal_g_w)
-
- AM_RANGE(0x3000, 0x37ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("tvram") // Ys checks if it's a x1/x1turbo machine by checking if this area is a mirror
-ADDRESS_MAP_END
-
-
-static ADDRESS_MAP_START( x1_mem, AS_PROGRAM, 8, x1twin_state )
+ADDRESS_MAP_START(x1twin_state::x1_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_READWRITE(x1_mem_r,x1_mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x1_io, AS_IO, 8, x1twin_state )
+ADDRESS_MAP_START(x1twin_state::x1_io)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0xffff) AM_DEVICE("iobank", address_map_bank_device, amap8)
ADDRESS_MAP_END
#if 0
-static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, x1twin_state )
+ADDRESS_MAP_START(x1twin_state::pce_mem)
AM_RANGE( 0x000000, 0x09FFFF) AM_ROM
AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000)
AM_RANGE( 0x1FE000, 0x1FE3FF) AM_READWRITE( vdc_r, vdc_w )
@@ -114,7 +74,7 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, x1twin_state )
AM_RANGE( 0x1FF400, 0x1FF7FF) AM_DEVREADWRITE( "maincpu", h6280_device, irq_status_r, irq_status_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pce_io, AS_IO, 8, x1twin_state )
+ADDRESS_MAP_START(x1twin_state::pce_io)
AM_RANGE( 0x00, 0x03) AM_READWRITE( vdc_r, vdc_w )
ADDRESS_MAP_END
#endif
diff --git a/src/mame/drivers/x68k.cpp b/src/mame/drivers/x68k.cpp
index 3655a3b5fd0..5899a632a38 100644
--- a/src/mame/drivers/x68k.cpp
+++ b/src/mame/drivers/x68k.cpp
@@ -1134,7 +1134,7 @@ WRITE_LINE_MEMBER(x68k_state::x68k_scsi_drq)
// TODO
}
-static ADDRESS_MAP_START(x68k_map, AS_PROGRAM, 16, x68k_state )
+ADDRESS_MAP_START(x68k_state::x68k_map)
AM_RANGE(0x000000, 0xbffffb) AM_READWRITE(x68k_emptyram_r, x68k_emptyram_w)
AM_RANGE(0xbffffc, 0xbfffff) AM_READWRITE(x68k_rom0_r, x68k_rom0_w)
AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE(x68k_gvram_r, x68k_gvram_w)
@@ -1172,7 +1172,7 @@ static ADDRESS_MAP_START(x68k_map, AS_PROGRAM, 16, x68k_state )
AM_RANGE(0xfe0000, 0xffffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(x68kxvi_map, AS_PROGRAM, 16, x68k_state )
+ADDRESS_MAP_START(x68k_state::x68kxvi_map)
AM_RANGE(0x000000, 0xbffffb) AM_READWRITE(x68k_emptyram_r, x68k_emptyram_w)
AM_RANGE(0xbffffc, 0xbfffff) AM_READWRITE(x68k_rom0_r, x68k_rom0_w)
AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE(x68k_gvram_r, x68k_gvram_w)
@@ -1211,7 +1211,7 @@ static ADDRESS_MAP_START(x68kxvi_map, AS_PROGRAM, 16, x68k_state )
AM_RANGE(0xfe0000, 0xffffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(x68030_map, AS_PROGRAM, 32, x68k_state )
+ADDRESS_MAP_START(x68k_state::x68030_map)
ADDRESS_MAP_GLOBAL_MASK(0x00ffffff) // Still only has 24-bit address space
AM_RANGE(0x000000, 0xbffffb) AM_READWRITE16(x68k_emptyram_r, x68k_emptyram_w,0xffffffff)
AM_RANGE(0xbffffc, 0xbfffff) AM_READWRITE16(x68k_rom0_r, x68k_rom0_w,0xffffffff)
diff --git a/src/mame/drivers/xain.cpp b/src/mame/drivers/xain.cpp
index 05d3040fbed..efc108e9399 100644
--- a/src/mame/drivers/xain.cpp
+++ b/src/mame/drivers/xain.cpp
@@ -282,7 +282,7 @@ READ8_MEMBER(xain_state::mcu_comm_reset_r)
}
-static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, xain_state )
+ADDRESS_MAP_START(xain_state::bootleg_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(charram_w) AM_SHARE("charram")
AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(bgram1_w) AM_SHARE("bgram1")
@@ -307,14 +307,14 @@ static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, xain_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, xain_state )
+ADDRESS_MAP_START(xain_state::main_map)
AM_IMPORT_FROM(bootleg_map)
AM_RANGE(0x3a04, 0x3a04) AM_DEVREAD("mcu", taito68705_mcu_device, data_r)
AM_RANGE(0x3a06, 0x3a06) AM_READ(mcu_comm_reset_r)
AM_RANGE(0x3a0e, 0x3a0e) AM_DEVWRITE("mcu", taito68705_mcu_device, data_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cpu_map_B, AS_PROGRAM, 8, xain_state )
+ADDRESS_MAP_START(xain_state::cpu_map_B)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x2000, 0x2000) AM_WRITE(irqA_assert_w)
AM_RANGE(0x2800, 0x2800) AM_WRITE(irqB_clear_w)
@@ -323,7 +323,7 @@ static ADDRESS_MAP_START( cpu_map_B, AS_PROGRAM, 8, xain_state )
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, xain_state )
+ADDRESS_MAP_START(xain_state::sound_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x1000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
AM_RANGE(0x2800, 0x2801) AM_DEVWRITE("ym1", ym2203_device, write)
diff --git a/src/mame/drivers/xavix.cpp b/src/mame/drivers/xavix.cpp
index 56a65e337ee..2a2f0e3d2c9 100644
--- a/src/mame/drivers/xavix.cpp
+++ b/src/mame/drivers/xavix.cpp
@@ -104,6 +104,7 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
TIMER_DEVICE_CALLBACK_MEMBER(scanline_cb);
+ void xavix_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -412,7 +413,7 @@ READ8_MEMBER(xavix_state::xavix_75f5_r)
// DATA reads from 0x8000-0xffff are banked by byte 0xff of 'ram'
-static ADDRESS_MAP_START( xavix_map, AS_PROGRAM, 8, xavix_state )
+ADDRESS_MAP_START(xavix_state::xavix_map)
AM_RANGE(0x000000, 0x0001ff) AM_RAM
AM_RANGE(0x000200, 0x003fff) AM_RAM
diff --git a/src/mame/drivers/xbox.cpp b/src/mame/drivers/xbox.cpp
index 92e802f04dd..ee8a7038414 100644
--- a/src/mame/drivers/xbox.cpp
+++ b/src/mame/drivers/xbox.cpp
@@ -36,6 +36,8 @@ public:
{ }
void xbox(machine_config &config);
+ void xbox_map(address_map &map);
+ void xbox_map_io(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -53,12 +55,12 @@ void xbox_state::video_start()
{
}
-static ADDRESS_MAP_START(xbox_map, AS_PROGRAM, 32, xbox_state)
+ADDRESS_MAP_START(xbox_state::xbox_map)
AM_IMPORT_FROM(xbox_base_map)
AM_RANGE(0xff000000, 0xff0fffff) AM_ROM AM_REGION("bios", 0) AM_MIRROR(0x00f00000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(xbox_map_io, AS_IO, 32, xbox_state)
+ADDRESS_MAP_START(xbox_state::xbox_map_io)
AM_IMPORT_FROM(xbox_base_map_io)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/xerox820.cpp b/src/mame/drivers/xerox820.cpp
index 5aa9d671571..f60a90a1e0b 100644
--- a/src/mame/drivers/xerox820.cpp
+++ b/src/mame/drivers/xerox820.cpp
@@ -165,13 +165,13 @@ WRITE8_MEMBER( xerox820ii_state::sync_w )
/* Memory Maps */
-static ADDRESS_MAP_START( xerox820_mem, AS_PROGRAM, 8, xerox820_state )
+ADDRESS_MAP_START(xerox820_state::xerox820_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x3000, 0x3fff) AM_RAM AM_SHARE("video_ram")
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xerox820_io, AS_IO, 8, xerox820_state )
+ADDRESS_MAP_START(xerox820_state::xerox820_io)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff03) AM_DEVWRITE(COM8116_TAG, com8116_device, str_w)
AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE(Z80SIO_TAG, z80sio0_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x08, 0x0b) AM_MIRROR(0xff00) AM_DEVREADWRITE(Z80PIO_GP_TAG, z80pio_device, read_alt, write_alt)
@@ -182,13 +182,13 @@ static ADDRESS_MAP_START( xerox820_io, AS_IO, 8, xerox820_state )
AM_RANGE(0x1c, 0x1f) AM_MIRROR(0xff00) AM_DEVREADWRITE(Z80PIO_KB_TAG, z80pio_device, read_alt, write_alt)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xerox820ii_mem, AS_PROGRAM, 8, xerox820ii_state )
+ADDRESS_MAP_START(xerox820ii_state::xerox820ii_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x3000, 0x3fff) AM_RAM AM_SHARE("video_ram")
AM_RANGE(0xc000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xerox820ii_io, AS_IO, 8, xerox820ii_state )
+ADDRESS_MAP_START(xerox820ii_state::xerox820ii_io)
AM_IMPORT_FROM(xerox820_io)
AM_RANGE(0x28, 0x29) AM_MIRROR(0xff00) AM_WRITE(bell_w)
AM_RANGE(0x30, 0x31) AM_MIRROR(0xff00) AM_WRITE(slden_w)
@@ -197,12 +197,12 @@ static ADDRESS_MAP_START( xerox820ii_io, AS_IO, 8, xerox820ii_state )
AM_RANGE(0x68, 0x69) AM_MIRROR(0xff00) AM_WRITE(sync_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xerox168_mem, AS_PROGRAM, 16, xerox820ii_state )
+ADDRESS_MAP_START(xerox820ii_state::xerox168_mem)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
AM_RANGE(0xff000, 0xfffff) AM_ROM AM_REGION(I8086_TAG, 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mk83_mem, AS_PROGRAM, 8, xerox820_state )
+ADDRESS_MAP_START(xerox820_state::mk83_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x3000, 0x6fff) AM_RAM
AM_RANGE(0x7000, 0x7fff) AM_RAM AM_SHARE("video_ram")
diff --git a/src/mame/drivers/xexex.cpp b/src/mame/drivers/xexex.cpp
index 773f93202ec..0f9e81c6d56 100644
--- a/src/mame/drivers/xexex.cpp
+++ b/src/mame/drivers/xexex.cpp
@@ -334,7 +334,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(xexex_state::xexex_interrupt)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xexex_state )
+ADDRESS_MAP_START(xexex_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_SHARE("workram") // work RAM
@@ -378,7 +378,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xexex_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, xexex_state )
+ADDRESS_MAP_START(xexex_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
diff --git a/src/mame/drivers/xmen.cpp b/src/mame/drivers/xmen.cpp
index 0b4ab6b83a1..ea32ba47552 100644
--- a/src/mame/drivers/xmen.cpp
+++ b/src/mame/drivers/xmen.cpp
@@ -77,7 +77,7 @@ WRITE8_MEMBER(xmen_state::sound_bankswitch_w)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xmen_state )
+ADDRESS_MAP_START(xmen_state::main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("k053246", k053247_device, k053247_word_r, k053247_word_w)
@@ -96,7 +96,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xmen_state )
AM_RANGE(0x18fa00, 0x18fa01) AM_WRITE(xmen_18fa00_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, xmen_state )
+ADDRESS_MAP_START(xmen_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("z80bank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -107,7 +107,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, xmen_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 6p_main_map, AS_PROGRAM, 16, xmen_state )
+ADDRESS_MAP_START(xmen_state::_6p_main_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_ROM
AM_RANGE(0x100000, 0x100fff) AM_RAM AM_SHARE("spriteramleft") /* sprites (screen 1) */
@@ -350,7 +350,7 @@ MACHINE_CONFIG_START(xmen_state::xmen6p)
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", M68000, XTAL(16'000'000))
- MCFG_CPU_PROGRAM_MAP(6p_main_map)
+ MCFG_CPU_PROGRAM_MAP(_6p_main_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", xmen_state, xmen_scanline, "screen", 0, 1)
MCFG_CPU_ADD("audiocpu", Z80, XTAL(16'000'000)/2)
diff --git a/src/mame/drivers/xor100.cpp b/src/mame/drivers/xor100.cpp
index 4e071a25785..330c21da49f 100644
--- a/src/mame/drivers/xor100.cpp
+++ b/src/mame/drivers/xor100.cpp
@@ -262,13 +262,13 @@ WRITE8_MEMBER( xor100_state::fdc_dsel_w )
/* Memory Maps */
-static ADDRESS_MAP_START( xor100_mem, AS_PROGRAM, 8, xor100_state )
+ADDRESS_MAP_START(xor100_state::xor100_mem)
AM_RANGE(0x0000, 0xffff) AM_WRITE_BANK("bank1")
AM_RANGE(0x0000, 0xf7ff) AM_READ_BANK("bank2")
AM_RANGE(0xf800, 0xffff) AM_READ_BANK("bank3")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xor100_io, AS_IO, 8, xor100_state )
+ADDRESS_MAP_START(xor100_state::xor100_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREADWRITE(I8251_A_TAG, i8251_device, data_r, data_w)
AM_RANGE(0x01, 0x01) AM_DEVREADWRITE(I8251_A_TAG, i8251_device, status_r, control_w)
diff --git a/src/mame/drivers/xorworld.cpp b/src/mame/drivers/xorworld.cpp
index e9dbd7af021..894e2cc3fd9 100644
--- a/src/mame/drivers/xorworld.cpp
+++ b/src/mame/drivers/xorworld.cpp
@@ -61,7 +61,7 @@ WRITE16_MEMBER(xorworld_state::irq6_ack_w)
m_maincpu->set_input_line(6, CLEAR_LINE);
}
-static ADDRESS_MAP_START( xorworld_map, AS_PROGRAM, 16, xorworld_state )
+ADDRESS_MAP_START(xorworld_state::xorworld_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_READ_PORT("P1")
AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P2")
diff --git a/src/mame/drivers/xtheball.cpp b/src/mame/drivers/xtheball.cpp
index 04af32d898d..231411cfae5 100644
--- a/src/mame/drivers/xtheball.cpp
+++ b/src/mame/drivers/xtheball.cpp
@@ -59,6 +59,7 @@ public:
TMS340X0_FROM_SHIFTREG_CB_MEMBER(from_shiftreg);
TMS340X0_SCANLINE_RGB32_CB_MEMBER(scanline_update);
void xtheball(machine_config &config);
+ void main_map(address_map &map);
};
@@ -190,7 +191,7 @@ READ16_MEMBER(xtheball_state::analogy_watchdog_r)
*
*************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xtheball_state )
+ADDRESS_MAP_START(xtheball_state::main_map)
AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x01000000, 0x010fffff) AM_RAM AM_SHARE("vrabg")
AM_RANGE(0x02000000, 0x020fffff) AM_RAM AM_SHARE("vrafg")
diff --git a/src/mame/drivers/xtom3d.cpp b/src/mame/drivers/xtom3d.cpp
index 28628b76f30..e6950ce2cc8 100644
--- a/src/mame/drivers/xtom3d.cpp
+++ b/src/mame/drivers/xtom3d.cpp
@@ -79,6 +79,8 @@ public:
virtual void machine_reset() override;
void intel82439tx_init();
void xtom3d(machine_config &config);
+ void xtom3d_io(address_map &map);
+ void xtom3d_map(address_map &map);
};
// Intel 82439TX System Controller (MTXC)
@@ -344,7 +346,7 @@ WRITE32_MEMBER(xtom3d_state::bios_ram_w)
}
}
-static ADDRESS_MAP_START(xtom3d_map, AS_PROGRAM, 32, xtom3d_state)
+ADDRESS_MAP_START(xtom3d_state::xtom3d_map)
AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
AM_RANGE(0x000c0000, 0x000c3fff) AM_ROMBANK("video_bank1") AM_WRITE(isa_ram1_w)
@@ -358,7 +360,7 @@ static ADDRESS_MAP_START(xtom3d_map, AS_PROGRAM, 32, xtom3d_state)
AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(xtom3d_io, AS_IO, 32, xtom3d_state)
+ADDRESS_MAP_START(xtom3d_state::xtom3d_io)
AM_IMPORT_FROM(pcat32_io_common)
AM_RANGE(0x00e8, 0x00ef) AM_NOP
diff --git a/src/mame/drivers/xxmissio.cpp b/src/mame/drivers/xxmissio.cpp
index 34d6059be62..05107c3b413 100644
--- a/src/mame/drivers/xxmissio.cpp
+++ b/src/mame/drivers/xxmissio.cpp
@@ -90,7 +90,7 @@ void xxmissio_state::machine_start()
/****************************************************************************/
-static ADDRESS_MAP_START( map1, AS_PROGRAM, 8, xxmissio_state )
+ADDRESS_MAP_START(xxmissio_state::map1)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_device, read, write)
@@ -113,7 +113,7 @@ static ADDRESS_MAP_START( map1, AS_PROGRAM, 8, xxmissio_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( map2, AS_PROGRAM, 8, xxmissio_state )
+ADDRESS_MAP_START(xxmissio_state::map2)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1")
diff --git a/src/mame/drivers/xybots.cpp b/src/mame/drivers/xybots.cpp
index 827ce9c10a4..f50d3c1cbbc 100644
--- a/src/mame/drivers/xybots.cpp
+++ b/src/mame/drivers/xybots.cpp
@@ -71,7 +71,7 @@ READ16_MEMBER(xybots_state::special_port1_r)
*************************************/
/* full map verified from schematics */
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xybots_state )
+ADDRESS_MAP_START(xybots_state::main_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x007fff) AM_MIRROR(0x7c0000) AM_ROM
AM_RANGE(0x008000, 0x00ffff) AM_MIRROR(0x7c0000) AM_ROM /* slapstic maps here */
diff --git a/src/mame/drivers/xyonix.cpp b/src/mame/drivers/xyonix.cpp
index ceddb9c604a..a22ac8a1297 100644
--- a/src/mame/drivers/xyonix.cpp
+++ b/src/mame/drivers/xyonix.cpp
@@ -143,13 +143,13 @@ WRITE8_MEMBER(xyonix_state::io_w)
/* Mem / Port Maps ***********************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, xyonix_state )
+ADDRESS_MAP_START(xyonix_state::main_map)
AM_RANGE(0x0000, 0xbfff) AM_ROM
AM_RANGE(0xc000, 0xdfff) AM_RAM
AM_RANGE(0xe000, 0xffff) AM_RAM_WRITE(vidram_w) AM_SHARE("vidram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map, AS_IO, 8, xyonix_state )
+ADDRESS_MAP_START(xyonix_state::port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x20, 0x20) AM_READNOP AM_DEVWRITE("sn1", sn76496_device, write) /* SN76496 ready signal */
AM_RANGE(0x21, 0x21) AM_READNOP AM_DEVWRITE("sn2", sn76496_device, write)
diff --git a/src/mame/drivers/yiear.cpp b/src/mame/drivers/yiear.cpp
index 4f28edeedb9..277b361c03e 100644
--- a/src/mame/drivers/yiear.cpp
+++ b/src/mame/drivers/yiear.cpp
@@ -138,7 +138,7 @@ INTERRUPT_GEN_MEMBER(yiear_state::yiear_nmi_interrupt)
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, yiear_state )
+ADDRESS_MAP_START(yiear_state::main_map)
AM_RANGE(0x0000, 0x0000) AM_READ(yiear_speech_r)
AM_RANGE(0x4000, 0x4000) AM_WRITE(yiear_control_w)
AM_RANGE(0x4800, 0x4800) AM_WRITE(konami_SN76496_latch_w)
@@ -160,7 +160,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, yiear_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( vlm_map, 0, 8, yiear_state )
+ADDRESS_MAP_START(yiear_state::vlm_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x1fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/drivers/ymmu100.cpp b/src/mame/drivers/ymmu100.cpp
index 47e15218d7a..22167a1727a 100644
--- a/src/mame/drivers/ymmu100.cpp
+++ b/src/mame/drivers/ymmu100.cpp
@@ -200,6 +200,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
virtual void machine_start() override;
void mu100(machine_config &config);
+ void mu100_iomap(address_map &map);
+ void mu100_map(address_map &map);
};
class mu100r_state : public mu100_state {
@@ -266,7 +268,7 @@ uint32_t mu100_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap,
return 0;
}
-static ADDRESS_MAP_START( mu100_map, AS_PROGRAM, 16, mu100_state )
+ADDRESS_MAP_START(mu100_state::mu100_map)
AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x200000, 0x21ffff) AM_RAM // 128K work RAM
AM_RANGE(0x400000, 0x401fff) AM_READWRITE(snd_r, snd_w)
@@ -416,7 +418,7 @@ WRITE16_MEMBER(mu100_state::pg_w)
logerror("pbsel3 %d\n", data & 1);
}
-static ADDRESS_MAP_START( mu100_iomap, AS_IO, 16, mu100_state )
+ADDRESS_MAP_START(mu100_state::mu100_iomap)
AM_RANGE(h8_device::PORT_1, h8_device::PORT_1) AM_READWRITE(p1_r, p1_w)
AM_RANGE(h8_device::PORT_2, h8_device::PORT_2) AM_WRITE(p2_w)
AM_RANGE(h8_device::PORT_3, h8_device::PORT_3) AM_WRITE(p3_w)
diff --git a/src/mame/drivers/yunsun16.cpp b/src/mame/drivers/yunsun16.cpp
index f509f37e070..7c7b418bc8e 100644
--- a/src/mame/drivers/yunsun16.cpp
+++ b/src/mame/drivers/yunsun16.cpp
@@ -110,7 +110,7 @@ WRITE8_MEMBER(yunsun16_state::sound_bank_w)
membank("okibank")->set_entry(data & 3);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, yunsun16_state )
+ADDRESS_MAP_START(yunsun16_state::main_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("INPUTS")
AM_RANGE(0x800018, 0x800019) AM_READ_PORT("SYSTEM")
@@ -165,19 +165,19 @@ DRIVER_INIT_MEMBER(yunsun16_state,magicbub)
***************************************************************************/
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, yunsun16_state )
+ADDRESS_MAP_START(yunsun16_state::sound_map)
AM_RANGE(0x0000, 0xdfff) AM_ROM
AM_RANGE(0xe000, 0xe7ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, yunsun16_state )
+ADDRESS_MAP_START(yunsun16_state::sound_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ymsnd", ym3812_device, read, write)
AM_RANGE(0x18, 0x18) AM_DEVREAD("soundlatch", generic_latch_8_device, read) // From Main CPU
AM_RANGE(0x1c, 0x1c) AM_DEVREADWRITE("oki", okim6295_device, read, write) // M6295
ADDRESS_MAP_END
-static ADDRESS_MAP_START( oki_map, 0, 8, yunsun16_state )
+ADDRESS_MAP_START(yunsun16_state::oki_map)
AM_RANGE(0x00000, 0x1ffff) AM_ROM
AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("okibank")
ADDRESS_MAP_END
diff --git a/src/mame/drivers/yunsung8.cpp b/src/mame/drivers/yunsung8.cpp
index 948014a1dcf..c58d149762b 100644
--- a/src/mame/drivers/yunsung8.cpp
+++ b/src/mame/drivers/yunsung8.cpp
@@ -82,7 +82,7 @@ WRITE8_MEMBER(yunsung8_state::main_irq_ack_w)
d000-dfff Tiles ""
*/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, yunsung8_state )
+ADDRESS_MAP_START(yunsung8_state::main_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x0001, 0x0001) AM_WRITE(bankswitch_w) // ROM Bank (again?)
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("mainbank") // Banked ROM
@@ -91,7 +91,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, yunsung8_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( port_map, AS_IO, 8, yunsung8_state )
+ADDRESS_MAP_START(yunsung8_state::port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(videobank_w) // video RAM bank
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(bankswitch_w) // ROM Bank + Layers Enable
@@ -124,7 +124,7 @@ WRITE8_MEMBER(yunsung8_state::sound_bankswitch_w)
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, yunsung8_state )
+ADDRESS_MAP_START(yunsung8_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank") // Banked ROM
AM_RANGE(0xe000, 0xe000) AM_WRITE(sound_bankswitch_w) // ROM Bank
diff --git a/src/mame/drivers/yuvomz80.cpp b/src/mame/drivers/yuvomz80.cpp
index 20cfacc39c4..3d59b2c332d 100644
--- a/src/mame/drivers/yuvomz80.cpp
+++ b/src/mame/drivers/yuvomz80.cpp
@@ -50,16 +50,21 @@ public:
void goldhexa(machine_config &config);
void hexapres(machine_config &config);
+ void audio_io_map(address_map &map);
+ void audio_mem_map(address_map &map);
+ void hexapres_audio_io_map(address_map &map);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, yuvomz80_state )
+ADDRESS_MAP_START(yuvomz80_state::mem_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("maincpu", 0)
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, yuvomz80_state )
+ADDRESS_MAP_START(yuvomz80_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi0", i8255_device, read, write)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ppi1", i8255_device, read, write)
@@ -67,17 +72,17 @@ static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, yuvomz80_state )
AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE("ppi3", i8255_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_mem_map, AS_PROGRAM, 8, yuvomz80_state )
+ADDRESS_MAP_START(yuvomz80_state::audio_mem_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("audiocpu", 0)
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( audio_io_map, AS_PROGRAM, 8, yuvomz80_state )
+ADDRESS_MAP_START(yuvomz80_state::audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymz", ymz280b_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hexapres_audio_io_map, AS_PROGRAM, 8, yuvomz80_state )
+ADDRESS_MAP_START(yuvomz80_state::hexapres_audio_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/z100.cpp b/src/mame/drivers/z100.cpp
index b90ce629873..0404f54a82b 100644
--- a/src/mame/drivers/z100.cpp
+++ b/src/mame/drivers/z100.cpp
@@ -220,6 +220,8 @@ public:
uint32_t screen_update_z100(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_INPUT_CHANGED_MEMBER(key_stroke);
void z100(machine_config &config);
+ void z100_io(address_map &map);
+ void z100_mem(address_map &map);
};
#define mc6845_h_char_total (m_crtc_vreg[0])
@@ -306,7 +308,7 @@ WRITE8_MEMBER( z100_state::z100_vram_w )
}
}
-static ADDRESS_MAP_START(z100_mem, AS_PROGRAM, 8, z100_state)
+ADDRESS_MAP_START(z100_state::z100_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x00000,0x3ffff) AM_RAM // 128*2 KB RAM
// AM_RANGE(0xb0000,0xbffff) AM_ROM // expansion ROM
@@ -382,7 +384,7 @@ WRITE8_MEMBER( z100_state::floppy_motor_w )
m_floppy->mon_w(!BIT(data, 1));
}
-static ADDRESS_MAP_START(z100_io, AS_IO, 8, z100_state)
+ADDRESS_MAP_START(z100_state::z100_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
// AM_RANGE (0x00, 0x3f) reserved for non-ZDS vendors
diff --git a/src/mame/drivers/z1013.cpp b/src/mame/drivers/z1013.cpp
index c8b212db28c..0628be15b0a 100644
--- a/src/mame/drivers/z1013.cpp
+++ b/src/mame/drivers/z1013.cpp
@@ -79,6 +79,8 @@ public:
void z1013k76(machine_config &config);
void z1013(machine_config &config);
+ void z1013_io(address_map &map);
+ void z1013_mem(address_map &map);
private:
uint8_t m_keyboard_line;
bool m_keyboard_part;
@@ -91,13 +93,13 @@ private:
/* Address maps */
-static ADDRESS_MAP_START(z1013_mem, AS_PROGRAM, 8, z1013_state)
+ADDRESS_MAP_START(z1013_state::z1013_mem)
AM_RANGE( 0x0000, 0xebff ) AM_RAM
AM_RANGE( 0xec00, 0xefff ) AM_RAM AM_SHARE("videoram")
AM_RANGE( 0xf000, 0xffff ) AM_ROM // ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z1013_io, AS_IO, 8, z1013_state)
+ADDRESS_MAP_START(z1013_state::z1013_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE( 0x00, 0x03 ) AM_DEVREADWRITE("z80pio", z80pio_device, read_alt, write_alt)
AM_RANGE( 0x08, 0x08 ) AM_WRITE(z1013_keyboard_w)
diff --git a/src/mame/drivers/z80dev.cpp b/src/mame/drivers/z80dev.cpp
index 905d593aab1..0e15f06aa60 100644
--- a/src/mame/drivers/z80dev.cpp
+++ b/src/mame/drivers/z80dev.cpp
@@ -36,6 +36,8 @@ public:
DECLARE_WRITE8_MEMBER( display_w );
DECLARE_READ8_MEMBER( test_r );
void z80dev(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
@@ -54,13 +56,13 @@ READ8_MEMBER( z80dev_state::test_r )
return machine().rand();
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, z80dev_state )
+ADDRESS_MAP_START(z80dev_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x1000, 0x10ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map , AS_IO, 8, z80dev_state )
+ADDRESS_MAP_START(z80dev_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK (0xff)
AM_RANGE(0x20, 0x20) AM_READ_PORT("LINE0")
diff --git a/src/mame/drivers/z80ne.cpp b/src/mame/drivers/z80ne.cpp
index 79d3b8bdfab..3bd9e9c83b1 100644
--- a/src/mame/drivers/z80ne.cpp
+++ b/src/mame/drivers/z80ne.cpp
@@ -113,14 +113,14 @@
/* LX.382 CPU Board RAM */
/* LX.382 CPU Board EPROM */
-static ADDRESS_MAP_START( z80ne_mem, AS_PROGRAM, 8, z80ne_state )
+ADDRESS_MAP_START(z80ne_state::z80ne_mem)
AM_RANGE( 0x0000, 0x03ff ) AM_RAMBANK("bank1")
AM_RANGE( 0x0400, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0x83ff ) AM_ROMBANK("bank2")
AM_RANGE( 0x8400, 0xffff ) AM_READNOP AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80net_mem, AS_PROGRAM, 8, z80ne_state )
+ADDRESS_MAP_START(z80ne_state::z80net_mem)
AM_RANGE( 0x0000, 0x03ff ) AM_RAMBANK("bank1")
AM_RANGE( 0x0400, 0x7fff ) AM_RAM
AM_RANGE( 0x8000, 0x83ff ) AM_ROMBANK("bank2")
@@ -129,21 +129,21 @@ static ADDRESS_MAP_START( z80net_mem, AS_PROGRAM, 8, z80ne_state )
AM_RANGE( 0xee00, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80netb_mem, AS_PROGRAM, 8, z80ne_state )
+ADDRESS_MAP_START(z80ne_state::z80netb_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_ROM
AM_RANGE( 0x4000, 0xebff ) AM_RAM
AM_RANGE( 0xec00, 0xedff ) AM_RAM AM_SHARE("videoram") /* (6847) */
AM_RANGE( 0xee00, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80ne_io, AS_IO, 8, z80ne_state )
+ADDRESS_MAP_START(z80ne_state::z80ne_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xee, 0xee) AM_READWRITE(lx385_data_r, lx385_data_w )
AM_RANGE(0xef, 0xef) AM_READWRITE(lx385_ctrl_r, lx385_ctrl_w )
AM_RANGE(0xf0, 0xff) AM_READWRITE(lx383_r, lx383_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80net_io, AS_IO, 8, z80ne_state )
+ADDRESS_MAP_START(z80ne_state::z80net_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xea, 0xea) AM_READ(lx388_data_r )
AM_RANGE(0xeb, 0xeb) AM_READ(lx388_read_field_sync )
@@ -152,7 +152,7 @@ static ADDRESS_MAP_START( z80net_io, AS_IO, 8, z80ne_state )
AM_RANGE(0xf0, 0xff) AM_READWRITE(lx383_r, lx383_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80netf_mem, AS_PROGRAM, 8, z80ne_state )
+ADDRESS_MAP_START(z80ne_state::z80netf_mem)
AM_RANGE( 0x0000, 0x03ff ) AM_RAMBANK("bank1")
AM_RANGE( 0x0400, 0x3fff ) AM_RAMBANK("bank2")
AM_RANGE( 0x4000, 0x7fff ) AM_RAM
@@ -165,7 +165,7 @@ static ADDRESS_MAP_START( z80netf_mem, AS_PROGRAM, 8, z80ne_state )
AM_RANGE( 0xf400, 0xffff ) AM_READNOP AM_WRITENOP
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z80netf_io, AS_IO, 8, z80ne_state )
+ADDRESS_MAP_START(z80ne_state::z80netf_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xd0, 0xd7) AM_READWRITE(lx390_fdc_r, lx390_fdc_w)
AM_RANGE(0xea, 0xea) AM_READ(lx388_data_r )
diff --git a/src/mame/drivers/z88.cpp b/src/mame/drivers/z88.cpp
index 4267f05830a..a04e83e9fd0 100644
--- a/src/mame/drivers/z88.cpp
+++ b/src/mame/drivers/z88.cpp
@@ -148,7 +148,7 @@ UPD65031_MEMORY_UPDATE(z88_state::bankswitch_update)
}
-static ADDRESS_MAP_START(z88_mem, AS_PROGRAM, 8, z88_state )
+ADDRESS_MAP_START(z88_state::z88_mem)
AM_RANGE(0x0000, 0x1fff) AM_READWRITE_BANK("bank1")
AM_RANGE(0x2000, 0x3fff) AM_READWRITE_BANK("bank2")
AM_RANGE(0x4000, 0x7fff) AM_READWRITE_BANK("bank3")
@@ -156,7 +156,7 @@ static ADDRESS_MAP_START(z88_mem, AS_PROGRAM, 8, z88_state )
AM_RANGE(0xc000, 0xffff) AM_READWRITE_BANK("bank5")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z88_io, AS_IO, 8, z88_state )
+ADDRESS_MAP_START(z88_state::z88_io)
AM_RANGE(0x0000, 0xffff) AM_DEVREADWRITE("blink", upd65031_device, read, write)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/z9001.cpp b/src/mame/drivers/z9001.cpp
index a98d2c32086..1060157aa10 100644
--- a/src/mame/drivers/z9001.cpp
+++ b/src/mame/drivers/z9001.cpp
@@ -64,6 +64,8 @@ public:
uint32_t screen_update_z9001(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void z9001(machine_config &config);
+ void z9001_io(address_map &map);
+ void z9001_mem(address_map &map);
private:
uint8_t m_framecnt;
bool m_cassbit;
@@ -77,7 +79,7 @@ private:
required_region_ptr<u8> m_p_chargen;
};
-static ADDRESS_MAP_START(z9001_mem, AS_PROGRAM, 8, z9001_state)
+ADDRESS_MAP_START(z9001_state::z9001_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0xe7ff ) AM_RAM
AM_RANGE( 0xe800, 0xebff ) AM_RAM AM_SHARE("colorram")
@@ -85,7 +87,7 @@ static ADDRESS_MAP_START(z9001_mem, AS_PROGRAM, 8, z9001_state)
AM_RANGE( 0xf000, 0xffff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( z9001_io, AS_IO, 8, z9001_state)
+ADDRESS_MAP_START(z9001_state::z9001_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x80, 0x83) AM_MIRROR(4) AM_DEVREADWRITE("z80ctc", z80ctc_device, read, write)
diff --git a/src/mame/drivers/zac2650.cpp b/src/mame/drivers/zac2650.cpp
index 5b47f63a44d..f2d913c9e5f 100644
--- a/src/mame/drivers/zac2650.cpp
+++ b/src/mame/drivers/zac2650.cpp
@@ -25,7 +25,7 @@
/***********************************************************************************************/
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, zac2650_state )
+ADDRESS_MAP_START(zac2650_state::main_map)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(tinvader_videoram_w) AM_SHARE("videoram")
AM_RANGE(0x1c00, 0x1cff) AM_RAM
diff --git a/src/mame/drivers/zac_1.cpp b/src/mame/drivers/zac_1.cpp
index 57a0f33a490..3f8be807380 100644
--- a/src/mame/drivers/zac_1.cpp
+++ b/src/mame/drivers/zac_1.cpp
@@ -55,6 +55,12 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(zac_1_outtimer);
void locomotp(machine_config &config);
void zac_1(machine_config &config);
+ void locomotp_data(address_map &map);
+ void locomotp_io(address_map &map);
+ void locomotp_map(address_map &map);
+ void zac_1_data(address_map &map);
+ void zac_1_io(address_map &map);
+ void zac_1_map(address_map &map);
protected:
// devices
@@ -70,7 +76,7 @@ private:
};
-static ADDRESS_MAP_START( zac_1_map, AS_PROGRAM, 8, zac_1_state )
+ADDRESS_MAP_START(zac_1_state::zac_1_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x17ff) AM_WRITE(reset_int_w)
@@ -78,11 +84,11 @@ static ADDRESS_MAP_START( zac_1_map, AS_PROGRAM, 8, zac_1_state )
AM_RANGE(0x1c00, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zac_1_io, AS_IO, 8, zac_1_state )
+ADDRESS_MAP_START(zac_1_state::zac_1_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zac_1_data, AS_DATA, 8, zac_1_state )
+ADDRESS_MAP_START(zac_1_state::zac_1_data)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(ctrl_r,ctrl_w)
ADDRESS_MAP_END
@@ -271,18 +277,18 @@ MACHINE_CONFIG_END
/*************************** LOCOMOTION ********************************/
-static ADDRESS_MAP_START( locomotp_map, AS_PROGRAM, 8, zac_1_state )
+ADDRESS_MAP_START(zac_1_state::locomotp_map)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x17ff) AM_ROM
AM_RANGE(0x1800, 0x18ff) AM_MIRROR(0x300) AM_RAM AM_SHARE("ram")
AM_RANGE(0x1c00, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( locomotp_io, AS_IO, 8, zac_1_state)
+ADDRESS_MAP_START(zac_1_state::locomotp_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START( locomotp_data, AS_DATA, 8, zac_1_state)
+ADDRESS_MAP_START(zac_1_state::locomotp_data)
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(ctrl_r,ctrl_w)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(reset_int_r)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/zac_2.cpp b/src/mame/drivers/zac_2.cpp
index 0e7b1324ddb..06df184004c 100644
--- a/src/mame/drivers/zac_2.cpp
+++ b/src/mame/drivers/zac_2.cpp
@@ -38,6 +38,9 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(zac_2_inttimer);
TIMER_DEVICE_CALLBACK_MEMBER(zac_2_outtimer);
void zac_2(machine_config &config);
+ void zac_2_data(address_map &map);
+ void zac_2_io(address_map &map);
+ void zac_2_map(address_map &map);
protected:
// devices
@@ -49,7 +52,7 @@ private:
};
-static ADDRESS_MAP_START( zac_2_map, AS_PROGRAM, 8, zac_2_state )
+ADDRESS_MAP_START(zac_2_state::zac_2_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x17ff) AM_MIRROR(0x4000) AM_ROM
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6400) AM_RAM AM_SHARE("ram")
@@ -59,11 +62,11 @@ static ADDRESS_MAP_START( zac_2_map, AS_PROGRAM, 8, zac_2_state )
AM_RANGE(0x6000, 0x67ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(zac_2_io, AS_IO, 8, zac_2_state)
+ADDRESS_MAP_START(zac_2_state::zac_2_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_END
-static ADDRESS_MAP_START(zac_2_data, AS_DATA, 8, zac_2_state)
+ADDRESS_MAP_START(zac_2_state::zac_2_data)
AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(ctrl_r,ctrl_w)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(data_r,data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/zac_proto.cpp b/src/mame/drivers/zac_proto.cpp
index 1ddcde3cccd..a05b390bbd8 100644
--- a/src/mame/drivers/zac_proto.cpp
+++ b/src/mame/drivers/zac_proto.cpp
@@ -38,13 +38,14 @@ public:
DECLARE_WRITE8_MEMBER(digit_w);
DECLARE_WRITE8_MEMBER(sound_w);
void zac_proto(machine_config &config);
+ void zac_proto_map(address_map &map);
private:
virtual void machine_reset() override;
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START( zac_proto_map, AS_PROGRAM, 8, zac_proto_state )
+ADDRESS_MAP_START(zac_proto_state::zac_proto_map)
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0d00, 0x0dff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0e00, 0x0e00) AM_READ_PORT("PL0")
diff --git a/src/mame/drivers/zaccaria.cpp b/src/mame/drivers/zaccaria.cpp
index 9f2d4040257..18f21fd0e1e 100644
--- a/src/mame/drivers/zaccaria.cpp
+++ b/src/mame/drivers/zaccaria.cpp
@@ -145,7 +145,7 @@ WRITE_LINE_MEMBER(zaccaria_state::nmi_mask_w)
m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, zaccaria_state )
+ADDRESS_MAP_START(zaccaria_state::main_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_READONLY
AM_RANGE(0x6400, 0x6407) AM_READ(prot1_r)
diff --git a/src/mame/drivers/zapcomputer.cpp b/src/mame/drivers/zapcomputer.cpp
index 3e06e2f6d39..c22a270a112 100644
--- a/src/mame/drivers/zapcomputer.cpp
+++ b/src/mame/drivers/zapcomputer.cpp
@@ -43,6 +43,8 @@ public:
DECLARE_WRITE8_MEMBER(display_7seg_w);
void zapcomp(machine_config &config);
+ void zapcomp_io(address_map &map);
+ void zapcomp_mem(address_map &map);
private:
uint8_t decode7seg(uint8_t data);
virtual void machine_start() override;
@@ -110,7 +112,7 @@ READ8_MEMBER( zapcomp_state::keyboard_r )
return retval;
}
-static ADDRESS_MAP_START( zapcomp_mem, AS_PROGRAM, 8, zapcomp_state )
+ADDRESS_MAP_START(zapcomp_state::zapcomp_mem)
AM_RANGE(0x0000, 0x03ff) AM_ROM AM_REGION("roms", 0) /* system monitor */
AM_RANGE(0x0400, 0x07ff) AM_RAM /* mandatory 1 kilobyte bank #0 */
AM_RANGE(0x0800, 0x0bff) AM_RAM /* extra 1 kilobyte bank #1 (optional) */
@@ -122,7 +124,7 @@ static ADDRESS_MAP_START( zapcomp_mem, AS_PROGRAM, 8, zapcomp_state )
AM_RANGE(0x2000, 0x23ff) AM_RAM /* extra 1 kilobyte bank #7 (optional) */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zapcomp_io, AS_IO, 8, zapcomp_state )
+ADDRESS_MAP_START(zapcomp_state::zapcomp_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(keyboard_r)
AM_RANGE(0x05, 0x07) AM_WRITE(display_7seg_w)
diff --git a/src/mame/drivers/zaurus.cpp b/src/mame/drivers/zaurus.cpp
index aa00f4dfc49..8007d621066 100644
--- a/src/mame/drivers/zaurus.cpp
+++ b/src/mame/drivers/zaurus.cpp
@@ -1446,6 +1446,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void zaurus(machine_config &config);
+ void zaurus_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -1711,7 +1712,7 @@ WRITE32_MEMBER(zaurus_state::pxa255_rtc_w)
}
-static ADDRESS_MAP_START( zaurus_map, AS_PROGRAM, 32, zaurus_state )
+ADDRESS_MAP_START(zaurus_state::zaurus_map)
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_REGION("firmware", 0)
AM_RANGE(0x40900000, 0x4090000f) AM_READWRITE(pxa255_rtc_r,pxa255_rtc_w)
AM_RANGE(0x40a00000, 0x40a0001f) AM_READWRITE(pxa255_ostimer_r, pxa255_ostimer_w )
diff --git a/src/mame/drivers/zaxxon.cpp b/src/mame/drivers/zaxxon.cpp
index be742b79c28..e398aeecd75 100644
--- a/src/mame/drivers/zaxxon.cpp
+++ b/src/mame/drivers/zaxxon.cpp
@@ -436,7 +436,7 @@ CUSTOM_INPUT_MEMBER(zaxxon_state::zaxxon_coin_r)
*************************************/
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( zaxxon_map, AS_PROGRAM, 8, zaxxon_state )
+ADDRESS_MAP_START(zaxxon_state::zaxxon_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x1c00) AM_RAM_WRITE(zaxxon_videoram_w) AM_SHARE("videoram")
@@ -451,12 +451,12 @@ static ADDRESS_MAP_START( zaxxon_map, AS_PROGRAM, 8, zaxxon_state )
AM_RANGE(0xe0f0, 0xe0f3) AM_MIRROR(0x1f00) AM_SELECT(0x0008) AM_WRITE(zaxxon_control_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 8, zaxxon_state )
+ADDRESS_MAP_START(zaxxon_state::decrypted_opcodes_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_SHARE("decrypted_opcodes")
ADDRESS_MAP_END
/* derived from Zaxxon, different sound hardware */
-static ADDRESS_MAP_START( ixion_map, AS_PROGRAM, 8, zaxxon_state )
+ADDRESS_MAP_START(zaxxon_state::ixion_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x6fff) AM_RAM
AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x1c00) AM_RAM_WRITE(zaxxon_videoram_w) AM_SHARE("videoram")
@@ -473,7 +473,7 @@ ADDRESS_MAP_END
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( congo_map, AS_PROGRAM, 8, zaxxon_state )
+ADDRESS_MAP_START(zaxxon_state::congo_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x8fff) AM_RAM
AM_RANGE(0xa000, 0xa3ff) AM_MIRROR(0x1800) AM_RAM_WRITE(zaxxon_videoram_w) AM_SHARE("videoram")
@@ -492,7 +492,7 @@ ADDRESS_MAP_END
/* complete memory map derived from schematics */
-static ADDRESS_MAP_START( congo_sound_map, AS_PROGRAM, 8, zaxxon_state )
+ADDRESS_MAP_START(zaxxon_state::congo_sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x1800) AM_RAM
AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVWRITE("sn1", sn76489a_device, write)
@@ -959,14 +959,14 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(zaxxon_state::szaxxon, zaxxon)
MCFG_CPU_MODIFY("maincpu")
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(zaxxon_state::szaxxone, zaxxon)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5013, MASTER_CLOCK/16)
MCFG_CPU_PROGRAM_MAP(zaxxon_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MCFG_SEGACRPT_SET_SIZE(0x6000)
MACHINE_CONFIG_END
@@ -976,7 +976,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(zaxxon_state::futspye, root)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5061, MASTER_CLOCK/16)
MCFG_CPU_PROGRAM_MAP(zaxxon_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MCFG_SEGACRPT_SET_SIZE(0x6000)
@@ -997,7 +997,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(zaxxon_state::razmataze, root)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5098, MASTER_CLOCK/16)
MCFG_CPU_PROGRAM_MAP(ixion_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MCFG_SEGACRPT_SET_SIZE(0x6000)
@@ -1016,7 +1016,7 @@ MACHINE_CONFIG_END
MACHINE_CONFIG_DERIVED(zaxxon_state::ixion, razmataze)
MCFG_CPU_REPLACE("maincpu", SEGA_315_5013, MASTER_CLOCK/16)
MCFG_CPU_PROGRAM_MAP(ixion_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(decrypted_opcodes_map)
+ MCFG_CPU_OPCODES_MAP(decrypted_opcodes_map)
MCFG_SEGACRPT_SET_DECRYPTED_TAG(":decrypted_opcodes")
MCFG_SEGACRPT_SET_SIZE(0x6000)
diff --git a/src/mame/drivers/zerozone.cpp b/src/mame/drivers/zerozone.cpp
index a9f7e781ff5..cf847204585 100644
--- a/src/mame/drivers/zerozone.cpp
+++ b/src/mame/drivers/zerozone.cpp
@@ -49,7 +49,7 @@ WRITE16_MEMBER( zerozone_state::sound_w )
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, zerozone_state )
+ADDRESS_MAP_START(zerozone_state::main_map)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("INPUTS")
@@ -64,7 +64,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, zerozone_state )
AM_RANGE(0x0f8000, 0x0f87ff) AM_RAM /* Never read from */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, zerozone_state )
+ADDRESS_MAP_START(zerozone_state::sound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0x9800, 0x9800) AM_DEVREADWRITE("oki", okim6295_device, read, write)
diff --git a/src/mame/drivers/zexall.cpp b/src/mame/drivers/zexall.cpp
index 67f9b6c0618..fdaf71b0868 100644
--- a/src/mame/drivers/zexall.cpp
+++ b/src/mame/drivers/zexall.cpp
@@ -47,6 +47,7 @@ public:
DECLARE_WRITE8_MEMBER( output_data_w );
void zexall(machine_config &config);
+ void z80_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<generic_terminal_device> m_terminal;
@@ -135,7 +136,7 @@ WRITE8_MEMBER( zexall_state::output_data_w )
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(z80_mem, AS_PROGRAM, 8, zexall_state)
+ADDRESS_MAP_START(zexall_state::z80_mem)
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0xfffd, 0xfffd) AM_READWRITE(output_ack_r, output_ack_w)
AM_RANGE(0xfffe, 0xfffe) AM_READWRITE(output_req_r, output_req_w)
diff --git a/src/mame/drivers/zms8085.cpp b/src/mame/drivers/zms8085.cpp
index c2e082eeb50..2095d0d8a44 100644
--- a/src/mame/drivers/zms8085.cpp
+++ b/src/mame/drivers/zms8085.cpp
@@ -33,6 +33,8 @@ public:
DECLARE_READ8_MEMBER(special_r);
void zephyr(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
@@ -71,12 +73,12 @@ READ8_MEMBER(zms8085_state::special_r)
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, zms8085_state )
+ADDRESS_MAP_START(zms8085_state::mem_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("maincpu", 0) AM_WRITENOP
AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("mainram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_PROGRAM, 8, zms8085_state )
+ADDRESS_MAP_START(zms8085_state::io_map)
AM_RANGE(0x61, 0x61) AM_READ(special_r)
AM_RANGE(0x68, 0x68) AM_WRITENOP
ADDRESS_MAP_END
diff --git a/src/mame/drivers/zn.cpp b/src/mame/drivers/zn.cpp
index 0dfee3307cc..af089366dd5 100644
--- a/src/mame/drivers/zn.cpp
+++ b/src/mame/drivers/zn.cpp
@@ -160,6 +160,29 @@ public:
void coh1002e(machine_config &config);
void coh3002c(machine_config &config);
void coh1002c(machine_config &config);
+ void atlus_snd_map(address_map &map);
+ void bam2_map(address_map &map);
+ void cbaj_z80_map(address_map &map);
+ void cbaj_z80_port_map(address_map &map);
+ void coh1000a_map(address_map &map);
+ void coh1000c_map(address_map &map);
+ void coh1000ta_map(address_map &map);
+ void coh1000tb_map(address_map &map);
+ void coh1000w_map(address_map &map);
+ void coh1001l_map(address_map &map);
+ void coh1002e_map(address_map &map);
+ void coh1002m_map(address_map &map);
+ void coh1002ml_link_map(address_map &map);
+ void coh1002ml_link_port_map(address_map &map);
+ void coh1002msnd_map(address_map &map);
+ void coh1002v_map(address_map &map);
+ void fx1a_sound_map(address_map &map);
+ void jdredd_map(address_map &map);
+ void nbajamex_map(address_map &map);
+ void psarc_snd_map(address_map &map);
+ void qsound_map(address_map &map);
+ void qsound_portmap(address_map &map);
+ void zn_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -324,7 +347,7 @@ WRITE8_MEMBER(zn_state::coin_w)
}
}
-static ADDRESS_MAP_START( zn_map, AS_PROGRAM, 32, zn_state )
+ADDRESS_MAP_START(zn_state::zn_map)
AM_RANGE(0x1fa00000, 0x1fa00003) AM_READ_PORT("P1")
AM_RANGE(0x1fa00100, 0x1fa00103) AM_READ_PORT("P2")
AM_RANGE(0x1fa00200, 0x1fa00203) AM_READ_PORT("SERVICE")
@@ -569,7 +592,7 @@ WRITE8_MEMBER(zn_state::zn_qsound_w)
m_audiocpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START(coh1000c_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1000c_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f3fffff) AM_ROM AM_REGION("maskroms", 0)
@@ -595,7 +618,7 @@ MACHINE_RESET_MEMBER(zn_state,glpracr)
MACHINE_RESET_CALL_MEMBER(coh1000c);
}
-static ADDRESS_MAP_START( qsound_map, AS_PROGRAM, 8, zn_state )
+ADDRESS_MAP_START(zn_state::qsound_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("soundbank") /* banked (contains music data) */
AM_RANGE(0xd000, 0xd002) AM_DEVWRITE("qsound", qsound_device, qsound_w)
@@ -604,7 +627,7 @@ static ADDRESS_MAP_START( qsound_map, AS_PROGRAM, 8, zn_state )
AM_RANGE(0xf000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( qsound_portmap, AS_IO, 8, zn_state )
+ADDRESS_MAP_START(zn_state::qsound_portmap)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
ADDRESS_MAP_END
@@ -1036,7 +1059,7 @@ WRITE8_MEMBER(zn_state::fx1a_sound_bankswitch_w)
m_soundbank->set_entry( ( data - 1 ) & 0x07 );
}
-static ADDRESS_MAP_START(coh1000ta_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1000ta_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f7fffff) AM_ROMBANK("bankedroms")
@@ -1054,7 +1077,7 @@ MACHINE_RESET_MEMBER(zn_state,coh1000ta)
m_soundbank->set_entry( 0 );
}
-static ADDRESS_MAP_START( fx1a_sound_map, AS_PROGRAM, 8, zn_state )
+ADDRESS_MAP_START(zn_state::fx1a_sound_map)
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("soundbank")
AM_RANGE(0xc000, 0xdfff) AM_RAM
@@ -1100,7 +1123,7 @@ READ8_MEMBER(zn_state::fx1b_fram_r)
return m_fx1b_fram[offset];
}
-static ADDRESS_MAP_START(coh1000tb_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1000tb_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f7fffff) AM_ROMBANK("bankedroms")
AM_RANGE(0x1fb00000, 0x1fb003ff) AM_READWRITE8(fx1b_fram_r, fx1b_fram_w, 0x00ff00ff)
@@ -1382,7 +1405,7 @@ DRIVER_INIT_MEMBER(zn_state,primrag2)
save_item(NAME(m_vt83c461_latch));
}
-static ADDRESS_MAP_START(coh1000w_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1000w_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f1fffff) AM_ROM AM_REGION("roms", 0)
AM_RANGE(0x1f000000, 0x1f000003) AM_WRITENOP
@@ -1564,7 +1587,7 @@ WRITE8_MEMBER(zn_state::coh1002e_sound_irq_w)
m_audiocpu->set_input_line(2, HOLD_LINE); // irq 2 on the 68k
}
-static ADDRESS_MAP_START(coh1002e_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1002e_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f7fffff) AM_ROMBANK("bankedroms")
@@ -1579,7 +1602,7 @@ MACHINE_RESET_MEMBER(zn_state,coh1002e)
m_bankedroms->set_entry( 0 );
}
-static ADDRESS_MAP_START( psarc_snd_map, AS_PROGRAM, 16, zn_state )
+ADDRESS_MAP_START(zn_state::psarc_snd_map)
AM_RANGE(0x000000, 0x07ffff) AM_ROM
AM_RANGE(0x080000, 0x0fffff) AM_RAM
AM_RANGE(0x100000, 0x10001f) AM_DEVREADWRITE8("ymf", ymf271_device, read, write, 0x00ff )
@@ -1700,7 +1723,7 @@ READ16_MEMBER(zn_state::bam2_unk_r)
return 0;
}
-static ADDRESS_MAP_START(bam2_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::bam2_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f3fffff) AM_ROM AM_REGION("bankedroms", 0)
@@ -2005,13 +2028,13 @@ WRITE8_MEMBER(zn_state::nbajamex_backup_w)
-static ADDRESS_MAP_START(coh1000a_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1000a_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1fbfff00, 0x1fbfff03) AM_WRITE16(acpsx_00_w, 0xffffffff)
AM_RANGE(0x1fbfff10, 0x1fbfff13) AM_WRITE16(acpsx_10_w, 0xffff0000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(nbajamex_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::nbajamex_map)
AM_IMPORT_FROM(coh1000a_map)
AM_RANGE(0x1f000000, 0x1f1fffff) AM_ROMBANK("bankedroms")
@@ -2042,7 +2065,7 @@ DRIVER_INIT_MEMBER(zn_state,jdredd)
save_item(NAME(m_jdredd_gun_mux));
}
-static ADDRESS_MAP_START(jdredd_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::jdredd_map)
AM_IMPORT_FROM(coh1000a_map)
AM_RANGE(0x1f000000, 0x1f1fffff) AM_ROM AM_REGION("roms", 0)
@@ -2208,7 +2231,7 @@ WRITE8_MEMBER(zn_state::coh1001l_bank_w)
m_bankedroms->set_entry( data & 3 );
}
-static ADDRESS_MAP_START(coh1001l_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1001l_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f7fffff) AM_ROMBANK("bankedroms")
@@ -2222,7 +2245,7 @@ MACHINE_RESET_MEMBER(zn_state,coh1001l)
m_bankedroms->set_entry( 0 );
}
-static ADDRESS_MAP_START( atlus_snd_map, AS_PROGRAM, 16, zn_state )
+ADDRESS_MAP_START(zn_state::atlus_snd_map)
AM_RANGE(0x000000, 0x03ffff) AM_ROM
AM_RANGE(0x100000, 0x100001) AM_DEVREAD("soundlatch16", generic_latch_16_device, read) AM_WRITE(coh1001l_sound_unk_w)
AM_RANGE(0x200000, 0x200003) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x00ff)
@@ -2265,7 +2288,7 @@ WRITE8_MEMBER(zn_state::coh1002v_bank_w)
m_bankedroms->set_entry( data );
}
-static ADDRESS_MAP_START(coh1002v_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1002v_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f27ffff) AM_ROM AM_REGION("fixedroms", 0)
AM_RANGE(0x1fb00000, 0x1fbfffff) AM_ROMBANK("bankedroms")
@@ -2449,7 +2472,7 @@ WRITE8_MEMBER(zn_state::coh1002m_bank_w)
m_bankedroms->set_entry( data );
}
-static ADDRESS_MAP_START(coh1002m_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1002m_map)
AM_IMPORT_FROM(zn_map)
AM_RANGE(0x1f000000, 0x1f7fffff) AM_ROMBANK("bankedroms")
AM_RANGE(0x1fb00004, 0x1fb00007) AM_WRITE8(coh1002m_bank_w, 0x00ff0000)
@@ -2474,7 +2497,7 @@ READ8_MEMBER(zn_state::cbaj_sound_main_status_r)
return m_cbaj_fifo2->ef_r() << 1;
}
-static ADDRESS_MAP_START(coh1002msnd_map, AS_PROGRAM, 32, zn_state)
+ADDRESS_MAP_START(zn_state::coh1002msnd_map)
AM_IMPORT_FROM(coh1002m_map)
AM_RANGE(0x1fb00000, 0x1fb00003) AM_DEVREAD8("cbaj_fifo2", fifo7200_device, data_byte_r, 0x000000ff)
AM_RANGE(0x1fb00000, 0x1fb00003) AM_DEVWRITE8("cbaj_fifo1", fifo7200_device, data_byte_w, 0x000000ff)
@@ -2487,12 +2510,12 @@ READ8_MEMBER(zn_state::cbaj_sound_z80_status_r)
return m_cbaj_fifo1->ef_r() << 1;
}
-static ADDRESS_MAP_START( cbaj_z80_map, AS_PROGRAM, 8, zn_state )
+ADDRESS_MAP_START(zn_state::cbaj_z80_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cbaj_z80_port_map, AS_IO, 8, zn_state )
+ADDRESS_MAP_START(zn_state::cbaj_z80_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x84, 0x85) AM_DEVREADWRITE("ymz", ymz280b_device, read, write)
AM_RANGE(0x90, 0x90) AM_DEVREAD("cbaj_fifo1", fifo7200_device, data_byte_r)
@@ -2500,12 +2523,12 @@ static ADDRESS_MAP_START( cbaj_z80_port_map, AS_IO, 8, zn_state )
AM_RANGE(0x91, 0x91) AM_READ(cbaj_sound_z80_status_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( coh1002ml_link_map, AS_PROGRAM, 8, zn_state )
+ADDRESS_MAP_START(zn_state::coh1002ml_link_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( coh1002ml_link_port_map, AS_IO, 8, zn_state )
+ADDRESS_MAP_START(zn_state::coh1002ml_link_port_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/zodiack.cpp b/src/mame/drivers/zodiack.cpp
index d5fa2267afb..38c2f17b55c 100644
--- a/src/mame/drivers/zodiack.cpp
+++ b/src/mame/drivers/zodiack.cpp
@@ -147,7 +147,7 @@ WRITE8_MEMBER( zodiack_state::control_w )
}
-static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, zodiack_state )
+ADDRESS_MAP_START(zodiack_state::main_map)
AM_RANGE(0x0000, 0x4fff) AM_ROM
AM_RANGE(0x5800, 0x5fff) AM_RAM
AM_RANGE(0x6081, 0x6081) AM_READ_PORT("DSW0") AM_WRITE(control_w)
@@ -167,14 +167,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, zodiack_state )
AM_RANGE(0xc000, 0xcfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, zodiack_state )
+ADDRESS_MAP_START(zodiack_state::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x2000, 0x23ff) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_WRITE(sound_nmi_enable_w)
AM_RANGE(0x6000, 0x6000) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, zodiack_state )
+ADDRESS_MAP_START(zodiack_state::io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_device, address_data_w)
ADDRESS_MAP_END
diff --git a/src/mame/drivers/zorba.cpp b/src/mame/drivers/zorba.cpp
index 27df73cbcf0..4e01c24ff90 100644
--- a/src/mame/drivers/zorba.cpp
+++ b/src/mame/drivers/zorba.cpp
@@ -71,15 +71,13 @@ ToDo:
#include "speaker.h"
-namespace {
-
-ADDRESS_MAP_START( zorba_mem, AS_PROGRAM, 8, zorba_state )
+ADDRESS_MAP_START(zorba_state::zorba_mem)
AM_RANGE( 0x0000, 0x3fff ) AM_READ_BANK("bankr0") AM_WRITE_BANK("bankw0")
AM_RANGE( 0x4000, 0xffff ) AM_RAM
ADDRESS_MAP_END
-ADDRESS_MAP_START( zorba_io, AS_IO, 8, zorba_state )
+ADDRESS_MAP_START(zorba_state::zorba_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("pit", pit8254_device, read, write)
AM_RANGE(0x04, 0x04) AM_READWRITE(rom_r, rom_w)
@@ -98,6 +96,7 @@ ADDRESS_MAP_START( zorba_io, AS_IO, 8, zorba_state )
AM_RANGE(0x60, 0x63) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
ADDRESS_MAP_END
+namespace {
INPUT_PORTS_START( zorba )
PORT_START("CNF")
diff --git a/src/mame/drivers/zr107.cpp b/src/mame/drivers/zr107.cpp
index 321427a41a1..fe43a736f8c 100644
--- a/src/mame/drivers/zr107.cpp
+++ b/src/mame/drivers/zr107.cpp
@@ -263,6 +263,11 @@ public:
void zr107(machine_config &config);
void jetwave(machine_config &config);
+ void jetwave_map(address_map &map);
+ void k054539_map(address_map &map);
+ void sharc_map(address_map &map);
+ void sound_memmap(address_map &map);
+ void zr107_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -471,7 +476,7 @@ void zr107_state::machine_start()
m_maincpu->ppcdrc_add_fastram(0x00000000, 0x000fffff, false, m_workram);
}
-static ADDRESS_MAP_START( zr107_map, AS_PROGRAM, 32, zr107_state )
+ADDRESS_MAP_START(zr107_state::zr107_map)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("workram") /* Work RAM */
AM_RANGE(0x74000000, 0x74003fff) AM_DEVREADWRITE("k056832", k056832_device, ram_long_r, ram_long_w)
AM_RANGE(0x74020000, 0x7402003f) AM_DEVREADWRITE("k056832", k056832_device, long_r, long_w)
@@ -498,7 +503,7 @@ WRITE32_MEMBER(zr107_state::jetwave_palette_w)
m_palette->set_pen_color(offset, pal5bit(data >> 10), pal5bit(data >> 5), pal5bit(data >> 0));
}
-static ADDRESS_MAP_START( jetwave_map, AS_PROGRAM, 32, zr107_state )
+ADDRESS_MAP_START(zr107_state::jetwave_map)
AM_RANGE(0x00000000, 0x000fffff) AM_RAM /* Work RAM */
AM_RANGE(0x74000000, 0x740000ff) AM_DEVREADWRITE("k001604", k001604_device, reg_r, reg_w)
AM_RANGE(0x74010000, 0x7401ffff) AM_RAM_WRITE(jetwave_palette_w) AM_SHARE("paletteram")
@@ -533,7 +538,7 @@ WRITE16_MEMBER(zr107_state::sound_ctrl_w)
}
}
-static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, zr107_state )
+ADDRESS_MAP_START(zr107_state::sound_memmap)
AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x100000, 0x103fff) AM_RAM /* Work RAM */
AM_RANGE(0x200000, 0x2004ff) AM_DEVREADWRITE8("k054539_1", k054539_device, read, write, 0xff00)
@@ -543,7 +548,7 @@ static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, zr107_state )
AM_RANGE(0x580000, 0x580001) AM_WRITENOP // 'NRES' - D2: K056602 /RESET
ADDRESS_MAP_END
-static ADDRESS_MAP_START( k054539_map, 0, 8, zr107_state )
+ADDRESS_MAP_START(zr107_state::k054539_map)
AM_RANGE(0x000000, 0x5fffff) AM_ROM AM_REGION("k054539", 0)
ADDRESS_MAP_END
@@ -560,7 +565,7 @@ WRITE32_MEMBER(zr107_state::dsp_dataram_w)
m_sharc_dataram[offset] = data;
}
-static ADDRESS_MAP_START( sharc_map, AS_DATA, 32, zr107_state )
+ADDRESS_MAP_START(zr107_state::sharc_map)
AM_RANGE(0x400000, 0x41ffff) AM_DEVREADWRITE("konppc", konppc_device, cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w)
AM_RANGE(0x500000, 0x5fffff) AM_READWRITE(dsp_dataram_r, dsp_dataram_w)
AM_RANGE(0x600000, 0x6fffff) AM_DEVREADWRITE("k001005", k001005_device, read, write)
diff --git a/src/mame/drivers/zrt80.cpp b/src/mame/drivers/zrt80.cpp
index efa4cb7fcb2..9f47698b434 100644
--- a/src/mame/drivers/zrt80.cpp
+++ b/src/mame/drivers/zrt80.cpp
@@ -52,6 +52,8 @@ public:
MC6845_UPDATE_ROW(crtc_update_row);
void zrt80(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
uint8_t m_term_data;
@@ -98,7 +100,7 @@ WRITE8_MEMBER(zrt80_state::zrt80_38_w)
m_beep->set_state(1);
}
-static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, zrt80_state )
+ADDRESS_MAP_START(zrt80_state::mem_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_ROM // Z25 - Main firmware
AM_RANGE(0x1000, 0x1fff) AM_ROM // Z24 - Expansion
@@ -108,7 +110,7 @@ static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, zrt80_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( io_map, AS_IO, 8, zrt80_state )
+ADDRESS_MAP_START(zrt80_state::io_map)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_DEVREADWRITE("ins8250", ins8250_device, ins8250_r, ins8250_w )
diff --git a/src/mame/drivers/zsbc3.cpp b/src/mame/drivers/zsbc3.cpp
index f2fbe490ba2..081df4486fc 100644
--- a/src/mame/drivers/zsbc3.cpp
+++ b/src/mame/drivers/zsbc3.cpp
@@ -52,18 +52,20 @@ public:
{ }
void zsbc3(machine_config &config);
+ void zsbc3_io(address_map &map);
+ void zsbc3_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
};
-static ADDRESS_MAP_START(zsbc3_mem, AS_PROGRAM, 8, zsbc3_state)
+ADDRESS_MAP_START(zsbc3_state::zsbc3_mem)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE( 0x0000, 0x07ff ) AM_ROM
AM_RANGE( 0x0800, 0xffff ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(zsbc3_io, AS_IO, 8, zsbc3_state)
+ADDRESS_MAP_START(zsbc3_state::zsbc3_io)
ADDRESS_MAP_UNMAP_HIGH
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x0b) //AM_DEVREADWRITE("pio", z80pio_device, read, write) // the control bytes appear to be for a PIO
diff --git a/src/mame/drivers/zwackery.cpp b/src/mame/drivers/zwackery.cpp
index bff09cc2a6e..1e0db425aad 100644
--- a/src/mame/drivers/zwackery.cpp
+++ b/src/mame/drivers/zwackery.cpp
@@ -72,6 +72,7 @@ public:
DECLARE_READ8_MEMBER(ptm_r);
void zwackery(machine_config &config);
+ void zwackery_map(address_map &map);
protected:
virtual void machine_start() override;
@@ -101,7 +102,7 @@ private:
// ADDRESS MAPS
//**************************************************************************
-static ADDRESS_MAP_START( zwackery_map, AS_PROGRAM, 16, zwackery_state )
+ADDRESS_MAP_START(zwackery_state::zwackery_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000000, 0x037fff) AM_ROM
AM_RANGE(0x080000, 0x080fff) AM_RAM
diff --git a/src/mame/drivers/zx.cpp b/src/mame/drivers/zx.cpp
index 17209f4b969..d7318b779a2 100644
--- a/src/mame/drivers/zx.cpp
+++ b/src/mame/drivers/zx.cpp
@@ -51,34 +51,34 @@
/* Memory Maps */
-static ADDRESS_MAP_START( zx80_map, AS_PROGRAM, 8, zx_state )
+ADDRESS_MAP_START(zx_state::zx80_map)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_MIRROR(0x3000)
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zx81_map, AS_PROGRAM, 8, zx_state )
+ADDRESS_MAP_START(zx_state::zx81_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_MIRROR(0x2000)
AM_RANGE(0x4000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( ula_map, AS_OPCODES, 8, zx_state )
+ADDRESS_MAP_START(zx_state::ula_map)
AM_RANGE(0x0000, 0x7fff) AM_READ(ula_low_r)
AM_RANGE(0x8000, 0xffff) AM_READ(ula_high_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zx80_io_map, AS_IO, 8, zx_state )
+ADDRESS_MAP_START(zx_state::zx80_io_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(zx80_io_r, zx80_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zx81_io_map, AS_IO, 8, zx_state )
+ADDRESS_MAP_START(zx_state::zx81_io_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(zx81_io_r, zx81_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8300_io_map, AS_IO, 8, zx_state )
+ADDRESS_MAP_START(zx_state::pc8300_io_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(pc8300_io_r, zx81_io_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pow3000_io_map, AS_IO, 8, zx_state )
+ADDRESS_MAP_START(zx_state::pow3000_io_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(pow3000_io_r, zx81_io_w)
ADDRESS_MAP_END
@@ -323,7 +323,7 @@ MACHINE_CONFIG_START(zx_state::zx80)
MCFG_CPU_ADD("maincpu", Z80, XTAL(6'500'000)/2)
MCFG_CPU_PROGRAM_MAP(zx80_map)
MCFG_CPU_IO_MAP(zx80_io_map)
- MCFG_CPU_DECRYPTED_OPCODES_MAP(ula_map)
+ MCFG_CPU_OPCODES_MAP(ula_map)
MCFG_Z80_SET_REFRESH_CALLBACK(WRITE16(zx_state, refresh_w))
MCFG_SCREEN_ADD("screen", RASTER)
diff --git a/src/mame/etc/korgm1.cpp b/src/mame/etc/korgm1.cpp
index 99edbf4b23d..0f5ddb73f6c 100644
--- a/src/mame/etc/korgm1.cpp
+++ b/src/mame/etc/korgm1.cpp
@@ -35,6 +35,8 @@ public:
void korgm1(machine_config &config);
+ void korgm1_io(address_map &map);
+ void korgm1_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start();
@@ -52,13 +54,13 @@ uint32_t korgm1_state::screen_update( screen_device &screen, bitmap_ind16 &bitma
return 0;
}
-static ADDRESS_MAP_START( korgm1_map, AS_PROGRAM, 16, korgm1_state )
+ADDRESS_MAP_START(korgm1_state::korgm1_map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM // 64 KB
// AM_RANGE(0x50000, 0x57fff) AM_RAM // memory card 32 KB
AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("ipl", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( korgm1_io, AS_IO, 16, korgm1_state )
+ADDRESS_MAP_START(korgm1_state::korgm1_io)
// AM_RANGE(0x0000, 0x00ff) internal peripheral (?)
// AM_RANGE(0x0100, 0x01ff) VDF 1 (MB87404)
// AM_RANGE(0x0200, 0x02ff) VDF 2 (MB87404)
diff --git a/src/mame/etc/template_driver.cpp b/src/mame/etc/template_driver.cpp
index cda424ccfed..9048e8a26d2 100644
--- a/src/mame/etc/template_driver.cpp
+++ b/src/mame/etc/template_driver.cpp
@@ -30,6 +30,8 @@ public:
void xxx(machine_config &config);
+ void xxx_io(address_map &map);
+ void xxx_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_start() override;
@@ -50,11 +52,11 @@ uint32_t xxx_state::screen_update( screen_device &screen, bitmap_ind16 &bitmap,
return 0;
}
-static ADDRESS_MAP_START( xxx_map, AS_PROGRAM, 8, xxx_state )
+ADDRESS_MAP_START(xxx_state::xxx_map)
AM_RANGE(0x0000, 0x7fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( xxx_io, AS_IO, 8, xxx_state )
+ADDRESS_MAP_START(xxx_state::xxx_io)
// ADDRESS_MAP_GLOBAL_MASK(0xff)
ADDRESS_MAP_END
diff --git a/src/mame/includes/1942.h b/src/mame/includes/1942.h
index afff730a44e..6509fcce16b 100644
--- a/src/mame/includes/1942.h
+++ b/src/mame/includes/1942.h
@@ -67,4 +67,9 @@ public:
required_device<generic_latch_8_device> m_soundlatch;
void _1942p(machine_config &config);
void _1942(machine_config &config);
+ void c1942_map(address_map &map);
+ void c1942p_map(address_map &map);
+ void c1942p_sound_io(address_map &map);
+ void c1942p_sound_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/1943.h b/src/mame/includes/1943.h
index 92e36ac0955..ec7e874df35 100644
--- a/src/mame/includes/1943.h
+++ b/src/mame/includes/1943.h
@@ -64,4 +64,6 @@ public:
uint32_t screen_update_1943(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, int priority );
void _1943(machine_config &config);
+ void c1943_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/20pacgal.h b/src/mame/includes/20pacgal.h
index 107bba20b7b..08a8fb2cee3 100644
--- a/src/mame/includes/20pacgal.h
+++ b/src/mame/includes/20pacgal.h
@@ -72,6 +72,8 @@ public:
void common_save_state();
void _20pacgal(machine_config &config);
void _20pacgal_video(machine_config &config);
+ void _20pacgal_io_map(address_map &map);
+ void _20pacgal_map(address_map &map);
};
@@ -85,4 +87,6 @@ public:
DECLARE_READ8_MEMBER( _25pacman_io_87_r );
virtual void machine_start() override;
void _25pacman(machine_config &config);
+ void _25pacman_io_map(address_map &map);
+ void _25pacman_map(address_map &map);
};
diff --git a/src/mame/includes/3do.h b/src/mame/includes/3do.h
index a81edeb9ddb..8d176a2401f 100644
--- a/src/mame/includes/3do.h
+++ b/src/mame/includes/3do.h
@@ -180,6 +180,7 @@ public:
void _3do(machine_config &config);
void _3do_pal(machine_config &config);
+ void _3do_mem(address_map &map);
protected:
required_memory_bank m_bank1;
required_memory_bank m_bank2;
diff --git a/src/mame/includes/40love.h b/src/mame/includes/40love.h
index b1a40dce8a4..87f175c6deb 100644
--- a/src/mame/includes/40love.h
+++ b/src/mame/includes/40love.h
@@ -122,6 +122,9 @@ public:
void undoukai(machine_config &config);
void _40love(machine_config &config);
+ void _40love_map(address_map &map);
+ void sound_map(address_map &map);
+ void undoukai_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/4enraya.h b/src/mame/includes/4enraya.h
index f02bb9896b2..1bf1fece436 100644
--- a/src/mame/includes/4enraya.h
+++ b/src/mame/includes/4enraya.h
@@ -54,4 +54,8 @@ public:
virtual void video_start() override;
void unkpacg(machine_config &config);
void _4enraya(machine_config &config);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void unkpacg_main_map(address_map &map);
+ void unkpacg_main_portmap(address_map &map);
};
diff --git a/src/mame/includes/8080bw.h b/src/mame/includes/8080bw.h
index 3a7419b3053..57aa8f98b63 100644
--- a/src/mame/includes/8080bw.h
+++ b/src/mame/includes/8080bw.h
@@ -205,6 +205,43 @@ public:
void spacerng(machine_config &config);
void steelwkr(machine_config &config);
void schaser(machine_config &config);
+ void astropal_io_map(address_map &map);
+ void attackfc_io_map(address_map &map);
+ void ballbomb_io_map(address_map &map);
+ void claybust_io_map(address_map &map);
+ void cosmicmo_io_map(address_map &map);
+ void cosmo_io_map(address_map &map);
+ void cosmo_map(address_map &map);
+ void darthvdr_io_map(address_map &map);
+ void darthvdr_map(address_map &map);
+ void escmars_map(address_map &map);
+ void indianbt_io_map(address_map &map);
+ void indianbtbr_io_map(address_map &map);
+ void invadpt2_io_map(address_map &map);
+ void invmulti_map(address_map &map);
+ void invrvnge_io_map(address_map &map);
+ void invrvnge_sound_map(address_map &map);
+ void lrescue_io_map(address_map &map);
+ void lupin3_io_map(address_map &map);
+ void polaris_io_map(address_map &map);
+ void rollingc_io_map(address_map &map);
+ void rollingc_map(address_map &map);
+ void schaser_io_map(address_map &map);
+ void schaser_map(address_map &map);
+ void schasercv_io_map(address_map &map);
+ void sflush_map(address_map &map);
+ void shuttlei_io_map(address_map &map);
+ void shuttlei_map(address_map &map);
+ void spacecom_io_map(address_map &map);
+ void spacecom_map(address_map &map);
+ void spacerng_io_map(address_map &map);
+ void spcewarla_io_map(address_map &map);
+ void spcewars_io_map(address_map &map);
+ void starw1_io_map(address_map &map);
+ void steelwkr_io_map(address_map &map);
+ void vortex_io_map(address_map &map);
+ void yosakdon_io_map(address_map &map);
+ void yosakdon_map(address_map &map);
};
diff --git a/src/mame/includes/88games.h b/src/mame/includes/88games.h
index c7791e39919..8e61b5e1094 100644
--- a/src/mame/includes/88games.h
+++ b/src/mame/includes/88games.h
@@ -66,4 +66,6 @@ public:
K051960_CB_MEMBER(sprite_callback);
DECLARE_WRITE8_MEMBER(banking_callback);
void _88games(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/a2600.h b/src/mame/includes/a2600.h
index ecf00fce958..338c95f89da 100644
--- a/src/mame/includes/a2600.h
+++ b/src/mame/includes/a2600.h
@@ -75,6 +75,7 @@ public:
void a2600p(machine_config &config);
void a2600(machine_config &config);
void a2600_cartslot(machine_config &config);
+ void a2600_mem(address_map &map);
protected:
required_device<vcs_control_port_device> m_joy1;
required_device<vcs_control_port_device> m_joy2;
diff --git a/src/mame/includes/abc1600.h b/src/mame/includes/abc1600.h
index f0a63689450..01f17f7171a 100644
--- a/src/mame/includes/abc1600.h
+++ b/src/mame/includes/abc1600.h
@@ -139,6 +139,8 @@ public:
int m_partst; // parity test
void abc1600(machine_config &config);
+ void abc1600_mem(address_map &map);
+ void mac_mem(address_map &map);
// peripherals
int m_cs7; // card select address bit 7
int m_bus0; // BUS 0 selected
diff --git a/src/mame/includes/abc80.h b/src/mame/includes/abc80.h
index b7e94b1ecf6..899a47e7e92 100644
--- a/src/mame/includes/abc80.h
+++ b/src/mame/includes/abc80.h
@@ -188,6 +188,8 @@ public:
emu_timer *m_vsync_off_timer;
void abc80(machine_config &config);
void abc80_video(machine_config &config);
+ void abc80_io(address_map &map);
+ void abc80_mem(address_map &map);
};
#endif // MAME_INCLUDES_ABC80_H
diff --git a/src/mame/includes/abc80x.h b/src/mame/includes/abc80x.h
index 74d4a2348c5..d7459ad7290 100644
--- a/src/mame/includes/abc80x.h
+++ b/src/mame/includes/abc80x.h
@@ -150,6 +150,9 @@ public:
// timers
emu_timer *m_ctc_timer;
emu_timer *m_cassette_timer;
+ void abc800c_io(address_map &map);
+ void abc800m_io(address_map &map);
+ void abc800m_mem(address_map &map);
};
@@ -206,6 +209,7 @@ public:
DECLARE_PALETTE_INIT( abc800c );
void abc800c(machine_config &config);
void abc800c_video(machine_config &config);
+ void abc800c_mem(address_map &map);
};
@@ -251,6 +255,8 @@ public:
void abc802(machine_config &config);
void abc802_video(machine_config &config);
+ void abc802_io(address_map &map);
+ void abc802_mem(address_map &map);
};
@@ -326,6 +332,8 @@ public:
void abc806(machine_config &config);
void abc806_video(machine_config &config);
+ void abc806_io(address_map &map);
+ void abc806_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/ac1.h b/src/mame/includes/ac1.h
index 155d8df77f0..ce0851fce96 100644
--- a/src/mame/includes/ac1.h
+++ b/src/mame/includes/ac1.h
@@ -36,6 +36,9 @@ public:
void ac1_32(machine_config &config);
void ac1(machine_config &config);
+ void ac1_32_mem(address_map &map);
+ void ac1_io(address_map &map);
+ void ac1_mem(address_map &map);
private:
required_device<cassette_image_device> m_cassette;
required_device<cpu_device> m_maincpu;
diff --git a/src/mame/includes/actfancr.h b/src/mame/includes/actfancr.h
index d96c1cd0350..6e6e03738eb 100644
--- a/src/mame/includes/actfancr.h
+++ b/src/mame/includes/actfancr.h
@@ -47,4 +47,7 @@ public:
uint32_t screen_update_actfancr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void triothep(machine_config &config);
void actfancr(machine_config &config);
+ void actfan_map(address_map &map);
+ void dec0_s_map(address_map &map);
+ void triothep_map(address_map &map);
};
diff --git a/src/mame/includes/adam.h b/src/mame/includes/adam.h
index 3e7a77f7296..a6356812534 100644
--- a/src/mame/includes/adam.h
+++ b/src/mame/includes/adam.h
@@ -113,6 +113,10 @@ public:
// video state
int m_vdp_nmi;
void adam(machine_config &config);
+ void adam_io(address_map &map);
+ void adam_mem(address_map &map);
+ void m6801_io(address_map &map);
+ void m6801_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/advision.h b/src/mame/includes/advision.h
index 6c7b76f0f6d..1a574382b1a 100644
--- a/src/mame/includes/advision.h
+++ b/src/mame/includes/advision.h
@@ -85,6 +85,8 @@ public:
int m_sound_g;
DECLARE_PALETTE_INIT(advision);
void advision(machine_config &config);
+ void io_map(address_map &map);
+ void program_map(address_map &map);
};
#endif
diff --git a/src/mame/includes/aeroboto.h b/src/mame/includes/aeroboto.h
index 1cc03221a75..c70131dcf77 100644
--- a/src/mame/includes/aeroboto.h
+++ b/src/mame/includes/aeroboto.h
@@ -70,4 +70,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void formatz(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/aerofgt.h b/src/mame/includes/aerofgt.h
index 2ee5264a3b2..f3aefa80d21 100644
--- a/src/mame/includes/aerofgt.h
+++ b/src/mame/includes/aerofgt.h
@@ -155,4 +155,29 @@ public:
void aerofgtb(machine_config &config);
void turbofrc(machine_config &config);
void kickball(machine_config &config);
+ void aerfboo2_map(address_map &map);
+ void aerfboot_map(address_map &map);
+ void aerfboot_sound_map(address_map &map);
+ void aerofgt_map(address_map &map);
+ void aerofgt_sound_portmap(address_map &map);
+ void aerofgtb_map(address_map &map);
+ void karatblz_map(address_map &map);
+ void karatblzbl_map(address_map &map);
+ void karatblzbl_sound_map(address_map &map);
+ void karatblzbl_sound_portmap(address_map &map);
+ void kickball_map(address_map &map);
+ void kickball_sound_map(address_map &map);
+ void kickball_sound_portmap(address_map &map);
+ void oki_map(address_map &map);
+ void pspikes_map(address_map &map);
+ void pspikesb_map(address_map &map);
+ void pspikesc_map(address_map &map);
+ void sound_map(address_map &map);
+ void spikes91_map(address_map &map);
+ void spinlbrk_map(address_map &map);
+ void spinlbrk_sound_portmap(address_map &map);
+ void turbofrc_map(address_map &map);
+ void turbofrc_sound_portmap(address_map &map);
+ void wbbc97_map(address_map &map);
+ void wbbc97_sound_map(address_map &map);
};
diff --git a/src/mame/includes/aim65.h b/src/mame/includes/aim65.h
index f325b93d49c..47ba6f08dd4 100644
--- a/src/mame/includes/aim65.h
+++ b/src/mame/includes/aim65.h
@@ -70,6 +70,7 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(z15_load) { return load_cart(image, m_z15, "z15"); }
void aim65(machine_config &config);
+ void aim65_mem(address_map &map);
protected:
virtual void machine_start() override;
diff --git a/src/mame/includes/airbustr.h b/src/mame/includes/airbustr.h
index b02a1f90f2c..5606bd0b2a5 100644
--- a/src/mame/includes/airbustr.h
+++ b/src/mame/includes/airbustr.h
@@ -87,4 +87,10 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(airbustr_scanline);
void airbustr(machine_config &config);
void airbustrb(machine_config &config);
+ void master_io_map(address_map &map);
+ void master_map(address_map &map);
+ void slave_io_map(address_map &map);
+ void slave_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/ajax.h b/src/mame/includes/ajax.h
index 9d7a6fe28a6..05731e392c8 100644
--- a/src/mame/includes/ajax.h
+++ b/src/mame/includes/ajax.h
@@ -61,4 +61,7 @@ public:
K052109_CB_MEMBER(tile_callback);
K051960_CB_MEMBER(sprite_callback);
void ajax(machine_config &config);
+ void ajax_main_map(address_map &map);
+ void ajax_sound_map(address_map &map);
+ void ajax_sub_map(address_map &map);
};
diff --git a/src/mame/includes/alesis.h b/src/mame/includes/alesis.h
index 4bb762df078..5f84c1a9daf 100644
--- a/src/mame/includes/alesis.h
+++ b/src/mame/includes/alesis.h
@@ -97,6 +97,11 @@ public:
void mmt8(machine_config &config);
void hr16(machine_config &config);
void sr16(machine_config &config);
+ void hr16_io(address_map &map);
+ void hr16_mem(address_map &map);
+ void mmt8_io(address_map &map);
+ void sr16_io(address_map &map);
+ void sr16_mem(address_map &map);
private:
uint8_t m_kb_matrix;
uint8_t m_leds;
diff --git a/src/mame/includes/aliens.h b/src/mame/includes/aliens.h
index 29dd1c211a1..f8bafbc52ae 100644
--- a/src/mame/includes/aliens.h
+++ b/src/mame/includes/aliens.h
@@ -49,4 +49,7 @@ public:
K051960_CB_MEMBER(sprite_callback);
DECLARE_WRITE8_MEMBER(banking_callback);
void aliens(machine_config &config);
+ void aliens_map(address_map &map);
+ void aliens_sound_map(address_map &map);
+ void bank0000_map(address_map &map);
};
diff --git a/src/mame/includes/alpha68k.h b/src/mame/includes/alpha68k.h
index a902418f0a5..684014dd21c 100644
--- a/src/mame/includes/alpha68k.h
+++ b/src/mame/includes/alpha68k.h
@@ -135,6 +135,21 @@ public:
void jongbou(machine_config &config);
void alpha68k_V(machine_config &config);
void alpha68k_II_gm(machine_config &config);
+ void alpha68k_II_map(address_map &map);
+ void alpha68k_I_map(address_map &map);
+ void alpha68k_I_s_map(address_map &map);
+ void alpha68k_V_map(address_map &map);
+ void jongbou_sound_map(address_map &map);
+ void jongbou_sound_portmap(address_map &map);
+ void kyros_map(address_map &map);
+ void kyros_sound_map(address_map &map);
+ void kyros_sound_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void sstingry_sound_map(address_map &map);
+ void tnextspc_map(address_map &map);
+ void tnextspc_sound_map(address_map &map);
+ void tnextspc_sound_portmap(address_map &map);
};
/* game_id - used to deal with a few game specific situations */
diff --git a/src/mame/includes/amiga.h b/src/mame/includes/amiga.h
index 81807781961..63e5fc79375 100644
--- a/src/mame/includes/amiga.h
+++ b/src/mame/includes/amiga.h
@@ -499,6 +499,11 @@ public:
void amiga_base(machine_config &config);
void pal_video(machine_config &config);
void ntsc_video(machine_config &config);
+ void overlay_1mb_map(address_map &map);
+ void overlay_1mb_map32(address_map &map);
+ void overlay_2mb_map16(address_map &map);
+ void overlay_2mb_map32(address_map &map);
+ void overlay_512kb_map(address_map &map);
protected:
// A bit of a trick here: some registers are 32-bit. In order to efficiently
// read them on both big-endian and little-endian systems, we store the custom
diff --git a/src/mame/includes/ampoker2.h b/src/mame/includes/ampoker2.h
index 0a94fe9aef6..c4e90009c5d 100644
--- a/src/mame/includes/ampoker2.h
+++ b/src/mame/includes/ampoker2.h
@@ -37,4 +37,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
void sigma2k(machine_config &config);
void ampoker2(machine_config &config);
+ void ampoker2_io_map(address_map &map);
+ void ampoker2_map(address_map &map);
};
diff --git a/src/mame/includes/amspdwy.h b/src/mame/includes/amspdwy.h
index 131c169e72e..527ba9c9b61 100644
--- a/src/mame/includes/amspdwy.h
+++ b/src/mame/includes/amspdwy.h
@@ -66,4 +66,7 @@ public:
virtual void machine_reset() override;
virtual void video_start() override;
void amspdwy(machine_config &config);
+ void amspdwy_map(address_map &map);
+ void amspdwy_portmap(address_map &map);
+ void amspdwy_sound_map(address_map &map);
};
diff --git a/src/mame/includes/amstrad.h b/src/mame/includes/amstrad.h
index 403d5d89ff3..85705534e8c 100644
--- a/src/mame/includes/amstrad.h
+++ b/src/mame/includes/amstrad.h
@@ -269,6 +269,8 @@ public:
void aleste(machine_config &config);
void kccomp(machine_config &config);
void cpc464(machine_config &config);
+ void amstrad_io(address_map &map);
+ void amstrad_mem(address_map &map);
protected:
required_memory_region m_region_maincpu;
optional_memory_region m_region_user1;
diff --git a/src/mame/includes/angelkds.h b/src/mame/includes/angelkds.h
index 268b5e0f488..25983ec51b2 100644
--- a/src/mame/includes/angelkds.h
+++ b/src/mame/includes/angelkds.h
@@ -68,4 +68,9 @@ public:
optional_shared_ptr<uint8_t> m_decrypted_opcodes;
void angelkds(machine_config &config);
void spcpostn(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void sub_map(address_map &map);
+ void sub_portmap(address_map &map);
};
diff --git a/src/mame/includes/apollo.h b/src/mame/includes/apollo.h
index f311a36014c..a81aeabd522 100644
--- a/src/mame/includes/apollo.h
+++ b/src/mame/includes/apollo.h
@@ -271,6 +271,12 @@ public:
void dn5500(machine_config &config);
void dn5500_15i(machine_config &config);
void dn3500_19i(machine_config &config);
+ void dn3000_map(address_map &map);
+ void dn3500_map(address_map &map);
+ void dn5500_map(address_map &map);
+ void dsp3000_map(address_map &map);
+ void dsp3500_map(address_map &map);
+ void dsp5500_map(address_map &map);
private:
uint32_t ptm_counter;
uint8_t sio_output_data;
diff --git a/src/mame/includes/apple2gs.h b/src/mame/includes/apple2gs.h
index 9e574b0fede..d28996b3ea3 100644
--- a/src/mame/includes/apple2gs.h
+++ b/src/mame/includes/apple2gs.h
@@ -270,6 +270,7 @@ public:
void apple2gs(machine_config &config);
void apple2gsr1(machine_config &config);
+ void apple2gs_map(address_map &map);
};
#endif // MAME_INCLUDES_APPLE2GS_H
diff --git a/src/mame/includes/apple3.h b/src/mame/includes/apple3.h
index 09800a57c9e..1b15abe70a8 100644
--- a/src/mame/includes/apple3.h
+++ b/src/mame/includes/apple3.h
@@ -134,6 +134,7 @@ public:
int m_enable_mask;
void apple3(machine_config &config);
+ void apple3_map(address_map &map);
private:
int m_acia_irq;
uint8_t m_via_0_a;
diff --git a/src/mame/includes/appoooh.h b/src/mame/includes/appoooh.h
index 91b12749e62..d93fdbea760 100644
--- a/src/mame/includes/appoooh.h
+++ b/src/mame/includes/appoooh.h
@@ -70,6 +70,9 @@ public:
void robowres(machine_config &config);
void appoooh(machine_config &config);
void appoooh_common(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
};
#define CHR1_OFST 0x00 /* palette page of char set #1 */
diff --git a/src/mame/includes/aquarium.h b/src/mame/includes/aquarium.h
index efb857deccf..b357cae6700 100644
--- a/src/mame/includes/aquarium.h
+++ b/src/mame/includes/aquarium.h
@@ -66,4 +66,7 @@ public:
void mix_sprite_bitmap(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int priority_mask, int priority_value);
bitmap_ind16 m_temp_sprite_bitmap;
void aquarium(machine_config &config);
+ void main_map(address_map &map);
+ void snd_map(address_map &map);
+ void snd_portmap(address_map &map);
};
diff --git a/src/mame/includes/aquarius.h b/src/mame/includes/aquarius.h
index 94674f508f2..a38464e09d7 100644
--- a/src/mame/includes/aquarius.h
+++ b/src/mame/includes/aquarius.h
@@ -91,5 +91,7 @@ public:
uint32_t screen_update_aquarius(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_INPUT_CHANGED_MEMBER(aquarius_reset);
void aquarius(machine_config &config);
+ void aquarius_io(address_map &map);
+ void aquarius_mem(address_map &map);
};
#endif // MAME_INCLUDES_AQUARIUS_H
diff --git a/src/mame/includes/arabian.h b/src/mame/includes/arabian.h
index 532c249cb5e..f09e3b6a1ef 100644
--- a/src/mame/includes/arabian.h
+++ b/src/mame/includes/arabian.h
@@ -59,4 +59,6 @@ public:
required_device<cpu_device> m_mcu;
required_device<palette_device> m_palette;
void arabian(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/arcadecl.h b/src/mame/includes/arcadecl.h
index f97d186102a..b8823429656 100644
--- a/src/mame/includes/arcadecl.h
+++ b/src/mame/includes/arcadecl.h
@@ -36,4 +36,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void sparkz(machine_config &config);
void arcadecl(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/arcadia.h b/src/mame/includes/arcadia.h
index 171a3ad236f..eb03c399a66 100644
--- a/src/mame/includes/arcadia.h
+++ b/src/mame/includes/arcadia.h
@@ -104,6 +104,7 @@ public:
INTERRUPT_GEN_MEMBER(video_line);
void arcadia(machine_config &config);
+ void arcadia_mem(address_map &map);
protected:
required_device<arcadia_sound_device> m_custom;
required_ioport m_panel;
diff --git a/src/mame/includes/argus.h b/src/mame/includes/argus.h
index 62c434b38ef..9c8c1c28a6d 100644
--- a/src/mame/includes/argus.h
+++ b/src/mame/includes/argus.h
@@ -143,4 +143,11 @@ public:
void valtric(machine_config &config);
void argus(machine_config &config);
void butasan(machine_config &config);
+ void argus_map(address_map &map);
+ void butasan_map(address_map &map);
+ void sound_map_a(address_map &map);
+ void sound_map_b(address_map &map);
+ void sound_portmap_1(address_map &map);
+ void sound_portmap_2(address_map &map);
+ void valtric_map(address_map &map);
};
diff --git a/src/mame/includes/arkanoid.h b/src/mame/includes/arkanoid.h
index 6ba7b022fc7..d14ec9fe432 100644
--- a/src/mame/includes/arkanoid.h
+++ b/src/mame/includes/arkanoid.h
@@ -104,4 +104,11 @@ public:
void hexaa(machine_config &config);
void p3mcu(machine_config &config);
void arkanoid(machine_config &config);
+ void arkanoid_map(address_map &map);
+ void bootleg_map(address_map &map);
+ void brixian_map(address_map &map);
+ void hexa_map(address_map &map);
+ void hexaa_map(address_map &map);
+ void hexaa_sub_iomap(address_map &map);
+ void hexaa_sub_map(address_map &map);
};
diff --git a/src/mame/includes/armedf.h b/src/mame/includes/armedf.h
index 74018162908..79a2623ac97 100644
--- a/src/mame/includes/armedf.h
+++ b/src/mame/includes/armedf.h
@@ -112,6 +112,18 @@ public:
void terrafjb(machine_config &config);
void armedf(machine_config &config);
void kozure(machine_config &config);
+ void armedf_map(address_map &map);
+ void cclimbr2_map(address_map &map);
+ void cclimbr2_soundmap(address_map &map);
+ void kozure_map(address_map &map);
+ void legion_map(address_map &map);
+ void legionjb_map(address_map &map);
+ void sound_3526_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void terraf_map(address_map &map);
+ void terrafjb_extraz80_map(address_map &map);
+ void terrafjb_extraz80_portmap(address_map &map);
};
class bigfghtr_state : public armedf_state
@@ -131,4 +143,7 @@ public:
DECLARE_READ8_MEMBER(main_sharedram_r);
DECLARE_WRITE8_MEMBER(mcu_spritelist_w);
void bigfghtr(machine_config &config);
+ void bigfghtr_map(address_map &map);
+ void bigfghtr_mcu_io_map(address_map &map);
+ void bigfghtr_mcu_map(address_map &map);
};
diff --git a/src/mame/includes/artmagic.h b/src/mame/includes/artmagic.h
index c49789b4705..ba8ce65c5b9 100644
--- a/src/mame/includes/artmagic.h
+++ b/src/mame/includes/artmagic.h
@@ -89,6 +89,14 @@ public:
void artmagic(machine_config &config);
void shtstar(machine_config &config);
void stonebal(machine_config &config);
+ void main_map(address_map &map);
+ void shtstar_guncpu_io_map(address_map &map);
+ void shtstar_guncpu_map(address_map &map);
+ void shtstar_map(address_map &map);
+ void shtstar_subcpu_map(address_map &map);
+ void stonebal_map(address_map &map);
+ void stonebal_tms_map(address_map &map);
+ void tms_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/ashnojoe.h b/src/mame/includes/ashnojoe.h
index 0a974f812f2..98fe31f8249 100644
--- a/src/mame/includes/ashnojoe.h
+++ b/src/mame/includes/ashnojoe.h
@@ -88,4 +88,7 @@ public:
uint32_t screen_update_ashnojoe(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(ashnojoe_vclk_cb);
void ashnojoe(machine_config &config);
+ void ashnojoe_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/asterix.h b/src/mame/includes/asterix.h
index 2a5d43e8981..bf1a7b199ea 100644
--- a/src/mame/includes/asterix.h
+++ b/src/mame/includes/asterix.h
@@ -59,6 +59,8 @@ public:
void reset_spritebank();
void asterix(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/asteroid.h b/src/mame/includes/asteroid.h
index a805fe794c8..984a55b9664 100644
--- a/src/mame/includes/asteroid.h
+++ b/src/mame/includes/asteroid.h
@@ -70,4 +70,7 @@ public:
void asteroid_sound(machine_config &config);
void astdelux_sound(machine_config &config);
void llander_sound(machine_config &config);
+ void astdelux_map(address_map &map);
+ void asteroid_map(address_map &map);
+ void llander_map(address_map &map);
};
diff --git a/src/mame/includes/astrocde.h b/src/mame/includes/astrocde.h
index c0f2f31b52e..06afff09e6b 100644
--- a/src/mame/includes/astrocde.h
+++ b/src/mame/includes/astrocde.h
@@ -209,6 +209,23 @@ public:
void wow(machine_config &config);
void tenpindx(machine_config &config);
void demndrgn(machine_config &config);
+ void bank4000_map(address_map &map);
+ void demndrgn_map(address_map &map);
+ void ebases_map(address_map &map);
+ void port_map(address_map &map);
+ void port_map_16col_pattern(address_map &map);
+ void port_map_16col_pattern_nosound(address_map &map);
+ void port_map_16col_pattern_tenpindx(address_map &map);
+ void port_map_mono_pattern(address_map &map);
+ void port_map_stereo_pattern(address_map &map);
+ void profpac_bank4000_map(address_map &map);
+ void profpac_map(address_map &map);
+ void robby_map(address_map &map);
+ void seawolf2_map(address_map &map);
+ void spacezap_map(address_map &map);
+ void tenpin_sub_io_map(address_map &map);
+ void tenpin_sub_map(address_map &map);
+ void wow_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/astrof.h b/src/mame/includes/astrof.h
index 56dd277235f..d7366db8007 100644
--- a/src/mame/includes/astrof.h
+++ b/src/mame/includes/astrof.h
@@ -99,4 +99,7 @@ public:
void astrof_audio(machine_config &config);
void spfghmk2_audio(machine_config &config);
void tomahawk_audio(machine_config &config);
+ void astrof_map(address_map &map);
+ void spfghmk2_map(address_map &map);
+ void tomahawk_map(address_map &map);
};
diff --git a/src/mame/includes/asuka.h b/src/mame/includes/asuka.h
index 2788fd11429..4b01c3915ff 100644
--- a/src/mame/includes/asuka.h
+++ b/src/mame/includes/asuka.h
@@ -109,6 +109,15 @@ public:
void eto(machine_config &config);
void galmedes(machine_config &config);
void bonzeadv(machine_config &config);
+ void asuka_map(address_map &map);
+ void bonzeadv_map(address_map &map);
+ void bonzeadv_z80_map(address_map &map);
+ void cadash_map(address_map &map);
+ void cadash_sub_io(address_map &map);
+ void cadash_sub_map(address_map &map);
+ void cadash_z80_map(address_map &map);
+ void eto_map(address_map &map);
+ void z80_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/atarifb.h b/src/mame/includes/atarifb.h
index 3368aed423b..cbc9b167e98 100644
--- a/src/mame/includes/atarifb.h
+++ b/src/mame/includes/atarifb.h
@@ -102,6 +102,10 @@ public:
void atarifb(machine_config &config);
void soccer(machine_config &config);
void abaseb(machine_config &config);
+ void abaseb_map(address_map &map);
+ void atarifb4_map(address_map &map);
+ void atarifb_map(address_map &map);
+ void soccer_map(address_map &map);
};
/*----------- defined in audio/atarifb.c -----------*/
diff --git a/src/mame/includes/atarig1.h b/src/mame/includes/atarig1.h
index b6bbfac3327..d4ae52cddca 100644
--- a/src/mame/includes/atarig1.h
+++ b/src/mame/includes/atarig1.h
@@ -72,6 +72,7 @@ public:
void pitfight(machine_config &config);
void hydrap(machine_config &config);
void hydra(machine_config &config);
+ void main_map(address_map &map);
private:
void pitfightb_cheap_slapstic_init();
};
diff --git a/src/mame/includes/atarig42.h b/src/mame/includes/atarig42.h
index 5e03d0a1227..f0e598510b5 100644
--- a/src/mame/includes/atarig42.h
+++ b/src/mame/includes/atarig42.h
@@ -76,4 +76,5 @@ public:
void atarig42(machine_config &config);
void atarig42_0x200(machine_config &config);
void atarig42_0x400(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/atarigt.h b/src/mame/includes/atarigt.h
index d3e1144d42c..86aad4cea95 100644
--- a/src/mame/includes/atarigt.h
+++ b/src/mame/includes/atarigt.h
@@ -91,6 +91,7 @@ public:
void tmek(machine_config &config);
void primrage20(machine_config &config);
void primrage(machine_config &config);
+ void main_map(address_map &map);
private:
void tmek_update_mode(offs_t offset);
void tmek_protection_w(address_space &space, offs_t offset, uint16_t data);
diff --git a/src/mame/includes/atarigx2.h b/src/mame/includes/atarigx2.h
index 7bbd6558ab0..ed924edcf0e 100644
--- a/src/mame/includes/atarigx2.h
+++ b/src/mame/includes/atarigx2.h
@@ -71,4 +71,5 @@ public:
void atarigx2(machine_config &config);
void atarigx2_0x200(machine_config &config);
void atarigx2_0x400(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/atarist.h b/src/mame/includes/atarist.h
index f015381dad8..2f6ef3425f2 100644
--- a/src/mame/includes/atarist.h
+++ b/src/mame/includes/atarist.h
@@ -336,6 +336,9 @@ public:
DECLARE_WRITE_LINE_MEMBER( write_monochrome );
void st(machine_config &config);
+ void ikbd_io_map(address_map &map);
+ void ikbd_map(address_map &map);
+ void st_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -350,6 +353,7 @@ public:
DECLARE_READ16_MEMBER( fpu_r );
DECLARE_WRITE16_MEMBER( fpu_w );
void megast(machine_config &config);
+ void megast_map(address_map &map);
};
class ste_state : public st_state
@@ -433,6 +437,7 @@ public:
void tt030(machine_config &config);
void falcon(machine_config &config);
void ste(machine_config &config);
+ void ste_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -451,6 +456,7 @@ public:
uint16_t m_cache;
void megaste(machine_config &config);
+ void megaste_map(address_map &map);
};
class stbook_state : public ste_state
@@ -471,6 +477,7 @@ public:
DECLARE_WRITE8_MEMBER( psg_pa_w );
DECLARE_READ8_MEMBER( mfp_gpio_r );
+ void stbook_map(address_map &map);
};
#endif // MAME_INCLUDES_ATARI_ST_H
diff --git a/src/mame/includes/atarisy1.h b/src/mame/includes/atarisy1.h
index 845ae5a6b02..2e49fc4ac58 100644
--- a/src/mame/includes/atarisy1.h
+++ b/src/mame/includes/atarisy1.h
@@ -114,4 +114,6 @@ public:
void roadrunn(machine_config &config);
void roadb109(machine_config &config);
void marble(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/atarisy2.h b/src/mame/includes/atarisy2.h
index 44c53f0ab84..61d409d6bf7 100644
--- a/src/mame/includes/atarisy2.h
+++ b/src/mame/includes/atarisy2.h
@@ -132,4 +132,6 @@ public:
void ssprint(machine_config &config);
void _720(machine_config &config);
void csprint(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/atetris.h b/src/mame/includes/atetris.h
index 0ffc4b0423f..9775c1c53dd 100644
--- a/src/mame/includes/atetris.h
+++ b/src/mame/includes/atetris.h
@@ -54,4 +54,7 @@ public:
void atetrisb2(machine_config &config);
void atetrisb3(machine_config &config);
void atetris(machine_config &config);
+ void atetrisb2_map(address_map &map);
+ void atetrisb3_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/atom.h b/src/mame/includes/atom.h
index 0d21fd98489..4dfe53ce59c 100644
--- a/src/mame/includes/atom.h
+++ b/src/mame/includes/atom.h
@@ -120,6 +120,8 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER(atom_atm);
void atombb(machine_config &config);
void atom(machine_config &config);
+ void atom_mem(address_map &map);
+ void atombb_mem(address_map &map);
};
class atomeb_state : public atom_state
@@ -167,6 +169,7 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(e0_load) { return load_cart(image, m_e0); }
DECLARE_DEVICE_IMAGE_LOAD_MEMBER(e1_load) { return load_cart(image, m_e1); }
void atomeb(machine_config &config);
+ void atomeb_mem(address_map &map);
};
#endif // MAME_INCLUDES_ATOM_H
diff --git a/src/mame/includes/aussiebyte.h b/src/mame/includes/aussiebyte.h
index 4553a68ba40..3feb32aabc1 100644
--- a/src/mame/includes/aussiebyte.h
+++ b/src/mame/includes/aussiebyte.h
@@ -99,6 +99,8 @@ public:
MC6845_ON_UPDATE_ADDR_CHANGED(crtc_update_addr);
void aussiebyte(machine_config &config);
+ void aussiebyte_io(address_map &map);
+ void aussiebyte_map(address_map &map);
private:
uint8_t crt8002(uint8_t ac_ra, uint8_t ac_chr, uint8_t ac_attr, uint16_t ac_cnt, bool ac_curs);
bool m_port15; // rom switched in (0), out (1)
diff --git a/src/mame/includes/avalnche.h b/src/mame/includes/avalnche.h
index b73b7a008a2..4116ef7f9f7 100644
--- a/src/mame/includes/avalnche.h
+++ b/src/mame/includes/avalnche.h
@@ -41,4 +41,6 @@ public:
void acatch_sound(machine_config &config);
void avalnche(machine_config &config);
void avalnche_sound(machine_config &config);
+ void catch_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/avigo.h b/src/mame/includes/avigo.h
index 3ee91aaac3d..7719682c7ab 100644
--- a/src/mame/includes/avigo.h
+++ b/src/mame/includes/avigo.h
@@ -112,6 +112,9 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER( avigo);
void avigo(machine_config &config);
+ void avigo_banked_map(address_map &map);
+ void avigo_io(address_map &map);
+ void avigo_mem(address_map &map);
};
#endif // MAME_INCLUDES_AVIGO_H
diff --git a/src/mame/includes/aztarac.h b/src/mame/includes/aztarac.h
index 7b7589c25d3..107c8a071dd 100644
--- a/src/mame/includes/aztarac.h
+++ b/src/mame/includes/aztarac.h
@@ -53,4 +53,6 @@ public:
inline void read_vectorram(uint16_t *vectorram, int addr, int *x, int *y, int *c);
void aztarac(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/b2m.h b/src/mame/includes/b2m.h
index 1aa51bc4981..edc13e599c7 100644
--- a/src/mame/includes/b2m.h
+++ b/src/mame/includes/b2m.h
@@ -57,6 +57,9 @@ public:
void b2mrom(machine_config &config);
void b2m(machine_config &config);
+ void b2m_io(address_map &map);
+ void b2m_mem(address_map &map);
+ void b2m_rom_io(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/badlands.h b/src/mame/includes/badlands.h
index ed1e034fb0e..b995a142cc3 100644
--- a/src/mame/includes/badlands.h
+++ b/src/mame/includes/badlands.h
@@ -58,4 +58,8 @@ public:
static const atari_motion_objects_config s_mob_config;
void badlandsb(machine_config &config);
void badlands(machine_config &config);
+ void audio_map(address_map &map);
+ void bootleg_audio_map(address_map &map);
+ void bootleg_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/bagman.h b/src/mame/includes/bagman.h
index 9b6c3badb46..24d09ea525b 100644
--- a/src/mame/includes/bagman.h
+++ b/src/mame/includes/bagman.h
@@ -86,6 +86,9 @@ public:
void bagman(machine_config &config);
void pickin(machine_config &config);
void sbagmani(machine_config &config);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void pickin_map(address_map &map);
};
/*----------- timings -----------*/
diff --git a/src/mame/includes/balsente.h b/src/mame/includes/balsente.h
index ad48fe0e81b..a1f38f3b683 100644
--- a/src/mame/includes/balsente.h
+++ b/src/mame/includes/balsente.h
@@ -9,6 +9,7 @@
***************************************************************************/
#include "machine/timer.h"
+#include "machine/74259.h"
#include "sound/cem3394.h"
#include "screen.h"
@@ -52,6 +53,7 @@ public:
m_68k(*this, "68k"),
m_screen(*this, "screen"),
m_palette(*this, "palette"),
+ m_outlatch(*this, "outlatch"),
m_generic_paletteram_8(*this, "paletteram") { }
required_device<timer_device> m_scanline_timer;
@@ -242,9 +244,14 @@ public:
optional_device<cpu_device> m_68k;
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
+ required_device<ls259_device> m_outlatch;
required_shared_ptr<uint8_t> m_generic_paletteram_8;
void shrike(machine_config &config);
void balsente(machine_config &config);
+ void cpu1_map(address_map &map);
+ void cpu2_io_map(address_map &map);
+ void cpu2_map(address_map &map);
+ void shrike68k_map(address_map &map);
};
diff --git a/src/mame/includes/bankp.h b/src/mame/includes/bankp.h
index a051a93558d..12e1c0f5527 100644
--- a/src/mame/includes/bankp.h
+++ b/src/mame/includes/bankp.h
@@ -49,4 +49,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void bankp(machine_config &config);
+ void bankp_io_map(address_map &map);
+ void bankp_map(address_map &map);
};
diff --git a/src/mame/includes/baraduke.h b/src/mame/includes/baraduke.h
index e8e4b41eb16..8978d2084db 100644
--- a/src/mame/includes/baraduke.h
+++ b/src/mame/includes/baraduke.h
@@ -56,4 +56,7 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, int sprite_priority);
void set_scroll(int layer);
void baraduke(machine_config &config);
+ void baraduke_map(address_map &map);
+ void mcu_map(address_map &map);
+ void mcu_port_map(address_map &map);
};
diff --git a/src/mame/includes/batman.h b/src/mame/includes/batman.h
index 674074a3559..c07af93c81f 100644
--- a/src/mame/includes/batman.h
+++ b/src/mame/includes/batman.h
@@ -37,4 +37,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void batman(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/battlane.h b/src/mame/includes/battlane.h
index 898a0bf63de..9f7b71edf16 100644
--- a/src/mame/includes/battlane.h
+++ b/src/mame/includes/battlane.h
@@ -52,4 +52,5 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_fg_bitmap( bitmap_ind16 &bitmap );
void battlane(machine_config &config);
+ void battlane_map(address_map &map);
};
diff --git a/src/mame/includes/battlera.h b/src/mame/includes/battlera.h
index ed9a0fd84ae..df5433a7591 100644
--- a/src/mame/includes/battlera.h
+++ b/src/mame/includes/battlera.h
@@ -44,4 +44,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void battlera(machine_config &config);
+ void battlera_map(address_map &map);
+ void battlera_portmap(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/battlex.h b/src/mame/includes/battlex.h
index 12ba1b8a94c..826eedd99a3 100644
--- a/src/mame/includes/battlex.h
+++ b/src/mame/includes/battlex.h
@@ -51,4 +51,7 @@ public:
TILE_GET_INFO_MEMBER(get_dodgeman_bg_tile_info);
void dodgeman(machine_config &config);
void battlex(machine_config &config);
+ void battlex_map(address_map &map);
+ void dodgeman_io_map(address_map &map);
+ void io_map(address_map &map);
};
diff --git a/src/mame/includes/battlnts.h b/src/mame/includes/battlnts.h
index 7b41d0df071..1150ac3d55a 100644
--- a/src/mame/includes/battlnts.h
+++ b/src/mame/includes/battlnts.h
@@ -42,4 +42,6 @@ public:
K007342_CALLBACK_MEMBER(battlnts_tile_callback);
K007420_CALLBACK_MEMBER(battlnts_sprite_callback);
void battlnts(machine_config &config);
+ void battlnts_map(address_map &map);
+ void battlnts_sound_map(address_map &map);
};
diff --git a/src/mame/includes/bbc.h b/src/mame/includes/bbc.h
index 7ca0d652ab6..b3465bfefc9 100644
--- a/src/mame/includes/bbc.h
+++ b/src/mame/includes/bbc.h
@@ -238,6 +238,14 @@ public:
void bbcb_us(machine_config &config);
void econx25(machine_config &config);
void acw443(machine_config &config);
+ void bbc_base(address_map &map);
+ void bbca_mem(address_map &map);
+ void bbcb_mem(address_map &map);
+ void bbcb_nofdc_mem(address_map &map);
+ void bbcbp128_mem(address_map &map);
+ void bbcbp_mem(address_map &map);
+ void bbcm_mem(address_map &map);
+ void reutapm_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
diff --git a/src/mame/includes/bbusters.h b/src/mame/includes/bbusters.h
index b750da93f8c..8c026972105 100644
--- a/src/mame/includes/bbusters.h
+++ b/src/mame/includes/bbusters.h
@@ -75,4 +75,9 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const uint16_t *source, int bank, int colval, int colmask);
void bbusters(machine_config &config);
void mechatt(machine_config &config);
+ void bbusters_map(address_map &map);
+ void mechatt_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void sounda_portmap(address_map &map);
};
diff --git a/src/mame/includes/beathead.h b/src/mame/includes/beathead.h
index e3c36514391..5fd980ae749 100644
--- a/src/mame/includes/beathead.h
+++ b/src/mame/includes/beathead.h
@@ -81,4 +81,5 @@ public:
DECLARE_WRITE32_MEMBER( hsync_ram_w );
TIMER_DEVICE_CALLBACK_MEMBER(scanline_callback);
void beathead(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/bebox.h b/src/mame/includes/bebox.h
index 983b075e257..bd1f87e99a4 100644
--- a/src/mame/includes/bebox.h
+++ b/src/mame/includes/bebox.h
@@ -123,6 +123,8 @@ public:
static void mpc105_config(device_t *device);
void bebox(machine_config &config);
void bebox2(machine_config &config);
+ void bebox_mem(address_map &map);
+ void bebox_slave_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/bfm_ad5.h b/src/mame/includes/bfm_ad5.h
index 395d959ea7e..024f98781db 100644
--- a/src/mame/includes/bfm_ad5.h
+++ b/src/mame/includes/bfm_ad5.h
@@ -13,6 +13,7 @@ public:
{ }
void bfm_ad5(machine_config &config);
+ void ad5_map(address_map &map);
protected:
// devices
diff --git a/src/mame/includes/bfm_sc4.h b/src/mame/includes/bfm_sc4.h
index 960007c369a..beea529a6e1 100644
--- a/src/mame/includes/bfm_sc4.h
+++ b/src/mame/includes/bfm_sc4.h
@@ -646,6 +646,7 @@ public:
void sc4_adder4(machine_config &config);
void sc4_no_reels(machine_config &config);
void sc4dmd(machine_config &config);
+ void sc4_map(address_map &map);
protected:
optional_ioport_array<16> m_io_ports;
};
@@ -668,6 +669,7 @@ public:
// devices
required_device<m68340_cpu_device> m_adder4cpu;
void sc4_adder4(machine_config &config);
+ void sc4_adder4_map(address_map &map);
};
diff --git a/src/mame/includes/bfm_sc5.h b/src/mame/includes/bfm_sc5.h
index 03daa404323..f74fc849f5a 100644
--- a/src/mame/includes/bfm_sc5.h
+++ b/src/mame/includes/bfm_sc5.h
@@ -12,6 +12,7 @@ public:
{ }
void bfm_sc5(machine_config &config);
+ void sc5_map(address_map &map);
protected:
diff --git a/src/mame/includes/bigevglf.h b/src/mame/includes/bigevglf.h
index 0e11775de3f..a433146eeb4 100644
--- a/src/mame/includes/bigevglf.h
+++ b/src/mame/includes/bigevglf.h
@@ -88,4 +88,9 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void bigevglf(machine_config &config);
+ void bigevglf_portmap(address_map &map);
+ void bigevglf_sub_portmap(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
};
diff --git a/src/mame/includes/bigstrkb.h b/src/mame/includes/bigstrkb.h
index 1318cdfc86b..f815f8cc36e 100644
--- a/src/mame/includes/bigstrkb.h
+++ b/src/mame/includes/bigstrkb.h
@@ -44,4 +44,5 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void bigstrkb(machine_config &config);
+ void bigstrkb_map(address_map &map);
};
diff --git a/src/mame/includes/bionicc.h b/src/mame/includes/bionicc.h
index 5252cd66f06..f0761c0956f 100644
--- a/src/mame/includes/bionicc.h
+++ b/src/mame/includes/bionicc.h
@@ -68,4 +68,6 @@ public:
required_device<tigeroad_spr_device> m_spritegen;
required_device<generic_latch_8_device> m_soundlatch;
void bionicc(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/bishi.h b/src/mame/includes/bishi.h
index 173900f033c..56e077620d9 100644
--- a/src/mame/includes/bishi.h
+++ b/src/mame/includes/bishi.h
@@ -40,6 +40,7 @@ public:
void bishi(machine_config &config);
void dobouchn(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/bk.h b/src/mame/includes/bk.h
index 02766b18689..f806b573af3 100644
--- a/src/mame/includes/bk.h
+++ b/src/mame/includes/bk.h
@@ -49,6 +49,8 @@ public:
required_device<cassette_image_device> m_cassette;
void bk0010(machine_config &config);
void bk0010fd(machine_config &config);
+ void bk0010_mem(address_map &map);
+ void bk0010fd_mem(address_map &map);
};
#endif // MAME_INCLUDES_BK_H
diff --git a/src/mame/includes/bking.h b/src/mame/includes/bking.h
index 9beb140e197..69fc79967b6 100644
--- a/src/mame/includes/bking.h
+++ b/src/mame/includes/bking.h
@@ -95,4 +95,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_bking);
void bking(machine_config &config);
void bking3(machine_config &config);
+ void bking3_io_map(address_map &map);
+ void bking_audio_map(address_map &map);
+ void bking_io_map(address_map &map);
+ void bking_map(address_map &map);
};
diff --git a/src/mame/includes/bladestl.h b/src/mame/includes/bladestl.h
index 864f09595e7..93e60d453e9 100644
--- a/src/mame/includes/bladestl.h
+++ b/src/mame/includes/bladestl.h
@@ -69,4 +69,6 @@ public:
K007342_CALLBACK_MEMBER(bladestl_tile_callback);
K007420_CALLBACK_MEMBER(bladestl_sprite_callback);
void bladestl(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/blktiger.h b/src/mame/includes/blktiger.h
index e101bc7e85a..9a57086fdfd 100644
--- a/src/mame/includes/blktiger.h
+++ b/src/mame/includes/blktiger.h
@@ -76,4 +76,10 @@ public:
DECLARE_DRIVER_INIT(blktigerb3);
void blktiger(machine_config &config);
void blktigerbl(machine_config &config);
+ void blktiger_io_map(address_map &map);
+ void blktiger_map(address_map &map);
+ void blktiger_mcu_io_map(address_map &map);
+ void blktiger_mcu_map(address_map &map);
+ void blktiger_sound_map(address_map &map);
+ void blktigerbl_io_map(address_map &map);
};
diff --git a/src/mame/includes/blmbycar.h b/src/mame/includes/blmbycar.h
index 980953c11b7..5c901fb2cef 100644
--- a/src/mame/includes/blmbycar.h
+++ b/src/mame/includes/blmbycar.h
@@ -69,4 +69,8 @@ public:
void draw_sprites( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect );
void watrball(machine_config &config);
void blmbycar(machine_config &config);
+ void blmbycar_map(address_map &map);
+ void blmbycar_oki_map(address_map &map);
+ void common_map(address_map &map);
+ void watrball_map(address_map &map);
};
diff --git a/src/mame/includes/blockout.h b/src/mame/includes/blockout.h
index ede87f0e3c0..51938b5f23b 100644
--- a/src/mame/includes/blockout.h
+++ b/src/mame/includes/blockout.h
@@ -57,4 +57,7 @@ public:
void update_pixels( int x, int y );
void blockout(machine_config &config);
void agress(machine_config &config);
+ void agress_map(address_map &map);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/bloodbro.h b/src/mame/includes/bloodbro.h
index 6e9eea431f5..a1bebc2d9c4 100644
--- a/src/mame/includes/bloodbro.h
+++ b/src/mame/includes/bloodbro.h
@@ -3,7 +3,7 @@
#include "audio/seibu.h"
#include "sound/3812intf.h"
-class bloodbro_state : public driver_device
+class bloodbro_state : public driver_device, protected seibu_sound_common
{
public:
bloodbro_state(const machine_config &mconfig, device_type type, const char *tag)
@@ -69,4 +69,9 @@ public:
void bloodbro(machine_config &config);
void skysmash(machine_config &config);
void weststry(machine_config &config);
+ void bloodbro_map(address_map &map);
+ void common_map(address_map &map);
+ void skysmash_map(address_map &map);
+ void weststry_map(address_map &map);
+ void weststry_sound_map(address_map &map);
};
diff --git a/src/mame/includes/blstroid.h b/src/mame/includes/blstroid.h
index a0c70eb44f0..f07fb0c03db 100644
--- a/src/mame/includes/blstroid.h
+++ b/src/mame/includes/blstroid.h
@@ -47,6 +47,7 @@ public:
static const atari_motion_objects_config s_mob_config;
void blstroid(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/blueprnt.h b/src/mame/includes/blueprnt.h
index 1d976189011..6d23fc3ddab 100644
--- a/src/mame/includes/blueprnt.h
+++ b/src/mame/includes/blueprnt.h
@@ -58,4 +58,8 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void blueprnt(machine_config &config);
void grasspin(machine_config &config);
+ void blueprnt_map(address_map &map);
+ void grasspin_map(address_map &map);
+ void sound_io(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/bogeyman.h b/src/mame/includes/bogeyman.h
index 57edfa08338..7db68e1878f 100644
--- a/src/mame/includes/bogeyman.h
+++ b/src/mame/includes/bogeyman.h
@@ -66,4 +66,5 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void bogeyman(machine_config &config);
+ void bogeyman_map(address_map &map);
};
diff --git a/src/mame/includes/bombjack.h b/src/mame/includes/bombjack.h
index ce251f6f7cd..7c044932529 100644
--- a/src/mame/includes/bombjack.h
+++ b/src/mame/includes/bombjack.h
@@ -38,6 +38,9 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void bombjack(machine_config &config);
+ void audio_io_map(address_map &map);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
private:
/* memory pointers */
required_shared_ptr<uint8_t> m_videoram;
diff --git a/src/mame/includes/boogwing.h b/src/mame/includes/boogwing.h
index 1277d21ce30..9c71487aa24 100644
--- a/src/mame/includes/boogwing.h
+++ b/src/mame/includes/boogwing.h
@@ -74,4 +74,7 @@ public:
DECO16IC_BANK_CB_MEMBER(bank_callback);
DECO16IC_BANK_CB_MEMBER(bank_callback2);
void boogwing(machine_config &config);
+ void audio_map(address_map &map);
+ void boogwing_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
};
diff --git a/src/mame/includes/bosco.h b/src/mame/includes/bosco.h
index d6aeb70c227..fe5473e85f7 100644
--- a/src/mame/includes/bosco.h
+++ b/src/mame/includes/bosco.h
@@ -44,6 +44,7 @@ public:
DECLARE_WRITE8_MEMBER( bosco_scrolly_w );
DECLARE_WRITE8_MEMBER( bosco_starclr_w );
void bosco(machine_config &config);
+ void bosco_map(address_map &map);
};
#endif // MAME_INCLUDES_BOSCO_H
diff --git a/src/mame/includes/bottom9.h b/src/mame/includes/bottom9.h
index 924846edcf7..c8c7fc337ea 100644
--- a/src/mame/includes/bottom9.h
+++ b/src/mame/includes/bottom9.h
@@ -62,4 +62,6 @@ public:
K052109_CB_MEMBER(tile_callback);
K051960_CB_MEMBER(sprite_callback);
void bottom9(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/brkthru.h b/src/mame/includes/brkthru.h
index cd61da90fdd..8e5944e118c 100644
--- a/src/mame/includes/brkthru.h
+++ b/src/mame/includes/brkthru.h
@@ -60,4 +60,7 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, int prio );
void brkthru(machine_config &config);
void darwin(machine_config &config);
+ void brkthru_map(address_map &map);
+ void darwin_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/bsktball.h b/src/mame/includes/bsktball.h
index 0195063f153..e1781d35fb8 100644
--- a/src/mame/includes/bsktball.h
+++ b/src/mame/includes/bsktball.h
@@ -72,6 +72,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void bsktball(machine_config &config);
+ void main_map(address_map &map);
};
/*----------- defined in audio/bsktball.c -----------*/
diff --git a/src/mame/includes/btime.h b/src/mame/includes/btime.h
index 27832ba1424..aa7edc26694 100644
--- a/src/mame/includes/btime.h
+++ b/src/mame/includes/btime.h
@@ -141,4 +141,14 @@ public:
void tisland(machine_config &config);
void zoar(machine_config &config);
void btime(machine_config &config);
+ void audio_map(address_map &map);
+ void bnj_map(address_map &map);
+ void btime_map(address_map &map);
+ void cookrace_map(address_map &map);
+ void disco_audio_map(address_map &map);
+ void disco_map(address_map &map);
+ void lnc_map(address_map &map);
+ void mmonkey_map(address_map &map);
+ void tisland_map(address_map &map);
+ void zoar_map(address_map &map);
};
diff --git a/src/mame/includes/btoads.h b/src/mame/includes/btoads.h
index 89466e26030..78ba755ece0 100644
--- a/src/mame/includes/btoads.h
+++ b/src/mame/includes/btoads.h
@@ -67,6 +67,9 @@ public:
TMS340X0_SCANLINE_RGB32_CB_MEMBER(scanline_update);
void btoads(machine_config &config);
+ void main_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
protected:
// device overrides
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/bublbobl.h b/src/mame/includes/bublbobl.h
index 9a0b3cca40a..1d46d8be00c 100644
--- a/src/mame/includes/bublbobl.h
+++ b/src/mame/includes/bublbobl.h
@@ -137,6 +137,17 @@ public:
void bublbobl_nomcu(machine_config &config);
void bublboblp(machine_config &config);
void tokiob(machine_config &config);
+ void bootleg_map(address_map &map);
+ void bublbobl_maincpu_map(address_map &map);
+ void common_maincpu_map(address_map &map);
+ void mcu_map(address_map &map);
+ void sound_map(address_map &map);
+ void subcpu_map(address_map &map);
+ void tokio_map(address_map &map);
+ void tokio_map_bootleg(address_map &map);
+ void tokio_map_mcu(address_map &map);
+ void tokio_sound_map(address_map &map);
+ void tokio_subcpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/buggychl.h b/src/mame/includes/buggychl.h
index 0edf66fb8b1..f95452a92f7 100644
--- a/src/mame/includes/buggychl.h
+++ b/src/mame/includes/buggychl.h
@@ -84,6 +84,8 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER( pedal_in_r );
void buggychl(machine_config &config);
+ void buggychl_map(address_map &map);
+ void sound_map(address_map &map);
private:
void draw_sky( bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_bg( bitmap_ind16 &bitmap, const rectangle &cliprect );
diff --git a/src/mame/includes/bullet.h b/src/mame/includes/bullet.h
index 9311ec93036..305dd230dd5 100644
--- a/src/mame/includes/bullet.h
+++ b/src/mame/includes/bullet.h
@@ -84,6 +84,8 @@ public:
DECLARE_WRITE8_MEMBER(io_write_byte);
void bullet(machine_config &config);
+ void bullet_io(address_map &map);
+ void bullet_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -161,6 +163,8 @@ public:
DECLARE_WRITE_LINE_MEMBER( req_w );
void bulletf(machine_config &config);
+ void bulletf_io(address_map &map);
+ void bulletf_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/busicom.h b/src/mame/includes/busicom.h
index 83d927b657a..cc60d1c9bb7 100644
--- a/src/mame/includes/busicom.h
+++ b/src/mame/includes/busicom.h
@@ -46,6 +46,11 @@ public:
uint8_t get_bit_selected(uint32_t val,int num);
void busicom(machine_config &config);
+ void busicom_mem(address_map &map);
+ void busicom_mp(address_map &map);
+ void busicom_rom(address_map &map);
+ void busicom_rp(address_map &map);
+ void busicom_stat(address_map &map);
private:
required_device<i4004_cpu_device> m_maincpu;
required_device<palette_device> m_palette;
diff --git a/src/mame/includes/bw12.h b/src/mame/includes/bw12.h
index f9f1af2bc5b..6a10d8db569 100644
--- a/src/mame/includes/bw12.h
+++ b/src/mame/includes/bw12.h
@@ -125,6 +125,8 @@ public:
void common(machine_config &config);
void bw14(machine_config &config);
void bw12(machine_config &config);
+ void bw12_io(address_map &map);
+ void bw12_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/bw2.h b/src/mame/includes/bw2.h
index d1a5e1918e9..0978af8c185 100644
--- a/src/mame/includes/bw2.h
+++ b/src/mame/includes/bw2.h
@@ -94,6 +94,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_busy);
int m_centronics_busy;
void bw2(machine_config &config);
+ void bw2_io(address_map &map);
+ void bw2_mem(address_map &map);
+ void lcdc_map(address_map &map);
};
#endif // MAME_INCLUDES_BW2_H
diff --git a/src/mame/includes/bwidow.h b/src/mame/includes/bwidow.h
index c72e85c0b9c..224f1ae1bb4 100644
--- a/src/mame/includes/bwidow.h
+++ b/src/mame/includes/bwidow.h
@@ -36,6 +36,9 @@ public:
void lunarbat(machine_config &config);
void bwidow_audio(machine_config &config);
void gravitar_audio(machine_config &config);
+ void bwidow_map(address_map &map);
+ void bwidowp_map(address_map &map);
+ void spacduel_map(address_map &map);
};
#endif // MAME_INCLUDES_BWIDOW_H
diff --git a/src/mame/includes/bwing.h b/src/mame/includes/bwing.h
index 6b6edadfb84..1ab9f56e129 100644
--- a/src/mame/includes/bwing.h
+++ b/src/mame/includes/bwing.h
@@ -90,4 +90,9 @@ public:
INTERRUPT_GEN_MEMBER(bwp3_interrupt);
void bwing(machine_config &config);
+ void bank_map(address_map &map);
+ void bwp1_map(address_map &map);
+ void bwp2_map(address_map &map);
+ void bwp3_io_map(address_map &map);
+ void bwp3_map(address_map &map);
};
diff --git a/src/mame/includes/bzone.h b/src/mame/includes/bzone.h
index fbfde507639..1d5aecea14d 100644
--- a/src/mame/includes/bzone.h
+++ b/src/mame/includes/bzone.h
@@ -46,4 +46,6 @@ public:
void redbaron(machine_config &config);
void bzone(machine_config &config);
void bzone_audio(machine_config &config);
+ void bzone_map(address_map &map);
+ void redbaron_map(address_map &map);
};
diff --git a/src/mame/includes/c80.h b/src/mame/includes/c80.h
index e4b8608a648..50674f20fa4 100644
--- a/src/mame/includes/c80.h
+++ b/src/mame/includes/c80.h
@@ -52,6 +52,8 @@ public:
int m_pio1_a5;
int m_pio1_brdy;
void c80(machine_config &config);
+ void c80_io(address_map &map);
+ void c80_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/cabal.h b/src/mame/includes/cabal.h
index 178f3740056..106c173f97f 100644
--- a/src/mame/includes/cabal.h
+++ b/src/mame/includes/cabal.h
@@ -71,4 +71,16 @@ public:
void cabalbl2(machine_config &config);
void cabal(machine_config &config);
void cabalbl(machine_config &config);
+ void cabalbl2_predecrypted_opcodes_map(address_map &map);
+ void cabalbl2_sound_map(address_map &map);
+ void cabalbl_main_map(address_map &map);
+ void cabalbl_sound_map(address_map &map);
+ void cabalbl_talk1_map(address_map &map);
+ void cabalbl_talk1_portmap(address_map &map);
+ void cabalbl_talk2_map(address_map &map);
+ void cabalbl_talk2_portmap(address_map &map);
+ void main_map(address_map &map);
+ void sound_decrypted_opcodes_map(address_map &map);
+ void sound_map(address_map &map);
+ void trackball_main_map(address_map &map);
};
diff --git a/src/mame/includes/calomega.h b/src/mame/includes/calomega.h
index 6492e3e0dc3..8142418b114 100644
--- a/src/mame/includes/calomega.h
+++ b/src/mame/includes/calomega.h
@@ -58,6 +58,10 @@ public:
void s903mod(machine_config &config);
void sys906(machine_config &config);
void sys903(machine_config &config);
+ void s903mod_map(address_map &map);
+ void sys903_map(address_map &map);
+ void sys905_map(address_map &map);
+ void sys906_map(address_map &map);
protected:
virtual void video_start() override;
diff --git a/src/mame/includes/canyon.h b/src/mame/includes/canyon.h
index 06b23f4a748..41a666c8bf3 100644
--- a/src/mame/includes/canyon.h
+++ b/src/mame/includes/canyon.h
@@ -61,6 +61,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void canyon(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/capbowl.h b/src/mame/includes/capbowl.h
index 17859b1a67f..7a243479615 100644
--- a/src/mame/includes/capbowl.h
+++ b/src/mame/includes/capbowl.h
@@ -80,6 +80,9 @@ public:
void bowlrama(machine_config &config);
void capbowl(machine_config &config);
+ void bowlrama_map(address_map &map);
+ void capbowl_map(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/carpolo.h b/src/mame/includes/carpolo.h
index 1fd7be788aa..49e818b161f 100644
--- a/src/mame/includes/carpolo.h
+++ b/src/mame/includes/carpolo.h
@@ -131,4 +131,5 @@ public:
int x2, int y2, int code2, int flipy2,
int *col_x, int *col_y);
void carpolo(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/cave.h b/src/mame/includes/cave.h
index c37849d9c36..3e252256e6b 100644
--- a/src/mame/includes/cave.h
+++ b/src/mame/includes/cave.h
@@ -285,6 +285,38 @@ public:
void dfeveron(machine_config &config);
void ddonpach(machine_config &config);
void pwrinst2(machine_config &config);
+ void crusherm_map(address_map &map);
+ void ddonpach_map(address_map &map);
+ void dfeveron_map(address_map &map);
+ void donpachi_map(address_map &map);
+ void esprade_map(address_map &map);
+ void gaia_map(address_map &map);
+ void guwange_map(address_map &map);
+ void hotdogst_map(address_map &map);
+ void hotdogst_sound_map(address_map &map);
+ void hotdogst_sound_portmap(address_map &map);
+ void korokoro_map(address_map &map);
+ void mazinger_map(address_map &map);
+ void mazinger_sound_map(address_map &map);
+ void mazinger_sound_portmap(address_map &map);
+ void metmqstr_map(address_map &map);
+ void metmqstr_sound_map(address_map &map);
+ void metmqstr_sound_portmap(address_map &map);
+ void oki2_map(address_map &map);
+ void oki_map(address_map &map);
+ void paceight_map(address_map &map);
+ void pacslot_map(address_map &map);
+ void ppsatan_map(address_map &map);
+ void pwrinst2_map(address_map &map);
+ void pwrinst2_sound_map(address_map &map);
+ void pwrinst2_sound_portmap(address_map &map);
+ void sailormn_map(address_map &map);
+ void sailormn_sound_map(address_map &map);
+ void sailormn_sound_portmap(address_map &map);
+ void tekkenbs_map(address_map &map);
+ void tekkencw_map(address_map &map);
+ void tjumpman_map(address_map &map);
+ void uopoko_map(address_map &map);
private:
inline void get_tile_info( tile_data &tileinfo, int tile_index, int GFX );
inline void tilemap_draw( int chip, screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect, uint32_t flags, uint32_t priority, uint32_t priority2, int GFX );
diff --git a/src/mame/includes/cbasebal.h b/src/mame/includes/cbasebal.h
index f37de9f0fec..dd3a7b95b9a 100644
--- a/src/mame/includes/cbasebal.h
+++ b/src/mame/includes/cbasebal.h
@@ -59,4 +59,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void cbasebal(machine_config &config);
+ void cbasebal_map(address_map &map);
+ void cbasebal_portmap(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
};
diff --git a/src/mame/includes/cbuster.h b/src/mame/includes/cbuster.h
index 0e1d78252e1..8d59795860d 100644
--- a/src/mame/includes/cbuster.h
+++ b/src/mame/includes/cbuster.h
@@ -69,4 +69,6 @@ public:
DECLARE_WRITE16_MEMBER(cbuster_palette_ext_w);
void update_palette(int offset);
void twocrude(machine_config &config);
+ void sound_map(address_map &map);
+ void twocrude_map(address_map &map);
};
diff --git a/src/mame/includes/ccastles.h b/src/mame/includes/ccastles.h
index f1560b27af7..34c601bc64d 100644
--- a/src/mame/includes/ccastles.h
+++ b/src/mame/includes/ccastles.h
@@ -83,4 +83,5 @@ public:
inline void bitmode_autoinc( );
inline void schedule_next_irq( int curscanline );
void ccastles(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/cchasm.h b/src/mame/includes/cchasm.h
index 29ab204210b..3d75f5774d6 100644
--- a/src/mame/includes/cchasm.h
+++ b/src/mame/includes/cchasm.h
@@ -76,6 +76,9 @@ public:
void refresh();
void cchasm(machine_config &config);
+ void memmap(address_map &map);
+ void sound_memmap(address_map &map);
+ void sound_portmap(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/cclimber.h b/src/mame/includes/cclimber.h
index c19e86c488a..f95912a5930 100644
--- a/src/mame/includes/cclimber.h
+++ b/src/mame/includes/cclimber.h
@@ -122,4 +122,20 @@ public:
void cclimber(machine_config &config);
void cclimberx(machine_config &config);
void ckongb(machine_config &config);
+ void bagmanf_map(address_map &map);
+ void cannonb_map(address_map &map);
+ void cclimber_map(address_map &map);
+ void cclimber_portmap(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void guzzler_map(address_map &map);
+ void swimmer_audio_map(address_map &map);
+ void swimmer_audio_portmap(address_map &map);
+ void swimmer_map(address_map &map);
+ void toprollr_decrypted_opcodes_map(address_map &map);
+ void toprollr_map(address_map &map);
+ void yamato_audio_map(address_map &map);
+ void yamato_audio_portmap(address_map &map);
+ void yamato_decrypted_opcodes_map(address_map &map);
+ void yamato_map(address_map &map);
+ void yamato_portmap(address_map &map);
};
diff --git a/src/mame/includes/cdi.h b/src/mame/includes/cdi.h
index 70851a66005..401850c9e4e 100644
--- a/src/mame/includes/cdi.h
+++ b/src/mame/includes/cdi.h
@@ -130,6 +130,12 @@ public:
void quizard3(machine_config &config);
void quizard1(machine_config &config);
void quizard(machine_config &config);
+ void cdi910_mem(address_map &map);
+ void cdimono1_mem(address_map &map);
+ void cdimono2_mem(address_map &map);
+ void cdimono2_servo_mem(address_map &map);
+ void cdimono2_slave_mem(address_map &map);
+ void mcu_io_map(address_map &map);
};
/*----------- debug defines -----------*/
diff --git a/src/mame/includes/centiped.h b/src/mame/includes/centiped.h
index 7d6e5fff8be..03b4da3603e 100644
--- a/src/mame/includes/centiped.h
+++ b/src/mame/includes/centiped.h
@@ -120,4 +120,16 @@ public:
void mazeinv(machine_config &config);
void warlords(machine_config &config);
void multiped(machine_config &config);
+ void bullsdrt_data_map(address_map &map);
+ void bullsdrt_map(address_map &map);
+ void bullsdrt_port_map(address_map &map);
+ void caterplr_map(address_map &map);
+ void centipdb_map(address_map &map);
+ void centiped_base_map(address_map &map);
+ void centiped_map(address_map &map);
+ void magworm_map(address_map &map);
+ void mazeinv_map(address_map &map);
+ void milliped_map(address_map &map);
+ void multiped_map(address_map &map);
+ void warlords_map(address_map &map);
};
diff --git a/src/mame/includes/cgc7900.h b/src/mame/includes/cgc7900.h
index 649fa782a6e..81d32ba4c66 100644
--- a/src/mame/includes/cgc7900.h
+++ b/src/mame/includes/cgc7900.h
@@ -121,6 +121,8 @@ public:
void cgc7900(machine_config &config);
void cgc7900_video(machine_config &config);
+ void cgc7900_mem(address_map &map);
+ void keyboard_mem(address_map &map);
private:
u16 kbd_mods;
u8 kbd_data;
diff --git a/src/mame/includes/chaknpop.h b/src/mame/includes/chaknpop.h
index d20244a9586..23409f2198f 100644
--- a/src/mame/includes/chaknpop.h
+++ b/src/mame/includes/chaknpop.h
@@ -60,4 +60,5 @@ public:
void mcu_update_seed(uint8_t data);
void chaknpop(machine_config &config);
+ void chaknpop_map(address_map &map);
};
diff --git a/src/mame/includes/champbas.h b/src/mame/includes/champbas.h
index be79e52624e..40c7d3c4b28 100644
--- a/src/mame/includes/champbas.h
+++ b/src/mame/includes/champbas.h
@@ -89,4 +89,15 @@ public:
void champbasj(machine_config &config);
void exctsccrb(machine_config &config);
void champbasja(machine_config &config);
+ void champbas_map(address_map &map);
+ void champbas_sound_map(address_map &map);
+ void champbasj_map(address_map &map);
+ void champbasja_map(address_map &map);
+ void champbasjb_map(address_map &map);
+ void champbb2_map(address_map &map);
+ void exctsccr_map(address_map &map);
+ void exctsccr_sound_io_map(address_map &map);
+ void exctsccr_sound_map(address_map &map);
+ void exctsccrb_map(address_map &map);
+ void tbasebal_map(address_map &map);
};
diff --git a/src/mame/includes/changela.h b/src/mame/includes/changela.h
index ae3ae4c30be..f2a4403277d 100644
--- a/src/mame/includes/changela.h
+++ b/src/mame/includes/changela.h
@@ -87,6 +87,7 @@ public:
void draw_tree( bitmap_ind16 &bitmap, int sy, int tree_num );
void changela(machine_config &config);
+ void changela_map(address_map &map);
protected:
// memory pointers
required_shared_ptr<u8> m_spriteram;
diff --git a/src/mame/includes/channelf.h b/src/mame/includes/channelf.h
index 8ad8ebe089d..145eaccf345 100644
--- a/src/mame/includes/channelf.h
+++ b/src/mame/includes/channelf.h
@@ -53,6 +53,8 @@ public:
void sabavpl2(machine_config &config);
void sabavdpl(machine_config &config);
void channlf2(machine_config &config);
+ void channelf_io(address_map &map);
+ void channelf_map(address_map &map);
};
#endif // MAME_INCLUDES_CHANNELF_H
diff --git a/src/mame/includes/cheekyms.h b/src/mame/includes/cheekyms.h
index 408e221eabf..6efa145b730 100644
--- a/src/mame/includes/cheekyms.h
+++ b/src/mame/includes/cheekyms.h
@@ -43,6 +43,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void cheekyms(machine_config &config);
+ void io_map(address_map &map);
+ void main_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
diff --git a/src/mame/includes/chqflag.h b/src/mame/includes/chqflag.h
index 5f21b1109d1..3d9be8f0117 100644
--- a/src/mame/includes/chqflag.h
+++ b/src/mame/includes/chqflag.h
@@ -47,6 +47,9 @@ public:
K051960_CB_MEMBER(sprite_callback);
uint32_t screen_update_chqflag(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void chqflag(machine_config &config);
+ void bank1000_map(address_map &map);
+ void chqflag_map(address_map &map);
+ void chqflag_sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/cidelsa.h b/src/mame/includes/cidelsa.h
index 4f09b21e6fc..ac5468c86e5 100644
--- a/src/mame/includes/cidelsa.h
+++ b/src/mame/includes/cidelsa.h
@@ -89,6 +89,12 @@ public:
void destryer(machine_config &config);
void destryer_video(machine_config &config);
void altair_video(machine_config &config);
+ void altair_io_map(address_map &map);
+ void altair_map(address_map &map);
+ void cidelsa_page_ram(address_map &map);
+ void destryer_io_map(address_map &map);
+ void destryer_map(address_map &map);
+ void destryera_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -122,6 +128,10 @@ public:
int m_psg_latch;
void draco(machine_config &config);
void draco_video(machine_config &config);
+ void draco_io_map(address_map &map);
+ void draco_map(address_map &map);
+ void draco_page_ram(address_map &map);
+ void draco_sound_map(address_map &map);
};
#endif // MAME_INCLUDES_CIDELSA_H
diff --git a/src/mame/includes/cinemat.h b/src/mame/includes/cinemat.h
index 7c63f9a4298..3a078ee17df 100644
--- a/src/mame/includes/cinemat.h
+++ b/src/mame/includes/cinemat.h
@@ -195,4 +195,14 @@ public:
void wotw_sound(machine_config &config);
void demon_sound(machine_config &config);
void qb3_sound(machine_config &config);
+ void data_map(address_map &map);
+ void data_map_qb3(address_map &map);
+ void demon_sound_map(address_map &map);
+ void demon_sound_ports(address_map &map);
+ void io_map(address_map &map);
+ void io_map_qb3(address_map &map);
+ void program_map_16k(address_map &map);
+ void program_map_32k(address_map &map);
+ void program_map_4k(address_map &map);
+ void program_map_8k(address_map &map);
};
diff --git a/src/mame/includes/circus.h b/src/mame/includes/circus.h
index de12b3d438d..c60f6e84aa7 100644
--- a/src/mame/includes/circus.h
+++ b/src/mame/includes/circus.h
@@ -65,6 +65,7 @@ public:
void ripcord(machine_config &config);
void crash(machine_config &config);
void circus(machine_config &config);
+ void circus_map(address_map &map);
};
/*----------- defined in audio/circus.c -----------*/
diff --git a/src/mame/includes/circusc.h b/src/mame/includes/circusc.h
index 2b4cd031295..4c4adccf4bd 100644
--- a/src/mame/includes/circusc.h
+++ b/src/mame/includes/circusc.h
@@ -74,4 +74,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void circusc(machine_config &config);
+ void circusc_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/cischeat.h b/src/mame/includes/cischeat.h
index 75fa7d49907..9a6adcbcafb 100644
--- a/src/mame/includes/cischeat.h
+++ b/src/mame/includes/cischeat.h
@@ -165,4 +165,25 @@ public:
void captflag(machine_config &config);
void bigrun(machine_config &config);
void wildplt(machine_config &config);
+ void armchmp2_map(address_map &map);
+ void bigrun_map(address_map &map);
+ void bigrun_map2(address_map &map);
+ void bigrun_map3(address_map &map);
+ void bigrun_sound_map(address_map &map);
+ void captflag_map(address_map &map);
+ void captflag_oki1_map(address_map &map);
+ void captflag_oki2_map(address_map &map);
+ void cischeat_map(address_map &map);
+ void cischeat_map2(address_map &map);
+ void cischeat_map3(address_map &map);
+ void cischeat_sound_map(address_map &map);
+ void f1gpstar_map(address_map &map);
+ void f1gpstar_map2(address_map &map);
+ void f1gpstar_map3(address_map &map);
+ void f1gpstar_sound_map(address_map &map);
+ void f1gpstr2_io_map(address_map &map);
+ void f1gpstr2_map(address_map &map);
+ void f1gpstr2_sound_map(address_map &map);
+ void scudhamm_map(address_map &map);
+ void wildplt_map(address_map &map);
};
diff --git a/src/mame/includes/citycon.h b/src/mame/includes/citycon.h
index 7058732e8ba..8da49520582 100644
--- a/src/mame/includes/citycon.h
+++ b/src/mame/includes/citycon.h
@@ -51,4 +51,6 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
inline void changecolor_RRRRGGGGBBBBxxxx( int color, int indx );
void citycon(machine_config &config);
+ void citycon_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/cloak.h b/src/mame/includes/cloak.h
index fa368e062da..8205ef9134d 100644
--- a/src/mame/includes/cloak.h
+++ b/src/mame/includes/cloak.h
@@ -60,4 +60,6 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void cloak(machine_config &config);
+ void master_map(address_map &map);
+ void slave_map(address_map &map);
};
diff --git a/src/mame/includes/cloud9.h b/src/mame/includes/cloud9.h
index 2263f03b94c..b886f300e10 100644
--- a/src/mame/includes/cloud9.h
+++ b/src/mame/includes/cloud9.h
@@ -77,4 +77,5 @@ public:
inline void bitmode_autoinc( );
inline void schedule_next_irq(int curscanline);
void cloud9(machine_config &config);
+ void cloud9_map(address_map &map);
};
diff --git a/src/mame/includes/clshroad.h b/src/mame/includes/clshroad.h
index 06690153703..37c0a773923 100644
--- a/src/mame/includes/clshroad.h
+++ b/src/mame/includes/clshroad.h
@@ -57,4 +57,6 @@ public:
INTERRUPT_GEN_MEMBER(sound_timer_irq);
void firebatl(machine_config &config);
void clshroad(machine_config &config);
+ void clshroad_map(address_map &map);
+ void clshroad_sound_map(address_map &map);
};
diff --git a/src/mame/includes/cninja.h b/src/mame/includes/cninja.h
index fa3e4791515..7e840150af2 100644
--- a/src/mame/includes/cninja.h
+++ b/src/mame/includes/cninja.h
@@ -118,4 +118,15 @@ public:
void stoneage(machine_config &config);
void cninjabl2(machine_config &config);
void mutantf(machine_config &config);
+ void cninja_map(address_map &map);
+ void cninjabl2_oki_map(address_map &map);
+ void cninjabl2_s_map(address_map &map);
+ void cninjabl_map(address_map &map);
+ void cninjabl_sound_map(address_map &map);
+ void edrandy_map(address_map &map);
+ void mutantf_map(address_map &map);
+ void robocop2_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_map_mutantf(address_map &map);
+ void stoneage_s_map(address_map &map);
};
diff --git a/src/mame/includes/coco.h b/src/mame/includes/coco.h
index f0675dbf99c..9267bd49382 100644
--- a/src/mame/includes/coco.h
+++ b/src/mame/includes/coco.h
@@ -134,6 +134,8 @@ public:
void coco_sound(machine_config &config);
void coco_floating(machine_config &config);
+ void coco_floating_map(address_map &map);
+ void coco_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/includes/coco3.h b/src/mame/includes/coco3.h
index eb8c5ae86bb..ffcb05f77a9 100644
--- a/src/mame/includes/coco3.h
+++ b/src/mame/includes/coco3.h
@@ -53,6 +53,7 @@ public:
void coco3h(machine_config &config);
void coco3dw1(machine_config &config);
void coco3(machine_config &config);
+ void coco3_mem(address_map &map);
protected:
virtual void update_cart_base(uint8_t *cart_base) override;
diff --git a/src/mame/includes/coleco.h b/src/mame/includes/coleco.h
index f8624113a17..742f7a387dd 100644
--- a/src/mame/includes/coleco.h
+++ b/src/mame/includes/coleco.h
@@ -63,6 +63,9 @@ public:
void coleco(machine_config &config);
void czz50(machine_config &config);
void dina(machine_config &config);
+ void coleco_io_map(address_map &map);
+ void coleco_map(address_map &map);
+ void czz50_map(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<colecovision_cartridge_slot_device> m_cart;
diff --git a/src/mame/includes/combatsc.h b/src/mame/includes/combatsc.h
index 6ec23be4e8c..46aed45cddb 100644
--- a/src/mame/includes/combatsc.h
+++ b/src/mame/includes/combatsc.h
@@ -116,4 +116,8 @@ public:
void bootleg_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, const uint8_t *source, int circuit );
void combatscb(machine_config &config);
void combatsc(machine_config &config);
+ void combatsc_map(address_map &map);
+ void combatsc_sound_map(address_map &map);
+ void combatscb_map(address_map &map);
+ void combatscb_sound_map(address_map &map);
};
diff --git a/src/mame/includes/commando.h b/src/mame/includes/commando.h
index fbb96181f61..d8e35c8d72e 100644
--- a/src/mame/includes/commando.h
+++ b/src/mame/includes/commando.h
@@ -61,4 +61,7 @@ public:
required_device<palette_device> m_palette;
optional_shared_ptr<uint8_t> m_decrypted_opcodes;
void commando(machine_config &config);
+ void commando_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/compgolf.h b/src/mame/includes/compgolf.h
index 09a63c9fe20..a317339707e 100644
--- a/src/mame/includes/compgolf.h
+++ b/src/mame/includes/compgolf.h
@@ -53,4 +53,5 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void compgolf(machine_config &config);
+ void compgolf_map(address_map &map);
};
diff --git a/src/mame/includes/comquest.h b/src/mame/includes/comquest.h
index d2036f3dcdd..bcbdb9d3dfd 100644
--- a/src/mame/includes/comquest.h
+++ b/src/mame/includes/comquest.h
@@ -28,6 +28,7 @@ public:
uint32_t screen_update_comquest(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
required_device<cpu_device> m_maincpu;
void comquest(machine_config &config);
+ void comquest_mem(address_map &map);
};
#endif // MAME_INCLUDES_COMQUEST_H
diff --git a/src/mame/includes/comx35.h b/src/mame/includes/comx35.h
index bc175f91c9f..fce9268c2c3 100644
--- a/src/mame/includes/comx35.h
+++ b/src/mame/includes/comx35.h
@@ -92,6 +92,9 @@ public:
void comx35_pal_video(machine_config &config);
void comx35_ntsc_video(machine_config &config);
+ void cdp1869_page_ram(address_map &map);
+ void comx35_io(address_map &map);
+ void comx35_mem(address_map &map);
// processor state
int m_clear; // CPU mode
int m_q; // Q flag
diff --git a/src/mame/includes/concept.h b/src/mame/includes/concept.h
index f5bd670d2ac..b6705caedc9 100644
--- a/src/mame/includes/concept.h
+++ b/src/mame/includes/concept.h
@@ -67,6 +67,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(via_irq_func);
void concept_set_interrupt(int level, int state);
void concept(machine_config &config);
+ void concept_memmap(address_map &map);
};
#endif // MAME_INCLUDES_CONCEPT_H
diff --git a/src/mame/includes/contra.h b/src/mame/includes/contra.h
index ac1bb79c5f6..3c508fd600b 100644
--- a/src/mame/includes/contra.h
+++ b/src/mame/includes/contra.h
@@ -77,4 +77,6 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void contra(machine_config &config);
+ void contra_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/coolpool.h b/src/mame/includes/coolpool.h
index 3e2f91f2437..878754ae9f2 100644
--- a/src/mame/includes/coolpool.h
+++ b/src/mame/includes/coolpool.h
@@ -80,4 +80,11 @@ public:
void _9ballsht(machine_config &config);
void coolpool(machine_config &config);
void amerdart(machine_config &config);
+ void amerdart_dsp_io_map(address_map &map);
+ void amerdart_dsp_pgm_map(address_map &map);
+ void amerdart_map(address_map &map);
+ void coolpool_dsp_io_map(address_map &map);
+ void coolpool_dsp_pgm_map(address_map &map);
+ void coolpool_map(address_map &map);
+ void nballsht_map(address_map &map);
};
diff --git a/src/mame/includes/cop01.h b/src/mame/includes/cop01.h
index b3172c094e9..2112905a2b3 100644
--- a/src/mame/includes/cop01.h
+++ b/src/mame/includes/cop01.h
@@ -68,4 +68,10 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void mightguy(machine_config &config);
void cop01(machine_config &config);
+ void audio_io_map(address_map &map);
+ void cop01_map(address_map &map);
+ void io_map(address_map &map);
+ void mightguy_audio_io_map(address_map &map);
+ void mightguy_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/copsnrob.h b/src/mame/includes/copsnrob.h
index 143b754b75b..13657ac4120 100644
--- a/src/mame/includes/copsnrob.h
+++ b/src/mame/includes/copsnrob.h
@@ -51,4 +51,5 @@ public:
required_device<palette_device> m_palette;
void copsnrob(machine_config &config);
void copsnrob_audio(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/cosmic.h b/src/mame/includes/cosmic.h
index 739b369ac43..59a8c2b2a3e 100644
--- a/src/mame/includes/cosmic.h
+++ b/src/mame/includes/cosmic.h
@@ -115,4 +115,9 @@ public:
void devzone(machine_config &config);
void panic(machine_config &config);
void magspot(machine_config &config);
+ void cosmica_map(address_map &map);
+ void cosmicg_io_map(address_map &map);
+ void cosmicg_map(address_map &map);
+ void magspot_map(address_map &map);
+ void panic_map(address_map &map);
};
diff --git a/src/mame/includes/cosmicos.h b/src/mame/includes/cosmicos.h
index 7315ded1618..a0210af1c20 100644
--- a/src/mame/includes/cosmicos.h
+++ b/src/mame/includes/cosmicos.h
@@ -136,6 +136,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(digit_tick);
TIMER_DEVICE_CALLBACK_MEMBER(int_tick);
void cosmicos(machine_config &config);
+ void cosmicos_io(address_map &map);
+ void cosmicos_mem(address_map &map);
};
#endif // MAME_INCLUDES_COSMICOS_H
diff --git a/src/mame/includes/cps1.h b/src/mame/includes/cps1.h
index da5542755d4..778855263d7 100644
--- a/src/mame/includes/cps1.h
+++ b/src/mame/includes/cps1.h
@@ -435,12 +435,37 @@ public:
void wofhfh(machine_config &config);
void cps1_10MHz(machine_config &config);
void pang3(machine_config &config);
+ void cps2_map(address_map &map);
+ void dead_cps2_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void dinopic_map(address_map &map);
+ void fcrash_map(address_map &map);
+ void forgottn_map(address_map &map);
+ void knightsb_map(address_map &map);
+ void knightsb_z80map(address_map &map);
+ void kodb_sound_map(address_map &map);
+ void main_map(address_map &map);
+ void punipic_map(address_map &map);
+ void qsound_decrypted_opcodes_map(address_map &map);
+ void qsound_main_map(address_map &map);
+ void qsound_sub_map(address_map &map);
+ void sf2b_map(address_map &map);
+ void sf2m10_map(address_map &map);
+ void sf2m1_map(address_map &map);
+ void sf2m3_map(address_map &map);
+ void sf2mdt_map(address_map &map);
+ void sf2mdt_z80map(address_map &map);
+ void sgyxz_map(address_map &map);
+ void sgyxz_sound_map(address_map &map);
+ void wofabl_map(address_map &map);
+ void slampic_map(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
+ void varthb_map(address_map &map);
};
/*----------- defined in drivers/cps1.c -----------*/
-ADDRESS_MAP_EXTERN( qsound_sub_map, 8 );
-
GFXDECODE_EXTERN( cps1 );
INPUT_PORTS_EXTERN( dino );
diff --git a/src/mame/includes/cps3.h b/src/mame/includes/cps3.h
index ac737f04d1a..6500008d7c9 100644
--- a/src/mame/includes/cps3.h
+++ b/src/mame/includes/cps3.h
@@ -164,4 +164,6 @@ public:
void simm5_128mbit(machine_config &config);
void simm5_32mbit(machine_config &config);
void simm6_128mbit(machine_config &config);
+ void cps3_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
};
diff --git a/src/mame/includes/crbaloon.h b/src/mame/includes/crbaloon.h
index 70a4558b5c9..e8ce269de32 100644
--- a/src/mame/includes/crbaloon.h
+++ b/src/mame/includes/crbaloon.h
@@ -65,4 +65,6 @@ public:
void crbaloon_audio_set_appear_enable(int enabled);
void crbaloon(machine_config &config);
void crbaloon_audio(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/crgolf.h b/src/mame/includes/crgolf.h
index 84ff4825603..74284034e89 100644
--- a/src/mame/includes/crgolf.h
+++ b/src/mame/includes/crgolf.h
@@ -83,4 +83,11 @@ public:
void crgolf(machine_config &config);
void crgolf_video(machine_config &config);
void mastrglf(machine_config &config);
+ void main_map(address_map &map);
+ void mastrglf_io(address_map &map);
+ void mastrglf_map(address_map &map);
+ void mastrglf_subio(address_map &map);
+ void mastrglf_submap(address_map &map);
+ void sound_map(address_map &map);
+ void vrambank_map(address_map &map);
};
diff --git a/src/mame/includes/crimfght.h b/src/mame/includes/crimfght.h
index a97b6b74091..306c7082874 100644
--- a/src/mame/includes/crimfght.h
+++ b/src/mame/includes/crimfght.h
@@ -53,6 +53,9 @@ public:
DECLARE_CUSTOM_INPUT_MEMBER(system_r);
void crimfght(machine_config &config);
+ void bank0000_map(address_map &map);
+ void crimfght_map(address_map &map);
+ void crimfght_sound_map(address_map &map);
private:
int m_woco;
int m_rmrd;
diff --git a/src/mame/includes/crospang.h b/src/mame/includes/crospang.h
index 54864e4d718..60f712f9723 100644
--- a/src/mame/includes/crospang.h
+++ b/src/mame/includes/crospang.h
@@ -60,4 +60,10 @@ public:
void crospang(machine_config &config);
void bestri(machine_config &config);
void bestria(machine_config &config);
+ void bestri_map(address_map &map);
+ void bestria_map(address_map &map);
+ void crospang_base_map(address_map &map);
+ void crospang_map(address_map &map);
+ void crospang_sound_io_map(address_map &map);
+ void crospang_sound_map(address_map &map);
};
diff --git a/src/mame/includes/crshrace.h b/src/mame/includes/crshrace.h
index 1f9b81f2d23..0c6d20e7660 100644
--- a/src/mame/includes/crshrace.h
+++ b/src/mame/includes/crshrace.h
@@ -66,4 +66,7 @@ public:
void draw_bg( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_fg(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void crshrace(machine_config &config);
+ void crshrace_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/crvision.h b/src/mame/includes/crvision.h
index fbacf881675..76c8dce7c87 100644
--- a/src/mame/includes/crvision.h
+++ b/src/mame/includes/crvision.h
@@ -66,6 +66,7 @@ public:
void creativision(machine_config &config);
void ntsc(machine_config &config);
+ void crvision_map(address_map &map);
protected:
virtual void machine_start() override;
};
@@ -109,6 +110,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( pia_cb2_w );
void lasr2001(machine_config &config);
+ void lasr2001_map(address_map &map);
protected:
virtual void machine_start() override;
};
diff --git a/src/mame/includes/cvs.h b/src/mame/includes/cvs.h
index 254e9adadcb..64a5240d6bd 100644
--- a/src/mame/includes/cvs.h
+++ b/src/mame/includes/cvs.h
@@ -140,4 +140,9 @@ public:
void cvs_update_stars(bitmap_ind16 &bitmap, const rectangle &cliprect, const pen_t star_pen, bool update_always);
void start_393hz_timer();
void cvs(machine_config &config);
+ void cvs_dac_cpu_map(address_map &map);
+ void cvs_main_cpu_data_map(address_map &map);
+ void cvs_main_cpu_io_map(address_map &map);
+ void cvs_main_cpu_map(address_map &map);
+ void cvs_speech_cpu_map(address_map &map);
};
diff --git a/src/mame/includes/cxhumax.h b/src/mame/includes/cxhumax.h
index 347de3ef4f8..bd8a4048e6d 100644
--- a/src/mame/includes/cxhumax.h
+++ b/src/mame/includes/cxhumax.h
@@ -167,6 +167,7 @@ public:
uint32_t screen_update_cxhumax(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
TIMER_CALLBACK_MEMBER(timer_tick);
void cxhumax(machine_config &config);
+ void cxhumax_map(address_map &map);
};
#define INTDEST 0 // Interrupt destination (1=IRQ, 0=FIQ)
diff --git a/src/mame/includes/cyberbal.h b/src/mame/includes/cyberbal.h
index 6ba79e676b8..5d245813bc5 100644
--- a/src/mame/includes/cyberbal.h
+++ b/src/mame/includes/cyberbal.h
@@ -101,6 +101,11 @@ public:
void cyberbalt(machine_config &config);
void cyberbal2p(machine_config &config);
void cyberbal(machine_config &config);
+ void cyberbal2p_map(address_map &map);
+ void extra_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_68k_map(address_map &map);
+ void sound_map(address_map &map);
private:
void video_start_common(int screens);
void cyberbal_sound_reset();
diff --git a/src/mame/includes/cybiko.h b/src/mame/includes/cybiko.h
index ffb9b16e84d..20315663de9 100644
--- a/src/mame/includes/cybiko.h
+++ b/src/mame/includes/cybiko.h
@@ -83,6 +83,12 @@ public:
void cybikoxt(machine_config &config);
void cybikov2(machine_config &config);
void cybikov1(machine_config &config);
+ void cybikov1_io(address_map &map);
+ void cybikov1_mem(address_map &map);
+ void cybikov2_io(address_map &map);
+ void cybikov2_mem(address_map &map);
+ void cybikoxt_io(address_map &map);
+ void cybikoxt_mem(address_map &map);
};
#endif // MAME_INCLUDES_CYBIKO_H
diff --git a/src/mame/includes/cybstorm.h b/src/mame/includes/cybstorm.h
index 2b3898005cf..2da8146becc 100644
--- a/src/mame/includes/cybstorm.h
+++ b/src/mame/includes/cybstorm.h
@@ -50,4 +50,6 @@ public:
static const atari_motion_objects_config s_mob_config;
void cybstorm(machine_config &config);
void round2(machine_config &config);
+ void main_map(address_map &map);
+ void vadbank_map(address_map &map);
};
diff --git a/src/mame/includes/dai.h b/src/mame/includes/dai.h
index 4e1ec2fdd37..785aa73b4dc 100644
--- a/src/mame/includes/dai.h
+++ b/src/mame/includes/dai.h
@@ -69,6 +69,8 @@ public:
IRQ_CALLBACK_MEMBER(int_ack);
void dai(machine_config &config);
+ void dai_io(address_map &map);
+ void dai_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/darius.h b/src/mame/includes/darius.h
index 94d4e0b57b9..de844957a6d 100644
--- a/src/mame/includes/darius.h
+++ b/src/mame/includes/darius.h
@@ -131,4 +131,9 @@ public:
void update_da( );
DECLARE_WRITE_LINE_MEMBER(darius_adpcm_int);
void darius(machine_config &config);
+ void darius_cpub_map(address_map &map);
+ void darius_map(address_map &map);
+ void darius_sound2_io_map(address_map &map);
+ void darius_sound2_map(address_map &map);
+ void darius_sound_map(address_map &map);
};
diff --git a/src/mame/includes/darkmist.h b/src/mame/includes/darkmist.h
index 633f06c2cd1..8cce2b914a0 100644
--- a/src/mame/includes/darkmist.h
+++ b/src/mame/includes/darkmist.h
@@ -70,4 +70,6 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(scanline);
void darkmist(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void memmap(address_map &map);
};
diff --git a/src/mame/includes/darkseal.h b/src/mame/includes/darkseal.h
index 8f052307690..a9edf618020 100644
--- a/src/mame/includes/darkseal.h
+++ b/src/mame/includes/darkseal.h
@@ -53,4 +53,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void update_24bitcol(int offset);
void darkseal(machine_config &config);
+ void darkseal_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/dassault.h b/src/mame/includes/dassault.h
index 1a80b070878..57e8b27c565 100644
--- a/src/mame/includes/dassault.h
+++ b/src/mame/includes/dassault.h
@@ -74,4 +74,7 @@ public:
void mixdassaultlayer(bitmap_rgb32 &bitmap, bitmap_ind16* sprite_bitmap, const rectangle &cliprect, uint16_t pri, uint16_t primask, uint16_t penbase, uint8_t alpha);
DECO16IC_BANK_CB_MEMBER(bank_callback);
void dassault(machine_config &config);
+ void dassault_map(address_map &map);
+ void dassault_sub_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/dbz.h b/src/mame/includes/dbz.h
index 5156ba19fba..10db349c225 100644
--- a/src/mame/includes/dbz.h
+++ b/src/mame/includes/dbz.h
@@ -78,4 +78,7 @@ public:
K056832_CB_MEMBER(tile_callback);
K053246_CB_MEMBER(sprite_callback);
void dbz(machine_config &config);
+ void dbz_map(address_map &map);
+ void dbz_sound_io_map(address_map &map);
+ void dbz_sound_map(address_map &map);
};
diff --git a/src/mame/includes/dc.h b/src/mame/includes/dc.h
index 6a954938048..46feef6af57 100644
--- a/src/mame/includes/dc.h
+++ b/src/mame/includes/dc.h
@@ -99,6 +99,7 @@ class dc_state : public driver_device
DECLARE_INPUT_CHANGED_MEMBER(mastercpu_cheat_r);
void naomi_aw_base(machine_config &config);
+ void dc_audio_map(address_map &map);
};
/*--------- Ch2-DMA Control Registers ----------*/
diff --git a/src/mame/includes/dccons.h b/src/mame/includes/dccons.h
index 8abf772155c..c31d3d9c984 100644
--- a/src/mame/includes/dccons.h
+++ b/src/mame/includes/dccons.h
@@ -49,6 +49,9 @@ public:
static void gdrom_config(device_t *device);
void dc(machine_config &config);
+ void dc_audio_map(address_map &map);
+ void dc_map(address_map &map);
+ void dc_port(address_map &map);
private:
uint64_t PDTRA, PCTRA;
emu_timer *atapi_timer;
diff --git a/src/mame/includes/dcheese.h b/src/mame/includes/dcheese.h
index 3fc8e35614f..6fd0b7a3dde 100644
--- a/src/mame/includes/dcheese.h
+++ b/src/mame/includes/dcheese.h
@@ -75,6 +75,8 @@ public:
void fredmem(machine_config &config);
void dcheese(machine_config &config);
+ void main_cpu_map(address_map &map);
+ void sound_cpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/dcon.h b/src/mame/includes/dcon.h
index f372a547396..def68b183fd 100644
--- a/src/mame/includes/dcon.h
+++ b/src/mame/includes/dcon.h
@@ -3,7 +3,7 @@
#include "audio/seibu.h"
-class dcon_state : public driver_device
+class dcon_state : public driver_device, protected seibu_sound_common
{
public:
dcon_state(const machine_config &mconfig, device_type type, const char *tag)
@@ -61,4 +61,6 @@ public:
void draw_sprites( screen_device &screen, bitmap_ind16 &bitmap,const rectangle &cliprect);
void dcon(machine_config &config);
void sdgndmps(machine_config &config);
+ void dcon_map(address_map &map);
+ void sdgndmps_map(address_map &map);
};
diff --git a/src/mame/includes/dday.h b/src/mame/includes/dday.h
index b755112e31f..d40991ce2db 100644
--- a/src/mame/includes/dday.h
+++ b/src/mame/includes/dday.h
@@ -68,4 +68,5 @@ public:
required_device<palette_device> m_palette;
required_device<ay8910_device> m_ay1;
void dday(machine_config &config);
+ void dday_map(address_map &map);
};
diff --git a/src/mame/includes/ddragon.h b/src/mame/includes/ddragon.h
index 9eb8baea7ca..d5341644299 100644
--- a/src/mame/includes/ddragon.h
+++ b/src/mame/includes/ddragon.h
@@ -131,6 +131,14 @@ public:
void ddragonb(machine_config &config);
void ddragonba(machine_config &config);
void ddragon2(machine_config &config);
+ void dd2_map(address_map &map);
+ void dd2_sound_map(address_map &map);
+ void dd2_sub_map(address_map &map);
+ void ddragon_map(address_map &map);
+ void ddragonba_sub_map(address_map &map);
+ void ddragonba_sub_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
};
diff --git a/src/mame/includes/ddragon3.h b/src/mame/includes/ddragon3.h
index c50f62c478f..5c0855cf307 100644
--- a/src/mame/includes/ddragon3.h
+++ b/src/mame/includes/ddragon3.h
@@ -89,6 +89,11 @@ public:
void ctribe(machine_config &config);
void ddragon3b(machine_config &config);
void ddragon3(machine_config &config);
+ void ctribe_map(address_map &map);
+ void ctribe_sound_map(address_map &map);
+ void dd3b_map(address_map &map);
+ void ddragon3_map(address_map &map);
+ void sound_map(address_map &map);
};
@@ -129,4 +134,5 @@ public:
void wwfwfest(machine_config &config);
void wwfwfstb(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/ddribble.h b/src/mame/includes/ddribble.h
index 9204ef4ae64..2cde83918ff 100644
--- a/src/mame/includes/ddribble.h
+++ b/src/mame/includes/ddribble.h
@@ -77,4 +77,8 @@ public:
INTERRUPT_GEN_MEMBER(ddribble_interrupt_1);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, uint8_t* source, int lenght, int gfxset, int flipscreen );
void ddribble(machine_config &config);
+ void cpu0_map(address_map &map);
+ void cpu1_map(address_map &map);
+ void cpu2_map(address_map &map);
+ void vlm_map(address_map &map);
};
diff --git a/src/mame/includes/deadang.h b/src/mame/includes/deadang.h
index 92baf7b6ad7..b668c20b250 100644
--- a/src/mame/includes/deadang.h
+++ b/src/mame/includes/deadang.h
@@ -63,4 +63,8 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(main_scanline);
TIMER_DEVICE_CALLBACK_MEMBER(sub_scanline);
void deadang(machine_config &config);
+ void main_map(address_map &map);
+ void sound_decrypted_opcodes_map(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
};
diff --git a/src/mame/includes/dec0.h b/src/mame/includes/dec0.h
index ca0622441e4..2e0be337221 100644
--- a/src/mame/includes/dec0.h
+++ b/src/mame/includes/dec0.h
@@ -132,6 +132,18 @@ public:
void robocop(machine_config &config);
void robocopb(machine_config &config);
void hippodrm(machine_config &config);
+ void dec0_map(address_map &map);
+ void dec0_s_map(address_map &map);
+ void hippodrm_sub_map(address_map &map);
+ void mcu_io_map(address_map &map);
+ void midres_map(address_map &map);
+ void midres_s_map(address_map &map);
+ void midresb_map(address_map &map);
+ void robocop_sub_map(address_map &map);
+ void slyspy_map(address_map &map);
+ void slyspy_protection_map(address_map &map);
+ void slyspy_s_map(address_map &map);
+ void slyspy_sound_protection_map(address_map &map);
};
@@ -175,4 +187,8 @@ public:
uint32_t screen_update_secretab(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void secretab(machine_config &config);
void automat(machine_config &config);
+ void automat_map(address_map &map);
+ void automat_s_map(address_map &map);
+ void secretab_map(address_map &map);
+ void secretab_s_map(address_map &map);
};
diff --git a/src/mame/includes/dec8.h b/src/mame/includes/dec8.h
index 1373bf1b4eb..2b7c8bfd018 100644
--- a/src/mame/includes/dec8.h
+++ b/src/mame/includes/dec8.h
@@ -182,6 +182,25 @@ public:
void ghostb(machine_config &config);
void oscar(machine_config &config);
void gondo(machine_config &config);
+ void cobra_map(address_map &map);
+ void csilver_map(address_map &map);
+ void csilver_s_map(address_map &map);
+ void csilver_sub_map(address_map &map);
+ void dec8_mcu_io_map(address_map &map);
+ void dec8_s_map(address_map &map);
+ void garyoret_map(address_map &map);
+ void gondo_map(address_map &map);
+ void lastmisn_map(address_map &map);
+ void lastmisn_sub_map(address_map &map);
+ void meikyuh_map(address_map &map);
+ void oscar_map(address_map &map);
+ void oscar_s_map(address_map &map);
+ void oscar_sub_map(address_map &map);
+ void shackled_map(address_map &map);
+ void shackled_sub_map(address_map &map);
+ void srdarwin_map(address_map &map);
+ void srdarwin_mcu_io_map(address_map &map);
+ void ym3526_s_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/deco32.h b/src/mame/includes/deco32.h
index f6c52df7853..403199805e9 100644
--- a/src/mame/includes/deco32.h
+++ b/src/mame/includes/deco32.h
@@ -111,6 +111,10 @@ public:
DECLARE_WRITE32_MEMBER(buffered_palette_w);
DECLARE_WRITE32_MEMBER(palette_dma_w);
+ void h6280_sound_custom_latch_map(address_map &map);
+ void h6280_sound_map(address_map &map);
+ void z80_sound_io(address_map &map);
+ void z80_sound_mem(address_map &map);
protected:
virtual void video_start() override;
@@ -138,6 +142,7 @@ public:
DECOSPR_PRIORITY_CB_MEMBER(captaven_pri_callback);
void captaven(machine_config &config);
+ void captaven_map(address_map &map);
private:
};
@@ -163,6 +168,8 @@ public:
void fghthist(machine_config &config);
void fghthistu(machine_config &config);
void fghthsta(machine_config &config);
+ void fghthist_map(address_map &map);
+ void fghthsta_memmap(address_map &map);
private:
};
@@ -195,6 +202,8 @@ public:
void nslasheru(machine_config &config);
void tattass(machine_config &config);
void nslasher(machine_config &config);
+ void nslasher_map(address_map &map);
+ void tattass_map(address_map &map);
private:
void mixDualAlphaSprites(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect, gfx_element *gfx0, gfx_element *gfx1, int mixAlphaTilemap);
@@ -270,6 +279,9 @@ public:
void dragngun(machine_config &config);
void lockload(machine_config &config);
void lockloadu(machine_config &config);
+ void dragngun_map(address_map &map);
+ void lockload_map(address_map &map);
+ void lockloadu_map(address_map &map);
private:
bool m_gun_speaker_disabled;
};
diff --git a/src/mame/includes/deco_mlc.h b/src/mame/includes/deco_mlc.h
index 2f1f6442b3c..2634992f76c 100644
--- a/src/mame/includes/deco_mlc.h
+++ b/src/mame/includes/deco_mlc.h
@@ -88,4 +88,6 @@ public:
void mlc_6bpp(machine_config &config);
void avengrgs(machine_config &config);
void mlc_5bpp(machine_config &config);
+ void avengrgs_map(address_map &map);
+ void decomlc_map(address_map &map);
};
diff --git a/src/mame/includes/decocass.h b/src/mame/includes/decocass.h
index 7d1c35134c0..68bd4dc552b 100644
--- a/src/mame/includes/decocass.h
+++ b/src/mame/includes/decocass.h
@@ -192,6 +192,8 @@ public:
DECLARE_WRITE8_MEMBER(cdsteljn_mux_w);
TIMER_DEVICE_CALLBACK_MEMBER(decocass_audio_nmi_gen);
void decocass(machine_config &config);
+ void decocass_map(address_map &map);
+ void decocass_sound_map(address_map &map);
private:
void draw_edge(bitmap_ind16 &bitmap, const rectangle &cliprect, int which, bool opaque);
void draw_special_priority(bitmap_ind16 &bitmap, bitmap_ind8 &priority, const rectangle &cliprect);
diff --git a/src/mame/includes/deniam.h b/src/mame/includes/deniam.h
index bc249474765..718c40d005c 100644
--- a/src/mame/includes/deniam.h
+++ b/src/mame/includes/deniam.h
@@ -82,4 +82,8 @@ public:
optional_device<generic_latch_8_device> m_soundlatch;
void deniam16c(machine_config &config);
void deniam16b(machine_config &config);
+ void deniam16b_map(address_map &map);
+ void deniam16c_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/dgn_beta.h b/src/mame/includes/dgn_beta.h
index 768c2718e0c..86d2831ab05 100644
--- a/src/mame/includes/dgn_beta.h
+++ b/src/mame/includes/dgn_beta.h
@@ -233,6 +233,7 @@ public:
offs_t dgnbeta_dasm_override(std::ostream &stream, offs_t pc, const util::disasm_interface::data_buffer &opcodes, const util::disasm_interface::data_buffer &params);
void dgnbeta(machine_config &config);
+ void dgnbeta_map(address_map &map);
private:
void execute_beta_key_dump(int ref, const std::vector<std::string> &params);
void execute_beta_dat_log(int ref, const std::vector<std::string> &params);
diff --git a/src/mame/includes/dietgo.h b/src/mame/includes/dietgo.h
index 5f4e605f1a6..743938cb501 100644
--- a/src/mame/includes/dietgo.h
+++ b/src/mame/includes/dietgo.h
@@ -46,4 +46,7 @@ public:
DECLARE_READ16_MEMBER( dietgo_protection_region_0_104_r );
DECLARE_WRITE16_MEMBER( dietgo_protection_region_0_104_w );
void dietgo(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void dietgo_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/digdug.h b/src/mame/includes/digdug.h
index 848f19b211f..32856d5c12a 100644
--- a/src/mame/includes/digdug.h
+++ b/src/mame/includes/digdug.h
@@ -32,4 +32,5 @@ public:
DECLARE_WRITE_LINE_MEMBER(bg_disable_w);
void dzigzag(machine_config &config);
void digdug(machine_config &config);
+ void digdug_map(address_map &map);
};
diff --git a/src/mame/includes/divebomb.h b/src/mame/includes/divebomb.h
index 98da0682c5d..c82ee5aa097 100644
--- a/src/mame/includes/divebomb.h
+++ b/src/mame/includes/divebomb.h
@@ -89,4 +89,10 @@ public:
DECLARE_WRITE8_MEMBER(rozcpu_comm_w);
DECLARE_WRITE8_MEMBER(rozcpu_pal_w);
void divebomb(machine_config &config);
+ void divebomb_fgcpu_iomap(address_map &map);
+ void divebomb_fgcpu_map(address_map &map);
+ void divebomb_rozcpu_iomap(address_map &map);
+ void divebomb_rozcpu_map(address_map &map);
+ void divebomb_spritecpu_iomap(address_map &map);
+ void divebomb_spritecpu_map(address_map &map);
};
diff --git a/src/mame/includes/djboy.h b/src/mame/includes/djboy.h
index 95b7acb5126..52a9ff60489 100644
--- a/src/mame/includes/djboy.h
+++ b/src/mame/includes/djboy.h
@@ -94,4 +94,11 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_djboy);
TIMER_DEVICE_CALLBACK_MEMBER(djboy_scanline);
void djboy(machine_config &config);
+ void cpu0_am(address_map &map);
+ void cpu0_port_am(address_map &map);
+ void cpu1_am(address_map &map);
+ void cpu1_port_am(address_map &map);
+ void cpu2_am(address_map &map);
+ void cpu2_port_am(address_map &map);
+ void djboy_mcu_io_map(address_map &map);
};
diff --git a/src/mame/includes/djmain.h b/src/mame/includes/djmain.h
index 15361bbfd22..f41b1d096da 100644
--- a/src/mame/includes/djmain.h
+++ b/src/mame/includes/djmain.h
@@ -81,4 +81,9 @@ public:
void djmainj(machine_config &config);
void djmainu(machine_config &config);
void djmaina(machine_config &config);
+ void k054539_map(address_map &map);
+ void maincpu_djmain(address_map &map);
+ void maincpu_djmaina(address_map &map);
+ void maincpu_djmainj(address_map &map);
+ void maincpu_djmainu(address_map &map);
};
diff --git a/src/mame/includes/dkong.h b/src/mame/includes/dkong.h
index ea39d67f2f5..10f9d584a3f 100644
--- a/src/mame/includes/dkong.h
+++ b/src/mame/includes/dkong.h
@@ -316,6 +316,20 @@ public:
void dkongjr_audio(machine_config &config);
void dkong3_audio(machine_config &config);
void radarscp1_audio(machine_config &config);
+ void dkong3_io_map(address_map &map);
+ void dkong3_map(address_map &map);
+ void dkong3_sound1_map(address_map &map);
+ void dkong3_sound2_map(address_map &map);
+ void dkong_map(address_map &map);
+ void dkong_sound_io_map(address_map &map);
+ void dkong_sound_map(address_map &map);
+ void dkongjr_map(address_map &map);
+ void dkongjr_sound_io_map(address_map &map);
+ void epos_readport(address_map &map);
+ void radarscp1_sound_io_map(address_map &map);
+ void s2650_data_map(address_map &map);
+ void s2650_io_map(address_map &map);
+ void s2650_map(address_map &map);
private:
// video/dkong.c
void radarscp_step(int line_cnt);
diff --git a/src/mame/includes/dm7000.h b/src/mame/includes/dm7000.h
index 6f2ab26ed00..a6f0ae82559 100644
--- a/src/mame/includes/dm7000.h
+++ b/src/mame/includes/dm7000.h
@@ -56,6 +56,7 @@ public:
virtual void video_start() override;
uint32_t screen_update_dm7000(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void dm7000(machine_config &config);
+ void dm7000_mem(address_map &map);
};
/* */
diff --git a/src/mame/includes/docastle.h b/src/mame/includes/docastle.h
index e88af30d9ec..49ea20cf671 100644
--- a/src/mame/includes/docastle.h
+++ b/src/mame/includes/docastle.h
@@ -81,4 +81,11 @@ public:
void dorunrun(machine_config &config);
void idsoccer(machine_config &config);
void docastle(machine_config &config);
+ void docastle_io_map(address_map &map);
+ void docastle_map(address_map &map);
+ void docastle_map2(address_map &map);
+ void docastle_map3(address_map &map);
+ void dorunrun_map(address_map &map);
+ void dorunrun_map2(address_map &map);
+ void idsoccer_map(address_map &map);
};
diff --git a/src/mame/includes/dogfgt.h b/src/mame/includes/dogfgt.h
index 9e3fd850250..2a9e806c668 100644
--- a/src/mame/includes/dogfgt.h
+++ b/src/mame/includes/dogfgt.h
@@ -66,4 +66,6 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void dogfgt(machine_config &config);
+ void main_map(address_map &map);
+ void sub_map(address_map &map);
};
diff --git a/src/mame/includes/dragon.h b/src/mame/includes/dragon.h
index 6c6afe2b99c..3cf174945fa 100644
--- a/src/mame/includes/dragon.h
+++ b/src/mame/includes/dragon.h
@@ -44,6 +44,7 @@ public:
void dragon_base(machine_config &config);
void dragon32(machine_config &config);
+ void dragon_mem(address_map &map);
protected:
virtual void pia1_pa_changed(uint8_t data) override;
diff --git a/src/mame/includes/dragrace.h b/src/mame/includes/dragrace.h
index 3f1c3a3d198..171c3c8ef2e 100644
--- a/src/mame/includes/dragrace.h
+++ b/src/mame/includes/dragrace.h
@@ -75,6 +75,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(dragrace_frame_callback);
void dragrace_update_misc_flags( address_space &space );
void dragrace(machine_config &config);
+ void dragrace_map(address_map &map);
};
/*----------- defined in audio/dragrace.c -----------*/
diff --git a/src/mame/includes/drgnmst.h b/src/mame/includes/drgnmst.h
index 37bb0ec5f76..7a5fa2a023b 100644
--- a/src/mame/includes/drgnmst.h
+++ b/src/mame/includes/drgnmst.h
@@ -82,4 +82,5 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void drgnmst(machine_config &config);
+ void drgnmst_main_map(address_map &map);
};
diff --git a/src/mame/includes/dribling.h b/src/mame/includes/dribling.h
index 34d7bcd716f..654ea25c37b 100644
--- a/src/mame/includes/dribling.h
+++ b/src/mame/includes/dribling.h
@@ -53,4 +53,6 @@ public:
uint32_t screen_update_dribling(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(dribling_irq_gen);
void dribling(machine_config &config);
+ void dribling_map(address_map &map);
+ void io_map(address_map &map);
};
diff --git a/src/mame/includes/drmicro.h b/src/mame/includes/drmicro.h
index ef11b197224..b0faa8db6e0 100644
--- a/src/mame/includes/drmicro.h
+++ b/src/mame/includes/drmicro.h
@@ -47,4 +47,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void drmicro(machine_config &config);
+ void drmicro_map(address_map &map);
+ void io_map(address_map &map);
};
diff --git a/src/mame/includes/dynax.h b/src/mame/includes/dynax.h
index b90cc04ccac..8a63d13893c 100644
--- a/src/mame/includes/dynax.h
+++ b/src/mame/includes/dynax.h
@@ -9,6 +9,7 @@
#include "machine/bankdev.h"
#include "sound/msm5205.h"
#include "sound/okim6295.h"
+#include "machine/74259.h"
#include "screen.h"
class dynax_state : public driver_device
@@ -23,6 +24,7 @@ public:
, m_screen(*this, "screen")
, m_palette(*this, "palette")
, m_bankdev(*this, "bankdev")
+ , m_mainlatch(*this, "mainlatch")
, m_gfx_region1(*this, "gfx1")
, m_gfx_region2(*this, "gfx2")
, m_gfx_region3(*this, "gfx3")
@@ -43,6 +45,7 @@ public:
optional_device<screen_device> m_screen;
required_device<palette_device> m_palette;
optional_device<address_map_bank_device> m_bankdev;
+ optional_device<ls259_device> m_mainlatch;
optional_region_ptr<uint8_t> m_gfx_region1;
optional_region_ptr<uint8_t> m_gfx_region2;
optional_region_ptr<uint8_t> m_gfx_region3;
@@ -325,4 +328,39 @@ public:
void mjangels(machine_config &config);
void hanamai(machine_config &config);
void sprtmtch(machine_config &config);
+ void cdracula_io_map(address_map &map);
+ void cdracula_mem_map(address_map &map);
+ void gekisha_banked_map(address_map &map);
+ void gekisha_map(address_map &map);
+ void hanamai_io_map(address_map &map);
+ void hjingi_banked_map(address_map &map);
+ void hjingi_io_map(address_map &map);
+ void hjingi_mem_map(address_map &map);
+ void hnoridur_banked_map(address_map &map);
+ void hnoridur_io_map(address_map &map);
+ void hnoridur_mem_map(address_map &map);
+ void htengoku_banked_map(address_map &map);
+ void jantouki_io_map(address_map &map);
+ void jantouki_mem_map(address_map &map);
+ void jantouki_sound_io_map(address_map &map);
+ void jantouki_sound_mem_map(address_map &map);
+ void mcnpshnt_io_map(address_map &map);
+ void mcnpshnt_mem_map(address_map &map);
+ void mjangels_banked_map(address_map &map);
+ void mjdialq2_mem_map(address_map &map);
+ void mjelctrn_banked_map(address_map &map);
+ void mjelctrn_io_map(address_map &map);
+ void mjembase_io_map(address_map &map);
+ void mjfriday_io_map(address_map &map);
+ void nanajign_banked_map(address_map &map);
+ void nanajign_io_map(address_map &map);
+ void nanajign_mem_map(address_map &map);
+ void quiztvqq_mem_map(address_map &map);
+ void sprtmtch_io_map(address_map &map);
+ void sprtmtch_mem_map(address_map &map);
+ void tenkai_banked_map(address_map &map);
+ void tenkai_map(address_map &map);
+ void yarunara_banked_map(address_map &map);
+ void yarunara_io_map(address_map &map);
+ void yarunara_mem_map(address_map &map);
};
diff --git a/src/mame/includes/dynduke.h b/src/mame/includes/dynduke.h
index bbd15cfea03..9f0e4163a56 100644
--- a/src/mame/includes/dynduke.h
+++ b/src/mame/includes/dynduke.h
@@ -60,4 +60,10 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
void dynduke(machine_config &config);
void dbldyn(machine_config &config);
+ void master_map(address_map &map);
+ void masterj_map(address_map &map);
+ void sei80bu_encrypted_full_map(address_map &map);
+ void slave_map(address_map &map);
+ void sound_decrypted_opcodes_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/electron.h b/src/mame/includes/electron.h
index 4c310600532..e41aee04b0d 100644
--- a/src/mame/includes/electron.h
+++ b/src/mame/includes/electron.h
@@ -118,6 +118,7 @@ public:
void electron(machine_config &config);
void btm2105(machine_config &config);
+ void electron_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/elf.h b/src/mame/includes/elf.h
index 8b04e012059..aaf0d798e97 100644
--- a/src/mame/includes/elf.h
+++ b/src/mame/includes/elf.h
@@ -65,6 +65,8 @@ public:
// display state
uint8_t m_data;
void elf2(machine_config &config);
+ void elf2_io(address_map &map);
+ void elf2_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/eolith.h b/src/mame/includes/eolith.h
index bd17c893d82..11234a1be68 100644
--- a/src/mame/includes/eolith.h
+++ b/src/mame/includes/eolith.h
@@ -59,6 +59,9 @@ public:
void ironfort(machine_config &config);
void eolith50(machine_config &config);
void eolith45(machine_config &config);
+ void eolith_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_prg_map(address_map &map);
protected:
// shared with eolith16.cpp, vegaeo.cpp
optional_ioport m_eepromoutport;
diff --git a/src/mame/includes/epos.h b/src/mame/includes/epos.h
index 168f8f0eacf..4c004e548b8 100644
--- a/src/mame/includes/epos.h
+++ b/src/mame/includes/epos.h
@@ -46,4 +46,8 @@ public:
required_device<palette_device> m_palette;
void epos(machine_config &config);
void dealer(machine_config &config);
+ void dealer_io_map(address_map &map);
+ void dealer_map(address_map &map);
+ void epos_io_map(address_map &map);
+ void epos_map(address_map &map);
};
diff --git a/src/mame/includes/eprom.h b/src/mame/includes/eprom.h
index fda070ef40f..932ea058722 100644
--- a/src/mame/includes/eprom.h
+++ b/src/mame/includes/eprom.h
@@ -57,4 +57,7 @@ public:
void guts(machine_config &config);
void eprom(machine_config &config);
void klaxp(machine_config &config);
+ void extra_map(address_map &map);
+ void guts_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/equites.h b/src/mame/includes/equites.h
index 9ae7273d876..f4a0cc973ef 100644
--- a/src/mame/includes/equites.h
+++ b/src/mame/includes/equites.h
@@ -9,6 +9,7 @@
#include "machine/alpha8201.h"
#include "machine/gen_latch.h"
#include "machine/timer.h"
+#include "machine/74259.h"
#include "sound/samples.h"
#include "sound/msm5232.h"
#include "sound/dac.h"
@@ -35,7 +36,8 @@ public:
m_msm(*this, "msm"),
m_dac_1(*this, "dac1"),
m_dac_2(*this, "dac2"),
- m_soundlatch(*this, "soundlatch")
+ m_soundlatch(*this, "soundlatch"),
+ m_mainlatch(*this, "mainlatch")
{ }
/* memory pointers */
@@ -81,6 +83,7 @@ public:
required_device<dac_byte_interface> m_dac_1;
required_device<dac_byte_interface> m_dac_2;
required_device<generic_latch_8_device> m_soundlatch;
+ required_device<ls259_device> m_mainlatch;
DECLARE_WRITE8_MEMBER(equites_c0f8_w);
DECLARE_WRITE8_MEMBER(equites_cymbal_ctrl_w);
@@ -139,4 +142,10 @@ public:
void splndrbt(machine_config &config);
void gekisou(machine_config &config);
void hvoltage(machine_config &config);
+ void equites_map(address_map &map);
+ void gekisou_map(address_map &map);
+ void mcu_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void splndrbt_map(address_map &map);
};
diff --git a/src/mame/includes/esd16.h b/src/mame/includes/esd16.h
index 2e6e19331d4..c019aa7057d 100644
--- a/src/mame/includes/esd16.h
+++ b/src/mame/includes/esd16.h
@@ -82,4 +82,11 @@ public:
void mchampdx(machine_config &config);
void hedpanio(machine_config &config);
void hedpanic(machine_config &config);
+ void hedpanic_map(address_map &map);
+ void jumppop_map(address_map &map);
+ void mchampdx_map(address_map &map);
+ void multchmp_map(address_map &map);
+ void multchmp_sound_io_map(address_map &map);
+ void multchmp_sound_map(address_map &map);
+ void tangtang_map(address_map &map);
};
diff --git a/src/mame/includes/espial.h b/src/mame/includes/espial.h
index b59ca09a988..7474320046c 100644
--- a/src/mame/includes/espial.h
+++ b/src/mame/includes/espial.h
@@ -72,4 +72,8 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void espial(machine_config &config);
void netwars(machine_config &config);
+ void espial_map(address_map &map);
+ void espial_sound_io_map(address_map &map);
+ void espial_sound_map(address_map &map);
+ void netwars_map(address_map &map);
};
diff --git a/src/mame/includes/esripsys.h b/src/mame/includes/esripsys.h
index a34bd4ea950..900dbf273f0 100644
--- a/src/mame/includes/esripsys.h
+++ b/src/mame/includes/esripsys.h
@@ -127,6 +127,10 @@ public:
required_device<screen_device> m_screen;
ESRIP_DRAW(esripsys_draw);
void esripsys(machine_config &config);
+ void frame_cpu_map(address_map &map);
+ void game_cpu_map(address_map &map);
+ void sound_cpu_map(address_map &map);
+ void video_cpu_map(address_map &map);
};
#endif // MAME_INCLUDES_ESRIPSYS_H
diff --git a/src/mame/includes/eti660.h b/src/mame/includes/eti660.h
index cfef8f97bf1..b0d68695ac2 100644
--- a/src/mame/includes/eti660.h
+++ b/src/mame/includes/eti660.h
@@ -55,6 +55,8 @@ public:
required_shared_ptr<uint8_t> m_p_videoram;
void eti660(machine_config &config);
+ void io_map(address_map &map);
+ void mem_map(address_map &map);
private:
required_device<cosmac_device> m_maincpu;
required_device<cdp1864_device> m_cti;
diff --git a/src/mame/includes/exedexes.h b/src/mame/includes/exedexes.h
index 879c7dddb15..d9a4f545e64 100644
--- a/src/mame/includes/exedexes.h
+++ b/src/mame/includes/exedexes.h
@@ -61,4 +61,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void exedexes(machine_config &config);
+ void exedexes_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/exerion.h b/src/mame/includes/exerion.h
index 7909a742ee4..9880f46ccee 100644
--- a/src/mame/includes/exerion.h
+++ b/src/mame/includes/exerion.h
@@ -75,4 +75,6 @@ public:
uint32_t screen_update_exerion(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_background( bitmap_ind16 &bitmap, const rectangle &cliprect);
void exerion(machine_config &config);
+ void main_map(address_map &map);
+ void sub_map(address_map &map);
};
diff --git a/src/mame/includes/exidy.h b/src/mame/includes/exidy.h
index 7179192e9e0..0b3bb53f8c9 100644
--- a/src/mame/includes/exidy.h
+++ b/src/mame/includes/exidy.h
@@ -140,6 +140,17 @@ public:
void pepper2(machine_config &config);
void targ(machine_config &config);
void targ_audio(machine_config &config);
+ void exidy_map(address_map &map);
+ void fax_map(address_map &map);
+ void pepper2_map(address_map &map);
+ void rallys_map(address_map &map);
+ void sidetrac_map(address_map &map);
+ void spectar_map(address_map &map);
+ void targ_map(address_map &map);
+ void venture_map(address_map &map);
+ void venture_audio_map(address_map &map);
+ void cvsd_iomap(address_map &map);
+ void cvsd_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/exidy440.h b/src/mame/includes/exidy440.h
index c87bee1178d..3f3a44e4769 100644
--- a/src/mame/includes/exidy440.h
+++ b/src/mame/includes/exidy440.h
@@ -96,4 +96,6 @@ public:
void exidy440_audio(machine_config &config);
void topsecex(machine_config &config);
void topsecex_video(machine_config &config);
+ void exidy440_map(address_map &map);
+ void exidy440_audio_map(address_map &map);
};
diff --git a/src/mame/includes/exp85.h b/src/mame/includes/exp85.h
index 5a6767b4d78..42aaf9f074a 100644
--- a/src/mame/includes/exp85.h
+++ b/src/mame/includes/exp85.h
@@ -43,6 +43,8 @@ public:
/* cassette state */
int m_tape_control;
void exp85(machine_config &config);
+ void exp85_io(address_map &map);
+ void exp85_mem(address_map &map);
};
#endif // MAME_INCLUDES_EXP85_H
diff --git a/src/mame/includes/exprraid.h b/src/mame/includes/exprraid.h
index 7bf8e1bd7bf..53f19140d9a 100644
--- a/src/mame/includes/exprraid.h
+++ b/src/mame/includes/exprraid.h
@@ -75,4 +75,7 @@ public:
void exprraid_gfx_expand();
void exprraid(machine_config &config);
void exprboot(machine_config &config);
+ void master_io_map(address_map &map);
+ void master_map(address_map &map);
+ void slave_map(address_map &map);
};
diff --git a/src/mame/includes/exterm.h b/src/mame/includes/exterm.h
index 1735b479a85..68d3bb55469 100644
--- a/src/mame/includes/exterm.h
+++ b/src/mame/includes/exterm.h
@@ -58,4 +58,8 @@ public:
TMS340X0_FROM_SHIFTREG_CB_MEMBER(from_shiftreg_slave);
uint16_t exterm_trackball_port_r(int which, uint16_t mem_mask);
void exterm(machine_config &config);
+ void master_map(address_map &map);
+ void slave_map(address_map &map);
+ void sound_master_map(address_map &map);
+ void sound_slave_map(address_map &map);
};
diff --git a/src/mame/includes/exzisus.h b/src/mame/includes/exzisus.h
index 472a41eb5a9..4c0c2af6cb0 100644
--- a/src/mame/includes/exzisus.h
+++ b/src/mame/includes/exzisus.h
@@ -35,4 +35,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void exzisus(machine_config &config);
+ void cpua_map(address_map &map);
+ void cpub_map(address_map &map);
+ void cpuc_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/f1gp.h b/src/mame/includes/f1gp.h
index 3cb10178e52..42197a9e967 100644
--- a/src/mame/includes/f1gp.h
+++ b/src/mame/includes/f1gp.h
@@ -104,4 +104,11 @@ public:
void f1gp2(machine_config &config);
void f1gpb(machine_config &config);
void f1gp(machine_config &config);
+ void f1gp2_cpu1_map(address_map &map);
+ void f1gp_cpu1_map(address_map &map);
+ void f1gp_cpu2_map(address_map &map);
+ void f1gpb_cpu1_map(address_map &map);
+ void f1gpb_cpu2_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/fantland.h b/src/mame/includes/fantland.h
index db6d9c87fbe..0dbf360ebf2 100644
--- a/src/mame/includes/fantland.h
+++ b/src/mame/includes/fantland.h
@@ -83,4 +83,13 @@ public:
void wheelrun(machine_config &config);
void borntofi(machine_config &config);
void galaxygn(machine_config &config);
+ void borntofi_map(address_map &map);
+ void borntofi_sound_map(address_map &map);
+ void fantland_map(address_map &map);
+ void fantland_sound_iomap(address_map &map);
+ void fantland_sound_map(address_map &map);
+ void galaxygn_map(address_map &map);
+ void galaxygn_sound_iomap(address_map &map);
+ void wheelrun_map(address_map &map);
+ void wheelrun_sound_map(address_map &map);
};
diff --git a/src/mame/includes/fastfred.h b/src/mame/includes/fastfred.h
index cb92a7aa24d..1cf9520d253 100644
--- a/src/mame/includes/fastfred.h
+++ b/src/mame/includes/fastfred.h
@@ -94,4 +94,8 @@ public:
void jumpcoas(machine_config &config);
void imago(machine_config &config);
void fastfred(machine_config &config);
+ void fastfred_map(address_map &map);
+ void imago_map(address_map &map);
+ void jumpcoas_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/fastlane.h b/src/mame/includes/fastlane.h
index b619ef551b1..d618249780d 100644
--- a/src/mame/includes/fastlane.h
+++ b/src/mame/includes/fastlane.h
@@ -69,4 +69,5 @@ public:
DECLARE_WRITE8_MEMBER(volume_callback0);
DECLARE_WRITE8_MEMBER(volume_callback1);
void fastlane(machine_config &config);
+ void fastlane_map(address_map &map);
};
diff --git a/src/mame/includes/fcombat.h b/src/mame/includes/fcombat.h
index 7c927d0bfa9..c7aef2c4e29 100644
--- a/src/mame/includes/fcombat.h
+++ b/src/mame/includes/fcombat.h
@@ -76,4 +76,6 @@ public:
DECLARE_PALETTE_INIT(fcombat);
uint32_t screen_update_fcombat(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void fcombat(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/fgoal.h b/src/mame/includes/fgoal.h
index af8e7f4c84e..d6a300baecf 100644
--- a/src/mame/includes/fgoal.h
+++ b/src/mame/includes/fgoal.h
@@ -74,6 +74,7 @@ public:
unsigned video_ram_address( );
void fgoal(machine_config &config);
+ void cpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/finalizr.h b/src/mame/includes/finalizr.h
index 83f0470fe6b..7ff96a9c61f 100644
--- a/src/mame/includes/finalizr.h
+++ b/src/mame/includes/finalizr.h
@@ -69,4 +69,7 @@ public:
uint32_t screen_update_finalizr(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_DEVICE_CALLBACK_MEMBER(finalizr_scanline);
void finalizr(machine_config &config);
+ void main_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/firetrap.h b/src/mame/includes/firetrap.h
index 99f291785ac..7b033814975 100644
--- a/src/mame/includes/firetrap.h
+++ b/src/mame/includes/firetrap.h
@@ -94,4 +94,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(firetrap_adpcm_int);
void firetrapbl(machine_config &config);
void firetrap(machine_config &config);
+ void firetrap_base_map(address_map &map);
+ void firetrap_bootleg_map(address_map &map);
+ void firetrap_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/firetrk.h b/src/mame/includes/firetrk.h
index eb7e2e5cbfd..0044bed38de 100644
--- a/src/mame/includes/firetrk.h
+++ b/src/mame/includes/firetrk.h
@@ -154,6 +154,9 @@ public:
void firetrk(machine_config &config);
void montecar(machine_config &config);
void superbug(machine_config &config);
+ void firetrk_map(address_map &map);
+ void montecar_map(address_map &map);
+ void superbug_map(address_map &map);
};
diff --git a/src/mame/includes/fitfight.h b/src/mame/includes/fitfight.h
index edaf25c2010..a01cb4b4ce2 100644
--- a/src/mame/includes/fitfight.h
+++ b/src/mame/includes/fitfight.h
@@ -73,4 +73,7 @@ public:
required_device<palette_device> m_palette;
void bbprot(machine_config &config);
void fitfight(machine_config &config);
+ void bbprot_main_map(address_map &map);
+ void fitfight_main_map(address_map &map);
+ void snd_mem(address_map &map);
};
diff --git a/src/mame/includes/flkatck.h b/src/mame/includes/flkatck.h
index c2397e376ac..1789cddfe78 100644
--- a/src/mame/includes/flkatck.h
+++ b/src/mame/includes/flkatck.h
@@ -61,4 +61,6 @@ public:
INTERRUPT_GEN_MEMBER(flkatck_interrupt);
DECLARE_WRITE8_MEMBER(volume_callback);
void flkatck(machine_config &config);
+ void flkatck_map(address_map &map);
+ void flkatck_sound_map(address_map &map);
};
diff --git a/src/mame/includes/flstory.h b/src/mame/includes/flstory.h
index aaf81abb812..ce0ee008e02 100644
--- a/src/mame/includes/flstory.h
+++ b/src/mame/includes/flstory.h
@@ -104,4 +104,11 @@ public:
void onna34ro(machine_config &config);
void victnine(machine_config &config);
void onna34ro_mcu(machine_config &config);
+ void base_map(address_map &map);
+ void flstory_map(address_map &map);
+ void onna34ro_map(address_map &map);
+ void onna34ro_mcu_map(address_map &map);
+ void rumba_map(address_map &map);
+ void sound_map(address_map &map);
+ void victnine_map(address_map &map);
};
diff --git a/src/mame/includes/fm7.h b/src/mame/includes/fm7.h
index d43860b5ba9..d0902bf8ec0 100644
--- a/src/mame/includes/fm7.h
+++ b/src/mame/includes/fm7.h
@@ -286,6 +286,19 @@ public:
void fm7(machine_config &config);
void fm77av(machine_config &config);
void fm11(machine_config &config);
+ void fm11_mem(address_map &map);
+ void fm11_sub_mem(address_map &map);
+ void fm11_x86_io(address_map &map);
+ void fm11_x86_mem(address_map &map);
+ void fm16_io(address_map &map);
+ void fm16_mem(address_map &map);
+ void fm16_sub_mem(address_map &map);
+ void fm77av_mem(address_map &map);
+ void fm77av_sub_mem(address_map &map);
+ void fm7_banked_mem(address_map &map);
+ void fm7_mem(address_map &map);
+ void fm7_sub_mem(address_map &map);
+ void fm8_mem(address_map &map);
protected:
optional_shared_ptr<uint8_t> m_shared_ram;
optional_shared_ptr<uint8_t> m_boot_ram;
diff --git a/src/mame/includes/fmtowns.h b/src/mame/includes/fmtowns.h
index e32d80226eb..2ba20b38064 100644
--- a/src/mame/includes/fmtowns.h
+++ b/src/mame/includes/fmtowns.h
@@ -351,6 +351,11 @@ class towns_state : public driver_device
void townsftv(machine_config &config);
void townshr(machine_config &config);
void townssj(machine_config &config);
+ void marty_mem(address_map &map);
+ void towns16_io(address_map &map);
+ void towns_io(address_map &map);
+ void towns_mem(address_map &map);
+ void ux_mem(address_map &map);
private:
static const device_timer_id TIMER_FREERUN = 1;
static const device_timer_id TIMER_INTERVAL2 = 2;
diff --git a/src/mame/includes/foodf.h b/src/mame/includes/foodf.h
index f0f8f5e8972..8e15da171ae 100644
--- a/src/mame/includes/foodf.h
+++ b/src/mame/includes/foodf.h
@@ -44,4 +44,5 @@ public:
uint32_t screen_update_foodf(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
TIMER_DEVICE_CALLBACK_MEMBER(scanline_update_timer);
void foodf(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/freekick.h b/src/mame/includes/freekick.h
index dcb56cb226b..3a03839799e 100644
--- a/src/mame/includes/freekick.h
+++ b/src/mame/includes/freekick.h
@@ -78,4 +78,13 @@ public:
void pbillrdm(machine_config &config);
void omega(machine_config &config);
void freekick(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void freekick_io_map(address_map &map);
+ void freekick_map(address_map &map);
+ void gigas_io_map(address_map &map);
+ void gigas_map(address_map &map);
+ void oigas_io_map(address_map &map);
+ void omega_io_map(address_map &map);
+ void omega_map(address_map &map);
+ void pbillrd_map(address_map &map);
};
diff --git a/src/mame/includes/fromanc2.h b/src/mame/includes/fromanc2.h
index 75a8dc0b853..98c25d69307 100644
--- a/src/mame/includes/fromanc2.h
+++ b/src/mame/includes/fromanc2.h
@@ -124,4 +124,11 @@ public:
void fromanc2(machine_config &config);
void fromancr(machine_config &config);
void fromanc4(machine_config &config);
+ void fromanc2_main_map(address_map &map);
+ void fromanc2_sound_io_map(address_map &map);
+ void fromanc2_sound_map(address_map &map);
+ void fromanc2_sub_io_map(address_map &map);
+ void fromanc2_sub_map(address_map &map);
+ void fromanc4_main_map(address_map &map);
+ void fromancr_main_map(address_map &map);
};
diff --git a/src/mame/includes/fromance.h b/src/mame/includes/fromance.h
index 054f915ffb1..044b0385276 100644
--- a/src/mame/includes/fromance.h
+++ b/src/mame/includes/fromance.h
@@ -106,4 +106,11 @@ public:
void nekkyoku(machine_config &config);
void fromance(machine_config &config);
void idolmj(machine_config &config);
+ void fromance_main_map(address_map &map);
+ void fromance_sub_io_map(address_map &map);
+ void fromance_sub_map(address_map &map);
+ void idolmj_sub_io_map(address_map &map);
+ void nekkyoku_main_map(address_map &map);
+ void nekkyoku_sub_io_map(address_map &map);
+ void nekkyoku_sub_map(address_map &map);
};
diff --git a/src/mame/includes/funkybee.h b/src/mame/includes/funkybee.h
index 4e8dbec448c..a1b27398357 100644
--- a/src/mame/includes/funkybee.h
+++ b/src/mame/includes/funkybee.h
@@ -44,4 +44,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void funkybee(machine_config &config);
+ void funkybee_map(address_map &map);
+ void io_map(address_map &map);
};
diff --git a/src/mame/includes/funkyjet.h b/src/mame/includes/funkyjet.h
index 272b75b6d89..e24b32942ea 100644
--- a/src/mame/includes/funkyjet.h
+++ b/src/mame/includes/funkyjet.h
@@ -44,4 +44,6 @@ public:
DECLARE_READ16_MEMBER( funkyjet_protection_region_0_146_r );
DECLARE_WRITE16_MEMBER( funkyjet_protection_region_0_146_w );
void funkyjet(machine_config &config);
+ void funkyjet_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/funworld.h b/src/mame/includes/funworld.h
index 69144b23512..cc1619dac76 100644
--- a/src/mame/includes/funworld.h
+++ b/src/mame/includes/funworld.h
@@ -61,4 +61,14 @@ public:
void rcdino4(machine_config &config);
void intrgmes(machine_config &config);
void witchryl(machine_config &config);
+ void chinatow_map(address_map &map);
+ void cuoreuno_map(address_map &map);
+ void funquiz_map(address_map &map);
+ void funworld_map(address_map &map);
+ void fw_a7_11_map(address_map &map);
+ void intergames_map(address_map &map);
+ void lunapark_map(address_map &map);
+ void magicrd2_map(address_map &map);
+ void saloon_map(address_map &map);
+ void witchryl_map(address_map &map);
};
diff --git a/src/mame/includes/funybubl.h b/src/mame/includes/funybubl.h
index 82b6ea475b5..98bb73bdf75 100644
--- a/src/mame/includes/funybubl.h
+++ b/src/mame/includes/funybubl.h
@@ -40,4 +40,7 @@ public:
uint32_t screen_update_funybubl(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void funybubl(machine_config &config);
+ void funybubl_map(address_map &map);
+ void io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/fuukifg2.h b/src/mame/includes/fuukifg2.h
index 92bac10a3c2..6e02a0520d9 100644
--- a/src/mame/includes/fuukifg2.h
+++ b/src/mame/includes/fuukifg2.h
@@ -80,6 +80,9 @@ public:
void draw_layer( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int i, int flag, int pri );
void fuuki16(machine_config &config);
+ void fuuki16_map(address_map &map);
+ void fuuki16_sound_io_map(address_map &map);
+ void fuuki16_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/fuukifg3.h b/src/mame/includes/fuukifg3.h
index 139ca904c57..a7e5ff2645b 100644
--- a/src/mame/includes/fuukifg3.h
+++ b/src/mame/includes/fuukifg3.h
@@ -89,6 +89,9 @@ public:
void draw_layer( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int i, int flag, int pri );
void fuuki32(machine_config &config);
+ void fuuki32_map(address_map &map);
+ void fuuki32_sound_io_map(address_map &map);
+ void fuuki32_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/gaelco.h b/src/mame/includes/gaelco.h
index 70e8c25a45d..ffb0157367d 100644
--- a/src/mame/includes/gaelco.h
+++ b/src/mame/includes/gaelco.h
@@ -7,6 +7,7 @@
***************************************************************************/
#include "machine/gen_latch.h"
+#include "machine/74259.h"
class gaelco_state : public driver_device
{
@@ -18,6 +19,7 @@ public:
m_palette(*this, "palette"),
m_audiocpu(*this, "audiocpu"),
m_soundlatch(*this, "soundlatch"),
+ m_outlatch(*this, "outlatch"),
m_videoram(*this, "videoram"),
m_vregs(*this, "vregs"),
m_spriteram(*this, "spriteram"),
@@ -29,6 +31,7 @@ public:
required_device<palette_device> m_palette;
optional_device<cpu_device> m_audiocpu;
optional_device<generic_latch_8_device> m_soundlatch;
+ optional_device<ls259_device> m_outlatch;
/* memory pointers */
required_shared_ptr<uint16_t> m_videoram;
@@ -64,4 +67,10 @@ public:
void thoop(machine_config &config);
void maniacsq(machine_config &config);
void squash(machine_config &config);
+ void bigkarnk_map(address_map &map);
+ void bigkarnk_snd_map(address_map &map);
+ void maniacsq_map(address_map &map);
+ void oki_map(address_map &map);
+ void squash_map(address_map &map);
+ void thoop_map(address_map &map);
};
diff --git a/src/mame/includes/gaelco2.h b/src/mame/includes/gaelco2.h
index 7a8f33eca68..254c175f735 100644
--- a/src/mame/includes/gaelco2.h
+++ b/src/mame/includes/gaelco2.h
@@ -62,6 +62,12 @@ public:
void maniacsq(machine_config &config);
void maniacsqs(machine_config &config);
void touchgo_d5002fp(machine_config &config);
+ void alighunt_map(address_map &map);
+ void maniacsq_map(address_map &map);
+ void mcu_hostmem_map(address_map &map);
+ void play2000_map(address_map &map);
+ void snowboar_map(address_map &map);
+ void touchgo_map(address_map &map);
protected:
required_device<m68000_device> m_maincpu;
@@ -110,6 +116,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(bang_irq);
DECLARE_DRIVER_INIT(bang);
void bang(machine_config &config);
+ void bang_map(address_map &map);
};
@@ -131,4 +138,5 @@ public:
DECLARE_WRITE_LINE_MEMBER(wrally2_adc_cs);
DECLARE_CUSTOM_INPUT_MEMBER(wrally2_analog_bit_r);
void wrally2(machine_config &config);
+ void wrally2_map(address_map &map);
};
diff --git a/src/mame/includes/gaelco3d.h b/src/mame/includes/gaelco3d.h
index 29db087c8f6..809b74be8e4 100644
--- a/src/mame/includes/gaelco3d.h
+++ b/src/mame/includes/gaelco3d.h
@@ -13,6 +13,7 @@
#include "machine/eepromser.h"
#include "machine/gaelco3d.h"
#include "machine/gen_latch.h"
+#include "machine/74259.h"
#include "machine/timer.h"
#include "cpu/adsp2100/adsp2100.h"
#include "screen.h"
@@ -72,6 +73,8 @@ public:
m_serial(*this, "serial"),
m_screen(*this, "screen"),
m_soundlatch(*this, "soundlatch"),
+ m_mainlatch(*this, "mainlatch"),
+ m_outlatch(*this, "outlatch"),
m_paletteram16(*this, "paletteram"),
m_paletteram32(*this, "paletteram"),
m_analog(*this, {"ANALOG0", "ANALOG1", "ANALOG2", "ANALOG3"})
@@ -89,6 +92,8 @@ public:
required_device<gaelco_serial_device> m_serial;
required_device<screen_device> m_screen;
required_device<generic_latch_8_device> m_soundlatch;
+ required_device<ls259_device> m_mainlatch;
+ required_device<ls259_device> m_outlatch;
optional_shared_ptr<uint16_t> m_paletteram16;
optional_shared_ptr<uint32_t> m_paletteram32;
@@ -153,4 +158,9 @@ public:
void footbpow(machine_config &config);
void gaelco3d2(machine_config &config);
void gaelco3d(machine_config &config);
+ void adsp_data_map(address_map &map);
+ void adsp_program_map(address_map &map);
+ void main020_map(address_map &map);
+ void main_map(address_map &map);
+ void tms_map(address_map &map);
};
diff --git a/src/mame/includes/gaiden.h b/src/mame/includes/gaiden.h
index 1dbfad372e2..df1af3e6edb 100644
--- a/src/mame/includes/gaiden.h
+++ b/src/mame/includes/gaiden.h
@@ -131,4 +131,11 @@ public:
void drgnbowl(machine_config &config);
void mastninj(machine_config &config);
void shadoww(machine_config &config);
+ void drgnbowl_map(address_map &map);
+ void drgnbowl_sound_map(address_map &map);
+ void drgnbowl_sound_port_map(address_map &map);
+ void gaiden_map(address_map &map);
+ void mastninj_map(address_map &map);
+ void mastninj_sound_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/galaga.h b/src/mame/includes/galaga.h
index 94f662c8e41..cf8bd80b43d 100644
--- a/src/mame/includes/galaga.h
+++ b/src/mame/includes/galaga.h
@@ -97,6 +97,10 @@ public:
void galaga(machine_config &config);
void gatsbee(machine_config &config);
void galagab(machine_config &config);
+ void dzigzag_mem4(address_map &map);
+ void galaga_map(address_map &map);
+ void galaga_mem4(address_map &map);
+ void gatsbee_main_map(address_map &map);
};
DISCRETE_SOUND_EXTERN( galaga );
diff --git a/src/mame/includes/galastrm.h b/src/mame/includes/galastrm.h
index 0b04bdb72c0..55aa849eb58 100644
--- a/src/mame/includes/galastrm.h
+++ b/src/mame/includes/galastrm.h
@@ -105,6 +105,7 @@ public:
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, const int *primasks, int priority);
void galastrm(machine_config &config);
+ void galastrm_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/galaxia.h b/src/mame/includes/galaxia.h
index ec977234f6b..8be7601bfcb 100644
--- a/src/mame/includes/galaxia.h
+++ b/src/mame/includes/galaxia.h
@@ -35,4 +35,8 @@ public:
void init_common();
void astrowar(machine_config &config);
void galaxia(machine_config &config);
+ void astrowar_mem_map(address_map &map);
+ void galaxia_data_map(address_map &map);
+ void galaxia_io_map(address_map &map);
+ void galaxia_mem_map(address_map &map);
};
diff --git a/src/mame/includes/galaxian.h b/src/mame/includes/galaxian.h
index 9f847751e78..f45a32bf512 100644
--- a/src/mame/includes/galaxian.h
+++ b/src/mame/includes/galaxian.h
@@ -375,4 +375,48 @@ public:
void checkman(machine_config &config);
void galaxian_audio(machine_config &config);
void mooncrst_audio(machine_config &config);
+ void amigo2_map(address_map &map);
+ void anteaterg_map(address_map &map);
+ void anteatergg_map(address_map &map);
+ void anteateruk_map(address_map &map);
+ void checkmaj_sound_map(address_map &map);
+ void checkman_sound_map(address_map &map);
+ void checkman_sound_portmap(address_map &map);
+ void explorer_map(address_map &map);
+ void fantastc_map(address_map &map);
+ void frogf_map(address_map &map);
+ void frogger_map(address_map &map);
+ void frogger_sound_map(address_map &map);
+ void frogger_sound_portmap(address_map &map);
+ void froggeram_map(address_map &map);
+ void galaxian_map(address_map &map);
+ void galaxian_map_base(address_map &map);
+ void galaxian_map_discrete(address_map &map);
+ void jumpbug_map(address_map &map);
+ void kingball_sound_map(address_map &map);
+ void kingball_sound_portmap(address_map &map);
+ void konami_sound_map(address_map &map);
+ void konami_sound_portmap(address_map &map);
+ void monsterz_map(address_map &map);
+ void mooncrst_map(address_map &map);
+ void mooncrst_map_base(address_map &map);
+ void mooncrst_map_discrete(address_map &map);
+ void moonqsr_decrypted_opcodes_map(address_map &map);
+ void mshuttle_decrypted_opcodes_map(address_map &map);
+ void mshuttle_map(address_map &map);
+ void mshuttle_portmap(address_map &map);
+ void scobra_map(address_map &map);
+ void sfx_map(address_map &map);
+ void sfx_sample_map(address_map &map);
+ void sfx_sample_portmap(address_map &map);
+ void spactrai_map(address_map &map);
+ void takeoff_sound_map(address_map &map);
+ void takeoff_sound_portmap(address_map &map);
+ void tenspot_select_map(address_map &map);
+ void theend_map(address_map &map);
+ void timefgtr_map(address_map &map);
+ void turpins_map(address_map &map);
+ void turpins_sound_map(address_map &map);
+ void turtles_map(address_map &map);
+ void zigzag_map(address_map &map);
};
diff --git a/src/mame/includes/galaxold.h b/src/mame/includes/galaxold.h
index 65abe022f24..50bfe898dea 100644
--- a/src/mame/includes/galaxold.h
+++ b/src/mame/includes/galaxold.h
@@ -294,6 +294,35 @@ public:
void ckongmc(machine_config &config);
void galaxian_audio(machine_config &config);
void mooncrst_audio(machine_config &config);
+ void _4in1_map(address_map &map);
+ void bagmanmc_map(address_map &map);
+ void bongo(address_map &map);
+ void bongo_io(address_map &map);
+ void bullsdrtg_data_map(address_map &map);
+ void ckongg_map(address_map &map);
+ void ckongmc_map(address_map &map);
+ void dkongjrm_map(address_map &map);
+ void dkongjrmc_map(address_map &map);
+ void drivfrcg(address_map &map);
+ void drivfrcg_io(address_map &map);
+ void galaxold_map(address_map &map);
+ void guttang_map(address_map &map);
+ void hexpoola_data(address_map &map);
+ void hexpoola_io(address_map &map);
+ void hunchbkg(address_map &map);
+ void hunchbkg_data(address_map &map);
+ void hustlerb3_map(address_map &map);
+ void mooncrst_map(address_map &map);
+ void ozon1_io_map(address_map &map);
+ void ozon1_map(address_map &map);
+ void racknrol(address_map &map);
+ void racknrol_io(address_map &map);
+ void rockclim_map(address_map &map);
+ void scramb2_map(address_map &map);
+ void scramblb_map(address_map &map);
+ void scrambler_map(address_map &map);
+ void spcwarp(address_map &map);
+ void tazzmang(address_map &map);
};
#define galaxold_coin_counter_0_w galaxold_coin_counter_w
diff --git a/src/mame/includes/galaxy.h b/src/mame/includes/galaxy.h
index e56391d4b63..89446b4369f 100644
--- a/src/mame/includes/galaxy.h
+++ b/src/mame/includes/galaxy.h
@@ -49,6 +49,9 @@ public:
DECLARE_SNAPSHOT_LOAD_MEMBER( galaxy );
void galaxy(machine_config &config);
void galaxyp(machine_config &config);
+ void galaxy_mem(address_map &map);
+ void galaxyp_io(address_map &map);
+ void galaxyp_mem(address_map &map);
protected:
required_device<cassette_image_device> m_cassette;
required_device<ram_device> m_ram;
diff --git a/src/mame/includes/galeb.h b/src/mame/includes/galeb.h
index 0dfb5667be3..06f01a6917c 100644
--- a/src/mame/includes/galeb.h
+++ b/src/mame/includes/galeb.h
@@ -41,6 +41,7 @@ public:
required_device<dac_1bit_device> m_dac;
void galeb(machine_config &config);
+ void galeb_mem(address_map &map);
protected:
virtual void machine_start() override;
diff --git a/src/mame/includes/galivan.h b/src/mame/includes/galivan.h
index 8eb551412b4..3bb5c921aea 100644
--- a/src/mame/includes/galivan.h
+++ b/src/mame/includes/galivan.h
@@ -76,4 +76,10 @@ public:
void galivan(machine_config &config);
void ninjemak(machine_config &config);
void youmab(machine_config &config);
+ void galivan_map(address_map &map);
+ void io_map(address_map &map);
+ void ninjemak_io_map(address_map &map);
+ void ninjemak_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/galpani2.h b/src/mame/includes/galpani2.h
index a7e123e3229..53a4cef91e8 100644
--- a/src/mame/includes/galpani2.h
+++ b/src/mame/includes/galpani2.h
@@ -72,4 +72,6 @@ public:
void galpani2_mcu_nmi1();
void galpani2_mcu_nmi2();
void galpani2(machine_config &config);
+ void galpani2_mem1(address_map &map);
+ void galpani2_mem2(address_map &map);
};
diff --git a/src/mame/includes/galpanic.h b/src/mame/includes/galpanic.h
index 2f7169b3817..13adc5766cd 100644
--- a/src/mame/includes/galpanic.h
+++ b/src/mame/includes/galpanic.h
@@ -43,4 +43,7 @@ public:
void draw_fgbitmap(bitmap_ind16 &bitmap, const rectangle &cliprect);
void galpanica(machine_config &config);
void galpanic(machine_config &config);
+ void galpanic_map(address_map &map);
+ void galpanic_oki_map(address_map &map);
+ void galpanica_map(address_map &map);
};
diff --git a/src/mame/includes/galspnbl.h b/src/mame/includes/galspnbl.h
index 6a796b7752c..cbd574532a3 100644
--- a/src/mame/includes/galspnbl.h
+++ b/src/mame/includes/galspnbl.h
@@ -58,4 +58,6 @@ public:
void mix_sprite_layer(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int pri);
void galspnbl(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/gamecom.h b/src/mame/includes/gamecom.h
index 1fb4048c14e..09e193d3d6f 100644
--- a/src/mame/includes/gamecom.h
+++ b/src/mame/includes/gamecom.h
@@ -251,6 +251,7 @@ public:
DECLARE_DEVICE_IMAGE_LOAD_MEMBER( gamecom_cart2 );
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void gamecom(machine_config &config);
+ void gamecom_mem_map(address_map &map);
private:
uint8_t *m_p_ram;
uint8_t *m_cart_ptr;
diff --git a/src/mame/includes/gameplan.h b/src/mame/includes/gameplan.h
index e2241755398..0eb102f8e18 100644
--- a/src/mame/includes/gameplan.h
+++ b/src/mame/includes/gameplan.h
@@ -113,6 +113,10 @@ public:
void leprechn_video(machine_config &config);
void trvquest(machine_config &config);
void trvquest_video(machine_config &config);
+ void cpu_map(address_map &map);
+ void gameplan_audio_map(address_map &map);
+ void gameplan_main_map(address_map &map);
+ void leprechn_audio_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/gamepock.h b/src/mame/includes/gamepock.h
index a9d4e7e6388..ad3d0d68af2 100644
--- a/src/mame/includes/gamepock.h
+++ b/src/mame/includes/gamepock.h
@@ -46,6 +46,7 @@ public:
required_device<generic_slot_device> m_cart;
DECLARE_WRITE_LINE_MEMBER(gamepock_to_w);
void gamepock(machine_config &config);
+ void gamepock_mem(address_map &map);
};
#endif // MAME_INCLUDES_GAMEPOCK_H
diff --git a/src/mame/includes/gaplus.h b/src/mame/includes/gaplus.h
index 6f58c22f6c1..28c55ee55b2 100644
--- a/src/mame/includes/gaplus.h
+++ b/src/mame/includes/gaplus.h
@@ -109,6 +109,9 @@ public:
void gapluso(machine_config &config);
void gaplusd(machine_config &config);
void gaplus(machine_config &config);
+ void cpu1_map(address_map &map);
+ void cpu2_map(address_map &map);
+ void cpu3_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/gatron.h b/src/mame/includes/gatron.h
index c20823a7459..9c0c8a8e271 100644
--- a/src/mame/includes/gatron.h
+++ b/src/mame/includes/gatron.h
@@ -21,4 +21,6 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void gat(machine_config &config);
+ void gat_map(address_map &map);
+ void gat_portmap(address_map &map);
};
diff --git a/src/mame/includes/gauntlet.h b/src/mame/includes/gauntlet.h
index f9e9de8c446..a20f0d5c8b0 100644
--- a/src/mame/includes/gauntlet.h
+++ b/src/mame/includes/gauntlet.h
@@ -70,4 +70,6 @@ public:
void gauntlet(machine_config &config);
void gaunt2p(machine_config &config);
void gauntlet2(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/gb.h b/src/mame/includes/gb.h
index 7da7568384b..cd24651a6af 100644
--- a/src/mame/includes/gb.h
+++ b/src/mame/includes/gb.h
@@ -94,6 +94,9 @@ public:
void gbcolor(machine_config &config);
void gbpocket(machine_config &config);
void gameboy(machine_config &config);
+ void gameboy_map(address_map &map);
+ void gbc_map(address_map &map);
+ void sgb_map(address_map &map);
protected:
enum {
SIO_ENABLED = 0x80,
@@ -148,6 +151,7 @@ public:
DECLARE_WRITE8_MEMBER(bank2_w);
optional_device<megaduck_cart_slot_device> m_cartslot;
void megaduck(machine_config &config);
+ void megaduck_map(address_map &map);
};
diff --git a/src/mame/includes/gba.h b/src/mame/includes/gba.h
index be3bed71092..1abe1db74d1 100644
--- a/src/mame/includes/gba.h
+++ b/src/mame/includes/gba.h
@@ -80,6 +80,7 @@ public:
TIMER_CALLBACK_MEMBER(handle_irq);
void gbadv(machine_config &config);
+ void gba_map(address_map &map);
protected:
required_region_ptr<uint32_t> m_region_maincpu;
required_ioport m_io_inputs;
diff --git a/src/mame/includes/gberet.h b/src/mame/includes/gberet.h
index dc0c1ac462b..5b6b98bb6f4 100644
--- a/src/mame/includes/gberet.h
+++ b/src/mame/includes/gberet.h
@@ -72,4 +72,7 @@ public:
void gberetb(machine_config &config);
void mrgoemon(machine_config &config);
void gberet(machine_config &config);
+ void gberet_map(address_map &map);
+ void gberetb_map(address_map &map);
+ void mrgoemon_map(address_map &map);
};
diff --git a/src/mame/includes/gcpinbal.h b/src/mame/includes/gcpinbal.h
index a8566c243cc..4ec374d759d 100644
--- a/src/mame/includes/gcpinbal.h
+++ b/src/mame/includes/gcpinbal.h
@@ -91,6 +91,7 @@ public:
required_device<excellent_spr_device> m_sprgen;
void gcpinbal(machine_config &config);
+ void gcpinbal_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/gijoe.h b/src/mame/includes/gijoe.h
index d31a1bc16ef..b979d185074 100644
--- a/src/mame/includes/gijoe.h
+++ b/src/mame/includes/gijoe.h
@@ -68,4 +68,6 @@ public:
K056832_CB_MEMBER(tile_callback);
K053246_CB_MEMBER(sprite_callback);
void gijoe(machine_config &config);
+ void gijoe_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/ginganin.h b/src/mame/includes/ginganin.h
index 4ec337b2fe7..4d5819c63a4 100644
--- a/src/mame/includes/ginganin.h
+++ b/src/mame/includes/ginganin.h
@@ -61,4 +61,6 @@ public:
uint32_t screen_update_ginganin(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites( bitmap_ind16 &bitmap,const rectangle &cliprect );
void ginganin(machine_config &config);
+ void ginganin_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/gladiatr.h b/src/mame/includes/gladiatr.h
index b8228e8471a..1992879c9c1 100644
--- a/src/mame/includes/gladiatr.h
+++ b/src/mame/includes/gladiatr.h
@@ -19,6 +19,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(flipscreen_w);
DECLARE_WRITE_LINE_MEMBER(ym_irq);
+ void cpu2_map(address_map &map);
protected:
gladiatr_state_base(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
@@ -140,6 +141,10 @@ public:
void swap_block(uint8_t *src1,uint8_t *src2,int len);
void gladiatr(machine_config &config);
+ void gladiatr_cpu1_io(address_map &map);
+ void gladiatr_cpu1_map(address_map &map);
+ void gladiatr_cpu2_io(address_map &map);
+ void gladiatr_cpu3_map(address_map &map);
private:
required_ioport m_dsw1, m_dsw2;
required_ioport m_in0, m_in1, m_in2;
@@ -185,6 +190,10 @@ public:
uint32_t screen_update_ppking(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ppking(machine_config &config);
+ void ppking_cpu1_io(address_map &map);
+ void ppking_cpu1_map(address_map &map);
+ void ppking_cpu2_io(address_map &map);
+ void ppking_cpu3_map(address_map &map);
private:
required_shared_ptr<uint8_t> m_nvram;
required_device<generic_latch_8_device> m_soundlatch2;
diff --git a/src/mame/includes/glass.h b/src/mame/includes/glass.h
index 35df5e9df34..6bbf0a487d3 100644
--- a/src/mame/includes/glass.h
+++ b/src/mame/includes/glass.h
@@ -73,4 +73,7 @@ public:
void ROM16_split_gfx( const char *src_reg, const char *dst_reg, int start, int length, int dest1, int dest2 );
void glass(machine_config &config);
void glass_ds5002fp(machine_config &config);
+ void glass_map(address_map &map);
+ void mcu_hostmem_map(address_map &map);
+ void oki_map(address_map &map);
};
diff --git a/src/mame/includes/gng.h b/src/mame/includes/gng.h
index 82ef523366a..e9775a4f962 100644
--- a/src/mame/includes/gng.h
+++ b/src/mame/includes/gng.h
@@ -56,4 +56,7 @@ public:
required_device<palette_device> m_palette;
void gng(machine_config &config);
void diamond(machine_config &config);
+ void diamond_map(address_map &map);
+ void gng_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/goal92.h b/src/mame/includes/goal92.h
index aebce586532..64b619814aa 100644
--- a/src/mame/includes/goal92.h
+++ b/src/mame/includes/goal92.h
@@ -73,4 +73,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(irqhandler);
DECLARE_WRITE_LINE_MEMBER(goal92_adpcm_int);
void goal92(machine_config &config);
+ void goal92_map(address_map &map);
+ void sound_cpu(address_map &map);
};
diff --git a/src/mame/includes/goindol.h b/src/mame/includes/goindol.h
index 8e0be3628f5..3262d215431 100644
--- a/src/mame/includes/goindol.h
+++ b/src/mame/includes/goindol.h
@@ -58,4 +58,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void goindol(machine_config &config);
+ void goindol_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/goldstar.h b/src/mame/includes/goldstar.h
index b1464d97e6b..c5b37574898 100644
--- a/src/mame/includes/goldstar.h
+++ b/src/mame/includes/goldstar.h
@@ -62,6 +62,24 @@ public:
void goldfrui(machine_config &config);
void goldstar(machine_config &config);
void goldstbl(machine_config &config);
+ void bonusch_portmap(address_map &map);
+ void cm_map(address_map &map);
+ void cmast91_portmap(address_map &map);
+ void flaming7_map(address_map &map);
+ void goldstar_map(address_map &map);
+ void goldstar_readport(address_map &map);
+ void kkotnoli_map(address_map &map);
+ void ladylinr_map(address_map &map);
+ void lucky8_map(address_map &map);
+ void mbstar_map(address_map &map);
+ void megaline_portmap(address_map &map);
+ void ncb3_readwriteport(address_map &map);
+ void nfm_map(address_map &map);
+ void pkrmast_portmap(address_map &map);
+ void ramdac_map(address_map &map);
+ void wcat3_map(address_map &map);
+ void wcherry_map(address_map &map);
+ void wcherry_readwriteport(address_map &map);
protected:
TILE_GET_INFO_MEMBER(get_goldstar_fg_tile_info);
TILE_GET_INFO_MEMBER(get_cherrym_fg_tile_info);
@@ -142,6 +160,9 @@ public:
void nfm(machine_config &config);
void amcoe2(machine_config &config);
void amcoe1(machine_config &config);
+ void amcoe1_portmap(address_map &map);
+ void amcoe2_portmap(address_map &map);
+ void cm_portmap(address_map &map);
protected:
// installed by various driver init handlers to get stuff to work
READ8_MEMBER(fixedval09_r) { return 0x09; }
@@ -205,6 +226,7 @@ public:
void bingownga(machine_config &config);
void mbstar(machine_config &config);
void flam7_tw(machine_config &config);
+ void magodds_map(address_map &map);
protected:
TILE_GET_INFO_MEMBER(get_magical_fg_tile_info);
@@ -238,6 +260,7 @@ public:
void cb3e(machine_config &config);
void ncb3(machine_config &config);
void cm97(machine_config &config);
+ void ncb3_map(address_map &map);
protected:
void do_blockswaps(uint8_t* ROM);
void dump_to_file(uint8_t* ROM);
@@ -273,6 +296,8 @@ public:
uint32_t screen_update_sangho(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void star100(machine_config &config);
+ void star100_map(address_map &map);
+ void star100_readport(address_map &map);
protected:
TILE_GET_INFO_MEMBER(get_fg_tile_info);
TILE_GET_INFO_MEMBER(get_bg_tile_info);
@@ -321,6 +346,10 @@ public:
void megaline(machine_config &config);
void unkch(machine_config &config);
void bonusch(machine_config &config);
+ void bonusch_map(address_map &map);
+ void megaline_map(address_map &map);
+ void unkch_map(address_map &map);
+ void unkch_portmap(address_map &map);
protected:
TILE_GET_INFO_MEMBER(get_reel1_tile_info);
TILE_GET_INFO_MEMBER(get_reel2_tile_info);
diff --git a/src/mame/includes/gomoku.h b/src/mame/includes/gomoku.h
index 80663da3d93..1c9db1776f5 100644
--- a/src/mame/includes/gomoku.h
+++ b/src/mame/includes/gomoku.h
@@ -40,6 +40,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<screen_device> m_screen;
void gomoku(machine_config &config);
+ void gomoku_map(address_map &map);
};
#endif // MAME_INCLUDES_GOMOKU_H
diff --git a/src/mame/includes/gotcha.h b/src/mame/includes/gotcha.h
index baab48d3c18..e5cbad5cc81 100644
--- a/src/mame/includes/gotcha.h
+++ b/src/mame/includes/gotcha.h
@@ -56,4 +56,6 @@ public:
required_device<okim6295_device> m_oki;
required_device<gfxdecode_device> m_gfxdecode;
void gotcha(machine_config &config);
+ void gotcha_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/gottlieb.h b/src/mame/includes/gottlieb.h
index dbde4029cde..265c16ee687 100644
--- a/src/mame/includes/gottlieb.h
+++ b/src/mame/includes/gottlieb.h
@@ -152,6 +152,8 @@ public:
void qbert_knocker(machine_config &config);
void gottlieb1(machine_config &config);
void gottlieb1_votrax(machine_config &config);
+ void gottlieb_map(address_map &map);
+ void reactor_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/gotya.h b/src/mame/includes/gotya.h
index 292a4ca24dc..a515610ff16 100644
--- a/src/mame/includes/gotya.h
+++ b/src/mame/includes/gotya.h
@@ -51,4 +51,5 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void gotya(machine_config &config);
+ void gotya_map(address_map &map);
};
diff --git a/src/mame/includes/gp32.h b/src/mame/includes/gp32.h
index 1ef3f79bb19..5825b30236b 100644
--- a/src/mame/includes/gp32.h
+++ b/src/mame/includes/gp32.h
@@ -186,6 +186,7 @@ public:
TIMER_CALLBACK_MEMBER(s3c240x_iic_timer_exp);
TIMER_CALLBACK_MEMBER(s3c240x_iis_timer_exp);
void gp32(machine_config &config);
+ void gp32_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<smartmedia_image_device> m_smartmedia;
diff --git a/src/mame/includes/gradius3.h b/src/mame/includes/gradius3.h
index 55301be9292..648d47da7ea 100644
--- a/src/mame/includes/gradius3.h
+++ b/src/mame/includes/gradius3.h
@@ -67,4 +67,7 @@ public:
K052109_CB_MEMBER(tile_callback);
K051960_CB_MEMBER(sprite_callback);
void gradius3(machine_config &config);
+ void gradius3_map(address_map &map);
+ void gradius3_map2(address_map &map);
+ void gradius3_s_map(address_map &map);
};
diff --git a/src/mame/includes/grchamp.h b/src/mame/includes/grchamp.h
index d6e5d87837a..04789ae5072 100644
--- a/src/mame/includes/grchamp.h
+++ b/src/mame/includes/grchamp.h
@@ -113,6 +113,11 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void draw_objects(int y, uint8_t *objdata);
void grchamp(machine_config &config);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
+ void sub_portmap(address_map &map);
};
/* Discrete Sound Input Nodes */
diff --git a/src/mame/includes/gridlee.h b/src/mame/includes/gridlee.h
index b26c94606be..3a134117855 100644
--- a/src/mame/includes/gridlee.h
+++ b/src/mame/includes/gridlee.h
@@ -9,6 +9,7 @@
***************************************************************************/
#include "sound/samples.h"
+#include "machine/74259.h"
#include "screen.h"
@@ -31,12 +32,14 @@ public:
m_spriteram(*this, "spriteram"),
m_videoram(*this, "videoram"),
m_maincpu(*this, "maincpu"),
+ m_latch(*this, "latch"),
m_screen(*this, "screen"),
m_palette(*this, "palette") { }
required_shared_ptr<uint8_t> m_spriteram;
required_shared_ptr<uint8_t> m_videoram;
required_device<cpu_device> m_maincpu;
+ required_device<ls259_device> m_latch;
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
@@ -73,6 +76,7 @@ public:
void expand_pixels();
void poly17_init();
void gridlee(machine_config &config);
+ void cpu1_map(address_map &map);
};
diff --git a/src/mame/includes/groundfx.h b/src/mame/includes/groundfx.h
index 71826f9468c..3dd1e2a57e1 100644
--- a/src/mame/includes/groundfx.h
+++ b/src/mame/includes/groundfx.h
@@ -63,6 +63,7 @@ public:
void groundfx(machine_config &config);
+ void groundfx_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/gstriker.h b/src/mame/includes/gstriker.h
index e5c9ef7e0aa..6d3ae17eb01 100644
--- a/src/mame/includes/gstriker.h
+++ b/src/mame/includes/gstriker.h
@@ -86,6 +86,10 @@ public:
void twc94(machine_config &config);
void gstriker(machine_config &config);
void vgoal(machine_config &config);
+ void gstriker_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void twcup94_map(address_map &map);
};
#endif
diff --git a/src/mame/includes/gsword.h b/src/mame/includes/gsword.h
index 4b93a0684d7..34a94077859 100644
--- a/src/mame/includes/gsword.h
+++ b/src/mame/includes/gsword.h
@@ -64,6 +64,7 @@ public:
uint32_t screen_update_gsword(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void cpu1_map(address_map &map);
};
@@ -97,6 +98,10 @@ public:
virtual void machine_reset() override;
void gsword(machine_config &config);
+ void cpu1_io_map(address_map &map);
+ void cpu2_io_map(address_map &map);
+ void cpu2_map(address_map &map);
+ void cpu3_map(address_map &map);
private:
required_device<generic_latch_8_device> m_soundlatch;
required_device<msm5205_device> m_msm;
@@ -136,6 +141,9 @@ public:
virtual void machine_reset() override;
void josvolly(machine_config &config);
+ void josvolly_cpu1_io_map(address_map &map);
+ void josvolly_cpu2_io_map(address_map &map);
+ void josvolly_cpu2_map(address_map &map);
private:
bool m_cpu2_nmi_enable;
u8 m_mcu1_p1;
diff --git a/src/mame/includes/gumbo.h b/src/mame/includes/gumbo.h
index c2f7886f8a7..ba7fc54c9fb 100644
--- a/src/mame/includes/gumbo.h
+++ b/src/mame/includes/gumbo.h
@@ -34,4 +34,7 @@ public:
void mspuzzle(machine_config &config);
void dblpoint(machine_config &config);
void gumbo(machine_config &config);
+ void dblpoint_map(address_map &map);
+ void gumbo_map(address_map &map);
+ void mspuzzle_map(address_map &map);
};
diff --git a/src/mame/includes/gunbustr.h b/src/mame/includes/gunbustr.h
index 4acca6eb043..33753be6b71 100644
--- a/src/mame/includes/gunbustr.h
+++ b/src/mame/includes/gunbustr.h
@@ -60,6 +60,7 @@ public:
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap,const rectangle &cliprect,const int *primasks,int x_offs,int y_offs);
void gunbustr(machine_config &config);
+ void gunbustr_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/gundealr.h b/src/mame/includes/gundealr.h
index 120c9b23ac3..a117e050668 100644
--- a/src/mame/includes/gundealr.h
+++ b/src/mame/includes/gundealr.h
@@ -57,4 +57,8 @@ public:
void gundealr(machine_config &config);
void gundealrbl(machine_config &config);
void yamyam(machine_config &config);
+ void base_map(address_map &map);
+ void gundealr_main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void yamyam_main_map(address_map &map);
};
diff --git a/src/mame/includes/gunsmoke.h b/src/mame/includes/gunsmoke.h
index f877eefb716..924e0e663c5 100644
--- a/src/mame/includes/gunsmoke.h
+++ b/src/mame/includes/gunsmoke.h
@@ -51,4 +51,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void gunsmoke(machine_config &config);
+ void gunsmoke_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/gyruss.h b/src/mame/includes/gyruss.h
index fda86f9b2c6..7b9146d1287 100644
--- a/src/mame/includes/gyruss.h
+++ b/src/mame/includes/gyruss.h
@@ -70,4 +70,10 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void filter_w(address_space &space, int chip, int data );
void gyruss(machine_config &config);
+ void audio_cpu1_io_map(address_map &map);
+ void audio_cpu1_map(address_map &map);
+ void audio_cpu2_io_map(address_map &map);
+ void audio_cpu2_map(address_map &map);
+ void main_cpu1_map(address_map &map);
+ void main_cpu2_map(address_map &map);
};
diff --git a/src/mame/includes/hanaawas.h b/src/mame/includes/hanaawas.h
index f4798e005ca..57c2be067b1 100644
--- a/src/mame/includes/hanaawas.h
+++ b/src/mame/includes/hanaawas.h
@@ -43,4 +43,6 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void hanaawas(machine_config &config);
+ void hanaawas_map(address_map &map);
+ void io_map(address_map &map);
};
diff --git a/src/mame/includes/harddriv.h b/src/mame/includes/harddriv.h
index 649b9bbc119..d6fc80e9e00 100644
--- a/src/mame/includes/harddriv.h
+++ b/src/mame/includes/harddriv.h
@@ -264,6 +264,23 @@ public:
void ds3(machine_config &config);
void multisync2(machine_config &config);
void adsp(machine_config &config);
+ void adsp_data_map(address_map &map);
+ void adsp_program_map(address_map &map);
+ void driver_68k_map(address_map &map);
+ void driver_gsp_map(address_map &map);
+ void driver_msp_map(address_map &map);
+ void ds3_data_map(address_map &map);
+ void ds3_program_map(address_map &map);
+ void ds3sdsp_data_map(address_map &map);
+ void ds3sdsp_program_map(address_map &map);
+ void ds3xdsp_data_map(address_map &map);
+ void ds3xdsp_program_map(address_map &map);
+ void dsk2_dsp32_map(address_map &map);
+ void dsk_dsp32_map(address_map &map);
+ void multisync2_68k_map(address_map &map);
+ void multisync2_gsp_map(address_map &map);
+ void multisync_68k_map(address_map &map);
+ void multisync_gsp_map(address_map &map);
protected:
harddriv_state(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -521,6 +538,9 @@ public:
DECLARE_READ16_MEMBER(hdsnddsp_comram_r);
DECLARE_READ16_MEMBER(hdsnddsp_compare_r);
+ void driversnd_68k_map(address_map &map);
+ void driversnd_dsp_io_map(address_map &map);
+ void driversnd_dsp_program_map(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/mame/includes/hcastle.h b/src/mame/includes/hcastle.h
index 56cbf5c3883..fa6e3d1ee11 100644
--- a/src/mame/includes/hcastle.h
+++ b/src/mame/includes/hcastle.h
@@ -72,4 +72,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void hcastle(machine_config &config);
+ void hcastle_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/hec2hrp.h b/src/mame/includes/hec2hrp.h
index 70f745565a0..f263a6c4908 100644
--- a/src/mame/includes/hec2hrp.h
+++ b/src/mame/includes/hec2hrp.h
@@ -205,6 +205,15 @@ public:
void hec2mdhrx(machine_config &config);
void hec2hr(machine_config &config);
void hector_audio(machine_config &config);
+ void hec2hrp_io(address_map &map);
+ void hec2hrp_mem(address_map &map);
+ void hec2hrx_io(address_map &map);
+ void hec2hrx_mem(address_map &map);
+ void hec2mdhrx_io(address_map &map);
+ void hec2mx40_io(address_map &map);
+ void hec2mx80_io(address_map &map);
+ void hecdisc2_io(address_map &map);
+ void hecdisc2_mem(address_map &map);
};
#endif // MAME_INCLUDES_HEC2HRP_H
diff --git a/src/mame/includes/hexion.h b/src/mame/includes/hexion.h
index 73d97a9ff6c..780300d29e9 100644
--- a/src/mame/includes/hexion.h
+++ b/src/mame/includes/hexion.h
@@ -49,4 +49,6 @@ public:
inline void get_tile_info(tile_data &tileinfo,int tile_index,uint8_t *ram);
void hexion(machine_config &config);
void hexionb(machine_config &config);
+ void hexion_map(address_map &map);
+ void hexionb_map(address_map &map);
};
diff --git a/src/mame/includes/higemaru.h b/src/mame/includes/higemaru.h
index 5585f81be3f..d50c8bbfa3a 100644
--- a/src/mame/includes/higemaru.h
+++ b/src/mame/includes/higemaru.h
@@ -40,4 +40,5 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void higemaru(machine_config &config);
+ void higemaru_map(address_map &map);
};
diff --git a/src/mame/includes/himesiki.h b/src/mame/includes/himesiki.h
index 210f07d806c..34c7070b99a 100644
--- a/src/mame/includes/himesiki.h
+++ b/src/mame/includes/himesiki.h
@@ -54,4 +54,8 @@ public:
uint32_t screen_update_himesiki(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void himesiki_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void himesiki(machine_config &config);
+ void himesiki_iom0(address_map &map);
+ void himesiki_iom1(address_map &map);
+ void himesiki_prm0(address_map &map);
+ void himesiki_prm1(address_map &map);
};
diff --git a/src/mame/includes/hitme.h b/src/mame/includes/hitme.h
index f9f4fd89bb8..e8a43f5722e 100644
--- a/src/mame/includes/hitme.h
+++ b/src/mame/includes/hitme.h
@@ -56,6 +56,8 @@ public:
required_device<screen_device> m_screen;
void hitme(machine_config &config);
void barricad(machine_config &config);
+ void hitme_map(address_map &map);
+ void hitme_portmap(address_map &map);
};
diff --git a/src/mame/includes/hnayayoi.h b/src/mame/includes/hnayayoi.h
index aa43729100d..296025ba381 100644
--- a/src/mame/includes/hnayayoi.h
+++ b/src/mame/includes/hnayayoi.h
@@ -53,4 +53,9 @@ public:
void untoucha(machine_config &config);
void hnayayoi(machine_config &config);
void hnfubuki(machine_config &config);
+ void hnayayoi_io_map(address_map &map);
+ void hnayayoi_map(address_map &map);
+ void hnfubuki_map(address_map &map);
+ void untoucha_io_map(address_map &map);
+ void untoucha_map(address_map &map);
};
diff --git a/src/mame/includes/hng64.h b/src/mame/includes/hng64.h
index 3b0cc35bc16..4d3ad40549c 100644
--- a/src/mame/includes/hng64.h
+++ b/src/mame/includes/hng64.h
@@ -396,4 +396,9 @@ public:
void hng64(machine_config &config);
void hng64_audio(machine_config &config);
void hng64_network(machine_config &config);
+ void hng_comm_io_map(address_map &map);
+ void hng_comm_map(address_map &map);
+ void hng_map(address_map &map);
+ void hng_sound_io(address_map &map);
+ void hng_sound_map(address_map &map);
};
diff --git a/src/mame/includes/holeland.h b/src/mame/includes/holeland.h
index 520f834ef5e..d8767ea979b 100644
--- a/src/mame/includes/holeland.h
+++ b/src/mame/includes/holeland.h
@@ -58,4 +58,7 @@ public:
void crzrally_draw_sprites( bitmap_ind16 &bitmap,const rectangle &cliprect );
void crzrally(machine_config &config);
void holeland(machine_config &config);
+ void crzrally_map(address_map &map);
+ void holeland_map(address_map &map);
+ void io_map(address_map &map);
};
diff --git a/src/mame/includes/homedata.h b/src/mame/includes/homedata.h
index e7b3d32d0f9..c78dd4223ff 100644
--- a/src/mame/includes/homedata.h
+++ b/src/mame/includes/homedata.h
@@ -158,4 +158,14 @@ public:
void pteacher(machine_config &config);
void lemnangl(machine_config &config);
void mjkinjas(machine_config &config);
+ void cpu0_map(address_map &map);
+ void cpu1_map(address_map &map);
+ void cpu2_map(address_map &map);
+ void mrokumei_map(address_map &map);
+ void mrokumei_sound_io_map(address_map &map);
+ void mrokumei_sound_map(address_map &map);
+ void pteacher_map(address_map &map);
+ void pteacher_upd7807_map(address_map &map);
+ void reikaids_map(address_map &map);
+ void reikaids_upd7807_map(address_map &map);
};
diff --git a/src/mame/includes/homerun.h b/src/mame/includes/homerun.h
index d99fb353816..6adeb57e537 100644
--- a/src/mame/includes/homerun.h
+++ b/src/mame/includes/homerun.h
@@ -67,4 +67,6 @@ public:
void ganjaja(machine_config &config);
void dynashot(machine_config &config);
void homerun(machine_config &config);
+ void homerun_iomap(address_map &map);
+ void homerun_memmap(address_map &map);
};
diff --git a/src/mame/includes/hp48.h b/src/mame/includes/hp48.h
index e68458f3338..221d8f85742 100644
--- a/src/mame/includes/hp48.h
+++ b/src/mame/includes/hp48.h
@@ -144,6 +144,7 @@ public:
void hp48g(machine_config &config);
void hp48gx(machine_config &config);
void hp49g(machine_config &config);
+ void hp48(address_map &map);
};
diff --git a/src/mame/includes/hp9845.h b/src/mame/includes/hp9845.h
index ce3dc54bac2..fbb47ff4b39 100644
--- a/src/mame/includes/hp9845.h
+++ b/src/mame/includes/hp9845.h
@@ -61,6 +61,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(togglekey_changed);
void hp9845_base(machine_config &config);
+ void global_mem_map(address_map &map);
+ void ppu_io_map(address_map &map);
protected:
required_device<hp_5061_3001_cpu_device> m_lpu;
required_device<hp_5061_3001_cpu_device> m_ppu;
diff --git a/src/mame/includes/huebler.h b/src/mame/includes/huebler.h
index 98103b05e90..5eae7b79551 100644
--- a/src/mame/includes/huebler.h
+++ b/src/mame/includes/huebler.h
@@ -69,6 +69,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(ctc_z2_w);
DECLARE_WRITE_LINE_MEMBER(cassette_w);
void amu880(machine_config &config);
+ void amu880_io(address_map &map);
+ void amu880_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/hx20.h b/src/mame/includes/hx20.h
index c742b11dd59..2a9bdaa429b 100644
--- a/src/mame/includes/hx20.h
+++ b/src/mame/includes/hx20.h
@@ -145,6 +145,11 @@ public:
int m_sio_pin;
void cm6000(machine_config &config);
void hx20(machine_config &config);
+ void cm6000_mem(address_map &map);
+ void hx20_io(address_map &map);
+ void hx20_mem(address_map &map);
+ void hx20_sub_io(address_map &map);
+ void hx20_sub_mem(address_map &map);
};
#endif // MAME_INCLUDES_HX20_H
diff --git a/src/mame/includes/hyhoo.h b/src/mame/includes/hyhoo.h
index 6092e040a02..9366d9d4989 100644
--- a/src/mame/includes/hyhoo.h
+++ b/src/mame/includes/hyhoo.h
@@ -49,6 +49,8 @@ public:
void hyhoo(machine_config &config);
void hyhoo2(machine_config &config);
+ void hyhoo_io_map(address_map &map);
+ void hyhoo_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/hyperspt.h b/src/mame/includes/hyperspt.h
index ff8912bb884..2a26fa2ce54 100644
--- a/src/mame/includes/hyperspt.h
+++ b/src/mame/includes/hyperspt.h
@@ -60,4 +60,12 @@ public:
void hyperspt(machine_config &config);
void roadf(machine_config &config);
void hypersptb(machine_config &config);
+ void common_map(address_map &map);
+ void common_sound_map(address_map &map);
+ void hyperspt_map(address_map &map);
+ void hyperspt_sound_map(address_map &map);
+ void roadf_map(address_map &map);
+ void roadf_sound_map(address_map &map);
+ void soundb_map(address_map &map);
+ void hyprolyb_adpcm_map(address_map &map);
};
diff --git a/src/mame/includes/hyprduel.h b/src/mame/includes/hyprduel.h
index a58dffa985b..54630d8066e 100644
--- a/src/mame/includes/hyprduel.h
+++ b/src/mame/includes/hyprduel.h
@@ -69,6 +69,10 @@ public:
void magerror(machine_config &config);
void hyprduel(machine_config &config);
+ void hyprduel_map(address_map &map);
+ void hyprduel_map2(address_map &map);
+ void magerror_map(address_map &map);
+ void magerror_map2(address_map &map);
protected:
virtual void machine_reset() override;
diff --git a/src/mame/includes/ikki.h b/src/mame/includes/ikki.h
index 70db6fb6adf..e48cd8e90df 100644
--- a/src/mame/includes/ikki.h
+++ b/src/mame/includes/ikki.h
@@ -51,4 +51,6 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(ikki_irq);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void ikki(machine_config &config);
+ void ikki_cpu1(address_map &map);
+ void ikki_cpu2(address_map &map);
};
diff --git a/src/mame/includes/imds2.h b/src/mame/includes/imds2.h
index 0da4bc57c6e..e9a2d80b5d5 100644
--- a/src/mame/includes/imds2.h
+++ b/src/mame/includes/imds2.h
@@ -73,6 +73,10 @@ class imds2_state : public driver_device
virtual void machine_reset() override;
void imds2(machine_config &config);
+ void ioc_io_map(address_map &map);
+ void ioc_mem_map(address_map &map);
+ void ipc_io_map(address_map &map);
+ void ipc_mem_map(address_map &map);
private:
required_device<i8085a_cpu_device> m_ipccpu;
required_device<pic8259_device> m_ipcsyspic;
diff --git a/src/mame/includes/interpro.h b/src/mame/includes/interpro.h
index 8fa9bf710c4..c340ff99f28 100644
--- a/src/mame/includes/interpro.h
+++ b/src/mame/includes/interpro.h
@@ -134,7 +134,7 @@ public:
CTRL1_ETHRMOD = 0x0040, // 0 = sytem configured for remote modems
CTRL1_FIFOACTIVE = 0x0080 // 0 = plotter fifos reset
};
- DECLARE_READ16_MEMBER(sreg_ctrl1_r) const { return m_sreg_ctrl1; }
+ DECLARE_READ16_MEMBER(sreg_ctrl1_r) { return m_sreg_ctrl1; }
DECLARE_WRITE16_MEMBER(sreg_ctrl1_w);
enum sreg_ctrl2_mask
@@ -149,9 +149,9 @@ public:
CTRL2_MASK = 0x004d
};
- DECLARE_READ16_MEMBER(sreg_ctrl2_r) const { return m_sreg_ctrl2; }
+ DECLARE_READ16_MEMBER(sreg_ctrl2_r) { return m_sreg_ctrl2; }
virtual DECLARE_WRITE16_MEMBER(sreg_ctrl2_w);
- DECLARE_READ16_MEMBER(sreg_ctrl3_r) const { return m_sreg_ctrl3; }
+ DECLARE_READ16_MEMBER(sreg_ctrl3_r) { return m_sreg_ctrl3; }
DECLARE_WRITE16_MEMBER(sreg_ctrl3_w) { m_sreg_ctrl3 = data; }
DECLARE_READ8_MEMBER(nodeid_r);
@@ -166,6 +166,12 @@ public:
void interpro_serial2(machine_config &config);
void interpro(machine_config &config);
static void interpro_scsi_adapter(device_t *device);
+ void c300_data_map(address_map &map);
+ void c300_insn_map(address_map &map);
+ void c400_data_map(address_map &map);
+ void c400_insn_map(address_map &map);
+ void interpro_boot_map(address_map &map);
+ void interpro_common_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -197,6 +203,10 @@ public:
required_device<cammu_c3_device> m_i_cammu;
void turquoise(machine_config &config);
void ip2000(machine_config &config);
+ void interpro_82586_map(address_map &map);
+ void turquoise_base_map(address_map &map);
+ void turquoise_main_map(address_map &map);
+ void turquoise_io_map(address_map &map);
};
class sapphire_state : public interpro_state
@@ -223,6 +233,10 @@ public:
void ip2400(machine_config &config);
void ip2800(machine_config &config);
void ip2700(machine_config &config);
+ void interpro_82596_map(address_map &map);
+ void sapphire_base_map(address_map &map);
+ void sapphire_main_map(address_map &map);
+ void sapphire_io_map(address_map &map);
};
#endif // MAME_INCLUDES_INTERPRO_H
diff --git a/src/mame/includes/intv.h b/src/mame/includes/intv.h
index 5fd588e1851..4d4d2683a1b 100644
--- a/src/mame/includes/intv.h
+++ b/src/mame/includes/intv.h
@@ -122,6 +122,12 @@ public:
void intvoice(machine_config &config);
void intvecs(machine_config &config);
void intv(machine_config &config);
+ void intv2_mem(address_map &map);
+ void intv_mem(address_map &map);
+ void intvecs_mem(address_map &map);
+ void intvkbd2_mem(address_map &map);
+ void intvkbd_mem(address_map &map);
+ void intvoice_mem(address_map &map);
protected:
int m_is_keybd;
diff --git a/src/mame/includes/inufuku.h b/src/mame/includes/inufuku.h
index 579f0c50586..cedd96c4b7a 100644
--- a/src/mame/includes/inufuku.h
+++ b/src/mame/includes/inufuku.h
@@ -68,6 +68,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_inufuku);
void inufuku(machine_config &config);
void _3on3dunk(machine_config &config);
+ void inufuku_map(address_map &map);
+ void inufuku_sound_io_map(address_map &map);
+ void inufuku_sound_map(address_map &map);
};
#endif // MAME_INCLUDES_INUFUKU_H
diff --git a/src/mame/includes/iqblock.h b/src/mame/includes/iqblock.h
index 8cd6fc4fd77..5622ee48f22 100644
--- a/src/mame/includes/iqblock.h
+++ b/src/mame/includes/iqblock.h
@@ -45,4 +45,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void iqblock(machine_config &config);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
};
diff --git a/src/mame/includes/irobot.h b/src/mame/includes/irobot.h
index 5877c3ca3d2..ffda13271ff 100644
--- a/src/mame/includes/irobot.h
+++ b/src/mame/includes/irobot.h
@@ -105,4 +105,5 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void irobot(machine_config &config);
+ void irobot_map(address_map &map);
};
diff --git a/src/mame/includes/ironhors.h b/src/mame/includes/ironhors.h
index c3838c36818..e19b20fb06e 100644
--- a/src/mame/includes/ironhors.h
+++ b/src/mame/includes/ironhors.h
@@ -48,6 +48,11 @@ public:
void farwest(machine_config &config);
void ironhors(machine_config &config);
+ void farwest_master_map(address_map &map);
+ void farwest_slave_map(address_map &map);
+ void master_map(address_map &map);
+ void slave_io_map(address_map &map);
+ void slave_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/itech32.h b/src/mame/includes/itech32.h
index 7c282d6c1b4..72fe582748b 100644
--- a/src/mame/includes/itech32.h
+++ b/src/mame/includes/itech32.h
@@ -207,4 +207,12 @@ public:
void drivedge(machine_config &config);
void bloodstm(machine_config &config);
void timekill(machine_config &config);
+ void bloodstm_map(address_map &map);
+ void drivedge_map(address_map &map);
+ void drivedge_tms1_map(address_map &map);
+ void drivedge_tms2_map(address_map &map);
+ void itech020_map(address_map &map);
+ void sound_020_map(address_map &map);
+ void sound_map(address_map &map);
+ void timekill_map(address_map &map);
};
diff --git a/src/mame/includes/itech8.h b/src/mame/includes/itech8.h
index 9c60bbd45d3..644c8500c2b 100644
--- a/src/mame/includes/itech8.h
+++ b/src/mame/includes/itech8.h
@@ -203,6 +203,16 @@ public:
void stratab_lo(machine_config &config);
void slikshot_hi(machine_config &config);
void hstennis_hi(machine_config &config);
+ void gtg2_map(address_map &map);
+ void ninclown_map(address_map &map);
+ void slikz80_io_map(address_map &map);
+ void slikz80_mem_map(address_map &map);
+ void sound2203_map(address_map &map);
+ void sound2608b_map(address_map &map);
+ void sound3812_external_map(address_map &map);
+ void sound3812_map(address_map &map);
+ void tmshi_map(address_map &map);
+ void tmslo_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/jack.h b/src/mame/includes/jack.h
index a0fb8b3857d..7dc94a9bf49 100644
--- a/src/mame/includes/jack.h
+++ b/src/mame/includes/jack.h
@@ -92,4 +92,11 @@ public:
void unclepoo(machine_config &config);
void striv(machine_config &config);
void jack(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void jack_map(address_map &map);
+ void joinem_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void striv_map(address_map &map);
+ void unclepoo_map(address_map &map);
};
diff --git a/src/mame/includes/jackal.h b/src/mame/includes/jackal.h
index 5b5a8657a2d..fa42543a63f 100644
--- a/src/mame/includes/jackal.h
+++ b/src/mame/includes/jackal.h
@@ -59,4 +59,6 @@ public:
void draw_sprites_region( bitmap_ind16 &bitmap, const rectangle &cliprect, const uint8_t *sram, int length, int bank );
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void jackal(machine_config &config);
+ void master_map(address_map &map);
+ void slave_map(address_map &map);
};
diff --git a/src/mame/includes/jaguar.h b/src/mame/includes/jaguar.h
index b282ae22a83..64adf4909f0 100644
--- a/src/mame/includes/jaguar.h
+++ b/src/mame/includes/jaguar.h
@@ -254,6 +254,16 @@ public:
void jaguar(machine_config &config);
void cojag68k(machine_config &config);
void cojagr3k(machine_config &config);
+ void dsp_map(address_map &map);
+ void gpu_map(address_map &map);
+ void jag_dsp_map(address_map &map);
+ void jag_gpu_map(address_map &map);
+ void jagcd_dsp_map(address_map &map);
+ void jagcd_gpu_map(address_map &map);
+ void jaguar_map(address_map &map);
+ void jaguarcd_map(address_map &map);
+ void m68020_map(address_map &map);
+ void r3000_map(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/mame/includes/jailbrek.h b/src/mame/includes/jailbrek.h
index 9c08d84a959..0a46b74c964 100644
--- a/src/mame/includes/jailbrek.h
+++ b/src/mame/includes/jailbrek.h
@@ -61,4 +61,6 @@ public:
INTERRUPT_GEN_MEMBER(interrupt_nmi);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void jailbrek(machine_config &config);
+ void jailbrek_map(address_map &map);
+ void vlm_map(address_map &map);
};
diff --git a/src/mame/includes/jedi.h b/src/mame/includes/jedi.h
index 5b3aff7f54b..65bc928bbdb 100644
--- a/src/mame/includes/jedi.h
+++ b/src/mame/includes/jedi.h
@@ -100,4 +100,6 @@ public:
void jedi(machine_config &config);
void jedi_audio(machine_config &config);
void jedi_video(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/jpmimpct.h b/src/mame/includes/jpmimpct.h
index 99aac6e84a5..c07b599df40 100644
--- a/src/mame/includes/jpmimpct.h
+++ b/src/mame/includes/jpmimpct.h
@@ -151,4 +151,7 @@ public:
required_device<meters_device> m_meters;
void impctawp(machine_config &config);
void jpmimpct(machine_config &config);
+ void awp68k_program_map(address_map &map);
+ void m68k_program_map(address_map &map);
+ void tms_program_map(address_map &map);
};
diff --git a/src/mame/includes/jpmsys5.h b/src/mame/includes/jpmsys5.h
index 8b79524f02d..b8f49400b94 100644
--- a/src/mame/includes/jpmsys5.h
+++ b/src/mame/includes/jpmsys5.h
@@ -94,4 +94,8 @@ public:
void jpmsys5(machine_config &config);
void jpmsys5_ym(machine_config &config);
void jpmsys5v(machine_config &config);
+ void jpm_sys5_common_map(address_map &map);
+ void m68000_awp_map(address_map &map);
+ void m68000_awp_map_saa(address_map &map);
+ void m68000_map(address_map &map);
};
diff --git a/src/mame/includes/kaneko16.h b/src/mame/includes/kaneko16.h
index c2e2927af40..9e41e1699ed 100644
--- a/src/mame/includes/kaneko16.h
+++ b/src/mame/includes/kaneko16.h
@@ -94,6 +94,12 @@ public:
void wingforc(machine_config &config);
void blazeon(machine_config &config);
void mgcrystl(machine_config &config);
+ void bakubrkr(address_map &map);
+ void blazeon(address_map &map);
+ void blazeon_soundmem(address_map &map);
+ void blazeon_soundport(address_map &map);
+ void mgcrystl(address_map &map);
+ void wingforc_soundport(address_map &map);
};
class kaneko16_gtmr_state : public kaneko16_state
@@ -122,6 +128,10 @@ public:
void gtmr2(machine_config &config);
void gtmre(machine_config &config);
void bloodwar(machine_config &config);
+ void bloodwar(address_map &map);
+ void bonkadv(address_map &map);
+ void gtmr2_map(address_map &map);
+ void gtmr_map(address_map &map);
private:
void kaneko16_expand_sample_banks(const char *region);
@@ -174,6 +184,7 @@ public:
void patch_protection(uint32_t bra_offset,uint16_t bra_value,uint16_t checksum);
void berlwall(machine_config &config);
+ void berlwall(address_map &map);
};
class kaneko16_shogwarr_state : public kaneko16_state
@@ -195,6 +206,10 @@ public:
void shogwarr(machine_config &config);
void brapboys(machine_config &config);
+ void brapboys_oki2_map(address_map &map);
+ void shogwarr(address_map &map);
+ void shogwarr_oki1_map(address_map &map);
+ void shogwarr_oki2_map(address_map &map);
private:
void kaneko16_common_oki_bank_w(const char *bankname, const char *tag, int bank, size_t fixedsize, size_t bankedsize);
diff --git a/src/mame/includes/kangaroo.h b/src/mame/includes/kangaroo.h
index 4b2f1acd762..00bc4de7be1 100644
--- a/src/mame/includes/kangaroo.h
+++ b/src/mame/includes/kangaroo.h
@@ -41,4 +41,7 @@ public:
required_device<palette_device> m_palette;
void nomcu(machine_config &config);
void mcu(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/karnov.h b/src/mame/includes/karnov.h
index 5b5e1a16b21..da1df372ef2 100644
--- a/src/mame/includes/karnov.h
+++ b/src/mame/includes/karnov.h
@@ -83,6 +83,12 @@ public:
void karnov(machine_config &config);
void wndrplnt(machine_config &config);
void karnovjbl(machine_config &config);
+ void base_sound_map(address_map &map);
+ void chelnovjbl_mcu_io_map(address_map &map);
+ void chelnovjbl_mcu_map(address_map &map);
+ void karnov_map(address_map &map);
+ void karnov_sound_map(address_map &map);
+ void karnovjbl_sound_map(address_map &map);
};
enum {
diff --git a/src/mame/includes/kaypro.h b/src/mame/includes/kaypro.h
index f7110fe11ce..d277da9d157 100644
--- a/src/mame/includes/kaypro.h
+++ b/src/mame/includes/kaypro.h
@@ -71,6 +71,9 @@ public:
void kaypro484(machine_config &config);
void kaypro10(machine_config &config);
void kaypro284(machine_config &config);
+ void kaypro484_io(address_map &map);
+ void kaypro_map(address_map &map);
+ void kayproii_io(address_map &map);
private:
uint8_t m_mc6845_cursor[16];
uint8_t m_mc6845_reg[32];
diff --git a/src/mame/includes/kc.h b/src/mame/includes/kc.h
index c04b756b9f1..79168d93de0 100644
--- a/src/mame/includes/kc.h
+++ b/src/mame/includes/kc.h
@@ -154,6 +154,8 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER( kc );
void kc85_3(machine_config &config);
+ void kc85_3_io(address_map &map);
+ void kc85_3_mem(address_map &map);
};
@@ -187,6 +189,8 @@ public:
uint8_t * m_display_video_ram;
void kc85_4(machine_config &config);
void kc85_5(machine_config &config);
+ void kc85_4_io(address_map &map);
+ void kc85_4_mem(address_map &map);
};
#endif // MAME_INCLUDES_KC_H
diff --git a/src/mame/includes/kchamp.h b/src/mame/includes/kchamp.h
index 68068cf3edf..cc997ff2c54 100644
--- a/src/mame/includes/kchamp.h
+++ b/src/mame/includes/kchamp.h
@@ -83,4 +83,13 @@ public:
DECLARE_WRITE_LINE_MEMBER(msmint);
void kchamp(machine_config &config);
void kchampvs(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void kchamp_io_map(address_map &map);
+ void kchamp_map(address_map &map);
+ void kchamp_sound_io_map(address_map &map);
+ void kchamp_sound_map(address_map &map);
+ void kchampvs_io_map(address_map &map);
+ void kchampvs_map(address_map &map);
+ void kchampvs_sound_io_map(address_map &map);
+ void kchampvs_sound_map(address_map &map);
};
diff --git a/src/mame/includes/kickgoal.h b/src/mame/includes/kickgoal.h
index f79d616cfd3..f6b80690586 100644
--- a/src/mame/includes/kickgoal.h
+++ b/src/mame/includes/kickgoal.h
@@ -50,6 +50,8 @@ public:
void kickgoal(machine_config &config);
void actionhw(machine_config &config);
+ void kickgoal_program_map(address_map &map);
+ void oki_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/kim1.h b/src/mame/includes/kim1.h
index b7d912af783..75872556125 100644
--- a/src/mame/includes/kim1.h
+++ b/src/mame/includes/kim1.h
@@ -58,6 +58,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(kim1_update_leds);
void kim1(machine_config &config);
+ void kim1_map(address_map &map);
protected:
required_ioport m_row0;
required_ioport m_row1;
diff --git a/src/mame/includes/kingobox.h b/src/mame/includes/kingobox.h
index 2a943886212..78405ba8224 100644
--- a/src/mame/includes/kingobox.h
+++ b/src/mame/includes/kingobox.h
@@ -81,4 +81,13 @@ public:
required_device<generic_latch_8_device> m_soundlatch;
void kingofb(machine_config &config);
void ringking(machine_config &config);
+ void kingobox_map(address_map &map);
+ void kingobox_sound_io_map(address_map &map);
+ void kingobox_sound_map(address_map &map);
+ void kingobox_sprite_map(address_map &map);
+ void kingobox_video_map(address_map &map);
+ void ringking_map(address_map &map);
+ void ringking_sound_io_map(address_map &map);
+ void ringking_sprite_map(address_map &map);
+ void ringking_video_map(address_map &map);
};
diff --git a/src/mame/includes/klax.h b/src/mame/includes/klax.h
index 21099992074..a1682cc02a6 100644
--- a/src/mame/includes/klax.h
+++ b/src/mame/includes/klax.h
@@ -37,6 +37,9 @@ public:
void klax(machine_config &config);
void klax2bl(machine_config &config);
+ void bootleg_sound_map(address_map &map);
+ void klax2bl_map(address_map &map);
+ void klax_map(address_map &map);
private:
required_device<tilemap_device> m_playfield_tilemap;
required_device<atari_motion_objects_device> m_mob;
diff --git a/src/mame/includes/kncljoe.h b/src/mame/includes/kncljoe.h
index 75ca5931a02..4588df258a0 100644
--- a/src/mame/includes/kncljoe.h
+++ b/src/mame/includes/kncljoe.h
@@ -69,4 +69,7 @@ public:
INTERRUPT_GEN_MEMBER(sound_nmi);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void kncljoe(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/konamigx.h b/src/mame/includes/konamigx.h
index 36f41e041b8..c4840db60af 100644
--- a/src/mame/includes/konamigx.h
+++ b/src/mame/includes/konamigx.h
@@ -278,6 +278,13 @@ public:
void tbyahhoo(machine_config &config);
void gokuparo(machine_config &config);
void sexyparo(machine_config &config);
+ void gx_base_memmap(address_map &map);
+ void gx_type1_map(address_map &map);
+ void gx_type2_map(address_map &map);
+ void gx_type3_map(address_map &map);
+ void gx_type4_map(address_map &map);
+ void gxsndmap(address_map &map);
+ void gxtmsmap(address_map &map);
};
// Sprite Callbacks
diff --git a/src/mame/includes/kopunch.h b/src/mame/includes/kopunch.h
index 1847c0a4808..76cbcd84489 100644
--- a/src/mame/includes/kopunch.h
+++ b/src/mame/includes/kopunch.h
@@ -53,4 +53,6 @@ public:
virtual void machine_start() override;
virtual void video_start() override;
void kopunch(machine_config &config);
+ void kopunch_io_map(address_map &map);
+ void kopunch_map(address_map &map);
};
diff --git a/src/mame/includes/kramermc.h b/src/mame/includes/kramermc.h
index ced55708cf8..1c99f21b59a 100644
--- a/src/mame/includes/kramermc.h
+++ b/src/mame/includes/kramermc.h
@@ -32,6 +32,8 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void kramermc(machine_config &config);
+ void kramermc_io(address_map &map);
+ void kramermc_mem(address_map &map);
};
/*----------- defined in video/kramermc.c -----------*/
diff --git a/src/mame/includes/ksayakyu.h b/src/mame/includes/ksayakyu.h
index 85302eaf03b..5f6426ea31e 100644
--- a/src/mame/includes/ksayakyu.h
+++ b/src/mame/includes/ksayakyu.h
@@ -56,4 +56,6 @@ public:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
void ksayakyu(machine_config &config);
+ void maincpu_map(address_map &map);
+ void soundcpu_map(address_map &map);
};
diff --git a/src/mame/includes/kyocera.h b/src/mame/includes/kyocera.h
index ef2d1e2f6ea..b8fa9b0eea2 100644
--- a/src/mame/includes/kyocera.h
+++ b/src/mame/includes/kyocera.h
@@ -144,6 +144,9 @@ public:
DECLARE_READ_LINE_MEMBER(kc85_sid_r);
void kc85(machine_config &config);
void kc85_video(machine_config &config);
+ void kc85_io(address_map &map);
+ void kc85_mem(address_map &map);
+ void trsm100_io(address_map &map);
};
class trsm100_state : public kc85_state
@@ -187,6 +190,8 @@ public:
int m_iosel; /* serial interface select */
void pc8300(machine_config &config);
void pc8201(machine_config &config);
+ void pc8201_io(address_map &map);
+ void pc8201_mem(address_map &map);
};
class tandy200_state : public driver_device
@@ -260,6 +265,9 @@ public:
int m_centronics_select;
void tandy200(machine_config &config);
void tandy200_video(machine_config &config);
+ void tandy200_io(address_map &map);
+ void tandy200_lcdc(address_map &map);
+ void tandy200_mem(address_map &map);
};
#endif // MAME_INCLUDES_KYOCERA_H
diff --git a/src/mame/includes/kyugo.h b/src/mame/includes/kyugo.h
index b5f86b740e8..fb5705b690f 100644
--- a/src/mame/includes/kyugo.h
+++ b/src/mame/includes/kyugo.h
@@ -44,6 +44,18 @@ public:
void srdmissn(machine_config &config);
void legend(machine_config &config);
void gyrodine(machine_config &config);
+ void flashgala_sub_map(address_map &map);
+ void flashgala_sub_portmap(address_map &map);
+ void gyrodine_main_map(address_map &map);
+ void gyrodine_sub_map(address_map &map);
+ void gyrodine_sub_portmap(address_map &map);
+ void kyugo_main_map(address_map &map);
+ void kyugo_main_portmap(address_map &map);
+ void legend_sub_map(address_map &map);
+ void repulse_sub_map(address_map &map);
+ void repulse_sub_portmap(address_map &map);
+ void srdmissn_sub_map(address_map &map);
+ void srdmissn_sub_portmap(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/labyrunr.h b/src/mame/includes/labyrunr.h
index 2b194c1022a..b2002f4d946 100644
--- a/src/mame/includes/labyrunr.h
+++ b/src/mame/includes/labyrunr.h
@@ -57,4 +57,5 @@ public:
INTERRUPT_GEN_MEMBER(labyrunr_vblank_interrupt);
INTERRUPT_GEN_MEMBER(labyrunr_timer_interrupt);
void labyrunr(machine_config &config);
+ void labyrunr_map(address_map &map);
};
diff --git a/src/mame/includes/ladybug.h b/src/mame/includes/ladybug.h
index 5241de07460..274e8c860ab 100644
--- a/src/mame/includes/ladybug.h
+++ b/src/mame/includes/ladybug.h
@@ -74,4 +74,6 @@ public:
void dorodon(machine_config &config);
void ladybug(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void ladybug_map(address_map &map);
};
diff --git a/src/mame/includes/ladyfrog.h b/src/mame/includes/ladyfrog.h
index 59280c313ff..f5ac228b7ca 100644
--- a/src/mame/includes/ladyfrog.h
+++ b/src/mame/includes/ladyfrog.h
@@ -79,4 +79,6 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void toucheme(machine_config &config);
void ladyfrog(machine_config &config);
+ void ladyfrog_map(address_map &map);
+ void ladyfrog_sound_map(address_map &map);
};
diff --git a/src/mame/includes/laserbat.h b/src/mame/includes/laserbat.h
index ae7ed1e2eb1..6a00f708947 100644
--- a/src/mame/includes/laserbat.h
+++ b/src/mame/includes/laserbat.h
@@ -85,6 +85,8 @@ public:
uint32_t screen_update_laserbat(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void laserbat_base(machine_config &config);
+ void laserbat_io_map(address_map &map);
+ void laserbat_map(address_map &map);
protected:
enum { TIMER_SCANLINE };
diff --git a/src/mame/includes/lasso.h b/src/mame/includes/lasso.h
index a1b91a948f9..472808438c4 100644
--- a/src/mame/includes/lasso.h
+++ b/src/mame/includes/lasso.h
@@ -89,4 +89,14 @@ public:
void lasso(machine_config &config);
void chameleo(machine_config &config);
void pinbo(machine_config &config);
+ void chameleo_audio_map(address_map &map);
+ void chameleo_main_map(address_map &map);
+ void lasso_audio_map(address_map &map);
+ void lasso_coprocessor_map(address_map &map);
+ void lasso_main_map(address_map &map);
+ void pinbo_audio_io_map(address_map &map);
+ void pinbo_audio_map(address_map &map);
+ void pinbo_main_map(address_map &map);
+ void wwjgtin_audio_map(address_map &map);
+ void wwjgtin_main_map(address_map &map);
};
diff --git a/src/mame/includes/lastduel.h b/src/mame/includes/lastduel.h
index a9a821e1f13..c2a7be4ea7f 100644
--- a/src/mame/includes/lastduel.h
+++ b/src/mame/includes/lastduel.h
@@ -76,4 +76,8 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, int pri );
void lastduel(machine_config &config);
void madgear(machine_config &config);
+ void lastduel_map(address_map &map);
+ void madgear_map(address_map &map);
+ void madgear_sound_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/lazercmd.h b/src/mame/includes/lazercmd.h
index a067acaf6b7..fc0bb6715fb 100644
--- a/src/mame/includes/lazercmd.h
+++ b/src/mame/includes/lazercmd.h
@@ -80,4 +80,8 @@ public:
void bbonk(machine_config &config);
void medlanes(machine_config &config);
void lazercmd(machine_config &config);
+ void bbonk_map(address_map &map);
+ void lazercmd_map(address_map &map);
+ void lazercmd_portmap(address_map &map);
+ void medlanes_map(address_map &map);
};
diff --git a/src/mame/includes/lc80.h b/src/mame/includes/lc80.h
index 5f94501cfb5..3c9b126a342 100644
--- a/src/mame/includes/lc80.h
+++ b/src/mame/includes/lc80.h
@@ -65,6 +65,9 @@ public:
uint8_t m_segment;
void lc80_2(machine_config &config);
void lc80(machine_config &config);
+ void lc80_io(address_map &map);
+ void lc80_mem(address_map &map);
+ void sc80_mem(address_map &map);
};
#endif // MAME_INCLUDES_LC80_H
diff --git a/src/mame/includes/legionna.h b/src/mame/includes/legionna.h
index 8a85940df7c..b7be48e4281 100644
--- a/src/mame/includes/legionna.h
+++ b/src/mame/includes/legionna.h
@@ -7,7 +7,7 @@
#include "machine/seibucop/seibucop.h"
#include "video/seibu_crtc.h"
-class legionna_state : public driver_device
+class legionna_state : public driver_device, protected seibu_sound_common
{
public:
legionna_state(const machine_config &mconfig, device_type type, const char *tag)
@@ -23,6 +23,7 @@ public:
m_oki(*this, "oki"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
+ m_crtc(*this, "crtc"),
m_raiden2cop(*this, "raiden2cop")
{
memset(scrollvals, 0, sizeof(uint16_t)*6);
@@ -96,6 +97,7 @@ public:
required_device<okim6295_device> m_oki;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
+ required_device<seibu_crtc_device> m_crtc;
optional_device<raiden2cop_device> m_raiden2cop;
void cupsocs(machine_config &config);
void heatbrl(machine_config &config);
@@ -104,4 +106,12 @@ public:
void legionna(machine_config &config);
void godzilla(machine_config &config);
void denjinmk(machine_config &config);
+ void cupsoc_mem(address_map &map);
+ void cupsocs_mem(address_map &map);
+ void denjinmk_map(address_map &map);
+ void godzilla_map(address_map &map);
+ void grainbow_map(address_map &map);
+ void heatbrl_map(address_map &map);
+ void legionna_cop_mem(address_map &map);
+ void legionna_map(address_map &map);
};
diff --git a/src/mame/includes/leland.h b/src/mame/includes/leland.h
index 1291875cdb4..b75f30117be 100644
--- a/src/mame/includes/leland.h
+++ b/src/mame/includes/leland.h
@@ -216,6 +216,20 @@ public:
void wsf(machine_config &config);
void leland_video(machine_config &config);
void ataxx_video(machine_config &config);
+ void master_map_io(address_map &map);
+ void master_map_io_2(address_map &map);
+ void master_map_program(address_map &map);
+ void master_map_program_2(address_map &map);
+ void master_redline_map_io(address_map &map);
+ void slave_large_map_program(address_map &map);
+ void slave_map_io(address_map &map);
+ void slave_map_io_2(address_map &map);
+ void slave_map_program(address_map &map);
+ void slave_small_map_program(address_map &map);
+ void ataxx_80186_map_io(address_map &map);
+ void leland_80186_map_io(address_map &map);
+ void leland_80186_map_program(address_map &map);
+ void redline_80186_map_io(address_map &map);
};
diff --git a/src/mame/includes/lemmings.h b/src/mame/includes/lemmings.h
index 9b20e9ef779..e0cfab5b7b1 100644
--- a/src/mame/includes/lemmings.h
+++ b/src/mame/includes/lemmings.h
@@ -66,4 +66,6 @@ public:
DECLARE_READ16_MEMBER( lem_protection_region_0_146_r );
DECLARE_WRITE16_MEMBER( lem_protection_region_0_146_w );
void lemmings(machine_config &config);
+ void lemmings_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/lethal.h b/src/mame/includes/lethal.h
index 4e3fb71f2e9..a81466dd115 100644
--- a/src/mame/includes/lethal.h
+++ b/src/mame/includes/lethal.h
@@ -60,4 +60,7 @@ public:
K056832_CB_MEMBER(tile_callback);
void lethalej(machine_config &config);
void lethalen(machine_config &config);
+ void bank4000_map(address_map &map);
+ void le_main(address_map &map);
+ void le_sound(address_map &map);
};
diff --git a/src/mame/includes/lethalj.h b/src/mame/includes/lethalj.h
index 3bef08c5011..c74873d0eee 100644
--- a/src/mame/includes/lethalj.h
+++ b/src/mame/includes/lethalj.h
@@ -69,6 +69,7 @@ public:
void lethalj(machine_config &config);
void gameroom(machine_config &config);
+ void lethalj_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/liberate.h b/src/mame/includes/liberate.h
index bacb47bcf0d..bc17f65bd2b 100644
--- a/src/mame/includes/liberate.h
+++ b/src/mame/includes/liberate.h
@@ -92,4 +92,13 @@ public:
void boomrang(machine_config &config);
void prosoccr(machine_config &config);
void prosport(machine_config &config);
+ void deco16_io_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void liberatb_map(address_map &map);
+ void liberate_map(address_map &map);
+ void liberate_sound_map(address_map &map);
+ void prosoccr_io_map(address_map &map);
+ void prosoccr_map(address_map &map);
+ void prosoccr_sound_map(address_map &map);
+ void prosport_map(address_map &map);
};
diff --git a/src/mame/includes/liberatr.h b/src/mame/includes/liberatr.h
index 83cc312c0a5..ef6685bb0a7 100644
--- a/src/mame/includes/liberatr.h
+++ b/src/mame/includes/liberatr.h
@@ -54,6 +54,8 @@ public:
void liberat2(machine_config &config);
void liberatr(machine_config &config);
+ void liberat2_map(address_map &map);
+ void liberatr_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/lisa.h b/src/mame/includes/lisa.h
index 690f0ec582e..3545ef838e7 100644
--- a/src/mame/includes/lisa.h
+++ b/src/mame/includes/lisa.h
@@ -241,6 +241,9 @@ public:
void lisa(machine_config &config);
void lisa210(machine_config &config);
void macxl(machine_config &config);
+ void lisa210_fdc_map(address_map &map);
+ void lisa_fdc_map(address_map &map);
+ void lisa_map(address_map &map);
};
#endif // MAME_INCLUDES_LISA_H
diff --git a/src/mame/includes/lkage.h b/src/mame/includes/lkage.h
index dee1a2f454d..798b9f1424c 100644
--- a/src/mame/includes/lkage.h
+++ b/src/mame/includes/lkage.h
@@ -72,4 +72,9 @@ public:
void draw_sprites( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect );
void lkageb(machine_config &config);
void lkage(machine_config &config);
+ void lkage_io_map(address_map &map);
+ void lkage_map(address_map &map);
+ void lkage_map_boot(address_map &map);
+ void lkage_map_mcu(address_map &map);
+ void lkage_sound_map(address_map &map);
};
diff --git a/src/mame/includes/llc.h b/src/mame/includes/llc.h
index 3c89ee27ef8..400ccfe245a 100644
--- a/src/mame/includes/llc.h
+++ b/src/mame/includes/llc.h
@@ -53,6 +53,10 @@ public:
void llc1(machine_config &config);
void llc2(machine_config &config);
+ void llc1_io(address_map &map);
+ void llc1_mem(address_map &map);
+ void llc2_io(address_map &map);
+ void llc2_mem(address_map &map);
private:
bool m_rv;
uint8_t m_term_status;
diff --git a/src/mame/includes/lockon.h b/src/mame/includes/lockon.h
index 771bf2c903a..16f93ebcbf4 100644
--- a/src/mame/includes/lockon.h
+++ b/src/mame/includes/lockon.h
@@ -139,4 +139,9 @@ public:
void hud_draw( bitmap_ind16 &bitmap, const rectangle &cliprect );
DECLARE_WRITE_LINE_MEMBER(ym2203_irq);
void lockon(machine_config &config);
+ void ground_v30(address_map &map);
+ void main_v30(address_map &map);
+ void object_v30(address_map &map);
+ void sound_io(address_map &map);
+ void sound_prg(address_map &map);
};
diff --git a/src/mame/includes/lordgun.h b/src/mame/includes/lordgun.h
index b2138b02c9b..1159c2f1be2 100644
--- a/src/mame/includes/lordgun.h
+++ b/src/mame/includes/lordgun.h
@@ -108,6 +108,12 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void aliencha(machine_config &config);
void lordgun(machine_config &config);
+ void aliencha_map(address_map &map);
+ void aliencha_soundio_map(address_map &map);
+ void lordgun_map(address_map &map);
+ void lordgun_soundio_map(address_map &map);
+ void lordgun_soundmem_map(address_map &map);
+ void ymf278_map(address_map &map);
};
/*----------- defined in video/lordgun.c -----------*/
diff --git a/src/mame/includes/lsasquad.h b/src/mame/includes/lsasquad.h
index 0f28adaccc4..e7238b97012 100644
--- a/src/mame/includes/lsasquad.h
+++ b/src/mame/includes/lsasquad.h
@@ -60,4 +60,9 @@ public:
void lsasquad(machine_config &config);
void daikaiju(machine_config &config);
void storming(machine_config &config);
+ void daikaiju_map(address_map &map);
+ void daikaiju_sound_map(address_map &map);
+ void lsasquad_map(address_map &map);
+ void lsasquad_sound_map(address_map &map);
+ void storming_map(address_map &map);
};
diff --git a/src/mame/includes/lucky74.h b/src/mame/includes/lucky74.h
index b210f445c2a..478b1934be4 100644
--- a/src/mame/includes/lucky74.h
+++ b/src/mame/includes/lucky74.h
@@ -55,4 +55,6 @@ public:
required_device<msm5205_device> m_msm;
required_device<gfxdecode_device> m_gfxdecode;
void lucky74(machine_config &config);
+ void lucky74_map(address_map &map);
+ void lucky74_portmap(address_map &map);
};
diff --git a/src/mame/includes/lvcards.h b/src/mame/includes/lvcards.h
index c8e1127974d..088308af814 100644
--- a/src/mame/includes/lvcards.h
+++ b/src/mame/includes/lvcards.h
@@ -32,4 +32,8 @@ public:
void lvpoker(machine_config &config);
void lvcards(machine_config &config);
void ponttehk(machine_config &config);
+ void lvcards_io_map(address_map &map);
+ void lvcards_map(address_map &map);
+ void lvpoker_map(address_map &map);
+ void ponttehk_map(address_map &map);
};
diff --git a/src/mame/includes/lviv.h b/src/mame/includes/lviv.h
index 3da3144bb58..ce9c317c551 100644
--- a/src/mame/includes/lviv.h
+++ b/src/mame/includes/lviv.h
@@ -61,6 +61,8 @@ public:
DECLARE_SNAPSHOT_LOAD_MEMBER( lviv );
DECLARE_INPUT_CHANGED_MEMBER(lviv_reset);
void lviv(machine_config &config);
+ void io_map(address_map &map);
+ void lviv_mem(address_map &map);
};
/*----------- defined in video/lviv.c -----------*/
diff --git a/src/mame/includes/lwings.h b/src/mame/includes/lwings.h
index 35d36b91b37..a33b741bfd9 100644
--- a/src/mame/includes/lwings.h
+++ b/src/mame/includes/lwings.h
@@ -91,4 +91,14 @@ public:
void fball(machine_config &config);
void avengers(machine_config &config);
void avengersb(machine_config &config);
+ void avengers_adpcm_io_map(address_map &map);
+ void avengers_map(address_map &map);
+ void fball_map(address_map &map);
+ void fball_oki_map(address_map &map);
+ void fball_sound_map(address_map &map);
+ void lwings_map(address_map &map);
+ void lwings_sound_map(address_map &map);
+ void trojan_adpcm_io_map(address_map &map);
+ void trojan_adpcm_map(address_map &map);
+ void trojan_map(address_map &map);
};
diff --git a/src/mame/includes/lynx.h b/src/mame/includes/lynx.h
index 5b18d1345dd..6ed055e9406 100644
--- a/src/mame/includes/lynx.h
+++ b/src/mame/includes/lynx.h
@@ -185,6 +185,7 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER( lynx );
void lynx(machine_config &config);
+ void lynx_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/m10.h b/src/mame/includes/m10.h
index d8c6b851a10..39e611b860b 100644
--- a/src/mame/includes/m10.h
+++ b/src/mame/includes/m10.h
@@ -119,6 +119,9 @@ public:
void headoni(machine_config &config);
void m10(machine_config &config);
void m11(machine_config &config);
+ void m10_main(address_map &map);
+ void m11_main(address_map &map);
+ void m15_main(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/m107.h b/src/mame/includes/m107.h
index 48875f7b6c6..b492d1cf395 100644
--- a/src/mame/includes/m107.h
+++ b/src/mame/includes/m107.h
@@ -83,4 +83,10 @@ public:
void wpksoc(machine_config &config);
void firebarr(machine_config &config);
void dsoccr94(machine_config &config);
+ void dsoccr94_io_map(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void wpksoc_io_map(address_map &map);
+ void wpksoc_map(address_map &map);
};
diff --git a/src/mame/includes/m5.h b/src/mame/includes/m5.h
index 361a385fdbb..e81948da444 100644
--- a/src/mame/includes/m5.h
+++ b/src/mame/includes/m5.h
@@ -83,6 +83,10 @@ public:
void m5(machine_config &config);
void pal(machine_config &config);
void ntsc(machine_config &config);
+ void fd5_io(address_map &map);
+ void fd5_mem(address_map &map);
+ void m5_io(address_map &map);
+ void m5_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -154,6 +158,8 @@ public:
// DECLARE_DEVICE_IMAGE_LOAD_MEMBER(m5_cart);
void brno(machine_config &config);
+void brno_io(address_map &map);
+void m5_mem_brno(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/m52.h b/src/mame/includes/m52.h
index 0faac9d7893..be3ad3cd2a4 100644
--- a/src/mame/includes/m52.h
+++ b/src/mame/includes/m52.h
@@ -50,4 +50,7 @@ public:
required_device<palette_device> m_palette;
void m52(machine_config &config);
void alpha1v(machine_config &config);
+ void alpha1v_map(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
};
diff --git a/src/mame/includes/m57.h b/src/mame/includes/m57.h
index ff59eb9d50e..0e7a7e53ff6 100644
--- a/src/mame/includes/m57.h
+++ b/src/mame/includes/m57.h
@@ -32,4 +32,5 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void m57(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/m58.h b/src/mame/includes/m58.h
index 0af85807b9a..7ed90d32f52 100644
--- a/src/mame/includes/m58.h
+++ b/src/mame/includes/m58.h
@@ -57,4 +57,5 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_panel( bitmap_ind16 &bitmap, const rectangle &cliprect );
void yard(machine_config &config);
+ void yard_map(address_map &map);
};
diff --git a/src/mame/includes/m62.h b/src/mame/includes/m62.h
index 90a6d635c54..52619480b59 100644
--- a/src/mame/includes/m62.h
+++ b/src/mame/includes/m62.h
@@ -154,4 +154,23 @@ public:
void spelunkr(machine_config &config);
void ldrun(machine_config &config);
void kidniki(machine_config &config);
+ void battroad_io_map(address_map &map);
+ void battroad_map(address_map &map);
+ void horizon_map(address_map &map);
+ void kidniki_io_map(address_map &map);
+ void kidniki_map(address_map &map);
+ void kungfum_io_map(address_map &map);
+ void kungfum_map(address_map &map);
+ void ldrun2_io_map(address_map &map);
+ void ldrun2_map(address_map &map);
+ void ldrun3_io_map(address_map &map);
+ void ldrun3_map(address_map &map);
+ void ldrun4_io_map(address_map &map);
+ void ldrun4_map(address_map &map);
+ void ldrun_map(address_map &map);
+ void lotlot_map(address_map &map);
+ void spelunk2_map(address_map &map);
+ void spelunkr_map(address_map &map);
+ void youjyudn_io_map(address_map &map);
+ void youjyudn_map(address_map &map);
};
diff --git a/src/mame/includes/m72.h b/src/mame/includes/m72.h
index cbc13a275d1..767c270e144 100644
--- a/src/mame/includes/m72.h
+++ b/src/mame/includes/m72.h
@@ -212,4 +212,31 @@ public:
void rtype2(machine_config &config);
void m82(machine_config &config);
void rtype(machine_config &config);
+ void dbreed_map(address_map &map);
+ void dbreedm72_map(address_map &map);
+ void hharry_map(address_map &map);
+ void hharryu_map(address_map &map);
+ void kengo_map(address_map &map);
+ void m72_cpu1_common_map(address_map &map);
+ void m72_map(address_map &map);
+ void m72_portmap(address_map &map);
+ void m81_cpu1_common_map(address_map &map);
+ void m81_portmap(address_map &map);
+ void m82_map(address_map &map);
+ void m82_portmap(address_map &map);
+ void m84_cpu1_common_map(address_map &map);
+ void m84_portmap(address_map &map);
+ void m84_v33_portmap(address_map &map);
+ void mcu_io_map(address_map &map);
+ void poundfor_portmap(address_map &map);
+ void poundfor_sound_portmap(address_map &map);
+ void rtype2_map(address_map &map);
+ void rtype2_sound_portmap(address_map &map);
+ void rtype_map(address_map &map);
+ void rtype_sound_portmap(address_map &map);
+ void sound_portmap(address_map &map);
+ void sound_ram_map(address_map &map);
+ void sound_rom_map(address_map &map);
+ void xmultipl_map(address_map &map);
+ void xmultiplm72_map(address_map &map);
};
diff --git a/src/mame/includes/m79amb.h b/src/mame/includes/m79amb.h
index e902b15d389..7711378f838 100644
--- a/src/mame/includes/m79amb.h
+++ b/src/mame/includes/m79amb.h
@@ -32,6 +32,7 @@ public:
DECLARE_WRITE8_MEMBER(m79amb_8003_w);
required_device<cpu_device> m_maincpu;
void m79amb(machine_config &config);
+ void main_map(address_map &map);
};
/*----------- defined in audio/m79amb.c -----------*/
diff --git a/src/mame/includes/m90.h b/src/mame/includes/m90.h
index 81bf42ea1ea..c46a614ecef 100644
--- a/src/mame/includes/m90.h
+++ b/src/mame/includes/m90.h
@@ -80,4 +80,13 @@ public:
void dynablsb(machine_config &config);
void matchit2(machine_config &config);
void quizf1(machine_config &config);
+ void bomblord_main_cpu_map(address_map &map);
+ void dynablsb_main_cpu_io_map(address_map &map);
+ void dynablsb_main_cpu_map(address_map &map);
+ void dynablsb_sound_cpu_io_map(address_map &map);
+ void m90_main_cpu_io_map(address_map &map);
+ void m90_main_cpu_map(address_map &map);
+ void m90_sound_cpu_io_map(address_map &map);
+ void m90_sound_cpu_map(address_map &map);
+ void m99_sound_cpu_io_map(address_map &map);
};
diff --git a/src/mame/includes/m92.h b/src/mame/includes/m92.h
index 40ebf0508a1..ef0ddcbb406 100644
--- a/src/mame/includes/m92.h
+++ b/src/mame/includes/m92.h
@@ -122,6 +122,11 @@ public:
void gunforce(machine_config &config);
void majtitl2(machine_config &config);
void mysticri(machine_config &config);
+ void lethalth_map(address_map &map);
+ void m92_map(address_map &map);
+ void m92_portmap(address_map &map);
+ void ppan_portmap(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/mac.h b/src/mame/includes/mac.h
index 2bf40195ca0..46ce58989d3 100644
--- a/src/mame/includes/mac.h
+++ b/src/mame/includes/mac.h
@@ -417,6 +417,22 @@ public:
void macclas2(machine_config &config);
void macii(machine_config &config);
void maciihmu(machine_config &config);
+ void mac512ke_map(address_map &map);
+ void macii_map(address_map &map);
+ void maciici_map(address_map &map);
+ void maciifx_map(address_map &map);
+ void maclc3_map(address_map &map);
+ void maclc_map(address_map &map);
+ void macpb140_map(address_map &map);
+ void macpb160_map(address_map &map);
+ void macpb165c_map(address_map &map);
+ void macpd210_map(address_map &map);
+ void macplus_map(address_map &map);
+ void macprtb_map(address_map &map);
+ void macse30_map(address_map &map);
+ void macse_map(address_map &map);
+ void pwrmac_map(address_map &map);
+ void quadra700_map(address_map &map);
private:
int has_adb();
void adb_reset();
diff --git a/src/mame/includes/macpci.h b/src/mame/includes/macpci.h
index 8df9635d3eb..972b00f0b9c 100644
--- a/src/mame/includes/macpci.h
+++ b/src/mame/includes/macpci.h
@@ -140,6 +140,7 @@ public:
DECLARE_DRIVER_INIT(pippin);
void pippin(machine_config &config);
+ void pippin_mem(address_map &map);
private:
// wait states for accessing the VIA
int m_via_cycles;
diff --git a/src/mame/includes/macrossp.h b/src/mame/includes/macrossp.h
index dd68f517820..d1c58089c14 100644
--- a/src/mame/includes/macrossp.h
+++ b/src/mame/includes/macrossp.h
@@ -103,4 +103,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(irqhandler);
void quizmoon(machine_config &config);
void macrossp(machine_config &config);
+ void macrossp_map(address_map &map);
+ void macrossp_sound_map(address_map &map);
};
diff --git a/src/mame/includes/madalien.h b/src/mame/includes/madalien.h
index aca5d66308d..293b9b5f254 100644
--- a/src/mame/includes/madalien.h
+++ b/src/mame/includes/madalien.h
@@ -85,6 +85,8 @@ public:
required_device<generic_latch_8_device> m_soundlatch2;
void madalien(machine_config &config);
void madalien_video(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
/*----------- defined in audio/madalien.c -----------*/
diff --git a/src/mame/includes/magmax.h b/src/mame/includes/magmax.h
index 1636b84aae9..5ed8624ba17 100644
--- a/src/mame/includes/magmax.h
+++ b/src/mame/includes/magmax.h
@@ -52,4 +52,7 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void magmax(machine_config &config);
+ void magmax_map(address_map &map);
+ void magmax_sound_io_map(address_map &map);
+ void magmax_sound_map(address_map &map);
};
diff --git a/src/mame/includes/mainevt.h b/src/mame/includes/mainevt.h
index d7656bdb986..746379e6a09 100644
--- a/src/mame/includes/mainevt.h
+++ b/src/mame/includes/mainevt.h
@@ -65,4 +65,8 @@ public:
K051960_CB_MEMBER(dv_sprite_callback);
void devstors(machine_config &config);
void mainevt(machine_config &config);
+ void devstors_map(address_map &map);
+ void devstors_sound_map(address_map &map);
+ void mainevt_map(address_map &map);
+ void mainevt_sound_map(address_map &map);
};
diff --git a/src/mame/includes/mainsnk.h b/src/mame/includes/mainsnk.h
index 2774d1034d2..5ed8e64df6c 100644
--- a/src/mame/includes/mainsnk.h
+++ b/src/mame/includes/mainsnk.h
@@ -47,4 +47,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, int scrollx, int scrolly );
void mainsnk(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/malzak.h b/src/mame/includes/malzak.h
index 198e3ec4e29..8d2621c425b 100644
--- a/src/mame/includes/malzak.h
+++ b/src/mame/includes/malzak.h
@@ -57,4 +57,8 @@ public:
uint32_t screen_update_malzak(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void malzak(machine_config &config);
void malzak2(machine_config &config);
+ void malzak2_map(address_map &map);
+ void malzak_data_map(address_map &map);
+ void malzak_io_map(address_map &map);
+ void malzak_map(address_map &map);
};
diff --git a/src/mame/includes/mappy.h b/src/mame/includes/mappy.h
index a6adb536bb6..7e5dcb1e52a 100644
--- a/src/mame/includes/mappy.h
+++ b/src/mame/includes/mappy.h
@@ -92,6 +92,13 @@ public:
void superpac_common(machine_config &config);
void superpac(machine_config &config);
void todruaga(machine_config &config);
+ void mappy_cpu1_map(address_map &map);
+ void mappy_cpu2_map(address_map &map);
+ void phozon_cpu1_map(address_map &map);
+ void phozon_cpu2_map(address_map &map);
+ void phozon_cpu3_map(address_map &map);
+ void superpac_cpu1_map(address_map &map);
+ void superpac_cpu2_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/marineb.h b/src/mame/includes/marineb.h
index 5a64f9c7618..369b2ba6468 100644
--- a/src/mame/includes/marineb.h
+++ b/src/mame/includes/marineb.h
@@ -60,4 +60,7 @@ public:
void bcruzm12(machine_config &config);
void hoccer(machine_config &config);
void changes(machine_config &config);
+ void marineb_io_map(address_map &map);
+ void marineb_map(address_map &map);
+ void wanted_io_map(address_map &map);
};
diff --git a/src/mame/includes/mario.h b/src/mame/includes/mario.h
index 08d819b73ab..e506aa92f84 100644
--- a/src/mame/includes/mario.h
+++ b/src/mame/includes/mario.h
@@ -144,6 +144,12 @@ public:
void masao_audio(machine_config &config);
void mario(machine_config &config);
void mario_audio(machine_config &config);
+ void mario_io_map(address_map &map);
+ void mario_map(address_map &map);
+ void mario_sound_io_map(address_map &map);
+ void mario_sound_map(address_map &map);
+ void masao_map(address_map &map);
+ void masao_sound_map(address_map &map);
};
#endif // MAME_INCLUDES_MARIO_H
diff --git a/src/mame/includes/markham.h b/src/mame/includes/markham.h
index e8a24ecac9e..ca78dec440e 100644
--- a/src/mame/includes/markham.h
+++ b/src/mame/includes/markham.h
@@ -37,4 +37,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void markham(machine_config &config);
+ void markham_master_map(address_map &map);
+ void markham_slave_map(address_map &map);
};
diff --git a/src/mame/includes/matmania.h b/src/mame/includes/matmania.h
index 094f7091be4..d7c4d2fee1e 100644
--- a/src/mame/includes/matmania.h
+++ b/src/mame/includes/matmania.h
@@ -65,4 +65,8 @@ public:
uint32_t screen_update_maniach(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void matmania(machine_config &config);
void maniach(machine_config &config);
+ void maniach_map(address_map &map);
+ void maniach_sound_map(address_map &map);
+ void matmania_map(address_map &map);
+ void matmania_sound_map(address_map &map);
};
diff --git a/src/mame/includes/maygay1b.h b/src/mame/includes/maygay1b.h
index d9800286763..5671616ce97 100644
--- a/src/mame/includes/maygay1b.h
+++ b/src/mame/includes/maygay1b.h
@@ -151,4 +151,7 @@ public:
void maygay_m1(machine_config &config);
void maygay_m1_nec(machine_config &config);
void maygay_m1_empire(machine_config &config);
+ void m1_memmap(address_map &map);
+ void m1_nec_memmap(address_map &map);
+ void maygay_mcu_io(address_map &map);
};
diff --git a/src/mame/includes/mbc55x.h b/src/mame/includes/mbc55x.h
index 98412c6d6d6..71ce89f2955 100644
--- a/src/mame/includes/mbc55x.h
+++ b/src/mame/includes/mbc55x.h
@@ -160,6 +160,8 @@ public:
uint32_t m_debug_machine;
void mbc55x(machine_config &config);
+ void mbc55x_io(address_map &map);
+ void mbc55x_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/mbee.h b/src/mame/includes/mbee.h
index d2cf1c3f952..e95302af897 100644
--- a/src/mame/includes/mbee.h
+++ b/src/mame/includes/mbee.h
@@ -131,6 +131,21 @@ public:
void mbeeic(machine_config &config);
void mbeepc(machine_config &config);
void mbee128p(machine_config &config);
+ void mbee128_io(address_map &map);
+ void mbee256_io(address_map &map);
+ void mbee256_mem(address_map &map);
+ void mbee56_io(address_map &map);
+ void mbee56_mem(address_map &map);
+ void mbee_io(address_map &map);
+ void mbee_mem(address_map &map);
+ void mbeeic_io(address_map &map);
+ void mbeeic_mem(address_map &map);
+ void mbeepc_io(address_map &map);
+ void mbeepc_mem(address_map &map);
+ void mbeeppc_io(address_map &map);
+ void mbeeppc_mem(address_map &map);
+ void mbeett_io(address_map &map);
+ void mbeett_mem(address_map &map);
private:
uint8_t *m_p_videoram;
uint8_t *m_p_gfxram;
diff --git a/src/mame/includes/mc1502.h b/src/mame/includes/mc1502.h
index 9feb90e2fe6..b70cf0aa363 100644
--- a/src/mame/includes/mc1502.h
+++ b/src/mame/includes/mc1502.h
@@ -82,6 +82,8 @@ public:
DECLARE_WRITE8_MEMBER(mc1502_kppi_portc_w);
void mc1502(machine_config &config);
+ void mc1502_io(address_map &map);
+ void mc1502_map(address_map &map);
private:
int m_pit_out2;
};
diff --git a/src/mame/includes/mcatadv.h b/src/mame/includes/mcatadv.h
index d56031531aa..d243a287734 100644
--- a/src/mame/includes/mcatadv.h
+++ b/src/mame/includes/mcatadv.h
@@ -61,4 +61,9 @@ public:
void mcatadv_draw_tilemap_part( screen_device &screen, uint16_t* current_scroll, uint16_t* current_videoram1, int i, tilemap_t* current_tilemap, bitmap_ind16 &bitmap, const rectangle &cliprect );
void nost(machine_config &config);
void mcatadv(machine_config &config);
+ void mcatadv_map(address_map &map);
+ void mcatadv_sound_io_map(address_map &map);
+ void mcatadv_sound_map(address_map &map);
+ void nost_sound_io_map(address_map &map);
+ void nost_sound_map(address_map &map);
};
diff --git a/src/mame/includes/mcr.h b/src/mame/includes/mcr.h
index e450bd7b3d2..004550b98ea 100644
--- a/src/mame/includes/mcr.h
+++ b/src/mame/includes/mcr.h
@@ -84,6 +84,12 @@ public:
void mcr_90010_tt(machine_config &config);
void mcr_91475(machine_config &config);
void mcr_90010(machine_config &config);
+ void cpu_90009_map(address_map &map);
+ void cpu_90009_portmap(address_map &map);
+ void cpu_90010_map(address_map &map);
+ void cpu_90010_portmap(address_map &map);
+ void cpu_91490_map(address_map &map);
+ void cpu_91490_portmap(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -182,6 +188,8 @@ public:
DECLARE_DRIVER_INIT(nflfoot);
void mcr_91490_ipu(machine_config &config);
+ void ipu_91695_map(address_map &map);
+ void ipu_91695_portmap(address_map &map);
protected:
virtual void machine_start() override;
diff --git a/src/mame/includes/mcr3.h b/src/mame/includes/mcr3.h
index 6fc1d3f1aa2..524001ffa2e 100644
--- a/src/mame/includes/mcr3.h
+++ b/src/mame/includes/mcr3.h
@@ -70,6 +70,10 @@ public:
void mono_tcs(machine_config &config);
void mcrscroll(machine_config &config);
void mono_sg(machine_config &config);
+ void mcrmono_map(address_map &map);
+ void mcrmono_portmap(address_map &map);
+ void spyhunt_map(address_map &map);
+ void spyhunt_portmap(address_map &map);
protected:
virtual void video_start() override;
diff --git a/src/mame/includes/mcr68.h b/src/mame/includes/mcr68.h
index c30639e5a0d..ae9a74a43ca 100644
--- a/src/mame/includes/mcr68.h
+++ b/src/mame/includes/mcr68.h
@@ -91,6 +91,9 @@ public:
void trisport(machine_config &config);
void pigskin(machine_config &config);
void archrivl(machine_config &config);
+ void mcr68_map(address_map &map);
+ void pigskin_map(address_map &map);
+ void trisport_map(address_map &map);
private:
required_device<ptm6840_device> m_ptm;
};
diff --git a/src/mame/includes/meadows.h b/src/mame/includes/meadows.h
index 8a421ab94b9..7d8ebe167df 100644
--- a/src/mame/includes/meadows.h
+++ b/src/mame/includes/meadows.h
@@ -74,4 +74,9 @@ public:
void bowl3d(machine_config &config);
void meadows(machine_config &config);
void minferno(machine_config &config);
+ void audio_map(address_map &map);
+ void bowl3d_main_map(address_map &map);
+ void meadows_main_map(address_map &map);
+ void minferno_data_map(address_map &map);
+ void minferno_main_map(address_map &map);
};
diff --git a/src/mame/includes/megadriv.h b/src/mame/includes/megadriv.h
index e189ed69d13..b224d79e99c 100644
--- a/src/mame/includes/megadriv.h
+++ b/src/mame/includes/megadriv.h
@@ -136,6 +136,10 @@ public:
void md_pal(machine_config &config);
void md_bootleg(machine_config &config);
void dcat16_megadriv_base(machine_config &config);
+ void dcat16_megadriv_map(address_map &map);
+ void megadriv_map(address_map &map);
+ void megadriv_z80_io_map(address_map &map);
+ void megadriv_z80_map(address_map &map);
};
class md_cons_state : public md_base_state
diff --git a/src/mame/includes/megadriv_acbl.h b/src/mame/includes/megadriv_acbl.h
index 709bce45f75..1899bde4bf6 100644
--- a/src/mame/includes/megadriv_acbl.h
+++ b/src/mame/includes/megadriv_acbl.h
@@ -37,6 +37,10 @@ public:
void jzth(machine_config &config);
void puckpkmna(machine_config &config);
+ void jzth_map(address_map &map);
+ void md_bootleg_map(address_map &map);
+ void puckpkmn_map(address_map &map);
+ void puckpkmna_map(address_map &map);
private:
// bootleg specific
int m_aladmdb_mcu_port;
diff --git a/src/mame/includes/megadriv_rad.h b/src/mame/includes/megadriv_rad.h
index c9d92839f39..6e75ebf936e 100644
--- a/src/mame/includes/megadriv_rad.h
+++ b/src/mame/includes/megadriv_rad.h
@@ -26,6 +26,7 @@ public:
void megadriv_radica_3button_ntsc(machine_config &config);
void megadriv_radica_3button_pal(machine_config &config);
+ void megadriv_radica_map(address_map &map);
private:
int m_bank;
required_region_ptr<uint16_t> m_rom;
diff --git a/src/mame/includes/megasys1.h b/src/mame/includes/megasys1.h
index 670c0aafd77..9c2a80c291d 100644
--- a/src/mame/includes/megasys1.h
+++ b/src/mame/includes/megasys1.h
@@ -184,4 +184,17 @@ public:
void system_B(machine_config &config);
void system_B_hayaosi1(machine_config &config);
void system_Z(machine_config &config);
+ void kickoffb_sound_map(address_map &map);
+ void megasys1A_map(address_map &map);
+ void megasys1A_sound_map(address_map &map);
+ void megasys1B_edfbl_map(address_map &map);
+ void megasys1B_map(address_map &map);
+ void megasys1B_monkelf_map(address_map &map);
+ void megasys1B_sound_map(address_map &map);
+ void megasys1C_map(address_map &map);
+ void megasys1D_map(address_map &map);
+ void megasys1D_oki_map(address_map &map);
+ void megasys1Z_map(address_map &map);
+ void z80_sound_io_map(address_map &map);
+ void z80_sound_map(address_map &map);
};
diff --git a/src/mame/includes/megazone.h b/src/mame/includes/megazone.h
index 65c4334ab73..3cf43569696 100644
--- a/src/mame/includes/megazone.h
+++ b/src/mame/includes/megazone.h
@@ -63,4 +63,9 @@ public:
uint32_t screen_update_megazone(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(vblank_irq);
void megazone(machine_config &config);
+ void megazone_i8039_io_map(address_map &map);
+ void megazone_i8039_map(address_map &map);
+ void megazone_map(address_map &map);
+ void megazone_sound_io_map(address_map &map);
+ void megazone_sound_map(address_map &map);
};
diff --git a/src/mame/includes/mermaid.h b/src/mame/includes/mermaid.h
index 2b5fe569d79..eab06c75f6e 100644
--- a/src/mame/includes/mermaid.h
+++ b/src/mame/includes/mermaid.h
@@ -104,4 +104,5 @@ public:
DECLARE_WRITE_LINE_MEMBER(rougien_adpcm_int);
void rougien(machine_config &config);
void mermaid(machine_config &config);
+ void mermaid_map(address_map &map);
};
diff --git a/src/mame/includes/metalmx.h b/src/mame/includes/metalmx.h
index 8ceb16e8d51..f9725703eca 100644
--- a/src/mame/includes/metalmx.h
+++ b/src/mame/includes/metalmx.h
@@ -57,4 +57,10 @@ public:
virtual void video_start() override;
uint32_t screen_update_metalmx(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void metalmx(machine_config &config);
+ void adsp_data_map(address_map &map);
+ void adsp_program_map(address_map &map);
+ void dsp32c_1_map(address_map &map);
+ void dsp32c_2_map(address_map &map);
+ void gsp_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/metlclsh.h b/src/mame/includes/metlclsh.h
index 26f31944ab9..0abfe421d80 100644
--- a/src/mame/includes/metlclsh.h
+++ b/src/mame/includes/metlclsh.h
@@ -59,4 +59,6 @@ public:
uint32_t screen_update_metlclsh(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void metlclsh(machine_config &config);
+ void metlclsh_master_map(address_map &map);
+ void metlclsh_slave_map(address_map &map);
};
diff --git a/src/mame/includes/metro.h b/src/mame/includes/metro.h
index d3fcd89173a..87c8faadd61 100644
--- a/src/mame/includes/metro.h
+++ b/src/mame/includes/metro.h
@@ -144,6 +144,36 @@ public:
void lastforg(machine_config &config);
void bangball(machine_config &config);
void dharma(machine_config &config);
+ void balcube_map(address_map &map);
+ void bangball_map(address_map &map);
+ void batlbubl_map(address_map &map);
+ void blzntrnd_map(address_map &map);
+ void blzntrnd_sound_io_map(address_map &map);
+ void blzntrnd_sound_map(address_map &map);
+ void daitoa_map(address_map &map);
+ void daitorid_map(address_map &map);
+ void dharma_map(address_map &map);
+ void dokyusei_map(address_map &map);
+ void dokyusp_map(address_map &map);
+ void gakusai2_map(address_map &map);
+ void gakusai_map(address_map &map);
+ void karatour_map(address_map &map);
+ void kokushi_map(address_map &map);
+ void lastforg_map(address_map &map);
+ void lastfort_map(address_map &map);
+ void metro_sound_map(address_map &map);
+ void mouja_map(address_map &map);
+ void mouja_okimap(address_map &map);
+ void msgogo_map(address_map &map);
+ void pangpoms_map(address_map &map);
+ void poitto_map(address_map &map);
+ void pururun_map(address_map &map);
+ void puzzlet_io_map(address_map &map);
+ void puzzlet_map(address_map &map);
+ void skyalert_map(address_map &map);
+ void toride2g_map(address_map &map);
+ void vmetal_map(address_map &map);
+ void ymf278_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/mexico86.h b/src/mame/includes/mexico86.h
index 058531f3dad..d8141e554d8 100644
--- a/src/mame/includes/mexico86.h
+++ b/src/mame/includes/mexico86.h
@@ -72,4 +72,7 @@ public:
void knightb(machine_config &config);
void mexico86(machine_config &config);
void kikikai(machine_config &config);
+ void mexico86_map(address_map &map);
+ void mexico86_sound_map(address_map &map);
+ void mexico86_sub_cpu_map(address_map &map);
};
diff --git a/src/mame/includes/mhavoc.h b/src/mame/includes/mhavoc.h
index 559e35db7f0..537278fdb6d 100644
--- a/src/mame/includes/mhavoc.h
+++ b/src/mame/includes/mhavoc.h
@@ -77,4 +77,7 @@ public:
void alphaone(machine_config &config);
void mhavoc(machine_config &config);
void mhavocrv(machine_config &config);
+ void alpha_map(address_map &map);
+ void alphaone_map(address_map &map);
+ void gamma_map(address_map &map);
};
diff --git a/src/mame/includes/micro3d.h b/src/mame/includes/micro3d.h
index ddf654410d7..c638f65c657 100644
--- a/src/mame/includes/micro3d.h
+++ b/src/mame/includes/micro3d.h
@@ -185,6 +185,12 @@ public:
void micro3d(machine_config &config);
void botss11(machine_config &config);
+ void drmath_data(address_map &map);
+ void drmath_prg(address_map &map);
+ void hostmem(address_map &map);
+ void soundmem_io(address_map &map);
+ void soundmem_prg(address_map &map);
+ void vgbmem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/micronic.h b/src/mame/includes/micronic.h
index 5704a55e065..19249f0adc8 100644
--- a/src/mame/includes/micronic.h
+++ b/src/mame/includes/micronic.h
@@ -83,6 +83,8 @@ public:
DECLARE_PALETTE_INIT(micronic);
void micronic(machine_config &config);
+ void micronic_io(address_map &map);
+ void micronic_mem(address_map &map);
protected:
required_memory_bank m_bank1;
required_ioport m_bit0;
diff --git a/src/mame/includes/microtan.h b/src/mame/includes/microtan.h
index 81e27dc9ce2..f595adc9676 100644
--- a/src/mame/includes/microtan.h
+++ b/src/mame/includes/microtan.h
@@ -97,6 +97,7 @@ public:
DECLARE_QUICKLOAD_LOAD_MEMBER( microtan );
void microtan(machine_config &config);
+ void microtan_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/midtunit.h b/src/mame/includes/midtunit.h
index 87e2c037780..282eedfbb9a 100644
--- a/src/mame/includes/midtunit.h
+++ b/src/mame/includes/midtunit.h
@@ -118,6 +118,7 @@ public:
void tunit_core(machine_config &config);
void tunit_adpcm(machine_config &config);
void tunit_dcs(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/midvunit.h b/src/mame/includes/midvunit.h
index 1746528a372..bc35e2f9091 100644
--- a/src/mame/includes/midvunit.h
+++ b/src/mame/includes/midvunit.h
@@ -172,6 +172,8 @@ public:
void midvplus(machine_config &config);
void offroadc(machine_config &config);
void midvunit(machine_config &config);
+ void midvplus_map(address_map &map);
+ void midvunit_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/midwunit.h b/src/mame/includes/midwunit.h
index 98e32488df6..f0a4fe0bddb 100644
--- a/src/mame/includes/midwunit.h
+++ b/src/mame/includes/midwunit.h
@@ -65,4 +65,5 @@ public:
void wunit(machine_config &config);
void wunit_picemu(machine_config &config);
void wunit_picsim(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/midxunit.h b/src/mame/includes/midxunit.h
index f4caf60bbc6..f9081e3f4dc 100644
--- a/src/mame/includes/midxunit.h
+++ b/src/mame/includes/midxunit.h
@@ -38,6 +38,7 @@ public:
TMS340X0_SCANLINE_IND16_CB_MEMBER(scanline_update);
void midxunit(machine_config &config);
+ void main_map(address_map &map);
private:
required_shared_ptr<uint16_t> m_nvram;
required_device<midway_serial_pic_device> m_midway_serial_pic;
diff --git a/src/mame/includes/midyunit.h b/src/mame/includes/midyunit.h
index c2f012b6401..15c1a425ee4 100644
--- a/src/mame/includes/midyunit.h
+++ b/src/mame/includes/midyunit.h
@@ -158,6 +158,8 @@ public:
void yunit_core(machine_config &config);
void zunit(machine_config &config);
void yunit_adpcm_6bit_faster(machine_config &config);
+ void main_map(address_map &map);
+ void yawdim_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
void dma_draw(uint16_t command);
diff --git a/src/mame/includes/midzeus.h b/src/mame/includes/midzeus.h
index f262f5327a3..4411e30f0a9 100644
--- a/src/mame/includes/midzeus.h
+++ b/src/mame/includes/midzeus.h
@@ -76,9 +76,9 @@ public:
TIMER_CALLBACK_MEMBER(display_irq_off);
TIMER_CALLBACK_MEMBER(invasn_gun_callback);
void midzeus(machine_config &config);
- void midzeus2(machine_config &config);
void invasn(machine_config &config);
void mk4(machine_config &config);
+ void zeus_map(address_map &map);
private:
void exit_handler();
void zeus_pointer_w(uint32_t which, uint32_t data, bool logit);
diff --git a/src/mame/includes/mikie.h b/src/mame/includes/mikie.h
index 0e511f311f3..e14ac4b0791 100644
--- a/src/mame/includes/mikie.h
+++ b/src/mame/includes/mikie.h
@@ -53,4 +53,6 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void mikie(machine_config &config);
+ void mikie_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/mikro80.h b/src/mame/includes/mikro80.h
index 81e2dfbb87c..943be373112 100644
--- a/src/mame/includes/mikro80.h
+++ b/src/mame/includes/mikro80.h
@@ -64,6 +64,10 @@ public:
void kristall(machine_config &config);
void radio99(machine_config &config);
void mikro80(machine_config &config);
+ void kristall_io(address_map &map);
+ void mikro80_io(address_map &map);
+ void mikro80_mem(address_map &map);
+ void radio99_io(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
required_device<i8255_device> m_ppi8255;
diff --git a/src/mame/includes/mikromik.h b/src/mame/includes/mikromik.h
index 5bdbef22bc2..618b53eee93 100644
--- a/src/mame/includes/mikromik.h
+++ b/src/mame/includes/mikromik.h
@@ -130,6 +130,8 @@ public:
void mm1m6(machine_config &config);
void mm1m6_video(machine_config &config);
void mm1m7(machine_config &config);
+ void mm1_map(address_map &map);
+ void mm1_upd7220_map(address_map &map);
};
#endif
diff --git a/src/mame/includes/mitchell.h b/src/mame/includes/mitchell.h
index 904112808a5..f677d11e08c 100644
--- a/src/mame/includes/mitchell.h
+++ b/src/mame/includes/mitchell.h
@@ -141,4 +141,14 @@ public:
void pangba(machine_config &config);
void pangnv(machine_config &config);
void spangbl(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void mgakuen_map(address_map &map);
+ void mitchell_io_map(address_map &map);
+ void mitchell_map(address_map &map);
+ void mstworld_io_map(address_map &map);
+ void mstworld_sound_map(address_map &map);
+ void pangba_sound_map(address_map &map);
+ void spangbl_io_map(address_map &map);
+ void spangbl_map(address_map &map);
+ void spangbl_sound_map(address_map &map);
};
diff --git a/src/mame/includes/mjkjidai.h b/src/mame/includes/mjkjidai.h
index 2165b582f90..51fed63d2d5 100644
--- a/src/mame/includes/mjkjidai.h
+++ b/src/mame/includes/mjkjidai.h
@@ -50,4 +50,6 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect);
void mjkjidai(machine_config &config);
+ void mjkjidai_io_map(address_map &map);
+ void mjkjidai_map(address_map &map);
};
diff --git a/src/mame/includes/model1.h b/src/mame/includes/model1.h
index a9a7bb4e2b3..3f2080b4769 100644
--- a/src/mame/includes/model1.h
+++ b/src/mame/includes/model1.h
@@ -186,6 +186,12 @@ public:
void swa(machine_config &config);
void netmerc(machine_config &config);
void model1_vr(machine_config &config);
+ void model1_io(address_map &map);
+ void model1_mem(address_map &map);
+ void model1_vr_io(address_map &map);
+ void model1_vr_mem(address_map &map);
+ void model1_vr_tgp_map(address_map &map);
+ void polhemus_map(address_map &map);
private:
// Machine
void irq_raise(int level);
@@ -492,6 +498,4 @@ private:
/*----------- defined in machine/model1.c -----------*/
-ADDRESS_MAP_EXTERN( model1_vr_tgp_map, 32 );
-
#endif // MAME_INCLUDES_MODEL1_H
diff --git a/src/mame/includes/model2.h b/src/mame/includes/model2.h
index a61cf4cea5b..11a01065c22 100644
--- a/src/mame/includes/model2.h
+++ b/src/mame/includes/model2.h
@@ -273,6 +273,20 @@ public:
void sj25_0207_01(machine_config &config);
void srallyc(machine_config &config);
void stcc(machine_config &config);
+ void copro_sharc_map(address_map &map);
+ void copro_tgp_map(address_map &map);
+ void copro_tgpx4_map(address_map &map);
+ void drive_io_map(address_map &map);
+ void drive_map(address_map &map);
+ void geo_sharc_map(address_map &map);
+ void model2_base_mem(address_map &map);
+ void model2_snd(address_map &map);
+ void model2a_crx_mem(address_map &map);
+ void model2b_crx_mem(address_map &map);
+ void model2c_crx_mem(address_map &map);
+ void model2o_mem(address_map &map);
+ void rchase2_iocpu_map(address_map &map);
+ void rchase2_ioport_map(address_map &map);
};
diff --git a/src/mame/includes/model3.h b/src/mame/includes/model3.h
index 9b4dec36ec7..182083e50f2 100644
--- a/src/mame/includes/model3.h
+++ b/src/mame/includes/model3.h
@@ -347,4 +347,7 @@ public:
void model3_20(machine_config &config);
void model3_21(machine_config &config);
void scud(machine_config &config);
+ void model3_10_mem(address_map &map);
+ void model3_mem(address_map &map);
+ void model3_snd(address_map &map);
};
diff --git a/src/mame/includes/momoko.h b/src/mame/includes/momoko.h
index 4ba77d4de0b..53ef7baafd3 100644
--- a/src/mame/includes/momoko.h
+++ b/src/mame/includes/momoko.h
@@ -55,4 +55,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void momoko(machine_config &config);
+ void momoko_map(address_map &map);
+ void momoko_sound_map(address_map &map);
};
diff --git a/src/mame/includes/moo.h b/src/mame/includes/moo.h
index e1769868bd4..541e4c197d3 100644
--- a/src/mame/includes/moo.h
+++ b/src/mame/includes/moo.h
@@ -87,4 +87,8 @@ public:
void bucky(machine_config &config);
void moo(machine_config &config);
void moobl(machine_config &config);
+ void bucky_map(address_map &map);
+ void moo_map(address_map &map);
+ void moobl_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/mosaic.h b/src/mame/includes/mosaic.h
index 62ee23377fd..7649d323508 100644
--- a/src/mame/includes/mosaic.h
+++ b/src/mame/includes/mosaic.h
@@ -48,4 +48,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void mosaic(machine_config &config);
void gfire2(machine_config &config);
+ void gfire2_io_map(address_map &map);
+ void gfire2_map(address_map &map);
+ void mosaic_io_map(address_map &map);
+ void mosaic_map(address_map &map);
};
diff --git a/src/mame/includes/mouser.h b/src/mame/includes/mouser.h
index c252ab45a0e..21e3407d6d6 100644
--- a/src/mame/includes/mouser.h
+++ b/src/mame/includes/mouser.h
@@ -50,4 +50,8 @@ public:
INTERRUPT_GEN_MEMBER(mouser_nmi_interrupt);
INTERRUPT_GEN_MEMBER(mouser_sound_nmi_assert);
void mouser(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void mouser_map(address_map &map);
+ void mouser_sound_io_map(address_map &map);
+ void mouser_sound_map(address_map &map);
};
diff --git a/src/mame/includes/mpf1.h b/src/mame/includes/mpf1.h
index 732bae5ba47..4d4cd50efb6 100644
--- a/src/mame/includes/mpf1.h
+++ b/src/mame/includes/mpf1.h
@@ -78,6 +78,13 @@ public:
void mpf1p(machine_config &config);
void mpf1b(machine_config &config);
void mpf1(machine_config &config);
+ void mpf1_io_map(address_map &map);
+ void mpf1_map(address_map &map);
+ void mpf1_step(address_map &map);
+ void mpf1b_io_map(address_map &map);
+ void mpf1b_map(address_map &map);
+ void mpf1p_io_map(address_map &map);
+ void mpf1p_map(address_map &map);
};
#endif // MAME_INCLUDES_MPF1_H
diff --git a/src/mame/includes/mpu4.h b/src/mame/includes/mpu4.h
index 412132c9b41..63c4818a65b 100644
--- a/src/mame/includes/mpu4.h
+++ b/src/mame/includes/mpu4.h
@@ -296,6 +296,8 @@ public:
void mpu4_bwb_7reel(machine_config &config);
void mpu4base(machine_config &config);
+ void mpu4_6809_map(address_map &map);
+ void mpu4_memmap(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/mpz80.h b/src/mame/includes/mpz80.h
index 3e14b77513b..07a85e137e5 100644
--- a/src/mame/includes/mpz80.h
+++ b/src/mame/includes/mpz80.h
@@ -93,6 +93,8 @@ public:
int m_trap_aux;
DECLARE_DRIVER_INIT(mpz80);
void mpz80(machine_config &config);
+ void mpz80_io(address_map &map);
+ void mpz80_mem(address_map &map);
};
#endif // MAME_INCLUDES_MPZ80_H
diff --git a/src/mame/includes/mrdo.h b/src/mame/includes/mrdo.h
index 137262b52d1..fc25e209dbc 100644
--- a/src/mame/includes/mrdo.h
+++ b/src/mame/includes/mrdo.h
@@ -44,4 +44,5 @@ public:
required_device<palette_device> m_palette;
void mrlo(machine_config &config);
void mrdo(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/mrflea.h b/src/mame/includes/mrflea.h
index 176553f259a..c036b80d997 100644
--- a/src/mame/includes/mrflea.h
+++ b/src/mame/includes/mrflea.h
@@ -50,4 +50,8 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_background( bitmap_ind16 &bitmap, const rectangle &cliprect );
void mrflea(machine_config &config);
+ void mrflea_master_io_map(address_map &map);
+ void mrflea_master_map(address_map &map);
+ void mrflea_slave_io_map(address_map &map);
+ void mrflea_slave_map(address_map &map);
};
diff --git a/src/mame/includes/mrjong.h b/src/mame/includes/mrjong.h
index 3297fd8e791..6d1e8fb5557 100644
--- a/src/mame/includes/mrjong.h
+++ b/src/mame/includes/mrjong.h
@@ -36,4 +36,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void mrjong(machine_config &config);
+ void mrjong_io_map(address_map &map);
+ void mrjong_map(address_map &map);
};
diff --git a/src/mame/includes/ms32.h b/src/mame/includes/ms32.h
index 5238a24e7bf..bcba83e5184 100644
--- a/src/mame/includes/ms32.h
+++ b/src/mame/includes/ms32.h
@@ -125,5 +125,8 @@ public:
required_device<palette_device> m_palette;
void ms32(machine_config &config);
void f1superb(machine_config &config);
+ void f1superb_map(address_map &map);
+ void ms32_map(address_map &map);
+ void ms32_sound_map(address_map &map);
optional_device<generic_latch_8_device> m_soundlatch; //not for bnstars.cpp
};
diff --git a/src/mame/includes/msisaac.h b/src/mame/includes/msisaac.h
index 603ab2ed92c..4e04ef7f87a 100644
--- a/src/mame/includes/msisaac.h
+++ b/src/mame/includes/msisaac.h
@@ -95,4 +95,6 @@ public:
TIMER_CALLBACK_MEMBER(nmi_callback);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void msisaac(machine_config &config);
+ void msisaac_map(address_map &map);
+ void msisaac_sound_map(address_map &map);
};
diff --git a/src/mame/includes/msx.h b/src/mame/includes/msx.h
index 696e506e5a8..57110c2957b 100644
--- a/src/mame/includes/msx.h
+++ b/src/mame/includes/msx.h
@@ -477,6 +477,10 @@ public:
void msx_2_35_dd_drive(machine_config &config);
void msx_ym2413(machine_config &config);
void msx2_64kb_vram(machine_config &config);
+ void msx2_io_map(address_map &map);
+ void msx2p_io_map(address_map &map);
+ void msx_io_map(address_map &map);
+ void msx_memory_map(address_map &map);
private:
required_device<z80_device> m_maincpu;
optional_device<v9938_device> m_v9938;
diff --git a/src/mame/includes/mtx.h b/src/mame/includes/mtx.h
index 1e233838cd8..46538172426 100644
--- a/src/mame/includes/mtx.h
+++ b/src/mame/includes/mtx.h
@@ -108,6 +108,9 @@ public:
void rs128(machine_config &config);
void mtx500(machine_config &config);
void mtx512(machine_config &config);
+ void mtx_io(address_map &map);
+ void mtx_mem(address_map &map);
+ void rs128_io(address_map &map);
};
#endif // MAME_INCLUDES_MTX_H
diff --git a/src/mame/includes/mugsmash.h b/src/mame/includes/mugsmash.h
index 5446b2182dc..48d2b281006 100644
--- a/src/mame/includes/mugsmash.h
+++ b/src/mame/includes/mugsmash.h
@@ -45,4 +45,6 @@ public:
uint32_t screen_update_mugsmash(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void mugsmash(machine_config &config);
+ void mugsmash_map(address_map &map);
+ void mugsmash_sound_map(address_map &map);
};
diff --git a/src/mame/includes/multfish.h b/src/mame/includes/multfish.h
index 2b6bfecacdd..eef7528819c 100644
--- a/src/mame/includes/multfish.h
+++ b/src/mame/includes/multfish.h
@@ -93,6 +93,9 @@ public:
required_device<ticket_dispenser_device> m_hopper;
void rollfr(machine_config &config);
void igrosoft_gamble(machine_config &config);
+ void igrosoft_gamble_map(address_map &map);
+ void igrosoft_gamble_portmap(address_map &map);
+ void rollfr_portmap(address_map &map);
};
diff --git a/src/mame/includes/munchmo.h b/src/mame/includes/munchmo.h
index de031e234b3..349a3b1253c 100644
--- a/src/mame/includes/munchmo.h
+++ b/src/mame/includes/munchmo.h
@@ -7,6 +7,7 @@
*************************************************************************/
#include "machine/gen_latch.h"
+#include "machine/74259.h"
class munchmo_state : public driver_device
{
@@ -21,6 +22,7 @@ public:
m_vreg(*this, "vreg"),
m_maincpu(*this, "maincpu"),
m_audiocpu(*this, "audiocpu"),
+ m_mainlatch(*this, "mainlatch"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
m_soundlatch(*this, "soundlatch") { }
@@ -44,6 +46,7 @@ public:
/* devices */
required_device<cpu_device> m_maincpu;
required_device<cpu_device> m_audiocpu;
+ required_device<ls259_device> m_mainlatch;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
@@ -66,4 +69,6 @@ public:
void draw_background( bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void mnchmobl(machine_config &config);
+ void mnchmobl_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/mustache.h b/src/mame/includes/mustache.h
index f9aa5cdf368..bb4b24b14f9 100644
--- a/src/mame/includes/mustache.h
+++ b/src/mame/includes/mustache.h
@@ -45,4 +45,6 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(scanline);
void mustache(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void memmap(address_map &map);
};
diff --git a/src/mame/includes/mw8080bw.h b/src/mame/includes/mw8080bw.h
index 6738f13882b..75026d596c5 100644
--- a/src/mame/includes/mw8080bw.h
+++ b/src/mame/includes/mw8080bw.h
@@ -252,6 +252,28 @@ public:
void tornbase_audio(machine_config &config);
void zzzap(machine_config &config);
void zzzap_audio(machine_config &config);
+ void blueshrk_io_map(address_map &map);
+ void boothill_io_map(address_map &map);
+ void bowler_io_map(address_map &map);
+ void checkmat_io_map(address_map &map);
+ void clowns_io_map(address_map &map);
+ void desertgu_io_map(address_map &map);
+ void dogpatch_io_map(address_map &map);
+ void dplay_io_map(address_map &map);
+ void gmissile_io_map(address_map &map);
+ void gunfight_io_map(address_map &map);
+ void invad2ct_io_map(address_map &map);
+ void invaders_io_map(address_map &map);
+ void m4_io_map(address_map &map);
+ void main_map(address_map &map);
+ void maze_io_map(address_map &map);
+ void phantom2_io_map(address_map &map);
+ void seawolf_io_map(address_map &map);
+ void shuffle_io_map(address_map &map);
+ void spacwalk_io_map(address_map &map);
+ void spcenctr_io_map(address_map &map);
+ void tornbase_io_map(address_map &map);
+ void zzzap_io_map(address_map &map);
};
diff --git a/src/mame/includes/mystston.h b/src/mame/includes/mystston.h
index 024adacc6ba..7dfd1fdad46 100644
--- a/src/mame/includes/mystston.h
+++ b/src/mame/includes/mystston.h
@@ -65,4 +65,5 @@ public:
required_device<palette_device> m_palette;
void mystston(machine_config &config);
void mystston_video(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/mystwarr.h b/src/mame/includes/mystwarr.h
index b66f539b161..393967e6f4f 100644
--- a/src/mame/includes/mystwarr.h
+++ b/src/mame/includes/mystwarr.h
@@ -111,4 +111,13 @@ public:
void viostorm(machine_config &config);
void gaiapols(machine_config &config);
void metamrph(machine_config &config);
+ void dadandrn_map(address_map &map);
+ void gaiapols_map(address_map &map);
+ void martchmp_map(address_map &map);
+ void martchmp_sound_map(address_map &map);
+ void metamrph_map(address_map &map);
+ void mystwarr_k054539_map(address_map &map);
+ void mystwarr_map(address_map &map);
+ void mystwarr_sound_map(address_map &map);
+ void viostorm_map(address_map &map);
};
diff --git a/src/mame/includes/mz700.h b/src/mame/includes/mz700.h
index 1b1d62cef75..ac0e51a8353 100644
--- a/src/mame/includes/mz700.h
+++ b/src/mame/includes/mz700.h
@@ -82,6 +82,12 @@ public:
void mz800(machine_config &config);
void mz700(machine_config &config);
+ void mz700_banke(address_map &map);
+ void mz700_io(address_map &map);
+ void mz700_mem(address_map &map);
+ void mz800_bankf(address_map &map);
+ void mz800_io(address_map &map);
+ void mz800_mem(address_map &map);
private:
int m_mz700; /* 1 if running on an mz700 */
diff --git a/src/mame/includes/mz80.h b/src/mame/includes/mz80.h
index 447fe35c2ca..744116236b5 100644
--- a/src/mame/includes/mz80.h
+++ b/src/mame/includes/mz80.h
@@ -49,6 +49,8 @@ public:
void mz80kj(machine_config &config);
void mz80k(machine_config &config);
void mz80a(machine_config &config);
+ void mz80k_io(address_map &map);
+ void mz80k_mem(address_map &map);
private:
bool m_mz80k_vertical;
bool m_mz80k_tempo_strobe;
diff --git a/src/mame/includes/n8080.h b/src/mame/includes/n8080.h
index e772610e729..142368729cd 100644
--- a/src/mame/includes/n8080.h
+++ b/src/mame/includes/n8080.h
@@ -128,4 +128,9 @@ public:
void helifire_sound(machine_config &config);
void spacefev(machine_config &config);
void spacefev_sound(machine_config &config);
+ void helifire_main_cpu_map(address_map &map);
+ void helifire_sound_io_map(address_map &map);
+ void main_cpu_map(address_map &map);
+ void main_io_map(address_map &map);
+ void n8080_sound_cpu_map(address_map &map);
};
diff --git a/src/mame/includes/namcofl.h b/src/mame/includes/namcofl.h
index 3bd1221efe0..10a6e583276 100644
--- a/src/mame/includes/namcofl.h
+++ b/src/mame/includes/namcofl.h
@@ -89,4 +89,7 @@ public:
int FLobjcode2tile(int code);
void TilemapCB(uint16_t code, int *tile, int *mask);
void namcofl(machine_config &config);
+ void namcoc75_am(address_map &map);
+ void namcoc75_io(address_map &map);
+ void namcofl_mem(address_map &map);
};
diff --git a/src/mame/includes/namcona1.h b/src/mame/includes/namcona1.h
index d013b988cd9..00e3e5f3265 100644
--- a/src/mame/includes/namcona1.h
+++ b/src/mame/includes/namcona1.h
@@ -78,6 +78,9 @@ public:
void namcona1(machine_config &config);
+ void namcona1_main_map(address_map &map);
+ void namcona1_mcu_io_map(address_map &map);
+ void namcona1_mcu_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -193,4 +196,5 @@ public:
DECLARE_DRIVER_INIT(xday2);
void xday2(machine_config &config);
+ void xday2_main_map(address_map &map);
};
diff --git a/src/mame/includes/namconb1.h b/src/mame/includes/namconb1.h
index d24f69d293a..602a1f39d23 100644
--- a/src/mame/includes/namconb1.h
+++ b/src/mame/includes/namconb1.h
@@ -124,4 +124,8 @@ public:
void NB2TilemapCB(uint16_t code, int *tile, int *mask);
void namconb1(machine_config &config);
void namconb2(machine_config &config);
+ void namcoc75_am(address_map &map);
+ void namcoc75_io(address_map &map);
+ void namconb1_am(address_map &map);
+ void namconb2_am(address_map &map);
};
diff --git a/src/mame/includes/namcond1.h b/src/mame/includes/namcond1.h
index 9493d550d64..f838e6ea8ea 100644
--- a/src/mame/includes/namcond1.h
+++ b/src/mame/includes/namcond1.h
@@ -48,4 +48,8 @@ public:
INTERRUPT_GEN_MEMBER(mcu_interrupt);
void abcheck(machine_config &config);
void namcond1(machine_config &config);
+ void abcheck_map(address_map &map);
+ void namcond1_map(address_map &map);
+ void nd1h8iomap(address_map &map);
+ void nd1h8rwmap(address_map &map);
};
diff --git a/src/mame/includes/namcos1.h b/src/mame/includes/namcos1.h
index e63ffec4542..1c632770dbc 100644
--- a/src/mame/includes/namcos1.h
+++ b/src/mame/includes/namcos1.h
@@ -141,6 +141,12 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank);
void ns1(machine_config &config);
+ void main_map(address_map &map);
+ void mcu_map(address_map &map);
+ void mcu_port_map(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
+ void virtual_map(address_map &map);
private:
inline void get_tile_info(tile_data &tileinfo,int tile_index,uint8_t *info_vram);
};
diff --git a/src/mame/includes/namcos2.h b/src/mame/includes/namcos2.h
index 14f660ef4b9..65f5758b48e 100644
--- a/src/mame/includes/namcos2.h
+++ b/src/mame/includes/namcos2.h
@@ -399,6 +399,25 @@ public:
void base3(machine_config &config);
void sgunner(machine_config &config);
void base(machine_config &config);
+ void c68_default_am(address_map &map);
+ void common_default_am(address_map &map);
+ void common_finallap_am(address_map &map);
+ void common_luckywld_am(address_map &map);
+ void common_metlhawk_am(address_map &map);
+ void common_sgunner_am(address_map &map);
+ void master_default_am(address_map &map);
+ void master_finallap_am(address_map &map);
+ void master_luckywld_am(address_map &map);
+ void master_metlhawk_am(address_map &map);
+ void master_sgunner_am(address_map &map);
+ void mcu_default_am(address_map &map);
+ void namcos2_68k_default_cpu_board_am(address_map &map);
+ void slave_default_am(address_map &map);
+ void slave_finallap_am(address_map &map);
+ void slave_luckywld_am(address_map &map);
+ void slave_metlhawk_am(address_map &map);
+ void slave_sgunner_am(address_map &map);
+ void sound_default_am(address_map &map);
};
/*----------- defined in video/namcos2.c -----------*/
diff --git a/src/mame/includes/namcos21.h b/src/mame/includes/namcos21.h
index 2b29df40efa..54f174695d1 100644
--- a/src/mame/includes/namcos21.h
+++ b/src/mame/includes/namcos21.h
@@ -196,4 +196,24 @@ public:
void driveyes(machine_config &config);
void winrun(machine_config &config);
void namcos21(machine_config &config);
+ void common_map(address_map &map);
+ void driveyes_common_map(address_map &map);
+ void driveyes_master_map(address_map &map);
+ void driveyes_slave_map(address_map &map);
+ void master_dsp_data(address_map &map);
+ void master_dsp_io(address_map &map);
+ void master_dsp_program(address_map &map);
+ void master_map(address_map &map);
+ void mcu_map(address_map &map);
+ void slave_dsp_data(address_map &map);
+ void slave_dsp_io(address_map &map);
+ void slave_dsp_program(address_map &map);
+ void slave_map(address_map &map);
+ void sound_map(address_map &map);
+ void winrun_dsp_data(address_map &map);
+ void winrun_dsp_io(address_map &map);
+ void winrun_dsp_program(address_map &map);
+ void winrun_gpu_map(address_map &map);
+ void winrun_master_map(address_map &map);
+ void winrun_slave_map(address_map &map);
};
diff --git a/src/mame/includes/namcos22.h b/src/mame/includes/namcos22.h
index 2d8fd4d3aac..1d5515d4eb9 100644
--- a/src/mame/includes/namcos22.h
+++ b/src/mame/includes/namcos22.h
@@ -514,4 +514,22 @@ public:
void adillor(machine_config &config);
void timecris(machine_config &config);
void namcos22(machine_config &config);
+ void alpine_io_map(address_map &map);
+ void alpinesa_am(address_map &map);
+ void iomcu_s22_io(address_map &map);
+ void iomcu_s22_program(address_map &map);
+ void master_dsp_data(address_map &map);
+ void master_dsp_io(address_map &map);
+ void master_dsp_program(address_map &map);
+ void mcu_io(address_map &map);
+ void mcu_program(address_map &map);
+ void mcu_s22_io(address_map &map);
+ void mcu_s22_program(address_map &map);
+ void namcos22_am(address_map &map);
+ void namcos22s_am(address_map &map);
+ void propcycl_io_map(address_map &map);
+ void slave_dsp_data(address_map &map);
+ void slave_dsp_io(address_map &map);
+ void slave_dsp_program(address_map &map);
+ void timecris_am(address_map &map);
};
diff --git a/src/mame/includes/namcos86.h b/src/mame/includes/namcos86.h
index b6be5bb23a0..e3eb6356605 100644
--- a/src/mame/includes/namcos86.h
+++ b/src/mame/includes/namcos86.h
@@ -85,6 +85,19 @@ public:
void roishtar(machine_config &config);
void rthunder(machine_config &config);
void hopmappy(machine_config &config);
+ void common_mcu_map(address_map &map);
+ void cpu1_map(address_map &map);
+ void genpeitd_cpu2_map(address_map &map);
+ void genpeitd_mcu_map(address_map &map);
+ void hopmappy_cpu2_map(address_map &map);
+ void hopmappy_mcu_map(address_map &map);
+ void mcu_port_map(address_map &map);
+ void roishtar_cpu2_map(address_map &map);
+ void roishtar_mcu_map(address_map &map);
+ void rthunder_cpu2_map(address_map &map);
+ void rthunder_mcu_map(address_map &map);
+ void wndrmomo_cpu2_map(address_map &map);
+ void wndrmomo_mcu_map(address_map &map);
private:
inline void get_tile_info(tile_data &tileinfo,int tile_index,int layer,uint8_t *vram);
void set_scroll(int layer);
diff --git a/src/mame/includes/naomi.h b/src/mame/includes/naomi.h
index 984a3bbc71e..2318d757592 100644
--- a/src/mame/includes/naomi.h
+++ b/src/mame/includes/naomi.h
@@ -85,6 +85,8 @@ class naomi_state : public dc_state
void naomim1(machine_config &config);
void naomigd(machine_config &config);
void naomim4(machine_config &config);
+ void naomi_map(address_map &map);
+ void naomi_port(address_map &map);
};
class naomi2_state : public naomi_state
@@ -108,6 +110,7 @@ public:
void naomi2m2(machine_config &config);
void naomi2gd(machine_config &config);
void naomi2m1(machine_config &config);
+ void naomi2_map(address_map &map);
};
class atomiswave_state : public dc_state
@@ -135,6 +138,8 @@ public:
void aw_base(machine_config &config);
void aw1c(machine_config &config);
void aw2c(machine_config &config);
+ void aw_map(address_map &map);
+ void aw_port(address_map &map);
protected:
uint8_t aw_ctrl_type;
inline int decode_reg32_64(uint32_t offset, uint64_t mem_mask, uint64_t *shift);
diff --git a/src/mame/includes/naughtyb.h b/src/mame/includes/naughtyb.h
index 9f69920911b..69fc8f52976 100644
--- a/src/mame/includes/naughtyb.h
+++ b/src/mame/includes/naughtyb.h
@@ -57,4 +57,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void popflame(machine_config &config);
void naughtyb(machine_config &config);
+ void naughtyb_map(address_map &map);
+ void popflame_map(address_map &map);
};
diff --git a/src/mame/includes/nbmj8688.h b/src/mame/includes/nbmj8688.h
index e6c0b833f5e..d615fca7a80 100644
--- a/src/mame/includes/nbmj8688.h
+++ b/src/mame/includes/nbmj8688.h
@@ -136,6 +136,20 @@ public:
void vipclub(machine_config &config);
void ojousan(machine_config &config);
void seiha(machine_config &config);
+ void barline_io_map(address_map &map);
+ void crystalg_io_map(address_map &map);
+ void iemoto_io_map(address_map &map);
+ void kaguya_io_map(address_map &map);
+ void mjgaiden_io_map(address_map &map);
+ void mjsikaku_io_map(address_map &map);
+ void mjsikaku_map(address_map &map);
+ void mmsikaku_io_map(address_map &map);
+ void ojousan_map(address_map &map);
+ void otonano_io_map(address_map &map);
+ void p16bit_LCD_io_map(address_map &map);
+ void secolove_io_map(address_map &map);
+ void secolove_map(address_map &map);
+ void seiha_io_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/nbmj8891.h b/src/mame/includes/nbmj8891.h
index 6d7e21a4efe..4be77eb4d74 100644
--- a/src/mame/includes/nbmj8891.h
+++ b/src/mame/includes/nbmj8891.h
@@ -127,6 +127,30 @@ public:
void gionbana(machine_config &config);
void mgmen89(machine_config &config);
void scandalm(machine_config &config);
+ void bananadr_io_map(address_map &map);
+ void club90s_map(address_map &map);
+ void gionbana_io_map(address_map &map);
+ void gionbana_map(address_map &map);
+ void hanamomo_io_map(address_map &map);
+ void hanamomo_map(address_map &map);
+ void hanaoji_map(address_map &map);
+ void hnageman_map(address_map &map);
+ void hnxmasev_map(address_map &map);
+ void lovehous_io_map(address_map &map);
+ void lovehous_map(address_map &map);
+ void maiko_io_map(address_map &map);
+ void maiko_map(address_map &map);
+ void mgion_io_map(address_map &map);
+ void mgion_map(address_map &map);
+ void mmaiko_map(address_map &map);
+ void msjiken_io_map(address_map &map);
+ void omotesnd_io_map(address_map &map);
+ void omotesnd_map(address_map &map);
+ void scandal_io_map(address_map &map);
+ void scandalm_io_map(address_map &map);
+ void scandalm_map(address_map &map);
+ void taiwanmb_io_map(address_map &map);
+ void taiwanmb_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/nbmj8900.h b/src/mame/includes/nbmj8900.h
index aac77cb3449..a763cc8907f 100644
--- a/src/mame/includes/nbmj8900.h
+++ b/src/mame/includes/nbmj8900.h
@@ -72,6 +72,9 @@ public:
void ohpaipee(machine_config &config);
void togenkyo(machine_config &config);
+ void ohpaipee_io_map(address_map &map);
+ void ohpaipee_map(address_map &map);
+ void togenkyo_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/nbmj8991.h b/src/mame/includes/nbmj8991.h
index bf6b41f99ff..3512f0729bb 100644
--- a/src/mame/includes/nbmj8991.h
+++ b/src/mame/includes/nbmj8991.h
@@ -97,6 +97,21 @@ public:
void hyouban(machine_config &config);
void qmhayaku(machine_config &config);
void mjgottub(machine_config &config);
+ void av2mj1bb_io_map(address_map &map);
+ void av2mj1bb_map(address_map &map);
+ void av2mj2rg_map(address_map &map);
+ void galkaika_map(address_map &map);
+ void galkoku_io_map(address_map &map);
+ void galkoku_map(address_map &map);
+ void hyouban_io_map(address_map &map);
+ void mjlstory_map(address_map &map);
+ void nbmj8991_sound_io_map(address_map &map);
+ void nbmj8991_sound_map(address_map &map);
+ void pstadium_io_map(address_map &map);
+ void pstadium_map(address_map &map);
+ void tokyogal_map(address_map &map);
+ void triplew1_map(address_map &map);
+ void triplew2_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/nbmj9195.h b/src/mame/includes/nbmj9195.h
index ab2306b1b60..d7da6b1d027 100644
--- a/src/mame/includes/nbmj9195.h
+++ b/src/mame/includes/nbmj9195.h
@@ -148,6 +148,41 @@ public:
void bakuhatu(machine_config &config);
void ultramhm(machine_config &config);
void otatidai(machine_config &config);
+ void cmehyou_io_map(address_map &map);
+ void gal10ren_io_map(address_map &map);
+ void imekura_io_map(address_map &map);
+ void jituroku_io_map(address_map &map);
+ void koinomp_io_map(address_map &map);
+ void koinomp_map(address_map &map);
+ void mjegolf_io_map(address_map &map);
+ void mjegolf_map(address_map &map);
+ void mjgottsu_io_map(address_map &map);
+ void mjkoiura_io_map(address_map &map);
+ void mjlaman_io_map(address_map &map);
+ void mjuraden_io_map(address_map &map);
+ void mjuraden_map(address_map &map);
+ void mkeibaou_io_map(address_map &map);
+ void mkoiuraa_io_map(address_map &map);
+ void mmehyou_io_map(address_map &map);
+ void mscoutm_io_map(address_map &map);
+ void mscoutm_map(address_map &map);
+ void ngpgal_io_map(address_map &map);
+ void ngpgal_map(address_map &map);
+ void otatidai_io_map(address_map &map);
+ void pachiten_io_map(address_map &map);
+ void patimono_io_map(address_map &map);
+ void psailor1_io_map(address_map &map);
+ void psailor2_io_map(address_map &map);
+ void renaiclb_io_map(address_map &map);
+ void sailorwr_io_map(address_map &map);
+ void sailorws_io_map(address_map &map);
+ void sailorws_map(address_map &map);
+ void sailorws_sound_io_map(address_map &map);
+ void sailorws_sound_map(address_map &map);
+ void shabdama_io_map(address_map &map);
+ void shabdama_map(address_map &map);
+ void yosimotm_io_map(address_map &map);
+ void yosimoto_io_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/nc.h b/src/mame/includes/nc.h
index e2432bee332..98f41afdee6 100644
--- a/src/mame/includes/nc.h
+++ b/src/mame/includes/nc.h
@@ -96,6 +96,9 @@ public:
void nc200(machine_config &config);
void nc100(machine_config &config);
+ void nc100_io(address_map &map);
+ void nc200_io(address_map &map);
+ void nc_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/nds.h b/src/mame/includes/nds.h
index 6a7d36a0842..ae3b1755a31 100644
--- a/src/mame/includes/nds.h
+++ b/src/mame/includes/nds.h
@@ -42,6 +42,10 @@ public:
DECLARE_WRITE32_MEMBER(wram_arm7mirror_w);
void nds(machine_config &config);
+ void nds7_wram_map(address_map &map);
+ void nds9_wram_map(address_map &map);
+ void nds_arm7_map(address_map &map);
+ void nds_arm9_map(address_map &map);
protected:
required_device<arm7_cpu_device> m_arm7;
required_device<arm946es_cpu_device> m_arm9;
diff --git a/src/mame/includes/nemesis.h b/src/mame/includes/nemesis.h
index 55ef9d70980..2d7661d4beb 100644
--- a/src/mame/includes/nemesis.h
+++ b/src/mame/includes/nemesis.h
@@ -138,4 +138,20 @@ public:
void citybomb(machine_config &config);
void nemesis(machine_config &config);
void blkpnthr(machine_config &config);
+ void blkpnthr_map(address_map &map);
+ void blkpnthr_sound_map(address_map &map);
+ void city_sound_map(address_map &map);
+ void citybomb_map(address_map &map);
+ void gx400_map(address_map &map);
+ void gx400_sound_map(address_map &map);
+ void gx400_vlm_map(address_map &map);
+ void hcrash_map(address_map &map);
+ void konamigt_map(address_map &map);
+ void nemesis_map(address_map &map);
+ void nyanpani_map(address_map &map);
+ void rf2_gx400_map(address_map &map);
+ void sal_sound_map(address_map &map);
+ void salamand_map(address_map &map);
+ void salamand_vlm_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/neogeo.h b/src/mame/includes/neogeo.h
index 2ff80aba52a..72bcfaf8d36 100644
--- a/src/mame/includes/neogeo.h
+++ b/src/mame/includes/neogeo.h
@@ -180,6 +180,10 @@ public:
void irrmaze(machine_config &config);
void kf2k2mp(machine_config &config);
void bangbead(machine_config &config);
+ void audio_io_map(address_map &map);
+ void audio_map(address_map &map);
+ void main_map_slot(address_map &map);
+ void neogeo_main_map(address_map &map);
protected:
void common_machine_start();
@@ -324,6 +328,7 @@ class aes_state : public neogeo_state
DECLARE_MACHINE_START(aes);
void aes(machine_config &config);
+ void aes_main_map(address_map &map);
protected:
required_ioport m_io_in2;
};
diff --git a/src/mame/includes/nes.h b/src/mame/includes/nes.h
index 0ccd6b793a2..6d660138ff1 100644
--- a/src/mame/includes/nes.h
+++ b/src/mame/includes/nes.h
@@ -112,6 +112,7 @@ public:
void nespalc(machine_config &config);
void nes(machine_config &config);
void fds(machine_config &config);
+ void nes_map(address_map &map);
private:
memory_bank *m_prg_bank_mem[5];
diff --git a/src/mame/includes/newbrain.h b/src/mame/includes/newbrain.h
index c118475e167..2b7953cd899 100644
--- a/src/mame/includes/newbrain.h
+++ b/src/mame/includes/newbrain.h
@@ -74,6 +74,8 @@ public:
void newbrain_ad(machine_config &config);
void newbrain_md(machine_config &config);
void newbrain_video(machine_config &config);
+ void newbrain_iorq(address_map &map);
+ void newbrain_mreq(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual void machine_start() override;
diff --git a/src/mame/includes/news.h b/src/mame/includes/news.h
index b529d56cf28..01622efb0f1 100644
--- a/src/mame/includes/news.h
+++ b/src/mame/includes/news.h
@@ -31,4 +31,5 @@ public:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
void news(machine_config &config);
+ void news_map(address_map &map);
};
diff --git a/src/mame/includes/next.h b/src/mame/includes/next.h
index a40dec3e5d9..1c525f7f02e 100644
--- a/src/mame/includes/next.h
+++ b/src/mame/includes/next.h
@@ -126,6 +126,13 @@ public:
void next(machine_config &config);
void nextstc(machine_config &config);
void nexts(machine_config &config);
+ void next_0b_m_mem(address_map &map);
+ void next_0b_m_nofdc_mem(address_map &map);
+ void next_0c_c_mem(address_map &map);
+ void next_0c_m_mem(address_map &map);
+ void next_2c_c_mem(address_map &map);
+ void next_fdc_mem(address_map &map);
+ void next_mem(address_map &map);
protected:
struct dma_slot {
uint32_t start, limit, chain_start, chain_limit, current;
diff --git a/src/mame/includes/ninjakd2.h b/src/mame/includes/ninjakd2.h
index 0c4454043a8..531bb1ffafb 100644
--- a/src/mame/includes/ninjakd2.h
+++ b/src/mame/includes/ninjakd2.h
@@ -131,4 +131,12 @@ public:
void mnight(machine_config &config);
void ninjakd2(machine_config &config);
void ninjakd2_core(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void mnight_main_cpu(address_map &map);
+ void ninjakd2_main_cpu(address_map &map);
+ void ninjakd2_sound_cpu(address_map &map);
+ void ninjakd2_sound_io(address_map &map);
+ void ninjakid_nopcm_sound_cpu(address_map &map);
+ void omegaf_main_cpu(address_map &map);
+ void robokid_main_cpu(address_map &map);
};
diff --git a/src/mame/includes/ninjaw.h b/src/mame/includes/ninjaw.h
index cca4f1c761e..50346126021 100644
--- a/src/mame/includes/ninjaw.h
+++ b/src/mame/includes/ninjaw.h
@@ -79,4 +79,9 @@ public:
uint32_t update_screen(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int xoffs, tc0100scn_device *tc0100scn);
void darius2(machine_config &config);
void ninjaw(machine_config &config);
+ void darius2_master_map(address_map &map);
+ void darius2_slave_map(address_map &map);
+ void ninjaw_master_map(address_map &map);
+ void ninjaw_slave_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/nitedrvr.h b/src/mame/includes/nitedrvr.h
index 99504559a07..8e18e2d2330 100644
--- a/src/mame/includes/nitedrvr.h
+++ b/src/mame/includes/nitedrvr.h
@@ -71,6 +71,7 @@ public:
void draw_roadway(bitmap_ind16 &bitmap, const rectangle &cliprect);
int nitedrvr_steering();
void nitedrvr(machine_config &config);
+ void nitedrvr_map(address_map &map);
};
/*----------- defined in audio/nitedrvr.c -----------*/
diff --git a/src/mame/includes/niyanpai.h b/src/mame/includes/niyanpai.h
index 20fb9e0de6c..44c70a9807e 100644
--- a/src/mame/includes/niyanpai.h
+++ b/src/mame/includes/niyanpai.h
@@ -101,6 +101,10 @@ public:
void zokumahj(machine_config &config);
void mhhonban(machine_config &config);
void niyanpai(machine_config &config);
+ void mhhonban_map(address_map &map);
+ void musobana_map(address_map &map);
+ void niyanpai_map(address_map &map);
+ void zokumahj_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/nmk16.h b/src/mame/includes/nmk16.h
index 888f7ed19f6..e16bde44ec8 100644
--- a/src/mame/includes/nmk16.h
+++ b/src/mame/includes/nmk16.h
@@ -4,11 +4,12 @@
#include "machine/nmk112.h"
#include "sound/okim6295.h"
+#include "audio/seibu.h"
#include "machine/nmk004.h"
#include "machine/gen_latch.h"
#include "machine/timer.h"
-class nmk16_state : public driver_device
+class nmk16_state : public driver_device, protected seibu_sound_common
{
public:
nmk16_state(const machine_config &mconfig, device_type type, const char *tag)
@@ -234,4 +235,38 @@ public:
void mustangb(machine_config &config);
void mustang(machine_config &config);
void vandykeb(machine_config &config);
+ void acrobatm_map(address_map &map);
+ void afega_map(address_map &map);
+ void afega_sound_cpu(address_map &map);
+ void atombjt_map(address_map &map);
+ void bioship_map(address_map &map);
+ void bjtwin_map(address_map &map);
+ void firehawk_map(address_map &map);
+ void firehawk_sound_cpu(address_map &map);
+ void gunnail_map(address_map &map);
+ void hachamf_map(address_map &map);
+ void macross2_map(address_map &map);
+ void macross2_sound_io_map(address_map &map);
+ void macross2_sound_map(address_map &map);
+ void macross_map(address_map &map);
+ void manybloc_map(address_map &map);
+ void mustang_map(address_map &map);
+ void mustangb_map(address_map &map);
+ void oki1_map(address_map &map);
+ void oki2_map(address_map &map);
+ void raphero_map(address_map &map);
+ void raphero_sound_mem_map(address_map &map);
+ void ssmissin_map(address_map &map);
+ void ssmissin_sound_map(address_map &map);
+ void strahl_map(address_map &map);
+ void tdragon3h_map(address_map &map);
+ void tdragon_map(address_map &map);
+ void tdragonb_map(address_map &map);
+ void tharrier_map(address_map &map);
+ void tharrier_sound_io_map(address_map &map);
+ void tharrier_sound_map(address_map &map);
+ void twinactn_map(address_map &map);
+ void twinactn_sound_cpu(address_map &map);
+ void vandyke_map(address_map &map);
+ void vandykeb_map(address_map &map);
};
diff --git a/src/mame/includes/norautp.h b/src/mame/includes/norautp.h
index 46e9d7521e0..8e78ffc0548 100644
--- a/src/mame/includes/norautp.h
+++ b/src/mame/includes/norautp.h
@@ -55,6 +55,21 @@ public:
void dphla(machine_config &config);
void drhl(machine_config &config);
void norautxp(machine_config &config);
+ void dphl_map(address_map &map);
+ void dphla_map(address_map &map);
+ void dphltest_map(address_map &map);
+ void drhl_map(address_map &map);
+ void kimbldhl_map(address_map &map);
+ void kimble_map(address_map &map);
+ void newhilop_map(address_map &map);
+ void norautp_map(address_map &map);
+ void norautp_portmap(address_map &map);
+ void norautx4_map(address_map &map);
+ void norautx8_map(address_map &map);
+ void norautxp_map(address_map &map);
+ void norautxp_portmap(address_map &map);
+ void nortest1_map(address_map &map);
+ void ssjkrpkr_map(address_map &map);
};
/*----------- defined in audio/norautp.c -----------*/
diff --git a/src/mame/includes/nova2001.h b/src/mame/includes/nova2001.h
index fd2e0ebb024..f061b73d56e 100644
--- a/src/mame/includes/nova2001.h
+++ b/src/mame/includes/nova2001.h
@@ -67,4 +67,12 @@ public:
void ninjakun(machine_config &config);
void nova2001(machine_config &config);
void pkunwar(machine_config &config);
+ void ninjakun_cpu1_map(address_map &map);
+ void ninjakun_cpu2_map(address_map &map);
+ void nova2001_map(address_map &map);
+ void pkunwar_io(address_map &map);
+ void pkunwar_map(address_map &map);
+ void raiders5_cpu1_map(address_map &map);
+ void raiders5_cpu2_map(address_map &map);
+ void raiders5_io(address_map &map);
};
diff --git a/src/mame/includes/nycaptor.h b/src/mame/includes/nycaptor.h
index 14a992295b9..7d1cf902741 100644
--- a/src/mame/includes/nycaptor.h
+++ b/src/mame/includes/nycaptor.h
@@ -97,4 +97,12 @@ public:
void nycaptor(machine_config &config);
void cyclshtg(machine_config &config);
void bronx(machine_config &config);
+ void bronx_master_map(address_map &map);
+ void bronx_slave_io_map(address_map &map);
+ void bronx_slave_map(address_map &map);
+ void cyclshtg_master_map(address_map &map);
+ void cyclshtg_slave_map(address_map &map);
+ void nycaptor_master_map(address_map &map);
+ void nycaptor_slave_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/ob68k1a.h b/src/mame/includes/ob68k1a.h
index c27ba558070..953a5ee5fb7 100644
--- a/src/mame/includes/ob68k1a.h
+++ b/src/mame/includes/ob68k1a.h
@@ -56,6 +56,7 @@ public:
DECLARE_READ8_MEMBER( pia_r );
DECLARE_WRITE8_MEMBER( pia_w );
void ob68k1a(machine_config &config);
+ void ob68k1a_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/offtwall.h b/src/mame/includes/offtwall.h
index 34b367dca29..a14a74710a8 100644
--- a/src/mame/includes/offtwall.h
+++ b/src/mame/includes/offtwall.h
@@ -46,4 +46,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void offtwall(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/ohmygod.h b/src/mame/includes/ohmygod.h
index 9ab74da6a38..7094947313b 100644
--- a/src/mame/includes/ohmygod.h
+++ b/src/mame/includes/ohmygod.h
@@ -48,4 +48,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void ohmygod(machine_config &config);
+ void ohmygod_map(address_map &map);
+ void oki_map(address_map &map);
};
diff --git a/src/mame/includes/ojankohs.h b/src/mame/includes/ojankohs.h
index 12231e13e68..d4c904ac00c 100644
--- a/src/mame/includes/ojankohs.h
+++ b/src/mame/includes/ojankohs.h
@@ -110,4 +110,11 @@ public:
void ccasino(machine_config &config);
void ojankoc(machine_config &config);
void ojankoy(machine_config &config);
+ void ccasino_io_map(address_map &map);
+ void ojankoc_io_map(address_map &map);
+ void ojankoc_map(address_map &map);
+ void ojankohs_io_map(address_map &map);
+ void ojankohs_map(address_map &map);
+ void ojankoy_io_map(address_map &map);
+ void ojankoy_map(address_map &map);
};
diff --git a/src/mame/includes/ondra.h b/src/mame/includes/ondra.h
index 9b3557ff257..7d630a570ec 100644
--- a/src/mame/includes/ondra.h
+++ b/src/mame/includes/ondra.h
@@ -43,6 +43,8 @@ public:
TIMER_CALLBACK_MEMBER(nmi_check_callback);
void ondra(machine_config &config);
+ void ondra_io(address_map &map);
+ void ondra_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/oneshot.h b/src/mame/includes/oneshot.h
index f815738ad12..6ef3b8ad883 100644
--- a/src/mame/includes/oneshot.h
+++ b/src/mame/includes/oneshot.h
@@ -64,4 +64,6 @@ public:
required_device<palette_device> m_palette;
void maddonna(machine_config &config);
void oneshot(machine_config &config);
+ void oneshot_map(address_map &map);
+ void oneshot_sound_map(address_map &map);
};
diff --git a/src/mame/includes/opwolf.h b/src/mame/includes/opwolf.h
index 7a2beac853e..c974e611cdd 100644
--- a/src/mame/includes/opwolf.h
+++ b/src/mame/includes/opwolf.h
@@ -134,6 +134,11 @@ public:
void opwolfb(machine_config &config);
void opwolfp(machine_config &config);
void opwolf(machine_config &config);
+ void opwolf_map(address_map &map);
+ void opwolf_sound_z80_map(address_map &map);
+ void opwolfb_map(address_map &map);
+ void opwolfb_sub_z80_map(address_map &map);
+ void opwolfp_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/orao.h b/src/mame/includes/orao.h
index 811f3476180..a56a6ce2add 100644
--- a/src/mame/includes/orao.h
+++ b/src/mame/includes/orao.h
@@ -35,6 +35,7 @@ public:
uint32_t screen_update_orao(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void orao(machine_config &config);
+ void orao_mem(address_map &map);
private:
required_shared_ptr<uint8_t> m_memory;
required_shared_ptr<uint8_t> m_video_ram;
diff --git a/src/mame/includes/orbit.h b/src/mame/includes/orbit.h
index 552516e5183..3b922603902 100644
--- a/src/mame/includes/orbit.h
+++ b/src/mame/includes/orbit.h
@@ -56,6 +56,7 @@ public:
DECLARE_WRITE8_MEMBER(orbit_noise_rst_w);
void orbit(machine_config &config);
+ void orbit_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/orion.h b/src/mame/includes/orion.h
index 5a6d77be716..0241185a093 100644
--- a/src/mame/includes/orion.h
+++ b/src/mame/includes/orion.h
@@ -89,6 +89,12 @@ public:
void orion128(machine_config &config);
void orionpro(machine_config &config);
void orionz80ms(machine_config &config);
+ void orion128_io(address_map &map);
+ void orion128_mem(address_map &map);
+ void orionpro_io(address_map &map);
+ void orionpro_mem(address_map &map);
+ void orionz80_io(address_map &map);
+ void orionz80_mem(address_map &map);
protected:
uint8_t m_orion128_video_mode;
uint8_t m_orion128_video_page;
diff --git a/src/mame/includes/osborne1.h b/src/mame/includes/osborne1.h
index 5d2adc73775..a300f73df32 100644
--- a/src/mame/includes/osborne1.h
+++ b/src/mame/includes/osborne1.h
@@ -96,6 +96,10 @@ public:
required_device<floppy_connector> m_floppy1;
void osborne1(machine_config &config);
+ void osborne1_io(address_map &map);
+ void osborne1_mem(address_map &map);
+ void osborne1_op(address_map &map);
+ void osborne1nv_io(address_map &map);
protected:
TIMER_CALLBACK_MEMBER(video_callback);
TIMER_CALLBACK_MEMBER(acia_rxc_txc_callback);
diff --git a/src/mame/includes/osi.h b/src/mame/includes/osi.h
index e9037eef9ad..6fdaf05e423 100644
--- a/src/mame/includes/osi.h
+++ b/src/mame/includes/osi.h
@@ -59,6 +59,7 @@ public:
void osi600(machine_config &config);
void osi600_video(machine_config &config);
void osi630_video(machine_config &config);
+ void osi600_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual void machine_start() override;
@@ -109,6 +110,7 @@ public:
DECLARE_WRITE8_MEMBER( osi630_sound_w );
DECLARE_DRIVER_INIT(c1p);
void c1p(machine_config &config);
+ void c1p_mem(address_map &map);
};
class c1pmf_state : public c1p_state
@@ -126,6 +128,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( osi470_pia_cb2_w );
void c1pmf(machine_config &config);
+ void c1pmf_mem(address_map &map);
protected:
virtual void machine_start() override;
@@ -146,6 +149,7 @@ public:
DECLARE_WRITE8_MEMBER( keyboard_w );
void uk101(machine_config &config);
void uk101_video(machine_config &config);
+ void uk101_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/othunder.h b/src/mame/includes/othunder.h
index f8ca222329b..a5055db1c3a 100644
--- a/src/mame/includes/othunder.h
+++ b/src/mame/includes/othunder.h
@@ -54,6 +54,8 @@ public:
INTERRUPT_GEN_MEMBER(vblank_interrupt);
void othunder(machine_config &config);
+ void othunder_map(address_map &map);
+ void z80_sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/overdriv.h b/src/mame/includes/overdriv.h
index 51a0fa7b193..de6a1f2ba0f 100644
--- a/src/mame/includes/overdriv.h
+++ b/src/mame/includes/overdriv.h
@@ -71,4 +71,8 @@ public:
K051316_CB_MEMBER(zoom_callback_2);
K053246_CB_MEMBER(sprite_callback);
void overdriv(machine_config &config);
+ void overdriv_k053260_map(address_map &map);
+ void overdriv_master_map(address_map &map);
+ void overdriv_slave_map(address_map &map);
+ void overdriv_sound_map(address_map &map);
};
diff --git a/src/mame/includes/p2000t.h b/src/mame/includes/p2000t.h
index 46c2dcdfce4..db4fe48fa3f 100644
--- a/src/mame/includes/p2000t.h
+++ b/src/mame/includes/p2000t.h
@@ -57,6 +57,9 @@ public:
INTERRUPT_GEN_MEMBER(p2000_interrupt);
void p2000t(machine_config &config);
void p2000m(machine_config &config);
+ void p2000m_mem(address_map &map);
+ void p2000t_io(address_map &map);
+ void p2000t_mem(address_map &map);
};
#endif // MAME_INCLUDES_P2000T_H
diff --git a/src/mame/includes/pacland.h b/src/mame/includes/pacland.h
index 9c5bd77f3bc..0911a123317 100644
--- a/src/mame/includes/pacland.h
+++ b/src/mame/includes/pacland.h
@@ -70,4 +70,7 @@ public:
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int flip, int whichmask);
void draw_fg(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int priority );
void pacland(machine_config &config);
+ void main_map(address_map &map);
+ void mcu_map(address_map &map);
+ void mcu_port_map(address_map &map);
};
diff --git a/src/mame/includes/pacman.h b/src/mame/includes/pacman.h
index 77c98463891..50d7d2fdeda 100644
--- a/src/mame/includes/pacman.h
+++ b/src/mame/includes/pacman.h
@@ -30,6 +30,34 @@ public:
required_device<cpu_device> m_maincpu;
+ void _8bpm_portmap(address_map &map);
+ void alibaba_map(address_map &map);
+ void bigbucks_map(address_map &map);
+ void bigbucks_portmap(address_map &map);
+ void birdiy_map(address_map &map);
+ void crushs_map(address_map &map);
+ void crushs_portmap(address_map &map);
+ void dremshpr_map(address_map &map);
+ void dremshpr_portmap(address_map &map);
+ void drivfrcp_portmap(address_map &map);
+ void epos_map(address_map &map);
+ void epos_portmap(address_map &map);
+ void mschamp_map(address_map &map);
+ void mschamp_portmap(address_map &map);
+ void mspacman_map(address_map &map);
+ void nmouse_portmap(address_map &map);
+ void numcrash_map(address_map &map);
+ void pacman_map(address_map &map);
+ void pengojpm_map(address_map &map);
+ void piranha_portmap(address_map &map);
+ void porky_portmap(address_map &map);
+ void rocktrv2_map(address_map &map);
+ void s2650games_dataport(address_map &map);
+ void s2650games_map(address_map &map);
+ void superabc_map(address_map &map);
+ void vanvan_portmap(address_map &map);
+ void woodpek_map(address_map &map);
+ void writeport(address_map &map);
private:
optional_device<namco_device> m_namco_sound;
required_device<watchdog_timer_device> m_watchdog;
diff --git a/src/mame/includes/pandoras.h b/src/mame/includes/pandoras.h
index 8ee56d707e1..7d60fdaa002 100644
--- a/src/mame/includes/pandoras.h
+++ b/src/mame/includes/pandoras.h
@@ -69,4 +69,9 @@ public:
INTERRUPT_GEN_MEMBER(pandoras_slave_interrupt);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, uint8_t* sr );
void pandoras(machine_config &config);
+ void pandoras_i8039_io_map(address_map &map);
+ void pandoras_i8039_map(address_map &map);
+ void pandoras_master_map(address_map &map);
+ void pandoras_slave_map(address_map &map);
+ void pandoras_sound_map(address_map &map);
};
diff --git a/src/mame/includes/paradise.h b/src/mame/includes/paradise.h
index f725e3334bf..75b7af480b7 100644
--- a/src/mame/includes/paradise.h
+++ b/src/mame/includes/paradise.h
@@ -93,4 +93,10 @@ public:
void madball(machine_config &config);
void torus(machine_config &config);
void penky(machine_config &config);
+ void base_map(address_map &map);
+ void paradise_io_map(address_map &map);
+ void paradise_map(address_map &map);
+ void tgtball_map(address_map &map);
+ void torus_io_map(address_map &map);
+ void torus_map(address_map &map);
};
diff --git a/src/mame/includes/parodius.h b/src/mame/includes/parodius.h
index d730b696579..eb924d8bfe7 100644
--- a/src/mame/includes/parodius.h
+++ b/src/mame/includes/parodius.h
@@ -59,6 +59,10 @@ public:
DECLARE_WRITE8_MEMBER(banking_callback);
void parodius(machine_config &config);
+ void bank0000_map(address_map &map);
+ void bank2000_map(address_map &map);
+ void parodius_map(address_map &map);
+ void parodius_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/partner.h b/src/mame/includes/partner.h
index b412a40a54a..e7571b5615a 100644
--- a/src/mame/includes/partner.h
+++ b/src/mame/includes/partner.h
@@ -39,6 +39,7 @@ public:
DECLARE_FLOPPY_FORMATS( floppy_formats );
void partner(machine_config &config);
+ void partner_mem(address_map &map);
protected:
void partner_window_1(uint8_t bank_num, uint16_t offset,uint8_t *rom);
void partner_window_2(uint8_t bank_num, uint16_t offset,uint8_t *rom);
diff --git a/src/mame/includes/pass.h b/src/mame/includes/pass.h
index 9a438b5bfc5..1c343cc5948 100644
--- a/src/mame/includes/pass.h
+++ b/src/mame/includes/pass.h
@@ -27,6 +27,9 @@ public:
uint32_t screen_update_pass(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void pass(machine_config &config);
+ void pass_map(address_map &map);
+ void pass_sound_io_map(address_map &map);
+ void pass_sound_map(address_map &map);
protected:
virtual void video_start() override;
diff --git a/src/mame/includes/pastelg.h b/src/mame/includes/pastelg.h
index 25475c67a4d..1e5f7d7d476 100644
--- a/src/mame/includes/pastelg.h
+++ b/src/mame/includes/pastelg.h
@@ -64,6 +64,9 @@ public:
void threeds(machine_config &config);
void pastelg(machine_config &config);
+ void pastelg_io_map(address_map &map);
+ void pastelg_map(address_map &map);
+ void threeds_io_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/pbaction.h b/src/mame/includes/pbaction.h
index d1484230670..9bd785ba770 100644
--- a/src/mame/includes/pbaction.h
+++ b/src/mame/includes/pbaction.h
@@ -69,4 +69,8 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void pbaction(machine_config &config);
void pbactionx(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void pbaction_map(address_map &map);
+ void pbaction_sound_io_map(address_map &map);
+ void pbaction_sound_map(address_map &map);
};
diff --git a/src/mame/includes/pc1251.h b/src/mame/includes/pc1251.h
index cf1747a6943..56c64f58d88 100644
--- a/src/mame/includes/pc1251.h
+++ b/src/mame/includes/pc1251.h
@@ -60,6 +60,11 @@ public:
void pc1255(machine_config &config);
void pc1251(machine_config &config);
void pc1250(machine_config &config);
+ void pc1250_mem(address_map &map);
+ void pc1251_mem(address_map &map);
+ void pc1255_mem(address_map &map);
+ void pc1260_mem(address_map &map);
+ void pc1261_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/pc1350.h b/src/mame/includes/pc1350.h
index 371bedfbc66..be52db0f3dd 100644
--- a/src/mame/includes/pc1350.h
+++ b/src/mame/includes/pc1350.h
@@ -54,6 +54,7 @@ public:
required_device<ram_device> m_ram;
void pc1350(machine_config &config);
+ void pc1350_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/pc1401.h b/src/mame/includes/pc1401.h
index 926523b2696..7826d0fef52 100644
--- a/src/mame/includes/pc1401.h
+++ b/src/mame/includes/pc1401.h
@@ -55,6 +55,8 @@ public:
required_device<palette_device> m_palette;
void pc1401(machine_config &config);
void pc1402(machine_config &config);
+ void pc1401_mem(address_map &map);
+ void pc1402_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/pc1403.h b/src/mame/includes/pc1403.h
index 66b716564dd..f353d260c12 100644
--- a/src/mame/includes/pc1403.h
+++ b/src/mame/includes/pc1403.h
@@ -60,6 +60,10 @@ public:
void pc1403h(machine_config &config);
void pc1403(machine_config &config);
+ void pc1403_mem(address_map &map);
+ void pc1403h_mem(address_map &map);
+ void pc1421_readmem(address_map &map);
+ void pc1421_writemem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/pc1512.h b/src/mame/includes/pc1512.h
index a2060eedba9..44ba86458d9 100644
--- a/src/mame/includes/pc1512.h
+++ b/src/mame/includes/pc1512.h
@@ -230,6 +230,8 @@ public:
void pc1512hd(machine_config &config);
void pc1512(machine_config &config);
void pc1512dd(machine_config &config);
+ void pc1512_io(address_map &map);
+ void pc1512_mem(address_map &map);
};
class pc1640_state : public pc1512_state
@@ -253,6 +255,8 @@ public:
void pc1640hd(machine_config &config);
void pc1640(machine_config &config);
void pc1640dd(machine_config &config);
+ void pc1640_io(address_map &map);
+ void pc1640_mem(address_map &map);
};
// ---------- defined in video/pc1512.c ----------
diff --git a/src/mame/includes/pc4.h b/src/mame/includes/pc4.h
index 57a4a5ec3eb..5b781d0f864 100644
--- a/src/mame/includes/pc4.h
+++ b/src/mame/includes/pc4.h
@@ -68,6 +68,8 @@ public:
DECLARE_PALETTE_INIT(pc4);
void pc4(machine_config &config);
+ void pc4_io(address_map &map);
+ void pc4_mem(address_map &map);
protected:
required_memory_region m_region_charset;
required_memory_bank m_rombank;
diff --git a/src/mame/includes/pc6001.h b/src/mame/includes/pc6001.h
index 72c8540074c..81801112953 100644
--- a/src/mame/includes/pc6001.h
+++ b/src/mame/includes/pc6001.h
@@ -70,6 +70,8 @@ public:
IRQ_CALLBACK_MEMBER(irq_callback);
void pc6001(machine_config &config);
+ void pc6001_io(address_map &map);
+ void pc6001_map(address_map &map);
protected:
required_device<i8255_device> m_ppi;
optional_shared_ptr<uint8_t> m_ram;
@@ -176,6 +178,8 @@ public:
uint32_t screen_update_pc6001mk2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+ void pc6001mk2_io(address_map &map);
+ void pc6001mk2_map(address_map &map);
protected:
uint8_t m_bgcol_bank;
uint8_t m_gfx_bank_on;
@@ -215,6 +219,7 @@ public:
DECLARE_WRITE8_MEMBER(fdc_w);
void pc6601(machine_config &config);
+ void pc6601_io(address_map &map);
};
class pc6001sr_state : public pc6601_state
@@ -251,6 +256,8 @@ public:
void pc6001sr(machine_config &config);
+ void pc6001sr_io(address_map &map);
+ void pc6001sr_map(address_map &map);
protected:
virtual void video_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/pc8001.h b/src/mame/includes/pc8001.h
index 6075ad841f6..328372892e2 100644
--- a/src/mame/includes/pc8001.h
+++ b/src/mame/includes/pc8001.h
@@ -77,6 +77,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_ack);
UPD3301_DRAW_CHARACTER_MEMBER( pc8001_display_pixels );
void pc8001(machine_config &config);
+ void pc8001_io(address_map &map);
+ void pc8001_mem(address_map &map);
};
class pc8001mk2_state : public pc8001_state
@@ -91,6 +93,8 @@ public:
DECLARE_WRITE8_MEMBER( port31_w );
void pc8001mk2(machine_config &config);
+ void pc8001mk2_io(address_map &map);
+ void pc8001mk2_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/pc8401a.h b/src/mame/includes/pc8401a.h
index 21d89a109ec..1c26310cfd4 100644
--- a/src/mame/includes/pc8401a.h
+++ b/src/mame/includes/pc8401a.h
@@ -98,6 +98,11 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(pc8401a_keyboard_tick);
void pc8401a(machine_config &config);
void pc8401a_video(machine_config &config);
+ void pc8401a_io(address_map &map);
+ void pc8401a_lcdc(address_map &map);
+ void pc8401a_mem(address_map &map);
+ void pc8500_io(address_map &map);
+ void pc8500_lcdc(address_map &map);
};
class pc8500_state : public pc8401a_state
diff --git a/src/mame/includes/pc9801.h b/src/mame/includes/pc9801.h
index db64b540367..7b3944646a7 100644
--- a/src/mame/includes/pc9801.h
+++ b/src/mame/includes/pc9801.h
@@ -304,6 +304,19 @@ public:
void pc9821ap2(machine_config &config);
void pc9821(machine_config &config);
void pc9801rs(machine_config &config);
+ void ipl_bank(address_map &map);
+ void pc9801_common_io(address_map &map);
+ void pc9801_io(address_map &map);
+ void pc9801_map(address_map &map);
+ void pc9801rs_io(address_map &map);
+ void pc9801rs_map(address_map &map);
+ void pc9801ux_io(address_map &map);
+ void pc9801ux_map(address_map &map);
+ void pc9821_io(address_map &map);
+ void pc9821_map(address_map &map);
+ void upd7220_1_map(address_map &map);
+ void upd7220_2_map(address_map &map);
+ void upd7220_grcg_2_map(address_map &map);
protected:
virtual void video_start() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/pce.h b/src/mame/includes/pce.h
index 17f7f27106f..45590d2edd6 100644
--- a/src/mame/includes/pce.h
+++ b/src/mame/includes/pce.h
@@ -80,6 +80,10 @@ public:
void pce(machine_config &config);
void tg16(machine_config &config);
void sgx(machine_config &config);
+ void pce_io(address_map &map);
+ void pce_mem(address_map &map);
+ void sgx_io(address_map &map);
+ void sgx_mem(address_map &map);
};
#endif // MAME_INCLUDES_PCE_H
diff --git a/src/mame/includes/pcktgal.h b/src/mame/includes/pcktgal.h
index b59c86ea949..afc694b87e7 100644
--- a/src/mame/includes/pcktgal.h
+++ b/src/mame/includes/pcktgal.h
@@ -49,4 +49,6 @@ public:
void bootleg(machine_config &config);
void pcktgal(machine_config &config);
void pcktgal2(machine_config &config);
+ void pcktgal_map(address_map &map);
+ void pcktgal_sound_map(address_map &map);
};
diff --git a/src/mame/includes/pcw.h b/src/mame/includes/pcw.h
index 2b2ade0503b..73298178f8b 100644
--- a/src/mame/includes/pcw.h
+++ b/src/mame/includes/pcw.h
@@ -143,6 +143,9 @@ public:
void pcw8256(machine_config &config);
void pcw8512(machine_config &config);
void pcw9512(machine_config &config);
+ void pcw9512_io(address_map &map);
+ void pcw_io(address_map &map);
+ void pcw_map(address_map &map);
};
#endif // MAME_INCLUDES_PCW_H
diff --git a/src/mame/includes/pcw16.h b/src/mame/includes/pcw16.h
index 2435d478687..1d225a19cab 100644
--- a/src/mame/includes/pcw16.h
+++ b/src/mame/includes/pcw16.h
@@ -142,6 +142,8 @@ public:
void pcw16_vh_decode_mode1(bitmap_ind16 &bitmap, int x, int y, unsigned char byte);
void pcw16_vh_decode_mode2(bitmap_ind16 &bitmap, int x, int y, unsigned char byte);
void pcw16(machine_config &config);
+ void pcw16_io(address_map &map);
+ void pcw16_map(address_map &map);
};
#endif // MAME_INCLUDES_PCW16_H
diff --git a/src/mame/includes/pdp1.h b/src/mame/includes/pdp1.h
index 74dec1e9e95..bd0cd19223f 100644
--- a/src/mame/includes/pdp1.h
+++ b/src/mame/includes/pdp1.h
@@ -303,6 +303,7 @@ public:
int read_spacewar() { return m_spacewar->read(); }
void pdp1(machine_config &config);
+ void pdp1_map(address_map &map);
private:
pdp1_reset_param_t m_reset_param;
int m_old_typewriter_keys[4];
diff --git a/src/mame/includes/pecom.h b/src/mame/includes/pecom.h
index 7f6e88678af..bec69caea98 100644
--- a/src/mame/includes/pecom.h
+++ b/src/mame/includes/pecom.h
@@ -61,6 +61,9 @@ public:
CDP1869_PCB_READ_MEMBER(pecom_pcb_r);
void pecom64(machine_config &config);
void pecom_video(machine_config &config);
+ void cdp1869_page_ram(address_map &map);
+ void pecom64_io(address_map &map);
+ void pecom64_mem(address_map &map);
protected:
required_device<cassette_image_device> m_cassette;
required_device<ram_device> m_ram;
diff --git a/src/mame/includes/pes.h b/src/mame/includes/pes.h
index 6dab69fb3c1..9b910812da8 100644
--- a/src/mame/includes/pes.h
+++ b/src/mame/includes/pes.h
@@ -49,6 +49,8 @@ public:
DECLARE_READ8_MEMBER(data_to_i8031);
DECLARE_WRITE8_MEMBER(data_from_i8031);
void pes(machine_config &config);
+ void i80c31_io(address_map &map);
+ void i80c31_mem(address_map &map);
};
diff --git a/src/mame/includes/pgm.h b/src/mame/includes/pgm.h
index 638c43f40bf..439dbf664b8 100644
--- a/src/mame/includes/pgm.h
+++ b/src/mame/includes/pgm.h
@@ -117,6 +117,11 @@ public:
void pgm_basic_init( bool set_bank = true);
void pgm(machine_config &config);
void pgmbase(machine_config &config);
+ void pgm_base_mem(address_map &map);
+ void pgm_basic_mem(address_map &map);
+ void pgm_mem(address_map &map);
+ void pgm_z80_io(address_map &map);
+ void pgm_z80_mem(address_map &map);
};
@@ -127,11 +132,4 @@ INPUT_PORTS_EXTERN( pgm );
GFXDECODE_EXTERN( pgm );
-ADDRESS_MAP_EXTERN( pgm_z80_mem, 8 );
-ADDRESS_MAP_EXTERN( pgm_z80_io, 8 );
-
-ADDRESS_MAP_EXTERN( pgm_mem, 16 );
-ADDRESS_MAP_EXTERN( pgm_basic_mem, 16 );
-ADDRESS_MAP_EXTERN( pgm_base_mem, 16 );
-
#endif // MAME_INCLUDES_PGM_H
diff --git a/src/mame/includes/pgm2.h b/src/mame/includes/pgm2.h
index 9f4af7be13e..b27a64209bb 100644
--- a/src/mame/includes/pgm2.h
+++ b/src/mame/includes/pgm2.h
@@ -109,6 +109,10 @@ public:
void pgm2_lores(machine_config &config);
void pgm2(machine_config &config);
void pgm2_hires(machine_config &config);
+ void pgm2_map(address_map &map);
+ void pgm2_module_rom_map(address_map &map);
+ void pgm2_ram_rom_map(address_map &map);
+ void pgm2_rom_map(address_map &map);
private:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/phc25.h b/src/mame/includes/phc25.h
index 7b623df56ee..5bde580b59b 100644
--- a/src/mame/includes/phc25.h
+++ b/src/mame/includes/phc25.h
@@ -46,6 +46,8 @@ public:
void phc25(machine_config &config);
void pal(machine_config &config);
void ntsc(machine_config &config);
+ void phc25_io(address_map &map);
+ void phc25_mem(address_map &map);
private:
virtual void video_start() override;
uint8_t *m_char_rom;
diff --git a/src/mame/includes/phoenix.h b/src/mame/includes/phoenix.h
index 9fb42207c03..fe69834d0ea 100644
--- a/src/mame/includes/phoenix.h
+++ b/src/mame/includes/phoenix.h
@@ -45,6 +45,9 @@ public:
void phoenix(machine_config &config);
void survival(machine_config &config);
void pleiads(machine_config &config);
+ void phoenix_memory_map(address_map &map);
+ void pleiads_memory_map(address_map &map);
+ void survival_memory_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
optional_device<pleiads_sound_device> m_pleiads_custom;
diff --git a/src/mame/includes/pingpong.h b/src/mame/includes/pingpong.h
index 3164d2edc8f..4652e1d09c8 100644
--- a/src/mame/includes/pingpong.h
+++ b/src/mame/includes/pingpong.h
@@ -41,4 +41,6 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void merlinmm(machine_config &config);
void pingpong(machine_config &config);
+ void merlinmm_map(address_map &map);
+ void pingpong_map(address_map &map);
};
diff --git a/src/mame/includes/pirates.h b/src/mame/includes/pirates.h
index 030ec21c3e2..e8cdf0d40ca 100644
--- a/src/mame/includes/pirates.h
+++ b/src/mame/includes/pirates.h
@@ -60,4 +60,5 @@ public:
void decrypt_s();
void decrypt_oki();
void pirates(machine_config &config);
+ void pirates_map(address_map &map);
};
diff --git a/src/mame/includes/pitnrun.h b/src/mame/includes/pitnrun.h
index f9b0e6b0b56..ea53f5a6227 100644
--- a/src/mame/includes/pitnrun.h
+++ b/src/mame/includes/pitnrun.h
@@ -80,4 +80,8 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void pitnrun_mcu(machine_config &config);
void pitnrun(machine_config &config);
+ void pitnrun_map(address_map &map);
+ void pitnrun_map_mcu(address_map &map);
+ void pitnrun_sound_io_map(address_map &map);
+ void pitnrun_sound_map(address_map &map);
};
diff --git a/src/mame/includes/pk8020.h b/src/mame/includes/pk8020.h
index 57fb7ac37da..4c115ddf708 100644
--- a/src/mame/includes/pk8020.h
+++ b/src/mame/includes/pk8020.h
@@ -81,6 +81,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(pk8020_pit_out1);
void pk8020(machine_config &config);
+ void pk8020_io(address_map &map);
+ void pk8020_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<i8255_device> m_ppi8255_1;
diff --git a/src/mame/includes/pktgaldx.h b/src/mame/includes/pktgaldx.h
index 02bcb91cc93..aa9631c8337 100644
--- a/src/mame/includes/pktgaldx.h
+++ b/src/mame/includes/pktgaldx.h
@@ -63,4 +63,7 @@ public:
DECO16IC_BANK_CB_MEMBER(bank_callback);
void pktgaldx(machine_config &config);
void pktgaldb(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void pktgaldb_map(address_map &map);
+ void pktgaldx_map(address_map &map);
};
diff --git a/src/mame/includes/playch10.h b/src/mame/includes/playch10.h
index d4ad57afbeb..f59909448fa 100644
--- a/src/mame/includes/playch10.h
+++ b/src/mame/includes/playch10.h
@@ -85,6 +85,9 @@ public:
void playchnv(machine_config &config);
void playch10_hboard(machine_config &config);
+ void bios_io_map(address_map &map);
+ void bios_map(address_map &map);
+ void cart_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/playmark.h b/src/mame/includes/playmark.h
index 40c005a0f09..3c96c6bdc4b 100644
--- a/src/mame/includes/playmark.h
+++ b/src/mame/includes/playmark.h
@@ -128,4 +128,12 @@ public:
void hotmind(machine_config &config);
void bigtwinb(machine_config &config);
void excelsr(machine_config &config);
+ void bigtwin_main_map(address_map &map);
+ void bigtwinb_main_map(address_map &map);
+ void excelsr_main_map(address_map &map);
+ void hotmind_main_map(address_map &map);
+ void hrdtimes_main_map(address_map &map);
+ void luckboomh_main_map(address_map &map);
+ void oki_map(address_map &map);
+ void wbeachvl_main_map(address_map &map);
};
diff --git a/src/mame/includes/plygonet.h b/src/mame/includes/plygonet.h
index 50a0aa68dac..f9c6678b0e6 100644
--- a/src/mame/includes/plygonet.h
+++ b/src/mame/includes/plygonet.h
@@ -108,6 +108,10 @@ public:
INTERRUPT_GEN_MEMBER(polygonet_interrupt);
DECLARE_WRITE_LINE_MEMBER(k054539_nmi_gen);
void plygonet(machine_config &config);
+ void dsp_data_map(address_map &map);
+ void dsp_program_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
#endif // MAME_INCLUDES_PLYGONET_H
diff --git a/src/mame/includes/pmd85.h b/src/mame/includes/pmd85.h
index da0d8a0ad04..6e66527d8f6 100644
--- a/src/mame/includes/pmd85.h
+++ b/src/mame/includes/pmd85.h
@@ -115,6 +115,14 @@ public:
void alfa(machine_config &config);
void c2717(machine_config &config);
void mato(machine_config &config);
+ void alfa_mem(address_map &map);
+ void c2717_mem(address_map &map);
+ void mato_io_map(address_map &map);
+ void mato_mem(address_map &map);
+ void pmd852a_mem(address_map &map);
+ void pmd853_mem(address_map &map);
+ void pmd85_io_map(address_map &map);
+ void pmd85_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<ram_device> m_ram;
diff --git a/src/mame/includes/pokechmp.h b/src/mame/includes/pokechmp.h
index 30fa3b726ee..a8f6c1cb6aa 100644
--- a/src/mame/includes/pokechmp.h
+++ b/src/mame/includes/pokechmp.h
@@ -35,4 +35,7 @@ public:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
void pokechmp(machine_config &config);
+ void pokechmp_map(address_map &map);
+ void pokechmp_oki_map(address_map &map);
+ void pokechmp_sound_map(address_map &map);
};
diff --git a/src/mame/includes/polepos.h b/src/mame/includes/polepos.h
index 3e03aa6165e..8719ae8323e 100644
--- a/src/mame/includes/polepos.h
+++ b/src/mame/includes/polepos.h
@@ -141,6 +141,14 @@ public:
void polepos2bi(machine_config &config);
void topracern(machine_config &config);
void polepos(machine_config &config);
+ void sound_z80_bootleg_iomap(address_map &map);
+ void sound_z80_bootleg_map(address_map &map);
+ void topracern_io(address_map &map);
+ void z8002_map(address_map &map);
+ void z8002_map_1(address_map &map);
+ void z8002_map_2(address_map &map);
+ void z80_io(address_map &map);
+ void z80_map(address_map &map);
};
diff --git a/src/mame/includes/policetr.h b/src/mame/includes/policetr.h
index e0fd766dae5..502dde7a206 100644
--- a/src/mame/includes/policetr.h
+++ b/src/mame/includes/policetr.h
@@ -70,6 +70,8 @@ public:
required_device<palette_device> m_palette;
void sshooter(machine_config &config);
void policetr(machine_config &config);
+ void policetr_map(address_map &map);
+ void sshooter_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/poly88.h b/src/mame/includes/poly88.h
index 94c65a5f8e9..51c2f6e1317 100644
--- a/src/mame/includes/poly88.h
+++ b/src/mame/includes/poly88.h
@@ -66,6 +66,10 @@ public:
void poly88(machine_config &config);
void poly8813(machine_config &config);
+ void poly8813_io(address_map &map);
+ void poly8813_mem(address_map &map);
+ void poly88_io(address_map &map);
+ void poly88_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<i8251_device> m_uart;
diff --git a/src/mame/includes/poly880.h b/src/mame/includes/poly880.h
index 9491f9f3d93..c01a8de44c8 100644
--- a/src/mame/includes/poly880.h
+++ b/src/mame/includes/poly880.h
@@ -54,6 +54,8 @@ public:
uint8_t m_digit;
uint8_t m_segment;
void poly880(machine_config &config);
+ void poly880_io(address_map &map);
+ void poly880_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/polyplay.h b/src/mame/includes/polyplay.h
index 9b284d27c6d..1f217a50cf3 100644
--- a/src/mame/includes/polyplay.h
+++ b/src/mame/includes/polyplay.h
@@ -71,6 +71,10 @@ public:
uint32_t screen_update_polyplay(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void polyplay_zre(machine_config &config);
void polyplay_zrepp(machine_config &config);
+ void polyplay_io_zre(address_map &map);
+ void polyplay_io_zrepp(address_map &map);
+ void polyplay_mem_zre(address_map &map);
+ void polyplay_mem_zrepp(address_map &map);
};
#endif // MAME_INCLUDES_POLYPLAY_H
diff --git a/src/mame/includes/poolshrk.h b/src/mame/includes/poolshrk.h
index 95809c468f9..87750e421c0 100644
--- a/src/mame/includes/poolshrk.h
+++ b/src/mame/includes/poolshrk.h
@@ -56,6 +56,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void poolshrk(machine_config &config);
+ void poolshrk_cpu_map(address_map &map);
};
diff --git a/src/mame/includes/pooyan.h b/src/mame/includes/pooyan.h
index ce72b08d310..17f96fa78f2 100644
--- a/src/mame/includes/pooyan.h
+++ b/src/mame/includes/pooyan.h
@@ -48,4 +48,5 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
void pooyan(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/popeye.h b/src/mame/includes/popeye.h
index d74e76b332d..ead1267a99f 100644
--- a/src/mame/includes/popeye.h
+++ b/src/mame/includes/popeye.h
@@ -69,4 +69,8 @@ public:
void tpp1(machine_config &config);
void tnx1(machine_config &config);
void popeyebl(machine_config &config);
+ void popeye_io_map(address_map &map);
+ void popeyebl_map(address_map &map);
+ void tnx1_map(address_map &map);
+ void tpp2_map(address_map &map);
};
diff --git a/src/mame/includes/portrait.h b/src/mame/includes/portrait.h
index 7bc9148e6e0..1212ea0546e 100644
--- a/src/mame/includes/portrait.h
+++ b/src/mame/includes/portrait.h
@@ -44,4 +44,6 @@ public:
inline void get_tile_info( tile_data &tileinfo, int tile_index, const uint8_t *source );
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void portrait(machine_config &config);
+ void portrait_map(address_map &map);
+ void portrait_sound_map(address_map &map);
};
diff --git a/src/mame/includes/powerins.h b/src/mame/includes/powerins.h
index 13a4bd12914..170037d4b9b 100644
--- a/src/mame/includes/powerins.h
+++ b/src/mame/includes/powerins.h
@@ -52,4 +52,10 @@ public:
void powerinsa(machine_config &config);
void powerinsb(machine_config &config);
void powerins(machine_config &config);
+ void powerins_map(address_map &map);
+ void powerins_sound_io_map(address_map &map);
+ void powerins_sound_map(address_map &map);
+ void powerinsa_map(address_map &map);
+ void powerinsa_oki_map(address_map &map);
+ void powerinsb_sound_io_map(address_map &map);
};
diff --git a/src/mame/includes/pp01.h b/src/mame/includes/pp01.h
index ce9d2ce9eea..874001abaa5 100644
--- a/src/mame/includes/pp01.h
+++ b/src/mame/includes/pp01.h
@@ -63,6 +63,8 @@ public:
void pp01_video_w(uint8_t block,uint16_t offset,uint8_t data,uint8_t part);
void pp01_set_memory(uint8_t block, uint8_t data);
void pp01(machine_config &config);
+ void pp01_io(address_map &map);
+ void pp01_mem(address_map &map);
};
#endif // MAME_INCLUDES_PP01_H
diff --git a/src/mame/includes/prehisle.h b/src/mame/includes/prehisle.h
index 49c2ad3d26e..bf0ce853232 100644
--- a/src/mame/includes/prehisle.h
+++ b/src/mame/includes/prehisle.h
@@ -52,4 +52,7 @@ public:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
void prehisle(machine_config &config);
+ void prehisle_map(address_map &map);
+ void prehisle_sound_io_map(address_map &map);
+ void prehisle_sound_map(address_map &map);
};
diff --git a/src/mame/includes/primo.h b/src/mame/includes/primo.h
index c7984a7f7fb..d5f68a7b549 100644
--- a/src/mame/includes/primo.h
+++ b/src/mame/includes/primo.h
@@ -73,6 +73,11 @@ public:
void primoa64(machine_config &config);
void primoc64(machine_config &config);
void primoa48(machine_config &config);
+ void primo32_mem(address_map &map);
+ void primo48_mem(address_map &map);
+ void primo64_mem(address_map &map);
+ void primoa_port(address_map &map);
+ void primob_port(address_map &map);
};
diff --git a/src/mame/includes/prof180x.h b/src/mame/includes/prof180x.h
index a5083b56acf..8cbc9ee7dc9 100644
--- a/src/mame/includes/prof180x.h
+++ b/src/mame/includes/prof180x.h
@@ -46,6 +46,8 @@ public:
int m_mm0;
int m_mm1;
void prof180x(machine_config &config);
+ void prof180x_io(address_map &map);
+ void prof180x_mem(address_map &map);
};
#endif // MAME_INCLUDES_PROF180X_H
diff --git a/src/mame/includes/prof80.h b/src/mame/includes/prof80.h
index 3d69dbc5b54..a219a72b571 100644
--- a/src/mame/includes/prof80.h
+++ b/src/mame/includes/prof80.h
@@ -102,6 +102,9 @@ public:
emu_timer *m_floppy_motor_off_timer;
void prof80(machine_config &config);
+ void prof80_io(address_map &map);
+ void prof80_mem(address_map &map);
+ void prof80_mmu(address_map &map);
};
#endif
diff --git a/src/mame/includes/psikyo.h b/src/mame/includes/psikyo.h
index e4f95bc0508..ce43c8a9ea1 100644
--- a/src/mame/includes/psikyo.h
+++ b/src/mame/includes/psikyo.h
@@ -112,4 +112,16 @@ public:
void gunbird(machine_config &config);
void s1945(machine_config &config);
void s1945bl(machine_config &config);
+ void gunbird_map(address_map &map);
+ void gunbird_sound_io_map(address_map &map);
+ void gunbird_sound_map(address_map &map);
+ void psikyo_bootleg_map(address_map &map);
+ void psikyo_map(address_map &map);
+ void s1945_map(address_map &map);
+ void s1945_sound_io_map(address_map &map);
+ void s1945bl_oki_map(address_map &map);
+ void s1945jn_map(address_map &map);
+ void sngkace_map(address_map &map);
+ void sngkace_sound_io_map(address_map &map);
+ void sngkace_sound_map(address_map &map);
};
diff --git a/src/mame/includes/psikyo4.h b/src/mame/includes/psikyo4.h
index 86b0e97940a..674aab9d950 100644
--- a/src/mame/includes/psikyo4.h
+++ b/src/mame/includes/psikyo4.h
@@ -78,4 +78,6 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, uint32_t scr);
void ps4big(machine_config &config);
void ps4small(machine_config &config);
+ void ps4_map(address_map &map);
+ void ps4_ymf_map(address_map &map);
};
diff --git a/src/mame/includes/psikyosh.h b/src/mame/includes/psikyosh.h
index b303933c71c..14ea8506b4b 100644
--- a/src/mame/includes/psikyosh.h
+++ b/src/mame/includes/psikyosh.h
@@ -88,4 +88,6 @@ public:
void psikyo3v1(machine_config &config);
void psikyo5(machine_config &config);
void psikyo5_240(machine_config &config);
+ void ps3v1_map(address_map &map);
+ void ps5_map(address_map &map);
};
diff --git a/src/mame/includes/psion.h b/src/mame/includes/psion.h
index 8f3ba340f11..cbaf7fd64c1 100644
--- a/src/mame/includes/psion.h
+++ b/src/mame/includes/psion.h
@@ -90,6 +90,11 @@ public:
void psionlz(machine_config &config);
void psionla(machine_config &config);
void psionp350(machine_config &config);
+ void psioncm_mem(address_map &map);
+ void psionla_mem(address_map &map);
+ void psionlam_mem(address_map &map);
+ void psionlz_mem(address_map &map);
+ void psionp350_mem(address_map &map);
};
@@ -108,6 +113,7 @@ public:
HD44780_PIXEL_UPDATE(psion1_pixel_update);
void psion1(machine_config &config);
+ void psion1_mem(address_map &map);
};
#endif // MAME_INCLUDES_PSION_H
diff --git a/src/mame/includes/psychic5.h b/src/mame/includes/psychic5.h
index 78165e5a7ee..25b1af8f5ba 100644
--- a/src/mame/includes/psychic5.h
+++ b/src/mame/includes/psychic5.h
@@ -93,5 +93,13 @@ public:
void draw_sprites(bitmap_rgb32 &bitmap, const rectangle &cliprect);
void psychic5(machine_config &config);
void bombsa(machine_config &config);
+ void bombsa_main_map(address_map &map);
+ void bombsa_sound_map(address_map &map);
+ void bombsa_soundport_map(address_map &map);
+ void bombsa_vrambank_map(address_map &map);
+ void psychic5_main_map(address_map &map);
+ void psychic5_sound_map(address_map &map);
+ void psychic5_soundport_map(address_map &map);
+ void psychic5_vrambank_map(address_map &map);
void draw_background(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); //only used by psychic5
};
diff --git a/src/mame/includes/punchout.h b/src/mame/includes/punchout.h
index 3d19b0641a1..92e05683598 100644
--- a/src/mame/includes/punchout.h
+++ b/src/mame/includes/punchout.h
@@ -93,4 +93,10 @@ public:
void spnchout(machine_config &config);
void armwrest(machine_config &config);
void punchout(machine_config &config);
+ void armwrest_map(address_map &map);
+ void punchout_io_map(address_map &map);
+ void punchout_map(address_map &map);
+ void punchout_sound_map(address_map &map);
+ void punchout_vlm_map(address_map &map);
+ void spnchout_io_map(address_map &map);
};
diff --git a/src/mame/includes/px8.h b/src/mame/includes/px8.h
index 61b24b567bb..191f5922ddb 100644
--- a/src/mame/includes/px8.h
+++ b/src/mame/includes/px8.h
@@ -81,6 +81,10 @@ public:
int m_ksc; /* keyboard scan column */
DECLARE_PALETTE_INIT(px8);
void px8(machine_config &config);
+ void px8_io(address_map &map);
+ void px8_mem(address_map &map);
+ void px8_slave_io(address_map &map);
+ void px8_slave_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/qdrmfgp.h b/src/mame/includes/qdrmfgp.h
index 0ba268f84a0..dcb8d48dc2b 100644
--- a/src/mame/includes/qdrmfgp.h
+++ b/src/mame/includes/qdrmfgp.h
@@ -74,4 +74,7 @@ public:
K056832_CB_MEMBER(qdrmfgp2_tile_callback);
void qdrmfgp(machine_config &config);
void qdrmfgp2(machine_config &config);
+ void qdrmfgp2_map(address_map &map);
+ void qdrmfgp_k054539_map(address_map &map);
+ void qdrmfgp_map(address_map &map);
};
diff --git a/src/mame/includes/qix.h b/src/mame/includes/qix.h
index 50a63e8c010..552276546a3 100644
--- a/src/mame/includes/qix.h
+++ b/src/mame/includes/qix.h
@@ -158,4 +158,12 @@ public:
void slither(machine_config &config);
void slither_video(machine_config &config);
void slither_audio(machine_config &config);
+ void audio_map(address_map &map);
+ void kram3_main_map(address_map &map);
+ void kram3_video_map(address_map &map);
+ void main_map(address_map &map);
+ void qix_video_map(address_map &map);
+ void slither_video_map(address_map &map);
+ void zoo_main_map(address_map &map);
+ void zookeep_video_map(address_map &map);
};
diff --git a/src/mame/includes/quasar.h b/src/mame/includes/quasar.h
index df5e0e7372e..4b4a931a48c 100644
--- a/src/mame/includes/quasar.h
+++ b/src/mame/includes/quasar.h
@@ -33,4 +33,9 @@ public:
uint32_t screen_update_quasar(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(quasar_interrupt);
void quasar(machine_config &config);
+ void quasar(address_map &map);
+ void quasar_data(address_map &map);
+ void quasar_io(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/quizdna.h b/src/mame/includes/quizdna.h
index a0d28da6691..546e5bef068 100644
--- a/src/mame/includes/quizdna.h
+++ b/src/mame/includes/quizdna.h
@@ -49,4 +49,9 @@ public:
void gakupara(machine_config &config);
void quizdna(machine_config &config);
void gekiretu(machine_config &config);
+ void gakupara_io_map(address_map &map);
+ void gekiretu_io_map(address_map &map);
+ void gekiretu_map(address_map &map);
+ void quizdna_io_map(address_map &map);
+ void quizdna_map(address_map &map);
};
diff --git a/src/mame/includes/quizpani.h b/src/mame/includes/quizpani.h
index c21efef2692..f9c9c099c4a 100644
--- a/src/mame/includes/quizpani.h
+++ b/src/mame/includes/quizpani.h
@@ -37,4 +37,5 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void quizpani(machine_config &config);
+ void quizpani_map(address_map &map);
};
diff --git a/src/mame/includes/radio86.h b/src/mame/includes/radio86.h
index 59e163c27a9..0b0fe631d1e 100644
--- a/src/mame/includes/radio86.h
+++ b/src/mame/includes/radio86.h
@@ -96,6 +96,14 @@ public:
void radio86(machine_config &config);
void radio16(machine_config &config);
void radioram(machine_config &config);
+ void impuls03_mem(address_map &map);
+ void mikron2_mem(address_map &map);
+ void radio86_16_mem(address_map &map);
+ void radio86_io(address_map &map);
+ void radio86_mem(address_map &map);
+ void radio86ram_mem(address_map &map);
+ void radio86rom_mem(address_map &map);
+ void rk7007_io(address_map &map);
protected:
required_device<cassette_image_device> m_cassette;
optional_device<generic_slot_device> m_cart; // for ROMDisk - only Radio86K & Orion?
diff --git a/src/mame/includes/raiden.h b/src/mame/includes/raiden.h
index c47838d6d9a..95032cea8ab 100644
--- a/src/mame/includes/raiden.h
+++ b/src/mame/includes/raiden.h
@@ -9,7 +9,7 @@
#include "audio/seibu.h"
#include "video/bufsprite.h"
-class raiden_state : public driver_device
+class raiden_state : public driver_device, protected seibu_sound_common
{
public:
raiden_state(const machine_config &mconfig, device_type type, const char *tag)
@@ -76,4 +76,12 @@ public:
void raidenb(machine_config &config);
void raiden(machine_config &config);
void raidenu(machine_config &config);
+ void main_map(address_map &map);
+ void raiden_sound_decrypted_opcodes_map(address_map &map);
+ void raiden_sound_map(address_map &map);
+ void raidenb_main_map(address_map &map);
+ void raidenu_main_map(address_map &map);
+ void raidenu_sub_map(address_map &map);
+ void sei80bu_encrypted_full_map(address_map &map);
+ void sub_map(address_map &map);
};
diff --git a/src/mame/includes/raiden2.h b/src/mame/includes/raiden2.h
index 527d7024355..8b2badd3c0f 100644
--- a/src/mame/includes/raiden2.h
+++ b/src/mame/includes/raiden2.h
@@ -4,9 +4,6 @@
#include "machine/seibucop/seibucop.h"
#include "video/seibu_crtc.h"
-ADDRESS_MAP_EXTERN(raiden2_sound_map, 8);
-ADDRESS_MAP_EXTERN(zeroteam_sound_map, 8);
-
class raiden2_state : public driver_device
{
public:
@@ -157,6 +154,13 @@ public:
void xsedae(machine_config &config);
void zeroteam(machine_config &config);
void raiden2(machine_config &config);
+ void raiden2_cop_mem(address_map &map);
+ void raiden2_mem(address_map &map);
+ void raiden2_sound_map(address_map &map);
+ void raidendx_mem(address_map &map);
+ void xsedae_mem(address_map &map);
+ void zeroteam_mem(address_map &map);
+ void zeroteam_sound_map(address_map &map);
protected:
virtual void machine_start() override;
};
diff --git a/src/mame/includes/rallyx.h b/src/mame/includes/rallyx.h
index 03213aa1a83..e5764a16194 100644
--- a/src/mame/includes/rallyx.h
+++ b/src/mame/includes/rallyx.h
@@ -101,4 +101,7 @@ public:
void tactcian(machine_config &config);
void rallyx(machine_config &config);
void jungler(machine_config &config);
+ void io_map(address_map &map);
+ void jungler_map(address_map &map);
+ void rallyx_map(address_map &map);
};
diff --git a/src/mame/includes/rampart.h b/src/mame/includes/rampart.h
index ff2285e67fc..97989226612 100644
--- a/src/mame/includes/rampart.h
+++ b/src/mame/includes/rampart.h
@@ -39,4 +39,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void rampart(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/rastan.h b/src/mame/includes/rastan.h
index 68ff9bbe6f7..0e52e5a6d8c 100644
--- a/src/mame/includes/rastan.h
+++ b/src/mame/includes/rastan.h
@@ -50,4 +50,6 @@ public:
uint32_t screen_update_rastan(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
DECLARE_WRITE_LINE_MEMBER(rastan_msm5205_vck);
void rastan(machine_config &config);
+ void rastan_map(address_map &map);
+ void rastan_s_map(address_map &map);
};
diff --git a/src/mame/includes/rbisland.h b/src/mame/includes/rbisland.h
index 66f3e4e90c4..4c573a01929 100644
--- a/src/mame/includes/rbisland.h
+++ b/src/mame/includes/rbisland.h
@@ -81,6 +81,10 @@ public:
void jumping(machine_config &config);
void rbisland(machine_config &config);
void jumpingi(machine_config &config);
+ void jumping_map(address_map &map);
+ void jumping_sound_map(address_map &map);
+ void rbisland_map(address_map &map);
+ void rbisland_sound_map(address_map &map);
};
diff --git a/src/mame/includes/realbrk.h b/src/mame/includes/realbrk.h
index 5382e2f80c2..b152e4d12e5 100644
--- a/src/mame/includes/realbrk.h
+++ b/src/mame/includes/realbrk.h
@@ -80,4 +80,9 @@ public:
void dai2kaku(machine_config &config);
void realbrk(machine_config &config);
void pkgnshdx(machine_config &config);
+ void base_mem(address_map &map);
+ void dai2kaku_mem(address_map &map);
+ void pkgnsh_mem(address_map &map);
+ void pkgnshdx_mem(address_map &map);
+ void realbrk_mem(address_map &map);
};
diff --git a/src/mame/includes/redalert.h b/src/mame/includes/redalert.h
index b26e311ccba..da87a21ccc5 100644
--- a/src/mame/includes/redalert.h
+++ b/src/mame/includes/redalert.h
@@ -87,4 +87,11 @@ public:
void redalert_audio(machine_config &config);
void redalert_audio_m37b(machine_config &config);
void redalert_audio_voice(machine_config &config);
+ void demoneye_audio_map(address_map &map);
+ void demoneye_main_map(address_map &map);
+ void panther_main_map(address_map &map);
+ void redalert_audio_map(address_map &map);
+ void redalert_main_map(address_map &map);
+ void redalert_voice_map(address_map &map);
+ void ww3_main_map(address_map &map);
};
diff --git a/src/mame/includes/redclash.h b/src/mame/includes/redclash.h
index 0db7f65defb..4d8a6af472a 100644
--- a/src/mame/includes/redclash.h
+++ b/src/mame/includes/redclash.h
@@ -65,4 +65,9 @@ public:
void zerohour(machine_config &config);
void sraider(machine_config &config);
void redclash(machine_config &config);
+ void redclash_map(address_map &map);
+ void sraider_cpu1_map(address_map &map);
+ void sraider_cpu2_io_map(address_map &map);
+ void sraider_cpu2_map(address_map &map);
+ void zerohour_map(address_map &map);
};
diff --git a/src/mame/includes/relief.h b/src/mame/includes/relief.h
index cb4243aa49f..9e34b00fdb9 100644
--- a/src/mame/includes/relief.h
+++ b/src/mame/includes/relief.h
@@ -44,4 +44,6 @@ public:
static const atari_motion_objects_config s_mob_config;
void relief(machine_config &config);
+ void main_map(address_map &map);
+ void oki_map(address_map &map);
};
diff --git a/src/mame/includes/renegade.h b/src/mame/includes/renegade.h
index adc4235fb5e..ea90cb32904 100644
--- a/src/mame/includes/renegade.h
+++ b/src/mame/includes/renegade.h
@@ -76,4 +76,7 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void renegade(machine_config &config);
void kuniokunb(machine_config &config);
+ void renegade_map(address_map &map);
+ void renegade_nomcu_map(address_map &map);
+ void renegade_sound_map(address_map &map);
};
diff --git a/src/mame/includes/retofinv.h b/src/mame/includes/retofinv.h
index ed90a90f923..a1c412ba0ed 100644
--- a/src/mame/includes/retofinv.h
+++ b/src/mame/includes/retofinv.h
@@ -52,6 +52,10 @@ public:
void retofinvb_nomcu(machine_config &config);
void retofinv(machine_config &config);
void retofinvb1(machine_config &config);
+ void bootleg_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
diff --git a/src/mame/includes/rltennis.h b/src/mame/includes/rltennis.h
index b3db9cdbdaa..32867a0abfc 100644
--- a/src/mame/includes/rltennis.h
+++ b/src/mame/includes/rltennis.h
@@ -49,4 +49,6 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
TIMER_CALLBACK_MEMBER(sample_player);
void rltennis(machine_config &config);
+ void ramdac_map(address_map &map);
+ void rltennis_main(address_map &map);
};
diff --git a/src/mame/includes/rm380z.h b/src/mame/includes/rm380z.h
index 75cadff113d..a3c25207059 100644
--- a/src/mame/includes/rm380z.h
+++ b/src/mame/includes/rm380z.h
@@ -142,6 +142,10 @@ public:
TIMER_CALLBACK_MEMBER(static_vblank_timer);
void rm480z(machine_config &config);
void rm380z(machine_config &config);
+ void rm380z_io(address_map &map);
+ void rm380z_mem(address_map &map);
+ void rm480z_io(address_map &map);
+ void rm480z_mem(address_map &map);
};
#endif // MAME_INCLUDES_RM380Z_H
diff --git a/src/mame/includes/rmnimbus.h b/src/mame/includes/rmnimbus.h
index 7e3e474f1a4..4ef63287c31 100644
--- a/src/mame/includes/rmnimbus.h
+++ b/src/mame/includes/rmnimbus.h
@@ -230,6 +230,10 @@ public:
} m_nimbus_mouse;
void nimbus(machine_config &config);
+ void nimbus_io(address_map &map);
+ void nimbus_iocpu_io(address_map &map);
+ void nimbus_iocpu_mem(address_map &map);
+ void nimbus_mem(address_map &map);
private:
void debug_command(int ref, const std::vector<std::string> &params);
void video_debug(int ref, const std::vector<std::string> &params);
diff --git a/src/mame/includes/rockrage.h b/src/mame/includes/rockrage.h
index 6b185d9e493..70ca39f06ae 100644
--- a/src/mame/includes/rockrage.h
+++ b/src/mame/includes/rockrage.h
@@ -56,4 +56,7 @@ public:
K007420_CALLBACK_MEMBER(rockrage_sprite_callback);
void rockrage(machine_config &config);
+ void rockrage_map(address_map &map);
+ void rockrage_sound_map(address_map &map);
+ void rockrage_vlm_map(address_map &map);
};
diff --git a/src/mame/includes/rocnrope.h b/src/mame/includes/rocnrope.h
index c49d789e517..2c9d12ba521 100644
--- a/src/mame/includes/rocnrope.h
+++ b/src/mame/includes/rocnrope.h
@@ -44,4 +44,5 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void rocnrope(machine_config &config);
+ void rocnrope_map(address_map &map);
};
diff --git a/src/mame/includes/rohga.h b/src/mame/includes/rohga.h
index c079b2d2c4e..26016e9f3b4 100644
--- a/src/mame/includes/rohga.h
+++ b/src/mame/includes/rohga.h
@@ -92,4 +92,12 @@ public:
void hangzo(machine_config &config);
void schmeisr(machine_config &config);
void rohga(machine_config &config);
+ void hangzo_map(address_map &map);
+ void hotb_base_map(address_map &map);
+ void nitrobal_map(address_map &map);
+ void nitrobal_sound_map(address_map &map);
+ void rohga_map(address_map &map);
+ void rohga_sound_map(address_map &map);
+ void schmeisr_map(address_map &map);
+ void wizdfire_map(address_map &map);
};
diff --git a/src/mame/includes/rollerg.h b/src/mame/includes/rollerg.h
index e183bb74a0e..126b4e21e3a 100644
--- a/src/mame/includes/rollerg.h
+++ b/src/mame/includes/rollerg.h
@@ -51,6 +51,8 @@ public:
DECLARE_WRITE8_MEMBER(banking_callback);
void rollerg(machine_config &config);
+ void rollerg_map(address_map &map);
+ void rollerg_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/rollrace.h b/src/mame/includes/rollrace.h
index 3751ea6459e..1947e89b973 100644
--- a/src/mame/includes/rollrace.h
+++ b/src/mame/includes/rollrace.h
@@ -62,4 +62,6 @@ public:
INTERRUPT_GEN_MEMBER(sound_timer_irq);
void rollace2(machine_config &config);
void rollrace(machine_config &config);
+ void rollrace_map(address_map &map);
+ void rollrace_sound_map(address_map &map);
};
diff --git a/src/mame/includes/route16.h b/src/mame/includes/route16.h
index 4dde0b78707..4e5753430a0 100644
--- a/src/mame/includes/route16.h
+++ b/src/mame/includes/route16.h
@@ -41,6 +41,14 @@ public:
void speakres(machine_config &config);
void stratvox(machine_config &config);
void route16(machine_config &config);
+ void cpu1_io_map(address_map &map);
+ void route16_cpu1_map(address_map &map);
+ void route16_cpu2_map(address_map &map);
+ void routex_cpu1_map(address_map &map);
+ void speakres_cpu1_map(address_map &map);
+ void stratvox_cpu1_map(address_map &map);
+ void stratvox_cpu2_map(address_map &map);
+ void ttmahjng_cpu1_map(address_map &map);
private:
required_device<cpu_device> m_cpu1;
required_device<cpu_device> m_cpu2;
diff --git a/src/mame/includes/rpunch.h b/src/mame/includes/rpunch.h
index e0467f5aed5..600053ceebf 100644
--- a/src/mame/includes/rpunch.h
+++ b/src/mame/includes/rpunch.h
@@ -73,4 +73,6 @@ public:
void svolley(machine_config &config);
void rpunch(machine_config &config);
void svolleybl(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/runaway.h b/src/mame/includes/runaway.h
index 785486aed75..87a33b920f1 100644
--- a/src/mame/includes/runaway.h
+++ b/src/mame/includes/runaway.h
@@ -41,4 +41,5 @@ public:
required_device<palette_device> m_palette;
void qwak(machine_config &config);
void runaway(machine_config &config);
+ void runaway_map(address_map &map);
};
diff --git a/src/mame/includes/rungun.h b/src/mame/includes/rungun.h
index a604732d0c3..b0e88d63bb0 100644
--- a/src/mame/includes/rungun.h
+++ b/src/mame/includes/rungun.h
@@ -110,4 +110,7 @@ public:
INTERRUPT_GEN_MEMBER(rng_interrupt);
void rng(machine_config &config);
void rng_dual(machine_config &config);
+ void rungun_k054539_map(address_map &map);
+ void rungun_map(address_map &map);
+ void rungun_sound_map(address_map &map);
};
diff --git a/src/mame/includes/s11.h b/src/mame/includes/s11.h
index 1d95ecdce37..fa4eba6b435 100644
--- a/src/mame/includes/s11.h
+++ b/src/mame/includes/s11.h
@@ -81,6 +81,9 @@ public:
DECLARE_MACHINE_RESET(s11);
DECLARE_DRIVER_INIT(s11);
void s11(machine_config &config);
+ void s11_audio_map(address_map &map);
+ void s11_bg_map(address_map &map);
+ void s11_main_map(address_map &map);
protected:
// devices
required_device<cpu_device> m_maincpu;
diff --git a/src/mame/includes/s11a.h b/src/mame/includes/s11a.h
index 8f31c836c72..b6920b44d62 100644
--- a/src/mame/includes/s11a.h
+++ b/src/mame/includes/s11a.h
@@ -24,6 +24,9 @@ public:
DECLARE_DRIVER_INIT(s11a);
void s11a(machine_config &config);
+ void s11a_audio_map(address_map &map);
+ void s11a_bg_map(address_map &map);
+ void s11a_main_map(address_map &map);
protected:
private:
diff --git a/src/mame/includes/s11b.h b/src/mame/includes/s11b.h
index cc9dc7ada98..00fe655f294 100644
--- a/src/mame/includes/s11b.h
+++ b/src/mame/includes/s11b.h
@@ -33,6 +33,9 @@ public:
DECLARE_DRIVER_INIT(s11b_invert);
void s11b(machine_config &config);
+ void s11b_audio_map(address_map &map);
+ void s11b_bg_map(address_map &map);
+ void s11b_main_map(address_map &map);
protected:
optional_device<hc55516_device> m_bg_hc55516;
diff --git a/src/mame/includes/s11c.h b/src/mame/includes/s11c.h
index 537295152ac..6b7ce576f38 100644
--- a/src/mame/includes/s11c.h
+++ b/src/mame/includes/s11c.h
@@ -22,6 +22,7 @@ public:
DECLARE_DRIVER_INIT(s11c);
void s11c(machine_config &config);
+ void s11c_main_map(address_map &map);
protected:
private:
diff --git a/src/mame/includes/sage2.h b/src/mame/includes/sage2.h
index 9b45334c44b..bb8ada66786 100644
--- a/src/mame/includes/sage2.h
+++ b/src/mame/includes/sage2.h
@@ -89,4 +89,5 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_select);
DECLARE_WRITE_LINE_MEMBER(write_centronics_fault);
void sage2(machine_config &config);
+ void sage2_mem(address_map &map);
};
diff --git a/src/mame/includes/samcoupe.h b/src/mame/includes/samcoupe.h
index 2990a706c10..adc560d9788 100644
--- a/src/mame/includes/samcoupe.h
+++ b/src/mame/includes/samcoupe.h
@@ -197,6 +197,8 @@ public:
int m_lpt1_busy;
int m_lpt2_busy;
void samcoupe(machine_config &config);
+ void samcoupe_io(address_map &map);
+ void samcoupe_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/sauro.h b/src/mame/includes/sauro.h
index 61464ed77d8..d7426809f1a 100644
--- a/src/mame/includes/sauro.h
+++ b/src/mame/includes/sauro.h
@@ -75,4 +75,9 @@ public:
void tecfri(machine_config &config);
void sauro(machine_config &config);
void saurob(machine_config &config);
+ void sauro_io_map(address_map &map);
+ void sauro_map(address_map &map);
+ void sauro_sound_map(address_map &map);
+ void saurob_sound_map(address_map &map);
+ void trckydoc_map(address_map &map);
};
diff --git a/src/mame/includes/sbasketb.h b/src/mame/includes/sbasketb.h
index 4626c644ca6..08e8a369a79 100644
--- a/src/mame/includes/sbasketb.h
+++ b/src/mame/includes/sbasketb.h
@@ -62,4 +62,6 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void sbasketb(machine_config &config);
void sbasketbu(machine_config &config);
+ void sbasketb_map(address_map &map);
+ void sbasketb_sound_map(address_map &map);
};
diff --git a/src/mame/includes/sbugger.h b/src/mame/includes/sbugger.h
index 850fe9ae589..696b316e233 100644
--- a/src/mame/includes/sbugger.h
+++ b/src/mame/includes/sbugger.h
@@ -28,4 +28,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sbugger(machine_config &config);
+ void sbugger_io_map(address_map &map);
+ void sbugger_map(address_map &map);
};
diff --git a/src/mame/includes/scotrsht.h b/src/mame/includes/scotrsht.h
index 0fcb99645fc..c5fd5db124e 100644
--- a/src/mame/includes/scotrsht.h
+++ b/src/mame/includes/scotrsht.h
@@ -52,4 +52,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void scotrsht(machine_config &config);
+ void scotrsht_map(address_map &map);
+ void scotrsht_sound_map(address_map &map);
+ void scotrsht_sound_port(address_map &map);
};
diff --git a/src/mame/includes/scramble.h b/src/mame/includes/scramble.h
index 47d25bcf4a1..37632250a0d 100644
--- a/src/mame/includes/scramble.h
+++ b/src/mame/includes/scramble.h
@@ -110,6 +110,27 @@ public:
void mimonscr(machine_config &config);
void ckongs(machine_config &config);
void mrkougb(machine_config &config);
+ void ad2083_map(address_map &map);
+ void ad2083_sound_io_map(address_map &map);
+ void ad2083_sound_map(address_map &map);
+ void ckongs_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void harem_map(address_map &map);
+ void harem_sound_io_map(address_map &map);
+ void harem_sound_map(address_map &map);
+ void hotshock_map(address_map &map);
+ void hotshock_sound_io_map(address_map &map);
+ void hunchbks_map(address_map &map);
+ void hunchbks_readport(address_map &map);
+ void mars_map(address_map &map);
+ void mimonscr_map(address_map &map);
+ void mrkougar_map(address_map &map);
+ void newsin7_map(address_map &map);
+ void scramble_map(address_map &map);
+ void scramble_sound_io_map(address_map &map);
+ void scramble_sound_map(address_map &map);
+ void triplep_io_map(address_map &map);
+ void triplep_map(address_map &map);
private:
void cavelon_banksw();
inline int bit(int i,int n);
diff --git a/src/mame/includes/sderby.h b/src/mame/includes/sderby.h
index a68e4072522..4fbe0a49258 100644
--- a/src/mame/includes/sderby.h
+++ b/src/mame/includes/sderby.h
@@ -51,4 +51,10 @@ public:
void shinygld(machine_config &config);
void sderby(machine_config &config);
void luckboom(machine_config &config);
+ void luckboom_map(address_map &map);
+ void roulette_map(address_map &map);
+ void sderby_map(address_map &map);
+ void sderbya_map(address_map &map);
+ void shinygld_map(address_map &map);
+ void spacewin_map(address_map &map);
};
diff --git a/src/mame/includes/segag80r.h b/src/mame/includes/segag80r.h
index 3814d89eabf..67b387257f5 100644
--- a/src/mame/includes/segag80r.h
+++ b/src/mame/includes/segag80r.h
@@ -20,7 +20,7 @@
class sega005_sound_device;
-class segag80r_state : public driver_device
+class segag80r_state : public segag80snd_common
{
public:
enum
@@ -29,7 +29,7 @@ public:
};
segag80r_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ : segag80snd_common(mconfig, type, tag),
m_mainram(*this, "mainram"),
m_videoram(*this, "videoram"),
m_sn1(*this, "sn1"),
@@ -177,7 +177,13 @@ public:
void sega005_sound_board(machine_config &config);
void spaceod_sound_board(machine_config &config);
void monsterb_sound_board(machine_config &config);
- void sega_speech_board(machine_config &config);
+ void g80r_opcodes_map(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void main_ppi8255_portmap(address_map &map);
+ void sega_315_opcodes_map(address_map &map);
+ void sindbadm_portmap(address_map &map);
+ void sindbadm_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
emu_timer *m_vblank_latch_clear_timer;
diff --git a/src/mame/includes/segag80v.h b/src/mame/includes/segag80v.h
index 969806dfe9f..acb3f1d67ac 100644
--- a/src/mame/includes/segag80v.h
+++ b/src/mame/includes/segag80v.h
@@ -11,11 +11,11 @@
#include "video/vector.h"
#include "screen.h"
-class segag80v_state : public driver_device
+class segag80v_state : public segag80snd_common
{
public:
segag80v_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ : segag80snd_common(mconfig, type, tag),
m_mainram(*this, "mainram"),
m_vectorram(*this, "vectorram"),
m_maincpu(*this, "maincpu"),
@@ -82,5 +82,6 @@ public:
void startrek(machine_config &config);
void zektor(machine_config &config);
void spacfury(machine_config &config);
- void sega_speech_board(machine_config &config);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
};
diff --git a/src/mame/includes/segahang.h b/src/mame/includes/segahang.h
index 89b0454334d..99ca2bfe618 100644
--- a/src/mame/includes/segahang.h
+++ b/src/mame/includes/segahang.h
@@ -88,6 +88,17 @@ public:
void endurobl(machine_config &config);
void enduror1(machine_config &config);
void hangon(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void fd1094_decrypted_opcodes_map(address_map &map);
+ void hangon_map(address_map &map);
+ void mcu_io_map(address_map &map);
+ void sharrier_map(address_map &map);
+ void sound_map_2151(address_map &map);
+ void sound_map_2203(address_map &map);
+ void sound_portmap_2151(address_map &map);
+ void sound_portmap_2203(address_map &map);
+ void sound_portmap_2203x2(address_map &map);
+ void sub_map(address_map &map);
protected:
// internal types
typedef delegate<void ()> i8751_sim_delegate;
diff --git a/src/mame/includes/segaorun.h b/src/mame/includes/segaorun.h
index 77aa8e5a3ce..da1164315f7 100644
--- a/src/mame/includes/segaorun.h
+++ b/src/mame/includes/segaorun.h
@@ -100,6 +100,11 @@ public:
void outrun_fd1089a(machine_config &config);
void outrun(machine_config &config);
void outrun_base(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void outrun_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void sub_map(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/mame/includes/segas16a.h b/src/mame/includes/segas16a.h
index 24259c660de..f9226277edc 100644
--- a/src/mame/includes/segas16a.h
+++ b/src/mame/includes/segas16a.h
@@ -111,6 +111,13 @@ public:
void system16a_i8751(machine_config &config);
void system16a_fd1089b(machine_config &config);
void aceattaca_fd1094(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void mcu_io_map(address_map &map);
+ void sound_decrypted_opcodes_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_no7751_portmap(address_map &map);
+ void sound_portmap(address_map &map);
+ void system16a_map(address_map &map);
protected:
// internal types
typedef delegate<void ()> i8751_sim_delegate;
diff --git a/src/mame/includes/segas16b.h b/src/mame/includes/segas16b.h
index 9824e955865..dd2417ad17c 100644
--- a/src/mame/includes/segas16b.h
+++ b/src/mame/includes/segas16b.h
@@ -156,6 +156,22 @@ public:
void system16b_fd1094(machine_config &config);
void fpointbl(machine_config &config);
void lockonph(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void decrypted_opcodes_map_fpointbla(address_map &map);
+ void decrypted_opcodes_map_x(address_map &map);
+ void fpointbl_map(address_map &map);
+ void fpointbl_sound_map(address_map &map);
+ void lockonph_map(address_map &map);
+ void lockonph_sound_iomap(address_map &map);
+ void lockonph_sound_map(address_map &map);
+ void map_fpointbla(address_map &map);
+ void mcu_io_map(address_map &map);
+ void sound_decrypted_opcodes_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void system16b_bootleg_map(address_map &map);
+ void system16b_map(address_map &map);
+ void system16c_map(address_map &map);
protected:
// internal types
typedef delegate<void ()> i8751_sim_delegate;
@@ -348,4 +364,5 @@ public:
bool m_rle_latched;
uint8_t m_rle_byte;
void isgsm(machine_config &config);
+ void isgsm_map(address_map &map);
};
diff --git a/src/mame/includes/segas18.h b/src/mame/includes/segas18.h
index 7004aa2a938..5a824ed8ba7 100644
--- a/src/mame/includes/segas18.h
+++ b/src/mame/includes/segas18.h
@@ -108,6 +108,11 @@ public:
void system18_fd1094_i8751(machine_config &config);
void lghost(machine_config &config);
void system18_i8751(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void mcu_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void system18_map(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/mame/includes/segas24.h b/src/mame/includes/segas24.h
index b66854c4154..5544d3cb015 100644
--- a/src/mame/includes/segas24.h
+++ b/src/mame/includes/segas24.h
@@ -162,4 +162,11 @@ public:
void system24_floppy_dcclub(machine_config &config);
void system24_floppy_hotrod(machine_config &config);
void system24(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void hotrod_cpu1_map(address_map &map);
+ void hotrod_cpu2_map(address_map &map);
+ void roughrac_cpu1_map(address_map &map);
+ void roughrac_cpu2_map(address_map &map);
+ void system24_cpu1_map(address_map &map);
+ void system24_cpu2_map(address_map &map);
};
diff --git a/src/mame/includes/segas32.h b/src/mame/includes/segas32.h
index 79cd0c27521..48167b290cf 100644
--- a/src/mame/includes/segas32.h
+++ b/src/mame/includes/segas32.h
@@ -240,6 +240,21 @@ public:
void init_jleague(void);
void init_titlef(void);
+ void ga2_main_map(address_map &map);
+ void multi32_6player_map(address_map &map);
+ void multi32_map(address_map &map);
+ void multi32_sound_map(address_map &map);
+ void multi32_sound_portmap(address_map &map);
+ void multipcm_map(address_map &map);
+ void system32_4player_map(address_map &map);
+ void system32_analog_map(address_map &map);
+ void system32_cd_map(address_map &map);
+ void system32_map(address_map &map);
+ void system32_sound_map(address_map &map);
+ void system32_sound_portmap(address_map &map);
+ void upd7725_data_map(address_map &map);
+ void upd7725_prg_map(address_map &map);
+ void v25_map(address_map &map);
protected:
segas32_state(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -276,6 +291,7 @@ class segas32_trackball_state : public segas32_state
public:
segas32_trackball_state(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void system32_trackball_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
@@ -361,6 +377,7 @@ public:
ioport_value in3_analog_read();
DECLARE_WRITE8_MEMBER(analog_bank_w);
+ void multi32_analog_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/includes/segasp.h b/src/mame/includes/segasp.h
index f694ac80f1b..2d2a1bd0c66 100644
--- a/src/mame/includes/segasp.h
+++ b/src/mame/includes/segasp.h
@@ -28,5 +28,7 @@ public:
uint16_t m_sp_bank;
void segasp(machine_config &config);
+ void onchip_port(address_map &map);
+ void segasp_map(address_map &map);
protected:
};
diff --git a/src/mame/includes/segaxbd.h b/src/mame/includes/segaxbd.h
index 1652578e41a..427f92ee7e2 100644
--- a/src/mame/includes/segaxbd.h
+++ b/src/mame/includes/segaxbd.h
@@ -67,6 +67,19 @@ public:
void install_smgp(void);
void install_gprider(void);
+ void decrypted_opcodes_map(address_map &map);
+ void main_map(address_map &map);
+ void rascot_z80_map(address_map &map);
+ void rascot_z80_portmap(address_map &map);
+ void smgp_airdrive_map(address_map &map);
+ void smgp_airdrive_portmap(address_map &map);
+ void smgp_comm_map(address_map &map);
+ void smgp_comm_portmap(address_map &map);
+ void smgp_sound2_map(address_map &map);
+ void smgp_sound2_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void sub_map(address_map &map);
protected:
// timer IDs
enum
diff --git a/src/mame/includes/segaybd.h b/src/mame/includes/segaybd.h
index 02695ddab68..34c3101f5ce 100644
--- a/src/mame/includes/segaybd.h
+++ b/src/mame/includes/segaybd.h
@@ -88,6 +88,15 @@ public:
void yboard_deluxe(machine_config &config);
void yboard_link(machine_config &config);
void yboard(machine_config &config);
+ void link_map(address_map &map);
+ void link_portmap(address_map &map);
+ void main_map(address_map &map);
+ void main_map_link(address_map &map);
+ void motor_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
+ void subx_map(address_map &map);
+ void suby_map(address_map &map);
protected:
// internal types
typedef delegate<void (uint16_t)> output_delegate;
diff --git a/src/mame/includes/seibuspi.h b/src/mame/includes/seibuspi.h
index 41bf66c34d4..7ec3a258100 100644
--- a/src/mame/includes/seibuspi.h
+++ b/src/mame/includes/seibuspi.h
@@ -172,4 +172,15 @@ public:
void sxx2g(machine_config &config);
void spi(machine_config &config);
void sxx2e(machine_config &config);
+ void base_map(address_map &map);
+ void rdft2_map(address_map &map);
+ void rise_map(address_map &map);
+ void sei252_map(address_map &map);
+ void spi_map(address_map &map);
+ void spi_soundmap(address_map &map);
+ void sxx2e_map(address_map &map);
+ void sxx2e_soundmap(address_map &map);
+ void sxx2f_map(address_map &map);
+ void sys386f_map(address_map &map);
+ void sys386i_map(address_map &map);
};
diff --git a/src/mame/includes/seicross.h b/src/mame/includes/seicross.h
index fad0c209ba9..02b6e8efad3 100644
--- a/src/mame/includes/seicross.h
+++ b/src/mame/includes/seicross.h
@@ -66,4 +66,9 @@ public:
void no_nvram(machine_config &config);
void friskytb(machine_config &config);
void nvram(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void mcu_no_nvram_map(address_map &map);
+ void mcu_nvram_map(address_map &map);
};
diff --git a/src/mame/includes/senjyo.h b/src/mame/includes/senjyo.h
index ed74b1f2d5a..fd87b0485c7 100644
--- a/src/mame/includes/senjyo.h
+++ b/src/mame/includes/senjyo.h
@@ -111,6 +111,12 @@ public:
void senjyo(machine_config &config);
void starforb(machine_config &config);
void senjyox_a(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void senjyo_map(address_map &map);
+ void senjyo_sound_io_map(address_map &map);
+ void senjyo_sound_map(address_map &map);
+ void starforb_map(address_map &map);
+ void starforb_sound_map(address_map &map);
};
/*----------- defined in audio/senjyo.c -----------*/
diff --git a/src/mame/includes/seta.h b/src/mame/includes/seta.h
index 3133b93fa5b..e61ba19af91 100644
--- a/src/mame/includes/seta.h
+++ b/src/mame/includes/seta.h
@@ -295,6 +295,52 @@ public:
void metafox(machine_config &config);
void utoukond(machine_config &config);
void rezon(machine_config &config);
+ void atehate_map(address_map &map);
+ void blandia_map(address_map &map);
+ void blandiap_map(address_map &map);
+ void blockcar_map(address_map &map);
+ void blockcarb_map(address_map &map);
+ void blockcarb_sound_map(address_map &map);
+ void blockcarb_sound_portmap(address_map &map);
+ void calibr50_map(address_map &map);
+ void calibr50_sub_map(address_map &map);
+ void crazyfgt_map(address_map &map);
+ void daioh_map(address_map &map);
+ void daiohp_map(address_map &map);
+ void downtown_map(address_map &map);
+ void downtown_sub_map(address_map &map);
+ void drgnunit_map(address_map &map);
+ void extdwnhl_map(address_map &map);
+ void jjsquawb_map(address_map &map);
+ void kamenrid_map(address_map &map);
+ void keroppi_map(address_map &map);
+ void kiwame_map(address_map &map);
+ void krzybowl_map(address_map &map);
+ void madshark_map(address_map &map);
+ void magspeed_map(address_map &map);
+ void metafox_sub_map(address_map &map);
+ void msgundam_map(address_map &map);
+ void oisipuzl_map(address_map &map);
+ void orbs_map(address_map &map);
+ void pairlove_map(address_map &map);
+ void thunderl_map(address_map &map);
+ void thunderlbl_map(address_map &map);
+ void thunderlbl_sound_map(address_map &map);
+ void thunderlbl_sound_portmap(address_map &map);
+ void tndrcade_map(address_map &map);
+ void tndrcade_sub_map(address_map &map);
+ void triplfun_map(address_map &map);
+ void twineagl_sub_map(address_map &map);
+ void umanclub_map(address_map &map);
+ void usclssic_map(address_map &map);
+ void utoukond_map(address_map &map);
+ void utoukond_sound_io_map(address_map &map);
+ void utoukond_sound_map(address_map &map);
+ void wiggie_map(address_map &map);
+ void wiggie_sound_map(address_map &map);
+ void wrofaero_map(address_map &map);
+ void zingzipbl_map(address_map &map);
+ void zombraid_map(address_map &map);
};
class setaroul_state : public seta_state
@@ -341,6 +387,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(interrupt);
void setaroul(machine_config &config);
+ void setaroul_map(address_map &map);
private:
required_device<upd4992_device> m_rtc; // ! Actually D4911C !
required_device<ticket_dispenser_device> m_hopper;
@@ -394,6 +441,8 @@ public:
DECLARE_DRIVER_INIT(inttoote);
void inttoote(machine_config &config);
void jockeyc(machine_config &config);
+ void inttoote_map(address_map &map);
+ void jockeyc_map(address_map &map);
private:
required_device<upd4992_device> m_rtc; // ! Actually D4911C !
required_device<ticket_dispenser_device> m_hopper1, m_hopper2; // the 2nd hopper is optional
diff --git a/src/mame/includes/seta2.h b/src/mame/includes/seta2.h
index 4da3ed50f8c..e9e88525e9a 100644
--- a/src/mame/includes/seta2.h
+++ b/src/mame/includes/seta2.h
@@ -146,6 +146,24 @@ public:
void telpacfl(machine_config &config);
void samshoot(machine_config &config);
void namcostr(machine_config &config);
+ void ablastb_map(address_map &map);
+ void funcube2_map(address_map &map);
+ void funcube2_sub_io(address_map &map);
+ void funcube_map(address_map &map);
+ void funcube_sub_io(address_map &map);
+ void funcube_sub_map(address_map &map);
+ void grdians_map(address_map &map);
+ void gundamex_map(address_map &map);
+ void mj4simai_map(address_map &map);
+ void myangel2_map(address_map &map);
+ void myangel_map(address_map &map);
+ void namcostr_map(address_map &map);
+ void penbros_base_map(address_map &map);
+ void penbros_map(address_map &map);
+ void pzlbowl_map(address_map &map);
+ void reelquak_map(address_map &map);
+ void samshoot_map(address_map &map);
+ void telpacfl_map(address_map &map);
};
@@ -168,6 +186,7 @@ public:
uint32_t staraudi_screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void staraudi(machine_config &config);
+ void staraudi_map(address_map &map);
protected:
virtual void driver_start() override;
diff --git a/src/mame/includes/sf.h b/src/mame/includes/sf.h
index 09826e88acc..40798053d0a 100644
--- a/src/mame/includes/sf.h
+++ b/src/mame/includes/sf.h
@@ -70,4 +70,10 @@ public:
void sfjp(machine_config &config);
void sfus(machine_config &config);
void sfan(machine_config &config);
+ void sfan_map(address_map &map);
+ void sfjp_map(address_map &map);
+ void sfus_map(address_map &map);
+ void sound2_io_map(address_map &map);
+ void sound2_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/sg1000.h b/src/mame/includes/sg1000.h
index f741b0afeaa..58d3329265c 100644
--- a/src/mame/includes/sg1000.h
+++ b/src/mame/includes/sg1000.h
@@ -70,6 +70,12 @@ public:
DECLARE_WRITE8_MEMBER( omv_w );
void sg1000(machine_config &config);
void omv(machine_config &config);
+ void omv_io_map(address_map &map);
+ void omv_map(address_map &map);
+ void sc3000_io_map(address_map &map);
+ void sc3000_map(address_map &map);
+ void sg1000_io_map(address_map &map);
+ void sg1000_map(address_map &map);
};
class sc3000_state : public sg1000_state
@@ -107,6 +113,8 @@ public:
DECLARE_FLOPPY_FORMATS( floppy_formats );
void sf7000(machine_config &config);
+ void sf7000_io_map(address_map &map);
+ void sf7000_map(address_map &map);
};
#endif
diff --git a/src/mame/includes/shadfrce.h b/src/mame/includes/shadfrce.h
index a526765aed5..44ef7fa54b6 100644
--- a/src/mame/includes/shadfrce.h
+++ b/src/mame/includes/shadfrce.h
@@ -91,4 +91,6 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank);
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect );
void shadfrce(machine_config &config);
+ void shadfrce_map(address_map &map);
+ void shadfrce_sound_map(address_map &map);
};
diff --git a/src/mame/includes/shangha3.h b/src/mame/includes/shangha3.h
index d5c24a7db0c..cac1673a296 100644
--- a/src/mame/includes/shangha3.h
+++ b/src/mame/includes/shangha3.h
@@ -63,4 +63,9 @@ public:
void shangha3(machine_config &config);
void heberpop(machine_config &config);
void blocken(machine_config &config);
+ void blocken_map(address_map &map);
+ void heberpop_map(address_map &map);
+ void heberpop_sound_io_map(address_map &map);
+ void heberpop_sound_map(address_map &map);
+ void shangha3_map(address_map &map);
};
diff --git a/src/mame/includes/shangkid.h b/src/mame/includes/shangkid.h
index c7843a359ba..df131d617ed 100644
--- a/src/mame/includes/shangkid.h
+++ b/src/mame/includes/shangkid.h
@@ -73,4 +73,15 @@ public:
void dynamski(machine_config &config);
void chinhero(machine_config &config);
void shangkid(machine_config &config);
+ void chinhero_bbx_map(address_map &map);
+ void chinhero_bbx_portmap(address_map &map);
+ void chinhero_main_map(address_map &map);
+ void chinhero_sound_map(address_map &map);
+ void dynamski_map(address_map &map);
+ void dynamski_portmap(address_map &map);
+ void shangkid_bbx_map(address_map &map);
+ void shangkid_bbx_portmap(address_map &map);
+ void shangkid_main_map(address_map &map);
+ void shangkid_sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/shaolins.h b/src/mame/includes/shaolins.h
index fc9d0eb5a41..c4312b0faf0 100644
--- a/src/mame/includes/shaolins.h
+++ b/src/mame/includes/shaolins.h
@@ -43,4 +43,5 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(interrupt);
void shaolins(machine_config &config);
+ void shaolins_map(address_map &map);
};
diff --git a/src/mame/includes/shisen.h b/src/mame/includes/shisen.h
index d3095f6d5a1..cc219685d19 100644
--- a/src/mame/includes/shisen.h
+++ b/src/mame/includes/shisen.h
@@ -37,4 +37,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void shisen(machine_config &config);
+ void shisen_io_map(address_map &map);
+ void shisen_map(address_map &map);
+ void shisen_sound_io_map(address_map &map);
+ void shisen_sound_map(address_map &map);
};
diff --git a/src/mame/includes/shootout.h b/src/mame/includes/shootout.h
index db9ee6a44ca..c9ac8ccd397 100644
--- a/src/mame/includes/shootout.h
+++ b/src/mame/includes/shootout.h
@@ -58,4 +58,7 @@ public:
void shootouj(machine_config &config);
void shootouk(machine_config &config);
void shootout(machine_config &config);
+ void shootouj_map(address_map &map);
+ void shootout_map(address_map &map);
+ void shootout_sound_map(address_map &map);
};
diff --git a/src/mame/includes/shuuz.h b/src/mame/includes/shuuz.h
index 547ca3cf2ac..6c09c899af8 100644
--- a/src/mame/includes/shuuz.h
+++ b/src/mame/includes/shuuz.h
@@ -34,4 +34,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void shuuz(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/sidearms.h b/src/mame/includes/sidearms.h
index 582e8b2117f..4ffb7aed71e 100644
--- a/src/mame/includes/sidearms.h
+++ b/src/mame/includes/sidearms.h
@@ -81,4 +81,10 @@ public:
void sidearms(machine_config &config);
void turtship(machine_config &config);
void whizz(machine_config &config);
+ void sidearms_map(address_map &map);
+ void sidearms_sound_map(address_map &map);
+ void turtship_map(address_map &map);
+ void whizz_io_map(address_map &map);
+ void whizz_map(address_map &map);
+ void whizz_sound_map(address_map &map);
};
diff --git a/src/mame/includes/sidepckt.h b/src/mame/includes/sidepckt.h
index 2d53dd6f129..fe0f40fd81f 100644
--- a/src/mame/includes/sidepckt.h
+++ b/src/mame/includes/sidepckt.h
@@ -62,4 +62,7 @@ public:
void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect);
void sidepcktb(machine_config &config);
void sidepckt(machine_config &config);
+ void sidepckt_map(address_map &map);
+ void sidepcktb_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/silkroad.h b/src/mame/includes/silkroad.h
index c2e10d8d4df..74f9b3e924d 100644
--- a/src/mame/includes/silkroad.h
+++ b/src/mame/includes/silkroad.h
@@ -50,4 +50,5 @@ public:
uint32_t screen_update_silkroad(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void silkroad(machine_config &config);
+ void cpu_map(address_map &map);
};
diff --git a/src/mame/includes/simpl156.h b/src/mame/includes/simpl156.h
index 304d4aa7005..a81fda1cb09 100644
--- a/src/mame/includes/simpl156.h
+++ b/src/mame/includes/simpl156.h
@@ -70,4 +70,9 @@ public:
void chainrec(machine_config &config);
void mitchell156(machine_config &config);
void magdropp(machine_config &config);
+ void chainrec_map(address_map &map);
+ void joemacr_map(address_map &map);
+ void magdrop_map(address_map &map);
+ void magdropp_map(address_map &map);
+ void mitchell156_map(address_map &map);
};
diff --git a/src/mame/includes/simple_st0016.h b/src/mame/includes/simple_st0016.h
index e05127f40ab..6b32120139f 100644
--- a/src/mame/includes/simple_st0016.h
+++ b/src/mame/includes/simple_st0016.h
@@ -40,4 +40,9 @@ public:
void st0016(machine_config &config);
void renju(machine_config &config);
void mayjinsn(machine_config &config);
+ void renju_mem(address_map &map);
+ void st0016_io(address_map &map);
+ void st0016_m2_io(address_map &map);
+ void st0016_mem(address_map &map);
+ void v810_mem(address_map &map);
};
diff --git a/src/mame/includes/simpsons.h b/src/mame/includes/simpsons.h
index f4d6f256cf0..e63f769d1d2 100644
--- a/src/mame/includes/simpsons.h
+++ b/src/mame/includes/simpsons.h
@@ -65,6 +65,10 @@ public:
K053246_CB_MEMBER(sprite_callback);
void simpsons(machine_config &config);
+ void bank0000_map(address_map &map);
+ void bank2000_map(address_map &map);
+ void main_map(address_map &map);
+ void z80_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/skullxbo.h b/src/mame/includes/skullxbo.h
index bce5daf14e0..f04719a4d12 100644
--- a/src/mame/includes/skullxbo.h
+++ b/src/mame/includes/skullxbo.h
@@ -51,4 +51,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void skullxbo(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/skydiver.h b/src/mame/includes/skydiver.h
index 610183b32d3..d4075bba2ea 100644
--- a/src/mame/includes/skydiver.h
+++ b/src/mame/includes/skydiver.h
@@ -78,6 +78,7 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
void skydiver(machine_config &config);
+ void skydiver_map(address_map &map);
};
/*----------- defined in audio/skydiver.c -----------*/
diff --git a/src/mame/includes/skyfox.h b/src/mame/includes/skyfox.h
index 83eb041565e..ba5d6d89aaf 100644
--- a/src/mame/includes/skyfox.h
+++ b/src/mame/includes/skyfox.h
@@ -46,4 +46,6 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void draw_background(bitmap_ind16 &bitmap, const rectangle &cliprect);
void skyfox(machine_config &config);
+ void skyfox_map(address_map &map);
+ void skyfox_sound_map(address_map &map);
};
diff --git a/src/mame/includes/skykid.h b/src/mame/includes/skykid.h
index 7a056dd0341..43251d0c324 100644
--- a/src/mame/includes/skykid.h
+++ b/src/mame/includes/skykid.h
@@ -59,4 +59,7 @@ public:
INTERRUPT_GEN_MEMBER(mcu_vblank_irq);
void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect);
void skykid(machine_config &config);
+ void mcu_map(address_map &map);
+ void mcu_port_map(address_map &map);
+ void skykid_map(address_map &map);
};
diff --git a/src/mame/includes/skyraid.h b/src/mame/includes/skyraid.h
index efbb254e9a7..e01b8ed7d54 100644
--- a/src/mame/includes/skyraid.h
+++ b/src/mame/includes/skyraid.h
@@ -42,6 +42,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void skyraid(machine_config &config);
+ void skyraid_map(address_map &map);
};
/*----------- defined in audio/skyraid.c -----------*/
diff --git a/src/mame/includes/slapfght.h b/src/mame/includes/slapfght.h
index e27aa6caac3..0b904614dff 100644
--- a/src/mame/includes/slapfght.h
+++ b/src/mame/includes/slapfght.h
@@ -125,4 +125,20 @@ public:
void perfrman(machine_config &config);
void slapfigh(machine_config &config);
void slapfighb1(machine_config &config);
+ void getstar_map(address_map &map);
+ void getstarb1_io_map(address_map &map);
+ void getstarb2_io_map(address_map &map);
+ void io_map_mcu(address_map &map);
+ void io_map_nomcu(address_map &map);
+ void perfrman_map(address_map &map);
+ void perfrman_sound_map(address_map &map);
+ void slapfigh_map(address_map &map);
+ void slapfigh_map_mcu(address_map &map);
+ void slapfighb1_map(address_map &map);
+ void slapfighb2_map(address_map &map);
+ void tigerh_map(address_map &map);
+ void tigerh_map_mcu(address_map &map);
+ void tigerh_sound_map(address_map &map);
+ void tigerhb1_map(address_map &map);
+ void tigerhb2_map(address_map &map);
};
diff --git a/src/mame/includes/slapshot.h b/src/mame/includes/slapshot.h
index 44fd178477b..cf031cbc9c9 100644
--- a/src/mame/includes/slapshot.h
+++ b/src/mame/includes/slapshot.h
@@ -93,6 +93,9 @@ public:
void opwolf3(machine_config &config);
void slapshot(machine_config &config);
+ void opwolf3_map(address_map &map);
+ void opwolf3_z80_sound_map(address_map &map);
+ void slapshot_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/sms.h b/src/mame/includes/sms.h
index 33f99ce8e56..1d887a56b5e 100644
--- a/src/mame/includes/sms.h
+++ b/src/mame/includes/sms.h
@@ -243,6 +243,13 @@ public:
void sms1_br(machine_config &config);
void sms2_ntsc(machine_config &config);
void sms1_kr(machine_config &config);
+ void gg_io(address_map &map);
+ void sg1000m3_io(address_map &map);
+ void sms1_mem(address_map &map);
+ void sms_io(address_map &map);
+ void sms_mem(address_map &map);
+ void smsj_io(address_map &map);
+ void smskr_io(address_map &map);
protected:
uint8_t read_bus(address_space &space, unsigned int bank, uint16_t base_addr, uint16_t offset);
void setup_bios();
@@ -272,6 +279,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(sms_store_int_callback);
void sms_sdisp(machine_config &config);
+ void sms_store_mem(address_map &map);
};
diff --git a/src/mame/includes/sms_bootleg.h b/src/mame/includes/sms_bootleg.h
index c1f81f26190..7d3f0b1a8f4 100644
--- a/src/mame/includes/sms_bootleg.h
+++ b/src/mame/includes/sms_bootleg.h
@@ -12,4 +12,6 @@ class smsbootleg_state : public sms_state
DECLARE_WRITE8_MEMBER(port18_w);
void sms_supergame(machine_config &config);
+ void sms_supergame_io(address_map &map);
+ void sms_supergame_map(address_map &map);
};
diff --git a/src/mame/includes/snk.h b/src/mame/includes/snk.h
index d1beaa603f0..b5b388ab15d 100644
--- a/src/mame/includes/snk.h
+++ b/src/mame/includes/snk.h
@@ -225,4 +225,43 @@ public:
void ikari(machine_config &config);
void sgladiat(machine_config &config);
void madcrush(machine_config &config);
+ void Y8950_sound_map(address_map &map);
+ void YM3526_Y8950_sound_map(address_map &map);
+ void YM3526_YM3526_sound_map(address_map &map);
+ void YM3812_Y8950_sound_map(address_map &map);
+ void YM3812_sound_map(address_map &map);
+ void aso_YM3526_sound_map(address_map &map);
+ void aso_cpuA_map(address_map &map);
+ void aso_cpuB_map(address_map &map);
+ void bermudat_cpuA_map(address_map &map);
+ void bermudat_cpuB_map(address_map &map);
+ void gwar_cpuA_map(address_map &map);
+ void gwar_cpuB_map(address_map &map);
+ void gwara_cpuA_map(address_map &map);
+ void gwara_cpuB_map(address_map &map);
+ void hal21_cpuA_map(address_map &map);
+ void hal21_cpuB_map(address_map &map);
+ void hal21_sound_map(address_map &map);
+ void hal21_sound_portmap(address_map &map);
+ void ikari_cpuA_map(address_map &map);
+ void ikari_cpuB_map(address_map &map);
+ void jcross_cpuA_map(address_map &map);
+ void jcross_cpuB_map(address_map &map);
+ void jcross_sound_map(address_map &map);
+ void jcross_sound_portmap(address_map &map);
+ void madcrash_cpuA_map(address_map &map);
+ void madcrash_cpuB_map(address_map &map);
+ void madcrush_cpuA_map(address_map &map);
+ void madcrush_cpuB_map(address_map &map);
+ void marvins_cpuA_map(address_map &map);
+ void marvins_cpuB_map(address_map &map);
+ void marvins_sound_map(address_map &map);
+ void marvins_sound_portmap(address_map &map);
+ void sgladiat_cpuA_map(address_map &map);
+ void sgladiat_cpuB_map(address_map &map);
+ void tdfever_cpuA_map(address_map &map);
+ void tdfever_cpuB_map(address_map &map);
+ void tnk3_YM3526_sound_map(address_map &map);
+ void tnk3_cpuA_map(address_map &map);
+ void tnk3_cpuB_map(address_map &map);
};
diff --git a/src/mame/includes/snk6502.h b/src/mame/includes/snk6502.h
index 342f5fe9e20..2e3b338ea8a 100644
--- a/src/mame/includes/snk6502.h
+++ b/src/mame/includes/snk6502.h
@@ -93,6 +93,11 @@ public:
void fantasy(machine_config &config);
void vanguard(machine_config &config);
void sasuke(machine_config &config);
+ void fantasy_map(address_map &map);
+ void pballoon_map(address_map &map);
+ void sasuke_map(address_map &map);
+ void satansat_map(address_map &map);
+ void vanguard_map(address_map &map);
};
#endif // MAME_INCLUDES_SNK6502_H
diff --git a/src/mame/includes/snk68.h b/src/mame/includes/snk68.h
index c945effebbb..d5911655fe8 100644
--- a/src/mame/includes/snk68.h
+++ b/src/mame/includes/snk68.h
@@ -74,4 +74,8 @@ public:
void streetsm(machine_config &config);
void searchar(machine_config &config);
void pow(machine_config &config);
+ void pow_map(address_map &map);
+ void searchar_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/snookr10.h b/src/mame/includes/snookr10.h
index f99feae73dc..1eebbf56b4c 100644
--- a/src/mame/includes/snookr10.h
+++ b/src/mame/includes/snookr10.h
@@ -43,4 +43,7 @@ public:
void snookr10(machine_config &config);
void crystalc(machine_config &config);
void tenballs(machine_config &config);
+ void crystalc_map(address_map &map);
+ void snookr10_map(address_map &map);
+ void tenballs_map(address_map &map);
};
diff --git a/src/mame/includes/snowbros.h b/src/mame/includes/snowbros.h
index 997f9f71fd5..88332034aae 100644
--- a/src/mame/includes/snowbros.h
+++ b/src/mame/includes/snowbros.h
@@ -87,4 +87,20 @@ public:
void honeydol(machine_config &config);
void snowbro3(machine_config &config);
void finalttr(machine_config &config);
+ void finalttr_map(address_map &map);
+ void honeydol_map(address_map &map);
+ void honeydol_sound_io_map(address_map &map);
+ void honeydol_sound_map(address_map &map);
+ void hyperpac_map(address_map &map);
+ void hyperpac_sound_map(address_map &map);
+ void protection_iomap(address_map &map);
+ void protection_map(address_map &map);
+ void snowbros3_map(address_map &map);
+ void snowbros_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void twinadv_map(address_map &map);
+ void twinadv_sound_io_map(address_map &map);
+ void wintbob_map(address_map &map);
+ void yutnori_map(address_map &map);
};
diff --git a/src/mame/includes/softbox.h b/src/mame/includes/softbox.h
index 88d915797e3..4a8faa8869e 100644
--- a/src/mame/includes/softbox.h
+++ b/src/mame/includes/softbox.h
@@ -62,6 +62,8 @@ public:
};
void softbox(machine_config &config);
+ void softbox_io(address_map &map);
+ void softbox_mem(address_map &map);
int m_ifc; // Tracks previous state of IEEE-488 IFC line
};
diff --git a/src/mame/includes/solomon.h b/src/mame/includes/solomon.h
index 4af88abe0eb..37d133985ea 100644
--- a/src/mame/includes/solomon.h
+++ b/src/mame/includes/solomon.h
@@ -49,4 +49,7 @@ public:
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
void solomon(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/sonson.h b/src/mame/includes/sonson.h
index bca9ff4eba7..86c09a8db29 100644
--- a/src/mame/includes/sonson.h
+++ b/src/mame/includes/sonson.h
@@ -45,4 +45,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void sonson(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/sorcerer.h b/src/mame/includes/sorcerer.h
index aaa8490b13e..bf5837ab1b8 100644
--- a/src/mame/includes/sorcerer.h
+++ b/src/mame/includes/sorcerer.h
@@ -85,6 +85,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void sorcerer(machine_config &config);
void sorcererd(machine_config &config);
+ void sorcerer_io(address_map &map);
+ void sorcerer_mem(address_map &map);
+ void sorcererd_mem(address_map &map);
private:
uint8_t m_fe;
uint8_t m_keyboard_line;
diff --git a/src/mame/includes/spacefb.h b/src/mame/includes/spacefb.h
index 91ab614e45a..a7b90c6f159 100644
--- a/src/mame/includes/spacefb.h
+++ b/src/mame/includes/spacefb.h
@@ -79,6 +79,9 @@ public:
void spacefb(machine_config &config);
void spacefb_audio(machine_config &config);
+ void spacefb_audio_map(address_map &map);
+ void spacefb_main_io_map(address_map &map);
+ void spacefb_main_map(address_map &map);
protected:
enum
diff --git a/src/mame/includes/spbactn.h b/src/mame/includes/spbactn.h
index 86635a2e896..ca6c73ae5e4 100644
--- a/src/mame/includes/spbactn.h
+++ b/src/mame/includes/spbactn.h
@@ -87,4 +87,8 @@ public:
}
void spbactn(machine_config &config);
void spbactnp(machine_config &config);
+ void spbactn_map(address_map &map);
+ void spbactn_sound_map(address_map &map);
+ void spbactnp_extra_map(address_map &map);
+ void spbactnp_map(address_map &map);
};
diff --git a/src/mame/includes/spcforce.h b/src/mame/includes/spcforce.h
index f60525dcb99..ff11d74ed8e 100644
--- a/src/mame/includes/spcforce.h
+++ b/src/mame/includes/spcforce.h
@@ -58,4 +58,6 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
void meteors(machine_config &config);
void spcforce(machine_config &config);
+ void spcforce_map(address_map &map);
+ void spcforce_sound_map(address_map &map);
};
diff --git a/src/mame/includes/spdodgeb.h b/src/mame/includes/spdodgeb.h
index 197ac799427..51247f480ec 100644
--- a/src/mame/includes/spdodgeb.h
+++ b/src/mame/includes/spdodgeb.h
@@ -88,4 +88,6 @@ public:
void mcu63705_update_inputs();
void spd_adpcm_int(msm5205_device *device, int chip);
void spdodgeb(machine_config &config);
+ void spdodgeb_map(address_map &map);
+ void spdodgeb_sound_map(address_map &map);
};
diff --git a/src/mame/includes/special.h b/src/mame/includes/special.h
index ae32c4af269..8246ff5864d 100644
--- a/src/mame/includes/special.h
+++ b/src/mame/includes/special.h
@@ -109,6 +109,11 @@ public:
void specimx(machine_config &config);
void specialp(machine_config &config);
void specialm(machine_config &config);
+ void erik_io_map(address_map &map);
+ void erik_mem(address_map &map);
+ void specialist_mem(address_map &map);
+ void specialp_mem(address_map &map);
+ void specimx_mem(address_map &map);
private:
void specimx_set_bank(offs_t i, uint8_t data);
void erik_set_bank();
diff --git a/src/mame/includes/spectrum.h b/src/mame/includes/spectrum.h
index 2b75781ab68..295f9c8f055 100644
--- a/src/mame/includes/spectrum.h
+++ b/src/mame/includes/spectrum.h
@@ -191,6 +191,16 @@ public:
void tc2048(machine_config &config);
void spectrum_plus3(machine_config &config);
void spectrum_128(machine_config &config);
+ void spectrum_128_io(address_map &map);
+ void spectrum_128_mem(address_map &map);
+ void spectrum_io(address_map &map);
+ void spectrum_mem(address_map &map);
+ void spectrum_plus3_io(address_map &map);
+ void spectrum_plus3_mem(address_map &map);
+ void tc2048_io(address_map &map);
+ void tc2048_mem(address_map &map);
+ void ts2068_io(address_map &map);
+ void ts2068_mem(address_map &map);
protected:
required_device<cassette_image_device> m_cassette;
required_device<ram_device> m_ram;
diff --git a/src/mame/includes/speedatk.h b/src/mame/includes/speedatk.h
index da6d1700460..f61962540bf 100644
--- a/src/mame/includes/speedatk.h
+++ b/src/mame/includes/speedatk.h
@@ -45,4 +45,6 @@ public:
uint8_t iox_key_matrix_calc(uint8_t p_side);
void speedatk(machine_config &config);
+ void speedatk_io(address_map &map);
+ void speedatk_mem(address_map &map);
};
diff --git a/src/mame/includes/speedbal.h b/src/mame/includes/speedbal.h
index dfdc70d5c78..a330a640189 100644
--- a/src/mame/includes/speedbal.h
+++ b/src/mame/includes/speedbal.h
@@ -45,4 +45,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void speedbal(machine_config &config);
+ void main_cpu_io_map(address_map &map);
+ void main_cpu_map(address_map &map);
+ void sound_cpu_io_map(address_map &map);
+ void sound_cpu_map(address_map &map);
};
diff --git a/src/mame/includes/speedspn.h b/src/mame/includes/speedspn.h
index 8dc63b291c2..fb1f53a7471 100644
--- a/src/mame/includes/speedspn.h
+++ b/src/mame/includes/speedspn.h
@@ -49,4 +49,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void speedspn(machine_config &config);
+ void io_map(address_map &map);
+ void oki_map(address_map &map);
+ void program_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/spiders.h b/src/mame/includes/spiders.h
index aac80bbc91b..0c987f0140a 100644
--- a/src/mame/includes/spiders.h
+++ b/src/mame/includes/spiders.h
@@ -46,4 +46,6 @@ public:
required_device<cpu_device> m_audiocpu;
void spiders(machine_config &config);
void spiders_audio(machine_config &config);
+ void spiders_audio_map(address_map &map);
+ void spiders_main_map(address_map &map);
};
diff --git a/src/mame/includes/splash.h b/src/mame/includes/splash.h
index ec8cf82cec1..9e126b0cd1e 100644
--- a/src/mame/includes/splash.h
+++ b/src/mame/includes/splash.h
@@ -3,6 +3,7 @@
#include "machine/eepromser.h"
#include "machine/gen_latch.h"
+#include "machine/74259.h"
#include "sound/msm5205.h"
class splash_state : public driver_device
@@ -16,6 +17,7 @@ public:
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
m_soundlatch(*this, "soundlatch"),
+ m_outlatch(*this, "outlatch"),
m_pixelram(*this, "pixelram"),
m_videoram(*this, "videoram"),
m_vregs(*this, "vregs"),
@@ -30,6 +32,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
+ optional_device<ls259_device> m_outlatch;
required_shared_ptr<uint16_t> m_pixelram;
required_shared_ptr<uint16_t> m_videoram;
@@ -93,6 +96,12 @@ public:
void roldfrog_update_irq( );
void roldfrog(machine_config &config);
void splash(machine_config &config);
+ void funystrp_sound_map(address_map &map);
+ void roldfrog_map(address_map &map);
+ void roldfrog_sound_io_map(address_map &map);
+ void roldfrog_sound_map(address_map &map);
+ void splash_map(address_map &map);
+ void splash_sound_map(address_map &map);
};
class funystrp_state : public splash_state
@@ -127,6 +136,8 @@ public:
void funystrp_draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void funystrp(machine_config &config);
+ void funystrp_map(address_map &map);
+ void funystrp_sound_io_map(address_map &map);
private:
virtual void machine_start() override;
diff --git a/src/mame/includes/sprint2.h b/src/mame/includes/sprint2.h
index 2aa13aa4a4e..be1c2e5026e 100644
--- a/src/mame/includes/sprint2.h
+++ b/src/mame/includes/sprint2.h
@@ -95,6 +95,7 @@ public:
void sprint2(machine_config &config);
void dominos4(machine_config &config);
void dominos(machine_config &config);
+ void sprint2_map(address_map &map);
};
/*----------- defined in audio/sprint2.c -----------*/
diff --git a/src/mame/includes/sprint4.h b/src/mame/includes/sprint4.h
index b48a1eb752e..6e157455a89 100644
--- a/src/mame/includes/sprint4.h
+++ b/src/mame/includes/sprint4.h
@@ -76,6 +76,7 @@ public:
TIMER_CALLBACK_MEMBER(nmi_callback);
void sprint4(machine_config &config);
+ void sprint4_cpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/sprint8.h b/src/mame/includes/sprint8.h
index 63e62a0b95b..70b03b0f328 100644
--- a/src/mame/includes/sprint8.h
+++ b/src/mame/includes/sprint8.h
@@ -69,6 +69,7 @@ public:
void set_collision(int n);
void sprint8(machine_config &config);
void sprint8_audio(machine_config &config);
+ void sprint8_map(address_map &map);
};
/*----------- defined in audio/sprint8.c -----------*/
diff --git a/src/mame/includes/spy.h b/src/mame/includes/spy.h
index 28e55efea82..5e284e3273a 100644
--- a/src/mame/includes/spy.h
+++ b/src/mame/includes/spy.h
@@ -61,4 +61,6 @@ public:
K052109_CB_MEMBER(tile_callback);
K051960_CB_MEMBER(sprite_callback);
void spy(machine_config &config);
+ void spy_map(address_map &map);
+ void spy_sound_map(address_map &map);
};
diff --git a/src/mame/includes/srmp2.h b/src/mame/includes/srmp2.h
index 326de7a50a4..011a28ef847 100644
--- a/src/mame/includes/srmp2.h
+++ b/src/mame/includes/srmp2.h
@@ -78,4 +78,10 @@ public:
void srmp2(machine_config &config);
void rmgoldyh(machine_config &config);
void srmp3(machine_config &config);
+ void mjyuugi_map(address_map &map);
+ void rmgoldyh_io_map(address_map &map);
+ void rmgoldyh_map(address_map &map);
+ void srmp2_map(address_map &map);
+ void srmp3_io_map(address_map &map);
+ void srmp3_map(address_map &map);
};
diff --git a/src/mame/includes/srumbler.h b/src/mame/includes/srumbler.h
index c3e5f5ee18f..d79fffc5b84 100644
--- a/src/mame/includes/srumbler.h
+++ b/src/mame/includes/srumbler.h
@@ -45,4 +45,6 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(interrupt);
void srumbler(machine_config &config);
+ void srumbler_map(address_map &map);
+ void srumbler_sound_map(address_map &map);
};
diff --git a/src/mame/includes/sshangha.h b/src/mame/includes/sshangha.h
index 344420ec948..5c883a0e7e8 100644
--- a/src/mame/includes/sshangha.h
+++ b/src/mame/includes/sshangha.h
@@ -74,4 +74,7 @@ public:
required_device<palette_device> m_palette;
void sshanghb(machine_config &config);
void sshangha(machine_config &config);
+ void sshangha_map(address_map &map);
+ void sshangha_sound_map(address_map &map);
+ void sshanghb_map(address_map &map);
};
diff --git a/src/mame/includes/sslam.h b/src/mame/includes/sslam.h
index 071f2afe00e..748625ec267 100644
--- a/src/mame/includes/sslam.h
+++ b/src/mame/includes/sslam.h
@@ -76,4 +76,7 @@ public:
void sslam_play(int track, int data);
void sslam(machine_config &config);
void powerbls(machine_config &config);
+ void powerbls_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sslam_program_map(address_map &map);
};
diff --git a/src/mame/includes/ssozumo.h b/src/mame/includes/ssozumo.h
index ae7c523110a..e33713be1cc 100644
--- a/src/mame/includes/ssozumo.h
+++ b/src/mame/includes/ssozumo.h
@@ -42,6 +42,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void ssozumo(machine_config &config);
+ void ssozumo_map(address_map &map);
+ void ssozumo_sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
diff --git a/src/mame/includes/sspeedr.h b/src/mame/includes/sspeedr.h
index bb819078cc6..77bb8c92028 100644
--- a/src/mame/includes/sspeedr.h
+++ b/src/mame/includes/sspeedr.h
@@ -49,4 +49,6 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
void sspeedr(machine_config &config);
+ void sspeedr_io_map(address_map &map);
+ void sspeedr_map(address_map &map);
};
diff --git a/src/mame/includes/ssrj.h b/src/mame/includes/ssrj.h
index 0909450ca44..2b29b02de93 100644
--- a/src/mame/includes/ssrj.h
+++ b/src/mame/includes/ssrj.h
@@ -48,4 +48,5 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank);
void draw_objects(bitmap_ind16 &bitmap, const rectangle &cliprect );
void ssrj(machine_config &config);
+ void ssrj_map(address_map &map);
};
diff --git a/src/mame/includes/ssv.h b/src/mame/includes/ssv.h
index 9dfdb3c1cad..c33b84b68ec 100644
--- a/src/mame/includes/ssv.h
+++ b/src/mame/includes/ssv.h
@@ -175,6 +175,26 @@ public:
void hypreact(machine_config &config);
void keithlcy(machine_config &config);
void cairblad(machine_config &config);
+ void drifto94_map(address_map &map);
+ void dsp_data_map(address_map &map);
+ void dsp_prg_map(address_map &map);
+ void eaglshot_map(address_map &map);
+ void gdfs_map(address_map &map);
+ void hypreac2_map(address_map &map);
+ void hypreact_map(address_map &map);
+ void janjans1_map(address_map &map);
+ void jsk_map(address_map &map);
+ void jsk_v810_mem(address_map &map);
+ void keithlcy_map(address_map &map);
+ void meosism_map(address_map &map);
+ void mslider_map(address_map &map);
+ void ryorioh_map(address_map &map);
+ void srmp4_map(address_map &map);
+ void srmp7_map(address_map &map);
+ void survarts_map(address_map &map);
+ void sxyreact_map(address_map &map);
+ void twineag2_map(address_map &map);
+ void ultrax_map(address_map &map);
protected:
optional_ioport_array<4> m_io_gun;
optional_ioport m_io_key0;
diff --git a/src/mame/includes/ssystem3.h b/src/mame/includes/ssystem3.h
index 40195bfa6c0..3222e384bca 100644
--- a/src/mame/includes/ssystem3.h
+++ b/src/mame/includes/ssystem3.h
@@ -68,6 +68,7 @@ public:
void ssystem3_playfield_read(int *on, int *ready);
void ssystem3(machine_config &config);
+ void ssystem3_map(address_map &map);
private:
uint8_t m_porta;
std::unique_ptr<uint8_t[]> m_videoram;
diff --git a/src/mame/includes/stactics.h b/src/mame/includes/stactics.h
index b46a89dc0b4..0830ce59e82 100644
--- a/src/mame/includes/stactics.h
+++ b/src/mame/includes/stactics.h
@@ -89,4 +89,5 @@ public:
void move_motor();
void stactics(machine_config &config);
void stactics_video(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/stadhero.h b/src/mame/includes/stadhero.h
index ce2a74980fd..60c21ac4205 100644
--- a/src/mame/includes/stadhero.h
+++ b/src/mame/includes/stadhero.h
@@ -39,4 +39,6 @@ public:
TILE_GET_INFO_MEMBER(get_pf1_tile_info);
uint32_t screen_update_stadhero(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void stadhero(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/starcrus.h b/src/mame/includes/starcrus.h
index 8e7d49c3d79..725b6d4355f 100644
--- a/src/mame/includes/starcrus.h
+++ b/src/mame/includes/starcrus.h
@@ -71,4 +71,6 @@ public:
int collision_check_s1p1p2();
int collision_check_s2p1p2();
void starcrus(machine_config &config);
+ void starcrus_io_map(address_map &map);
+ void starcrus_map(address_map &map);
};
diff --git a/src/mame/includes/starfire.h b/src/mame/includes/starfire.h
index efed6938214..fd16255dd2a 100644
--- a/src/mame/includes/starfire.h
+++ b/src/mame/includes/starfire.h
@@ -73,4 +73,5 @@ public:
required_device<screen_device> m_screen;
void fireone(machine_config &config);
void starfire(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/starshp1.h b/src/mame/includes/starshp1.h
index b588c5e180b..2006c8ba674 100644
--- a/src/mame/includes/starshp1.h
+++ b/src/mame/includes/starshp1.h
@@ -125,6 +125,7 @@ public:
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
void starshp1(machine_config &config);
+ void starshp1_map(address_map &map);
};
/*----------- defined in audio/starshp1.c -----------*/
diff --git a/src/mame/includes/starwars.h b/src/mame/includes/starwars.h
index caacb81ef2b..bd88cf1a9d5 100644
--- a/src/mame/includes/starwars.h
+++ b/src/mame/includes/starwars.h
@@ -86,4 +86,7 @@ public:
void esb_slapstic_tweak(address_space &space, offs_t offset);
void starwars(machine_config &config);
void esb(machine_config &config);
+ void esb_main_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/stfight.h b/src/mame/includes/stfight.h
index b6728c8bcbc..343b6ee4687 100644
--- a/src/mame/includes/stfight.h
+++ b/src/mame/includes/stfight.h
@@ -61,6 +61,11 @@ public:
void stfight_base(machine_config &config);
void stfight(machine_config &config);
void cshooter(machine_config &config);
+ void cpu1_map(address_map &map);
+ void cpu2_map(address_map &map);
+ void cshooter_cpu1_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void stfight_cpu1_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/stlforce.h b/src/mame/includes/stlforce.h
index 1baa6a44f63..1a531433e4c 100644
--- a/src/mame/includes/stlforce.h
+++ b/src/mame/includes/stlforce.h
@@ -67,4 +67,6 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void stlforce(machine_config &config);
void twinbrat(machine_config &config);
+ void stlforce_map(address_map &map);
+ void twinbrat_oki_map(address_map &map);
};
diff --git a/src/mame/includes/strnskil.h b/src/mame/includes/strnskil.h
index 586933c29b0..82624b2060f 100644
--- a/src/mame/includes/strnskil.h
+++ b/src/mame/includes/strnskil.h
@@ -50,4 +50,6 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void strnskil(machine_config &config);
void banbam(machine_config &config);
+ void strnskil_map1(address_map &map);
+ void strnskil_map2(address_map &map);
};
diff --git a/src/mame/includes/stv.h b/src/mame/includes/stv.h
index 421c6846017..fb771dd6270 100644
--- a/src/mame/includes/stv.h
+++ b/src/mame/includes/stv.h
@@ -147,6 +147,8 @@ public:
void batmanfr(machine_config &config);
void stv_5838(machine_config &config);
void stv_5881(machine_config &config);
+ void sound_mem(address_map &map);
+ void stv_mem(address_map &map);
};
class stvpc_state : public stv_state
diff --git a/src/mame/includes/subs.h b/src/mame/includes/subs.h
index daa7420b751..941df850970 100644
--- a/src/mame/includes/subs.h
+++ b/src/mame/includes/subs.h
@@ -67,6 +67,7 @@ public:
int steering_1();
int steering_2();
void subs(machine_config &config);
+ void main_map(address_map &map);
};
/*----------- defined in audio/subs.c -----------*/
diff --git a/src/mame/includes/suna16.h b/src/mame/includes/suna16.h
index 7b8af646383..8977c7f9390 100644
--- a/src/mame/includes/suna16.h
+++ b/src/mame/includes/suna16.h
@@ -84,4 +84,20 @@ public:
void sunaq(machine_config &config);
void bssoccer(machine_config &config);
void bestbest(machine_config &config);
+ void bestbest_map(address_map &map);
+ void bestbest_pcm_1_iomap(address_map &map);
+ void bestbest_pcm_1_map(address_map &map);
+ void bestbest_sound_map(address_map &map);
+ void bssoccer_map(address_map &map);
+ void bssoccer_pcm_1_io_map(address_map &map);
+ void bssoccer_pcm_1_map(address_map &map);
+ void bssoccer_pcm_2_io_map(address_map &map);
+ void bssoccer_pcm_2_map(address_map &map);
+ void bssoccer_sound_map(address_map &map);
+ void sunaq_map(address_map &map);
+ void sunaq_sound_map(address_map &map);
+ void uballoon_map(address_map &map);
+ void uballoon_pcm_1_io_map(address_map &map);
+ void uballoon_pcm_1_map(address_map &map);
+ void uballoon_sound_map(address_map &map);
};
diff --git a/src/mame/includes/suna8.h b/src/mame/includes/suna8.h
index 1f55ba4e8e4..8f0c0dc742d 100644
--- a/src/mame/includes/suna8.h
+++ b/src/mame/includes/suna8.h
@@ -185,4 +185,21 @@ public:
void hardhead(machine_config &config);
void hardhea2(machine_config &config);
void rranger(machine_config &config);
+ void brickzn11_map(address_map &map);
+ void brickzn_io_map(address_map &map);
+ void brickzn_map(address_map &map);
+ void brickzn_pcm_io_map(address_map &map);
+ void brickzn_pcm_map(address_map &map);
+ void brickzn_sound_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void hardhea2_map(address_map &map);
+ void hardhead_io_map(address_map &map);
+ void hardhead_map(address_map &map);
+ void hardhead_sound_io_map(address_map &map);
+ void hardhead_sound_map(address_map &map);
+ void rranger_io_map(address_map &map);
+ void rranger_map(address_map &map);
+ void rranger_sound_map(address_map &map);
+ void sparkman_map(address_map &map);
+ void starfigh_map(address_map &map);
};
diff --git a/src/mame/includes/super6.h b/src/mame/includes/super6.h
index 92223c7bd99..ea55d0fc938 100644
--- a/src/mame/includes/super6.h
+++ b/src/mame/includes/super6.h
@@ -62,6 +62,8 @@ public:
DECLARE_WRITE8_MEMBER(io_write_byte);
void super6(machine_config &config);
+ void super6_io(address_map &map);
+ void super6_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/super80.h b/src/mame/includes/super80.h
index ab63ffab82c..0d1bc59b364 100644
--- a/src/mame/includes/super80.h
+++ b/src/mame/includes/super80.h
@@ -99,6 +99,13 @@ public:
void super80e(machine_config &config);
void super80d(machine_config &config);
void super80v(machine_config &config);
+ void super80_io(address_map &map);
+ void super80_map(address_map &map);
+ void super80e_io(address_map &map);
+ void super80m_map(address_map &map);
+ void super80r_io(address_map &map);
+ void super80v_io(address_map &map);
+ void super80v_map(address_map &map);
private:
uint8_t m_s_options;
uint8_t m_portf0;
diff --git a/src/mame/includes/superchs.h b/src/mame/includes/superchs.h
index 333d097cf62..1a27f073ed1 100644
--- a/src/mame/includes/superchs.h
+++ b/src/mame/includes/superchs.h
@@ -56,4 +56,7 @@ public:
required_device<palette_device> m_palette;
void superchs(machine_config &config);
void chase3(machine_config &config);
+ void chase3_cpub_map(address_map &map);
+ void superchs_cpub_map(address_map &map);
+ void superchs_map(address_map &map);
};
diff --git a/src/mame/includes/superqix.h b/src/mame/includes/superqix.h
index 44d953ad0ca..d8ed7756497 100644
--- a/src/mame/includes/superqix.h
+++ b/src/mame/includes/superqix.h
@@ -61,6 +61,7 @@ public:
uint32_t screen_update_superqix(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void superqix_draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect);
+ void main_map(address_map &map);
protected:
virtual void machine_init_common();
};
@@ -104,6 +105,9 @@ public:
void sqix(machine_config &config);
void sqix_8031(machine_config &config);
void sqix_nomcu(machine_config &config);
+ void sqix_8031_mcu_io_map(address_map &map);
+ void sqix_mcu_io_map(address_map &map);
+ void sqix_port_map(address_map &map);
protected:
virtual void machine_init_common() override;
@@ -157,6 +161,7 @@ public:
u32 screen_update_pbillian(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void pbillian(machine_config &config);
+ void pbillian_port_map(address_map &map);
protected:
virtual void machine_init_common() override;
diff --git a/src/mame/includes/suprloco.h b/src/mame/includes/suprloco.h
index 78478598ec6..d07b9ee62cd 100644
--- a/src/mame/includes/suprloco.h
+++ b/src/mame/includes/suprloco.h
@@ -47,4 +47,7 @@ public:
void draw_sprite(bitmap_ind16 &bitmap,const rectangle &cliprect,int spr_number);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void suprloco(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/suprnova.h b/src/mame/includes/suprnova.h
index 19da21f8a45..c211a8bc770 100644
--- a/src/mame/includes/suprnova.h
+++ b/src/mame/includes/suprnova.h
@@ -170,4 +170,5 @@ public:
void sknsj(machine_config &config);
void sknse(machine_config &config);
void skns(machine_config &config);
+ void skns_map(address_map &map);
};
diff --git a/src/mame/includes/suprridr.h b/src/mame/includes/suprridr.h
index 5ca00ed9721..feddab1708e 100644
--- a/src/mame/includes/suprridr.h
+++ b/src/mame/includes/suprridr.h
@@ -64,4 +64,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
int is_screen_flipped();
void suprridr(machine_config &config);
+ void main_map(address_map &map);
+ void main_portmap(address_map &map);
+ void sound_map(address_map &map);
+ void sound_portmap(address_map &map);
};
diff --git a/src/mame/includes/suprslam.h b/src/mame/includes/suprslam.h
index 5b1bf1c312c..b166fd69453 100644
--- a/src/mame/includes/suprslam.h
+++ b/src/mame/includes/suprslam.h
@@ -66,6 +66,9 @@ public:
virtual void video_start() override;
uint32_t screen_update_suprslam(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void suprslam(machine_config &config);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void suprslam_map(address_map &map);
};
#endif // MAME_INCLUDES_SUPRSLAM_H
diff --git a/src/mame/includes/surpratk.h b/src/mame/includes/surpratk.h
index eed8d66ba7e..da5dacc89e5 100644
--- a/src/mame/includes/surpratk.h
+++ b/src/mame/includes/surpratk.h
@@ -48,4 +48,6 @@ public:
K052109_CB_MEMBER(tile_callback);
DECLARE_WRITE8_MEMBER(banking_callback);
void surpratk(machine_config &config);
+ void bank0000_map(address_map &map);
+ void surpratk_map(address_map &map);
};
diff --git a/src/mame/includes/svision.h b/src/mame/includes/svision.h
index 6544f265a21..d993c1c6738 100644
--- a/src/mame/includes/svision.h
+++ b/src/mame/includes/svision.h
@@ -80,6 +80,8 @@ public:
void tvlinkp(machine_config &config);
void svision(machine_config &config);
void svisionn(machine_config &config);
+ void svision_mem(address_map &map);
+ void tvlink_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<svision_sound_device> m_sound;
diff --git a/src/mame/includes/swtpc09.h b/src/mame/includes/swtpc09.h
index 651b182fd44..f6a7f9cb951 100644
--- a/src/mame/includes/swtpc09.h
+++ b/src/mame/includes/swtpc09.h
@@ -104,6 +104,11 @@ public:
void swtpc09d3(machine_config &config);
void swtpc09u(machine_config &config);
void swtpc09(machine_config &config);
+ void flex_dc4_piaide_mem(address_map &map);
+ void flex_dmf2_mem(address_map &map);
+ void mp09_mem(address_map &map);
+ void uniflex_dmf2_mem(address_map &map);
+ void uniflex_dmf3_mem(address_map &map);
protected:
virtual void machine_start() override;
diff --git a/src/mame/includes/system1.h b/src/mame/includes/system1.h
index ae22186e425..e649161b84b 100644
--- a/src/mame/includes/system1.h
+++ b/src/mame/includes/system1.h
@@ -189,4 +189,13 @@ public:
void sys1piox_315_5177(machine_config &config);
void sys1piox_315_5155(machine_config &config);
void sys2rowxb(machine_config &config);
+ void banked_decrypted_opcodes_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void mcu_io_map(address_map &map);
+ void nob_mcu_io_map(address_map &map);
+ void nobo_map(address_map &map);
+ void sound_map(address_map &map);
+ void system1_map(address_map &map);
+ void system1_pio_io_map(address_map &map);
+ void system1_ppi_io_map(address_map &map);
};
diff --git a/src/mame/includes/system16.h b/src/mame/includes/system16.h
index 5193b83f2dc..791b8d14e10 100644
--- a/src/mame/includes/system16.h
+++ b/src/mame/includes/system16.h
@@ -259,4 +259,38 @@ public:
void tturfbl(machine_config &config);
void altbeastbl(machine_config &config);
void system18(machine_config &config);
+ void astormbl_map(address_map &map);
+ void bayrouteb1_map(address_map &map);
+ void bayrouteb2_map(address_map &map);
+ void beautyb_map(address_map &map);
+ void ddcrewbl_map(address_map &map);
+ void dduxbl_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void eswatbl2_map(address_map &map);
+ void eswatbl_map(address_map &map);
+ void goldnaxeb1_map(address_map &map);
+ void goldnaxeb2_map(address_map &map);
+ void mwalkbl_map(address_map &map);
+ void passht4b_map(address_map &map);
+ void passshtb_map(address_map &map);
+ void shdancbl_map(address_map &map);
+ void shdancbl_sound_io_map(address_map &map);
+ void shdancbl_sound_map(address_map &map);
+ void shdancbla_map(address_map &map);
+ void shdancbla_sound_map(address_map &map);
+ void shinobi_datsu_sound_map(address_map &map);
+ void shinobib_map(address_map &map);
+ void sound_18_io_map(address_map &map);
+ void sound_18_map(address_map &map);
+ void sound_7759_io_map(address_map &map);
+ void sound_7759_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void sys18bl_oki_map(address_map &map);
+ void sys18bl_sound_map(address_map &map);
+ void tetrisbl_map(address_map &map);
+ void tturfbl_map(address_map &map);
+ void tturfbl_sound_io_map(address_map &map);
+ void tturfbl_sound_map(address_map &map);
+ void wb3bbl_map(address_map &map);
};
diff --git a/src/mame/includes/tagteam.h b/src/mame/includes/tagteam.h
index 7f16d758342..2a91877ad4e 100644
--- a/src/mame/includes/tagteam.h
+++ b/src/mame/includes/tagteam.h
@@ -52,4 +52,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void tagteam(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/tail2nos.h b/src/mame/includes/tail2nos.h
index 145d1b15151..c76299d9acf 100644
--- a/src/mame/includes/tail2nos.h
+++ b/src/mame/includes/tail2nos.h
@@ -62,4 +62,7 @@ public:
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
K051316_CB_MEMBER(zoom_callback);
void tail2nos(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_port_map(address_map &map);
};
diff --git a/src/mame/includes/taito_b.h b/src/mame/includes/taito_b.h
index dfe5ed5fa14..e1b6cf38857 100644
--- a/src/mame/includes/taito_b.h
+++ b/src/mame/includes/taito_b.h
@@ -105,6 +105,26 @@ public:
void viofight(machine_config &config);
void crimec(machine_config &config);
void selfeena(machine_config &config);
+ void crimec_map(address_map &map);
+ void hitice_map(address_map &map);
+ void masterw_map(address_map &map);
+ void masterw_sound_map(address_map &map);
+ void pbobble_map(address_map &map);
+ void qzshowby_map(address_map &map);
+ void rambo3_map(address_map &map);
+ void rastsag2_map(address_map &map);
+ void realpunc_hd63484_map(address_map &map);
+ void realpunc_map(address_map &map);
+ void sbm_map(address_map &map);
+ void selfeena_map(address_map &map);
+ void silentd_map(address_map &map);
+ void sound_map(address_map &map);
+ void spacedx_map(address_map &map);
+ void spacedxo_map(address_map &map);
+ void tetrist_map(address_map &map);
+ void tetrista_map(address_map &map);
+ void viofight_map(address_map &map);
+ void viofight_sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/taito_f2.h b/src/mame/includes/taito_f2.h
index 65983fc55cc..1a30481d3b4 100644
--- a/src/mame/includes/taito_f2.h
+++ b/src/mame/includes/taito_f2.h
@@ -228,6 +228,39 @@ public:
void deadconxj(machine_config &config);
void footchmpbl(machine_config &config);
void yuyugogo(machine_config &config);
+ void cameltry_map(address_map &map);
+ void cameltrya_map(address_map &map);
+ void cameltrya_sound_map(address_map &map);
+ void deadconx_map(address_map &map);
+ void dinorex_map(address_map &map);
+ void dondokod_map(address_map &map);
+ void driftout_map(address_map &map);
+ void driveout_map(address_map &map);
+ void driveout_sound_map(address_map &map);
+ void finalb_map(address_map &map);
+ void footchmp_map(address_map &map);
+ void growl_map(address_map &map);
+ void gunfront_map(address_map &map);
+ void koshien_map(address_map &map);
+ void liquidk_map(address_map &map);
+ void megab_map(address_map &map);
+ void metalb_map(address_map &map);
+ void mjnquest_map(address_map &map);
+ void ninjak_map(address_map &map);
+ void pulirula_map(address_map &map);
+ void qcrayon2_map(address_map &map);
+ void qcrayon_map(address_map &map);
+ void qjinsei_map(address_map &map);
+ void qtorimon_map(address_map &map);
+ void quizhq_map(address_map &map);
+ void qzchikyu_map(address_map &map);
+ void qzquest_map(address_map &map);
+ void solfigtr_map(address_map &map);
+ void sound_map(address_map &map);
+ void ssi_map(address_map &map);
+ void thundfox_map(address_map &map);
+ void yesnoj_map(address_map &map);
+ void yuyugogo_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/taito_f3.h b/src/mame/includes/taito_f3.h
index d894b11a36b..ee5102bc866 100644
--- a/src/mame/includes/taito_f3.h
+++ b/src/mame/includes/taito_f3.h
@@ -321,6 +321,8 @@ public:
void f3_224b(machine_config &config);
void f3_224c(machine_config &config);
void f3_224b_eeprom(machine_config &config);
+ void bubsympb_map(address_map &map);
+ void f3_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
virtual void device_post_load(void) override;
diff --git a/src/mame/includes/taito_h.h b/src/mame/includes/taito_h.h
index d9dabe3e064..eb51021ed3a 100644
--- a/src/mame/includes/taito_h.h
+++ b/src/mame/includes/taito_h.h
@@ -49,4 +49,9 @@ public:
void syvalion(machine_config &config);
void dleague(machine_config &config);
void tetristh(machine_config &config);
+ void dleague_map(address_map &map);
+ void recordbr_map(address_map &map);
+ void sound_map(address_map &map);
+ void syvalion_map(address_map &map);
+ void tetristh_map(address_map &map);
};
diff --git a/src/mame/includes/taito_l.h b/src/mame/includes/taito_l.h
index 37295911696..05d59223c5e 100644
--- a/src/mame/includes/taito_l.h
+++ b/src/mame/includes/taito_l.h
@@ -13,6 +13,7 @@ public:
taitol_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag)
, m_main_cpu(*this, "maincpu")
+ , m_upd4701(*this, "upd4701")
, m_main_prg(*this, "maincpu")
, m_main_bnk(*this, "bank1")
, m_ram_bnks(*this, "bank%u", 2)
@@ -97,11 +98,13 @@ public:
void bank_w(address_space &space, offs_t offset, u8 data, int banknum);
void l_system_video(machine_config &config);
+ void common_banks_map(address_map &map);
protected:
virtual void state_register();
virtual void taito_machine_reset();
required_device<cpu_device> m_main_cpu;
+ optional_device<upd4701_device> m_upd4701;
required_region_ptr<u8> m_main_prg;
required_memory_bank m_main_bnk;
required_memory_bank_array<4> m_ram_bnks;
@@ -126,6 +129,13 @@ public:
void kurikint(machine_config &config);
void evilston(machine_config &config);
void raimais(machine_config &config);
+ void evilston_2_map(address_map &map);
+ void evilston_map(address_map &map);
+ void kurikint_2_map(address_map &map);
+ void kurikint_map(address_map &map);
+ void raimais_2_map(address_map &map);
+ void raimais_3_map(address_map &map);
+ void raimais_map(address_map &map);
protected:
virtual void state_register() override;
virtual void taito_machine_reset() override;
@@ -154,6 +164,9 @@ public:
DECLARE_WRITE8_MEMBER(portA_w);
void fhawk(machine_config &config);
+ void fhawk_2_map(address_map &map);
+ void fhawk_3_map(address_map &map);
+ void fhawk_map(address_map &map);
protected:
virtual void state_register() override;
virtual void taito_machine_reset() override;
@@ -188,6 +201,9 @@ public:
DECLARE_WRITE8_MEMBER(msm5205_volume_w);
void champwr(machine_config &config);
+ void champwr_2_map(address_map &map);
+ void champwr_3_map(address_map &map);
+ void champwr_map(address_map &map);
protected:
virtual void state_register() override;
virtual void taito_machine_reset() override;
@@ -224,6 +240,11 @@ public:
void puzznici(machine_config &config);
void cachat(machine_config &config);
void puzznic(machine_config &config);
+ void cachat_map(address_map &map);
+ void palamed_map(address_map &map);
+ void plotting_map(address_map &map);
+ void puzznic_map(address_map &map);
+ void puzznici_map(address_map &map);
protected:
virtual void state_register() override;
virtual void taito_machine_reset() override;
@@ -245,4 +266,5 @@ public:
DECLARE_MACHINE_RESET(horshoes);
void horshoes(machine_config &config);
+ void horshoes_map(address_map &map);
};
diff --git a/src/mame/includes/taito_o.h b/src/mame/includes/taito_o.h
index 8d0e3b2e280..82785a407db 100644
--- a/src/mame/includes/taito_o.h
+++ b/src/mame/includes/taito_o.h
@@ -35,4 +35,5 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(parentj_interrupt);
void parentj_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect, int priority );
void parentj(machine_config &config);
+ void parentj_map(address_map &map);
};
diff --git a/src/mame/includes/taito_x.h b/src/mame/includes/taito_x.h
index b4713170347..7eee94ad658 100644
--- a/src/mame/includes/taito_x.h
+++ b/src/mame/includes/taito_x.h
@@ -40,6 +40,12 @@ public:
void ballbros(machine_config &config);
void gigandes(machine_config &config);
void daisenpu(machine_config &config);
+ void ballbros_map(address_map &map);
+ void daisenpu_map(address_map &map);
+ void daisenpu_sound_map(address_map &map);
+ void gigandes_map(address_map &map);
+ void sound_map(address_map &map);
+ void superman_map(address_map &map);
};
#endif // MAME_INCLUDES_TAITO_X_H
diff --git a/src/mame/includes/taito_z.h b/src/mame/includes/taito_z.h
index a49dce2cdce..51f25118f09 100644
--- a/src/mame/includes/taito_z.h
+++ b/src/mame/includes/taito_z.h
@@ -134,6 +134,28 @@ public:
void racingb(machine_config &config);
void bsharkjjs(machine_config &config);
void enforce(machine_config &config);
+ void aquajack_cpub_map(address_map &map);
+ void aquajack_map(address_map &map);
+ void bshark_cpub_map(address_map &map);
+ void bshark_map(address_map &map);
+ void bsharkjjs_map(address_map &map);
+ void chasehq_map(address_map &map);
+ void chq_cpub_map(address_map &map);
+ void contcirc_cpub_map(address_map &map);
+ void contcirc_map(address_map &map);
+ void dblaxle_cpub_map(address_map &map);
+ void dblaxle_map(address_map &map);
+ void enforce_cpub_map(address_map &map);
+ void enforce_map(address_map &map);
+ void nightstr_cpub_map(address_map &map);
+ void nightstr_map(address_map &map);
+ void racingb_cpub_map(address_map &map);
+ void racingb_map(address_map &map);
+ void sci_cpub_map(address_map &map);
+ void sci_map(address_map &map);
+ void spacegun_cpub_map(address_map &map);
+ void spacegun_map(address_map &map);
+ void z80_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/taitoair.h b/src/mame/includes/taitoair.h
index b1654371eb5..1e13aa5356d 100644
--- a/src/mame/includes/taitoair.h
+++ b/src/mame/includes/taitoair.h
@@ -136,4 +136,8 @@ public:
void fill_slope( bitmap_ind16 &bitmap, const rectangle &cliprect, uint16_t header, int32_t x1, int32_t x2, int32_t sl1, int32_t sl2, int32_t y1, int32_t y2, int32_t *nx1, int32_t *nx2 );
void fill_poly( bitmap_ind16 &bitmap, const rectangle &cliprect, const struct taitoair_poly *q );
void airsys(machine_config &config);
+ void DSP_map_data(address_map &map);
+ void DSP_map_program(address_map &map);
+ void airsys_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/taitojc.h b/src/mame/includes/taitojc.h
index 8b29d13222c..986bfaef66a 100644
--- a/src/mame/includes/taitojc.h
+++ b/src/mame/includes/taitojc.h
@@ -137,4 +137,10 @@ public:
void draw_object_bank(bitmap_ind16 &bitmap, const rectangle &cliprect, uint8_t bank_type, uint8_t pri);
void taitojc(machine_config &config);
void dendego(machine_config &config);
+ void dendego_map(address_map &map);
+ void hc11_io_map(address_map &map);
+ void hc11_pgm_map(address_map &map);
+ void taitojc_map(address_map &map);
+ void tms_data_map(address_map &map);
+ void tms_program_map(address_map &map);
};
diff --git a/src/mame/includes/taitosj.h b/src/mame/includes/taitosj.h
index b61818c6185..e41a57c245b 100644
--- a/src/mame/includes/taitosj.h
+++ b/src/mame/includes/taitosj.h
@@ -156,4 +156,8 @@ public:
void mcu(machine_config &config);
void nomcu(machine_config &config);
void kikstart(machine_config &config);
+ void kikstart_main_map(address_map &map);
+ void taitosj_audio_map(address_map &map);
+ void taitosj_main_mcu_map(address_map &map);
+ void taitosj_main_nomcu_map(address_map &map);
};
diff --git a/src/mame/includes/tandy2k.h b/src/mame/includes/tandy2k.h
index bee218e3c02..5276392c6b3 100644
--- a/src/mame/includes/tandy2k.h
+++ b/src/mame/includes/tandy2k.h
@@ -226,6 +226,10 @@ public:
int m_centronics_busy;
void tandy2k_hd(machine_config &config);
void tandy2k(machine_config &config);
+ void tandy2k_hd_io(address_map &map);
+ void tandy2k_io(address_map &map);
+ void tandy2k_mem(address_map &map);
+ void vpac_mem(address_map &map);
};
#endif // MAME_INCLUDES_TANDY2K_H
diff --git a/src/mame/includes/tank8.h b/src/mame/includes/tank8.h
index 40874f1de56..0ae4bc03d91 100644
--- a/src/mame/includes/tank8.h
+++ b/src/mame/includes/tank8.h
@@ -94,6 +94,7 @@ public:
void set_collision(int index);
void tank8(machine_config &config);
+ void tank8_cpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/tankbatt.h b/src/mame/includes/tankbatt.h
index 7b2438eec11..c6a44673553 100644
--- a/src/mame/includes/tankbatt.h
+++ b/src/mame/includes/tankbatt.h
@@ -53,4 +53,5 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_bullets(bitmap_ind16 &bitmap, const rectangle &cliprect);
void tankbatt(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/tankbust.h b/src/mame/includes/tankbust.h
index e7f5980f4ce..b5318ba3c70 100644
--- a/src/mame/includes/tankbust.h
+++ b/src/mame/includes/tankbust.h
@@ -61,4 +61,7 @@ public:
TIMER_CALLBACK_MEMBER(soundlatch_callback);
TIMER_CALLBACK_MEMBER(soundirqline_callback);
void tankbust(machine_config &config);
+ void main_map(address_map &map);
+ void map_cpu2(address_map &map);
+ void port_map_cpu2(address_map &map);
};
diff --git a/src/mame/includes/taotaido.h b/src/mame/includes/taotaido.h
index b7ee8c08d52..d25eed1b146 100644
--- a/src/mame/includes/taotaido.h
+++ b/src/mame/includes/taotaido.h
@@ -60,6 +60,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank);
uint32_t tile_callback( uint32_t code );
void taotaido(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_port_map(address_map &map);
};
#endif // MAME_INCLUDES_TAOTAIDO_H
diff --git a/src/mame/includes/targeth.h b/src/mame/includes/targeth.h
index 9633a22c9d2..8871ba31d2e 100644
--- a/src/mame/includes/targeth.h
+++ b/src/mame/includes/targeth.h
@@ -42,6 +42,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void targeth(machine_config &config);
+ void main_map(address_map &map);
+ void mcu_hostmem_map(address_map &map);
+ void oki_map(address_map &map);
protected:
virtual void video_start() override;
virtual void machine_start() override;
diff --git a/src/mame/includes/tatsumi.h b/src/mame/includes/tatsumi.h
index 0f9a7967210..3d4bf2027be 100644
--- a/src/mame/includes/tatsumi.h
+++ b/src/mame/includes/tatsumi.h
@@ -87,6 +87,10 @@ public:
DECLARE_WRITE_LINE_MEMBER(apache3_68000_reset);
void apache3(machine_config &config);
+ void apache3_68000_map(address_map &map);
+ void apache3_v20_map(address_map &map);
+ void apache3_v30_map(address_map &map);
+ void apache3_z80_map(address_map &map);
private:
void draw_sky(bitmap_rgb32 &bitmap, const rectangle &cliprect, int palette_base, int start_offset);
void draw_ground(bitmap_rgb32 &dst, const rectangle &cliprect);
@@ -133,6 +137,9 @@ public:
uint32_t screen_update_roundup5(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void roundup5(machine_config &config);
+ void roundup5_68000_map(address_map &map);
+ void roundup5_v30_map(address_map &map);
+ void roundup5_z80_map(address_map &map);
private:
void draw_road(bitmap_rgb32 &bitmap, const rectangle &cliprect, bitmap_ind8 &shadow_bitmap);
@@ -188,6 +195,11 @@ public:
void cyclwarr(machine_config &config);
void bigfight(machine_config &config);
+ void bigfight_68000a_map(address_map &map);
+ void bigfight_68000b_map(address_map &map);
+ void cyclwarr_68000a_map(address_map &map);
+ void cyclwarr_68000b_map(address_map &map);
+ void cyclwarr_z80_map(address_map &map);
private:
required_device_array<cxd1095_device, 2> m_io;
required_device<generic_latch_8_device> m_soundlatch;
diff --git a/src/mame/includes/taxidriv.h b/src/mame/includes/taxidriv.h
index 6303747ae93..544ef718d27 100644
--- a/src/mame/includes/taxidriv.h
+++ b/src/mame/includes/taxidriv.h
@@ -68,4 +68,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void taxidriv(machine_config &config);
+ void cpu2_map(address_map &map);
+ void cpu3_map(address_map &map);
+ void cpu3_port_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/tbowl.h b/src/mame/includes/tbowl.h
index d151292e5b6..8752d164001 100644
--- a/src/mame/includes/tbowl.h
+++ b/src/mame/includes/tbowl.h
@@ -83,4 +83,7 @@ public:
DECLARE_WRITE_LINE_MEMBER(adpcm_int_1);
DECLARE_WRITE_LINE_MEMBER(adpcm_int_2);
void tbowl(machine_config &config);
+ void _6206A_map(address_map &map);
+ void _6206B_map(address_map &map);
+ void _6206C_map(address_map &map);
};
diff --git a/src/mame/includes/tceptor.h b/src/mame/includes/tceptor.h
index d1d20e447b7..b904882d0ac 100644
--- a/src/mame/includes/tceptor.h
+++ b/src/mame/includes/tceptor.h
@@ -90,4 +90,10 @@ public:
inline uint8_t fix_input0(uint8_t in1, uint8_t in2);
inline uint8_t fix_input1(uint8_t in1, uint8_t in2);
void tceptor(machine_config &config);
+ void m6502_a_map(address_map &map);
+ void m6502_b_map(address_map &map);
+ void m6809_map(address_map &map);
+ void m68k_map(address_map &map);
+ void mcu_io_map(address_map &map);
+ void mcu_map(address_map &map);
};
diff --git a/src/mame/includes/tdv2324.h b/src/mame/includes/tdv2324.h
index f401bea04a7..87b5832f3cd 100644
--- a/src/mame/includes/tdv2324.h
+++ b/src/mame/includes/tdv2324.h
@@ -81,6 +81,11 @@ public:
// video state
required_shared_ptr<uint8_t> m_video_ram;
void tdv2324(machine_config &config);
+ void tdv2324_fdc_mem(address_map &map);
+ void tdv2324_io(address_map &map);
+ void tdv2324_mem(address_map &map);
+ void tdv2324_sub_io(address_map &map);
+ void tdv2324_sub_mem(address_map &map);
};
diff --git a/src/mame/includes/tecmo.h b/src/mame/includes/tecmo.h
index 2a4b4fffcd4..02df76b01b3 100644
--- a/src/mame/includes/tecmo.h
+++ b/src/mame/includes/tecmo.h
@@ -82,4 +82,9 @@ public:
void silkworm(machine_config &config);
void gemini(machine_config &config);
void rygar(machine_config &config);
+ void gemini_map(address_map &map);
+ void rygar_map(address_map &map);
+ void rygar_sound_map(address_map &map);
+ void silkworm_map(address_map &map);
+ void tecmo_sound_map(address_map &map);
};
diff --git a/src/mame/includes/tecmo16.h b/src/mame/includes/tecmo16.h
index 6dcc0e0240b..8531ae1ee6b 100644
--- a/src/mame/includes/tecmo16.h
+++ b/src/mame/includes/tecmo16.h
@@ -82,4 +82,7 @@ public:
void ginkun(machine_config &config);
void fstarfrc(machine_config &config);
void riot(machine_config &config);
+ void fstarfrc_map(address_map &map);
+ void ginkun_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/tecmosys.h b/src/mame/includes/tecmosys.h
index f90331391f7..50ac01c775f 100644
--- a/src/mame/includes/tecmosys.h
+++ b/src/mame/includes/tecmosys.h
@@ -120,4 +120,7 @@ public:
void do_final_mix(bitmap_rgb32 &bitmap);
void descramble();
void deroon(machine_config &config);
+ void io_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/tehkanwc.h b/src/mame/includes/tehkanwc.h
index 87555c22ccf..7d675176a38 100644
--- a/src/mame/includes/tehkanwc.h
+++ b/src/mame/includes/tehkanwc.h
@@ -88,6 +88,10 @@ public:
void tehkanwcb(machine_config &config);
void tehkanwc(machine_config &config);
+ void main_mem(address_map &map);
+ void sound_mem(address_map &map);
+ void sound_port(address_map &map);
+ void sub_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/tek405x.h b/src/mame/includes/tek405x.h
index 9d8cbc94d97..3c6835fd487 100644
--- a/src/mame/includes/tek405x.h
+++ b/src/mame/includes/tek405x.h
@@ -145,6 +145,7 @@ public:
int m_talk;
TIMER_DEVICE_CALLBACK_MEMBER(keyboard_tick);
void tek4051(machine_config &config);
+ void tek4051_mem(address_map &map);
};
class tek4052_state : public driver_device
@@ -163,6 +164,7 @@ public:
virtual void video_start() override;
void tek4052(machine_config &config);
+ void tek4052_mem(address_map &map);
};
#endif // MAME_INCLUDES_TEK405X_H
diff --git a/src/mame/includes/terracre.h b/src/mame/includes/terracre.h
index afca927b17c..61fe0ba2644 100644
--- a/src/mame/includes/terracre.h
+++ b/src/mame/includes/terracre.h
@@ -54,4 +54,10 @@ public:
void amazon_1412m2(machine_config &config);
void ym2203(machine_config &config);
void ym3526(machine_config &config);
+ void amazon_1412m2_map(address_map &map);
+ void amazon_base_map(address_map &map);
+ void sound_2203_io_map(address_map &map);
+ void sound_3526_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void terracre_map(address_map &map);
};
diff --git a/src/mame/includes/tetrisp2.h b/src/mame/includes/tetrisp2.h
index a04a81e90c2..91fe1157077 100644
--- a/src/mame/includes/tetrisp2.h
+++ b/src/mame/includes/tetrisp2.h
@@ -143,6 +143,12 @@ public:
void nndmseal(machine_config &config);
void rocknms(machine_config &config);
void rockn(machine_config &config);
+ void nndmseal_map(address_map &map);
+ void rockn1_map(address_map &map);
+ void rockn2_map(address_map &map);
+ void rocknms_main_map(address_map &map);
+ void rocknms_sub_map(address_map &map);
+ void tetrisp2_map(address_map &map);
};
class stepstag_state : public tetrisp2_state
@@ -189,6 +195,9 @@ public:
void stepstag(machine_config &config);
void vjdash(machine_config &config);
+ void stepstag_map(address_map &map);
+ void stepstag_sub_map(address_map &map);
+ void vjdash_map(address_map &map);
private:
required_shared_ptr<uint16_t> m_spriteram1;
required_shared_ptr<uint16_t> m_spriteram3;
diff --git a/src/mame/includes/thedeep.h b/src/mame/includes/thedeep.h
index 8414b3818ac..4c9d3d66e36 100644
--- a/src/mame/includes/thedeep.h
+++ b/src/mame/includes/thedeep.h
@@ -75,4 +75,7 @@ public:
INTERRUPT_GEN_MEMBER(mcu_irq);
TIMER_DEVICE_CALLBACK_MEMBER(interrupt);
void thedeep(machine_config &config);
+ void audio_map(address_map &map);
+ void main_map(address_map &map);
+ void mcu_io_map(address_map &map);
};
diff --git a/src/mame/includes/thepit.h b/src/mame/includes/thepit.h
index 1c61fb58c80..115f7a1d213 100644
--- a/src/mame/includes/thepit.h
+++ b/src/mame/includes/thepit.h
@@ -67,4 +67,9 @@ public:
void intrepid(machine_config &config);
void thepit(machine_config &config);
void fitter(machine_config &config);
+ void audio_io_map(address_map &map);
+ void audio_map(address_map &map);
+ void desertdan_main_map(address_map &map);
+ void intrepid_main_map(address_map &map);
+ void thepit_main_map(address_map &map);
};
diff --git a/src/mame/includes/thief.h b/src/mame/includes/thief.h
index 4ea9ebcbf87..d1fbe508a93 100644
--- a/src/mame/includes/thief.h
+++ b/src/mame/includes/thief.h
@@ -55,4 +55,7 @@ public:
void natodef(machine_config &config);
void sharkatt(machine_config &config);
void thief(machine_config &config);
+ void io_map(address_map &map);
+ void sharkatt_main_map(address_map &map);
+ void thief_main_map(address_map &map);
};
diff --git a/src/mame/includes/thomson.h b/src/mame/includes/thomson.h
index 1cfc3673d02..8c4a6f043bf 100644
--- a/src/mame/includes/thomson.h
+++ b/src/mame/includes/thomson.h
@@ -368,6 +368,14 @@ public:
void mo5nr(machine_config &config);
void to770(machine_config &config);
void to8d(machine_config &config);
+ void mo5(address_map &map);
+ void mo5nr(address_map &map);
+ void mo6(address_map &map);
+ void to7(address_map &map);
+ void to770(address_map &map);
+ void to8(address_map &map);
+ void to9(address_map &map);
+ void to9p(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<cassette_image_device> m_cassette;
diff --git a/src/mame/includes/thoop2.h b/src/mame/includes/thoop2.h
index 3c3c2567c53..9972edacb2c 100644
--- a/src/mame/includes/thoop2.h
+++ b/src/mame/includes/thoop2.h
@@ -5,6 +5,8 @@
#pragma once
+#include "machine/74259.h"
+
class thoop2_state : public driver_device
{
public:
@@ -12,6 +14,7 @@ public:
driver_device(mconfig, type, tag),
m_pant{ nullptr, nullptr },
m_maincpu(*this, "maincpu"),
+ m_outlatch(*this, "outlatch"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
m_videoram(*this, "videoram"),
@@ -35,6 +38,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void thoop2(machine_config &config);
+ void mcu_hostmem_map(address_map &map);
+ void oki_map(address_map &map);
+ void thoop2_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
@@ -48,6 +54,7 @@ private:
tilemap_t *m_pant[2];
required_device<cpu_device> m_maincpu;
+ required_device<ls259_device> m_outlatch;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
diff --git a/src/mame/includes/thunderj.h b/src/mame/includes/thunderj.h
index fbe2be08cab..f450952994e 100644
--- a/src/mame/includes/thunderj.h
+++ b/src/mame/includes/thunderj.h
@@ -38,4 +38,6 @@ public:
static const atari_motion_objects_config s_mob_config;
void thunderj(machine_config &config);
+ void extra_map(address_map &map);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/thunderx.h b/src/mame/includes/thunderx.h
index 846618f2a9b..146f98294e4 100644
--- a/src/mame/includes/thunderx.h
+++ b/src/mame/includes/thunderx.h
@@ -81,6 +81,13 @@ public:
void scontra(machine_config &config);
void gbusters(machine_config &config);
void thunderx(machine_config &config);
+ void gbusters_map(address_map &map);
+ void scontra_bank5800_map(address_map &map);
+ void scontra_map(address_map &map);
+ void scontra_sound_map(address_map &map);
+ void thunderx_bank5800_map(address_map &map);
+ void thunderx_map(address_map &map);
+ void thunderx_sound_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/ti85.h b/src/mame/includes/ti85.h
index dfacd42dbae..0095dd5250a 100644
--- a/src/mame/includes/ti85.h
+++ b/src/mame/includes/ti85.h
@@ -237,6 +237,20 @@ public:
void ti81(machine_config &config);
void ti85(machine_config &config);
void ti84p(machine_config &config);
+ void ti81_io(address_map &map);
+ void ti81_mem(address_map &map);
+ void ti81v2_io(address_map &map);
+ void ti82_io(address_map &map);
+ void ti83_io(address_map &map);
+ void ti83p_asic_mem(address_map &map);
+ void ti83p_banked_mem(address_map &map);
+ void ti83p_io(address_map &map);
+ void ti83pse_banked_mem(address_map &map);
+ void ti83pse_io(address_map &map);
+ void ti84p_banked_mem(address_map &map);
+ void ti85_io(address_map &map);
+ void ti86_io(address_map &map);
+ void ti86_mem(address_map &map);
//address_space &asic;
};
diff --git a/src/mame/includes/ti89.h b/src/mame/includes/ti89.h
index f596f75066a..32e58d78411 100644
--- a/src/mame/includes/ti89.h
+++ b/src/mame/includes/ti89.h
@@ -90,6 +90,11 @@ public:
void ti89(machine_config &config);
void ti92p(machine_config &config);
void ti89t(machine_config &config);
+ void ti89_mem(address_map &map);
+ void ti89t_mem(address_map &map);
+ void ti92_mem(address_map &map);
+ void ti92p_mem(address_map &map);
+ void v200_mem(address_map &map);
};
#endif // MAME_INCLUDES_TI89_H
diff --git a/src/mame/includes/tiamc1.h b/src/mame/includes/tiamc1.h
index cacceec1eac..21164bbea73 100644
--- a/src/mame/includes/tiamc1.h
+++ b/src/mame/includes/tiamc1.h
@@ -63,6 +63,10 @@ public:
required_device<palette_device> m_palette;
void kot(machine_config &config);
void tiamc1(machine_config &config);
+ void kotrybolov_io_map(address_map &map);
+ void kotrybolov_map(address_map &map);
+ void tiamc1_io_map(address_map &map);
+ void tiamc1_map(address_map &map);
private:
optional_device<speaker_sound_device> m_speaker;
void update_bg_palette();
diff --git a/src/mame/includes/tigeroad.h b/src/mame/includes/tigeroad.h
index 58698b040a1..d478af6e164 100644
--- a/src/mame/includes/tigeroad.h
+++ b/src/mame/includes/tigeroad.h
@@ -63,6 +63,13 @@ public:
void toramich(machine_config &config);
void tigeroad(machine_config &config);
void f1dream_comad(machine_config &config);
+ void comad_sound_io_map(address_map &map);
+ void comad_sound_map(address_map &map);
+ void main_map(address_map &map);
+ void sample_map(address_map &map);
+ void sample_port_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_port_map(address_map &map);
protected:
/* misc */
bool m_has_coinlock;
@@ -95,6 +102,8 @@ public:
void pushman(machine_config &config);
void bballs(machine_config &config);
+ void bballs_map(address_map &map);
+ void pushman_map(address_map &map);
protected:
virtual void machine_start() override;
diff --git a/src/mame/includes/tiki100.h b/src/mame/includes/tiki100.h
index 2a13d183a17..ed769f848e4 100644
--- a/src/mame/includes/tiki100.h
+++ b/src/mame/includes/tiki100.h
@@ -97,6 +97,8 @@ public:
DECLARE_WRITE_LINE_MEMBER( busrq_w );
void tiki100(machine_config &config);
+ void tiki100_io(address_map &map);
+ void tiki100_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/timelimt.h b/src/mame/includes/timelimt.h
index 600dd60d5c6..9a7aa3381e7 100644
--- a/src/mame/includes/timelimt.h
+++ b/src/mame/includes/timelimt.h
@@ -50,4 +50,8 @@ public:
INTERRUPT_GEN_MEMBER(irq);
void timelimt(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/timeplt.h b/src/mame/includes/timeplt.h
index 59a8210a2be..db16ac84016 100644
--- a/src/mame/includes/timeplt.h
+++ b/src/mame/includes/timeplt.h
@@ -6,6 +6,7 @@
***************************************************************************/
+#include "machine/74259.h"
#include "sound/tc8830f.h"
#include "screen.h"
@@ -16,6 +17,7 @@ public:
: driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_tc8830f(*this, "tc8830f"),
+ m_mainlatch(*this, "mainlatch"),
m_gfxdecode(*this, "gfxdecode"),
m_screen(*this, "screen"),
m_palette(*this, "palette"),
@@ -27,6 +29,7 @@ public:
required_device<cpu_device> m_maincpu;
optional_device<tc8830f_device> m_tc8830f;
+ required_device<ls259_device> m_mainlatch;
required_device<gfxdecode_device> m_gfxdecode;
required_device<screen_device> m_screen;
required_device<palette_device> m_palette;
@@ -82,4 +85,7 @@ public:
void chkun(machine_config &config);
void psurge(machine_config &config);
void bikkuric(machine_config &config);
+ void chkun_main_map(address_map &map);
+ void psurge_main_map(address_map &map);
+ void timeplt_main_map(address_map &map);
};
diff --git a/src/mame/includes/tmc1800.h b/src/mame/includes/tmc1800.h
index dcbe07dde64..6130f7075e3 100644
--- a/src/mame/includes/tmc1800.h
+++ b/src/mame/includes/tmc1800.h
@@ -78,6 +78,8 @@ public:
void tmc1800(machine_config &config);
void tmc1800_video(machine_config &config);
+ void tmc1800_io_map(address_map &map);
+ void tmc1800_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
@@ -105,6 +107,8 @@ public:
int m_keylatch;
void osc1000b(machine_config &config);
void osc1000b_video(machine_config &config);
+ void osc1000b_io_map(address_map &map);
+ void osc1000b_map(address_map &map);
};
class tmc2000_state : public tmc1800_base_state
@@ -149,6 +153,8 @@ public:
int m_keylatch;
void tmc2000(machine_config &config);
void tmc2000_video(machine_config &config);
+ void tmc2000_io_map(address_map &map);
+ void tmc2000_map(address_map &map);
};
class nano_state : public tmc1800_base_state
@@ -189,6 +195,8 @@ public:
int m_keylatch; /* key latch */
void nano(machine_config &config);
void nano_video(machine_config &config);
+ void nano_io_map(address_map &map);
+ void nano_map(address_map &map);
};
#endif
diff --git a/src/mame/includes/tmc2000e.h b/src/mame/includes/tmc2000e.h
index 215fd8f814e..e77ce889452 100644
--- a/src/mame/includes/tmc2000e.h
+++ b/src/mame/includes/tmc2000e.h
@@ -67,6 +67,8 @@ public:
int m_keylatch; /* key latch */
int m_reset; /* reset activated */
void tmc2000e(machine_config &config);
+ void tmc2000e_io_map(address_map &map);
+ void tmc2000e_map(address_map &map);
};
#endif
diff --git a/src/mame/includes/tmc600.h b/src/mame/includes/tmc600.h
index e65c7c5df1e..586a9855ba9 100644
--- a/src/mame/includes/tmc600.h
+++ b/src/mame/includes/tmc600.h
@@ -87,6 +87,9 @@ public:
CDP1869_PCB_READ_MEMBER(tmc600_pcb_r);
void tmc600(machine_config &config);
void tmc600_video(machine_config &config);
+ void cdp1869_page_ram(address_map &map);
+ void tmc600_io_map(address_map &map);
+ void tmc600_map(address_map &map);
};
#endif
diff --git a/src/mame/includes/tmnt.h b/src/mame/includes/tmnt.h
index 7df06da0315..21f9cf9ea91 100644
--- a/src/mame/includes/tmnt.h
+++ b/src/mame/includes/tmnt.h
@@ -195,6 +195,26 @@ public:
void tmnt(machine_config &config);
void mia(machine_config &config);
void punkshot(machine_config &config);
+ void blswhstl_main_map(address_map &map);
+ void cuebrick_main_map(address_map &map);
+ void glfgreat_audio_map(address_map &map);
+ void glfgreat_main_map(address_map &map);
+ void lgtnfght_audio_map(address_map &map);
+ void lgtnfght_main_map(address_map &map);
+ void mia_audio_map(address_map &map);
+ void mia_main_map(address_map &map);
+ void prmrsocr_audio_map(address_map &map);
+ void prmrsocr_main_map(address_map &map);
+ void punkshot_audio_map(address_map &map);
+ void punkshot_main_map(address_map &map);
+ void ssriders_audio_map(address_map &map);
+ void ssriders_main_map(address_map &map);
+ void sunsetbl_main_map(address_map &map);
+ void thndrx2_audio_map(address_map &map);
+ void thndrx2_main_map(address_map &map);
+ void tmnt2_main_map(address_map &map);
+ void tmnt_audio_map(address_map &map);
+ void tmnt_main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/tnzs.h b/src/mame/includes/tnzs.h
index 12da1a16cc2..0b1c4ab071c 100644
--- a/src/mame/includes/tnzs.h
+++ b/src/mame/includes/tnzs.h
@@ -40,10 +40,12 @@ public:
DECLARE_PALETTE_INIT(prompalette);
- void tnzs(machine_config &config);
void tnzs_base(machine_config &config);
void tnzs_mainbank(machine_config &config);
+ void base_sub_map(address_map &map);
+ void main_map(address_map &map);
+ void mainbank_map(address_map &map);
protected:
/* devices */
required_device<cpu_device> m_maincpu;
@@ -81,6 +83,8 @@ public:
DECLARE_READ8_MEMBER(analog_r);
+ void tnzs(machine_config &config);
+ void tnzs_sub_map(address_map &map);
protected:
required_device<upi41_cpu_device> m_mcu;
optional_device<upd4701_device> m_upd4701;
@@ -109,6 +113,7 @@ public:
{ }
void extrmatn(machine_config &config);
void plumppop(machine_config &config);
+ void prompal_main_map(address_map &map);
};
class arknoid2_state : public extrmatn_state
@@ -133,6 +138,7 @@ public:
INTERRUPT_GEN_MEMBER(mcu_interrupt);
void arknoid2(machine_config &config);
+ void arknoid2_sub_map(address_map &map);
private:
required_ioport m_coin1;
required_ioport m_coin2;
@@ -181,6 +187,7 @@ public:
SAMPLES_START_CB_MEMBER(init_samples);
void kageki(machine_config &config);
+ void kageki_sub_map(address_map &map);
private:
required_device<samples_device> m_samples;
@@ -207,6 +214,8 @@ public:
DECLARE_WRITE8_MEMBER(subbankswitch_w);
void jpopnics(machine_config &config);
+ void jpopnics_main_map(address_map &map);
+ void jpopnics_sub_map(address_map &map);
private:
required_device<upd4701_device> m_upd4701;
};
@@ -220,6 +229,7 @@ public:
virtual DECLARE_WRITE8_MEMBER(bankswitch1_w) override;
void insectx(machine_config &config);
+ void insectx_sub_map(address_map &map);
};
class tnzsb_state : public tnzs_base_state
@@ -238,6 +248,11 @@ public:
virtual DECLARE_WRITE8_MEMBER(bankswitch1_w) override;
void tnzsb(machine_config &config);
+ void tnzsb_base_sub_map(address_map &map);
+ void tnzsb_cpu2_map(address_map &map);
+ void tnzsb_io_map(address_map &map);
+ void tnzsb_main_map(address_map &map);
+ void tnzsb_sub_map(address_map &map);
protected:
required_device<cpu_device> m_audiocpu;
required_device<generic_latch_8_device> m_soundlatch;
@@ -256,6 +271,8 @@ public:
DECLARE_WRITE8_MEMBER(sound_bank_w);
void kabukiz(machine_config &config);
+ void kabukiz_cpu2_map(address_map &map);
+ void kabukiz_sub_map(address_map &map);
protected:
required_memory_bank m_audiobank;
};
diff --git a/src/mame/includes/toaplan1.h b/src/mame/includes/toaplan1.h
index f791ede28d8..0852639f980 100644
--- a/src/mame/includes/toaplan1.h
+++ b/src/mame/includes/toaplan1.h
@@ -171,6 +171,26 @@ public:
void outzonecv(machine_config &config);
void hellfire(machine_config &config);
void zerowing(machine_config &config);
+ void DSP_io_map(address_map &map);
+ void DSP_program_map(address_map &map);
+ void demonwld_main_map(address_map &map);
+ void demonwld_sound_io_map(address_map &map);
+ void hellfire_main_map(address_map &map);
+ void hellfire_sound_io_map(address_map &map);
+ void outzone_main_map(address_map &map);
+ void outzone_sound_io_map(address_map &map);
+ void outzonecv_main_map(address_map &map);
+ void samesame_hd647180_io_map(address_map &map);
+ void samesame_hd647180_mem_map(address_map &map);
+ void samesame_main_map(address_map &map);
+ void toaplan1_sound_map(address_map &map);
+ void truxton_main_map(address_map &map);
+ void truxton_sound_io_map(address_map &map);
+ void vimana_hd647180_io_map(address_map &map);
+ void vimana_hd647180_mem_map(address_map &map);
+ void vimana_main_map(address_map &map);
+ void zerowing_main_map(address_map &map);
+ void zerowing_sound_io_map(address_map &map);
};
class toaplan1_rallybik_state : public toaplan1_state
@@ -193,4 +213,6 @@ public:
required_device<toaplan_scu_device> m_spritegen;
void rallybik(machine_config &config);
+ void rallybik_main_map(address_map &map);
+ void rallybik_sound_io_map(address_map &map);
};
diff --git a/src/mame/includes/toaplan2.h b/src/mame/includes/toaplan2.h
index 1259919118c..26649900502 100644
--- a/src/mame/includes/toaplan2.h
+++ b/src/mame/includes/toaplan2.h
@@ -175,4 +175,41 @@ public:
void truxton2(machine_config &config);
void vfive(machine_config &config);
void kbash2(machine_config &config);
+ void batrider_68k_mem(address_map &map);
+ void batrider_sound_z80_mem(address_map &map);
+ void batrider_sound_z80_port(address_map &map);
+ void batsugun_68k_mem(address_map &map);
+ void bbakraid_68k_mem(address_map &map);
+ void bbakraid_sound_z80_mem(address_map &map);
+ void bbakraid_sound_z80_port(address_map &map);
+ void bgaregga_68k_mem(address_map &map);
+ void bgaregga_sound_z80_mem(address_map &map);
+ void dogyuun_68k_mem(address_map &map);
+ void enmadaio_68k_mem(address_map &map);
+ void enmadaio_oki(address_map &map);
+ void fixeight_68k_mem(address_map &map);
+ void fixeight_v25_mem(address_map &map);
+ void fixeightbl_68k_mem(address_map &map);
+ void fixeightbl_oki(address_map &map);
+ void ghox_68k_mem(address_map &map);
+ void ghox_hd647180_mem_map(address_map &map);
+ void hd647180_io_map(address_map &map);
+ void hd647180_mem_map(address_map &map);
+ void kbash2_68k_mem(address_map &map);
+ void kbash_68k_mem(address_map &map);
+ void kbash_v25_mem(address_map &map);
+ void mahoudai_68k_mem(address_map &map);
+ void othldrby_68k_mem(address_map &map);
+ void pipibibi_bootleg_68k_mem(address_map &map);
+ void pipibibs_68k_mem(address_map &map);
+ void pipibibs_sound_z80_mem(address_map &map);
+ void pwrkick_68k_mem(address_map &map);
+ void raizing_sound_z80_mem(address_map &map);
+ void shippumd_68k_mem(address_map &map);
+ void snowbro2_68k_mem(address_map &map);
+ void tekipaki_68k_mem(address_map &map);
+ void truxton2_68k_mem(address_map &map);
+ void v25_mem(address_map &map);
+ void vfive_68k_mem(address_map &map);
+ void vfive_v25_mem(address_map &map);
};
diff --git a/src/mame/includes/toki.h b/src/mame/includes/toki.h
index b52045fd7c6..29415f7c212 100644
--- a/src/mame/includes/toki.h
+++ b/src/mame/includes/toki.h
@@ -79,4 +79,11 @@ public:
void toki(machine_config &config);
void jujuba(machine_config &config);
void tokib(machine_config &config);
+ void jujuba_audio_map(address_map &map);
+ void jujuba_audio_opcodes_map(address_map &map);
+ void toki_audio_map(address_map &map);
+ void toki_audio_opcodes_map(address_map &map);
+ void toki_map(address_map &map);
+ void tokib_audio_map(address_map &map);
+ void tokib_map(address_map &map);
};
diff --git a/src/mame/includes/toobin.h b/src/mame/includes/toobin.h
index 56fb5beeec0..b40887fc854 100644
--- a/src/mame/includes/toobin.h
+++ b/src/mame/includes/toobin.h
@@ -51,4 +51,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void toobin(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/topspeed.h b/src/mame/includes/topspeed.h
index 3db7527ea3e..679e25158af 100644
--- a/src/mame/includes/topspeed.h
+++ b/src/mame/includes/topspeed.h
@@ -94,4 +94,8 @@ public:
void draw_sprites(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
uint32_t screen_update_topspeed(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void topspeed(machine_config &config);
+ void cpua_map(address_map &map);
+ void cpub_map(address_map &map);
+ void z80_io(address_map &map);
+ void z80_prg(address_map &map);
};
diff --git a/src/mame/includes/tp84.h b/src/mame/includes/tp84.h
index 6c61787473e..38705b1e52f 100644
--- a/src/mame/includes/tp84.h
+++ b/src/mame/includes/tp84.h
@@ -64,4 +64,8 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void tp84(machine_config &config);
void tp84b(machine_config &config);
+ void audio_map(address_map &map);
+ void cpu2_map(address_map &map);
+ void tp84_cpu1_map(address_map &map);
+ void tp84b_cpu1_map(address_map &map);
};
diff --git a/src/mame/includes/trackfld.h b/src/mame/includes/trackfld.h
index 9bb395cdf74..20a07d84e0b 100644
--- a/src/mame/includes/trackfld.h
+++ b/src/mame/includes/trackfld.h
@@ -51,6 +51,16 @@ public:
DECLARE_DRIVER_INIT(mastkin);
DECLARE_DRIVER_INIT(trackfldnz);
+ void hyprolyb_sound_map(address_map &map);
+ void main_map(address_map &map);
+ void mastkin_map(address_map &map);
+ void reaktor_io_map(address_map &map);
+ void reaktor_map(address_map &map);
+ void sound_map(address_map &map);
+ void vlm_map(address_map &map);
+ void wizzquiz_map(address_map &map);
+ void yieartf_map(address_map &map);
+ void hyprolyb_adpcm_map(address_map &map);
private:
/* memory pointers */
required_shared_ptr<uint8_t> m_spriteram2;
diff --git a/src/mame/includes/tranz330.h b/src/mame/includes/tranz330.h
index 613b8c5e4f0..a220d33d6aa 100644
--- a/src/mame/includes/tranz330.h
+++ b/src/mame/includes/tranz330.h
@@ -55,6 +55,8 @@ public:
DECLARE_READ8_MEMBER( card_r );
void tranz330(machine_config &config);
+ void tranz330_mem(address_map &map);
+ void tranz330_io(address_map &map);
private:
required_device<cpu_device> m_cpu;
required_device<z80ctc_device> m_ctc;
diff --git a/src/mame/includes/travrusa.h b/src/mame/includes/travrusa.h
index b78b01ce549..d876c2834d1 100644
--- a/src/mame/includes/travrusa.h
+++ b/src/mame/includes/travrusa.h
@@ -41,4 +41,5 @@ public:
void shtrider(machine_config &config);
void travrusa(machine_config &config);
void shtriderb(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/triplhnt.h b/src/mame/includes/triplhnt.h
index 66f195c09b3..a8577afb061 100644
--- a/src/mame/includes/triplhnt.h
+++ b/src/mame/includes/triplhnt.h
@@ -92,6 +92,7 @@ public:
void set_collision(int code);
void triplhnt(machine_config &config);
+ void triplhnt_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/trs80.h b/src/mame/includes/trs80.h
index 023942f5f19..0c8c726d7aa 100644
--- a/src/mame/includes/trs80.h
+++ b/src/mame/includes/trs80.h
@@ -139,6 +139,20 @@ public:
void ht1080z(machine_config &config);
void cp500(machine_config &config);
void model4(machine_config &config);
+ void cp500_io(address_map &map);
+ void lnw80_io(address_map &map);
+ void lnw80_map(address_map &map);
+ void meritum_io(address_map &map);
+ void meritum_map(address_map &map);
+ void model1_io(address_map &map);
+ void model1_map(address_map &map);
+ void model3_io(address_map &map);
+ void model3_map(address_map &map);
+ void model4_io(address_map &map);
+ void model4p_io(address_map &map);
+ void sys80_io(address_map &map);
+ void trs80_io(address_map &map);
+ void trs80_map(address_map &map);
private:
uint8_t *m_p_gfxram;
uint8_t m_model4;
diff --git a/src/mame/includes/trs80m2.h b/src/mame/includes/trs80m2.h
index 887aebbf411..d3fc4e130b7 100644
--- a/src/mame/includes/trs80m2.h
+++ b/src/mame/includes/trs80m2.h
@@ -94,6 +94,9 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_perror);
void trs80m2(machine_config &config);
+ void m68000_mem(address_map &map);
+ void z80_io(address_map &map);
+ void z80_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -158,6 +161,7 @@ public:
DECLARE_WRITE8_MEMBER( tcl_w );
void trs80m16(machine_config &config);
+ void m16_z80_io(address_map &map);
protected:
virtual void machine_start() override;
diff --git a/src/mame/includes/truco.h b/src/mame/includes/truco.h
index aed5b99cce2..b4eb37dd8fc 100644
--- a/src/mame/includes/truco.h
+++ b/src/mame/includes/truco.h
@@ -38,4 +38,5 @@ public:
INTERRUPT_GEN_MEMBER(interrupt);
void truco(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/trucocl.h b/src/mame/includes/trucocl.h
index ef0091e4fa1..b2032e57296 100644
--- a/src/mame/includes/trucocl.h
+++ b/src/mame/includes/trucocl.h
@@ -42,6 +42,7 @@ public:
required_device<gfxdecode_device> m_gfxdecode;
void trucocl(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/tryout.h b/src/mame/includes/tryout.h
index 723e544a669..c921d0f38a5 100644
--- a/src/mame/includes/tryout.h
+++ b/src/mame/includes/tryout.h
@@ -59,4 +59,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect);
void tryout(machine_config &config);
+ void main_cpu(address_map &map);
+ void sound_cpu(address_map &map);
};
diff --git a/src/mame/includes/tsamurai.h b/src/mame/includes/tsamurai.h
index 133fb16c985..53c482685f3 100644
--- a/src/mame/includes/tsamurai.h
+++ b/src/mame/includes/tsamurai.h
@@ -75,6 +75,19 @@ public:
void tsamurai(machine_config &config);
void m660(machine_config &config);
void vsgongf(machine_config &config);
+ void m660_map(address_map &map);
+ void main_map(address_map &map);
+ void sound1_m660_map(address_map &map);
+ void sound1_map(address_map &map);
+ void sound2_m660_map(address_map &map);
+ void sound2_map(address_map &map);
+ void sound3_m660_io_map(address_map &map);
+ void sound3_m660_map(address_map &map);
+ void sound_vsgongf_map(address_map &map);
+ void vsgongf_audio_io_map(address_map &map);
+ void vsgongf_map(address_map &map);
+ void z80_io_map(address_map &map);
+ void z80_m660_io_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
diff --git a/src/mame/includes/tsispch.h b/src/mame/includes/tsispch.h
index b9139afe53f..1301ef6c632 100644
--- a/src/mame/includes/tsispch.h
+++ b/src/mame/includes/tsispch.h
@@ -42,6 +42,10 @@ public:
DECLARE_WRITE_LINE_MEMBER(dsp_to_8086_p1_w);
void prose2k(machine_config &config);
+ void dsp_data_map(address_map &map);
+ void dsp_prg_map(address_map &map);
+ void i8086_io(address_map &map);
+ void i8086_mem(address_map &map);
protected:
virtual void machine_reset() override;
diff --git a/src/mame/includes/tubep.h b/src/mame/includes/tubep.h
index 32a373bf73e..f1cd24684f5 100644
--- a/src/mame/includes/tubep.h
+++ b/src/mame/includes/tubep.h
@@ -113,6 +113,19 @@ public:
void tubepb(machine_config &config);
void tubep(machine_config &config);
void rjammer(machine_config &config);
+ void nsc_map(address_map &map);
+ void rjammer_main_map(address_map &map);
+ void rjammer_main_portmap(address_map &map);
+ void rjammer_second_map(address_map &map);
+ void rjammer_second_portmap(address_map &map);
+ void rjammer_sound_map(address_map &map);
+ void rjammer_sound_portmap(address_map &map);
+ void tubep_main_map(address_map &map);
+ void tubep_main_portmap(address_map &map);
+ void tubep_second_map(address_map &map);
+ void tubep_second_portmap(address_map &map);
+ void tubep_sound_map(address_map &map);
+ void tubep_sound_portmap(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/tumbleb.h b/src/mame/includes/tumbleb.h
index 68de431d85e..dc51a4329b3 100644
--- a/src/mame/includes/tumbleb.h
+++ b/src/mame/includes/tumbleb.h
@@ -147,4 +147,15 @@ public:
void chokchok(machine_config &config);
void cookbib_mcu(machine_config &config);
void jumpkids(machine_config &config);
+ void fncywld_main_map(address_map &map);
+ void htchctch_main_map(address_map &map);
+ void jumpkids_main_map(address_map &map);
+ void jumpkids_sound_map(address_map &map);
+ void pangpang_main_map(address_map &map);
+ void protection_iomap(address_map &map);
+ void protection_map(address_map &map);
+ void semicom_sound_map(address_map &map);
+ void suprtrio_main_map(address_map &map);
+ void suprtrio_sound_map(address_map &map);
+ void tumblepopb_main_map(address_map &map);
};
diff --git a/src/mame/includes/tunhunt.h b/src/mame/includes/tunhunt.h
index 54eaf02f08f..c79b4eedadb 100644
--- a/src/mame/includes/tunhunt.h
+++ b/src/mame/includes/tunhunt.h
@@ -51,4 +51,5 @@ public:
void draw_shell(bitmap_ind16 &bitmap, const rectangle &cliprect, int picture_code,
int hposition,int vstart,int vstop,int vstretch,int hstretch);
void tunhunt(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/turbo.h b/src/mame/includes/turbo.h
index 5644cb5ca0f..7a61f7f6563 100644
--- a/src/mame/includes/turbo.h
+++ b/src/mame/includes/turbo.h
@@ -196,4 +196,10 @@ public:
void turbo_samples(machine_config &config);
void subroc3d_samples(machine_config &config);
void buckrog_samples(machine_config &config);
+ void buckrog_cpu2_map(address_map &map);
+ void buckrog_cpu2_portmap(address_map &map);
+ void buckrog_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void subroc3d_map(address_map &map);
+ void turbo_map(address_map &map);
};
diff --git a/src/mame/includes/turrett.h b/src/mame/includes/turrett.h
index 2af087c7808..749cdd89ced 100644
--- a/src/mame/includes/turrett.h
+++ b/src/mame/includes/turrett.h
@@ -85,6 +85,8 @@ public:
uint8_t m_adc;
void turrett(machine_config &config);
+ void cpu_map(address_map &map);
+ void turrett_sound_map(address_map &map);
protected:
// driver_device overrides
virtual void machine_reset() override;
diff --git a/src/mame/includes/tutankhm.h b/src/mame/includes/tutankhm.h
index 14a23f4d296..d83688281e1 100644
--- a/src/mame/includes/tutankhm.h
+++ b/src/mame/includes/tutankhm.h
@@ -43,4 +43,5 @@ public:
uint32_t screen_update_tutankhm(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
INTERRUPT_GEN_MEMBER(tutankhm_interrupt);
void tutankhm(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/twin16.h b/src/mame/includes/twin16.h
index 25045dc5855..cf8199ba2d0 100644
--- a/src/mame/includes/twin16.h
+++ b/src/mame/includes/twin16.h
@@ -84,6 +84,9 @@ public:
void devilw(machine_config &config);
void miaj(machine_config &config);
void twin16(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sub_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -110,6 +113,7 @@ public:
DECLARE_DRIVER_INIT(fround);
void fround(machine_config &config);
+ void fround_map(address_map &map);
protected:
virtual void video_start() override;
virtual void tile_get_info(tile_data &tileinfo, uint16_t data, int color_base) override;
diff --git a/src/mame/includes/twincobr.h b/src/mame/includes/twincobr.h
index 8cf1a0ce804..a6d4548b75a 100644
--- a/src/mame/includes/twincobr.h
+++ b/src/mame/includes/twincobr.h
@@ -127,4 +127,10 @@ public:
void twincobr(machine_config &config);
void fsharkbt(machine_config &config);
void fshark(machine_config &config);
+ void DSP_io_map(address_map &map);
+ void DSP_program_map(address_map &map);
+ void fsharkbt_i8741_io_map(address_map &map);
+ void main_program_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_program_map(address_map &map);
};
diff --git a/src/mame/includes/tx0.h b/src/mame/includes/tx0.h
index cb69acad55d..7336af64d21 100644
--- a/src/mame/includes/tx0.h
+++ b/src/mame/includes/tx0.h
@@ -203,6 +203,8 @@ public:
void tx0_64kw(machine_config &config);
void tx0_8kw(machine_config &config);
+ void tx0_64kw_map(address_map &map);
+ void tx0_8kw_map(address_map &map);
private:
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
diff --git a/src/mame/includes/tx1.h b/src/mame/includes/tx1.h
index 98779e583b1..b564b109dc8 100644
--- a/src/mame/includes/tx1.h
+++ b/src/mame/includes/tx1.h
@@ -236,6 +236,16 @@ public:
void tx1(machine_config &config);
void buggyboy(machine_config &config);
void buggybjr(machine_config &config);
+ void buggybjr_main(address_map &map);
+ void buggybjr_sound_prg(address_map &map);
+ void buggyboy_main(address_map &map);
+ void buggyboy_math(address_map &map);
+ void buggyboy_sound_io(address_map &map);
+ void buggyboy_sound_prg(address_map &map);
+ void tx1_main(address_map &map);
+ void tx1_math(address_map &map);
+ void tx1_sound_io(address_map &map);
+ void tx1_sound_prg(address_map &map);
};
/*----------- defined in audio/tx1.c -----------*/
diff --git a/src/mame/includes/ultraman.h b/src/mame/includes/ultraman.h
index 256fa7c83bc..ffa2625d238 100644
--- a/src/mame/includes/ultraman.h
+++ b/src/mame/includes/ultraman.h
@@ -50,4 +50,7 @@ public:
K051316_CB_MEMBER(zoom_callback_3);
K051960_CB_MEMBER(sprite_callback);
void ultraman(machine_config &config);
+ void main_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/ultratnk.h b/src/mame/includes/ultratnk.h
index 0830656f5f7..c07a808fc37 100644
--- a/src/mame/includes/ultratnk.h
+++ b/src/mame/includes/ultratnk.h
@@ -71,6 +71,7 @@ public:
TIMER_CALLBACK_MEMBER(nmi_callback);
void ultratnk(machine_config &config);
+ void ultratnk_cpu_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/undrfire.h b/src/mame/includes/undrfire.h
index febb2dacf42..1bedaf05a63 100644
--- a/src/mame/includes/undrfire.h
+++ b/src/mame/includes/undrfire.h
@@ -75,6 +75,9 @@ public:
void undrfire(machine_config &config);
void cbombers(machine_config &config);
+ void cbombers_cpua_map(address_map &map);
+ void cbombers_cpub_map(address_map &map);
+ void undrfire_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/unico.h b/src/mame/includes/unico.h
index 8539e2daac5..c2555b54863 100644
--- a/src/mame/includes/unico.h
+++ b/src/mame/includes/unico.h
@@ -63,4 +63,7 @@ public:
void zeropnt2(machine_config &config);
void zeropnt(machine_config &config);
void burglarx(machine_config &config);
+ void burglarx_map(address_map &map);
+ void zeropnt2_map(address_map &map);
+ void zeropnt_map(address_map &map);
};
diff --git a/src/mame/includes/usgames.h b/src/mame/includes/usgames.h
index 2d8bffab1d4..0089d2e2b96 100644
--- a/src/mame/includes/usgames.h
+++ b/src/mame/includes/usgames.h
@@ -33,4 +33,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void usg32(machine_config &config);
void usg185(machine_config &config);
+ void usg185_map(address_map &map);
+ void usgames_map(address_map &map);
};
diff --git a/src/mame/includes/ut88.h b/src/mame/includes/ut88.h
index 092ab10d097..263328cb02b 100644
--- a/src/mame/includes/ut88.h
+++ b/src/mame/includes/ut88.h
@@ -66,6 +66,10 @@ public:
void ut88(machine_config &config);
void ut88mini(machine_config &config);
+ void ut88_io(address_map &map);
+ void ut88_mem(address_map &map);
+ void ut88mini_io(address_map &map);
+ void ut88mini_mem(address_map &map);
private:
required_device<cassette_image_device> m_cassette;
optional_device<i8255_device> m_ppi;
diff --git a/src/mame/includes/v1050.h b/src/mame/includes/v1050.h
index 55f0c3a39a6..ef8d31c3647 100644
--- a/src/mame/includes/v1050.h
+++ b/src/mame/includes/v1050.h
@@ -154,6 +154,9 @@ public:
void v1050(machine_config &config);
void v1050_video(machine_config &config);
+ void v1050_crt_mem(address_map &map);
+ void v1050_io(address_map &map);
+ void v1050_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/vaportra.h b/src/mame/includes/vaportra.h
index 66c92af8673..3115ad0b329 100644
--- a/src/mame/includes/vaportra.h
+++ b/src/mame/includes/vaportra.h
@@ -61,4 +61,6 @@ public:
DECO16IC_BANK_CB_MEMBER(bank_callback);
void vaportra(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/vastar.h b/src/mame/includes/vastar.h
index bf4be017f9b..6d2e05927a6 100644
--- a/src/mame/includes/vastar.h
+++ b/src/mame/includes/vastar.h
@@ -57,4 +57,8 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
void vastar(machine_config &config);
+ void cpu2_map(address_map &map);
+ void cpu2_port_map(address_map &map);
+ void main_map(address_map &map);
+ void main_port_map(address_map &map);
};
diff --git a/src/mame/includes/vball.h b/src/mame/includes/vball.h
index ffc71b7543e..b2028152ca5 100644
--- a/src/mame/includes/vball.h
+++ b/src/mame/includes/vball.h
@@ -62,4 +62,6 @@ public:
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
inline int scanline_to_vcount(int scanline);
void vball(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/vc4000.h b/src/mame/includes/vc4000.h
index d088cbd6f0c..f66805015fe 100644
--- a/src/mame/includes/vc4000.h
+++ b/src/mame/includes/vc4000.h
@@ -134,6 +134,8 @@ public:
void h21(machine_config &config);
void rwtrntcs(machine_config &config);
void elektor(machine_config &config);
+ void elektor_mem(address_map &map);
+ void vc4000_mem(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
diff --git a/src/mame/includes/vcs80.h b/src/mame/includes/vcs80.h
index c83015bacfc..756789cd25c 100644
--- a/src/mame/includes/vcs80.h
+++ b/src/mame/includes/vcs80.h
@@ -81,6 +81,9 @@ public:
DECLARE_DRIVER_INIT(vcs80);
TIMER_DEVICE_CALLBACK_MEMBER(vcs80_keyboard_tick);
void vcs80(machine_config &config);
+ void vcs80_bd_mem(address_map &map);
+ void vcs80_io(address_map &map);
+ void vcs80_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/vector06.h b/src/mame/includes/vector06.h
index 0bad3a26fc0..4e52f1fc40c 100644
--- a/src/mame/includes/vector06.h
+++ b/src/mame/includes/vector06.h
@@ -19,6 +19,8 @@
#include "machine/ram.h"
#include "machine/wd_fdc.h"
+#include "machine/i8255.h"
+#include "machine/pit8253.h"
#include "sound/ay8910.h"
#include "sound/spkrdev.h"
@@ -39,6 +41,9 @@ public:
m_ay(*this, "aysnd"),
m_ram(*this, RAM_TAG),
m_palette(*this, "palette"),
+ m_ppi8255(*this, "ppi8255"),
+ m_ppi8255_2(*this, "ppi8255_2"),
+ m_pit8253(*this, "pit8253"),
m_bank1(*this, "bank1"),
m_bank2(*this, "bank2"),
m_bank3(*this, "bank3"),
@@ -73,6 +78,8 @@ public:
IRQ_CALLBACK_MEMBER(vector06_irq_callback);
void vector06(machine_config &config);
+ void vector06_io(address_map &map);
+ void vector06_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<speaker_sound_device> m_speaker;
@@ -84,6 +91,8 @@ private:
required_device<ay8910_device> m_ay;
required_device<ram_device> m_ram;
required_device<palette_device> m_palette;
+ required_device<i8255_device> m_ppi8255, m_ppi8255_2;
+ required_device<pit8253_device> m_pit8253;
required_memory_bank m_bank1;
required_memory_bank m_bank2;
required_memory_bank m_bank3;
diff --git a/src/mame/includes/vectrex.h b/src/mame/includes/vectrex.h
index a9da1babe8b..36a53f98060 100644
--- a/src/mame/includes/vectrex.h
+++ b/src/mame/includes/vectrex.h
@@ -125,6 +125,8 @@ public:
void vectrex(machine_config &config);
void raaspec(machine_config &config);
+ void raaspec_map(address_map &map);
+ void vectrex_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/vendetta.h b/src/mame/includes/vendetta.h
index 6fa933e7ed3..f5616185fad 100644
--- a/src/mame/includes/vendetta.h
+++ b/src/mame/includes/vendetta.h
@@ -78,6 +78,11 @@ public:
void esckids(machine_config &config);
void vendetta(machine_config &config);
+ void esckids_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void videobank0_map(address_map &map);
+ void videobank1_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/vertigo.h b/src/mame/includes/vertigo.h
index c1e9c850ea5..14b23a503e7 100644
--- a/src/mame/includes/vertigo.h
+++ b/src/mame/includes/vertigo.h
@@ -131,4 +131,7 @@ public:
void vertigo_vproc(int cycles, int irq4);
void update_irq_encoder(int line, int state);
void vertigo(machine_config &config);
+ void vertigo_map(address_map &map);
+ void vertigo_motor(address_map &map);
+ void exidy440_audio_map(address_map &map);
};
diff --git a/src/mame/includes/vicdual.h b/src/mame/includes/vicdual.h
index c7d3cf401b8..e37d4db8e83 100644
--- a/src/mame/includes/vicdual.h
+++ b/src/mame/includes/vicdual.h
@@ -192,6 +192,37 @@ public:
void alphaho(machine_config &config);
void tranqgun(machine_config &config);
void tranqgun_audio(machine_config &config);
+ void alphaho_io_map(address_map &map);
+ void brdrline_io_map(address_map &map);
+ void carhntds_dualgame_map(address_map &map);
+ void carhntds_io_map(address_map &map);
+ void carnival_io_map(address_map &map);
+ void depthch_io_map(address_map &map);
+ void depthch_map(address_map &map);
+ void digger_io_map(address_map &map);
+ void frogs_io_map(address_map &map);
+ void frogs_map(address_map &map);
+ void headon2_io_map(address_map &map);
+ void headon2_map(address_map &map);
+ void headon_io_map(address_map &map);
+ void headon_map(address_map &map);
+ void headonn_io_map(address_map &map);
+ void heiankyo_io_map(address_map &map);
+ void invds_io_map(address_map &map);
+ void invho2_io_map(address_map &map);
+ void invinco_io_map(address_map &map);
+ void invinco_map(address_map &map);
+ void mboard_map(address_map &map);
+ void pulsar_io_map(address_map &map);
+ void safari_io_map(address_map &map);
+ void safari_map(address_map &map);
+ void samurai_io_map(address_map &map);
+ void samurai_map(address_map &map);
+ void spacetrk_io_map(address_map &map);
+ void sspacaho_io_map(address_map &map);
+ void sspaceat_io_map(address_map &map);
+ void tranqgun_io_map(address_map &map);
+ void vicdual_dualgame_map(address_map &map);
};
class nsub_state : public vicdual_state
@@ -221,4 +252,6 @@ public:
virtual pen_t choose_pen(uint8_t x, uint8_t y, pen_t back_pen) override;
void nsub(machine_config &config);
+ void nsub_io_map(address_map &map);
+ void nsub_map(address_map &map);
};
diff --git a/src/mame/includes/victory.h b/src/mame/includes/victory.h
index 6358f0500c0..c69f17c440e 100644
--- a/src/mame/includes/victory.h
+++ b/src/mame/includes/victory.h
@@ -94,4 +94,7 @@ public:
void update_foreground();
void victory(machine_config &config);
void victory_audio(machine_config &config);
+ void main_io_map(address_map &map);
+ void main_map(address_map &map);
+ void victory_audio_map(address_map &map);
};
diff --git a/src/mame/includes/vidbrain.h b/src/mame/includes/vidbrain.h
index 0163d1dbaf2..00412898c7b 100644
--- a/src/mame/includes/vidbrain.h
+++ b/src/mame/includes/vidbrain.h
@@ -99,6 +99,8 @@ public:
emu_timer *m_timer_ne555;
void vidbrain(machine_config &config);
void vidbrain_video(machine_config &config);
+ void vidbrain_io(address_map &map);
+ void vidbrain_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/videopin.h b/src/mame/includes/videopin.h
index 9f7154cf478..e8023c9b155 100644
--- a/src/mame/includes/videopin.h
+++ b/src/mame/includes/videopin.h
@@ -74,6 +74,7 @@ public:
double calc_plunger_pos();
void videopin(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/vigilant.h b/src/mame/includes/vigilant.h
index b64c2407cfd..56b9768f3a9 100644
--- a/src/mame/includes/vigilant.h
+++ b/src/mame/includes/vigilant.h
@@ -60,4 +60,11 @@ public:
void vigilant(machine_config &config);
void kikcubic(machine_config &config);
void buccanrs(machine_config &config);
+ void buccanrs_sound_io_map(address_map &map);
+ void kikcubic_io_map(address_map &map);
+ void kikcubic_map(address_map &map);
+ void sound_io_map(address_map &map);
+ void sound_map(address_map &map);
+ void vigilant_io_map(address_map &map);
+ void vigilant_map(address_map &map);
};
diff --git a/src/mame/includes/vindictr.h b/src/mame/includes/vindictr.h
index 71da096a087..958ebffbe75 100644
--- a/src/mame/includes/vindictr.h
+++ b/src/mame/includes/vindictr.h
@@ -41,4 +41,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void vindictr(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/vip.h b/src/mame/includes/vip.h
index b687625f7af..1a1fdd01cc0 100644
--- a/src/mame/includes/vip.h
+++ b/src/mame/includes/vip.h
@@ -125,6 +125,8 @@ public:
uint8_t m_byteio_data;
void vp111(machine_config &config);
void vip(machine_config &config);
+ void vip_io(address_map &map);
+ void vip_mem(address_map &map);
};
#endif
diff --git a/src/mame/includes/vixen.h b/src/mame/includes/vixen.h
index b3be9f230c8..612b89a38b1 100644
--- a/src/mame/includes/vixen.h
+++ b/src/mame/includes/vixen.h
@@ -77,6 +77,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
void vixen(machine_config &config);
+ void bios_mem(address_map &map);
+ void vixen_io(address_map &map);
+ void vixen_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_device<fd1797_device> m_fdc;
diff --git a/src/mame/includes/volfied.h b/src/mame/includes/volfied.h
index 5d582af0c77..931e7a4e640 100644
--- a/src/mame/includes/volfied.h
+++ b/src/mame/includes/volfied.h
@@ -73,6 +73,8 @@ public:
void cchip_reset();
void volfied(machine_config &config);
+ void main_map(address_map &map);
+ void z80_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/vsnes.h b/src/mame/includes/vsnes.h
index 72e6e8d9112..b18f97f9df0 100644
--- a/src/mame/includes/vsnes.h
+++ b/src/mame/includes/vsnes.h
@@ -109,6 +109,10 @@ public:
void mightybj(machine_config &config);
void vsnes_bootleg(machine_config &config);
void jajamaru(machine_config &config);
+ void vsnes_bootleg_z80_map(address_map &map);
+ void vsnes_cpu1_bootleg_map(address_map &map);
+ void vsnes_cpu1_map(address_map &map);
+ void vsnes_cpu2_map(address_map &map);
private:
int m_coin;
int m_do_vrom_bank;
diff --git a/src/mame/includes/vtech2.h b/src/mame/includes/vtech2.h
index 8356992462d..165dd7f17da 100644
--- a/src/mame/includes/vtech2.h
+++ b/src/mame/includes/vtech2.h
@@ -94,6 +94,8 @@ public:
void laser350(machine_config &config);
void laser700(machine_config &config);
void laser500(machine_config &config);
+ void vtech2_io(address_map &map);
+ void vtech2_mem(address_map &map);
};
diff --git a/src/mame/includes/vulgus.h b/src/mame/includes/vulgus.h
index b243fb39742..5acacecf507 100644
--- a/src/mame/includes/vulgus.h
+++ b/src/mame/includes/vulgus.h
@@ -53,4 +53,6 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
void vulgus(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/warpwarp.h b/src/mame/includes/warpwarp.h
index eec16aab759..235905a9597 100644
--- a/src/mame/includes/warpwarp.h
+++ b/src/mame/includes/warpwarp.h
@@ -102,4 +102,8 @@ public:
void navarone(machine_config &config);
void bombbee(machine_config &config);
void geebeeb(machine_config &config);
+ void bombbee_map(address_map &map);
+ void geebee_map(address_map &map);
+ void geebee_port_map(address_map &map);
+ void warpwarp_map(address_map &map);
};
diff --git a/src/mame/includes/warriorb.h b/src/mame/includes/warriorb.h
index c92a98dcf96..02417967b65 100644
--- a/src/mame/includes/warriorb.h
+++ b/src/mame/includes/warriorb.h
@@ -72,4 +72,7 @@ public:
uint32_t update_screen(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int xoffs, tc0100scn_device *tc0100scn);
void warriorb(machine_config &config);
void darius2d(machine_config &config);
+ void darius2d_map(address_map &map);
+ void warriorb_map(address_map &map);
+ void z80_sound_map(address_map &map);
};
diff --git a/src/mame/includes/wc90.h b/src/mame/includes/wc90.h
index 5120a59098e..5a9e80cd80c 100644
--- a/src/mame/includes/wc90.h
+++ b/src/mame/includes/wc90.h
@@ -82,4 +82,7 @@ public:
void wc90t(machine_config &config);
void wc90(machine_config &config);
void pac90(machine_config &config);
+ void sound_map(address_map &map);
+ void wc90_map_1(address_map &map);
+ void wc90_map_2(address_map &map);
};
diff --git a/src/mame/includes/wc90b.h b/src/mame/includes/wc90b.h
index 69216b1fa62..68c4d61c0fe 100644
--- a/src/mame/includes/wc90b.h
+++ b/src/mame/includes/wc90b.h
@@ -72,4 +72,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, int priority );
void wc90b(machine_config &config);
+ void sound_cpu(address_map &map);
+ void wc90b_map1(address_map &map);
+ void wc90b_map2(address_map &map);
};
diff --git a/src/mame/includes/wecleman.h b/src/mame/includes/wecleman.h
index 2303061edde..2323de4a713 100644
--- a/src/mame/includes/wecleman.h
+++ b/src/mame/includes/wecleman.h
@@ -139,6 +139,12 @@ public:
void hotchase(machine_config &config);
void wecleman(machine_config &config);
+ void hotchase_map(address_map &map);
+ void hotchase_sound_map(address_map &map);
+ void hotchase_sub_map(address_map &map);
+ void wecleman_map(address_map &map);
+ void wecleman_sound_map(address_map &map);
+ void wecleman_sub_map(address_map &map);
private:
struct sprite_t
{
diff --git a/src/mame/includes/welltris.h b/src/mame/includes/welltris.h
index ee0a8d4f36d..2bc8b3295fb 100644
--- a/src/mame/includes/welltris.h
+++ b/src/mame/includes/welltris.h
@@ -54,4 +54,7 @@ public:
void setbank(int num, int bank);
void quiz18k(machine_config &config);
void welltris(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_port_map(address_map &map);
};
diff --git a/src/mame/includes/wgp.h b/src/mame/includes/wgp.h
index 9ec081f9b95..cf537c920e1 100644
--- a/src/mame/includes/wgp.h
+++ b/src/mame/includes/wgp.h
@@ -58,6 +58,9 @@ public:
void wgp2(machine_config &config);
void wgp(machine_config &config);
+ void cpu2_map(address_map &map);
+ void main_map(address_map &map);
+ void z80_sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/williams.h b/src/mame/includes/williams.h
index 88f19f162a3..0cca564cc54 100644
--- a/src/mame/includes/williams.h
+++ b/src/mame/includes/williams.h
@@ -131,6 +131,12 @@ public:
void williams(machine_config &config);
void williams_muxed(machine_config &config);
void jin(machine_config &config);
+ void defender_bankc000_map(address_map &map);
+ void defender_map(address_map &map);
+ void defender_sound_map(address_map &map);
+ void sinistar_map(address_map &map);
+ void sound_map(address_map &map);
+ void williams_map(address_map &map);
};
@@ -171,6 +177,8 @@ public:
inline void update_blaster_banking();
void blastkit(machine_config &config);
void blaster(machine_config &config);
+ void blaster_map(address_map &map);
+ void sound_map_b(address_map &map);
};
@@ -221,6 +229,11 @@ public:
void williams2(machine_config &config);
void mysticm(machine_config &config);
void inferno(machine_config &config);
+ void williams2_bank8000_map(address_map &map);
+ void williams2_common_map(address_map &map);
+ void williams2_d000_ram_map(address_map &map);
+ void williams2_d000_rom_map(address_map &map);
+ void williams2_sound_map(address_map &map);
};
diff --git a/src/mame/includes/wiping.h b/src/mame/includes/wiping.h
index 473d5224b28..195a58ef1cf 100644
--- a/src/mame/includes/wiping.h
+++ b/src/mame/includes/wiping.h
@@ -40,4 +40,6 @@ public:
INTERRUPT_GEN_MEMBER(vblank_irq);
INTERRUPT_GEN_MEMBER(sound_timer_irq);
void wiping(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/wiz.h b/src/mame/includes/wiz.h
index 72391b6da44..fb4ee259882 100644
--- a/src/mame/includes/wiz.h
+++ b/src/mame/includes/wiz.h
@@ -86,4 +86,10 @@ public:
void kungfut(machine_config &config);
void scion(machine_config &config);
void stinger(machine_config &config);
+ void decrypted_opcodes_map(address_map &map);
+ void kungfut_main_map(address_map &map);
+ void kungfut_sound_map(address_map &map);
+ void stinger_main_map(address_map &map);
+ void stinger_sound_map(address_map &map);
+ void wiz_main_map(address_map &map);
};
diff --git a/src/mame/includes/wolfpack.h b/src/mame/includes/wolfpack.h
index e5f5bf5716c..ba5ab568676 100644
--- a/src/mame/includes/wolfpack.h
+++ b/src/mame/includes/wolfpack.h
@@ -97,6 +97,7 @@ public:
void draw_water(palette_device &palette, bitmap_ind16 &bitmap, const rectangle &cliprect);
void wolfpack(machine_config &config);
+ void main_map(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
diff --git a/src/mame/includes/wpc_dot.h b/src/mame/includes/wpc_dot.h
index a38c2ed5934..8d23a11774a 100644
--- a/src/mame/includes/wpc_dot.h
+++ b/src/mame/includes/wpc_dot.h
@@ -35,6 +35,7 @@ public:
{ }
void wpc_dot(machine_config &config);
+ void wpc_dot_map(address_map &map);
protected:
// devices
diff --git a/src/mame/includes/wpc_flip1.h b/src/mame/includes/wpc_flip1.h
index 8777557da4e..3f8e3713c05 100644
--- a/src/mame/includes/wpc_flip1.h
+++ b/src/mame/includes/wpc_flip1.h
@@ -19,6 +19,7 @@ public:
public:
DECLARE_DRIVER_INIT(wpc_flip1);
void wpc_flip1(machine_config &config);
+ void wpc_flip1_map(address_map &map);
};
#endif // MAME_INCLUDES_WPC_FLIP1_H
diff --git a/src/mame/includes/wpc_flip2.h b/src/mame/includes/wpc_flip2.h
index 95807b46c79..50d2dcd5766 100644
--- a/src/mame/includes/wpc_flip2.h
+++ b/src/mame/includes/wpc_flip2.h
@@ -19,6 +19,7 @@ public:
public:
DECLARE_DRIVER_INIT(wpc_flip2);
void wpc_flip2(machine_config &config);
+ void wpc_flip2_map(address_map &map);
};
#endif // MAME_INCLUDES_WPC_FLIP2_H
diff --git a/src/mame/includes/wrally.h b/src/mame/includes/wrally.h
index 73ae4e92a1a..e670b047a81 100644
--- a/src/mame/includes/wrally.h
+++ b/src/mame/includes/wrally.h
@@ -5,12 +5,15 @@
#pragma once
+#include "machine/74259.h"
+
class wrally_state : public driver_device
{
public:
wrally_state(const machine_config &mconfig, device_type type, const char *tag) :
driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
+ m_outlatch(*this, "outlatch"),
m_gfxdecode(*this, "gfxdecode"),
m_palette(*this, "palette"),
m_videoram(*this, "videoram"),
@@ -37,6 +40,9 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void wrally(machine_config &config);
+ void mcu_hostmem_map(address_map &map);
+ void oki_map(address_map &map);
+ void wrally_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
@@ -45,6 +51,7 @@ protected:
private:
required_device<cpu_device> m_maincpu;
+ required_device<ls259_device> m_outlatch;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
diff --git a/src/mame/includes/wswan.h b/src/mame/includes/wswan.h
index b1b11b8a34c..c256d1eaf31 100644
--- a/src/mame/includes/wswan.h
+++ b/src/mame/includes/wswan.h
@@ -71,6 +71,9 @@ public:
void wscolor(machine_config &config);
void wswan(machine_config &config);
+ void wscolor_mem(address_map &map);
+ void wswan_io(address_map &map);
+ void wswan_mem(address_map &map);
protected:
/* Interrupt flags */
static const uint8_t WSWAN_IFLAG_STX = 0x01;
diff --git a/src/mame/includes/wwfsstar.h b/src/mame/includes/wwfsstar.h
index fd25bf35aaf..7c07a0f20d0 100644
--- a/src/mame/includes/wwfsstar.h
+++ b/src/mame/includes/wwfsstar.h
@@ -56,4 +56,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void wwfsstar(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/x07.h b/src/mame/includes/x07.h
index def5ac0ff6d..7567904e0bf 100644
--- a/src/mame/includes/x07.h
+++ b/src/mame/includes/x07.h
@@ -283,4 +283,6 @@ public:
TIMER_CALLBACK_MEMBER(beep_stop);
TIMER_DEVICE_CALLBACK_MEMBER(blink_timer);
void x07(machine_config &config);
+ void x07_io(address_map &map);
+ void x07_mem(address_map &map);
};
diff --git a/src/mame/includes/x1.h b/src/mame/includes/x1.h
index 3e7bc4d71cb..d0fc0878228 100644
--- a/src/mame/includes/x1.h
+++ b/src/mame/includes/x1.h
@@ -179,6 +179,12 @@ public:
uint8_t m_key_irq_flag; /**< Keyboard IRQ pending. */
uint8_t m_key_irq_vector; /**< Keyboard IRQ vector. */
+ void x1_io(address_map &map);
+ void x1_io_banks(address_map &map);
+ void x1_io_banks_common(address_map &map);
+ void x1_mem(address_map &map);
+ void x1turbo_io_banks(address_map &map);
+ void x1turbo_mem(address_map &map);
protected:
struct scrn_reg_t
{
diff --git a/src/mame/includes/x68k.h b/src/mame/includes/x68k.h
index e61528b8882..68d6428ac8e 100644
--- a/src/mame/includes/x68k.h
+++ b/src/mame/includes/x68k.h
@@ -345,6 +345,9 @@ public:
void x68ksupr(machine_config &config);
void x68030(machine_config &config);
void x68000(machine_config &config);
+ void x68030_map(address_map &map);
+ void x68k_map(address_map &map);
+ void x68kxvi_map(address_map &map);
private:
inline void x68k_plot_pixel(bitmap_rgb32 &bitmap, int x, int y, uint32_t color);
void x68k_crtc_text_copy(int src, int dest, uint8_t planes);
diff --git a/src/mame/includes/xain.h b/src/mame/includes/xain.h
index 61cfc916b7b..be472b819f0 100644
--- a/src/mame/includes/xain.h
+++ b/src/mame/includes/xain.h
@@ -59,6 +59,10 @@ public:
void xsleenab(machine_config &config);
void xsleena(machine_config &config);
+ void bootleg_map(address_map &map);
+ void cpu_map_B(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void machine_start() override;
virtual void video_start() override;
diff --git a/src/mame/includes/xbox.h b/src/mame/includes/xbox.h
index 047fb82e0f2..fb113a78b63 100644
--- a/src/mame/includes/xbox.h
+++ b/src/mame/includes/xbox.h
@@ -73,6 +73,8 @@ public:
const debugger_constants *debugc_bios;
void xbox_base(machine_config &config);
+ void xbox_base_map(address_map &map);
+ void xbox_base_map_io(address_map &map);
private:
void dump_string_command(int ref, const std::vector<std::string> &params);
void dump_process_command(int ref, const std::vector<std::string> &params);
@@ -95,7 +97,4 @@ private:
void find_debug_params();
};
-ADDRESS_MAP_EXTERN(xbox_base_map, 32);
-ADDRESS_MAP_EXTERN(xbox_base_map_io, 32);
-
#endif // MAME_INCLUDES_XBOX_H
diff --git a/src/mame/includes/xbox_pci.h b/src/mame/includes/xbox_pci.h
index 17400c2b844..8acf6acc7f0 100644
--- a/src/mame/includes/xbox_pci.h
+++ b/src/mame/includes/xbox_pci.h
@@ -41,7 +41,7 @@ class nv2a_ram_device : public pci_device {
public:
nv2a_ram_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(config_map, 32) override;
+ virtual void config_map(address_map &map) override;
protected:
DECLARE_READ32_MEMBER(config_register_r);
@@ -66,7 +66,7 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(lpc_io, 32);
+ void lpc_io(address_map &map);
};
extern const device_type MCPX_LPC;
@@ -101,9 +101,9 @@ private:
std::function<int(int command, int rw, int data)> devices[128];
uint32_t words[256 / 4];
} smbusst;
- DECLARE_ADDRESS_MAP(smbus_io0, 32);
- DECLARE_ADDRESS_MAP(smbus_io1, 32);
- DECLARE_ADDRESS_MAP(smbus_io2, 32);
+ void smbus_io0(address_map &map);
+ void smbus_io1(address_map &map);
+ void smbus_io2(address_map &map);
};
extern const device_type MCPX_SMBUS;
@@ -137,7 +137,7 @@ private:
devcb_write_line m_interrupt_handler;
emu_timer *timer;
std::function<void(void)> hack_callback;
- DECLARE_ADDRESS_MAP(ohci_mmio, 32);
+ void ohci_mmio(address_map &map);
struct dev_t {
ohci_function *dev;
int port;
@@ -168,8 +168,8 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(eth_mmio, 32);
- DECLARE_ADDRESS_MAP(eth_io, 32);
+ void eth_mmio(address_map &map);
+ void eth_io(address_map &map);
};
extern const device_type MCPX_ETH;
@@ -216,7 +216,7 @@ private:
emu_timer *timer;
address_space *space;
} apust;
- DECLARE_ADDRESS_MAP(apu_mmio, 32);
+ void apu_mmio(address_map &map);
};
extern const device_type MCPX_APU;
@@ -248,9 +248,9 @@ private:
uint32_t mixer_regs[0x84 / 4];
uint32_t controller_regs[0x40 / 4];
} ac97st;
- DECLARE_ADDRESS_MAP(ac97_mmio, 32);
- DECLARE_ADDRESS_MAP(ac97_io0, 32);
- DECLARE_ADDRESS_MAP(ac97_io1, 32);
+ void ac97_mmio(address_map &map);
+ void ac97_io0(address_map &map);
+ void ac97_io1(address_map &map);
};
extern const device_type MCPX_AC97_AUDIO;
@@ -283,7 +283,7 @@ protected:
private:
devcb_write_line m_interrupt_handler;
- DECLARE_ADDRESS_MAP(mcpx_ide_io, 32);
+ void mcpx_ide_io(address_map &map);
DECLARE_WRITE_LINE_MEMBER(ide_interrupt);
};
@@ -333,8 +333,8 @@ private:
const char *cpu_tag;
devcb_write_line m_interrupt_handler;
address_space *m_program;
- DECLARE_ADDRESS_MAP(nv2a_mmio, 32);
- DECLARE_ADDRESS_MAP(nv2a_mirror, 32);
+ void nv2a_mmio(address_map &map);
+ void nv2a_mirror(address_map &map);
};
DECLARE_DEVICE_TYPE(NV2A_GPU, nv2a_gpu_device)
diff --git a/src/mame/includes/xerox820.h b/src/mame/includes/xerox820.h
index 3e10e4e0d60..6fb35068f63 100644
--- a/src/mame/includes/xerox820.h
+++ b/src/mame/includes/xerox820.h
@@ -84,6 +84,9 @@ public:
void mk83(machine_config &config);
void xerox820(machine_config &config);
+ void mk83_mem(address_map &map);
+ void xerox820_io(address_map &map);
+ void xerox820_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
@@ -162,6 +165,9 @@ public:
void xerox168(machine_config &config);
void xerox820ii(machine_config &config);
+ void xerox168_mem(address_map &map);
+ void xerox820ii_io(address_map &map);
+ void xerox820ii_mem(address_map &map);
protected:
virtual void machine_reset() override;
diff --git a/src/mame/includes/xevious.h b/src/mame/includes/xevious.h
index a4d933daaef..6c3b8079163 100644
--- a/src/mame/includes/xevious.h
+++ b/src/mame/includes/xevious.h
@@ -75,4 +75,6 @@ public:
optional_device<cpu_device> m_subcpu3;
void xevious(machine_config &config);
void battles(machine_config &config);
+ void battles_mem4(address_map &map);
+ void xevious_map(address_map &map);
};
diff --git a/src/mame/includes/xexex.h b/src/mame/includes/xexex.h
index 169c8abf91f..b47693434b3 100644
--- a/src/mame/includes/xexex.h
+++ b/src/mame/includes/xexex.h
@@ -100,4 +100,6 @@ public:
K053246_CB_MEMBER(sprite_callback);
K054539_CB_MEMBER(ym_set_mixing);
void xexex(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/xmen.h b/src/mame/includes/xmen.h
index 79706842c9b..ea8afb8f7a3 100644
--- a/src/mame/includes/xmen.h
+++ b/src/mame/includes/xmen.h
@@ -74,4 +74,7 @@ public:
K053246_CB_MEMBER(sprite_callback);
void xmen(machine_config &config);
void xmen6p(machine_config &config);
+ void _6p_main_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/xor100.h b/src/mame/includes/xor100.h
index cdf10f75c67..673d9289104 100644
--- a/src/mame/includes/xor100.h
+++ b/src/mame/includes/xor100.h
@@ -69,6 +69,8 @@ public:
DECLARE_WRITE_LINE_MEMBER(write_centronics_select);
void xor100(machine_config &config);
+ void xor100_io(address_map &map);
+ void xor100_mem(address_map &map);
protected:
virtual void machine_start() override;
virtual void machine_reset() override;
diff --git a/src/mame/includes/xorworld.h b/src/mame/includes/xorworld.h
index c74bf8c079e..b06d4b784e5 100644
--- a/src/mame/includes/xorworld.h
+++ b/src/mame/includes/xorworld.h
@@ -37,4 +37,5 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect );
void xorworld(machine_config &config);
+ void xorworld_map(address_map &map);
};
diff --git a/src/mame/includes/xxmissio.h b/src/mame/includes/xxmissio.h
index 81d28603165..d64904b2767 100644
--- a/src/mame/includes/xxmissio.h
+++ b/src/mame/includes/xxmissio.h
@@ -54,4 +54,6 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, gfx_element *gfx);
void xxmissio(machine_config &config);
+ void map1(address_map &map);
+ void map2(address_map &map);
};
diff --git a/src/mame/includes/xybots.h b/src/mame/includes/xybots.h
index ec05578bf04..6c81d8b4e26 100644
--- a/src/mame/includes/xybots.h
+++ b/src/mame/includes/xybots.h
@@ -38,4 +38,5 @@ public:
static const atari_motion_objects_config s_mob_config;
void xybots(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/xyonix.h b/src/mame/includes/xyonix.h
index 17bd1962526..d215abc1aa5 100644
--- a/src/mame/includes/xyonix.h
+++ b/src/mame/includes/xyonix.h
@@ -34,4 +34,6 @@ public:
void handle_coins(int coin);
void xyonix(machine_config &config);
+ void main_map(address_map &map);
+ void port_map(address_map &map);
};
diff --git a/src/mame/includes/yiear.h b/src/mame/includes/yiear.h
index 18aa64087d8..328386d0bcd 100644
--- a/src/mame/includes/yiear.h
+++ b/src/mame/includes/yiear.h
@@ -53,4 +53,6 @@ public:
INTERRUPT_GEN_MEMBER(yiear_nmi_interrupt);
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
void yiear(machine_config &config);
+ void main_map(address_map &map);
+ void vlm_map(address_map &map);
};
diff --git a/src/mame/includes/yunsun16.h b/src/mame/includes/yunsun16.h
index d637bf4d4b5..e5a051960ca 100644
--- a/src/mame/includes/yunsun16.h
+++ b/src/mame/includes/yunsun16.h
@@ -67,4 +67,8 @@ public:
void draw_sprites( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect );
void magicbub(machine_config &config);
void shocking(machine_config &config);
+ void main_map(address_map &map);
+ void oki_map(address_map &map);
+ void sound_map(address_map &map);
+ void sound_port_map(address_map &map);
};
diff --git a/src/mame/includes/yunsung8.h b/src/mame/includes/yunsung8.h
index c8dc4b91366..0dae4cb52de 100644
--- a/src/mame/includes/yunsung8.h
+++ b/src/mame/includes/yunsung8.h
@@ -68,4 +68,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void yunsung8(machine_config &config);
+ void main_map(address_map &map);
+ void port_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/z80ne.h b/src/mame/includes/z80ne.h
index 7188cdf62ba..ae96c209881 100644
--- a/src/mame/includes/z80ne.h
+++ b/src/mame/includes/z80ne.h
@@ -154,6 +154,13 @@ public:
void z80netf(machine_config &config);
void z80ne(machine_config &config);
void z80netb(machine_config &config);
+ void z80ne_io(address_map &map);
+ void z80ne_mem(address_map &map);
+ void z80net_io(address_map &map);
+ void z80net_mem(address_map &map);
+ void z80netb_mem(address_map &map);
+ void z80netf_io(address_map &map);
+ void z80netf_mem(address_map &map);
protected:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
diff --git a/src/mame/includes/z88.h b/src/mame/includes/z88.h
index f4e29f1fd86..c1f3e4d3f7a 100644
--- a/src/mame/includes/z88.h
+++ b/src/mame/includes/z88.h
@@ -93,6 +93,8 @@ public:
z88cart_slot_device * m_carts[4];
DECLARE_PALETTE_INIT(z88);
void z88(machine_config &config);
+ void z88_io(address_map &map);
+ void z88_mem(address_map &map);
};
#endif /* MAME_INCLUDES_Z88_H */
diff --git a/src/mame/includes/zac2650.h b/src/mame/includes/zac2650.h
index 3ce39a5376c..1ab2bcea2bb 100644
--- a/src/mame/includes/zac2650.h
+++ b/src/mame/includes/zac2650.h
@@ -45,4 +45,5 @@ public:
int SpriteCollision(int first,int second);
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
void tinvader(machine_config &config);
+ void main_map(address_map &map);
};
diff --git a/src/mame/includes/zaccaria.h b/src/mame/includes/zaccaria.h
index 792e7af9061..23b5979088b 100644
--- a/src/mame/includes/zaccaria.h
+++ b/src/mame/includes/zaccaria.h
@@ -38,6 +38,7 @@ public:
void draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect,uint8_t *spriteram,int color,int section);
void zaccaria(machine_config &config);
+ void main_map(address_map &map);
protected:
required_device<cpu_device> m_maincpu;
required_device<gfxdecode_device> m_gfxdecode;
diff --git a/src/mame/includes/zaxxon.h b/src/mame/includes/zaxxon.h
index e1c6d4c43e7..696e8cd627f 100644
--- a/src/mame/includes/zaxxon.h
+++ b/src/mame/includes/zaxxon.h
@@ -114,5 +114,10 @@ public:
void zaxxon(machine_config &config);
void zaxxon_samples(machine_config &config);
void congo_samples(machine_config &config);
+ void congo_map(address_map &map);
+ void congo_sound_map(address_map &map);
+ void decrypted_opcodes_map(address_map &map);
+ void ixion_map(address_map &map);
+ void zaxxon_map(address_map &map);
};
diff --git a/src/mame/includes/zerozone.h b/src/mame/includes/zerozone.h
index de5cb27c7da..02b400a5066 100644
--- a/src/mame/includes/zerozone.h
+++ b/src/mame/includes/zerozone.h
@@ -46,6 +46,8 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
void zerozone(machine_config &config);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
protected:
// driver_device overrides
diff --git a/src/mame/includes/zodiack.h b/src/mame/includes/zodiack.h
index 4cc502e8041..9dfb82a2e15 100644
--- a/src/mame/includes/zodiack.h
+++ b/src/mame/includes/zodiack.h
@@ -71,4 +71,7 @@ public:
INTERRUPT_GEN_MEMBER(zodiack_sound_nmi_gen);
INTERRUPT_GEN_MEMBER(zodiack_main_nmi_gen);
void zodiack(machine_config &config);
+ void io_map(address_map &map);
+ void main_map(address_map &map);
+ void sound_map(address_map &map);
};
diff --git a/src/mame/includes/zorba.h b/src/mame/includes/zorba.h
index 5816cf49a08..bdb33d3ac92 100644
--- a/src/mame/includes/zorba.h
+++ b/src/mame/includes/zorba.h
@@ -81,6 +81,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(printer_type);
void zorba(machine_config &config);
+ void zorba_io(address_map &map);
+ void zorba_mem(address_map &map);
private:
required_ioport m_config_port;
diff --git a/src/mame/includes/zx.h b/src/mame/includes/zx.h
index a12877fa3dc..e3646c362e4 100644
--- a/src/mame/includes/zx.h
+++ b/src/mame/includes/zx.h
@@ -71,6 +71,13 @@ public:
void pow3000(machine_config &config);
void ts1500(machine_config &config);
void zx80(machine_config &config);
+ void pc8300_io_map(address_map &map);
+ void pow3000_io_map(address_map &map);
+ void ula_map(address_map &map);
+ void zx80_io_map(address_map &map);
+ void zx80_map(address_map &map);
+ void zx81_io_map(address_map &map);
+ void zx81_map(address_map &map);
protected:
enum
{
diff --git a/src/mame/machine/abc1600mac.cpp b/src/mame/machine/abc1600mac.cpp
index c8e82e280f8..c586a76d2b9 100644
--- a/src/mame/machine/abc1600mac.cpp
+++ b/src/mame/machine/abc1600mac.cpp
@@ -57,12 +57,12 @@
DEFINE_DEVICE_TYPE(ABC1600_MAC, abc1600_mac_device, "abc1600mac", "ABC 1600 MAC")
-DEVICE_ADDRESS_MAP_START( map, 8, abc1600_mac_device )
+ADDRESS_MAP_START(abc1600_mac_device::map)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(read, write)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, abc1600_mac_device )
+ADDRESS_MAP_START(abc1600_mac_device::program_map)
ADDRESS_MAP_END
@@ -107,7 +107,7 @@ const tiny_rom_entry *abc1600_mac_device::device_rom_region() const
abc1600_mac_device::abc1600_mac_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, ABC1600_MAC, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("program", ENDIANNESS_LITTLE, 8, 22, 0, *ADDRESS_MAP_NAME(program_map)),
+ m_space_config("program", ENDIANNESS_LITTLE, 8, 22, 0, address_map_constructor(FUNC(abc1600_mac_device::program_map), this)),
m_rom(*this, "boot"),
m_segment_ram(*this, "segment_ram"),
m_page_ram(*this, "page_ram"),
diff --git a/src/mame/machine/abc1600mac.h b/src/mame/machine/abc1600mac.h
index bd0addfbd8c..da259d1fe6e 100644
--- a/src/mame/machine/abc1600mac.h
+++ b/src/mame/machine/abc1600mac.h
@@ -49,7 +49,7 @@ public:
void set_cpu_tag(const char *cpu_tag) { m_cpu_tag = cpu_tag; }
- virtual DECLARE_ADDRESS_MAP(map, 8);
+ virtual void map(address_map &map);
DECLARE_READ8_MEMBER( cause_r );
DECLARE_WRITE8_MEMBER( task_w );
@@ -72,6 +72,7 @@ public:
DECLARE_READ8_MEMBER( dma2_iorq_r ) { return dma_iorq_r(DMAMAP_R2_LO, offset); }
DECLARE_WRITE8_MEMBER( dma2_iorq_w ) { dma_iorq_w(DMAMAP_R2_LO, offset, data); }
+ void program_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/abc80kb.cpp b/src/mame/machine/abc80kb.cpp
index d4291c1dec7..4195133ee81 100644
--- a/src/mame/machine/abc80kb.cpp
+++ b/src/mame/machine/abc80kb.cpp
@@ -117,7 +117,7 @@ const tiny_rom_entry *abc80_keyboard_device::device_rom_region() const
// ADDRESS_MAP( abc80_keyboard_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( abc80_keyboard_io, AS_IO, 8, abc80_keyboard_device )
+ADDRESS_MAP_START(abc80_keyboard_device::abc80_keyboard_io)
ADDRESS_MAP_END
diff --git a/src/mame/machine/abc80kb.h b/src/mame/machine/abc80kb.h
index 5ec3e04da20..5416a8611ca 100644
--- a/src/mame/machine/abc80kb.h
+++ b/src/mame/machine/abc80kb.h
@@ -45,6 +45,7 @@ public:
uint8_t data_r();
+ void abc80_keyboard_io(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/acs8600_ics.cpp b/src/mame/machine/acs8600_ics.cpp
index bf7ac233dfe..544b52b9f61 100644
--- a/src/mame/machine/acs8600_ics.cpp
+++ b/src/mame/machine/acs8600_ics.cpp
@@ -65,13 +65,13 @@ static DEVICE_INPUT_DEFAULTS_START(altos8600_terminal)
DEVICE_INPUT_DEFAULTS( "RS232_STOPBITS", 0xff, RS232_STOPBITS_1 )
DEVICE_INPUT_DEFAULTS_END
-static ADDRESS_MAP_START(ics_mem, AS_PROGRAM, 8, acs8600_ics_device)
+ADDRESS_MAP_START(acs8600_ics_device::ics_mem)
AM_RANGE(0x0000, 0x0fff) AM_ROM AM_REGION("icscpu", 0)
AM_RANGE(0x1000, 0x17ff) AM_RAM
AM_RANGE(0x8000, 0xffff) AM_READWRITE(hostram_r, hostram_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(ics_io, AS_PROGRAM, 8, acs8600_ics_device)
+ADDRESS_MAP_START(acs8600_ics_device::ics_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("sio1", z80sio_device, ba_cd_r, ba_cd_w)
AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("sio2", z80sio_device, ba_cd_r, ba_cd_w)
diff --git a/src/mame/machine/acs8600_ics.h b/src/mame/machine/acs8600_ics.h
index c16541fb66b..ac6e6fb842f 100644
--- a/src/mame/machine/acs8600_ics.h
+++ b/src/mame/machine/acs8600_ics.h
@@ -24,6 +24,8 @@ public:
static void static_set_maincpu_tag(device_t &device, const char *maincpu_tag) { downcast<acs8600_ics_device &>(device).m_maincpu_tag = maincpu_tag; }
const tiny_rom_entry *device_rom_region() const override;
+ void ics_io(address_map &map);
+ void ics_mem(address_map &map);
protected:
virtual void device_start() override;
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/machine/apricotkb.cpp b/src/mame/machine/apricotkb.cpp
index e3aee079966..dd96ff8430e 100644
--- a/src/mame/machine/apricotkb.cpp
+++ b/src/mame/machine/apricotkb.cpp
@@ -51,7 +51,7 @@ const tiny_rom_entry *apricot_keyboard_device::device_rom_region() const
//-------------------------------------------------
#ifdef UPD7507_EMULATED
-static ADDRESS_MAP_START( apricot_keyboard_io, AS_IO, 8, apricot_keyboard_device )
+ADDRESS_MAP_START(apricot_keyboard_device::apricot_keyboard_io)
AM_RANGE(0x00, 0x00) AM_READ(kb_lo_r)
AM_RANGE(0x01, 0x01) AM_READ(kb_hi_r)
AM_RANGE(0x03, 0x03) AM_WRITE(kb_p3_w)
diff --git a/src/mame/machine/apricotkb.h b/src/mame/machine/apricotkb.h
index aa891b36c81..fc92d38f73e 100644
--- a/src/mame/machine/apricotkb.h
+++ b/src/mame/machine/apricotkb.h
@@ -56,6 +56,7 @@ public:
DECLARE_WRITE8_MEMBER( kb_y8_w );
DECLARE_WRITE8_MEMBER( kb_yc_w );
+ void apricot_keyboard_io(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/asic65.cpp b/src/mame/machine/asic65.cpp
index 8e245871f51..7602277bdc3 100644
--- a/src/mame/machine/asic65.cpp
+++ b/src/mame/machine/asic65.cpp
@@ -521,12 +521,12 @@ READ_LINE_MEMBER( asic65_device::get_bio )
*
*************************************/
-static ADDRESS_MAP_START( asic65_program_map, AS_PROGRAM, 16, asic65_device )
+ADDRESS_MAP_START(asic65_device::asic65_program_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000, 0xfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( asic65_io_map, AS_IO, 16, asic65_device )
+ADDRESS_MAP_START(asic65_device::asic65_io_map)
AM_RANGE(0, 0) AM_MIRROR(6) AM_READWRITE(m68k_r, m68k_w)
AM_RANGE(1, 1) AM_MIRROR(6) AM_READWRITE(stat_r, stat_w)
ADDRESS_MAP_END
diff --git a/src/mame/machine/asic65.h b/src/mame/machine/asic65.h
index 9a126dfee4c..0a167114f3e 100644
--- a/src/mame/machine/asic65.h
+++ b/src/mame/machine/asic65.h
@@ -42,6 +42,8 @@ public:
TIMER_M68K_ASIC65_DEFERRED_W
};
+ void asic65_io_map(address_map &map);
+ void asic65_program_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/at.cpp b/src/mame/machine/at.cpp
index 82fd33da4ad..21c6fbc11f8 100644
--- a/src/mame/machine/at.cpp
+++ b/src/mame/machine/at.cpp
@@ -144,7 +144,7 @@ MACHINE_CONFIG_START(at_mb_device::device_add_mconfig)
MACHINE_CONFIG_END
-DEVICE_ADDRESS_MAP_START( map, 16, at_mb_device )
+ADDRESS_MAP_START(at_mb_device::map)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", am9517a_device, read, write, 0xffff)
AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_master", pic8259_device, read, write, 0xffff)
AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8254_device, read, write, 0xffff)
diff --git a/src/mame/machine/at.h b/src/mame/machine/at.h
index 0f9bea86b00..4647aba38db 100644
--- a/src/mame/machine/at.h
+++ b/src/mame/machine/at.h
@@ -17,7 +17,7 @@ class at_mb_device : public device_t
public:
at_mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(page8_r);
DECLARE_WRITE8_MEMBER(page8_w);
diff --git a/src/mame/machine/awboard.cpp b/src/mame/machine/awboard.cpp
index e03f11d22c0..58e4c451dab 100644
--- a/src/mame/machine/awboard.cpp
+++ b/src/mame/machine/awboard.cpp
@@ -159,7 +159,7 @@ ROM board internal layouts:
DEFINE_DEVICE_TYPE(AW_ROM_BOARD, aw_rom_board, "aw_rom_board", "Sammy Atomiswave ROM Board")
-DEVICE_ADDRESS_MAP_START(submap, 16, aw_rom_board)
+ADDRESS_MAP_START(aw_rom_board::submap)
AM_RANGE(0x00, 0x01) AM_WRITE(epr_offsetl_w)
AM_RANGE(0x02, 0x03) AM_WRITE(epr_offseth_w)
AM_RANGE(0x06, 0x07) AM_WRITE(mpr_record_index_w)
diff --git a/src/mame/machine/awboard.h b/src/mame/machine/awboard.h
index c2c8afcdd7e..78a3fd1c8cc 100644
--- a/src/mame/machine/awboard.h
+++ b/src/mame/machine/awboard.h
@@ -18,7 +18,7 @@ public:
static void static_set_keyregion(device_t &device, const char *keyregion);
- DECLARE_ADDRESS_MAP(submap, 16);
+ void submap(address_map &map);
DECLARE_WRITE16_MEMBER(epr_offsetl_w); // 5f7000
DECLARE_WRITE16_MEMBER(epr_offseth_w); // 5f7004
diff --git a/src/mame/machine/cammu.cpp b/src/mame/machine/cammu.cpp
index 5686cfa7d2e..8395d40c0e9 100644
--- a/src/mame/machine/cammu.cpp
+++ b/src/mame/machine/cammu.cpp
@@ -41,7 +41,7 @@
#include "logmacro.h"
// each variant of the cammu has different registers and a different addressing map
-DEVICE_ADDRESS_MAP_START(map, 32, cammu_c4t_device)
+ADDRESS_MAP_START(cammu_c4t_device::map)
AM_RANGE(0x008, 0x00b) AM_READWRITE(ram_line_r, ram_line_w)
AM_RANGE(0x010, 0x013) AM_READWRITE(s_pdo_r, s_pdo_w)
AM_RANGE(0x018, 0x01b) AM_READWRITE(u_pdo_r, u_pdo_w)
@@ -67,7 +67,7 @@ DEVICE_ADDRESS_MAP_START(map, 32, cammu_c4t_device)
AM_RANGE(0x11c, 0x11f) AM_READWRITE(tlb_ra_line_r, tlb_ra_line_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 32, cammu_c4i_device)
+ADDRESS_MAP_START(cammu_c4i_device::map)
AM_RANGE(0x000, 0x003) AM_READWRITE(reset_r, reset_w)
AM_RANGE(0x010, 0x013) AM_READWRITE(s_pdo_r, s_pdo_w)
AM_RANGE(0x018, 0x01b) AM_READWRITE(u_pdo_r, u_pdo_w)
@@ -89,7 +89,7 @@ DEVICE_ADDRESS_MAP_START(map, 32, cammu_c4i_device)
AM_RANGE(0x0c0, 0x0c3) AM_READWRITE(test_address_r, test_address_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 32, cammu_c3_device)
+ADDRESS_MAP_START(cammu_c3_device::map)
AM_RANGE(0x000, 0x0ff) AM_NOP // tlb
AM_RANGE(0x104, 0x107) AM_READWRITE(s_pdo_r, s_pdo_w)
AM_RANGE(0x108, 0x10b) AM_READWRITE(u_pdo_r, u_pdo_w)
@@ -98,7 +98,7 @@ DEVICE_ADDRESS_MAP_START(map, 32, cammu_c3_device)
AM_RANGE(0x180, 0x183) AM_READWRITE(reset_r, reset_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map_global, 32, cammu_c3_device)
+ADDRESS_MAP_START(cammu_c3_device::map_global)
AM_RANGE(0x000, 0x0ff) AM_NOP // global tlb
AM_RANGE(0x104, 0x107) AM_WRITE(g_s_pdo_w)
AM_RANGE(0x108, 0x10b) AM_WRITE(g_u_pdo_w)
diff --git a/src/mame/machine/cammu.h b/src/mame/machine/cammu.h
index 28eb32f07ad..0b5074a7149 100644
--- a/src/mame/machine/cammu.h
+++ b/src/mame/machine/cammu.h
@@ -98,7 +98,7 @@ public:
VA_PTDI = 0xffc00000 // page table directory index
};
- virtual DECLARE_ADDRESS_MAP(map, 32) = 0;
+ virtual void map(address_map &map) = 0;
DECLARE_READ32_MEMBER(read);
DECLARE_WRITE32_MEMBER(write);
@@ -156,27 +156,27 @@ private:
class cammu_c4_device : public cammu_device
{
public:
- DECLARE_READ32_MEMBER(s_pdo_r) const { return m_s_pdo; }
+ DECLARE_READ32_MEMBER(s_pdo_r) { return m_s_pdo; }
DECLARE_WRITE32_MEMBER(s_pdo_w) { m_s_pdo = ((m_s_pdo & ~mem_mask) | (data & mem_mask)) & PDO_MASK; }
- DECLARE_READ32_MEMBER(u_pdo_r) const { return m_u_pdo; }
+ DECLARE_READ32_MEMBER(u_pdo_r) { return m_u_pdo; }
DECLARE_WRITE32_MEMBER(u_pdo_w) { m_u_pdo = ((m_u_pdo & ~mem_mask) | (data & mem_mask)) & PDO_MASK; }
- virtual DECLARE_READ32_MEMBER(control_r) const = 0;
+ virtual DECLARE_READ32_MEMBER(control_r) = 0;
virtual DECLARE_WRITE32_MEMBER(control_w) = 0;
- DECLARE_READ32_MEMBER(i_fault_r) const { return m_i_fault; }
+ DECLARE_READ32_MEMBER(i_fault_r) { return m_i_fault; }
DECLARE_WRITE32_MEMBER(i_fault_w) { m_i_fault = data; }
- DECLARE_READ32_MEMBER(fault_address_1_r) const { return m_fault_address_1; }
+ DECLARE_READ32_MEMBER(fault_address_1_r) { return m_fault_address_1; }
DECLARE_WRITE32_MEMBER(fault_address_1_w) { m_fault_address_1 = data; }
- DECLARE_READ32_MEMBER(fault_address_2_r) const { return m_fault_address_2; }
+ DECLARE_READ32_MEMBER(fault_address_2_r) { return m_fault_address_2; }
DECLARE_WRITE32_MEMBER(fault_address_2_w) { m_fault_address_2 = data; }
- DECLARE_READ32_MEMBER(fault_data_1_lo_r) const { return m_fault_data_1_lo; }
+ DECLARE_READ32_MEMBER(fault_data_1_lo_r) { return m_fault_data_1_lo; }
DECLARE_WRITE32_MEMBER(fault_data_1_lo_w) { m_fault_data_1_lo = data; }
- DECLARE_READ32_MEMBER(fault_data_1_hi_r) const { return m_fault_data_1_hi; }
+ DECLARE_READ32_MEMBER(fault_data_1_hi_r) { return m_fault_data_1_hi; }
DECLARE_WRITE32_MEMBER(fault_data_1_hi_w) { m_fault_data_1_hi = data; }
- DECLARE_READ32_MEMBER(fault_data_2_lo_r) const { return m_fault_data_2_lo; }
+ DECLARE_READ32_MEMBER(fault_data_2_lo_r) { return m_fault_data_2_lo; }
DECLARE_WRITE32_MEMBER(fault_data_2_lo_w) { m_fault_data_2_lo = data; }
- DECLARE_READ32_MEMBER(fault_data_2_hi_r) const { return m_fault_data_2_hi; }
+ DECLARE_READ32_MEMBER(fault_data_2_hi_r) { return m_fault_data_2_hi; }
DECLARE_WRITE32_MEMBER(fault_data_2_hi_w) { m_fault_data_2_hi = data; }
protected:
@@ -207,15 +207,15 @@ class cammu_c4t_device : public cammu_c4_device
public:
cammu_c4t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
+ virtual void map(address_map &map) override;
- DECLARE_READ32_MEMBER(ram_line_r) const { return m_ram_line; }
+ DECLARE_READ32_MEMBER(ram_line_r) { return m_ram_line; }
DECLARE_WRITE32_MEMBER(ram_line_w) { m_ram_line = data; }
- DECLARE_READ32_MEMBER(htlb_offset_r) const { return m_htlb_offset; }
+ DECLARE_READ32_MEMBER(htlb_offset_r) { return m_htlb_offset; }
DECLARE_WRITE32_MEMBER(htlb_offset_w) { m_htlb_offset = data; }
- DECLARE_READ32_MEMBER(c4_bus_poll_r) const { return m_c4_bus_poll; }
+ DECLARE_READ32_MEMBER(c4_bus_poll_r) { return m_c4_bus_poll; }
DECLARE_WRITE32_MEMBER(c4_bus_poll_w) { m_c4_bus_poll = data; }
enum control_mask : u32
@@ -248,26 +248,26 @@ public:
CID_C4T = 0x00000000 // unknown
};
- virtual DECLARE_READ32_MEMBER(control_r) const override { return m_control; }
+ virtual DECLARE_READ32_MEMBER(control_r) override { return m_control; }
virtual DECLARE_WRITE32_MEMBER(control_w) override { m_control = ((m_control & (~mem_mask | CNTL_CID)) | (data & (mem_mask & ~CNTL_CID))); }
- DECLARE_READ32_MEMBER(bio_control_r) const { return m_bio_control; }
+ DECLARE_READ32_MEMBER(bio_control_r) { return m_bio_control; }
DECLARE_WRITE32_MEMBER(bio_control_w) { m_bio_control = data; }
- DECLARE_READ32_MEMBER(bio_address_tag_r) const { return m_bio_address_tag; }
+ DECLARE_READ32_MEMBER(bio_address_tag_r) { return m_bio_address_tag; }
DECLARE_WRITE32_MEMBER(bio_address_tag_w) { m_bio_address_tag = data; }
- DECLARE_READ32_MEMBER(cache_data_lo_r) const { return m_cache_data_lo; }
+ DECLARE_READ32_MEMBER(cache_data_lo_r) { return m_cache_data_lo; }
DECLARE_WRITE32_MEMBER(cache_data_lo_w) { m_cache_data_lo = data; }
- DECLARE_READ32_MEMBER(cache_data_hi_r) const { return m_cache_data_hi; }
+ DECLARE_READ32_MEMBER(cache_data_hi_r) { return m_cache_data_hi; }
DECLARE_WRITE32_MEMBER(cache_data_hi_w) { m_cache_data_hi = data; }
- DECLARE_READ32_MEMBER(cache_cpu_tag_r) const { return m_cache_cpu_tag; }
+ DECLARE_READ32_MEMBER(cache_cpu_tag_r) { return m_cache_cpu_tag; }
DECLARE_WRITE32_MEMBER(cache_cpu_tag_w) { m_cache_cpu_tag = data; }
- DECLARE_READ32_MEMBER(cache_system_tag_valid_r) const { return m_cache_system_tag_valid; }
+ DECLARE_READ32_MEMBER(cache_system_tag_valid_r) { return m_cache_system_tag_valid; }
DECLARE_WRITE32_MEMBER(cache_system_tag_valid_w) { m_cache_system_tag_valid = data; }
- DECLARE_READ32_MEMBER(cache_system_tag_r) const { return m_cache_system_tag; }
+ DECLARE_READ32_MEMBER(cache_system_tag_r) { return m_cache_system_tag; }
DECLARE_WRITE32_MEMBER(cache_system_tag_w) { m_cache_system_tag = data; }
- DECLARE_READ32_MEMBER(tlb_va_line_r) const { return m_tlb_va_line; }
+ DECLARE_READ32_MEMBER(tlb_va_line_r) { return m_tlb_va_line; }
DECLARE_WRITE32_MEMBER(tlb_va_line_w) { m_tlb_va_line = data; }
- DECLARE_READ32_MEMBER(tlb_ra_line_r) const { return m_tlb_ra_line; }
+ DECLARE_READ32_MEMBER(tlb_ra_line_r) { return m_tlb_ra_line; }
DECLARE_WRITE32_MEMBER(tlb_ra_line_w) { m_tlb_ra_line = data; }
protected:
@@ -297,7 +297,7 @@ class cammu_c4i_device : public cammu_c4_device
public:
cammu_c4i_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
+ virtual void map(address_map &map) override;
enum control_mask : u32
{
@@ -338,7 +338,7 @@ public:
CID_C4I = 0x02000000 // c4i cammu identification
};
- virtual DECLARE_READ32_MEMBER(control_r) const override { return m_control; }
+ virtual DECLARE_READ32_MEMBER(control_r) override { return m_control; }
virtual DECLARE_WRITE32_MEMBER(control_w) override { m_control = ((m_control & (~mem_mask | CNTL_CID)) | (data & (mem_mask & ~CNTL_CID))); }
enum reset_mask : u32
@@ -352,22 +352,22 @@ public:
RESET_FLUSH = 0x40000000, // flush out burst io buffer
RESET_CFR = 0x80000000 // clear fault registers
};
- DECLARE_READ32_MEMBER(reset_r) const { return m_reset; }
+ DECLARE_READ32_MEMBER(reset_r) { return m_reset; }
DECLARE_WRITE32_MEMBER(reset_w) { m_reset = data; }
- DECLARE_READ32_MEMBER(clr_s_data_tlb_r) const { return m_clr_s_data_tlb; }
+ DECLARE_READ32_MEMBER(clr_s_data_tlb_r) { return m_clr_s_data_tlb; }
DECLARE_WRITE32_MEMBER(clr_s_data_tlb_w) { m_clr_s_data_tlb = data; }
- DECLARE_READ32_MEMBER(clr_u_data_tlb_r) const { return m_clr_u_data_tlb; }
+ DECLARE_READ32_MEMBER(clr_u_data_tlb_r) { return m_clr_u_data_tlb; }
DECLARE_WRITE32_MEMBER(clr_u_data_tlb_w) { m_clr_u_data_tlb = data; }
- DECLARE_READ32_MEMBER(clr_s_insn_tlb_r) const { return m_clr_s_insn_tlb; }
+ DECLARE_READ32_MEMBER(clr_s_insn_tlb_r) { return m_clr_s_insn_tlb; }
DECLARE_WRITE32_MEMBER(clr_s_insn_tlb_w) { m_clr_s_insn_tlb = data; }
- DECLARE_READ32_MEMBER(clr_u_insn_tlb_r) const { return m_clr_u_insn_tlb; }
+ DECLARE_READ32_MEMBER(clr_u_insn_tlb_r) { return m_clr_u_insn_tlb; }
DECLARE_WRITE32_MEMBER(clr_u_insn_tlb_w) { m_clr_u_insn_tlb = data; }
- DECLARE_READ32_MEMBER(test_data_r) const { return m_test_data; }
+ DECLARE_READ32_MEMBER(test_data_r) { return m_test_data; }
DECLARE_WRITE32_MEMBER(test_data_w) { m_test_data = data; }
- DECLARE_READ32_MEMBER(test_address_r) const { return m_test_address; }
+ DECLARE_READ32_MEMBER(test_address_r) { return m_test_address; }
DECLARE_WRITE32_MEMBER(test_address_w) { m_test_address = data; }
protected:
@@ -393,8 +393,8 @@ public:
static void static_add_linked(device_t &device, const char *const tag);
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
- virtual DECLARE_ADDRESS_MAP(map_global, 32);
+ virtual void map(address_map &map) override;
+ virtual void map_global(address_map &map);
enum control_mask : u32
{
@@ -421,15 +421,15 @@ public:
CID_C3 = 0x00000000 // unknown
};
- DECLARE_READ32_MEMBER(s_pdo_r) const { return m_s_pdo; }
+ DECLARE_READ32_MEMBER(s_pdo_r) { return m_s_pdo; }
DECLARE_WRITE32_MEMBER(s_pdo_w) { m_s_pdo = ((m_s_pdo & ~mem_mask) | (data & mem_mask)) & PDO_MASK; }
- DECLARE_READ32_MEMBER(u_pdo_r) const { return m_u_pdo; }
+ DECLARE_READ32_MEMBER(u_pdo_r) { return m_u_pdo; }
DECLARE_WRITE32_MEMBER(u_pdo_w) { m_u_pdo = ((m_u_pdo & ~mem_mask) | (data & mem_mask)) & PDO_MASK; }
- DECLARE_READ32_MEMBER(fault_r) const { return m_fault; }
+ DECLARE_READ32_MEMBER(fault_r) { return m_fault; }
DECLARE_WRITE32_MEMBER(fault_w) { m_fault = data; }
- DECLARE_READ32_MEMBER(control_r) const { return m_control; }
+ DECLARE_READ32_MEMBER(control_r) { return m_control; }
DECLARE_WRITE32_MEMBER(control_w) { m_control = ((m_control & (~mem_mask | CNTL_CID)) | (data & (mem_mask & ~CNTL_CID))); }
- DECLARE_READ32_MEMBER(reset_r) const { return m_reset; }
+ DECLARE_READ32_MEMBER(reset_r) { return m_reset; }
DECLARE_WRITE32_MEMBER(reset_w) { m_reset = data; }
// global methods - relay to each linked device
diff --git a/src/mame/machine/cedar_magnet_plane.cpp b/src/mame/machine/cedar_magnet_plane.cpp
index e6f9a0883ab..c0fc54a6090 100644
--- a/src/mame/machine/cedar_magnet_plane.cpp
+++ b/src/mame/machine/cedar_magnet_plane.cpp
@@ -17,11 +17,11 @@ cedar_magnet_plane_device::cedar_magnet_plane_device(const machine_config &mconf
-static ADDRESS_MAP_START( cedar_magnet_plane_map, AS_PROGRAM, 8, cedar_magnet_plane_device )
+ADDRESS_MAP_START(cedar_magnet_plane_device::cedar_magnet_plane_map)
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("ram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cedar_magnet_plane_io, AS_IO, 8, cedar_magnet_plane_device )
+ADDRESS_MAP_START(cedar_magnet_plane_device::cedar_magnet_plane_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc0, 0xc3) AM_DEVREADWRITE("z80pio0", z80pio_device, read_alt, write_alt)
diff --git a/src/mame/machine/cedar_magnet_plane.h b/src/mame/machine/cedar_magnet_plane.h
index f2f55f20efd..7892215bd8c 100644
--- a/src/mame/machine/cedar_magnet_plane.h
+++ b/src/mame/machine/cedar_magnet_plane.h
@@ -31,6 +31,8 @@ public:
uint32_t draw(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int palbase);
+ void cedar_magnet_plane_io(address_map &map);
+ void cedar_magnet_plane_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/machine/cedar_magnet_sprite.cpp b/src/mame/machine/cedar_magnet_sprite.cpp
index 8a3479c57ef..3fa6ad76a2c 100644
--- a/src/mame/machine/cedar_magnet_sprite.cpp
+++ b/src/mame/machine/cedar_magnet_sprite.cpp
@@ -23,7 +23,7 @@ cedar_magnet_sprite_device::cedar_magnet_sprite_device(const machine_config &mco
{
}
-static ADDRESS_MAP_START( cedar_magnet_sprite_sub_ram_map, AS_PROGRAM, 8, cedar_magnet_sprite_device )
+ADDRESS_MAP_START(cedar_magnet_sprite_device::cedar_magnet_sprite_sub_ram_map)
// these are 8x SIEMENS HYB 41256-15 AA - 262,144 bit DRAM (32kbytes)
// these are on the sprite board memory sub-board
AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("ram")
@@ -48,13 +48,13 @@ READ8_MEMBER(cedar_magnet_sprite_device::exzisus_hack_r)
}
-static ADDRESS_MAP_START( cedar_magnet_sprite_map, AS_PROGRAM, 8, cedar_magnet_sprite_device )
+ADDRESS_MAP_START(cedar_magnet_sprite_device::cedar_magnet_sprite_map)
AM_RANGE(0x00000, 0x0ffff) AM_DEVICE("sp_sub_ram", address_map_bank_device, amap8)
AM_RANGE(0x00400, 0x007ff) AM_READ(exzisus_hack_r)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cedar_magnet_sprite_io, AS_IO, 8, cedar_magnet_sprite_device )
+ADDRESS_MAP_START(cedar_magnet_sprite_device::cedar_magnet_sprite_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0xc0, 0xc3) AM_DEVREADWRITE("z80pio0", z80pio_device, read_alt, write_alt)
diff --git a/src/mame/machine/cedar_magnet_sprite.h b/src/mame/machine/cedar_magnet_sprite.h
index 666908233bf..08b9c17eccc 100644
--- a/src/mame/machine/cedar_magnet_sprite.h
+++ b/src/mame/machine/cedar_magnet_sprite.h
@@ -36,6 +36,9 @@ public:
uint32_t draw(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int palbase);
+ void cedar_magnet_sprite_io(address_map &map);
+ void cedar_magnet_sprite_map(address_map &map);
+ void cedar_magnet_sprite_sub_ram_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/machine/cuda.cpp b/src/mame/machine/cuda.cpp
index 8324541ac06..4da469e6302 100644
--- a/src/mame/machine/cuda.cpp
+++ b/src/mame/machine/cuda.cpp
@@ -67,7 +67,7 @@ ROM_END
// ADDRESS_MAP
//-------------------------------------------------
-static ADDRESS_MAP_START( cuda_map, AS_PROGRAM, 8, cuda_device )
+ADDRESS_MAP_START(cuda_device::cuda_map)
AM_RANGE(0x0000, 0x0002) AM_READWRITE(ports_r, ports_w)
AM_RANGE(0x0004, 0x0006) AM_READWRITE(ddr_r, ddr_w)
AM_RANGE(0x0007, 0x0007) AM_READWRITE(pll_r, pll_w)
diff --git a/src/mame/machine/cuda.h b/src/mame/machine/cuda.h
index 8330e31e902..1859d06fdbc 100644
--- a/src/mame/machine/cuda.h
+++ b/src/mame/machine/cuda.h
@@ -103,6 +103,7 @@ public:
devcb_write_line write_reset, write_linechange, write_via_clock, write_via_data;
+ void cuda_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/dec_lk201.cpp b/src/mame/machine/dec_lk201.cpp
index 4523344533e..b2b1c9b5f6b 100644
--- a/src/mame/machine/dec_lk201.cpp
+++ b/src/mame/machine/dec_lk201.cpp
@@ -195,7 +195,7 @@ ROM_END
// ADDRESS_MAP
//-------------------------------------------------
-static ADDRESS_MAP_START( lk201_map, AS_PROGRAM, 8, lk201_device )
+ADDRESS_MAP_START(lk201_device::lk201_map)
AM_RANGE(0x0000, 0x0002) AM_READWRITE(ports_r, ports_w)
AM_RANGE(0x0004, 0x0006) AM_READWRITE(ddr_r, ddr_w)
AM_RANGE(0x000a, 0x000c) AM_READWRITE(spi_r, spi_w)
diff --git a/src/mame/machine/dec_lk201.h b/src/mame/machine/dec_lk201.h
index 1d1e8453c0d..51f1835b20a 100644
--- a/src/mame/machine/dec_lk201.h
+++ b/src/mame/machine/dec_lk201.h
@@ -62,6 +62,7 @@ public:
template<class _Object> static devcb_base &set_tx_handler(device_t &device, _Object wr) { return downcast<lk201_device &>(device).m_tx_handler.set_callback(wr); }
+ void lk201_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/machine/deco_irq.cpp b/src/mame/machine/deco_irq.cpp
index 93bca79922f..911857aebcf 100644
--- a/src/mame/machine/deco_irq.cpp
+++ b/src/mame/machine/deco_irq.cpp
@@ -140,7 +140,7 @@ TIMER_CALLBACK_MEMBER( deco_irq_device::scanline_callback )
// INTERFACE
//**************************************************************************
-DEVICE_ADDRESS_MAP_START(map, 8, deco_irq_device)
+ADDRESS_MAP_START(deco_irq_device::map)
AM_RANGE(0x0, 0x0) AM_WRITE(control_w)
AM_RANGE(0x1, 0x1) AM_READWRITE(scanline_r, scanline_w)
AM_RANGE(0x2, 0x2) AM_READWRITE(raster_irq_ack_r, vblank_irq_ack_w)
diff --git a/src/mame/machine/deco_irq.h b/src/mame/machine/deco_irq.h
index 69a319dba81..6ff77cff70e 100644
--- a/src/mame/machine/deco_irq.h
+++ b/src/mame/machine/deco_irq.h
@@ -75,7 +75,7 @@ public:
TIMER_CALLBACK_MEMBER(scanline_callback);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_WRITE8_MEMBER(control_w);
DECLARE_READ8_MEMBER(scanline_r);
diff --git a/src/mame/machine/decopincpu.cpp b/src/mame/machine/decopincpu.cpp
index 0a149dcf516..319ce2c65fc 100644
--- a/src/mame/machine/decopincpu.cpp
+++ b/src/mame/machine/decopincpu.cpp
@@ -21,7 +21,7 @@ DEFINE_DEVICE_TYPE(DECOCPU2, decocpu_type2_device, "decocpu2", "Data East Pin
DEFINE_DEVICE_TYPE(DECOCPU3, decocpu_type3_device, "decocpu3", "Data East Pinball CPU Board Type 3")
DEFINE_DEVICE_TYPE(DECOCPU3B, decocpu_type3b_device, "decocpu3b", "Data East Pinball CPU Board Type 3B")
-static ADDRESS_MAP_START( decocpu1_map, AS_PROGRAM, 8, decocpu_type1_device )
+ADDRESS_MAP_START(decocpu_type1_device::decocpu1_map)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
AM_RANGE(0x2200, 0x2200) AM_WRITE(solenoid2_w) // solenoids
@@ -33,7 +33,7 @@ static ADDRESS_MAP_START( decocpu1_map, AS_PROGRAM, 8, decocpu_type1_device )
//AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decocpu2_map, AS_PROGRAM, 8, decocpu_type2_device )
+ADDRESS_MAP_START(decocpu_type2_device::decocpu2_map)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x2100, 0x2103) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
AM_RANGE(0x2200, 0x2200) AM_WRITE(solenoid2_w) // solenoids
diff --git a/src/mame/machine/decopincpu.h b/src/mame/machine/decopincpu.h
index 1c9d7894fc0..9368cc14a8e 100644
--- a/src/mame/machine/decopincpu.h
+++ b/src/mame/machine/decopincpu.h
@@ -83,6 +83,7 @@ public:
static void static_set_cpuregion(device_t &device, const char *tag);
+ void decocpu1_map(address_map &map);
protected:
static constexpr device_timer_id TIMER_IRQ = 0;
@@ -141,6 +142,7 @@ class decocpu_type2_device : public decocpu_type1_device
public:
decocpu_type2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void decocpu2_map(address_map &map);
protected:
decocpu_type2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/mame/machine/egret.cpp b/src/mame/machine/egret.cpp
index 7bc2161beab..12538809c27 100644
--- a/src/mame/machine/egret.cpp
+++ b/src/mame/machine/egret.cpp
@@ -66,7 +66,7 @@ ROM_END
// ADDRESS_MAP
//-------------------------------------------------
-static ADDRESS_MAP_START( egret_map, AS_PROGRAM, 8, egret_device )
+ADDRESS_MAP_START(egret_device::egret_map)
AM_RANGE(0x0000, 0x0002) AM_READWRITE(ports_r, ports_w)
AM_RANGE(0x0004, 0x0006) AM_READWRITE(ddr_r, ddr_w)
AM_RANGE(0x0007, 0x0007) AM_READWRITE(pll_r, pll_w)
diff --git a/src/mame/machine/egret.h b/src/mame/machine/egret.h
index 80f5ecf74e0..767ed5be447 100644
--- a/src/mame/machine/egret.h
+++ b/src/mame/machine/egret.h
@@ -101,6 +101,7 @@ public:
devcb_write_line write_reset, write_linechange, write_via_clock, write_via_data;
+ void egret_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/fd1089.cpp b/src/mame/machine/fd1089.cpp
index 15938db5773..e7318a3de61 100644
--- a/src/mame/machine/fd1089.cpp
+++ b/src/mame/machine/fd1089.cpp
@@ -208,7 +208,7 @@ const fd1089_base_device::decrypt_parameters fd1089_base_device::s_data_params_a
{ 0xac, 1,6,3,5,0,7,4,2 },
};
-static ADDRESS_MAP_START( decrypted_opcodes_map, AS_OPCODES, 16, fd1094_device )
+ADDRESS_MAP_START(fd1089_base_device::decrypted_opcodes_map)
AM_RANGE(0x00000, 0xfffff) AM_ROM AM_SHARE(":fd1089_decrypted_opcodes")
ADDRESS_MAP_END
@@ -228,7 +228,7 @@ fd1089_base_device::fd1089_base_device(const machine_config &mconfig, device_typ
m_decrypted_opcodes(*this, ":fd1089_decrypted_opcodes")
{
// add the decrypted opcodes map
- set_addrmap(AS_OPCODES, ADDRESS_MAP_NAME(decrypted_opcodes_map));
+ set_addrmap(AS_OPCODES, address_map_constructor(FUNC(fd1089_base_device::decrypted_opcodes_map), this));
}
fd1089a_device::fd1089a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/mame/machine/fd1089.h b/src/mame/machine/fd1089.h
index 4fc70bfc40f..156f6452109 100644
--- a/src/mame/machine/fd1089.h
+++ b/src/mame/machine/fd1089.h
@@ -43,6 +43,8 @@ public:
// explicit decryption helpers
void decrypt(offs_t baseaddr, uint32_t size, offs_t regionoffs, uint16_t *opcodesptr, uint16_t *dataptr) { decrypt(baseaddr, size, &m_plaintext[regionoffs/2], opcodesptr, dataptr); }
+ void decrypted_opcodes_map(address_map &map);
+
protected:
// construction/destruction
fd1089_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/mame/machine/fd1094.cpp b/src/mame/machine/fd1094.cpp
index 20d33cec87a..590e582caf4 100644
--- a/src/mame/machine/fd1094.cpp
+++ b/src/mame/machine/fd1094.cpp
@@ -563,7 +563,7 @@ fd1094_device::fd1094_device(const machine_config &mconfig, const char *tag, dev
, m_key(*this, "key")
{
// add the decrypted opcodes map
-// m_address_map[AS_OPCODES] = ADDRESS_MAP_NAME(decrypted_opcodes_map);
+// m_address_map[AS_OPCODES] = address_map_constructor(FUNC(fd1094_device::decrypted_opcodes_map), this);
// create the initial masked opcode table
memset(m_masked_opcodes_lookup, 0, sizeof(m_masked_opcodes_lookup));
diff --git a/src/mame/machine/fd1094.h b/src/mame/machine/fd1094.h
index 41f4294da05..daa8583548a 100644
--- a/src/mame/machine/fd1094.h
+++ b/src/mame/machine/fd1094.h
@@ -89,6 +89,7 @@ public:
STATE_RTE = 0x300
};
+ void decrypted_opcodes_map(address_map &map);
protected:
required_memory_bank m_decrypted_opcodes_bank;
diff --git a/src/mame/machine/gaelco_ds5002fp.cpp b/src/mame/machine/gaelco_ds5002fp.cpp
index 0ab9746a516..cdbaf2fee63 100644
--- a/src/mame/machine/gaelco_ds5002fp.cpp
+++ b/src/mame/machine/gaelco_ds5002fp.cpp
@@ -9,20 +9,15 @@
DEFINE_DEVICE_TYPE(GAELCO_DS5002FP, gaelco_ds5002fp_device, "gaelco_ds5002fp", "Gaelco DS5002FP")
-namespace {
-
-ADDRESS_MAP_START( dallas_rom, AS_PROGRAM, 8, gaelco_ds5002fp_device )
+ADDRESS_MAP_START(gaelco_ds5002fp_device::dallas_rom)
AM_RANGE(0x00000, 0x07fff) AM_READONLY AM_SHARE("sram")
ADDRESS_MAP_END
-ADDRESS_MAP_START( dallas_ram, AS_IO, 8, gaelco_ds5002fp_device )
+ADDRESS_MAP_START(gaelco_ds5002fp_device::dallas_ram)
AM_RANGE(0x00000, 0x0ffff) AM_READWRITE(hostmem_r, hostmem_w)
AM_RANGE(0x10000, 0x17fff) AM_RAM AM_SHARE("sram") // yes, the games access it as data and use it for temporary storage!!
ADDRESS_MAP_END
-} // anonymous namespace
-
-
gaelco_ds5002fp_device::gaelco_ds5002fp_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock)
: device_t(mconfig, GAELCO_DS5002FP, tag, owner, clock)
, device_memory_interface(mconfig, *this)
diff --git a/src/mame/machine/gaelco_ds5002fp.h b/src/mame/machine/gaelco_ds5002fp.h
index 7c60060db1f..f5eaf91e375 100644
--- a/src/mame/machine/gaelco_ds5002fp.h
+++ b/src/mame/machine/gaelco_ds5002fp.h
@@ -18,6 +18,8 @@ public:
DECLARE_READ8_MEMBER(hostmem_r);
DECLARE_WRITE8_MEMBER(hostmem_w);
+ void dallas_ram(address_map &map);
+ void dallas_rom(address_map &map);
protected:
// device_t implementation
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/machine/hng64_net.cpp b/src/mame/machine/hng64_net.cpp
index c9e922f634d..3971f7b4918 100644
--- a/src/mame/machine/hng64_net.cpp
+++ b/src/mame/machine/hng64_net.cpp
@@ -106,11 +106,11 @@ WRITE8_MEMBER(hng64_state::hng64_comm_mmu_w)
}
}
-static ADDRESS_MAP_START( hng_comm_map, AS_PROGRAM, 8, hng64_state )
+ADDRESS_MAP_START(hng64_state::hng_comm_map)
AM_RANGE(0x0000,0xffff) AM_READWRITE(hng64_comm_space_r, hng64_comm_space_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( hng_comm_io_map, AS_IO, 8, hng64_state )
+ADDRESS_MAP_START(hng64_state::hng_comm_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
/* Reserved for the KL5C80 internal hardware */
AM_RANGE(0x00, 0x07) AM_READWRITE(hng64_comm_mmu_r,hng64_comm_mmu_w )
diff --git a/src/mame/machine/inder_sb.cpp b/src/mame/machine/inder_sb.cpp
index 7fd408c2944..499021e3eeb 100644
--- a/src/mame/machine/inder_sb.cpp
+++ b/src/mame/machine/inder_sb.cpp
@@ -66,7 +66,7 @@ static const z80_daisy_config daisy_chain[] =
};
-static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, inder_sb_device )
+ADDRESS_MAP_START(inder_sb_device::sound_map)
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0x0020, 0x0020) AM_SELECT(0x0006) AM_READ(vec_bankswitch_r)
AM_RANGE(0x4000, 0x7fff) AM_RAM
@@ -124,7 +124,7 @@ WRITE8_MEMBER(inder_sb_device::dac3_rombank_write)
}
-static ADDRESS_MAP_START( sound_io, AS_IO, 8, inder_sb_device )
+ADDRESS_MAP_START(inder_sb_device::sound_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac0", dac_byte_interface, write)
AM_RANGE(0x01, 0x01) AM_DEVWRITE("dac0vol", dac_byte_interface, write)
diff --git a/src/mame/machine/inder_sb.h b/src/mame/machine/inder_sb.h
index 742834ffebf..6b61da99032 100644
--- a/src/mame/machine/inder_sb.h
+++ b/src/mame/machine/inder_sb.h
@@ -42,6 +42,8 @@ public:
DECLARE_READ16_MEMBER(megaphx_0x050002_r);
DECLARE_WRITE16_MEMBER(megaphx_0x050000_w);
+ void sound_io(address_map &map);
+ void sound_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/machine/inder_vid.cpp b/src/mame/machine/inder_vid.cpp
index 8e665e9c250..5aa81ba6e5e 100644
--- a/src/mame/machine/inder_vid.cpp
+++ b/src/mame/machine/inder_vid.cpp
@@ -21,7 +21,7 @@ inder_vid_device::inder_vid_device(const machine_config &mconfig, const char *ta
{
}
-static ADDRESS_MAP_START( megaphx_tms_map, AS_PROGRAM, 16, inder_vid_device )
+ADDRESS_MAP_START(inder_vid_device::megaphx_tms_map)
AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("vram") // vram?
@@ -99,7 +99,7 @@ WRITE_LINE_MEMBER(inder_vid_device::m68k_gen_int)
}
-static ADDRESS_MAP_START( ramdac_map, 0, 8, inder_vid_device )
+ADDRESS_MAP_START(inder_vid_device::ramdac_map)
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb888_w)
ADDRESS_MAP_END
diff --git a/src/mame/machine/inder_vid.h b/src/mame/machine/inder_vid.h
index 982c75cb5b5..34d632eeb93 100644
--- a/src/mame/machine/inder_vid.h
+++ b/src/mame/machine/inder_vid.h
@@ -34,6 +34,8 @@ public:
m_bpp_mode = bpp;
}
+ void megaphx_tms_map(address_map &map);
+ void ramdac_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/machine/interpro_arbga.cpp b/src/mame/machine/interpro_arbga.cpp
index f900b80af73..8407b4db2b3 100644
--- a/src/mame/machine/interpro_arbga.cpp
+++ b/src/mame/machine/interpro_arbga.cpp
@@ -22,7 +22,7 @@
#if 0
// this might be for an earlier revision of the device
-DEVICE_ADDRESS_MAP_START(map, 32, interpro_arbga_device)
+ADDRESS_MAP_START(interpro_arbga_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE(sdepid_r, sdepid_w)
AM_RANGE(0x04, 0x07) AM_READWRITE(snapid_r, snapid_w)
AM_RANGE(0x08, 0x0b) AM_READWRITE(prilo_r, prilo_w)
@@ -38,7 +38,7 @@ ADDRESS_MAP_END
#endif
// derived from the FDM "dump_arb" command
-DEVICE_ADDRESS_MAP_START(map, 32, interpro_arbga_device)
+ADDRESS_MAP_START(interpro_arbga_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE(sdepid_r, sdepid_w)
AM_RANGE(0x04, 0x07) AM_READWRITE(arbsnap_r, arbsnap_w)
AM_RANGE(0x08, 0x0b) AM_READWRITE(fixprils_r, fixprils_w)
diff --git a/src/mame/machine/interpro_arbga.h b/src/mame/machine/interpro_arbga.h
index 749601c83fc..e93c7afc170 100644
--- a/src/mame/machine/interpro_arbga.h
+++ b/src/mame/machine/interpro_arbga.h
@@ -11,9 +11,9 @@ class interpro_arbga_device : public device_t
public:
interpro_arbga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 32);
+ virtual void map(address_map &map);
- DECLARE_READ32_MEMBER(sdepid_r) const { return m_sdepid; }
+ DECLARE_READ32_MEMBER(sdepid_r) { return m_sdepid; }
DECLARE_WRITE32_MEMBER(sdepid_w) { m_sdepid = data; }
enum arbsnap_mask
@@ -21,16 +21,16 @@ public:
ARBSNAP_GRANT = 0x0000000f,
ARBSNAP_HOGLOCK = 0x000000f0
};
- DECLARE_READ32_MEMBER(arbsnap_r) const { return m_arbsnap; }
+ DECLARE_READ32_MEMBER(arbsnap_r) { return m_arbsnap; }
DECLARE_WRITE32_MEMBER(arbsnap_w) { m_arbsnap = data; }
- DECLARE_READ32_MEMBER(fixprils_r) const { return m_fixprils; }
+ DECLARE_READ32_MEMBER(fixprils_r) { return m_fixprils; }
DECLARE_WRITE32_MEMBER(fixprils_w) { m_fixprils = data; }
- DECLARE_READ32_MEMBER(fixprims_r) const { return m_fixprims; }
+ DECLARE_READ32_MEMBER(fixprims_r) { return m_fixprims; }
DECLARE_WRITE32_MEMBER(fixprims_w) { m_fixprims = data; }
- DECLARE_READ32_MEMBER(sysdomls_r) const { return m_sysdomls; }
+ DECLARE_READ32_MEMBER(sysdomls_r) { return m_sysdomls; }
DECLARE_WRITE32_MEMBER(sysdomls_w) { m_sysdomls = data; }
- DECLARE_READ32_MEMBER(sysdomms_r) const { return m_sysdomms; }
+ DECLARE_READ32_MEMBER(sysdomms_r) { return m_sysdomms; }
DECLARE_WRITE32_MEMBER(sysdomms_w) { m_sysdomms = data; }
enum tctrl_mask
@@ -39,27 +39,27 @@ public:
TCTRL_ENNEM = 0x00000008,
TCTRL_ENHOG = 0x00000010
};
- DECLARE_READ32_MEMBER(tctrl_r) const { return m_tctrl; }
+ DECLARE_READ32_MEMBER(tctrl_r) { return m_tctrl; }
DECLARE_WRITE32_MEMBER(tctrl_w) { m_tctrl = data; }
- DECLARE_READ8_MEMBER(inem_r) const { return m_inem; }
+ DECLARE_READ8_MEMBER(inem_r) { return m_inem; }
DECLARE_WRITE8_MEMBER(inem_w) { m_inem = data; }
- DECLARE_READ8_MEMBER(enem_r) const { return m_enem; }
+ DECLARE_READ8_MEMBER(enem_r) { return m_enem; }
DECLARE_WRITE8_MEMBER(enem_w) { m_enem = data; }
- DECLARE_READ32_MEMBER(hog_r) const { return m_hog; }
+ DECLARE_READ32_MEMBER(hog_r) { return m_hog; }
DECLARE_WRITE32_MEMBER(hog_w) { m_hog = data; }
- DECLARE_READ32_MEMBER(lock_r) const { return m_lock; }
+ DECLARE_READ32_MEMBER(lock_r) { return m_lock; }
DECLARE_WRITE32_MEMBER(lock_w) { m_lock = data; }
- DECLARE_READ32_MEMBER(lockprs_r) const { return m_lockprs; }
+ DECLARE_READ32_MEMBER(lockprs_r) { return m_lockprs; }
DECLARE_WRITE32_MEMBER(lockprs_w) { m_lockprs = data; }
- DECLARE_READ32_MEMBER(hiblockls_r) const { return m_hiblockls; }
+ DECLARE_READ32_MEMBER(hiblockls_r) { return m_hiblockls; }
DECLARE_WRITE32_MEMBER(hiblockls_w) { m_hiblockls = data; }
- DECLARE_READ32_MEMBER(hiblockms_r) const { return m_hiblockms; }
+ DECLARE_READ32_MEMBER(hiblockms_r) { return m_hiblockms; }
DECLARE_WRITE32_MEMBER(hiblockms_w) { m_hiblockms = data; }
- DECLARE_READ32_MEMBER(arbrev_r) const { return m_arbrev; }
+ DECLARE_READ32_MEMBER(arbrev_r) { return m_arbrev; }
DECLARE_WRITE32_MEMBER(arbrev_w) { m_arbrev = data; }
protected:
diff --git a/src/mame/machine/interpro_ioga.cpp b/src/mame/machine/interpro_ioga.cpp
index 96f47ed7c20..05155582c26 100644
--- a/src/mame/machine/interpro_ioga.cpp
+++ b/src/mame/machine/interpro_ioga.cpp
@@ -99,7 +99,7 @@ const interpro_ioga_device::interrupt_data_t interpro_ioga_device::m_interrupt_d
{ INT_SOFT_HI, IRQ_SOFT15, IRQ_PENDING, "soft int 15", "soft" },
};
-DEVICE_ADDRESS_MAP_START(map, 32, interpro_ioga_device)
+ADDRESS_MAP_START(interpro_ioga_device::map)
AM_RANGE(0x0c, 0x1b) AM_READWRITE(dma_plotter_r, dma_plotter_w)
AM_RANGE(0x1c, 0x1f) AM_READWRITE(dma_plotter_eosl_r, dma_plotter_eosl_w)
@@ -133,15 +133,15 @@ DEVICE_ADDRESS_MAP_START(map, 32, interpro_ioga_device)
//c0, c4, c8 -ethernet address a,b,c?
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 32, turquoise_ioga_device)
- AM_INHERIT_FROM(interpro_ioga_device::map)
+ADDRESS_MAP_START(turquoise_ioga_device::map)
+ AM_IMPORT_FROM(interpro_ioga_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE(eth_base_r, eth_base_w)
AM_RANGE(0x04, 0x07) AM_READWRITE16(eth_control_r, eth_control_w, 0xffff)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 32, sapphire_ioga_device)
- AM_INHERIT_FROM(interpro_ioga_device::map)
+ADDRESS_MAP_START(sapphire_ioga_device::map)
+ AM_IMPORT_FROM(interpro_ioga_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE(eth_remap_r, eth_remap_w)
AM_RANGE(0x04, 0x07) AM_READWRITE(eth_mappg_r, eth_mappg_w)
@@ -914,7 +914,7 @@ READ32_MEMBER(interpro_ioga_device::error_businfo_r)
/*
* Timers
*/
-READ32_MEMBER(interpro_ioga_device::timer0_r) const
+READ32_MEMBER(interpro_ioga_device::timer0_r)
{
LOGMASKED(LOG_TIMERRD, "timer0_r data 0x%08x mask 0x%08x (%s)\n", m_timer0_count, mem_mask, machine().describe_context());
@@ -942,7 +942,7 @@ TIMER_CALLBACK_MEMBER(interpro_ioga_device::timer0)
set_int_line(INT_HARD_EX, IRQ_12, ASSERT_LINE); // FIXME: 60Hz timer on InterPro 2000
}
-READ32_MEMBER(interpro_ioga_device::timer1_r) const
+READ32_MEMBER(interpro_ioga_device::timer1_r)
{
u32 result = m_timer1_count & TIMER1_COUNT;
@@ -995,7 +995,7 @@ TIMER_CALLBACK_MEMBER(interpro_ioga_device::timer1)
}
}
-READ32_MEMBER(interpro_ioga_device::timer2_count_r) const
+READ32_MEMBER(interpro_ioga_device::timer2_count_r)
{
LOGMASKED(LOG_TIMERRD, "timer2_count_r data 0x%08x mask 0x%08x (%s)\n", m_timer2_count, mem_mask, machine().describe_context());
@@ -1009,7 +1009,7 @@ WRITE32_MEMBER(interpro_ioga_device::timer2_count_w)
LOGMASKED(LOG_TIMER2, "timer2_count_w data 0x%08x mask 0x%08x (%s)\n", data, mem_mask, machine().describe_context());
}
-READ32_MEMBER(interpro_ioga_device::timer2_value_r) const
+READ32_MEMBER(interpro_ioga_device::timer2_value_r)
{
LOGMASKED(LOG_TIMERRD, "timer2_value_r data 0x%08x mask 0x%08x (%s)\n", m_timer2_value, mem_mask, machine().describe_context());
@@ -1024,7 +1024,7 @@ WRITE32_MEMBER(interpro_ioga_device::timer2_value_w)
LOGMASKED(LOG_TIMER2, "timer2_value_w data 0x%08x mask 0x%08x (%s)\n", data, mem_mask, machine().describe_context());
}
-READ32_MEMBER(interpro_ioga_device::timer3_r) const
+READ32_MEMBER(interpro_ioga_device::timer3_r)
{
u32 result = m_timer3_count & TIMER3_COUNT;
@@ -1075,7 +1075,7 @@ TIMER_CALLBACK_MEMBER(interpro_ioga_device::timer3)
}
}
-READ32_MEMBER(interpro_ioga_device::prescaler_r) const
+READ32_MEMBER(interpro_ioga_device::prescaler_r)
{
// FIXME: prescaler only used with timer 1?
LOGMASKED(LOG_TIMERRD, "prescaler_r data 0x%08x mask 0x%08x (%s)\n", m_prescaler, mem_mask, machine().describe_context());
@@ -1242,7 +1242,7 @@ WRITE32_MEMBER(sapphire_ioga_device::eth_mappg_w)
m_eth_mappg = data & ~0xf;
}
-READ32_MEMBER(sapphire_ioga_device::eth_control_r) const
+READ32_MEMBER(sapphire_ioga_device::eth_control_r)
{
LOGMASKED(LOG_NETWORK, "eth: control_r 0x%08x (%s)\n", m_eth_control, machine().describe_context());
diff --git a/src/mame/machine/interpro_ioga.h b/src/mame/machine/interpro_ioga.h
index 88273eff95d..489753b6586 100644
--- a/src/mame/machine/interpro_ioga.h
+++ b/src/mame/machine/interpro_ioga.h
@@ -118,7 +118,7 @@ public:
static void static_set_memory(device_t &device, const char *const tag, const int spacenum);
- virtual DECLARE_ADDRESS_MAP(map, 32) = 0;
+ virtual void map(address_map &map) = 0;
// interrupt request lines
DECLARE_WRITE_LINE_MEMBER(ir0_w) { set_int_line(INT_HARD_EX, IRQ_SCSI, state); }
@@ -152,9 +152,9 @@ public:
IRQ_NEGPOL = 0x0800,
IRQ_ENABLE_INTERNAL = 0x1000
};
- DECLARE_READ16_MEMBER(icr_r) const { return m_hwicr[offset]; }
+ DECLARE_READ16_MEMBER(icr_r) { return m_hwicr[offset]; }
DECLARE_WRITE16_MEMBER(icr_w);
- DECLARE_READ16_MEMBER(icr18_r) const { return icr_r(space, 18, mem_mask); }
+ DECLARE_READ16_MEMBER(icr18_r) { return icr_r(space, 18, mem_mask); }
DECLARE_WRITE16_MEMBER(icr18_w) { icr_w(space, 18, data, mem_mask); }
enum nmictrl_mask
@@ -167,12 +167,12 @@ public:
NMI_IE = NMI_ENABLE1 | NMI_ENABLE2
};
- DECLARE_READ8_MEMBER(nmictrl_r) const { return m_nmictrl; }
+ DECLARE_READ8_MEMBER(nmictrl_r) { return m_nmictrl; }
DECLARE_WRITE8_MEMBER(nmictrl_w);
- DECLARE_READ8_MEMBER(softint_r) const { return m_softint; }
+ DECLARE_READ8_MEMBER(softint_r) { return m_softint; }
DECLARE_WRITE8_MEMBER(softint_w);
- DECLARE_READ16_MEMBER(softint_vector_r) const { return m_swicr[offset]; }
+ DECLARE_READ16_MEMBER(softint_vector_r) { return m_swicr[offset]; }
DECLARE_WRITE16_MEMBER(softint_vector_w);
// dma request lines
@@ -201,29 +201,29 @@ public:
DMA_CTRL_WMASK = 0xfd000e00 // writable fields
};
- DECLARE_READ32_MEMBER(dma_plotter_r) const { return dma_r(space, offset, mem_mask, DMA_PLOTTER); }
+ DECLARE_READ32_MEMBER(dma_plotter_r) { return dma_r(space, offset, mem_mask, DMA_PLOTTER); }
DECLARE_WRITE32_MEMBER(dma_plotter_w) { dma_w(space, offset, data, mem_mask, DMA_PLOTTER); }
- DECLARE_READ32_MEMBER(dma_scsi_r) const { return dma_r(space, offset, mem_mask, DMA_SCSI); }
+ DECLARE_READ32_MEMBER(dma_scsi_r) { return dma_r(space, offset, mem_mask, DMA_SCSI); }
DECLARE_WRITE32_MEMBER(dma_scsi_w) { dma_w(space, offset, data, mem_mask, DMA_SCSI); }
- DECLARE_READ32_MEMBER(dma_floppy_r) const { return dma_r(space, offset, mem_mask, DMA_FLOPPY); }
+ DECLARE_READ32_MEMBER(dma_floppy_r) { return dma_r(space, offset, mem_mask, DMA_FLOPPY); }
DECLARE_WRITE32_MEMBER(dma_floppy_w) { dma_w(space, offset, data, mem_mask, DMA_FLOPPY); }
- DECLARE_READ32_MEMBER(serial_dma0_addr_r) const { return serial_dma_addr_r(space, offset, mem_mask, 0); }
+ DECLARE_READ32_MEMBER(serial_dma0_addr_r) { return serial_dma_addr_r(space, offset, mem_mask, 0); }
DECLARE_WRITE32_MEMBER(serial_dma0_addr_w) { serial_dma_addr_w(space, offset, data, mem_mask, 0); }
- DECLARE_READ32_MEMBER(serial_dma0_ctrl_r) const { return serial_dma_ctrl_r(space, offset, mem_mask, 0); }
+ DECLARE_READ32_MEMBER(serial_dma0_ctrl_r) { return serial_dma_ctrl_r(space, offset, mem_mask, 0); }
DECLARE_WRITE32_MEMBER(serial_dma0_ctrl_w) { serial_dma_ctrl_w(space, offset, data, mem_mask, 0); }
- DECLARE_READ32_MEMBER(serial_dma1_addr_r) const { return serial_dma_addr_r(space, offset, mem_mask, 1); }
+ DECLARE_READ32_MEMBER(serial_dma1_addr_r) { return serial_dma_addr_r(space, offset, mem_mask, 1); }
DECLARE_WRITE32_MEMBER(serial_dma1_addr_w) { serial_dma_addr_w(space, offset, data, mem_mask, 1); }
- DECLARE_READ32_MEMBER(serial_dma1_ctrl_r) const { return serial_dma_ctrl_r(space, offset, mem_mask, 1); }
+ DECLARE_READ32_MEMBER(serial_dma1_ctrl_r) { return serial_dma_ctrl_r(space, offset, mem_mask, 1); }
DECLARE_WRITE32_MEMBER(serial_dma1_ctrl_w) { serial_dma_ctrl_w(space, offset, data, mem_mask, 1); }
- DECLARE_READ32_MEMBER(serial_dma2_addr_r) const { return serial_dma_addr_r(space, offset, mem_mask, 2); }
+ DECLARE_READ32_MEMBER(serial_dma2_addr_r) { return serial_dma_addr_r(space, offset, mem_mask, 2); }
DECLARE_WRITE32_MEMBER(serial_dma2_addr_w) { serial_dma_addr_w(space, offset, data, mem_mask, 2); }
- DECLARE_READ32_MEMBER(serial_dma2_ctrl_r) const { return serial_dma_ctrl_r(space, offset, mem_mask, 2); }
+ DECLARE_READ32_MEMBER(serial_dma2_ctrl_r) { return serial_dma_ctrl_r(space, offset, mem_mask, 2); }
DECLARE_WRITE32_MEMBER(serial_dma2_ctrl_w) { serial_dma_ctrl_w(space, offset, data, mem_mask, 2); }
- DECLARE_READ32_MEMBER(dma_plotter_eosl_r) const { return m_dma_plotter_eosl; }
+ DECLARE_READ32_MEMBER(dma_plotter_eosl_r) { return m_dma_plotter_eosl; }
DECLARE_WRITE32_MEMBER(dma_plotter_eosl_w) { m_dma_plotter_eosl = data ^ 0xffff0000; }
// bus arbitration and control
@@ -239,7 +239,7 @@ public:
ARBCTL_BGR_ETHB = 0x0080,
ARBCTL_BGR_ETHA = 0x0100
};
- DECLARE_READ16_MEMBER(arbctl_r) const { return m_arbctl; }
+ DECLARE_READ16_MEMBER(arbctl_r) { return m_arbctl; }
DECLARE_WRITE16_MEMBER(arbctl_w);
enum error_businfo_mask
@@ -260,14 +260,14 @@ public:
BINFO_BG_SRMASTER = 0x0c00
};
DECLARE_READ32_MEMBER(error_businfo_r);
- DECLARE_READ32_MEMBER(error_address_r) const { return m_error_address; }
- DECLARE_READ32_MEMBER(bus_timeout_r) const { return m_bus_timeout; }
+ DECLARE_READ32_MEMBER(error_address_r) { return m_error_address; }
+ DECLARE_READ32_MEMBER(bus_timeout_r) { return m_bus_timeout; }
DECLARE_WRITE32_MEMBER(bus_timeout_w) { m_bus_timeout = data; }
DECLARE_WRITE32_MEMBER(bus_error) { m_error_address = data; m_error_businfo = offset; }
// timers
- DECLARE_READ32_MEMBER(timer0_r) const;
+ DECLARE_READ32_MEMBER(timer0_r);
DECLARE_WRITE32_MEMBER(timer0_w);
enum timer1_mask
@@ -276,12 +276,12 @@ public:
TIMER1_START = 0x00010000,
TIMER1_EXPIRED = 0x00020000
};
- DECLARE_READ32_MEMBER(timer1_r) const;
+ DECLARE_READ32_MEMBER(timer1_r);
DECLARE_WRITE32_MEMBER(timer1_w);
- DECLARE_READ32_MEMBER(timer2_count_r) const;
+ DECLARE_READ32_MEMBER(timer2_count_r);
DECLARE_WRITE32_MEMBER(timer2_count_w);
- DECLARE_READ32_MEMBER(timer2_value_r) const;
+ DECLARE_READ32_MEMBER(timer2_value_r);
DECLARE_WRITE32_MEMBER(timer2_value_w);
enum timer3_mask
@@ -290,10 +290,10 @@ public:
TIMER3_START = 0x40000000,
TIMER3_EXPIRED = 0x80000000
};
- DECLARE_READ32_MEMBER(timer3_r) const;
+ DECLARE_READ32_MEMBER(timer3_r);
DECLARE_WRITE32_MEMBER(timer3_w);
- DECLARE_READ32_MEMBER(prescaler_r) const;
+ DECLARE_READ32_MEMBER(prescaler_r);
DECLARE_WRITE32_MEMBER(prescaler_w);
// mouse
@@ -465,7 +465,7 @@ class turquoise_ioga_device : public interpro_ioga_device
public:
turquoise_ioga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
+ virtual void map(address_map &map) override;
DECLARE_WRITE16_MEMBER(eth_w);
DECLARE_READ16_MEMBER(eth_r);
@@ -477,7 +477,7 @@ protected:
{
ETH_BASE_MASK = 0xffe00000
};
- DECLARE_READ32_MEMBER(eth_base_r) const { return m_eth_base; }
+ DECLARE_READ32_MEMBER(eth_base_r) { return m_eth_base; }
DECLARE_WRITE32_MEMBER(eth_base_w);
enum eth_control_mask
@@ -494,7 +494,7 @@ protected:
//ETH_MASK = 0x4ff2 // channel attention and error bits not persistent
};
- DECLARE_READ16_MEMBER(eth_control_r) const { return m_eth_control; }
+ DECLARE_READ16_MEMBER(eth_control_r) { return m_eth_control; }
DECLARE_WRITE16_MEMBER(eth_control_w);
private:
@@ -507,7 +507,7 @@ class sapphire_ioga_device : public interpro_ioga_device
public:
sapphire_ioga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
+ virtual void map(address_map &map) override;
DECLARE_WRITE32_MEMBER(eth_w);
DECLARE_READ32_MEMBER(eth_r);
@@ -524,7 +524,7 @@ protected:
ETH_CHA_RTAG = 0x00000e00,
ETH_REMAP_ADDR = 0xfffff000
};
- DECLARE_READ32_MEMBER(eth_remap_r) const { return m_eth_remap; }
+ DECLARE_READ32_MEMBER(eth_remap_r) { return m_eth_remap; }
DECLARE_WRITE32_MEMBER(eth_remap_w);
enum eth_mappg_mask
@@ -536,7 +536,7 @@ protected:
ETH_CHB_RTAG = 0x00000e00,
ETH_MAPPG = 0xfffff000
};
- DECLARE_READ32_MEMBER(eth_mappg_r) const { return m_eth_mappg; }
+ DECLARE_READ32_MEMBER(eth_mappg_r) { return m_eth_mappg; }
DECLARE_WRITE32_MEMBER(eth_mappg_w);
enum eth_control_mask
@@ -553,7 +553,7 @@ protected:
ETH_MASK = 0x00004ff2 // channel attention and error bits not persistent
};
- DECLARE_READ32_MEMBER(eth_control_r) const;
+ DECLARE_READ32_MEMBER(eth_control_r);
DECLARE_WRITE32_MEMBER(eth_control_w);
private:
diff --git a/src/mame/machine/interpro_mcga.cpp b/src/mame/machine/interpro_mcga.cpp
index 5e61a9ed31d..5c5667f4703 100644
--- a/src/mame/machine/interpro_mcga.cpp
+++ b/src/mame/machine/interpro_mcga.cpp
@@ -21,7 +21,7 @@
#define VERBOSE 0
#include "logmacro.h"
-DEVICE_ADDRESS_MAP_START(map, 32, interpro_mcga_device)
+ADDRESS_MAP_START(interpro_mcga_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE16(reg00_r, reg00_w, 0xffff)
AM_RANGE(0x08, 0x0b) AM_READWRITE16(control_r, control_w, 0xffff)
AM_RANGE(0x10, 0x13) AM_READWRITE16(error_r, error_w, 0xffff)
@@ -32,7 +32,7 @@ DEVICE_ADDRESS_MAP_START(map, 32, interpro_mcga_device)
AM_RANGE(0x38, 0x3b) AM_READWRITE16(memsize_r, memsize_w, 0xffff)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map, 32, interpro_fmcc_device)
+ADDRESS_MAP_START(interpro_fmcc_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE16(reg00_r, reg00_w, 0xffff)
AM_RANGE(0x08, 0x0b) AM_READWRITE16(control_r, control_w, 0xffff)
AM_RANGE(0x10, 0x13) AM_READWRITE16(error_r, error_w, 0xffff)
diff --git a/src/mame/machine/interpro_mcga.h b/src/mame/machine/interpro_mcga.h
index e415df36f7d..e510ff908be 100644
--- a/src/mame/machine/interpro_mcga.h
+++ b/src/mame/machine/interpro_mcga.h
@@ -11,9 +11,9 @@ class interpro_mcga_device : public device_t
public:
interpro_mcga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 32);
+ virtual void map(address_map &map);
- DECLARE_READ16_MEMBER(reg00_r) const { return m_reg[0]; }
+ DECLARE_READ16_MEMBER(reg00_r) { return m_reg[0]; }
DECLARE_WRITE16_MEMBER(reg00_w) { m_reg[0] = data; }
enum control_mask
@@ -29,7 +29,7 @@ public:
CONTROL_MASK = 0x871f
};
- DECLARE_READ16_MEMBER(control_r) const { return m_control; }
+ DECLARE_READ16_MEMBER(control_r) { return m_control; }
virtual DECLARE_WRITE16_MEMBER(control_w);
enum error_mask
@@ -40,22 +40,22 @@ public:
ERROR_ADDR = 0x1c00,
ERROR_VALID = 0x8000
};
- DECLARE_READ16_MEMBER(error_r) const { return m_error; }
+ DECLARE_READ16_MEMBER(error_r) { return m_error; }
DECLARE_WRITE16_MEMBER(error_w) { m_error = data; }
- DECLARE_READ8_MEMBER(frcrd_r) const { return m_frcrd; }
+ DECLARE_READ8_MEMBER(frcrd_r) { return m_frcrd; }
DECLARE_WRITE8_MEMBER(frcrd_w) { m_frcrd = data; }
- DECLARE_READ8_MEMBER(cbsub_r) const { return m_cbsub; }
+ DECLARE_READ8_MEMBER(cbsub_r) { return m_cbsub; }
DECLARE_WRITE8_MEMBER(cbsub_w) { m_cbsub = data; }
- DECLARE_READ16_MEMBER(reg28_r) const { return m_reg[1]; }
+ DECLARE_READ16_MEMBER(reg28_r) { return m_reg[1]; }
DECLARE_WRITE16_MEMBER(reg28_w) { m_reg[1] = data; }
- DECLARE_READ16_MEMBER(reg30_r) const { return m_reg[2]; }
+ DECLARE_READ16_MEMBER(reg30_r) { return m_reg[2]; }
DECLARE_WRITE16_MEMBER(reg30_w) { m_reg[2] = data; }
enum memsize_mask
{
MEMSIZE_ADDR = 0x007f
};
- DECLARE_READ16_MEMBER(memsize_r) const { return m_memsize; }
+ DECLARE_READ16_MEMBER(memsize_r) { return m_memsize; }
DECLARE_WRITE16_MEMBER(memsize_w) { m_memsize = data; }
protected:
@@ -78,7 +78,7 @@ class interpro_fmcc_device : public interpro_mcga_device
public:
interpro_fmcc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 32) override;
+ virtual void map(address_map &map) override;
enum control_mask
{
@@ -112,7 +112,7 @@ public:
ERROR_CONTROL_CYCLE = 0x003f,
ERROR_CONTROL_TAG = 0x01c0
};
- DECLARE_READ16_MEMBER(error_control_r) const { return m_error_control; }
+ DECLARE_READ16_MEMBER(error_control_r) { return m_error_control; }
DECLARE_WRITE16_MEMBER(error_control_w) { m_error_control = data; }
private:
diff --git a/src/mame/machine/interpro_sga.cpp b/src/mame/machine/interpro_sga.cpp
index cba3e1be13f..bc6d2642b31 100644
--- a/src/mame/machine/interpro_sga.cpp
+++ b/src/mame/machine/interpro_sga.cpp
@@ -20,7 +20,7 @@
#define VERBOSE 0
#include "logmacro.h"
-DEVICE_ADDRESS_MAP_START(map, 32, interpro_sga_device)
+ADDRESS_MAP_START(interpro_sga_device::map)
AM_RANGE(0x00, 0x03) AM_READWRITE(gcsr_r, gcsr_w)
AM_RANGE(0x04, 0x07) AM_READWRITE(ipoll_r, ipoll_w)
AM_RANGE(0x08, 0x0b) AM_READWRITE(imask_r, imask_w)
diff --git a/src/mame/machine/interpro_sga.h b/src/mame/machine/interpro_sga.h
index b0754f5e638..691859aceea 100644
--- a/src/mame/machine/interpro_sga.h
+++ b/src/mame/machine/interpro_sga.h
@@ -16,9 +16,9 @@ public:
template<class _Object> static devcb_base &static_set_out_berr_callback(device_t &device, _Object object) { return downcast<interpro_sga_device &>(device).out_berr_func.set_callback(object); }
- virtual DECLARE_ADDRESS_MAP(map, 32);
+ virtual void map(address_map &map);
- DECLARE_READ32_MEMBER(gcsr_r) const { return m_gcsr; }
+ DECLARE_READ32_MEMBER(gcsr_r) { return m_gcsr; }
DECLARE_WRITE32_MEMBER(gcsr_w) { m_gcsr = data; }
enum ipoll_mask
{
@@ -31,7 +31,7 @@ public:
IPOLL_INTBERR = 0x00010000,
IPOLL_INTMMBE = 0x00020000
};
- DECLARE_READ32_MEMBER(ipoll_r) const { return m_ipoll; }
+ DECLARE_READ32_MEMBER(ipoll_r) { return m_ipoll; }
DECLARE_WRITE32_MEMBER(ipoll_w) { m_ipoll = data; }
enum imask_mask
@@ -44,11 +44,11 @@ public:
IMASK_INTBERR = 0x00010000,
IMASK_INTMMBE = 0x00020000
};
- DECLARE_READ32_MEMBER(imask_r) const { return m_imask; }
+ DECLARE_READ32_MEMBER(imask_r) { return m_imask; }
DECLARE_WRITE32_MEMBER(imask_w) { m_imask = data; }
- DECLARE_READ32_MEMBER(range_base_r) const { return m_range_base; }
+ DECLARE_READ32_MEMBER(range_base_r) { return m_range_base; }
DECLARE_WRITE32_MEMBER(range_base_w) { m_range_base = data; }
- DECLARE_READ32_MEMBER(range_end_r) const { return m_range_end; }
+ DECLARE_READ32_MEMBER(range_end_r) { return m_range_end; }
DECLARE_WRITE32_MEMBER(range_end_w) { m_range_end = data; }
enum cttag_mask
@@ -58,84 +58,84 @@ public:
CTTAG_MAXBCLK = 0x0003fe00,
CTTAG_MAXRETRY = 0x3ffc0000
};
- DECLARE_READ32_MEMBER(cttag_r) const { return m_cttag; }
+ DECLARE_READ32_MEMBER(cttag_r) { return m_cttag; }
DECLARE_WRITE32_MEMBER(cttag_w) { m_cttag = data; }
- DECLARE_READ32_MEMBER(address_r) const { return m_address; }
+ DECLARE_READ32_MEMBER(address_r) { return m_address; }
DECLARE_WRITE32_MEMBER(address_w) { m_address = data; }
enum dmacsr_mask
{
DMACSR_CH1ENABLE = 0x00000080
};
- DECLARE_READ32_MEMBER(dmacsr_r) const { return m_dmacsr; }
+ DECLARE_READ32_MEMBER(dmacsr_r) { return m_dmacsr; }
DECLARE_WRITE32_MEMBER(dmacsr_w) { m_dmacsr = data; }
enum edmacsr_mask
{
EDMACSR_CH1RDONLY = 0x00000010
};
- DECLARE_READ32_MEMBER(edmacsr_r) const { return m_edmacsr; }
+ DECLARE_READ32_MEMBER(edmacsr_r) { return m_edmacsr; }
DECLARE_WRITE32_MEMBER(edmacsr_w) { m_edmacsr = data; }
- DECLARE_READ32_MEMBER(reg6_range_r) const { return m_reg6_range; }
+ DECLARE_READ32_MEMBER(reg6_range_r) { return m_reg6_range; }
DECLARE_WRITE32_MEMBER(reg6_range_w) { m_reg6_range = data; }
- DECLARE_READ32_MEMBER(ddpta0_r) const { return m_ddpta0; }
+ DECLARE_READ32_MEMBER(ddpta0_r) { return m_ddpta0; }
DECLARE_WRITE32_MEMBER(ddpta0_w) { m_ddpta0 = data; }
- DECLARE_READ32_MEMBER(ddpad0_r) const { return m_ddpad0; }
+ DECLARE_READ32_MEMBER(ddpad0_r) { return m_ddpad0; }
DECLARE_WRITE32_MEMBER(ddpad0_w) { m_ddpad0 = data; }
- DECLARE_READ32_MEMBER(ddoff0_r) const { return m_ddoff0; }
+ DECLARE_READ32_MEMBER(ddoff0_r) { return m_ddoff0; }
DECLARE_WRITE32_MEMBER(ddoff0_w) { m_ddoff0 = data; }
- DECLARE_READ32_MEMBER(ddtc0_r) const { return m_ddtc0; }
+ DECLARE_READ32_MEMBER(ddtc0_r) { return m_ddtc0; }
DECLARE_WRITE32_MEMBER(ddtc0_w) { m_ddtc0 = data; }
- DECLARE_READ32_MEMBER(dspta0_r) const { return m_dspta0; }
+ DECLARE_READ32_MEMBER(dspta0_r) { return m_dspta0; }
DECLARE_WRITE32_MEMBER(dspta0_w) { m_dspta0 = data; }
- DECLARE_READ32_MEMBER(dspad0_r) const { return m_dspad0; }
+ DECLARE_READ32_MEMBER(dspad0_r) { return m_dspad0; }
DECLARE_WRITE32_MEMBER(dspad0_w) { m_dspad0 = data; }
- DECLARE_READ32_MEMBER(dsoff0_r) const { return m_dsoff0; }
+ DECLARE_READ32_MEMBER(dsoff0_r) { return m_dsoff0; }
DECLARE_WRITE32_MEMBER(dsoff0_w) { m_dsoff0 = data; }
- DECLARE_READ32_MEMBER(dstc0_r) const { return m_dstc0; }
+ DECLARE_READ32_MEMBER(dstc0_r) { return m_dstc0; }
DECLARE_WRITE32_MEMBER(dstc0_w) { m_dstc0 = data; }
- DECLARE_READ32_MEMBER(dspad1_r) const { return m_dspad1; }
+ DECLARE_READ32_MEMBER(dspad1_r) { return m_dspad1; }
DECLARE_WRITE32_MEMBER(dspad1_w) { m_dspad1 = data; }
- DECLARE_READ32_MEMBER(dsoff1_r) const { return m_dsoff1; }
+ DECLARE_READ32_MEMBER(dsoff1_r) { return m_dsoff1; }
DECLARE_WRITE32_MEMBER(dsoff1_w) { m_dsoff1 = data; }
- DECLARE_READ32_MEMBER(dstc1_r) const { return m_dstc1; }
+ DECLARE_READ32_MEMBER(dstc1_r) { return m_dstc1; }
DECLARE_WRITE32_MEMBER(dstc1_w) { m_dstc1 = data; }
- DECLARE_READ32_MEMBER(ddpad1_r) const { return m_ddpad1; }
+ DECLARE_READ32_MEMBER(ddpad1_r) { return m_ddpad1; }
DECLARE_WRITE32_MEMBER(ddpad1_w) { m_ddpad1 = data; }
- DECLARE_READ32_MEMBER(ddoff1_r) const { return m_ddoff1; }
+ DECLARE_READ32_MEMBER(ddoff1_r) { return m_ddoff1; }
DECLARE_WRITE32_MEMBER(ddoff1_w) { m_ddoff1 = data; }
- DECLARE_READ32_MEMBER(ddtc1_r) const { return m_ddtc1; }
+ DECLARE_READ32_MEMBER(ddtc1_r) { return m_ddtc1; }
DECLARE_WRITE32_MEMBER(ddtc1_w);
- DECLARE_READ32_MEMBER(ddpta2_r) const { return m_ddpta2; }
+ DECLARE_READ32_MEMBER(ddpta2_r) { return m_ddpta2; }
DECLARE_WRITE32_MEMBER(ddpta2_w) { m_ddpta2 = data; }
- DECLARE_READ32_MEMBER(ddpad2_r) const { return m_ddpad2; }
+ DECLARE_READ32_MEMBER(ddpad2_r) { return m_ddpad2; }
DECLARE_WRITE32_MEMBER(ddpad2_w) { m_ddpad2 = data; }
- DECLARE_READ32_MEMBER(ddoff2_r) const { return m_ddoff2; }
+ DECLARE_READ32_MEMBER(ddoff2_r) { return m_ddoff2; }
DECLARE_WRITE32_MEMBER(ddoff2_w) { m_ddoff2 = data; }
- DECLARE_READ32_MEMBER(ddtc2_r) const { return m_ddtc2; }
+ DECLARE_READ32_MEMBER(ddtc2_r) { return m_ddtc2; }
DECLARE_WRITE32_MEMBER(ddtc2_w) { m_ddtc2 = data; }
- DECLARE_READ32_MEMBER(dspta2_r) const { return m_dspta2; }
+ DECLARE_READ32_MEMBER(dspta2_r) { return m_dspta2; }
DECLARE_WRITE32_MEMBER(dspta2_w) { m_dspta2 = data; }
- DECLARE_READ32_MEMBER(dspad2_r) const { return m_dspad2; }
+ DECLARE_READ32_MEMBER(dspad2_r) { return m_dspad2; }
DECLARE_WRITE32_MEMBER(dspad2_w) { m_dspad2 = data; }
- DECLARE_READ32_MEMBER(dsoff2_r) const { return m_dsoff2; }
+ DECLARE_READ32_MEMBER(dsoff2_r) { return m_dsoff2; }
DECLARE_WRITE32_MEMBER(dsoff2_w) { m_dsoff2 = data; }
- DECLARE_READ32_MEMBER(dstc2_r) const { return m_dstc2; }
+ DECLARE_READ32_MEMBER(dstc2_r) { return m_dstc2; }
DECLARE_WRITE32_MEMBER(dstc2_w) { m_dstc2 = data; }
- DECLARE_READ32_MEMBER(ddrd2_r) const { return m_ddrd2; }
+ DECLARE_READ32_MEMBER(ddrd2_r) { return m_ddrd2; }
DECLARE_WRITE32_MEMBER(ddrd2_w) { m_ddrd2 = data; }
- DECLARE_READ32_MEMBER(dsrd2_r) const { return m_dsrd2; }
+ DECLARE_READ32_MEMBER(dsrd2_r) { return m_dsrd2; }
DECLARE_WRITE32_MEMBER(dsrd2_w) { m_dsrd2 = data; }
- DECLARE_READ32_MEMBER(dcksum0_r) const { return m_dcksum0; }
+ DECLARE_READ32_MEMBER(dcksum0_r) { return m_dcksum0; }
DECLARE_WRITE32_MEMBER(dcksum0_w) { m_dcksum0 = data; }
- DECLARE_READ32_MEMBER(dcksum1_r) const { return m_dcksum1; }
+ DECLARE_READ32_MEMBER(dcksum1_r) { return m_dcksum1; }
DECLARE_WRITE32_MEMBER(dcksum1_w) { m_dcksum1 = data; }
protected:
diff --git a/src/mame/machine/isbc_208.cpp b/src/mame/machine/isbc_208.cpp
index e2b11f1851b..1040870b01c 100644
--- a/src/mame/machine/isbc_208.cpp
+++ b/src/mame/machine/isbc_208.cpp
@@ -44,7 +44,7 @@ MACHINE_CONFIG_START(isbc_208_device::device_add_mconfig)
MCFG_FLOPPY_DRIVE_ADD("fdc:1", isbc_208_floppies, "525dd", isbc_208_device::floppy_formats)
MACHINE_CONFIG_END
-DEVICE_ADDRESS_MAP_START( map, 8, isbc_208_device )
+ADDRESS_MAP_START(isbc_208_device::map)
AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE("dmac", am9517a_device, read, write)
AM_RANGE(0x10, 0x11) AM_DEVICE("fdc", i8272a_device, map)
AM_RANGE(0x12, 0x15) AM_READWRITE(stat_r, aux_w)
diff --git a/src/mame/machine/isbc_208.h b/src/mame/machine/isbc_208.h
index 04ff15df4fb..111a88a6289 100644
--- a/src/mame/machine/isbc_208.h
+++ b/src/mame/machine/isbc_208.h
@@ -14,7 +14,7 @@ class isbc_208_device : public device_t
public:
isbc_208_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(stat_r);
DECLARE_WRITE8_MEMBER(aux_w);
diff --git a/src/mame/machine/isbc_215g.cpp b/src/mame/machine/isbc_215g.cpp
index 05a80b0f4de..e7bc9b3971c 100644
--- a/src/mame/machine/isbc_215g.cpp
+++ b/src/mame/machine/isbc_215g.cpp
@@ -316,11 +316,11 @@ WRITE16_MEMBER(isbc_215g_device::mem_w)
m_maincpu_mem->write_word_unaligned(offset*2, data, mem_mask);
}
-static ADDRESS_MAP_START(isbc_215g_mem, AS_PROGRAM, 16, isbc_215g_device)
+ADDRESS_MAP_START(isbc_215g_device::isbc_215g_mem)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(mem_r, mem_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(isbc_215g_io, AS_IO, 16, isbc_215g_device)
+ADDRESS_MAP_START(isbc_215g_device::isbc_215g_io)
AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("i8089", 0)
AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x3800) AM_RAM
AM_RANGE(0x8000, 0x8039) AM_MIRROR(0x3fc0) AM_READWRITE(io_r, io_w)
diff --git a/src/mame/machine/isbc_215g.h b/src/mame/machine/isbc_215g.h
index d22d9f36cc5..6984cd6d2a6 100644
--- a/src/mame/machine/isbc_215g.h
+++ b/src/mame/machine/isbc_215g.h
@@ -25,6 +25,8 @@ public:
static void static_set_maincpu_tag(device_t &device, const char *maincpu_tag) { downcast<isbc_215g_device &>(device).m_maincpu_tag = maincpu_tag; }
template<class _Object> static devcb_base &static_set_irq_callback(device_t &device, _Object object) { return downcast<isbc_215g_device &>(device).m_out_irq_func.set_callback(object); }
+ void isbc_215g_io(address_map &map);
+ void isbc_215g_mem(address_map &map);
protected:
virtual void device_start() override;
virtual void device_reset() override;
diff --git a/src/mame/machine/iteagle_fpga.cpp b/src/mame/machine/iteagle_fpga.cpp
index b36978129a8..cf00c7e5156 100644
--- a/src/mame/machine/iteagle_fpga.cpp
+++ b/src/mame/machine/iteagle_fpga.cpp
@@ -17,15 +17,15 @@
DEFINE_DEVICE_TYPE(ITEAGLE_FPGA, iteagle_fpga_device, "iteagle_fpga", "ITEagle FPGA")
-DEVICE_ADDRESS_MAP_START(fpga_map, 32, iteagle_fpga_device)
+ADDRESS_MAP_START(iteagle_fpga_device::fpga_map)
AM_RANGE(0x000, 0x01f) AM_READWRITE(fpga_r, fpga_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(rtc_map, 32, iteagle_fpga_device)
+ADDRESS_MAP_START(iteagle_fpga_device::rtc_map)
AM_RANGE(0x000, 0x7ff) AM_READWRITE(rtc_r, rtc_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(ram_map, 32, iteagle_fpga_device)
+ADDRESS_MAP_START(iteagle_fpga_device::ram_map)
AM_RANGE(0x00000, 0x40) AM_READWRITE(e1_nvram_r, e1_nvram_w)
AM_RANGE(0x10000, 0x1ffff) AM_READWRITE(e1_ram_r, e1_ram_w)
ADDRESS_MAP_END
@@ -643,7 +643,7 @@ WRITE32_MEMBER( iteagle_fpga_device::e1_ram_w )
DEFINE_DEVICE_TYPE(ITEAGLE_EEPROM, iteagle_eeprom_device, "iteagle_eeprom", "ITEagle EEPROM AT93C46")
-DEVICE_ADDRESS_MAP_START(eeprom_map, 32, iteagle_eeprom_device)
+ADDRESS_MAP_START(iteagle_eeprom_device::eeprom_map)
AM_RANGE(0x0000, 0x000F) AM_READWRITE(eeprom_r, eeprom_w)
ADDRESS_MAP_END
@@ -767,7 +767,7 @@ MACHINE_CONFIG_END
DEFINE_DEVICE_TYPE(ITEAGLE_PERIPH, iteagle_periph_device, "iteagle_periph", "ITEagle Peripheral Controller")
-DEVICE_ADDRESS_MAP_START(ctrl_map, 32, iteagle_periph_device)
+ADDRESS_MAP_START(iteagle_periph_device::ctrl_map)
AM_RANGE(0x000, 0x0cf) AM_READWRITE(ctrl_r, ctrl_w)
ADDRESS_MAP_END
diff --git a/src/mame/machine/iteagle_fpga.h b/src/mame/machine/iteagle_fpga.h
index 3de9d831b50..102931147dc 100644
--- a/src/mame/machine/iteagle_fpga.h
+++ b/src/mame/machine/iteagle_fpga.h
@@ -103,9 +103,9 @@ private:
void update_sequence(uint32_t data);
void update_sequence_eg1(uint32_t data);
- DECLARE_ADDRESS_MAP(rtc_map, 32);
- DECLARE_ADDRESS_MAP(fpga_map, 32);
- DECLARE_ADDRESS_MAP(ram_map, 32);
+ void rtc_map(address_map &map);
+ void fpga_map(address_map &map);
+ void ram_map(address_map &map);
DECLARE_READ32_MEMBER( fpga_r );
DECLARE_WRITE32_MEMBER( fpga_w );
@@ -141,7 +141,7 @@ private:
std::array<uint16_t, 0x40> m_iteagle_default_eeprom;
- DECLARE_ADDRESS_MAP(eeprom_map, 32);
+ void eeprom_map(address_map &map);
DECLARE_READ32_MEMBER( eeprom_r );
DECLARE_WRITE32_MEMBER( eeprom_w );
@@ -163,7 +163,7 @@ private:
uint32_t m_ctrl_regs[0xd0/4];
uint8_t m_rtc_regs[0x100];
- DECLARE_ADDRESS_MAP(ctrl_map, 32);
+ void ctrl_map(address_map &map);
DECLARE_READ32_MEMBER( ctrl_r );
DECLARE_WRITE32_MEMBER( ctrl_w );
diff --git a/src/mame/machine/k573dio.cpp b/src/mame/machine/k573dio.cpp
index fe539ab94c3..d3a6121d88f 100644
--- a/src/mame/machine/k573dio.cpp
+++ b/src/mame/machine/k573dio.cpp
@@ -67,7 +67,7 @@
DEFINE_DEVICE_TYPE(KONAMI_573_DIGITAL_IO_BOARD, k573dio_device, "k573_dio", "Konami 573 digital I/O board")
-DEVICE_ADDRESS_MAP_START(amap, 16, k573dio_device)
+ADDRESS_MAP_START(k573dio_device::amap)
AM_RANGE(0x00, 0x01) AM_READ(a00_r)
AM_RANGE(0x02, 0x03) AM_READ(a02_r)
AM_RANGE(0x04, 0x05) AM_READ(a04_r)
diff --git a/src/mame/machine/k573dio.h b/src/mame/machine/k573dio.h
index 8a21300b6f4..39a5a7da87c 100644
--- a/src/mame/machine/k573dio.h
+++ b/src/mame/machine/k573dio.h
@@ -27,7 +27,7 @@ public:
required_device<mas3507d_device> mas3507d;
required_device<ds2401_device> digital_id;
- DECLARE_ADDRESS_MAP(amap, 16);
+ void amap(address_map &map);
DECLARE_READ16_MEMBER(a00_r);
DECLARE_READ16_MEMBER(a02_r);
diff --git a/src/mame/machine/km035.cpp b/src/mame/machine/km035.cpp
index 6357ad66b90..9fa10308c76 100644
--- a/src/mame/machine/km035.cpp
+++ b/src/mame/machine/km035.cpp
@@ -45,7 +45,7 @@ ROM_END
// ADDRESS_MAP
//-------------------------------------------------
-static ADDRESS_MAP_START( km035_map, AS_PROGRAM, 8, km035_device )
+ADDRESS_MAP_START(km035_device::km035_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/machine/km035.h b/src/mame/machine/km035.h
index 195d7e9b758..188613b1074 100644
--- a/src/mame/machine/km035.h
+++ b/src/mame/machine/km035.h
@@ -41,6 +41,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( write_rxd );
+ void km035_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/machine/m1comm.cpp b/src/mame/machine/m1comm.cpp
index 308480148bf..b0db89e0bf0 100644
--- a/src/mame/machine/m1comm.cpp
+++ b/src/mame/machine/m1comm.cpp
@@ -63,7 +63,7 @@ Notes:
/*************************************
* M1COMM Memory Map
*************************************/
-static ADDRESS_MAP_START( m1comm_mem, AS_PROGRAM, 8, m1comm_device )
+ADDRESS_MAP_START(m1comm_device::m1comm_mem)
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_RAM
AM_RANGE(0xc000, 0xffff) AM_READWRITE(share_r, share_w)
@@ -72,7 +72,7 @@ ADDRESS_MAP_END
/*************************************
* M1COMM I/O Map
*************************************/
-static ADDRESS_MAP_START( m1comm_io, AS_IO, 8, m1comm_device )
+ADDRESS_MAP_START(m1comm_device::m1comm_io)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x1f) AM_READWRITE(dlc_reg_r, dlc_reg_w)
AM_RANGE(0x20, 0x2f) AM_READWRITE(dma_reg_r, dma_reg_w)
diff --git a/src/mame/machine/m1comm.h b/src/mame/machine/m1comm.h
index e60a6e66851..f7bf91e5e57 100644
--- a/src/mame/machine/m1comm.h
+++ b/src/mame/machine/m1comm.h
@@ -54,6 +54,8 @@ public:
// IRQ logic - 5 = VINT, 7 = DLC
void check_vint_irq();
+ void m1comm_io(address_map &map);
+ void m1comm_mem(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/m20_8086.cpp b/src/mame/machine/m20_8086.cpp
index 05f3f6508d6..09c9eb132fd 100644
--- a/src/mame/machine/m20_8086.cpp
+++ b/src/mame/machine/m20_8086.cpp
@@ -43,14 +43,14 @@ const tiny_rom_entry *m20_8086_device::device_rom_region() const
return ROM_NAME( m20_8086 );
}
-static ADDRESS_MAP_START(i86_prog, AS_PROGRAM, 16, m20_8086_device)
+ADDRESS_MAP_START(m20_8086_device::i86_prog)
AM_RANGE(0xe0000, 0xe3fff) AM_RAMBANK("vram2")
AM_RANGE(0xf0000, 0xf3fff) AM_RAMBANK("highram")
AM_RANGE(0xf4000, 0xf7fff) AM_RAMBANK("vram")
AM_RANGE(0xfc000, 0xfffff) AM_ROM AM_REGION("8086",0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(i86_io, AS_IO, 16, m20_8086_device)
+ADDRESS_MAP_START(m20_8086_device::i86_io)
AM_RANGE(0x4000, 0x4fff) AM_READWRITE(z8000_io_r, z8000_io_w)
AM_RANGE(0x7ffa, 0x7ffd) AM_WRITE(handshake_w)
ADDRESS_MAP_END
diff --git a/src/mame/machine/m20_8086.h b/src/mame/machine/m20_8086.h
index 4c49847a4d3..7f58cc3b6d4 100644
--- a/src/mame/machine/m20_8086.h
+++ b/src/mame/machine/m20_8086.h
@@ -20,6 +20,8 @@ public:
void halt() { m_8086->set_input_line(INPUT_LINE_HALT, ASSERT_LINE); }
bool halted() const { return m_8086_halt; }
+ void i86_io(address_map &map);
+ void i86_prog(address_map &map);
protected:
void device_start() override;
void device_reset() override;
diff --git a/src/mame/machine/m24_z8000.cpp b/src/mame/machine/m24_z8000.cpp
index 89de9a45189..51d9311c3b4 100644
--- a/src/mame/machine/m24_z8000.cpp
+++ b/src/mame/machine/m24_z8000.cpp
@@ -40,7 +40,7 @@ const tiny_rom_entry *m24_z8000_device::device_rom_region() const
return ROM_NAME( m24_z8000 );
}
-static ADDRESS_MAP_START(z8000_prog, AS_PROGRAM, 16, m24_z8000_device)
+ADDRESS_MAP_START(m24_z8000_device::z8000_prog)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(pmem_r, pmem_w)
AM_RANGE(0x40000, 0x43fff) AM_ROM AM_REGION("z8000", 0)
@@ -48,14 +48,14 @@ static ADDRESS_MAP_START(z8000_prog, AS_PROGRAM, 16, m24_z8000_device)
AM_RANGE(0x70000, 0x73fff) AM_ROM AM_REGION("z8000", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z8000_data, AS_DATA, 16, m24_z8000_device)
+ADDRESS_MAP_START(m24_z8000_device::z8000_data)
AM_RANGE(0x00000, 0xfffff) AM_READWRITE(dmem_r, dmem_w)
AM_RANGE(0x40000, 0x43fff) AM_ROM AM_REGION("z8000", 0)
AM_RANGE(0x70000, 0x73fff) AM_ROM AM_REGION("z8000", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START(z8000_io, AS_IO, 16, m24_z8000_device)
+ADDRESS_MAP_START(m24_z8000_device::z8000_io)
AM_RANGE(0x0080, 0x0081) AM_WRITE8(irqctl_w, 0x00ff)
AM_RANGE(0x00a0, 0x00a1) AM_WRITE8(serctl_w, 0x00ff)
AM_RANGE(0x00c0, 0x00c1) AM_DEVREADWRITE8("i8251", i8251_device, data_r, data_w, 0x00ff)
diff --git a/src/mame/machine/m24_z8000.h b/src/mame/machine/m24_z8000.h
index 8bb01b4a234..3cbfd157a1b 100644
--- a/src/mame/machine/m24_z8000.h
+++ b/src/mame/machine/m24_z8000.h
@@ -36,6 +36,9 @@ public:
bool halted() const { return m_z8000_halt; }
+ void z8000_data(address_map &map);
+ void z8000_io(address_map &map);
+ void z8000_prog(address_map &map);
protected:
void device_start() override;
void device_reset() override;
diff --git a/src/mame/machine/m3comm.cpp b/src/mame/machine/m3comm.cpp
index 4b4dc1f082e..55860b4d482 100644
--- a/src/mame/machine/m3comm.cpp
+++ b/src/mame/machine/m3comm.cpp
@@ -88,7 +88,7 @@ SEGA 1998
#define M68K_TAG "m3commcpu"
//////// Model 3 (main CPU @ C00xxxxx) and Hikaru (MMctrl bank 0E) interface
-DEVICE_ADDRESS_MAP_START(m3_map, 32, m3comm_device)
+ADDRESS_MAP_START(m3comm_device::m3_map)
AM_RANGE(0x0000000, 0x000ffff) AM_READWRITE8(m3_comm_ram_r, m3_comm_ram_w, 0xffffffff)
AM_RANGE(0x0010000, 0x00101ff) AM_READWRITE16(m3_ioregs_r, m3_ioregs_w, 0xffff0000)
AM_RANGE(0x0020000, 0x003ffff) AM_READWRITE16(m3_m68k_ram_r, m3_m68k_ram_w, 0xffff0000)
@@ -98,7 +98,7 @@ ADDRESS_MAP_END
/*************************************
* M3COMM Memory Map
*************************************/
-static ADDRESS_MAP_START( m3comm_mem, AS_PROGRAM, 16, m3comm_device )
+ADDRESS_MAP_START(m3comm_device::m3comm_mem)
AM_RANGE(0x0000000, 0x000ffff) AM_RAM AM_SHARE("m68k_ram")
AM_RANGE(0x0040000, 0x00400ff) AM_READWRITE(ctrl_r, ctrl_w)
AM_RANGE(0x0080000, 0x008ffff) AM_RAMBANK("comm_ram")
diff --git a/src/mame/machine/m3comm.h b/src/mame/machine/m3comm.h
index 5883d2aed5d..85caa3f21e3 100644
--- a/src/mame/machine/m3comm.h
+++ b/src/mame/machine/m3comm.h
@@ -21,7 +21,7 @@ public:
// construction/destruction
m3comm_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(m3_map, 32);
+ void m3_map(address_map &map);
DECLARE_READ16_MEMBER(ctrl_r);
DECLARE_WRITE16_MEMBER(ctrl_w);
@@ -39,6 +39,7 @@ public:
DECLARE_READ16_MEMBER(naomi_r);
DECLARE_WRITE16_MEMBER(naomi_w);
+ void m3comm_mem(address_map &map);
protected:
enum { TIMER_IRQ5 = 1 };
diff --git a/src/mame/machine/maple-dc.cpp b/src/mame/machine/maple-dc.cpp
index 41bbdacc173..51f50520d26 100644
--- a/src/mame/machine/maple-dc.cpp
+++ b/src/mame/machine/maple-dc.cpp
@@ -7,7 +7,7 @@
DEFINE_DEVICE_TYPE(MAPLE_DC, maple_dc_device, "maple_dc", "Dreamcast Maple Bus")
-DEVICE_ADDRESS_MAP_START(amap, 32, maple_dc_device)
+ADDRESS_MAP_START(maple_dc_device::amap)
AM_RANGE(0x04, 0x07) AM_READWRITE(sb_mdstar_r, sb_mdstar_w)
AM_RANGE(0x10, 0x13) AM_READWRITE(sb_mdtsel_r, sb_mdtsel_w)
AM_RANGE(0x14, 0x17) AM_READWRITE(sb_mden_r, sb_mden_w)
diff --git a/src/mame/machine/maple-dc.h b/src/mame/machine/maple-dc.h
index 095bf289b7d..e43f79a6d89 100644
--- a/src/mame/machine/maple-dc.h
+++ b/src/mame/machine/maple-dc.h
@@ -33,7 +33,7 @@ public:
DECLARE_WRITE32_MEMBER(sb_msys_w);
DECLARE_WRITE32_MEMBER(sb_mdapro_w); // 5f6c8c
- DECLARE_ADDRESS_MAP(amap, 32);
+ void amap(address_map &map);
void end_of_reply();
void register_port(int port, maple_device *device);
diff --git a/src/mame/machine/mega32x.cpp b/src/mame/machine/mega32x.cpp
index cd435c77961..1ae6291a3cc 100644
--- a/src/mame/machine/mega32x.cpp
+++ b/src/mame/machine/mega32x.cpp
@@ -1503,7 +1503,7 @@ _32X_MAP_WRITEHANDLERS(slave_401c,slave_401e) // _32x_sh2_slave_401c_slave_401e_
// SH2 memory maps
/**********************************************************************************************/
-ADDRESS_MAP_START( sh2_main_map, AS_PROGRAM, 32, sega_32x_device )
+ADDRESS_MAP_START(sega_32x_device::sh2_main_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROMBANK("masterbios")
AM_RANGE(0x00004000, 0x00004003) AM_READWRITE(_32x_sh2_master_4000_common_4002_r, _32x_sh2_master_4000_common_4002_w )
@@ -1532,7 +1532,7 @@ ADDRESS_MAP_START( sh2_main_map, AS_PROGRAM, 32, sega_32x_device )
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM
ADDRESS_MAP_END
-ADDRESS_MAP_START( sh2_slave_map, AS_PROGRAM, 32, sega_32x_device )
+ADDRESS_MAP_START(sega_32x_device::sh2_slave_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROMBANK("slavebios")
AM_RANGE(0x00004000, 0x00004003) AM_READWRITE(_32x_sh2_slave_4000_common_4002_r, _32x_sh2_slave_4000_common_4002_w )
diff --git a/src/mame/machine/mega32x.h b/src/mame/machine/mega32x.h
index 2e675ce435f..7679bd48276 100644
--- a/src/mame/machine/mega32x.h
+++ b/src/mame/machine/mega32x.h
@@ -105,6 +105,8 @@ public:
void _32x_check_irqs();
void _32x_interrupt_cb(int scanline, int irq6);
+ void sh2_main_map(address_map &map);
+ void sh2_slave_map(address_map &map);
protected:
sega_32x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/mame/machine/megacd.cpp b/src/mame/machine/megacd.cpp
index a0fe8c3411d..023a6fc4c9b 100644
--- a/src/mame/machine/megacd.cpp
+++ b/src/mame/machine/megacd.cpp
@@ -77,7 +77,7 @@ TIMER_DEVICE_CALLBACK_MEMBER( sega_segacd_device::stamp_timer_callback )
}
-static ADDRESS_MAP_START( segacd_map, AS_PROGRAM, 16, sega_segacd_device )
+ADDRESS_MAP_START(sega_segacd_device::segacd_map)
AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_SHARE("prgram")
AM_RANGE(0x080000, 0x0bffff) AM_READWRITE(segacd_sub_dataram_part1_r, segacd_sub_dataram_part1_w) AM_SHARE("dataram")
AM_RANGE(0x0c0000, 0x0dffff) AM_READWRITE(segacd_sub_dataram_part2_r, segacd_sub_dataram_part2_w) //AM_SHARE("dataram2")
diff --git a/src/mame/machine/megacd.h b/src/mame/machine/megacd.h
index 6dde3e06e49..90e2b28ed3f 100644
--- a/src/mame/machine/megacd.h
+++ b/src/mame/machine/megacd.h
@@ -96,6 +96,7 @@ public:
WRITE8_MEMBER( font_color_w );
READ16_MEMBER( font_converted_r );
+ void segacd_map(address_map &map);
protected:
sega_segacd_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/mame/machine/megadriv.cpp b/src/mame/machine/megadriv.cpp
index 79a1ff9f041..f2d684776e6 100644
--- a/src/mame/machine/megadriv.cpp
+++ b/src/mame/machine/megadriv.cpp
@@ -444,7 +444,7 @@ WRITE16_MEMBER(md_base_state::megadriv_68k_io_write )
-static ADDRESS_MAP_START( megadriv_map, AS_PROGRAM, 16, md_base_state )
+ADDRESS_MAP_START(md_base_state::megadriv_map)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
/* (0x000000 - 0x3fffff) == GAME ROM (4Meg Max, Some games have special banking too) */
@@ -467,7 +467,7 @@ static ADDRESS_MAP_START( megadriv_map, AS_PROGRAM, 16, md_base_state )
ADDRESS_MAP_END
-ADDRESS_MAP_START( dcat16_megadriv_map, AS_PROGRAM, 16, md_base_state )
+ADDRESS_MAP_START(md_base_state::dcat16_megadriv_map)
AM_IMPORT_FROM(megadriv_map)
AM_RANGE(0x000000, 0x7fffff) AM_ROM
ADDRESS_MAP_END
@@ -723,7 +723,7 @@ READ8_MEMBER(md_base_state::megadriv_z80_unmapped_read )
return 0xff;
}
-static ADDRESS_MAP_START( megadriv_z80_map, AS_PROGRAM, 8, md_base_state )
+ADDRESS_MAP_START(md_base_state::megadriv_z80_map)
AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1") AM_MIRROR(0x2000) // RAM can be accessed by the 68k
AM_RANGE(0x4000, 0x4003) AM_DEVREADWRITE("ymsnd", ym2612_device, read, write)
@@ -737,7 +737,7 @@ static ADDRESS_MAP_START( megadriv_z80_map, AS_PROGRAM, 8, md_base_state )
AM_RANGE(0x8000, 0xffff) AM_READWRITE(z80_read_68k_banked_data,z80_write_68k_banked_data) // The Z80 can read the 68k address space this way
ADDRESS_MAP_END
-static ADDRESS_MAP_START( megadriv_z80_io_map, AS_IO, 8, md_base_state )
+ADDRESS_MAP_START(md_base_state::megadriv_z80_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0000, 0xff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/machine/mie.cpp b/src/mame/machine/mie.cpp
index 850a53ad574..6580f8af236 100644
--- a/src/mame/machine/mie.cpp
+++ b/src/mame/machine/mie.cpp
@@ -26,7 +26,7 @@
DEFINE_DEVICE_TYPE(MIE, mie_device, "mie", "Sega 315-6146 MIE")
DEFINE_DEVICE_TYPE(MIE_JVS, mie_jvs_device, "mie_jvs", "JVS (MIE)")
-static ADDRESS_MAP_START( mie_map, AS_PROGRAM, 8, mie_device)
+ADDRESS_MAP_START(mie_device::mie_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
AM_RANGE(0x0800, 0x6fff) AM_READ(read_ff)
AM_RANGE(0x7000, 0x7002) AM_READWRITE(control_r, control_w) AM_MIRROR(0x07c0)
@@ -37,7 +37,7 @@ static ADDRESS_MAP_START( mie_map, AS_PROGRAM, 8, mie_device)
AM_RANGE(0x8000, 0xffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mie_port, AS_IO, 8, mie_device)
+ADDRESS_MAP_START(mie_device::mie_port)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x07) AM_READWRITE(gpio_r, gpio_w)
AM_RANGE(0x08, 0x08) AM_READWRITE(gpiodir_r, gpiodir_w)
diff --git a/src/mame/machine/mie.h b/src/mame/machine/mie.h
index acd1e0b6922..e094fd9c839 100644
--- a/src/mame/machine/mie.h
+++ b/src/mame/machine/mie.h
@@ -71,6 +71,8 @@ public:
void maple_w(const uint32_t *data, uint32_t in_size) override;
virtual void maple_reset() override;
+ void mie_map(address_map &map);
+ void mie_port(address_map &map);
protected:
const char *gpio_name[8];
const char *jvs_name;
diff --git a/src/mame/machine/model1.cpp b/src/mame/machine/model1.cpp
index b27470637c1..aff88bf4459 100644
--- a/src/mame/machine/model1.cpp
+++ b/src/mame/machine/model1.cpp
@@ -2172,7 +2172,7 @@ WRITE16_MEMBER(model1_state::model1_vr_tgp_w)
}
/* TGP memory map */
-ADDRESS_MAP_START( model1_vr_tgp_map, AS_PROGRAM, 32, model1_state )
+ADDRESS_MAP_START(model1_state::model1_vr_tgp_map)
AM_RANGE(0x00000000, 0x000007ff) AM_RAM AM_REGION("tgp", 0)
AM_RANGE(0x00400000, 0x00407fff) AM_READWRITE(copro_ram_r, copro_ram_w)
AM_RANGE(0xff800000, 0xff87ffff) AM_ROM AM_REGION("user2", 0)
diff --git a/src/mame/machine/mpu4.cpp b/src/mame/machine/mpu4.cpp
index 1fc93577b78..53fce1fbc83 100644
--- a/src/mame/machine/mpu4.cpp
+++ b/src/mame/machine/mpu4.cpp
@@ -2606,7 +2606,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(mpu4_state::gen_50hz)
update_meters();//run at 100Hz to sync with PIAs
}
-static ADDRESS_MAP_START( mpu4_memmap, AS_PROGRAM, 8, mpu4_state )
+ADDRESS_MAP_START(mpu4_state::mpu4_memmap)
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram")
AM_RANGE(0x0800, 0x0810) AM_READWRITE(characteriser_r,characteriser_w)
AM_RANGE(0x0850, 0x0850) AM_READWRITE(bankswitch_r,bankswitch_w) /* write bank (rom page select) */
diff --git a/src/mame/machine/ms7004.cpp b/src/mame/machine/ms7004.cpp
index df4e55daee7..e25a9c5e73e 100644
--- a/src/mame/machine/ms7004.cpp
+++ b/src/mame/machine/ms7004.cpp
@@ -47,7 +47,7 @@ ROM_END
// ADDRESS_MAP
//-------------------------------------------------
-static ADDRESS_MAP_START( ms7004_map, AS_PROGRAM, 8, ms7004_device )
+ADDRESS_MAP_START(ms7004_device::ms7004_map)
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/machine/ms7004.h b/src/mame/machine/ms7004.h
index 74e249de875..8d5eced803b 100644
--- a/src/mame/machine/ms7004.h
+++ b/src/mame/machine/ms7004.h
@@ -42,6 +42,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( write_rxd );
+ void ms7004_map(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/machine/namco_c139.cpp b/src/mame/machine/namco_c139.cpp
index da980609664..869338c582a 100644
--- a/src/mame/machine/namco_c139.cpp
+++ b/src/mame/machine/namco_c139.cpp
@@ -28,11 +28,11 @@ DEFINE_DEVICE_TYPE(NAMCO_C139, namco_c139_device, "namco_c139", "Namco C139 Seri
// LIVE DEVICE
//**************************************************************************
-static ADDRESS_MAP_START( data_map, AS_DATA, 16, namco_c139_device )
+ADDRESS_MAP_START(namco_c139_device::data_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("sharedram")
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( regs_map, 16, namco_c139_device )
+ADDRESS_MAP_START(namco_c139_device::regs_map)
AM_RANGE(0x00, 0x00) AM_READ(status_r) // WRITE clears flags
AM_RANGE(0x02, 0x02) AM_NOP // settings?
// AM_RANGE(0x0a, 0x0a) // WRITE tx_w
@@ -47,7 +47,7 @@ ADDRESS_MAP_END
namco_c139_device::namco_c139_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, NAMCO_C139, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("data", ENDIANNESS_BIG, 16, 14, 0, *ADDRESS_MAP_NAME(data_map))
+ m_space_config("data", ENDIANNESS_BIG, 16, 14, 0, address_map_constructor(FUNC(namco_c139_device::data_map), this))
{
}
diff --git a/src/mame/machine/namco_c139.h b/src/mame/machine/namco_c139.h
index ffbe2546e93..67eb4c147d5 100644
--- a/src/mame/machine/namco_c139.h
+++ b/src/mame/machine/namco_c139.h
@@ -34,13 +34,14 @@ public:
namco_c139_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// I/O operations
- DECLARE_ADDRESS_MAP(regs_map, 16);
+ void regs_map(address_map &map);
DECLARE_READ16_MEMBER(status_r);
DECLARE_READ16_MEMBER(ram_r);
DECLARE_WRITE16_MEMBER(ram_w);
+ void data_map(address_map &map);
protected:
// device-level overrides
// virtual void device_validity_check(validity_checker &valid) const;
diff --git a/src/mame/machine/namco_c148.cpp b/src/mame/machine/namco_c148.cpp
index 46573a580c6..b132af74f39 100644
--- a/src/mame/machine/namco_c148.cpp
+++ b/src/mame/machine/namco_c148.cpp
@@ -75,7 +75,7 @@ namco_c148_device::namco_c148_device(const machine_config &mconfig, const char *
}
// (*) denotes master CPU only
-DEVICE_ADDRESS_MAP_START( map, 16, namco_c148_device )
+ADDRESS_MAP_START(namco_c148_device::map)
AM_RANGE(0x04000, 0x05fff) AM_READWRITE8(bus_ctrl_r, bus_ctrl_w, 0x00ff)
AM_RANGE(0x06000, 0x07fff) AM_READWRITE8(cpu_irq_level_r,cpu_irq_level_w,0x00ff) // CPUIRQ lv
AM_RANGE(0x08000, 0x09fff) AM_READWRITE8(ex_irq_level_r,ex_irq_level_w,0x00ff) // EXIRQ lv
diff --git a/src/mame/machine/namco_c148.h b/src/mame/machine/namco_c148.h
index f527af9b553..fe8e47e4500 100644
--- a/src/mame/machine/namco_c148.h
+++ b/src/mame/machine/namco_c148.h
@@ -40,7 +40,7 @@ public:
// construction/destruction
namco_c148_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
static void configure_device(device_t &device, const char *tag, bool is_master)
{
diff --git a/src/mame/machine/naomibd.cpp b/src/mame/machine/naomibd.cpp
index 77b5792987d..47bee977fa9 100644
--- a/src/mame/machine/naomibd.cpp
+++ b/src/mame/machine/naomibd.cpp
@@ -60,7 +60,7 @@
Normal address starts with 0xa0000000 to enable auto-advance and 8MB ROM addressing mode.
*/
-DEVICE_ADDRESS_MAP_START(submap, 16, naomi_board)
+ADDRESS_MAP_START(naomi_board::submap)
AM_RANGE(0x00, 0xff) AM_READ(default_r)
AM_RANGE(0x00, 0x01) AM_WRITE(rom_offseth_w)
diff --git a/src/mame/machine/naomibd.h b/src/mame/machine/naomibd.h
index 94e767bb4b8..aa61334873b 100644
--- a/src/mame/machine/naomibd.h
+++ b/src/mame/machine/naomibd.h
@@ -18,7 +18,7 @@ public:
static void static_set_eeprom_tag(device_t &device, const char *_eeprom_tag);
// Can be patched in the underlying class
- virtual DECLARE_ADDRESS_MAP(submap, 16);
+ virtual void submap(address_map &map);
DECLARE_WRITE16_MEMBER(rom_offseth_w); // 5f7000
DECLARE_WRITE16_MEMBER(rom_offsetl_w); // 5f7004
diff --git a/src/mame/machine/naomig1.cpp b/src/mame/machine/naomig1.cpp
index 1b0d197b533..4964d0bbb58 100644
--- a/src/mame/machine/naomig1.cpp
+++ b/src/mame/machine/naomig1.cpp
@@ -4,7 +4,7 @@
#include "emu.h"
#include "machine/naomig1.h"
-DEVICE_ADDRESS_MAP_START(amap, 32, naomi_g1_device)
+ADDRESS_MAP_START(naomi_g1_device::amap)
AM_RANGE(0x04, 0x07) AM_READWRITE(sb_gdstar_r, sb_gdstar_w)
AM_RANGE(0x08, 0x0b) AM_READWRITE(sb_gdlen_r, sb_gdlen_w)
AM_RANGE(0x0c, 0x0f) AM_READWRITE(sb_gddir_r, sb_gddir_w)
diff --git a/src/mame/machine/naomig1.h b/src/mame/machine/naomig1.h
index aca93be6155..2a6a8b29104 100644
--- a/src/mame/machine/naomig1.h
+++ b/src/mame/machine/naomig1.h
@@ -23,7 +23,7 @@ public:
template <class Object> void set_irq_cb(Object &&cb) { irq_cb.set_callback(std::forward<Object>(cb)); }
void set_dma_cb(dma_cb cb) { _dma_cb = cb; }
- DECLARE_ADDRESS_MAP(amap, 32);
+ void amap(address_map &map);
DECLARE_READ32_MEMBER(sb_gdstar_r); // 5f7404
DECLARE_WRITE32_MEMBER(sb_gdstar_w); // 5f7404
diff --git a/src/mame/machine/naomim1.cpp b/src/mame/machine/naomim1.cpp
index 10066b3a126..dfc89fc3c01 100644
--- a/src/mame/machine/naomim1.cpp
+++ b/src/mame/machine/naomim1.cpp
@@ -6,8 +6,8 @@
DEFINE_DEVICE_TYPE(NAOMI_M1_BOARD, naomi_m1_board, "naomi_m1_board", "Sega NAOMI M1 Board")
-DEVICE_ADDRESS_MAP_START(submap, 16, naomi_m1_board)
- AM_INHERIT_FROM(naomi_board::submap)
+ADDRESS_MAP_START(naomi_m1_board::submap)
+ AM_IMPORT_FROM(naomi_board::submap)
AM_RANGE(0x0a, 0x0b) AM_READ(actel_id_r)
ADDRESS_MAP_END
diff --git a/src/mame/machine/naomim1.h b/src/mame/machine/naomim1.h
index 341e2b40372..ffad96cb947 100644
--- a/src/mame/machine/naomim1.h
+++ b/src/mame/machine/naomim1.h
@@ -15,7 +15,7 @@ class naomi_m1_board : public naomi_board
public:
naomi_m1_board(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(submap, 16) override;
+ virtual void submap(address_map &map) override;
DECLARE_READ16_MEMBER(actel_id_r);
diff --git a/src/mame/machine/naomim4.cpp b/src/mame/machine/naomim4.cpp
index 5435db8a70c..5e31e2b5723 100644
--- a/src/mame/machine/naomim4.cpp
+++ b/src/mame/machine/naomim4.cpp
@@ -40,8 +40,8 @@ static uint8_t cfidata[] = {
0x01,0x00
};
-DEVICE_ADDRESS_MAP_START(submap, 16, naomi_m4_board)
- AM_INHERIT_FROM(naomi_board::submap)
+ADDRESS_MAP_START(naomi_m4_board::submap)
+ AM_IMPORT_FROM(naomi_board::submap)
AM_RANGE(0x1a, 0x1b) AM_READ(m4_id_r)
ADDRESS_MAP_END
diff --git a/src/mame/machine/naomim4.h b/src/mame/machine/naomim4.h
index 4fb778fd769..70c83a9035a 100644
--- a/src/mame/machine/naomim4.h
+++ b/src/mame/machine/naomim4.h
@@ -16,7 +16,7 @@ public:
static void static_set_tags(device_t &device, const char *key_tag);
- virtual DECLARE_ADDRESS_MAP(submap, 16) override;
+ virtual void submap(address_map &map) override;
DECLARE_READ16_MEMBER(m4_id_r);
protected:
diff --git a/src/mame/machine/nextkbd.cpp b/src/mame/machine/nextkbd.cpp
index a55e2e25bd4..827b7952aad 100644
--- a/src/mame/machine/nextkbd.cpp
+++ b/src/mame/machine/nextkbd.cpp
@@ -6,7 +6,7 @@
DEFINE_DEVICE_TYPE(NEXTKBD, nextkbd_device, "nextkbd", "NeXT Keyboard")
-DEVICE_ADDRESS_MAP_START(amap, 32, nextkbd_device)
+ADDRESS_MAP_START(nextkbd_device::amap)
AM_RANGE(0x0, 0x3) AM_READWRITE8(status_snd_r, ctrl_snd_w, 0xff000000)
AM_RANGE(0x0, 0x3) AM_READWRITE8(status_kms_r, ctrl_kms_w, 0x00ff0000)
AM_RANGE(0x0, 0x3) AM_READWRITE8(status_dma_r, ctrl_dma_w, 0x0000ff00)
diff --git a/src/mame/machine/nextkbd.h b/src/mame/machine/nextkbd.h
index e0382354b27..b706712c28e 100644
--- a/src/mame/machine/nextkbd.h
+++ b/src/mame/machine/nextkbd.h
@@ -23,7 +23,7 @@ public:
template <class Object> static devcb_base &set_int_power_wr_callback(device_t &device, Object &&cb) { return downcast<nextkbd_device &>(device).int_power_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_int_nmi_wr_callback(device_t &device, Object &&cb) { return downcast<nextkbd_device &>(device).int_nmi_cb.set_callback(std::forward<Object>(cb)); }
- DECLARE_ADDRESS_MAP(amap, 32);
+ void amap(address_map &map);
DECLARE_READ8_MEMBER(status_snd_r);
DECLARE_READ8_MEMBER(status_kms_r);
diff --git a/src/mame/machine/nextmo.cpp b/src/mame/machine/nextmo.cpp
index b84e5728689..c7239dd976f 100644
--- a/src/mame/machine/nextmo.cpp
+++ b/src/mame/machine/nextmo.cpp
@@ -6,7 +6,7 @@
DEFINE_DEVICE_TYPE(NEXTMO, nextmo_device, "nextmo", "NeXT Magneto-optical drive")
-DEVICE_ADDRESS_MAP_START(map, 8, nextmo_device)
+ADDRESS_MAP_START(nextmo_device::map)
AM_RANGE(0x04, 0x04) AM_READWRITE(r4_r, r4_w)
AM_RANGE(0x05, 0x05) AM_READWRITE(r5_r, r5_w)
AM_RANGE(0x06, 0x06) AM_READWRITE(r6_r, r6_w)
diff --git a/src/mame/machine/nextmo.h b/src/mame/machine/nextmo.h
index 741f9d3e16d..4dfa6416f5a 100644
--- a/src/mame/machine/nextmo.h
+++ b/src/mame/machine/nextmo.h
@@ -19,7 +19,7 @@ public:
template <class Object> static devcb_base &set_irq_wr_callback(device_t &device, Object &&cb) { return downcast<nextmo_device &>(device).irq_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> static devcb_base &set_drq_wr_callback(device_t &device, Object &&cb) { return downcast<nextmo_device &>(device).drq_cb.set_callback(std::forward<Object>(cb)); }
- DECLARE_ADDRESS_MAP(map, 32);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(r4_r);
DECLARE_WRITE8_MEMBER(r4_w);
diff --git a/src/mame/machine/nmk004.cpp b/src/mame/machine/nmk004.cpp
index d3557129cdc..6e5cc8dec1c 100644
--- a/src/mame/machine/nmk004.cpp
+++ b/src/mame/machine/nmk004.cpp
@@ -63,7 +63,7 @@ void nmk004_device::ym2203_irq_handler(int irq)
m_cpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
}
-static ADDRESS_MAP_START( nmk004_sound_mem_map, AS_PROGRAM, 8, nmk004_device )
+ADDRESS_MAP_START(nmk004_device::nmk004_sound_mem_map)
//AM_RANGE(0x0000, 0x1fff) AM_ROM /* 0x0000 - 0x1fff = internal ROM */
AM_RANGE(0x2000, 0xefff) AM_ROM AM_REGION(":audiocpu", 0x2000 )
AM_RANGE(0xf000, 0xf7ff) AM_RAM
diff --git a/src/mame/machine/nmk004.h b/src/mame/machine/nmk004.h
index 65302841ec8..1570df59fa9 100644
--- a/src/mame/machine/nmk004.h
+++ b/src/mame/machine/nmk004.h
@@ -41,6 +41,7 @@ public:
DECLARE_WRITE8_MEMBER(nmk004_tomain_w);
void ym2203_irq_handler(int irq);
+ void nmk004_sound_mem_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/pcd_kbd.cpp b/src/mame/machine/pcd_kbd.cpp
index bc5024ed511..9a8f80cb37d 100644
--- a/src/mame/machine/pcd_kbd.cpp
+++ b/src/mame/machine/pcd_kbd.cpp
@@ -22,7 +22,7 @@ const tiny_rom_entry *pcd_keyboard_device::device_rom_region() const
return ROM_NAME( pcd_keyboard );
}
-static ADDRESS_MAP_START( pcd_keyboard_map, AS_PROGRAM, 8, pcd_keyboard_device )
+ADDRESS_MAP_START(pcd_keyboard_device::pcd_keyboard_map)
AM_RANGE(0x000, 0xfff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/mame/machine/pcd_kbd.h b/src/mame/machine/pcd_kbd.h
index efbfef33911..1f64970809d 100644
--- a/src/mame/machine/pcd_kbd.h
+++ b/src/mame/machine/pcd_kbd.h
@@ -17,6 +17,7 @@ public:
DECLARE_WRITE_LINE_MEMBER( t0_w );
+ void pcd_keyboard_map(address_map &map);
protected:
virtual const tiny_rom_entry *device_rom_region() const override;
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/machine/pcshare.cpp b/src/mame/machine/pcshare.cpp
index 41e2c8b1e8d..948d4754e67 100644
--- a/src/mame/machine/pcshare.cpp
+++ b/src/mame/machine/pcshare.cpp
@@ -128,7 +128,7 @@ WRITE_LINE_MEMBER( pcat_base_state::at_pit8254_out2_changed )
}
-ADDRESS_MAP_START( pcat32_io_common, AS_IO, 32, pcat_base_state )
+ADDRESS_MAP_START(pcat_base_state::pcat32_io_common)
AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", am9517a_device, read, write, 0xffffffff)
AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_device, read, write, 0xffffffff)
AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8254_device, read, write, 0xffffffff)
diff --git a/src/mame/machine/pcshare.h b/src/mame/machine/pcshare.h
index b0b9e4c42f2..49f8d6f873d 100644
--- a/src/mame/machine/pcshare.h
+++ b/src/mame/machine/pcshare.h
@@ -54,6 +54,5 @@ public:
void pcvideo_cirrus_gd5428(machine_config &config);
void pcvideo_cirrus_gd5430(machine_config &config);
+ void pcat32_io_common(address_map &map);
};
-
-ADDRESS_MAP_EXTERN(pcat32_io_common, 32);
diff --git a/src/mame/machine/pgmprot_igs025_igs012.cpp b/src/mame/machine/pgmprot_igs025_igs012.cpp
index 4238f1bd11d..c0acb2e8e9e 100644
--- a/src/mame/machine/pgmprot_igs025_igs012.cpp
+++ b/src/mame/machine/pgmprot_igs025_igs012.cpp
@@ -126,7 +126,7 @@ void pgm_012_025_state::drgw2_common_init()
}
-static ADDRESS_MAP_START( drgw2_mem, AS_PROGRAM, 16, pgm_012_025_state )
+ADDRESS_MAP_START(pgm_012_025_state::drgw2_mem)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("bank1") /* Game ROM */
AM_RANGE(0xd00000, 0xd00fff) AM_NOP // Written, but never read back? Related to the protection device? - IGS012?
diff --git a/src/mame/machine/pgmprot_igs025_igs012.h b/src/mame/machine/pgmprot_igs025_igs012.h
index ff87c8660f7..3c05b5ecd7e 100644
--- a/src/mame/machine/pgmprot_igs025_igs012.h
+++ b/src/mame/machine/pgmprot_igs025_igs012.h
@@ -24,4 +24,5 @@ public:
DECLARE_MACHINE_RESET(drgw2);
void pgm_012_025_drgw2(machine_config &config);
+ void drgw2_mem(address_map &map);
};
diff --git a/src/mame/machine/pgmprot_igs025_igs022.cpp b/src/mame/machine/pgmprot_igs025_igs022.cpp
index fa6ccedb8f6..2250e5a7264 100644
--- a/src/mame/machine/pgmprot_igs025_igs022.cpp
+++ b/src/mame/machine/pgmprot_igs025_igs022.cpp
@@ -367,7 +367,7 @@ DRIVER_INIT_MEMBER(pgm_022_025_state,drgw3)
}
-static ADDRESS_MAP_START( killbld_mem, AS_PROGRAM, 16, pgm_022_025_state )
+ADDRESS_MAP_START(pgm_022_025_state::killbld_mem)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x2fffff) AM_ROMBANK("bank1") /* Game ROM */
AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("sharedprotram") // Shared with protection device
diff --git a/src/mame/machine/pgmprot_igs025_igs022.h b/src/mame/machine/pgmprot_igs025_igs022.h
index 018734984af..998e7c67f43 100644
--- a/src/mame/machine/pgmprot_igs025_igs022.h
+++ b/src/mame/machine/pgmprot_igs025_igs022.h
@@ -29,6 +29,7 @@ public:
void pgm_022_025(machine_config &config);
void pgm_022_025_dw3(machine_config &config);
void pgm_022_025_killbld(machine_config &config);
+ void killbld_mem(address_map &map);
};
INPUT_PORTS_EXTERN( killbld );
diff --git a/src/mame/machine/pgmprot_igs025_igs028.cpp b/src/mame/machine/pgmprot_igs025_igs028.cpp
index a6abd6fd8f5..6811126ffd1 100644
--- a/src/mame/machine/pgmprot_igs025_igs028.cpp
+++ b/src/mame/machine/pgmprot_igs025_igs028.cpp
@@ -172,7 +172,7 @@ DRIVER_INIT_MEMBER(pgm_028_025_state,olds)
}
-static ADDRESS_MAP_START( olds_mem, AS_PROGRAM, 16, pgm_028_025_state )
+ADDRESS_MAP_START(pgm_028_025_state::olds_mem)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x3fffff) AM_ROMBANK("bank1") /* Game ROM */
AM_RANGE(0x400000, 0x403fff) AM_RAM AM_SHARE("sharedprotram") // Shared with protection device
diff --git a/src/mame/machine/pgmprot_igs025_igs028.h b/src/mame/machine/pgmprot_igs025_igs028.h
index d0ff024cb5f..fbe9fd47b40 100644
--- a/src/mame/machine/pgmprot_igs025_igs028.h
+++ b/src/mame/machine/pgmprot_igs025_igs028.h
@@ -22,6 +22,7 @@ public:
DECLARE_DRIVER_INIT(olds);
DECLARE_MACHINE_RESET(olds);
void pgm_028_025_ol(machine_config &config);
+ void olds_mem(address_map &map);
};
INPUT_PORTS_EXTERN( olds );
diff --git a/src/mame/machine/pgmprot_igs027a_type1.cpp b/src/mame/machine/pgmprot_igs027a_type1.cpp
index 37edcd4136b..407cfd34e8b 100644
--- a/src/mame/machine/pgmprot_igs027a_type1.cpp
+++ b/src/mame/machine/pgmprot_igs027a_type1.cpp
@@ -165,14 +165,14 @@ WRITE32_MEMBER(pgm_arm_type1_state::pgm_arm7_type1_shareram_w )
/* 55857E? */
/* Knights of Valor, Photo Y2k */
/* no execute only space? */
-static ADDRESS_MAP_START( kov_map, AS_PROGRAM, 16, pgm_arm_type1_state )
+ADDRESS_MAP_START(pgm_arm_type1_state::kov_map)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x4effff) AM_ROMBANK("bank1") /* Game ROM */
AM_RANGE(0x4f0000, 0x4f003f) AM_READWRITE(pgm_arm7_type1_ram_r, pgm_arm7_type1_ram_w) /* ARM7 Shared RAM */
AM_RANGE(0x500000, 0x500005) AM_READWRITE(pgm_arm7_type1_68k_protlatch_r, pgm_arm7_type1_68k_protlatch_w) /* ARM7 Latch */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 55857E_arm7_map, AS_PROGRAM, 32, pgm_arm_type1_state )
+ADDRESS_MAP_START(pgm_arm_type1_state::_55857E_arm7_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM
AM_RANGE(0x08100000, 0x083fffff) AM_READ(pgm_arm7_type1_exrom_r) // unpopulated, returns 0 to keep checksum happy
AM_RANGE(0x10000000, 0x100003ff) AM_RAM // internal ram for asic
@@ -188,12 +188,12 @@ ADDRESS_MAP_END
/**************************** SIMULATIONS *****************************/
-static ADDRESS_MAP_START( kov_sim_map, AS_PROGRAM, 16, pgm_arm_type1_state )
+ADDRESS_MAP_START(pgm_arm_type1_state::kov_sim_map)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x4effff) AM_ROMBANK("bank1") /* Game ROM */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( cavepgm_mem, AS_PROGRAM, 16, pgm_arm_type1_state )
+ADDRESS_MAP_START(pgm_arm_type1_state::cavepgm_mem)
AM_IMPORT_FROM(pgm_base_mem)
AM_RANGE(0x000000, 0x3fffff) AM_ROM
/* protection devices installed (simulated) later */
@@ -229,7 +229,7 @@ MACHINE_CONFIG_DERIVED(pgm_arm_type1_state::pgm_arm_type1_sim, pgm_arm_type1_cav
/* protection CPU */
MCFG_CPU_ADD("prot", ARM7, 20000000 ) // 55857E?
- MCFG_CPU_PROGRAM_MAP(55857E_arm7_map)
+ MCFG_CPU_PROGRAM_MAP(_55857E_arm7_map)
MCFG_DEVICE_DISABLE()
MACHINE_CONFIG_END
@@ -239,7 +239,7 @@ MACHINE_CONFIG_DERIVED(pgm_arm_type1_state::pgm_arm_type1, pgm_arm_type1_cave)
/* protection CPU */
MCFG_CPU_ADD("prot", ARM7, 20000000) // 55857E?
- MCFG_CPU_PROGRAM_MAP(55857E_arm7_map)
+ MCFG_CPU_PROGRAM_MAP(_55857E_arm7_map)
MACHINE_CONFIG_END
void pgm_arm_type1_state::pgm_arm7_type1_latch_init()
diff --git a/src/mame/machine/pgmprot_igs027a_type1.h b/src/mame/machine/pgmprot_igs027a_type1.h
index 3d6069e141a..5ef69612fc7 100644
--- a/src/mame/machine/pgmprot_igs027a_type1.h
+++ b/src/mame/machine/pgmprot_igs027a_type1.h
@@ -129,6 +129,10 @@ public:
void pgm_arm_type1_sim(machine_config &config);
void pgm_arm_type1_cave(machine_config &config);
void pgm_arm_type1(machine_config &config);
+ void _55857E_arm7_map(address_map &map);
+ void cavepgm_mem(address_map &map);
+ void kov_map(address_map &map);
+ void kov_sim_map(address_map &map);
};
INPUT_PORTS_EXTERN( sango );
diff --git a/src/mame/machine/pgmprot_igs027a_type2.cpp b/src/mame/machine/pgmprot_igs027a_type2.cpp
index 222444bff8e..06bd7c182c9 100644
--- a/src/mame/machine/pgmprot_igs027a_type2.cpp
+++ b/src/mame/machine/pgmprot_igs027a_type2.cpp
@@ -104,7 +104,7 @@ WRITE16_MEMBER(pgm_arm_type2_state::arm7_ram_w )
/* 55857F? */
/* Knights of Valor 2, Martial Masters, DoDonpachi 2 */
/* no execute only space? */
-static ADDRESS_MAP_START( kov2_mem, AS_PROGRAM, 16, pgm_arm_type2_state )
+ADDRESS_MAP_START(pgm_arm_type2_state::kov2_mem)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x5fffff) AM_ROMBANK("bank1") /* Game ROM */
AM_RANGE(0xd00000, 0xd0ffff) AM_READWRITE(arm7_ram_r, arm7_ram_w) /* ARM7 Shared RAM */
@@ -112,7 +112,7 @@ static ADDRESS_MAP_START( kov2_mem, AS_PROGRAM, 16, pgm_arm_type2_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 55857F_arm7_map, AS_PROGRAM, 32, pgm_arm_type2_state )
+ADDRESS_MAP_START(pgm_arm_type2_state::_55857F_arm7_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM
AM_RANGE(0x08000000, 0x083fffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x10000000, 0x100003ff) AM_RAM
@@ -140,7 +140,7 @@ MACHINE_CONFIG_START(pgm_arm_type2_state::pgm_arm_type2)
/* protection CPU */
MCFG_CPU_ADD("prot", ARM7, 20000000) // 55857F
- MCFG_CPU_PROGRAM_MAP(55857F_arm7_map)
+ MCFG_CPU_PROGRAM_MAP(_55857F_arm7_map)
MACHINE_CONFIG_END
diff --git a/src/mame/machine/pgmprot_igs027a_type2.h b/src/mame/machine/pgmprot_igs027a_type2.h
index b1679790d92..c09702b0c00 100644
--- a/src/mame/machine/pgmprot_igs027a_type2.h
+++ b/src/mame/machine/pgmprot_igs027a_type2.h
@@ -41,6 +41,8 @@ public:
DECLARE_READ32_MEMBER( ddp2_speedup_r );
DECLARE_READ16_MEMBER( ddp2_main_speedup_r );
void pgm_arm_type2(machine_config &config);
+ void _55857F_arm7_map(address_map &map);
+ void kov2_mem(address_map &map);
};
/* simulations (or missing) */
diff --git a/src/mame/machine/pgmprot_igs027a_type3.cpp b/src/mame/machine/pgmprot_igs027a_type3.cpp
index f37081d6dcc..fe43fee053c 100644
--- a/src/mame/machine/pgmprot_igs027a_type3.cpp
+++ b/src/mame/machine/pgmprot_igs027a_type3.cpp
@@ -128,7 +128,7 @@ WRITE32_MEMBER(pgm_arm_type3_state::svg_latch_arm_w )
/* 55857G? */
/* Demon Front, The Gladiator, Happy 6-in-1, Spectral Vs. Generation, Killing Blade EX */
/* the ones with an EXECUTE ONLY region of ARM space? */
-static ADDRESS_MAP_START( svg_68k_mem, AS_PROGRAM, 16, pgm_arm_type3_state )
+ADDRESS_MAP_START(pgm_arm_type3_state::svg_68k_mem)
AM_IMPORT_FROM(pgm_mem)
AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("bank1") /* Game ROM */
@@ -138,7 +138,7 @@ static ADDRESS_MAP_START( svg_68k_mem, AS_PROGRAM, 16, pgm_arm_type3_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( 55857G_arm7_map, AS_PROGRAM, 32, pgm_arm_type3_state )
+ADDRESS_MAP_START(pgm_arm_type3_state::_55857G_arm7_map)
AM_RANGE(0x00000000, 0x00003fff) AM_ROM
AM_RANGE(0x08000000, 0x087fffff) AM_ROM AM_REGION("user1", 0)
AM_RANGE(0x10000000, 0x100003ff) AM_RAM AM_SHARE("arm_ram2")
@@ -198,7 +198,7 @@ MACHINE_CONFIG_START(pgm_arm_type3_state::pgm_arm_type3)
/* protection CPU */
MCFG_CPU_ADD("prot", ARM7, XTAL(33'000'000)) // 55857G - 33Mhz Xtal, at least on SVG
- MCFG_CPU_PROGRAM_MAP(55857G_arm7_map)
+ MCFG_CPU_PROGRAM_MAP(_55857G_arm7_map)
MCFG_MACHINE_RESET_OVERRIDE(pgm_arm_type3_state, pgm_arm_type3_reset)
MACHINE_CONFIG_END
diff --git a/src/mame/machine/pgmprot_igs027a_type3.h b/src/mame/machine/pgmprot_igs027a_type3.h
index 9b2594e6231..8ce87346fbe 100644
--- a/src/mame/machine/pgmprot_igs027a_type3.h
+++ b/src/mame/machine/pgmprot_igs027a_type3.h
@@ -58,6 +58,8 @@ public:
DECLARE_READ32_MEMBER( svgpcb_speedup_r );
DECLARE_MACHINE_RESET(pgm_arm_type3_reset);
void pgm_arm_type3(machine_config &config);
+ void _55857G_arm7_map(address_map &map);
+ void svg_68k_mem(address_map &map);
};
INPUT_PORTS_EXTERN(theglad);
diff --git a/src/mame/machine/prof80mmu.cpp b/src/mame/machine/prof80mmu.cpp
index 59fb7b304b4..6df56ee82c5 100644
--- a/src/mame/machine/prof80mmu.cpp
+++ b/src/mame/machine/prof80mmu.cpp
@@ -18,11 +18,11 @@
DEFINE_DEVICE_TYPE(PROF80_MMU, prof80_mmu_device, "prof80_mmu", "PROF80 MMU")
-DEVICE_ADDRESS_MAP_START( z80_program_map, 8, prof80_mmu_device )
+ADDRESS_MAP_START(prof80_mmu_device::z80_program_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(program_r, program_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, prof80_mmu_device )
+ADDRESS_MAP_START(prof80_mmu_device::program_map)
ADDRESS_MAP_END
@@ -38,7 +38,7 @@ ADDRESS_MAP_END
prof80_mmu_device::prof80_mmu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, PROF80_MMU, tag, owner, clock)
, device_memory_interface(mconfig, *this)
- , m_program_space_config("program", ENDIANNESS_LITTLE, 8, 20, 0, *ADDRESS_MAP_NAME(program_map))
+ , m_program_space_config("program", ENDIANNESS_LITTLE, 8, 20, 0, address_map_constructor(FUNC(prof80_mmu_device::program_map), this))
{
}
diff --git a/src/mame/machine/prof80mmu.h b/src/mame/machine/prof80mmu.h
index 73fc3708712..7c64f70cb5d 100644
--- a/src/mame/machine/prof80mmu.h
+++ b/src/mame/machine/prof80mmu.h
@@ -35,11 +35,12 @@ class prof80_mmu_device : public device_t, public device_memory_interface
public:
prof80_mmu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(z80_program_map, 8);
+ virtual void z80_program_map(address_map &map);
DECLARE_WRITE8_MEMBER( par_w );
DECLARE_WRITE_LINE_MEMBER( mme_w );
+ void program_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/saturn_cdb.cpp b/src/mame/machine/saturn_cdb.cpp
index 8155186578d..d655064150e 100644
--- a/src/mame/machine/saturn_cdb.cpp
+++ b/src/mame/machine/saturn_cdb.cpp
@@ -25,7 +25,7 @@ void saturn_cdb_device::device_start()
{
}
-static ADDRESS_MAP_START( saturn_cdb_map, AS_PROGRAM, 32, saturn_cdb_device )
+ADDRESS_MAP_START(saturn_cdb_device::saturn_cdb_map)
AM_RANGE(0x00000000, 0x0000ffff) AM_ROM
AM_RANGE(0x01000000, 0x010fffff) AM_RAM // RAM buffer area?
AM_RANGE(0x02000000, 0x0200003f) AM_RAM // i/f with SH-2s
diff --git a/src/mame/machine/saturn_cdb.h b/src/mame/machine/saturn_cdb.h
index f08a2a9efc2..7a6f19b43dc 100644
--- a/src/mame/machine/saturn_cdb.h
+++ b/src/mame/machine/saturn_cdb.h
@@ -16,6 +16,7 @@ public:
// construction/destruction
saturn_cdb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ void saturn_cdb_map(address_map &map);
protected:
virtual void device_start() override;
virtual const tiny_rom_entry *device_rom_region() const override;
diff --git a/src/mame/machine/segabb.cpp b/src/mame/machine/segabb.cpp
index 63a5dd7edb2..30cc2eb6f11 100644
--- a/src/mame/machine/segabb.cpp
+++ b/src/mame/machine/segabb.cpp
@@ -5,13 +5,13 @@
DEFINE_DEVICE_TYPE(SEGA_LINDBERGH_BASEBOARD, sega_lindbergh_baseboard_device, "lindbergh_baseboard", "Sega Lindbergh Baseboard")
-DEVICE_ADDRESS_MAP_START(map1, 32, sega_lindbergh_baseboard_device)
+ADDRESS_MAP_START(sega_lindbergh_baseboard_device::map1)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map2, 32, sega_lindbergh_baseboard_device)
+ADDRESS_MAP_START(sega_lindbergh_baseboard_device::map2)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(map3, 32, sega_lindbergh_baseboard_device)
+ADDRESS_MAP_START(sega_lindbergh_baseboard_device::map3)
ADDRESS_MAP_END
sega_lindbergh_baseboard_device::sega_lindbergh_baseboard_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/mame/machine/segabb.h b/src/mame/machine/segabb.h
index 1f1aba4b0a3..96bc685857e 100644
--- a/src/mame/machine/segabb.h
+++ b/src/mame/machine/segabb.h
@@ -21,9 +21,9 @@ protected:
virtual void device_reset() override;
private:
- DECLARE_ADDRESS_MAP(map1, 32);
- DECLARE_ADDRESS_MAP(map2, 32);
- DECLARE_ADDRESS_MAP(map3, 32);
+ void map1(address_map &map);
+ void map2(address_map &map);
+ void map3(address_map &map);
};
DECLARE_DEVICE_TYPE(SEGA_LINDBERGH_BASEBOARD, sega_lindbergh_baseboard_device)
diff --git a/src/mame/machine/seicop.cpp b/src/mame/machine/seicop.cpp
index 27f0769981d..47bc52ebe48 100644
--- a/src/mame/machine/seicop.cpp
+++ b/src/mame/machine/seicop.cpp
@@ -233,7 +233,7 @@ WRITE16_MEMBER(seibu_cop_bootleg_device::d104_move_w)
}
// anything that is read thru ROM range 0xc**** is replacement code, therefore on this HW they are latches.
-static ADDRESS_MAP_START( seibucopbl_map, 0, 16, seibu_cop_bootleg_device )
+ADDRESS_MAP_START(seibu_cop_bootleg_device::seibucopbl_map)
AM_RANGE(0x01e, 0x01f) AM_RAM // angle step, PC=0xc0186
AM_RANGE(0x046, 0x049) AM_READWRITE(d104_move_r,d104_move_w)
AM_RANGE(0x070, 0x07f) AM_RAM // DMA registers, PC=0xc0034
@@ -248,7 +248,7 @@ ADDRESS_MAP_END
seibu_cop_bootleg_device::seibu_cop_bootleg_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, SEIBU_COP_BOOTLEG, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("regs", ENDIANNESS_LITTLE, 16, 9, 0, nullptr, *ADDRESS_MAP_NAME(seibucopbl_map))
+ m_space_config("regs", ENDIANNESS_LITTLE, 16, 9, 0, address_map_constructor(), address_map_constructor(FUNC(seibu_cop_bootleg_device::seibucopbl_map), this))
{
}
diff --git a/src/mame/machine/seicop.h b/src/mame/machine/seicop.h
index 3f0f67385d6..8df35601338 100644
--- a/src/mame/machine/seicop.h
+++ b/src/mame/machine/seicop.h
@@ -28,6 +28,7 @@ public:
DECLARE_READ16_MEMBER( d104_move_r );
DECLARE_WRITE16_MEMBER( d104_move_w );
+ void seibucopbl_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/st0016.cpp b/src/mame/machine/st0016.cpp
index 7dbd738e0ae..aeb50dfb39a 100644
--- a/src/mame/machine/st0016.cpp
+++ b/src/mame/machine/st0016.cpp
@@ -9,7 +9,7 @@
DEFINE_DEVICE_TYPE(ST0016_CPU, st0016_cpu_device, "st0016_cpu", "ST0016")
-static ADDRESS_MAP_START(st0016_cpu_internal_map, AS_PROGRAM, 8, st0016_cpu_device)
+ADDRESS_MAP_START(st0016_cpu_device::st0016_cpu_internal_map)
AM_RANGE(0xc000, 0xcfff) AM_READ(st0016_sprite_ram_r) AM_WRITE(st0016_sprite_ram_w)
AM_RANGE(0xd000, 0xdfff) AM_READ(st0016_sprite2_ram_r) AM_WRITE(st0016_sprite2_ram_w)
AM_RANGE(0xea00, 0xebff) AM_READ(st0016_palette_ram_r) AM_WRITE(st0016_palette_ram_w)
@@ -18,7 +18,7 @@ static ADDRESS_MAP_START(st0016_cpu_internal_map, AS_PROGRAM, 8, st0016_cpu_devi
ADDRESS_MAP_END
-static ADDRESS_MAP_START(st0016_cpu_internal_io_map, AS_IO, 8, st0016_cpu_device)
+ADDRESS_MAP_START(st0016_cpu_device::st0016_cpu_internal_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) /* video/crt regs ? */
AM_RANGE(0xe2, 0xe2) AM_WRITE(st0016_sprite_bank_w)
@@ -39,8 +39,8 @@ st0016_cpu_device::st0016_cpu_device(const machine_config &mconfig, const char *
spr_dx(0),
spr_dy(0),
st0016_ramgfx(0),
- m_io_space_config("io", ENDIANNESS_LITTLE, 8, 16, 0, ADDRESS_MAP_NAME(st0016_cpu_internal_io_map)),
- m_space_config("regs", ENDIANNESS_LITTLE, 8, 16, 0, ADDRESS_MAP_NAME(st0016_cpu_internal_map)),
+ m_io_space_config("io", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(st0016_cpu_device::st0016_cpu_internal_io_map), this)),
+ m_space_config("regs", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(st0016_cpu_device::st0016_cpu_internal_map), this)),
m_screen(*this, ":screen"),
m_game_flag(-1)
{
diff --git a/src/mame/machine/st0016.h b/src/mame/machine/st0016.h
index 20511c0b865..8a7e3afe499 100644
--- a/src/mame/machine/st0016.h
+++ b/src/mame/machine/st0016.h
@@ -61,6 +61,8 @@ public:
int st0016_ramgfx;
std::unique_ptr<uint8_t[]> m_charram;
+ void st0016_cpu_internal_io_map(address_map &map);
+ void st0016_cpu_internal_map(address_map &map);
protected:
bool ismacs() const { return m_game_flag & 0x80; }
bool ismacs1() const { return (m_game_flag & 0x180) == 0x180; }
diff --git a/src/mame/machine/taitocchip.cpp b/src/mame/machine/taitocchip.cpp
index 8bc2c75328d..56816f9c241 100644
--- a/src/mame/machine/taitocchip.cpp
+++ b/src/mame/machine/taitocchip.cpp
@@ -116,7 +116,7 @@ ROM_START( taito_cchip )
ROM_END
-static ADDRESS_MAP_START( cchip_ram_bank, AS_PROGRAM, 8, taito_cchip_device )
+ADDRESS_MAP_START(taito_cchip_device::cchip_ram_bank)
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("upd4464") // upd4464
ADDRESS_MAP_END
@@ -153,7 +153,7 @@ WRITE8_MEMBER(taito_cchip_device::mem_w)
return m_upd4464_bank->write8(space,offset,data);
}
-static ADDRESS_MAP_START( cchip_map, AS_PROGRAM, 8, taito_cchip_device )
+ADDRESS_MAP_START(taito_cchip_device::cchip_map)
//AM_RANGE(0x0000, 0x0fff) AM_ROM // internal ROM of uPD7811
AM_RANGE(0x1000, 0x13ff) AM_DEVICE("upd4464_bank", address_map_bank_device, amap8)
AM_RANGE(0x1400, 0x17ff) AM_READWRITE(asic_r, asic_w)
diff --git a/src/mame/machine/taitocchip.h b/src/mame/machine/taitocchip.h
index 0657dda2329..96bbdac0d95 100644
--- a/src/mame/machine/taitocchip.h
+++ b/src/mame/machine/taitocchip.h
@@ -27,6 +27,8 @@ public:
DECLARE_READ8_MEMBER(mem_r);
DECLARE_WRITE8_MEMBER(mem_w);
+ void cchip_map(address_map &map);
+ void cchip_ram_bank(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/machine/ti85.cpp b/src/mame/machine/ti85.cpp
index bbe219e159d..be098565c09 100644
--- a/src/mame/machine/ti85.cpp
+++ b/src/mame/machine/ti85.cpp
@@ -335,7 +335,6 @@ MACHINE_START_MEMBER(ti85_state,ti83p)
void ti85_state::ti8xpse_init_common()
{
//address_space &space = m_maincpu->space(AS_PROGRAM);
- //address_space &asic = ADDRESS_MAP_NAME(ti83p_asic_mem);
m_timer_interrupt_mask = 0;
m_timer_interrupt_status = 0;
diff --git a/src/mame/machine/wangpckb.cpp b/src/mame/machine/wangpckb.cpp
index 74e0f5d8f65..516371d90d7 100644
--- a/src/mame/machine/wangpckb.cpp
+++ b/src/mame/machine/wangpckb.cpp
@@ -98,7 +98,7 @@ const tiny_rom_entry *wangpc_keyboard_device::device_rom_region() const
// ADDRESS_MAP( wangpc_keyboard_io )
//-------------------------------------------------
-static ADDRESS_MAP_START( wangpc_keyboard_io, AS_IO, 8, wangpc_keyboard_device )
+ADDRESS_MAP_START(wangpc_keyboard_device::wangpc_keyboard_io)
//AM_RANGE(0x0000, 0xfeff) AM_READNOP
AM_RANGE(0x47, 0x58) AM_MIRROR(0xff00) AM_READNOP
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_DEVWRITE(SN76496_TAG, sn76496_device, write)
diff --git a/src/mame/machine/wangpckb.h b/src/mame/machine/wangpckb.h
index 828ca0f7b9f..3b891c82abc 100644
--- a/src/mame/machine/wangpckb.h
+++ b/src/mame/machine/wangpckb.h
@@ -59,6 +59,7 @@ public:
DECLARE_WRITE8_MEMBER( kb_p2_w );
DECLARE_WRITE8_MEMBER( kb_p3_w );
+ void wangpc_keyboard_io(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/machine/wpc_shift.cpp b/src/mame/machine/wpc_shift.cpp
index 1a51477694a..0dd7c30fff9 100644
--- a/src/mame/machine/wpc_shift.cpp
+++ b/src/mame/machine/wpc_shift.cpp
@@ -15,7 +15,7 @@ wpc_shift_device::~wpc_shift_device()
{
}
-DEVICE_ADDRESS_MAP_START( registers, 8, wpc_shift_device )
+ADDRESS_MAP_START(wpc_shift_device::registers)
AM_RANGE(0, 0) AM_READWRITE(adrh_r, adrh_w)
AM_RANGE(1, 1) AM_READWRITE(adrl_r, adrl_w)
AM_RANGE(2, 2) AM_READWRITE(val1_r, val1_w)
diff --git a/src/mame/machine/wpc_shift.h b/src/mame/machine/wpc_shift.h
index 661bbb4fb83..7aa4974b88f 100644
--- a/src/mame/machine/wpc_shift.h
+++ b/src/mame/machine/wpc_shift.h
@@ -15,7 +15,7 @@ public:
wpc_shift_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual ~wpc_shift_device();
- DECLARE_ADDRESS_MAP(registers, 8);
+ void registers(address_map &map);
DECLARE_READ8_MEMBER(adrh_r);
DECLARE_WRITE8_MEMBER(adrh_w);
diff --git a/src/mame/machine/xbox.cpp b/src/mame/machine/xbox.cpp
index 96b9eac091e..7d60c6b3224 100644
--- a/src/mame/machine/xbox.cpp
+++ b/src/mame/machine/xbox.cpp
@@ -826,7 +826,7 @@ void xbox_base_state::machine_start()
save_item(NAME(pic16lc_buffer));
}
-ADDRESS_MAP_START(xbox_base_map, AS_PROGRAM, 32, xbox_base_state)
+ADDRESS_MAP_START(xbox_base_state::xbox_base_map)
AM_RANGE(0x00000000, 0x07ffffff) AM_RAM // 128 megabytes
#if 0
AM_RANGE(0xf0000000, 0xf7ffffff) AM_RAM AM_SHARE("nv2a_share") // 3d accelerator wants this
@@ -839,7 +839,7 @@ ADDRESS_MAP_START(xbox_base_map, AS_PROGRAM, 32, xbox_base_state)
#endif
ADDRESS_MAP_END
-ADDRESS_MAP_START(xbox_base_map_io, AS_IO, 32, xbox_base_state)
+ADDRESS_MAP_START(xbox_base_state::xbox_base_map_io)
AM_RANGE(0x0020, 0x0023) AM_DEVREADWRITE8("pic8259_1", pic8259_device, read, write, 0xffffffff)
AM_RANGE(0x002c, 0x002f) AM_READWRITE8(superio_read, superio_write, 0xffff0000)
AM_RANGE(0x0040, 0x0043) AM_DEVREADWRITE8("pit8254", pit8254_device, read, write, 0xffffffff)
diff --git a/src/mame/machine/xbox_pci.cpp b/src/mame/machine/xbox_pci.cpp
index 8e9d9c1a656..962f574c06b 100644
--- a/src/mame/machine/xbox_pci.cpp
+++ b/src/mame/machine/xbox_pci.cpp
@@ -61,8 +61,8 @@ void nv2a_host_device::device_reset()
DEFINE_DEVICE_TYPE(NV2A_RAM, nv2a_ram_device, "nv2a_ram", "NV2A Memory Controller - SDRAM")
-DEVICE_ADDRESS_MAP_START(config_map, 32, nv2a_ram_device)
- AM_INHERIT_FROM(pci_device::config_map)
+ADDRESS_MAP_START(nv2a_ram_device::config_map)
+ AM_IMPORT_FROM(pci_device::config_map)
AM_RANGE(0x6c, 0x6f) AM_READWRITE(config_register_r, config_register_w)
ADDRESS_MAP_END
@@ -86,7 +86,7 @@ WRITE32_MEMBER(nv2a_ram_device::config_register_w)
DEFINE_DEVICE_TYPE(MCPX_LPC, mcpx_lpc_device, "mcpx_lpc", "MCPX HUB Interface - ISA Bridge")
-DEVICE_ADDRESS_MAP_START(lpc_io, 32, mcpx_lpc_device)
+ADDRESS_MAP_START(mcpx_lpc_device::lpc_io)
AM_RANGE(0x00000000, 0x000000ff) AM_READWRITE(lpc_r, lpc_w)
ADDRESS_MAP_END
@@ -122,15 +122,15 @@ WRITE32_MEMBER(mcpx_lpc_device::lpc_w)
DEFINE_DEVICE_TYPE(MCPX_SMBUS, mcpx_smbus_device, "mcpx_smbus", "MCPX SMBus Controller")
-DEVICE_ADDRESS_MAP_START(smbus_io0, 32, mcpx_smbus_device)
+ADDRESS_MAP_START(mcpx_smbus_device::smbus_io0)
AM_RANGE(0x00000000, 0x0000000f) AM_NOP
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(smbus_io1, 32, mcpx_smbus_device)
+ADDRESS_MAP_START(mcpx_smbus_device::smbus_io1)
AM_RANGE(0x00000000, 0x0000000f) AM_READWRITE(smbus_r, smbus_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(smbus_io2, 32, mcpx_smbus_device)
+ADDRESS_MAP_START(mcpx_smbus_device::smbus_io2)
AM_RANGE(0x00000000, 0x0000001f) AM_NOP
ADDRESS_MAP_END
@@ -221,7 +221,7 @@ WRITE32_MEMBER(mcpx_smbus_device::smbus_w)
DEFINE_DEVICE_TYPE(MCPX_OHCI, mcpx_ohci_device, "mcpx_ohci", "MCPX OHCI USB Controller")
-DEVICE_ADDRESS_MAP_START(ohci_mmio, 32, mcpx_ohci_device)
+ADDRESS_MAP_START(mcpx_ohci_device::ohci_mmio)
AM_RANGE(0x00000000, 0x00000fff) AM_READWRITE(ohci_r, ohci_w)
ADDRESS_MAP_END
@@ -318,11 +318,11 @@ WRITE32_MEMBER(mcpx_ohci_device::ohci_w)
DEFINE_DEVICE_TYPE(MCPX_ETH, mcpx_eth_device, "mcpx_eth", "MCP Networking Adapter")
-DEVICE_ADDRESS_MAP_START(eth_mmio, 32, mcpx_eth_device)
+ADDRESS_MAP_START(mcpx_eth_device::eth_mmio)
AM_RANGE(0x00000000, 0x0000003ff) AM_READWRITE(eth_r, eth_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(eth_io, 32, mcpx_eth_device)
+ADDRESS_MAP_START(mcpx_eth_device::eth_io)
AM_RANGE(0x00000000, 0x000000007) AM_READWRITE(eth_io_r, eth_io_w)
ADDRESS_MAP_END
@@ -369,7 +369,7 @@ WRITE32_MEMBER(mcpx_eth_device::eth_io_w)
DEFINE_DEVICE_TYPE(MCPX_APU, mcpx_apu_device, "mcpx_apu", "MCP APU")
-DEVICE_ADDRESS_MAP_START(apu_mmio, 32, mcpx_apu_device)
+ADDRESS_MAP_START(mcpx_apu_device::apu_mmio)
AM_RANGE(0x00000000, 0x00007ffff) AM_READWRITE(apu_r, apu_w)
ADDRESS_MAP_END
@@ -562,15 +562,15 @@ WRITE32_MEMBER(mcpx_apu_device::apu_w)
DEFINE_DEVICE_TYPE(MCPX_AC97_AUDIO, mcpx_ac97_audio_device, "mcpx_ac97_audio", "MCPX AC'97 Audio Codec Interface")
-DEVICE_ADDRESS_MAP_START(ac97_mmio, 32, mcpx_ac97_audio_device)
+ADDRESS_MAP_START(mcpx_ac97_audio_device::ac97_mmio)
AM_RANGE(0x00000000, 0x000000fff) AM_READWRITE(ac97_audio_r, ac97_audio_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(ac97_io0, 32, mcpx_ac97_audio_device)
+ADDRESS_MAP_START(mcpx_ac97_audio_device::ac97_io0)
AM_RANGE(0x00000000, 0x0000000ff) AM_READWRITE(ac97_audio_io0_r, ac97_audio_io0_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(ac97_io1, 32, mcpx_ac97_audio_device)
+ADDRESS_MAP_START(mcpx_ac97_audio_device::ac97_io1)
AM_RANGE(0x00000000, 0x00000007f) AM_READWRITE(ac97_audio_io1_r, ac97_audio_io1_w)
ADDRESS_MAP_END
@@ -678,7 +678,7 @@ mcpx_ac97_modem_device::mcpx_ac97_modem_device(const machine_config &mconfig, co
DEFINE_DEVICE_TYPE(MCPX_IDE, mcpx_ide_device, "mcpx_ide", "MCPX IDE Controller")
-DEVICE_ADDRESS_MAP_START(mcpx_ide_io, 32, mcpx_ide_device)
+ADDRESS_MAP_START(mcpx_ide_device::mcpx_ide_io)
AM_RANGE(0x0000, 0x000f) AM_DEVREADWRITE("ide", bus_master_ide_controller_device, bmdma_r, bmdma_w)
ADDRESS_MAP_END
@@ -739,11 +739,11 @@ void nv2a_agp_device::device_reset()
DEFINE_DEVICE_TYPE(NV2A_GPU, nv2a_gpu_device, "nv2a_gpu", "NVIDIA NV2A GPU")
-DEVICE_ADDRESS_MAP_START(nv2a_mmio, 32, nv2a_gpu_device)
+ADDRESS_MAP_START(nv2a_gpu_device::nv2a_mmio)
AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_READWRITE(geforce_r, geforce_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(nv2a_mirror, 32, nv2a_gpu_device)
+ADDRESS_MAP_START(nv2a_gpu_device::nv2a_mirror)
AM_RANGE(0x00000000, 0x07ffffff) AM_RAM AM_READWRITE(nv2a_mirror_r, nv2a_mirror_w)
ADDRESS_MAP_END
diff --git a/src/mame/video/abc1600.cpp b/src/mame/video/abc1600.cpp
index f3e34a187a7..744e61bac9a 100644
--- a/src/mame/video/abc1600.cpp
+++ b/src/mame/video/abc1600.cpp
@@ -47,16 +47,16 @@
DEFINE_DEVICE_TYPE(ABC1600_MOVER, abc1600_mover_device, "abc1600mover", "ABC 1600 Mover")
-DEVICE_ADDRESS_MAP_START( vram_map, 8, abc1600_mover_device )
+ADDRESS_MAP_START(abc1600_mover_device::vram_map)
AM_RANGE(0x00000, 0x7ffff) AM_READWRITE(video_ram_r, video_ram_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( crtc_map, 8, abc1600_mover_device )
+ADDRESS_MAP_START(abc1600_mover_device::crtc_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xfe) AM_DEVREADWRITE(SY6845E_TAG, mc6845_device, status_r, address_w)
AM_RANGE(0x01, 0x01) AM_MIRROR(0xfe) AM_DEVREADWRITE(SY6845E_TAG, mc6845_device, register_r, register_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( iowr0_map, 8, abc1600_mover_device )
+ADDRESS_MAP_START(abc1600_mover_device::iowr0_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_READ(iord0_r)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xf8) AM_WRITE(ldsx_hb_w)
AM_RANGE(0x01, 0x01) AM_MIRROR(0xf8) AM_WRITE(ldsx_lb_w)
@@ -68,7 +68,7 @@ DEVICE_ADDRESS_MAP_START( iowr0_map, 8, abc1600_mover_device )
AM_RANGE(0x07, 0x07) AM_MIRROR(0xf8) AM_WRITE(ldty_lb_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( iowr1_map, 8, abc1600_mover_device )
+ADDRESS_MAP_START(abc1600_mover_device::iowr1_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_READNOP
AM_RANGE(0x00, 0x00) AM_MIRROR(0xf8) AM_WRITE(ldfx_hb_w)
AM_RANGE(0x01, 0x01) AM_MIRROR(0xf8) AM_WRITE(ldfx_lb_w)
@@ -78,7 +78,7 @@ DEVICE_ADDRESS_MAP_START( iowr1_map, 8, abc1600_mover_device )
AM_RANGE(0x07, 0x07) AM_MIRROR(0xf8) AM_WRITE(wrdl_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( iowr2_map, 8, abc1600_mover_device )
+ADDRESS_MAP_START(abc1600_mover_device::iowr2_map)
AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_READNOP
AM_RANGE(0x00, 0x00) AM_MIRROR(0xf8) AM_WRITE(wrmask_strobe_hb_w)
AM_RANGE(0x01, 0x01) AM_MIRROR(0xf8) AM_WRITE(wrmask_strobe_lb_w)
@@ -88,7 +88,7 @@ DEVICE_ADDRESS_MAP_START( iowr2_map, 8, abc1600_mover_device )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( mover_map, 0, 16, abc1600_mover_device )
+ADDRESS_MAP_START(abc1600_mover_device::mover_map)
AM_RANGE(0x00000, 0x3ffff) AM_RAM
ADDRESS_MAP_END
@@ -221,7 +221,7 @@ MACHINE_CONFIG_END
abc1600_mover_device::abc1600_mover_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, ABC1600_MOVER, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_space_config("vram", ENDIANNESS_BIG, 16, 18, -1, *ADDRESS_MAP_NAME(mover_map)),
+ m_space_config("vram", ENDIANNESS_BIG, 16, 18, -1, address_map_constructor(FUNC(abc1600_mover_device::mover_map), this)),
m_crtc(*this, SY6845E_TAG),
m_palette(*this, "palette"),
m_wrmsk_rom(*this, "wrmsk"),
diff --git a/src/mame/video/abc1600.h b/src/mame/video/abc1600.h
index fb68297c890..8221463d16b 100644
--- a/src/mame/video/abc1600.h
+++ b/src/mame/video/abc1600.h
@@ -40,12 +40,13 @@ public:
// construction/destruction
abc1600_mover_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(vram_map, 8);
- virtual DECLARE_ADDRESS_MAP(crtc_map, 8);
- virtual DECLARE_ADDRESS_MAP(iowr0_map, 8);
- virtual DECLARE_ADDRESS_MAP(iowr1_map, 8);
- virtual DECLARE_ADDRESS_MAP(iowr2_map, 8);
+ virtual void vram_map(address_map &map);
+ virtual void crtc_map(address_map &map);
+ virtual void iowr0_map(address_map &map);
+ virtual void iowr1_map(address_map &map);
+ virtual void iowr2_map(address_map &map);
+ void mover_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/video/bfm_adr2.cpp b/src/mame/video/bfm_adr2.cpp
index 2f19191e33b..6c67d3a4860 100644
--- a/src/mame/video/bfm_adr2.cpp
+++ b/src/mame/video/bfm_adr2.cpp
@@ -519,7 +519,7 @@ void bfm_adder2_device::adder2_decode_char_roms()
// adder2 board memorymap /////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
-static ADDRESS_MAP_START( adder2_memmap, AS_PROGRAM, 8, bfm_adder2_device )
+ADDRESS_MAP_START(bfm_adder2_device::adder2_memmap)
AM_RANGE(0x0000, 0x0000) AM_WRITE(adder2_screen_page_w) // screen access/display select
AM_RANGE(0x0000, 0x7FFF) AM_ROMBANK("bank2") // 8k paged ROM (4 pages)
diff --git a/src/mame/video/bfm_adr2.h b/src/mame/video/bfm_adr2.h
index feaf94ef8ff..ce48058197e 100644
--- a/src/mame/video/bfm_adr2.h
+++ b/src/mame/video/bfm_adr2.h
@@ -37,6 +37,7 @@ public:
void adder2_decode_char_roms();
+ void adder2_memmap(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/video/bfm_dm01.cpp b/src/mame/video/bfm_dm01.cpp
index 414613a44a6..3a52e2901cc 100644
--- a/src/mame/video/bfm_dm01.cpp
+++ b/src/mame/video/bfm_dm01.cpp
@@ -264,7 +264,7 @@ WRITE8_MEMBER( bfm_dm01_device::unknown_w )
///////////////////////////////////////////////////////////////////////////
-ADDRESS_MAP_START( bfm_dm01_memmap, AS_PROGRAM, 8, bfm_dm01_device )
+ADDRESS_MAP_START(bfm_dm01_device::bfm_dm01_memmap)
AM_RANGE(0x0000, 0x1fff) AM_RAM // 8k RAM
AM_RANGE(0x2000, 0x2000) AM_READWRITE(control_r, control_w) // control reg
AM_RANGE(0x2800, 0x2800) AM_READWRITE(mux_r, mux_w) // mux
diff --git a/src/mame/video/bfm_dm01.h b/src/mame/video/bfm_dm01.h
index 48dfe7b4392..e41e7ed4a16 100644
--- a/src/mame/video/bfm_dm01.h
+++ b/src/mame/video/bfm_dm01.h
@@ -35,6 +35,7 @@ public:
void writedata(uint8_t data);
int busy(void);
+ void bfm_dm01_memmap(address_map &map);
protected:
// device-level overrides
virtual void device_add_mconfig(machine_config &config) override;
diff --git a/src/mame/video/c45.cpp b/src/mame/video/c45.cpp
index 2eaca4bf0ee..215ce7b92a9 100644
--- a/src/mame/video/c45.cpp
+++ b/src/mame/video/c45.cpp
@@ -65,7 +65,7 @@ GFXDECODE_MEMBER( namco_c45_road_device::gfxinfo )
GFXDECODE_END
-DEVICE_ADDRESS_MAP_START(map, 16, namco_c45_road_device)
+ADDRESS_MAP_START(namco_c45_road_device::map)
AM_RANGE(0x00000, 0x0ffff) AM_RAM_WRITE(tilemap_w) AM_SHARE("tmapram")
AM_RANGE(0x10000, 0x1f9ff) AM_RAM_WRITE(tileram_w) AM_SHARE("tileram")
AM_RANGE(0x1fa00, 0x1ffff) AM_RAM AM_SHARE("lineram")
@@ -80,7 +80,7 @@ namco_c45_road_device::namco_c45_road_device(const machine_config &mconfig, cons
: device_t(mconfig, NAMCO_C45_ROAD, tag, owner, clock),
device_gfx_interface(mconfig, *this, gfxinfo),
device_memory_interface(mconfig, *this),
- m_space_config("c45", ENDIANNESS_BIG, 16, 17, 0, address_map_delegate(FUNC(namco_c45_road_device::map), this)),
+ m_space_config("c45", ENDIANNESS_BIG, 16, 17, 0, address_map_constructor(FUNC(namco_c45_road_device::map), this)),
m_tmapram(*this, "tmapram"),
m_tileram(*this, "tileram"),
m_lineram(*this, "lineram"),
diff --git a/src/mame/video/c45.h b/src/mame/video/c45.h
index 7ff66f3274d..eef339bbe89 100644
--- a/src/mame/video/c45.h
+++ b/src/mame/video/c45.h
@@ -27,7 +27,7 @@ public:
// construction/destruction
namco_c45_road_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
// read/write handlers
DECLARE_READ16_MEMBER( read );
diff --git a/src/mame/video/cidelsa.cpp b/src/mame/video/cidelsa.cpp
index 8a212ec739a..9ba1400c1ff 100644
--- a/src/mame/video/cidelsa.cpp
+++ b/src/mame/video/cidelsa.cpp
@@ -102,12 +102,12 @@ WRITE_LINE_MEMBER( cidelsa_state::prd_w )
/* Page RAM */
-static ADDRESS_MAP_START( cidelsa_page_ram, 0, 8, cidelsa_state )
+ADDRESS_MAP_START(cidelsa_state::cidelsa_page_ram)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000, 0x3ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( draco_page_ram, 0, 8, draco_state )
+ADDRESS_MAP_START(draco_state::draco_page_ram)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x000, 0x7ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/video/comx35.cpp b/src/mame/video/comx35.cpp
index 4c544f4fae1..55b29c3464f 100644
--- a/src/mame/video/comx35.cpp
+++ b/src/mame/video/comx35.cpp
@@ -41,7 +41,7 @@ WRITE8_MEMBER( comx35_state::cdp1869_w )
/* CDP1869 */
-static ADDRESS_MAP_START( cdp1869_page_ram, 0, 8, comx35_state )
+ADDRESS_MAP_START(comx35_state::cdp1869_page_ram)
AM_RANGE(0x000, 0x7ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/video/decodmd1.cpp b/src/mame/video/decodmd1.cpp
index f96794998e3..70f9269ca9c 100644
--- a/src/mame/video/decodmd1.cpp
+++ b/src/mame/video/decodmd1.cpp
@@ -188,13 +188,13 @@ TIMER_DEVICE_CALLBACK_MEMBER(decodmd_type1_device::dmd_nmi)
m_cpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
}
-static ADDRESS_MAP_START( decodmd1_map, AS_PROGRAM, 8, decodmd_type1_device )
+ADDRESS_MAP_START(decodmd_type1_device::decodmd1_map)
AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("dmdbank2") // last 16k of ROM
AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("dmdbank1")
AM_RANGE(0x8000, 0x9fff) AM_RAMBANK("dmdram")
ADDRESS_MAP_END
-static ADDRESS_MAP_START( decodmd1_io_map, AS_IO, 8, decodmd_type1_device )
+ADDRESS_MAP_START(decodmd_type1_device::decodmd1_io_map)
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0xff) AM_READWRITE(dmd_port_r, dmd_port_w)
ADDRESS_MAP_END
diff --git a/src/mame/video/decodmd1.h b/src/mame/video/decodmd1.h
index a9d193c8248..f9bd15b66f8 100644
--- a/src/mame/video/decodmd1.h
+++ b/src/mame/video/decodmd1.h
@@ -47,6 +47,8 @@ public:
static void static_set_gfxregion(device_t &device, const char *tag);
+ void decodmd1_io_map(address_map &map);
+ void decodmd1_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/video/decodmd2.cpp b/src/mame/video/decodmd2.cpp
index 4b568e1c93a..287d38c07d6 100644
--- a/src/mame/video/decodmd2.cpp
+++ b/src/mame/video/decodmd2.cpp
@@ -118,7 +118,7 @@ MC6845_UPDATE_ROW( decodmd_type2_device::crtc_update_row )
}
}
-static ADDRESS_MAP_START( decodmd2_map, AS_PROGRAM, 8, decodmd_type2_device )
+ADDRESS_MAP_START(decodmd_type2_device::decodmd2_map)
AM_RANGE(0x0000, 0x2fff) AM_RAMBANK("dmdram")
AM_RANGE(0x3000, 0x3000) AM_READWRITE(crtc_status_r,crtc_address_w)
AM_RANGE(0x3001, 0x3001) AM_WRITE(crtc_register_w)
diff --git a/src/mame/video/decodmd2.h b/src/mame/video/decodmd2.h
index bf5497c24db..3c39f5bc636 100644
--- a/src/mame/video/decodmd2.h
+++ b/src/mame/video/decodmd2.h
@@ -37,6 +37,7 @@ public:
static void static_set_gfxregion(device_t &device, const char *tag);
+ void decodmd2_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/video/decodmd3.cpp b/src/mame/video/decodmd3.cpp
index a31099806a5..f111124e662 100644
--- a/src/mame/video/decodmd3.cpp
+++ b/src/mame/video/decodmd3.cpp
@@ -122,7 +122,7 @@ MC6845_UPDATE_ROW( decodmd_type3_device::crtc_update_row )
}
}
-static ADDRESS_MAP_START( decodmd3_map, AS_PROGRAM, 16, decodmd_type3_device )
+ADDRESS_MAP_START(decodmd_type3_device::decodmd3_map)
AM_RANGE(0x00000000, 0x000fffff) AM_ROMBANK("dmdrom")
AM_RANGE(0x00800000, 0x0080ffff) AM_RAMBANK("dmdram")
AM_RANGE(0x00c00010, 0x00c00011) AM_READWRITE(crtc_status_r,crtc_address_w)
diff --git a/src/mame/video/decodmd3.h b/src/mame/video/decodmd3.h
index 700b4987749..5c9d901b3cf 100644
--- a/src/mame/video/decodmd3.h
+++ b/src/mame/video/decodmd3.h
@@ -35,6 +35,7 @@ public:
static void static_set_gfxregion(device_t &device, const char *tag);
+ void decodmd3_map(address_map &map);
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/video/gamate.cpp b/src/mame/video/gamate.cpp
index f19b3f72289..df216499478 100644
--- a/src/mame/video/gamate.cpp
+++ b/src/mame/video/gamate.cpp
@@ -31,7 +31,7 @@
DEFINE_DEVICE_TYPE(GAMATE_VIDEO, gamate_video_device, "gamate_vid", "Gamate Video Hardware")
-DEVICE_ADDRESS_MAP_START( regs_map, 8, gamate_video_device )
+ADDRESS_MAP_START(gamate_video_device::regs_map)
AM_RANGE(0x01,0x01) AM_WRITE(lcdcon_w)
AM_RANGE(0x02,0x02) AM_WRITE(xscroll_w)
AM_RANGE(0x03,0x03) AM_WRITE(yscroll_w)
@@ -41,14 +41,14 @@ DEVICE_ADDRESS_MAP_START( regs_map, 8, gamate_video_device )
AM_RANGE(0x07,0x07) AM_WRITE(vram_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( vram_map, 8, gamate_video_device )
+ADDRESS_MAP_START(gamate_video_device::vram_map)
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("vram") // 2x 8KB SRAMs
ADDRESS_MAP_END
gamate_video_device::gamate_video_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, GAMATE_VIDEO, tag, owner, clock),
device_memory_interface(mconfig, *this),
- m_vram_space_config("vramspace", ENDIANNESS_BIG, 8, 14, 0, address_map_delegate(FUNC(gamate_video_device::vram_map), this)),
+ m_vram_space_config("vramspace", ENDIANNESS_BIG, 8, 14, 0, address_map_constructor(FUNC(gamate_video_device::vram_map), this)),
m_vram(*this, "vram"),
m_vramaddress(0),
m_bitplaneselect(0),
diff --git a/src/mame/video/gamate.h b/src/mame/video/gamate.h
index 0e5bf2f767b..98535cd3d09 100644
--- a/src/mame/video/gamate.h
+++ b/src/mame/video/gamate.h
@@ -26,8 +26,8 @@ public:
DECLARE_READ8_MEMBER(vram_r);
DECLARE_WRITE8_MEMBER(vram_w);
- DECLARE_ADDRESS_MAP(regs_map, 8);
- DECLARE_ADDRESS_MAP(vram_map, 8);
+ void regs_map(address_map &map);
+ void vram_map(address_map &map);
DECLARE_PALETTE_INIT(gamate);
diff --git a/src/mame/video/gp9001.cpp b/src/mame/video/gp9001.cpp
index 11fd8ef16ed..b4e576a015c 100644
--- a/src/mame/video/gp9001.cpp
+++ b/src/mame/video/gp9001.cpp
@@ -173,7 +173,7 @@ WRITE16_MEMBER(gp9001vdp_device::top_tmap_w)
}
-DEVICE_ADDRESS_MAP_START( map, 16, gp9001vdp_device )
+ADDRESS_MAP_START(gp9001vdp_device::map)
AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(bg_tmap_w) AM_SHARE("vram_bg")
AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(fg_tmap_w) AM_SHARE("vram_fg")
AM_RANGE(0x2000, 0x2fff) AM_RAM_WRITE(top_tmap_w) AM_SHARE("vram_top")
@@ -219,7 +219,7 @@ gp9001vdp_device::gp9001vdp_device(const machine_config &mconfig, const char *ta
device_gfx_interface(mconfig, *this, gfxinfo),
device_video_interface(mconfig, *this),
device_memory_interface(mconfig, *this),
- m_space_config("gp9001vdp", ENDIANNESS_BIG, 16,14, 0, address_map_delegate(FUNC(gp9001vdp_device::map), this)),
+ m_space_config("gp9001vdp", ENDIANNESS_BIG, 16,14, 0, address_map_constructor(FUNC(gp9001vdp_device::map), this)),
m_vram_bg(*this, "vram_bg"),
m_vram_fg(*this, "vram_fg"),
m_vram_top(*this, "vram_top"),
diff --git a/src/mame/video/gp9001.h b/src/mame/video/gp9001.h
index 8e610d64d0d..0c832b50674 100644
--- a/src/mame/video/gp9001.h
+++ b/src/mame/video/gp9001.h
@@ -33,7 +33,7 @@ public:
bitmap_ind8 *custom_priority_bitmap;
- DECLARE_ADDRESS_MAP(map, 16);
+ void map(address_map &map);
// game-specific hack stuff
void disable_sprite_buffer() { sp.use_sprite_buffer = 0; }
diff --git a/src/mame/video/igs017_igs031.cpp b/src/mame/video/igs017_igs031.cpp
index 6b34006f6d5..392592b7373 100644
--- a/src/mame/video/igs017_igs031.cpp
+++ b/src/mame/video/igs017_igs031.cpp
@@ -28,7 +28,7 @@ all the known IGS017 / IGS031 games use the following memory map, is the IGS017
-DEVICE_ADDRESS_MAP_START( map, 8, igs017_igs031_device )
+ADDRESS_MAP_START(igs017_igs031_device::map)
AM_RANGE( 0x1000, 0x17ff ) AM_RAM AM_SHARE("spriteram")
// AM_RANGE( 0x1800, 0x1bff ) AM_RAM //_DEVWRITE("palette", palette_device, write) AM_SHARE("palette")
AM_RANGE( 0x1800, 0x1bff ) AM_RAM_WRITE(palram_w) AM_SHARE("palram")
@@ -80,7 +80,7 @@ igs017_igs031_device::igs017_igs031_device(const machine_config &mconfig, const
device_gfx_interface(mconfig, *this, gfxinfo),
device_video_interface(mconfig, *this),
device_memory_interface(mconfig, *this),
- m_space_config("igs017_igs031", ENDIANNESS_BIG, 8,15, 0, address_map_delegate(FUNC(igs017_igs031_device::map), this)),
+ m_space_config("igs017_igs031", ENDIANNESS_BIG, 8,15, 0, address_map_constructor(FUNC(igs017_igs031_device::map), this)),
m_spriteram(*this, "spriteram", 0),
m_fg_videoram(*this, "fg_videoram", 0),
m_bg_videoram(*this, "bg_videoram", 0),
diff --git a/src/mame/video/igs017_igs031.h b/src/mame/video/igs017_igs031.h
index da2ca16e383..d9a998775a0 100644
--- a/src/mame/video/igs017_igs031.h
+++ b/src/mame/video/igs017_igs031.h
@@ -36,7 +36,7 @@ public:
igs017_igs031_palette_scramble_delegate m_palette_scramble_cb;
- DECLARE_ADDRESS_MAP(map, 8);
+ void map(address_map &map);
DECLARE_READ8_MEMBER(read);
DECLARE_WRITE8_MEMBER(write);
diff --git a/src/mame/video/kyocera.cpp b/src/mame/video/kyocera.cpp
index 217f54db8fc..78b7b4ed2ea 100644
--- a/src/mame/video/kyocera.cpp
+++ b/src/mame/video/kyocera.cpp
@@ -42,7 +42,7 @@ uint32_t tandy200_state::screen_update(screen_device &screen, bitmap_ind16 &bitm
return 0;
}
-static ADDRESS_MAP_START( tandy200_lcdc, 0, 8, tandy200_state )
+ADDRESS_MAP_START(tandy200_state::tandy200_lcdc)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x1fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/video/mikromik.cpp b/src/mame/video/mikromik.cpp
index 7a53a10c976..d54ed056052 100644
--- a/src/mame/video/mikromik.cpp
+++ b/src/mame/video/mikromik.cpp
@@ -59,7 +59,7 @@ I8275_DRAW_CHARACTER_MEMBER( mm1_state::crtc_display_pixels )
// ADDRESS_MAP( mm1_upd7220_map )
//-------------------------------------------------
-static ADDRESS_MAP_START( mm1_upd7220_map, 0, 16, mm1_state )
+ADDRESS_MAP_START(mm1_state::mm1_upd7220_map)
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x7fff) AM_RAM AM_SHARE("video_ram")
ADDRESS_MAP_END
diff --git a/src/mame/video/nick.cpp b/src/mame/video/nick.cpp
index 096da5dc4fd..4eb50551d9a 100644
--- a/src/mame/video/nick.cpp
+++ b/src/mame/video/nick.cpp
@@ -76,11 +76,11 @@
DEFINE_DEVICE_TYPE(NICK, nick_device, "nick", "NICK")
-DEVICE_ADDRESS_MAP_START( vram_map, 8, nick_device )
+ADDRESS_MAP_START(nick_device::vram_map)
AM_RANGE(0x0000, 0xffff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START( vio_map, 8, nick_device )
+ADDRESS_MAP_START(nick_device::vio_map)
AM_RANGE(0x00, 0x00) AM_WRITE(fixbias_w)
AM_RANGE(0x01, 0x01) AM_WRITE(border_w)
AM_RANGE(0x02, 0x02) AM_WRITE(lpl_w)
@@ -88,7 +88,7 @@ DEVICE_ADDRESS_MAP_START( vio_map, 8, nick_device )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( nick_map, 0, 8, nick_device )
+ADDRESS_MAP_START(nick_device::nick_map)
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
@@ -106,7 +106,7 @@ nick_device::nick_device(const machine_config &mconfig, const char *tag, device_
: device_t(mconfig, NICK, tag, owner, clock),
device_memory_interface(mconfig, *this),
device_video_interface(mconfig, *this),
- m_space_config("vram", ENDIANNESS_LITTLE, 8, 16, 0, *ADDRESS_MAP_NAME(nick_map)),
+ m_space_config("vram", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(nick_device::nick_map), this)),
m_write_virq(*this),
m_scanline_count(0),
m_FIXBIAS(0),
diff --git a/src/mame/video/nick.h b/src/mame/video/nick.h
index 6876102901e..57e6862da98 100644
--- a/src/mame/video/nick.h
+++ b/src/mame/video/nick.h
@@ -77,11 +77,12 @@ public:
template<class _Object> static devcb_base &set_virq_wr_callback(device_t &device, _Object object) { return downcast<nick_device &>(device).m_write_virq.set_callback(object); }
- virtual DECLARE_ADDRESS_MAP(vram_map, 8);
- virtual DECLARE_ADDRESS_MAP(vio_map, 8);
+ virtual void vram_map(address_map &map);
+ virtual void vio_map(address_map &map);
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void nick_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/video/pc8401a.cpp b/src/mame/video/pc8401a.cpp
index aae1743451f..a8e71e78313 100644
--- a/src/mame/video/pc8401a.cpp
+++ b/src/mame/video/pc8401a.cpp
@@ -43,12 +43,12 @@ uint32_t pc8500_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap
/* SED1330 Interface */
-static ADDRESS_MAP_START( pc8401a_lcdc, 0, 8, pc8401a_state )
+ADDRESS_MAP_START(pc8401a_state::pc8401a_lcdc)
ADDRESS_MAP_GLOBAL_MASK(0x1fff)
AM_RANGE(0x0000, 0x1fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pc8500_lcdc, 0, 8, pc8401a_state )
+ADDRESS_MAP_START(pc8401a_state::pc8500_lcdc)
ADDRESS_MAP_GLOBAL_MASK(0x3fff)
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/video/pc_t1t.cpp b/src/mame/video/pc_t1t.cpp
index b0cdea24ba6..f54d6ac03a3 100644
--- a/src/mame/video/pc_t1t.cpp
+++ b/src/mame/video/pc_t1t.cpp
@@ -110,7 +110,7 @@ void pcvideo_pcjr_device::device_start()
***************************************************************************/
-static ADDRESS_MAP_START(vram_map, 0, 8, pcvideo_t1000_device)
+ADDRESS_MAP_START(pc_t1t_device::vram_map)
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x20000, 0x3ffff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/mame/video/pc_t1t.h b/src/mame/video/pc_t1t.h
index 7c60ab3500b..31917bb31bf 100644
--- a/src/mame/video/pc_t1t.h
+++ b/src/mame/video/pc_t1t.h
@@ -26,6 +26,8 @@ public:
MC6845_UPDATE_ROW( t1000_gfx_2bpp_tga_update_row );
MC6845_UPDATE_ROW( t1000_gfx_1bpp_update_row );
+ void vram_map(address_map &map);
+
protected:
// used in tandy1000hx; used in pcjr???
struct reg
@@ -96,7 +98,6 @@ public:
DECLARE_WRITE8_MEMBER( write );
DECLARE_WRITE_LINE_MEMBER( disable_w );
-
protected:
virtual void device_add_mconfig(machine_config &config) override;
virtual void device_start() override;
diff --git a/src/mame/video/pcd.cpp b/src/mame/video/pcd.cpp
index e928d69547e..5aea1a2a758 100644
--- a/src/mame/video/pcd.cpp
+++ b/src/mame/video/pcd.cpp
@@ -123,11 +123,11 @@ MACHINE_CONFIG_START(pcd_video_device::device_add_mconfig)
MCFG_TIMER_DRIVER_ADD_PERIODIC("mouse_timer", pcd_video_device, mouse_timer, attotime::from_hz(15000)) // guess
MACHINE_CONFIG_END
-static ADDRESS_MAP_START( pcx_vid_map, AS_PROGRAM, 8, pcx_video_device )
+ADDRESS_MAP_START(pcx_video_device::pcx_vid_map)
AM_RANGE(0x0000, 0x5fff) AM_ROM AM_REGION("graphics", 0)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcx_vid_io, AS_IO, 8, pcx_video_device )
+ADDRESS_MAP_START(pcx_video_device::pcx_vid_io)
AM_RANGE(0x8000, 0x8007) AM_DEVREADWRITE("crtc", scn2674_device, read, write)
AM_RANGE(0x8008, 0x8008) AM_READ(unk_r)
AM_RANGE(0xa000, 0xa001) AM_READWRITE(vram_latch_r, vram_latch_w)
@@ -136,7 +136,7 @@ static ADDRESS_MAP_START( pcx_vid_io, AS_IO, 8, pcx_video_device )
AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(p1_w)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pcx_vram, 0, 8, pcx_video_device )
+ADDRESS_MAP_START(pcx_video_device::pcx_vram)
AM_RANGE(0x0000, 0x07ff) AM_READWRITE(vram_r, vram_w)
ADDRESS_MAP_END
@@ -416,7 +416,7 @@ void pcd_video_device::device_reset()
m_t1 = CLEAR_LINE;
}
-DEVICE_ADDRESS_MAP_START(map, 16, pcd_video_device)
+ADDRESS_MAP_START(pcd_video_device::map)
AM_RANGE(0x00, 0x0f) AM_DEVWRITE8("crtc", scn2674_device, write, 0x00ff)
AM_RANGE(0x00, 0x0f) AM_DEVREAD8("crtc", scn2674_device, read, 0xff00)
AM_RANGE(0x20, 0x21) AM_WRITE8(vram_sw_w, 0x00ff)
@@ -444,7 +444,7 @@ void pcx_video_device::device_reset()
m_txd_handler(1);
}
-DEVICE_ADDRESS_MAP_START(map, 16, pcx_video_device)
+ADDRESS_MAP_START(pcx_video_device::map)
AM_RANGE(0x0, 0xf) AM_READWRITE8(term_r, term_w, 0xffff)
ADDRESS_MAP_END
diff --git a/src/mame/video/pcd.h b/src/mame/video/pcd.h
index 8e6f1ac243d..f89ad3ba3ad 100644
--- a/src/mame/video/pcd.h
+++ b/src/mame/video/pcd.h
@@ -16,7 +16,7 @@
class pcdx_video_device : public device_t, public device_gfx_interface
{
public:
- virtual DECLARE_ADDRESS_MAP(map, 16) = 0;
+ virtual void map(address_map &map) = 0;
DECLARE_READ8_MEMBER(detect_r);
DECLARE_WRITE8_MEMBER(detect_w);
DECLARE_PALETTE_INIT(pcdx);
@@ -35,7 +35,7 @@ class pcd_video_device : public pcdx_video_device
public:
pcd_video_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- virtual DECLARE_ADDRESS_MAP(map, 16) override;
+ virtual void map(address_map &map) override;
DECLARE_WRITE8_MEMBER(vram_sw_w);
DECLARE_READ8_MEMBER(vram_r);
DECLARE_WRITE8_MEMBER(vram_w);
@@ -84,7 +84,7 @@ public:
pcx_video_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
template <class Object> static devcb_base &set_txd_handler(device_t &device, Object &&cb) { return downcast<pcx_video_device &>(device).m_txd_handler.set_callback(std::forward<Object>(cb)); }
- virtual DECLARE_ADDRESS_MAP(map, 16) override;
+ virtual void map(address_map &map) override;
DECLARE_READ8_MEMBER(term_r);
DECLARE_WRITE8_MEMBER(term_w);
DECLARE_READ8_MEMBER(term_mcu_r);
@@ -96,6 +96,9 @@ public:
DECLARE_READ8_MEMBER(unk_r);
DECLARE_WRITE8_MEMBER(p1_w);
+ void pcx_vid_io(address_map &map);
+ void pcx_vid_map(address_map &map);
+ void pcx_vram(address_map &map);
protected:
void device_start() override;
void device_reset() override;
diff --git a/src/mame/video/pecom.cpp b/src/mame/video/pecom.cpp
index ab097c9d3d7..bcf8347facc 100644
--- a/src/mame/video/pecom.cpp
+++ b/src/mame/video/pecom.cpp
@@ -43,7 +43,7 @@ WRITE8_MEMBER(pecom_state::pecom_cdp1869_w)
}
}
-static ADDRESS_MAP_START( cdp1869_page_ram, 0, 8, pecom_state )
+ADDRESS_MAP_START(pecom_state::cdp1869_page_ram)
AM_RANGE(0x000, 0x3ff) AM_MIRROR(0x400) AM_RAM
ADDRESS_MAP_END
diff --git a/src/mame/video/powervr2.cpp b/src/mame/video/powervr2.cpp
index fd6d43d491d..dc34a292c49 100644
--- a/src/mame/video/powervr2.cpp
+++ b/src/mame/video/powervr2.cpp
@@ -15,7 +15,7 @@
DEFINE_DEVICE_TYPE(POWERVR2, powervr2_device, "powervr2", "PowerVR 2")
-DEVICE_ADDRESS_MAP_START(ta_map, 32, powervr2_device)
+ADDRESS_MAP_START(powervr2_device::ta_map)
AM_RANGE(0x0000, 0x0003) AM_READ( id_r)
AM_RANGE(0x0004, 0x0007) AM_READ( revision_r)
AM_RANGE(0x0008, 0x000b) AM_READWRITE(softreset_r, softreset_w)
@@ -89,7 +89,7 @@ DEVICE_ADDRESS_MAP_START(ta_map, 32, powervr2_device)
AM_RANGE(0x1000, 0x1fff) AM_READWRITE(palette_r, palette_w)
ADDRESS_MAP_END
-DEVICE_ADDRESS_MAP_START(pd_dma_map, 32, powervr2_device)
+ADDRESS_MAP_START(powervr2_device::pd_dma_map)
AM_RANGE(0x00, 0x03) AM_READWRITE(sb_pdstap_r, sb_pdstap_w)
AM_RANGE(0x04, 0x07) AM_READWRITE(sb_pdstar_r, sb_pdstar_w)
AM_RANGE(0x08, 0x0b) AM_READWRITE(sb_pdlen_r, sb_pdlen_w)
diff --git a/src/mame/video/powervr2.h b/src/mame/video/powervr2.h
index ed800973a0c..12ce9c6e248 100644
--- a/src/mame/video/powervr2.h
+++ b/src/mame/video/powervr2.h
@@ -32,8 +32,8 @@ public:
ERR_PVRIF_ILL_ADDR_IRQ
};
- DECLARE_ADDRESS_MAP(ta_map, 32);
- DECLARE_ADDRESS_MAP(pd_dma_map, 32);
+ void ta_map(address_map &map);
+ void pd_dma_map(address_map &map);
struct {
uint32_t pvr_addr;
diff --git a/src/mame/video/qix.cpp b/src/mame/video/qix.cpp
index f3e9bc7b4a8..501585df183 100644
--- a/src/mame/video/qix.cpp
+++ b/src/mame/video/qix.cpp
@@ -298,7 +298,7 @@ MC6845_UPDATE_ROW( qix_state::crtc_update_row )
*
*************************************/
-static ADDRESS_MAP_START( qix_video_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::qix_video_map)
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(qix_videoram_r, qix_videoram_w)
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("nvram")
@@ -315,7 +315,7 @@ static ADDRESS_MAP_START( qix_video_map, AS_PROGRAM, 8, qix_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( kram3_video_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::kram3_video_map)
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(qix_videoram_r, qix_videoram_w)
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("nvram")
@@ -332,7 +332,7 @@ static ADDRESS_MAP_START( kram3_video_map, AS_PROGRAM, 8, qix_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( zookeep_video_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::zookeep_video_map)
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(qix_videoram_r, qix_videoram_w)
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("nvram")
@@ -351,7 +351,7 @@ static ADDRESS_MAP_START( zookeep_video_map, AS_PROGRAM, 8, qix_state )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( slither_video_map, AS_PROGRAM, 8, qix_state )
+ADDRESS_MAP_START(qix_state::slither_video_map)
AM_RANGE(0x0000, 0x7fff) AM_READWRITE(qix_videoram_r, slither_videoram_w)
AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1")
AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("nvram")
diff --git a/src/mame/video/seibu_crtc.cpp b/src/mame/video/seibu_crtc.cpp
index 72c15669970..ef8781a8745 100644
--- a/src/mame/video/seibu_crtc.cpp
+++ b/src/mame/video/seibu_crtc.cpp
@@ -215,7 +215,7 @@ List of default vregs (title screen):
// device type definition
DEFINE_DEVICE_TYPE(SEIBU_CRTC, seibu_crtc_device, "seibu_crtc", "Seibu CRT Controller")
-static ADDRESS_MAP_START( seibu_crtc_vregs, 0, 16, seibu_crtc_device )
+ADDRESS_MAP_START(seibu_crtc_device::seibu_crtc_vregs)
AM_RANGE(0x0000, 0x004f) AM_RAM // debug
AM_RANGE(0x0014, 0x0015) AM_WRITE(decrypt_key_w)
AM_RANGE(0x001a, 0x001b) AM_READWRITE(reg_1a_r, reg_1a_w)
@@ -278,7 +278,7 @@ seibu_crtc_device::seibu_crtc_device(const machine_config &mconfig, const char *
m_layer_scroll_cb(*this),
m_reg_1a_cb(*this),
m_layer_scroll_base_cb(*this),
- m_space_config("vregs", ENDIANNESS_LITTLE, 16, 7, 0, nullptr, *ADDRESS_MAP_NAME(seibu_crtc_vregs))
+ m_space_config("vregs", ENDIANNESS_LITTLE, 16, 7, 0, address_map_constructor(), address_map_constructor(FUNC(seibu_crtc_device::seibu_crtc_vregs), this))
{
}
diff --git a/src/mame/video/seibu_crtc.h b/src/mame/video/seibu_crtc.h
index 985dea8f184..13e9b25391b 100644
--- a/src/mame/video/seibu_crtc.h
+++ b/src/mame/video/seibu_crtc.h
@@ -64,6 +64,7 @@ public:
DECLARE_WRITE16_MEMBER(layer_scroll_w);
DECLARE_WRITE16_MEMBER(layer_scroll_base_w);
+ void seibu_crtc_vregs(address_map &map);
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;
diff --git a/src/mame/video/tmc600.cpp b/src/mame/video/tmc600.cpp
index 2992c6b6709..346ff3f722e 100644
--- a/src/mame/video/tmc600.cpp
+++ b/src/mame/video/tmc600.cpp
@@ -42,7 +42,7 @@ WRITE8_MEMBER( tmc600_state::page_ram_w )
m_color_ram[offset] = m_vismac_color_latch;
}
-static ADDRESS_MAP_START( cdp1869_page_ram, 0, 8, tmc600_state )
+ADDRESS_MAP_START(tmc600_state::cdp1869_page_ram)
AM_RANGE(0x000, 0x3ff) AM_MIRROR(0x400) AM_RAM AM_SHARE("page_ram") AM_WRITE(page_ram_w)
ADDRESS_MAP_END
diff --git a/src/mame/video/wpc_dmd.cpp b/src/mame/video/wpc_dmd.cpp
index 441cbccab62..cee4887a7da 100644
--- a/src/mame/video/wpc_dmd.cpp
+++ b/src/mame/video/wpc_dmd.cpp
@@ -7,7 +7,7 @@
DEFINE_DEVICE_TYPE(WPC_DMD, wpc_dmd_device, "wpc_dmd", "Williams Pinball Controller Dot Matrix Display")
-DEVICE_ADDRESS_MAP_START( registers, 8, wpc_dmd_device )
+ADDRESS_MAP_START(wpc_dmd_device::registers)
AM_RANGE(0, 0) AM_WRITE(bank2_w)
AM_RANGE(1, 1) AM_WRITE(bank0_w)
AM_RANGE(2, 2) AM_WRITE(bank6_w)
diff --git a/src/mame/video/wpc_dmd.h b/src/mame/video/wpc_dmd.h
index 19bcc402f88..7af30d9f151 100644
--- a/src/mame/video/wpc_dmd.h
+++ b/src/mame/video/wpc_dmd.h
@@ -20,7 +20,7 @@ public:
wpc_dmd_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual ~wpc_dmd_device();
- DECLARE_ADDRESS_MAP(registers, 8);
+ void registers(address_map &map);
DECLARE_WRITE8_MEMBER(bank0_w);
DECLARE_WRITE8_MEMBER(bank2_w);
diff --git a/src/mame/video/ygv608.cpp b/src/mame/video/ygv608.cpp
index e3e6f523213..7eca917fafc 100644
--- a/src/mame/video/ygv608.cpp
+++ b/src/mame/video/ygv608.cpp
@@ -248,7 +248,7 @@ GFXDECODE_END
***************************************/
// we use decimals here to match documentation
-static ADDRESS_MAP_START( regs_map, AS_IO, 8, ygv608_device )
+ADDRESS_MAP_START(ygv608_device::regs_map)
// address pointers
AM_RANGE( 0, 0) AM_READWRITE(pattern_name_table_y_r,pattern_name_table_y_w)
@@ -296,7 +296,7 @@ ADDRESS_MAP_END
*
***************************************/
-DEVICE_ADDRESS_MAP_START( port_map, 8, ygv608_device )
+ADDRESS_MAP_START(ygv608_device::port_map)
AM_RANGE(0x00, 0x00) AM_READWRITE(pattern_name_table_r,pattern_name_table_w)
AM_RANGE(0x01, 0x01) AM_READWRITE(sprite_data_r,sprite_data_w)
AM_RANGE(0x02, 0x02) AM_READWRITE(scroll_data_r,scroll_data_w)
@@ -316,7 +316,7 @@ ygv608_device::ygv608_device( const machine_config &mconfig, const char *tag, de
: device_t(mconfig, YGV608, tag, owner, clock),
device_gfx_interface(mconfig, *this, GFXDECODE_NAME(ygv608)),
device_memory_interface(mconfig, *this),
- m_io_space_config("io", ENDIANNESS_BIG, 8, 6, 0, *ADDRESS_MAP_NAME(regs_map)),
+ m_io_space_config("io", ENDIANNESS_BIG, 8, 6, 0, address_map_constructor(FUNC(ygv608_device::regs_map), this)),
m_vblank_handler(*this),
m_raster_handler(*this)
{
diff --git a/src/mame/video/ygv608.h b/src/mame/video/ygv608.h
index ddc688a6a30..82860f1c921 100644
--- a/src/mame/video/ygv608.h
+++ b/src/mame/video/ygv608.h
@@ -21,7 +21,7 @@ public:
// construction/destruction
ygv608_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- DECLARE_ADDRESS_MAP(port_map, 8);
+ void port_map(address_map &map);
// ports section
DECLARE_READ8_MEMBER(pattern_name_table_r);
@@ -97,6 +97,7 @@ public:
return downcast<ygv608_device &>(device).m_raster_handler.set_callback(std::forward<Object>(cb));
}
+ void regs_map(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/mame/video/zx8301.cpp b/src/mame/video/zx8301.cpp
index 2686fbb70f7..74f6976553e 100644
--- a/src/mame/video/zx8301.cpp
+++ b/src/mame/video/zx8301.cpp
@@ -56,7 +56,7 @@ DEFINE_DEVICE_TYPE(ZX8301, zx8301_device, "zx8301", "Sinclair ZX8301")
// default address map
-static ADDRESS_MAP_START( zx8301, 0, 8, zx8301_device )
+ADDRESS_MAP_START(zx8301_device::zx8301)
AM_RANGE(0x00000, 0x1ffff) AM_RAM
ADDRESS_MAP_END
@@ -112,7 +112,7 @@ zx8301_device::zx8301_device(const machine_config &mconfig, const char *tag, dev
: device_t(mconfig, ZX8301, tag, owner, clock)
, device_memory_interface(mconfig, *this)
, device_video_interface(mconfig, *this)
- , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, nullptr, *ADDRESS_MAP_NAME(zx8301))
+ , m_space_config("videoram", ENDIANNESS_LITTLE, 8, 17, 0, address_map_constructor(), address_map_constructor(FUNC(zx8301_device::zx8301), this))
, m_cpu(*this, finder_base::DUMMY_TAG)
, m_write_vsync(*this)
, m_dispoff(1)
diff --git a/src/mame/video/zx8301.h b/src/mame/video/zx8301.h
index deb416ce4c5..1c0bb9deb0f 100644
--- a/src/mame/video/zx8301.h
+++ b/src/mame/video/zx8301.h
@@ -72,6 +72,7 @@ public:
uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+ void zx8301(address_map &map);
protected:
// device-level overrides
virtual void device_start() override;
diff --git a/src/zexall/zexall.cpp b/src/zexall/zexall.cpp
index 2717d402d89..dc6977a5acb 100644
--- a/src/zexall/zexall.cpp
+++ b/src/zexall/zexall.cpp
@@ -30,6 +30,7 @@ public:
DECLARE_WRITE8_MEMBER( output_req_w );
DECLARE_WRITE8_MEMBER( output_data_w );
+ void z80_mem(address_map &map);
private:
required_device<cpu_device> m_maincpu;
required_shared_ptr<uint8_t> m_main_ram;
@@ -119,7 +120,7 @@ WRITE8_MEMBER( zexall_state::output_data_w )
Address Maps
******************************************************************************/
-static ADDRESS_MAP_START(z80_mem, AS_PROGRAM, 8, zexall_state)
+ADDRESS_MAP_START(zexall_state::z80_mem)
AM_RANGE(0x0000, 0xffff) AM_RAM AM_SHARE("main_ram")
AM_RANGE(0xfffd, 0xfffd) AM_READWRITE(output_ack_r, output_ack_w)
AM_RANGE(0xfffe, 0xfffe) AM_READWRITE(output_req_r, output_req_w)