Previous 199869 Revisions Next

r36729 Saturday 28th March, 2015 at 05:57:07 UTC by Miodrag Milanović
Merge branch 'master' of https://github.com/mamedev/mame
[/trunk]makefile
[scripts]genie.lua toolchain.lua
[scripts/src]main.lua
[scripts/src/osd]osdmini.lua sdl.lua windows.lua
[src/mame]mame.lst
[src/mame/drivers]nmk16.c seibuspi.c
[src/mess/drivers]hh_hmcs40.c hh_tms1k.c hh_ucom4.c
[src/mess/includes]hh_tms1k.h

trunk/makefile
r245240r245241
340340SILENT?=@
341341
342342ifeq ($(TARGET),$(SUBTARGET))
343SUBDIR = $(TARGET)
343SUBDIR = $(OSD)/$(TARGET)
344344else
345SUBDIR = $(TARGET)$(SUBTARGET)
345SUBDIR = $(OSD)/$(TARGET)$(SUBTARGET)
346346endif
347347
348348all: $(GENIE) $(TARGETOS)_$(ARCHITECTURE)
trunk/scripts/genie.lua
r245240r245241
55local naclToolchain = ""
66
77
8function includeosd()
9   includedirs {
10      MAME_DIR .. "src/osd",
11   }
12   if _OPTIONS["osd"]=="windows" then
13      includedirs {
14         MAME_DIR .. "src/osd/windows",
15      }
16   else
17      includedirs {
18         MAME_DIR .. "src/osd/sdl",
19      }
20   end
21end
22
238function str_to_version (str)
249   local val = 0
2510   if (str == nil or str == '') then
r245240r245241
277262dofile ("toolchain.lua")
278263
279264
280if _OPTIONS["osd"]=="windows" then
281   forcedincludes {
282      MAME_DIR .. "src/osd/windows/winprefix.h"
283   }
284elseif _OPTIONS["osd"]=="sdl" then
285   forcedincludes {
286      MAME_DIR .. "src/osd/sdl/sdlprefix.h"
287   }
288end
289
290265if _OPTIONS["targetos"]=="windows" then
291266configuration { "x64" }
292267   defines {
r245240r245241
608583
609584local subdir
610585if (_OPTIONS["target"] == _OPTIONS["subtarget"]) then
611   subdir = _OPTIONS["target"]
586   subdir = _OPTIONS["osd"] .. "/" .. _OPTIONS["target"]
612587else
613   subdir = _OPTIONS["target"] .. _OPTIONS["subtarget"]
588   subdir = _OPTIONS["osd"] .. "/" .. _OPTIONS["target"] .. _OPTIONS["subtarget"]
614589end   
615590
616if not toolchain(MAME_BUILD_DIR, subdir) then
591if not toolchain(_OPTIONS["osd"], MAME_BUILD_DIR, subdir) then
617592   return -- no action specified
618593end
619594   
r245240r245241
703678         "-static-libstdc++",
704679         "-municode",
705680      }
706      if _OPTIONS["osd"]=="sdl" then
707         linkoptions {
708            "-Wl,--allow-multiple-definition",
709            "-static"
710         }
711         links {
712            "opengl32",
713            "SDL2",
714            "Imm32",
715            "version",
716            "ole32",
717            "oleaut32",
718         }
719      end
681if _OPTIONS["osd"]=="sdl" then
720682      links {
683         "opengl32",
684         "SDL2",
685         "Imm32",
686         "version",
687         "ole32",
688         "oleaut32",
689      }
690end
691      links {
721692         "user32",
722693         "gdi32",
723694         "dsound",
r245240r245241
871842
872843configuration { }
873844
845
874846group "libs"
875dofile(path.join("src", "3rdparty.lua"))
876dofile(path.join("src", "lib.lua"))
877847
878group "core"
879
880848if (not os.isfile(path.join("src", "osd",  _OPTIONS["osd"] .. ".lua"))) then
881849   error("Unsupported value '" .. _OPTIONS["osd"] .. "' for OSD")
882850end
883
884851dofile(path.join("src", "osd", _OPTIONS["osd"] .. ".lua"))
852
853dofile(path.join("src", "3rdparty.lua"))
854dofile(path.join("src", "lib.lua"))
855
856group "core"
857
885858dofile(path.join("src", "emu.lua"))
886859emuProject(_OPTIONS["target"],_OPTIONS["subtarget"])
887860
trunk/scripts/src/main.lua
r245240r245241
55      project (_target .. _subtarget)
66   end   
77   uuid (os.uuid(_target .."_" .. _subtarget))
8   kind "ConsoleApp"   
8   kind "ConsoleApp"
99
1010   options {
1111      "ForceCPP",
r245240r245241
2727         "-sectcreate __TEXT __info_plist " .. GEN_DIR .. "/osd/sdl/" .. _OPTIONS["target"] .. "-Info.plist"
2828      }
2929
30   configuration { "mingw*" }
30   configuration { "mingw*" or "vs*" }
3131      if _OPTIONS["osd"]=="sdl" then
3232         targetprefix "sdl"
3333      end
3434      targetextension ".exe"
35     
36   configuration { "vs*" }
37      if _OPTIONS["osd"]=="sdl" then
38         targetprefix "sdl"
39      end
40      targetextension ".exe"
41     
35
4236   configuration { "asmjs" }
4337      targetextension ".bc" 
44     
38
4539   configuration { }
4640      targetdir(MAME_DIR)
4741
r245240r245241
7670      "ocore_" .. _OPTIONS["osd"],
7771   }
7872   dofile("src/osd/" .. _OPTIONS["osd"] .. "_cfg.lua")
79   
73
8074   includedirs {
8175      MAME_DIR .. "src/emu",
8276      MAME_DIR .. "src/mame",
r245240r245241
9993            rcfile,
10094         }
10195      else
102      files {
103         MAME_DIR .. "src/osd/windows/mame.rc",
104      }
96         files {
97            MAME_DIR .. "src/osd/windows/mame.rc",
98         }
10599      end
106100   end
107101
trunk/scripts/src/osd/osdmini.lua
r245240r245241
1function includeosd()
2   includedirs {
3      MAME_DIR .. "src/osd",
4   }
5end
6
7
18project ("osd_" .. _OPTIONS["osd"])
29   uuid (os.uuid("osd_" .. _OPTIONS["osd"]))
310   kind "StaticLib"
trunk/scripts/src/osd/sdl.lua
r245240r245241
1function includeosd()
2   includedirs {
3      MAME_DIR .. "src/osd",
4      MAME_DIR .. "src/osd/sdl",
5   }
6end
7
8
9forcedincludes {
10   MAME_DIR .. "src/osd/sdl/sdlprefix.h"
11}
12
13
14configuration { "mingw*" }
15      linkoptions {
16         "-Wl,--allow-multiple-definition",
17         "-static"
18      }
19
20configuration { }
21
22
123project ("osd_" .. _OPTIONS["osd"])
224   uuid (os.uuid("osd_" .. _OPTIONS["osd"]))
325   kind "StaticLib"
trunk/scripts/src/osd/windows.lua
r245240r245241
1function includeosd()
2   includedirs {
3      MAME_DIR .. "src/osd",
4      MAME_DIR .. "src/osd/windows",
5   }
6end
7
8
9forcedincludes {
10   MAME_DIR .. "src/osd/windows/winprefix.h"
11}
12
13
114project ("osd_" .. _OPTIONS["osd"])
215   uuid (os.uuid("osd_" .. _OPTIONS["osd"]))
316   kind "StaticLib"
trunk/scripts/toolchain.lua
r245240r245241
6060   description = "Set iOS target version (default: 8.0).",
6161}
6262
63function toolchain(_buildDir, _subDir)
63function toolchain(_osd, _buildDir, _subDir)
6464
6565   location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION)
6666
r245240r245241
352352
353353
354354   configuration { "x32", "vs*" }
355      targetdir (_buildDir .. "win32_" .. _ACTION .. "/bin")
356      objdir (_buildDir .. "win32_" .. _ACTION .. "/obj")
355      targetdir (_buildDir .. _osd .. "/win32_" .. _ACTION .. "/bin")
356      objdir (_buildDir .. _osd .. "/win32_" .. _ACTION .. "/obj")
357357
358358   configuration { "x64", "vs*" }
359359      defines { "_WIN64" }
360      targetdir (_buildDir .. "win64_" .. _ACTION .. "/bin")
361      objdir (_buildDir .. "win64_" .. _ACTION .. "/obj")
360      targetdir (_buildDir .. _osd .. "/win64_" .. _ACTION .. "/bin")
361      objdir (_buildDir .. _osd .. "/win64_" .. _ACTION .. "/obj")
362362
363363   configuration { "ARM", "vs*" }
364      targetdir (_buildDir .. "arm_" .. _ACTION .. "/bin")
365      objdir (_buildDir .. "arm_" .. _ACTION .. "/obj")
364      targetdir (_buildDir .. _osd .. "/arm_" .. _ACTION .. "/bin")
365      objdir (_buildDir .. _osd .. "/arm_" .. _ACTION .. "/obj")
366366
367367   configuration { "x32", "vs*-clang" }
368      targetdir (_buildDir .. "win32_" .. _ACTION .. "-clang/bin")
369      objdir (_buildDir .. "win32_" .. _ACTION .. "-clang/obj")
368      targetdir (_buildDir .. _osd .. "/win32_" .. _ACTION .. "-clang/bin")
369      objdir (_buildDir .. _osd .. "/win32_" .. _ACTION .. "-clang/obj")
370370
371371   configuration { "x64", "vs*-clang" }
372      targetdir (_buildDir .. "win64_" .. _ACTION .. "-clang/bin")
373      objdir (_buildDir .. "win64_" .. _ACTION .. "-clang/obj")
372      targetdir (_buildDir .. _osd .. "/win64_" .. _ACTION .. "-clang/bin")
373      objdir (_buildDir .. _osd .. "/win64_" .. _ACTION .. "-clang/obj")
374374
375375   configuration { "mingw*" }
376376      defines { "WIN32" }
377377
378378   configuration { "x32", "mingw32-gcc" }
379      targetdir (_buildDir .. "win32_mingw-gcc" .. "/bin")
380      objdir (_buildDir .. "win32_mingw-gcc" .. "/obj")
379      targetdir (_buildDir .. _osd .. "/win32_mingw-gcc" .. "/bin")
380      objdir (_buildDir .. _osd .. "/win32_mingw-gcc" .. "/obj")
381381      buildoptions { "-m32" }
382382
383383   configuration { "x64", "mingw64-gcc" }
384      targetdir (_buildDir .. "win64_mingw-gcc" .. "/bin")
385      objdir (_buildDir .. "win64_mingw-gcc" .. "/obj")
384      targetdir (_buildDir .. _osd .. "/win64_mingw-gcc" .. "/bin")
385      objdir (_buildDir .. _osd .. "/win64_mingw-gcc" .. "/obj")
386386      buildoptions { "-m64" }
387387     
388388   configuration { "mingw-clang" }
r245240r245241
392392      }
393393
394394   configuration { "x32", "mingw-clang" }
395      targetdir (_buildDir .. "win32_mingw-clang/bin")
396      objdir ( _buildDir .. "win32_mingw-clang/obj")
395      targetdir (_buildDir .. _osd .. "/win32_mingw-clang/bin")
396      objdir ( _buildDir .. _osd .. "/win32_mingw-clang/obj")
397397      buildoptions { "-m32" }
398398      buildoptions {
399399         "-isystem$(MINGW32)/i686-w64-mingw32/include/c++",
r245240r245241
402402      }
403403     
404404   configuration { "x64", "mingw-clang" }
405      targetdir (_buildDir .. "win64_mingw-clang/bin")
406      objdir (_buildDir .. "win64_mingw-clang/obj")
405      targetdir (_buildDir .. _osd .. "/win64_mingw-clang/bin")
406      objdir (_buildDir .. _osd .. "/win64_mingw-clang/obj")
407407      buildoptions { "-m64" }
408408      buildoptions {
409409         "-isystem$(MINGW64)/x86_64-w64-mingw32/include/c++",
r245240r245241
412412      }     
413413
414414   configuration { "linux-gcc", "x32" }
415      targetdir (_buildDir .. "linux32_gcc" .. "/bin")
416      objdir (_buildDir .. "linux32_gcc" .. "/obj")
415      targetdir (_buildDir .. _osd .. "/linux32_gcc" .. "/bin")
416      objdir (_buildDir .. _osd .. "/linux32_gcc" .. "/obj")
417417      buildoptions {
418418         "-m32",
419419      }
420420
421421   configuration { "linux-gcc", "x64" }
422      targetdir (_buildDir .. "linux64_gcc" .. "/bin")
423      objdir (_buildDir .. "linux64_gcc" .. "/obj")
422      targetdir (_buildDir .. _osd .. "/linux64_gcc" .. "/bin")
423      objdir (_buildDir .. _osd .. "/linux64_gcc" .. "/obj")
424424      buildoptions {
425425         "-m64",
426426      }
427427
428428   configuration { "linux-clang", "x32" }
429      targetdir (_buildDir .. "linux32_clang" .. "/bin")
430      objdir (_buildDir .. "linux32_clang" .. "/obj")
429      targetdir (_buildDir .. _osd .. "/linux32_clang" .. "/bin")
430      objdir (_buildDir .. _osd .. "/linux32_clang" .. "/obj")
431431      buildoptions {
432432         "-m32",
433433      }
434434
435435   configuration { "linux-clang", "x64" }
436      targetdir (_buildDir .. "linux64_clang" .. "/bin")
437      objdir (_buildDir .. "linux64_clang" .. "/obj")
436      targetdir (_buildDir .. _osd .. "/linux64_clang" .. "/bin")
437      objdir (_buildDir .. _osd .. "/linux64_clang" .. "/obj")
438438      buildoptions {
439439         "-m64",
440440      }
r245240r245241
481481
482482
483483   configuration { "android-arm" }
484      targetdir (_buildDir .. "android-arm" .. "/bin")
485      objdir (_buildDir .. "android-arm" .. "/obj")
484      targetdir (_buildDir .. _osd .. "/android-arm" .. "/bin")
485      objdir (_buildDir .. _osd .. "/android-arm" .. "/obj")
486486         libdirs {
487487            "$(ANDROID_NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi-v7a",
488488         }
r245240r245241
507507         }
508508
509509   configuration { "android-mips" }
510      targetdir (_buildDir .. "android-mips" .. "/bin")
511      objdir (_buildDir .. "android-mips" .. "/obj")
510      targetdir (_buildDir .. _osd .. "/android-mips" .. "/bin")
511      objdir (_buildDir .. _osd .. "/android-mips" .. "/obj")
512512      libdirs {
513513         "$(ANDROID_NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.8/libs/mips",
514514      }
r245240r245241
527527      }
528528
529529   configuration { "android-x86" }
530      targetdir (_buildDir .. "android-x86" .. "/bin")
531      objdir (_buildDir .. "android-x86" .. "/obj")
530      targetdir (_buildDir .. _osd .. "/android-x86" .. "/bin")
531      objdir (_buildDir .. _osd .. "/android-x86" .. "/obj")
532532      libdirs {
533533         "$(ANDROID_NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.8/libs/x86",
534534      }
r245240r245241
553553
554554
555555   configuration { "asmjs" }
556      targetdir (_buildDir .. "asmjs" .. "/bin")
557      objdir (_buildDir .. "asmjs" .. "/obj")
556      targetdir (_buildDir .. _osd .. "/asmjs" .. "/bin")
557      objdir (_buildDir .. _osd .. "/asmjs" .. "/obj")
558558      buildoptions {
559559         "-isystem$(EMSCRIPTEN)/system/include",
560560         "-isystem$(EMSCRIPTEN)/system/include/compat",
r245240r245241
571571      }
572572
573573   configuration { "freebsd" }
574      targetdir (_buildDir .. "freebsd" .. "/bin")
575      objdir (_buildDir .. "freebsd" .. "/obj")
574      targetdir (_buildDir .. _osd .. "/freebsd" .. "/bin")
575      objdir (_buildDir .. _osd .. "/freebsd" .. "/obj")
576576
577577   configuration { "nacl or nacl-arm or pnacl" }
578578      buildoptions {
r245240r245241
600600      }
601601
602602   configuration { "x32", "nacl" }
603      targetdir (_buildDir .. "nacl-x86" .. "/bin")
604      objdir (_buildDir .. "nacl-x86" .. "/obj")
603      targetdir (_buildDir .. _osd .. "/nacl-x86" .. "/bin")
604      objdir (_buildDir .. _osd .. "/nacl-x86" .. "/obj")
605605
606606   configuration { "x32", "nacl", "Debug" }
607607      libdirs { "$(NACL_SDK_ROOT)/lib/newlib_x86_32/Debug" }
r245240r245241
610610      libdirs { "$(NACL_SDK_ROOT)/lib/newlib_x86_32/Release" }
611611
612612   configuration { "x64", "nacl" }
613      targetdir (_buildDir .. "nacl-x64" .. "/bin")
614      objdir (_buildDir .. "nacl-x64" .. "/obj")
613      targetdir (_buildDir .. _osd .. "/nacl-x64" .. "/bin")
614      objdir (_buildDir .. _osd .. "/nacl-x64" .. "/obj")
615615
616616   configuration { "x64", "nacl", "Debug" }
617617      libdirs { "$(NACL_SDK_ROOT)/lib/newlib_x86_64/Debug" }
r245240r245241
620620      libdirs { "$(NACL_SDK_ROOT)/lib/newlib_x86_64/Release" }
621621
622622   configuration { "nacl-arm" }
623      targetdir (_buildDir .. "nacl-arm" .. "/bin")
624      objdir (_buildDir .. "nacl-arm" .. "/obj")
623      targetdir (_buildDir .. _osd .. "/nacl-arm" .. "/bin")
624      objdir (_buildDir .. _osd .. "/nacl-arm" .. "/obj")
625625
626626   configuration { "nacl-arm", "Debug" }
627627      libdirs { "$(NACL_SDK_ROOT)/lib/newlib_arm/Debug" }
r245240r245241
630630      libdirs { "$(NACL_SDK_ROOT)/lib/newlib_arm/Release" }
631631
632632   configuration { "pnacl" }
633      targetdir (_buildDir .. "pnacl" .. "/bin")
634      objdir (_buildDir .. "pnacl" .. "/obj")
633      targetdir (_buildDir .. _osd .. "/pnacl" .. "/bin")
634      objdir (_buildDir .. _osd .. "/pnacl" .. "/obj")
635635
636636   configuration { "pnacl", "Debug" }
637637      libdirs { "$(NACL_SDK_ROOT)/lib/pnacl/Debug" }
r245240r245241
640640      libdirs { "$(NACL_SDK_ROOT)/lib/pnacl/Release" }
641641
642642   configuration { "osx*", "x32" }
643      targetdir (_buildDir .. "osx32_clang" .. "/bin")
644      objdir (_buildDir .. "osx32_clang" .. "/obj")
643      targetdir (_buildDir .. _osd .. "/osx32_clang" .. "/bin")
644      objdir (_buildDir .. _osd .. "/osx32_clang" .. "/obj")
645645      buildoptions {
646646         "-m32",
647647      }
648648
649649   configuration { "osx*", "x64" }
650      targetdir (_buildDir .. "osx64_clang" .. "/bin")
651      objdir (_buildDir .. "osx64_clang" .. "/obj")
650      targetdir (_buildDir .. _osd .. "/osx64_clang" .. "/bin")
651      objdir (_buildDir .. _osd .. "/osx64_clang" .. "/obj")
652652      buildoptions {
653653         "-m64",
654654      }
655655
656656   configuration { "ios-arm" }
657      targetdir (_buildDir .. "ios-arm" .. "/bin")
658      objdir (_buildDir .. "ios-arm" .. "/obj")
657      targetdir (_buildDir .. _osd .. "/ios-arm" .. "/bin")
658      objdir (_buildDir .. _osd .. "/ios-arm" .. "/obj")
659659
660660   configuration { "ios-simulator" }
661      targetdir (_buildDir .. "ios-simulator" .. "/bin")
662      objdir (_buildDir .. "ios-simulator" .. "/obj")
661      targetdir (_buildDir .. _osd .. "/ios-simulator" .. "/bin")
662      objdir (_buildDir .. _osd .. "/ios-simulator" .. "/obj")
663663
664664   configuration { "qnx-arm" }
665      targetdir (_buildDir .. "qnx-arm" .. "/bin")
666      objdir (_buildDir .. "qnx-arm" .. "/obj")
665      targetdir (_buildDir .. _osd .. "/qnx-arm" .. "/bin")
666      objdir (_buildDir .. _osd .. "/qnx-arm" .. "/obj")
667667
668668   configuration { "rpi" }
669      targetdir (_buildDir .. "rpi" .. "/bin")
670      objdir (_buildDir .. "rpi" .. "/obj")
669      targetdir (_buildDir .. _osd .. "/rpi" .. "/bin")
670      objdir (_buildDir .. _osd .. "/rpi" .. "/obj")
671671
672672   configuration {} -- reset configuration
673673
trunk/src/mame/drivers/nmk16.c
r245240r245241
74047404
74057405***************************************************************************/
74067406
7407ROM_START( hotbubl )
7407ROM_START( hotbubl ) /* Korean release - Nude images of women for backgrounds */
74087408   ROM_REGION( 0x80000, "maincpu", 0 )     /* 68000 Code */
74097409   ROM_LOAD16_BYTE( "c1.uc1",  0x00001, 0x40000, CRC(7bb240e9) SHA1(99048fa275182c3da3bfb0dedd790f4b5858bd92) )
74107410   ROM_LOAD16_BYTE( "c2.uc9",  0x00000, 0x40000, CRC(7917b95d) SHA1(0344bae9c373c5943e7693720e5e531bc2e0d7ee) )
r245240r245241
74327432   ROM_LOAD( "s2.uc18", 0x00000, 0x40000, CRC(401c980f) SHA1(e47710c47cfeecce3ccf87f845b219a9c9f21ee3) )
74337433ROM_END
74347434
7435ROM_START( hotbublk ) /* Korean release - Nude images replaced with pictures of satellite dishes */
7435ROM_START( hotbubla ) /* Korean release - Nude images replaced with pictures of satellite dishes */
74367436   ROM_REGION( 0x80000, "maincpu", 0 )     /* 68000 Code */
74377437   ROM_LOAD16_BYTE( "6_c1.uc1",  0x00001, 0x40000, CRC(7c65bf47) SHA1(fe578d3336c5f437bfd1bc81bfe3763b12f3e63f) )
74387438   ROM_LOAD16_BYTE( "7_c2.uc9",  0x00000, 0x40000, CRC(74eb11c3) SHA1(88aeb02c4088706a56b4c930ffe6fdfbc99031c6) )
r245240r245241
78387838
78397839// is there a 'bubble 2000' / 'hot bubble' version with Afega copyright, or is the only Afega release dolmen above, this seems like a sequel, not a clone?
78407840GAME( 1998, bubl2000, 0,        popspops, bubl2000, nmk16_state,   bubl2000, ROT0,               "Afega (Tuning license)",                            "Bubble 2000", 0 ) // on a tuning board (bootleg?)
7841GAME( 1998, hotbubl,  bubl2000, popspops, bubl2000, nmk16_state,   bubl2000, ROT0,               "Afega (Pandora license)",                           "Hot Bubble" , 0 ) // on an afega board ..
7842GAME( 1998, hotbublk, bubl2000, popspops, bubl2000, nmk16_state,   bubl2000, ROT0,               "Afega (Pandora license)",                           "Hot Bubble (Korea)" , 0 ) // on an afega board ..
7841GAME( 1998, hotbubl,  bubl2000, popspops, bubl2000, nmk16_state,   bubl2000, ROT0,               "Afega (Pandora license)",                           "Hot Bubble (Korea, with adult pictures)" , 0 ) // on an afega board ..
7842GAME( 1998, hotbubla, bubl2000, popspops, bubl2000, nmk16_state,   bubl2000, ROT0,               "Afega (Pandora license)",                           "Hot Bubble (Korea)" , 0 ) // on an afega board ..
78437843
78447844GAME( 1999, popspops, 0,        popspops, popspops, nmk16_state,   grdnstrm, ROT0,               "Afega",                             "Pop's Pop's", 0 )
78457845
trunk/src/mame/drivers/seibuspi.c
r245240r245241
28572857   ROM_LOAD("flash0_blank_region01.u1053", 0x000000, 0x100000, CRC(7ae7ab76) SHA1(a2b196f470bf64af94002fc4e2640fadad00418f) )
28582858ROM_END
28592859
2860ROM_START( rdftja ) /* SXX2C ROM SUB4 cart */
2861   ROM_REGION32_LE( 0x200000, "maincpu", 0 ) /* i386 program */
2862   ROM_LOAD32_BYTE("seibu1.u0211",         0x000000, 0x080000, CRC(b70afcc2) SHA1(70ac545a9fc30df310254997674878fbc2c2d718) ) // socket is silkscreened on pcb PRG0
2863   ROM_LOAD32_BYTE("raiden-f_prg2.u0212",  0x000001, 0x080000, CRC(58ccb10c) SHA1(0cce4057bfada78121d9586574b98d46cdd7dd46) ) // socket is silkscreened on pcb PRG1
2864   ROM_LOAD32_WORD("raiden-f_prg34.u0219", 0x000002, 0x100000, CRC(63f01d17) SHA1(74dbd0417b974583da87fc6c7a081b03fd4e16b8) ) // socket is silkscreened on pcb PRG23
2865
2866   ROM_REGION( 0x40000, "audiocpu", ROMREGION_ERASE00 ) /* 256K RAM, ROM from Z80 point-of-view */
2867
2868   ROM_REGION( 0x30000, "gfx1", ROMREGION_ERASEFF ) /* text layer roms */
2869   ROM_LOAD24_WORD("raiden-f_fix.u0425", 0x000000, 0x20000, CRC(2be2936b) SHA1(9e719f7328a52af220b6f084c1e0990ca6e2d533) ) // socket is silkscreened on pcb FIX01
2870   ROM_LOAD24_BYTE("seibu_7.u048",       0x000002, 0x10000, CRC(4d87e1ea) SHA1(3230e9b643fad773e61ab8ce09c0cd7d4d0558e3) ) // socket is silkscreened on pcb FIXP
2871
2872   ROM_REGION( 0x600000, "gfx2", ROMREGION_ERASEFF ) /* background layer roms */
2873   ROM_LOAD24_WORD("gun_dogs_bg1-d.u0415", 0x000000, 0x200000, CRC(6a68054c) SHA1(5cbfc4ac90045f1401c2dda7a51936558c9de07e) ) // pads are silkscreened on pcb BG12
2874   ROM_LOAD24_BYTE("gun_dogs_bg1-p.u0410", 0x000002, 0x100000, CRC(3400794a) SHA1(719808f7442bac612cefd7b7fffcd665e6337ad0) ) // pads are silkscreened on pcb BG12P
2875   ROM_LOAD24_WORD("gun_dogs_bg2-d.u0424", 0x300000, 0x200000, CRC(61cd2991) SHA1(bb608e3948bf9ea35b5e1615d2ba6858d029dcbe) ) // pads are silkscreened on pcb BG3
2876   ROM_LOAD24_BYTE("gun_dogs_bg2-p.u049",  0x300002, 0x100000, CRC(502d5799) SHA1(c3a0e1a4f5a7b35572ae1ff31315da4ed08aa2fe) ) // pads are silkscreened on pcb BG3P
2877
2878   ROM_REGION( 0xc00000, "gfx3", 0 ) /* sprites */
2879   ROM_LOAD("gun_dogs_obj-1.u0322", 0x000000, 0x400000, CRC(59d86c99) SHA1(d3c9241e7b51fe21f8351051b063f91dc69bf905) ) // pads are silkscreened on pcb OBJ1
2880   ROM_LOAD("gun_dogs_obj-2.u0324", 0x400000, 0x400000, CRC(1ceb0b6f) SHA1(97225a9b3e7be18080aa52f6570af2cce8f25c06) ) // pads are silkscreened on pcb OBJ2
2881   ROM_LOAD("gun_dogs_obj-3.u0323", 0x800000, 0x400000, CRC(36e93234) SHA1(51917a80b7da5c32a9434a1076fc2916d62e6a3e) ) // pads are silkscreened on pcb OBJ3
2882
2883   ROM_REGION32_LE( 0xa00000, "sound01", ROMREGION_ERASE00 ) /* sound roms */
2884   ROM_LOAD32_WORD("raiden-f_pcm2.u0217", 0x000000, 0x100000, CRC(3f8d4a48) SHA1(30664a2908daaeaee58f7e157516b522c952e48d) ) // pads are silkscreened SOUND0
2885   ROM_CONTINUE(                          0x400000, 0x100000 )
2886   /* SOUND1 socket is unpopulated */
2887
2888   ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */
2889   ROM_LOAD("flash0_blank_region01.u1053", 0x000000, 0x100000, CRC(7ae7ab76) SHA1(a2b196f470bf64af94002fc4e2640fadad00418f) )
2890ROM_END
2891
28602892ROM_START( rdftau )
28612893   ROM_REGION32_LE( 0x200000, "maincpu", 0 ) /* i386 program */
28622894   ROM_LOAD32_BYTE("1.u0211", 0x000000, 0x80000, CRC(6339c60d) SHA1(871d5bc9fc695651ceb6fcfdab32084320fe239d) )
r245240r245241
29933025   ROM_LOAD("flash0_blank_region82.u1053", 0x000000, 0x100000, CRC(4f463a87) SHA1(0e27904745da61a3ba7c48c5b4c7d45989bbd05b) )
29943026ROM_END
29953027
2996ROM_START( rdftadi ) // Dream Island license
3028ROM_START( rdftadi ) // Dream Island license - SXX2C ROM SUB4 cart
29973029   ROM_REGION32_LE( 0x200000, "maincpu", 0 ) /* i386 program */
29983030   ROM_LOAD32_BYTE("seibu__1.u0211",       0x000000, 0x080000, CRC(fc0e2885) SHA1(79621155d992d504e993bd3ee0d6ff3903bd5415) ) // socket is silkscreened on pcb PRG0
29993031   ROM_LOAD32_BYTE("raiden-f_prg2.u0212",  0x000001, 0x080000, CRC(58ccb10c) SHA1(0cce4057bfada78121d9586574b98d46cdd7dd46) ) // socket is silkscreened on pcb PRG1
r245240r245241
30253057   ROM_LOAD("flash0_blank_region24.u1053", 0x000000, 0x100000, CRC(72a33dc4) SHA1(65a52f576ca4d240418fedd9a4922edcd6c0c8d1) )
30263058ROM_END
30273059
3028ROM_START( rdftam ) // Metrotainment license
3060ROM_START( rdftam ) // Metrotainment license - SXX2C ROM SUB4 cart
30293061   ROM_REGION32_LE( 0x200000, "maincpu", 0 ) /* i386 program */
30303062   ROM_LOAD32_BYTE("seibu_1.u0211",        0x000000, 0x080000, CRC(156d8db0) SHA1(93662b3ee494e37a56428a7aa3dad7a957835950) ) // socket is silkscreened on pcb PRG0
30313063   ROM_LOAD32_BYTE("raiden-f_prg2.u0212",  0x000001, 0x080000, CRC(58ccb10c) SHA1(0cce4057bfada78121d9586574b98d46cdd7dd46) ) // socket is silkscreened on pcb PRG1
r245240r245241
37673799
37683800GAME( 1996, rdft,       0,        spi,     spi_3button, seibuspi_state, rdft,     ROT270, "Seibu Kaihatsu",                         "Raiden Fighters (Japan set 1)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
37693801GAME( 1996, rdftj,      rdft,     spi,     spi_3button, seibuspi_state, rdft,     ROT270, "Seibu Kaihatsu",                         "Raiden Fighters (Japan set 2)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
3802GAME( 1996, rdftja,     rdft,     spi,     spi_3button, seibuspi_state, rdft,     ROT270, "Seibu Kaihatsu",                         "Raiden Fighters (Japan set 3)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
37703803GAME( 1996, rdftu,      rdft,     spi,     spi_3button, seibuspi_state, rdft,     ROT270, "Seibu Kaihatsu (Fabtek license)",        "Raiden Fighters (US)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
37713804GAME( 1996, rdftam,     rdft,     spi,     spi_3button, seibuspi_state, rdft,     ROT270, "Seibu Kaihatsu (Metrotainment license)", "Raiden Fighters (Hong Kong)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
37723805GAME( 1996, rdftadi,    rdft,     spi,     spi_3button, seibuspi_state, rdft,     ROT270, "Seibu Kaihatsu (Dream Island license)",  "Raiden Fighters (Korea)", GAME_SUPPORTS_SAVE | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
trunk/src/mame/mame.lst
r245240r245241
85138513rdftau          // (c) 1996 Seibu Kaihatsu
85148514rdftauge        // (c) 1996 Seibu Kaihatsu (Tuning license and text display, but Australia region code)
85158515rdftj           // (c) 1996 Seibu Kaihatsu
8516rdftja          // (c) 1996 Seibu Kaihatsu
85168517rdftadi         // (c) 1996 Seibu Kaihatsu (Dream Island license)
85178518rdftam          // (c) 1996 Seibu Kaihatsu (Metrotainment license)
85188519rdftit          // (c) 1996 Seibu Kaihatsu
r245240r245241
95369537redfoxwp2       // (c) 1998 (China)
95379538redfoxwp2a      // (c) 1998 (China)
95389539bubl2000        // (c) 1998 Tuning
9539hotbubl         // (c) 1998 Pandora
9540hotbublk        // (c) 1998 Pandora (Korea)
9540hotbubl         // (c) 1998 Pandora (Korea, Nudes)
9541hotbubla        // (c) 1998 Pandora (Korea)
95419542popspops        // (c) 1999
95429543firehawk        // (c) 2001 ESD
95439544firehawkv       // (c) 2001 ESD
trunk/src/mess/drivers/hh_hmcs40.c
r245240r245241
101101   DECLARE_WRITE16_MEMBER(alnattck_grid_w);
102102   DECLARE_READ16_MEMBER(alnattck_input_r);
103103
104   DECLARE_WRITE8_MEMBER(cpacman_plate_w);
105   DECLARE_WRITE16_MEMBER(cpacman_grid_w);
106   DECLARE_READ8_MEMBER(cpacman_input_r);
107
108   DECLARE_WRITE8_MEMBER(cmspacmn_plate_w);
109   DECLARE_WRITE16_MEMBER(cmspacmn_grid_w);
110   DECLARE_READ8_MEMBER(cmspacmn_input_r);
111
104112   void egalaxn2_display();
105113   DECLARE_WRITE8_MEMBER(egalaxn2_plate_w);
106114   DECLARE_WRITE16_MEMBER(egalaxn2_grid_w);
r245240r245241
257265   m_plate = (m_plate & ~(0xf << shift)) | (data << shift);
258266
259267   // update display
260   UINT32 plate = BITSWAP16(m_plate,13,8,4,12,9,10,14,1,7,0,15,11,6,3,5,2);
268   UINT16 plate = BITSWAP16(m_plate,13,8,4,12,9,10,14,1,7,0,15,11,6,3,5,2);
261269
262270   display_matrix(16, 9, plate, m_grid);
263271}
r245240r245241
452460
453461static INPUT_PORTS_START( alnattck )
454462   PORT_START("IN.0") // D5 D7
455   PORT_CONFNAME( 0x01, 0x00, "Skill" )
463   PORT_CONFNAME( 0x01, 0x00, "Skill Level" )
456464   PORT_CONFSETTING(    0x00, "1" )
457465   PORT_CONFSETTING(    0x01, "2" )
458466
r245240r245241
583591
584592***************************************************************************/
585593
594WRITE8_MEMBER(hh_hmcs40_state::cpacman_plate_w)
595{
596   // R1x-R6x, D1,D2: vfd matrix plate
597   int shift = (offset - HMCS40_PORT_R1X) * 4;
598   m_plate = (m_plate & ~(0xf << shift)) | (data << shift);
599
600   // update display
601   
602   // 31,30,29,28,27,13,14, 8,12,11,10, 9,15,16,17,18, 7, 6, 5, 4,19,20,21,22, 0, 1, 2, 3,23,24,25,26
603   // 31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
604   // 31,30,29,28,27, 0, 1, 2, 3, 8, 9,10,11,16,17,18,19,25,26,23,22,21,20,24,15,14,13,12, 4, 5, 6, 7
605   
606   UINT16 grid = BITSWAP16(m_grid,15,14,13,12,11,0,1,2,3,4,5,6,7,8,9,10);
607   UINT32 plate = BITSWAP32(m_plate,31,30,29,28,27,0,1,2,3,8,9,10,11,16,17,18,19,25,26,23,22,21,20,24,15,14,13,12,4,5,6,7);
608   plate |= 0x2000; // plate 13(maze) is always on
609
610   display_matrix(27, 11, plate, grid);
611}
612
613WRITE16_MEMBER(hh_hmcs40_state::cpacman_grid_w)
614{
615   // D0: speaker out
616   m_speaker->level_w(data & 1);
617
618   // D13-D15: input mux
619   m_inp_mux = data >> 13 & 7;
620
621   // D5-D15: vfd matrix grid
622   m_grid = data >> 5 & 0x7ff;
623
624   // D1,D2: plate 8,14 (update display there)
625   cpacman_plate_w(space, 6 + HMCS40_PORT_R1X, data >> 1 & 3);
626}
627
628READ8_MEMBER(hh_hmcs40_state::cpacman_input_r)
629{
630   // R0x: multiplexed inputs
631   return read_inputs(3);
632}
633
634
586635static INPUT_PORTS_START( cpacman )
636   PORT_START("IN.0") // D13 port R0x
637   PORT_CONFNAME( 0x01, 0x01, "Skill Level" )
638   PORT_CONFSETTING(    0x01, "1" )
639   PORT_CONFSETTING(    0x00, "2" )
640   PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED )
641
642   PORT_START("IN.1") // D14 port R0x
643   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
644   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
645   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
646   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
647
648   PORT_START("IN.2") // D15 port R0x
649   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
650   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
651   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
652   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
587653INPUT_PORTS_END
588654
589655
r245240r245241
591657
592658   /* basic machine hardware */
593659   MCFG_CPU_ADD("maincpu", HD38820, 400000) // approximation - RC osc.
660   MCFG_HMCS40_READ_R_CB(0, READ8(hh_hmcs40_state, cpacman_input_r))
661   MCFG_HMCS40_WRITE_R_CB(1, WRITE8(hh_hmcs40_state, cpacman_plate_w))
662   MCFG_HMCS40_WRITE_R_CB(2, WRITE8(hh_hmcs40_state, cpacman_plate_w))
663   MCFG_HMCS40_WRITE_R_CB(3, WRITE8(hh_hmcs40_state, cpacman_plate_w))
664   MCFG_HMCS40_WRITE_R_CB(4, WRITE8(hh_hmcs40_state, cpacman_plate_w))
665   MCFG_HMCS40_WRITE_R_CB(5, WRITE8(hh_hmcs40_state, cpacman_plate_w))
666   MCFG_HMCS40_WRITE_R_CB(6, WRITE8(hh_hmcs40_state, cpacman_plate_w))
667   MCFG_HMCS40_WRITE_D_CB(WRITE16(hh_hmcs40_state, cpacman_grid_w))
594668
595//  MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
669   MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
596670   MCFG_DEFAULT_LAYOUT(layout_hh_hmcs40_test)
597671
598672   /* no video! */
r245240r245241
618692
619693***************************************************************************/
620694
695WRITE8_MEMBER(hh_hmcs40_state::cmspacmn_plate_w)
696{
697   // R1x-R6x, D0,D1: vfd matrix plate
698   int shift = (offset - HMCS40_PORT_R1X) * 4;
699   m_plate = (m_plate & ~(0xf << shift)) | (data << shift);
700
701   // update display
702   //                   22,17                               18,13
703   // 31,30,29,28,27,26, 6,11,23,21,20,19,15, 2, 1, 0,32,31,30,29,12, 9, 4, 8,25,26,27,28,16,10, 3, 5
704   // 31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
705   // 14,13,12, 4, 5, 6, 7,24,23,25,22,21,20,13,24, 3,19,14,12,11,24, 2,10, 8, 7,25, 0, 9, 1,18,17,16
706   
707   UINT16 grid = BITSWAP16(m_grid,15,14,13,11,10,9,8,7,6,5,4,3,2,1,1,0);
708   UINT64 plate = BIT(m_plate,15)<<32 | BITSWAP32(m_plate,14,13,12,4,5,6,7,24,23,25,22,21,20,13,24,3,19,14,12,11,24,2,10,8,7,25,0,9,1,18,17,16);
709   plate |= 0x1004080; // plates 7,14,24 are always on
710
711   display_matrix(33, 12, plate, grid);
712}
713
714WRITE16_MEMBER(hh_hmcs40_state::cmspacmn_grid_w)
715{
716   // D2: speaker out
717   m_speaker->level_w(data >> 2 & 1);
718
719   // D13-D15: input mux
720   m_inp_mux = data >> 13 & 7;
721
722   // D5-D15: vfd matrix grid
723   m_grid = data >> 5 & 0x7ff;
724
725   // D0,D1: plate 11+17,6+22 (update display there)
726   cmspacmn_plate_w(space, 6 + HMCS40_PORT_R1X, data & 3);
727}
728
729READ8_MEMBER(hh_hmcs40_state::cmspacmn_input_r)
730{
731   // R0x: multiplexed inputs
732   return read_inputs(3);
733}
734
735
621736static INPUT_PORTS_START( cmspacmn )
737   PORT_START("IN.0") // D13 port R0x
738   PORT_CONFNAME( 0x01, 0x01, "Skill Level" )
739   PORT_CONFSETTING(    0x01, "1" )
740   PORT_CONFSETTING(    0x00, "2" )
741   PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED )
742
743   PORT_START("IN.1") // D14 port R0x
744   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
745   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
746   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
747   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
748
749   PORT_START("IN.2") // D15 port R0x
750   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
751   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT )
752   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
753   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
622754INPUT_PORTS_END
623755
624756
r245240r245241
626758
627759   /* basic machine hardware */
628760   MCFG_CPU_ADD("maincpu", HD38820, 400000) // approximation - RC osc.
761   MCFG_HMCS40_READ_R_CB(0, READ8(hh_hmcs40_state, cmspacmn_input_r))
762   MCFG_HMCS40_WRITE_R_CB(1, WRITE8(hh_hmcs40_state, cmspacmn_plate_w))
763   MCFG_HMCS40_WRITE_R_CB(2, WRITE8(hh_hmcs40_state, cmspacmn_plate_w))
764   MCFG_HMCS40_WRITE_R_CB(3, WRITE8(hh_hmcs40_state, cmspacmn_plate_w))
765   MCFG_HMCS40_WRITE_R_CB(4, WRITE8(hh_hmcs40_state, cmspacmn_plate_w))
766   MCFG_HMCS40_WRITE_R_CB(5, WRITE8(hh_hmcs40_state, cmspacmn_plate_w))
767   MCFG_HMCS40_WRITE_R_CB(6, WRITE8(hh_hmcs40_state, cmspacmn_plate_w))
768   MCFG_HMCS40_WRITE_D_CB(WRITE16(hh_hmcs40_state, cmspacmn_grid_w))
629769
630//  MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
770   MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
631771   MCFG_DEFAULT_LAYOUT(layout_hh_hmcs40_test)
632772
633773   /* no video! */
r245240r245241
654794
655795void hh_hmcs40_state::egalaxn2_display()
656796{
657   UINT32 grid = BITSWAP16(m_grid,15,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14);
797   UINT16 grid = BITSWAP16(m_grid,15,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14);
658798   UINT32 plate = BITSWAP24(m_plate,23,22,21,20,15,14,13,12,7,6,5,4,3,2,1,0,19,18,17,16,11,10,9,8);
659799
660800   display_matrix(24, 15, plate, grid);
r245240r245241
675815
676816WRITE8_MEMBER(hh_hmcs40_state::egalaxn2_plate_w)
677817{
678   // R10-R63: vfd matrix plate
818   // R1x-R6x: vfd matrix plate
679819   int shift = (offset - HMCS40_PORT_R1X) * 4;
680820   m_plate = (m_plate & ~(0xf << shift)) | (data << shift);
681821
r245240r245241
710850
711851   PORT_START("IN.3") // D4 port R0x
712852   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
713   PORT_CONFNAME( 0x02, 0x02, "Skill" )
853   PORT_CONFNAME( 0x02, 0x02, "Skill Level" )
714854   PORT_CONFSETTING(    0x02, "1" )
715855   PORT_CONFSETTING(    0x00, "2" )
716856   PORT_CONFNAME( 0x0c, 0x00, "Players" )
r245240r245241
758898
759899***************************************************************************/
760900
761// hardware is identical to Galaxian 2, so we can use those handlers
901// i/o hookup is identical to Galaxian 2, so we can use those handlers
762902// note: plate numbers are 0-23, not 1-24(with 0 always-on)
763903
764904static INPUT_PORTS_START( epacman2 )
r245240r245241
782922
783923   PORT_START("IN.3") // D4 port R0x
784924   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
785   PORT_CONFNAME( 0x02, 0x02, "Skill" )
925   PORT_CONFNAME( 0x02, 0x02, "Skill Level" )
786926   PORT_CONFSETTING(    0x00, "1" )
787927   PORT_CONFSETTING(    0x02, "2" )
788928   PORT_CONFNAME( 0x0c, 0x04, "Players" )
trunk/src/mess/drivers/hh_tms1k.c
r245240r245241
77  part of a series is (or will be) in its own driver.
88
99  Let's use this driver for a list of known devices and their serials,
10  excluding TI's own products (see for example ticalc1x.c, tispeak.c)
10  excluding TI's own products (see ticalc1x.c, tispeak.c)
1111
1212  serial   device   etc.
1313--------------------------------------------------------------------
r245240r245241
2121 @MP1204   TMS1100  1980, Entex Baseball 3
2222 *MP1221   TMS1100  1980, Entex Raise The Devil
2323 *MP1312   TMS1100  198?, Tandy/RadioShack Science Fair Microcomputer Trainer
24 *MP2139   ?        1982, Gakken Galaxy Invader 1000
25 *MP2788   ?        1980, Bandai Flight Time
24 *MP2139   ?        1982, Gakken Galaxy Invader 1000 (? note: VFD-capable)
25 *MP2788   ?        1980, Bandai Flight Time (? note: VFD-capable)
2626 @MP3226   TMS1000  1978, Milton Bradley Simon
2727 *MP3301   TMS1000  1979, Milton Bradley Bigtrak
2828 *MP3320A  TMS1000  1979, Coleco Head to Head Basketball
r245240r245241
4545  M34047   TMS1100  1982, MicroVision cartridge: Super Blockbuster
4646 @MP6100A  TMS0980  1979, Ideal Electronic Detective
4747 @MP6101B  TMS0980  1979, Parker Brothers Stop Thief
48 *MP6361   ?        1983, Defender Strikes
48 *MP6361   ?        1983, Defender Strikes (? note: VFD-capable)
4949 *MP7303   TMS1400? 19??, Tiger 7-in-1 Sports Stadium
5050 @MP7313   TMS1400  1980, Parker Brothers Bank Shot
5151 @MP7314   TMS1400  1980, Parker Brothers Split Second
5252  MP7332   TMS1400  1981, Milton Bradley Dark Tower -> mbdtower.c
5353 @MP7334   TMS1400  1981, Coleco Total Control 4
54 *MP7573   ?        1981, Entex Select-a-Game cartridge: Football (? note: 40-pin, VFD-capable)
55 *M95041   ?        1983, Tsukuda Game Pachinko (? note: 40-pin, VFD-capable)
5456
5557  inconsistent:
5658
r245240r245241
10491051   // MCU clock is from an RC circuit(R=47K, C=33pf) oscillating by default at ~340kHz,
10501052   // but on PRO, the difficulty switch adds an extra 150K resistor to Vdd to speed
10511053   // it up to around ~440kHz.
1052   m_maincpu->set_unscaled_clock(m_inp_matrix[3]->read() & 1 ? 440000 : 340000);
1054   m_maincpu->set_unscaled_clock((m_inp_matrix[3]->read() & 1) ? 440000 : 340000);
10531055}
10541056
10551057INPUT_CHANGED_MEMBER(hh_tms1k_state::ebball3_difficulty_switch)
r245240r245241
15681570   PORT_BIT( 0x0d, IP_ACTIVE_HIGH, IPT_UNUSED )
15691571
15701572   PORT_START("IN.6") // fake
1571   PORT_CONFNAME( 0x03, 0x00, "Speed" ) //PORT_CHANGED_MEMBER(DEVICE_SELF, hh_tms1k_state, ssimon_speed_switch, NULL)
1573   PORT_CONFNAME( 0x03, 0x01, "Speed" ) PORT_CHANGED_MEMBER(DEVICE_SELF, hh_tms1k_state, ssimon_speed_switch, NULL)
15721574   PORT_CONFSETTING(    0x00, "Simple" )
15731575   PORT_CONFSETTING(    0x01, "Normal" )
15741576   PORT_CONFSETTING(    0x02, "Super" )
15751577INPUT_PORTS_END
15761578
15771579
1580void hh_tms1k_state::ssimon_set_clock()
1581{
1582   // MCU clock is from an RC circuit with C=100pf, R=x depending on speed switch:
1583   // 0 Simple: R=51K -> ~200kHz
1584   // 1 Normal: R=37K -> ~275kHz
1585   // 2 Super:  R=22K -> ~400kHz
1586   UINT8 inp = m_inp_matrix[6]->read();
1587   m_maincpu->set_unscaled_clock((inp & 2) ? 400000 : ((inp & 1) ? 275000 : 200000));
1588}
1589
1590INPUT_CHANGED_MEMBER(hh_tms1k_state::ssimon_speed_switch)
1591{
1592   ssimon_set_clock();
1593}
1594
1595MACHINE_RESET_MEMBER(hh_tms1k_state, ssimon)
1596{
1597   machine_reset();
1598   ssimon_set_clock();
1599}
1600
15781601static MACHINE_CONFIG_START( ssimon, hh_tms1k_state )
15791602
15801603   /* basic machine hardware */
1581   MCFG_CPU_ADD("maincpu", TMS1100, 350000) // x
1604   MCFG_CPU_ADD("maincpu", TMS1100, 275000) // see ssimon_set_clock
15821605   MCFG_TMS1XXX_READ_K_CB(READ8(hh_tms1k_state, ssimon_read_k))
15831606   MCFG_TMS1XXX_WRITE_R_CB(WRITE16(hh_tms1k_state, ssimon_write_r))
15841607   MCFG_TMS1XXX_WRITE_O_CB(WRITE16(hh_tms1k_state, ssimon_write_o))
r245240r245241
15861609   MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_tms1k_state, display_decay_tick, attotime::from_msec(1))
15871610   MCFG_DEFAULT_LAYOUT(layout_ssimon)
15881611
1612   MCFG_MACHINE_RESET_OVERRIDE(hh_tms1k_state, ssimon)
1613
15891614   /* no video! */
15901615
15911616   /* sound hardware */
trunk/src/mess/drivers/hh_ucom4.c
r245240r245241
265265void hh_ucom4_state::ssfball_display()
266266{
267267   UINT32 plate = BITSWAP24(m_plate,23,22,21,20,19,11,7,3,12,17,13,18,16,14,15,10,9,8,0,1,2,4,5,6);
268
268269   display_matrix(16, 9, plate, m_grid);
269270}
270271
r245240r245241
374375void hh_ucom4_state::splasfgt_display()
375376{
376377   UINT32 plate = BITSWAP24(m_plate,23,22,21,20,19,18,17,13,1,0,8,6,0,10,11,14,15,16,9,5,7,4,2,3);
378
377379   display_matrix(16, 9, plate, m_grid);
378380}
379381
r245240r245241
511513
512514void hh_ucom4_state::astrocmd_display()
513515{
514   UINT32 grid = BITSWAP16(m_grid,15,14,13,12,11,10,9,8,4,5,6,7,0,1,2,3);
516   UINT16 grid = BITSWAP16(m_grid,15,14,13,12,11,10,9,8,4,5,6,7,0,1,2,3);
515517   UINT32 plate = BITSWAP24(m_plate,23,22,21,20,19,3,2,12,13,14,15,16,17,18,0,1,4,8,5,9,7,11,6,10);
516518
517519   display_matrix(17, 9, plate, grid);
r245240r245241
611613   int shift = (offset - NEC_UCOM4_PORTC) * 4;
612614   m_grid = (m_grid & ~(0xf << shift)) | (data << shift);
613615
614   display_matrix(18, 8, m_plate, m_grid);
616   display_matrix(18+1, 8, m_plate, m_grid);
615617}
616618
617619WRITE8_MEMBER(hh_ucom4_state::edracula_plate_w)
r245240r245241
623625   // E,F,G,H,I01: vfd matrix plate
624626   int shift = (offset - NEC_UCOM4_PORTE) * 4;
625627   m_plate = (m_plate & ~(0xf << shift)) | (data << shift);
628   m_plate |= 1 << 18; // for always-on plates
626629
627   display_matrix(18, 8, m_plate, m_grid);
630   display_matrix(18+1, 8, m_plate, m_grid);
628631}
629632
630633
r245240r245241
767770   // MCU clock is from an LC circuit oscillating by default at ~360kHz,
768771   // but on PRO1, the difficulty switch puts a capacitor across the LC circuit
769772   // to slow it down to ~260kHz.
770   m_maincpu->set_unscaled_clock(m_inp_matrix[1]->read() & 0x100 ? 260000 : 360000);
773   m_maincpu->set_unscaled_clock((m_inp_matrix[1]->read() & 0x100) ? 260000 : 360000);
771774}
772775
773776INPUT_CHANGED_MEMBER(hh_ucom4_state::tmtennis_difficulty_switch)
r245240r245241
834837
835838void hh_ucom4_state::tmpacman_display()
836839{
837   UINT32 grid = BITSWAP8(m_grid,0,1,2,3,4,5,6,7);
840   UINT16 grid = BITSWAP8(m_grid,0,1,2,3,4,5,6,7);
838841   UINT32 plate = BITSWAP24(m_plate,23,22,21,20,19,16,17,18,11,10,9,8,0,2,3,1,4,5,6,7,12,13,14,15);
842   plate |= 0x100; // plate 8(maze) is always on
839843
840   display_matrix(19, 8, plate | 0x100, grid); // plate 8 (maze) is always on
844   display_matrix(19, 8, plate, grid);
841845}
842846
843847WRITE8_MEMBER(hh_ucom4_state::tmpacman_grid_w)
r245240r245241
947951      // E23,F,G,H,I: vfd matrix plate
948952      int shift = (offset - NEC_UCOM4_PORTE) * 4;
949953      m_plate = ((m_plate << 2 & ~(0xf << shift)) | (data << shift)) >> 2;
954      m_plate |= 1 << 17; // for always-on plates
950955   }
951956
952   display_matrix(17, 9, m_plate, m_grid);
957   display_matrix(17+1, 9, m_plate, m_grid);
953958}
954959
955960READ8_MEMBER(hh_ucom4_state::alnchase_input_r)
trunk/src/mess/includes/hh_tms1k.h
r245240r245241
112112   DECLARE_WRITE16_MEMBER(ssimon_write_r);
113113   DECLARE_WRITE16_MEMBER(ssimon_write_o);
114114   DECLARE_READ8_MEMBER(ssimon_read_k);
115   void ssimon_set_clock();
116   DECLARE_INPUT_CHANGED_MEMBER(ssimon_speed_switch);
117   DECLARE_MACHINE_RESET(ssimon);
115118
116119   DECLARE_WRITE16_MEMBER(cnsector_write_r);
117120   DECLARE_WRITE16_MEMBER(cnsector_write_o);


Previous 199869 Revisions Next


© 1997-2024 The MAME Team