| Previous | 199869 Revisions | Next |
| r41726 Saturday 14th November, 2015 at 17:51:21 UTC by Scott Stone |
|---|
| Added info header at the top of each .lua file (nw) |
| [/trunk] | makefile |
| [scripts] | genie.lua |
| [scripts/src] | 3rdparty.lua devices.lua emu.lua lib.lua main.lua netlist.lua tests.lua tools.lua |
| [scripts/src/osd] | modules.lua osdmini.lua sdl.lua windows.lua |
| [src/devices/bus/a1bus] | a1bus.cpp a1cassette.cpp a1cffa.cpp |
| [src/devices/bus/a2bus] | a2alfam2.cpp a2applicard.cpp a2bus.cpp a2cffa.cpp a2corvus.cpp a2diskii.cpp a2diskiing.cpp a2dx1.cpp a2eauxslot.cpp a2eramworks3.cpp a2hsscsi.cpp a2mcms.cpp a2memexp.cpp a2midi.cpp a2mockingboard.cpp a2pic.cpp a2scsi.cpp a2softcard.cpp a2ssc.cpp a2swyft.cpp a2themill.cpp a2thunderclock.cpp a2ultraterm.cpp a2videoterm.cpp a2vulcan.cpp a2zipdrive.cpp corvfdc01.cpp corvfdc02.cpp laser128.cpp mouse.cpp ramcard128k.cpp ramcard16k.cpp timemasterho.cpp |
| [src/devices/bus/a7800] | a78_slot.cpp cpuwiz.cpp rom.cpp xboard.cpp |
| [src/devices/bus/a800] | a800_slot.cpp a8sio.cpp cassette.cpp oss.cpp rom.cpp sparta.cpp |
| [src/devices/bus/abcbus] | abcbus.cpp fd2.cpp lux10828.cpp lux21046.cpp lux21056.cpp |
| [src/devices/bus/abckb] | abc77.cpp abc800kb.cpp abc99.cpp abckb.cpp |
| [src/devices/bus/adam] | exp.cpp ide.cpp |
| [src/devices/bus/adamnet] | adamnet.cpp ddp.cpp |
| [src/devices/bus/apf] | slot.cpp |
| [src/devices/bus/apricot] | expansion.cpp |
| [src/devices/bus/arcadia] | slot.cpp |
| [src/devices/bus/astrocde] | exp.cpp rom.cpp slot.cpp |
| [src/devices/bus/bml3] | bml3bus.cpp bml3kanji.cpp bml3mp1802.cpp bml3mp1805.cpp |
| [src/devices/bus/bw2] | exp.cpp |
| [src/devices/bus/c64] | bn1541.cpp c128_partner.cpp comal80.cpp cpm.cpp dela_ep64.cpp dela_ep7x8.cpp dinamic.cpp dqbb.cpp easy_calc_result.cpp epyx_fast_load.cpp exp.cpp final3.cpp fun_play.cpp georam.cpp ide64.cpp mach5.cpp magic_desk.cpp magic_voice.cpp multiscreen.cpp neoram.cpp pagefox.cpp ross.cpp silverrock.cpp structured_basic.cpp super_explode.cpp super_games.cpp sw8k.cpp swiftlink.cpp system3.cpp tdos.cpp turbo232.cpp vw64.cpp zaxxon.cpp |
| [src/devices/bus/cbm2] | exp.cpp user.cpp |
| [src/devices/bus/cbmiec] | cbmiec.cpp |
| [src/devices/bus/centronics] | comxpl80.cpp covox.cpp epson_ex800.cpp epson_lx810l.cpp printer.cpp |
| [src/devices/bus/chanf] | rom.cpp slot.cpp |
| [src/devices/bus/coco] | coco_dwsock.cpp coco_fdc.cpp coco_multi.cpp coco_orch90.cpp coco_pak.cpp cococart.cpp |
| [src/devices/bus/coleco] | ctrl.cpp exp.cpp |
| [src/devices/bus/compucolor] | floppy.cpp |
| [src/devices/bus/comx35] | exp.cpp ram.cpp |
| [src/devices/bus/cpc] | amdrum.cpp brunword4.cpp cpc_pds.cpp cpc_rom.cpp cpc_rs232.cpp cpc_ssa1.cpp cpcexp.cpp ddi1.cpp doubler.cpp hd20.cpp magicsound.cpp mface2.cpp playcity.cpp smartwatch.cpp symbfac2.cpp transtape.cpp |
| [src/devices/bus/crvision] | slot.cpp |
| [src/devices/bus/dmv] | dmvbus.cpp k210.cpp k220.cpp k230.cpp k233.cpp k801.cpp k803.cpp k806.cpp ram.cpp |
| [src/devices/bus/ecbbus] | ecbbus.cpp grip.cpp |
| [src/devices/bus/econet] | e01.cpp econet.cpp |
| [src/devices/bus/ep64] | exp.cpp |
| [src/devices/bus/epson_sio] | epson_sio.cpp pf10.cpp tf20.cpp |
| [src/devices/bus/gameboy] | gb_slot.cpp mbc.cpp rom.cpp |
| [src/devices/bus/gamegear] | ggext.cpp |
| [src/devices/bus/gba] | gba_slot.cpp rom.cpp |
| [src/devices/bus/generic] | slot.cpp |
| [src/devices/bus/ieee488] | c2031.cpp c2040.cpp c2040fdc.cpp c8050.cpp c8050fdc.cpp c8280.cpp d9060.cpp hardbox.cpp ieee488.cpp softbox.cpp |
| [src/devices/bus/imi7000] | imi7000.cpp |
| [src/devices/bus/intv] | slot.cpp |
| [src/devices/bus/iq151] | disc2.cpp grafik.cpp iq151.cpp minigraf.cpp ms151a.cpp rom.cpp staper.cpp video32.cpp video64.cpp |
| [src/devices/bus/isa] | 3c503.cpp 3c505.cpp aga.cpp cga.cpp dectalk.cpp ega.cpp finalchs.cpp gus.cpp hdc.cpp ibm_mfc.cpp isa.cpp lpt.cpp mach32.cpp mc1502_fdc.cpp mda.cpp ne1000.cpp ne2000.cpp num9rev.cpp omti8621.cpp pgc.cpp sb16.cpp sblaster.cpp sc499.cpp stereo_fx.cpp svga_cirrus.cpp svga_s3.cpp svga_trident.cpp svga_tseng.cpp vga.cpp vga_ati.cpp xtide.cpp |
| [src/devices/bus/isbx] | isbc_218a.cpp isbx.cpp |
| [src/devices/bus/kc] | d002.cpp d004.cpp kc.cpp ram.cpp rom.cpp |
| [src/devices/bus/lpci] | i82439tx.cpp mpc105.cpp pci.cpp southbridge.cpp |
| [src/devices/bus/macpds] | macpds.cpp pds_tpdfpd.cpp |
| [src/devices/bus/megadrive] | eeprom.cpp ggenie.cpp jcart.cpp md_slot.cpp rom.cpp stm95.cpp svp.cpp |
| [src/devices/bus/midi] | midi.cpp |
| [src/devices/bus/msx_cart] | disk.cpp msx_audio_kb.cpp |
| [src/devices/bus/neogeo] | banked_cart.cpp bootleg_prot.cpp cmc_prot.cpp fatfury2_prot.cpp kof98_prot.cpp mslugx_prot.cpp neogeo_intf.cpp pvc_prot.cpp sbp_prot.cpp sma_prot.cpp |
| [src/devices/bus/nes] | act53.cpp aladdin.cpp ave.cpp bandai.cpp benshieng.cpp bootleg.cpp camerica.cpp cony.cpp datach.cpp disksys.cpp event.cpp ggenie.cpp henggedianzi.cpp hosenkan.cpp irem.cpp jaleco.cpp jy.cpp kaiser.cpp karastudio.cpp konami.cpp legacy.cpp mmc1.cpp mmc2.cpp mmc3.cpp mmc3_clones.cpp mmc5.cpp multigame.cpp namcot.cpp nanjing.cpp nes_slot.cpp ntdec.cpp nxrom.cpp pirate.cpp racermate.cpp rcm.cpp rexsoft.cpp sachen.cpp somari.cpp sunsoft.cpp sunsoft_dcs.cpp taito.cpp tengen.cpp waixing.cpp |
| [src/devices/bus/nes_ctrl] | 4score.cpp arkpaddle.cpp bcbattle.cpp ctrl.cpp fckeybrd.cpp ftrainer.cpp joypad.cpp konamihs.cpp miracle.cpp mjpanel.cpp pachinko.cpp partytap.cpp suborkey.cpp |
| [src/devices/bus/nubus] | nubus.cpp nubus_48gc.cpp nubus_cb264.cpp nubus_image.cpp nubus_m2hires.cpp nubus_m2video.cpp nubus_radiustpd.cpp nubus_spec8.cpp nubus_specpdq.cpp nubus_vikbw.cpp nubus_wsportrait.cpp pds30_30hr.cpp pds30_cb264.cpp pds30_mc30.cpp pds30_procolor816.cpp pds30_sigmalview.cpp |
| [src/devices/bus/odyssey2] | rom.cpp slot.cpp |
| [src/devices/bus/oricext] | jasmin.cpp microdisc.cpp oricext.cpp |
| [src/devices/bus/pc_joy] | pc_joy.cpp pc_joy_sw.cpp |
| [src/devices/bus/pc_kbd] | iskr1030.cpp keytro.cpp msnat.cpp pc83.cpp pc_kbdc.cpp |
| [src/devices/bus/pce] | pce_rom.cpp pce_slot.cpp |
| [src/devices/bus/pet] | c2n.cpp cass.cpp exp.cpp superpet.cpp |
| [src/devices/bus/plus4] | c1551.cpp exp.cpp |
| [src/devices/bus/psx] | analogue.cpp ctlrport.cpp memcard.cpp multitap.cpp |
| [src/devices/bus/ql] | exp.cpp rom.cpp sandy_superdisk.cpp trumpcard.cpp |
| [src/devices/bus/rs232] | keyboard.cpp null_modem.cpp pty.cpp rs232.cpp ser_mouse.cpp terminal.cpp xvd701.cpp |
| [src/devices/bus/s100] | s100.cpp wunderbus.cpp |
| [src/devices/bus/saturn] | sat_slot.cpp |
| [src/devices/bus/scsi] | scsi.cpp scsihle.cpp |
| [src/devices/bus/scv] | rom.cpp slot.cpp |
| [src/devices/bus/sega8] | rom.cpp sega8_slot.cpp |
| [src/devices/bus/sms_ctrl] | lphaser.cpp smsctrl.cpp sports.cpp |
| [src/devices/bus/sms_exp] | smsexp.cpp |
| [src/devices/bus/snes] | bsx.cpp event.cpp rom.cpp rom21.cpp sa1.cpp sdd1.cpp sdd1.h sgb.cpp snes_slot.cpp spc7110.cpp |
| [src/devices/bus/snes_ctrl] | bcbattle.cpp ctrl.cpp joypad.cpp miracle.cpp mouse.cpp multitap.cpp pachinko.cpp sscope.cpp twintap.cpp |
| [src/devices/bus/spc1000] | exp.cpp fdd.cpp |
| [src/devices/bus/ti99_peb] | bwg.cpp evpc.cpp hfdc.cpp horizon.cpp hsgpl.cpp memex.cpp myarcmem.cpp pcode.cpp peribox.cpp peribox.h samsmem.cpp spchsyn.cpp ti_32kmem.cpp ti_fdc.cpp ti_rs232.cpp tn_ide.cpp tn_usbsm.cpp |
| [src/devices/bus/ti99x] | 990_dk.cpp 998board.cpp 998board.h datamux.cpp datamux.h genboard.cpp grom.cpp gromport.cpp gromport.h handset.cpp joyport.cpp joyport.h mecmouse.cpp videowrp.cpp videowrp.h |
| [src/devices/bus/tiki100] | exp.cpp |
| [src/devices/bus/tvc] | hbf.cpp tvc.cpp |
| [src/devices/bus/vboy] | slot.cpp |
| [src/devices/bus/vc4000] | slot.cpp |
| [src/devices/bus/vcs] | dpc.cpp rom.cpp scharger.cpp vcs_slot.cpp |
| [src/devices/bus/vcs_ctrl] | ctrl.cpp keypad.cpp |
| [src/devices/bus/vectrex] | rom.cpp slot.cpp |
| [src/devices/bus/vic10] | exp.cpp |
| [src/devices/bus/vic20] | exp.cpp fe3.cpp vic1112.cpp |
| [src/devices/bus/vidbrain] | exp.cpp |
| [src/devices/bus/vip] | byteio.cpp exp.cpp vp550.cpp vp585.cpp vp590.cpp |
| [src/devices/bus/vtech/memexp] | floppy.cpp |
| [src/devices/bus/wangpc] | emb.cpp lvc.cpp mcc.cpp tig.cpp wangpc.cpp wdc.cpp |
| [src/devices/bus/wswan] | rom.cpp slot.cpp |
| [src/devices/bus/x68k] | x68k_neptunex.cpp x68k_scsiext.cpp x68kexp.cpp |
| [src/devices/bus/z88] | ram.cpp rom.cpp z88.cpp |
| [src/devices/cpu/dsp56k] | dsp56mem.h |
| [src/devices/cpu/i86] | i286.cpp |
| [src/devices/video] | poly.h |
| [src/emu] | dimemory.cpp input.cpp ioport.cpp luaengine.cpp memory.cpp profiler.cpp render.cpp rendlay.cpp tilemap.cpp uiinput.cpp |
| [src/emu/debug] | debugcmd.cpp debugcpu.cpp dvmemory.cpp dvwpoints.cpp |
| [src/emu/ui] | inputmap.cpp ui.cpp |
| [src/mame/drivers] | namcos23.cpp |
| [src/mame/includes] | chihiro.h |
| [src/mame/machine] | naomim2.cpp xbox.cpp |
| [src/mame/video] | chihiro.cpp |
| r250237 | r250238 | |
|---|---|---|
| 846 | 846 | vs2015: generate |
| 847 | 847 | $(SILENT) $(GENIE) $(PARAMS) vs2015 |
| 848 | 848 | |
| 849 | vs2015_intel: generate | |
| 850 | $(SILENT) $(GENIE) $(PARAMS) --vs=intel-15 vs2015 | |
| 851 | ||
| 852 | vs2015_xp: generate | |
| 853 | $(SILENT) $(GENIE) $(PARAMS) --vs=vs2013-xp vs2015 | |
| 854 | ||
| 855 | vs2015_clang: generate | |
| 856 | $(SILENT) $(GENIE) $(PARAMS) --vs=vs2013-clang vs2015 | |
| 857 | ||
| 858 | vs2015_winrt: generate | |
| 859 | $(SILENT) $(GENIE) $(PARAMS) --vs=winstore81 vs2015 | |
| 860 | ||
| 861 | 849 | android-arm: generate |
| 862 | 850 | ifndef ANDROID_NDK_ARM |
| 863 | 851 | $(error ANDROID_NDK_ARM is not set) |
| r250237 | r250238 | |
|---|---|---|
| 532 | 532 | os.outputof( PYTHON .. " " .. MAME_DIR .. "scripts/build/makedep.py " .. MAME_DIR .. " " .. _OPTIONS["SOURCES"] .. " drivers " .. _OPTIONS["subtarget"] .. " > ".. GEN_DIR .. _OPTIONS["target"] .. "/" .. _OPTIONS["subtarget"].."/drivlist.cpp") |
| 533 | 533 | end |
| 534 | 534 | configuration { "gmake" } |
| 535 | defines { | |
| 536 | "nullptr=NULL" -- getting ready for C++11 | |
| 537 | } | |
| 538 | 535 | flags { |
| 539 | 536 | "SingleOutputDir", |
| 540 | 537 | } |
| r250237 | r250238 | |
| 1257 | 1254 | "/Qwd1478", -- warning #1478: function "xxx" (declared at line yyy of "zzz") was declared deprecated |
| 1258 | 1255 | "/Qwd1879", -- warning #1879: unimplemented pragma ignored |
| 1259 | 1256 | "/Qwd3291", -- warning #3291: invalid narrowing conversion from "double" to "int" |
| 1260 | "/Qwd1195", -- error #1195: conversion from integer to smaller pointer | |
| 1261 | "/Qwd47", -- error #47: incompatible redefinition of macro "xxx" | |
| 1262 | "/Qwd265", -- error #265: floating-point operation result is out of range | |
| 1257 | "/Qwd1195", | |
| 1258 | "/Qwd1786", | |
| 1259 | "/Qwd592", -- For lua, false positive? | |
| 1263 | 1260 | } |
| 1264 | 1261 | end |
| 1265 | 1262 |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- 3rdparty.lua | |
| 7 | -- | |
| 8 | -- Library objects for all 3rdparty sources | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | -------------------------------------------------- |
| 5 | 13 | -- expat library objects |
| 6 | 14 | -------------------------------------------------- |
| r250237 | r250238 | |
| 16 | 24 | "/wd4127", -- warning C4127: conditional expression is constant |
| 17 | 25 | "/wd4244", -- warning C4244: 'argument' : conversion from 'xxx' to 'xxx', possible loss of data |
| 18 | 26 | } |
| 19 | if _OPTIONS["vs"]=="intel-15" then | |
| 20 | buildoptions { | |
| 21 | "/Qwd111", -- remark #111: statement is unreachable | |
| 22 | "/Qwd1879", -- warning #1879: unimplemented pragma ignored | |
| 23 | "/Qwd2557", -- remark #2557: comparison between signed and unsigned operands | |
| 24 | "/Qwd869", -- remark #869: parameter "xxx" was never referenced | |
| 25 | } | |
| 26 | end | |
| 27 | 27 | configuration { "vs2015" } |
| 28 | 28 | buildoptions { |
| 29 | 29 | "/wd4456", -- warning C4456: declaration of 'xxx' hides previous local declaration |
| r250237 | r250238 | |
| 56 | 56 | "/wd4127", -- warning C4127: conditional expression is constant |
| 57 | 57 | "/wd4244", -- warning C4244: 'argument' : conversion from 'xxx' to 'xxx', possible loss of data |
| 58 | 58 | } |
| 59 | if _OPTIONS["vs"]=="intel-15" then | |
| 60 | buildoptions { | |
| 61 | "/Qwd111", -- remark #111: statement is unreachable | |
| 62 | "/Qwd280", -- remark #280: selector expression is constant | |
| 63 | } | |
| 64 | end | |
| 59 | ||
| 65 | 60 | configuration "Debug" |
| 66 | 61 | defines { |
| 67 | 62 | "verbose=-1", |
| r250237 | r250238 | |
| 111 | 106 | includedirs { |
| 112 | 107 | MAME_DIR .. "src/osd", |
| 113 | 108 | } |
| 114 | if _OPTIONS["vs"]=="intel-15" then | |
| 115 | buildoptions { | |
| 116 | "/Qwd2557", -- remark #2557: comparison between signed and unsigned operands | |
| 117 | } | |
| 118 | end | |
| 109 | ||
| 119 | 110 | files { |
| 120 | 111 | MAME_DIR .. "3rdparty/softfloat/softfloat.c", |
| 121 | 112 | MAME_DIR .. "3rdparty/softfloat/fsincos.c", |
| r250237 | r250238 | |
| 137 | 128 | "/wd4127", -- warning C4127: conditional expression is constant |
| 138 | 129 | "/wd4244", -- warning C4244: 'argument' : conversion from 'xxx' to 'xxx', possible loss of data |
| 139 | 130 | } |
| 140 | if _OPTIONS["vs"]=="intel-15" then | |
| 141 | buildoptions { | |
| 142 | "/Qwd869", -- remark #869: parameter "xxx" was never referenced | |
| 143 | } | |
| 144 | end | |
| 145 | 131 | |
| 146 | 132 | configuration { } |
| 147 | 133 | |
| r250237 | r250238 | |
| 215 | 201 | "/wd4100", -- warning C4100: 'xxx' : unreferenced formal parameter |
| 216 | 202 | "/wd4702", -- warning C4702: unreachable code |
| 217 | 203 | } |
| 218 | if _OPTIONS["vs"]=="intel-15" then | |
| 219 | buildoptions { | |
| 220 | "/Qwd111", -- remark #111: statement is unreachable | |
| 221 | "/Qwd177", -- remark #177: function "xxx" was declared but never referenced | |
| 222 | "/Qwd181", -- remark #181: argument of type "UINT32={unsigned int}" is incompatible with format "%d", expecting argument of type "int" | |
| 223 | "/Qwd188", -- error #188: enumerated type mixed with another type | |
| 224 | "/Qwd869", -- remark #869: parameter "xxx" was never referenced | |
| 225 | } | |
| 226 | end | |
| 227 | 204 | |
| 228 | 205 | configuration { "vs2015" } |
| 229 | 206 | buildoptions { |
| r250237 | r250238 | |
| 292 | 269 | buildoptions { |
| 293 | 270 | "/wd4100", -- warning C4100: 'xxx' : unreferenced formal parameter |
| 294 | 271 | } |
| 295 | if _OPTIONS["vs"]=="intel-15" then | |
| 296 | buildoptions { | |
| 297 | "/Qwd869", -- remark #869: parameter "xxx" was never referenced | |
| 298 | } | |
| 299 | end | |
| 300 | 272 | configuration { "vs2015" } |
| 301 | 273 | buildoptions { |
| 302 | 274 | "/wd4456", -- warning C4456: declaration of 'xxx' hides previous local declaration |
| r250237 | r250238 | |
| 354 | 326 | "/wd4702", -- warning C4702: unreachable code |
| 355 | 327 | "/wd4310", -- warning C4310: cast truncates constant value |
| 356 | 328 | } |
| 357 | if _OPTIONS["vs"]=="intel-15" then | |
| 358 | buildoptions { | |
| 359 | "/Qwd592", -- error #592: variable "xxx" is used before its value is set | |
| 360 | } | |
| 361 | end | |
| 329 | ||
| 362 | 330 | configuration { } |
| 363 | 331 | defines { |
| 364 | 332 | "LUA_COMPAT_ALL", |
| r250237 | r250238 | |
| 499 | 467 | "/wd4100", -- warning C4100: 'xxx' : unreferenced formal parameter |
| 500 | 468 | "/wd4706", -- warning C4706: assignment within conditional expression |
| 501 | 469 | } |
| 502 | if _OPTIONS["vs"]=="intel-15" then | |
| 503 | buildoptions { | |
| 504 | "/Qwd869", -- remark #869: parameter "xxx" was never referenced | |
| 505 | "/Qwd2557", -- remark #2557: comparison between signed and unsigned operands | |
| 506 | } | |
| 507 | end | |
| 508 | 470 | |
| 509 | 471 | configuration { "vs2015" } |
| 510 | 472 | buildoptions { |
| r250237 | r250238 | |
| 559 | 521 | "/wd4244", -- warning C4244: 'argument' : conversion from 'xxx' to 'xxx', possible loss of data |
| 560 | 522 | "/wd4706", -- warning C4706: assignment within conditional expression |
| 561 | 523 | } |
| 562 | if _OPTIONS["vs"]=="intel-15" then | |
| 563 | buildoptions { | |
| 564 | "/Qwd188", -- error #188: enumerated type mixed with another type | |
| 565 | "/Qwd344", -- remark #344: typedef name has already been declared (with same type) | |
| 566 | "/Qwd869", -- remark #869: parameter "xxx" was never referenced | |
| 567 | "/Qwd2557", -- remark #2557: comparison between signed and unsigned operands | |
| 568 | } | |
| 569 | end | |
| 570 | 524 | |
| 571 | 525 | configuration { "vs2015" } |
| 572 | 526 | buildoptions { |
| r250237 | r250238 | |
| 641 | 595 | "/wd4611", -- warning C4611: interaction between '_setjmp' and C++ object destruction is non-portable |
| 642 | 596 | "/wd4310", -- warning C4310: cast truncates constant value |
| 643 | 597 | } |
| 644 | if _OPTIONS["vs"]=="intel-15" then | |
| 645 | buildoptions { | |
| 646 | "/Qwd906", -- message #906: effect of this "#pragma pack" directive is local to function "xxx" | |
| 647 | "/Qwd1879", -- warning #1879: unimplemented pragma ignored | |
| 648 | "/Qwd82", -- remark #82: storage class is not first | |
| 649 | } | |
| 650 | end | |
| 598 | ||
| 651 | 599 | configuration { } |
| 652 | 600 | |
| 653 | 601 | includedirs { |
| r250237 | r250238 | |
| 766 | 714 | "/wd4189", -- warning C4189: 'xxx' : local variable is initialized but not referenced |
| 767 | 715 | "/wd4127", -- warning C4127: conditional expression is constant |
| 768 | 716 | } |
| 769 | if _OPTIONS["vs"]=="intel-15" then | |
| 770 | buildoptions { | |
| 771 | "/Qwd869", -- remark #869: parameter "xxx" was never referenced | |
| 772 | "/Qwd1478", -- warning #1478: function "xxx" (declared at line yyy of "zzz") was declared deprecated | |
| 773 | "/Qwd2544", -- message #2544: empty dependent statement in if-statement | |
| 774 | "/Qwd1879", -- warning #1879: unimplemented pragma ignored | |
| 775 | } | |
| 776 | end | |
| 717 | ||
| 777 | 718 | configuration { "vs2015" } |
| 778 | 719 | buildoptions { |
| 779 | 720 | "/wd4456", -- warning C4456: declaration of 'xxx' hides previous local declaration |
| r250237 | r250238 | |
| 915 | 856 | "-Wno-unused-variable", |
| 916 | 857 | } |
| 917 | 858 | |
| 918 | configuration { "vs*" } | |
| 919 | if _OPTIONS["vs"]=="intel-15" then | |
| 920 | buildoptions { | |
| 921 | "/Qwd1195", -- error #1195: conversion from integer to smaller pointer | |
| 922 | } | |
| 923 | end | |
| 924 | ||
| 925 | 859 | configuration { } |
| 926 | 860 | |
| 927 | 861 | includedirs { |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- devices.lua | |
| 7 | -- | |
| 8 | -- Rules for building device cores | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | function devicesProject(_target, _subtarget) |
| 5 | 13 | |
| 6 | 14 | disasm_files = { } |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- emu.lua | |
| 7 | -- | |
| 8 | -- Rules for building emu cores | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | project ("emu") |
| 5 | 13 | targetsubdir(_OPTIONS["target"] .."_" .. _OPTIONS["subtarget"]) |
| 6 | 14 | uuid ("e6fa15e4-a354-4526-acef-13c8e80fcacf") |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- lib.lua | |
| 7 | -- | |
| 8 | -- Rules for building lib cores | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | project "utils" |
| 5 | 13 | uuid "22489ad0-4cb2-4d91-ad81-24b0d80ca30a" |
| 6 | 14 | kind (LIBTYPE) |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- main.lua | |
| 7 | -- | |
| 8 | -- Rules for building main binary | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | function mainProject(_target, _subtarget) |
| 5 | 13 | if (_OPTIONS["SOURCES"] == nil) then |
| 6 | 14 | if (_target == _subtarget) then |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- netlist.lua | |
| 7 | -- | |
| 8 | -- Rules for building netlist cores | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | project "netlist" |
| 5 | 13 | uuid "665ef8ac-2a4c-4c3e-a05f-fd1e5db11de9" |
| 6 | 14 | kind (LIBTYPE) |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- modules.lua | |
| 7 | -- | |
| 8 | -- Rules for the building of modules | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | function string.starts(String,Start) |
| 5 | 13 | return string.sub(String,1,string.len(Start))==Start |
| 6 | 14 | end |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- osdmini.lua | |
| 7 | -- | |
| 8 | -- Rules for the building of osdmini | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | function maintargetosdoptions(_target,_subtarget) |
| 5 | 13 | end |
| 6 | 14 |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- sdl.lua | |
| 7 | -- | |
| 8 | -- Rules for the building with SDL | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | dofile("modules.lua") |
| 5 | 13 | |
| 6 | 14 |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- windows.lua | |
| 7 | -- | |
| 8 | -- Rules for the building for Windows | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | dofile("modules.lua") |
| 5 | 13 | |
| 6 | 14 |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | -------------------------------------------------- | |
| 5 | -- MAME tests | |
| 6 | -------------------------------------------------- | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- tests.lua | |
| 7 | -- | |
| 8 | -- Rules for building tests | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 7 | 11 | |
| 8 | 12 | project("tests") |
| 9 | 13 | uuid ("66d4c639-196b-4065-a411-7ee9266564f5") |
| r250237 | r250238 | |
|---|---|---|
| 1 | 1 | -- license:BSD-3-Clause |
| 2 | 2 | -- copyright-holders:MAMEdev Team |
| 3 | 3 | |
| 4 | --------------------------------------------------------------------------- | |
| 5 | -- | |
| 6 | -- tools.lua | |
| 7 | -- | |
| 8 | -- Rules for the building of tools | |
| 9 | -- | |
| 10 | --------------------------------------------------------------------------- | |
| 11 | ||
| 4 | 12 | -------------------------------------------------- |
| 5 | 13 | -- romcmp |
| 6 | 14 | -------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 26 | 26 | //------------------------------------------------- |
| 27 | 27 | a1bus_slot_device::a1bus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 28 | 28 | device_t(mconfig, A1BUS_SLOT, "Apple I Slot", tag, owner, clock, "a1bus_slot", __FILE__), |
| 29 | device_slot_interface(mconfig, *this), | |
| 30 | m_a1bus_tag(nullptr), | |
| 31 | m_a1bus_slottag(nullptr) | |
| 29 | device_slot_interface(mconfig, *this) | |
| 32 | 30 | { |
| 33 | 31 | } |
| 34 | 32 | |
| 35 | 33 | a1bus_slot_device::a1bus_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 36 | 34 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 37 | device_slot_interface(mconfig, *this) | |
| 35 | device_slot_interface(mconfig, *this) | |
| 38 | 36 | { |
| 39 | 37 | } |
| 40 | 38 | |
| r250237 | r250238 | |
| 77 | 75 | //------------------------------------------------- |
| 78 | 76 | |
| 79 | 77 | a1bus_device::a1bus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 80 | device_t(mconfig, A1BUS, "Apple I Bus", tag, owner, clock, "a1bus", __FILE__), | |
| 78 | device_t(mconfig, A1BUS, "Apple I Bus", tag, owner, clock, "a1bus", __FILE__), | |
| 81 | 79 | m_out_irq_cb(*this), |
| 82 | m_out_nmi_cb(*this) | |
| 80 | m_out_nmi_cb(*this) | |
| 83 | 81 | { |
| 84 | 82 | } |
| 85 | 83 | |
| 86 | 84 | a1bus_device::a1bus_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 87 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 85 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 88 | 86 | m_out_irq_cb(*this), |
| 89 | m_out_nmi_cb(*this) | |
| 87 | m_out_nmi_cb(*this) | |
| 90 | 88 | { |
| 91 | 89 | } |
| 92 | 90 | //------------------------------------------------- |
| r250237 | r250238 | |
| 168 | 166 | |
| 169 | 167 | device_a1bus_card_interface::device_a1bus_card_interface(const machine_config &mconfig, device_t &device) |
| 170 | 168 | : device_slot_card_interface(mconfig, device), |
| 171 | m_a1bus(nullptr), | |
| 172 | m_a1bus_tag(nullptr), m_a1bus_slottag(nullptr), m_next(nullptr) | |
| 169 | m_a1bus(NULL), | |
| 170 | m_a1bus_tag(NULL) | |
| 173 | 171 | { |
| 174 | 172 | } |
| 175 | 173 |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | a1bus_cassette_device::a1bus_cassette_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 60 | 60 | device_t(mconfig, A1BUS_CASSETTE, "Apple I cassette board", tag, owner, clock, "a1cass", __FILE__), |
| 61 | 61 | device_a1bus_card_interface(mconfig, *this), |
| 62 | m_cassette(*this, "cassette") | |
| 62 | m_cassette(*this, "cassette") | |
| 63 | 63 | { |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | a1bus_cassette_device::a1bus_cassette_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 67 | 67 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 68 | 68 | device_a1bus_card_interface(mconfig, *this), |
| 69 | m_cassette(*this, "cassette") | |
| 69 | m_cassette(*this, "cassette") | |
| 70 | 70 | { |
| 71 | 71 | } |
| 72 | 72 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | a1bus_cffa_device::a1bus_cffa_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 55 | 55 | device_t(mconfig, A1BUS_CFFA, "CFFA Compact Flash for Apple I", tag, owner, clock, "cffa1", __FILE__), |
| 56 | 56 | device_a1bus_card_interface(mconfig, *this), |
| 57 | m_ata(*this, CFFA_ATA_TAG) | |
| 57 | m_ata(*this, CFFA_ATA_TAG) | |
| 58 | 58 | { |
| 59 | 59 | } |
| 60 | 60 | |
| 61 | 61 | a1bus_cffa_device::a1bus_cffa_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 62 | 62 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 63 | 63 | device_a1bus_card_interface(mconfig, *this), |
| 64 | m_ata(*this, CFFA_ATA_TAG) | |
| 64 | m_ata(*this, CFFA_ATA_TAG) | |
| 65 | 65 | { |
| 66 | 66 | } |
| 67 | 67 |
| r250237 | r250238 | |
|---|---|---|
| 88 | 88 | m_sn1(*this, SN1_TAG), |
| 89 | 89 | m_sn2(*this, SN2_TAG), |
| 90 | 90 | m_sn3(*this, SN3_TAG), |
| 91 | m_sn4(*this, SN4_TAG) | |
| 91 | m_sn4(*this, SN4_TAG) | |
| 92 | 92 | { |
| 93 | 93 | } |
| 94 | 94 |
| r250237 | r250238 | |
|---|---|---|
| 78 | 78 | a2bus_applicard_device::a2bus_applicard_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 79 | 79 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 80 | 80 | device_a2bus_card_interface(mconfig, *this), |
| 81 | m_z80(*this, Z80_TAG) | |
| 81 | m_z80(*this, Z80_TAG) | |
| 82 | 82 | { |
| 83 | 83 | } |
| 84 | 84 | |
| 85 | 85 | a2bus_applicard_device::a2bus_applicard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 86 | 86 | device_t(mconfig, A2BUS_APPLICARD, "PCPI Applicard", tag, owner, clock, "a2aplcrd", __FILE__), |
| 87 | 87 | device_a2bus_card_interface(mconfig, *this), |
| 88 | m_z80(*this, Z80_TAG) | |
| 88 | m_z80(*this, Z80_TAG) | |
| 89 | 89 | { |
| 90 | 90 | } |
| 91 | 91 |
| r250237 | r250238 | |
|---|---|---|
| 90 | 90 | //------------------------------------------------- |
| 91 | 91 | a2bus_slot_device::a2bus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 92 | 92 | device_t(mconfig, A2BUS_SLOT, "Apple II Slot", tag, owner, clock, "a2bus_slot", __FILE__), |
| 93 | device_slot_interface(mconfig, *this) | |
| 93 | device_slot_interface(mconfig, *this) | |
| 94 | 94 | { |
| 95 | 95 | } |
| 96 | 96 | |
| 97 | 97 | a2bus_slot_device::a2bus_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 98 | 98 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 99 | device_slot_interface(mconfig, *this) | |
| 99 | device_slot_interface(mconfig, *this) | |
| 100 | 100 | { |
| 101 | 101 | } |
| 102 | 102 | |
| r250237 | r250238 | |
| 139 | 139 | //------------------------------------------------- |
| 140 | 140 | |
| 141 | 141 | a2bus_device::a2bus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 142 | device_t(mconfig, A2BUS, "Apple II Bus", tag, owner, clock, "a2bus", __FILE__), | |
| 142 | device_t(mconfig, A2BUS, "Apple II Bus", tag, owner, clock, "a2bus", __FILE__), | |
| 143 | 143 | m_out_irq_cb(*this), |
| 144 | 144 | m_out_nmi_cb(*this), |
| 145 | m_out_inh_cb(*this) | |
| 145 | m_out_inh_cb(*this) | |
| 146 | 146 | { |
| 147 | 147 | } |
| 148 | 148 | |
| 149 | 149 | a2bus_device::a2bus_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 150 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 150 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 151 | 151 | m_out_irq_cb(*this), |
| 152 | 152 | m_out_nmi_cb(*this), |
| 153 | m_out_inh_cb(*this) | |
| 153 | m_out_inh_cb(*this) | |
| 154 | 154 | { |
| 155 | 155 | } |
| 156 | 156 | //------------------------------------------------- |
| r250237 | r250238 | |
| 296 | 296 | |
| 297 | 297 | device_a2bus_card_interface::device_a2bus_card_interface(const machine_config &mconfig, device_t &device) |
| 298 | 298 | : device_slot_card_interface(mconfig, device), |
| 299 | m_a2bus(nullptr), | |
| 300 | m_a2bus_tag(nullptr), m_a2bus_slottag(nullptr), m_slot(0), m_next(nullptr) | |
| 299 | m_a2bus(NULL), | |
| 300 | m_a2bus_tag(NULL) | |
| 301 | 301 | { |
| 302 | 302 | } |
| 303 | 303 |
| r250237 | r250238 | |
|---|---|---|
| 86 | 86 | a2bus_cffa2000_device::a2bus_cffa2000_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 87 | 87 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 88 | 88 | device_a2bus_card_interface(mconfig, *this), |
| 89 | m_ata(*this, CFFA2_ATA_TAG) | |
| 89 | m_ata(*this, CFFA2_ATA_TAG) | |
| 90 | 90 | { |
| 91 | 91 | } |
| 92 | 92 |
| r250237 | r250238 | |
|---|---|---|
| 104 | 104 | a2bus_corvus_device::a2bus_corvus_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 105 | 105 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 106 | 106 | device_a2bus_card_interface(mconfig, *this), |
| 107 | m_corvushd(*this, CORVUS_HD_TAG) | |
| 107 | m_corvushd(*this, CORVUS_HD_TAG) | |
| 108 | 108 | { |
| 109 | 109 | } |
| 110 | 110 | |
| 111 | 111 | a2bus_corvus_device::a2bus_corvus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 112 | 112 | device_t(mconfig, A2BUS_CORVUS, "Corvus Flat Cable interface", tag, owner, clock, "a2corvus", __FILE__), |
| 113 | 113 | device_a2bus_card_interface(mconfig, *this), |
| 114 | m_corvushd(*this, CORVUS_HD_TAG) | |
| 114 | m_corvushd(*this, CORVUS_HD_TAG) | |
| 115 | 115 | { |
| 116 | 116 | } |
| 117 | 117 |
| r250237 | r250238 | |
|---|---|---|
| 93 | 93 | a2bus_floppy_device::a2bus_floppy_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 94 | 94 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 95 | 95 | device_a2bus_card_interface(mconfig, *this), |
| 96 | m_fdc(*this, FDC_TAG) | |
| 96 | m_fdc(*this, FDC_TAG) | |
| 97 | 97 | { |
| 98 | 98 | } |
| 99 | 99 |
| r250237 | r250238 | |
|---|---|---|
| 73 | 73 | device_a2bus_card_interface(mconfig, *this), |
| 74 | 74 | m_wozfdc(*this, WOZFDC_TAG), |
| 75 | 75 | floppy0(*this, "0"), |
| 76 | floppy1(*this, "1") | |
| 76 | floppy1(*this, "1") | |
| 77 | 77 | { |
| 78 | 78 | } |
| 79 | 79 |
| r250237 | r250238 | |
|---|---|---|
| 51 | 51 | a2bus_dx1_device::a2bus_dx1_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 52 | 52 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 53 | 53 | device_a2bus_card_interface(mconfig, *this), |
| 54 | m_dac(*this, DAC_TAG) | |
| 54 | m_dac(*this, DAC_TAG) | |
| 55 | 55 | { |
| 56 | 56 | } |
| 57 | 57 | |
| 58 | 58 | a2bus_dx1_device::a2bus_dx1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 59 | 59 | device_t(mconfig, A2BUS_DX1, "Decillonix DX-1", tag, owner, clock, "a2dx1", __FILE__), |
| 60 | 60 | device_a2bus_card_interface(mconfig, *this), |
| 61 | m_dac(*this, DAC_TAG) | |
| 61 | m_dac(*this, DAC_TAG) | |
| 62 | 62 | { |
| 63 | 63 | } |
| 64 | 64 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | //------------------------------------------------- |
| 29 | 29 | a2eauxslot_slot_device::a2eauxslot_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, A2EAUXSLOT_SLOT, "Apple IIe AUX Slot", tag, owner, clock, "a2eauxslot_slot", __FILE__), |
| 31 | device_slot_interface(mconfig, *this), | |
| 32 | m_a2eauxslot_tag(nullptr), | |
| 33 | m_a2eauxslot_slottag(nullptr) | |
| 31 | device_slot_interface(mconfig, *this) | |
| 34 | 32 | { |
| 35 | 33 | } |
| 36 | 34 | |
| 37 | 35 | a2eauxslot_slot_device::a2eauxslot_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 38 | 36 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 39 | device_slot_interface(mconfig, *this) | |
| 37 | device_slot_interface(mconfig, *this) | |
| 40 | 38 | { |
| 41 | 39 | } |
| 42 | 40 | |
| r250237 | r250238 | |
| 79 | 77 | //------------------------------------------------- |
| 80 | 78 | |
| 81 | 79 | a2eauxslot_device::a2eauxslot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 82 | device_t(mconfig, A2EAUXSLOT, "Apple IIe AUX Bus", tag, owner, clock, "a2eauxslot", __FILE__), | |
| 80 | device_t(mconfig, A2EAUXSLOT, "Apple IIe AUX Bus", tag, owner, clock, "a2eauxslot", __FILE__), | |
| 83 | 81 | m_out_irq_cb(*this), |
| 84 | m_out_nmi_cb(*this) | |
| 82 | m_out_nmi_cb(*this) | |
| 85 | 83 | { |
| 86 | 84 | } |
| 87 | 85 | |
| 88 | 86 | a2eauxslot_device::a2eauxslot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 89 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 87 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 90 | 88 | m_out_irq_cb(*this), |
| 91 | m_out_nmi_cb(*this) | |
| 89 | m_out_nmi_cb(*this) | |
| 92 | 90 | { |
| 93 | 91 | } |
| 94 | 92 | //------------------------------------------------- |
| r250237 | r250238 | |
| 154 | 152 | |
| 155 | 153 | device_a2eauxslot_card_interface::device_a2eauxslot_card_interface(const machine_config &mconfig, device_t &device) |
| 156 | 154 | : device_slot_card_interface(mconfig, device), |
| 157 | m_a2eauxslot(nullptr), | |
| 158 | m_a2eauxslot_tag(nullptr), m_a2eauxslot_slottag(nullptr), m_slot(0), m_next(nullptr) | |
| 155 | m_a2eauxslot(NULL), | |
| 156 | m_a2eauxslot_tag(NULL) | |
| 159 | 157 | { |
| 160 | 158 | } |
| 161 | 159 |
| r250237 | r250238 | |
|---|---|---|
| 30 | 30 | |
| 31 | 31 | a2eaux_ramworks3_device::a2eaux_ramworks3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 32 | 32 | device_t(mconfig, A2EAUX_RAMWORKS3, "Applied Engineering RamWorks III", tag, owner, clock, "a2erwks3", __FILE__), |
| 33 | device_a2eauxslot_card_interface(mconfig, *this), | |
| 34 | m_bank(0) | |
| 33 | device_a2eauxslot_card_interface(mconfig, *this) | |
| 35 | 34 | { |
| 36 | 35 | } |
| 37 | 36 | |
| 38 | 37 | a2eaux_ramworks3_device::a2eaux_ramworks3_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 39 | 38 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 40 | device_a2eauxslot_card_interface(mconfig, *this) | |
| 39 | device_a2eauxslot_card_interface(mconfig, *this) | |
| 41 | 40 | { |
| 42 | 41 | } |
| 43 | 42 |
| r250237 | r250238 | |
|---|---|---|
| 117 | 117 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 118 | 118 | device_a2bus_card_interface(mconfig, *this), |
| 119 | 119 | m_ncr5380(*this, SCSI_5380_TAG), |
| 120 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 120 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 121 | 121 | { |
| 122 | 122 | } |
| 123 | 123 | |
| r250237 | r250238 | |
| 125 | 125 | device_t(mconfig, A2BUS_HSSCSI, "Apple II High-Speed SCSI Card", tag, owner, clock, "a2hsscsi", __FILE__), |
| 126 | 126 | device_a2bus_card_interface(mconfig, *this), |
| 127 | 127 | m_ncr5380(*this, SCSI_5380_TAG), |
| 128 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 128 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 129 | 129 | { |
| 130 | 130 | } |
| 131 | 131 |
| r250237 | r250238 | |
|---|---|---|
| 151 | 151 | |
| 152 | 152 | a2bus_mcms2_device::a2bus_mcms2_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 153 | 153 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 154 | device_a2bus_card_interface(mconfig, *this) | |
| 154 | device_a2bus_card_interface(mconfig, *this) | |
| 155 | 155 | { |
| 156 | 156 | } |
| 157 | 157 | |
| 158 | 158 | a2bus_mcms2_device::a2bus_mcms2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 159 | 159 | device_t(mconfig, A2BUS_MCMS2, "Mountain Computer Music System (card 2)", tag, owner, clock, "a2mcms2", __FILE__), |
| 160 | device_a2bus_card_interface(mconfig, *this) | |
| 160 | device_a2bus_card_interface(mconfig, *this) | |
| 161 | 161 | { |
| 162 | 162 | } |
| 163 | 163 | |
| r250237 | r250238 | |
| 215 | 215 | mcms_device::mcms_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 216 | 216 | : device_t(mconfig, MCMS, "Mountain Computer Music System engine", tag, owner, clock, "msmseng", __FILE__), |
| 217 | 217 | device_sound_interface(mconfig, *this), |
| 218 | m_write_irq(*this) | |
| 218 | m_write_irq(*this) | |
| 219 | 219 | { |
| 220 | 220 | } |
| 221 | 221 |
| r250237 | r250238 | |
|---|---|---|
| 75 | 75 | |
| 76 | 76 | a2bus_memexp_device::a2bus_memexp_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 77 | 77 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 78 | device_a2bus_card_interface(mconfig, *this) | |
| 78 | device_a2bus_card_interface(mconfig, *this) | |
| 79 | 79 | { |
| 80 | 80 | } |
| 81 | 81 |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | device_t(mconfig, A2BUS_MIDI, "6850 MIDI card", tag, owner, clock, "a2midi", __FILE__), |
| 64 | 64 | device_a2bus_card_interface(mconfig, *this), |
| 65 | 65 | m_ptm(*this, MIDI_PTM_TAG), |
| 66 | m_acia(*this, MIDI_ACIA_TAG), | |
| 66 | m_acia(*this, MIDI_ACIA_TAG), | |
| 67 | 67 | m_ptm_irq(false) |
| 68 | 68 | { |
| 69 | 69 | } |
| r250237 | r250238 | |
| 72 | 72 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 73 | 73 | device_a2bus_card_interface(mconfig, *this), |
| 74 | 74 | m_ptm(*this, MIDI_PTM_TAG), |
| 75 | m_acia(*this, MIDI_ACIA_TAG), | |
| 75 | m_acia(*this, MIDI_ACIA_TAG), | |
| 76 | 76 | m_ptm_irq(false) |
| 77 | 77 | { |
| 78 | 78 | } |
| r250237 | r250238 | |
|---|---|---|
| 128 | 128 | m_ay1(*this, AY1_TAG), |
| 129 | 129 | m_ay2(*this, AY2_TAG), |
| 130 | 130 | m_ay3(*this, AY3_TAG), |
| 131 | m_ay4(*this, AY4_TAG) | |
| 131 | m_ay4(*this, AY4_TAG) | |
| 132 | 132 | { |
| 133 | 133 | } |
| 134 | 134 |
| r250237 | r250238 | |
|---|---|---|
| 104 | 104 | m_dsw1(*this, "DSW1"), |
| 105 | 105 | m_ctx(*this, PIC_CENTRONICS_TAG), |
| 106 | 106 | m_ctx_data_in(*this, "ctx_data_in"), |
| 107 | m_ctx_data_out(*this, "ctx_data_out"), m_rom(nullptr), | |
| 108 | m_started(false), m_ack(0), m_irqenable(false), m_autostrobe(false), m_timer(nullptr) | |
| 107 | m_ctx_data_out(*this, "ctx_data_out"), | |
| 108 | m_started(false) | |
| 109 | 109 | { |
| 110 | 110 | } |
| 111 | 111 | |
| r250237 | r250238 | |
| 115 | 115 | m_dsw1(*this, "DSW1"), |
| 116 | 116 | m_ctx(*this, PIC_CENTRONICS_TAG), |
| 117 | 117 | m_ctx_data_in(*this, "ctx_data_in"), |
| 118 | m_ctx_data_out(*this, "ctx_data_out"), m_rom(nullptr), | |
| 119 | m_started(false), m_ack(0), m_irqenable(false), m_autostrobe(false), m_timer(nullptr) | |
| 118 | m_ctx_data_out(*this, "ctx_data_out"), | |
| 119 | m_started(false) | |
| 120 | 120 | { |
| 121 | 121 | } |
| 122 | 122 |
| r250237 | r250238 | |
|---|---|---|
| 110 | 110 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 111 | 111 | device_a2bus_card_interface(mconfig, *this), |
| 112 | 112 | m_ncr5380(*this, SCSI_5380_TAG), |
| 113 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 113 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 114 | 114 | { |
| 115 | 115 | } |
| 116 | 116 | |
| r250237 | r250238 | |
| 118 | 118 | device_t(mconfig, A2BUS_SCSI, "Apple II SCSI Card", tag, owner, clock, "a2scsi", __FILE__), |
| 119 | 119 | device_a2bus_card_interface(mconfig, *this), |
| 120 | 120 | m_ncr5380(*this, SCSI_5380_TAG), |
| 121 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 121 | m_scsibus(*this, SCSI_BUS_TAG) | |
| 122 | 122 | { |
| 123 | 123 | } |
| 124 | 124 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | a2bus_softcard_device::a2bus_softcard_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 55 | 55 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 56 | 56 | device_a2bus_card_interface(mconfig, *this), |
| 57 | m_z80(*this, Z80_TAG) | |
| 57 | m_z80(*this, Z80_TAG) | |
| 58 | 58 | { |
| 59 | 59 | } |
| 60 | 60 | |
| 61 | 61 | a2bus_softcard_device::a2bus_softcard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 62 | 62 | device_t(mconfig, A2BUS_SOFTCARD, "Microsoft SoftCard", tag, owner, clock, "a2softcard", __FILE__), |
| 63 | 63 | device_a2bus_card_interface(mconfig, *this), |
| 64 | m_z80(*this, Z80_TAG) | |
| 64 | m_z80(*this, Z80_TAG) | |
| 65 | 65 | { |
| 66 | 66 | } |
| 67 | 67 |
| r250237 | r250238 | |
|---|---|---|
| 132 | 132 | device_a2bus_card_interface(mconfig, *this), |
| 133 | 133 | m_dsw1(*this, "DSW1"), |
| 134 | 134 | m_dsw2(*this, "DSW2"), |
| 135 | m_acia(*this, SSC_ACIA_TAG), | |
| 135 | m_acia(*this, SSC_ACIA_TAG), | |
| 136 | 136 | m_started(false) |
| 137 | 137 | { |
| 138 | 138 | } |
| r250237 | r250238 | |
| 142 | 142 | device_a2bus_card_interface(mconfig, *this), |
| 143 | 143 | m_dsw1(*this, "DSW1"), |
| 144 | 144 | m_dsw2(*this, "DSW2"), |
| 145 | m_acia(*this, SSC_ACIA_TAG), | |
| 145 | m_acia(*this, SSC_ACIA_TAG), | |
| 146 | 146 | m_started(false) |
| 147 | 147 | { |
| 148 | 148 | } |
| r250237 | r250238 | |
|---|---|---|
| 47 | 47 | |
| 48 | 48 | a2bus_swyft_device::a2bus_swyft_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 49 | 49 | device_t(mconfig, A2BUS_SWYFT, "IAI SwyftCard", tag, owner, clock, "a2swyft", __FILE__), |
| 50 | device_a2bus_card_interface(mconfig, *this) | |
| 50 | device_a2bus_card_interface(mconfig, *this) | |
| 51 | 51 | { |
| 52 | 52 | } |
| 53 | 53 | |
| 54 | 54 | a2bus_swyft_device::a2bus_swyft_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 55 | 55 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 56 | device_a2bus_card_interface(mconfig, *this) | |
| 56 | device_a2bus_card_interface(mconfig, *this) | |
| 57 | 57 | { |
| 58 | 58 | } |
| 59 | 59 |
| r250237 | r250238 | |
|---|---|---|
| 70 | 70 | a2bus_themill_device::a2bus_themill_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 71 | 71 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 72 | 72 | device_a2bus_card_interface(mconfig, *this), |
| 73 | m_6809(*this, M6809_TAG) | |
| 73 | m_6809(*this, M6809_TAG) | |
| 74 | 74 | { |
| 75 | 75 | } |
| 76 | 76 | |
| 77 | 77 | a2bus_themill_device::a2bus_themill_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 78 | 78 | device_t(mconfig, A2BUS_THEMILL, "Stellation Two The Mill", tag, owner, clock, "a2themill", __FILE__), |
| 79 | 79 | device_a2bus_card_interface(mconfig, *this), |
| 80 | m_6809(*this, M6809_TAG) | |
| 80 | m_6809(*this, M6809_TAG) | |
| 81 | 81 | { |
| 82 | 82 | } |
| 83 | 83 |
| r250237 | r250238 | |
|---|---|---|
| 79 | 79 | a2bus_thunderclock_device::a2bus_thunderclock_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 80 | 80 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 81 | 81 | device_a2bus_card_interface(mconfig, *this), |
| 82 | m_upd1990ac(*this, THUNDERCLOCK_UPD1990_TAG) | |
| 82 | m_upd1990ac(*this, THUNDERCLOCK_UPD1990_TAG) | |
| 83 | 83 | { |
| 84 | 84 | } |
| 85 | 85 | |
| 86 | 86 | a2bus_thunderclock_device::a2bus_thunderclock_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 87 | 87 | device_t(mconfig, A2BUS_THUNDERCLOCK, "ThunderWare ThunderClock Plus", tag, owner, clock, "a2thunpl", __FILE__), |
| 88 | 88 | device_a2bus_card_interface(mconfig, *this), |
| 89 | m_upd1990ac(*this, THUNDERCLOCK_UPD1990_TAG) | |
| 89 | m_upd1990ac(*this, THUNDERCLOCK_UPD1990_TAG) | |
| 90 | 90 | { |
| 91 | 91 | } |
| 92 | 92 |
| r250237 | r250238 | |
|---|---|---|
| 140 | 140 | |
| 141 | 141 | a2bus_videx160_device::a2bus_videx160_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 142 | 142 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 143 | device_a2bus_card_interface(mconfig, *this), m_rom(nullptr), m_chrrom(nullptr), m_framecnt(0), m_ctrl1(0), m_ctrl2(0), | |
| 144 | m_crtc(*this, ULTRATERM_MC6845_NAME), m_rambank(0) | |
| 143 | device_a2bus_card_interface(mconfig, *this), | |
| 144 | m_crtc(*this, ULTRATERM_MC6845_NAME) | |
| 145 | 145 | { |
| 146 | 146 | } |
| 147 | 147 |
| r250237 | r250238 | |
|---|---|---|
| 174 | 174 | |
| 175 | 175 | a2bus_videx80_device::a2bus_videx80_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 176 | 176 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 177 | device_a2bus_card_interface(mconfig, *this), m_rom(nullptr), m_chrrom(nullptr), m_framecnt(0), | |
| 178 | m_crtc(*this, VIDEOTERM_MC6845_NAME), m_rambank(0), | |
| 177 | device_a2bus_card_interface(mconfig, *this), | |
| 178 | m_crtc(*this, VIDEOTERM_MC6845_NAME), | |
| 179 | 179 | m_palette(*this, ":palette") |
| 180 | 180 | { |
| 181 | 181 | } |
| r250237 | r250238 | |
|---|---|---|
| 117 | 117 | a2bus_vulcanbase_device::a2bus_vulcanbase_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 118 | 118 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 119 | 119 | device_a2bus_card_interface(mconfig, *this), |
| 120 | m_ata(*this, VULCAN_ATA_TAG) | |
| 120 | m_ata(*this, VULCAN_ATA_TAG) | |
| 121 | 121 | { |
| 122 | 122 | } |
| 123 | 123 |
| r250237 | r250238 | |
|---|---|---|
| 72 | 72 | a2bus_zipdrivebase_device::a2bus_zipdrivebase_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 73 | 73 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 74 | 74 | device_a2bus_card_interface(mconfig, *this), |
| 75 | m_ata(*this, ZIPDRIVE_ATA_TAG) | |
| 75 | m_ata(*this, ZIPDRIVE_ATA_TAG) | |
| 76 | 76 | { |
| 77 | 77 | } |
| 78 | 78 |
| r250237 | r250238 | |
|---|---|---|
| 117 | 117 | m_con1(*this, FDC01_FDC_TAG":0"), |
| 118 | 118 | m_con2(*this, FDC01_FDC_TAG":1"), |
| 119 | 119 | m_con3(*this, FDC01_FDC_TAG":2"), |
| 120 | m_con4(*this, FDC01_FDC_TAG":3") | |
| 120 | m_con4(*this, FDC01_FDC_TAG":3") | |
| 121 | 121 | { |
| 122 | 122 | } |
| 123 | 123 | |
| r250237 | r250238 | |
| 128 | 128 | m_con1(*this, FDC01_FDC_TAG":0"), |
| 129 | 129 | m_con2(*this, FDC01_FDC_TAG":1"), |
| 130 | 130 | m_con3(*this, FDC01_FDC_TAG":2"), |
| 131 | m_con4(*this, FDC01_FDC_TAG":3") | |
| 131 | m_con4(*this, FDC01_FDC_TAG":3") | |
| 132 | 132 | { |
| 133 | 133 | } |
| 134 | 134 |
| r250237 | r250238 | |
|---|---|---|
| 87 | 87 | m_con1(*this, FDC02_FDC_TAG":0"), |
| 88 | 88 | m_con2(*this, FDC02_FDC_TAG":1"), |
| 89 | 89 | m_con3(*this, FDC02_FDC_TAG":2"), |
| 90 | m_con4(*this, FDC02_FDC_TAG":3") | |
| 90 | m_con4(*this, FDC02_FDC_TAG":3") | |
| 91 | 91 | { |
| 92 | 92 | } |
| 93 | 93 | |
| r250237 | r250238 | |
| 98 | 98 | m_con1(*this, FDC02_FDC_TAG":0"), |
| 99 | 99 | m_con2(*this, FDC02_FDC_TAG":1"), |
| 100 | 100 | m_con3(*this, FDC02_FDC_TAG":2"), |
| 101 | m_con4(*this, FDC02_FDC_TAG":3") | |
| 101 | m_con4(*this, FDC02_FDC_TAG":3") | |
| 102 | 102 | { |
| 103 | 103 | } |
| 104 | 104 | |
| r250237 | r250238 | |
| 125 | 125 | { |
| 126 | 126 | m_fdc_local_status = 2; |
| 127 | 127 | m_fdc_local_command = 0; |
| 128 | m_curfloppy = | |
| 128 | m_curfloppy = NULL; | |
| 129 | 129 | m_in_drq = false; |
| 130 | 130 | m_timer->adjust(attotime::never); |
| 131 | 131 | } |
| r250237 | r250238 | |
|---|---|---|
| 44 | 44 | |
| 45 | 45 | a2bus_laser128_device::a2bus_laser128_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 46 | 46 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 47 | device_a2bus_card_interface(mconfig, *this) | |
| 47 | device_a2bus_card_interface(mconfig, *this) | |
| 48 | 48 | |
| 49 | 49 | { |
| 50 | 50 | } |
| 51 | 51 | |
| 52 | 52 | a2bus_laser128_device::a2bus_laser128_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 53 | 53 | device_t(mconfig, A2BUS_LASER128, "VTech Laser 128 Internal Device", tag, owner, clock, "a2laser128", __FILE__), |
| 54 | device_a2bus_card_interface(mconfig, *this) | |
| 54 | device_a2bus_card_interface(mconfig, *this) | |
| 55 | 55 | { |
| 56 | 56 | } |
| 57 | 57 |
| r250237 | r250238 | |
|---|---|---|
| 179 | 179 | m_mcu(*this, MOUSE_MCU_TAG), |
| 180 | 180 | m_mouseb(*this, MOUSE_BUTTON_TAG), |
| 181 | 181 | m_mousex(*this, MOUSE_XAXIS_TAG), |
| 182 | m_mousey(*this, MOUSE_YAXIS_TAG), m_rom(nullptr), m_ddr_a(0), m_ddr_b(0), m_ddr_c(0), m_port_a_out(0), m_port_b_out(0), m_port_c_out(0), m_port_a_in(0), m_port_b_in(0), | |
| 183 | m_port_c_in(0), m_timer_cnt(0), m_timer_ctl(0), m_mask_option(0), last_mx(0), last_my(0), count_x(0), count_y(0), m_timer(nullptr), m_read_timer(nullptr) | |
| 182 | m_mousey(*this, MOUSE_YAXIS_TAG) | |
| 184 | 183 | { |
| 185 | 184 | m_started = false; |
| 186 | 185 | m_rom_bank = 0; |
| r250237 | r250238 | |
| 193 | 192 | m_mcu(*this, MOUSE_MCU_TAG), |
| 194 | 193 | m_mouseb(*this, MOUSE_BUTTON_TAG), |
| 195 | 194 | m_mousex(*this, MOUSE_XAXIS_TAG), |
| 196 | m_mousey(*this, MOUSE_YAXIS_TAG) | |
| 195 | m_mousey(*this, MOUSE_YAXIS_TAG) | |
| 197 | 196 | { |
| 198 | 197 | m_started = false; |
| 199 | 198 | m_rom_bank = 0; |
| r250237 | r250238 | |
|---|---|---|
| 30 | 30 | |
| 31 | 31 | a2bus_ssramcard_device::a2bus_ssramcard_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 32 | 32 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 33 | device_a2bus_card_interface(mconfig, *this) | |
| 33 | device_a2bus_card_interface(mconfig, *this) | |
| 34 | 34 | { |
| 35 | 35 | } |
| 36 | 36 | |
| 37 | 37 | a2bus_ssramcard_device::a2bus_ssramcard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 38 | 38 | device_t(mconfig, A2BUS_RAMCARD128K, "Saturn Systems 128K Extended Language Card", tag, owner, clock, "ssram128", __FILE__), |
| 39 | device_a2bus_card_interface(mconfig, *this) | |
| 39 | device_a2bus_card_interface(mconfig, *this) | |
| 40 | 40 | { |
| 41 | 41 | } |
| 42 | 42 |
| r250237 | r250238 | |
|---|---|---|
| 30 | 30 | |
| 31 | 31 | a2bus_ramcard_device::a2bus_ramcard_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 32 | 32 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 33 | device_a2bus_card_interface(mconfig, *this) | |
| 33 | device_a2bus_card_interface(mconfig, *this) | |
| 34 | 34 | { |
| 35 | 35 | } |
| 36 | 36 | |
| 37 | 37 | a2bus_ramcard_device::a2bus_ramcard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 38 | 38 | device_t(mconfig, A2BUS_RAMCARD16K, "Apple II 16K Language Card", tag, owner, clock, "a2ram16k", __FILE__), |
| 39 | device_a2bus_card_interface(mconfig, *this) | |
| 39 | device_a2bus_card_interface(mconfig, *this) | |
| 40 | 40 | { |
| 41 | 41 | } |
| 42 | 42 |
| r250237 | r250238 | |
|---|---|---|
| 126 | 126 | device_a2bus_card_interface(mconfig, *this), |
| 127 | 127 | m_pia(*this, TIMEMASTER_PIA_TAG), |
| 128 | 128 | m_msm5832(*this, TIMEMASTER_M5832_TAG), |
| 129 | m_dsw1(*this, "DSW1") | |
| 129 | m_dsw1(*this, "DSW1") | |
| 130 | 130 | { |
| 131 | 131 | m_started = false; |
| 132 | 132 | } |
| r250237 | r250238 | |
| 136 | 136 | device_a2bus_card_interface(mconfig, *this), |
| 137 | 137 | m_pia(*this, TIMEMASTER_PIA_TAG), |
| 138 | 138 | m_msm5832(*this, TIMEMASTER_M5832_TAG), |
| 139 | m_dsw1(*this, "DSW1") | |
| 139 | m_dsw1(*this, "DSW1") | |
| 140 | 140 | { |
| 141 | 141 | m_started = false; |
| 142 | 142 | } |
| r250237 | r250238 | |
|---|---|---|
| 115 | 115 | a78_cart_slot_device::a78_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 116 | 116 | device_t(mconfig, A78_CART_SLOT, "Atari 7800 Cartridge Slot", tag, owner, clock, "a78_cart_slot", __FILE__), |
| 117 | 117 | device_image_interface(mconfig, *this), |
| 118 | device_slot_interface(mconfig, *this) | |
| 118 | device_slot_interface(mconfig, *this) | |
| 119 | 119 | { |
| 120 | 120 | } |
| 121 | 121 |
| r250237 | r250238 | |
|---|---|---|
| 41 | 41 | |
| 42 | 42 | |
| 43 | 43 | a78_versaboard_device::a78_versaboard_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 44 | : a78_rom_sg_device(mconfig, type, name, tag, owner, clock, shortname, source), m_ram_bank(0) | |
| 45 | { | |
| 44 | : a78_rom_sg_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 45 | { | |
| 46 | 46 | } |
| 47 | 47 | |
| 48 | 48 | a78_versaboard_device::a78_versaboard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 49 | : a78_rom_sg_device(mconfig, A78_ROM_VERSABOARD, "Atari 7800 VersaBoard Cart", tag, owner, clock, "a78_versaboard", __FILE__), m_ram_bank(0) | |
| 50 | { | |
| 49 | : a78_rom_sg_device(mconfig, A78_ROM_VERSABOARD, "Atari 7800 VersaBoard Cart", tag, owner, clock, "a78_versaboard", __FILE__) | |
| 50 | { | |
| 51 | 51 | } |
| 52 | 52 | |
| 53 | 53 |
| r250237 | r250238 | |
|---|---|---|
| 68 | 68 | |
| 69 | 69 | |
| 70 | 70 | a78_rom_sg_device::a78_rom_sg_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 71 | : a78_rom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_bank(0) | |
| 72 | { | |
| 71 | : a78_rom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 72 | { | |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | 75 | a78_rom_sg_device::a78_rom_sg_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 76 | : a78_rom_device(mconfig, A78_ROM_SG, "Atari 7800 ROM Carts w/SuperGame Bankswitch", tag, owner, clock, "a78_rom_sg", __FILE__), m_bank(0) | |
| 77 | { | |
| 76 | : a78_rom_device(mconfig, A78_ROM_SG, "Atari 7800 ROM Carts w/SuperGame Bankswitch", tag, owner, clock, "a78_rom_sg", __FILE__) | |
| 77 | { | |
| 78 | 78 | } |
| 79 | 79 | |
| 80 | 80 | a78_rom_sg_pokey_device::a78_rom_sg_pokey_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 107 | 107 | |
| 108 | 108 | |
| 109 | 109 | a78_rom_abs_device::a78_rom_abs_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 110 | : a78_rom_device(mconfig, A78_ROM_ABSOLUTE, "Atari 7800 ROM Carts w/Absolute Bankswitch", tag, owner, clock, "a78_rom_abs", __FILE__), m_bank(0) | |
| 111 | { | |
| 110 | : a78_rom_device(mconfig, A78_ROM_ABSOLUTE, "Atari 7800 ROM Carts w/Absolute Bankswitch", tag, owner, clock, "a78_rom_abs", __FILE__) | |
| 111 | { | |
| 112 | 112 | } |
| 113 | 113 | |
| 114 | 114 | |
| 115 | 115 | a78_rom_act_device::a78_rom_act_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 116 | : a78_rom_device(mconfig, A78_ROM_ACTIVISION, "Atari 7800 ROM Carts w/Activision Bankswitch", tag, owner, clock, "a78_rom_act", __FILE__), m_bank(0) | |
| 117 | { | |
| 116 | : a78_rom_device(mconfig, A78_ROM_ACTIVISION, "Atari 7800 ROM Carts w/Activision Bankswitch", tag, owner, clock, "a78_rom_act", __FILE__) | |
| 117 | { | |
| 118 | 118 | } |
| 119 | 119 | |
| 120 | 120 |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | a78_xboard_device::a78_xboard_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 60 | 60 | : a78_rom_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 61 | 61 | m_xbslot(*this, "xb_slot"), |
| 62 | m_pokey(*this, "xb_pokey"), m_reg(0), m_ram_bank(0) | |
| 63 | { | |
| 62 | m_pokey(*this, "xb_pokey") | |
| 63 | { | |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | |
| 67 | 67 | a78_xboard_device::a78_xboard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 68 | 68 | : a78_rom_device(mconfig, A78_XBOARD, "Atari 7800 XBoarD expansion", tag, owner, clock, "a78_xboard", __FILE__), |
| 69 | 69 | m_xbslot(*this, "xb_slot"), |
| 70 | m_pokey(*this, "xb_pokey"), m_reg(0), m_ram_bank(0) | |
| 71 | { | |
| 70 | m_pokey(*this, "xb_pokey") | |
| 71 | { | |
| 72 | 72 | } |
| 73 | 73 | |
| 74 | 74 | |
| 75 | 75 | a78_xm_device::a78_xm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 76 | 76 | : a78_xboard_device(mconfig, A78_XM, "Atari 7800 XM expansion module", tag, owner, clock, "a78_xm", __FILE__), |
| 77 | m_ym(*this, "xm_ym2151"), m_ym_enabled(0) | |
| 78 | { | |
| 77 | m_ym(*this, "xm_ym2151") | |
| 78 | { | |
| 79 | 79 | } |
| 80 | 80 | |
| 81 | 81 |
| r250237 | r250238 | |
|---|---|---|
| 104 | 104 | a800_cart_slot_device::a800_cart_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 105 | 105 | device_t(mconfig, type, name, tag, owner, clock, shortname, __FILE__), |
| 106 | 106 | device_image_interface(mconfig, *this), |
| 107 | device_slot_interface(mconfig, *this) | |
| 107 | device_slot_interface(mconfig, *this) | |
| 108 | 108 | { |
| 109 | 109 | } |
| 110 | 110 | |
| 111 | 111 | a800_cart_slot_device::a800_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 112 | 112 | device_t(mconfig, A800_CART_SLOT, "Atari 8bit Cartridge Slot", tag, owner, clock, "a800_cart_slot", __FILE__), |
| 113 | 113 | device_image_interface(mconfig, *this), |
| 114 | device_slot_interface(mconfig, *this) | |
| 114 | device_slot_interface(mconfig, *this) | |
| 115 | 115 | { |
| 116 | 116 | } |
| 117 | 117 |
| r250237 | r250238 | |
|---|---|---|
| 50 | 50 | //------------------------------------------------- |
| 51 | 51 | a8sio_slot_device::a8sio_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 52 | 52 | : device_t(mconfig, A8SIO_SLOT, "Atari 8 bit SIO Slot", tag, owner, clock, "a8sio_slot", __FILE__) |
| 53 | , device_slot_interface(mconfig, *this) | |
| 53 | , device_slot_interface(mconfig, *this) | |
| 54 | 54 | { |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | 57 | a8sio_slot_device::a8sio_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 58 | 58 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 59 | device_slot_interface(mconfig, *this) | |
| 59 | device_slot_interface(mconfig, *this) | |
| 60 | 60 | { |
| 61 | 61 | } |
| 62 | 62 | |
| r250237 | r250238 | |
| 102 | 102 | : device_t(mconfig, A8SIO, "Atari 8 biot SIO", tag, owner, clock, "a8sio", __FILE__) |
| 103 | 103 | , m_out_clock_in_cb(*this) |
| 104 | 104 | , m_out_data_in_cb(*this) |
| 105 | , m_out_audio_in_cb(*this) | |
| 105 | , m_out_audio_in_cb(*this) | |
| 106 | 106 | { |
| 107 | 107 | } |
| 108 | 108 | |
| r250237 | r250238 | |
| 110 | 110 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source) |
| 111 | 111 | , m_out_clock_in_cb(*this) |
| 112 | 112 | , m_out_data_in_cb(*this) |
| 113 | , m_out_audio_in_cb(*this) | |
| 113 | , m_out_audio_in_cb(*this) | |
| 114 | 114 | { |
| 115 | 115 | } |
| 116 | 116 | |
| r250237 | r250238 | |
| 182 | 182 | device_a8sio_card_interface::device_a8sio_card_interface(const machine_config &mconfig, device_t &device) |
| 183 | 183 | : device_slot_card_interface(mconfig, device) |
| 184 | 184 | , m_a8sio(NULL) |
| 185 | , m_a8sio_tag(NULL) | |
| 185 | , m_a8sio_tag(NULL) | |
| 186 | 186 | { |
| 187 | 187 | } |
| 188 | 188 |
| r250237 | r250238 | |
|---|---|---|
| 47 | 47 | a8sio_cassette_device::a8sio_cassette_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 48 | 48 | : device_t(mconfig, A8SIO_CASSETTE, "Atari 8 bit cassette", tag, owner, clock, "a8sio_cass", __FILE__) |
| 49 | 49 | , device_a8sio_card_interface(mconfig, *this) |
| 50 | , m_cassette(*this, "cassette"), m_read_timer(nullptr) | |
| 51 | , m_old_cass_signal(0) | |
| 50 | , m_cassette(*this, "cassette") | |
| 51 | , m_old_cass_signal(0) | |
| 52 | 52 | , m_signal_count(0) |
| 53 | 53 | { |
| 54 | 54 | } |
| r250237 | r250238 | |
| 56 | 56 | a8sio_cassette_device::a8sio_cassette_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 57 | 57 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source) |
| 58 | 58 | , device_a8sio_card_interface(mconfig, *this) |
| 59 | , m_cassette(*this, "cassette"), m_read_timer(nullptr) | |
| 60 | , m_old_cass_signal(0) | |
| 59 | , m_cassette(*this, "cassette") | |
| 60 | , m_old_cass_signal(0) | |
| 61 | 61 | , m_signal_count(0) |
| 62 | 62 | { |
| 63 | 63 | } |
| r250237 | r250238 | |
|---|---|---|
| 22 | 22 | |
| 23 | 23 | |
| 24 | 24 | a800_rom_oss8k_device::a800_rom_oss8k_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 25 | : a800_rom_device(mconfig, A800_ROM_OSS8K, "Atari 800 ROM Carts OSS 8K", tag, owner, clock, "a800_oss8k", __FILE__), | |
| 26 | m_bank(0) | |
| 27 | { | |
| 25 | : a800_rom_device(mconfig, A800_ROM_OSS8K, "Atari 800 ROM Carts OSS 8K", tag, owner, clock, "a800_oss8k", __FILE__) | |
| 26 | { | |
| 28 | 27 | } |
| 29 | 28 | |
| 30 | 29 | |
| 31 | 30 | a800_rom_oss34_device::a800_rom_oss34_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 32 | : a800_rom_device(mconfig, A800_ROM_OSS34, "Atari 800 ROM Carts OSS-034M", tag, owner, clock, "a800_034m", __FILE__), m_bank(0) | |
| 33 | { | |
| 31 | : a800_rom_device(mconfig, A800_ROM_OSS34, "Atari 800 ROM Carts OSS-034M", tag, owner, clock, "a800_034m", __FILE__) | |
| 32 | { | |
| 34 | 33 | } |
| 35 | 34 | |
| 36 | 35 | |
| 37 | 36 | a800_rom_oss43_device::a800_rom_oss43_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 38 | : a800_rom_device(mconfig, A800_ROM_OSS43, "Atari 800 ROM Carts OSS-043M", tag, owner, clock, "a800_043m", __FILE__), m_bank(0) | |
| 39 | { | |
| 37 | : a800_rom_device(mconfig, A800_ROM_OSS43, "Atari 800 ROM Carts OSS-043M", tag, owner, clock, "a800_043m", __FILE__) | |
| 38 | { | |
| 40 | 39 | } |
| 41 | 40 | |
| 42 | 41 | |
| 43 | 42 | a800_rom_oss91_device::a800_rom_oss91_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 44 | : a800_rom_device(mconfig, A800_ROM_OSS91, "Atari 800 ROM Carts OSS-M091", tag, owner, clock, "a800_m091", __FILE__), m_bank(0) | |
| 45 | { | |
| 43 | : a800_rom_device(mconfig, A800_ROM_OSS91, "Atari 800 ROM Carts OSS-M091", tag, owner, clock, "a800_m091", __FILE__) | |
| 44 | { | |
| 46 | 45 | } |
| 47 | 46 | |
| 48 | 47 |
| r250237 | r250238 | |
|---|---|---|
| 51 | 51 | |
| 52 | 52 | |
| 53 | 53 | xegs_rom_device::xegs_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 54 | : a800_rom_device(mconfig, XEGS_ROM, "Atari XEGS 64K ROM Carts", tag, owner, clock, "a800_xegs", __FILE__), m_bank(0) | |
| 55 | { | |
| 54 | : a800_rom_device(mconfig, XEGS_ROM, "Atari XEGS 64K ROM Carts", tag, owner, clock, "a800_xegs", __FILE__) | |
| 55 | { | |
| 56 | 56 | } |
| 57 | 57 | |
| 58 | 58 | |
| 59 | 59 | a800_rom_williams_device::a800_rom_williams_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 60 | : a800_rom_device(mconfig, A800_ROM_WILLIAMS, "Atari 800 64K ROM Carts Williams", tag, owner, clock, "a800_williams", __FILE__), m_bank(0) | |
| 61 | { | |
| 60 | : a800_rom_device(mconfig, A800_ROM_WILLIAMS, "Atari 800 64K ROM Carts Williams", tag, owner, clock, "a800_williams", __FILE__) | |
| 61 | { | |
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 | |
| 65 | 65 | a800_rom_express_device::a800_rom_express_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 66 | : a800_rom_device(mconfig, A800_ROM_EXPRESS, "Atari 800 64K ROM Carts Express/Diamond", tag, owner, clock, "a800_express", __FILE__), m_bank(0) | |
| 67 | { | |
| 66 | : a800_rom_device(mconfig, A800_ROM_EXPRESS, "Atari 800 64K ROM Carts Express/Diamond", tag, owner, clock, "a800_express", __FILE__) | |
| 67 | { | |
| 68 | 68 | } |
| 69 | 69 | |
| 70 | 70 | |
| 71 | 71 | a800_rom_turbo_device::a800_rom_turbo_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 72 | : a800_rom_device(mconfig, A800_ROM_TURBO, "Atari 800 64K ROM Carts Turbosoft", tag, owner, clock, "a800_turbo", __FILE__), m_bank(0) | |
| 73 | { | |
| 72 | : a800_rom_device(mconfig, A800_ROM_TURBO, "Atari 800 64K ROM Carts Turbosoft", tag, owner, clock, "a800_turbo", __FILE__) | |
| 73 | { | |
| 74 | 74 | } |
| 75 | 75 | |
| 76 | 76 | |
| r250237 | r250238 | |
| 81 | 81 | |
| 82 | 82 | |
| 83 | 83 | a800_rom_microcalc_device::a800_rom_microcalc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 84 | : a800_rom_device(mconfig, A800_ROM_MICROCALC, "Atari 800 64K ROM Cart SITSA MicroCalc", tag, owner, clock, "a800_sitsa", __FILE__), m_bank(0) | |
| 85 | { | |
| 84 | : a800_rom_device(mconfig, A800_ROM_MICROCALC, "Atari 800 64K ROM Cart SITSA MicroCalc", tag, owner, clock, "a800_sitsa", __FILE__) | |
| 85 | { | |
| 86 | 86 | } |
| 87 | 87 | |
| 88 | 88 |
| r250237 | r250238 | |
|---|---|---|
| 19 | 19 | |
| 20 | 20 | |
| 21 | 21 | a800_rom_spartados_device::a800_rom_spartados_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 22 | : a800_rom_device(mconfig, A800_ROM_SPARTADOS, "Atari 800 SpartaDOS ROM Carts", tag, owner, clock, "a800_sparta", __FILE__), | |
| 23 | m_bank(0), | |
| 24 | m_subslot_enabled(0) | |
| 25 | { | |
| 22 | : a800_rom_device(mconfig, A800_ROM_SPARTADOS, "Atari 800 SpartaDOS ROM Carts", tag, owner, clock, "a800_sparta", __FILE__) | |
| 23 | { | |
| 26 | 24 | } |
| 27 | 25 | |
| 28 | 26 |
| r250237 | r250238 | |
|---|---|---|
| 49 | 49 | m_write_xint2(*this), |
| 50 | 50 | m_write_xint3(*this), |
| 51 | 51 | m_write_xint4(*this), |
| 52 | m_write_xint5(*this), m_card(nullptr), m_irq(0), m_nmi(0), m_pren(0), | |
| 53 | m_trrq(0), m_xint2(0), m_xint3(0), m_xint4(0), m_xint5(0) | |
| 52 | m_write_xint5(*this), | |
| 53 | m_trrq(0) | |
| 54 | 54 | { |
| 55 | 55 | } |
| 56 | 56 |
| r250237 | r250238 | |
|---|---|---|
| 285 | 285 | m_floppy0(*this, FD1771_TAG ":0"), |
| 286 | 286 | m_floppy1(*this, FD1771_TAG ":1"), |
| 287 | 287 | m_dos_rom(*this, "dos"), |
| 288 | m_cs(false) | |
| 288 | m_cs(false) | |
| 289 | 289 | { |
| 290 | 290 | } |
| 291 | 291 |
| r250237 | r250238 | |
|---|---|---|
| 413 | 413 | m_floppy1(*this, MB8876_TAG":1"), |
| 414 | 414 | m_sw1(*this, "SW1"), |
| 415 | 415 | m_s1(*this, "S1"), |
| 416 | m_cs(false), | |
| 416 | m_cs(false), | |
| 417 | 417 | m_fdc_irq(0), |
| 418 | 418 | m_fdc_drq(0), |
| 419 | 419 | m_wait_enable(0), |
| r250237 | r250238 | |
|---|---|---|
| 748 | 748 | m_fdc(*this, SAB1793_TAG), |
| 749 | 749 | m_floppy0(*this, SAB1793_TAG":0"), |
| 750 | 750 | m_floppy1(*this, SAB1793_TAG":1"), |
| 751 | m_floppy( | |
| 751 | m_floppy(NULL), | |
| 752 | 752 | m_sw1(*this, "SW1"), |
| 753 | 753 | m_sw2(*this, "SW2"), |
| 754 | 754 | m_sw3(*this, "SW3"), |
| 755 | m_cs(false), | |
| 755 | m_cs(false), | |
| 756 | 756 | m_fdc_irq(0), |
| 757 | 757 | m_dma_irq(0), |
| 758 | 758 | m_busy(0), |
| r250237 | r250238 | |
| 768 | 768 | m_fdc(*this, SAB1793_TAG), |
| 769 | 769 | m_floppy0(*this, SAB1793_TAG":0"), |
| 770 | 770 | m_floppy1(*this, SAB1793_TAG":1"), |
| 771 | m_floppy( | |
| 771 | m_floppy(NULL), | |
| 772 | 772 | m_sw1(*this, "SW1"), |
| 773 | 773 | m_sw2(*this, "SW2"), |
| 774 | 774 | m_sw3(*this, "SW3"), |
| 775 | m_cs(false), | |
| 775 | m_cs(false), | |
| 776 | 776 | m_fdc_irq(0), |
| 777 | 777 | m_dma_irq(0), |
| 778 | 778 | m_busy(0), |
| r250237 | r250238 | |
|---|---|---|
| 352 | 352 | m_sasi_io(0), |
| 353 | 353 | m_sasi_cd(0), |
| 354 | 354 | m_sasi_msg(0), |
| 355 | m_sasi_bsy(0), | |
| 355 | m_sasi_bsy(0), | |
| 356 | 356 | m_stat(0), |
| 357 | 357 | m_sasi_data(0) |
| 358 | 358 | { |
| r250237 | r250238 | |
|---|---|---|
| 439 | 439 | m_x10(*this, "X10"), |
| 440 | 440 | m_x11(*this, "X11"), |
| 441 | 441 | m_dsw(*this, "DSW"), |
| 442 | m_txd(1), | |
| 442 | m_txd(1), | |
| 443 | 443 | m_keydown(1), |
| 444 | m_clock(0), m_hys(0), m_reset(0), | |
| 445 | m_stb(1), m_j3(0), m_serial_timer(nullptr), m_reset_timer(nullptr) | |
| 444 | m_clock(0), | |
| 445 | m_stb(1) | |
| 446 | 446 | { |
| 447 | 447 | } |
| 448 | 448 | |
| r250237 | r250238 | |
| 464 | 464 | m_x10(*this, "X10"), |
| 465 | 465 | m_x11(*this, "X11"), |
| 466 | 466 | m_dsw(*this, "DSW"), |
| 467 | m_txd(1), | |
| 467 | m_txd(1), | |
| 468 | 468 | m_keydown(1), |
| 469 | m_clock(0), m_hys(0), m_reset(0), | |
| 470 | m_stb(1), m_j3(0), m_serial_timer(nullptr), m_reset_timer(nullptr) | |
| 469 | m_clock(0), | |
| 470 | m_stb(1) | |
| 471 | 471 | { |
| 472 | 472 | } |
| 473 | 473 |
| r250237 | r250238 | |
|---|---|---|
| 352 | 352 | m_txd(1), |
| 353 | 353 | m_clk(0), |
| 354 | 354 | m_stb(1), |
| 355 | m_keydown(1) | |
| 355 | m_keydown(1) | |
| 356 | 356 | { |
| 357 | 357 | } |
| 358 | 358 |
| r250237 | r250238 | |
|---|---|---|
| 487 | 487 | |
| 488 | 488 | abc99_device::abc99_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 489 | 489 | device_t(mconfig, ABC99, "Luxor ABC 99", tag, owner, clock, "abc99", __FILE__), |
| 490 | abc_keyboard_interface(mconfig, *this), | |
| 490 | abc_keyboard_interface(mconfig, *this), | |
| 491 | 491 | m_maincpu(*this, I8035_Z2_TAG), |
| 492 | 492 | m_mousecpu(*this, I8035_Z5_TAG), |
| 493 | 493 | m_speaker(*this, "speaker"), |
| r250237 | r250238 | |
|---|---|---|
| 47 | 47 | device_slot_interface(mconfig, *this), |
| 48 | 48 | m_out_rx_handler(*this), |
| 49 | 49 | m_out_trxc_handler(*this), |
| 50 | m_out_keydown_handler(*this) | |
| 50 | m_out_keydown_handler(*this) | |
| 51 | 51 | { |
| 52 | 52 | } |
| 53 | 53 |
| r250237 | r250238 | |
|---|---|---|
| 55 | 55 | device_t(mconfig, ADAM_EXPANSION_SLOT, "ADAM expansion slot", tag, owner, clock, "adam_expansion_slot", __FILE__), |
| 56 | 56 | device_slot_interface(mconfig, *this), |
| 57 | 57 | device_image_interface(mconfig, *this), |
| 58 | m_write_irq(*this) | |
| 58 | m_write_irq(*this) | |
| 59 | 59 | { |
| 60 | 60 | } |
| 61 | 61 |
| r250237 | r250238 | |
|---|---|---|
| 92 | 92 | : device_t(mconfig, ADAM_IDE, "Powermate HP IDE", tag, owner, clock, "adam_ide", __FILE__), |
| 93 | 93 | device_adam_expansion_slot_card_interface(mconfig, *this), |
| 94 | 94 | m_ata(*this, ATA_TAG), |
| 95 | m_cent_data_out(*this, "cent_data_out") | |
| 95 | m_cent_data_out(*this, "cent_data_out") | |
| 96 | 96 | { |
| 97 | 97 | } |
| 98 | 98 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | //------------------------------------------------- |
| 29 | 29 | |
| 30 | 30 | device_adamnet_card_interface::device_adamnet_card_interface(const machine_config &mconfig, device_t &device) |
| 31 | : device_slot_card_interface(mconfig, device), | |
| 32 | m_bus(nullptr) | |
| 31 | : device_slot_card_interface(mconfig, device) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 | |
| r250237 | r250238 | |
| 53 | 52 | //------------------------------------------------- |
| 54 | 53 | adamnet_slot_device::adamnet_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 55 | 54 | device_t(mconfig, ADAMNET_SLOT, "ADAMnet slot", tag, owner, clock, "adamnet_slot", __FILE__), |
| 56 | device_slot_interface(mconfig, *this) | |
| 55 | device_slot_interface(mconfig, *this) | |
| 57 | 56 | { |
| 58 | 57 | } |
| 59 | 58 |
| r250237 | r250238 | |
|---|---|---|
| 123 | 123 | device_adamnet_card_interface(mconfig, *this), |
| 124 | 124 | m_maincpu(*this, M6801_TAG), |
| 125 | 125 | m_ddp0(*this, "cassette"), |
| 126 | m_ddp1(*this, "cassette2") | |
| 126 | m_ddp1(*this, "cassette2") | |
| 127 | 127 | { |
| 128 | 128 | } |
| 129 | 129 |
| r250237 | r250238 | |
|---|---|---|
| 76 | 76 | device_t(mconfig, APF_CART_SLOT, "APF Cartridge Slot", tag, owner, clock, "apf_cart_slot", __FILE__), |
| 77 | 77 | device_image_interface(mconfig, *this), |
| 78 | 78 | device_slot_interface(mconfig, *this), |
| 79 | m_type(APF_STD) | |
| 79 | m_type(APF_STD) | |
| 80 | 80 | { |
| 81 | 81 | } |
| 82 | 82 |
| r250237 | r250238 | |
|---|---|---|
| 69 | 69 | m_ext1_handler(*this), |
| 70 | 70 | m_ext2_handler(*this), |
| 71 | 71 | m_int2_handler(*this), |
| 72 | m_int3_handler(*this) | |
| 72 | m_int3_handler(*this) | |
| 73 | 73 | { |
| 74 | 74 | } |
| 75 | 75 |
| r250237 | r250238 | |
|---|---|---|
| 66 | 66 | device_t(mconfig, EA2001_CART_SLOT, "Emerson Arcadia Cartridge Slot", tag, owner, clock, "arcadia_cart_slot", __FILE__), |
| 67 | 67 | device_image_interface(mconfig, *this), |
| 68 | 68 | device_slot_interface(mconfig, *this), |
| 69 | m_type(ARCADIA_STD) | |
| 69 | m_type(ARCADIA_STD) | |
| 70 | 70 | { |
| 71 | 71 | } |
| 72 | 72 |
| r250237 | r250238 | |
|---|---|---|
| 38 | 38 | astrocade_exp_device::astrocade_exp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 39 | 39 | device_t(mconfig, ASTROCADE_EXP_SLOT, "Bally Astrocade expansion", tag, owner, clock, "astrocde_exp", __FILE__), |
| 40 | 40 | device_slot_interface(mconfig, *this), |
| 41 | m_card_mounted(false) | |
| 41 | m_card_mounted(false) | |
| 42 | 42 | { |
| 43 | 43 | } |
| 44 | 44 |
| r250237 | r250238 | |
|---|---|---|
| 35 | 35 | } |
| 36 | 36 | |
| 37 | 37 | astrocade_rom_256k_device::astrocade_rom_256k_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 38 | : astrocade_rom_device(mconfig, ASTROCADE_ROM_256K, "Bally Astrocade 256K Carts", tag, owner, clock, "astrocade_256k", __FILE__), m_base_bank(0) | |
| 39 | { | |
| 38 | : astrocade_rom_device(mconfig, ASTROCADE_ROM_256K, "Bally Astrocade 256K Carts", tag, owner, clock, "astrocade_256k", __FILE__) | |
| 39 | { | |
| 40 | 40 | } |
| 41 | 41 | |
| 42 | 42 | astrocade_rom_512k_device::astrocade_rom_512k_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 43 | : astrocade_rom_device(mconfig, ASTROCADE_ROM_512K, "Bally Astrocade 512K Carts", tag, owner, clock, "astrocade_512k", __FILE__), m_base_bank(0) | |
| 44 | { | |
| 43 | : astrocade_rom_device(mconfig, ASTROCADE_ROM_512K, "Bally Astrocade 512K Carts", tag, owner, clock, "astrocade_512k", __FILE__) | |
| 44 | { | |
| 45 | 45 | } |
| 46 | 46 | |
| 47 | 47 |
| r250237 | r250238 | |
|---|---|---|
| 66 | 66 | device_t(mconfig, ASTROCADE_CART_SLOT, "Bally Astrocade Cartridge Slot", tag, owner, clock, "astrocade_cart_slot", __FILE__), |
| 67 | 67 | device_image_interface(mconfig, *this), |
| 68 | 68 | device_slot_interface(mconfig, *this), |
| 69 | m_type(ASTROCADE_STD) | |
| 69 | m_type(ASTROCADE_STD) | |
| 70 | 70 | { |
| 71 | 71 | } |
| 72 | 72 |
| r250237 | r250238 | |
|---|---|---|
| 62 | 62 | //------------------------------------------------- |
| 63 | 63 | bml3bus_slot_device::bml3bus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 64 | 64 | device_t(mconfig, BML3BUS_SLOT, "Hitachi MB-6890 Slot", tag, owner, clock, "bml3bus_slot", __FILE__), |
| 65 | device_slot_interface(mconfig, *this) | |
| 65 | device_slot_interface(mconfig, *this) | |
| 66 | 66 | { |
| 67 | 67 | } |
| 68 | 68 | |
| 69 | 69 | bml3bus_slot_device::bml3bus_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 70 | 70 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 71 | device_slot_interface(mconfig, *this) | |
| 71 | device_slot_interface(mconfig, *this) | |
| 72 | 72 | { |
| 73 | 73 | } |
| 74 | 74 | |
| r250237 | r250238 | |
| 111 | 111 | //------------------------------------------------- |
| 112 | 112 | |
| 113 | 113 | bml3bus_device::bml3bus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 114 | device_t(mconfig, BML3BUS, "Hitachi MB-6890 Bus", tag, owner, clock, "bml3bus", __FILE__), | |
| 114 | device_t(mconfig, BML3BUS, "Hitachi MB-6890 Bus", tag, owner, clock, "bml3bus", __FILE__), | |
| 115 | 115 | m_out_nmi_cb(*this), |
| 116 | 116 | m_out_irq_cb(*this), |
| 117 | m_out_firq_cb(*this) | |
| 117 | m_out_firq_cb(*this) | |
| 118 | 118 | { |
| 119 | 119 | } |
| 120 | 120 | |
| 121 | 121 | bml3bus_device::bml3bus_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 122 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 122 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 123 | 123 | m_out_nmi_cb(*this), |
| 124 | 124 | m_out_irq_cb(*this), |
| 125 | m_out_firq_cb(*this) | |
| 125 | m_out_firq_cb(*this) | |
| 126 | 126 | { |
| 127 | 127 | } |
| 128 | 128 | //------------------------------------------------- |
| r250237 | r250238 | |
| 203 | 203 | |
| 204 | 204 | device_bml3bus_card_interface::device_bml3bus_card_interface(const machine_config &mconfig, device_t &device) |
| 205 | 205 | : device_slot_card_interface(mconfig, device), |
| 206 | m_bml3bus(nullptr), | |
| 207 | m_bml3bus_tag(nullptr), m_bml3bus_slottag(nullptr), m_slot(0), m_next(nullptr) | |
| 206 | m_bml3bus(NULL), | |
| 207 | m_bml3bus_tag(NULL) | |
| 208 | 208 | { |
| 209 | 209 | } |
| 210 | 210 |
| r250237 | r250238 | |
|---|---|---|
| 74 | 74 | |
| 75 | 75 | bml3bus_kanji_device::bml3bus_kanji_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 76 | 76 | device_t(mconfig, BML3BUS_KANJI, "Hitachi MP-9740 Kanji Character ROM Card", tag, owner, clock, "bml3kanji", __FILE__), |
| 77 | device_bml3bus_card_interface(mconfig, *this) | |
| 77 | device_bml3bus_card_interface(mconfig, *this) | |
| 78 | 78 | { |
| 79 | 79 | } |
| 80 | 80 |
| r250237 | r250238 | |
|---|---|---|
| 113 | 113 | m_floppy0(*this, "fdc:0"), |
| 114 | 114 | m_floppy1(*this, "fdc:1"), |
| 115 | 115 | m_floppy2(*this, "fdc:2"), |
| 116 | m_floppy3(*this, "fdc:3") | |
| 116 | m_floppy3(*this, "fdc:3") | |
| 117 | 117 | { |
| 118 | 118 | } |
| 119 | 119 |
| r250237 | r250238 | |
|---|---|---|
| 140 | 140 | bml3bus_mp1805_device::bml3bus_mp1805_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 141 | 141 | device_t(mconfig, BML3BUS_MP1805, "Hitachi MP-1805 Floppy Controller Card", tag, owner, clock, "bml3mp1805", __FILE__), |
| 142 | 142 | device_bml3bus_card_interface(mconfig, *this), |
| 143 | m_mc6843(*this, "mc6843") | |
| 143 | m_mc6843(*this, "mc6843") | |
| 144 | 144 | { |
| 145 | 145 | } |
| 146 | 146 |
| r250237 | r250238 | |
|---|---|---|
| 53 | 53 | |
| 54 | 54 | bw2_expansion_slot_device::bw2_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 55 | 55 | device_t(mconfig, BW2_EXPANSION_SLOT, "Bondwell 2 expansion port", tag, owner, clock, "bw2_expansion_slot", __FILE__), |
| 56 | device_slot_interface(mconfig, *this) | |
| 56 | device_slot_interface(mconfig, *this) | |
| 57 | 57 | { |
| 58 | 58 | } |
| 59 | 59 |
| r250237 | r250238 | |
|---|---|---|
| 37 | 37 | //------------------------------------------------- |
| 38 | 38 | |
| 39 | 39 | device_c64_floppy_parallel_interface::device_c64_floppy_parallel_interface(const machine_config &mconfig, device_t &device) : |
| 40 | m_other( | |
| 40 | m_other(NULL) | |
| 41 | 41 | { |
| 42 | 42 | } |
| 43 | 43 | |
| r250237 | r250238 | |
| 63 | 63 | c64_bn1541_device::c64_bn1541_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 64 | 64 | device_t(mconfig, C64_BN1541, "C64 Burst Nibbler 1541/1571 Parallel Cable", tag, owner, clock, "c64_bn1541", __FILE__), |
| 65 | 65 | device_pet_user_port_interface(mconfig, *this), |
| 66 | device_c64_floppy_parallel_interface(mconfig, *this) | |
| 66 | device_c64_floppy_parallel_interface(mconfig, *this) | |
| 67 | 67 | { |
| 68 | 68 | } |
| 69 | 69 |
| r250237 | r250238 | |
|---|---|---|
| 80 | 80 | device_t(mconfig, C128_PARTNER, "PARTNER 128", tag, owner, clock, "c128_partner", __FILE__), |
| 81 | 81 | device_c64_expansion_card_interface(mconfig, *this), |
| 82 | 82 | //device_vcs_control_port_interface(mconfig, *this), |
| 83 | m_ram(*this, "ram"), | |
| 83 | m_ram(*this, "ram"), | |
| 84 | 84 | m_ram_a12_a7(0), |
| 85 | 85 | m_ls74_cd(0), |
| 86 | 86 | m_ls74_q1(0), |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_comal80_cartridge_device::c64_comal80_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_COMAL80, "C64 COMAL 80 cartridge", tag, owner, clock, "c64_comal80", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 134 | 134 | device_c64_expansion_card_interface(mconfig, *this), |
| 135 | 135 | m_maincpu(*this, Z80_TAG), |
| 136 | 136 | m_enabled(0), |
| 137 | m_ba(1) | |
| 137 | m_ba(1) | |
| 138 | 138 | { |
| 139 | 139 | } |
| 140 | 140 |
| r250237 | r250238 | |
|---|---|---|
| 52 | 52 | device_t(mconfig, C64_DELA_EP64, "C64 Rex 64KB EPROM cartridge", tag, owner, clock, "c64_dela_ep64", __FILE__), |
| 53 | 53 | device_c64_expansion_card_interface(mconfig, *this), |
| 54 | 54 | m_eprom1(*this, "eprom1"), |
| 55 | m_eprom2(*this, "eprom2") | |
| 55 | m_eprom2(*this, "eprom2") | |
| 56 | 56 | { |
| 57 | 57 | } |
| 58 | 58 |
| r250237 | r250238 | |
|---|---|---|
| 67 | 67 | m_eprom4(*this, "rom4"), |
| 68 | 68 | m_eprom5(*this, "rom5"), |
| 69 | 69 | m_eprom6(*this, "rom6"), |
| 70 | m_eprom7(*this, "rom7") | |
| 70 | m_eprom7(*this, "rom7") | |
| 71 | 71 | { |
| 72 | 72 | } |
| 73 | 73 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_dinamic_cartridge_device::c64_dinamic_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_DINAMIC, "C64 Dinamic cartridge", tag, owner, clock, "c64_dinamic", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 38 | 38 | c64_dqbb_cartridge_device::c64_dqbb_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 39 | 39 | device_t(mconfig, C64_DQBB, "C64 Double Quick Brown Box cartridge", tag, owner, clock, "c64_dqbb", __FILE__), |
| 40 | 40 | device_c64_expansion_card_interface(mconfig, *this), |
| 41 | device_nvram_interface(mconfig, *this), | |
| 42 | m_cs(0), | |
| 43 | m_we(0) | |
| 41 | device_nvram_interface(mconfig, *this) | |
| 44 | 42 | { |
| 45 | 43 | } |
| 46 | 44 |
| r250237 | r250238 | |
|---|---|---|
| 49 | 49 | |
| 50 | 50 | c64_easy_calc_result_cartridge_device::c64_easy_calc_result_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 51 | 51 | device_t(mconfig, C64_EASY_CALC_RESULT, "C64 Easy Calc Result cartridge", tag, owner, clock, "c64_easy_calc_result", __FILE__), |
| 52 | device_c64_expansion_card_interface(mconfig, *this) | |
| 52 | device_c64_expansion_card_interface(mconfig, *this) | |
| 53 | 53 | { |
| 54 | 54 | } |
| 55 | 55 |
| r250237 | r250238 | |
|---|---|---|
| 38 | 38 | |
| 39 | 39 | c64_epyx_fast_load_cartridge_device::c64_epyx_fast_load_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 40 | 40 | device_t(mconfig, C64_EPYX_FAST_LOAD, "C64 Epyx Fast Load cartridge", tag, owner, clock, "c64_epyx_fast_load", __FILE__), |
| 41 | device_c64_expansion_card_interface(mconfig, *this) | |
| 41 | device_c64_expansion_card_interface(mconfig, *this) | |
| 42 | 42 | { |
| 43 | 43 | } |
| 44 | 44 |
| r250237 | r250238 | |
|---|---|---|
| 65 | 65 | m_write_irq(*this), |
| 66 | 66 | m_write_nmi(*this), |
| 67 | 67 | m_write_dma(*this), |
| 68 | m_write_reset(*this) | |
| 68 | m_write_reset(*this) | |
| 69 | 69 | { |
| 70 | 70 | } |
| 71 | 71 |
| r250237 | r250238 | |
|---|---|---|
| 65 | 65 | |
| 66 | 66 | c64_final3_cartridge_device::c64_final3_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 67 | 67 | device_t(mconfig, C64_FINAL3, "C64 Final Cartridge III", tag, owner, clock, "c64_final3", __FILE__), |
| 68 | device_c64_expansion_card_interface(mconfig, *this) | |
| 68 | device_c64_expansion_card_interface(mconfig, *this) | |
| 69 | 69 | { |
| 70 | 70 | } |
| 71 | 71 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_fun_play_cartridge_device::c64_fun_play_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_FUN_PLAY, "C64 Fun Play cartridge", tag, owner, clock, "c64_fun_play", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 29 | 29 | c64_georam_cartridge_device::c64_georam_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_GEORAM, "C64 GeoRAM cartridge", tag, owner, clock, "c64_georam", __FILE__), |
| 31 | 31 | device_c64_expansion_card_interface(mconfig, *this), |
| 32 | m_ram(*this, "ram"), | |
| 33 | m_bank(0) | |
| 32 | m_ram(*this, "ram") | |
| 34 | 33 | { |
| 35 | 34 | } |
| 36 | 35 |
| r250237 | r250238 | |
|---|---|---|
| 101 | 101 | m_rtc(*this, DS1302_TAG), |
| 102 | 102 | m_ata(*this, ATA_TAG), |
| 103 | 103 | m_jp1(*this, "JP1"), |
| 104 | m_ram(*this, "ram") | |
| 104 | m_ram(*this, "ram") | |
| 105 | 105 | { |
| 106 | 106 | } |
| 107 | 107 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | c64_mach5_cartridge_device::c64_mach5_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 55 | 55 | device_t(mconfig, C64_MACH5, "C64 MACH5 cartridge", tag, owner, clock, "c64_mach5", __FILE__), |
| 56 | 56 | device_c64_expansion_card_interface(mconfig, *this), |
| 57 | m_s1(*this, "S1") | |
| 57 | m_s1(*this, "S1") | |
| 58 | 58 | { |
| 59 | 59 | } |
| 60 | 60 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_magic_desk_cartridge_device::c64_magic_desk_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_MAGIC_DESK, "C64 Magic Desk cartridge", tag, owner, clock, "c64_magic_desk", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 266 | 266 | m_vslsi(*this, T6721A_TAG), |
| 267 | 267 | m_tpi(*this, MOS6525_TAG), |
| 268 | 268 | m_fifo(*this, CMOS40105_TAG), |
| 269 | m_exp(*this, C64_EXPANSION_SLOT_TAG), | |
| 269 | m_exp(*this, C64_EXPANSION_SLOT_TAG), | |
| 270 | 270 | m_tpi_pb(0x60), |
| 271 | 271 | m_tpi_pc6(1), |
| 272 | 272 | m_pd(0) |
| r250237 | r250238 | |
|---|---|---|
| 141 | 141 | |
| 142 | 142 | c64_multiscreen_cartridge_device::c64_multiscreen_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 143 | 143 | device_t(mconfig, C64_MULTISCREEN, "C64 Multiscreen cartridge", tag, owner, clock, "c64_mscr", __FILE__), |
| 144 | device_c64_expansion_card_interface(mconfig, *this) | |
| 144 | device_c64_expansion_card_interface(mconfig, *this) | |
| 145 | 145 | { |
| 146 | 146 | } |
| 147 | 147 |
| r250237 | r250238 | |
|---|---|---|
| 29 | 29 | c64_neoram_cartridge_device::c64_neoram_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_NEORAM, "C64 NeoRAM cartridge", tag, owner, clock, "c64_neoram", __FILE__), |
| 31 | 31 | device_c64_expansion_card_interface(mconfig, *this), |
| 32 | device_nvram_interface(mconfig, *this), | |
| 33 | m_bank(0) | |
| 32 | device_nvram_interface(mconfig, *this) | |
| 34 | 33 | { |
| 35 | 34 | } |
| 36 | 35 |
| r250237 | r250238 | |
|---|---|---|
| 51 | 51 | c64_pagefox_cartridge_device::c64_pagefox_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 52 | 52 | device_t(mconfig, C64_PAGEFOX, "C64 Pagefox cartridge", tag, owner, clock, "c64_pagefox", __FILE__), |
| 53 | 53 | device_c64_expansion_card_interface(mconfig, *this), |
| 54 | m_ram(*this, "ram") | |
| 54 | m_ram(*this, "ram") | |
| 55 | 55 | { |
| 56 | 56 | } |
| 57 | 57 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_ross_cartridge_device::c64_ross_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_ROSS, "C64 Ross cartridge", tag, owner, clock, "c64_ross", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 32 | 32 | { |
| 33 | 33 | } |
| 34 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 61 | 61 | |
| 62 | 62 | c64_silverrock_cartridge_device::c64_silverrock_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 63 | 63 | device_t(mconfig, C64_SILVERROCK, "C64 SilverRock cartridge", tag, owner, clock, "c64_silverrock", __FILE__), |
| 64 | device_c64_expansion_card_interface(mconfig, *this) | |
| 64 | device_c64_expansion_card_interface(mconfig, *this) | |
| 65 | 65 | { |
| 66 | 66 | } |
| 67 | 67 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_structured_basic_cartridge_device::c64_structured_basic_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_STRUCTURED_BASIC, "C64 Structured Basic cartridge", tag, owner, clock, "c64_structured_basic", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 38 | 38 | |
| 39 | 39 | c64_super_explode_cartridge_device::c64_super_explode_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 40 | 40 | device_t(mconfig, C64_SUPER_EXPLODE, "C64 Super Explode! cartridge", tag, owner, clock, "c64_super_explode", __FILE__), |
| 41 | device_c64_expansion_card_interface(mconfig, *this) | |
| 41 | device_c64_expansion_card_interface(mconfig, *this) | |
| 42 | 42 | { |
| 43 | 43 | } |
| 44 | 44 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_super_games_cartridge_device::c64_super_games_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_SUPER_GAMES, "C64 Super Games cartridge", tag, owner, clock, "c64_super_games", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 74 | 74 | c64_switchable_8k_cartridge_device::c64_switchable_8k_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 75 | 75 | device_t(mconfig, C64_SW8K, "C64 Switchable 8K cartridge", tag, owner, clock, "c64_sw8k", __FILE__), |
| 76 | 76 | device_c64_expansion_card_interface(mconfig, *this), |
| 77 | m_sw(*this, "SW") | |
| 77 | m_sw(*this, "SW") | |
| 78 | 78 | { |
| 79 | 79 | } |
| 80 | 80 |
| r250237 | r250238 | |
|---|---|---|
| 104 | 104 | device_c64_expansion_card_interface(mconfig, *this), |
| 105 | 105 | m_acia(*this, MOS6551_TAG), |
| 106 | 106 | m_io_cs(*this, "CS"), |
| 107 | m_io_irq(*this, "IRQ") | |
| 107 | m_io_irq(*this, "IRQ") | |
| 108 | 108 | { |
| 109 | 109 | } |
| 110 | 110 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_system3_cartridge_device::c64_system3_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_SYSTEM3, "C64 System 3 cartridge", tag, owner, clock, "c64_system3", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 206 | 206 | device_c64_expansion_card_interface(mconfig, *this), |
| 207 | 207 | m_ssda(*this, MC68A52P_TAG), |
| 208 | 208 | m_exp(*this, C64_EXPANSION_SLOT_TAG), |
| 209 | m_sw1(*this, "SW1") | |
| 209 | m_sw1(*this, "SW1") | |
| 210 | 210 | { |
| 211 | 211 | } |
| 212 | 212 |
| r250237 | r250238 | |
|---|---|---|
| 104 | 104 | m_acia(*this, MOS6551_TAG), |
| 105 | 105 | m_rs232(*this, RS232_TAG), |
| 106 | 106 | m_io_cs(*this, "CS"), |
| 107 | m_io_irq(*this, "IRQ") | |
| 107 | m_io_irq(*this, "IRQ") | |
| 108 | 108 | { |
| 109 | 109 | } |
| 110 | 110 |
| r250237 | r250238 | |
|---|---|---|
| 68 | 68 | |
| 69 | 69 | c64_vizawrite_cartridge_device::c64_vizawrite_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 70 | 70 | device_t(mconfig, C64_VW64, "VizaWrite 64", tag, owner, clock, "c64_vizawrite", __FILE__), |
| 71 | device_c64_expansion_card_interface(mconfig, *this) | |
| 71 | device_c64_expansion_card_interface(mconfig, *this) | |
| 72 | 72 | { |
| 73 | 73 | } |
| 74 | 74 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | c64_zaxxon_cartridge_device::c64_zaxxon_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, C64_ZAXXON, "C64 Zaxxon cartridge", tag, owner, clock, "c64_zaxxon", __FILE__), |
| 31 | device_c64_expansion_card_interface(mconfig, *this), | |
| 32 | m_bank(0) | |
| 31 | device_c64_expansion_card_interface(mconfig, *this) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 65 | 65 | cbm2_expansion_slot_device::cbm2_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 66 | 66 | device_t(mconfig, CBM2_EXPANSION_SLOT, "CBM-II expansion port", tag, owner, clock, "cbm2_expansion_slot", __FILE__), |
| 67 | 67 | device_slot_interface(mconfig, *this), |
| 68 | device_image_interface(mconfig, *this) | |
| 68 | device_image_interface(mconfig, *this) | |
| 69 | 69 | { |
| 70 | 70 | } |
| 71 | 71 |
| r250237 | r250238 | |
|---|---|---|
| 48 | 48 | m_write_irq(*this), |
| 49 | 49 | m_write_sp(*this), |
| 50 | 50 | m_write_cnt(*this), |
| 51 | m_write_flag(*this) | |
| 51 | m_write_flag(*this) | |
| 52 | 52 | { |
| 53 | 53 | } |
| 54 | 54 |
| r250237 | r250238 | |
|---|---|---|
| 222 | 222 | //------------------------------------------------- |
| 223 | 223 | |
| 224 | 224 | device_cbm_iec_interface::device_cbm_iec_interface(const machine_config &mconfig, device_t &device) |
| 225 | : device_slot_card_interface(mconfig, device) | |
| 225 | : device_slot_card_interface(mconfig, device) | |
| 226 | 226 | { |
| 227 | 227 | } |
| 228 | 228 | |
| r250237 | r250238 | |
| 247 | 247 | |
| 248 | 248 | cbm_iec_slot_device::cbm_iec_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 249 | 249 | device_t(mconfig, CBM_IEC_SLOT, "CBM IEC slot", tag, owner, clock, "cbm_iec_slot", __FILE__), |
| 250 | device_slot_interface(mconfig, *this) | |
| 250 | device_slot_interface(mconfig, *this) | |
| 251 | 251 | { |
| 252 | 252 | } |
| 253 | 253 |
| r250237 | r250238 | |
|---|---|---|
| 163 | 163 | device_centronics_peripheral_interface(mconfig, *this), |
| 164 | 164 | m_plotter(*this, "PLOTTER"), |
| 165 | 165 | m_font(*this, "FONT"), |
| 166 | m_sw(*this, "SW") | |
| 166 | m_sw(*this, "SW") | |
| 167 | 167 | { |
| 168 | 168 | } |
| 169 | 169 |
| r250237 | r250238 | |
|---|---|---|
| 92 | 92 | : device_t(mconfig, CENTRONICS_COVOX_STEREO, "Covox (Stereo-in-1)", tag, owner, clock, "covox_stereo", __FILE__), |
| 93 | 93 | device_centronics_peripheral_interface( mconfig, *this ), |
| 94 | 94 | m_dac_left(*this, "dac_left"), |
| 95 | m_dac_right(*this, "dac_right"), m_strobe(0), | |
| 96 | m_data(0), m_autofd(0) | |
| 95 | m_dac_right(*this, "dac_right"), | |
| 96 | m_data(0) | |
| 97 | 97 | { |
| 98 | 98 | } |
| 99 | 99 |
| r250237 | r250238 | |
|---|---|---|
| 361 | 361 | device_t(mconfig, EPSON_EX800, "Epson EX-800", tag, owner, clock, "ex800", __FILE__), |
| 362 | 362 | device_centronics_peripheral_interface(mconfig, *this), |
| 363 | 363 | m_maincpu(*this, "maincpu"), |
| 364 | m_beeper(*this, "beeper") | |
| 364 | m_beeper(*this, "beeper") | |
| 365 | 365 | { |
| 366 | 366 | } |
| 367 | 367 |
| r250237 | r250238 | |
|---|---|---|
| 302 | 302 | m_cr_pos_abs(1), |
| 303 | 303 | m_real_cr_pos(1), |
| 304 | 304 | m_real_cr_steps(0), |
| 305 | m_real_cr_dir(0) | |
| 305 | m_real_cr_dir(0) | |
| 306 | 306 | { |
| 307 | 307 | } |
| 308 | 308 | |
| r250237 | r250238 | |
| 323 | 323 | m_cr_pos_abs(1), |
| 324 | 324 | m_real_cr_pos(1), |
| 325 | 325 | m_real_cr_steps(0), |
| 326 | m_real_cr_dir(0) | |
| 326 | m_real_cr_dir(0) | |
| 327 | 327 | { |
| 328 | 328 | } |
| 329 | 329 |
| r250237 | r250238 | |
|---|---|---|
| 27 | 27 | centronics_printer_device::centronics_printer_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 28 | 28 | device_t(mconfig, CENTRONICS_PRINTER, "Centronics Printer", tag, owner, clock, "centronics_printer", __FILE__), |
| 29 | 29 | device_centronics_peripheral_interface( mconfig, *this ), |
| 30 | m_strobe(0), | |
| 31 | m_data(0), | |
| 32 | m_busy(0), | |
| 30 | m_strobe(0), | |
| 33 | 31 | m_printer(*this, "printer") |
| 34 | 32 | { |
| 35 | 33 | } |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | |
| 34 | 34 | chanf_rom_device::chanf_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 35 | 35 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 36 | device_channelf_cart_interface( mconfig, *this ), m_addr_latch(0), m_addr(0), m_read_write(0), m_data0(0) | |
| 37 | { | |
| 36 | device_channelf_cart_interface( mconfig, *this ) | |
| 37 | { | |
| 38 | 38 | } |
| 39 | 39 | |
| 40 | 40 | chanf_rom_device::chanf_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 41 | 41 | : device_t(mconfig, CHANF_ROM_STD, "Channel F Standard Carts", tag, owner, clock, "chanf_rom", __FILE__), |
| 42 | device_channelf_cart_interface( mconfig, *this ), m_addr_latch(0), m_addr(0), m_read_write(0), m_data0(0) | |
| 43 | { | |
| 42 | device_channelf_cart_interface( mconfig, *this ) | |
| 43 | { | |
| 44 | 44 | } |
| 45 | 45 | |
| 46 | 46 | chanf_maze_device::chanf_maze_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 59 | 59 | } |
| 60 | 60 | |
| 61 | 61 | chanf_multi_old_device::chanf_multi_old_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 62 | : chanf_rom_device(mconfig, CHANF_ROM_MULTI_OLD, "Channel F Multigame (Earlier Version) Cart", tag, owner, clock, "chanf_multi_old", __FILE__), m_base_bank(0) | |
| 63 | { | |
| 62 | : chanf_rom_device(mconfig, CHANF_ROM_MULTI_OLD, "Channel F Multigame (Earlier Version) Cart", tag, owner, clock, "chanf_multi_old", __FILE__) | |
| 63 | { | |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | chanf_multi_final_device::chanf_multi_final_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 67 | : chanf_rom_device(mconfig, CHANF_ROM_MULTI_FINAL, "Channel F Multigame (Final Version) Cart", tag, owner, clock, "chanf_multi_fin", __FILE__), m_base_bank(0), m_half_bank(0) | |
| 68 | { | |
| 67 | : chanf_rom_device(mconfig, CHANF_ROM_MULTI_FINAL, "Channel F Multigame (Final Version) Cart", tag, owner, clock, "chanf_multi_fin", __FILE__) | |
| 68 | { | |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | 71 |
| r250237 | r250238 | |
|---|---|---|
| 76 | 76 | device_t(mconfig, CHANF_CART_SLOT, "Fairchild Channel F Cartridge Slot", tag, owner, clock, "cf_cart_slot", __FILE__), |
| 77 | 77 | device_image_interface(mconfig, *this), |
| 78 | 78 | device_slot_interface(mconfig, *this), |
| 79 | m_type(CF_CHESS) | |
| 79 | m_type(CF_CHESS) | |
| 80 | 80 | { |
| 81 | 81 | } |
| 82 | 82 |
| r250237 | r250238 | |
|---|---|---|
| 66 | 66 | //------------------------------------------------- |
| 67 | 67 | |
| 68 | 68 | beckerport_device::beckerport_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 69 | : device_t(mconfig, COCO_DWSOCK, "Virtual Becker Port", tag, owner, clock, "coco_dwsock", __FILE__), m_hostname(nullptr), | |
| 70 | m_dwconfigport(*this, DRIVEWIRE_PORT_TAG), m_dwtcpport(0) | |
| 69 | : device_t(mconfig, COCO_DWSOCK, "Virtual Becker Port", tag, owner, clock, "coco_dwsock", __FILE__), | |
| 70 | m_dwconfigport(*this, DRIVEWIRE_PORT_TAG) | |
| 71 | 71 | { |
| 72 | 72 | m_pSocket = NULL; |
| 73 | 73 | m_head = 0; |
| r250237 | r250238 | |
|---|---|---|
| 179 | 179 | //------------------------------------------------- |
| 180 | 180 | coco_fdc_device::coco_fdc_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 181 | 181 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 182 | device_cococart_interface( mconfig, *this ), | |
| 182 | device_cococart_interface( mconfig, *this ), | |
| 183 | 183 | m_wd17xx(*this, WD_TAG), |
| 184 | 184 | m_wd2797(*this, WD2797_TAG), |
| 185 | 185 | m_ds1315(*this, CLOUD9_TAG), |
| 186 | m_disto_msm6242(*this, DISTO_TAG) | |
| 186 | m_disto_msm6242(*this, DISTO_TAG) | |
| 187 | 187 | { |
| 188 | 188 | } |
| 189 | 189 | |
| 190 | 190 | coco_fdc_device::coco_fdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 191 | 191 | : device_t(mconfig, COCO_FDC, "CoCo FDC", tag, owner, clock, "coco_fdc", __FILE__), |
| 192 | device_cococart_interface( mconfig, *this ), | |
| 192 | device_cococart_interface( mconfig, *this ), | |
| 193 | 193 | m_wd17xx(*this, WD_TAG), |
| 194 | 194 | m_wd2797(*this, WD2797_TAG), |
| 195 | 195 | m_ds1315(*this, CLOUD9_TAG), |
| 196 | m_disto_msm6242(*this, DISTO_TAG), m_msm6242_rtc_address(0) | |
| 197 | { | |
| 196 | m_disto_msm6242(*this, DISTO_TAG) | |
| 197 | { | |
| 198 | 198 | } |
| 199 | 199 | |
| 200 | 200 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 140 | 140 | |
| 141 | 141 | coco_multipak_device::coco_multipak_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 142 | 142 | : device_t(mconfig, COCO_MULTIPAK, "CoCo Multi-Pak Interface", tag, owner, clock, "coco_multipak", __FILE__), |
| 143 | device_cococart_interface( mconfig, *this ), m_owner(nullptr), m_select(0) | |
| 144 | { | |
| 143 | device_cococart_interface( mconfig, *this ) | |
| 144 | { | |
| 145 | 145 | } |
| 146 | 146 | |
| 147 | 147 |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | |
| 41 | 41 | coco_orch90_device::coco_orch90_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 42 | 42 | : device_t(mconfig, COCO_ORCH90, "CoCo Orch-90 PAK", tag, owner, clock, "coco_orch90", __FILE__), |
| 43 | device_cococart_interface( mconfig, *this ), m_left_dac(nullptr), m_right_dac(nullptr) | |
| 44 | { | |
| 43 | device_cococart_interface( mconfig, *this ) | |
| 44 | { | |
| 45 | 45 | } |
| 46 | 46 | |
| 47 | 47 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 41 | 41 | //------------------------------------------------- |
| 42 | 42 | coco_pak_device::coco_pak_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 43 | 43 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 44 | device_cococart_interface( mconfig, *this ) | |
| 44 | device_cococart_interface( mconfig, *this ) | |
| 45 | 45 | { |
| 46 | 46 | } |
| 47 | 47 | |
| 48 | 48 | coco_pak_device::coco_pak_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 49 | 49 | : device_t(mconfig, COCO_PAK, "CoCo Program PAK", tag, owner, clock, "cocopak", __FILE__), |
| 50 | device_cococart_interface( mconfig, *this ), m_cart(nullptr), m_owner(nullptr) | |
| 51 | { | |
| 50 | device_cococart_interface( mconfig, *this ) | |
| 51 | { | |
| 52 | 52 | } |
| 53 | 53 | |
| 54 | 54 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 41 | 41 | device_image_interface(mconfig, *this), |
| 42 | 42 | m_cart_callback(*this), |
| 43 | 43 | m_nmi_callback(*this), |
| 44 | m_halt_callback(*this) | |
| 44 | m_halt_callback(*this) | |
| 45 | 45 | { |
| 46 | 46 | } |
| 47 | 47 |
| r250237 | r250238 | |
|---|---|---|
| 46 | 46 | |
| 47 | 47 | colecovision_control_port_device::colecovision_control_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 48 | 48 | device_t(mconfig, COLECOVISION_CONTROL_PORT, "ColecoVision control port", tag, owner, clock, "colecovision_control_port", __FILE__), |
| 49 | device_slot_interface(mconfig, *this), | |
| 49 | device_slot_interface(mconfig, *this), | |
| 50 | 50 | m_write_irq(*this) |
| 51 | 51 | { |
| 52 | 52 | } |
| r250237 | r250238 | |
|---|---|---|
| 55 | 55 | colecovision_cartridge_slot_device::colecovision_cartridge_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 56 | 56 | device_t(mconfig, COLECOVISION_CARTRIDGE_SLOT, "ColecoVision cartridge port", tag, owner, clock, "coleco_cartridge_port", __FILE__), |
| 57 | 57 | device_slot_interface(mconfig, *this), |
| 58 | device_image_interface(mconfig, *this) | |
| 58 | device_image_interface(mconfig, *this) | |
| 59 | 59 | { |
| 60 | 60 | } |
| 61 | 61 |
| r250237 | r250238 | |
|---|---|---|
| 85 | 85 | //------------------------------------------------- |
| 86 | 86 | |
| 87 | 87 | compucolor_floppy_port_device::compucolor_floppy_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 88 | : rs232_port_device(mconfig, COMPUCOLOR_FLOPPY_PORT, "Compucolor Floppy Port", tag, owner, clock, "compclr_flp_port", __FILE__) | |
| 88 | : rs232_port_device(mconfig, COMPUCOLOR_FLOPPY_PORT, "Compucolor Floppy Port", tag, owner, clock, "compclr_flp_port", __FILE__) | |
| 89 | 89 | { |
| 90 | 90 | } |
| 91 | 91 |
| r250237 | r250238 | |
|---|---|---|
| 45 | 45 | comx_expansion_slot_device::comx_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 46 | 46 | device_t(mconfig, COMX_EXPANSION_SLOT, "COMX-35 expansion slot", tag, owner, clock, "comx_expansion_slot", __FILE__), |
| 47 | 47 | device_slot_interface(mconfig, *this), |
| 48 | m_write_irq(*this) | |
| 48 | m_write_irq(*this) | |
| 49 | 49 | { |
| 50 | 50 | } |
| 51 | 51 |
| r250237 | r250238 | |
|---|---|---|
| 36 | 36 | comx_ram_device::comx_ram_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 37 | 37 | device_t(mconfig, COMX_RAM, "COMX-35 RAM Card", tag, owner, clock, "comx_ram", __FILE__), |
| 38 | 38 | device_comx_expansion_card_interface(mconfig, *this), |
| 39 | m_ram(*this, "ram"), | |
| 40 | m_bank(0) | |
| 39 | m_ram(*this, "ram") | |
| 41 | 40 | { |
| 42 | 41 | } |
| 43 | 42 |
| r250237 | r250238 | |
|---|---|---|
| 36 | 36 | |
| 37 | 37 | cpc_amdrum_device::cpc_amdrum_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 38 | 38 | device_t(mconfig, CPC_AMDRUM, "Amdrum", tag, owner, clock, "cpc_amdrum", __FILE__), |
| 39 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 40 | m_slot(nullptr), | |
| 39 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 41 | 40 | m_dac(*this,"dac") |
| 42 | 41 | { |
| 43 | 42 | } |
| r250237 | r250238 | |
|---|---|---|
| 64 | 64 | |
| 65 | 65 | cpc_brunword4_device::cpc_brunword4_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 66 | 66 | device_t(mconfig, CPC_BRUNWORD_MK4, "Brunword Elite MK4", tag, owner, clock, "cpc_brunword4", __FILE__), |
| 67 | device_cpc_expansion_card_interface(mconfig, *this) | |
| 67 | device_cpc_expansion_card_interface(mconfig, *this) | |
| 68 | 68 | { |
| 69 | 69 | } |
| 70 | 70 |
| r250237 | r250238 | |
|---|---|---|
| 37 | 37 | |
| 38 | 38 | cpc_pds_device::cpc_pds_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 39 | 39 | device_t(mconfig, CPC_PDS, "Programmers Development System (CPC Target)", tag, owner, clock, "cpc_pds", __FILE__), |
| 40 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 40 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 41 | 41 | m_pio(*this,"pio") |
| 42 | 42 | { |
| 43 | 43 | } |
| r250237 | r250238 | |
|---|---|---|
| 81 | 81 | |
| 82 | 82 | rom_image_device::rom_image_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 83 | 83 | : device_t(mconfig, ROMSLOT, "ROM image", tag, owner, clock, "rom_image", __FILE__), |
| 84 | device_image_interface(mconfig, *this) | |
| 84 | device_image_interface(mconfig, *this) | |
| 85 | 85 | { |
| 86 | 86 | } |
| 87 | 87 |
| r250237 | r250238 | |
|---|---|---|
| 85 | 85 | device_cpc_expansion_card_interface(mconfig, *this), |
| 86 | 86 | m_pit(*this,"pit"), |
| 87 | 87 | m_dart(*this,"dart"), |
| 88 | m_rs232(*this,"rs232") | |
| 88 | m_rs232(*this,"rs232") | |
| 89 | 89 | { |
| 90 | 90 | } |
| 91 | 91 | |
| r250237 | r250238 | |
| 94 | 94 | device_cpc_expansion_card_interface(mconfig, *this), |
| 95 | 95 | m_pit(*this,"pit"), |
| 96 | 96 | m_dart(*this,"dart"), |
| 97 | m_rs232(*this,"rs232") | |
| 97 | m_rs232(*this,"rs232") | |
| 98 | 98 | { |
| 99 | 99 | } |
| 100 | 100 |
| r250237 | r250238 | |
|---|---|---|
| 160 | 160 | |
| 161 | 161 | cpc_ssa1_device::cpc_ssa1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 162 | 162 | device_t(mconfig, CPC_SSA1, "SSA-1", tag, owner, clock, "cpc_ssa1", __FILE__), |
| 163 | device_cpc_expansion_card_interface(mconfig, *this), m_slot(nullptr), m_rom(nullptr), | |
| 164 | m_lrq(1), m_sby(0), | |
| 163 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 164 | m_lrq(1), | |
| 165 | 165 | m_sp0256_device(*this,"sp0256") |
| 166 | 166 | { |
| 167 | 167 | } |
| 168 | 168 | |
| 169 | 169 | cpc_dkspeech_device::cpc_dkspeech_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 170 | 170 | device_t(mconfig, CPC_DKSPEECH, "DK'Tronics Speech Synthesiser", tag, owner, clock, "cpc_dkspeech", __FILE__), |
| 171 | device_cpc_expansion_card_interface(mconfig, *this), m_slot(nullptr), m_rom(nullptr), | |
| 172 | m_lrq(1), m_sby(0), | |
| 171 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 172 | m_lrq(1), | |
| 173 | 173 | m_sp0256_device(*this,"sp0256") |
| 174 | 174 | { |
| 175 | 175 | } |
| r250237 | r250238 | |
|---|---|---|
| 26 | 26 | |
| 27 | 27 | |
| 28 | 28 | device_cpc_expansion_card_interface::device_cpc_expansion_card_interface(const machine_config &mconfig, device_t &device) |
| 29 | : device_slot_card_interface(mconfig,device), | |
| 30 | m_rom_sel(0) | |
| 29 | : device_slot_card_interface(mconfig,device) | |
| 31 | 30 | { |
| 32 | 31 | } |
| 33 | 32 | |
| r250237 | r250238 | |
| 49 | 48 | m_out_nmi_cb(*this), |
| 50 | 49 | m_out_reset_cb(*this), |
| 51 | 50 | m_out_romdis_cb(*this), |
| 52 | m_out_rom_select(*this) | |
| 51 | m_out_rom_select(*this) | |
| 53 | 52 | { |
| 54 | 53 | } |
| 55 | 54 |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | |
| 64 | 64 | cpc_ddi1_device::cpc_ddi1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 65 | 65 | device_t(mconfig, CPC_DDI1, "DDI-1", tag, owner, clock, "cpc_ddi1", __FILE__), |
| 66 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 66 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 67 | 67 | m_fdc(*this,"upd765"), |
| 68 | m_connector(*this,"upd765:0") | |
| 68 | m_connector(*this,"upd765:0") | |
| 69 | 69 | { |
| 70 | 70 | } |
| 71 | 71 |
| r250237 | r250238 | |
|---|---|---|
| 38 | 38 | |
| 39 | 39 | cpc_doubler_device::cpc_doubler_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 40 | 40 | device_t(mconfig, CPC_DOUBLER, "Draysoft Doubler", tag, owner, clock, "cpc_doubler", __FILE__), |
| 41 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 41 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 42 | 42 | m_tape(*this,"doubler_tape") |
| 43 | 43 | { |
| 44 | 44 | } |
| r250237 | r250238 | |
|---|---|---|
| 50 | 50 | |
| 51 | 51 | cpc_hd20_device::cpc_hd20_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 52 | 52 | device_t(mconfig, CPC_HD20, "Dobbertin HD20", tag, owner, clock, "cpc_hd20", __FILE__), |
| 53 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 53 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 54 | 54 | m_hdc(*this,"hdc") |
| 55 | 55 | { |
| 56 | 56 | } |
| r250237 | r250238 | |
|---|---|---|
| 72 | 72 | |
| 73 | 73 | al_magicsound_device::al_magicsound_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 74 | 74 | device_t(mconfig, AL_MAGICSOUND, "Magic Sound Board", tag, owner, clock, "al_magicsound", __FILE__), |
| 75 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 75 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 76 | 76 | m_dac1(*this,"dac1"), |
| 77 | 77 | m_dmac(*this,"dmac"), |
| 78 | 78 | m_timer1(*this,"timer1"), |
| 79 | m_timer2(*this,"timer2") | |
| 79 | m_timer2(*this,"timer2") | |
| 80 | 80 | { |
| 81 | 81 | } |
| 82 | 82 |
| r250237 | r250238 | |
|---|---|---|
| 310 | 310 | |
| 311 | 311 | cpc_multiface2_device::cpc_multiface2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 312 | 312 | device_t(mconfig, CPC_MFACE2, "Multiface II", tag, owner, clock, "cpc_mf2", __FILE__), |
| 313 | device_cpc_expansion_card_interface(mconfig, *this) | |
| 313 | device_cpc_expansion_card_interface(mconfig, *this) | |
| 314 | 314 | { |
| 315 | 315 | } |
| 316 | 316 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | |
| 55 | 55 | cpc_playcity_device::cpc_playcity_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 56 | 56 | device_t(mconfig, CPC_PLAYCITY, "PlayCity", tag, owner, clock, "cpc_playcity", __FILE__), |
| 57 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 57 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 58 | 58 | m_ctc(*this,"ctc"), |
| 59 | 59 | m_ymz1(*this,"ymz_1"), |
| 60 | 60 | m_ymz2(*this,"ymz_2") |
| r250237 | r250238 | |
|---|---|---|
| 47 | 47 | |
| 48 | 48 | cpc_smartwatch_device::cpc_smartwatch_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 49 | 49 | device_t(mconfig, CPC_SMARTWATCH, "Dobbertin Smartwatch", tag, owner, clock, "cpc_smartwatch", __FILE__), |
| 50 | device_cpc_expansion_card_interface(mconfig, *this), m_slot(nullptr), | |
| 51 | m_rtc(*this,"rtc"), m_bank(nullptr) | |
| 50 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 51 | m_rtc(*this,"rtc") | |
| 52 | 52 | { |
| 53 | 53 | } |
| 54 | 54 |
| r250237 | r250238 | |
|---|---|---|
| 73 | 73 | |
| 74 | 74 | cpc_symbiface2_device::cpc_symbiface2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 75 | 75 | device_t(mconfig, CPC_SYMBIFACE2, "SYMBiFACE II", tag, owner, clock, "cpc_symf2", __FILE__), |
| 76 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 76 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 77 | 77 | m_ide(*this,"ide"), |
| 78 | 78 | m_rtc(*this,"rtc"), |
| 79 | 79 | m_nvram(*this,"nvram"), |
| 80 | 80 | m_mouse_x(*this,"sf2_mouse_x"), |
| 81 | 81 | m_mouse_y(*this,"sf2_mouse_y"), |
| 82 | m_mouse_buttons(*this,"sf2_mouse_buttons") | |
| 82 | m_mouse_buttons(*this,"sf2_mouse_buttons") | |
| 83 | 83 | { |
| 84 | 84 | } |
| 85 | 85 |
| r250237 | r250238 | |
|---|---|---|
| 44 | 44 | |
| 45 | 45 | cpc_transtape_device::cpc_transtape_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 46 | 46 | device_t(mconfig, CPC_TRANSTAPE, "HM Transtape", tag, owner, clock, "cpc_transtape", __FILE__), |
| 47 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 47 | device_cpc_expansion_card_interface(mconfig, *this), | |
| 48 | 48 | m_rom_active(false), |
| 49 | 49 | m_romen(true), |
| 50 | 50 | m_output(0) |
| r250237 | r250238 | |
|---|---|---|
| 66 | 66 | device_t(mconfig, CRVISION_CART_SLOT, "CreatiVision Cartridge Slot", tag, owner, clock, "crvision_cart_slot", __FILE__), |
| 67 | 67 | device_image_interface(mconfig, *this), |
| 68 | 68 | device_slot_interface(mconfig, *this), |
| 69 | m_type(CRV_4K) | |
| 69 | m_type(CRV_4K) | |
| 70 | 70 | { |
| 71 | 71 | } |
| 72 | 72 |
| r250237 | r250238 | |
|---|---|---|
| 201 | 201 | m_prog_write_cb(*this), |
| 202 | 202 | m_out_int_cb(*this), |
| 203 | 203 | m_out_irq_cb(*this), |
| 204 | m_out_thold_cb(*this) | |
| 204 | m_out_thold_cb(*this) | |
| 205 | 205 | { |
| 206 | 206 | } |
| 207 | 207 |
| r250237 | r250238 | |
|---|---|---|
| 57 | 57 | m_ppi(*this, "ppi8255"), |
| 58 | 58 | m_centronics(*this, "centronics"), |
| 59 | 59 | m_cent_data_in(*this, "cent_data_in"), |
| 60 | m_cent_data_out(*this, "cent_data_out"), m_bus(nullptr), m_clk1_timer(nullptr), m_portb(0), m_portc(0) | |
| 61 | { | |
| 60 | m_cent_data_out(*this, "cent_data_out") | |
| 61 | { | |
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 138 | 138 | m_pit(*this, "pit8253"), |
| 139 | 139 | m_ppi(*this, "ppi8255"), |
| 140 | 140 | m_ram(*this, "ram"), |
| 141 | m_rom(*this, "rom"), m_portc(0) | |
| 142 | { | |
| 141 | m_rom(*this, "rom") | |
| 142 | { | |
| 143 | 143 | } |
| 144 | 144 | |
| 145 | 145 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 110 | 110 | : device_t(mconfig, DMV_K230, "K230 8088 without interrupt controller", tag, owner, clock, "dmv_k230", __FILE__), |
| 111 | 111 | device_dmvslot_interface( mconfig, *this ), |
| 112 | 112 | m_maincpu(*this, "maincpu"), |
| 113 | m_rom(*this, "rom"), m_bus(nullptr), m_io(nullptr), m_switch16(0), m_hold(0) | |
| 114 | { | |
| 113 | m_rom(*this, "rom") | |
| 114 | { | |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | 117 | dmv_k230_device::dmv_k230_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 118 | 118 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 119 | 119 | device_dmvslot_interface( mconfig, *this ), |
| 120 | 120 | m_maincpu(*this, "maincpu"), |
| 121 | m_rom(*this, "rom"), m_bus(nullptr), m_io(nullptr), m_switch16(0), m_hold(0) | |
| 122 | { | |
| 121 | m_rom(*this, "rom") | |
| 122 | { | |
| 123 | 123 | } |
| 124 | 124 | |
| 125 | 125 | //------------------------------------------------- |
| r250237 | r250238 | |
| 136 | 136 | //------------------------------------------------- |
| 137 | 137 | |
| 138 | 138 | dmv_k234_device::dmv_k234_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 139 | : dmv_k230_device(mconfig, DMV_K234, "K234 68008", tag, owner, clock, "dmv_k234", __FILE__), m_snr(0) | |
| 140 | { | |
| 139 | : dmv_k230_device(mconfig, DMV_K234, "K234 68008", tag, owner, clock, "dmv_k234", __FILE__) | |
| 140 | { | |
| 141 | 141 | } |
| 142 | 142 | |
| 143 | 143 | //------------------------------------------------- |
| r250237 | r250238 | |
| 220 | 220 | |
| 221 | 221 | const rom_entry *dmv_k234_device::device_rom_region() const |
| 222 | 222 | { |
| 223 | return | |
| 223 | return NULL; | |
| 224 | 224 | } |
| 225 | 225 | |
| 226 | 226 | const rom_entry *dmv_k235_device::device_rom_region() const |
| r250237 | r250238 | |
|---|---|---|
| 30 | 30 | |
| 31 | 31 | dmv_k233_device::dmv_k233_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 32 | 32 | : device_t(mconfig, DMV_K233, "K233 16K Shared RAM", tag, owner, clock, "dmv_k233", __FILE__), |
| 33 | device_dmvslot_interface( mconfig, *this ), | |
| 34 | m_enabled(false), | |
| 35 | m_ram(nullptr) | |
| 36 | { | |
| 33 | device_dmvslot_interface( mconfig, *this ) | |
| 34 | { | |
| 37 | 35 | } |
| 38 | 36 | |
| 39 | 37 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 115 | 115 | : device_t(mconfig, DMV_K801, "K801 RS-232 Switchable Interface", tag, owner, clock, "dmv_k801", __FILE__), |
| 116 | 116 | device_dmvslot_interface( mconfig, *this ), |
| 117 | 117 | m_epci(*this, "epci"), |
| 118 | m_dsw(*this, "DSW"), m_bus(nullptr) | |
| 119 | { | |
| 118 | m_dsw(*this, "DSW") | |
| 119 | { | |
| 120 | 120 | } |
| 121 | 121 | |
| 122 | 122 | dmv_k801_device::dmv_k801_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 123 | 123 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 124 | 124 | device_dmvslot_interface( mconfig, *this ), |
| 125 | 125 | m_epci(*this, "epci"), |
| 126 | m_dsw(*this, "DSW"), m_bus(nullptr) | |
| 127 | { | |
| 126 | m_dsw(*this, "DSW") | |
| 127 | { | |
| 128 | 128 | } |
| 129 | 129 | |
| 130 | 130 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 53 | 53 | : device_t(mconfig, DMV_K803, "K803 RTC", tag, owner, clock, "dmv_k803", __FILE__), |
| 54 | 54 | device_dmvslot_interface( mconfig, *this ), |
| 55 | 55 | m_rtc(*this, "rtc"), |
| 56 | m_dsw(*this, "DSW"), m_bus(nullptr), m_latch(0), m_rtc_int(0) | |
| 57 | { | |
| 56 | m_dsw(*this, "DSW") | |
| 57 | { | |
| 58 | 58 | } |
| 59 | 59 | |
| 60 | 60 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 82 | 82 | m_jumpers(*this, "JUMPERS"), |
| 83 | 83 | m_mouse_buttons(*this, "MOUSE"), |
| 84 | 84 | m_mouse_x(*this, "MOUSEX"), |
| 85 | m_mouse_y(*this, "MOUSEY"), m_bus(nullptr) | |
| 86 | { | |
| 85 | m_mouse_y(*this, "MOUSEY") | |
| 86 | { | |
| 87 | 87 | } |
| 88 | 88 | |
| 89 | 89 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 34 | 34 | |
| 35 | 35 | dmv_ram_device::dmv_ram_device(const machine_config &mconfig, device_type type, UINT32 size, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 36 | 36 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 37 | device_dmvslot_interface( mconfig, *this ), | |
| 37 | device_dmvslot_interface( mconfig, *this ), | |
| 38 | 38 | m_size(size) |
| 39 | 39 | { |
| 40 | 40 | } |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | ecbbus_slot_device::ecbbus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, ECBBUS_SLOT, "ECB bus slot", tag, owner, clock, "ecbbus_slot", __FILE__), |
| 31 | device_slot_interface(mconfig, *this) | |
| 31 | device_slot_interface(mconfig, *this) | |
| 32 | 32 | { |
| 33 | 33 | } |
| 34 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 625 | 625 | m_video_ram(*this, "video_ram"), |
| 626 | 626 | m_j3a(*this, "J3A"), |
| 627 | 627 | m_j3b(*this, "J3B"), |
| 628 | m_j7(*this, "J7") | |
| 628 | m_j7(*this, "J7") | |
| 629 | 629 | { |
| 630 | 630 | } |
| 631 | 631 |
| r250237 | r250238 | |
|---|---|---|
| 396 | 396 | m_fdc_irq(CLEAR_LINE), |
| 397 | 397 | m_fdc_drq(CLEAR_LINE), |
| 398 | 398 | m_adlc_irq(CLEAR_LINE), |
| 399 | m_clk_en(0), m_ram_en(false), | |
| 400 | m_variant(TYPE_E01), m_clk_timer(nullptr) | |
| 399 | m_clk_en(0), | |
| 400 | m_variant(TYPE_E01) | |
| 401 | 401 | { |
| 402 | 402 | } |
| 403 | 403 | |
| r250237 | r250238 | |
| 426 | 426 | m_fdc_irq(CLEAR_LINE), |
| 427 | 427 | m_fdc_drq(CLEAR_LINE), |
| 428 | 428 | m_adlc_irq(CLEAR_LINE), |
| 429 | m_clk_en(0), m_ram_en(false), | |
| 430 | m_variant(TYPE_E01), m_clk_timer(nullptr) | |
| 429 | m_clk_en(0), | |
| 430 | m_variant(TYPE_E01) | |
| 431 | 431 | { |
| 432 | 432 | } |
| 433 | 433 |
| r250237 | r250238 | |
|---|---|---|
| 39 | 39 | //------------------------------------------------- |
| 40 | 40 | |
| 41 | 41 | device_econet_interface::device_econet_interface(const machine_config &mconfig, device_t &device) : |
| 42 | device_slot_card_interface(mconfig, device) | |
| 42 | device_slot_card_interface(mconfig, device) | |
| 43 | 43 | { |
| 44 | 44 | } |
| 45 | 45 | |
| r250237 | r250238 | |
| 55 | 55 | |
| 56 | 56 | econet_slot_device::econet_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 57 | 57 | device_t(mconfig, ECONET_SLOT, "Econet station", tag, owner, clock, "econet_slot", __FILE__), |
| 58 | device_slot_interface(mconfig, *this) | |
| 58 | device_slot_interface(mconfig, *this) | |
| 59 | 59 | { |
| 60 | 60 | } |
| 61 | 61 |
| r250237 | r250238 | |
|---|---|---|
| 48 | 48 | m_write_irq(*this), |
| 49 | 49 | m_write_nmi(*this), |
| 50 | 50 | m_write_wait(*this), |
| 51 | m_dave(*this) | |
| 51 | m_dave(*this) | |
| 52 | 52 | { |
| 53 | 53 | } |
| 54 | 54 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | |
| 55 | 55 | epson_sio_device::epson_sio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 56 | 56 | device_t(mconfig, EPSON_SIO, "EPSON SIO port", tag, owner, clock, "epson_sio", __FILE__), |
| 57 | device_slot_interface(mconfig, *this), | |
| 57 | device_slot_interface(mconfig, *this), | |
| 58 | 58 | m_write_rx(*this), |
| 59 | 59 | m_write_pin(*this) |
| 60 | 60 | { |
| r250237 | r250238 | |
|---|---|---|
| 96 | 96 | device_epson_sio_interface(mconfig, *this), |
| 97 | 97 | m_cpu(*this, "maincpu"), |
| 98 | 98 | m_fdc(*this, "upd765a"), |
| 99 | m_sio_output(*this, "sio"), | |
| 99 | m_sio_output(*this, "sio"), | |
| 100 | 100 | m_port1(0xff), |
| 101 | 101 | m_port2(0xff), |
| 102 | m_rxc(1) | |
| 102 | m_rxc(1) | |
| 103 | 103 | { |
| 104 | 104 | m_sio_input = dynamic_cast<epson_sio_device *>(owner); |
| 105 | 105 | } |
| r250237 | r250238 | |
|---|---|---|
| 133 | 133 | m_ram(*this, "ram"), |
| 134 | 134 | m_fdc(*this, "5a"), |
| 135 | 135 | m_mpsc(*this, "3a"), |
| 136 | m_sio_output(*this, "sio"), m_fd0(nullptr), m_fd1(nullptr), m_timer_serial(nullptr), m_timer_tc(nullptr), | |
| 137 | m_rxc(1), m_txda(0), m_dtra(0), m_pinc(0) | |
| 136 | m_sio_output(*this, "sio"), | |
| 137 | m_rxc(1) | |
| 138 | 138 | { |
| 139 | 139 | m_sio_input = dynamic_cast<epson_sio_device *>(owner); |
| 140 | 140 | } |
| r250237 | r250238 | |
|---|---|---|
| 38 | 38 | |
| 39 | 39 | device_gb_cart_interface::device_gb_cart_interface(const machine_config &mconfig, device_t &device) |
| 40 | 40 | : device_slot_card_interface(mconfig, device), |
| 41 | m_rom(NULL), | |
| 42 | m_rom_size(0), m_ram_bank(0), m_latch_bank(0), m_latch_bank2(0), | |
| 43 | has_rumble(false), | |
| 44 | has_timer(false), | |
| 45 | has_battery(false) | |
| 41 | m_rom(NULL), | |
| 42 | m_rom_size(0), | |
| 43 | has_rumble(false), | |
| 44 | has_timer(false), | |
| 45 | has_battery(false) | |
| 46 | 46 | { |
| 47 | 47 | } |
| 48 | 48 | |
| r250237 | r250238 | |
| 142 | 142 | device_image_interface(mconfig, *this), |
| 143 | 143 | device_slot_interface(mconfig, *this), |
| 144 | 144 | m_sgb_hack(0), |
| 145 | m_type(GB_MBC_UNKNOWN) | |
| 145 | m_type(GB_MBC_UNKNOWN) | |
| 146 | 146 | { |
| 147 | 147 | } |
| 148 | 148 |
| r250237 | r250238 | |
|---|---|---|
| 39 | 39 | |
| 40 | 40 | gb_rom_mbc_device::gb_rom_mbc_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 41 | 41 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 42 | device_gb_cart_interface( mconfig, *this ), m_ram_enable(0) | |
| 43 | { | |
| 42 | device_gb_cart_interface( mconfig, *this ) | |
| 43 | { | |
| 44 | 44 | } |
| 45 | 45 | |
| 46 | 46 | gb_rom_mbc1_device::gb_rom_mbc1_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 47 | : gb_rom_mbc_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 47 | : gb_rom_mbc_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 48 | 48 | m_mask(0x1f), |
| 49 | 49 | m_shift(0) |
| 50 | 50 | { |
| 51 | 51 | } |
| 52 | 52 | |
| 53 | 53 | gb_rom_mbc1_device::gb_rom_mbc1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 54 | : gb_rom_mbc_device(mconfig, GB_ROM_MBC1, "GB MBC1 Carts", tag, owner, clock, "gb_rom_mbc1", __FILE__), | |
| 54 | : gb_rom_mbc_device(mconfig, GB_ROM_MBC1, "GB MBC1 Carts", tag, owner, clock, "gb_rom_mbc1", __FILE__), | |
| 55 | 55 | m_mask(0x1f), |
| 56 | 56 | m_shift(0) |
| 57 | 57 | { |
| r250237 | r250238 | |
| 78 | 78 | } |
| 79 | 79 | |
| 80 | 80 | gb_rom_mbc6_device::gb_rom_mbc6_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 81 | : gb_rom_mbc_device(mconfig, GB_ROM_MBC6, "GB MBC6 Carts", tag, owner, clock, "gb_rom_mbc6", __FILE__), m_latch1(0), m_latch2(0), m_bank_4000(0), m_bank_6000(0) | |
| 82 | { | |
| 81 | : gb_rom_mbc_device(mconfig, GB_ROM_MBC6, "GB MBC6 Carts", tag, owner, clock, "gb_rom_mbc6", __FILE__) | |
| 82 | { | |
| 83 | 83 | } |
| 84 | 84 | |
| 85 | 85 | gb_rom_mbc7_device::gb_rom_mbc7_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 88 | 88 | } |
| 89 | 89 | |
| 90 | 90 | gb_rom_m161_device::gb_rom_m161_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 91 | : gb_rom_mbc_device(mconfig, GB_ROM_M161_M12, "GB M161-M12 Carts", tag, owner, clock, "gb_rom_m161m12", __FILE__), m_base_bank(0) | |
| 92 | { | |
| 91 | : gb_rom_mbc_device(mconfig, GB_ROM_M161_M12, "GB M161-M12 Carts", tag, owner, clock, "gb_rom_m161m12", __FILE__) | |
| 92 | { | |
| 93 | 93 | } |
| 94 | 94 | |
| 95 | 95 | gb_rom_mmm01_device::gb_rom_mmm01_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 96 | : gb_rom_mbc_device(mconfig, GB_ROM_MMM01, "GB MMM01 Carts", tag, owner, clock, "gb_rom_mmm01", __FILE__), m_bank_mask(0), m_bank(0), m_reg(0) | |
| 97 | { | |
| 96 | : gb_rom_mbc_device(mconfig, GB_ROM_MMM01, "GB MMM01 Carts", tag, owner, clock, "gb_rom_mmm01", __FILE__) | |
| 97 | { | |
| 98 | 98 | } |
| 99 | 99 | |
| 100 | 100 | gb_rom_sachen_mmc1_device::gb_rom_sachen_mmc1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 101 | : gb_rom_mbc_device(mconfig, GB_ROM_SACHEN1, "GB Sachen MMC1 Carts", tag, owner, clock, "gb_rom_sachen1", __FILE__), m_base_bank(0), m_mask(0), m_mode(0), m_unlock_cnt(0) | |
| 102 | { | |
| 101 | : gb_rom_mbc_device(mconfig, GB_ROM_SACHEN1, "GB Sachen MMC1 Carts", tag, owner, clock, "gb_rom_sachen1", __FILE__) | |
| 102 | { | |
| 103 | 103 | } |
| 104 | 104 | |
| 105 | 105 | gb_rom_sachen_mmc1_device::gb_rom_sachen_mmc1_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 106 | : gb_rom_mbc_device(mconfig, type, name, tag, owner, clock, shortname, source), m_base_bank(0), m_mask(0), m_mode(0), m_unlock_cnt(0) | |
| 107 | { | |
| 106 | : gb_rom_mbc_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 107 | { | |
| 108 | 108 | } |
| 109 | 109 | |
| 110 | 110 | gb_rom_sachen_mmc2_device::gb_rom_sachen_mmc2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 113 | 113 | } |
| 114 | 114 | |
| 115 | 115 | gb_rom_188in1_device::gb_rom_188in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 116 | : gb_rom_mbc1_device(mconfig, GB_ROM_188IN1, "GB 188in1", tag, owner, clock, "gb_rom_188in1", __FILE__), m_game_base(0) | |
| 117 | { | |
| 116 | : gb_rom_mbc1_device(mconfig, GB_ROM_188IN1, "GB 188in1", tag, owner, clock, "gb_rom_188in1", __FILE__) | |
| 117 | { | |
| 118 | 118 | } |
| 119 | 119 | |
| 120 | 120 | gb_rom_sintax_device::gb_rom_sintax_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 121 | : gb_rom_mbc_device(mconfig, GB_ROM_SINTAX, "GB MBC5 Sintax Carts", tag, owner, clock, "gb_rom_sintax", __FILE__), m_bank_mask(0), m_bank(0), m_reg(0), m_currentxor(0), m_xor2(0), m_xor3(0), m_xor4(0), m_xor5(0), m_sintax_mode(0) | |
| 122 | { | |
| 121 | : gb_rom_mbc_device(mconfig, GB_ROM_SINTAX, "GB MBC5 Sintax Carts", tag, owner, clock, "gb_rom_sintax", __FILE__) | |
| 122 | { | |
| 123 | 123 | } |
| 124 | 124 | |
| 125 | 125 | gb_rom_chongwu_device::gb_rom_chongwu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 126 | : gb_rom_mbc5_device(mconfig, GB_ROM_CHONGWU, "GB Chong Wu Xiao Jing Ling", tag, owner, clock, "gb_rom_chongwu", __FILE__), m_protection_checked(0) | |
| 127 | { | |
| 126 | : gb_rom_mbc5_device(mconfig, GB_ROM_CHONGWU, "GB Chong Wu Xiao Jing Ling", tag, owner, clock, "gb_rom_chongwu", __FILE__) | |
| 127 | { | |
| 128 | 128 | } |
| 129 | 129 | |
| 130 | 130 | gb_rom_licheng_device::gb_rom_licheng_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 138 | 138 | } |
| 139 | 139 | |
| 140 | 140 | gb_rom_rockman8_device::gb_rom_rockman8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 141 | : gb_rom_mbc_device(mconfig, GB_ROM_ROCKMAN8, "GB MBC1 Rockman 8", tag, owner, clock, "gb_rom_rockman8", __FILE__), m_bank_mask(0), m_bank(0), m_reg(0) | |
| 142 | { | |
| 141 | : gb_rom_mbc_device(mconfig, GB_ROM_ROCKMAN8, "GB MBC1 Rockman 8", tag, owner, clock, "gb_rom_rockman8", __FILE__) | |
| 142 | { | |
| 143 | 143 | } |
| 144 | 144 | |
| 145 | 145 | gb_rom_sm3sp_device::gb_rom_sm3sp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 146 | : gb_rom_mbc_device(mconfig, GB_ROM_SM3SP, "GB MBC1 Super Mario 3 Special", tag, owner, clock, "gb_rom_sm3sp", __FILE__), m_bank_mask(0), m_bank(0), m_reg(0), m_mode(0) | |
| 147 | { | |
| 146 | : gb_rom_mbc_device(mconfig, GB_ROM_SM3SP, "GB MBC1 Super Mario 3 Special", tag, owner, clock, "gb_rom_sm3sp", __FILE__) | |
| 147 | { | |
| 148 | 148 | } |
| 149 | 149 | |
| 150 | 150 |
| r250237 | r250238 | |
|---|---|---|
| 42 | 42 | } |
| 43 | 43 | |
| 44 | 44 | gb_rom_tama5_device::gb_rom_tama5_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 45 | : gb_rom_device(mconfig, GB_ROM_TAMA5, "GB Tamagotchi", tag, owner, clock, "gb_rom_tama5", __FILE__), m_tama5_data(0), m_tama5_addr(0), m_tama5_cmd(0), m_rtc_reg(0) | |
| 46 | { | |
| 45 | : gb_rom_device(mconfig, GB_ROM_TAMA5, "GB Tamagotchi", tag, owner, clock, "gb_rom_tama5", __FILE__) | |
| 46 | { | |
| 47 | 47 | } |
| 48 | 48 | |
| 49 | 49 | gb_rom_wisdom_device::gb_rom_wisdom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 56 | 56 | |
| 57 | 57 | gg_ext_port_device::gg_ext_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 58 | 58 | device_t(mconfig, GG_EXT_PORT, "EXT Port", tag, owner, clock, "gg_ext_port", __FILE__), |
| 59 | device_slot_interface(mconfig, *this), | |
| 59 | device_slot_interface(mconfig, *this), | |
| 60 | 60 | m_th_pin_handler(*this), |
| 61 | 61 | m_pixel_handler(*this) |
| 62 | 62 | { |
| r250237 | r250238 | |
|---|---|---|
| 78 | 78 | device_t(mconfig, GBA_CART_SLOT, "Game Boy Advance Cartridge Slot", tag, owner, clock, "gba_cart_slot", __FILE__), |
| 79 | 79 | device_image_interface(mconfig, *this), |
| 80 | 80 | device_slot_interface(mconfig, *this), |
| 81 | m_type(GBA_STD) | |
| 81 | m_type(GBA_STD) | |
| 82 | 82 | { |
| 83 | 83 | } |
| 84 | 84 |
| r250237 | r250238 | |
|---|---|---|
| 57 | 57 | } |
| 58 | 58 | |
| 59 | 59 | gba_rom_flash_device::gba_rom_flash_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 60 | : gba_rom_device(mconfig, GBA_ROM_FLASH, "GBA Carts + Panasonic Flash", tag, owner, clock, "gba_flash", __FILE__), | |
| 60 | : gba_rom_device(mconfig, GBA_ROM_FLASH, "GBA Carts + Panasonic Flash", tag, owner, clock, "gba_flash", __FILE__), | |
| 61 | 61 | m_flash(*this, "flash") |
| 62 | 62 | { |
| 63 | 63 | } |
| 64 | 64 | |
| 65 | 65 | gba_rom_flash1m_device::gba_rom_flash1m_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 66 | : gba_rom_device(mconfig, GBA_ROM_FLASH1M, "GBA Carts + Sanyo Flash", tag, owner, clock, "gba_flash1m", __FILE__), | |
| 66 | : gba_rom_device(mconfig, GBA_ROM_FLASH1M, "GBA Carts + Sanyo Flash", tag, owner, clock, "gba_flash1m", __FILE__), | |
| 67 | 67 | m_flash(*this, "flash") |
| 68 | 68 | { |
| 69 | 69 | } |
| r250237 | r250238 | |
|---|---|---|
| 92 | 92 | m_extensions("bin"), |
| 93 | 93 | m_must_be_loaded(FALSE), |
| 94 | 94 | m_width(GENERIC_ROM8_WIDTH), |
| 95 | m_endianness(ENDIANNESS_LITTLE) | |
| 95 | m_endianness(ENDIANNESS_LITTLE) | |
| 96 | 96 | { |
| 97 | 97 | } |
| 98 | 98 |
| r250237 | r250238 | |
|---|---|---|
| 408 | 408 | m_address(*this, "ADDRESS"), |
| 409 | 409 | m_nrfd_out(1), |
| 410 | 410 | m_ndac_out(1), |
| 411 | m_atna(1), | |
| 411 | m_atna(1), | |
| 412 | 412 | m_via0_irq(0), |
| 413 | 413 | m_via1_irq(0) |
| 414 | 414 | { |
| r250237 | r250238 | |
|---|---|---|
| 690 | 690 | m_address(*this, "ADDRESS"), |
| 691 | 691 | m_rfdo(1), |
| 692 | 692 | m_daco(1), |
| 693 | m_atna(1) | |
| 693 | m_atna(1) | |
| 694 | 694 | { |
| 695 | 695 | } |
| 696 | 696 | |
| r250237 | r250238 | |
| 710 | 710 | m_address(*this, "ADDRESS"), |
| 711 | 711 | m_rfdo(1), |
| 712 | 712 | m_daco(1), |
| 713 | m_atna(1) | |
| 713 | m_atna(1) | |
| 714 | 714 | { |
| 715 | 715 | } |
| 716 | 716 |
| r250237 | r250238 | |
|---|---|---|
| 86 | 86 | m_ds1(0), |
| 87 | 87 | m_drv_sel(0), |
| 88 | 88 | m_mode_sel(0), |
| 89 | m_rw_sel(0), m_odd_hd(0), m_pi(0), | |
| 90 | m_period(attotime::from_hz(clock)), t_gen(nullptr) | |
| 89 | m_rw_sel(0), | |
| 90 | m_period(attotime::from_hz(clock)) | |
| 91 | 91 | { |
| 92 | 92 | cur_live.tm = attotime::never; |
| 93 | 93 | cur_live.state = IDLE; |
| r250237 | r250238 | |
|---|---|---|
| 832 | 832 | m_address(*this, "ADDRESS"), |
| 833 | 833 | m_rfdo(1), |
| 834 | 834 | m_daco(1), |
| 835 | m_atna(1) | |
| 835 | m_atna(1) | |
| 836 | 836 | { |
| 837 | 837 | } |
| 838 | 838 | |
| r250237 | r250238 | |
| 851 | 851 | m_address(*this, "ADDRESS"), |
| 852 | 852 | m_rfdo(1), |
| 853 | 853 | m_daco(1), |
| 854 | m_atna(1) | |
| 854 | m_atna(1) | |
| 855 | 855 | { |
| 856 | 856 | } |
| 857 | 857 |
| r250237 | r250238 | |
|---|---|---|
| 89 | 89 | m_ds1(0), |
| 90 | 90 | m_drv_sel(0), |
| 91 | 91 | m_mode_sel(0), |
| 92 | m_rw_sel(1) | |
| 92 | m_rw_sel(1) | |
| 93 | 93 | { |
| 94 | 94 | cur_live.tm = attotime::never; |
| 95 | 95 | cur_live.state = IDLE; |
| r250237 | r250238 | |
|---|---|---|
| 392 | 392 | m_fdc(*this, WD1797_TAG), |
| 393 | 393 | m_floppy0(*this, WD1797_TAG ":0"), |
| 394 | 394 | m_floppy1(*this, WD1797_TAG ":1"), |
| 395 | m_address(*this, "ADDRESS"), | |
| 395 | m_address(*this, "ADDRESS"), | |
| 396 | 396 | m_rfdo(1), |
| 397 | 397 | m_daco(1), |
| 398 | m_atna(1) | |
| 398 | m_atna(1) | |
| 399 | 399 | { |
| 400 | 400 | } |
| 401 | 401 |
| r250237 | r250238 | |
|---|---|---|
| 496 | 496 | m_address(*this, "ADDRESS"), |
| 497 | 497 | m_rfdo(1), |
| 498 | 498 | m_daco(1), |
| 499 | m_atna(1), m_ifc(0), | |
| 500 | m_enable(0), m_data(0), | |
| 499 | m_atna(1), | |
| 500 | m_enable(0), | |
| 501 | 501 | m_variant(variant) |
| 502 | 502 | { |
| 503 | 503 | } |
| r250237 | r250238 | |
|---|---|---|
| 350 | 350 | : device_t(mconfig, HARDBOX, "HardBox", tag, owner, clock, "hardbox", __FILE__), |
| 351 | 351 | device_ieee488_interface(mconfig, *this), |
| 352 | 352 | m_maincpu(*this, Z80_TAG), |
| 353 | m_hdc(*this, CORVUS_HDC_TAG) | |
| 353 | m_hdc(*this, CORVUS_HDC_TAG) | |
| 354 | 354 | { |
| 355 | 355 | } |
| 356 | 356 |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | //------------------------------------------------- |
| 41 | 41 | |
| 42 | 42 | device_ieee488_interface::device_ieee488_interface(const machine_config &mconfig, device_t &device) |
| 43 | : device_slot_card_interface(mconfig, device) | |
| 43 | : device_slot_card_interface(mconfig, device) | |
| 44 | 44 | { |
| 45 | 45 | } |
| 46 | 46 | |
| r250237 | r250238 | |
| 65 | 65 | |
| 66 | 66 | ieee488_slot_device::ieee488_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 67 | 67 | device_t(mconfig, IEEE488_SLOT, "IEEE-488 slot", tag, owner, clock, "ieee488_slot", __FILE__), |
| 68 | device_slot_interface(mconfig, *this) | |
| 68 | device_slot_interface(mconfig, *this) | |
| 69 | 69 | { |
| 70 | 70 | } |
| 71 | 71 |
| r250237 | r250238 | |
|---|---|---|
| 331 | 331 | device_ieee488_interface(mconfig, *this), |
| 332 | 332 | m_maincpu(*this, Z80_TAG), |
| 333 | 333 | m_dbrg(*this, COM8116_TAG), |
| 334 | m_hdc(*this, CORVUS_HDC_TAG) | |
| 334 | m_hdc(*this, CORVUS_HDC_TAG) | |
| 335 | 335 | { |
| 336 | 336 | } |
| 337 | 337 |
| r250237 | r250238 | |
|---|---|---|
| 36 | 36 | //------------------------------------------------- |
| 37 | 37 | |
| 38 | 38 | device_imi7000_interface::device_imi7000_interface(const machine_config &mconfig, device_t &device) |
| 39 | : device_slot_card_interface(mconfig, device) | |
| 39 | : device_slot_card_interface(mconfig, device) | |
| 40 | 40 | { |
| 41 | 41 | } |
| 42 | 42 | |
| r250237 | r250238 | |
| 52 | 52 | |
| 53 | 53 | imi7000_slot_device::imi7000_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 54 | 54 | device_t(mconfig, IMI7000_SLOT, "IMI 7000 slot", tag, owner, clock, "imi7000_slot", __FILE__), |
| 55 | device_slot_interface(mconfig, *this) | |
| 55 | device_slot_interface(mconfig, *this) | |
| 56 | 56 | { |
| 57 | 57 | } |
| 58 | 58 |
| r250237 | r250238 | |
|---|---|---|
| 148 | 148 | device_t(mconfig, INTV_CART_SLOT, "Intellivision Cartridge Slot", tag, owner, clock, "intv_cart_slot", __FILE__), |
| 149 | 149 | device_image_interface(mconfig, *this), |
| 150 | 150 | device_slot_interface(mconfig, *this), |
| 151 | m_type(INTV_STD) | |
| 151 | m_type(INTV_STD) | |
| 152 | 152 | { |
| 153 | 153 | } |
| 154 | 154 |
| r250237 | r250238 | |
|---|---|---|
| 51 | 51 | iq151_disc2_device::iq151_disc2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 52 | 52 | : device_t(mconfig, IQ151_DISC2, "IQ151 Disc2", tag, owner, clock, "iq151_disc2", __FILE__), |
| 53 | 53 | device_iq151cart_interface( mconfig, *this ), |
| 54 | m_fdc(*this, "fdc"), m_rom(nullptr), m_rom_enabled(false) | |
| 55 | { | |
| 54 | m_fdc(*this, "fdc") | |
| 55 | { | |
| 56 | 56 | } |
| 57 | 57 | |
| 58 | 58 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | iq151_grafik_device::iq151_grafik_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 41 | 41 | : device_t(mconfig, IQ151_GRAFIK, "IQ151 grafik", tag, owner, clock, "iq151_grafik", __FILE__), |
| 42 | 42 | device_iq151cart_interface( mconfig, *this ), |
| 43 | m_ppi8255(*this, "ppi8255"), m_posx(0), m_posy(0), m_all(0), m_pen(0), m_fast(0), m_ev(0), m_ex(0), m_sel(0) | |
| 44 | { | |
| 43 | m_ppi8255(*this, "ppi8255") | |
| 44 | { | |
| 45 | 45 | } |
| 46 | 46 | |
| 47 | 47 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 62 | 62 | m_out_irq2_cb(*this), |
| 63 | 63 | m_out_irq3_cb(*this), |
| 64 | 64 | m_out_irq4_cb(*this), |
| 65 | m_out_drq_cb(*this) | |
| 65 | m_out_drq_cb(*this) | |
| 66 | 66 | { |
| 67 | 67 | } |
| 68 | 68 |
| r250237 | r250238 | |
|---|---|---|
| 49 | 49 | |
| 50 | 50 | iq151_minigraf_device::iq151_minigraf_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 51 | 51 | : device_t(mconfig, IQ151_MINIGRAF, "IQ151 Minigraf", tag, owner, clock, "iq151_minigraf", __FILE__), |
| 52 | device_iq151cart_interface( mconfig, *this ), m_rom(nullptr), m_posx(0), m_posy(0), m_pen(0), m_control(0), m_paper(nullptr) | |
| 53 | { | |
| 52 | device_iq151cart_interface( mconfig, *this ) | |
| 53 | { | |
| 54 | 54 | } |
| 55 | 55 | |
| 56 | 56 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 48 | 48 | |
| 49 | 49 | iq151_ms151a_device::iq151_ms151a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 50 | 50 | : device_t(mconfig, IQ151_MS151A, "IQ151 MS151A", tag, owner, clock, "iq151_ms151a", __FILE__), |
| 51 | device_iq151cart_interface( mconfig, *this ), m_rom(nullptr), m_posx(0), m_posy(0), m_pen(0), m_paper(nullptr) | |
| 52 | { | |
| 51 | device_iq151cart_interface( mconfig, *this ) | |
| 52 | { | |
| 53 | 53 | } |
| 54 | 54 | |
| 55 | 55 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 43 | 43 | |
| 44 | 44 | iq151_rom_device::iq151_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 45 | 45 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 46 | device_iq151cart_interface(mconfig, *this) | |
| 46 | device_iq151cart_interface(mconfig, *this) | |
| 47 | 47 | { |
| 48 | 48 | } |
| 49 | 49 |
| r250237 | r250238 | |
|---|---|---|
| 48 | 48 | : device_t(mconfig, IQ151_STAPER, "IQ151 STAPER", tag, owner, clock, "iq151_staper", __FILE__), |
| 49 | 49 | device_iq151cart_interface( mconfig, *this ), |
| 50 | 50 | m_ppi(*this, "ppi8255"), |
| 51 | m_printer(*this, "printer"), m_printer_timer(nullptr), m_ppi_portc(0) | |
| 52 | { | |
| 51 | m_printer(*this, "printer") | |
| 52 | { | |
| 53 | 53 | } |
| 54 | 54 | |
| 55 | 55 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | |
| 60 | 60 | iq151_video32_device::iq151_video32_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 61 | 61 | : device_t(mconfig, IQ151_VIDEO32, "IQ151 video32", tag, owner, clock, "iq151_video32", __FILE__), |
| 62 | device_iq151cart_interface( mconfig, *this ), | |
| 62 | device_iq151cart_interface( mconfig, *this ), | |
| 63 | 63 | m_gfxdecode(*this, "gfxdecode"), |
| 64 | 64 | m_palette(*this, "^^palette") |
| 65 | 65 | { |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | |
| 60 | 60 | iq151_video64_device::iq151_video64_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 61 | 61 | : device_t(mconfig, IQ151_VIDEO64, "IQ151 video64", tag, owner, clock, "iq151_video64", __FILE__), |
| 62 | device_iq151cart_interface( mconfig, *this ), | |
| 62 | device_iq151cart_interface( mconfig, *this ), | |
| 63 | 63 | m_gfxdecode(*this, "gfxdecode"), |
| 64 | 64 | m_palette(*this, "^^palette") |
| 65 | 65 | { |
| r250237 | r250238 | |
|---|---|---|
| 18 | 18 | return MACHINE_CONFIG_NAME(el2_3c503_config); |
| 19 | 19 | } |
| 20 | 20 | |
| 21 | el2_3c503_device::el2_3c503_device(const machine_config& mconfig, const char* tag, device_t* owner, UINT32 clock) | |
| 22 | : device_t(mconfig, EL2_3C503, "3C503 Network Adapter", tag, owner, clock, "el2_3c503", __FILE__), | |
| 23 | device_isa8_card_interface(mconfig, *this), | |
| 24 | m_dp8390(*this, "dp8390d"), | |
| 25 | m_irq_state(0) | |
| 26 | { | |
| 21 | el2_3c503_device::el2_3c503_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) | |
| 22 | : device_t(mconfig, EL2_3C503, "3C503 Network Adapter", tag, owner, clock, "el2_3c503", __FILE__), | |
| 23 | device_isa8_card_interface(mconfig, *this), | |
| 24 | m_dp8390(*this, "dp8390d") { | |
| 27 | 25 | } |
| 28 | 26 | |
| 29 | 27 | void el2_3c503_device::device_start() { |
| r250237 | r250238 | |
|---|---|---|
| 309 | 309 | device_isa16_card_interface(mconfig, *this), |
| 310 | 310 | m_iobase(*this, "IO_BASE"), |
| 311 | 311 | m_irqdrq(*this, "IRQ_DRQ"), |
| 312 | m_romopts(*this, "ROM_OPTS") | |
| 312 | m_romopts(*this, "ROM_OPTS") | |
| 313 | 313 | { |
| 314 | 314 | } |
| 315 | 315 | |
| r250237 | r250238 | |
| 319 | 319 | device_isa16_card_interface(mconfig, *this), |
| 320 | 320 | m_iobase(*this, "IO_BASE"), |
| 321 | 321 | m_irqdrq(*this, "IRQ_DRQ"), |
| 322 | m_romopts(*this, "ROM_OPTS") | |
| 322 | m_romopts(*this, "ROM_OPTS") | |
| 323 | 323 | { |
| 324 | 324 | } |
| 325 | 325 | |
| r250237 | r250238 | |
| 447 | 447 | //************************************************************************** |
| 448 | 448 | |
| 449 | 449 | threecom3c505_device::data_buffer::data_buffer() : |
| 450 | m_device( | |
| 450 | m_device(NULL) | |
| 451 | 451 | { |
| 452 | 452 | } |
| 453 | 453 | |
| r250237 | r250238 | |
| 508 | 508 | //************************************************************************** |
| 509 | 509 | |
| 510 | 510 | threecom3c505_device::data_buffer_fifo::data_buffer_fifo() : |
| 511 | m_device(nullptr), | |
| 512 | m_size(0), m_count(0), m_get_index(0), m_put_index(0) | |
| 511 | m_device(NULL), | |
| 512 | m_size(0) | |
| 513 | 513 | { |
| 514 | 514 | } |
| 515 | 515 |
| r250237 | r250238 | |
|---|---|---|
| 62 | 62 | m_palette(*this, "palette"), |
| 63 | 63 | m_mc6845(*this, AGA_MC6845_NAME), |
| 64 | 64 | m_cga_config(*this, "cga_config"), |
| 65 | m_update_row_type(-1), | |
| 66 | m_mode(), | |
| 65 | m_update_row_type(-1), | |
| 67 | 66 | m_mda_mode_control(0), |
| 68 | m_mda_status(0), | |
| 69 | m_mda_chr_gen(nullptr), | |
| 67 | m_mda_status(0), | |
| 70 | 68 | m_cga_mode_control(0), |
| 71 | 69 | m_cga_color_select(0), |
| 72 | m_cga_status(0), | |
| 73 | m_cga_chr_gen(nullptr), | |
| 70 | m_cga_status(0), | |
| 74 | 71 | m_framecnt(0), |
| 75 | 72 | m_vsync(0), |
| 76 | m_hsync(0), | |
| 77 | m_videoram(nullptr) | |
| 73 | m_hsync(0) | |
| 78 | 74 | { |
| 79 | 75 | } |
| 80 | 76 | |
| r250237 | r250238 | |
| 84 | 80 | m_palette(*this, "palette"), |
| 85 | 81 | m_mc6845(*this, AGA_MC6845_NAME), |
| 86 | 82 | m_cga_config(*this, "cga_config"), |
| 87 | m_update_row_type(-1), | |
| 83 | m_update_row_type(-1), | |
| 88 | 84 | m_mda_mode_control(0), |
| 89 | m_mda_status(0), | |
| 85 | m_mda_status(0), | |
| 90 | 86 | m_cga_mode_control(0), |
| 91 | 87 | m_cga_color_select(0), |
| 92 | m_cga_status(0), | |
| 88 | m_cga_status(0), | |
| 93 | 89 | m_framecnt(0), |
| 94 | 90 | m_vsync(0), |
| 95 | m_hsync(0) | |
| 91 | m_hsync(0) | |
| 96 | 92 | { |
| 97 | 93 | } |
| 98 | 94 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 301 | 301 | isa8_cga_device::isa8_cga_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 302 | 302 | device_t(mconfig, ISA8_CGA, "IBM Color/Graphics Monitor Adapter", tag, owner, clock, "cga", __FILE__), |
| 303 | 303 | device_isa8_card_interface(mconfig, *this), |
| 304 | m_cga_config(*this, "cga_config"), m_framecnt(0), m_mode_control(0), m_color_select(0), | |
| 305 | m_update_row_type(-1), m_chr_gen_base(nullptr), m_chr_gen(nullptr), m_vsync(0), m_hsync(0), | |
| 306 | m_vram_size( 0x4000 ), m_plantronics(0), | |
| 304 | m_cga_config(*this, "cga_config"), | |
| 305 | m_update_row_type(-1), | |
| 306 | m_vram_size( 0x4000 ), | |
| 307 | 307 | m_palette(*this, "palette") |
| 308 | 308 | { |
| 309 | 309 | m_chr_gen_offset[0] = m_chr_gen_offset[2] = 0x1800; |
| r250237 | r250238 | |
| 316 | 316 | isa8_cga_device::isa8_cga_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 317 | 317 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 318 | 318 | device_isa8_card_interface(mconfig, *this), |
| 319 | m_cga_config(*this, "cga_config"), m_framecnt(0), m_mode_control(0), m_color_select(0), | |
| 320 | m_update_row_type(-1), m_chr_gen_base(nullptr), m_chr_gen(nullptr), m_vsync(0), m_hsync(0), | |
| 321 | m_vram_size( 0x4000 ), m_plantronics(0), | |
| 319 | m_cga_config(*this, "cga_config"), | |
| 320 | m_update_row_type(-1), | |
| 321 | m_vram_size( 0x4000 ), | |
| 322 | 322 | m_palette(*this, "palette") |
| 323 | 323 | { |
| 324 | 324 | m_chr_gen_offset[0] = m_chr_gen_offset[2] = 0x1800; |
| r250237 | r250238 | |
| 1523 | 1523 | //------------------------------------------------- |
| 1524 | 1524 | |
| 1525 | 1525 | isa8_cga_pc1512_device::isa8_cga_pc1512_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 1526 | isa8_cga_device( mconfig, ISA8_CGA_PC1512, "ISA8_CGA_PC1512", tag, owner, clock, "cga_pc1512", __FILE__) | |
| 1526 | isa8_cga_device( mconfig, ISA8_CGA_PC1512, "ISA8_CGA_PC1512", tag, owner, clock, "cga_pc1512", __FILE__) | |
| 1527 | 1527 | { |
| 1528 | 1528 | m_vram_size = 0x10000; |
| 1529 | 1529 | m_chr_gen_offset[0] = 0x0000; |
| r250237 | r250238 | |
| 1652 | 1652 | //------------------------------------------------- |
| 1653 | 1653 | |
| 1654 | 1654 | isa8_wyse700_device::isa8_wyse700_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 1655 | isa8_cga_device( mconfig, ISA8_WYSE700, "Wyse 700", tag, owner, clock, "wyse700", __FILE__) | |
| 1655 | isa8_cga_device( mconfig, ISA8_WYSE700, "Wyse 700", tag, owner, clock, "wyse700", __FILE__) | |
| 1656 | 1656 | { |
| 1657 | 1657 | m_vram_size = 0x20000; |
| 1658 | 1658 | m_start_offset = 0x18000; |
| r250237 | r250238 | |
| 1740 | 1740 | //------------------------------------------------- |
| 1741 | 1741 | |
| 1742 | 1742 | isa8_ec1841_0002_device::isa8_ec1841_0002_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 1743 | isa8_cga_device( mconfig, ISA8_EC1841_0002, "EC 1841.0002 (CGA)", tag, owner, clock, "ec1841_0002", __FILE__) | |
| 1743 | isa8_cga_device( mconfig, ISA8_EC1841_0002, "EC 1841.0002 (CGA)", tag, owner, clock, "ec1841_0002", __FILE__) | |
| 1744 | 1744 | { |
| 1745 | 1745 | } |
| 1746 | 1746 | |
| r250237 | r250238 | |
| 1894 | 1894 | const device_type ISA8_CGA_M24 = &device_creator<isa8_cga_m24_device>; |
| 1895 | 1895 | |
| 1896 | 1896 | isa8_cga_m24_device::isa8_cga_m24_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 1897 | isa8_cga_device( mconfig, ISA8_CGA_M24, "Olivetti M24 CGA", tag, owner, clock, "cga_m24", __FILE__) | |
| 1897 | isa8_cga_device( mconfig, ISA8_CGA_M24, "Olivetti M24 CGA", tag, owner, clock, "cga_m24", __FILE__) | |
| 1898 | 1898 | { |
| 1899 | 1899 | m_vram_size = 0x8000; |
| 1900 | 1900 | } |
| r250237 | r250238 | |
|---|---|---|
| 6 | 6 | |
| 7 | 7 | dectalk_isa_device::dectalk_isa_device(const machine_config& mconfig, const char* tag, device_t* owner, UINT32 clock) : |
| 8 | 8 | device_t(mconfig, ISA8_DECTALK, "DECTalk-PC", tag, owner, clock, "dectalk_isa", __FILE__), |
| 9 | device_isa8_card_interface(mconfig, *this), | |
| 10 | m_cmd(0), | |
| 11 | m_stat(0), | |
| 12 | m_data(0), | |
| 13 | m_dsp_dma(0), | |
| 14 | m_ctl(0), | |
| 15 | m_dma(0), | |
| 16 | m_vol(0), | |
| 17 | m_bio(0), | |
| 9 | device_isa8_card_interface(mconfig, *this), | |
| 18 | 10 | m_cpu(*this, "dectalk_cpu"), |
| 19 | 11 | m_dac(*this, "dac"), |
| 20 | 12 | m_dsp(*this, "dectalk_dsp") |
| r250237 | r250238 | |
|---|---|---|
| 572 | 572 | |
| 573 | 573 | isa8_ega_device::isa8_ega_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 574 | 574 | device_t(mconfig, ISA8_EGA, "IBM Enhanced Graphics Adapter", tag, owner, clock, "ega", __FILE__), |
| 575 | device_isa8_card_interface(mconfig, *this), m_crtc_ega(nullptr), m_vram(nullptr), m_videoram(nullptr), m_charA(nullptr), m_charB(nullptr), | |
| 576 | m_misc_output(0), m_feature_control(0), m_frame_cnt(0), m_hsync(0), m_vsync(0), m_vblank(0), m_display_enable(0), m_video_mode(0), | |
| 575 | device_isa8_card_interface(mconfig, *this), | |
| 576 | m_misc_output(0), | |
| 577 | 577 | m_palette(*this, "palette") |
| 578 | 578 | { |
| 579 | 579 | } |
| 580 | 580 | |
| 581 | 581 | isa8_ega_device::isa8_ega_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 582 | 582 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 583 | device_isa8_card_interface(mconfig, *this), m_crtc_ega(nullptr), m_vram(nullptr), m_videoram(nullptr), m_charA(nullptr), m_charB(nullptr), | |
| 584 | m_misc_output(0), m_feature_control(0), m_frame_cnt(0), m_hsync(0), m_vsync(0), m_vblank(0), m_display_enable(0), m_video_mode(0), | |
| 583 | device_isa8_card_interface(mconfig, *this), | |
| 584 | m_misc_output(0), | |
| 585 | 585 | m_palette(*this, "palette") |
| 586 | 586 | { |
| 587 | 587 | } |
| r250237 | r250238 | |
|---|---|---|
| 91 | 91 | |
| 92 | 92 | isa8_finalchs_device::isa8_finalchs_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 93 | 93 | : device_t(mconfig, ISA8_FINALCHS, "Final Chess Card", tag, owner, clock, "finalchs", __FILE__), |
| 94 | device_isa8_card_interface( mconfig, *this ), m_FCH_latch_data(0) | |
| 95 | { | |
| 94 | device_isa8_card_interface( mconfig, *this ) | |
| 95 | { | |
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 352 | 352 | |
| 353 | 353 | gf1_device::gf1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 354 | 354 | acia6850_device(mconfig, GGF1, "Gravis GF1", tag, owner, clock, "gf1", __FILE__), |
| 355 | device_sound_interface( mconfig, *this ), | |
| 355 | device_sound_interface( mconfig, *this ), | |
| 356 | 356 | m_txirq_handler(*this), |
| 357 | 357 | m_rxirq_handler(*this), |
| 358 | 358 | m_wave_irq_handler(*this), |
| r250237 | r250238 | |
| 1276 | 1276 | isa16_gus_device::isa16_gus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 1277 | 1277 | device_t(mconfig, ISA16_GUS, "Gravis Ultrasound", tag, owner, clock, "isa_gus", __FILE__), |
| 1278 | 1278 | device_isa16_card_interface( mconfig, *this ), |
| 1279 | m_gf1(*this, "gf1") | |
| 1279 | m_gf1(*this, "gf1") | |
| 1280 | 1280 | { |
| 1281 | 1281 | } |
| 1282 | 1282 |
| r250237 | r250238 | |
|---|---|---|
| 162 | 162 | const device_type ST11M_HDC = &device_creator<st11m_device>; |
| 163 | 163 | |
| 164 | 164 | xt_hdc_device::xt_hdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 165 | device_t(mconfig, XT_HDC, "Generic PC-XT Fixed Disk Controller", tag, owner, clock, "xt_hdc", __FILE__), | |
| 165 | device_t(mconfig, XT_HDC, "Generic PC-XT Fixed Disk Controller", tag, owner, clock, "xt_hdc", __FILE__), | |
| 166 | 166 | m_irq_handler(*this), |
| 167 | m_drq_handler(*this) | |
| 167 | m_drq_handler(*this) | |
| 168 | 168 | { |
| 169 | 169 | m_type = STANDARD; |
| 170 | 170 | } |
| 171 | 171 | |
| 172 | 172 | xt_hdc_device::xt_hdc_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 173 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 173 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 174 | 174 | m_irq_handler(*this), |
| 175 | m_drq_handler(*this) | |
| 175 | m_drq_handler(*this) | |
| 176 | 176 | { |
| 177 | 177 | } |
| 178 | 178 | |
| r250237 | r250238 | |
| 921 | 921 | isa8_hdc_device::isa8_hdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 922 | 922 | device_t(mconfig, ISA8_HDC, "Fixed Disk Controller Card", tag, owner, clock, "hdc", __FILE__), |
| 923 | 923 | device_isa8_card_interface(mconfig, *this), |
| 924 | m_hdc(*this,"hdc") | |
| 924 | m_hdc(*this,"hdc") | |
| 925 | 925 | { |
| 926 | 926 | } |
| 927 | 927 | |
| 928 | 928 | isa8_hdc_device::isa8_hdc_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 929 | 929 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 930 | 930 | device_isa8_card_interface(mconfig, *this), |
| 931 | m_hdc(*this,"hdc") | |
| 931 | m_hdc(*this,"hdc") | |
| 932 | 932 | { |
| 933 | 933 | } |
| 934 | 934 |
| r250237 | r250238 | |
|---|---|---|
| 449 | 449 | |
| 450 | 450 | isa8_ibm_mfc_device::isa8_ibm_mfc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 451 | 451 | device_t(mconfig, ISA8_IBM_MFC, "IBM PC Music Feature Card", tag, owner, clock, "ibm_mfc", __FILE__), |
| 452 | device_isa8_card_interface(mconfig, *this), | |
| 452 | device_isa8_card_interface(mconfig, *this), | |
| 453 | 453 | m_cpu(*this, "ibm_mfc"), |
| 454 | 454 | m_ym2151(*this, "ym2151"), |
| 455 | 455 | m_d8253(*this, "d8253"), |
| r250237 | r250238 | |
|---|---|---|
| 26 | 26 | //------------------------------------------------- |
| 27 | 27 | isa8_slot_device::isa8_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 28 | 28 | device_t(mconfig, ISA8_SLOT, "ISA8_SLOT", tag, owner, clock, "isa8_slot", __FILE__), |
| 29 | device_slot_interface(mconfig, *this), | |
| 30 | m_owner(nullptr), | |
| 31 | m_isa_tag(nullptr) | |
| 29 | device_slot_interface(mconfig, *this) | |
| 32 | 30 | { |
| 33 | 31 | } |
| 34 | 32 | |
| 35 | 33 | isa8_slot_device::isa8_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 36 | 34 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 37 | device_slot_interface(mconfig, *this) | |
| 35 | device_slot_interface(mconfig, *this) | |
| 38 | 36 | { |
| 39 | 37 | } |
| 40 | 38 | |
| r250237 | r250238 | |
| 138 | 136 | isa8_device::isa8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 139 | 137 | device_t(mconfig, ISA8, "ISA8", tag, owner, clock, "isa8", __FILE__), |
| 140 | 138 | device_memory_interface(mconfig, *this), |
| 141 | m_program_config("ISA 8-bit program", ENDIANNESS_LITTLE, 8, 24, 0, nullptr), | |
| 142 | m_io_config("ISA 8-bit I/O", ENDIANNESS_LITTLE, 8, 16, 0, nullptr), | |
| 143 | m_program16_config("ISA 16-bit program", ENDIANNESS_LITTLE, 16, 24, 0, nullptr), | |
| 144 | m_io16_config("ISA 16-bit I/O", ENDIANNESS_LITTLE, 16, 16, 0, nullptr), m_maincpu(nullptr), m_iospace(nullptr), m_prgspace(nullptr), | |
| 139 | m_program_config("ISA 8-bit program", ENDIANNESS_LITTLE, 8, 24, 0, NULL), | |
| 140 | m_io_config("ISA 8-bit I/O", ENDIANNESS_LITTLE, 8, 16, 0, NULL), | |
| 141 | m_program16_config("ISA 16-bit program", ENDIANNESS_LITTLE, 16, 24, 0, NULL), | |
| 142 | m_io16_config("ISA 16-bit I/O", ENDIANNESS_LITTLE, 16, 16, 0, NULL), | |
| 145 | 143 | m_out_irq2_cb(*this), |
| 146 | 144 | m_out_irq3_cb(*this), |
| 147 | 145 | m_out_irq4_cb(*this), |
| r250237 | r250238 | |
| 150 | 148 | m_out_irq7_cb(*this), |
| 151 | 149 | m_out_drq1_cb(*this), |
| 152 | 150 | m_out_drq2_cb(*this), |
| 153 | m_out_drq3_cb(*this), | |
| 151 | m_out_drq3_cb(*this), | |
| 154 | 152 | m_write_iochck(*this) |
| 155 | 153 | { |
| 156 | 154 | for(int i=0;i<8;i++) |
| 157 | 155 | { |
| 158 | m_dma_device[i] = | |
| 156 | m_dma_device[i] = NULL; | |
| 159 | 157 | m_dma_eop[i] = false; |
| 160 | 158 | } |
| 161 | 159 | m_nmi_enabled = false; |
| r250237 | r250238 | |
| 166 | 164 | isa8_device::isa8_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 167 | 165 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 168 | 166 | device_memory_interface(mconfig, *this), |
| 169 | m_program_config("ISA 8-bit program", ENDIANNESS_LITTLE, 8, 24, 0, nullptr), | |
| 170 | m_io_config("ISA 8-bit I/O", ENDIANNESS_LITTLE, 8, 16, 0, nullptr), | |
| 171 | m_program16_config("ISA 16-bit program", ENDIANNESS_LITTLE, 16, 24, 0, nullptr), | |
| 172 | m_io16_config("ISA 16-bit I/O", ENDIANNESS_LITTLE, 16, 16, 0, nullptr), m_maincpu(nullptr), m_iospace(nullptr), m_prgspace(nullptr), | |
| 167 | m_program_config("ISA 8-bit program", ENDIANNESS_LITTLE, 8, 24, 0, NULL), | |
| 168 | m_io_config("ISA 8-bit I/O", ENDIANNESS_LITTLE, 8, 16, 0, NULL), | |
| 169 | m_program16_config("ISA 16-bit program", ENDIANNESS_LITTLE, 16, 24, 0, NULL), | |
| 170 | m_io16_config("ISA 16-bit I/O", ENDIANNESS_LITTLE, 16, 16, 0, NULL), | |
| 173 | 171 | m_out_irq2_cb(*this), |
| 174 | 172 | m_out_irq3_cb(*this), |
| 175 | 173 | m_out_irq4_cb(*this), |
| r250237 | r250238 | |
| 178 | 176 | m_out_irq7_cb(*this), |
| 179 | 177 | m_out_drq1_cb(*this), |
| 180 | 178 | m_out_drq2_cb(*this), |
| 181 | m_out_drq3_cb(*this), | |
| 179 | m_out_drq3_cb(*this), | |
| 182 | 180 | m_write_iochck(*this) |
| 183 | 181 | { |
| 184 | 182 | for(int i=0;i<8;i++) |
| 185 | 183 | { |
| 186 | m_dma_device[i] = | |
| 184 | m_dma_device[i] = NULL; | |
| 187 | 185 | m_dma_eop[i] = false; |
| 188 | 186 | } |
| 189 | 187 | m_nmi_enabled = false; |
| r250237 | r250238 | |
| 420 | 418 | |
| 421 | 419 | device_isa8_card_interface::device_isa8_card_interface(const machine_config &mconfig, device_t &device) |
| 422 | 420 | : device_slot_card_interface(mconfig, device), |
| 423 | m_isa( | |
| 421 | m_isa(NULL) | |
| 424 | 422 | { |
| 425 | 423 | } |
| 426 | 424 | |
| r250237 | r250238 | |
| 620 | 618 | //------------------------------------------------- |
| 621 | 619 | |
| 622 | 620 | device_isa16_card_interface::device_isa16_card_interface(const machine_config &mconfig, device_t &device) |
| 623 | : device_isa8_card_interface(mconfig,device) | |
| 621 | : device_isa8_card_interface(mconfig,device) | |
| 624 | 622 | { |
| 625 | 623 | } |
| 626 | 624 |
| r250237 | r250238 | |
|---|---|---|
| 14 | 14 | |
| 15 | 15 | isa8_lpt_device::isa8_lpt_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 16 | 16 | device_t(mconfig, ISA8_LPT, "Printer Adapter", tag, owner, clock, "isa_lpt", __FILE__), |
| 17 | device_isa8_card_interface(mconfig, *this), | |
| 18 | m_is_primary(false) | |
| 17 | device_isa8_card_interface(mconfig, *this) | |
| 19 | 18 | { |
| 20 | 19 | } |
| 21 | 20 |
| r250237 | r250238 | |
|---|---|---|
| 23 | 23 | |
| 24 | 24 | // 8514/A device |
| 25 | 25 | mach32_8514a_device::mach32_8514a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 26 | : mach8_device(mconfig, ATIMACH32_8514A, "ATi mach32 (2D acceleration module)", tag, owner, clock, "mach32_8514a", __FILE__), | |
| 27 | m_chip_ID(0), | |
| 28 | m_membounds(0) | |
| 26 | : mach8_device(mconfig, ATIMACH32_8514A, "ATi mach32 (2D acceleration module)", tag, owner, clock, "mach32_8514a", __FILE__) | |
| 29 | 27 | { |
| 30 | 28 | } |
| 31 | 29 | |
| 32 | 30 | mach32_8514a_device::mach32_8514a_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 33 | : mach8_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 34 | m_chip_ID(0), | |
| 35 | m_membounds(0) | |
| 31 | : mach8_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 36 | 32 | { |
| 37 | 33 | } |
| 38 | 34 |
| r250237 | r250238 | |
|---|---|---|
| 192 | 192 | mc1502_fdc_device::mc1502_fdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 193 | 193 | device_t(mconfig, MC1502_FDC, "MC-1502 floppy", tag, owner, clock, "mc1502_fdc", __FILE__), |
| 194 | 194 | device_isa8_card_interface( mconfig, *this ), |
| 195 | m_fdc(*this, "fdc") | |
| 195 | m_fdc(*this, "fdc") | |
| 196 | 196 | { |
| 197 | 197 | } |
| 198 | 198 |
| r250237 | r250238 | |
|---|---|---|
| 152 | 152 | |
| 153 | 153 | isa8_mda_device::isa8_mda_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 154 | 154 | device_t(mconfig, ISA8_MDA, "IBM Monochrome Display and Printer Adapter", tag, owner, clock, "isa_ibm_mda", __FILE__), |
| 155 | device_isa8_card_interface(mconfig, *this), m_framecnt(0), m_mode_control(0), | |
| 156 | m_update_row_type(-1), m_chr_gen(nullptr), m_vsync(0), m_hsync(0), m_pixel(0), | |
| 155 | device_isa8_card_interface(mconfig, *this), | |
| 156 | m_update_row_type(-1), | |
| 157 | 157 | m_palette(*this, "palette") |
| 158 | 158 | { |
| 159 | 159 | } |
| 160 | 160 | |
| 161 | 161 | isa8_mda_device::isa8_mda_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 162 | 162 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 163 | device_isa8_card_interface(mconfig, *this), m_framecnt(0), m_mode_control(0), | |
| 164 | m_update_row_type(-1), m_chr_gen(nullptr), m_vsync(0), m_hsync(0), m_pixel(0), | |
| 163 | device_isa8_card_interface(mconfig, *this), | |
| 164 | m_update_row_type(-1), | |
| 165 | 165 | m_palette(*this, "palette") |
| 166 | 166 | { |
| 167 | 167 | } |
| r250237 | r250238 | |
| 581 | 581 | //------------------------------------------------- |
| 582 | 582 | |
| 583 | 583 | isa8_hercules_device::isa8_hercules_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 584 | isa8_mda_device(mconfig, ISA8_HERCULES, "Hercules Graphics Card", tag, owner, clock, "isa_hercules", __FILE__) | |
| 584 | isa8_mda_device(mconfig, ISA8_HERCULES, "Hercules Graphics Card", tag, owner, clock, "isa_hercules", __FILE__) | |
| 585 | 585 | { |
| 586 | 586 | } |
| 587 | 587 | |
| r250237 | r250238 | |
| 787 | 787 | //------------------------------------------------- |
| 788 | 788 | |
| 789 | 789 | isa8_ec1840_0002_device::isa8_ec1840_0002_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 790 | isa8_mda_device( mconfig, ISA8_EC1840_0002, "EC 1840.0002 (MDA)", tag, owner, clock, "ec1840_0002", __FILE__) | |
| 790 | isa8_mda_device( mconfig, ISA8_EC1840_0002, "EC 1840.0002 (MDA)", tag, owner, clock, "ec1840_0002", __FILE__) | |
| 791 | 791 | { |
| 792 | 792 | } |
| 793 | 793 |
| r250237 | r250238 | |
|---|---|---|
| 19 | 19 | ne1000_device::ne1000_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 20 | 20 | : device_t(mconfig, NE1000, "NE1000 Network Adapter", tag, owner, clock, "ne1000", __FILE__), |
| 21 | 21 | device_isa8_card_interface(mconfig, *this), |
| 22 | m_dp8390(*this, "dp8390d"), | |
| 23 | m_irq(0) | |
| 24 | { | |
| 22 | m_dp8390(*this, "dp8390d") { | |
| 25 | 23 | } |
| 26 | 24 | |
| 27 | 25 | void ne1000_device::device_start() { |
| r250237 | r250238 | |
|---|---|---|
| 17 | 17 | return MACHINE_CONFIG_NAME(ne2000_config); |
| 18 | 18 | } |
| 19 | 19 | |
| 20 | ne2000_device::ne2000_device(const machine_config& mconfig, const char* tag, device_t* owner, UINT32 clock) | |
| 21 | : device_t(mconfig, NE2000, "NE2000 Network Adapter", tag, owner, clock, "ne2000", __FILE__), | |
| 22 | device_isa16_card_interface(mconfig, *this), | |
| 23 | m_dp8390(*this, "dp8390d"), | |
| 24 | m_irq(0) | |
| 25 | { | |
| 20 | ne2000_device::ne2000_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) | |
| 21 | : device_t(mconfig, NE2000, "NE2000 Network Adapter", tag, owner, clock, "ne2000", __FILE__), | |
| 22 | device_isa16_card_interface(mconfig, *this), | |
| 23 | m_dp8390(*this, "dp8390d") { | |
| 26 | 24 | } |
| 27 | 25 | |
| 28 | 26 | void ne2000_device::device_start() { |
| r250237 | r250238 | |
|---|---|---|
| 83 | 83 | m_upd7220(*this, "upd7220"), |
| 84 | 84 | m_palette(*this, "palette"), |
| 85 | 85 | m_ram(1024*1024), |
| 86 | m_overlay(1024) | |
| 86 | m_overlay(1024) | |
| 87 | 87 | { |
| 88 | 88 | } |
| 89 | 89 |
| r250237 | r250238 | |
|---|---|---|
| 376 | 376 | device_isa16_card_interface(mconfig, *this), |
| 377 | 377 | m_fdc(*this, OMTI_FDC_TAG), |
| 378 | 378 | m_iobase(*this, "IO_BASE"), |
| 379 | m_biosopts(*this, "BIOS_OPTS"), jumper(0), omti_state(0), status_port(0), config_port(0), mask_port(0), command_length(0), command_index(0), command_status(0), data_buffer(nullptr), | |
| 380 | data_length(0), data_index(0), diskaddr_ecc_error(0), diskaddr_format_bad_track(0), m_timer(nullptr), m_installed(false) | |
| 379 | m_biosopts(*this, "BIOS_OPTS") | |
| 381 | 380 | { |
| 382 | 381 | } |
| 383 | 382 | |
| r250237 | r250238 | |
| 1288 | 1287 | |
| 1289 | 1288 | omti_disk_image_device::omti_disk_image_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1290 | 1289 | : device_t(mconfig, OMTI_DISK, "OMTI8621 ESDI disk", tag, owner, clock, "omti_disk_image", __FILE__), |
| 1291 | device_image_interface(mconfig, *this) | |
| 1290 | device_image_interface(mconfig, *this) | |
| 1292 | 1291 | { |
| 1293 | 1292 | } |
| 1294 | 1293 |
| r250237 | r250238 | |
|---|---|---|
| 208 | 208 | device_isa8_card_interface(mconfig, *this), |
| 209 | 209 | m_cpu(*this, "maincpu"), |
| 210 | 210 | m_screen(*this, PGC_SCREEN_NAME), |
| 211 | m_palette(*this, "palette") | |
| 211 | m_palette(*this, "palette") | |
| 212 | 212 | { |
| 213 | 213 | } |
| 214 | 214 | |
| r250237 | r250238 | |
| 217 | 217 | device_isa8_card_interface(mconfig, *this), |
| 218 | 218 | m_cpu(*this, "maincpu"), |
| 219 | 219 | m_screen(*this, PGC_SCREEN_NAME), |
| 220 | m_palette(*this, "palette") | |
| 220 | m_palette(*this, "palette") | |
| 221 | 221 | { |
| 222 | 222 | } |
| 223 | 223 |
| r250237 | r250238 | |
|---|---|---|
| 684 | 684 | m_dacl(*this, "dacl"), |
| 685 | 685 | m_dacr(*this, "dacr"), |
| 686 | 686 | m_joy(*this, "pc_joy"), |
| 687 | m_cpu(*this, "sb16_cpu"), m_data_in(false), m_in_byte(0), m_data_out(false), m_out_byte(0), m_freq(0), m_mode(0), m_dac_fifo_ctrl(0), m_adc_fifo_ctrl(0), m_ctrl8(0), m_ctrl16(0), m_mpu_byte(0), | |
| 688 | m_dma8_len(0), m_dma16_len(0), m_dma8_cnt(0), m_dma16_cnt(0), m_adc_fifo_head(0), m_adc_fifo_tail(0), m_dac_fifo_head(0), m_dac_fifo_tail(0), m_adc_r(false), m_dac_r(false), m_adc_h(false), | |
| 689 | m_dac_h(false), m_irq8(false), m_irq16(false), m_irq_midi(false), m_dma8_done(false), m_dma16_done(false), m_timer(nullptr) | |
| 687 | m_cpu(*this, "sb16_cpu") | |
| 690 | 688 | { |
| 691 | 689 | } |
| 692 | 690 |
| r250237 | r250238 | |
|---|---|---|
| 1107 | 1107 | m_dacl(*this, "sbdacl"), |
| 1108 | 1108 | m_dacr(*this, "sbdacr"), |
| 1109 | 1109 | m_joy(*this, "pc_joy"), |
| 1110 | m_mdout(*this, "mdout") | |
| 1110 | m_mdout(*this, "mdout") | |
| 1111 | 1111 | { |
| 1112 | 1112 | } |
| 1113 | 1113 |
| r250237 | r250238 | |
|---|---|---|
| 319 | 319 | : device_t(mconfig, SC499, "Archive SC-499", tag, owner, clock, "sc499", __FILE__), |
| 320 | 320 | device_isa8_card_interface(mconfig, *this), |
| 321 | 321 | m_iobase(*this, "IO_BASE"), |
| 322 | m_irqdrq(*this, "IRQ_DRQ"), m_data(0), m_command(0), m_status(0), m_control(0), m_has_cartridge(0), m_is_writable(0), m_current_command(0), m_first_block_hack(0), m_nasty_readahead(0), m_read_block_pending(0), | |
| 323 | m_data_index(0), m_tape_status(0), m_data_error_counter(0), m_underrun_counter(0), m_tape_pos(0), m_ctape_block_count(0), m_ctape_block_index(0), m_image_length(0), | |
| 324 | m_image(*this, SC499_CTAPE_TAG), irq_state(), dma_drq_state(), m_timer(nullptr), m_timer1(nullptr), m_timer_type(0), m_irq(0), m_drq(0), m_installed(false) | |
| 322 | m_irqdrq(*this, "IRQ_DRQ"), | |
| 323 | m_image(*this, SC499_CTAPE_TAG) | |
| 325 | 324 | { |
| 326 | 325 | } |
| 327 | 326 |
| r250237 | r250238 | |
|---|---|---|
| 192 | 192 | m_dacl(*this, "dacl"), |
| 193 | 193 | m_dacr(*this, "dacr"), |
| 194 | 194 | m_joy(*this, "pc_joy"), |
| 195 | m_cpu(*this, "stereo_fx_cpu") | |
| 195 | m_cpu(*this, "stereo_fx_cpu") | |
| 196 | 196 | { |
| 197 | 197 | m_t1 = 0; |
| 198 | 198 | } |
| r250237 | r250238 | |
|---|---|---|
| 61 | 61 | |
| 62 | 62 | isa16_svga_cirrus_device::isa16_svga_cirrus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 63 | 63 | device_t(mconfig, ISA16_SVGA_CIRRUS, "Diamond Speedstar Pro SE ISA Graphics Card (BIOS v1.00)", tag, owner, clock, "dm_clgd5430", __FILE__), |
| 64 | device_isa16_card_interface(mconfig, *this) | |
| 64 | device_isa16_card_interface(mconfig, *this) | |
| 65 | 65 | { |
| 66 | 66 | } |
| 67 | 67 | |
| r250237 | r250238 | |
| 147 | 147 | |
| 148 | 148 | isa16_svga_cirrus_gd542x_device::isa16_svga_cirrus_gd542x_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 149 | 149 | device_t(mconfig, ISA16_SVGA_CIRRUS_GD542X, "Generic Cirrus Logic GD542x Graphics Card (BIOS v1.20)", tag, owner, clock, "clgd542x", __FILE__), |
| 150 | device_isa16_card_interface(mconfig, *this) | |
| 150 | device_isa16_card_interface(mconfig, *this) | |
| 151 | 151 | { |
| 152 | 152 | } |
| 153 | 153 |
| r250237 | r250238 | |
|---|---|---|
| 72 | 72 | |
| 73 | 73 | isa16_svga_s3_device::isa16_svga_s3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 74 | 74 | device_t(mconfig, ISA16_SVGA_S3, "Number Nine 9FX Vision 330 (S3 764) Graphics Card", tag, owner, clock, "s3_764", __FILE__), |
| 75 | device_isa16_card_interface(mconfig, *this) | |
| 75 | device_isa16_card_interface(mconfig, *this) | |
| 76 | 76 | { |
| 77 | 77 | } |
| 78 | 78 | |
| r250237 | r250238 | |
| 184 | 184 | |
| 185 | 185 | isa16_s3virge_device::isa16_s3virge_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 186 | 186 | device_t(mconfig, ISA16_S3VIRGE, "S3 ViRGE Graphics Card", tag, owner, clock, "s3virge", __FILE__), |
| 187 | device_isa16_card_interface(mconfig, *this) | |
| 187 | device_isa16_card_interface(mconfig, *this) | |
| 188 | 188 | { |
| 189 | 189 | } |
| 190 | 190 | |
| r250237 | r250238 | |
| 271 | 271 | |
| 272 | 272 | isa16_s3virgedx_device::isa16_s3virgedx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 273 | 273 | device_t(mconfig, ISA16_S3VIRGEDX, "S3 ViRGE/DX Graphics Card", tag, owner, clock, "s3virgedx", __FILE__), |
| 274 | device_isa16_card_interface(mconfig, *this) | |
| 274 | device_isa16_card_interface(mconfig, *this) | |
| 275 | 275 | { |
| 276 | 276 | } |
| 277 | 277 | |
| r250237 | r250238 | |
| 359 | 359 | |
| 360 | 360 | isa16_stealth3d2kpro_device::isa16_stealth3d2kpro_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 361 | 361 | device_t(mconfig, ISA16_DMS3D2KPRO, "Diamond Stealth 3D 2000 Pro", tag, owner, clock, "dms3d2kp", __FILE__), |
| 362 | device_isa16_card_interface(mconfig, *this) | |
| 362 | device_isa16_card_interface(mconfig, *this) | |
| 363 | 363 | { |
| 364 | 364 | } |
| 365 | 365 |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | |
| 64 | 64 | isa16_svga_tgui9680_device::isa16_svga_tgui9680_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 65 | 65 | device_t(mconfig, ISA16_SVGA_TGUI9680, "Trident TGUI9680 Graphics Card (BIOS X5.5 (02) 02/13/96)", tag, owner, clock, "tgui9680", __FILE__), |
| 66 | device_isa16_card_interface(mconfig, *this) | |
| 66 | device_isa16_card_interface(mconfig, *this) | |
| 67 | 67 | { |
| 68 | 68 | } |
| 69 | 69 |
| r250237 | r250238 | |
|---|---|---|
| 61 | 61 | |
| 62 | 62 | isa8_svga_et4k_device::isa8_svga_et4k_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 63 | 63 | device_t(mconfig, ISA8_SVGA_ET4K, "SVGA Tseng ET4000 Graphics Card", tag, owner, clock, "et4000", __FILE__), |
| 64 | device_isa8_card_interface(mconfig, *this) | |
| 64 | device_isa8_card_interface(mconfig, *this) | |
| 65 | 65 | { |
| 66 | 66 | } |
| 67 | 67 |
| r250237 | r250238 | |
|---|---|---|
| 51 | 51 | |
| 52 | 52 | isa8_vga_device::isa8_vga_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 53 | 53 | device_t(mconfig, ISA8_VGA, "IBM VGA Graphics Card", tag, owner, clock, "ibm_vga", __FILE__), |
| 54 | device_isa8_card_interface(mconfig, *this) | |
| 54 | device_isa8_card_interface(mconfig, *this) | |
| 55 | 55 | { |
| 56 | 56 | } |
| 57 | 57 |
| r250237 | r250238 | |
|---|---|---|
| 148 | 148 | |
| 149 | 149 | isa16_vga_gfxultra_device::isa16_vga_gfxultra_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 150 | 150 | device_t(mconfig, ISA16_VGA_GFXULTRA, "ATi Graphics Ultra Card", tag, owner, clock, "gfxultra", __FILE__), |
| 151 | device_isa16_card_interface(mconfig, *this) | |
| 151 | device_isa16_card_interface(mconfig, *this) | |
| 152 | 152 | { |
| 153 | 153 | } |
| 154 | 154 | |
| 155 | 155 | isa16_vga_gfxultrapro_device::isa16_vga_gfxultrapro_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 156 | 156 | device_t(mconfig, ISA16_SVGA_GFXULTRAPRO, "ATi Graphics Ultra Pro Card", tag, owner, clock, "gfxultrp", __FILE__), |
| 157 | device_isa16_card_interface(mconfig, *this) | |
| 157 | device_isa16_card_interface(mconfig, *this) | |
| 158 | 158 | { |
| 159 | 159 | } |
| 160 | 160 | |
| 161 | 161 | isa16_vga_mach64_device::isa16_vga_mach64_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 162 | 162 | device_t(mconfig, ISA16_SVGA_MACH64, "ATi mach64 Card", tag, owner, clock, "mach64", __FILE__), |
| 163 | device_isa16_card_interface(mconfig, *this) | |
| 163 | device_isa16_card_interface(mconfig, *this) | |
| 164 | 164 | { |
| 165 | 165 | } |
| 166 | 166 |
| r250237 | r250238 | |
|---|---|---|
| 303 | 303 | : device_t(mconfig, ISA8_XTIDE, "XT-IDE Fixed Drive Adapter", tag, owner, clock, "isa8_xtide", __FILE__), |
| 304 | 304 | device_isa8_card_interface( mconfig, *this ), |
| 305 | 305 | m_ata(*this, "ata"), |
| 306 | m_eeprom(*this, "eeprom") | |
| 306 | m_eeprom(*this, "eeprom") | |
| 307 | 307 | { |
| 308 | 308 | } |
| 309 | 309 |
| r250237 | r250238 | |
|---|---|---|
| 83 | 83 | device_t(mconfig, ISBC_218A, "ISBX 218a for ISBC", tag, owner, clock, "isbc_218a", __FILE__), |
| 84 | 84 | device_isbx_card_interface(mconfig, *this), |
| 85 | 85 | m_fdc(*this, I8272_TAG), |
| 86 | m_floppy0(*this, I8272_TAG":0") | |
| 86 | m_floppy0(*this, I8272_TAG":0") | |
| 87 | 87 | { |
| 88 | 88 | } |
| 89 | 89 |
| r250237 | r250238 | |
|---|---|---|
| 43 | 43 | m_write_mintr0(*this), |
| 44 | 44 | m_write_mintr1(*this), |
| 45 | 45 | m_write_mdrqt(*this), |
| 46 | m_write_mwait(*this) | |
| 46 | m_write_mwait(*this) | |
| 47 | 47 | { |
| 48 | 48 | } |
| 49 | 49 |
| r250237 | r250238 | |
|---|---|---|
| 110 | 110 | |
| 111 | 111 | kc_d002_device::kc_d002_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 112 | 112 | : device_t(mconfig, KC_D002, "D002 Bus Driver", tag, owner, clock, "kc_d002", __FILE__), |
| 113 | device_kcexp_interface( mconfig, *this ), m_slot(nullptr) | |
| 114 | { | |
| 113 | device_kcexp_interface( mconfig, *this ) | |
| 114 | { | |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | 117 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 137 | 137 | m_floppy1(*this, UPD765_TAG ":1"), |
| 138 | 138 | m_floppy2(*this, UPD765_TAG ":2"), |
| 139 | 139 | m_floppy3(*this, UPD765_TAG ":3"), |
| 140 | m_koppel_ram(*this, "koppelram"), m_reset_timer(nullptr), m_rom(nullptr), m_rom_base(0), m_enabled(0), m_connected(0), m_floppy(nullptr) | |
| 141 | { | |
| 140 | m_koppel_ram(*this, "koppelram") | |
| 141 | { | |
| 142 | 142 | } |
| 143 | 143 | |
| 144 | 144 | kc_d004_device::kc_d004_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| r250237 | r250238 | |
| 150 | 150 | m_floppy1(*this, UPD765_TAG ":1"), |
| 151 | 151 | m_floppy2(*this, UPD765_TAG ":2"), |
| 152 | 152 | m_floppy3(*this, UPD765_TAG ":3"), |
| 153 | m_koppel_ram(*this, "koppelram"), m_reset_timer(nullptr), m_rom(nullptr), m_rom_base(0), m_enabled(0), m_connected(0), m_floppy(nullptr) | |
| 154 | { | |
| 153 | m_koppel_ram(*this, "koppelram") | |
| 154 | { | |
| 155 | 155 | } |
| 156 | 156 | |
| 157 | 157 | //------------------------------------------------- |
| r250237 | r250238 | |
| 384 | 384 | |
| 385 | 385 | kc_d004_gide_device::kc_d004_gide_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 386 | 386 | : kc_d004_device(mconfig, KC_D004, "D004 Floppy Disk + GIDE Interface", tag, owner, clock, "kc_d004gide", __FILE__), |
| 387 | m_ata(*this, ATA_TAG), m_ata_data(0), m_lh(0) | |
| 388 | { | |
| 387 | m_ata(*this, ATA_TAG) | |
| 388 | { | |
| 389 | 389 | } |
| 390 | 390 | |
| 391 | 391 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 158 | 158 | device_slot_interface(mconfig, *this), |
| 159 | 159 | m_out_irq_cb(*this), |
| 160 | 160 | m_out_nmi_cb(*this), |
| 161 | m_out_halt_cb(*this) | |
| 161 | m_out_halt_cb(*this) | |
| 162 | 162 | { |
| 163 | 163 | } |
| 164 | 164 | |
| r250237 | r250238 | |
| 167 | 167 | device_slot_interface(mconfig, *this), |
| 168 | 168 | m_out_irq_cb(*this), |
| 169 | 169 | m_out_nmi_cb(*this), |
| 170 | m_out_halt_cb(*this) | |
| 170 | m_out_halt_cb(*this) | |
| 171 | 171 | { |
| 172 | 172 | } |
| 173 | 173 |
| r250237 | r250238 | |
|---|---|---|
| 44 | 44 | |
| 45 | 45 | kc_m011_device::kc_m011_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 46 | 46 | : device_t(mconfig, KC_M011, "M011 64KB RAM", tag, owner, clock, "kc_m011", __FILE__), |
| 47 | device_kcexp_interface( mconfig, *this ), m_slot(nullptr), m_mei(0), m_ram(nullptr), m_enabled(0), m_write_enabled(0), m_base(0), m_segment(0) | |
| 48 | { | |
| 47 | device_kcexp_interface( mconfig, *this ) | |
| 48 | { | |
| 49 | 49 | } |
| 50 | 50 | |
| 51 | 51 | kc_m011_device::kc_m011_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 52 | 52 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 53 | device_kcexp_interface( mconfig, *this ) | |
| 53 | device_kcexp_interface( mconfig, *this ) | |
| 54 | 54 | { |
| 55 | 55 | } |
| 56 | 56 |
| r250237 | r250238 | |
|---|---|---|
| 44 | 44 | |
| 45 | 45 | kc_8k_device::kc_8k_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 46 | 46 | : device_t(mconfig, KC_STANDARD, "Standard", tag, owner, clock, "kc_8k", __FILE__), |
| 47 | device_kcexp_interface( mconfig, *this ), m_slot(nullptr), m_mei(0), m_rom(nullptr), m_enabled(0), m_base(0) | |
| 48 | { | |
| 47 | device_kcexp_interface( mconfig, *this ) | |
| 48 | { | |
| 49 | 49 | } |
| 50 | 50 | |
| 51 | 51 | kc_8k_device::kc_8k_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 52 | 52 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 53 | device_kcexp_interface( mconfig, *this ), m_slot(nullptr), m_mei(0), m_rom(nullptr), m_enabled(0), m_base(0) | |
| 54 | { | |
| 53 | device_kcexp_interface( mconfig, *this ) | |
| 54 | { | |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | 57 | |
| r250237 | r250238 | |
| 185 | 185 | //------------------------------------------------- |
| 186 | 186 | |
| 187 | 187 | kc_m033_device::kc_m033_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 188 | : kc_8k_device(mconfig, KC_M033, "M033 TypeStar", tag, owner, clock, "kc_m033", __FILE__), m_bank(0) | |
| 189 | { | |
| 188 | : kc_8k_device(mconfig, KC_M033, "M033 TypeStar", tag, owner, clock, "kc_m033", __FILE__) | |
| 189 | { | |
| 190 | 190 | } |
| 191 | 191 | |
| 192 | 192 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 20 | 20 | : northbridge_device(mconfig, I82439TX, "Intel 82439TX", tag, owner, clock, "i82439tx", __FILE__), |
| 21 | 21 | pci_device_interface( mconfig, *this ), |
| 22 | 22 | m_cpu_tag( NULL ), |
| 23 | m_region_tag( NULL ), | |
| 24 | m_space(nullptr), | |
| 25 | m_rom(nullptr) | |
| 23 | m_region_tag( NULL ) | |
| 26 | 24 | { |
| 27 | 25 | } |
| 28 | 26 |
| r250237 | r250238 | |
|---|---|---|
| 32 | 32 | mpc105_device::mpc105_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 33 | 33 | : device_t(mconfig, MPC105, "MPC105", tag, owner, clock, "mpc105", __FILE__), |
| 34 | 34 | pci_device_interface( mconfig, *this ), |
| 35 | m_cpu_tag(nullptr), | |
| 36 | m_bank_base_default(0), | |
| 37 | m_bank_base(0), | |
| 38 | m_bank_enable(0), | |
| 39 | m_maincpu(nullptr) | |
| 35 | m_cpu_tag(NULL), | |
| 36 | m_bank_base_default(0) | |
| 40 | 37 | { |
| 41 | 38 | } |
| 42 | 39 |
| r250237 | r250238 | |
|---|---|---|
| 90 | 90 | // pci_bus_device - constructor |
| 91 | 91 | //------------------------------------------------- |
| 92 | 92 | pci_bus_device::pci_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 93 | device_t(mconfig, PCI_BUS, "PCI Bus", tag, owner, clock, "pci_bus", __FILE__), m_busnum(0), | |
| 94 | m_father(NULL), m_address(0), m_devicenum(0), m_busnumber(0), m_busnumaddr(nullptr) | |
| 93 | device_t(mconfig, PCI_BUS, "PCI Bus", tag, owner, clock, "pci_bus", __FILE__), | |
| 94 | m_father(NULL) | |
| 95 | 95 | { |
| 96 | 96 | for (int i = 0; i < ARRAY_LENGTH(m_devtag); i++) { |
| 97 | 97 | m_devtag[i]= NULL; |
| r250237 | r250238 | |
|---|---|---|
| 141 | 141 | m_ds12885(*this, "rtc"), |
| 142 | 142 | m_pc_kbdc(*this, "pc_kbdc"), |
| 143 | 143 | m_ide(*this, "ide"), |
| 144 | m_ide2(*this, "ide2") | |
| 144 | m_ide2(*this, "ide2") | |
| 145 | 145 | { |
| 146 | 146 | } |
| 147 | 147 | /********************************************************** |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | //------------------------------------------------- |
| 29 | 29 | macpds_slot_device::macpds_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, MACPDS_SLOT, "Mac 68000 Processor-Direct Slot", tag, owner, clock, "macpds_slot", __FILE__), |
| 31 | device_slot_interface(mconfig, *this), | |
| 32 | m_macpds_tag(nullptr), | |
| 33 | m_macpds_slottag(nullptr) | |
| 31 | device_slot_interface(mconfig, *this) | |
| 34 | 32 | { |
| 35 | 33 | } |
| 36 | 34 | |
| 37 | 35 | macpds_slot_device::macpds_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 38 | 36 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 39 | device_slot_interface(mconfig, *this) | |
| 37 | device_slot_interface(mconfig, *this) | |
| 40 | 38 | { |
| 41 | 39 | } |
| 42 | 40 | |
| r250237 | r250238 | |
| 79 | 77 | //------------------------------------------------- |
| 80 | 78 | |
| 81 | 79 | macpds_device::macpds_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 82 | device_t(mconfig, MACPDS, "MACPDS", tag, owner, clock, "macpds", __FILE__) | |
| 80 | device_t(mconfig, MACPDS, "MACPDS", tag, owner, clock, "macpds", __FILE__) | |
| 83 | 81 | { |
| 84 | 82 | } |
| 85 | 83 | |
| 86 | 84 | macpds_device::macpds_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 87 | device_t(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 85 | device_t(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 88 | 86 | { |
| 89 | 87 | } |
| 90 | 88 | //------------------------------------------------- |
| r250237 | r250238 | |
| 150 | 148 | |
| 151 | 149 | device_macpds_card_interface::device_macpds_card_interface(const machine_config &mconfig, device_t &device) |
| 152 | 150 | : device_slot_card_interface(mconfig, device), |
| 153 | m_macpds(nullptr), | |
| 154 | m_macpds_tag(nullptr), m_macpds_slottag(nullptr), m_next(nullptr) | |
| 151 | m_macpds(NULL), | |
| 152 | m_macpds_tag(NULL) | |
| 155 | 153 | { |
| 156 | 154 | } |
| 157 | 155 |
| r250237 | r250238 | |
|---|---|---|
| 89 | 89 | macpds_sedisplay_device::macpds_sedisplay_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 90 | 90 | device_t(mconfig, PDS_SEDISPLAY, "Radius SE Full Page Display", tag, owner, clock, "pds_sefp", __FILE__), |
| 91 | 91 | device_video_interface(mconfig, *this), |
| 92 | device_macpds_card_interface(mconfig, *this) | |
| 92 | device_macpds_card_interface(mconfig, *this) | |
| 93 | 93 | { |
| 94 | 94 | m_assembled_tag = std::string(tag).append(":").append(SEDISPLAY_SCREEN_NAME); |
| 95 | 95 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 98 | 98 | macpds_sedisplay_device::macpds_sedisplay_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 99 | 99 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 100 | 100 | device_video_interface(mconfig, *this), |
| 101 | device_macpds_card_interface(mconfig, *this) | |
| 101 | device_macpds_card_interface(mconfig, *this) | |
| 102 | 102 | { |
| 103 | 103 | m_assembled_tag = std::string(tag).append(":").append(SEDISPLAY_SCREEN_NAME); |
| 104 | 104 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | md_std_eeprom_device::md_std_eeprom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 64 | 64 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 65 | 65 | device_md_cart_interface( mconfig, *this ), |
| 66 | m_i2cmem(*this, "i2cmem"), m_i2c_mem(0), m_i2c_clk(0) | |
| 67 | { | |
| 66 | m_i2cmem(*this, "i2cmem") | |
| 67 | { | |
| 68 | 68 | } |
| 69 | 69 | |
| 70 | 70 | md_std_eeprom_device::md_std_eeprom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 71 | 71 | : device_t(mconfig, MD_STD_EEPROM, "MD Standard cart + EEPROM", tag, owner, clock, "md_std_eeprom", __FILE__), |
| 72 | 72 | device_md_cart_interface( mconfig, *this ), |
| 73 | m_i2cmem(*this, "i2cmem"), m_i2c_mem(0), m_i2c_clk(0) | |
| 74 | { | |
| 73 | m_i2cmem(*this, "i2cmem") | |
| 74 | { | |
| 75 | 75 | } |
| 76 | 76 | |
| 77 | 77 | md_eeprom_nbajam_device::md_eeprom_nbajam_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 35 | 35 | md_rom_ggenie_device::md_rom_ggenie_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 36 | 36 | : device_t(mconfig, MD_ROM_GAMEGENIE, "MD Game Genie", tag, owner, clock, "md_ggenie", __FILE__), |
| 37 | 37 | device_md_cart_interface( mconfig, *this ), |
| 38 | m_exp(*this, "subslot"), m_gg_bypass(0), m_reg_enable(0) | |
| 39 | { | |
| 38 | m_exp(*this, "subslot") | |
| 39 | { | |
| 40 | 40 | } |
| 41 | 41 | |
| 42 | 42 |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | // Micro Machines 2, Micro Machines Military |
| 60 | 60 | md_seprom_codemast_device::md_seprom_codemast_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 61 | 61 | : md_jcart_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 62 | m_i2cmem(*this, "i2cmem"), m_i2c_mem(0), m_i2c_clk(0) | |
| 63 | { | |
| 62 | m_i2cmem(*this, "i2cmem") | |
| 63 | { | |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | md_seprom_codemast_device::md_seprom_codemast_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 67 | 67 | : md_jcart_device(mconfig, MD_SEPROM_CODEMAST, "MD J-Cart games + SEPROM", tag, owner, clock, "md_seprom_codemast", __FILE__), |
| 68 | m_i2cmem(*this, "i2cmem"), m_i2c_mem(0), m_i2c_clk(0) | |
| 69 | { | |
| 68 | m_i2cmem(*this, "i2cmem") | |
| 69 | { | |
| 70 | 70 | } |
| 71 | 71 | |
| 72 | 72 | // Micro Machines 96 |
| r250237 | r250238 | |
|---|---|---|
| 64 | 64 | //------------------------------------------------- |
| 65 | 65 | |
| 66 | 66 | device_md_cart_interface::device_md_cart_interface(const machine_config &mconfig, device_t &device) |
| 67 | : device_slot_card_interface(mconfig, device), | |
| 67 | : device_slot_card_interface(mconfig, device), | |
| 68 | 68 | m_rom(NULL), |
| 69 | 69 | m_rom_size(0) |
| 70 | 70 | { |
| r250237 | r250238 | |
| 164 | 164 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 165 | 165 | device_image_interface(mconfig, *this), |
| 166 | 166 | device_slot_interface(mconfig, *this), |
| 167 | m_type(SEGA_STD), | |
| 167 | m_type(SEGA_STD), | |
| 168 | 168 | m_must_be_loaded(1) |
| 169 | 169 | { |
| 170 | 170 | } |
| r250237 | r250238 | |
|---|---|---|
| 86 | 86 | } |
| 87 | 87 | |
| 88 | 88 | md_rom_ssf2_device::md_rom_ssf2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 89 | : md_std_rom_device(mconfig, MD_ROM_SSF2, "MD Super SF2", tag, owner, clock, "md_rom_ssf2", __FILE__), m_lastoff(0), m_lastdata(0) | |
| 90 | { | |
| 89 | : md_std_rom_device(mconfig, MD_ROM_SSF2, "MD Super SF2", tag, owner, clock, "md_rom_ssf2", __FILE__) | |
| 90 | { | |
| 91 | 91 | } |
| 92 | 92 | |
| 93 | 93 | md_rom_cm2in1_device::md_rom_cm2in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 94 | : md_std_rom_device(mconfig, MD_ROM_CM2IN1, "MD Codemasters 2in1", tag, owner, clock, "md_rom_cm2in1", __FILE__), m_base(0) | |
| 95 | { | |
| 94 | : md_std_rom_device(mconfig, MD_ROM_CM2IN1, "MD Codemasters 2in1", tag, owner, clock, "md_rom_cm2in1", __FILE__) | |
| 95 | { | |
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | md_rom_mcpirate_device::md_rom_mcpirate_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 99 | : md_std_rom_device(mconfig, MD_ROM_MCPIR, "MD Pirate Multicarts (Various)", tag, owner, clock, "md_rom_mcpirate", __FILE__), m_bank(0) | |
| 100 | { | |
| 99 | : md_std_rom_device(mconfig, MD_ROM_MCPIR, "MD Pirate Multicarts (Various)", tag, owner, clock, "md_rom_mcpirate", __FILE__) | |
| 100 | { | |
| 101 | 101 | } |
| 102 | 102 | |
| 103 | 103 | md_rom_bugslife_device::md_rom_bugslife_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 121 | 121 | } |
| 122 | 122 | |
| 123 | 123 | md_rom_smw64_device::md_rom_smw64_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 124 | : md_std_rom_device(mconfig, MD_ROM_SMW64, "MD Super Mario World 64", tag, owner, clock, "md_rom_smw64", __FILE__), m_latch0(0), m_latch1(0) | |
| 125 | { | |
| 124 | : md_std_rom_device(mconfig, MD_ROM_SMW64, "MD Super Mario World 64", tag, owner, clock, "md_rom_smw64", __FILE__) | |
| 125 | { | |
| 126 | 126 | } |
| 127 | 127 | |
| 128 | 128 | md_rom_sbubl_device::md_rom_sbubl_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 156 | 156 | } |
| 157 | 157 | |
| 158 | 158 | md_rom_chinf3_device::md_rom_chinf3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 159 | : md_std_rom_device(mconfig, MD_ROM_CHINF3, "MD Chinese Fighter 3", tag, owner, clock, "md_rom_chinf3", __FILE__), m_bank(0) | |
| 160 | { | |
| 159 | : md_std_rom_device(mconfig, MD_ROM_CHINF3, "MD Chinese Fighter 3", tag, owner, clock, "md_rom_chinf3", __FILE__) | |
| 160 | { | |
| 161 | 161 | } |
| 162 | 162 | |
| 163 | 163 | md_rom_16mj2_device::md_rom_16mj2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 176 | 176 | } |
| 177 | 177 | |
| 178 | 178 | md_rom_lion2_device::md_rom_lion2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 179 | : md_std_rom_device(mconfig, MD_ROM_LION2, "MD Lion King 2", tag, owner, clock, "md_rom_lion2", __FILE__), m_prot1_data(0), m_prot2_data(0) | |
| 180 | { | |
| 179 | : md_std_rom_device(mconfig, MD_ROM_LION2, "MD Lion King 2", tag, owner, clock, "md_rom_lion2", __FILE__) | |
| 180 | { | |
| 181 | 181 | } |
| 182 | 182 | |
| 183 | 183 | md_rom_lion3_device::md_rom_lion3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 184 | : md_std_rom_device(mconfig, MD_ROM_LION3, "MD Lion King 3", tag, owner, clock, "md_rom_lion3", __FILE__), m_bank(0) | |
| 185 | { | |
| 184 | : md_std_rom_device(mconfig, MD_ROM_LION3, "MD Lion King 3", tag, owner, clock, "md_rom_lion3", __FILE__) | |
| 185 | { | |
| 186 | 186 | } |
| 187 | 187 | |
| 188 | 188 | md_rom_pokea_device::md_rom_pokea_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 191 | 191 | } |
| 192 | 192 | |
| 193 | 193 | md_rom_pokestad_device::md_rom_pokestad_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 194 | : md_std_rom_device(mconfig, MD_ROM_POKESTAD, "MD Pokemon Stadium", tag, owner, clock, "md_rom_pokestad", __FILE__), m_bank(0) | |
| 195 | { | |
| 194 | : md_std_rom_device(mconfig, MD_ROM_POKESTAD, "MD Pokemon Stadium", tag, owner, clock, "md_rom_pokestad", __FILE__) | |
| 195 | { | |
| 196 | 196 | } |
| 197 | 197 | |
| 198 | 198 | md_rom_realtec_device::md_rom_realtec_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 199 | : md_std_rom_device(mconfig, MD_ROM_REALTEC, "MD Realtec", tag, owner, clock, "md_rom_realtec", __FILE__), m_bank_addr(0), m_bank_size(0), m_old_bank_addr(0) | |
| 200 | { | |
| 199 | : md_std_rom_device(mconfig, MD_ROM_REALTEC, "MD Realtec", tag, owner, clock, "md_rom_realtec", __FILE__) | |
| 200 | { | |
| 201 | 201 | } |
| 202 | 202 | |
| 203 | 203 | md_rom_redcl_device::md_rom_redcl_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 206 | 206 | } |
| 207 | 207 | |
| 208 | 208 | md_rom_squir_device::md_rom_squir_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 209 | : md_std_rom_device(mconfig, MD_ROM_SQUIR, "MD Squirrel King", tag, owner, clock, "md_rom_squir", __FILE__), m_latch(0) | |
| 210 | { | |
| 209 | : md_std_rom_device(mconfig, MD_ROM_SQUIR, "MD Squirrel King", tag, owner, clock, "md_rom_squir", __FILE__) | |
| 210 | { | |
| 211 | 211 | } |
| 212 | 212 | |
| 213 | 213 | md_rom_tekkensp_device::md_rom_tekkensp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 214 | : md_std_rom_device(mconfig, MD_ROM_TEKKENSP, "MD Tekken Special", tag, owner, clock, "md_rom_tekkensp", __FILE__), m_reg(0) | |
| 215 | { | |
| 214 | : md_std_rom_device(mconfig, MD_ROM_TEKKENSP, "MD Tekken Special", tag, owner, clock, "md_rom_tekkensp", __FILE__) | |
| 215 | { | |
| 216 | 216 | } |
| 217 | 217 | |
| 218 | 218 | md_rom_topf_device::md_rom_topf_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 219 | : md_std_rom_device(mconfig, MD_ROM_TOPF, "MD Top Fighter", tag, owner, clock, "md_rom_topf", __FILE__), m_latch(0) | |
| 220 | { | |
| 219 | : md_std_rom_device(mconfig, MD_ROM_TOPF, "MD Top Fighter", tag, owner, clock, "md_rom_topf", __FILE__) | |
| 220 | { | |
| 221 | 221 | } |
| 222 | 222 | |
| 223 | 223 | md_rom_radica_device::md_rom_radica_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 224 | : md_std_rom_device(mconfig, MD_ROM_RADICA, "MD Radica TV games", tag, owner, clock, "md_rom_radica", __FILE__), m_bank(0) | |
| 225 | { | |
| 224 | : md_std_rom_device(mconfig, MD_ROM_RADICA, "MD Radica TV games", tag, owner, clock, "md_rom_radica", __FILE__) | |
| 225 | { | |
| 226 | 226 | } |
| 227 | 227 | |
| 228 | 228 | md_rom_beggarp_device::md_rom_beggarp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 229 | : md_std_rom_device(mconfig, MD_ROM_BEGGARP, "MD Beggar Prince", tag, owner, clock, "md_rom_beggarp", __FILE__), m_mode(0), m_lock(0) | |
| 230 | { | |
| 229 | : md_std_rom_device(mconfig, MD_ROM_BEGGARP, "MD Beggar Prince", tag, owner, clock, "md_rom_beggarp", __FILE__) | |
| 230 | { | |
| 231 | 231 | } |
| 232 | 232 | |
| 233 | 233 | md_rom_wukong_device::md_rom_wukong_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 234 | : md_std_rom_device(mconfig, MD_ROM_WUKONG, "MD Legend of Wukong", tag, owner, clock, "md_rom_wukong", __FILE__), m_mode(0) | |
| 235 | { | |
| 234 | : md_std_rom_device(mconfig, MD_ROM_WUKONG, "MD Legend of Wukong", tag, owner, clock, "md_rom_wukong", __FILE__) | |
| 235 | { | |
| 236 | 236 | } |
| 237 | 237 | |
| 238 | 238 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 177 | 177 | |
| 178 | 178 | md_eeprom_stm95_device::md_eeprom_stm95_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 179 | 179 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 180 | device_md_cart_interface( mconfig, *this ), m_rdcnt(0) | |
| 181 | { | |
| 180 | device_md_cart_interface( mconfig, *this ) | |
| 181 | { | |
| 182 | 182 | } |
| 183 | 183 | |
| 184 | 184 | md_eeprom_stm95_device::md_eeprom_stm95_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 185 | 185 | : device_t(mconfig, MD_EEPROM_STM95, "MD Cart + EEPROM STM95", tag, owner, clock, "md_eeprom_stm95", __FILE__), |
| 186 | device_md_cart_interface( mconfig, *this ), m_rdcnt(0) | |
| 187 | { | |
| 186 | device_md_cart_interface( mconfig, *this ) | |
| 187 | { | |
| 188 | 188 | } |
| 189 | 189 | |
| 190 | 190 |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 41 | 41 | device_md_cart_interface( mconfig, *this ), |
| 42 | 42 | m_svp(*this, "svp"), |
| 43 | m_test_ipt(*this, "MEMORY_TEST"), m_emu_status(0), m_xst(0), m_xst2(0) | |
| 44 | { | |
| 43 | m_test_ipt(*this, "MEMORY_TEST") | |
| 44 | { | |
| 45 | 45 | } |
| 46 | 46 | |
| 47 | 47 | md_rom_svp_device::md_rom_svp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 48 | 48 | : device_t(mconfig, MD_ROM_SVP, "MD Virtua Racing", tag, owner, clock, "md_rom_svp", __FILE__), |
| 49 | 49 | device_md_cart_interface( mconfig, *this ), |
| 50 | 50 | m_svp(*this, "svp"), |
| 51 | m_test_ipt(*this, "MEMORY_TEST"), m_emu_status(0), m_xst(0), m_xst2(0) | |
| 52 | { | |
| 51 | m_test_ipt(*this, "MEMORY_TEST") | |
| 52 | { | |
| 53 | 53 | } |
| 54 | 54 | |
| 55 | 55 |
| r250237 | r250238 | |
|---|---|---|
| 6 | 6 | |
| 7 | 7 | midi_port_device::midi_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 8 | 8 | : device_t(mconfig, MIDI_PORT, "Midi Port", tag, owner, clock, "midi_port", __FILE__), |
| 9 | device_slot_interface(mconfig, *this), | |
| 10 | m_rxd(0), | |
| 9 | device_slot_interface(mconfig, *this), | |
| 11 | 10 | m_rxd_handler(*this), |
| 12 | 11 | m_dev(NULL) |
| 13 | 12 | { |
| r250237 | r250238 | |
|---|---|---|
| 140 | 140 | |
| 141 | 141 | |
| 142 | 142 | msx_cart_disk_type1::msx_cart_disk_type1(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname) |
| 143 | : msx_cart_disk_wd(mconfig, type, name, tag, owner, clock, shortname), m_side_control(0) | |
| 144 | , m_control(0) | |
| 143 | : msx_cart_disk_wd(mconfig, type, name, tag, owner, clock, shortname) | |
| 144 | , m_control(0) | |
| 145 | 145 | { |
| 146 | 146 | } |
| 147 | 147 |
| r250237 | r250238 | |
|---|---|---|
| 8 | 8 | |
| 9 | 9 | |
| 10 | 10 | msx_audio_kbdc_port_device::msx_audio_kbdc_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 11 | : device_t(mconfig, MSX_AUDIO_KBDC_PORT, "MSX Audio keyboard connector port", tag, owner, clock, "msx_audio_kbdc_port", __FILE__), | |
| 12 | device_slot_interface(mconfig, *this), | |
| 13 | m_keyboard(NULL) | |
| 11 | : device_t(mconfig, MSX_AUDIO_KBDC_PORT, "MSX Audio keyboard connector port", tag, owner, clock, "msx_audio_kbdc_port", __FILE__) | |
| 12 | , device_slot_interface(mconfig, *this) | |
| 14 | 13 | { |
| 15 | 14 | } |
| 16 | 15 |
| r250237 | r250238 | |
|---|---|---|
| 10 | 10 | |
| 11 | 11 | neogeo_banked_cart_device::neogeo_banked_cart_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 12 | 12 | : device_t(mconfig, NEOGEO_BANKED_CART, "NeoGeo Banked Cartridge", tag, owner, clock, "neogeo_banked_cart", __FILE__), |
| 13 | m_bank_cartridge(0), | |
| 14 | m_main_cpu_bank_address(0), | |
| 15 | m_region(0), | |
| 16 | m_region_size(0) | |
| 13 | m_bank_cartridge(0), | |
| 14 | m_region(0) | |
| 17 | 15 | |
| 18 | 16 | { |
| 19 | 17 | } |
| r250237 | r250238 | |
|---|---|---|
| 10 | 10 | |
| 11 | 11 | |
| 12 | 12 | ngbootleg_prot_device::ngbootleg_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 13 | : device_t(mconfig, NGBOOTLEG_PROT, "NeoGeo Protection (Bootleg)", tag, owner, clock, "ngbootleg_prot", __FILE__), | |
| 14 | kof2k3_overlay(0), | |
| 15 | m_mainrom(NULL), | |
| 16 | m_fixedrom(NULL), | |
| 17 | m_bankdev(NULL) | |
| 13 | : device_t(mconfig, NGBOOTLEG_PROT, "NeoGeo Protection (Bootleg)", tag, owner, clock, "ngbootleg_prot", __FILE__) | |
| 18 | 14 | { |
| 19 | 15 | } |
| 20 | 16 |
| r250237 | r250238 | |
|---|---|---|
| 10 | 10 | |
| 11 | 11 | |
| 12 | 12 | cmc_prot_device::cmc_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 13 | : device_t(mconfig, CMC_PROT, "NeoGeo Protection (CMC)", tag, owner, clock, "cmc_prot", __FILE__), | |
| 14 | type0_t03(NULL), | |
| 15 | type0_t12(NULL), | |
| 16 | type1_t03(NULL), | |
| 17 | type1_t12(NULL), | |
| 18 | address_8_15_xor1(NULL), | |
| 19 | address_8_15_xor2(NULL), | |
| 20 | address_16_23_xor1(NULL), | |
| 21 | address_16_23_xor2(NULL), | |
| 22 | address_0_7_xor(NULL) | |
| 13 | : device_t(mconfig, CMC_PROT, "NeoGeo Protection (CMC)", tag, owner, clock, "cmc_prot", __FILE__) | |
| 23 | 14 | { |
| 24 | 15 | } |
| 25 | 16 |
| r250237 | r250238 | |
|---|---|---|
| 10 | 10 | |
| 11 | 11 | |
| 12 | 12 | fatfury2_prot_device::fatfury2_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 13 | : device_t(mconfig, FATFURY2_PROT, "NeoGeo Protection (Fatal Fury 2)", tag, owner, clock, "fatfury2_prot", __FILE__), | |
| 14 | m_bankdev(NULL), | |
| 15 | m_fatfury2_prot_data(0) | |
| 13 | : device_t(mconfig, FATFURY2_PROT, "NeoGeo Protection (Fatal Fury 2)", tag, owner, clock, "fatfury2_prot", __FILE__) | |
| 16 | 14 | { |
| 17 | 15 | } |
| 18 | 16 |
| r250237 | r250238 | |
|---|---|---|
| 11 | 11 | |
| 12 | 12 | |
| 13 | 13 | kof98_prot_device::kof98_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 14 | : device_t(mconfig, KOF98_PROT, "NeoGeo Protection (KOF98)", tag, owner, clock, "kof98_prot", __FILE__), | |
| 15 | kof98_prot_state(0) | |
| 14 | : device_t(mconfig, KOF98_PROT, "NeoGeo Protection (KOF98)", tag, owner, clock, "kof98_prot", __FILE__) | |
| 16 | 15 | { |
| 17 | 16 | } |
| 18 | 17 |
| r250237 | r250238 | |
|---|---|---|
| 9 | 9 | |
| 10 | 10 | |
| 11 | 11 | mslugx_prot_device::mslugx_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 12 | : device_t(mconfig, MSLUGX_PROT, "NeoGeo Protection (Metal Slug X)", tag, owner, clock, "mslugx_prot", __FILE__), | |
| 13 | m_mslugx_counter(0), | |
| 14 | m_mslugx_command(0) | |
| 12 | : device_t(mconfig, MSLUGX_PROT, "NeoGeo Protection (Metal Slug X)", tag, owner, clock, "mslugx_prot", __FILE__) | |
| 15 | 13 | { |
| 16 | 14 | } |
| 17 | 15 |
| r250237 | r250238 | |
|---|---|---|
| 9 | 9 | //------------------------------------------------- |
| 10 | 10 | |
| 11 | 11 | device_neogeo_cart_interface::device_neogeo_cart_interface(const machine_config &mconfig, device_t &device) |
| 12 | : device_slot_card_interface(mconfig, device), | |
| 13 | m_sprite_gfx_address_mask(0) | |
| 14 | /* | |
| 15 | m_rom(NULL), | |
| 16 | m_fixed(NULL), | |
| 17 | m_sprites(NULL), | |
| 18 | m_sprites_optimized(NULL), | |
| 19 | m_audio(NULL), | |
| 20 | m_ym(NULL), | |
| 21 | m_ymdelta(NULL), | |
| 22 | m_audiocrypt(NULL) | |
| 23 | */ | |
| 12 | : device_slot_card_interface(mconfig, device) | |
| 13 | /* | |
| 14 | m_rom(NULL), | |
| 15 | m_fixed(NULL), | |
| 16 | m_sprites(NULL), | |
| 17 | m_sprites_optimized(NULL), | |
| 18 | m_audio(NULL), | |
| 19 | m_ym(NULL), | |
| 20 | m_ymdelta(NULL), | |
| 21 | m_audiocrypt(NULL) | |
| 22 | */ | |
| 24 | 23 | { |
| 25 | 24 | } |
| 26 | 25 |
| r250237 | r250238 | |
|---|---|---|
| 11 | 11 | |
| 12 | 12 | |
| 13 | 13 | pvc_prot_device::pvc_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 14 | : device_t(mconfig, PVC_PROT, "NeoGeo Protection (PVC)", tag, owner, clock, "pvc_prot", __FILE__), | |
| 15 | m_bankdev(NULL) | |
| 14 | : device_t(mconfig, PVC_PROT, "NeoGeo Protection (PVC)", tag, owner, clock, "pvc_prot", __FILE__) | |
| 16 | 15 | { |
| 17 | 16 | } |
| 18 | 17 |
| r250237 | r250238 | |
|---|---|---|
| 11 | 11 | |
| 12 | 12 | |
| 13 | 13 | sbp_prot_device::sbp_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 14 | : device_t(mconfig, SBP_PROT, "NeoGeo Protection (Super Bubble Pop)", tag, owner, clock, "sbp_prot", __FILE__), | |
| 15 | m_mainrom(NULL) | |
| 14 | : device_t(mconfig, SBP_PROT, "NeoGeo Protection (Super Bubble Pop)", tag, owner, clock, "sbp_prot", __FILE__) | |
| 16 | 15 | { |
| 17 | 16 | } |
| 18 | 17 |
| r250237 | r250238 | |
|---|---|---|
| 9 | 9 | |
| 10 | 10 | |
| 11 | 11 | sma_prot_device::sma_prot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 12 | : device_t(mconfig, SMA_PROT, "NeoGeo SMA Cartridge", tag, owner, clock, "sma_prot", __FILE__), | |
| 13 | m_bankdev(NULL), | |
| 14 | m_sma_rng(0) | |
| 12 | : device_t(mconfig, SMA_PROT, "NeoGeo SMA Cartridge", tag, owner, clock, "sma_prot", __FILE__) | |
| 15 | 13 | { |
| 16 | 14 | } |
| 17 | 15 |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | |
| 34 | 34 | |
| 35 | 35 | nes_action53_device::nes_action53_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 36 | : nes_nrom_device(mconfig, NES_ACTION53, "NES Cart Action 53 PCB", tag, owner, clock, "nes_action53", __FILE__), | |
| 37 | m_sel(0) | |
| 38 | { | |
| 36 | : nes_nrom_device(mconfig, NES_ACTION53, "NES Cart Action 53 PCB", tag, owner, clock, "nes_action53", __FILE__) | |
| 37 | { | |
| 39 | 38 | } |
| 40 | 39 | |
| 41 | 40 |
| r250237 | r250238 | |
|---|---|---|
| 41 | 41 | aladdin_cart_interface::aladdin_cart_interface(const machine_config &mconfig, device_t &device) |
| 42 | 42 | : device_slot_card_interface(mconfig, device), |
| 43 | 43 | m_rom(NULL), |
| 44 | m_rom_size(0), | |
| 45 | m_lobank(0), | |
| 46 | m_hibank(0), | |
| 44 | m_rom_size(0), | |
| 47 | 45 | m_rom_mask(0xff) |
| 48 | 46 | { |
| 49 | 47 | } |
| r250237 | r250238 | |
| 69 | 67 | nes_aladdin_slot_device::nes_aladdin_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 70 | 68 | device_t(mconfig, NES_ALADDIN_SLOT, "NES Aladdin Deck Enhancer Cartridge Slot", tag, owner, clock, "nes_ade_slot", __FILE__), |
| 71 | 69 | device_image_interface(mconfig, *this), |
| 72 | device_slot_interface(mconfig, *this) | |
| 70 | device_slot_interface(mconfig, *this) | |
| 73 | 71 | { |
| 74 | 72 | } |
| 75 | 73 | |
| r250237 | r250238 | |
| 196 | 194 | } |
| 197 | 195 | |
| 198 | 196 | nes_algq_rom_device::nes_algq_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 199 | : nes_algn_rom_device(mconfig, NES_ALGQ_ROM, "NES Aladdin Deck Enhancer ALGQ ROM", tag, owner, clock, "nes_algq_rom", __FILE__), m_bank_base(0) | |
| 200 | { | |
| 197 | : nes_algn_rom_device(mconfig, NES_ALGQ_ROM, "NES Aladdin Deck Enhancer ALGQ ROM", tag, owner, clock, "nes_algq_rom", __FILE__) | |
| 198 | { | |
| 201 | 199 | } |
| 202 | 200 | |
| 203 | 201 | void nes_algn_rom_device::device_start() |
| r250237 | r250238 | |
|---|---|---|
| 49 | 49 | } |
| 50 | 50 | |
| 51 | 51 | nes_maxi15_device::nes_maxi15_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 52 | : nes_nrom_device(mconfig, NES_MAXI15, "NES Cart AVE Maxi 15 PCB", tag, owner, clock, "nes_maxi15", __FILE__), m_reg(0), m_bank(0) | |
| 53 | { | |
| 52 | : nes_nrom_device(mconfig, NES_MAXI15, "NES Cart AVE Maxi 15 PCB", tag, owner, clock, "nes_maxi15", __FILE__) | |
| 53 | { | |
| 54 | 54 | } |
| 55 | 55 | |
| 56 | 56 |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | |
| 60 | 60 | |
| 61 | 61 | nes_oekakids_device::nes_oekakids_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 62 | : nes_nrom_device(mconfig, NES_OEKAKIDS, "NES Cart Bandai Oeka Kids PCB", tag, owner, clock, "nes_oeka", __FILE__), m_reg(0), m_latch(0) | |
| 63 | { | |
| 62 | : nes_nrom_device(mconfig, NES_OEKAKIDS, "NES Cart Bandai Oeka Kids PCB", tag, owner, clock, "nes_oeka", __FILE__) | |
| 63 | { | |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | nes_fcg_device::nes_fcg_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 67 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 68 | { | |
| 67 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 68 | { | |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | 71 | nes_fcg_device::nes_fcg_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 72 | : nes_nrom_device(mconfig, NES_FCG, "NES Cart Bandai FCG PCB", tag, owner, clock, "nes_fcg", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 73 | { | |
| 72 | : nes_nrom_device(mconfig, NES_FCG, "NES Cart Bandai FCG PCB", tag, owner, clock, "nes_fcg", __FILE__) | |
| 73 | { | |
| 74 | 74 | } |
| 75 | 75 | |
| 76 | 76 | nes_lz93d50_device::nes_lz93d50_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| r250237 | r250238 | |
| 85 | 85 | |
| 86 | 86 | nes_lz93d50_24c01_device::nes_lz93d50_24c01_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 87 | 87 | : nes_lz93d50_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 88 | m_i2cmem(*this, "i2cmem"), m_i2c_dir(0) | |
| 89 | { | |
| 88 | m_i2cmem(*this, "i2cmem") | |
| 89 | { | |
| 90 | 90 | } |
| 91 | 91 | |
| 92 | 92 | nes_lz93d50_24c01_device::nes_lz93d50_24c01_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 93 | 93 | : nes_lz93d50_device(mconfig, NES_LZ93D50_24C01, "NES Cart Bandai LZ93D50 + 24C01 PCB", tag, owner, clock, "nes_lz93d50_ep1", __FILE__), |
| 94 | m_i2cmem(*this, "i2cmem"), m_i2c_dir(0) | |
| 95 | { | |
| 94 | m_i2cmem(*this, "i2cmem") | |
| 95 | { | |
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | nes_lz93d50_24c02_device::nes_lz93d50_24c02_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 32 | 32 | |
| 33 | 33 | |
| 34 | 34 | nes_benshieng_device::nes_benshieng_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 35 | : nes_nrom_device(mconfig, NES_BENSHIENG, "NES Cart Benshieng PCB", tag, owner, clock, "nes_benshieng", __FILE__), | |
| 36 | m_dipsetting(0) | |
| 37 | { | |
| 35 | : nes_nrom_device(mconfig, NES_BENSHIENG, "NES Cart Benshieng PCB", tag, owner, clock, "nes_benshieng", __FILE__) | |
| 36 | { | |
| 38 | 37 | } |
| 39 | 38 | |
| 40 | 39 |
| r250237 | r250238 | |
|---|---|---|
| 66 | 66 | } |
| 67 | 67 | |
| 68 | 68 | nes_sc127_device::nes_sc127_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 69 | : nes_nrom_device(mconfig, NES_SC127, "NES Cart SC-127 PCB", tag, owner, clock, "nes_sc127", __FILE__), m_irq_count(0), m_irq_enable(0) | |
| 70 | { | |
| 69 | : nes_nrom_device(mconfig, NES_SC127, "NES Cart SC-127 PCB", tag, owner, clock, "nes_sc127", __FILE__) | |
| 70 | { | |
| 71 | 71 | } |
| 72 | 72 | |
| 73 | 73 | nes_mbaby_device::nes_mbaby_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 74 | : nes_nrom_device(mconfig, NES_MARIOBABY, "NES Cart Mario Baby Bootleg PCB", tag, owner, clock, "nes_mbaby", __FILE__), m_latch(0), m_irq_enable(0), irq_timer(nullptr) | |
| 75 | { | |
| 74 | : nes_nrom_device(mconfig, NES_MARIOBABY, "NES Cart Mario Baby Bootleg PCB", tag, owner, clock, "nes_mbaby", __FILE__) | |
| 75 | { | |
| 76 | 76 | } |
| 77 | 77 | |
| 78 | 78 | nes_asn_device::nes_asn_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 79 | : nes_nrom_device(mconfig, NES_ASN, "NES Cart Ai Senshi Nicol Bootleg PCB", tag, owner, clock, "nes_asn", __FILE__), m_latch(0) | |
| 80 | { | |
| 79 | : nes_nrom_device(mconfig, NES_ASN, "NES Cart Ai Senshi Nicol Bootleg PCB", tag, owner, clock, "nes_asn", __FILE__) | |
| 80 | { | |
| 81 | 81 | } |
| 82 | 82 | |
| 83 | 83 | nes_smb3p_device::nes_smb3p_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 84 | : nes_nrom_device(mconfig, NES_SMB3PIRATE, "NES Cart Super Mario Bros. 3 Pirate PCB", tag, owner, clock, "nes_smb3p", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 85 | { | |
| 84 | : nes_nrom_device(mconfig, NES_SMB3PIRATE, "NES Cart Super Mario Bros. 3 Pirate PCB", tag, owner, clock, "nes_smb3p", __FILE__) | |
| 85 | { | |
| 86 | 86 | } |
| 87 | 87 | |
| 88 | 88 | nes_btl_dn_device::nes_btl_dn_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 89 | : nes_nrom_device(mconfig, NES_BTL_DNINJA, "NES Cart DragonNinja Pirate PCB", tag, owner, clock, "nes_btl_dn", __FILE__), m_irq_count(0) | |
| 90 | { | |
| 89 | : nes_nrom_device(mconfig, NES_BTL_DNINJA, "NES Cart DragonNinja Pirate PCB", tag, owner, clock, "nes_btl_dn", __FILE__) | |
| 90 | { | |
| 91 | 91 | } |
| 92 | 92 | |
| 93 | 93 | nes_whirl2706_device::nes_whirl2706_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 94 | : nes_nrom_device(mconfig, NES_WHIRLWIND_2706, "NES Cart Whirlwind 2706 PCB", tag, owner, clock, "nes_whirl2706", __FILE__), m_latch(0) | |
| 95 | { | |
| 94 | : nes_nrom_device(mconfig, NES_WHIRLWIND_2706, "NES Cart Whirlwind 2706 PCB", tag, owner, clock, "nes_whirl2706", __FILE__) | |
| 95 | { | |
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | nes_smb2j_device::nes_smb2j_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 99 | : nes_nrom_device(mconfig, NES_SMB2J, "NES Cart Super Mario Bros. 2 Jpn PCB", tag, owner, clock, "nes_smb2j", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 100 | { | |
| 99 | : nes_nrom_device(mconfig, NES_SMB2J, "NES Cart Super Mario Bros. 2 Jpn PCB", tag, owner, clock, "nes_smb2j", __FILE__) | |
| 100 | { | |
| 101 | 101 | } |
| 102 | 102 | |
| 103 | 103 | nes_smb2ja_device::nes_smb2ja_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 104 | : nes_nrom_device(mconfig, NES_SMB2JA, "NES Cart Super Mario Bros. 2 Jpn (Alt) PCB", tag, owner, clock, "nes_smb2ja", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 105 | { | |
| 104 | : nes_nrom_device(mconfig, NES_SMB2JA, "NES Cart Super Mario Bros. 2 Jpn (Alt) PCB", tag, owner, clock, "nes_smb2ja", __FILE__) | |
| 105 | { | |
| 106 | 106 | } |
| 107 | 107 | |
| 108 | 108 | nes_smb2jb_device::nes_smb2jb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 109 | : nes_nrom_device(mconfig, NES_SMB2JB, "NES Cart Super Mario Bros. 2 Jpn (Alt 2) PCB", tag, owner, clock, "nes_smb2jb", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 110 | { | |
| 109 | : nes_nrom_device(mconfig, NES_SMB2JB, "NES Cart Super Mario Bros. 2 Jpn (Alt 2) PCB", tag, owner, clock, "nes_smb2jb", __FILE__) | |
| 110 | { | |
| 111 | 111 | } |
| 112 | 112 | |
| 113 | 113 | nes_09034a_device::nes_09034a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 114 | : nes_nrom_device(mconfig, NES_09034A, "NES Cart 09-034A PCB", tag, owner, clock, "nes_09034a", __FILE__), m_reg(0) | |
| 115 | { | |
| 114 | : nes_nrom_device(mconfig, NES_09034A, "NES Cart 09-034A PCB", tag, owner, clock, "nes_09034a", __FILE__) | |
| 115 | { | |
| 116 | 116 | } |
| 117 | 117 | |
| 118 | 118 | nes_tobidase_device::nes_tobidase_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 119 | : nes_nrom_device(mconfig, NES_TOBIDASE, "NES Cart Tobidase Daisakusen Pirate PCB", tag, owner, clock, "nes_tobidase", __FILE__), m_latch(0) | |
| 120 | { | |
| 119 | : nes_nrom_device(mconfig, NES_TOBIDASE, "NES Cart Tobidase Daisakusen Pirate PCB", tag, owner, clock, "nes_tobidase", __FILE__) | |
| 120 | { | |
| 121 | 121 | } |
| 122 | 122 | |
| 123 | 123 | nes_lh32_device::nes_lh32_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 124 | : nes_nrom_device(mconfig, NES_LH32, "NES Cart LH-32 Pirate PCB", tag, owner, clock, "nes_lh32", __FILE__), m_latch(0) | |
| 125 | { | |
| 124 | : nes_nrom_device(mconfig, NES_LH32, "NES Cart LH-32 Pirate PCB", tag, owner, clock, "nes_lh32", __FILE__) | |
| 125 | { | |
| 126 | 126 | } |
| 127 | 127 | |
| 128 | 128 | nes_lh10_device::nes_lh10_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 129 | : nes_nrom_device(mconfig, NES_LH10, "NES Cart LH-10 Pirate PCB", tag, owner, clock, "nes_lh10", __FILE__), m_latch(0) | |
| 130 | { | |
| 129 | : nes_nrom_device(mconfig, NES_LH10, "NES Cart LH-10 Pirate PCB", tag, owner, clock, "nes_lh10", __FILE__) | |
| 130 | { | |
| 131 | 131 | } |
| 132 | 132 | |
| 133 | 133 | nes_lh53_device::nes_lh53_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 134 | : nes_nrom_device(mconfig, NES_LH53, "NES Cart LH-53 Pirate PCB", tag, owner, clock, "nes_lh53", __FILE__), m_irq_count(0), m_irq_enable(0), m_reg(0), irq_timer(nullptr) | |
| 135 | { | |
| 134 | : nes_nrom_device(mconfig, NES_LH53, "NES Cart LH-53 Pirate PCB", tag, owner, clock, "nes_lh53", __FILE__) | |
| 135 | { | |
| 136 | 136 | } |
| 137 | 137 | |
| 138 | 138 | nes_2708_device::nes_2708_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 141 | 141 | } |
| 142 | 142 | |
| 143 | 143 | nes_ac08_device::nes_ac08_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 144 | : nes_nrom_device(mconfig, NES_AC08, "NES Cart AC08 Pirate PCB", tag, owner, clock, "nes_ac08", __FILE__), m_latch(0) | |
| 145 | { | |
| 144 | : nes_nrom_device(mconfig, NES_AC08, "NES Cart AC08 Pirate PCB", tag, owner, clock, "nes_ac08", __FILE__) | |
| 145 | { | |
| 146 | 146 | } |
| 147 | 147 | |
| 148 | 148 | nes_unl_bb_device::nes_unl_bb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 156 | 156 | } |
| 157 | 157 | |
| 158 | 158 | nes_shuiguan_device::nes_shuiguan_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 159 | : nes_nrom_device(mconfig, NES_SHUIGUAN, "NES Cart Shui Guan Pipe Pirate PCB", tag, owner, clock, "nes_shuiguan", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 160 | { | |
| 159 | : nes_nrom_device(mconfig, NES_SHUIGUAN, "NES Cart Shui Guan Pipe Pirate PCB", tag, owner, clock, "nes_shuiguan", __FILE__) | |
| 160 | { | |
| 161 | 161 | } |
| 162 | 162 | |
| 163 | 163 |
| r250237 | r250238 | |
|---|---|---|
| 52 | 52 | } |
| 53 | 53 | |
| 54 | 54 | nes_bf9096_device::nes_bf9096_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 55 | : nes_nrom_device(mconfig, NES_BF9096, "NES Cart Camerica BF9096 PCB", tag, owner, clock, "nes_bf9096", __FILE__), m_bank_base(0), m_latch(0) | |
| 56 | { | |
| 55 | : nes_nrom_device(mconfig, NES_BF9096, "NES Cart Camerica BF9096 PCB", tag, owner, clock, "nes_bf9096", __FILE__) | |
| 56 | { | |
| 57 | 57 | } |
| 58 | 58 | |
| 59 | 59 | nes_golden5_device::nes_golden5_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 60 | : nes_nrom_device(mconfig, NES_GOLDEN5, "NES Cart Camerica Golden 5 PCB", tag, owner, clock, "nes_golden5", __FILE__), m_bank_base(0), m_latch(0) | |
| 61 | { | |
| 60 | : nes_nrom_device(mconfig, NES_GOLDEN5, "NES Cart Camerica Golden 5 PCB", tag, owner, clock, "nes_golden5", __FILE__) | |
| 61 | { | |
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | |
| 41 | 41 | |
| 42 | 42 | nes_cony_device::nes_cony_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 43 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 44 | m_irq_count(0), | |
| 45 | m_irq_enable(0), | |
| 46 | irq_timer(nullptr), | |
| 47 | m_latch1(0), | |
| 48 | m_latch2(0), | |
| 49 | m_extra1(0) | |
| 50 | { | |
| 43 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 44 | { | |
| 51 | 45 | } |
| 52 | 46 | |
| 53 | 47 | nes_cony_device::nes_cony_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 54 | : nes_nrom_device(mconfig, NES_CONY, "NES Cart Cony PCB", tag, owner, clock, "nes_cony", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr), m_latch1(0), m_latch2(0), m_extra1(0) | |
| 55 | { | |
| 48 | : nes_nrom_device(mconfig, NES_CONY, "NES Cart Cony PCB", tag, owner, clock, "nes_cony", __FILE__) | |
| 49 | { | |
| 56 | 50 | } |
| 57 | 51 | |
| 58 | 52 | nes_yoko_device::nes_yoko_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 59 | : nes_cony_device(mconfig, NES_YOKO, "NES Cart Yoko PCB", tag, owner, clock, "nes_yoko", __FILE__), m_extra2(0) | |
| 60 | { | |
| 53 | : nes_cony_device(mconfig, NES_YOKO, "NES Cart Yoko PCB", tag, owner, clock, "nes_yoko", __FILE__) | |
| 54 | { | |
| 61 | 55 | } |
| 62 | 56 | |
| 63 | 57 |
| r250237 | r250238 | |
|---|---|---|
| 45 | 45 | datach_cart_interface::datach_cart_interface(const machine_config &mconfig, device_t &device) |
| 46 | 46 | : device_slot_card_interface(mconfig, device), |
| 47 | 47 | m_i2cmem(*this, "i2cmem"), |
| 48 | m_rom(nullptr), m_bank(0) | |
| 49 | { | |
| 48 | m_rom(NULL) | |
| 49 | { | |
| 50 | 50 | } |
| 51 | 51 | |
| 52 | 52 | datach_cart_interface::~datach_cart_interface() |
| r250237 | r250238 | |
| 70 | 70 | nes_datach_slot_device::nes_datach_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 71 | 71 | device_t(mconfig, NES_DATACH_SLOT, "NES Datach Cartridge Slot", tag, owner, clock, "nes_datach_slot", __FILE__), |
| 72 | 72 | device_image_interface(mconfig, *this), |
| 73 | device_slot_interface(mconfig, *this) | |
| 73 | device_slot_interface(mconfig, *this) | |
| 74 | 74 | { |
| 75 | 75 | } |
| 76 | 76 | |
| r250237 | r250238 | |
| 228 | 228 | |
| 229 | 229 | |
| 230 | 230 | nes_datach_device::nes_datach_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 231 | : nes_lz93d50_device(mconfig, NES_DATACH, "NES Cart Bandai Datach PCB", tag, owner, clock, "nes_datach", __FILE__), | |
| 231 | : nes_lz93d50_device(mconfig, NES_DATACH, "NES Cart Bandai Datach PCB", tag, owner, clock, "nes_datach", __FILE__), | |
| 232 | 232 | m_i2cmem(*this, "i2cmem"), |
| 233 | 233 | m_reader(*this, "datach"), |
| 234 | m_subslot(*this, "datach_slot"), m_i2c_dir(0), m_i2c_in_use(0), serial_timer(nullptr) | |
| 235 | { | |
| 234 | m_subslot(*this, "datach_slot") | |
| 235 | { | |
| 236 | 236 | } |
| 237 | 237 | |
| 238 | 238 |
| r250237 | r250238 | |
|---|---|---|
| 104 | 104 | |
| 105 | 105 | |
| 106 | 106 | nes_disksys_device::nes_disksys_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 107 | : nes_nrom_device(mconfig, NES_DISKSYS, "FC RAM Expansion + Disk System PCB", tag, owner, clock, "fc_disksys", __FILE__), | |
| 107 | : nes_nrom_device(mconfig, NES_DISKSYS, "FC RAM Expansion + Disk System PCB", tag, owner, clock, "fc_disksys", __FILE__), | |
| 108 | 108 | m_fds_data(NULL), |
| 109 | m_disk(*this, FLOPPY_0), irq_timer(nullptr), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), m_irq_transfer(0), m_fds_motor_on(0), m_fds_door_closed(0), m_fds_current_side(0), m_fds_head_position(0), m_fds_status0(0), m_read_mode(0), m_drive_ready(0), | |
| 110 | m_fds_sides(0), m_fds_last_side(0), m_fds_count(0) | |
| 111 | { | |
| 109 | m_disk(*this, FLOPPY_0), | |
| 110 | m_fds_sides(0) | |
| 111 | { | |
| 112 | 112 | } |
| 113 | 113 | |
| 114 | 114 |
| r250237 | r250238 | |
|---|---|---|
| 37 | 37 | |
| 38 | 38 | nes_event_device::nes_event_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 39 | 39 | : nes_sxrom_device(mconfig, NES_EVENT, "NES Cart Event PCB", tag, owner, clock, "nes_event", __FILE__), |
| 40 | m_dsw(*this, "DIPSW"), | |
| 41 | m_nwc_init(0), | |
| 42 | event_timer(nullptr), | |
| 43 | m_timer_count(0), | |
| 44 | m_timer_on(0), | |
| 45 | m_timer_enabled(0) | |
| 46 | { | |
| 40 | m_dsw(*this, "DIPSW") | |
| 41 | { | |
| 47 | 42 | } |
| 48 | 43 | |
| 49 | 44 |
| r250237 | r250238 | |
|---|---|---|
| 36 | 36 | |
| 37 | 37 | nes_ggenie_device::nes_ggenie_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 38 | 38 | : nes_nrom_device(mconfig, NES_GGENIE, "NES Cart Game Genie PCB", tag, owner, clock, "nes_ggenie", __FILE__), |
| 39 | m_ggslot(*this, "gg_slot"), | |
| 40 | m_gg_bypass(0) | |
| 41 | { | |
| 39 | m_ggslot(*this, "gg_slot") | |
| 40 | { | |
| 42 | 41 | } |
| 43 | 42 | |
| 44 | 43 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | } |
| 55 | 55 | |
| 56 | 56 | nes_hengg_shjy3_device::nes_hengg_shjy3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 57 | : nes_nrom_device(mconfig, NES_HENGG_SHJY3, "NES Cart Henggedianzi Shen Hua Jian Yun III PCB", tag, owner, clock, "nes_hengg_shjy3", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), m_chr_mode(0) | |
| 58 | { | |
| 57 | : nes_nrom_device(mconfig, NES_HENGG_SHJY3, "NES Cart Henggedianzi Shen Hua Jian Yun III PCB", tag, owner, clock, "nes_hengg_shjy3", __FILE__) | |
| 58 | { | |
| 59 | 59 | } |
| 60 | 60 | |
| 61 | 61 |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | |
| 34 | 34 | |
| 35 | 35 | nes_hosenkan_device::nes_hosenkan_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 36 | : nes_nrom_device(mconfig, NES_HOSENKAN, "NES Cart HOSENKAN PCB", tag, owner, clock, "nes_hosenkan", __FILE__), | |
| 37 | m_irq_count(0), | |
| 38 | m_irq_count_latch(0), | |
| 39 | m_irq_clear(0), | |
| 40 | m_irq_enable(0), | |
| 41 | m_latch(0) | |
| 42 | { | |
| 36 | : nes_nrom_device(mconfig, NES_HOSENKAN, "NES Cart HOSENKAN PCB", tag, owner, clock, "nes_hosenkan", __FILE__) | |
| 37 | { | |
| 43 | 38 | } |
| 44 | 39 | |
| 45 | 40 |
| r250237 | r250238 | |
|---|---|---|
| 58 | 58 | } |
| 59 | 59 | |
| 60 | 60 | nes_g101_device::nes_g101_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 61 | : nes_nrom_device(mconfig, NES_G101, "NES Cart Irem G-101 PCB", tag, owner, clock, "nes_g101", __FILE__), m_latch(0) | |
| 62 | { | |
| 61 | : nes_nrom_device(mconfig, NES_G101, "NES Cart Irem G-101 PCB", tag, owner, clock, "nes_g101", __FILE__) | |
| 62 | { | |
| 63 | 63 | } |
| 64 | 64 | |
| 65 | 65 | nes_h3001_device::nes_h3001_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 66 | : nes_nrom_device(mconfig, NES_H3001, "NES Cart Irem H-3001 PCB", tag, owner, clock, "nes_h3001", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), irq_timer(nullptr) | |
| 67 | { | |
| 66 | : nes_nrom_device(mconfig, NES_H3001, "NES Cart Irem H-3001 PCB", tag, owner, clock, "nes_h3001", __FILE__) | |
| 67 | { | |
| 68 | 68 | } |
| 69 | 69 | |
| 70 | 70 |
| r250237 | r250238 | |
|---|---|---|
| 68 | 68 | } |
| 69 | 69 | |
| 70 | 70 | nes_jf17_device::nes_jf17_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 71 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_latch(0) | |
| 72 | { | |
| 71 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 72 | { | |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | 75 | nes_jf17_device::nes_jf17_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 76 | : nes_nrom_device(mconfig, NES_JF17, "NES Cart Jaleco JF-17 PCB", tag, owner, clock, "nes_jf17", __FILE__), m_latch(0) | |
| 77 | { | |
| 76 | : nes_nrom_device(mconfig, NES_JF17, "NES Cart Jaleco JF-17 PCB", tag, owner, clock, "nes_jf17", __FILE__) | |
| 77 | { | |
| 78 | 78 | } |
| 79 | 79 | |
| 80 | 80 | nes_jf17_adpcm_device::nes_jf17_adpcm_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 100 | 100 | } |
| 101 | 101 | |
| 102 | 102 | nes_ss88006_device::nes_ss88006_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 103 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_irq_count(0), m_irq_count_latch(0), m_irq_mode(0), m_irq_enable(0), irq_timer(nullptr), m_latch(0) | |
| 104 | { | |
| 103 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 104 | { | |
| 105 | 105 | } |
| 106 | 106 | |
| 107 | 107 | nes_ss88006_device::nes_ss88006_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 108 | : nes_nrom_device(mconfig, NES_SS88006, "NES Cart Jaleco SS88006 PCB", tag, owner, clock, "nes_ss88006", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_mode(0), m_irq_enable(0), irq_timer(nullptr), m_latch(0) | |
| 109 | { | |
| 108 | : nes_nrom_device(mconfig, NES_SS88006, "NES Cart Jaleco SS88006 PCB", tag, owner, clock, "nes_ss88006", __FILE__) | |
| 109 | { | |
| 110 | 110 | } |
| 111 | 111 | |
| 112 | 112 | nes_ss88006_adpcm_device::nes_ss88006_adpcm_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| r250237 | r250238 | |
|---|---|---|
| 43 | 43 | |
| 44 | 44 | |
| 45 | 45 | nes_jy_typea_device::nes_jy_typea_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 46 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_latch(0), m_extra_chr_bank(0), m_extra_chr_mask(0), m_bank_6000(0), | |
| 47 | m_irq_mode(0), m_irq_count(0), m_irq_prescale(0), m_irq_prescale_mask(0), m_irq_flip(0), m_irq_enable(0), m_irq_up(0), m_irq_down(0), irq_timer(nullptr) | |
| 48 | { | |
| 46 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 47 | { | |
| 49 | 48 | } |
| 50 | 49 | |
| 51 | 50 | nes_jy_typea_device::nes_jy_typea_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 52 | : nes_nrom_device(mconfig, NES_JY_TYPEA, "NES Cart JY Company Type A PCB", tag, owner, clock, "nes_jya", __FILE__), m_latch(0), m_extra_chr_bank(0), | |
| 53 | m_extra_chr_mask(0), m_bank_6000(0), m_irq_mode(0), m_irq_count(0), m_irq_prescale(0), m_irq_prescale_mask(0), m_irq_flip(0), m_irq_enable(0), m_irq_up(0), | |
| 54 | m_irq_down(0), irq_timer(nullptr) | |
| 51 | : nes_nrom_device(mconfig, NES_JY_TYPEA, "NES Cart JY Company Type A PCB", tag, owner, clock, "nes_jya", __FILE__) | |
| 55 | 52 | { |
| 56 | 53 | } |
| 57 | 54 |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | } |
| 64 | 64 | |
| 65 | 65 | nes_ks7022_device::nes_ks7022_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 66 | : nes_nrom_device(mconfig, NES_KS7022, "NES Cart Kaiser KS-7022 PCB", tag, owner, clock, "nes_ks7022", __FILE__), m_latch(0) | |
| 67 | { | |
| 66 | : nes_nrom_device(mconfig, NES_KS7022, "NES Cart Kaiser KS-7022 PCB", tag, owner, clock, "nes_ks7022", __FILE__) | |
| 67 | { | |
| 68 | 68 | } |
| 69 | 69 | |
| 70 | 70 | nes_ks7032_device::nes_ks7032_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 71 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_latch(0), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 72 | { | |
| 71 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 72 | { | |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | 75 | nes_ks7032_device::nes_ks7032_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 76 | : nes_nrom_device(mconfig, NES_KS7032, "NES Cart Kaiser KS-7032 PCB", tag, owner, clock, "nes_ks7032", __FILE__), m_latch(0), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 77 | { | |
| 76 | : nes_nrom_device(mconfig, NES_KS7032, "NES Cart Kaiser KS-7032 PCB", tag, owner, clock, "nes_ks7032", __FILE__) | |
| 77 | { | |
| 78 | 78 | } |
| 79 | 79 | |
| 80 | 80 | nes_ks202_device::nes_ks202_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 83 | 83 | } |
| 84 | 84 | |
| 85 | 85 | nes_ks7017_device::nes_ks7017_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 86 | : nes_nrom_device(mconfig, NES_KS7017, "NES Cart Kaiser KS-7017 PCB", tag, owner, clock, "nes_ks7017", __FILE__), m_latch(0), m_irq_count(0), m_irq_status(0), m_irq_enable(0), irq_timer(nullptr) | |
| 87 | { | |
| 86 | : nes_nrom_device(mconfig, NES_KS7017, "NES Cart Kaiser KS-7017 PCB", tag, owner, clock, "nes_ks7017", __FILE__) | |
| 87 | { | |
| 88 | 88 | } |
| 89 | 89 | |
| 90 | 90 | nes_ks7012_device::nes_ks7012_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 52 | 52 | |
| 53 | 53 | kstudio_cart_interface::kstudio_cart_interface(const machine_config &mconfig, device_t &device) |
| 54 | 54 | : device_slot_card_interface(mconfig, device), |
| 55 | m_rom(nullptr), m_bank(0) | |
| 56 | { | |
| 55 | m_rom(NULL) | |
| 56 | { | |
| 57 | 57 | } |
| 58 | 58 | |
| 59 | 59 | kstudio_cart_interface::~kstudio_cart_interface() |
| r250237 | r250238 | |
| 74 | 74 | nes_kstudio_slot_device::nes_kstudio_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 75 | 75 | device_t(mconfig, NES_KSEXPANSION_SLOT, "NES Karaoke Studio Expansion Slot", tag, owner, clock, "nes_ks_slot", __FILE__), |
| 76 | 76 | device_image_interface(mconfig, *this), |
| 77 | device_slot_interface(mconfig, *this) | |
| 77 | device_slot_interface(mconfig, *this) | |
| 78 | 78 | { |
| 79 | 79 | } |
| 80 | 80 | |
| r250237 | r250238 | |
| 188 | 188 | |
| 189 | 189 | |
| 190 | 190 | nes_karaokestudio_device::nes_karaokestudio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 191 | : nes_nrom_device(mconfig, NES_KARAOKESTUDIO, "NES Cart Bandai Karaoke Studio PCB", tag, owner, clock, "nes_karaoke", __FILE__), | |
| 191 | : nes_nrom_device(mconfig, NES_KARAOKESTUDIO, "NES Cart Bandai Karaoke Studio PCB", tag, owner, clock, "nes_karaoke", __FILE__), | |
| 192 | 192 | m_subslot(*this, "exp_slot"), |
| 193 | 193 | m_mic_ipt(*this, "MIC") |
| 194 | 194 | { |
| r250237 | r250238 | |
|---|---|---|
| 57 | 57 | } |
| 58 | 58 | |
| 59 | 59 | nes_konami_vrc2_device::nes_konami_vrc2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 60 | : nes_nrom_device(mconfig, NES_VRC2, "NES Cart Konami VRC-2 PCB", tag, owner, clock, "nes_vrc2", __FILE__), m_latch(0) | |
| 61 | { | |
| 60 | : nes_nrom_device(mconfig, NES_VRC2, "NES Cart Konami VRC-2 PCB", tag, owner, clock, "nes_vrc2", __FILE__) | |
| 61 | { | |
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 | nes_konami_vrc3_device::nes_konami_vrc3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 65 | : nes_nrom_device(mconfig, NES_VRC3, "NES Cart Konami VRC-3 PCB", tag, owner, clock, "nes_vrc3", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), m_irq_enable_latch(0), m_irq_mode(0), irq_timer(nullptr) | |
| 66 | { | |
| 65 | : nes_nrom_device(mconfig, NES_VRC3, "NES Cart Konami VRC-3 PCB", tag, owner, clock, "nes_vrc3", __FILE__) | |
| 66 | { | |
| 67 | 67 | } |
| 68 | 68 | |
| 69 | 69 | nes_konami_vrc4_device::nes_konami_vrc4_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 70 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_latch(0), m_mmc_prg_bank(0), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), m_irq_enable_latch(0), m_irq_mode(0), m_irq_prescale(0), irq_timer(nullptr) | |
| 71 | { | |
| 70 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 71 | { | |
| 72 | 72 | } |
| 73 | 73 | |
| 74 | 74 | nes_konami_vrc4_device::nes_konami_vrc4_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 75 | : nes_nrom_device(mconfig, NES_VRC4, "NES Cart Konami VRC-4 PCB", tag, owner, clock, "nes_vrc4", __FILE__), m_latch(0), m_mmc_prg_bank(0), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), m_irq_enable_latch(0), m_irq_mode(0), m_irq_prescale(0), irq_timer(nullptr) | |
| 76 | { | |
| 75 | : nes_nrom_device(mconfig, NES_VRC4, "NES Cart Konami VRC-4 PCB", tag, owner, clock, "nes_vrc4", __FILE__) | |
| 76 | { | |
| 77 | 77 | } |
| 78 | 78 | |
| 79 | 79 | nes_konami_vrc6_device::nes_konami_vrc6_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 45 | 45 | } |
| 46 | 46 | |
| 47 | 47 | nes_ffe4_device::nes_ffe4_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 48 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr), m_latch(0), m_exram_enabled(0), m_exram_bank(0) | |
| 49 | { | |
| 48 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 49 | { | |
| 50 | 50 | } |
| 51 | 51 | |
| 52 | 52 | nes_ffe4_device::nes_ffe4_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 53 | : nes_nrom_device(mconfig, NES_FFE4, "NES Cart FFE-4 PCB", tag, owner, clock, "nes_ff4", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr), m_latch(0), m_exram_enabled(0), m_exram_bank(0) | |
| 54 | { | |
| 53 | : nes_nrom_device(mconfig, NES_FFE4, "NES Cart FFE-4 PCB", tag, owner, clock, "nes_ff4", __FILE__) | |
| 54 | { | |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | 57 | nes_ffe8_device::nes_ffe8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | |
| 41 | 41 | |
| 42 | 42 | nes_sxrom_device::nes_sxrom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 43 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_reg_write_enable(0), m_latch(0), m_count(0) | |
| 44 | { | |
| 43 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 44 | { | |
| 45 | 45 | } |
| 46 | 46 | |
| 47 | 47 | nes_sxrom_device::nes_sxrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 48 | : nes_nrom_device(mconfig, NES_SXROM, "NES Cart SxROM (MMC-1) PCB", tag, owner, clock, "nes_sxrom", __FILE__), m_reg_write_enable(0), m_latch(0), m_count(0) | |
| 49 | { | |
| 48 | : nes_nrom_device(mconfig, NES_SXROM, "NES Cart SxROM (MMC-1) PCB", tag, owner, clock, "nes_sxrom", __FILE__) | |
| 49 | { | |
| 50 | 50 | } |
| 51 | 51 | |
| 52 | 52 | nes_sorom_device::nes_sorom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | |
| 34 | 34 | |
| 35 | 35 | nes_pxrom_device::nes_pxrom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 36 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 37 | m_latch1(0), | |
| 38 | m_latch2(0) | |
| 39 | { | |
| 36 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 37 | { | |
| 40 | 38 | } |
| 41 | 39 | |
| 42 | 40 | nes_pxrom_device::nes_pxrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 43 | : nes_nrom_device(mconfig, NES_PXROM, "NES Cart PxROM (MMC-2) PCB", tag, owner, clock, "nes_pxrom", __FILE__), m_latch1(0), m_latch2(0) | |
| 44 | { | |
| 41 | : nes_nrom_device(mconfig, NES_PXROM, "NES Cart PxROM (MMC-2) PCB", tag, owner, clock, "nes_pxrom", __FILE__) | |
| 42 | { | |
| 45 | 43 | } |
| 46 | 44 | |
| 47 | 45 | nes_fxrom_device::nes_fxrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | |
| 55 | 55 | |
| 56 | 56 | nes_txrom_device::nes_txrom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 57 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_prg_base(0), m_prg_mask(0), m_chr_base(0), m_chr_mask(0), | |
| 58 | m_latch(0), m_wram_protect(0), m_alt_irq(0), m_irq_count(0), m_irq_count_latch(0), m_irq_clear(0), m_irq_enable(0) | |
| 59 | { | |
| 57 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 58 | { | |
| 60 | 59 | } |
| 61 | 60 | |
| 62 | 61 | nes_txrom_device::nes_txrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 63 | : nes_nrom_device(mconfig, NES_TXROM, "NES Cart TxROM (MMC-3) PCB", tag, owner, clock, "nes_txrom", __FILE__), m_prg_base(0), m_prg_mask(0), m_chr_base(0), m_chr_mask(0), | |
| 64 | m_latch(0), m_wram_protect(0), m_alt_irq(0), m_irq_count(0), m_irq_count_latch(0), m_irq_clear(0), m_irq_enable(0) | |
| 65 | { | |
| 62 | : nes_nrom_device(mconfig, NES_TXROM, "NES Cart TxROM (MMC-3) PCB", tag, owner, clock, "nes_txrom", __FILE__) | |
| 63 | { | |
| 66 | 64 | } |
| 67 | 65 | |
| 68 | 66 | nes_hkrom_device::nes_hkrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 69 | : nes_txrom_device(mconfig, NES_HKROM, "NES Cart HKROM (MMC-6) PCB", tag, owner, clock, "nes_hkrom", __FILE__), m_wram_enable(0), m_mmc6_reg(0) | |
| 70 | { | |
| 67 | : nes_txrom_device(mconfig, NES_HKROM, "NES Cart HKROM (MMC-6) PCB", tag, owner, clock, "nes_hkrom", __FILE__) | |
| 68 | { | |
| 71 | 69 | } |
| 72 | 70 | |
| 73 | 71 | nes_txsrom_device::nes_txsrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | nes_8237_device::nes_8237_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 99 | : nes_txrom_device(mconfig, NES_8237, "NES Cart UNL-8237 PCB", tag, owner, clock, "nes_8237", __FILE__), m_cd_enable(0) | |
| 100 | { | |
| 99 | : nes_txrom_device(mconfig, NES_8237, "NES Cart UNL-8237 PCB", tag, owner, clock, "nes_8237", __FILE__) | |
| 100 | { | |
| 101 | 101 | } |
| 102 | 102 | |
| 103 | 103 | nes_sglionk_device::nes_sglionk_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 104 | : nes_txrom_device(mconfig, NES_SG_LIONK, "NES Cart SuperGame Lion King PCB", tag, owner, clock, "nes_sglionk", __FILE__), m_reg(0), m_reg_enabled(0) | |
| 105 | { | |
| 104 | : nes_txrom_device(mconfig, NES_SG_LIONK, "NES Cart SuperGame Lion King PCB", tag, owner, clock, "nes_sglionk", __FILE__) | |
| 105 | { | |
| 106 | 106 | } |
| 107 | 107 | |
| 108 | 108 | nes_sgboog_device::nes_sgboog_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 109 | : nes_txrom_device(mconfig, NES_SG_BOOG, "NES Cart SuperGame BoogerMan PCB", tag, owner, clock, "nes_sgbooger", __FILE__), m_mode(0) | |
| 110 | { | |
| 109 | : nes_txrom_device(mconfig, NES_SG_BOOG, "NES Cart SuperGame BoogerMan PCB", tag, owner, clock, "nes_sgbooger", __FILE__) | |
| 110 | { | |
| 111 | 111 | } |
| 112 | 112 | |
| 113 | 113 | nes_kasing_device::nes_kasing_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 114 | : nes_txrom_device(mconfig, NES_KASING, "NES Cart Kasing PCB", tag, owner, clock, "nes_kasing", __FILE__), m_reg(0) | |
| 115 | { | |
| 114 | : nes_txrom_device(mconfig, NES_KASING, "NES Cart Kasing PCB", tag, owner, clock, "nes_kasing", __FILE__) | |
| 115 | { | |
| 116 | 116 | } |
| 117 | 117 | |
| 118 | 118 | nes_kay_device::nes_kay_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 119 | : nes_txrom_device(mconfig, NES_KAY, "NES Cart KAY PCB", tag, owner, clock, "nes_kay", __FILE__), m_low_reg(0) | |
| 120 | { | |
| 119 | : nes_txrom_device(mconfig, NES_KAY, "NES Cart KAY PCB", tag, owner, clock, "nes_kay", __FILE__) | |
| 120 | { | |
| 121 | 121 | } |
| 122 | 122 | |
| 123 | 123 | nes_h2288_device::nes_h2288_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 126 | 126 | } |
| 127 | 127 | |
| 128 | 128 | nes_6035052_device::nes_6035052_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 129 | : nes_txrom_device(mconfig, NES_6035052, "NES Cart UNL-603-5052 PCB", tag, owner, clock, "nes_6035052", __FILE__), m_prot(0) | |
| 130 | { | |
| 129 | : nes_txrom_device(mconfig, NES_6035052, "NES Cart UNL-603-5052 PCB", tag, owner, clock, "nes_6035052", __FILE__) | |
| 130 | { | |
| 131 | 131 | } |
| 132 | 132 | |
| 133 | 133 | nes_txc_tw_device::nes_txc_tw_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 156 | 156 | } |
| 157 | 157 | |
| 158 | 158 | nes_sa9602b_device::nes_sa9602b_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 159 | : nes_txrom_device(mconfig, NES_SA9602B, "NES Cart SA-9602B PCB", tag, owner, clock, "nes_sa9602b", __FILE__), m_reg(0), m_prg_chip(0) | |
| 160 | { | |
| 159 | : nes_txrom_device(mconfig, NES_SA9602B, "NES Cart SA-9602B PCB", tag, owner, clock, "nes_sa9602b", __FILE__) | |
| 160 | { | |
| 161 | 161 | } |
| 162 | 162 | |
| 163 | 163 | nes_sachen_shero_device::nes_sachen_shero_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 164 | : nes_txrom_device(mconfig, NES_SACHEN_SHERO, "NES Cart Street Hero PCB", tag, owner, clock, "nes_shero", __FILE__), m_reg(0) | |
| 165 | { | |
| 164 | : nes_txrom_device(mconfig, NES_SACHEN_SHERO, "NES Cart Street Hero PCB", tag, owner, clock, "nes_shero", __FILE__) | |
| 165 | { | |
| 166 | 166 | } |
| 167 | 167 | |
| 168 | 168 | //nes_a9746_device::nes_a9746_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 171 | 171 | //} |
| 172 | 172 | |
| 173 | 173 | nes_fk23c_device::nes_fk23c_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 174 | : nes_txrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_mmc_cmd1(0) | |
| 175 | { | |
| 174 | : nes_txrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 175 | { | |
| 176 | 176 | } |
| 177 | 177 | |
| 178 | 178 | nes_fk23c_device::nes_fk23c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 179 | : nes_txrom_device(mconfig, NES_FK23C, "NES Cart FK23C PCB", tag, owner, clock, "nes_fk23c", __FILE__), m_mmc_cmd1(0) | |
| 180 | { | |
| 179 | : nes_txrom_device(mconfig, NES_FK23C, "NES Cart FK23C PCB", tag, owner, clock, "nes_fk23c", __FILE__) | |
| 180 | { | |
| 181 | 181 | } |
| 182 | 182 | |
| 183 | 183 | nes_fk23ca_device::nes_fk23ca_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 201 | 201 | } |
| 202 | 202 | |
| 203 | 203 | nes_bmc_hik8_device::nes_bmc_hik8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 204 | : nes_txrom_device(mconfig, NES_BMC_HIK8, "NES Cart BMC Super HIK 8 in 1 PCB", tag, owner, clock, "nes_bmc_hik8", __FILE__), m_count(0) | |
| 205 | { | |
| 204 | : nes_txrom_device(mconfig, NES_BMC_HIK8, "NES Cart BMC Super HIK 8 in 1 PCB", tag, owner, clock, "nes_bmc_hik8", __FILE__) | |
| 205 | { | |
| 206 | 206 | } |
| 207 | 207 | |
| 208 | 208 | nes_bmc_hik4_device::nes_bmc_hik4_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 211 | 211 | } |
| 212 | 212 | |
| 213 | 213 | nes_bmc_mario7in1_device::nes_bmc_mario7in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 214 | : nes_txrom_device(mconfig, NES_BMC_MARIO7IN1, "NES Cart BMC Mario 7 in 1 PCB", tag, owner, clock, "nes_bmc_mario7in1", __FILE__), m_reg_written(0) | |
| 215 | { | |
| 214 | : nes_txrom_device(mconfig, NES_BMC_MARIO7IN1, "NES Cart BMC Mario 7 in 1 PCB", tag, owner, clock, "nes_bmc_mario7in1", __FILE__) | |
| 215 | { | |
| 216 | 216 | } |
| 217 | 217 | |
| 218 | 218 | nes_bmc_gold7in1_device::nes_bmc_gold7in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 219 | : nes_txrom_device(mconfig, NES_BMC_GOLD7IN1, "NES Cart BMC Golden 7 in 1 PCB", tag, owner, clock, "nes_bmc_gold7in1", __FILE__), m_reg_written(0) | |
| 220 | { | |
| 219 | : nes_txrom_device(mconfig, NES_BMC_GOLD7IN1, "NES Cart BMC Golden 7 in 1 PCB", tag, owner, clock, "nes_bmc_gold7in1", __FILE__) | |
| 220 | { | |
| 221 | 221 | } |
| 222 | 222 | |
| 223 | 223 | nes_bmc_gc6in1_device::nes_bmc_gc6in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 226 | 226 | } |
| 227 | 227 | |
| 228 | 228 | nes_bmc_411120c_device::nes_bmc_411120c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 229 | : nes_txrom_device(mconfig, NES_BMC_411120C, "NES Cart BMC 411120C PCB", tag, owner, clock, "nes_bmc_411120c", __FILE__), m_reg(0) | |
| 230 | { | |
| 229 | : nes_txrom_device(mconfig, NES_BMC_411120C, "NES Cart BMC 411120C PCB", tag, owner, clock, "nes_bmc_411120c", __FILE__) | |
| 230 | { | |
| 231 | 231 | } |
| 232 | 232 | |
| 233 | 233 | nes_bmc_830118c_device::nes_bmc_830118c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 234 | : nes_txrom_device(mconfig, NES_BMC_830118C, "NES Cart BMC 830118C PCB", tag, owner, clock, "nes_bmc_830118c", __FILE__), m_reg(0) | |
| 235 | { | |
| 234 | : nes_txrom_device(mconfig, NES_BMC_830118C, "NES Cart BMC 830118C PCB", tag, owner, clock, "nes_bmc_830118c", __FILE__) | |
| 235 | { | |
| 236 | 236 | } |
| 237 | 237 | |
| 238 | 238 | nes_pjoy84_device::nes_pjoy84_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 45 | 45 | |
| 46 | 46 | |
| 47 | 47 | nes_exrom_device::nes_exrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 48 | : nes_nrom_device(mconfig, NES_EXROM, "NES Cart ExROM (MMC-5) PCB", tag, owner, clock, "nes_exrom", __FILE__), m_irq_count(0), | |
| 49 | m_irq_status(0), m_irq_enable(0), m_mult1(0), m_mult2(0), m_mmc5_scanline(0), m_vrom_page_a(0), m_vrom_page_b(0), m_floodtile(0), m_floodattr(0), | |
| 50 | m_prg_mode(0), m_chr_mode(0), m_wram_protect_1(0), m_wram_protect_2(0), m_exram_control(0), m_wram_base(0), m_last_chr(0), m_ex1_chr(0), | |
| 51 | m_split_chr(0), m_ex1_bank(0), m_high_chr(0), m_split_scr(0), m_split_rev(0), m_split_ctrl(0), m_split_yst(0), m_split_bank(0), m_vcount(0) | |
| 52 | { | |
| 48 | : nes_nrom_device(mconfig, NES_EXROM, "NES Cart ExROM (MMC-5) PCB", tag, owner, clock, "nes_exrom", __FILE__) | |
| 49 | { | |
| 53 | 50 | } |
| 54 | 51 | |
| 55 | 52 |
| r250237 | r250238 | |
|---|---|---|
| 83 | 83 | } |
| 84 | 84 | |
| 85 | 85 | nes_caltron_device::nes_caltron_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 86 | : nes_nrom_device(mconfig, NES_CALTRON6IN1, "NES Cart Caltron 6 in 1 PCB", tag, owner, clock, "nes_caltron", __FILE__), m_latch(0) | |
| 87 | { | |
| 86 | : nes_nrom_device(mconfig, NES_CALTRON6IN1, "NES Cart Caltron 6 in 1 PCB", tag, owner, clock, "nes_caltron", __FILE__) | |
| 87 | { | |
| 88 | 88 | } |
| 89 | 89 | |
| 90 | 90 | nes_rumblestat_device::nes_rumblestat_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 91 | : nes_nrom_device(mconfig, NES_RUMBLESTATION, "NES Cart Rumblestation PCB", tag, owner, clock, "nes_rumblestat", __FILE__), m_prg(0), m_chr(0) | |
| 92 | { | |
| 91 | : nes_nrom_device(mconfig, NES_RUMBLESTATION, "NES Cart Rumblestation PCB", tag, owner, clock, "nes_rumblestat", __FILE__) | |
| 92 | { | |
| 93 | 93 | } |
| 94 | 94 | |
| 95 | 95 | nes_svision16_device::nes_svision16_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 96 | : nes_nrom_device(mconfig, NES_SVISION16, "NES Cart Supervision 16 in 1 PCB", tag, owner, clock, "nes_svision16", __FILE__), m_latch1(0), m_latch2(0) | |
| 97 | { | |
| 96 | : nes_nrom_device(mconfig, NES_SVISION16, "NES Cart Supervision 16 in 1 PCB", tag, owner, clock, "nes_svision16", __FILE__) | |
| 97 | { | |
| 98 | 98 | } |
| 99 | 99 | |
| 100 | 100 | nes_n625092_device::nes_n625092_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 101 | : nes_nrom_device(mconfig, NES_N625092, "NES Cart N625092 PCB", tag, owner, clock, "nes_n625092", __FILE__), m_latch1(0), m_latch2(0) | |
| 102 | { | |
| 101 | : nes_nrom_device(mconfig, NES_N625092, "NES Cart N625092 PCB", tag, owner, clock, "nes_n625092", __FILE__) | |
| 102 | { | |
| 103 | 103 | } |
| 104 | 104 | |
| 105 | 105 | nes_a65as_device::nes_a65as_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 108 | 108 | } |
| 109 | 109 | |
| 110 | 110 | nes_t262_device::nes_t262_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 111 | : nes_nrom_device(mconfig, NES_T262, "NES Cart T-262 PCB", tag, owner, clock, "nes_t262", __FILE__), m_latch1(0), m_latch2(0) | |
| 112 | { | |
| 111 | : nes_nrom_device(mconfig, NES_T262, "NES Cart T-262 PCB", tag, owner, clock, "nes_t262", __FILE__) | |
| 112 | { | |
| 113 | 113 | } |
| 114 | 114 | |
| 115 | 115 | nes_novel1_device::nes_novel1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 133 | 133 | } |
| 134 | 134 | |
| 135 | 135 | nes_vt5201_device::nes_vt5201_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 136 | : nes_nrom_device(mconfig, NES_VT5201, "NES Cart VT5201 PCB", tag, owner, clock, "nes_vt5201", __FILE__), m_latch(0), m_dipsetting(0) | |
| 137 | { | |
| 136 | : nes_nrom_device(mconfig, NES_VT5201, "NES Cart VT5201 PCB", tag, owner, clock, "nes_vt5201", __FILE__) | |
| 137 | { | |
| 138 | 138 | } |
| 139 | 139 | |
| 140 | 140 | nes_810544c_device::nes_810544c_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 148 | 148 | } |
| 149 | 149 | |
| 150 | 150 | nes_bmc_gb63_device::nes_bmc_gb63_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 151 | : nes_nrom_device(mconfig, NES_BMC_GB63, "NES Cart BMC Ghostbusters 63 in 1 PCB", tag, owner, clock, "nes_bmc_gb63", __FILE__), m_latch(0), m_dipsetting(0), m_vram_disable(0) | |
| 152 | { | |
| 151 | : nes_nrom_device(mconfig, NES_BMC_GB63, "NES Cart BMC Ghostbusters 63 in 1 PCB", tag, owner, clock, "nes_bmc_gb63", __FILE__) | |
| 152 | { | |
| 153 | 153 | } |
| 154 | 154 | |
| 155 | 155 | nes_bmc_gka_device::nes_bmc_gka_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 156 | : nes_nrom_device(mconfig, NES_BMC_GKA, "NES Cart BMC GK-A PCB", tag, owner, clock, "nes_bmc_gka", __FILE__), m_latch1(0), m_latch2(0) | |
| 157 | { | |
| 156 | : nes_nrom_device(mconfig, NES_BMC_GKA, "NES Cart BMC GK-A PCB", tag, owner, clock, "nes_bmc_gka", __FILE__) | |
| 157 | { | |
| 158 | 158 | } |
| 159 | 159 | |
| 160 | 160 | nes_bmc_gkb_device::nes_bmc_gkb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 163 | 163 | } |
| 164 | 164 | |
| 165 | 165 | nes_bmc_ws_device::nes_bmc_ws_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 166 | : nes_nrom_device(mconfig, NES_BMC_WS, "NES Cart BMC WS PCB", tag, owner, clock, "nes_bmc_ws", __FILE__), m_latch(0) | |
| 167 | { | |
| 166 | : nes_nrom_device(mconfig, NES_BMC_WS, "NES Cart BMC WS PCB", tag, owner, clock, "nes_bmc_ws", __FILE__) | |
| 167 | { | |
| 168 | 168 | } |
| 169 | 169 | |
| 170 | 170 | nes_bmc_11160_device::nes_bmc_11160_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 243 | 243 | } |
| 244 | 244 | |
| 245 | 245 | nes_bmc_70in1_device::nes_bmc_70in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 246 | : nes_nrom_device(mconfig, NES_BMC_70IN1, "NES Cart BMC 70 in 1 PCB", tag, owner, clock, "nes_bmc_70in1", __FILE__), m_mode(0) | |
| 247 | { | |
| 246 | : nes_nrom_device(mconfig, NES_BMC_70IN1, "NES Cart BMC 70 in 1 PCB", tag, owner, clock, "nes_bmc_70in1", __FILE__) | |
| 247 | { | |
| 248 | 248 | } |
| 249 | 249 | |
| 250 | 250 | nes_bmc_72in1_device::nes_bmc_72in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 253 | 253 | } |
| 254 | 254 | |
| 255 | 255 | nes_bmc_76in1_device::nes_bmc_76in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 256 | : nes_nrom_device(mconfig, NES_BMC_76IN1, "NES Cart BMC 76 in 1 PCB", tag, owner, clock, "nes_bmc_76in1", __FILE__), m_latch1(0), m_latch2(0) | |
| 257 | { | |
| 256 | : nes_nrom_device(mconfig, NES_BMC_76IN1, "NES Cart BMC 76 in 1 PCB", tag, owner, clock, "nes_bmc_76in1", __FILE__) | |
| 257 | { | |
| 258 | 258 | } |
| 259 | 259 | |
| 260 | 260 | nes_bmc_110in1_device::nes_bmc_110in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 273 | 273 | } |
| 274 | 274 | |
| 275 | 275 | nes_bmc_800in1_device::nes_bmc_800in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 276 | : nes_nrom_device(mconfig, NES_BMC_800IN1, "NES Cart BMC 800 in 1 PCB", tag, owner, clock, "nes_bmc_800in1", __FILE__), m_mode(0) | |
| 277 | { | |
| 276 | : nes_nrom_device(mconfig, NES_BMC_800IN1, "NES Cart BMC 800 in 1 PCB", tag, owner, clock, "nes_bmc_800in1", __FILE__) | |
| 277 | { | |
| 278 | 278 | } |
| 279 | 279 | |
| 280 | 280 | nes_bmc_1200in1_device::nes_bmc_1200in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 281 | : nes_nrom_device(mconfig, NES_BMC_1200IN1, "NES Cart BMC 1200 in 1 PCB", tag, owner, clock, "nes_bmc_1200in1", __FILE__), m_vram_protect(0) | |
| 282 | { | |
| 281 | : nes_nrom_device(mconfig, NES_BMC_1200IN1, "NES Cart BMC 1200 in 1 PCB", tag, owner, clock, "nes_bmc_1200in1", __FILE__) | |
| 282 | { | |
| 283 | 283 | } |
| 284 | 284 | |
| 285 | 285 | nes_bmc_gold150_device::nes_bmc_gold150_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 286 | : nes_nrom_device(mconfig, NES_BMC_GOLD150, "NES Cart BMC Golden 150 in 1 PCB", tag, owner, clock, "nes_bmc_gold150", __FILE__), m_latch(0) | |
| 287 | { | |
| 286 | : nes_nrom_device(mconfig, NES_BMC_GOLD150, "NES Cart BMC Golden 150 in 1 PCB", tag, owner, clock, "nes_bmc_gold150", __FILE__) | |
| 287 | { | |
| 288 | 288 | } |
| 289 | 289 | |
| 290 | 290 | nes_bmc_gold260_device::nes_bmc_gold260_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 293 | 293 | } |
| 294 | 294 | |
| 295 | 295 | nes_bmc_ch001_device::nes_bmc_ch001_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 296 | : nes_nrom_device(mconfig, NES_BMC_CH001, "NES Cart BMC CH-001 PCB", tag, owner, clock, "nes_bmc_ch001", __FILE__), m_latch(0) | |
| 297 | { | |
| 296 | : nes_nrom_device(mconfig, NES_BMC_CH001, "NES Cart BMC CH-001 PCB", tag, owner, clock, "nes_bmc_ch001", __FILE__) | |
| 297 | { | |
| 298 | 298 | } |
| 299 | 299 | |
| 300 | 300 | nes_bmc_super22_device::nes_bmc_super22_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 303 | 303 | } |
| 304 | 304 | |
| 305 | 305 | nes_bmc_4in1reset_device::nes_bmc_4in1reset_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 306 | : nes_nrom_device(mconfig, NES_BMC_4IN1RESET, "NES Cart BMC 4 in 1 (Reset Based) PCB", tag, owner, clock, "nes_bmc_4in1reset", __FILE__), m_latch(0) | |
| 307 | { | |
| 306 | : nes_nrom_device(mconfig, NES_BMC_4IN1RESET, "NES Cart BMC 4 in 1 (Reset Based) PCB", tag, owner, clock, "nes_bmc_4in1reset", __FILE__) | |
| 307 | { | |
| 308 | 308 | } |
| 309 | 309 | |
| 310 | 310 | nes_bmc_42in1reset_device::nes_bmc_42in1reset_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 311 | : nes_nrom_device(mconfig, NES_BMC_42IN1RESET, "NES Cart BMC 42 in 1 (Reset Based) PCB", tag, owner, clock, "nes_bmc_42in1reset", __FILE__), m_latch(0) | |
| 312 | { | |
| 311 | : nes_nrom_device(mconfig, NES_BMC_42IN1RESET, "NES Cart BMC 42 in 1 (Reset Based) PCB", tag, owner, clock, "nes_bmc_42in1reset", __FILE__) | |
| 312 | { | |
| 313 | 313 | } |
| 314 | 314 | |
| 315 | 315 |
| r250237 | r250238 | |
|---|---|---|
| 50 | 50 | |
| 51 | 51 | |
| 52 | 52 | nes_namcot3433_device::nes_namcot3433_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 53 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_latch(0) | |
| 54 | { | |
| 53 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 54 | { | |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | 57 | nes_namcot3433_device::nes_namcot3433_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 58 | : nes_nrom_device(mconfig, NES_NAMCOT3433, "NES Cart Namcot 3433 & 3443 / DxROM PCB", tag, owner, clock, "nes_namcot3433", __FILE__), m_latch(0) | |
| 59 | { | |
| 58 | : nes_nrom_device(mconfig, NES_NAMCOT3433, "NES Cart Namcot 3433 & 3443 / DxROM PCB", tag, owner, clock, "nes_namcot3433", __FILE__) | |
| 59 | { | |
| 60 | 60 | } |
| 61 | 61 | |
| 62 | 62 | nes_namcot3446_device::nes_namcot3446_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 63 | : nes_nrom_device(mconfig, NES_NAMCOT3446, "NES Cart Namcot 3446 PCB", tag, owner, clock, "nes_namcot3446", __FILE__), m_latch(0) | |
| 64 | { | |
| 63 | : nes_nrom_device(mconfig, NES_NAMCOT3446, "NES Cart Namcot 3446 PCB", tag, owner, clock, "nes_namcot3446", __FILE__) | |
| 64 | { | |
| 65 | 65 | } |
| 66 | 66 | |
| 67 | 67 | nes_namcot3425_device::nes_namcot3425_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 68 | : nes_nrom_device(mconfig, NES_NAMCOT3425, "NES Cart Namcot 3425 PCB", tag, owner, clock, "nes_namcot3425", __FILE__), m_latch(0) | |
| 69 | { | |
| 68 | : nes_nrom_device(mconfig, NES_NAMCOT3425, "NES Cart Namcot 3425 PCB", tag, owner, clock, "nes_namcot3425", __FILE__) | |
| 69 | { | |
| 70 | 70 | } |
| 71 | 71 | |
| 72 | 72 | nes_namcot340_device::nes_namcot340_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 73 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 74 | { | |
| 73 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 74 | { | |
| 75 | 75 | } |
| 76 | 76 | |
| 77 | 77 | nes_namcot340_device::nes_namcot340_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 78 | : nes_nrom_device(mconfig, NES_NAMCOT175, "NES Cart Namcot 340 PCB", tag, owner, clock, "nes_namcot340", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 79 | { | |
| 78 | : nes_nrom_device(mconfig, NES_NAMCOT175, "NES Cart Namcot 340 PCB", tag, owner, clock, "nes_namcot340", __FILE__) | |
| 79 | { | |
| 80 | 80 | } |
| 81 | 81 | |
| 82 | 82 | nes_namcot175_device::nes_namcot175_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 83 | : nes_namcot340_device(mconfig, NES_NAMCOT340, "NES Cart Namcot 175 PCB", tag, owner, clock, "nes_namcot175", __FILE__), m_wram_protect(0) | |
| 84 | { | |
| 83 | : nes_namcot340_device(mconfig, NES_NAMCOT340, "NES Cart Namcot 175 PCB", tag, owner, clock, "nes_namcot175", __FILE__) | |
| 84 | { | |
| 85 | 85 | } |
| 86 | 86 | |
| 87 | 87 | nes_namcot163_device::nes_namcot163_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 88 | : nes_namcot340_device(mconfig, NES_NAMCOT163, "NES Cart Namcot 163 PCB", tag, owner, clock, "nes_namcot163", __FILE__), m_wram_protect(0), m_latch(0), m_chr_bank(0) | |
| 89 | { | |
| 88 | : nes_namcot340_device(mconfig, NES_NAMCOT163, "NES Cart Namcot 163 PCB", tag, owner, clock, "nes_namcot163", __FILE__) | |
| 89 | { | |
| 90 | 90 | } |
| 91 | 91 | |
| 92 | 92 |
| r250237 | r250238 | |
|---|---|---|
| 34 | 34 | |
| 35 | 35 | |
| 36 | 36 | nes_nanjing_device::nes_nanjing_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 37 | : nes_nrom_device(mconfig, NES_NANJING, "NES Cart Nanjing PCB", tag, owner, clock, "nes_nanjing", __FILE__), | |
| 38 | m_count(0), | |
| 39 | m_latch1(0), | |
| 40 | m_latch2(0) | |
| 41 | { | |
| 37 | : nes_nrom_device(mconfig, NES_NANJING, "NES Cart Nanjing PCB", tag, owner, clock, "nes_nanjing", __FILE__) | |
| 38 | { | |
| 42 | 39 | } |
| 43 | 40 | |
| 44 | 41 |
| r250237 | r250238 | |
|---|---|---|
| 110 | 110 | m_vrom(NULL), |
| 111 | 111 | m_ciram(NULL), |
| 112 | 112 | m_prg_size(0), |
| 113 | m_vrom_size(0), | |
| 113 | m_vrom_size(0), | |
| 114 | 114 | m_mapper_sram(NULL), |
| 115 | 115 | m_mapper_sram_size(0), |
| 116 | 116 | m_ce_mask(0), |
| r250237 | r250238 | |
| 746 | 746 | device_t(mconfig, NES_CART_SLOT, "NES Cartridge Slot", tag, owner, clock, "nes_cart_slot", __FILE__), |
| 747 | 747 | device_image_interface(mconfig, *this), |
| 748 | 748 | device_slot_interface(mconfig, *this), |
| 749 | m_crc_hack(0), | |
| 749 | m_crc_hack(0), | |
| 750 | 750 | m_pcb_id(NO_BOARD), |
| 751 | 751 | m_must_be_loaded(1) |
| 752 | 752 | { |
| r250237 | r250238 | |
|---|---|---|
| 39 | 39 | |
| 40 | 40 | |
| 41 | 41 | nes_ntdec_asder_device::nes_ntdec_asder_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 42 | : nes_nrom_device(mconfig, NES_NTDEC_ASDER, "NES Cart NTDEC Asder PCB", tag, owner, clock, "nes_ntdec_asder", __FILE__), | |
| 43 | m_latch(0) | |
| 44 | { | |
| 42 | : nes_nrom_device(mconfig, NES_NTDEC_ASDER, "NES Cart NTDEC Asder PCB", tag, owner, clock, "nes_ntdec_asder", __FILE__) | |
| 43 | { | |
| 45 | 44 | } |
| 46 | 45 | |
| 47 | 46 | nes_ntdec_fh_device::nes_ntdec_fh_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 92 | 92 | } |
| 93 | 93 | |
| 94 | 94 | nes_cnrom_device::nes_cnrom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 95 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_chr_open_bus(0) | |
| 96 | { | |
| 95 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 96 | { | |
| 97 | 97 | } |
| 98 | 98 | |
| 99 | 99 | nes_cnrom_device::nes_cnrom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 100 | : nes_nrom_device(mconfig, NES_CNROM, "NES Cart CNROM PCB", tag, owner, clock, "nes_cnrom", __FILE__), m_chr_open_bus(0) | |
| 101 | { | |
| 100 | : nes_nrom_device(mconfig, NES_CNROM, "NES Cart CNROM PCB", tag, owner, clock, "nes_cnrom", __FILE__) | |
| 101 | { | |
| 102 | 102 | } |
| 103 | 103 | |
| 104 | 104 | nes_cprom_device::nes_cprom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | nes_fukutake_device::nes_fukutake_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 67 | : nes_nrom_device(mconfig, NES_FUKUTAKE, "NES Cart Fukutake Study Box PCB", tag, owner, clock, "nes_fukutake", __FILE__), m_latch(0) | |
| 68 | { | |
| 67 | : nes_nrom_device(mconfig, NES_FUKUTAKE, "NES Cart Fukutake Study Box PCB", tag, owner, clock, "nes_fukutake", __FILE__) | |
| 68 | { | |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | 71 | nes_futuremedia_device::nes_futuremedia_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 72 | : nes_nrom_device(mconfig, NES_FUTUREMEDIA, "NES Cart FutureMedia PCB", tag, owner, clock, "nes_futuremedia", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_clear(0), m_irq_enable(0) | |
| 73 | { | |
| 72 | : nes_nrom_device(mconfig, NES_FUTUREMEDIA, "NES Cart FutureMedia PCB", tag, owner, clock, "nes_futuremedia", __FILE__) | |
| 73 | { | |
| 74 | 74 | } |
| 75 | 75 | |
| 76 | 76 | nes_magseries_device::nes_magseries_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 104 | 104 | } |
| 105 | 105 | |
| 106 | 106 | nes_edu2k_device::nes_edu2k_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 107 | : nes_nrom_device(mconfig, NES_EDU2K, "NES Cart Educational Computer 2000 PCB", tag, owner, clock, "nes_edu2k", __FILE__), m_latch(0) | |
| 108 | { | |
| 107 | : nes_nrom_device(mconfig, NES_EDU2K, "NES Cart Educational Computer 2000 PCB", tag, owner, clock, "nes_edu2k", __FILE__) | |
| 108 | { | |
| 109 | 109 | } |
| 110 | 110 | |
| 111 | 111 | nes_t230_device::nes_t230_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 112 | : nes_nrom_device(mconfig, NES_T230, "NES Cart T-230 PCB", tag, owner, clock, "nes_t230", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_mode(0), m_irq_enable(0), m_irq_enable_latch(0) | |
| 113 | { | |
| 112 | : nes_nrom_device(mconfig, NES_T230, "NES Cart T-230 PCB", tag, owner, clock, "nes_t230", __FILE__) | |
| 113 | { | |
| 114 | 114 | } |
| 115 | 115 | |
| 116 | 116 | nes_mk2_device::nes_mk2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 117 | : nes_nrom_device(mconfig, NES_MK2, "NES Cart Mortal Kombat 2 PCB", tag, owner, clock, "nes_mk2", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_clear(0), m_irq_enable(0) | |
| 118 | { | |
| 117 | : nes_nrom_device(mconfig, NES_MK2, "NES Cart Mortal Kombat 2 PCB", tag, owner, clock, "nes_mk2", __FILE__) | |
| 118 | { | |
| 119 | 119 | } |
| 120 | 120 | |
| 121 | 121 | nes_whero_device::nes_whero_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 122 | : nes_nrom_device(mconfig, NES_WHERO, "NES Cart World Heroes PCB", tag, owner, clock, "nes_whero", __FILE__), m_reg(0), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), m_irq_enable_latch(0) | |
| 123 | { | |
| 122 | : nes_nrom_device(mconfig, NES_WHERO, "NES Cart World Heroes PCB", tag, owner, clock, "nes_whero", __FILE__) | |
| 123 | { | |
| 124 | 124 | } |
| 125 | 125 | |
| 126 | 126 | nes_43272_device::nes_43272_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 127 | : nes_nrom_device(mconfig, NES_43272, "NES Cart UNL-43272 PCB", tag, owner, clock, "nes_43272", __FILE__), m_latch(0) | |
| 128 | { | |
| 127 | : nes_nrom_device(mconfig, NES_43272, "NES Cart UNL-43272 PCB", tag, owner, clock, "nes_43272", __FILE__) | |
| 128 | { | |
| 129 | 129 | } |
| 130 | 130 | |
| 131 | 131 | nes_tf1201_device::nes_tf1201_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 132 | : nes_nrom_device(mconfig, NES_TF1201, "NES Cart UNL-TF1201 PCB", tag, owner, clock, "nes_tf1201", __FILE__), m_prg(0), m_swap(0), m_irq_count(0), m_irq_enable(0), m_irq_enable_latch(0) | |
| 133 | { | |
| 132 | : nes_nrom_device(mconfig, NES_TF1201, "NES Cart UNL-TF1201 PCB", tag, owner, clock, "nes_tf1201", __FILE__) | |
| 133 | { | |
| 134 | 134 | } |
| 135 | 135 | |
| 136 | 136 | nes_cityfight_device::nes_cityfight_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 137 | : nes_nrom_device(mconfig, NES_TF1201, "NES Cart City Fighter PCB", tag, owner, clock, "nes_cityfight", __FILE__), m_prg_reg(0), m_prg_mode(0), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr) | |
| 138 | { | |
| 137 | : nes_nrom_device(mconfig, NES_TF1201, "NES Cart City Fighter PCB", tag, owner, clock, "nes_cityfight", __FILE__) | |
| 138 | { | |
| 139 | 139 | } |
| 140 | 140 | |
| 141 | 141 |
| r250237 | r250238 | |
|---|---|---|
| 36 | 36 | |
| 37 | 37 | |
| 38 | 38 | nes_racermate_device::nes_racermate_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 39 | : nes_nrom_device(mconfig, NES_RACERMATE, "NES Cart Racermate PCB", tag, owner, clock, "nes_racermate", __FILE__), | |
| 40 | m_latch(0) | |
| 41 | { | |
| 39 | : nes_nrom_device(mconfig, NES_RACERMATE, "NES Cart Racermate PCB", tag, owner, clock, "nes_racermate", __FILE__) | |
| 40 | { | |
| 42 | 41 | } |
| 43 | 42 | |
| 44 | 43 |
| r250237 | r250238 | |
|---|---|---|
| 67 | 67 | } |
| 68 | 68 | |
| 69 | 69 | nes_3dblock_device::nes_3dblock_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 70 | : nes_nrom_device(mconfig, NES_3DBLOCK, "NES Cart RCM 3D Block PCB", tag, owner, clock, "nes_3dblock", __FILE__), m_irq_count(0) | |
| 71 | { | |
| 70 | : nes_nrom_device(mconfig, NES_3DBLOCK, "NES Cart RCM 3D Block PCB", tag, owner, clock, "nes_3dblock", __FILE__) | |
| 71 | { | |
| 72 | 72 | } |
| 73 | 73 | |
| 74 | 74 |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | |
| 41 | 41 | |
| 42 | 42 | nes_rex_dbz5_device::nes_rex_dbz5_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 43 | : nes_txrom_device(mconfig, NES_REX_DBZ5, "NES Cart Rex Soft DragonBall Z V PCB", tag, owner, clock, "nes_rex_dbz5", __FILE__), | |
| 44 | m_extra(0) | |
| 45 | { | |
| 43 | : nes_txrom_device(mconfig, NES_REX_DBZ5, "NES Cart Rex Soft DragonBall Z V PCB", tag, owner, clock, "nes_rex_dbz5", __FILE__) | |
| 44 | { | |
| 46 | 45 | } |
| 47 | 46 | |
| 48 | 47 | nes_rex_sl1632_device::nes_rex_sl1632_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 49 | : nes_txrom_device(mconfig, NES_REX_SL1632, "NES Cart Rex Soft SL-1632 PCB", tag, owner, clock, "nes_rex_sl1632", __FILE__), m_mode(0), m_mirror(0) | |
| 50 | { | |
| 48 | : nes_txrom_device(mconfig, NES_REX_SL1632, "NES Cart Rex Soft SL-1632 PCB", tag, owner, clock, "nes_rex_sl1632", __FILE__) | |
| 49 | { | |
| 51 | 50 | } |
| 52 | 51 | |
| 53 | 52 |
| r250237 | r250238 | |
|---|---|---|
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | nes_sachen_tcu02_device::nes_sachen_tcu02_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 99 | : nes_nrom_device(mconfig, NES_SACHEN_TCU02, "NES Cart Sachen TCU-02 PCB", tag, owner, clock, "nes_tcu02", __FILE__), m_latch(0) | |
| 100 | { | |
| 99 | : nes_nrom_device(mconfig, NES_SACHEN_TCU02, "NES Cart Sachen TCU-02 PCB", tag, owner, clock, "nes_tcu02", __FILE__) | |
| 100 | { | |
| 101 | 101 | } |
| 102 | 102 | |
| 103 | 103 | nes_sachen_74x374_device::nes_sachen_74x374_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 104 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_latch(0), m_mmc_vrom_bank(0) | |
| 105 | { | |
| 104 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 105 | { | |
| 106 | 106 | } |
| 107 | 107 | |
| 108 | 108 | nes_sachen_74x374_device::nes_sachen_74x374_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 109 | : nes_nrom_device(mconfig, NES_SACHEN_74X374, "NES Cart Sachen 74*374 PCB", tag, owner, clock, "nes_s74x34", __FILE__), m_latch(0), m_mmc_vrom_bank(0) | |
| 110 | { | |
| 109 | : nes_nrom_device(mconfig, NES_SACHEN_74X374, "NES Cart Sachen 74*374 PCB", tag, owner, clock, "nes_s74x34", __FILE__) | |
| 110 | { | |
| 111 | 111 | } |
| 112 | 112 | |
| 113 | 113 | nes_sachen_74x374_alt_device::nes_sachen_74x374_alt_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | |
| 41 | 41 | |
| 42 | 42 | nes_somari_device::nes_somari_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 43 | : nes_txrom_device(mconfig, NES_SOMARI, "NES Cart Team Somari PCB", tag, owner, clock, "nes_somari", __FILE__), | |
| 44 | m_board_mode(0), | |
| 45 | m_mmc3_mirror_reg(0), | |
| 46 | m_count(0), | |
| 47 | m_mmc1_latch(0), | |
| 48 | m_vrc_mirror_reg(0) | |
| 49 | { | |
| 43 | : nes_txrom_device(mconfig, NES_SOMARI, "NES Cart Team Somari PCB", tag, owner, clock, "nes_somari", __FILE__) | |
| 44 | { | |
| 50 | 45 | } |
| 51 | 46 | |
| 52 | 47 |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | } |
| 60 | 60 | |
| 61 | 61 | nes_sunsoft_3_device::nes_sunsoft_3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 62 | : nes_nrom_device(mconfig, NES_SUNSOFT_3, "NES Cart Sunsoft 3 PCB", tag, owner, clock, "nes_sun3", __FILE__), m_irq_count(0), m_irq_enable(0), m_irq_toggle(0), irq_timer(nullptr) | |
| 63 | { | |
| 62 | : nes_nrom_device(mconfig, NES_SUNSOFT_3, "NES Cart Sunsoft 3 PCB", tag, owner, clock, "nes_sun3", __FILE__) | |
| 63 | { | |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | nes_sunsoft_4_device::nes_sunsoft_4_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 67 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_reg(0), m_latch1(0), m_latch2(0), m_wram_enable(0) | |
| 68 | { | |
| 67 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 68 | { | |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | 71 | nes_sunsoft_4_device::nes_sunsoft_4_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 72 | : nes_nrom_device(mconfig, NES_SUNSOFT_4, "NES Cart Sunsoft 4 PCB", tag, owner, clock, "nes_sun4", __FILE__), m_reg(0), m_latch1(0), m_latch2(0), m_wram_enable(0) | |
| 73 | { | |
| 72 | : nes_nrom_device(mconfig, NES_SUNSOFT_4, "NES Cart Sunsoft 4 PCB", tag, owner, clock, "nes_sun4", __FILE__) | |
| 73 | { | |
| 74 | 74 | } |
| 75 | 75 | |
| 76 | 76 | nes_sunsoft_fme7_device::nes_sunsoft_fme7_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 77 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr), m_latch(0), m_wram_bank(0) | |
| 78 | { | |
| 77 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 78 | { | |
| 79 | 79 | } |
| 80 | 80 | |
| 81 | 81 | nes_sunsoft_fme7_device::nes_sunsoft_fme7_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 82 | : nes_nrom_device(mconfig, NES_SUNSOFT_4, "NES Cart Sunsoft FME7 PCB", tag, owner, clock, "nes_fme7", __FILE__), m_irq_count(0), m_irq_enable(0), irq_timer(nullptr), m_latch(0), m_wram_bank(0) | |
| 83 | { | |
| 82 | : nes_nrom_device(mconfig, NES_SUNSOFT_4, "NES Cart Sunsoft FME7 PCB", tag, owner, clock, "nes_fme7", __FILE__) | |
| 83 | { | |
| 84 | 84 | } |
| 85 | 85 | |
| 86 | 86 | nes_sunsoft_5_device::nes_sunsoft_5_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 53 | 53 | nes_ntb_slot_device::nes_ntb_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 54 | 54 | device_t(mconfig, NES_NTB_SLOT, "NES NTB Cartridge Slot", tag, owner, clock, "nes_ntb_slot", __FILE__), |
| 55 | 55 | device_image_interface(mconfig, *this), |
| 56 | device_slot_interface(mconfig, *this) | |
| 56 | device_slot_interface(mconfig, *this) | |
| 57 | 57 | { |
| 58 | 58 | } |
| 59 | 59 | |
| r250237 | r250238 | |
| 163 | 163 | |
| 164 | 164 | |
| 165 | 165 | nes_sunsoft_dcs_device::nes_sunsoft_dcs_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 166 | : nes_sunsoft_4_device(mconfig, NES_SUNSOFT_DCS, "NES Cart Sunsoft DCS PCB", tag, owner, clock, "nes_dcs", __FILE__), m_timer_on(0), m_exrom_enable(0), | |
| 167 | m_subslot(*this, "ntb_slot"), ntb_enable_timer(nullptr) | |
| 168 | { | |
| 166 | : nes_sunsoft_4_device(mconfig, NES_SUNSOFT_DCS, "NES Cart Sunsoft DCS PCB", tag, owner, clock, "nes_dcs", __FILE__), | |
| 167 | m_subslot(*this, "ntb_slot") | |
| 168 | { | |
| 169 | 169 | } |
| 170 | 170 | |
| 171 | 171 |
| r250237 | r250238 | |
|---|---|---|
| 58 | 58 | } |
| 59 | 59 | |
| 60 | 60 | nes_tc0190fmc_pal16r4_device::nes_tc0190fmc_pal16r4_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 61 | : nes_tc0190fmc_device(mconfig, NES_TC0190FMC_PAL16R4, "NES Cart Taito TC0190FMC + PAL16R4 PCB", tag, owner, clock, "nes_tc0190pal", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0) | |
| 62 | { | |
| 61 | : nes_tc0190fmc_device(mconfig, NES_TC0190FMC_PAL16R4, "NES Cart Taito TC0190FMC + PAL16R4 PCB", tag, owner, clock, "nes_tc0190pal", __FILE__) | |
| 62 | { | |
| 63 | 63 | } |
| 64 | 64 | |
| 65 | 65 | nes_x1_005_device::nes_x1_005_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 66 | : nes_nrom_device(mconfig, NES_X1_005, "NES Cart Taito X1-005 PCB", tag, owner, clock, "nes_x1_005", __FILE__), m_latch(0) | |
| 67 | { | |
| 66 | : nes_nrom_device(mconfig, NES_X1_005, "NES Cart Taito X1-005 PCB", tag, owner, clock, "nes_x1_005", __FILE__) | |
| 67 | { | |
| 68 | 68 | } |
| 69 | 69 | |
| 70 | 70 | nes_x1_017_device::nes_x1_017_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 71 | : nes_nrom_device(mconfig, NES_X1_017, "NES Cart Taito X1-017 PCB", tag, owner, clock, "nes_x1_017", __FILE__), m_latch(0) | |
| 72 | { | |
| 71 | : nes_nrom_device(mconfig, NES_X1_017, "NES Cart Taito X1-017 PCB", tag, owner, clock, "nes_x1_017", __FILE__) | |
| 72 | { | |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | 75 |
| r250237 | r250238 | |
|---|---|---|
| 49 | 49 | } |
| 50 | 50 | |
| 51 | 51 | nes_tengen032_device::nes_tengen032_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 52 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source), m_irq_count(0), m_irq_count_latch(0), m_irq_mode(0), m_irq_reset(0), m_irq_enable(0), m_latch(0), irq_timer(nullptr) | |
| 53 | { | |
| 52 | : nes_nrom_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 53 | { | |
| 54 | 54 | } |
| 55 | 55 | |
| 56 | 56 | nes_tengen032_device::nes_tengen032_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 57 | : nes_nrom_device(mconfig, NES_TENGEN_800032, "NES Cart Tengen 800032 PCB", tag, owner, clock, "nes_tengen032", __FILE__) | |
| 57 | : nes_nrom_device(mconfig, NES_TENGEN_800032, "NES Cart Tengen 800032 PCB", tag, owner, clock, "nes_tengen032", __FILE__) | |
| 58 | 58 | { |
| 59 | 59 | } |
| 60 | 60 |
| r250237 | r250238 | |
|---|---|---|
| 132 | 132 | } |
| 133 | 133 | |
| 134 | 134 | nes_waixing_sec_device::nes_waixing_sec_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 135 | : nes_txrom_device(mconfig, NES_WAIXING_SEC, "NES Cart Waixing Security Chip PCB", tag, owner, clock, "nes_waixing_sec", __FILE__), m_reg(0) | |
| 136 | { | |
| 135 | : nes_txrom_device(mconfig, NES_WAIXING_SEC, "NES Cart Waixing Security Chip PCB", tag, owner, clock, "nes_waixing_sec", __FILE__) | |
| 136 | { | |
| 137 | 137 | } |
| 138 | 138 | |
| 139 | 139 | nes_waixing_sgz_device::nes_waixing_sgz_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 140 | : nes_nrom_device(mconfig, NES_WAIXING_SGZ, "NES Cart Waixing San Guo Zhi PCB", tag, owner, clock, "nes_waixing_sgz", __FILE__), m_irq_count(0), m_irq_count_latch(0), m_irq_enable(0), m_irq_enable_latch(0) | |
| 141 | { | |
| 140 | : nes_nrom_device(mconfig, NES_WAIXING_SGZ, "NES Cart Waixing San Guo Zhi PCB", tag, owner, clock, "nes_waixing_sgz", __FILE__) | |
| 141 | { | |
| 142 | 142 | } |
| 143 | 143 | |
| 144 | 144 | nes_waixing_sgzlz_device::nes_waixing_sgzlz_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 145 | : nes_nrom_device(mconfig, NES_WAIXING_SGZLZ, "NES Cart Waixing San Guo Zhong Lie Zhuan PCB", tag, owner, clock, "nes_waixing_sgzlz", __FILE__), m_latch(0) | |
| 146 | { | |
| 145 | : nes_nrom_device(mconfig, NES_WAIXING_SGZLZ, "NES Cart Waixing San Guo Zhong Lie Zhuan PCB", tag, owner, clock, "nes_waixing_sgzlz", __FILE__) | |
| 146 | { | |
| 147 | 147 | } |
| 148 | 148 | |
| 149 | 149 | nes_waixing_ffv_device::nes_waixing_ffv_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 112 | 112 | |
| 113 | 113 | nes_4score_device::nes_4score_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 114 | 114 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 115 | device_nes_control_port_interface(mconfig, *this), m_latch(0) | |
| 116 | { | |
| 115 | device_nes_control_port_interface(mconfig, *this) | |
| 116 | { | |
| 117 | 117 | } |
| 118 | 118 | |
| 119 | 119 | nes_4score_p1p3_device::nes_4score_p1p3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| r250237 | r250238 | |
|---|---|---|
| 48 | 48 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 49 | 49 | device_nes_control_port_interface(mconfig, *this), |
| 50 | 50 | m_paddle(*this, "PADDLE"), |
| 51 | m_button(*this, "BUTTON"), m_start_conv(0), m_latch(0) | |
| 52 | { | |
| 51 | m_button(*this, "BUTTON") | |
| 52 | { | |
| 53 | 53 | } |
| 54 | 54 | |
| 55 | 55 | nes_vaus_device::nes_vaus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 56 | 56 | device_t(mconfig, NES_ARKPADDLE, "NES Arkanoid Vaus Controller", tag, owner, clock, "nes_vaus", __FILE__), |
| 57 | 57 | device_nes_control_port_interface(mconfig, *this), |
| 58 | 58 | m_paddle(*this, "PADDLE"), |
| 59 | m_button(*this, "BUTTON") | |
| 59 | m_button(*this, "BUTTON") | |
| 60 | 60 | { |
| 61 | 61 | } |
| 62 | 62 |
| r250237 | r250238 | |
|---|---|---|
| 84 | 84 | nes_bcbattle_device::nes_bcbattle_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 85 | 85 | device_t(mconfig, NES_BARCODE_BATTLER, "Epoch Barcode Battler (FC)", tag, owner, clock, "nes_bcbattle", __FILE__), |
| 86 | 86 | device_nes_control_port_interface(mconfig, *this), |
| 87 | m_reader(*this, "battler") | |
| 87 | m_reader(*this, "battler") | |
| 88 | 88 | { |
| 89 | 89 | } |
| 90 | 90 |
| r250237 | r250238 | |
|---|---|---|
| 102 | 102 | |
| 103 | 103 | nes_control_port_device::nes_control_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 104 | 104 | device_t(mconfig, NES_CONTROL_PORT, "Nintendo NES/FC control port", tag, owner, clock, "nes_control_port", __FILE__), |
| 105 | device_slot_interface(mconfig, *this) | |
| 105 | device_slot_interface(mconfig, *this) | |
| 106 | 106 | { |
| 107 | 107 | } |
| 108 | 108 |
| r250237 | r250238 | |
|---|---|---|
| 148 | 148 | device_t(mconfig, NES_FCKEYBOARD, "Nintendo Family Computer Keyboard Component", tag, owner, clock, "nes_fckeybrd", __FILE__), |
| 149 | 149 | device_nes_control_port_interface(mconfig, *this), |
| 150 | 150 | m_cassette(*this, "tape"), |
| 151 | m_kbd(*this, "FCKEY") | |
| 151 | m_kbd(*this, "FCKEY") | |
| 152 | 152 | { |
| 153 | 153 | } |
| 154 | 154 |
| r250237 | r250238 | |
|---|---|---|
| 86 | 86 | nes_ftrainer_device::nes_ftrainer_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 87 | 87 | device_t(mconfig, NES_FTRAINER, "Bandai Family Trainer", tag, owner, clock, "nes_famtrain", __FILE__), |
| 88 | 88 | device_nes_control_port_interface(mconfig, *this), |
| 89 | m_trainer(*this, "FT_COL") | |
| 89 | m_trainer(*this, "FT_COL") | |
| 90 | 90 | { |
| 91 | 91 | } |
| 92 | 92 |
| r250237 | r250238 | |
|---|---|---|
| 176 | 176 | nes_joypad_device::nes_joypad_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 177 | 177 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 178 | 178 | device_nes_control_port_interface(mconfig, *this), |
| 179 | m_joypad(*this, "JOYPAD") | |
| 179 | m_joypad(*this, "JOYPAD") | |
| 180 | 180 | { |
| 181 | 181 | } |
| 182 | 182 | |
| 183 | 183 | nes_joypad_device::nes_joypad_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 184 | 184 | device_t(mconfig, NES_JOYPAD, "Nintendo NES / FC Control Pad", tag, owner, clock, "nes_joypad", __FILE__), |
| 185 | 185 | device_nes_control_port_interface(mconfig, *this), |
| 186 | m_joypad(*this, "JOYPAD") | |
| 186 | m_joypad(*this, "JOYPAD") | |
| 187 | 187 | { |
| 188 | 188 | } |
| 189 | 189 |
| r250237 | r250238 | |
|---|---|---|
| 46 | 46 | device_t(mconfig, NES_KONAMIHS, "Konami Hyper Shot Controller", tag, owner, clock, "nes_konamihs", __FILE__), |
| 47 | 47 | device_nes_control_port_interface(mconfig, *this), |
| 48 | 48 | m_ipt_p1(*this, "P1"), |
| 49 | m_ipt_p2(*this, "P2") | |
| 49 | m_ipt_p2(*this, "P2") | |
| 50 | 50 | { |
| 51 | 51 | } |
| 52 | 52 |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | device_serial_interface(mconfig, *this), |
| 64 | 64 | device_nes_control_port_interface(mconfig, *this), |
| 65 | 65 | m_midiin(*this, "mdin"), |
| 66 | m_midiout(*this, "mdout"), strobe_timer(nullptr), m_strobe_on(0), m_midi_mode(0), m_sent_bits(0), m_strobe_clock(0), | |
| 67 | m_data_sent(0), m_xmit_read(0), m_xmit_write(0), m_recv_read(0), m_recv_write(0), m_tx_busy(false), m_read_status(false), m_status_bit(false) | |
| 66 | m_midiout(*this, "mdout") | |
| 68 | 67 | { |
| 69 | 68 | } |
| 70 | 69 |
| r250237 | r250238 | |
|---|---|---|
| 72 | 72 | nes_mjpanel_device::nes_mjpanel_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 73 | 73 | device_t(mconfig, NES_MJPANEL, "Famicom Mahjong Panel", tag, owner, clock, "nes_mjpanel", __FILE__), |
| 74 | 74 | device_nes_control_port_interface(mconfig, *this), |
| 75 | m_panel(*this, "MJPANEL") | |
| 75 | m_panel(*this, "MJPANEL") | |
| 76 | 76 | { |
| 77 | 77 | } |
| 78 | 78 |
| r250237 | r250238 | |
|---|---|---|
| 51 | 51 | device_t(mconfig, NES_PACHINKO, "Famicom Pachinko Controller", tag, owner, clock, "nes_pachinko", __FILE__), |
| 52 | 52 | device_nes_control_port_interface(mconfig, *this), |
| 53 | 53 | m_joypad(*this, "JOYPAD"), |
| 54 | m_trigger(*this, "TRIGGER") | |
| 54 | m_trigger(*this, "TRIGGER") | |
| 55 | 55 | { |
| 56 | 56 | } |
| 57 | 57 |
| r250237 | r250238 | |
|---|---|---|
| 46 | 46 | nes_partytap_device::nes_partytap_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 47 | 47 | device_t(mconfig, NES_PARTYTAP, "Yonezawa Party Tap Controller", tag, owner, clock, "nes_partytap", __FILE__), |
| 48 | 48 | device_nes_control_port_interface(mconfig, *this), |
| 49 | m_inputs(*this, "INPUTS") | |
| 49 | m_inputs(*this, "INPUTS") | |
| 50 | 50 | { |
| 51 | 51 | } |
| 52 | 52 |
| r250237 | r250238 | |
|---|---|---|
| 163 | 163 | nes_suborkey_device::nes_suborkey_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 164 | 164 | device_t(mconfig, NES_SUBORKEYBOARD, "Subor FC Keyboard", tag, owner, clock, "nes_suborkey", __FILE__), |
| 165 | 165 | device_nes_control_port_interface(mconfig, *this), |
| 166 | m_kbd(*this, "SUBOR") | |
| 166 | m_kbd(*this, "SUBOR") | |
| 167 | 167 | { |
| 168 | 168 | } |
| 169 | 169 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | //------------------------------------------------- |
| 29 | 29 | nubus_slot_device::nubus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, NUBUS_SLOT, "NUBUS_SLOT", tag, owner, clock, "nubus_slot", __FILE__), |
| 31 | device_slot_interface(mconfig, *this), | |
| 32 | m_nubus_tag(nullptr), | |
| 33 | m_nubus_slottag(nullptr) | |
| 31 | device_slot_interface(mconfig, *this) | |
| 34 | 32 | { |
| 35 | 33 | } |
| 36 | 34 | |
| 37 | 35 | nubus_slot_device::nubus_slot_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 38 | 36 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 39 | device_slot_interface(mconfig, *this) | |
| 37 | device_slot_interface(mconfig, *this) | |
| 40 | 38 | { |
| 41 | 39 | } |
| 42 | 40 | |
| r250237 | r250238 | |
| 79 | 77 | //------------------------------------------------- |
| 80 | 78 | |
| 81 | 79 | nubus_device::nubus_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 82 | device_t(mconfig, NUBUS, "NUBUS", tag, owner, clock, "nubus", __FILE__), | |
| 80 | device_t(mconfig, NUBUS, "NUBUS", tag, owner, clock, "nubus", __FILE__), | |
| 83 | 81 | m_out_irq9_cb(*this), |
| 84 | 82 | m_out_irqa_cb(*this), |
| 85 | 83 | m_out_irqb_cb(*this), |
| 86 | 84 | m_out_irqc_cb(*this), |
| 87 | 85 | m_out_irqd_cb(*this), |
| 88 | m_out_irqe_cb(*this) | |
| 86 | m_out_irqe_cb(*this) | |
| 89 | 87 | { |
| 90 | 88 | } |
| 91 | 89 | |
| 92 | 90 | nubus_device::nubus_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 93 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 91 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 94 | 92 | m_out_irq9_cb(*this), |
| 95 | 93 | m_out_irqa_cb(*this), |
| 96 | 94 | m_out_irqb_cb(*this), |
| 97 | 95 | m_out_irqc_cb(*this), |
| 98 | 96 | m_out_irqd_cb(*this), |
| 99 | m_out_irqe_cb(*this) | |
| 97 | m_out_irqe_cb(*this) | |
| 100 | 98 | { |
| 101 | 99 | } |
| 102 | 100 | //------------------------------------------------- |
| r250237 | r250238 | |
| 258 | 256 | |
| 259 | 257 | device_nubus_card_interface::device_nubus_card_interface(const machine_config &mconfig, device_t &device) |
| 260 | 258 | : device_slot_card_interface(mconfig, device), |
| 261 | m_nubus(nullptr), | |
| 262 | m_nubus_tag(nullptr), m_nubus_slottag(nullptr), m_slot(0), m_next(nullptr) | |
| 259 | m_nubus(NULL), | |
| 260 | m_nubus_tag(NULL) | |
| 263 | 261 | { |
| 264 | 262 | } |
| 265 | 263 |
| r250237 | r250238 | |
|---|---|---|
| 79 | 79 | jmfb_device::jmfb_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 80 | 80 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 81 | 81 | device_video_interface(mconfig, *this), |
| 82 | device_nubus_card_interface(mconfig, *this) | |
| 82 | device_nubus_card_interface(mconfig, *this) | |
| 83 | 83 | { |
| 84 | 84 | m_assembled_tag = std::string(tag).append(":").append(GC48_SCREEN_NAME); |
| 85 | 85 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 71 | 71 | |
| 72 | 72 | nubus_cb264_device::nubus_cb264_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 73 | 73 | device_t(mconfig, NUBUS_CB264, "RasterOps ColorBoard 264 video card", tag, owner, clock, "nb_cb264", __FILE__), |
| 74 | device_nubus_card_interface(mconfig, *this) | |
| 74 | device_nubus_card_interface(mconfig, *this) | |
| 75 | 75 | { |
| 76 | 76 | } |
| 77 | 77 | |
| 78 | 78 | nubus_cb264_device::nubus_cb264_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 79 | 79 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 80 | device_nubus_card_interface(mconfig, *this) | |
| 80 | device_nubus_card_interface(mconfig, *this) | |
| 81 | 81 | { |
| 82 | 82 | } |
| 83 | 83 |
| r250237 | r250238 | |
|---|---|---|
| 70 | 70 | |
| 71 | 71 | messimg_disk_image_device::messimg_disk_image_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 72 | 72 | : device_t(mconfig, MESSIMG_DISK, "Mac image", tag, owner, clock, "messimg_disk_image", __FILE__), |
| 73 | device_image_interface(mconfig, *this) | |
| 73 | device_image_interface(mconfig, *this) | |
| 74 | 74 | { |
| 75 | 75 | } |
| 76 | 76 | |
| r250237 | r250238 | |
| 175 | 175 | |
| 176 | 176 | nubus_image_device::nubus_image_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 177 | 177 | device_t(mconfig, NUBUS_IMAGE, "Disk Image Pseudo-Card", tag, owner, clock, "nb_image", __FILE__), |
| 178 | device_nubus_card_interface(mconfig, *this) | |
| 178 | device_nubus_card_interface(mconfig, *this) | |
| 179 | 179 | { |
| 180 | 180 | } |
| 181 | 181 | |
| 182 | 182 | nubus_image_device::nubus_image_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 183 | 183 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 184 | device_nubus_card_interface(mconfig, *this) | |
| 184 | device_nubus_card_interface(mconfig, *this) | |
| 185 | 185 | { |
| 186 | 186 | } |
| 187 | 187 |
| r250237 | r250238 | |
|---|---|---|
| 68 | 68 | nubus_m2hires_device::nubus_m2hires_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 69 | 69 | device_t(mconfig, NUBUS_M2HIRES, "Macintosh II Hi-Resolution video card", tag, owner, clock, "nb_m2hr", __FILE__), |
| 70 | 70 | device_video_interface(mconfig, *this), |
| 71 | device_nubus_card_interface(mconfig, *this) | |
| 71 | device_nubus_card_interface(mconfig, *this) | |
| 72 | 72 | { |
| 73 | 73 | m_assembled_tag = std::string(tag).append(":").append(M2HIRES_SCREEN_NAME); |
| 74 | 74 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 77 | 77 | nubus_m2hires_device::nubus_m2hires_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 78 | 78 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 79 | 79 | device_video_interface(mconfig, *this), |
| 80 | device_nubus_card_interface(mconfig, *this) | |
| 80 | device_nubus_card_interface(mconfig, *this) | |
| 81 | 81 | { |
| 82 | 82 | m_assembled_tag = std::string(tag).append(":").append(M2HIRES_SCREEN_NAME); |
| 83 | 83 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 69 | 69 | nubus_m2video_device::nubus_m2video_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 70 | 70 | device_t(mconfig, NUBUS_M2VIDEO, "Macintosh II Video Card", tag, owner, clock, "nb_m2vc", __FILE__), |
| 71 | 71 | device_video_interface(mconfig, *this), |
| 72 | device_nubus_card_interface(mconfig, *this) | |
| 72 | device_nubus_card_interface(mconfig, *this) | |
| 73 | 73 | { |
| 74 | 74 | m_assembled_tag = std::string(tag).append(":").append(M2VIDEO_SCREEN_NAME); |
| 75 | 75 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 78 | 78 | nubus_m2video_device::nubus_m2video_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 79 | 79 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 80 | 80 | device_video_interface(mconfig, *this), |
| 81 | device_nubus_card_interface(mconfig, *this) | |
| 81 | device_nubus_card_interface(mconfig, *this) | |
| 82 | 82 | { |
| 83 | 83 | m_assembled_tag = std::string(tag).append(":").append(M2VIDEO_SCREEN_NAME); |
| 84 | 84 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 68 | 68 | nubus_radiustpd_device::nubus_radiustpd_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 69 | 69 | device_t(mconfig, NUBUS_RADIUSTPD, "Radius Two Page Display video card", tag, owner, clock, "nb_rtpd", __FILE__), |
| 70 | 70 | device_video_interface(mconfig, *this), |
| 71 | device_nubus_card_interface(mconfig, *this) | |
| 71 | device_nubus_card_interface(mconfig, *this) | |
| 72 | 72 | { |
| 73 | 73 | m_assembled_tag = std::string(tag).append(":").append(RADIUSTPD_SCREEN_NAME); |
| 74 | 74 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 77 | 77 | nubus_radiustpd_device::nubus_radiustpd_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 78 | 78 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 79 | 79 | device_video_interface(mconfig, *this), |
| 80 | device_nubus_card_interface(mconfig, *this) | |
| 80 | device_nubus_card_interface(mconfig, *this) | |
| 81 | 81 | { |
| 82 | 82 | m_assembled_tag = std::string(tag).append(":").append(RADIUSTPD_SCREEN_NAME); |
| 83 | 83 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 70 | 70 | nubus_spec8s3_device::nubus_spec8s3_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 71 | 71 | device_t(mconfig, NUBUS_SPEC8S3, "SuperMac Spectrum/8 Series III video card", tag, owner, clock, "nb_sp8s3", __FILE__), |
| 72 | 72 | device_video_interface(mconfig, *this), |
| 73 | device_nubus_card_interface(mconfig, *this) | |
| 73 | device_nubus_card_interface(mconfig, *this) | |
| 74 | 74 | { |
| 75 | 75 | m_assembled_tag = std::string(tag).append(":").append(SPEC8S3_SCREEN_NAME); |
| 76 | 76 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 79 | 79 | nubus_spec8s3_device::nubus_spec8s3_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 80 | 80 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 81 | 81 | device_video_interface(mconfig, *this), |
| 82 | device_nubus_card_interface(mconfig, *this) | |
| 82 | device_nubus_card_interface(mconfig, *this) | |
| 83 | 83 | { |
| 84 | 84 | m_assembled_tag = std::string(tag).append(":").append(SPEC8S3_SCREEN_NAME); |
| 85 | 85 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 85 | 85 | nubus_specpdq_device::nubus_specpdq_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 86 | 86 | device_t(mconfig, NUBUS_SPECPDQ, "SuperMac Spectrum PDQ video card", tag, owner, clock, "nb_spdq", __FILE__), |
| 87 | 87 | device_video_interface(mconfig, *this), |
| 88 | device_nubus_card_interface(mconfig, *this), | |
| 88 | device_nubus_card_interface(mconfig, *this), | |
| 89 | 89 | m_palette(*this, "palette") |
| 90 | 90 | { |
| 91 | 91 | m_assembled_tag = std::string(tag).append(":").append(SPECPDQ_SCREEN_NAME); |
| r250237 | r250238 | |
| 95 | 95 | nubus_specpdq_device::nubus_specpdq_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 96 | 96 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 97 | 97 | device_video_interface(mconfig, *this), |
| 98 | device_nubus_card_interface(mconfig, *this), | |
| 98 | device_nubus_card_interface(mconfig, *this), | |
| 99 | 99 | m_palette(*this, "palette") |
| 100 | 100 | { |
| 101 | 101 | m_assembled_tag = std::string(tag).append(":").append(SPECPDQ_SCREEN_NAME); |
| r250237 | r250238 | |
|---|---|---|
| 67 | 67 | |
| 68 | 68 | nubus_vikbw_device::nubus_vikbw_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 69 | 69 | device_t(mconfig, NUBUS_VIKBW, "Moniterm Viking video card", tag, owner, clock, "nb_vikbw", __FILE__), |
| 70 | device_nubus_card_interface(mconfig, *this) | |
| 70 | device_nubus_card_interface(mconfig, *this) | |
| 71 | 71 | { |
| 72 | 72 | } |
| 73 | 73 | |
| 74 | 74 | nubus_vikbw_device::nubus_vikbw_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 75 | 75 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 76 | device_nubus_card_interface(mconfig, *this) | |
| 76 | device_nubus_card_interface(mconfig, *this) | |
| 77 | 77 | { |
| 78 | 78 | } |
| 79 | 79 |
| r250237 | r250238 | |
|---|---|---|
| 71 | 71 | nubus_wsportrait_device::nubus_wsportrait_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 72 | 72 | device_t(mconfig, NUBUS_WSPORTRAIT, "Macintosh II Portrait Video Card", tag, owner, clock, "nb_wspt", __FILE__), |
| 73 | 73 | device_video_interface(mconfig, *this), |
| 74 | device_nubus_card_interface(mconfig, *this) | |
| 74 | device_nubus_card_interface(mconfig, *this) | |
| 75 | 75 | { |
| 76 | 76 | m_assembled_tag = std::string(tag).append(":").append(WSPORTRAIT_SCREEN_NAME); |
| 77 | 77 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 80 | 80 | nubus_wsportrait_device::nubus_wsportrait_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 81 | 81 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 82 | 82 | device_video_interface(mconfig, *this), |
| 83 | device_nubus_card_interface(mconfig, *this) | |
| 83 | device_nubus_card_interface(mconfig, *this) | |
| 84 | 84 | { |
| 85 | 85 | m_assembled_tag = std::string(tag).append(":").append(WSPORTRAIT_SCREEN_NAME); |
| 86 | 86 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 71 | 71 | nubus_xceed30hr_device::nubus_xceed30hr_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 72 | 72 | device_t(mconfig, PDS030_XCEED30HR, "Micron/XCEED Technology Color 30HR", tag, owner, clock, "pd3_30hr", __FILE__), |
| 73 | 73 | device_video_interface(mconfig, *this), |
| 74 | device_nubus_card_interface(mconfig, *this) | |
| 74 | device_nubus_card_interface(mconfig, *this) | |
| 75 | 75 | { |
| 76 | 76 | m_assembled_tag = std::string(tag).append(":").append(XCEED30HR_SCREEN_NAME); |
| 77 | 77 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 80 | 80 | nubus_xceed30hr_device::nubus_xceed30hr_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 81 | 81 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 82 | 82 | device_video_interface(mconfig, *this), |
| 83 | device_nubus_card_interface(mconfig, *this) | |
| 83 | device_nubus_card_interface(mconfig, *this) | |
| 84 | 84 | { |
| 85 | 85 | m_assembled_tag = std::string(tag).append(":").append(XCEED30HR_SCREEN_NAME); |
| 86 | 86 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 64 | 64 | nubus_cb264se30_device::nubus_cb264se30_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 65 | 65 | device_t(mconfig, PDS030_CB264SE30, "RasterOps Colorboard 264/SE30", tag, owner, clock, "pd3_c264", __FILE__), |
| 66 | 66 | device_video_interface(mconfig, *this), |
| 67 | device_nubus_card_interface(mconfig, *this) | |
| 67 | device_nubus_card_interface(mconfig, *this) | |
| 68 | 68 | { |
| 69 | 69 | m_assembled_tag = std::string(tag).append(":").append(CB264SE30_SCREEN_NAME); |
| 70 | 70 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 73 | 73 | nubus_cb264se30_device::nubus_cb264se30_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 74 | 74 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 75 | 75 | device_video_interface(mconfig, *this), |
| 76 | device_nubus_card_interface(mconfig, *this) | |
| 76 | device_nubus_card_interface(mconfig, *this) | |
| 77 | 77 | { |
| 78 | 78 | m_assembled_tag = std::string(tag).append(":").append(CB264SE30_SCREEN_NAME); |
| 79 | 79 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 67 | 67 | nubus_xceedmc30_device::nubus_xceedmc30_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 68 | 68 | device_t(mconfig, PDS030_XCEEDMC30, "Micron/XCEED Technology MacroColor 30", tag, owner, clock, "pd3_mclr", __FILE__), |
| 69 | 69 | device_video_interface(mconfig, *this), |
| 70 | device_nubus_card_interface(mconfig, *this) | |
| 70 | device_nubus_card_interface(mconfig, *this) | |
| 71 | 71 | { |
| 72 | 72 | m_assembled_tag = std::string(tag).append(":").append(XCEEDMC30_SCREEN_NAME); |
| 73 | 73 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 76 | 76 | nubus_xceedmc30_device::nubus_xceedmc30_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 77 | 77 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 78 | 78 | device_video_interface(mconfig, *this), |
| 79 | device_nubus_card_interface(mconfig, *this) | |
| 79 | device_nubus_card_interface(mconfig, *this) | |
| 80 | 80 | { |
| 81 | 81 | m_assembled_tag = std::string(tag).append(":").append(XCEEDMC30_SCREEN_NAME); |
| 82 | 82 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 70 | 70 | nubus_procolor816_device::nubus_procolor816_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 71 | 71 | device_t(mconfig, PDS030_PROCOLOR816, "Lapis ProColor Server 8*16", tag, owner, clock, "pd3_pc16", __FILE__), |
| 72 | 72 | device_video_interface(mconfig, *this), |
| 73 | device_nubus_card_interface(mconfig, *this) | |
| 73 | device_nubus_card_interface(mconfig, *this) | |
| 74 | 74 | { |
| 75 | 75 | m_assembled_tag = std::string(tag).append(":").append(PROCOLOR816_SCREEN_NAME); |
| 76 | 76 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 79 | 79 | nubus_procolor816_device::nubus_procolor816_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 80 | 80 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 81 | 81 | device_video_interface(mconfig, *this), |
| 82 | device_nubus_card_interface(mconfig, *this) | |
| 82 | device_nubus_card_interface(mconfig, *this) | |
| 83 | 83 | { |
| 84 | 84 | m_assembled_tag = std::string(tag).append(":").append(PROCOLOR816_SCREEN_NAME); |
| 85 | 85 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 64 | 64 | nubus_lview_device::nubus_lview_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 65 | 65 | device_t(mconfig, PDS030_LVIEW, "Sigma Designs L-View", tag, owner, clock, "pd3_lviw", __FILE__), |
| 66 | 66 | device_video_interface(mconfig, *this), |
| 67 | device_nubus_card_interface(mconfig, *this) | |
| 67 | device_nubus_card_interface(mconfig, *this) | |
| 68 | 68 | { |
| 69 | 69 | m_assembled_tag = std::string(tag).append(":").append(LVIEW_SCREEN_NAME); |
| 70 | 70 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
| 73 | 73 | nubus_lview_device::nubus_lview_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 74 | 74 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 75 | 75 | device_video_interface(mconfig, *this), |
| 76 | device_nubus_card_interface(mconfig, *this) | |
| 76 | device_nubus_card_interface(mconfig, *this) | |
| 77 | 77 | { |
| 78 | 78 | m_assembled_tag = std::string(tag).append(":").append(LVIEW_SCREEN_NAME); |
| 79 | 79 | m_screen_tag = m_assembled_tag.c_str(); |
| r250237 | r250238 | |
|---|---|---|
| 23 | 23 | |
| 24 | 24 | |
| 25 | 25 | o2_rom_device::o2_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 26 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 27 | device_o2_cart_interface(mconfig, *this), | |
| 28 | m_bank_base(0) | |
| 26 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 27 | device_o2_cart_interface( mconfig, *this ) | |
| 29 | 28 | { |
| 30 | 29 | } |
| 31 | 30 | |
| 32 | 31 | o2_rom_device::o2_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 33 | 32 | : device_t(mconfig, O2_ROM_STD, "Odyssey 2 Standard Carts", tag, owner, clock, "o2_rom", __FILE__), |
| 34 | device_o2_cart_interface( mconfig, *this ), | |
| 35 | m_bank_base(0) | |
| 36 | { | |
| 33 | device_o2_cart_interface( mconfig, *this ) | |
| 34 | { | |
| 37 | 35 | } |
| 38 | 36 | |
| 39 | 37 | o2_rom12_device::o2_rom12_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 76 | 76 | device_t(mconfig, O2_CART_SLOT, "Odyssey 2 Cartridge Slot", tag, owner, clock, "o2_cart_slot", __FILE__), |
| 77 | 77 | device_image_interface(mconfig, *this), |
| 78 | 78 | device_slot_interface(mconfig, *this), |
| 79 | m_type(O2_STD) | |
| 79 | m_type(O2_STD) | |
| 80 | 80 | { |
| 81 | 81 | } |
| 82 | 82 |
| r250237 | r250238 | |
|---|---|---|
| 44 | 44 | |
| 45 | 45 | jasmin_device::jasmin_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 46 | 46 | oricext_device(mconfig, JASMIN, "Jasmin floppy drive interface", tag, owner, clock, "jasmin", __FILE__), |
| 47 | fdc(*this, "fdc") | |
| 47 | fdc(*this, "fdc") | |
| 48 | 48 | { |
| 49 | 49 | } |
| 50 | 50 |
| r250237 | r250238 | |
|---|---|---|
| 39 | 39 | |
| 40 | 40 | microdisc_device::microdisc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 41 | 41 | oricext_device(mconfig, MICRODISC, "Microdisc floppy drive interface", tag, owner, clock, "microdisc", __FILE__), |
| 42 | fdc(*this, "fdc") | |
| 42 | fdc(*this, "fdc") | |
| 43 | 43 | { |
| 44 | 44 | } |
| 45 | 45 |
| r250237 | r250238 | |
|---|---|---|
| 9 | 9 | oricext_connector::oricext_connector(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 10 | 10 | device_t(mconfig, ORICEXT_CONNECTOR, "ORIC extension connector", tag, owner, clock, "oricext_connector", __FILE__), |
| 11 | 11 | device_slot_interface(mconfig, *this), |
| 12 | irq_handler(*this), | |
| 13 | cputag(NULL) | |
| 12 | irq_handler(*this) | |
| 14 | 13 | { |
| 15 | 14 | } |
| 16 | 15 | |
| r250237 | r250238 | |
| 42 | 41 | |
| 43 | 42 | oricext_device::oricext_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 44 | 43 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 45 | device_slot_card_interface(mconfig, *this), | |
| 46 | cputag(nullptr), | |
| 47 | cpu(nullptr), | |
| 48 | connector(nullptr), | |
| 49 | bank_c000_r(nullptr), | |
| 50 | bank_e000_r(nullptr), | |
| 51 | bank_f800_r(nullptr), | |
| 52 | bank_c000_w(nullptr), | |
| 53 | bank_e000_w(nullptr), | |
| 54 | bank_f800_w(nullptr), | |
| 55 | rom(nullptr), | |
| 56 | ram(nullptr) | |
| 44 | device_slot_card_interface(mconfig, *this) | |
| 57 | 45 | { |
| 58 | 46 | } |
| 59 | 47 |
| r250237 | r250238 | |
|---|---|---|
| 15 | 15 | |
| 16 | 16 | pc_joy_device::pc_joy_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 17 | 17 | device_t(mconfig, PC_JOY, "PC joystick port", tag, owner, clock, "pc_joy", __FILE__), |
| 18 | device_slot_interface(mconfig, *this), | |
| 19 | m_dev(nullptr) | |
| 18 | device_slot_interface(mconfig, *this) | |
| 20 | 19 | { |
| 21 | 20 | } |
| 22 | 21 |
| r250237 | r250238 | |
|---|---|---|
| 13 | 13 | m_btn2(*this, "btn2"), |
| 14 | 14 | m_btn3(*this, "btn3"), |
| 15 | 15 | m_btn4(*this, "btn4"), |
| 16 | m_conf(*this, "CONFIG"), | |
| 17 | m_timer(NULL), | |
| 18 | m_count(0), | |
| 19 | m_state(0), | |
| 20 | m_active(false) | |
| 16 | m_conf(*this, "CONFIG") | |
| 21 | 17 | { |
| 22 | 18 | } |
| 23 | 19 |
| r250237 | r250238 | |
|---|---|---|
| 286 | 286 | m_md20(*this, "MD20"), |
| 287 | 287 | m_md21(*this, "MD21"), |
| 288 | 288 | m_md22(*this, "MD22"), |
| 289 | m_md23(*this, "MD23"), | |
| 289 | m_md23(*this, "MD23"), | |
| 290 | 290 | m_p1(0), |
| 291 | 291 | m_p2(0), |
| 292 | 292 | m_q(0) |
| r250237 | r250238 | |
|---|---|---|
| 380 | 380 | pc_kbd_keytronic_pc3270_device::pc_kbd_keytronic_pc3270_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 381 | 381 | device_t(mconfig, PC_KBD_KEYTRONIC_PC3270, "Keytronic PC3270", tag, owner, clock, "keytronic_pc3270", __FILE__), |
| 382 | 382 | device_pc_kbd_interface(mconfig, *this), |
| 383 | m_cpu(*this, "kb_keytr") | |
| 383 | m_cpu(*this, "kb_keytr") | |
| 384 | 384 | { |
| 385 | 385 | } |
| 386 | 386 |
| r250237 | r250238 | |
|---|---|---|
| 247 | 247 | , m_p1_4(*this, "P1.4") |
| 248 | 248 | , m_p1_5(*this, "P1.5") |
| 249 | 249 | , m_p1_6(*this, "P1.6") |
| 250 | , m_p1_7(*this, "P1.7") | |
| 250 | , m_p1_7(*this, "P1.7") | |
| 251 | 251 | { |
| 252 | 252 | } |
| 253 | 253 |
| r250237 | r250238 | |
|---|---|---|
| 275 | 275 | m_dr20(*this, "DR20"), |
| 276 | 276 | m_dr21(*this, "DR21"), |
| 277 | 277 | m_dr22(*this, "DR22"), |
| 278 | m_dr23(*this, "DR23") | |
| 278 | m_dr23(*this, "DR23") | |
| 279 | 279 | { |
| 280 | 280 | } |
| 281 | 281 |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | //------------------------------------------------- |
| 34 | 34 | pc_kbdc_slot_device::pc_kbdc_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 35 | 35 | device_t(mconfig, PC_KBDC_SLOT, "PC_KBDC_SLOT", tag, owner, clock, "pc_kbdc_slot", __FILE__), |
| 36 | device_slot_interface(mconfig, *this), | |
| 37 | m_kbdc_device(nullptr) | |
| 36 | device_slot_interface(mconfig, *this) | |
| 38 | 37 | { |
| 39 | 38 | } |
| 40 | 39 | |
| r250237 | r250238 | |
| 75 | 74 | m_out_clock_cb(*this), |
| 76 | 75 | m_out_data_cb(*this), |
| 77 | 76 | m_clock_state(-1), |
| 78 | m_data_state(-1), | |
| 77 | m_data_state(-1), | |
| 79 | 78 | m_kb_clock_state(1), |
| 80 | 79 | m_kb_data_state(1), |
| 81 | 80 | m_keyboard( NULL ) |
| r250237 | r250238 | |
| 196 | 195 | device_pc_kbd_interface::device_pc_kbd_interface(const machine_config &mconfig, device_t &device) |
| 197 | 196 | : device_slot_card_interface(mconfig, device), |
| 198 | 197 | m_pc_kbdc(NULL), |
| 199 | m_pc_kbdc_tag(NULL) | |
| 198 | m_pc_kbdc_tag(NULL) | |
| 200 | 199 | { |
| 201 | 200 | } |
| 202 | 201 |
| r250237 | r250238 | |
|---|---|---|
| 46 | 46 | } |
| 47 | 47 | |
| 48 | 48 | pce_sf2_device::pce_sf2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 49 | : pce_rom_device(mconfig, PCE_ROM_SF2, "PCE Street Fighters 2 Cart", tag, owner, clock, "pce_sf2", __FILE__), m_bank_base(0) | |
| 50 | { | |
| 49 | : pce_rom_device(mconfig, PCE_ROM_SF2, "PCE Street Fighters 2 Cart", tag, owner, clock, "pce_sf2", __FILE__) | |
| 50 | { | |
| 51 | 51 | } |
| 52 | 52 | |
| 53 | 53 |
| r250237 | r250238 | |
|---|---|---|
| 140 | 140 | device_image_interface(mconfig, *this), |
| 141 | 141 | device_slot_interface(mconfig, *this), |
| 142 | 142 | m_interface("pce_cart"), |
| 143 | m_type(PCE_STD) | |
| 143 | m_type(PCE_STD) | |
| 144 | 144 | { |
| 145 | 145 | } |
| 146 | 146 |
| r250237 | r250238 | |
|---|---|---|
| 55 | 55 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 56 | 56 | device_pet_datassette_port_interface(mconfig, *this), |
| 57 | 57 | m_cassette(*this, "cassette"), |
| 58 | m_motor(false), | |
| 59 | m_read_timer(nullptr) | |
| 58 | m_motor(false) | |
| 60 | 59 | { |
| 61 | 60 | } |
| 62 | 61 | |
| r250237 | r250238 | |
| 64 | 63 | : device_t(mconfig, C2N, "C2N Datassette", tag, owner, clock, "c2n", __FILE__), |
| 65 | 64 | device_pet_datassette_port_interface(mconfig, *this), |
| 66 | 65 | m_cassette(*this, "cassette"), |
| 67 | m_motor(false) | |
| 66 | m_motor(false) | |
| 68 | 67 | { |
| 69 | 68 | } |
| 70 | 69 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | pet_datassette_port_device::pet_datassette_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 55 | 55 | device_t(mconfig, PET_DATASSETTE_PORT, "Datassette Port", tag, owner, clock, "pet_datassette_port", __FILE__), |
| 56 | 56 | device_slot_interface(mconfig, *this), |
| 57 | m_read_handler(*this) | |
| 57 | m_read_handler(*this) | |
| 58 | 58 | { |
| 59 | 59 | } |
| 60 | 60 |
| r250237 | r250238 | |
|---|---|---|
| 36 | 36 | |
| 37 | 37 | pet_expansion_slot_device::pet_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 38 | 38 | device_t(mconfig, PET_EXPANSION_SLOT, "PET memory expansion port", tag, owner, clock, "pet_expansion_slot", __FILE__), |
| 39 | device_slot_interface(mconfig, *this), | |
| 39 | device_slot_interface(mconfig, *this), | |
| 40 | 40 | m_read_dma(*this), |
| 41 | 41 | m_write_dma(*this) |
| 42 | 42 | { |
| r250237 | r250238 | |
|---|---|---|
| 185 | 185 | m_io_sw1(*this, "SW1"), |
| 186 | 186 | m_io_sw2(*this, "SW2"), |
| 187 | 187 | m_system(0), |
| 188 | m_bank(0), | |
| 188 | m_bank(0), | |
| 189 | 189 | m_sel9_rom(0), |
| 190 | 190 | m_pet_irq(CLEAR_LINE), |
| 191 | 191 | m_acia_irq(CLEAR_LINE) |
| r250237 | r250238 | |
|---|---|---|
| 428 | 428 | m_status(1), |
| 429 | 429 | m_dav(1), |
| 430 | 430 | m_ack(1), |
| 431 | m_dev(0) | |
| 431 | m_dev(0) | |
| 432 | 432 | { |
| 433 | 433 | } |
| 434 | 434 |
| r250237 | r250238 | |
|---|---|---|
| 74 | 74 | m_write_irq(*this), |
| 75 | 75 | m_read_dma_cd(*this), |
| 76 | 76 | m_write_dma_cd(*this), |
| 77 | m_write_aec(*this) | |
| 77 | m_write_aec(*this) | |
| 78 | 78 | { |
| 79 | 79 | } |
| 80 | 80 |
| r250237 | r250238 | |
|---|---|---|
| 7 | 7 | |
| 8 | 8 | psx_analog_controller_device::psx_analog_controller_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 9 | 9 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 10 | device_psx_controller_interface(mconfig, *this), | |
| 11 | m_type(), | |
| 12 | m_confmode(false), | |
| 13 | m_analogmode(false), | |
| 14 | m_analoglock(false), | |
| 15 | m_temp(0), | |
| 16 | m_cmd(0), | |
| 10 | device_psx_controller_interface(mconfig, *this), | |
| 17 | 11 | m_pad0(*this, "PSXPAD0"), |
| 18 | 12 | m_pad1(*this, "PSXPAD1"), |
| 19 | 13 | m_rstickx(*this, "PSXRSTICKX"), |
| r250237 | r250238 | |
|---|---|---|
| 10 | 10 | |
| 11 | 11 | psx_controller_port_device::psx_controller_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 12 | 12 | device_t(mconfig, PSX_CONTROLLER_PORT, "Playstation Controller Port", tag, owner, clock, "psx_controller_port", __FILE__), |
| 13 | device_slot_interface(mconfig, *this), | |
| 14 | m_tx(false), | |
| 15 | m_dev(nullptr), | |
| 13 | device_slot_interface(mconfig, *this), | |
| 16 | 14 | m_card(*this, "card") |
| 17 | 15 | { |
| 18 | 16 | } |
| r250237 | r250238 | |
| 42 | 40 | const device_type PSXCONTROLLERPORTS = &device_creator<psxcontrollerports_device>; |
| 43 | 41 | |
| 44 | 42 | psxcontrollerports_device::psxcontrollerports_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 45 | : device_t(mconfig, PSXCONTROLLERPORTS, "PSXCONTROLLERPORTS", tag, owner, clock, "psxcontrollerports", __FILE__), | |
| 43 | : device_t(mconfig, PSXCONTROLLERPORTS, "PSXCONTROLLERPORTS", tag, owner, clock, "psxcontrollerports", __FILE__), | |
| 46 | 44 | m_dsr_handler(*this), |
| 47 | 45 | m_rxd_handler(*this) |
| 48 | 46 | { |
| r250237 | r250238 | |
| 99 | 97 | } |
| 100 | 98 | |
| 101 | 99 | device_psx_controller_interface::device_psx_controller_interface(const machine_config &mconfig, device_t &device) : |
| 102 | device_slot_card_interface(mconfig, device), m_odata(0), m_idata(0), m_bit(0), m_count(0), m_memcard(false), m_clock(false), m_sel(false), | |
| 103 | m_ack(true), m_rx(false), m_ack_timer(nullptr), m_owner(nullptr) | |
| 100 | device_slot_card_interface(mconfig, device), | |
| 101 | m_ack(true) | |
| 104 | 102 | { |
| 105 | 103 | } |
| 106 | 104 |
| r250237 | r250238 | |
|---|---|---|
| 43 | 43 | |
| 44 | 44 | psxcard_device::psxcard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 45 | 45 | : device_t(mconfig, PSXCARD, "Sony PSX Memory Card", tag, owner, clock, "psxcard", __FILE__), |
| 46 | device_image_interface(mconfig, *this), | |
| 47 | pkt_ptr(0), | |
| 48 | pkt_sz(0), | |
| 49 | cmd(0), | |
| 50 | addr(0), | |
| 51 | state(0), | |
| 52 | m_disabled(false), | |
| 53 | m_odata(0), | |
| 54 | m_idata(0), | |
| 55 | m_bit(0), | |
| 56 | m_count(0), | |
| 57 | m_pad(false), | |
| 58 | m_clock(false), | |
| 59 | m_sel(false), | |
| 60 | m_ack(false), | |
| 61 | m_rx(false), | |
| 62 | m_ack_timer(nullptr), | |
| 63 | m_owner(nullptr) | |
| 46 | device_image_interface(mconfig, *this) | |
| 64 | 47 | { |
| 65 | 48 | } |
| 66 | 49 |
| r250237 | r250238 | |
|---|---|---|
| 8 | 8 | |
| 9 | 9 | psx_multitap_device::psx_multitap_device(const machine_config& mconfig, const char* tag, device_t* owner, UINT32 clock) : |
| 10 | 10 | device_t(mconfig, PSX_MULTITAP, "Playstation Multitap", tag, owner, clock, "psx_multitap", __FILE__), |
| 11 | device_psx_controller_interface(mconfig, *this), | |
| 12 | m_activeport(0), | |
| 13 | m_singlemode(false), | |
| 14 | m_nextmode(false), | |
| 15 | m_tapmc(false), | |
| 11 | device_psx_controller_interface(mconfig, *this), | |
| 16 | 12 | m_porta(*this, "a"), |
| 17 | 13 | m_portb(*this, "b"), |
| 18 | 14 | m_portc(*this, "c"), |
| r250237 | r250238 | |
|---|---|---|
| 49 | 49 | m_write_ipl0l(*this), |
| 50 | 50 | m_write_ipl1l(*this), |
| 51 | 51 | m_write_berrl(*this), |
| 52 | m_write_extintl(*this) | |
| 52 | m_write_extintl(*this) | |
| 53 | 53 | { |
| 54 | 54 | } |
| 55 | 55 |
| r250237 | r250238 | |
|---|---|---|
| 56 | 56 | ql_rom_cartridge_slot_t::ql_rom_cartridge_slot_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 57 | 57 | device_t(mconfig, QL_ROM_CARTRIDGE_SLOT, "QL ROM cartridge slot", tag, owner, clock, "ql_rom_cartridge_slot", __FILE__), |
| 58 | 58 | device_slot_interface(mconfig, *this), |
| 59 | device_image_interface(mconfig, *this) | |
| 59 | device_image_interface(mconfig, *this) | |
| 60 | 60 | { |
| 61 | 61 | } |
| 62 | 62 |
| r250237 | r250238 | |
|---|---|---|
| 120 | 120 | m_centronics(*this, CENTRONICS_TAG), |
| 121 | 121 | m_latch(*this, TTL74273_TAG), |
| 122 | 122 | m_rom(*this, "rom"), |
| 123 | m_busy(1) | |
| 123 | m_busy(1) | |
| 124 | 124 | { |
| 125 | 125 | } |
| 126 | 126 |
| r250237 | r250238 | |
|---|---|---|
| 119 | 119 | m_floppy1(*this, WD1772_TAG":1"), |
| 120 | 120 | m_rom(*this, "rom"), |
| 121 | 121 | m_ram(*this, "ram"), |
| 122 | m_ram_size(0) | |
| 122 | m_ram_size(0) | |
| 123 | 123 | { |
| 124 | 124 | } |
| 125 | 125 | |
| r250237 | r250238 | |
| 131 | 131 | m_floppy1(*this, WD1772_TAG":1"), |
| 132 | 132 | m_rom(*this, "rom"), |
| 133 | 133 | m_ram(*this, "ram"), |
| 134 | m_ram_size(ram_size) | |
| 134 | m_ram_size(ram_size) | |
| 135 | 135 | { |
| 136 | 136 | } |
| 137 | 137 |
| r250237 | r250238 | |
|---|---|---|
| 5 | 5 | serial_keyboard_device::serial_keyboard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 6 | 6 | : generic_keyboard_device(mconfig, SERIAL_KEYBOARD, "Serial Keyboard", tag, owner, clock, "serial_keyboard", __FILE__), |
| 7 | 7 | device_serial_interface(mconfig, *this), |
| 8 | device_rs232_port_interface(mconfig, *this), | |
| 9 | m_curr_key(0), | |
| 8 | device_rs232_port_interface(mconfig, *this), | |
| 10 | 9 | m_key_valid(false), |
| 11 | 10 | m_rs232_txbaud(*this, "RS232_TXBAUD"), |
| 12 | 11 | m_rs232_startbits(*this, "RS232_STARTBITS"), |
| r250237 | r250238 | |
| 19 | 18 | serial_keyboard_device::serial_keyboard_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 20 | 19 | : generic_keyboard_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 21 | 20 | device_serial_interface(mconfig, *this), |
| 22 | device_rs232_port_interface(mconfig, *this), | |
| 23 | m_curr_key(0), | |
| 21 | device_rs232_port_interface(mconfig, *this), | |
| 24 | 22 | m_key_valid(false), |
| 25 | 23 | m_rs232_txbaud(*this, "RS232_TXBAUD"), |
| 26 | 24 | m_rs232_startbits(*this, "RS232_STARTBITS"), |
| r250237 | r250238 | |
|---|---|---|
| 14 | 14 | m_rs232_parity(*this, "RS232_PARITY"), |
| 15 | 15 | m_rs232_stopbits(*this, "RS232_STOPBITS"), |
| 16 | 16 | m_input_count(0), |
| 17 | m_input_index(0), | |
| 18 | m_timer_poll(NULL) | |
| 17 | m_input_index(0) | |
| 19 | 18 | { |
| 20 | 19 | } |
| 21 | 20 |
| r250237 | r250238 | |
|---|---|---|
| 18 | 18 | m_rs232_parity(*this, "RS232_PARITY"), |
| 19 | 19 | m_rs232_stopbits(*this, "RS232_STOPBITS"), |
| 20 | 20 | m_input_count(0), |
| 21 | m_input_index(0), | |
| 22 | m_timer_poll(NULL) | |
| 21 | m_input_index(0) | |
| 23 | 22 | { |
| 24 | 23 | } |
| 25 | 24 |
| r250237 | r250238 | |
|---|---|---|
| 6 | 6 | |
| 7 | 7 | rs232_port_device::rs232_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 8 | 8 | device_t(mconfig, RS232_PORT, "RS232 Port", tag, owner, clock, "rs232", __FILE__), |
| 9 | device_slot_interface(mconfig, *this), | |
| 10 | m_rxd(0), | |
| 11 | m_dcd(0), | |
| 12 | m_dsr(0), | |
| 13 | m_ri(0), | |
| 14 | m_cts(0), | |
| 9 | device_slot_interface(mconfig, *this), | |
| 15 | 10 | m_rxd_handler(*this), |
| 16 | 11 | m_dcd_handler(*this), |
| 17 | 12 | m_dsr_handler(*this), |
| r250237 | r250238 | |
| 23 | 18 | |
| 24 | 19 | rs232_port_device::rs232_port_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 25 | 20 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 26 | device_slot_interface(mconfig, *this), | |
| 27 | m_rxd(0), | |
| 28 | m_dcd(0), | |
| 29 | m_dsr(0), | |
| 30 | m_ri(0), | |
| 31 | m_cts(0), | |
| 21 | device_slot_interface(mconfig, *this), | |
| 32 | 22 | m_rxd_handler(*this), |
| 33 | 23 | m_dcd_handler(*this), |
| 34 | 24 | m_dsr_handler(*this), |
| r250237 | r250238 | |
|---|---|---|
| 16 | 16 | device_rs232_port_interface(mconfig, *this), |
| 17 | 17 | device_serial_interface(mconfig, *this), |
| 18 | 18 | m_dtr(1), |
| 19 | m_rts(1), | |
| 20 | m_head(0), | |
| 21 | m_tail(0), | |
| 22 | m_mb(0), | |
| 23 | m_timer(nullptr), | |
| 24 | m_enabled(false), | |
| 19 | m_rts(1), | |
| 25 | 20 | m_x(*this, "ser_mouse_x"), |
| 26 | 21 | m_y(*this, "ser_mouse_y"), |
| 27 | 22 | m_btn(*this, "ser_mouse_btn") |
| r250237 | r250238 | |
|---|---|---|
| 11 | 11 | m_rs232_startbits(*this, "RS232_STARTBITS"), |
| 12 | 12 | m_rs232_databits(*this, "RS232_DATABITS"), |
| 13 | 13 | m_rs232_parity(*this, "RS232_PARITY"), |
| 14 | m_rs232_stopbits(*this, "RS232_STOPBITS"), | |
| 15 | m_curr_key(0), | |
| 16 | m_key_valid(false) | |
| 14 | m_rs232_stopbits(*this, "RS232_STOPBITS") | |
| 17 | 15 | { |
| 18 | 16 | } |
| 19 | 17 |
| r250237 | r250238 | |
|---|---|---|
| 5 | 5 | jvc_xvd701_device::jvc_xvd701_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 6 | 6 | : device_t(mconfig, JVC_XVD701, "JVC XV-D701", tag, owner, clock, "xvd701", __FILE__), |
| 7 | 7 | device_serial_interface(mconfig, *this), |
| 8 | device_rs232_port_interface(mconfig, *this), | |
| 9 | m_response_index(0), | |
| 10 | m_timer_response(nullptr) | |
| 8 | device_rs232_port_interface(mconfig, *this) | |
| 11 | 9 | { |
| 12 | 10 | } |
| 13 | 11 |
| r250237 | r250238 | |
|---|---|---|
| 27 | 27 | //------------------------------------------------- |
| 28 | 28 | |
| 29 | 29 | device_s100_card_interface::device_s100_card_interface(const machine_config &mconfig, device_t &device) |
| 30 | : device_slot_card_interface(mconfig, device), | |
| 31 | m_bus(nullptr), | |
| 32 | m_next(nullptr) | |
| 30 | : device_slot_card_interface(mconfig, device) | |
| 33 | 31 | { |
| 34 | 32 | } |
| 35 | 33 | |
| r250237 | r250238 | |
| 39 | 37 | //------------------------------------------------- |
| 40 | 38 | s100_slot_t::s100_slot_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 41 | 39 | device_t(mconfig, S100_SLOT, "S100 slot", tag, owner, clock, "s100_slot", __FILE__), |
| 42 | device_slot_interface(mconfig, *this) | |
| 40 | device_slot_interface(mconfig, *this) | |
| 43 | 41 | { |
| 44 | 42 | } |
| 45 | 43 |
| r250237 | r250238 | |
|---|---|---|
| 245 | 245 | m_ace3(*this, INS8250_3_TAG), |
| 246 | 246 | m_rtc(*this, UPD1990C_TAG), |
| 247 | 247 | m_7c(*this, "7C"), |
| 248 | m_10a(*this, "10A") | |
| 248 | m_10a(*this, "10A") | |
| 249 | 249 | { |
| 250 | 250 | } |
| 251 | 251 |
| r250237 | r250238 | |
|---|---|---|
| 37 | 37 | //------------------------------------------------- |
| 38 | 38 | |
| 39 | 39 | device_sat_cart_interface::device_sat_cart_interface(const machine_config &mconfig, device_t &device) |
| 40 | : device_slot_card_interface(mconfig, device), | |
| 40 | : device_slot_card_interface(mconfig, device), | |
| 41 | 41 | m_rom(NULL), |
| 42 | 42 | m_rom_size(0) |
| 43 | 43 | { |
| r250237 | r250238 | |
| 104 | 104 | sat_cart_slot_device::sat_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 105 | 105 | device_t(mconfig, SATURN_CART_SLOT, "Saturn Cartridge Slot", tag, owner, clock, "sat_cart_slot", __FILE__), |
| 106 | 106 | device_image_interface(mconfig, *this), |
| 107 | device_slot_interface(mconfig, *this) | |
| 107 | device_slot_interface(mconfig, *this) | |
| 108 | 108 | { |
| 109 | 109 | } |
| 110 | 110 |
| r250237 | r250238 | |
|---|---|---|
| 21 | 21 | m_data4_handler(*this), |
| 22 | 22 | m_data5_handler(*this), |
| 23 | 23 | m_data6_handler(*this), |
| 24 | m_data7_handler(*this), | |
| 25 | m_device_count(0), | |
| 24 | m_data7_handler(*this), | |
| 26 | 25 | m_bsy_in(0), |
| 27 | 26 | m_sel_in(0), |
| 28 | 27 | m_cd_in(0), |
| 29 | 28 | m_io_in(0), |
| 30 | 29 | m_msg_in(0), |
| 31 | 30 | m_req_in(0), |
| 32 | m_ack_in(0), | |
| 33 | m_atn_in(0), | |
| 31 | m_ack_in(0), | |
| 34 | 32 | m_rst_in(0), |
| 35 | 33 | m_data0_in(0), |
| 36 | 34 | m_data1_in(0), |
| r250237 | r250238 | |
| 46 | 44 | m_io_out(0), |
| 47 | 45 | m_msg_out(0), |
| 48 | 46 | m_req_out(0), |
| 49 | m_ack_out(0), | |
| 50 | m_atn_out(0), | |
| 47 | m_ack_out(0), | |
| 51 | 48 | m_rst_out(0), |
| 52 | 49 | m_data0_out(0), |
| 53 | 50 | m_data1_out(0), |
| r250237 | r250238 | |
|---|---|---|
| 13 | 13 | scsihle_device::scsihle_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : |
| 14 | 14 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 15 | 15 | scsi_port_interface(mconfig, *this), |
| 16 | m_scsi_id(*this, "SCSI_ID"), | |
| 17 | req_timer(NULL), | |
| 18 | sel_timer(NULL), | |
| 19 | dataout_timer(NULL), | |
| 20 | cmd_idx(0), | |
| 21 | is_linked(0), | |
| 22 | data_idx(0), | |
| 23 | bytes_left(0), | |
| 24 | data_last(0), | |
| 25 | scsiID(0), | |
| 16 | m_scsi_id(*this, "SCSI_ID"), | |
| 26 | 17 | m_input_data(0) |
| 27 | 18 | { |
| 28 | 19 | } |
| r250237 | r250238 | |
|---|---|---|
| 49 | 49 | } |
| 50 | 50 | |
| 51 | 51 | scv_rom32ram8_device::scv_rom32ram8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 52 | : scv_rom8_device(mconfig, SCV_ROM32K_RAM8K, "SCV 32K + RAM 8K Carts", tag, owner, clock, "scv_rom32_ram8", __FILE__), m_ram_enabled(0) | |
| 53 | { | |
| 52 | : scv_rom8_device(mconfig, SCV_ROM32K_RAM8K, "SCV 32K + RAM 8K Carts", tag, owner, clock, "scv_rom32_ram8", __FILE__) | |
| 53 | { | |
| 54 | 54 | } |
| 55 | 55 | |
| 56 | 56 | scv_rom64_device::scv_rom64_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 57 | : scv_rom8_device(mconfig, SCV_ROM16K, "SCV 64K Carts", tag, owner, clock, "scv_rom64", __FILE__), m_bank_base(0) | |
| 58 | { | |
| 57 | : scv_rom8_device(mconfig, SCV_ROM16K, "SCV 64K Carts", tag, owner, clock, "scv_rom64", __FILE__) | |
| 58 | { | |
| 59 | 59 | } |
| 60 | 60 | |
| 61 | 61 | scv_rom128_device::scv_rom128_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 62 | : scv_rom8_device(mconfig, SCV_ROM32K, "SCV 128K Carts", tag, owner, clock, "scv_rom128", __FILE__), m_bank_base(0) | |
| 63 | { | |
| 62 | : scv_rom8_device(mconfig, SCV_ROM32K, "SCV 128K Carts", tag, owner, clock, "scv_rom128", __FILE__) | |
| 63 | { | |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | scv_rom128ram4_device::scv_rom128ram4_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 67 | : scv_rom8_device(mconfig, SCV_ROM128K_RAM4K, "SCV 128K + RAM 4K Carts", tag, owner, clock, "scv_rom128_ram4", __FILE__), m_bank_base(0), m_ram_enabled(0) | |
| 68 | { | |
| 67 | : scv_rom8_device(mconfig, SCV_ROM128K_RAM4K, "SCV 128K + RAM 4K Carts", tag, owner, clock, "scv_rom128_ram4", __FILE__) | |
| 68 | { | |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | 71 |
| r250237 | r250238 | |
|---|---|---|
| 76 | 76 | device_t(mconfig, SCV_CART_SLOT, "SCV Cartridge Slot", tag, owner, clock, "scv_cart_slot", __FILE__), |
| 77 | 77 | device_image_interface(mconfig, *this), |
| 78 | 78 | device_slot_interface(mconfig, *this), |
| 79 | m_type(SCV_8K) | |
| 79 | m_type(SCV_8K) | |
| 80 | 80 | { |
| 81 | 81 | } |
| 82 | 82 |
| r250237 | r250238 | |
|---|---|---|
| 45 | 45 | |
| 46 | 46 | sega8_rom_device::sega8_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 47 | 47 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 48 | device_sega8_cart_interface( mconfig, *this ), m_ram_base(0), m_ram_enabled(0) | |
| 49 | { | |
| 48 | device_sega8_cart_interface( mconfig, *this ) | |
| 49 | { | |
| 50 | 50 | } |
| 51 | 51 | |
| 52 | 52 | sega8_rom_device::sega8_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 53 | 53 | : device_t(mconfig, SEGA8_ROM_STD, "Mark III, SMS & GG Carts", tag, owner, clock, "sega8_rom", __FILE__), |
| 54 | device_sega8_cart_interface( mconfig, *this ), m_ram_base(0), m_ram_enabled(0) | |
| 55 | { | |
| 54 | device_sega8_cart_interface( mconfig, *this ) | |
| 55 | { | |
| 56 | 56 | } |
| 57 | 57 | |
| 58 | 58 | |
| r250237 | r250238 | |
| 86 | 86 | : sega8_rom_device(mconfig, SEGA8_ROM_TEREBI, "SG-1000 Terebi Oekaki Cart", tag, owner, clock, "sega8_terebi", __FILE__), |
| 87 | 87 | m_tvdraw_x(*this, "TVDRAW_X"), |
| 88 | 88 | m_tvdraw_y(*this, "TVDRAW_Y"), |
| 89 | m_tvdraw_pen(*this, "TVDRAW_PEN"), m_tvdraw_data(0) | |
| 90 | { | |
| 89 | m_tvdraw_pen(*this, "TVDRAW_PEN") | |
| 90 | { | |
| 91 | 91 | } |
| 92 | 92 | |
| 93 | 93 | |
| r250237 | r250238 | |
| 108 | 108 | sega8_eeprom_device::sega8_eeprom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 109 | 109 | : device_t(mconfig, SEGA8_ROM_EEPROM, "GG Carts + EEPROM", tag, owner, clock, "sega8_eeprom", __FILE__), |
| 110 | 110 | device_sega8_cart_interface( mconfig, *this ), |
| 111 | m_eeprom(*this, "eeprom"), m_93c46_enabled(0), m_93c46_lines(0) | |
| 112 | { | |
| 111 | m_eeprom(*this, "eeprom") | |
| 112 | { | |
| 113 | 113 | } |
| 114 | 114 | |
| 115 | 115 | |
| 116 | 116 | sega8_codemasters_device::sega8_codemasters_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 117 | 117 | : device_t(mconfig, SEGA8_ROM_CODEMASTERS, "Mark III, SMS & GG Codemasters Carts", tag, owner, clock, "sega8_codemasters", __FILE__), |
| 118 | device_sega8_cart_interface( mconfig, *this ), m_ram_base(0), m_ram_enabled(0) | |
| 119 | { | |
| 118 | device_sega8_cart_interface( mconfig, *this ) | |
| 119 | { | |
| 120 | 120 | } |
| 121 | 121 | |
| 122 | 122 | |
| r250237 | r250238 | |
| 128 | 128 | |
| 129 | 129 | sega8_zemina_device::sega8_zemina_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 130 | 130 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 131 | device_sega8_cart_interface( mconfig, *this ), m_ram_base(0), m_ram_enabled(0) | |
| 132 | { | |
| 131 | device_sega8_cart_interface( mconfig, *this ) | |
| 132 | { | |
| 133 | 133 | } |
| 134 | 134 | |
| 135 | 135 | sega8_zemina_device::sega8_zemina_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 136 | 136 | : device_t(mconfig, SEGA8_ROM_ZEMINA, "SMS Zemina Carts", tag, owner, clock, "sega8_zemina", __FILE__), |
| 137 | device_sega8_cart_interface( mconfig, *this ), m_ram_base(0), m_ram_enabled(0) | |
| 138 | { | |
| 137 | device_sega8_cart_interface( mconfig, *this ) | |
| 138 | { | |
| 139 | 139 | } |
| 140 | 140 | |
| 141 | 141 | |
| r250237 | r250238 | |
| 153 | 153 | |
| 154 | 154 | |
| 155 | 155 | sega8_hicom_device::sega8_hicom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 156 | : sega8_rom_device(mconfig, SEGA8_ROM_HICOM, "SMS Hi-Com Carts", tag, owner, clock, "sega8_hicom", __FILE__), m_rom_bank_base(0) | |
| 157 | { | |
| 156 | : sega8_rom_device(mconfig, SEGA8_ROM_HICOM, "SMS Hi-Com Carts", tag, owner, clock, "sega8_hicom", __FILE__) | |
| 157 | { | |
| 158 | 158 | } |
| 159 | 159 | |
| 160 | 160 |
| r250237 | r250238 | |
|---|---|---|
| 114 | 114 | m_type(SEGA8_BASE_ROM), |
| 115 | 115 | m_must_be_loaded(FALSE), |
| 116 | 116 | m_interface("sms_cart"), |
| 117 | m_extensions("bin") | |
| 117 | m_extensions("bin") | |
| 118 | 118 | { |
| 119 | 119 | m_is_card = is_card; |
| 120 | 120 | } |
| r250237 | r250238 | |
| 127 | 127 | m_must_be_loaded(FALSE), |
| 128 | 128 | m_is_card(FALSE), |
| 129 | 129 | m_interface("sms_cart"), |
| 130 | m_extensions("bin") | |
| 130 | m_extensions("bin") | |
| 131 | 131 | { |
| 132 | 132 | } |
| 133 | 133 |
| r250237 | r250238 | |
|---|---|---|
| 74 | 74 | device_sms_control_port_interface(mconfig, *this), |
| 75 | 75 | m_lphaser_pins(*this, "CTRL_PORT"), |
| 76 | 76 | m_lphaser_x(*this, "LPHASER_X"), |
| 77 | m_lphaser_y(*this, "LPHASER_Y") | |
| 77 | m_lphaser_y(*this, "LPHASER_Y") | |
| 78 | 78 | { |
| 79 | 79 | // Workaround for failed validation that occurs when running on a driver |
| 80 | 80 | // with Sega Scope emulation, which adds 2 screens (left/right lenses). |
| r250237 | r250238 | |
|---|---|---|
| 62 | 62 | |
| 63 | 63 | sms_control_port_device::sms_control_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 64 | 64 | device_t(mconfig, SMS_CONTROL_PORT, "Sega SMS control port", tag, owner, clock, "sms_control_port", __FILE__), |
| 65 | device_slot_interface(mconfig, *this), | |
| 65 | device_slot_interface(mconfig, *this), | |
| 66 | 66 | m_th_pin_handler(*this), |
| 67 | 67 | m_pixel_handler(*this) |
| 68 | 68 | { |
| r250237 | r250238 | |
|---|---|---|
| 154 | 154 | m_last_data(0), |
| 155 | 155 | m_x_axis_reset_value(0x80), // value 0x80 helps when start playing paddle games. |
| 156 | 156 | m_y_axis_reset_value(0x80), |
| 157 | m_interval(SPORTS_PAD_INTERVAL) | |
| 157 | m_interval(SPORTS_PAD_INTERVAL) | |
| 158 | 158 | { |
| 159 | 159 | } |
| 160 | 160 |
| r250237 | r250238 | |
|---|---|---|
| 52 | 52 | |
| 53 | 53 | sms_expansion_slot_device::sms_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 54 | 54 | device_t(mconfig, SMS_EXPANSION_SLOT, "Sega SMS expansion slot", tag, owner, clock, "sms_expansion_slot", __FILE__), |
| 55 | device_slot_interface(mconfig, *this) | |
| 55 | device_slot_interface(mconfig, *this) | |
| 56 | 56 | { |
| 57 | 57 | } |
| 58 | 58 |
| r250237 | r250238 | |
|---|---|---|
| 25 | 25 | |
| 26 | 26 | |
| 27 | 27 | sns_rom_bsx_device::sns_rom_bsx_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 28 | : sns_rom_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 29 | m_base_unit(nullptr), | |
| 30 | access_00_1f(0), | |
| 31 | access_80_9f(0), | |
| 32 | access_40_4f(0), | |
| 33 | access_50_5f(0), | |
| 34 | access_60_6f(0), | |
| 35 | rom_access(0), | |
| 36 | m_slot(*this, "bs_slot") | |
| 28 | : sns_rom_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 29 | m_slot(*this, "bs_slot") | |
| 37 | 30 | { |
| 38 | 31 | } |
| 39 | 32 | |
| 40 | 33 | sns_rom_bsx_device::sns_rom_bsx_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 41 | 34 | : sns_rom_device(mconfig, SNS_ROM_BSX, "SNES BS-X Cart", tag, owner, clock, "sns_rom_bsx", __FILE__), |
| 42 | m_base_unit(nullptr), | |
| 43 | access_00_1f(0), | |
| 44 | access_80_9f(0), | |
| 45 | access_40_4f(0), | |
| 46 | access_50_5f(0), | |
| 47 | access_60_6f(0), | |
| 48 | rom_access(0), | |
| 49 | 35 | m_slot(*this, "bs_slot") |
| 50 | 36 | { |
| 51 | 37 | } |
| r250237 | r250238 | |
| 63 | 49 | } |
| 64 | 50 | |
| 65 | 51 | sns_rom_bsmempak_device::sns_rom_bsmempak_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 66 | : sns_rom_device(mconfig, SNS_BSMEMPAK, "SNES BS-X Memory packs", tag, owner, clock, "sns_bsmempak", __FILE__), m_command(0), m_write_old(0), m_write_new(0), m_flash_enable(0), m_read_enable(0), m_write_enable(0) | |
| 67 | { | |
| 52 | : sns_rom_device(mconfig, SNS_BSMEMPAK, "SNES BS-X Memory packs", tag, owner, clock, "sns_bsmempak", __FILE__) | |
| 53 | { | |
| 68 | 54 | } |
| 69 | 55 | |
| 70 | 56 | |
| r250237 | r250238 | |
| 127 | 113 | // BS-X Base Unit emulation, to be device-fied ? |
| 128 | 114 | |
| 129 | 115 | BSX_base::BSX_base(running_machine &machine) |
| 130 | : | |
| 116 | : m_machine(machine) | |
| 131 | 117 | { |
| 132 | 118 | m_machine.save().save_item(regs, "SNES_BSX/regs"); |
| 133 | 119 | m_machine.save().save_item(r2192_counter, "SNES_BSX/r2192_counter"); |
| r250237 | r250238 | |
|---|---|---|
| 21 | 21 | |
| 22 | 22 | |
| 23 | 23 | sns_pfest94_device::sns_pfest94_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 24 | : device_t(mconfig, SNS_PFEST94, "SNES Powerfest '94", tag, owner, clock, "sns_pfest94", __FILE__), | |
| 25 | device_sns_cart_interface(mconfig, *this), | |
| 26 | m_upd7725(*this, "dsp"), | |
| 27 | m_dsw(*this, "DIPSW"), | |
| 28 | m_base_bank(0), | |
| 29 | m_mask(0), | |
| 30 | m_status(0), | |
| 31 | m_count(0), | |
| 32 | pfest94_timer(nullptr) | |
| 24 | : device_t(mconfig, SNS_PFEST94, "SNES Powerfest '94", tag, owner, clock, "sns_pfest94", __FILE__), | |
| 25 | device_sns_cart_interface( mconfig, *this ), | |
| 26 | m_upd7725(*this, "dsp"), | |
| 27 | m_dsw(*this, "DIPSW") | |
| 33 | 28 | { |
| 34 | 29 | } |
| 35 | 30 |
| r250237 | r250238 | |
|---|---|---|
| 42 | 42 | } |
| 43 | 43 | |
| 44 | 44 | sns_rom_obc1_device::sns_rom_obc1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 45 | : sns_rom_device(mconfig, SNS_LOROM_OBC1, "SNES Cart (LoROM) + OBC-1", tag, owner, clock, "sns_rom_obc1", __FILE__), m_address(0), m_offset(0), m_shift(0) | |
| 46 | { | |
| 45 | : sns_rom_device(mconfig, SNS_LOROM_OBC1, "SNES Cart (LoROM) + OBC-1", tag, owner, clock, "sns_rom_obc1", __FILE__) | |
| 46 | { | |
| 47 | 47 | } |
| 48 | 48 | |
| 49 | 49 | |
| 50 | 50 | |
| 51 | 51 | // Pirate LoROM 'mappers' |
| 52 | 52 | sns_rom_pokemon_device::sns_rom_pokemon_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 53 | : sns_rom_device(mconfig, SNS_LOROM_POKEMON, "SNES Pirate Carts with Protection", tag, owner, clock, "sns_rom_pokemon", __FILE__), m_latch(0) | |
| 54 | { | |
| 53 | : sns_rom_device(mconfig, SNS_LOROM_POKEMON, "SNES Pirate Carts with Protection", tag, owner, clock, "sns_rom_pokemon", __FILE__) | |
| 54 | { | |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | 57 | sns_rom_tekken2_device::sns_rom_tekken2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 58 | : sns_rom_device(mconfig, SNS_LOROM_TEKKEN2, "SNES Tekken 2", tag, owner, clock, "sns_rom_tekken2", __FILE__), m_prot(0) | |
| 59 | { | |
| 58 | : sns_rom_device(mconfig, SNS_LOROM_TEKKEN2, "SNES Tekken 2", tag, owner, clock, "sns_rom_tekken2", __FILE__) | |
| 59 | { | |
| 60 | 60 | } |
| 61 | 61 | |
| 62 | 62 | sns_rom_soulblad_device::sns_rom_soulblad_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
| 76 | 76 | |
| 77 | 77 | // Multigame LoROM 'mappers' |
| 78 | 78 | sns_rom_mcpirate1_device::sns_rom_mcpirate1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 79 | : sns_rom_device(mconfig, SNS_LOROM_MCPIR1, "SNES Pirate Multigame Carts Type 1", tag, owner, clock, "sns_rom_mcpirate1", __FILE__), m_base_bank(0) | |
| 80 | { | |
| 79 | : sns_rom_device(mconfig, SNS_LOROM_MCPIR1, "SNES Pirate Multigame Carts Type 1", tag, owner, clock, "sns_rom_mcpirate1", __FILE__) | |
| 80 | { | |
| 81 | 81 | } |
| 82 | 82 | |
| 83 | 83 | sns_rom_mcpirate2_device::sns_rom_mcpirate2_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 84 | : sns_rom_device(mconfig, SNS_LOROM_MCPIR2, "SNES Pirate Multigame Carts Type 2", tag, owner, clock, "sns_rom_mcpirate2", __FILE__), m_base_bank(0) | |
| 85 | { | |
| 84 | : sns_rom_device(mconfig, SNS_LOROM_MCPIR2, "SNES Pirate Multigame Carts Type 2", tag, owner, clock, "sns_rom_mcpirate2", __FILE__) | |
| 85 | { | |
| 86 | 86 | } |
| 87 | 87 | |
| 88 | 88 | sns_rom_20col_device::sns_rom_20col_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 89 | : sns_rom_device(mconfig, SNS_LOROM_20COL, "SNES Super 20 Collection", tag, owner, clock, "sns_rom_20col", __FILE__), m_base_bank(0) | |
| 90 | { | |
| 89 | : sns_rom_device(mconfig, SNS_LOROM_20COL, "SNES Super 20 Collection", tag, owner, clock, "sns_rom_20col", __FILE__) | |
| 90 | { | |
| 91 | 91 | } |
| 92 | 92 | |
| 93 | 93 |
| r250237 | r250238 | |
|---|---|---|
| 32 | 32 | } |
| 33 | 33 | |
| 34 | 34 | sns_rom21_srtc_device::sns_rom21_srtc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 35 | : sns_rom21_device(mconfig, SNS_HIROM_SRTC, "SNES Cart (HiROM) + S-RTC", tag, owner, clock, "sns_rom21_srtc", __FILE__), m_mode(0), m_index(0) | |
| 36 | { | |
| 35 | : sns_rom21_device(mconfig, SNS_HIROM_SRTC, "SNES Cart (HiROM) + S-RTC", tag, owner, clock, "sns_rom21_srtc", __FILE__) | |
| 36 | { | |
| 37 | 37 | } |
| 38 | 38 | |
| 39 | 39 |
| r250237 | r250238 | |
|---|---|---|
| 88 | 88 | sns_sa1_device::sns_sa1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 89 | 89 | : device_t(mconfig, SNS_LOROM_SA1, "SNES Cart + SA-1", tag, owner, clock, "sns_rom_sa1", __FILE__), |
| 90 | 90 | device_sns_cart_interface( mconfig, *this ), |
| 91 | m_sa1(*this, "sa1cpu"), m_sa1_ctrl(0), m_scpu_sie(0), m_sa1_reset(0), m_sa1_nmi(0), m_sa1_irq(0), m_scpu_ctrl(0), m_sa1_sie(0), m_irq_vector(0), m_nmi_vector(0), m_hcount(0), m_vcount(0), m_bank_c_hi(0), m_bank_c_rom(0), m_bank_d_hi(0), m_bank_d_rom(0), m_bank_e_hi(0), m_bank_e_rom(0), m_bank_f_hi(0), m_bank_f_rom(0), m_bwram_snes(0), m_bwram_sa1(0), m_bwram_sa1_source(0), m_bwram_sa1_format(0), m_bwram_write_snes(0), m_bwram_write_sa1(0), m_bwpa_sa1(0), m_iram_write_snes(0), m_iram_write_sa1(0), m_dma_ctrl(0), m_dma_ccparam(0), m_src_addr(0), m_dst_addr(0), m_dma_cnt(0), m_math_ctlr(0), m_math_overflow(0), m_math_a(0), m_math_b(0), m_math_res(0), m_vda(0), m_vbit(0), m_vlen(0), m_drm(0), m_scpu_flags(0), m_sa1_flags(0), m_hcr(0), m_vcr(0) | |
| 92 | { | |
| 91 | m_sa1(*this, "sa1cpu") | |
| 92 | { | |
| 93 | 93 | } |
| 94 | 94 | |
| 95 | 95 |
| r250237 | r250238 | |
|---|---|---|
| 413 | 413 | |
| 414 | 414 | sns_rom_sdd1_device::sns_rom_sdd1_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 415 | 415 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 416 | device_sns_cart_interface( mconfig, *this ), m_sdd1_enable(0), m_xfer_enable(0), m_sdd1emu(nullptr) | |
| 417 | { | |
| 416 | device_sns_cart_interface( mconfig, *this ) | |
| 417 | { | |
| 418 | 418 | } |
| 419 | 419 | |
| 420 | 420 | sns_rom_sdd1_device::sns_rom_sdd1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 421 | 421 | : device_t(mconfig, SNS_LOROM_SDD1, "SNES Cart + S-DD1", tag, owner, clock, "sns_rom_sdd1", __FILE__), |
| 422 | device_sns_cart_interface( mconfig, *this ), m_sdd1_enable(0), m_xfer_enable(0), m_sdd1emu(nullptr) | |
| 423 | { | |
| 422 | device_sns_cart_interface( mconfig, *this ) | |
| 423 | { | |
| 424 | 424 | } |
| 425 | 425 | |
| 426 | 426 |
| r250237 | r250238 | |
|---|---|---|
| 10 | 10 | class SDD1_IM //Input Manager |
| 11 | 11 | { |
| 12 | 12 | public: |
| 13 | SDD1_IM(): | |
| 14 | m_byte_ptr(0), | |
| 15 | m_bit_count(0) | |
| 16 | { } | |
| 13 | SDD1_IM() {} | |
| 17 | 14 | |
| 18 | 15 | UINT32 m_byte_ptr; |
| 19 | 16 | UINT8 m_bit_count; |
| r250237 | r250238 | |
| 37 | 34 | { |
| 38 | 35 | public: |
| 39 | 36 | SDD1_BG(SDD1_GCD* associatedGCD, UINT8 code) |
| 40 | : m_code_num(code), | |
| 41 | m_MPScount(0), | |
| 42 | m_LPSind(0), | |
| 43 | m_GCD(associatedGCD) | |
| 44 | { | |
| 45 | } | |
| 37 | : m_code_num(code), | |
| 38 | m_GCD(associatedGCD) { } | |
| 46 | 39 | |
| 47 | 40 | UINT8 m_code_num; |
| 48 | 41 | UINT8 m_MPScount; |
| r250237 | r250238 | |
| 90 | 83 | { |
| 91 | 84 | public: |
| 92 | 85 | SDD1_CM(SDD1_PEM* associatedPEM) |
| 93 | : m_ | |
| 86 | : m_PEM(associatedPEM) { } | |
| 94 | 87 | |
| 95 | 88 | UINT8 m_bitplanesInfo; |
| 96 | 89 | UINT8 m_contextBitsInfo; |
| r250237 | r250238 | |
| 108 | 101 | { |
| 109 | 102 | public: |
| 110 | 103 | SDD1_OL(SDD1_CM* associatedCM) |
| 111 | : m_ | |
| 104 | : m_CM(associatedCM) { } | |
| 112 | 105 | |
| 113 | 106 | UINT8 m_bitplanesInfo; |
| 114 | 107 | UINT16 m_length; |
| r250237 | r250238 | |
|---|---|---|
| 22 | 22 | const device_type SNS_LOROM_SUPERGB = &device_creator<sns_rom_sgb_device>; |
| 23 | 23 | |
| 24 | 24 | |
| 25 | sns_rom_sgb_device::sns_rom_sgb_device(const machine_config& mconfig, const char* tag, device_t* owner, UINT32 clock) : | |
| 26 | sns_rom_device(mconfig, SNS_LOROM_SUPERGB, "SNES Super Game Boy Cart", tag, owner, clock, "sns_rom_sgb", __FILE__), | |
| 27 | m_gb_cpu(*this, "sgb_cpu"), | |
| 28 | m_gb_snd(*this, "sgb_snd"), | |
| 29 | m_gb_lcd(*this, "sgb_lcd"), | |
| 30 | m_cartslot(*this, "gb_slot"), | |
| 31 | m_sgb_ly(0), | |
| 32 | m_sgb_row(0), | |
| 33 | m_vram(0), | |
| 34 | m_port(0), | |
| 35 | m_joy1(0), | |
| 36 | m_joy2(0), | |
| 37 | m_joy3(0), | |
| 38 | m_joy4(0), | |
| 39 | m_vram_offs(0), | |
| 40 | m_mlt_req(0), | |
| 41 | m_lcd_row(0), | |
| 42 | m_packetsize(0) | |
| 25 | sns_rom_sgb_device::sns_rom_sgb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) | |
| 26 | : sns_rom_device(mconfig, SNS_LOROM_SUPERGB, "SNES Super Game Boy Cart", tag, owner, clock, "sns_rom_sgb", __FILE__), | |
| 27 | m_gb_cpu(*this, "sgb_cpu"), | |
| 28 | m_gb_snd(*this, "sgb_snd"), | |
| 29 | m_gb_lcd(*this, "sgb_lcd"), | |
| 30 | m_cartslot(*this, "gb_slot") | |
| 43 | 31 | { |
| 44 | 32 | } |
| 45 | 33 |
| r250237 | r250238 | |
|---|---|---|
| 177 | 177 | device_image_interface(mconfig, *this), |
| 178 | 178 | device_slot_interface(mconfig, *this), |
| 179 | 179 | m_addon(ADDON_NONE), |
| 180 | m_type(SNES_MODE20) | |
| 180 | m_type(SNES_MODE20) | |
| 181 | 181 | { |
| 182 | 182 | } |
| 183 | 183 |
| r250237 | r250238 | |
|---|---|---|
| 25 | 25 | |
| 26 | 26 | |
| 27 | 27 | sns_rom_spc7110_device::sns_rom_spc7110_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 28 | : sns_rom21_device(mconfig, type, name, tag, owner, clock, shortname, source), m_r4801(0), m_r4802(0), m_r4803(0), m_r4804(0), m_r4805(0), m_r4806(0), m_r4807(0), | |
| 29 | m_r4808(0), m_r4809(0), m_r480a(0), m_r480b(0), m_r480c(0), m_decomp(nullptr), m_r4811(0), m_r4812(0), m_r4813(0), m_r4814(0), m_r4815(0), m_r4816(0), m_r4817(0), m_r4818(0), | |
| 30 | m_r481x(0), m_r4814_latch(0), m_r4815_latch(0), m_r4820(0), m_r4821(0), m_r4822(0), m_r4823(0), m_r4824(0), m_r4825(0), m_r4826(0), m_r4827(0), m_r4828(0), m_r4829(0), m_r482a(0), | |
| 31 | m_r482b(0), m_r482c(0), m_r482d(0), m_r482e(0), m_r482f(0), m_r4830(0), m_r4831(0), m_r4832(0), m_r4833(0), m_r4834(0), m_dx_offset(0), m_ex_offset(0), m_fx_offset(0), m_r4840(0), | |
| 32 | m_r4841(0), m_r4842(0), m_rtc_state(0), m_rtc_mode(0), m_rtc_index(0), m_rtc_offset(0) | |
| 33 | { | |
| 28 | : sns_rom21_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 29 | { | |
| 34 | 30 | } |
| 35 | 31 | |
| 36 | 32 | sns_rom_spc7110_device::sns_rom_spc7110_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 37 | : sns_rom21_device(mconfig, SNS_HIROM_SPC7110, "SNES Cart + SPC-7110", tag, owner, clock, "sns_rom_spc7110", __FILE__), m_r4801(0), m_r4802(0), m_r4803(0), m_r4804(0), m_r4805(0), m_r4806(0), m_r4807(0), | |
| 38 | m_r4808(0), m_r4809(0), m_r480a(0), m_r480b(0), m_r480c(0), m_decomp(nullptr), m_r4811(0), m_r4812(0), m_r4813(0), m_r4814(0), m_r4815(0), m_r4816(0), m_r4817(0), m_r4818(0), | |
| 39 | m_r481x(0), m_r4814_latch(0), m_r4815_latch(0), m_r4820(0), m_r4821(0), m_r4822(0), m_r4823(0), m_r4824(0), m_r4825(0), m_r4826(0), m_r4827(0), m_r4828(0), m_r4829(0), m_r482a(0), | |
| 40 | m_r482b(0), m_r482c(0), m_r482d(0), m_r482e(0), m_r482f(0), m_r4830(0), m_r4831(0), m_r4832(0), m_r4833(0), m_r4834(0), m_dx_offset(0), m_ex_offset(0), m_fx_offset(0), m_r4840(0), | |
| 41 | m_r4841(0), m_r4842(0), m_rtc_state(0), m_rtc_mode(0), m_rtc_index(0), m_rtc_offset(0) | |
| 33 | : sns_rom21_device(mconfig, SNS_HIROM_SPC7110, "SNES Cart + SPC-7110", tag, owner, clock, "sns_rom_spc7110", __FILE__) | |
| 42 | 34 | { |
| 43 | 35 | } |
| 44 | 36 |
| r250237 | r250238 | |
|---|---|---|
| 84 | 84 | snes_bcbattle_device::snes_bcbattle_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 85 | 85 | device_t(mconfig, SNES_BARCODE_BATTLER, "Epoch Barcode Battler (SFC)", tag, owner, clock, "snes_bcbattle", __FILE__), |
| 86 | 86 | device_snes_control_port_interface(mconfig, *this), |
| 87 | m_reader(*this, "battler") | |
| 87 | m_reader(*this, "battler") | |
| 88 | 88 | { |
| 89 | 89 | } |
| 90 | 90 |
| r250237 | r250238 | |
|---|---|---|
| 59 | 59 | |
| 60 | 60 | snes_control_port_device::snes_control_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 61 | 61 | device_t(mconfig, SNES_CONTROL_PORT, "Nintendo SNES / SFC control port", tag, owner, clock, "snes_control_port", __FILE__), |
| 62 | device_slot_interface(mconfig, *this) | |
| 62 | device_slot_interface(mconfig, *this) | |
| 63 | 63 | { |
| 64 | 64 | } |
| 65 | 65 |
| r250237 | r250238 | |
|---|---|---|
| 55 | 55 | snes_joypad_device::snes_joypad_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 56 | 56 | device_t(mconfig, SNES_JOYPAD, "Nintendo SNES / SFC Control Pad", tag, owner, clock, "snes_joypad", __FILE__), |
| 57 | 57 | device_snes_control_port_interface(mconfig, *this), |
| 58 | m_joypad(*this, "JOYPAD") | |
| 58 | m_joypad(*this, "JOYPAD") | |
| 59 | 59 | { |
| 60 | 60 | } |
| 61 | 61 |
| r250237 | r250238 | |
|---|---|---|
| 64 | 64 | device_serial_interface(mconfig, *this), |
| 65 | 65 | device_snes_control_port_interface(mconfig, *this), |
| 66 | 66 | m_midiin(*this, "mdin"), |
| 67 | m_midiout(*this, "mdout"), strobe_timer(nullptr), m_strobe_on(0), m_midi_mode(0), m_sent_bits(0), m_strobe_clock(0), | |
| 68 | m_data_sent(0), m_xmit_read(0), m_xmit_write(0), m_recv_read(0), m_recv_write(0), m_tx_busy(false), m_read_status(false), m_status_bit(false) | |
| 67 | m_midiout(*this, "mdout") | |
| 69 | 68 | { |
| 70 | 69 | } |
| 71 | 70 |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | device_snes_control_port_interface(mconfig, *this), |
| 64 | 64 | m_buttons(*this, "BUTTONS"), |
| 65 | 65 | m_xaxis(*this, "MOUSE_X"), |
| 66 | m_yaxis(*this, "MOUSE_Y"), m_strobe(0), m_idx(0), m_latch(0), m_x(0), m_y(0), m_oldx(0), m_oldy(0), m_deltax(0), | |
| 67 | m_deltay(0), m_speed(0), m_dirx(0), m_diry(0) | |
| 66 | m_yaxis(*this, "MOUSE_Y") | |
| 68 | 67 | { |
| 69 | 68 | } |
| 70 | 69 |
| r250237 | r250238 | |
|---|---|---|
| 74 | 74 | m_port2(*this, "port2"), |
| 75 | 75 | m_port3(*this, "port3"), |
| 76 | 76 | m_port4(*this, "port4"), |
| 77 | m_cfg(*this, "CONFIG") | |
| 77 | m_cfg(*this, "CONFIG") | |
| 78 | 78 | { |
| 79 | 79 | } |
| 80 | 80 |
| r250237 | r250238 | |
|---|---|---|
| 48 | 48 | device_t(mconfig, SNES_PACHINKO, "Sunsoft Pachinko Controller", tag, owner, clock, "snes_pachinko", __FILE__), |
| 49 | 49 | device_snes_control_port_interface(mconfig, *this), |
| 50 | 50 | m_dial(*this, "DIAL"), |
| 51 | m_button(*this, "BUTTON") | |
| 51 | m_button(*this, "BUTTON") | |
| 52 | 52 | { |
| 53 | 53 | } |
| 54 | 54 |
| r250237 | r250238 | |
|---|---|---|
| 58 | 58 | device_snes_control_port_interface(mconfig, *this), |
| 59 | 59 | m_buttons(*this, "BUTTONS"), |
| 60 | 60 | m_xaxis(*this, "SSX"), |
| 61 | m_yaxis(*this, "SSY") | |
| 61 | m_yaxis(*this, "SSY") | |
| 62 | 62 | { |
| 63 | 63 | } |
| 64 | 64 |
| r250237 | r250238 | |
|---|---|---|
| 52 | 52 | snes_twintap_device::snes_twintap_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 53 | 53 | device_t(mconfig, SNES_TWINTAP, "Yonezawa Twin Tap Controller", tag, owner, clock, "snes_twintap", __FILE__), |
| 54 | 54 | device_snes_control_port_interface(mconfig, *this), |
| 55 | m_inputs(*this, "INPUTS") | |
| 55 | m_inputs(*this, "INPUTS") | |
| 56 | 56 | { |
| 57 | 57 | } |
| 58 | 58 |
| r250237 | r250238 | |
|---|---|---|
| 37 | 37 | //------------------------------------------------- |
| 38 | 38 | spc1000_exp_device::spc1000_exp_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 39 | 39 | device_t(mconfig, SPC1000_EXP_SLOT, "Samsung SPC-1000 expansion", tag, owner, clock, "spc1000_exp", __FILE__), |
| 40 | device_slot_interface(mconfig, *this) | |
| 40 | device_slot_interface(mconfig, *this) | |
| 41 | 41 | { |
| 42 | 42 | } |
| 43 | 43 |
| r250237 | r250238 | |
|---|---|---|
| 139 | 139 | device_spc1000_card_interface(mconfig, *this), |
| 140 | 140 | m_cpu(*this, "fdccpu"), |
| 141 | 141 | m_fdc(*this, "upd765"), |
| 142 | m_pio(*this, "d8255_master"), m_fd0(nullptr), m_fd1(nullptr), m_timer_tc(nullptr), m_i8255_0_pc(0), m_i8255_1_pc(0), m_i8255_portb(0) | |
| 143 | { | |
| 142 | m_pio(*this, "d8255_master") | |
| 143 | { | |
| 144 | 144 | } |
| 145 | 145 | |
| 146 | 146 |
| r250237 | r250238 | |
|---|---|---|
| 85 | 85 | */ |
| 86 | 86 | |
| 87 | 87 | snug_bwg_device::snug_bwg_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 88 | : ti_expansion_card_device(mconfig, TI99_BWG, "SNUG BwG Floppy Controller", tag, owner, clock, "ti99_bwg", __FILE__), | |
| 88 | : ti_expansion_card_device(mconfig, TI99_BWG, "SNUG BwG Floppy Controller", tag, owner, clock, "ti99_bwg", __FILE__), | |
| 89 | 89 | m_wd1773(*this, FDC_TAG), |
| 90 | m_clock(*this, CLOCK_TAG), m_debug_dataout(false) | |
| 91 | { } | |
| 90 | m_clock(*this, CLOCK_TAG) { } | |
| 92 | 91 | |
| 93 | 92 | /* |
| 94 | 93 | Operate the wait state logic. |
| r250237 | r250238 | |
|---|---|---|
| 26 | 26 | |
| 27 | 27 | snug_enhanced_video_device::snug_enhanced_video_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 28 | 28 | : ti_expansion_card_device(mconfig, TI99_EVPC, "SNUG Enhanced Video Processor Card", tag, owner, clock, "ti99_evpc", __FILE__), |
| 29 | device_nvram_interface(mconfig, *this), | |
| 30 | m_dsrrom(nullptr), | |
| 31 | m_RAMEN(false), | |
| 32 | m_dsr_page(0), | |
| 33 | m_novram(nullptr) | |
| 29 | device_nvram_interface(mconfig, *this) | |
| 34 | 30 | { |
| 35 | 31 | } |
| 36 | 32 |
| r250237 | r250238 | |
|---|---|---|
| 88 | 88 | Constructor for the HFDC card. |
| 89 | 89 | */ |
| 90 | 90 | myarc_hfdc_device::myarc_hfdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 91 | : ti_expansion_card_device(mconfig, TI99_HFDC, "Myarc Hard and Floppy Disk Controller", tag, owner, clock, "ti99_hfdc", __FILE__), | |
| 91 | : ti_expansion_card_device(mconfig, TI99_HFDC, "Myarc Hard and Floppy Disk Controller", tag, owner, clock, "ti99_hfdc", __FILE__), | |
| 92 | 92 | m_hdc9234(*this, FDC_TAG), |
| 93 | m_clock(*this, CLOCK_TAG), m_current_floppy(nullptr), m_current_harddisk(nullptr), m_see_switches(false), m_irq(), m_dip(), m_motor_running(false), | |
| 94 | m_inDsrArea(false), m_HDCsel(false), m_RTCsel(false), m_tapesel(false), m_RAMsel(false), m_ROMsel(false), m_address(0), m_dma_in_progress(false), | |
| 95 | m_wait_for_hd1(false), m_dsrrom(nullptr), m_rom_page(0), m_buffer_ram(nullptr), m_status_latch(0), m_dma_address(0), m_output1_latch(0), m_output2_latch(0), m_lastval(0), m_MOTOR_ON(), m_readyflags(0) | |
| 93 | m_clock(*this, CLOCK_TAG) | |
| 96 | 94 | { |
| 97 | 95 | } |
| 98 | 96 |
| r250237 | r250238 | |
|---|---|---|
| 67 | 67 | |
| 68 | 68 | horizon_ramdisk_device::horizon_ramdisk_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 69 | 69 | : ti_expansion_card_device(mconfig, TI99_HORIZON, "Horizon 4000 Ramdisk", tag, owner, clock,"ti99_horizon",__FILE__), |
| 70 | device_nvram_interface(mconfig, *this) | |
| 70 | device_nvram_interface(mconfig, *this) | |
| 71 | 71 | { |
| 72 | 72 | } |
| 73 | 73 |
| r250237 | r250238 | |
|---|---|---|
| 140 | 140 | #define ROM6_EEPROM "u6_rom6" |
| 141 | 141 | |
| 142 | 142 | snug_high_speed_gpl_device::snug_high_speed_gpl_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 143 | : ti_expansion_card_device(mconfig, TI99_HSGPL, "SNUG High-speed GPL card", tag, owner, clock, "ti99_hsgpl", __FILE__), m_dsr_eeprom(nullptr), | |
| 144 | m_rom6_eeprom(nullptr), m_grom_a_eeprom(nullptr), m_grom_b_eeprom(nullptr), m_ram6_memory(nullptr), m_gram_memory(nullptr), m_dsr_enabled(false), | |
| 145 | m_gram_enabled(false), m_bank_inhibit(false), m_dsr_page(0), m_card_enabled(false), m_write_enabled(false), m_supercart_enabled(false), m_led_on(false), | |
| 146 | m_mbx_enabled(false), m_ram_enabled(false), m_flash_mode(false), m_current_grom_port(0), m_current_bank(0), m_module_bank(0), m_waddr_LSB(false), m_raddr_LSB(false), m_grom_address(0) | |
| 143 | : ti_expansion_card_device(mconfig, TI99_HSGPL, "SNUG High-speed GPL card", tag, owner, clock, "ti99_hsgpl", __FILE__) | |
| 147 | 144 | { |
| 148 | 145 | } |
| 149 | 146 |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | }; |
| 34 | 34 | |
| 35 | 35 | geneve_memex_device::geneve_memex_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 36 | : ti_expansion_card_device(mconfig, TI99_MEMEX, "Geneve memory expansion card", tag, owner, clock, "ti99_memex", __FILE__), | |
| 37 | m_ram(nullptr), | |
| 38 | m_genmod(0) | |
| 36 | : ti_expansion_card_device(mconfig, TI99_MEMEX, "Geneve memory expansion card", tag, owner, clock, "ti99_memex", __FILE__) | |
| 39 | 37 | { |
| 40 | 38 | } |
| 41 | 39 |
| r250237 | r250238 | |
|---|---|---|
| 45 | 45 | }; |
| 46 | 46 | |
| 47 | 47 | myarc_memory_expansion_device::myarc_memory_expansion_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 48 | : ti_expansion_card_device(mconfig, TI99_MYARCMEM, "Myarc Memory expansion card MEXP-1", tag, owner, clock, "ti99_myarcmem", __FILE__), | |
| 49 | m_ram(nullptr), m_dsrrom(nullptr), m_bank(0), m_size(0) | |
| 48 | : ti_expansion_card_device(mconfig, TI99_MYARCMEM, "Myarc Memory expansion card MEXP-1", tag, owner, clock, "ti99_myarcmem", __FILE__) | |
| 50 | 49 | { |
| 51 | 50 | } |
| 52 | 51 |
| r250237 | r250238 | |
|---|---|---|
| 96 | 96 | #define VERBOSE 1 |
| 97 | 97 | |
| 98 | 98 | ti_pcode_card_device::ti_pcode_card_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 99 | : ti_expansion_card_device(mconfig, TI99_P_CODE, "TI-99 P-Code Card", tag, owner, clock, "ti99_pcode", __FILE__) | |
| 99 | : ti_expansion_card_device(mconfig, TI99_P_CODE, "TI-99 P-Code Card", tag, owner, clock, "ti99_pcode", __FILE__) | |
| 100 | 100 | { |
| 101 | 101 | } |
| 102 | 102 |
| r250237 | r250238 | |
|---|---|---|
| 220 | 220 | : bus8z_device(mconfig, PERIBOX, "Peripheral expansion box", tag, owner, clock, "peribox", __FILE__), |
| 221 | 221 | m_console_inta(*this), |
| 222 | 222 | m_console_intb(*this), |
| 223 | m_datamux_ready(*this) | |
| 223 | m_datamux_ready(*this) | |
| 224 | 224 | { |
| 225 | 225 | for (int i=2; i <= 8; i++) m_slot[i] = NULL; |
| 226 | 226 | // The address prefix is actually created by the "Flex cable interface" |
| r250237 | r250238 | |
| 235 | 235 | : bus8z_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 236 | 236 | m_console_inta(*this), |
| 237 | 237 | m_console_intb(*this), |
| 238 | m_datamux_ready(*this) | |
| 238 | m_datamux_ready(*this) | |
| 239 | 239 | { |
| 240 | 240 | for (int i=2; i <= 8; i++) m_slot[i] = NULL; |
| 241 | 241 | } |
| r250237 | r250238 | |
| 614 | 614 | } |
| 615 | 615 | |
| 616 | 616 | peribox_slot_device::peribox_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 617 | : bus8z_device(mconfig, PERIBOX_SLOT, "TI P-Box slot", tag, owner, clock, "peribox_slot", __FILE__), device_slot_interface(mconfig, *this) | |
| 617 | : bus8z_device(mconfig, PERIBOX_SLOT, "TI P-Box slot", tag, owner, clock, "peribox_slot", __FILE__), device_slot_interface(mconfig, *this) | |
| 618 | 618 | { |
| 619 | 619 | } |
| 620 | 620 |
| r250237 | r250238 | |
|---|---|---|
| 193 | 193 | public: |
| 194 | 194 | ti_expansion_card_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 195 | 195 | : bus8z_device(mconfig, type, name, tag, owner, clock, shortname, source), |
| 196 | device_slot_card_interface(mconfig, *this), m_selected(false), m_cru_base(0), m_select_mask(0), m_select_value(0) | |
| 197 | { | |
| 196 | device_slot_card_interface(mconfig, *this) | |
| 197 | { | |
| 198 | 198 | m_slot = static_cast<peribox_slot_device*>(owner); |
| 199 | 199 | m_senila = CLEAR_LINE; |
| 200 | 200 | m_senilb = CLEAR_LINE; |
| r250237 | r250238 | |
|---|---|---|
| 26 | 26 | #define LOG logerror |
| 27 | 27 | |
| 28 | 28 | sams_memory_expansion_device::sams_memory_expansion_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 29 | : ti_expansion_card_device(mconfig, TI99_SAMSMEM, "SuperAMS memory expansion card", tag, owner, clock, "ti99_sams", __FILE__) | |
| 29 | : ti_expansion_card_device(mconfig, TI99_SAMSMEM, "SuperAMS memory expansion card", tag, owner, clock, "ti99_sams", __FILE__) | |
| 30 | 30 | { |
| 31 | 31 | } |
| 32 | 32 |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | /****************************************************************************/ |
| 34 | 34 | |
| 35 | 35 | ti_speech_synthesizer_device::ti_speech_synthesizer_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 36 | : ti_expansion_card_device(mconfig, TI99_SPEECH, "TI-99 Speech synthesizer (on adapter card)", tag, owner, clock, "ti99_speech", __FILE__) | |
| 36 | : ti_expansion_card_device(mconfig, TI99_SPEECH, "TI-99 Speech synthesizer (on adapter card)", tag, owner, clock, "ti99_speech", __FILE__) | |
| 37 | 37 | { |
| 38 | 38 | } |
| 39 | 39 |
| r250237 | r250238 | |
|---|---|---|
| 32 | 32 | #define RAMREGION "ram" |
| 33 | 33 | |
| 34 | 34 | ti_32k_expcard_device::ti_32k_expcard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 35 | : ti_expansion_card_device(mconfig, TI_32KMEM, "TI-99 32KiB memory expansion card", tag, owner, clock, "ti99_32k", __FILE__) | |
| 35 | : ti_expansion_card_device(mconfig, TI_32KMEM, "TI-99 32KiB memory expansion card", tag, owner, clock, "ti99_32k", __FILE__) | |
| 36 | 36 | { |
| 37 | 37 | } |
| 38 | 38 |
| r250237 | r250238 | |
|---|---|---|
| 48 | 48 | #define TI_FDC_TAG "ti_dssd_controller" |
| 49 | 49 | |
| 50 | 50 | ti_fdc_device::ti_fdc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 51 | : ti_expansion_card_device(mconfig, TI99_FDC, "TI-99 Standard DSSD Floppy Controller", tag, owner, clock, "ti99_fdc", __FILE__), m_address(0), m_DRQ(), m_IRQ(), | |
| 52 | m_lastval(0), m_DVENA(), m_inDsrArea(false), m_WAITena(false), m_WDsel(false), m_DSEL(0), m_SIDSEL(), m_motor_on_timer(nullptr), | |
| 53 | m_fd1771(*this, FDC_TAG), m_dsrrom(nullptr), m_current_floppy(nullptr), m_debug_dataout(false) | |
| 54 | { } | |
| 51 | : ti_expansion_card_device(mconfig, TI99_FDC, "TI-99 Standard DSSD Floppy Controller", tag, owner, clock, "ti99_fdc", __FILE__), | |
| 52 | m_fd1771(*this, FDC_TAG) { } | |
| 55 | 53 | |
| 56 | 54 | /* |
| 57 | 55 | Operate the wait state logic. |
| r250237 | r250238 | |
|---|---|---|
| 117 | 117 | #define ESC 0x1b |
| 118 | 118 | |
| 119 | 119 | ti_rs232_pio_device::ti_rs232_pio_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 120 | : ti_expansion_card_device(mconfig, TI99_RS232, "TI-99 RS232/PIO interface", tag, owner, clock, "ti99_rs232", __FILE__) | |
| 120 | : ti_expansion_card_device(mconfig, TI99_RS232, "TI-99 RS232/PIO interface", tag, owner, clock, "ti99_rs232", __FILE__) | |
| 121 | 121 | { |
| 122 | 122 | } |
| 123 | 123 |
| r250237 | r250238 | |
|---|---|---|
| 50 | 50 | }; |
| 51 | 51 | |
| 52 | 52 | nouspikel_ide_interface_device::nouspikel_ide_interface_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 53 | : ti_expansion_card_device(mconfig, TI99_IDE, "Nouspikel IDE interface card", tag, owner, clock, "ti99_ide", __FILE__), m_ata_irq(false), | |
| 54 | m_cru_register(0), m_rtc(nullptr), | |
| 55 | m_ata(*this, "ata"), m_clk_irq(false), m_sram_enable(false), m_sram_enable_dip(false), m_cur_page(0), m_tms9995_mode(false), | |
| 56 | m_input_latch(0), m_output_latch(0), m_ram(nullptr) | |
| 53 | : ti_expansion_card_device(mconfig, TI99_IDE, "Nouspikel IDE interface card", tag, owner, clock, "ti99_ide", __FILE__), | |
| 54 | m_ata(*this, "ata") | |
| 57 | 55 | { |
| 58 | 56 | } |
| 59 | 57 |
| r250237 | r250238 | |
|---|---|---|
| 52 | 52 | }; |
| 53 | 53 | |
| 54 | 54 | nouspikel_usb_smartmedia_device::nouspikel_usb_smartmedia_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 55 | : ti_expansion_card_device(mconfig, TI99_USBSM, "Nouspikel USB/Smartmedia card", tag, owner, clock, "ti99_usbsm", __FILE__), | |
| 56 | m_feeprom_page(0), m_sram_page(0), m_cru_register(0), m_tms9995_mode(false), m_enable_io(false), m_enable_int(false), m_enable_sm(false), | |
| 57 | m_write_flash(false), m_input_latch(0), m_output_latch(0), | |
| 55 | : ti_expansion_card_device(mconfig, TI99_USBSM, "Nouspikel USB/Smartmedia card", tag, owner, clock, "ti99_usbsm", __FILE__), | |
| 58 | 56 | m_smartmedia(*this, "smartmedia"), |
| 59 | 57 | m_flash(*this, STRATA_TAG) |
| 60 | 58 | { |
| r250237 | r250238 | |
|---|---|---|
| 43 | 43 | const device_type FD800 = &device_creator<fd800_legacy_device>; |
| 44 | 44 | |
| 45 | 45 | fd800_legacy_device::fd800_legacy_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 46 | : device_t(mconfig, FD800, "TI FD800 Diablo floppy disk controller", tag, owner, clock, "fd800", __FILE__), | |
| 47 | m_recv_buf(0), m_stat_reg(0), m_xmit_buf(0), m_cmd_reg(0), m_interrupt_f_f(0), | |
| 48 | m_int_line(*this), m_buf_pos(0), m_buf_mode(), m_unit(0), m_sector(0) | |
| 46 | : device_t(mconfig, FD800, "TI FD800 Diablo floppy disk controller", tag, owner, clock, "fd800", __FILE__), | |
| 47 | m_int_line(*this) | |
| 49 | 48 | { |
| 50 | 49 | } |
| 51 | 50 |
| r250237 | r250238 | |
|---|---|---|
| 205 | 205 | |
| 206 | 206 | mainboard8_device::mainboard8_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 207 | 207 | : bus8z_device(mconfig, MAINBOARD8, "TI-99/8 Main board", tag, owner, clock, "ti998_mainboard", __FILE__), |
| 208 | m_ready(*this), | |
| 208 | m_ready(*this), | |
| 209 | 209 | m_oso(*this, OSO_TAG) |
| 210 | 210 | { } |
| 211 | 211 | |
| r250237 | r250238 | |
| 859 | 859 | }; |
| 860 | 860 | |
| 861 | 861 | ti998_oso_device::ti998_oso_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 862 | : device_t(mconfig, OSO, "OSO Hexbus interface", tag, owner, clock, "ti998_oso", __FILE__) | |
| 862 | : device_t(mconfig, OSO, "OSO Hexbus interface", tag, owner, clock, "ti998_oso", __FILE__) | |
| 863 | 863 | { |
| 864 | 864 | } |
| 865 | 865 | |
| r250237 | r250238 | |
| 948 | 948 | #define REAL_TIMING 0 |
| 949 | 949 | |
| 950 | 950 | ti998_spsyn_device::ti998_spsyn_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 951 | : bus8z_device(mconfig, SPEECH8, "TI-99/8 Onboard Speech synthesizer", tag, owner, clock, "ti998_speech", __FILE__), | |
| 951 | : bus8z_device(mconfig, SPEECH8, "TI-99/8 Onboard Speech synthesizer", tag, owner, clock, "ti998_speech", __FILE__), | |
| 952 | 952 | m_ready(*this) |
| 953 | 953 | { |
| 954 | 954 | } |
| r250237 | r250238 | |
|---|---|---|
| 90 | 90 | |
| 91 | 91 | public: |
| 92 | 92 | logically_addressed_device(mapper8_device_kind kind, device_t *busdevice, const mapper8_list_entry &entry) |
| 93 | : | |
| 93 | : m_kind(kind), m_device(busdevice), m_config(&entry) { }; | |
| 94 | 94 | |
| 95 | 95 | private: |
| 96 | 96 | logically_addressed_device *m_next; // needed for simple_list |
| r250237 | r250238 | |
| 109 | 109 | |
| 110 | 110 | public: |
| 111 | 111 | physically_addressed_device(mapper8_device_kind kind, device_t *busdevice, const mapper8_list_entry &entry) |
| 112 | : | |
| 112 | : m_kind(kind), m_device(busdevice), m_config(&entry) { }; | |
| 113 | 113 | |
| 114 | 114 | private: |
| 115 | 115 | physically_addressed_device *m_next; // needed for simple_list |
| r250237 | r250238 | |
|---|---|---|
| 75 | 75 | Constructor |
| 76 | 76 | */ |
| 77 | 77 | ti99_datamux_device::ti99_datamux_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 78 | : device_t(mconfig, DATAMUX, "Databus multiplexer", tag, owner, clock, "ti99_datamux", __FILE__), m_spacep(nullptr), | |
| 79 | m_ready(*this), m_muxready(), m_sysready(), m_addr_buf(0), m_read_mode(false), m_latch(0), m_waitcount(0), m_ram16b(nullptr), m_use32k(false), m_base32k(0), m_cpu(nullptr) | |
| 80 | { } | |
| 78 | : device_t(mconfig, DATAMUX, "Databus multiplexer", tag, owner, clock, "ti99_datamux", __FILE__), | |
| 79 | m_ready(*this) { } | |
| 81 | 80 | |
| 82 | 81 | #define TRACE_READY 0 |
| 83 | 82 | #define TRACE_ACCESS 0 |
| r250237 | r250238 | |
|---|---|---|
| 54 | 54 | |
| 55 | 55 | public: |
| 56 | 56 | attached_device(device_t *busdevice, const dmux_device_list_entry &entry) |
| 57 | : | |
| 57 | : m_device(busdevice), m_config(&entry) { }; | |
| 58 | 58 | |
| 59 | 59 | private: |
| 60 | 60 | attached_device *m_next; |
| r250237 | r250238 | |
|---|---|---|
| 206 | 206 | #define TRACE_PFM 0 |
| 207 | 207 | |
| 208 | 208 | geneve_mapper_device::geneve_mapper_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 209 | : device_t(mconfig, GENEVE_MAPPER, "Geneve Gate Array", tag, owner, clock, "geneve_mapper", __FILE__), m_gromwaddr_LSB(false), m_gromraddr_LSB(false), m_grom_address(0), m_video_waitstates(false), m_extra_waitstates(false), m_ready_asserted(false), m_read_mode(false), m_debug_no_ws(false), m_geneve_mode(false), m_direct_mode(false), m_cartridge_size(0), m_cartridge_secondpage(false), m_cartridge6_writable(false), m_cartridge7_writable(false), m_turbo(false), m_genmod(false), m_timode(false), m_pfm_mode(0), m_pfm_bank(0), m_pfm_output_enable(false), m_sram_mask(0), m_sram_val(0), | |
| 210 | m_ready(*this), m_waitcount(0), m_ext_waitcount(0), m_clock(nullptr), m_cpu(nullptr), m_pfm512(nullptr), m_pfm512a(nullptr), m_keyboard(nullptr), m_video(nullptr), m_peribox(nullptr), m_sound(nullptr), m_sram(nullptr), m_dram(nullptr) | |
| 209 | : device_t(mconfig, GENEVE_MAPPER, "Geneve Gate Array", tag, owner, clock, "geneve_mapper", __FILE__), | |
| 210 | m_ready(*this) | |
| 211 | 211 | { |
| 212 | 212 | m_eprom = NULL; |
| 213 | 213 | } |
| r250237 | r250238 | |
| 1468 | 1468 | |
| 1469 | 1469 | geneve_keyboard_device::geneve_keyboard_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1470 | 1470 | : device_t(mconfig, GENEVE_KEYBOARD, "Geneve XT-style keyboard", tag, owner, clock, "geneve_keyboard", __FILE__), |
| 1471 | m_interrupt(*this), m_key_reset(false), m_key_queue_length(0), m_key_queue_head(0), m_key_in_buffer(false), m_key_numlock_state(false), m_key_ctrl_state(0), m_key_alt_state(0), | |
| 1472 | m_key_real_shift_state(0), m_key_fake_shift_state(false), m_key_fake_unshift_state(false), m_key_autorepeat_key(0), m_key_autorepeat_timer(0), m_keep_keybuf(false), | |
| 1473 | m_keyboard_clock(false), m_timer(nullptr) | |
| 1471 | m_interrupt(*this) | |
| 1474 | 1472 | { |
| 1475 | 1473 | } |
| 1476 | 1474 | |
| r250237 | r250238 | |
| 1920 | 1918 | ****************************************************************************/ |
| 1921 | 1919 | |
| 1922 | 1920 | geneve_mouse_device::geneve_mouse_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 1923 | : device_t(mconfig, GENEVE_MOUSE, "Geneve mouse", tag, owner, clock, "geneve_mouse", __FILE__) | |
| 1921 | : device_t(mconfig, GENEVE_MOUSE, "Geneve mouse", tag, owner, clock, "geneve_mouse", __FILE__) | |
| 1924 | 1922 | { |
| 1925 | 1923 | } |
| 1926 | 1924 |
| r250237 | r250238 | |
|---|---|---|
| 93 | 93 | Constructor. |
| 94 | 94 | */ |
| 95 | 95 | ti99_grom_device::ti99_grom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 96 | : bus8z_device(mconfig, GROM, "TI-99 GROM device", tag, owner, clock, "ti99_grom", __FILE__), m_writable(false), m_ident(0), m_size(0), | |
| 97 | m_gromready(*this), m_clockrate(0), m_address(0), m_buffer(0), m_raddr_LSB(false), m_waddr_LSB(false), m_memptr(nullptr), m_timer(nullptr) | |
| 96 | : bus8z_device(mconfig, GROM, "TI-99 GROM device", tag, owner, clock, "ti99_grom", __FILE__), | |
| 97 | m_gromready(*this) | |
| 98 | 98 | { |
| 99 | 99 | } |
| 100 | 100 |
| r250237 | r250238 | |
|---|---|---|
| 137 | 137 | gromport_device::gromport_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 138 | 138 | : bus8z_device(mconfig, GROMPORT, "Cartridge port", tag, owner, clock, "gromport", __FILE__), |
| 139 | 139 | device_slot_interface(mconfig, *this), |
| 140 | m_connector( | |
| 140 | m_connector(NULL), | |
| 141 | 141 | m_reset_on_insert(true), |
| 142 | 142 | m_console_ready(*this), |
| 143 | m_console_reset(*this), m_grombase(0), m_grommask(0) | |
| 144 | { } | |
| 143 | m_console_reset(*this) { } | |
| 145 | 144 | |
| 146 | 145 | /* Only called for addresses 6000-7fff and GROM addresses (see datamux config) */ |
| 147 | 146 | READ8Z_MEMBER(gromport_device::readz) |
| r250237 | r250238 | |
| 1453 | 1452 | Unlike in the previous implementation we do not model it as a full device. |
| 1454 | 1453 | ***************************************************************************/ |
| 1455 | 1454 | |
| 1456 | ti99_cartridge_pcb::ti99_cartridge_pcb() | |
| 1455 | ti99_cartridge_pcb::ti99_cartridge_pcb() | |
| 1457 | 1456 | { |
| 1458 | 1457 | } |
| 1459 | 1458 | |
| r250237 | r250238 | |
| 2125 | 2124 | Constructor. |
| 2126 | 2125 | */ |
| 2127 | 2126 | rpk::rpk(emu_options& options, const char* sysname) |
| 2128 | :m_options(options), m_type(0) | |
| 2129 | //,m_system_name(sysname) | |
| 2127 | :m_options(options) | |
| 2128 | //,m_system_name(sysname) | |
| 2130 | 2129 | { |
| 2131 | 2130 | m_sockets.reset(); |
| 2132 | 2131 | } |
| r250237 | r250238 | |
| 2462 | 2461 | if (strcmp(socket_node->name, "socket")!=0) throw rpk_exception(RPK_INVALID_LAYOUT, "<pcb> element has only <socket> children"); |
| 2463 | 2462 | id = xml_get_attribute_string(socket_node, "id", NULL); |
| 2464 | 2463 | if (id == NULL) throw rpk_exception(RPK_INVALID_LAYOUT, "<socket> must have an 'id' attribute"); |
| 2465 | uses_name = xml_get_attribute_string(socket_node, "uses", nullptr); | |
| 2466 | if (uses_name == nullptr) throw rpk_exception(RPK_INVALID_LAYOUT, "<socket> must have a 'uses' attribute"); | |
| 2464 | uses_name = xml_get_attribute_string(socket_node, "uses", NULL); | |
| 2465 | if (uses_name == NULL) throw rpk_exception(RPK_INVALID_LAYOUT, "<socket> must have a 'uses' attribute"); | |
| 2467 | 2466 | |
| 2468 | 2467 | bool found = false; |
| 2469 | 2468 | // Locate the resource node |
| r250237 | r250238 | |
|---|---|---|
| 404 | 404 | class ti99_gromemu_cartridge : public ti99_cartridge_pcb |
| 405 | 405 | { |
| 406 | 406 | public: |
| 407 | ti99_gromemu_cartridge(): m_waddr_LSB(false) | |
| 408 | { m_grom_address = 0; } | |
| 407 | ti99_gromemu_cartridge() { m_grom_address = 0; } | |
| 409 | 408 | ~ti99_gromemu_cartridge() { }; |
| 410 | 409 | DECLARE_READ8Z_MEMBER(readz); |
| 411 | 410 | DECLARE_WRITE8_MEMBER(write); |
| r250237 | r250238 | |
|---|---|---|
| 51 | 51 | static const char *const keynames[] = { "KP0", "KP1", "KP2", "KP3", "KP4" }; |
| 52 | 52 | |
| 53 | 53 | ti99_handset_device::ti99_handset_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 54 | : joyport_attached_device(mconfig, HANDSET, "TI-99/4 IR handset", tag, owner, clock, "handset", __FILE__) | |
| 54 | : joyport_attached_device(mconfig, HANDSET, "TI-99/4 IR handset", tag, owner, clock, "handset", __FILE__) | |
| 55 | 55 | { |
| 56 | 56 | } |
| 57 | 57 | |
| r250237 | r250238 | |
| 490 | 490 | INPUT_PORTS_END |
| 491 | 491 | |
| 492 | 492 | ti99_twin_joystick::ti99_twin_joystick(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 493 | : joyport_attached_device(mconfig, HANDSET, "TI-99/4(A) Twin Joystick", tag, owner, clock, "twinjoy", __FILE__) | |
| 493 | : joyport_attached_device(mconfig, HANDSET, "TI-99/4(A) Twin Joystick", tag, owner, clock, "twinjoy", __FILE__) | |
| 494 | 494 | { |
| 495 | 495 | } |
| 496 | 496 |
| r250237 | r250238 | |
|---|---|---|
| 42 | 42 | joyport_device::joyport_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 43 | 43 | : device_t(mconfig, JOYPORT, "Joystick port", tag, owner, clock, "ti99_joyport", __FILE__), |
| 44 | 44 | device_slot_interface(mconfig, *this), |
| 45 | m_interrupt(*this) | |
| 45 | m_interrupt(*this) | |
| 46 | 46 | { |
| 47 | 47 | } |
| 48 | 48 |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | { |
| 34 | 34 | public: |
| 35 | 35 | joyport_attached_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 36 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), m_joyport(nullptr) | |
| 37 | { } | |
| 36 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source) { } | |
| 38 | 37 | |
| 39 | 38 | virtual UINT8 read_dev() =0; |
| 40 | 39 | virtual void write_dev(UINT8 data) =0; |
| r250237 | r250238 | |
|---|---|---|
| 53 | 53 | #define POLL_TIMER 1 |
| 54 | 54 | |
| 55 | 55 | mecmouse_device::mecmouse_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 56 | : joyport_attached_device(mconfig, MECMOUSE, "Mechatronics Mouse", tag, owner, clock, "mecmouse", __FILE__) | |
| 56 | : joyport_attached_device(mconfig, MECMOUSE, "Mechatronics Mouse", tag, owner, clock, "mecmouse", __FILE__) | |
| 57 | 57 | { |
| 58 | 58 | } |
| 59 | 59 |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | Constructors |
| 29 | 29 | */ |
| 30 | 30 | ti_video_device::ti_video_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 31 | : bus8z_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 32 | m_tms9928a(nullptr) | |
| 31 | : bus8z_device(mconfig, type, name, tag, owner, clock, shortname, source) | |
| 33 | 32 | { |
| 34 | 33 | } |
| 35 | 34 | |
| r250237 | r250238 | |
| 39 | 38 | } |
| 40 | 39 | |
| 41 | 40 | ti_exp_video_device::ti_exp_video_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 42 | : ti_video_device(mconfig, V9938VIDEO, "TI99 EXP Video subsystem", tag, owner, clock, "v9938_video", __FILE__) | |
| 41 | : ti_video_device(mconfig, V9938VIDEO, "TI99 EXP Video subsystem", tag, owner, clock, "v9938_video", __FILE__) | |
| 43 | 42 | { |
| 44 | 43 | } |
| 45 | 44 |
| r250237 | r250238 | |
|---|---|---|
| 85 | 85 | { |
| 86 | 86 | public: |
| 87 | 87 | ti_sound_system_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 88 | : bus8z_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 88 | : bus8z_device(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 89 | 89 | m_console_ready(*this) { }; |
| 90 | 90 | |
| 91 | 91 | // Cannot read from sound; just ignore silently |
| r250237 | r250238 | |
|---|---|---|
| 29 | 29 | tiki100_bus_slot_t::tiki100_bus_slot_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, TIKI100_BUS_SLOT, "TIKI-100 expansion bus slot", tag, owner, clock, "tiki100bus_slot", __FILE__), |
| 31 | 31 | device_slot_interface(mconfig, *this), |
| 32 | device_z80daisy_interface(mconfig, *this), | |
| 33 | m_bus(nullptr), | |
| 34 | m_card(nullptr) | |
| 32 | device_z80daisy_interface(mconfig, *this) | |
| 35 | 33 | { |
| 36 | 34 | } |
| 37 | 35 | |
| r250237 | r250238 | |
| 188 | 186 | //------------------------------------------------- |
| 189 | 187 | |
| 190 | 188 | device_tiki100bus_card_interface::device_tiki100bus_card_interface(const machine_config &mconfig, device_t &device) : |
| 191 | device_slot_card_interface(mconfig, device), m_bus(nullptr), | |
| 192 | m_busak(CLEAR_LINE), m_next(nullptr) | |
| 189 | device_slot_card_interface(mconfig, device), | |
| 190 | m_busak(CLEAR_LINE) | |
| 193 | 191 | { |
| 194 | 192 | m_slot = dynamic_cast<tiki100_bus_slot_t *>(device.owner()); |
| 195 | 193 | } |
| r250237 | r250238 | |
|---|---|---|
| 61 | 61 | tvc_hbf_device::tvc_hbf_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 62 | 62 | : device_t(mconfig, TVC_HBF, "HBF floppy interface", tag, owner, clock, "tvc_hbf", __FILE__), |
| 63 | 63 | device_tvcexp_interface( mconfig, *this ), |
| 64 | m_fdc(*this, "fdc"), m_rom(nullptr), m_ram(nullptr), m_rom_bank(0) | |
| 65 | { | |
| 64 | m_fdc(*this, "fdc") | |
| 65 | { | |
| 66 | 66 | } |
| 67 | 67 | |
| 68 | 68 |
| r250237 | r250238 | |
|---|---|---|
| 56 | 56 | device_t(mconfig, TVCEXP_SLOT, "TVC64 Expansion Slot", tag, owner, clock, "tvcexp_slot", __FILE__), |
| 57 | 57 | device_slot_interface(mconfig, *this), |
| 58 | 58 | m_out_irq_cb(*this), |
| 59 | m_out_nmi_cb(*this) | |
| 59 | m_out_nmi_cb(*this) | |
| 60 | 60 | { |
| 61 | 61 | } |
| 62 | 62 |
| r250237 | r250238 | |
|---|---|---|
| 78 | 78 | device_t(mconfig, VBOY_CART_SLOT, "Nintendo Virtual Boy Cartridge Slot", tag, owner, clock, "vboy_cart_slot", __FILE__), |
| 79 | 79 | device_image_interface(mconfig, *this), |
| 80 | 80 | device_slot_interface(mconfig, *this), |
| 81 | m_type(VBOY_STD) | |
| 81 | m_type(VBOY_STD) | |
| 82 | 82 | { |
| 83 | 83 | } |
| 84 | 84 |
| r250237 | r250238 | |
|---|---|---|
| 76 | 76 | device_t(mconfig, VC4000_CART_SLOT, "Interton VC 4000 Cartridge Slot", tag, owner, clock, "vc4000_cart_slot", __FILE__), |
| 77 | 77 | device_image_interface(mconfig, *this), |
| 78 | 78 | device_slot_interface(mconfig, *this), |
| 79 | m_type(VC4000_STD) | |
| 79 | m_type(VC4000_STD) | |
| 80 | 80 | { |
| 81 | 81 | } |
| 82 | 82 |
| r250237 | r250238 | |
|---|---|---|
| 17 | 17 | const device_type ATARI_DPC = &device_creator<dpc_device>; |
| 18 | 18 | |
| 19 | 19 | |
| 20 | dpc_device::dpc_device(const machine_config& mconfig, const char* tag, device_t* owner, UINT32 clock) : | |
| 21 | device_t(mconfig, ATARI_DPC, "Atari DCP", tag, owner, clock, "atari_dcp", __FILE__), | |
| 22 | m_movamt(0), | |
| 23 | m_latch_62(0), | |
| 24 | m_latch_64(0), | |
| 25 | m_dlc(0), | |
| 26 | m_shift_reg(0), | |
| 27 | m_displaydata(nullptr), | |
| 28 | m_oscillator(nullptr) | |
| 20 | dpc_device::dpc_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) | |
| 21 | : device_t(mconfig, ATARI_DPC, "Atari DCP", tag, owner, clock, "atari_dcp", __FILE__), | |
| 22 | m_displaydata(NULL) | |
| 29 | 23 | { |
| 30 | 24 | } |
| 31 | 25 |
| r250237 | r250238 | |
|---|---|---|
| 104 | 104 | |
| 105 | 105 | |
| 106 | 106 | a26_rom_fe_device::a26_rom_fe_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 107 | : a26_rom_2k_device(mconfig, A26_ROM_FE, "Atari VCS 2600 ROM Carts w/FE bankswitch", tag, owner, clock, "vcs_fe", __FILE__), m_base_bank(0), m_trigger_on_next_access(0) | |
| 108 | { | |
| 107 | : a26_rom_2k_device(mconfig, A26_ROM_FE, "Atari VCS 2600 ROM Carts w/FE bankswitch", tag, owner, clock, "vcs_fe", __FILE__) | |
| 108 | { | |
| 109 | 109 | } |
| 110 | 110 | |
| 111 | 111 | |
| 112 | 112 | a26_rom_3e_device::a26_rom_3e_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 113 | : a26_rom_f6_device(mconfig, A26_ROM_3E, "Atari VCS 2600 ROM Carts w/3E bankswitch", tag, owner, clock, "vcs_3e", __FILE__), m_num_bank(0), m_ram_bank(0), m_ram_enable(0) | |
| 114 | { | |
| 113 | : a26_rom_f6_device(mconfig, A26_ROM_3E, "Atari VCS 2600 ROM Carts w/3E bankswitch", tag, owner, clock, "vcs_3e", __FILE__) | |
| 114 | { | |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | 117 | |
| 118 | 118 | a26_rom_3f_device::a26_rom_3f_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 119 | : a26_rom_f6_device(mconfig, A26_ROM_3F, "Atari VCS 2600 ROM Carts w/3F bankswitch", tag, owner, clock, "vcs_3f", __FILE__), m_num_bank(0) | |
| 120 | { | |
| 119 | : a26_rom_f6_device(mconfig, A26_ROM_3F, "Atari VCS 2600 ROM Carts w/3F bankswitch", tag, owner, clock, "vcs_3f", __FILE__) | |
| 120 | { | |
| 121 | 121 | } |
| 122 | 122 | |
| 123 | 123 | |
| r250237 | r250238 | |
| 128 | 128 | |
| 129 | 129 | |
| 130 | 130 | a26_rom_e7_device::a26_rom_e7_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 131 | : a26_rom_f6_device(mconfig, A26_ROM_E7, "Atari VCS 2600 ROM Carts w/E7 bankswitch", tag, owner, clock, "vcs_e7", __FILE__), m_ram_bank(0) | |
| 132 | { | |
| 131 | : a26_rom_f6_device(mconfig, A26_ROM_E7, "Atari VCS 2600 ROM Carts w/E7 bankswitch", tag, owner, clock, "vcs_e7", __FILE__) | |
| 132 | { | |
| 133 | 133 | } |
| 134 | 134 | |
| 135 | 135 | |
| r250237 | r250238 | |
| 152 | 152 | |
| 153 | 153 | |
| 154 | 154 | a26_rom_fv_device::a26_rom_fv_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 155 | : a26_rom_f6_device(mconfig, A26_ROM_FV, "Atari VCS 2600 ROM Carts w/FV bankswitch", tag, owner, clock, "vcs_fv", __FILE__), m_locked(0) | |
| 156 | { | |
| 155 | : a26_rom_f6_device(mconfig, A26_ROM_FV, "Atari VCS 2600 ROM Carts w/FV bankswitch", tag, owner, clock, "vcs_fv", __FILE__) | |
| 156 | { | |
| 157 | 157 | } |
| 158 | 158 | |
| 159 | 159 | |
| r250237 | r250238 | |
| 170 | 170 | |
| 171 | 171 | |
| 172 | 172 | a26_rom_8in1_device::a26_rom_8in1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 173 | : a26_rom_f8_device(mconfig, A26_ROM_8IN1, "Atari VCS 2600 ROM Cart 8 in 1", tag, owner, clock, "vcs_8in1", __FILE__), m_reset_bank(0) | |
| 174 | { | |
| 173 | : a26_rom_f8_device(mconfig, A26_ROM_8IN1, "Atari VCS 2600 ROM Cart 8 in 1", tag, owner, clock, "vcs_8in1", __FILE__) | |
| 174 | { | |
| 175 | 175 | } |
| 176 | 176 | |
| 177 | 177 |
| r250237 | r250238 | |
|---|---|---|
| 42 | 42 | |
| 43 | 43 | a26_rom_ss_device::a26_rom_ss_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 44 | 44 | : a26_rom_f6_device(mconfig, A26_ROM_SUPERCHARGER, "Atari 2600 ROM Cart Supercharger", tag, owner, clock, "a2600_ss", __FILE__), |
| 45 | m_cassette(*this, "cassette"), | |
| 46 | m_maincpu(nullptr), | |
| 47 | m_reg(0), | |
| 48 | m_write_delay(0), | |
| 49 | m_ram_write_enabled(0), | |
| 50 | m_rom_enabled(0), | |
| 51 | m_byte_started(0), | |
| 52 | m_last_address(0), | |
| 53 | m_diff_adjust(0) | |
| 54 | { | |
| 45 | m_cassette(*this, "cassette") | |
| 46 | { | |
| 55 | 47 | } |
| 56 | 48 | |
| 57 | 49 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 80 | 80 | vcs_cart_slot_device::vcs_cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 81 | 81 | device_t(mconfig, VCS_CART_SLOT, "Atari VCS 2600 Cartridge Slot", tag, owner, clock, "vcs_cart_slot", __FILE__), |
| 82 | 82 | device_image_interface(mconfig, *this), |
| 83 | device_slot_interface(mconfig, *this) | |
| 83 | device_slot_interface(mconfig, *this) | |
| 84 | 84 | { |
| 85 | 85 | } |
| 86 | 86 |
| r250237 | r250238 | |
|---|---|---|
| 44 | 44 | |
| 45 | 45 | vcs_control_port_device::vcs_control_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 46 | 46 | device_t(mconfig, VCS_CONTROL_PORT, "Atari VCS control port", tag, owner, clock, "vcs_control_port", __FILE__), |
| 47 | device_slot_interface(mconfig, *this), | |
| 47 | device_slot_interface(mconfig, *this), | |
| 48 | 48 | m_write_trigger(*this) |
| 49 | 49 | { |
| 50 | 50 | } |
| r250237 | r250238 | |
|---|---|---|
| 56 | 56 | vcs_keypad_device::vcs_keypad_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 57 | 57 | device_t(mconfig, VCS_KEYPAD, "Atari / CBM Keypad", tag, owner, clock, "vcs_keypad", __FILE__), |
| 58 | 58 | device_vcs_control_port_interface(mconfig, *this), |
| 59 | m_keypad(*this, "KEYPAD") | |
| 59 | m_keypad(*this, "KEYPAD") | |
| 60 | 60 | { |
| 61 | 61 | } |
| 62 | 62 |
| r250237 | r250238 | |
|---|---|---|
| 38 | 38 | } |
| 39 | 39 | |
| 40 | 40 | vectrex_rom64k_device::vectrex_rom64k_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 41 | : vectrex_rom_device(mconfig, VECTREX_ROM_64K, "Vectrex Carts w/ Bankswitch", tag, owner, clock, "vectrex_64k", __FILE__), m_bank(0) | |
| 42 | { | |
| 41 | : vectrex_rom_device(mconfig, VECTREX_ROM_64K, "Vectrex Carts w/ Bankswitch", tag, owner, clock, "vectrex_64k", __FILE__) | |
| 42 | { | |
| 43 | 43 | } |
| 44 | 44 | |
| 45 | 45 | vectrex_sram_device::vectrex_sram_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| r250237 | r250238 | |
|---|---|---|
| 67 | 67 | device_image_interface(mconfig, *this), |
| 68 | 68 | device_slot_interface(mconfig, *this), |
| 69 | 69 | m_type(VECTREX_STD), |
| 70 | m_vec3d(VEC3D_NONE) | |
| 70 | m_vec3d(VEC3D_NONE) | |
| 71 | 71 | { |
| 72 | 72 | } |
| 73 | 73 |
| r250237 | r250238 | |
|---|---|---|
| 63 | 63 | m_write_irq(*this), |
| 64 | 64 | m_write_res(*this), |
| 65 | 65 | m_write_cnt(*this), |
| 66 | m_write_sp(*this) | |
| 66 | m_write_sp(*this) | |
| 67 | 67 | { |
| 68 | 68 | } |
| 69 | 69 |
| r250237 | r250238 | |
|---|---|---|
| 62 | 62 | device_image_interface(mconfig, *this), |
| 63 | 63 | m_write_irq(*this), |
| 64 | 64 | m_write_nmi(*this), |
| 65 | m_write_res(*this) | |
| 65 | m_write_res(*this) | |
| 66 | 66 | { |
| 67 | 67 | } |
| 68 | 68 |
| r250237 | r250238 | |
|---|---|---|
| 114 | 114 | device_t(mconfig, VIC20_FE3, "Final Expansion v3", tag, owner, clock, "vic20_fe3", __FILE__), |
| 115 | 115 | device_vic20_expansion_card_interface(mconfig, *this), |
| 116 | 116 | m_flash_rom(*this, AM29F040_TAG), |
| 117 | m_ram(*this, "sram") | |
| 117 | m_ram(*this, "sram") | |
| 118 | 118 | { |
| 119 | 119 | } |
| 120 | 120 |
| r250237 | r250238 | |
|---|---|---|
| 139 | 139 | device_vic20_expansion_card_interface(mconfig, *this), |
| 140 | 140 | m_via0(*this, M6522_0_TAG), |
| 141 | 141 | m_via1(*this, M6522_1_TAG), |
| 142 | m_bus(*this, IEEE488_TAG) | |
| 142 | m_bus(*this, IEEE488_TAG) | |
| 143 | 143 | { |
| 144 | 144 | } |
| 145 | 145 |
| r250237 | r250238 | |
|---|---|---|
| 90 | 90 | device_t(mconfig, VIDEOBRAIN_EXPANSION_SLOT, "VideoBrain expansion port", tag, owner, clock, "videobrain_expansion_slot", __FILE__), |
| 91 | 91 | device_slot_interface(mconfig, *this), |
| 92 | 92 | device_image_interface(mconfig, *this), |
| 93 | m_write_extres(*this) | |
| 93 | m_write_extres(*this) | |
| 94 | 94 | { |
| 95 | 95 | } |
| 96 | 96 |
| r250237 | r250238 | |
|---|---|---|
| 45 | 45 | vip_byteio_port_device::vip_byteio_port_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 46 | 46 | device_t(mconfig, VIP_BYTEIO_PORT, "VIP byte I/O port", tag, owner, clock, "vip_byteio_port", __FILE__), |
| 47 | 47 | device_slot_interface(mconfig, *this), |
| 48 | m_write_inst(*this) | |
| 48 | m_write_inst(*this) | |
| 49 | 49 | { |
| 50 | 50 | } |
| 51 | 51 |
| r250237 | r250238 | |
|---|---|---|
| 55 | 55 | device_slot_interface(mconfig, *this), |
| 56 | 56 | m_write_int(*this), |
| 57 | 57 | m_write_dma_out(*this), |
| 58 | m_write_dma_in(*this) | |
| 58 | m_write_dma_in(*this) | |
| 59 | 59 | { |
| 60 | 60 | } |
| 61 | 61 |
| r250237 | r250238 | |
|---|---|---|
| 82 | 82 | device_t(mconfig, VP550, "VP550", tag, owner, clock, "vp550", __FILE__), |
| 83 | 83 | device_vip_expansion_card_interface(mconfig, *this), |
| 84 | 84 | m_pfg_a(*this, CDP1863_A_TAG), |
| 85 | m_pfg_b(*this, CDP1863_B_TAG) | |
| 85 | m_pfg_b(*this, CDP1863_B_TAG) | |
| 86 | 86 | { |
| 87 | 87 | } |
| 88 | 88 |
| r250237 | r250238 | |
|---|---|---|
| 83 | 83 | device_t(mconfig, VP585, "VP585", tag, owner, clock, "vp585", __FILE__), |
| 84 | 84 | device_vip_expansion_card_interface(mconfig, *this), |
| 85 | 85 | m_j1(*this, "J1"), |
| 86 | m_j2(*this, "J2") | |
| 86 | m_j2(*this, "J2") | |
| 87 | 87 | { |
| 88 | 88 | } |
| 89 | 89 |
| r250237 | r250238 | |
|---|---|---|
| 142 | 142 | m_cgc(*this, CDP1862_TAG), |
| 143 | 143 | m_color_ram(*this, "color_ram"), |
| 144 | 144 | m_j1(*this, "J1"), |
| 145 | m_j2(*this, "J2") | |
| 145 | m_j2(*this, "J2") | |
| 146 | 146 | { |
| 147 | 147 | } |
| 148 | 148 |
| r250237 | r250238 | |
|---|---|---|
| 72 | 72 | device_memexp_interface(mconfig, *this), |
| 73 | 73 | m_memexp(*this, "mem"), |
| 74 | 74 | m_floppy0(*this, "0"), |
| 75 | m_floppy1(*this, "1") | |
| 75 | m_floppy1(*this, "1") | |
| 76 | 76 | { |
| 77 | 77 | } |
| 78 | 78 |
| r250237 | r250238 | |
|---|---|---|
| 46 | 46 | wangpc_emb_device::wangpc_emb_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 47 | 47 | device_t(mconfig, WANGPC_EMB, "Wang PC-PM031-B", tag, owner, clock, "wangpc_emb", __FILE__), |
| 48 | 48 | device_wangpcbus_card_interface(mconfig, *this), |
| 49 | m_ram(*this, "ram") | |
| 49 | m_ram(*this, "ram") | |
| 50 | 50 | { |
| 51 | 51 | } |
| 52 | 52 |
| r250237 | r250238 | |
|---|---|---|
| 171 | 171 | device_wangpcbus_card_interface(mconfig, *this), |
| 172 | 172 | m_crtc(*this, MC6845_TAG), |
| 173 | 173 | m_video_ram(*this, "video_ram"), |
| 174 | m_option(0), | |
| 174 | m_option(0), | |
| 175 | 175 | m_irq(CLEAR_LINE) |
| 176 | 176 | { |
| 177 | 177 | } |
| r250237 | r250238 | |
|---|---|---|
| 106 | 106 | device_t(mconfig, WANGPC_MCC, "Wang PC-PM043", tag, owner, clock, "wangpc_mcc", __FILE__), |
| 107 | 107 | device_wangpcbus_card_interface(mconfig, *this), |
| 108 | 108 | m_sio(*this, Z80SIO2_TAG), |
| 109 | m_dart(*this, Z80DART_TAG) | |
| 109 | m_dart(*this, Z80DART_TAG) | |
| 110 | 110 | { |
| 111 | 111 | } |
| 112 | 112 |
| r250237 | r250238 | |
|---|---|---|
| 155 | 155 | device_wangpcbus_card_interface(mconfig, *this), |
| 156 | 156 | m_hgdc0(*this, UPD7720_0_TAG), |
| 157 | 157 | m_hgdc1(*this, UPD7720_1_TAG), |
| 158 | m_option(0), | |
| 158 | m_option(0), | |
| 159 | 159 | m_palette(*this, "palette") |
| 160 | 160 | { |
| 161 | 161 | } |
| r250237 | r250238 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | wangpcbus_slot_device::wangpcbus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : |
| 30 | 30 | device_t(mconfig, WANGPC_BUS_SLOT, "Wang PC bus slot", tag, owner, clock, "wangpcbus_slot", __FILE__), |
| 31 | device_slot_interface(mconfig, *this), | |
| 32 | m_bus(nullptr), | |
| 33 | m_sid(0) | |
| 31 | device_slot_interface(mconfig, *this) | |
| 34 | 32 | { |
| 35 | 33 | } |
| 36 | 34 | |
| r250237 | r250238 | |
| 248 | 246 | //------------------------------------------------- |
| 249 | 247 | |
| 250 | 248 | device_wangpcbus_card_interface::device_wangpcbus_card_interface(const machine_config &mconfig, device_t &device) : |
| 251 | device_slot_card_interface(mconfig, device) | |
| 249 | device_slot_card_interface(mconfig, device) | |
| 252 | 250 | { |
| 253 | 251 | m_slot = dynamic_cast<wangpcbus_slot_device *>(device.owner()); |
| 254 | 252 | } |
| r250237 | r250238 | |
|---|---|---|
| 145 | 145 | device_t(mconfig, WANGPC_WDC, "Wang PC-PM001", tag, owner, clock, "wangpc_wdc", __FILE__), |
| 146 | 146 | device_wangpcbus_card_interface(mconfig, *this), |
| 147 | 147 | m_maincpu(*this, Z80_TAG), |
| 148 | m_ctc(*this, MK3882_TAG) | |
| 148 | m_ctc(*this, MK3882_TAG) | |
| 149 | 149 | { |
| 150 | 150 | } |
| 151 | 151 |
| r250237 | r250238 | |
|---|---|---|
| 26 | 26 | const device_type WS_ROM_EEPROM = &device_creator<ws_rom_eeprom_device>; |
| 27 | 27 | |
| 28 | 28 | |
| 29 | ws_rom_device::ws_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) : | |
| 30 | device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 31 | device_ws_cart_interface(mconfig, *this), | |
| 32 | m_base20(0), | |
| 33 | m_base30(0), | |
| 34 | m_base40(0), | |
| 35 | m_rtc_setting(0), | |
| 36 | m_rtc_year(0), | |
| 37 | m_rtc_month(0), | |
| 38 | m_rtc_day(0), | |
| 39 | m_rtc_day_of_week(0), | |
| 40 | m_rtc_hour(0), | |
| 41 | m_rtc_minute(0), | |
| 42 | m_rtc_second(0), | |
| 43 | m_rtc_index(0), | |
| 44 | rtc_timer(nullptr) | |
| 29 | ws_rom_device::ws_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) | |
| 30 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), | |
| 31 | device_ws_cart_interface( mconfig, *this ) | |
| 45 | 32 | { |
| 46 | 33 | } |
| 47 | 34 | |
| 48 | 35 | ws_rom_device::ws_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 49 | 36 | : device_t(mconfig, WS_ROM_STD, "Wonderswan Standard Carts", tag, owner, clock, "ws_rom", __FILE__), |
| 50 | device_ws_cart_interface( mconfig, *this ), m_base20(0), | |
| 51 | m_base30(0), | |
| 52 | m_base40(0), | |
| 53 | m_rtc_setting(0), | |
| 54 | m_rtc_year(0), | |
| 55 | m_rtc_month(0), | |
| 56 | m_rtc_day(0), | |
| 57 | m_rtc_day_of_week(0), | |
| 58 | m_rtc_hour(0), | |
| 59 | m_rtc_minute(0), | |
| 60 | m_rtc_second(0), | |
| 61 | m_rtc_index(0), | |
| 62 | rtc_timer(nullptr) | |
| 63 | { | |
| 37 | device_ws_cart_interface( mconfig, *this ) | |
| 38 | { | |
| 64 | 39 | } |
| 65 | 40 | |
| 66 | 41 | ws_rom_sram_device::ws_rom_sram_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 67 | : ws_rom_device(mconfig, WS_ROM_SRAM, "Wonderswan Carts w/SRAM", tag, owner, clock, "ws_sram", __FILE__), m_nvram_base(0) | |
| 68 | { | |
| 42 | : ws_rom_device(mconfig, WS_ROM_SRAM, "Wonderswan Carts w/SRAM", tag, owner, clock, "ws_sram", __FILE__) | |
| 43 | { | |
| 69 | 44 | } |
| 70 | 45 | |
| 71 | 46 | |
| 72 | 47 | ws_rom_eeprom_device::ws_rom_eeprom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 73 | : ws_rom_device(mconfig, WS_ROM_EEPROM, "Wonderswan Carts w/EEPROM", tag, owner, clock, "ws_eeprom", __FILE__), m_eeprom_mode(0), | |
| 74 | m_eeprom_address(0), m_eeprom_command(0), m_eeprom_start(0), m_eeprom_write_enabled(0) | |
| 75 | { | |
| 48 | : ws_rom_device(mconfig, WS_ROM_EEPROM, "Wonderswan Carts w/EEPROM", tag, owner, clock, "ws_eeprom", __FILE__) | |
| 49 | { | |
| 76 | 50 | } |
| 77 | 51 | |
| 78 | 52 |
| r250237 | r250238 | |
|---|---|---|
| 80 | 80 | device_t(mconfig, WS_CART_SLOT, "Wonderswan Cartridge Slot", tag, owner, clock, "ws_cart_slot", __FILE__), |
| 81 | 81 | device_image_interface(mconfig, *this), |
| 82 | 82 | device_slot_interface(mconfig, *this), |
| 83 | m_type(WS_STD) | |
| 83 | m_type(WS_STD) | |
| 84 | 84 | { |
| 85 | 85 | } |
| 86 | 86 |
| r250237 | r250238 | |
|---|---|---|
| 30 | 30 | |
| 31 | 31 | x68k_neptune_device::x68k_neptune_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 32 | 32 | : device_t(mconfig, X68K_NEPTUNEX, "Neptune-X", tag, owner, clock, "x68k_neptunex", __FILE__), |
| 33 | device_x68k_expansion_card_interface(mconfig, *this), | |
| 34 | m_slot(nullptr), | |
| 33 | device_x68k_expansion_card_interface(mconfig, *this), | |
| 35 | 34 | m_dp8390(*this, "dp8390d") |
| 36 | 35 | { |
| 37 | 36 | } |
| r250237 | r250238 | |
|---|---|---|
| 58 | 58 | |
| 59 | 59 | x68k_scsiext_device::x68k_scsiext_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 60 | 60 | : device_t(mconfig, X68K_SCSIEXT, "Sharp CZ-6BS1 SCSI-1", tag, owner, clock, "x68k_cz6bs1", __FILE__), |
| 61 | device_x68k_expansion_card_interface(mconfig, *this), | |
| 61 | device_x68k_expansion_card_interface(mconfig, *this), | |
| 62 | 62 | m_spc(*this, "mb89352") |
| 63 | 63 | { |
| 64 | 64 | } |
| r250237 | r250238 | |
|---|---|---|
| 40 | 40 | m_out_irq2_cb(*this), |
| 41 | 41 | m_out_irq4_cb(*this), |
| 42 | 42 | m_out_nmi_cb(*this), |
| 43 | m_out_reset_cb(*this) | |
| 43 | m_out_reset_cb(*this) | |
| 44 | 44 | { |
| 45 | 45 | } |
| 46 | 46 |
| r250237 | r250238 | |
|---|---|---|
| 34 | 34 | |
| 35 | 35 | z88_32k_ram_device::z88_32k_ram_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 36 | 36 | : device_t(mconfig, Z88_32K_RAM, "Z88 32KB RAM", tag, owner, clock, "z88_32k_ram", __FILE__), |
| 37 | device_z88cart_interface( mconfig, *this ), m_ram(nullptr) | |
| 38 | { | |
| 37 | device_z88cart_interface( mconfig, *this ) | |
| 38 | { | |
| 39 | 39 | } |
| 40 | 40 | |
| 41 | 41 | z88_32k_ram_device::z88_32k_ram_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 42 | 42 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 43 | device_z88cart_interface( mconfig, *this ), m_ram(nullptr) | |
| 44 | { | |
| 43 | device_z88cart_interface( mconfig, *this ) | |
| 44 | { | |
| 45 | 45 | } |
| 46 | 46 | |
| 47 | 47 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 33 | 33 | |
| 34 | 34 | z88_32k_rom_device::z88_32k_rom_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 35 | 35 | : device_t(mconfig, Z88_32K_ROM, "Z88 32KB ROM", tag, owner, clock, "z88_32k_rom", __FILE__), |
| 36 | device_z88cart_interface( mconfig, *this ), m_rom(nullptr) | |
| 37 | { | |
| 36 | device_z88cart_interface( mconfig, *this ) | |
| 37 | { | |
| 38 | 38 | } |
| 39 | 39 | |
| 40 | 40 | z88_32k_rom_device::z88_32k_rom_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source) |
| 41 | 41 | : device_t(mconfig, type, name, tag, owner, clock, shortname, source), |
| 42 | device_z88cart_interface( mconfig, *this ), m_rom(nullptr) | |
| 43 | { | |
| 42 | device_z88cart_interface( mconfig, *this ) | |
| 43 | { | |
| 44 | 44 | } |
| 45 | 45 | |
| 46 | 46 | //------------------------------------------------- |
| r250237 | r250238 | |
|---|---|---|
| 60 | 60 | device_t(mconfig, Z88CART_SLOT, "Z88 Cartridge Slot", tag, owner, clock, "z88cart_slot", __FILE__), |
| 61 | 61 | device_image_interface(mconfig, *this), |
| 62 | 62 | device_slot_interface(mconfig, *this), |
| 63 | m_out_flp_cb(*this) | |
| 63 | m_out_flp_cb(*this) | |
| 64 | 64 | { |
| 65 | 65 | } |
| 66 | 66 |
| r250237 | r250238 | |
|---|---|---|
| 13 | 13 | void mem_reset(dsp56k_core* cpustate); |
| 14 | 14 | |
| 15 | 15 | // Adjusts the documented address to match the offset in peripheral RAM |
| 16 | #define A2O(a) (a | |
| 16 | #define A2O(a) (a-0xffc0) | |
| 17 | 17 | |
| 18 | 18 | // Adjusts the offset in peripheral RAM to match the documented address |
| 19 | #define O2A(a) (a | |
| 19 | #define O2A(a) (a+0xffc0) | |
| 20 | 20 | |
| 21 | 21 | // The memory 'registers' |
| 22 | 22 | #define PBC (cpustate->peripheral_ram[A2O(0xffc0)]) |
| r250237 | r250238 | |
|---|---|---|
| 1292 | 1292 | LOADDESC(0x848, DS); |
| 1293 | 1293 | #undef LOADDESC |
| 1294 | 1294 | // void cast supresses warning |
| 1295 | #define LOADDESC(addr, reg, r) { desc[1] = read_word(addr); desc[2] = read_word(addr | |
| 1295 | #define LOADDESC(addr, reg, r) { desc[1] = read_word(addr); desc[2] = read_word(addr+2); desc[0] = read_word(addr+4); \ | |
| 1296 | 1296 | reg.base = BASE(desc); (void)(r); reg.limit = LIMIT(desc); } |
| 1297 | 1297 | LOADDESC(0x84e, m_gdtr, 1); |
| 1298 | 1298 | LOADDESC(0x854, m_ldtr, m_ldtr.rights = RIGHTS(desc)); |
| r250237 | r250238 | |
|---|---|---|
| 1002 | 1002 | edgeptr->dxdy = (edgeptr->v2->x - edgeptr->v1->x) * ooy; |
| 1003 | 1003 | for (int paramnum = 0; paramnum < paramcount; paramnum++) |
| 1004 | 1004 | edgeptr->dpdy[paramnum] = (edgeptr->v2->p[paramnum] - edgeptr->v1->p[paramnum]) * ooy; |
| 1005 | | |
| 1005 | edgeptr++; | |
| 1006 | 1006 | } |
| 1007 | 1007 | |
| 1008 | 1008 | // walk backward to build up the backward edge list |
| r250237 | r250238 | |
| 1023 | 1023 | edgeptr->dxdy = (edgeptr->v2->x - edgeptr->v1->x) * ooy; |
| 1024 | 1024 | for (int paramnum = 0; paramnum < paramcount; paramnum++) |
| 1025 | 1025 | edgeptr->dpdy[paramnum] = (edgeptr->v2->p[paramnum] - edgeptr->v1->p[paramnum]) * ooy; |
| 1026 | | |
| 1026 | edgeptr++; | |
| 1027 | 1027 | } |
| 1028 | 1028 | |
| 1029 | 1029 | // determine which list is left/right: |
| r250237 | r250238 | |
| 1068 | 1068 | // compute the ending X based on which part of the triangle we're in |
| 1069 | 1069 | _BaseType fully = _BaseType(curscan + extnum) + _BaseType(0.5); |
| 1070 | 1070 | while (fully > ledge->v2->y && fully < v[maxv].y) |
| 1071 | | |
| 1071 | ledge++; | |
| 1072 | 1072 | while (fully > redge->v2->y && fully < v[maxv].y) |
| 1073 | | |
| 1073 | redge++; | |
| 1074 | 1074 | _BaseType startx = ledge->v1->x + (fully - ledge->v1->y) * ledge->dxdy; |
| 1075 | 1075 | _BaseType stopx = redge->v1->x + (fully - redge->v1->y) * redge->dxdy; |
| 1076 | 1076 | |
| r250237 | r250238 | |
| 1159 | 1159 | nextout->y = v1.y + frac * (v2.y - v1.y); |
| 1160 | 1160 | for (int paramnum = 0; paramnum < paramcount; paramnum++) |
| 1161 | 1161 | nextout->p[paramnum] = v1.p[paramnum] + frac * (v2.p[paramnum] - v1.p[paramnum]); |
| 1162 | | |
| 1162 | nextout++; | |
| 1163 | 1163 | } |
| 1164 | 1164 | |
| 1165 | 1165 | // if this vertex is not clipped, copy it in |
| r250237 | r250238 | |
|---|---|---|
| 1484 | 1484 | /* loop over all CPUs */ |
| 1485 | 1485 | device_iterator iter(machine.root_device()); |
| 1486 | 1486 | for (device_t *device = iter.first(); device != NULL; device = iter.next()) |
| 1487 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; | |
| 1487 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; spacenum++) | |
| 1488 | 1488 | if (device->debug()->watchpoint_first(spacenum) != NULL) |
| 1489 | 1489 | { |
| 1490 | 1490 | static const char *const types[] = { "unkn ", "read ", "write", "r/w " }; |
| r250237 | r250238 | |
|---|---|---|
| 2377 | 2377 | bool device_debug::watchpoint_clear(int index) |
| 2378 | 2378 | { |
| 2379 | 2379 | // scan the list to see if we own this breakpoint |
| 2380 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); | |
| 2380 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); spacenum++) | |
| 2381 | 2381 | for (watchpoint **wp = &m_wplist[spacenum]; *wp != NULL; wp = &(*wp)->m_next) |
| 2382 | 2382 | if ((*wp)->m_index == index) |
| 2383 | 2383 | { |
| r250237 | r250238 | |
| 2401 | 2401 | void device_debug::watchpoint_clear_all() |
| 2402 | 2402 | { |
| 2403 | 2403 | // clear the head until we run out |
| 2404 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); | |
| 2404 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); spacenum++) | |
| 2405 | 2405 | while (m_wplist[spacenum] != NULL) |
| 2406 | 2406 | watchpoint_clear(m_wplist[spacenum]->index()); |
| 2407 | 2407 | } |
| r250237 | r250238 | |
| 2415 | 2415 | bool device_debug::watchpoint_enable(int index, bool enable) |
| 2416 | 2416 | { |
| 2417 | 2417 | // scan the list to see if we own this watchpoint |
| 2418 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); | |
| 2418 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); spacenum++) | |
| 2419 | 2419 | for (watchpoint *wp = m_wplist[spacenum]; wp != NULL; wp = wp->next()) |
| 2420 | 2420 | if (wp->m_index == index) |
| 2421 | 2421 | { |
| r250237 | r250238 | |
| 2437 | 2437 | void device_debug::watchpoint_enable_all(bool enable) |
| 2438 | 2438 | { |
| 2439 | 2439 | // apply the enable to all watchpoints we own |
| 2440 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); | |
| 2440 | for (address_spacenum spacenum = AS_0; spacenum < ARRAY_LENGTH(m_wplist); spacenum++) | |
| 2441 | 2441 | for (watchpoint *wp = m_wplist[spacenum]; wp != NULL; wp = wp->next()) |
| 2442 | 2442 | watchpoint_enable(wp->index(), enable); |
| 2443 | 2443 | } |
| r250237 | r250238 | |
|---|---|---|
| 133 | 133 | memory_interface_iterator iter(machine().root_device()); |
| 134 | 134 | for (device_memory_interface *memintf = iter.first(); memintf != NULL; memintf = iter.next()) |
| 135 | 135 | if (&memintf->device() != &machine().root_device()) |
| 136 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; | |
| 136 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; spacenum++) | |
| 137 | 137 | if (memintf->has_space(spacenum)) |
| 138 | 138 | { |
| 139 | 139 | address_space &space = memintf->space(spacenum); |
| r250237 | r250238 | |
|---|---|---|
| 231 | 231 | { |
| 232 | 232 | // Collect |
| 233 | 233 | device_debug &debugInterface = *source->device()->debug(); |
| 234 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; | |
| 234 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; spacenum++) | |
| 235 | 235 | { |
| 236 | 236 | for (device_debug::watchpoint *wp = debugInterface.watchpoint_first(spacenum); wp != NULL; wp = wp->next()) |
| 237 | 237 | m_buffer.push_back(wp); |
| r250237 | r250238 | |
|---|---|---|
| 241 | 241 | bool detected_overlap = DETECT_OVERLAPPING_MEMORY ? false : true; |
| 242 | 242 | |
| 243 | 243 | // loop over all address spaces |
| 244 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; | |
| 244 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; spacenum++) | |
| 245 | 245 | { |
| 246 | 246 | const address_space_config *spaceconfig = space_config(spacenum); |
| 247 | 247 | if (spaceconfig != NULL) |
| r250237 | r250238 | |
|---|---|---|
| 834 | 834 | // if we have a generic ID, pick a new internal one |
| 835 | 835 | input_item_id originalid = itemid; |
| 836 | 836 | if (itemid >= ITEM_ID_OTHER_SWITCH && itemid <= ITEM_ID_OTHER_AXIS_RELATIVE) |
| 837 | for (itemid = (input_item_id)(ITEM_ID_MAXIMUM + 1); itemid <= ITEM_ID_ABSOLUTE_MAXIMUM; | |
| 837 | for (itemid = (input_item_id)(ITEM_ID_MAXIMUM + 1); itemid <= ITEM_ID_ABSOLUTE_MAXIMUM; itemid++) | |
| 838 | 838 | if (m_item[itemid] == NULL) |
| 839 | 839 | break; |
| 840 | 840 | assert(itemid <= ITEM_ID_ABSOLUTE_MAXIMUM); |
| r250237 | r250238 | |
| 920 | 920 | |
| 921 | 921 | // update the state of all the keys and see if any changed state |
| 922 | 922 | bool anything_changed = false; |
| 923 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= m_maxitem; | |
| 923 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= m_maxitem; itemid++) | |
| 924 | 924 | { |
| 925 | 925 | input_device_item *item = m_item[itemid]; |
| 926 | 926 | if (item != NULL && item->itemclass() == ITEM_CLASS_SWITCH) |
| r250237 | r250238 | |
| 930 | 930 | |
| 931 | 931 | // if the keyboard state is stable, flush the current state |
| 932 | 932 | if (!anything_changed) |
| 933 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= m_maxitem; | |
| 933 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= m_maxitem; itemid++) | |
| 934 | 934 | { |
| 935 | 935 | input_device_item *item = m_item[itemid]; |
| 936 | 936 | if (item != NULL && item->itemclass() == ITEM_CLASS_SWITCH) |
| r250237 | r250238 | |
| 1183 | 1183 | reset_memory(); |
| 1184 | 1184 | |
| 1185 | 1185 | // iterate over device classes and devices |
| 1186 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; | |
| 1186 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; devclass++) | |
| 1187 | 1187 | for (int devnum = 0; devnum <= m_class[devclass]->maxindex(); devnum++) |
| 1188 | 1188 | { |
| 1189 | 1189 | // fetch the device; ignore if NULL |
| r250237 | r250238 | |
| 1192 | 1192 | continue; |
| 1193 | 1193 | |
| 1194 | 1194 | // iterate over items within each device |
| 1195 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); | |
| 1195 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); itemid++) | |
| 1196 | 1196 | { |
| 1197 | 1197 | // for any non-switch items, set memory equal to the current value |
| 1198 | 1198 | input_device_item *item = device->item(itemid); |
| r250237 | r250238 | |
| 1210 | 1210 | input_code input_manager::poll_switches() |
| 1211 | 1211 | { |
| 1212 | 1212 | // iterate over device classes and devices |
| 1213 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; | |
| 1213 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; devclass++) | |
| 1214 | 1214 | for (int devnum = 0; devnum <= m_class[devclass]->maxindex(); devnum++) |
| 1215 | 1215 | { |
| 1216 | 1216 | // fetch the device; ignore if NULL |
| r250237 | r250238 | |
| 1219 | 1219 | continue; |
| 1220 | 1220 | |
| 1221 | 1221 | // iterate over items within each device |
| 1222 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); | |
| 1222 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); itemid++) | |
| 1223 | 1223 | { |
| 1224 | 1224 | input_device_item *item = device->item(itemid); |
| 1225 | 1225 | if (item != NULL) |
| r250237 | r250238 | |
| 1299 | 1299 | continue; |
| 1300 | 1300 | |
| 1301 | 1301 | // iterate over items within each device |
| 1302 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); | |
| 1302 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); itemid++) | |
| 1303 | 1303 | { |
| 1304 | 1304 | input_device_item *item = device->item(itemid); |
| 1305 | 1305 | if (item != NULL && item->itemclass() == ITEM_CLASS_SWITCH) |
| r250237 | r250238 | |
| 1364 | 1364 | input_code input_manager::poll_axes() |
| 1365 | 1365 | { |
| 1366 | 1366 | // iterate over device classes and devices |
| 1367 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; | |
| 1367 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; devclass++) | |
| 1368 | 1368 | for (int devnum = 0; devnum <= m_class[devclass]->maxindex(); devnum++) |
| 1369 | 1369 | { |
| 1370 | 1370 | // fetch the device; ignore if NULL |
| r250237 | r250238 | |
| 1373 | 1373 | continue; |
| 1374 | 1374 | |
| 1375 | 1375 | // iterate over items within each device |
| 1376 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); | |
| 1376 | for (input_item_id itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); itemid++) | |
| 1377 | 1377 | { |
| 1378 | 1378 | input_device_item *item = device->item(itemid); |
| 1379 | 1379 | if (item != NULL && item->itemclass() != ITEM_CLASS_SWITCH) |
| r250237 | r250238 | |
| 1445 | 1445 | input_code input_manager::code_from_itemid(input_item_id itemid) const |
| 1446 | 1446 | { |
| 1447 | 1447 | // iterate over device classes and devices |
| 1448 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; | |
| 1448 | for (input_device_class devclass = DEVICE_CLASS_FIRST_VALID; devclass <= DEVICE_CLASS_LAST_VALID; devclass++) | |
| 1449 | 1449 | for (int devnum = 0; devnum <= m_class[devclass]->maxindex(); devnum++) |
| 1450 | 1450 | { |
| 1451 | 1451 | input_device *device = m_class[devclass]->device(devnum); |
| r250237 | r250238 | |
| 1613 | 1613 | return INPUT_CODE_INVALID; |
| 1614 | 1614 | |
| 1615 | 1615 | // if not a standard code, look it up in the device specific codes |
| 1616 | for (itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); | |
| 1616 | for (itemid = ITEM_ID_FIRST_VALID; itemid <= device->maxitem(); itemid++) | |
| 1617 | 1617 | { |
| 1618 | 1618 | input_device_item *item = device->item(itemid); |
| 1619 | 1619 | if (item != NULL && token[curtok].compare(item->token()) == 0) |
| r250237 | r250238 | |
|---|---|---|
| 712 | 712 | |
| 713 | 713 | void input_type_entry::restore_default_seq() |
| 714 | 714 | { |
| 715 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 715 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 716 | 716 | m_seq[seqtype] = defseq(seqtype); |
| 717 | 717 | } |
| 718 | 718 | |
| r250237 | r250238 | |
| 763 | 763 | |
| 764 | 764 | // read all the associated ports |
| 765 | 765 | running_machine *machine = NULL; |
| 766 | for (direction_t direction = JOYDIR_UP; direction < JOYDIR_COUNT; | |
| 766 | for (direction_t direction = JOYDIR_UP; direction < JOYDIR_COUNT; direction++) | |
| 767 | 767 | for (const simple_list_wrapper<ioport_field> *i = m_field[direction].first(); i != NULL; i = i->next()) |
| 768 | 768 | { |
| 769 | 769 | machine = &i->object()->machine(); |
| r250237 | r250238 | |
| 1477 | 1477 | m_way(0) |
| 1478 | 1478 | { |
| 1479 | 1479 | // reset sequences and chars |
| 1480 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 1480 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 1481 | 1481 | m_seq[seqtype].set_default(); |
| 1482 | 1482 | m_chars[0] = m_chars[1] = m_chars[2] = m_chars[3] = unicode_char(0); |
| 1483 | 1483 | |
| r250237 | r250238 | |
| 1679 | 1679 | memset(&settings, 0, sizeof(settings)); |
| 1680 | 1680 | |
| 1681 | 1681 | // copy the basics |
| 1682 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 1682 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 1683 | 1683 | settings.seq[seqtype] = seq(seqtype); |
| 1684 | 1684 | |
| 1685 | 1685 | // if there's a list of settings or we're an adjuster, copy the current value |
| r250237 | r250238 | |
| 1711 | 1711 | void ioport_field::set_user_settings(const user_settings &settings) |
| 1712 | 1712 | { |
| 1713 | 1713 | // copy the basics |
| 1714 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 1714 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 1715 | 1715 | { |
| 1716 | 1716 | const input_seq &defseq = manager().type_seq(m_type, m_player, input_seq_type(seqtype)); |
| 1717 | 1717 | if (defseq == settings.seq[seqtype]) |
| r250237 | r250238 | |
| 2159 | 2159 | joydir(digital_joystick::JOYDIR_COUNT) |
| 2160 | 2160 | { |
| 2161 | 2161 | // fill in the basic values |
| 2162 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 2162 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 2163 | 2163 | seq[seqtype] = field.defseq_unresolved(seqtype); |
| 2164 | 2164 | |
| 2165 | 2165 | // if this is a digital joystick field, make a note of it |
| r250237 | r250238 | |
| 2984 | 2984 | |
| 2985 | 2985 | // initialize sequences to invalid defaults |
| 2986 | 2986 | input_seq newseq[SEQ_TYPE_TOTAL]; |
| 2987 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 2987 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 2988 | 2988 | newseq[seqtype].set(INPUT_CODE_INVALID); |
| 2989 | 2989 | |
| 2990 | 2990 | // loop over new sequences |
| r250237 | r250238 | |
| 3012 | 3012 | // what we will diff against |
| 3013 | 3013 | if (config_type == CONFIG_TYPE_CONTROLLER) |
| 3014 | 3014 | for (input_type_entry *entry = m_typelist.first(); entry != NULL; entry = entry->next()) |
| 3015 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 3015 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 3016 | 3016 | entry->defseq(seqtype) = entry->seq(seqtype); |
| 3017 | 3017 | } |
| 3018 | 3018 | |
| r250237 | r250238 | |
| 3053 | 3053 | // loop over the remapping table, then over default ports, replacing old with new |
| 3054 | 3054 | for (int remapnum = 0; remapnum < count; remapnum++) |
| 3055 | 3055 | for (input_type_entry *entry = m_typelist.first(); entry != NULL; entry = entry->next()) |
| 3056 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 3056 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 3057 | 3057 | entry->m_seq[seqtype].replace(oldtable[remapnum], newtable[remapnum]); |
| 3058 | 3058 | } |
| 3059 | 3059 | } |
| r250237 | r250238 | |
| 3070 | 3070 | for (input_type_entry *entry = m_typelist.first(); entry != NULL; entry = entry->next()) |
| 3071 | 3071 | if (entry->type() == type && entry->player() == player) |
| 3072 | 3072 | { |
| 3073 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 3073 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 3074 | 3074 | if (newseq[seqtype][0] != INPUT_CODE_INVALID) |
| 3075 | 3075 | entry->m_seq[seqtype] = newseq[seqtype]; |
| 3076 | 3076 | return true; |
| r250237 | r250238 | |
| 3102 | 3102 | field->mask() == mask && (field->defvalue() & mask) == (defvalue & mask)) |
| 3103 | 3103 | { |
| 3104 | 3104 | // if a sequence was specified, copy it in |
| 3105 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 3105 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 3106 | 3106 | if (newseq[seqtype][0] != INPUT_CODE_INVALID) |
| 3107 | 3107 | field->live().seq[seqtype] = newseq[seqtype]; |
| 3108 | 3108 | |
| r250237 | r250238 | |
| 3221 | 3221 | { |
| 3222 | 3222 | // see if any of the sequences have changed |
| 3223 | 3223 | input_seq_type seqtype; |
| 3224 | for (seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 3224 | for (seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 3225 | 3225 | if (entry->seq(seqtype) != entry->defseq(seqtype)) |
| 3226 | 3226 | break; |
| 3227 | 3227 | |
| r250237 | r250238 | |
| 3237 | 3237 | xml_set_attribute(portnode, "type", input_type_to_token(tempstr, entry->type(), entry->player())); |
| 3238 | 3238 | |
| 3239 | 3239 | // add only the sequences that have changed from the defaults |
| 3240 | for (input_seq_type type = SEQ_TYPE_STANDARD; type < SEQ_TYPE_TOTAL; | |
| 3240 | for (input_seq_type type = SEQ_TYPE_STANDARD; type < SEQ_TYPE_TOTAL; type++) | |
| 3241 | 3241 | if (entry->seq(type) != entry->defseq(type)) |
| 3242 | 3242 | save_sequence(portnode, type, entry->type(), entry->seq(type)); |
| 3243 | 3243 | } |
| r250237 | r250238 | |
| 3261 | 3261 | { |
| 3262 | 3262 | // determine if we changed |
| 3263 | 3263 | bool changed = false; |
| 3264 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 3264 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 3265 | 3265 | changed |= (field->seq(seqtype) != field->defseq(seqtype)); |
| 3266 | 3266 | |
| 3267 | 3267 | // non-analog changes |
| r250237 | r250238 | |
| 3295 | 3295 | xml_set_attribute_int(portnode, "defvalue", field->defvalue() & field->mask()); |
| 3296 | 3296 | |
| 3297 | 3297 | // add sequences if changed |
| 3298 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 3298 | for (input_seq_type seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 3299 | 3299 | if (field->seq(seqtype) != field->defseq(seqtype)) |
| 3300 | 3300 | save_sequence(portnode, seqtype, field->type(), field->seq(seqtype)); |
| 3301 | 3301 |
| r250237 | r250238 | |
|---|---|---|
| 428 | 428 | lua_State *L = luaThis->m_lua_state; |
| 429 | 429 | luabridge::LuaRef sp_table = luabridge::LuaRef::newTable(L); |
| 430 | 430 | |
| 431 | for (address_spacenum sp = AS_0; sp < ADDRESS_SPACES; | |
| 431 | for (address_spacenum sp = AS_0; sp < ADDRESS_SPACES; sp++) { | |
| 432 | 432 | if (dev->memory().has_space(sp)) { |
| 433 | 433 | sp_table[dev->memory().space(sp).name()] = &(dev->memory().space(sp)); |
| 434 | 434 | } |
| r250237 | r250238 | |
|---|---|---|
| 484 | 484 | |
| 485 | 485 | // forward delegate callbacks configuration |
| 486 | 486 | template<typename _delegate> void set_delegate(_delegate delegate) const { |
| 487 | for (typename std::list<_HandlerEntry *>::const_iterator i = handlers.begin(); i != handlers.end(); ++ | |
| 487 | for (typename std::list<_HandlerEntry *>::const_iterator i = handlers.begin(); i != handlers.end(); i++) | |
| 488 | 488 | (*i)->set_delegate(delegate, mask); |
| 489 | 489 | } |
| 490 | 490 | |
| 491 | 491 | // forward I/O port access configuration |
| 492 | 492 | void set_ioport(ioport_port &ioport) const { |
| 493 | for (typename std::list<_HandlerEntry *>::const_iterator i = handlers.begin(); i != handlers.end(); ++ | |
| 493 | for (typename std::list<_HandlerEntry *>::const_iterator i = handlers.begin(); i != handlers.end(); i++) | |
| 494 | 494 | (*i)->set_ioport(ioport); |
| 495 | 495 | } |
| 496 | 496 | |
| r250237 | r250238 | |
| 661 | 661 | std::list<UINT32> entries; |
| 662 | 662 | setup_range(bytestart, byteend, bytemask, bytemirror, mask, entries); |
| 663 | 663 | std::list<handler_entry_read *> handlers; |
| 664 | for (std::list<UINT32>::const_iterator i = entries.begin(); i != entries.end(); ++ | |
| 664 | for (std::list<UINT32>::const_iterator i = entries.begin(); i != entries.end(); i++) | |
| 665 | 665 | handlers.push_back(&handler_read(*i)); |
| 666 | 666 | return handler_entry_proxy<handler_entry_read>(handlers, mask); |
| 667 | 667 | } |
| r250237 | r250238 | |
| 734 | 734 | std::list<UINT32> entries; |
| 735 | 735 | setup_range(bytestart, byteend, bytemask, bytemirror, mask, entries); |
| 736 | 736 | std::list<handler_entry_write *> handlers; |
| 737 | for (std::list<UINT32>::const_iterator i = entries.begin(); i != entries.end(); ++ | |
| 737 | for (std::list<UINT32>::const_iterator i = entries.begin(); i != entries.end(); i++) | |
| 738 | 738 | handlers.push_back(&handler_write(*i)); |
| 739 | 739 | return handler_entry_proxy<handler_entry_write>(handlers, mask); |
| 740 | 740 | } |
| r250237 | r250238 | |
| 812 | 812 | std::list<UINT32> entries; |
| 813 | 813 | setup_range(bytestart, byteend, bytemask, bytemirror, mask, entries); |
| 814 | 814 | std::list<handler_entry_setoffset *> handlers; |
| 815 | for (std::list<UINT32>::const_iterator i = entries.begin(); i != entries.end(); ++ | |
| 815 | for (std::list<UINT32>::const_iterator i = entries.begin(); i != entries.end(); i++) | |
| 816 | 816 | handlers.push_back(&handler_setoffset(*i)); |
| 817 | 817 | return handler_entry_proxy<handler_entry_setoffset>(handlers, mask); |
| 818 | 818 | } |
| r250237 | r250238 | |
| 1524 | 1524 | // loop over devices and spaces within each device |
| 1525 | 1525 | memory_interface_iterator iter(machine().root_device()); |
| 1526 | 1526 | for (device_memory_interface *memory = iter.first(); memory != NULL; memory = iter.next()) |
| 1527 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; | |
| 1527 | for (address_spacenum spacenum = AS_0; spacenum < ADDRESS_SPACES; spacenum++) | |
| 1528 | 1528 | { |
| 1529 | 1529 | // if there is a configuration for this space, we need an address space |
| 1530 | 1530 | const address_space_config *spaceconfig = memory->space_config(spacenum); |
| r250237 | r250238 | |
| 1911 | 1911 | { |
| 1912 | 1912 | // find the entry before the last one we processed |
| 1913 | 1913 | const address_map_entry *entry; |
| 1914 | for (entry = map->m_entrylist.first(); entry->next() != last_entry; entry = entry->next()) | |
| 1914 | for (entry = map->m_entrylist.first(); entry->next() != last_entry; entry = entry->next()) ; | |
| 1915 | 1915 | last_entry = entry; |
| 1916 | 1916 | |
| 1917 | 1917 | // map both read and write halves |
| r250237 | r250238 | |
| 2869 | 2869 | curentry.configure(bytestart, byteend, bytemask); |
| 2870 | 2870 | |
| 2871 | 2871 | // Populate it wherever needed |
| 2872 | for (std::list<subrange>::const_iterator i = range_override.begin(); i != range_override.end(); ++ | |
| 2872 | for (std::list<subrange>::const_iterator i = range_override.begin(); i != range_override.end(); i++) | |
| 2873 | 2873 | populate_range(i->start, i->end, entry); |
| 2874 | 2874 | |
| 2875 | 2875 | // Add it in the "to be setup" list |
| r250237 | r250238 | |
| 2882 | 2882 | // Ranges in range_partial must duplicated then partially changed |
| 2883 | 2883 | if (!range_partial.empty()) |
| 2884 | 2884 | { |
| 2885 | for (std::map<UINT16, std::list<subrange> >::const_iterator i = range_partial.begin(); i != range_partial.end(); ++ | |
| 2885 | for (std::map<UINT16, std::list<subrange> >::const_iterator i = range_partial.begin(); i != range_partial.end(); i++) | |
| 2886 | 2886 | { |
| 2887 | 2887 | // Theorically, if the handler to change matches the |
| 2888 | 2888 | // characteristics of ours, we can directly change it. In |
| r250237 | r250238 | |
| 2912 | 2912 | curentry.configure(bytestart, byteend, bytemask); |
| 2913 | 2913 | |
| 2914 | 2914 | // Populate it wherever needed |
| 2915 | for (std::list<subrange>::const_iterator j = i->second.begin(); j != i->second.end(); ++ | |
| 2915 | for (std::list<subrange>::const_iterator j = i->second.begin(); j != i->second.end(); j++) | |
| 2916 | 2916 | populate_range(j->start, j->end, entry); |
| 2917 | 2917 | |
| 2918 | 2918 | // Add it in the "to be setup" list |
| r250237 | r250238 | |
|---|---|---|
| 175 | 175 | // compute the total time for all bits, not including profiler or idle |
| 176 | 176 | UINT64 computed = 0; |
| 177 | 177 | profile_type curtype; |
| 178 | for (curtype = PROFILER_DEVICE_FIRST; curtype < PROFILER_PROFILER; | |
| 178 | for (curtype = PROFILER_DEVICE_FIRST; curtype < PROFILER_PROFILER; curtype++) | |
| 179 | 179 | computed += m_data[curtype]; |
| 180 | 180 | |
| 181 | 181 | // save that result in normalize, and continue adding the rest |
| 182 | 182 | UINT64 normalize = computed; |
| 183 | for ( ; curtype < PROFILER_TOTAL; | |
| 183 | for ( ; curtype < PROFILER_TOTAL; curtype++) | |
| 184 | 184 | computed += m_data[curtype]; |
| 185 | 185 | |
| 186 | 186 | // this becomes the total; if we end up with 0 for anything, we were just started, so return empty |
| r250237 | r250238 | |
| 193 | 193 | |
| 194 | 194 | // loop over all types and generate the string |
| 195 | 195 | device_iterator iter(machine.root_device()); |
| 196 | for (curtype = PROFILER_DEVICE_FIRST; curtype < PROFILER_TOTAL; | |
| 196 | for (curtype = PROFILER_DEVICE_FIRST; curtype < PROFILER_TOTAL; curtype++) | |
| 197 | 197 | { |
| 198 | 198 | // determine the accumulated time for this type |
| 199 | 199 | computed = m_data[curtype]; |
| r250237 | r250238 | |
|---|---|---|
| 1204 | 1204 | throw emu_fatalerror("Mandatory artwork is missing"); |
| 1205 | 1205 | |
| 1206 | 1206 | // scan the current view for all screens |
| 1207 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; | |
| 1207 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; layer++) | |
| 1208 | 1208 | |
| 1209 | 1209 | // iterate over items in the layer |
| 1210 | 1210 | for (layout_view::item *curitem = m_curview->first_item(layer); curitem != NULL; curitem = curitem->next()) |
| r250237 | r250238 | |
| 1287 | 1287 | |
| 1288 | 1288 | // iterate over layers back-to-front, but only if we're running |
| 1289 | 1289 | if (m_manager.machine().phase() >= MACHINE_PHASE_RESET) |
| 1290 | for (item_layer layernum = ITEM_LAYER_FIRST; layernum < ITEM_LAYER_MAX; | |
| 1290 | for (item_layer layernum = ITEM_LAYER_FIRST; layernum < ITEM_LAYER_MAX; layernum++) | |
| 1291 | 1291 | { |
| 1292 | 1292 | int blendmode; |
| 1293 | 1293 | item_layer layer = get_layer_and_blendmode(*m_curview, layernum, blendmode); |
| r250237 | r250238 | |
| 1916 | 1916 | } |
| 1917 | 1917 | |
| 1918 | 1918 | // loop through each layer |
| 1919 | for (item_layer layernum = ITEM_LAYER_FIRST; layernum < ITEM_LAYER_MAX; | |
| 1919 | for (item_layer layernum = ITEM_LAYER_FIRST; layernum < ITEM_LAYER_MAX; layernum++) | |
| 1920 | 1920 | { |
| 1921 | 1921 | int blendmode; |
| 1922 | 1922 | item_layer layer = get_layer_and_blendmode(*m_curview, layernum, blendmode); |
| r250237 | r250238 | |
|---|---|---|
| 2216 | 2216 | // loop over all layers |
| 2217 | 2217 | bool first = true; |
| 2218 | 2218 | bool scrfirst = true; |
| 2219 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; | |
| 2219 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; layer++) | |
| 2220 | 2220 | { |
| 2221 | 2221 | // determine if this layer should be visible |
| 2222 | 2222 | switch (layer) |
| r250237 | r250238 | |
| 2291 | 2291 | float yscale = (target_bounds.y1 - target_bounds.y0) / (m_bounds.y1 - m_bounds.y0); |
| 2292 | 2292 | |
| 2293 | 2293 | // normalize all the item bounds |
| 2294 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; | |
| 2294 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; layer++) | |
| 2295 | 2295 | for (item *curitem = first_item(layer); curitem != NULL; curitem = curitem->next()) |
| 2296 | 2296 | { |
| 2297 | 2297 | curitem->m_bounds.x0 = target_bounds.x0 + (curitem->m_rawbounds.x0 - xoffs) * xscale; |
| r250237 | r250238 | |
| 2308 | 2308 | |
| 2309 | 2309 | void layout_view::resolve_tags() |
| 2310 | 2310 | { |
| 2311 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; | |
| 2311 | for (item_layer layer = ITEM_LAYER_FIRST; layer < ITEM_LAYER_MAX; layer++) | |
| 2312 | 2312 | { |
| 2313 | 2313 | for (item *curitem = first_item(layer); curitem != NULL; curitem = curitem->next()) |
| 2314 | 2314 | { |
| r250237 | r250238 | |
|---|---|---|
| 1355 | 1355 | // advance in X |
| 1356 | 1356 | cx += incxx; |
| 1357 | 1357 | x++; |
| 1358 | | |
| 1358 | dest++; | |
| 1359 | 1359 | pri++; |
| 1360 | 1360 | } |
| 1361 | 1361 | } |
| r250237 | r250238 | |
| 1395 | 1395 | cx += incxx; |
| 1396 | 1396 | cy += incxy; |
| 1397 | 1397 | x++; |
| 1398 | | |
| 1398 | dest++; | |
| 1399 | 1399 | pri++; |
| 1400 | 1400 | } |
| 1401 | 1401 | |
| r250237 | r250238 | |
| 1436 | 1436 | cx += incxx; |
| 1437 | 1437 | cy += incxy; |
| 1438 | 1438 | x++; |
| 1439 | | |
| 1439 | dest++; | |
| 1440 | 1440 | pri++; |
| 1441 | 1441 | } |
| 1442 | 1442 |
| r250237 | r250238 | |
|---|---|---|
| 109 | 109 | |
| 110 | 110 | /* loop over all sequence types */ |
| 111 | 111 | sortorder++; |
| 112 | for (seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 112 | for (seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 113 | 113 | { |
| 114 | 114 | /* build an entry for the standard sequence */ |
| 115 | 115 | input_item_data *item = (input_item_data *)m_pool_alloc(sizeof(*item)); |
| r250237 | r250238 | |
| 187 | 187 | sortorder = field->type() | 0xf000; |
| 188 | 188 | |
| 189 | 189 | /* loop over all sequence types */ |
| 190 | for (seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; | |
| 190 | for (seqtype = SEQ_TYPE_STANDARD; seqtype < SEQ_TYPE_TOTAL; seqtype++) | |
| 191 | 191 | { |
| 192 | 192 | /* build an entry for the standard sequence */ |
| 193 | 193 | input_item_data *item = (input_item_data *)m_pool_alloc(sizeof(*item)); |
| r250237 | r250238 | |
|---|---|---|
| 1713 | 1713 | } |
| 1714 | 1714 | |
| 1715 | 1715 | // check for A-Z or 0-9 |
| 1716 | for (input_item_id id = ITEM_ID_A; id <= ITEM_ID_Z; | |
| 1716 | for (input_item_id id = ITEM_ID_A; id <= ITEM_ID_Z; id++) | |
| 1717 | 1717 | if (machine.input().code_pressed_once(input_code(DEVICE_CLASS_KEYBOARD, 0, ITEM_CLASS_SWITCH, ITEM_MODIFIER_NONE, id))) |
| 1718 | 1718 | file = id - ITEM_ID_A + 'a'; |
| 1719 | 1719 | if (file == 0) |
| 1720 | for (input_item_id id = ITEM_ID_0; id <= ITEM_ID_9; | |
| 1720 | for (input_item_id id = ITEM_ID_0; id <= ITEM_ID_9; id++) | |
| 1721 | 1721 | if (machine.input().code_pressed_once(input_code(DEVICE_CLASS_KEYBOARD, 0, ITEM_CLASS_SWITCH, ITEM_MODIFIER_NONE, id))) |
| 1722 | 1722 | file = id - ITEM_ID_0 + '0'; |
| 1723 | 1723 | if (file == 0) |
| 1724 | for (input_item_id id = ITEM_ID_0_PAD; id <= ITEM_ID_9_PAD; | |
| 1724 | for (input_item_id id = ITEM_ID_0_PAD; id <= ITEM_ID_9_PAD; id++) | |
| 1725 | 1725 | if (machine.input().code_pressed_once(input_code(DEVICE_CLASS_KEYBOARD, 0, ITEM_CLASS_SWITCH, ITEM_MODIFIER_NONE, id))) |
| 1726 | 1726 | file = id - ITEM_ID_0_PAD + '0'; |
| 1727 | 1727 | if (file == 0) |
| r250237 | r250238 | |
|---|---|---|
| 97 | 97 | ui_input_private *uidata = machine.ui_input_data; |
| 98 | 98 | |
| 99 | 99 | /* update the state of all the UI keys */ |
| 100 | for (ioport_type code = ioport_type(IPT_UI_FIRST + 1); code < IPT_UI_LAST; | |
| 100 | for (ioport_type code = ioport_type(IPT_UI_FIRST + 1); code < IPT_UI_LAST; code++) | |
| 101 | 101 | { |
| 102 | 102 | bool pressed = machine.ioport().type_pressed(code); |
| 103 | 103 | if (!pressed || uidata->seqpressed[code] != SEQ_PRESSED_RESET) |
| r250237 | r250238 | |
|---|---|---|
| 3055 | 3055 | |
| 3056 | 3056 | WRITE16_MEMBER(namcos23_state::mcu_pb_w) |
| 3057 | 3057 | { |
| 3058 | m_sub_portb = (m_sub_portb & 0x | |
| 3058 | m_sub_portb = (m_sub_portb & 0x80) | (data & 0x7f); | |
| 3059 | 3059 | m_rtc->ce_w((m_sub_portb & 0x20) && (m_sub_porta & 1)); |
| 3060 | 3060 | m_settings->ce_w((m_sub_portb & 0x20) && !(m_sub_porta & 1)); |
| 3061 | 3061 | } |
| r250237 | r250238 | |
|---|---|---|
| 232 | 232 | depthbuffer = NULL; |
| 233 | 233 | displayedtarget = NULL; |
| 234 | 234 | puller_channel = 0; |
| 235 | puller_subchannel = 0; | |
| 235 | 236 | puller_waiting = 0; |
| 236 | 237 | debug_grab_texttype = -1; |
| 237 | 238 | debug_grab_textfile = NULL; |
| 238 | waitvblank_used = | |
| 239 | waitvblank_used = 0; | |
| 239 | 240 | memset(vertex_attribute_words, 0, sizeof(vertex_attribute_words)); |
| 240 | 241 | memset(vertex_attribute_offset, 0, sizeof(vertex_attribute_offset)); |
| 241 | 242 | } |
| r250237 | r250238 | |
| 253 | 254 | int geforce_commandkind(UINT32 word); |
| 254 | 255 | UINT32 geforce_object_offset(UINT32 handle); |
| 255 | 256 | void geforce_read_dma_object(UINT32 handle, UINT32 &offset, UINT32 &size); |
| 256 | void geforce_assign_object(address_space &space, UINT32 chanel, UINT32 subchannel, UINT32 address); | |
| 257 | 257 | int geforce_exec_method(address_space &space, UINT32 channel, UINT32 subchannel, UINT32 method, UINT32 address, int &countlen); |
| 258 | 258 | UINT32 texture_get_texel(int number, int x, int y); |
| 259 | UINT8 *read_pixel(int x, int y, INT32 c[4]); | |
| 259 | UINT8 *read_pixel(int x, int y, UINT32 c[4]); | |
| 260 | 260 | void write_pixel(int x, int y, UINT32 color, UINT32 depth); |
| 261 | 261 | void combiner_initialize_registers(UINT32 argb8[6]); |
| 262 | 262 | void combiner_initialize_stage(int stage_number); |
| r250237 | r250238 | |
| 496 | 496 | int vertex_attribute_offset[16]; |
| 497 | 497 | emu_timer *puller_timer; |
| 498 | 498 | int puller_channel; |
| 499 | int puller_subchannel; | |
| 499 | 500 | int puller_waiting; |
| 500 | 501 | address_space *puller_space; |
| 501 | 502 | UINT32 dilated0[16][2048]; |
| r250237 | r250238 | |
| 659 | 660 | NV2A_RT_DEPTH_FORMAT_Z16 = 0x0001, |
| 660 | 661 | NV2A_RT_DEPTH_FORMAT_Z24S8 = 0x0002 |
| 661 | 662 | }; |
| 663 | ||
| 662 | 664 | enum NV2A_COLOR_FORMAT { |
| 663 | NV2A_COLOR_FORMAT_X1R5G5B5_Z1R5G5B5 = 1, | |
| 664 | NV2A_COLOR_FORMAT_X1R5G5B5_X1R5G5B5 = 2, | |
| 665 | NV2A_COLOR_FORMAT_R5G6B5 = 3, | |
| 666 | NV2A_COLOR_FORMAT_X8R8G8B8_Z8R8G8B8 = 4, | |
| 667 | NV2A_COLOR_FORMAT_X8R8G8B8_X8R8G8B8 = 5, | |
| 668 | NV2A_COLOR_FORMAT_X1A7R8G8B8_Z1A7R8G8B8 = 6, | |
| 669 | NV2A_COLOR_FORMAT_X1A7R8G8B8_X1A7R8G8B8 = 7, | |
| 670 | NV2A_COLOR_FORMAT_A8R8G8B8 = 8, | |
| 671 | NV2A_COLOR_FORMAT_B8 = 9, | |
| 672 | NV2A_COLOR_FORMAT_G8B8 = 10 | |
| 665 | NV2A_COLOR_FORMAT_X1R5G6B5 = 0x0002, | |
| 666 | NV2A_COLOR_FORMAT_R5G6B5 = 0x0003, | |
| 667 | NV2A_COLOR_FORMAT_UNKNOWN4 = 0x0004, | |
| 668 | NV2A_COLOR_FORMAT_X8R8G8B8 = 0x0005, | |
| 669 | NV2A_COLOR_FORMAT_X1A7R8G8B8 = 0x0007, | |
| 670 | NV2A_COLOR_FORMAT_A8R8G8B8 = 0x0008, | |
| 671 | NV2A_COLOR_FORMAT_B8 = 0x0009, | |
| 672 | NV2A_COLOR_FORMAT_G8B8 = 0x000a | |
| 673 | 673 | }; |
| 674 | 674 | }; |
| r250237 | r250238 | |
|---|---|---|
| 11 | 11 | |
| 12 | 12 | NAOMI_ROM_OFFSET bit29: ROM size/mapping selection, 0 - 4MB ROM mode, 1 - 8MB ROM mode |
| 13 | 13 | |
| 14 | bit28: Bank selection. | |
| 15 | in the case of flash-based 171-7885A ROM boards two of them can be stacked at once | |
| 16 | onto main board. each must be configured as Bank 0 or 1 via some (currently unknown) jumper. | |
| 17 | this bit selects which one ROM board will be accessed. | |
| 18 | ||
| 19 | 14 | note: if ROM is not mounted its area readed as 0xFF |
| 20 | 15 | |
| 21 | 16 | 8MB ROM mode: |
| r250237 | r250238 | |
| 171 | 166 | void naomi_m2_board::board_write(offs_t offset, UINT16 data) |
| 172 | 167 | { |
| 173 | 168 | if(offset & 0x40000000) { |
| 174 | if(offset & 0x00020000) { | |
| 169 | if((offset & 0x0f000000) == 0x02000000) { | |
| 175 | 170 | offset &= RAM_SIZE-1; |
| 176 | 171 | ram[offset] = data; |
| 177 | 172 | ram[offset+1] = data >> 8; |
| 178 | 173 | return; |
| 179 | 174 | } |
| 180 | switch(offset & 0x1ffff) { | |
| 175 | switch(offset & 0x1fffffff) { | |
| 181 | 176 | case 0x1fff8: m_cryptdevice->set_addr_low(data); return; |
| 182 | 177 | case 0x1fffa: m_cryptdevice->set_addr_high(data); return; |
| 183 | 178 | case 0x1fffc: m_cryptdevice->set_subkey(data); return; |
| r250237 | r250238 | |
|---|---|---|
| 1190 | 1190 | static void hubintiasbridg_pci_w(device_t *busdevice, device_t *device, int function, int reg, UINT32 data, UINT32 mem_mask) |
| 1191 | 1191 | { |
| 1192 | 1192 | #ifdef LOG_PCI |
| 1193 | if (reg >= 16) | |
| 1193 | if (reg >= 16) device->logerror(" bus:0 function:%d register:%d data:%08X mask:%08X\n", function, reg, data, mem_mask); | |
| 1194 | 1194 | #endif |
| 1195 | 1195 | } |
| 1196 | 1196 | |
| r250237 | r250238 | |
| 1209 | 1209 | static void dummy_pci_w(device_t *busdevice, device_t *device, int function, int reg, UINT32 data, UINT32 mem_mask) |
| 1210 | 1210 | { |
| 1211 | 1211 | #ifdef LOG_PCI |
| 1212 | if (reg >= 16) | |
| 1212 | if (reg >= 16) device->logerror(" bus:0 function:%d register:%d data:%08X mask:%08X\n", function, reg, data, mem_mask); | |
| 1213 | 1213 | #endif |
| 1214 | 1214 | } |
| 1215 | 1215 |
| r250237 | r250238 | |
|---|---|---|
| 1240 | 1240 | } |
| 1241 | 1241 | } |
| 1242 | 1242 | |
| 1243 | inline UINT8 *nv2a_renderer::read_pixel(int x, int y, INT32 c[4]) | |
| 1243 | inline UINT8 *nv2a_renderer::read_pixel(int x, int y, UINT32 c[4]) | |
| 1244 | 1244 | { |
| 1245 | 1245 | UINT32 offset; |
| 1246 | 1246 | UINT32 color; |
| r250237 | r250238 | |
| 1261 | 1261 | c[1] = pal6bit((color & 0x07e0) >> 5); |
| 1262 | 1262 | c[0] = pal5bit(color & 0x1f); |
| 1263 | 1263 | return (UINT8 *)addr16; |
| 1264 | case NV2A_COLOR_FORMAT_X8R8G8B8_Z8R8G8B8: | |
| 1265 | case NV2A_COLOR_FORMAT_X8R8G8B8_X8R8G8B8: | |
| 1264 | case NV2A_COLOR_FORMAT_UNKNOWN4: | |
| 1265 | case NV2A_COLOR_FORMAT_X8R8G8B8: | |
| 1266 | 1266 | addr = (UINT32 *)((UINT8 *)rendertarget + offset); |
| 1267 | 1267 | color = *addr; |
| 1268 | 1268 | |
| r250237 | r250238 | |
| 1295 | 1295 | UINT32 *daddr32; |
| 1296 | 1296 | UINT16 *daddr16; |
| 1297 | 1297 | UINT32 deptsten; |
| 1298 | INT32 c[4], fb[4], s[4], d[4], cc[4]; | |
| 1298 | UINT32 c[4], fb[4], s[4], d[4], cc[4]; | |
| 1299 | 1299 | UINT32 dep, sten, stenc, stenv; |
| 1300 | 1300 | bool stencil_passed; |
| 1301 | 1301 | bool depth_passed; |
| r250237 | r250238 | |
| 1854 | 1854 | if (color_mask != 0) { |
| 1855 | 1855 | UINT32 ct,ft,w; |
| 1856 | 1856 | |
| 1857 | ct = ((UINT32)c[3] << 24) | ((UINT32)c[2] << 16) | ((UINT32)c[1] << 8) | (UINT32)c[0]; | |
| 1858 | ft = ((UINT32)fb[3] << 24) | ((UINT32)fb[2] << 16) | ((UINT32)fb[1] << 8) | (UINT32)fb[0]; | |
| 1857 | ct = (c[3] << 24) | (c[2] << 16) | (c[1] << 8) | c[0]; | |
| 1858 | ft = (fb[3] << 24) | (fb[2] << 16) | (fb[1] << 8) | fb[0]; | |
| 1859 | 1859 | w = (ft & ~color_mask) | (ct & color_mask); |
| 1860 | 1860 | switch (colorformat_rendertarget) { |
| 1861 | 1861 | case NV2A_COLOR_FORMAT_R5G6B5: |
| 1862 | 1862 | w = ((w >> 8) & 0xf800) + ((w >> 5) & 0x7e0) + ((w >> 3) & 0x1f); |
| 1863 | 1863 | *((UINT16 *)addr) = (UINT16)w; |
| 1864 | 1864 | break; |
| 1865 | case NV2A_COLOR_FORMAT_X8R8G8B8_Z8R8G8B8: | |
| 1866 | case NV2A_COLOR_FORMAT_X8R8G8B8_X8R8G8B8: | |
| 1865 | case NV2A_COLOR_FORMAT_UNKNOWN4: | |
| 1866 | case NV2A_COLOR_FORMAT_X8R8G8B8: | |
| 1867 | 1867 | *((UINT32 *)addr) = w; |
| 1868 | 1868 | break; |
| 1869 | 1869 | case NV2A_COLOR_FORMAT_A8R8G8B8: |
| r250237 | r250238 | |
| 2862 | 2862 | m = 1; |
| 2863 | 2863 | // possible buffers: color, depth, stencil |
| 2864 | 2864 | // clear framebuffer |
| 2865 | if ( | |
| 2865 | if (data & 0xf0) { | |
| 2866 | 2866 | if (bytespixel_rendertarget == 4) { |
| 2867 | 2867 | bitmap_rgb32 bm(rendertarget, (limits_rendertarget.right() + 1) * m, (limits_rendertarget.bottom() + 1) * m, pitch_rendertarget / 4); |
| 2868 | 2868 | |
| r250237 | r250238 | |
| 2913 | 2913 | case NV2A_COLOR_FORMAT_R5G6B5: |
| 2914 | 2914 | bytespixel_rendertarget = 2; |
| 2915 | 2915 | break; |
| 2916 | case NV2A_COLOR_FORMAT_X8R8G8B8_Z8R8G8B8: | |
| 2917 | case NV2A_COLOR_FORMAT_X8R8G8B8_X8R8G8B8: | |
| 2916 | case NV2A_COLOR_FORMAT_UNKNOWN4: | |
| 2917 | case NV2A_COLOR_FORMAT_X8R8G8B8: | |
| 2918 | 2918 | case NV2A_COLOR_FORMAT_A8R8G8B8: |
| 2919 | 2919 | bytespixel_rendertarget = 4; |
| 2920 | 2920 | break; |
| r250237 | r250238 | |
| 4018 | 4018 | return 0; |
| 4019 | 4019 | } |
| 4020 | 4020 | |
| 4021 | void nv2a_renderer::geforce_assign_object(address_space & space, UINT32 chanel, UINT32 subchannel, UINT32 address) | |
| 4022 | { | |
| 4023 | int handle, objclass; | |
| 4024 | ||
| 4025 | handle = space.read_dword(address); | |
| 4026 | handle = geforce_object_offset(handle); | |
| 4027 | #ifdef LOG_NV2A | |
| 4028 | machine().logerror(" assign to subchannel %d object at %d", subch, handle); | |
| 4029 | #endif | |
| 4030 | channel[chanel][subchannel].object.objhandle = handle; | |
| 4031 | handle = ramin[handle / 4]; | |
| 4032 | objclass = handle & 0xff; | |
| 4033 | #ifdef LOG_NV2A | |
| 4034 | machine().logerror(" class %03X\n", objclass); | |
| 4035 | #endif | |
| 4036 | channel[chanel][subchannel].object.objclass = objclass; | |
| 4037 | } | |
| 4038 | ||
| 4039 | 4021 | TIMER_CALLBACK_MEMBER(nv2a_renderer::puller_timer_work) |
| 4040 | 4022 | { |
| 4041 | int chanel; | |
| 4042 | int method, count; | |
| 4023 | int chanel, subchannel; | |
| 4024 | int method, count, handle, objclass; | |
| 4043 | 4025 | UINT32 *dmaput, *dmaget; |
| 4044 | 4026 | UINT32 cmd, cmdtype; |
| 4045 | 4027 | int countlen; |
| r250237 | r250238 | |
| 4048 | 4030 | UINT32 subch; |
| 4049 | 4031 | |
| 4050 | 4032 | chanel = puller_channel; |
| 4051 | dmaput = &channel[chanel][0].regs[0x40 / 4]; | |
| 4052 | dmaget = &channel[chanel][0].regs[0x44 / 4]; | |
| 4033 | subchannel = puller_subchannel; | |
| 4034 | dmaput = &channel[chanel][subchannel].regs[0x40 / 4]; | |
| 4035 | dmaget = &channel[chanel][subchannel].regs[0x44 / 4]; | |
| 4053 | 4036 | while (*dmaget != *dmaput) { |
| 4054 | 4037 | cmd = space->read_dword(*dmaget); |
| 4055 | 4038 | *dmaget += 4; |
| r250237 | r250238 | |
| 4058 | 4041 | { |
| 4059 | 4042 | case 6: // jump |
| 4060 | 4043 | #ifdef LOG_NV2A |
| 4061 | | |
| 4044 | printf("jump dmaget %08X", *dmaget); | |
| 4062 | 4045 | #endif |
| 4063 | 4046 | *dmaget = cmd & 0xfffffffc; |
| 4064 | 4047 | #ifdef LOG_NV2A |
| 4065 | | |
| 4048 | printf(" -> %08X\n\r", *dmaget); | |
| 4066 | 4049 | #endif |
| 4067 | 4050 | break; |
| 4068 | 4051 | case 0: // increasing method |
| r250237 | r250238 | |
| 4070 | 4053 | subch = (cmd >> 13) & 7; |
| 4071 | 4054 | count = (cmd >> 18) & 2047; |
| 4072 | 4055 | if ((method == 0) && (count == 1)) { |
| 4073 | geforce_assign_object(*space, chanel, subch, *dmaget); | |
| 4056 | handle = space->read_dword(*dmaget); | |
| 4057 | handle = geforce_object_offset(handle); | |
| 4058 | #ifdef LOG_NV2A | |
| 4059 | machine().logerror(" assign to subchannel %d object at %d", subch, handle); | |
| 4060 | #endif | |
| 4061 | channel[chanel][subch].object.objhandle = handle; | |
| 4062 | handle = ramin[handle / 4]; | |
| 4063 | objclass = handle & 0xff; | |
| 4064 | #ifdef LOG_NV2A | |
| 4065 | machine().logerror(" class %03X\n", objclass); | |
| 4066 | #endif | |
| 4067 | channel[chanel][subch].object.objclass = objclass; | |
| 4074 | 4068 | *dmaget += 4; |
| 4075 | 4069 | } |
| 4076 | 4070 | else { |
| r250237 | r250238 | |
| 4099 | 4093 | subch = (cmd >> 13) & 7; |
| 4100 | 4094 | count = (cmd >> 18) & 2047; |
| 4101 | 4095 | if ((method == 0) && (count == 1)) { |
| 4102 | geforce_assign_object(*space, chanel, subch, *dmaget); | |
| 4096 | handle = space->read_dword(*dmaget); | |
| 4097 | handle = geforce_object_offset(handle); | |
| 4098 | #ifdef LOG_NV2A | |
| 4099 | machine().logerror(" assign to subchannel %d object at %d", subch, handle); | |
| 4100 | #endif | |
| 4101 | channel[chanel][subch].object.objhandle = handle; | |
| 4102 | handle = ramin[handle / 4]; | |
| 4103 | objclass = handle & 0xff; | |
| 4104 | #ifdef LOG_NV2A | |
| 4105 | machine().logerror(" class %03X\n", objclass); | |
| 4106 | #endif | |
| 4107 | channel[chanel][subch].object.objclass = objclass; | |
| 4103 | 4108 | *dmaget += 4; |
| 4104 | 4109 | } |
| 4105 | 4110 | else { |
| r250237 | r250238 | |
| 4120 | 4125 | count = space->read_dword(*dmaget); |
| 4121 | 4126 | *dmaget += 4; |
| 4122 | 4127 | if ((method == 0) && (count == 1)) { |
| 4123 | geforce_assign_object(*space, chanel, subch, *dmaget); | |
| 4128 | handle = space->read_dword(*dmaget); | |
| 4129 | handle = geforce_object_offset(handle); | |
| 4130 | #ifdef LOG_NV2A | |
| 4131 | machine().logerror(" assign to subchannel %d object at %d", subch, handle); | |
| 4132 | #endif | |
| 4133 | channel[chanel][subch].object.objhandle = handle; | |
| 4134 | handle = ramin[handle / 4]; | |
| 4135 | objclass = handle & 0xff; | |
| 4136 | #ifdef LOG_NV2A | |
| 4137 | machine().logerror(" class %03X\n", objclass); | |
| 4138 | #endif | |
| 4139 | channel[chanel][subch].object.objclass = objclass; | |
| 4124 | 4140 | *dmaget += 4; |
| 4125 | 4141 | } |
| 4126 | 4142 | else { |
| r250237 | r250238 | |
| 4278 | 4294 | subchannel = (suboffset >> (13 - 2)) & 7; |
| 4279 | 4295 | suboffset = suboffset & 0x7ff; |
| 4280 | 4296 | //machine().logerror("NV_2A: write channel[%02X,%d,%04X]=%08X\n",chanel,subchannel,suboffset*4,data & mem_mask); |
| 4281 | COMBINE_DATA(&channel[chanel][subchannel].regs[suboffset]); | |
| 4282 | 4297 | if (suboffset >= 0x80 / 4) |
| 4283 | 4298 | return; |
| 4299 | COMBINE_DATA(&channel[chanel][subchannel].regs[suboffset]); | |
| 4284 | 4300 | if ((suboffset == 0x40 / 4) || (suboffset == 0x44 / 4)) { // DMA_PUT or DMA_GET |
| 4285 | 4301 | UINT32 *dmaput, *dmaget; |
| 4286 | 4302 | |
| 4287 | dmaput = &channel[chanel][0].regs[0x40 / 4]; | |
| 4288 | dmaget = &channel[chanel][0].regs[0x44 / 4]; | |
| 4303 | dmaput = &channel[chanel][subchannel].regs[0x40 / 4]; | |
| 4304 | dmaget = &channel[chanel][subchannel].regs[0x44 / 4]; | |
| 4289 | 4305 | //printf("dmaget %08X dmaput %08X\n\r",*dmaget,*dmaput); |
| 4290 | if ((*dmaput == 0x048cf000) && (*dmaget == 0x07f4d000)) { | |
| 4306 | if ((*dmaput == 0x048cf000) && (*dmaget == 0x07f4d000)) { | |
| 4291 | 4307 | *dmaget = *dmaput; |
| 4292 | 4308 | puller_waiting = 0; |
| 4293 | 4309 | puller_timer->enable(false); |
| r250237 | r250238 | |
| 4296 | 4312 | if (*dmaget != *dmaput) { |
| 4297 | 4313 | if (puller_waiting == 0) { |
| 4298 | 4314 | puller_channel = chanel; |
| 4315 | puller_subchannel = subchannel; | |
| 4299 | 4316 | puller_space = &space; |
| 4300 | 4317 | puller_timer->enable(); |
| 4301 | 4318 | puller_timer->adjust(attotime::zero); |
| https://github.com/mamedev/mame/commit/31cca9ea639ef2e09eaae08cb6f13addfab40d2f |
| Previous | 199869 Revisions | Next |