diff options
57 files changed, 743 insertions, 372 deletions
diff --git a/docs/release/build/make.bat b/docs/release/build/make.bat index 7b0c562c388..a96711d7055 100644 --- a/docs/release/build/make.bat +++ b/docs/release/build/make.bat @@ -1,22 +1,16 @@ @if exist scripts\minimaws\minimaws.sqlite3 del scripts\minimaws\minimaws.sqlite3 del build\generated\resource\hbmamevers.rc :start -del hbmameui64.exe -if exist hbmameui64.exe goto start +del hbmameui.exe +if exist hbmameui.exe goto start call make64 -j4 "OSD=winui" %1 %2 %3 -if not exist hbmameui64.exe goto end -@del hbmameui.exe -@copy /Y hbmameui64.exe hbmameui.exe -@del hbmameui64.sym -@del hbmame64.sym +if not exist hbmameui.exe goto end +@del hbmameui.sym +@del hbmame.sym :start1 -del hbmame64.exe -if exist hbmame64.exe goto start1 +del hbmame.exe +if exist hbmame.exe goto start1 call make64 "ARCHOPTS='-fuse-ld=lld'" -j4 %1 %2 %3 -if not exist hbmame64.exe goto end -@del hbmame.exe -@del hbmame.sym -@copy /Y hbmame64.exe hbmame.exe -@copy /Y hbmame64.sym hbmame.sym +if not exist hbmame.exe goto end @call v.bat :end diff --git a/docs/release/build/make64.bat b/docs/release/build/make64.bat index e18bedcdd60..78ca0143282 100644 --- a/docs/release/build/make64.bat +++ b/docs/release/build/make64.bat @@ -3,6 +3,7 @@ set MINGW64=E:\Mingw\10-1-0\mingw64 set minpath=%MINGW64%\bin set oldpath=%Path% set Path=%minpath%;%oldpath% +touch src\version.cpp echo.|time %MINGW64%\bin\make PTR64=1 TARGET=hbmame SYMBOLS=0 NO_SYMBOLS=1 DEPRECATED=0 %1 %2 %3 %4 echo.|time diff --git a/docs/release/build/v.bat b/docs/release/build/v.bat index 3cb72908953..f69728c66a7 100644 --- a/docs/release/build/v.bat +++ b/docs/release/build/v.bat @@ -1,3 +1,3 @@ @echo off -hbmame64 -valid -xmllint --noout -valid hash/*.xml 2>&1 > nul | find /V "c64_flop_clcracked"
\ No newline at end of file +hbmame -valid +xmllint --noout -valid hash/*.xml 2>&1 > nul
\ No newline at end of file diff --git a/docs/release/scripts/genie.lua b/docs/release/scripts/genie.lua index c479fe34bfd..af8007f38ed 100644 --- a/docs/release/scripts/genie.lua +++ b/docs/release/scripts/genie.lua @@ -1098,6 +1098,7 @@ end "-Wno-unused-result", -- needed for fgets,fread on linux -- array bounds checking seems to be buggy in 4.8.1 (try it on video/stvvdp1.c and video/model1.c without -Wno-array-bounds) "-Wno-array-bounds", + "-Wno-error=attributes", -- GCC fails to recognize some uses of [[maybe_unused]] } if (version >= 80000) then buildoptions { diff --git a/docs/release/scripts/resources/windows/mame/mame.man b/docs/release/scripts/resources/windows/mame/mame.man index 85e0f31644e..e07705a39c7 100644 --- a/docs/release/scripts/resources/windows/mame/mame.man +++ b/docs/release/scripts/resources/windows/mame/mame.man @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> - <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> +<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> <assemblyIdentity version="1.0.0.0" processorArchitecture="*" name="MAME" type="win32" /> <description>MAME</description> <dependency> @@ -8,8 +8,9 @@ </dependentAssembly> </dependency> <asmv3:application> - <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"> - <dpiAware>true</dpiAware> + <asmv3:windowsSettings> + <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware> + <longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware> </asmv3:windowsSettings> </asmv3:application> </assembly> diff --git a/docs/release/scripts/resources/windows/mess/mess.man b/docs/release/scripts/resources/windows/mess/mess.man index 4856b147be1..7feef51ce9f 100644 --- a/docs/release/scripts/resources/windows/mess/mess.man +++ b/docs/release/scripts/resources/windows/mess/mess.man @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> - <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> +<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> <assemblyIdentity version="1.0.0.0" processorArchitecture="*" name="MESS" type="win32" /> <description>MESS</description> <dependency> @@ -8,8 +8,9 @@ </dependentAssembly> </dependency> <asmv3:application> - <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"> - <dpiAware>true</dpiAware> + <asmv3:windowsSettings> + <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware> + <longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware> </asmv3:windowsSettings> </asmv3:application> </assembly> diff --git a/docs/release/scripts/src/bus.lua b/docs/release/scripts/src/bus.lua index 1f158ae6b06..0f3648f150f 100644 --- a/docs/release/scripts/src/bus.lua +++ b/docs/release/scripts/src/bus.lua @@ -72,12 +72,14 @@ if (BUSES["ABCBUS"]~=null) then MAME_DIR .. "src/devices/bus/abcbus/abc890.h", MAME_DIR .. "src/devices/bus/abcbus/cadmouse.cpp", MAME_DIR .. "src/devices/bus/abcbus/cadmouse.h", - MAME_DIR .. "src/devices/bus/abcbus/db411223.cpp", - MAME_DIR .. "src/devices/bus/abcbus/db411223.h", + MAME_DIR .. "src/devices/bus/abcbus/db4106.cpp", + MAME_DIR .. "src/devices/bus/abcbus/db4106.h", + MAME_DIR .. "src/devices/bus/abcbus/db4107.cpp", + MAME_DIR .. "src/devices/bus/abcbus/db4107.h", + MAME_DIR .. "src/devices/bus/abcbus/db4112.cpp", + MAME_DIR .. "src/devices/bus/abcbus/db4112.h", MAME_DIR .. "src/devices/bus/abcbus/fd2.cpp", MAME_DIR .. "src/devices/bus/abcbus/fd2.h", - MAME_DIR .. "src/devices/bus/abcbus/hdc.cpp", - MAME_DIR .. "src/devices/bus/abcbus/hdc.h", MAME_DIR .. "src/devices/bus/abcbus/lux10828.cpp", MAME_DIR .. "src/devices/bus/abcbus/lux10828.h", MAME_DIR .. "src/devices/bus/abcbus/lux21046.cpp", @@ -1759,6 +1761,8 @@ if (BUSES["O2"]~=null) then MAME_DIR .. "src/devices/bus/odyssey2/ktaa.h", MAME_DIR .. "src/devices/bus/odyssey2/rally.cpp", MAME_DIR .. "src/devices/bus/odyssey2/rally.h", + MAME_DIR .. "src/devices/bus/odyssey2/test.cpp", + MAME_DIR .. "src/devices/bus/odyssey2/test.h", MAME_DIR .. "src/devices/bus/odyssey2/voice.cpp", MAME_DIR .. "src/devices/bus/odyssey2/voice.h", } diff --git a/docs/release/scripts/src/cpu.lua b/docs/release/scripts/src/cpu.lua index c388c2bc450..f44462b78c3 100644 --- a/docs/release/scripts/src/cpu.lua +++ b/docs/release/scripts/src/cpu.lua @@ -165,6 +165,7 @@ if (CPUS["ARM7"]~=null) then MAME_DIR .. "src/devices/cpu/arm7/arm7drc.hxx", MAME_DIR .. "src/devices/cpu/arm7/arm7help.h", MAME_DIR .. "src/devices/cpu/arm7/arm7tdrc.hxx", + MAME_DIR .. "src/devices/cpu/arm7/cecalls.hxx", } end @@ -3367,6 +3368,7 @@ if (CPUS["ROMP"]~=null) then files { MAME_DIR .. "src/devices/cpu/romp/romp.cpp", MAME_DIR .. "src/devices/cpu/romp/romp.h", + MAME_DIR .. "src/devices/cpu/romp/rsc.h", } end diff --git a/docs/release/scripts/src/emu.lua b/docs/release/scripts/src/emu.lua index 4e7e294ad32..d1d3f0b0d1f 100644 --- a/docs/release/scripts/src/emu.lua +++ b/docs/release/scripts/src/emu.lua @@ -254,6 +254,7 @@ files { MAME_DIR .. "src/emu/debug/textbuf.h", MAME_DIR .. "src/emu/drivers/empty.cpp", MAME_DIR .. "src/emu/drivers/xtal.h", + MAME_DIR .. "src/emu/layout/generic.h", MAME_DIR .. "src/emu/video/generic.cpp", MAME_DIR .. "src/emu/video/generic.h", MAME_DIR .. "src/emu/video/resnet.cpp", diff --git a/docs/release/scripts/src/machine.lua b/docs/release/scripts/src/machine.lua index 2ea123f4538..c06b59df9be 100644 --- a/docs/release/scripts/src/machine.lua +++ b/docs/release/scripts/src/machine.lua @@ -72,6 +72,30 @@ files { -------------------------------------------------- -- +--@src/devices/machine/acorn_ioc.h,MACHINES["ACORN_IOC"] = true +-------------------------------------------------- + +if (MACHINES["ACORN_IOC"]~=null) then + files { + MAME_DIR .. "src/devices/machine/acorn_ioc.cpp", + MAME_DIR .. "src/devices/machine/acorn_ioc.h", + } +end + +-------------------------------------------------- +-- +--@src/devices/machine/acorn_memc.h,MACHINES["ACORN_MEMC"] = true +-------------------------------------------------- + +if (MACHINES["ACORN_MEMC"]~=null) then + files { + MAME_DIR .. "src/devices/machine/acorn_memc.cpp", + MAME_DIR .. "src/devices/machine/acorn_memc.h", + } +end + +-------------------------------------------------- +-- --@src/devices/machine/acorn_vidc.h,MACHINES["ACORN_VIDC"] = true -------------------------------------------------- @@ -1723,6 +1747,18 @@ end --------------------------------------------------- -- +--@src/devices/machine/m950x0.h,MACHINES["M950X0"] = true +--------------------------------------------------- + +if (MACHINES["M950X0"]~=null) then + files { + MAME_DIR .. "src/devices/machine/m950x0.cpp", + MAME_DIR .. "src/devices/machine/m950x0.h", + } +end + +--------------------------------------------------- +-- --@src/devices/machine/mm5740.h,MACHINES["MM5740"] = true --------------------------------------------------- diff --git a/docs/release/scripts/src/main.lua b/docs/release/scripts/src/main.lua index f9c52f2b9eb..135cc9a4a48 100644 --- a/docs/release/scripts/src/main.lua +++ b/docs/release/scripts/src/main.lua @@ -98,37 +98,19 @@ end configuration "**/*" flags { "DeploymentContent" } - configuration { "x64", "Release" } - targetsuffix "64" - if _OPTIONS["PROFILE"] then - targetsuffix "64p" - end - - configuration { "x64", "Debug" } - targetsuffix "64d" - if _OPTIONS["PROFILE"] then - targetsuffix "64dp" - end - - configuration { "x32", "Release" } + configuration { "x64","Release" } targetsuffix "" if _OPTIONS["PROFILE"] then targetsuffix "p" end - configuration { "x32", "Debug" } - targetsuffix "d" - if _OPTIONS["PROFILE"] then - targetsuffix "dp" - end - - configuration { "Native", "Release" } - targetsuffix "" + configuration { "x32","Release" } + targetsuffix "32" if _OPTIONS["PROFILE"] then targetsuffix "p" end - configuration { "Native", "Debug" } + configuration { "Debug" } targetsuffix "d" if _OPTIONS["PROFILE"] then targetsuffix "dp" diff --git a/docs/release/scripts/src/osd/mac.lua b/docs/release/scripts/src/osd/mac.lua index 1110dbda9f1..2cc3e53c926 100644 --- a/docs/release/scripts/src/osd/mac.lua +++ b/docs/release/scripts/src/osd/mac.lua @@ -156,6 +156,7 @@ project ("ocore_" .. _OPTIONS["osd"]) files { MAME_DIR .. "src/osd/osdcore.cpp", MAME_DIR .. "src/osd/osdcore.h", + MAME_DIR .. "src/osd/osdfile.h", MAME_DIR .. "src/osd/strconv.cpp", MAME_DIR .. "src/osd/strconv.h", MAME_DIR .. "src/osd/osdsync.cpp", diff --git a/docs/release/scripts/src/osd/sdl.lua b/docs/release/scripts/src/osd/sdl.lua index ae577124255..37dfb221067 100644 --- a/docs/release/scripts/src/osd/sdl.lua +++ b/docs/release/scripts/src/osd/sdl.lua @@ -468,6 +468,7 @@ project ("ocore_" .. _OPTIONS["osd"]) files { MAME_DIR .. "src/osd/osdcore.cpp", MAME_DIR .. "src/osd/osdcore.h", + MAME_DIR .. "src/osd/osdfile.h", MAME_DIR .. "src/osd/strconv.cpp", MAME_DIR .. "src/osd/strconv.h", MAME_DIR .. "src/osd/osdsync.cpp", diff --git a/docs/release/scripts/src/osd/uwp.lua b/docs/release/scripts/src/osd/uwp.lua index 47e8e149e24..1cb0eef5c75 100644 --- a/docs/release/scripts/src/osd/uwp.lua +++ b/docs/release/scripts/src/osd/uwp.lua @@ -104,6 +104,7 @@ project ("ocore_" .. _OPTIONS["osd"]) MAME_DIR .. "src/osd/osdcomm.h", MAME_DIR .. "src/osd/osdcore.cpp", MAME_DIR .. "src/osd/osdcore.h", + MAME_DIR .. "src/osd/osdfile.h", MAME_DIR .. "src/osd/strconv.cpp", MAME_DIR .. "src/osd/strconv.h", MAME_DIR .. "src/osd/osdsync.cpp", diff --git a/docs/release/scripts/src/osd/winui.lua b/docs/release/scripts/src/osd/winui.lua index ade4db950fb..b691f1d701d 100644 --- a/docs/release/scripts/src/osd/winui.lua +++ b/docs/release/scripts/src/osd/winui.lua @@ -26,16 +26,16 @@ function maintargetosdoptions(_target,_subtarget) } configuration { "x64", "Release" } - targetsuffix "ui64" + targetsuffix "ui" configuration { "x64", "Debug" } - targetsuffix "ui64d" + targetsuffix "uid" configuration { "x32", "Release" } - targetsuffix "ui" + targetsuffix "ui32" configuration { "x32", "Debug" } - targetsuffix "uid" + targetsuffix "ui32d" configuration { "Native", "Release" } targetsuffix "ui" diff --git a/docs/release/scripts/src/sound.lua b/docs/release/scripts/src/sound.lua index 4d5f53de389..9844605eeae 100644 --- a/docs/release/scripts/src/sound.lua +++ b/docs/release/scripts/src/sound.lua @@ -1606,3 +1606,15 @@ if (SOUNDS["TT5665"]~=null) then MAME_DIR .. "src/devices/sound/tt5665.h", } end + +--------------------------------------------------- +-- +--@src/devices/sound/uda1344.h,SOUNDS["UDA1344"] = true +--------------------------------------------------- + +if (SOUNDS["UDA1344"]~=null) then + files { + MAME_DIR .. "src/devices/sound/uda1344.cpp", + MAME_DIR .. "src/devices/sound/uda1344.h", + } +end diff --git a/docs/release/scripts/src/tests.lua b/docs/release/scripts/src/tests.lua index 6d964737079..89c8c976c39 100644 --- a/docs/release/scripts/src/tests.lua +++ b/docs/release/scripts/src/tests.lua @@ -21,37 +21,13 @@ project("mametests") targetdir(MAME_DIR) end - configuration { "x64", "Release" } - targetsuffix "64" - if _OPTIONS["PROFILE"] then - targetsuffix "64p" - end - - configuration { "x64", "Debug" } - targetsuffix "64d" - if _OPTIONS["PROFILE"] then - targetsuffix "64dp" - end - - configuration { "x32", "Release" } - targetsuffix "" - if _OPTIONS["PROFILE"] then - targetsuffix "p" - end - - configuration { "x32", "Debug" } - targetsuffix "d" - if _OPTIONS["PROFILE"] then - targetsuffix "dp" - end - - configuration { "Native", "Release" } + configuration { "Release" } targetsuffix "" if _OPTIONS["PROFILE"] then targetsuffix "p" end - configuration { "Native", "Debug" } + configuration { "Debug" } targetsuffix "d" if _OPTIONS["PROFILE"] then targetsuffix "dp" diff --git a/docs/release/scripts/target/hbmame/hbmame.lua b/docs/release/scripts/target/hbmame/hbmame.lua index 652cbd745ee..1753d73a0fd 100644 --- a/docs/release/scripts/target/hbmame/hbmame.lua +++ b/docs/release/scripts/target/hbmame/hbmame.lua @@ -227,6 +227,7 @@ MACHINES["TMS6100"] = true MACHINES["TTL74153"] = true MACHINES["TTL74157"] = true MACHINES["TTL74259"] = true +MACHINES["TTL7474"] = true -- scramble MACHINES["UPD1990A"] = true MACHINES["UPD4701"] = true MACHINES["UPD4992"] = true @@ -586,6 +587,12 @@ files { MAME_DIR .. "src/mame/video/nemesis.cpp", MAME_DIR .. "src/hbmame/drivers/pooyan.cpp", MAME_DIR .. "src/mame/video/pooyan.cpp", + MAME_DIR .. "src/hbmame/drivers/scramble.cpp", + MAME_DIR .. "src/mame/machine/scramble.cpp", + MAME_DIR .. "src/mame/audio/scramble.cpp", + MAME_DIR .. "src/mame/drivers/galaxold.cpp", + MAME_DIR .. "src/mame/machine/galaxold.cpp", + MAME_DIR .. "src/mame/video/galaxold.cpp", MAME_DIR .. "src/hbmame/drivers/shaolins.cpp", MAME_DIR .. "src/mame/video/shaolins.cpp", MAME_DIR .. "src/hbmame/drivers/timeplt.cpp", @@ -887,6 +894,8 @@ files { MAME_DIR .. "src/mame/machine/315-5881_crypt.cpp", MAME_DIR .. "src/mame/machine/315-5838_317-0229_comp.cpp", MAME_DIR .. "src/mame/machine/model1io.cpp", + MAME_DIR .. "src/hbmame/drivers/segahang.cpp", + MAME_DIR .. "src/mame/video/segahang.cpp", MAME_DIR .. "src/hbmame/drivers/stv.cpp", -- from here, for stv MAME_DIR .. "src/mame/machine/saturn.cpp", MAME_DIR .. "src/mame/machine/stvprot.cpp", diff --git a/docs/release/scripts/target/mame/arcade.lua b/docs/release/scripts/target/mame/arcade.lua index 7d6b768d072..c12d77d42e8 100644 --- a/docs/release/scripts/target/mame/arcade.lua +++ b/docs/release/scripts/target/mame/arcade.lua @@ -290,6 +290,7 @@ SOUNDS["S_DSP"] = true SOUNDS["KS0164"] = true SOUNDS["TT5665"] = true --SOUNDS["RP2C33_SOUND"] = true +--SOUNDS["UDA1344"] = true -------------------------------------------------- -- specify available video cores @@ -300,6 +301,7 @@ VIDEOS["SEGA315_5313"] = true --VIDEOS["AM8052"] = true VIDEOS["BUFSPRITE"] = true VIDEOS["BT45X"] = true +VIDEOS["BT47X"] = true --VIDEOS["CDP1861"] = true --VIDEOS["CDP1862"] = true VIDEOS["CESBLIT"] = true @@ -393,6 +395,8 @@ VIDEOS["VRENDER0"] = true -- specify available machine cores -------------------------------------------------- +MACHINES["ACORN_IOC"] = true +MACHINES["ACORN_MEMC"] = true MACHINES["ACORN_VIDC"] = true MACHINES["AKIKO"] = true MACHINES["ALPHA_8921"] = true @@ -557,6 +561,7 @@ MACHINES["MC68901"] = true MACHINES["MCCS1850"] = true MACHINES["M68307"] = true MACHINES["M68340"] = true +--MACHINES["M950X0"] = true MACHINES["MCF5206E"] = true MACHINES["METERS"] = true MACHINES["MICROTOUCH"] = true @@ -794,7 +799,7 @@ BUSES["PC_JOY"] = true BUSES["PC_KBD"] = true --BUSES["PET"] = true --BUSES["PLUS4"] = true ---BUSES["PSX_CONTROLLER"] = true +BUSES["PSX_CONTROLLER"] = true --BUSES["QL"] = true BUSES["RS232"] = true --BUSES["S100"] = true @@ -2052,7 +2057,6 @@ files { MAME_DIR .. "src/mame/video/thoop2.cpp", MAME_DIR .. "src/mame/drivers/wrally.cpp", MAME_DIR .. "src/mame/includes/wrally.h", - MAME_DIR .. "src/mame/machine/wrally.cpp", MAME_DIR .. "src/mame/video/wrally.cpp", MAME_DIR .. "src/mame/drivers/blmbycar.cpp", MAME_DIR .. "src/mame/includes/blmbycar.h", @@ -2520,6 +2524,7 @@ files { MAME_DIR .. "src/mame/drivers/konmedal68k.cpp", MAME_DIR .. "src/mame/drivers/kontest.cpp", MAME_DIR .. "src/mame/drivers/konendev.cpp", + MAME_DIR .. "src/mame/drivers/kpontoon.cpp", MAME_DIR .. "src/mame/drivers/kpython.cpp", MAME_DIR .. "src/mame/drivers/ksys573.cpp", MAME_DIR .. "src/mame/machine/k573cass.cpp", @@ -4040,6 +4045,7 @@ files { MAME_DIR .. "src/mame/includes/gunbustr.h", MAME_DIR .. "src/mame/video/gunbustr.cpp", MAME_DIR .. "src/mame/drivers/halleys.cpp", + MAME_DIR .. "src/mame/drivers/heromem.cpp", MAME_DIR .. "src/mame/drivers/invqix.cpp", MAME_DIR .. "src/mame/drivers/jollyjgr.cpp", MAME_DIR .. "src/mame/drivers/ksayakyu.cpp", @@ -4095,6 +4101,7 @@ files { MAME_DIR .. "src/mame/drivers/rollrace.cpp", MAME_DIR .. "src/mame/includes/rollrace.h", MAME_DIR .. "src/mame/video/rollrace.cpp", + MAME_DIR .. "src/mame/drivers/sbmjb.cpp", MAME_DIR .. "src/mame/drivers/sbowling.cpp", MAME_DIR .. "src/mame/drivers/scyclone.cpp", MAME_DIR .. "src/mame/drivers/slapshot.cpp", @@ -4443,10 +4450,12 @@ files { MAME_DIR .. "src/mame/drivers/cosmic.cpp", MAME_DIR .. "src/mame/includes/cosmic.h", MAME_DIR .. "src/mame/video/cosmic.cpp", + MAME_DIR .. "src/mame/drivers/cosmicg.cpp", MAME_DIR .. "src/mame/drivers/docastle.cpp", MAME_DIR .. "src/mame/includes/docastle.h", MAME_DIR .. "src/mame/machine/docastle.cpp", MAME_DIR .. "src/mame/video/docastle.cpp", + MAME_DIR .. "src/mame/drivers/getaway.cpp", MAME_DIR .. "src/mame/drivers/ladybug.cpp", MAME_DIR .. "src/mame/includes/ladybug.h", MAME_DIR .. "src/mame/video/ladybug.cpp", @@ -4849,6 +4858,7 @@ files { MAME_DIR .. "src/mame/video/dcheese.cpp", MAME_DIR .. "src/mame/drivers/dfruit.cpp", MAME_DIR .. "src/mame/drivers/dgpix.cpp", + MAME_DIR .. "src/mame/drivers/diamondking.cpp", MAME_DIR .. "src/mame/drivers/discoboy.cpp", MAME_DIR .. "src/mame/drivers/dominob.cpp", MAME_DIR .. "src/mame/drivers/dorachan.cpp", @@ -4901,6 +4911,7 @@ files { MAME_DIR .. "src/mame/drivers/gammagic.cpp", MAME_DIR .. "src/mame/drivers/gamtor.cpp", MAME_DIR .. "src/mame/drivers/gei.cpp", + MAME_DIR .. "src/mame/drivers/gfamily.cpp", MAME_DIR .. "src/mame/drivers/globalfr.cpp", MAME_DIR .. "src/mame/drivers/globalvr.cpp", MAME_DIR .. "src/mame/drivers/gluck2.cpp", @@ -4988,6 +4999,7 @@ files { MAME_DIR .. "src/mame/drivers/midas.cpp", MAME_DIR .. "src/mame/drivers/mil4000.cpp", MAME_DIR .. "src/mame/drivers/miniboy7.cpp", + MAME_DIR .. "src/mame/drivers/miniguay.cpp", MAME_DIR .. "src/mame/drivers/minivideo.cpp", MAME_DIR .. "src/mame/drivers/mirax.cpp", MAME_DIR .. "src/mame/drivers/missbamby.cpp", diff --git a/docs/release/scripts/target/mame/ci.lua b/docs/release/scripts/target/mame/ci.lua index 2e2a5020c6c..20f8fad7cf6 100644 --- a/docs/release/scripts/target/mame/ci.lua +++ b/docs/release/scripts/target/mame/ci.lua @@ -171,7 +171,6 @@ files{ MAME_DIR .. "src/mame/machine/gaelcrpt.cpp", MAME_DIR .. "src/mame/drivers/wrally.cpp", MAME_DIR .. "src/mame/includes/wrally.h", - MAME_DIR .. "src/mame/machine/wrally.cpp", MAME_DIR .. "src/mame/video/wrally.cpp", MAME_DIR .. "src/mame/video/gaelco_wrally_sprites.cpp", MAME_DIR .. "src/mame/video/gaelco_wrally_sprites.h", diff --git a/docs/release/scripts/target/mame/mess.lua b/docs/release/scripts/target/mame/mess.lua index 8081e7f9c97..9df37b00713 100644 --- a/docs/release/scripts/target/mame/mess.lua +++ b/docs/release/scripts/target/mame/mess.lua @@ -165,6 +165,7 @@ CPUS["GTRON"] = true CPUS["M88000"] = true CPUS["XAVIX2"] = true CPUS["UPD78K"] = true +CPUS["ROMP"] = true -------------------------------------------------- -- specify available sound cores; some of these are @@ -314,6 +315,7 @@ SOUNDS["S_DSP"] = true SOUNDS["ROLANDPCM"] = true --SOUNDS["TT5665"] = true SOUNDS["RP2C33_SOUND"] = true +SOUNDS["UDA1344"] = true -------------------------------------------------- -- specify available video cores @@ -451,6 +453,8 @@ MACHINES["7200FIFO"] = true MACHINES["8530SCC"] = true MACHINES["AAKARTDEV"] = true MACHINES["ACIA6850"] = true +MACHINES["ACORN_IOC"] = true +MACHINES["ACORN_MEMC"] = true MACHINES["ACORN_VIDC"] = true MACHINES["ADC0804"] = true MACHINES["ADC0808"] = true @@ -567,6 +571,7 @@ MACHINES["LSI53C810"] = true MACHINES["M3002"] = true MACHINES["M68307"] = true MACHINES["M68340"] = true +MACHINES["M950X0"] = true MACHINES["M68SFDC"] = true MACHINES["M6M80011AP"] = true MACHINES["MB14241"] = true @@ -919,6 +924,7 @@ BUSES["PSX_PARALLEL"] = true BUSES["QL"] = true BUSES["QBUS"] = true BUSES["RS232"] = true +BUSES["RTPC_KBD"] = true BUSES["S100"] = true BUSES["SAMCOUPE_DRIVE_PORT"] = true BUSES["SAMCOUPE_EXPANSION"] = true @@ -1172,6 +1178,7 @@ function linkProjects_mame_mess(_target, _subtarget) "atari", "att", "ave", + "aviion", "bally", "bandai", "banctec", @@ -1333,6 +1340,7 @@ function linkProjects_mame_mess(_target, _subtarget) "rockwell", "roland", "rolm", + "rtpc", "sage", "saitek", "samcoupe", @@ -1359,6 +1367,7 @@ function linkProjects_mame_mess(_target, _subtarget) "swtpc", "synertek", "ta", + "tab", "tandberg", "tangerin", "tasc", @@ -1611,6 +1620,8 @@ files { createMESSProjects(_target, _subtarget, "acorn") files { MAME_DIR .. "src/mame/drivers/aa310.cpp", + MAME_DIR .. "src/mame/machine/archimedes_keyb.cpp", + MAME_DIR .. "src/mame/machine/archimedes_keyb.h", MAME_DIR .. "src/mame/drivers/accomm.cpp", MAME_DIR .. "src/mame/drivers/acrnsys1.cpp", MAME_DIR .. "src/mame/drivers/acrnsys.cpp", @@ -1877,6 +1888,11 @@ files { MAME_DIR .. "src/mame/drivers/ave_arb.cpp", } +createMESSProjects(_target, _subtarget, "aviion") +files { + MAME_DIR .. "src/mame/drivers/aviion88k.cpp", +} + createMESSProjects(_target, _subtarget, "bally") files { MAME_DIR .. "src/mame/drivers/astrohome.cpp", @@ -2596,6 +2612,8 @@ files { MAME_DIR .. "src/mame/drivers/hp2100.cpp", MAME_DIR .. "src/mame/drivers/hp2620.cpp", MAME_DIR .. "src/mame/drivers/hp700.cpp", + MAME_DIR .. "src/mame/machine/hp2640_tape.cpp", + MAME_DIR .. "src/mame/machine/hp2640_tape.h", MAME_DIR .. "src/mame/drivers/hp2640.cpp", MAME_DIR .. "src/mame/drivers/hp95lx.cpp", MAME_DIR .. "src/mame/drivers/hp9825.cpp", @@ -3010,6 +3028,7 @@ files { createMESSProjects(_target, _subtarget, "nec") files { MAME_DIR .. "src/mame/drivers/apc.cpp", + MAME_DIR .. "src/mame/drivers/ews4800.cpp", MAME_DIR .. "src/mame/drivers/hh_ucom4.cpp", MAME_DIR .. "src/mame/drivers/pce.cpp", MAME_DIR .. "src/mame/includes/pce.h", @@ -3410,6 +3429,8 @@ files { MAME_DIR .. "src/mame/audio/jx8p_synth.h", MAME_DIR .. "src/mame/audio/mb63h114.cpp", MAME_DIR .. "src/mame/audio/mb63h114.h", + MAME_DIR .. "src/mame/audio/sa16.cpp", + MAME_DIR .. "src/mame/audio/sa16.h", MAME_DIR .. "src/mame/machine/mb62h195.cpp", MAME_DIR .. "src/mame/machine/mb62h195.h", MAME_DIR .. "src/mame/machine/mb63h149.cpp", @@ -3431,6 +3452,15 @@ files { MAME_DIR .. "src/mame/drivers/aim65_40.cpp", } +createMESSProjects(_target, _subtarget, "rtpc") +files { + MAME_DIR .. "src/mame/drivers/rtpc.cpp", + MAME_DIR .. "src/mame/machine/rosetta.cpp", + MAME_DIR .. "src/mame/machine/rosetta.h", + MAME_DIR .. "src/mame/machine/rtpc_iocc.cpp", + MAME_DIR .. "src/mame/machine/rtpc_iocc.h", +} + createMESSProjects(_target, _subtarget, "sage") files { MAME_DIR .. "src/mame/drivers/sage2.cpp", @@ -3776,6 +3806,13 @@ files { MAME_DIR .. "src/mame/drivers/alphatro.cpp", } +createMESSProjects(_target, _subtarget, "tab") +files { + MAME_DIR .. "src/mame/drivers/tabe22.cpp", + MAME_DIR .. "src/mame/machine/e22_kbd.cpp", + MAME_DIR .. "src/mame/machine/e22_kbd.h", +} + createMESSProjects(_target, _subtarget, "tandberg") files { MAME_DIR .. "src/mame/drivers/tdv2324.cpp", @@ -4353,6 +4390,7 @@ files { MAME_DIR .. "src/mame/drivers/alesis_qs.cpp", MAME_DIR .. "src/mame/drivers/alfaskop41xx.cpp", MAME_DIR .. "src/mame/drivers/alphasma.cpp", + MAME_DIR .. "src/mame/drivers/alphasma3k.cpp", MAME_DIR .. "src/mame/drivers/am1000.cpp", MAME_DIR .. "src/mame/drivers/ampex.cpp", MAME_DIR .. "src/mame/drivers/ampex210.cpp", diff --git a/docs/release/scripts/target/mame/tiny.lua b/docs/release/scripts/target/mame/tiny.lua index c41ccc37a9d..87d5aa546ee 100644 --- a/docs/release/scripts/target/mame/tiny.lua +++ b/docs/release/scripts/target/mame/tiny.lua @@ -165,7 +165,6 @@ files{ MAME_DIR .. "src/mame/machine/gaelcrpt.cpp", MAME_DIR .. "src/mame/drivers/wrally.cpp", MAME_DIR .. "src/mame/includes/wrally.h", - MAME_DIR .. "src/mame/machine/wrally.cpp", MAME_DIR .. "src/mame/video/wrally.cpp", MAME_DIR .. "src/mame/video/gaelco_wrally_sprites.cpp", MAME_DIR .. "src/mame/video/gaelco_wrally_sprites.h", diff --git a/docs/release/src/devices/cpu/m68000/m68kcpu.cpp b/docs/release/src/devices/cpu/m68000/m68kcpu.cpp index 3ef668478a7..52ad22d2b5d 100644 --- a/docs/release/src/devices/cpu/m68000/m68kcpu.cpp +++ b/docs/release/src/devices/cpu/m68000/m68kcpu.cpp @@ -1110,8 +1110,6 @@ void m68000_base_device::device_reset() m68ki_clear_trace(); /* Interrupt mask to level 7 */ m_int_mask = 0x0700; - m_int_level = 0; - m_virq_state = 0; /* Reset VBR */ m_vbr = 0; /* Go to supervisor mode */ diff --git a/docs/release/src/emu/emuopts.cpp b/docs/release/src/emu/emuopts.cpp index 84407669359..97d38acf73b 100644 --- a/docs/release/src/emu/emuopts.cpp +++ b/docs/release/src/emu/emuopts.cpp @@ -14,6 +14,8 @@ #include "softlist_dev.h" #include "hashfile.h" +#include "corestr.h" + #include <stack> @@ -488,7 +490,7 @@ void emu_options::set_system_name(std::string &&new_system_name) { // if so, first extract the base name (the reason for this is drag-and-drop on Windows; a side // effect is a command line like 'mame pacman.foo' will work correctly, but so be it) - std::string new_system_base_name = core_filename_extract_base(m_attempted_system_name, true); + std::string new_system_base_name(core_filename_extract_base(m_attempted_system_name, true)); // perform the lookup (and error if it cannot be found) int index = driver_list::find(new_system_base_name.c_str()); @@ -510,17 +512,6 @@ void emu_options::set_system_name(std::string &&new_system_name) //------------------------------------------------- -// set_system_name - called to set the system -// name; will adjust slot/image options as appropriate -//------------------------------------------------- - -void emu_options::set_system_name(const std::string &new_system_name) -{ - set_system_name(std::string(new_system_name)); -} - - -//------------------------------------------------- // update_slot_and_image_options //------------------------------------------------- @@ -1139,7 +1130,7 @@ void slot_option::specify(std::string &&text, bool peg_priority) // we need to do some elementary parsing here const char *bios_arg = ",bios="; - const size_t pos = text.find(bios_arg); + const std::string::size_type pos = text.find(bios_arg); if (pos != std::string::npos) { m_specified = true; @@ -1164,9 +1155,31 @@ void slot_option::specify(std::string &&text, bool peg_priority) // slot_option::specify //------------------------------------------------- -void slot_option::specify(const std::string &text, bool peg_priority) +void slot_option::specify(std::string_view text, bool peg_priority) { - specify(std::string(text), peg_priority); + // record the old value; we may need to trigger an update + const std::string old_value = value(); + + // we need to do some elementary parsing here + const char *bios_arg = ",bios="; + const std::string_view::size_type pos = text.find(bios_arg); + if (pos != std::string_view::npos) + { + m_specified = true; + m_specified_value = text.substr(0, pos); + m_specified_bios = text.substr(pos + strlen(bios_arg)); + } + else + { + m_specified = true; + m_specified_value = text; + m_specified_bios = ""; + } + + conditionally_peg_priority(m_entry, peg_priority); + + // we may have changed + possibly_changed(old_value); } @@ -1248,7 +1261,7 @@ image_option::image_option(emu_options &host, const std::string &canonical_insta // image_option::specify //------------------------------------------------- -void image_option::specify(const std::string &value, bool peg_priority) +void image_option::specify(std::string_view value, bool peg_priority) { if (value != m_value) { diff --git a/docs/release/src/emu/emuopts.h b/docs/release/src/emu/emuopts.h index bb989016cf3..6ad1d70bcf4 100644 --- a/docs/release/src/emu/emuopts.h +++ b/docs/release/src/emu/emuopts.h @@ -220,8 +220,9 @@ public: core_options::entry::shared_ptr option_entry() const { return m_entry.lock(); } // seters - void specify(const std::string &text, bool peg_priority = true); + void specify(std::string_view text, bool peg_priority = true); void specify(std::string &&text, bool peg_priority = true); + void specify(const char *text, bool peg_priority = true) { specify(std::string_view(text), peg_priority); } void set_bios(std::string &&text); void set_default_card_software(std::string &&s); @@ -254,8 +255,9 @@ public: core_options::entry::shared_ptr option_entry() const { return m_entry.lock(); } // mutators - void specify(const std::string &value, bool peg_priority = true); + void specify(std::string_view value, bool peg_priority = true); void specify(std::string &&value, bool peg_priority = true); + void specify(const char *value, bool peg_priority = true) { specify(std::string_view(value), peg_priority); } // instantiates an option entry (don't call outside of emuopts.cpp) core_options::entry::shared_ptr setup_option_entry(std::vector<std::string> &&names); @@ -291,7 +293,8 @@ public: ~emu_options(); // mutation - void set_system_name(const std::string &new_system_name); + void set_system_name(const char *new_system_name) { set_system_name(std::string(new_system_name)); } + void set_system_name(std::string_view new_system_name) { set_system_name(std::string(new_system_name)); } void set_system_name(std::string &&new_system_name); void set_software(std::string &&new_software); diff --git a/docs/release/src/emu/romload.cpp b/docs/release/src/emu/romload.cpp index accf8733a7b..d69a4f4e1bb 100644 --- a/docs/release/src/emu/romload.cpp +++ b/docs/release/src/emu/romload.cpp @@ -11,6 +11,7 @@ #include "emu.h" #include "romload.h" +#include "corestr.h" #include "emuopts.h" #include "drivenum.h" #include "softlist_dev.h" @@ -104,14 +105,13 @@ chd_error do_open_disk(const emu_options &options, std::initializer_list<std::re { // hashes are fixed, but we might need to try multiple filenames std::set<std::string> tried; - const util::hash_collection hashes(ROM_GETHASHDATA(romp)); + const util::hash_collection hashes(romp->hashdata()); std::string filename, fullpath; const rom_entry *parent(nullptr); chd_error result(CHDERR_FILE_NOT_FOUND); while (romp && (CHDERR_NONE != result)) { - filename = ROM_GETNAME(romp); - filename.append(".chd"); + filename = romp->name() + ".chd"; if (tried.insert(filename).second) { // piggyback on emu_file to find the disk image file @@ -170,7 +170,7 @@ chd_error do_open_disk(const emu_options &options, std::initializer_list<std::re } // try it if it matches the hashes - if (romp && (util::hash_collection(ROM_GETHASHDATA(romp)) == hashes)) + if (romp && (util::hash_collection(romp->hashdata()) == hashes)) break; } } @@ -331,10 +331,10 @@ static void CLIB_DECL ATTR_PRINTF(1,2) debugload(const char *string, ...) CHD file associated with the given region -------------------------------------------------*/ -chd_file *rom_load_manager::get_disk_handle(const char *region) +chd_file *rom_load_manager::get_disk_handle(std::string_view region) { for (auto &curdisk : m_chd_list) - if (strcmp(curdisk->region(), region) == 0) + if (curdisk->region() == region) return &curdisk->chd(); return nullptr; } @@ -345,7 +345,7 @@ chd_file *rom_load_manager::get_disk_handle(const char *region) file associated with the given region -------------------------------------------------*/ -int rom_load_manager::set_disk_handle(const char *region, const char *fullpath) +int rom_load_manager::set_disk_handle(std::string_view region, const char *fullpath) { auto chd = std::make_unique<open_chd>(region); auto err = chd->orig_chd().open(fullpath); @@ -453,15 +453,12 @@ void rom_load_manager::handle_missing_file(const rom_entry *romp, const std::vec tried += ')'; } - std::string name(ROM_GETNAME(romp)); - const bool is_chd(chderr != CHDERR_NONE); - if (is_chd) - name += ".chd"; + const std::string name(is_chd ? romp->name() + ".chd" : romp->name()); const bool is_chd_error(is_chd && chderr != CHDERR_FILE_NOT_FOUND); if (is_chd_error) - m_errorstring.append(string_format("%s CHD ERROR: %s\n", name.c_str(), chd_file::error_string(chderr))); + m_errorstring.append(string_format("%s CHD ERROR: %s\n", name, chd_file::error_string(chderr))); if (ROM_ISOPTIONAL(romp)) { @@ -470,7 +467,7 @@ void rom_load_manager::handle_missing_file(const rom_entry *romp, const std::vec m_errorstring.append(string_format("OPTIONAL %s NOT FOUND%s\n", name, tried)); m_warnings++; } - else if (util::hash_collection(ROM_GETHASHDATA(romp)).flag(util::hash_collection::FLAG_NO_DUMP)) + else if (util::hash_collection(romp->hashdata()).flag(util::hash_collection::FLAG_NO_DUMP)) { // no good dumps are okay if (!is_chd_error) @@ -495,8 +492,8 @@ void rom_load_manager::handle_missing_file(const rom_entry *romp, const std::vec void rom_load_manager::dump_wrong_and_correct_checksums(const util::hash_collection &hashes, const util::hash_collection &acthashes) { - m_errorstring.append(string_format(" EXPECTED: %s\n", hashes.macro_string().c_str())); - m_errorstring.append(string_format(" FOUND: %s\n", acthashes.macro_string().c_str())); + m_errorstring.append(string_format(" EXPECTED: %s\n", hashes.macro_string())); + m_errorstring.append(string_format(" FOUND: %s\n", acthashes.macro_string())); } @@ -505,7 +502,7 @@ void rom_load_manager::dump_wrong_and_correct_checksums(const util::hash_collect and hash signatures of a file -------------------------------------------------*/ -void rom_load_manager::verify_length_and_hash(emu_file *file, const char *name, u32 explength, const util::hash_collection &hashes) +void rom_load_manager::verify_length_and_hash(emu_file *file, std::string_view name, u32 explength, const util::hash_collection &hashes) { // we've already complained if there is no file if (!file) @@ -528,7 +525,7 @@ void rom_load_manager::verify_length_and_hash(emu_file *file, const char *name, else { // verify checksums - util::hash_collection const &acthashes = file->hashes(hashes.hash_types().c_str()); + util::hash_collection const &acthashes = file->hashes(hashes.hash_types()); if (hashes != acthashes) { // otherwise, it's just bad @@ -650,7 +647,7 @@ std::unique_ptr<emu_file> rom_load_manager::open_rom_file(std::initializer_list< // extract CRC to use for searching u32 crc = 0; - bool const has_crc = util::hash_collection(ROM_GETHASHDATA(romp)).crc(crc); + bool const has_crc = util::hash_collection(romp->hashdata()).crc(crc); // attempt reading up the chain through the parents // it also automatically attempts any kind of load by checksum supported by the archives. @@ -674,7 +671,7 @@ std::unique_ptr<emu_file> rom_load_manager::open_rom_file(std::initializer_list< } -std::unique_ptr<emu_file> rom_load_manager::open_rom_file(const std::vector<std::string> &paths, std::vector<std::string> &tried, bool has_crc, u32 crc, const std::string &name, osd_file::error &filerr) +std::unique_ptr<emu_file> rom_load_manager::open_rom_file(const std::vector<std::string> &paths, std::vector<std::string> &tried, bool has_crc, u32 crc, std::string_view name, osd_file::error &filerr) { // record the set names we search tried.insert(tried.end(), paths.begin(), paths.end()); @@ -734,15 +731,15 @@ int rom_load_manager::read_rom_data(emu_file *file, const rom_entry *parent_regi /* make sure the length was an even multiple of the group size */ // if (numbytes % groupsize != 0) -// osd_printf_warning("Warning in RomModule definition: %s length not an even multiple of group size\n", ROM_GETNAME(romp)); // HBMAME +// osd_printf_warning("Warning in RomModule definition: %s length not an even multiple of group size\n", romp->name()); // HBMAME /* make sure we only fill within the region space */ if (ROM_GETOFFSET(romp) + numgroups * groupsize + (numgroups - 1) * skip > m_region->bytes()) - throw emu_fatalerror("Error in RomModule definition: %s out of memory region space\n", ROM_GETNAME(romp)); + throw emu_fatalerror("Error in RomModule definition: %s out of memory region space\n", romp->name()); /* make sure the length was valid */ if (numbytes == 0) - throw emu_fatalerror("Error in RomModule definition: %s has an invalid length\n", ROM_GETNAME(romp)); + throw emu_fatalerror("Error in RomModule definition: %s has an invalid length\n", romp->name()); /* special case for simple loads */ if (datamask == 0xff && (groupsize == 1 || !reversed) && skip == 0) @@ -847,7 +844,7 @@ void rom_load_manager::fill_rom_data(const rom_entry *romp) throw emu_fatalerror("Error in RomModule definition: FILL has an invalid length\n"); // for fill bytes, the byte that gets filled is the first byte of the hashdata string - u8 fill_byte = u8(strtol(ROM_GETHASHDATA(romp), nullptr, 0)); + u8 fill_byte = u8(strtol(romp->hashdata().c_str(), nullptr, 0)); // fill the data (filling value is stored in place of the hashdata) if(skip != 0) @@ -867,9 +864,9 @@ void rom_load_manager::fill_rom_data(const rom_entry *romp) void rom_load_manager::copy_rom_data(const rom_entry *romp) { u8 *base = m_region->base() + ROM_GETOFFSET(romp); - const char *srcrgntag = ROM_GETNAME(romp); + const std::string &srcrgntag = romp->name(); u32 numbytes = ROM_GETLENGTH(romp); - u32 srcoffs = u32(strtol(ROM_GETHASHDATA(romp), nullptr, 0)); /* srcoffset in place of hashdata */ + u32 srcoffs = u32(strtol(romp->hashdata().c_str(), nullptr, 0)); /* srcoffset in place of hashdata */ /* make sure we copy within the region space */ if (ROM_GETOFFSET(romp) + numbytes > m_region->bytes()) @@ -972,7 +969,7 @@ void rom_load_manager::process_rom_entries(std::initializer_list<std::reference_ if (baserom) { LOG("Verifying length (%X) and checksums\n", explength); - verify_length_and_hash(file.get(), ROM_GETNAME(baserom), explength, util::hash_collection(ROM_GETHASHDATA(baserom))); + verify_length_and_hash(file.get(), baserom->name(), explength, util::hash_collection(baserom->hashdata())); LOG("Verify finished\n"); } @@ -1006,7 +1003,7 @@ void rom_load_manager::process_rom_entries(std::initializer_list<std::reference_ chd_error rom_load_manager::open_disk_diff(emu_options &options, const rom_entry *romp, chd_file &source, chd_file &diff_chd) { // TODO: use system name and/or software list name in the path - the current setup doesn't scale - std::string fname = std::string(ROM_GETNAME(romp)).append(".dif"); + std::string fname = romp->name() + ".dif"; /* try to open the diff */ LOG("Opening differencing image file: %s\n", fname.c_str()); @@ -1049,11 +1046,11 @@ chd_error rom_load_manager::open_disk_diff(emu_options &options, const rom_entry for a region -------------------------------------------------*/ -void rom_load_manager::process_disk_entries(std::initializer_list<std::reference_wrapper<const std::vector<std::string> > > searchpath, const char *regiontag, const rom_entry *romp, std::function<const rom_entry * ()> next_parent) +void rom_load_manager::process_disk_entries(std::initializer_list<std::reference_wrapper<const std::vector<std::string> > > searchpath, std::string_view regiontag, const rom_entry *romp, std::function<const rom_entry * ()> next_parent) { /* remove existing disk entries for this region */ m_chd_list.erase(std::remove_if(m_chd_list.begin(), m_chd_list.end(), - [regiontag] (std::unique_ptr<open_chd> &chd) { return !strcmp(chd->region(), regiontag); }), m_chd_list.end()); + [regiontag] (std::unique_ptr<open_chd> &chd) { return chd->region() == regiontag; }), m_chd_list.end()); /* loop until we hit the end of this region */ for ( ; !ROMENTRY_ISREGIONEND(romp); romp++) @@ -1065,7 +1062,7 @@ void rom_load_manager::process_disk_entries(std::initializer_list<std::reference chd_error err; /* make the filename of the source */ - const std::string filename = std::string(ROM_GETNAME(romp)).append(".chd"); + const std::string filename = romp->name() + ".chd"; /* first open the source drive */ // FIXME: we've lost the ability to search parents here @@ -1083,7 +1080,7 @@ void rom_load_manager::process_disk_entries(std::initializer_list<std::reference acthashes.add_sha1(chd->orig_chd().sha1()); /* verify the hash */ - const util::hash_collection hashes(ROM_GETHASHDATA(romp)); + const util::hash_collection hashes(romp->hashdata()); if (hashes != acthashes) { m_errorstring.append(string_format("%s WRONG CHECKSUMS:\n", filename)); @@ -1168,7 +1165,7 @@ chd_error rom_load_manager::open_disk_image(const emu_options &options, software flags for the given device -------------------------------------------------*/ -void rom_load_manager::normalize_flags_for_device(const char *rgntag, u8 &width, endianness_t &endian) +void rom_load_manager::normalize_flags_for_device(std::string_view rgntag, u8 &width, endianness_t &endian) { device_t *device = machine().root_device().subdevice(rgntag); device_memory_interface *memory; @@ -1209,7 +1206,7 @@ void rom_load_manager::normalize_flags_for_device(const char *rgntag, u8 &width, more general process_region_list. -------------------------------------------------*/ -void rom_load_manager::load_software_part_region(device_t &device, software_list_device &swlist, const char *swname, const rom_entry *start_region) +void rom_load_manager::load_software_part_region(device_t &device, software_list_device &swlist, std::string_view swname, const rom_entry *start_region) { m_errorstring.clear(); m_softwarningstring.clear(); @@ -1220,7 +1217,7 @@ void rom_load_manager::load_software_part_region(device_t &device, software_list std::vector<const software_info *> parents; std::vector<std::string> swsearch, disksearch, devsearch; - const software_info *const swinfo = swlist.find(swname); + const software_info *const swinfo = swlist.find(std::string(swname)); if (swinfo) { // dispay a warning for unsupported software @@ -1260,7 +1257,7 @@ void rom_load_manager::load_software_part_region(device_t &device, software_list { u32 regionlength = ROMREGION_GETLENGTH(region); - std::string regiontag = device.subtag(ROMREGION_GETTAG(region)); + std::string regiontag = device.subtag(region->name()); LOG("Processing region \"%s\" (length=%X)\n", regiontag.c_str(), regionlength); // the first entry must be a region @@ -1272,7 +1269,7 @@ void rom_load_manager::load_software_part_region(device_t &device, software_list memory_region *memregion = machine().root_device().memregion(regiontag); if (memregion != nullptr) { - normalize_flags_for_device(regiontag.c_str(), width, endianness); + normalize_flags_for_device(regiontag, width, endianness); // clear old region (TODO: should be moved to an image unload function) machine().memory().region_free(memregion->name()); @@ -1316,15 +1313,15 @@ void rom_load_manager::load_software_part_region(device_t &device, software_list next_parent = [] () { return nullptr; }; } if (devsearch.empty()) - process_disk_entries({ swsearch, disksearch }, regiontag.c_str(), region + 1, next_parent); + process_disk_entries({ swsearch, disksearch }, regiontag, region + 1, next_parent); else - process_disk_entries({ swsearch, disksearch, devsearch }, regiontag.c_str(), region + 1, next_parent); + process_disk_entries({ swsearch, disksearch, devsearch }, regiontag, region + 1, next_parent); } } // now go back and post-process all the regions for (const rom_entry *region = start_region; region != nullptr; region = rom_next_region(region)) - region_post_process(device.memregion(ROMREGION_GETTAG(region)), ROMREGION_ISINVERTED(region)); + region_post_process(device.memregion(region->name()), ROMREGION_ISINVERTED(region)); // display the results and exit display_rom_load_results(true); @@ -1348,7 +1345,7 @@ void rom_load_manager::process_region_list() { u32 regionlength = ROMREGION_GETLENGTH(region); - std::string regiontag = device.subtag(ROM_GETNAME(region)); + std::string regiontag = device.subtag(region->name()); LOG("Processing region \"%s\" (length=%X)\n", regiontag.c_str(), regionlength); // the first entry must be a region @@ -1359,10 +1356,10 @@ void rom_load_manager::process_region_list() // if this is a device region, override with the device width and endianness u8 width = ROMREGION_GETWIDTH(region) / 8; endianness_t endianness = ROMREGION_ISBIGENDIAN(region) ? ENDIANNESS_BIG : ENDIANNESS_LITTLE; - normalize_flags_for_device(regiontag.c_str(), width, endianness); + normalize_flags_for_device(regiontag, width, endianness); // remember the base and length - m_region = machine().memory().region_alloc(regiontag.c_str(), regionlength, width, endianness); + m_region = machine().memory().region_alloc(regiontag, regionlength, width, endianness); LOG("Allocated %X bytes @ %p\n", m_region->bytes(), m_region->base()); if (ROMREGION_ISERASE(region)) // clear the region if it's requested @@ -1393,7 +1390,7 @@ void rom_load_manager::process_region_list() else next_parent = [] () { return nullptr; }; } - process_disk_entries({ searchpath }, regiontag.c_str(), region + 1, next_parent); + process_disk_entries({ searchpath }, regiontag, region + 1, next_parent); } } } @@ -1401,7 +1398,7 @@ void rom_load_manager::process_region_list() // now go back and post-process all the regions for (device_t &device : deviter) for (const rom_entry *region = rom_first_region(device); region != nullptr; region = rom_next_region(region)) - region_post_process(device.memregion(ROM_GETNAME(region)), ROMREGION_ISINVERTED(region)); + region_post_process(device.memregion(region->name()), ROMREGION_ISINVERTED(region)); // and finally register all per-game parameters for (device_t &device : deviter) @@ -1435,7 +1432,7 @@ rom_load_manager::rom_load_manager(running_machine &machine) , m_softwarningstring() { // figure out which BIOS we are using - std::map<std::string, std::string> card_bios; + std::map<std::string_view, std::string> card_bios; for (device_t &device : device_enumerator(machine.config().root_device())) { device_slot_interface const *const slot(dynamic_cast<device_slot_interface *>(&device)); @@ -1444,7 +1441,7 @@ rom_load_manager::rom_load_manager(running_machine &machine) device_t const *const card(slot->get_card_device()); slot_option const &slot_opt(machine.options().slot_option(slot->slot_name())); if (card && !slot_opt.bios().empty()) - card_bios.emplace(std::make_pair(std::string(card->tag()), slot_opt.bios())); + card_bios.emplace(card->tag(), slot_opt.bios()); } if (device.rom_region()) diff --git a/docs/release/src/emu/validity.cpp b/docs/release/src/emu/validity.cpp index a449ea103ad..05f96fe66ff 100644 --- a/docs/release/src/emu/validity.cpp +++ b/docs/release/src/emu/validity.cpp @@ -11,6 +11,7 @@ #include "emu.h" #include "validity.h" +#include "corestr.h" #include "emuopts.h" #include "romload.h" #include "video/rgbutil.h" @@ -291,7 +292,7 @@ void validity_checker::validate_one(const game_driver &driver) { // help verbose validation detect configuration-related crashes if (m_print_verbose) - output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "Validating driver %s (%s)...\n", driver.name, core_filename_extract_base(driver.type.source()).c_str()); + output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "Validating driver %s (%s)...\n", driver.name, core_filename_extract_base(driver.type.source())); // set the current driver m_current_driver = &driver; @@ -326,7 +327,7 @@ void validity_checker::validate_one(const game_driver &driver) if (m_errors > start_errors || m_warnings > start_warnings || !m_verbose_text.empty()) { if (!m_print_verbose) - output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "Driver %s (file %s): ", driver.name, core_filename_extract_base(driver.type.source()).c_str()); + output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "Driver %s (file %s): ", driver.name, core_filename_extract_base(driver.type.source())); output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "%d errors, %d warnings\n", m_errors - start_errors, m_warnings - start_warnings); if (m_errors > start_errors) output_indented_errors(m_error_text, "Errors"); @@ -475,13 +476,13 @@ void validity_checker::validate_inlines() if (resultu32 != expectedu32) osd_printf_error("Error testing divu_64x32 (%16X / %08X) = %08X (expected %08X)\n", u64(testu64a), u32(testu32a), resultu32, expectedu32); - resulti32 = div_64x32_rem(testi64a, testi32a, &remainder); + resulti32 = div_64x32_rem(testi64a, testi32a, remainder); expectedi32 = testi64a / s64(testi32a); expremainder = testi64a % s64(testi32a); if (resulti32 != expectedi32 || remainder != expremainder) osd_printf_error("Error testing div_64x32_rem (%16X / %08X) = %08X,%08X (expected %08X,%08X)\n", s64(testi64a), s32(testi32a), resulti32, remainder, expectedi32, expremainder); - resultu32 = divu_64x32_rem(testu64a, testu32a, &uremainder); + resultu32 = divu_64x32_rem(testu64a, testu32a, uremainder); expectedu32 = testu64a / u64(testu32a); expuremainder = testu64a % u64(testu32a); if (resultu32 != expectedu32 || uremainder != expuremainder) @@ -2121,10 +2122,10 @@ void validity_checker::validate_device_types() device_t *const dev = config.device_add(type.shortname(), type, 0); char const *name((dev->shortname() && *dev->shortname()) ? dev->shortname() : type.type().name()); - std::string const description((dev->source() && *dev->source()) ? util::string_format("%s(%s)", core_filename_extract_base(dev->source()).c_str(), name) : name); + std::string const description((dev->source() && *dev->source()) ? util::string_format("%s(%s)", core_filename_extract_base(dev->source()), name) : name); if (m_print_verbose) - output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "Validating device %s...\n", description.c_str()); + output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "Validating device %s...\n", description); // ensure shortname exists if (!dev->shortname() || !*dev->shortname()) @@ -2327,5 +2328,5 @@ void validity_checker::output_indented_errors(std::string &text, const char *hea if (text[text.size()-1] == '\n') text.erase(text.size()-1, 1); strreplace(text, "\n", "\n "); - output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "%s:\n %s\n", header, text.c_str()); + output_via_delegate(OSD_OUTPUT_CHANNEL_ERROR, "%s:\n %s\n", header, text); } diff --git a/docs/release/src/emu/video.cpp b/docs/release/src/emu/video.cpp index 749e9113464..a4b02e2e2f3 100644 --- a/docs/release/src/emu/video.cpp +++ b/docs/release/src/emu/video.cpp @@ -16,6 +16,7 @@ #include "rendersw.hxx" #include "output.h" +#include "corestr.h" #include "png.h" #include "xmlfile.h" @@ -173,7 +174,7 @@ video_manager::video_manager(running_machine &machine) { m_screenless_frame_timer = machine.scheduler().timer_alloc(timer_expired_delegate(FUNC(video_manager::screenless_update_callback), this)); m_screenless_frame_timer->adjust(screen_device::DEFAULT_FRAME_PERIOD, 0, screen_device::DEFAULT_FRAME_PERIOD); - machine.output().set_notifier(nullptr, video_notifier_callback, this); + machine.output().set_global_notifier(video_notifier_callback, this); } } diff --git a/docs/release/src/frontend/mame/audit.cpp b/docs/release/src/frontend/mame/audit.cpp index 8b75b792a4a..d6579c62d8a 100644 --- a/docs/release/src/frontend/mame/audit.cpp +++ b/docs/release/src/frontend/mame/audit.cpp @@ -31,7 +31,7 @@ namespace { struct parent_rom { - parent_rom(device_type t, rom_entry const *r) : type(t), name(ROM_GETNAME(r)), hashes(ROM_GETHASHDATA(r)), length(rom_file_size(r)) { } + parent_rom(device_type t, rom_entry const *r) : type(t), name(r->name()), hashes(r->hashdata()), length(rom_file_size(r)) { } std::reference_wrapper<std::remove_reference_t<device_type> > type; std::string name; @@ -74,7 +74,7 @@ public: } } - std::add_pointer_t<device_type> find_shared_device(device_t ¤t, char const *name, util::hash_collection const &hashes, uint64_t length) const + std::add_pointer_t<device_type> find_shared_device(device_t ¤t, std::string_view name, util::hash_collection const &hashes, uint64_t length) const { // if we're examining a child device, it will always have a perfect match if (current.owner()) @@ -120,7 +120,7 @@ public: { if (rom_file_size(rom) == record.actual_length()) { - util::hash_collection const hashes(ROM_GETHASHDATA(rom)); + util::hash_collection const hashes(rom->hashdata()); if (hashes == record.actual_hashes()) return std::make_pair(¤t.type(), empty()); else if (hashes.flag(util::hash_collection::FLAG_NO_DUMP) && (rom->name() == record.name())) @@ -228,8 +228,8 @@ media_auditor::summary media_auditor::audit_media(const char *validation) } // look for a matching parent or device ROM - char const *const name(ROM_GETNAME(rom)); - util::hash_collection const hashes(ROM_GETHASHDATA(rom)); + std::string const &name(rom->name()); + util::hash_collection const hashes(rom->hashdata()); bool const dumped(!hashes.flag(util::hash_collection::FLAG_NO_DUMP)); std::add_pointer_t<device_type> const shared_device(parentroms.find_shared_device(device, name, hashes, rom_file_size(rom))); if (shared_device) @@ -557,7 +557,7 @@ void media_auditor::audit_regions(T do_audit, const rom_entry *region, std::size for (rom_entry const *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) { // count the number of files with hashes - util::hash_collection const hashes(ROM_GETHASHDATA(rom)); + util::hash_collection const hashes(rom->hashdata()); if (!hashes.flag(util::hash_collection::FLAG_NO_DUMP) && !ROM_ISOPTIONAL(rom)) required++; @@ -679,14 +679,13 @@ media_auditor::audit_record::audit_record(const rom_entry &media, media_type typ : m_type(type) , m_status(audit_status::UNVERIFIED) , m_substatus(audit_substatus::UNVERIFIED) - , m_name(ROM_GETNAME(&media)) + , m_name(media.name()) , m_explength(rom_file_size(&media)) , m_length(0) - , m_exphashes() + , m_exphashes(media.hashdata()) , m_hashes() , m_shared_device(nullptr) { - m_exphashes.from_internal_string(ROM_GETHASHDATA(&media)); } media_auditor::audit_record::audit_record(const char *name, media_type type) diff --git a/docs/release/src/frontend/mame/audit.h b/docs/release/src/frontend/mame/audit.h index 0663152c048..e1857de5cdf 100644 --- a/docs/release/src/frontend/mame/audit.h +++ b/docs/release/src/frontend/mame/audit.h @@ -102,7 +102,7 @@ public: media_type type() const { return m_type; } audit_status status() const { return m_status; } audit_substatus substatus() const { return m_substatus; } - const char *name() const { return m_name; } + const std::string &name() const { return m_name; } uint64_t expected_length() const { return m_explength; } uint64_t actual_length() const { return m_length; } const util::hash_collection &expected_hashes() const { return m_exphashes; } @@ -138,7 +138,7 @@ public: media_type m_type; // type of item that was audited audit_status m_status; // status of audit on this item audit_substatus m_substatus; // finer-detail status - const char * m_name; // name of item + std::string m_name; // name of item uint64_t m_explength; // expected length of item uint64_t m_length; // actual length of item util::hash_collection m_exphashes; // expected hash data diff --git a/docs/release/src/frontend/mame/clifront.cpp b/docs/release/src/frontend/mame/clifront.cpp index 70fed3219e2..421033bb53a 100644 --- a/docs/release/src/frontend/mame/clifront.cpp +++ b/docs/release/src/frontend/mame/clifront.cpp @@ -18,17 +18,18 @@ #include "language.h" #include "luaengine.h" #include "mame.h" +#include "mameopts.h" #include "media_ident.h" #include "pluginopts.h" #include "emuopts.h" -#include "mameopts.h" #include "romload.h" #include "softlist_dev.h" #include "validity.h" #include "sound/samples.h" #include "chd.h" +#include "corestr.h" #include "unzip.h" #include "xmlfile.h" @@ -229,12 +230,12 @@ void cli_frontend::start_execution(mame_machine_manager *manager, const std::vec } // determine the base name of the EXE - std::string exename = core_filename_extract_base(args[0], true); + std::string_view exename = core_filename_extract_base(args[0], true); // if we have a command, execute that if (!m_options.command().empty()) { - execute_commands(exename.c_str()); + execute_commands(exename); return; } @@ -253,10 +254,7 @@ void cli_frontend::start_execution(mame_machine_manager *manager, const std::vec manager->start_luaengine(); if (option_errors.tellp() > 0) - { - std::string option_errors_string = option_errors.str(); - osd_printf_error("Error in command line:\n%s\n", strtrimspace(option_errors_string)); - } + osd_printf_error("Error in command line:\n%s\n", strtrimspace(option_errors.str())); // if we can't find it, give an appropriate error const game_driver *system = mame_options::system(m_options); @@ -285,9 +283,7 @@ int cli_frontend::execute(std::vector<std::string> &args) // handle exceptions of various types catch (emu_fatalerror &fatal) { - std::string str(fatal.what()); - strtrimspace(str); - osd_printf_error("%s\n", str); + osd_printf_error("%s\n", strtrimspace(fatal.what())); m_result = (fatal.exitcode() != 0) ? fatal.exitcode() : EMU_ERR_FATALERROR; // if a game was specified, wasn't a wildcard, and our error indicates this was the @@ -568,8 +564,7 @@ void cli_frontend::listroms(const std::vector<std::string> &args) length = rom_file_size(rom); // start with the name - const char *name = ROM_GETNAME(rom); - osd_printf_info("%-32s ", name); + osd_printf_info("%-32s ", rom->name()); // output the length next if (length >= 0) @@ -578,7 +573,7 @@ void cli_frontend::listroms(const std::vector<std::string> &args) osd_printf_info("%10s", ""); // output the hash data - util::hash_collection hashes(ROM_GETHASHDATA(rom)); + util::hash_collection hashes(rom->hashdata()); if (!hashes.flag(util::hash_collection::FLAG_NO_DUMP)) { if (hashes.flag(util::hash_collection::FLAG_BAD_DUMP)) @@ -1101,7 +1096,7 @@ void cli_frontend::output_single_softlist(std::ostream &out, software_list_devic util::stream_format(out, "\t\t\t<publisher>%s</publisher>\n", util::xml::normalize_string(swinfo.publisher().c_str())); for (const feature_list_item &flist : swinfo.other_info()) - util::stream_format(out, "\t\t\t<info name=\"%s\" value=\"%s\"/>\n", flist.name().c_str(), util::xml::normalize_string(flist.value().c_str())); + util::stream_format(out, "\t\t\t<info name=\"%s\" value=\"%s\"/>\n", flist.name(), util::xml::normalize_string(flist.value().c_str())); for (const software_part &part : swinfo.parts()) { @@ -1112,7 +1107,7 @@ void cli_frontend::output_single_softlist(std::ostream &out, software_list_devic out << ">\n"; for (const feature_list_item &flist : part.featurelist()) - util::stream_format(out, "\t\t\t\t<feature name=\"%s\" value=\"%s\" />\n", flist.name().c_str(), util::xml::normalize_string(flist.value().c_str())); + util::stream_format(out, "\t\t\t\t<feature name=\"%s\" value=\"%s\" />\n", flist.name(), util::xml::normalize_string(flist.value().c_str())); // TODO: display ROM region information for (const rom_entry *region = part.romdata().data(); region; region = rom_next_region(region)) @@ -1120,9 +1115,9 @@ void cli_frontend::output_single_softlist(std::ostream &out, software_list_devic int is_disk = ROMREGION_ISDISKDATA(region); if (!is_disk) - util::stream_format(out, "\t\t\t\t<dataarea name=\"%s\" size=\"%d\">\n", util::xml::normalize_string(ROMREGION_GETTAG(region)), ROMREGION_GETLENGTH(region)); + util::stream_format(out, "\t\t\t\t<dataarea name=\"%s\" size=\"%d\">\n", util::xml::normalize_string(region->name().c_str()), region->get_length()); else - util::stream_format(out, "\t\t\t\t<diskarea name=\"%s\">\n", util::xml::normalize_string(ROMREGION_GETTAG(region))); + util::stream_format(out, "\t\t\t\t<diskarea name=\"%s\">\n", util::xml::normalize_string(region->name().c_str())); for (const rom_entry *rom = rom_first_file(region); rom && !ROMENTRY_ISREGIONEND(rom); rom++) { @@ -1134,7 +1129,7 @@ void cli_frontend::output_single_softlist(std::ostream &out, software_list_devic util::stream_format(out, "\t\t\t\t\t<disk name=\"%s\"", util::xml::normalize_string(ROM_GETNAME(rom))); // dump checksum information only if there is a known dump - util::hash_collection hashes(ROM_GETHASHDATA(rom)); + util::hash_collection hashes(rom->hashdata()); if (!hashes.flag(util::hash_collection::FLAG_NO_DUMP)) util::stream_format(out, " %s", hashes.attribute_string()); else @@ -1607,7 +1602,7 @@ const cli_frontend::info_command_struct *cli_frontend::find_command(const std::s // commands //------------------------------------------------- -void cli_frontend::execute_commands(const char *exename) +void cli_frontend::execute_commands(std::string_view exename) { // help? if (m_options.command() == CLICOMMAND_HELP) @@ -1655,7 +1650,7 @@ void cli_frontend::execute_commands(const char *exename) throw emu_fatalerror("Unable to create file %s.ini\n",emulator_info::get_configname()); // generate the updated INI - file.puts(m_options.output_ini().c_str()); + file.puts(m_options.output_ini()); ui_options ui_opts; emu_file file_ui(OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); @@ -1663,7 +1658,7 @@ void cli_frontend::execute_commands(const char *exename) throw emu_fatalerror("Unable to create file ui.ini\n"); // generate the updated INI - file_ui.puts(ui_opts.output_ini().c_str()); + file_ui.puts(ui_opts.output_ini()); plugin_options plugin_opts; path_iterator iter(m_options.plugins_path()); @@ -1678,7 +1673,7 @@ void cli_frontend::execute_commands(const char *exename) throw emu_fatalerror("Unable to create file plugin.ini\n"); // generate the updated INI - file_plugin.puts(plugin_opts.output_ini().c_str()); + file_plugin.puts(plugin_opts.output_ini()); return; } @@ -1727,7 +1722,7 @@ void cli_frontend::execute_commands(const char *exename) //------------------------------------------------- // HBMAME - remove reference to software and media. -void cli_frontend::display_help(const char *exename) +void cli_frontend::display_help(std::string_view exename) { osd_printf_info( "%3$s v%2$s\n" diff --git a/docs/release/src/frontend/mame/language.cpp b/docs/release/src/frontend/mame/language.cpp index 52b6ee6e3f6..6c0a8954384 100644 --- a/docs/release/src/frontend/mame/language.cpp +++ b/docs/release/src/frontend/mame/language.cpp @@ -11,6 +11,8 @@ #include "emu.h" #include "emuopts.h" +#include "corestr.h" + #include <cstring> #include <memory> #include <new> diff --git a/docs/release/src/frontend/mame/mameopts.cpp b/docs/release/src/frontend/mame/mameopts.cpp index 88ae9951cd9..0e6c28da23d 100644 --- a/docs/release/src/frontend/mame/mameopts.cpp +++ b/docs/release/src/frontend/mame/mameopts.cpp @@ -91,7 +91,7 @@ void mame_options::parse_standard_inis(emu_options &options, std::ostream &error } // next parse "source/<sourcefile>.ini" - std::string sourcename = core_filename_extract_base(cursystem->type.source(), true).insert(0, "source" PATH_SEPARATOR); + std::string sourcename = std::string(core_filename_extract_base(cursystem->type.source(), true)).insert(0, "source" PATH_SEPARATOR); parse_one_ini(options, sourcename.c_str(), OPTION_PRIORITY_SOURCE_INI, &error_stream); // then parse the grandparent, parent, and system-specific INIs @@ -112,7 +112,7 @@ void mame_options::parse_standard_inis(emu_options &options, std::ostream &error const game_driver *mame_options::system(const emu_options &options) { - int index = driver_list::find(core_filename_extract_base(options.system_name(), true).c_str()); + int index = driver_list::find(std::string(core_filename_extract_base(options.system_name(), true)).c_str()); return (index != -1) ? &driver_list::driver(index) : nullptr; } diff --git a/docs/release/src/hbmame/drivers/cps1.cpp b/docs/release/src/hbmame/drivers/cps1.cpp index 24191e0f9be..2df8c43704f 100644 --- a/docs/release/src/hbmame/drivers/cps1.cpp +++ b/docs/release/src/hbmame/drivers/cps1.cpp @@ -1868,6 +1868,34 @@ static INPUT_PORTS_START( sf2j ) PORT_DIPSETTING( 0x00, "2 Credits/Winner Continue" ) //Winner stays, loser pays, in other words. INPUT_PORTS_END +static INPUT_PORTS_START( sf2rb ) + PORT_INCLUDE( sf2 ) + + PORT_MODIFY("DSWB") + PORT_DIPNAME( 0xf0, 0xf0, "Turbo Vs CPU" ) PORT_DIPLOCATION("SW(B):5,6,7,8") + PORT_DIPSETTING( 0xf0, DEF_STR( Off ) ) + PORT_DIPSETTING( 0xe0, "Fixed 1" ) + PORT_DIPSETTING( 0xd0, "Fixed 2" ) + PORT_DIPSETTING( 0xc0, "Fixed 3" ) + PORT_DIPSETTING( 0xb0, "Fixed 4" ) + PORT_DIPSETTING( 0xa0, "Fixed 5" ) + PORT_DIPSETTING( 0x90, "Fixed 6" ) + PORT_DIPSETTING( 0x80, "Fixed 7" ) + PORT_DIPSETTING( 0x70, "Progressive 1" ) + PORT_DIPSETTING( 0x60, "Progressive 2" ) + PORT_DIPSETTING( 0x50, "Progressive 3" ) + PORT_DIPSETTING( 0x40, "Progressive 4" ) + PORT_DIPSETTING( 0x30, "Progressive 5" ) + PORT_DIPSETTING( 0x20, "Progressive 6" ) + PORT_DIPSETTING( 0x10, "Progressive 7" ) + PORT_DIPSETTING( 0x00, "Progressive 8" ) + + PORT_MODIFY("DSWC") + PORT_DIPNAME( 0x01, 0x01, "Projectile Path" ) PORT_DIPLOCATION("SW(C):1") + PORT_DIPSETTING( 0x01, "Homing" ) + PORT_DIPSETTING( 0x00, "Zigzag" ) +INPUT_PORTS_END + static INPUT_PORTS_START( sf2hack ) PORT_INCLUDE( sf2 ) @@ -12698,7 +12726,7 @@ GAME( 1992, sf2ceja, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, GAME( 1992, sf2cejb, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "Capcom", "Street Fighter II': Champion Edition (Japan 920513)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2cejc, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "Capcom", "Street Fighter II': Champion Edition (Japan 920803)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2bhh, sf2ce, cps1_12MHz, sf2, cps_state, init_sf2rb, ROT0, "bootleg", "Street Fighter II': Champion Edition (Hung Hsi, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2rb, sf2ce, cps1_12MHz, sf2, cps_state, init_sf2rb, ROT0, "bootleg", "Street Fighter II': Champion Edition (Rainbow, bootleg, set 1)", MACHINE_SUPPORTS_SAVE ) // 920322 - based on World version +GAME( 1992, sf2rb, sf2ce, cps1_12MHz, sf2rb, cps_state, init_sf2rb, ROT0, "bootleg", "Street Fighter II': Champion Edition (Rainbow, bootleg, set 1)", MACHINE_SUPPORTS_SAVE ) // 920322 - based on World version GAME( 1992, sf2rb2, sf2ce, cps1_12MHz, sf2, cps_state, init_sf2rb2, ROT0, "bootleg", "Street Fighter II': Champion Edition (Rainbow, bootleg, set 2)", MACHINE_SUPPORTS_SAVE ) // 920322 - based on World version GAME( 1992, sf2rb3, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (Rainbow, bootleg, set 3)", MACHINE_SUPPORTS_SAVE ) // 920322 - based on World version GAME( 1992, sf2red, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (Red Wave, bootleg)", MACHINE_SUPPORTS_SAVE ) // 920313 - based on World version diff --git a/docs/release/src/hbmame/drivers/cps1mis.cpp b/docs/release/src/hbmame/drivers/cps1mis.cpp index ba4e5e77425..06c80464756 100644 --- a/docs/release/src/hbmame/drivers/cps1mis.cpp +++ b/docs/release/src/hbmame/drivers/cps1mis.cpp @@ -607,7 +607,7 @@ static INPUT_PORTS_START( sk2h31 ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_serial_93cxx_device, cs_write) INPUT_PORTS_END -INPUT_PORTS_START( sf2cemix ) +INPUT_PORTS_START( sf2mix ) PORT_INCLUDE( sf2 ) PORT_MODIFY("DSWA") PORT_DIPNAME( 0x80, 0x80, "Win Quotes" ) PORT_DIPLOCATION("SW(A):8") @@ -2834,193 +2834,289 @@ ROM_START( sf2celw ) ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) ROM_END -ROM_START( sf2cemix96 ) +ROM_START( sf2mix96 ) ROM_REGION( CODE_SIZE, "maincpu", 0 ) - ROM_LOAD16_WORD_SWAP( "sf2cemix.8f", 0x000000, 0x80000, CRC(fef67c2f) SHA1(3efe9410c3ea5aeefc3d1291021a6b5743c206a0) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix.7f", 0x080000, 0x80000, CRC(03f5e41c) SHA1(5fea28e755af8a7d4b2f5b419ed9d5a31933bc4d) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix.6f", 0x100000, 0x80000, CRC(0f54c8f7) SHA1(37c5a42222df354861f77cd403415c47bffa773b) ) + ROM_LOAD16_WORD_SWAP( "sf2mix96.8f", 0x000000, 0x80000, CRC(fef67c2f) SHA1(3efe9410c3ea5aeefc3d1291021a6b5743c206a0) ) + ROM_LOAD16_WORD_SWAP( "sf2mix96.7f", 0x080000, 0x80000, CRC(03f5e41c) SHA1(5fea28e755af8a7d4b2f5b419ed9d5a31933bc4d) ) + ROM_LOAD16_WORD_SWAP( "sf2mix96.6f", 0x100000, 0x80000, CRC(0f54c8f7) SHA1(37c5a42222df354861f77cd403415c47bffa773b) ) ROM_REGION( 0x600000, "gfx", 0 ) - ROMX_LOAD( "sf2cemix.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.7a", 0x200000, 0x80000, CRC(19e279c7) SHA1(99ea0b7fada7c9dddaddac8c4cba877eba6c2efb) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.9a", 0x200002, 0x80000, CRC(dbfade45) SHA1(4e8754e8f652e58e88381cfeeedcc7c2860649bf) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.8a", 0x200004, 0x80000, CRC(1d1ff44a) SHA1(d6260a5cf1648ed972ee134905c0a1d90b8e3136) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.10a", 0x200006, 0x80000, CRC(40b816d8) SHA1(7771aaf5ac1c9c186995ca276c7d024cb5d4d4d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.3c", 0x400000, 0x80000, CRC(31ac767a) SHA1(73b6205a983a147e9f983a8a4c917c4c9a5c5942) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.5c", 0x400002, 0x80000, CRC(76dab841) SHA1(f1f2ef0f26a3176ffe018a583d4f2a7840507d12) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.4c", 0x400004, 0x80000, CRC(d7fc65e2) SHA1(f96eba13c56fc95a9a175f652b63f575bb72b6d2) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.6c", 0x400006, 0x80000, CRC(84ad4dcc) SHA1(8f48f265e4d689503f35eec931653392dd774049) , ROM_GROUPWORD | ROM_SKIP(6) ) - - ROM_REGION( 0x18000, "audiocpu", 0 ) - ROM_LOAD( "sf2cemix.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROMX_LOAD( "sf2mix96.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.7a", 0x200000, 0x80000, CRC(19e279c7) SHA1(99ea0b7fada7c9dddaddac8c4cba877eba6c2efb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.9a", 0x200002, 0x80000, CRC(dbfade45) SHA1(4e8754e8f652e58e88381cfeeedcc7c2860649bf) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.8a", 0x200004, 0x80000, CRC(1d1ff44a) SHA1(d6260a5cf1648ed972ee134905c0a1d90b8e3136) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.10a", 0x200006, 0x80000, CRC(40b816d8) SHA1(7771aaf5ac1c9c186995ca276c7d024cb5d4d4d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.3c", 0x400000, 0x80000, CRC(31ac767a) SHA1(73b6205a983a147e9f983a8a4c917c4c9a5c5942) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5c", 0x400002, 0x80000, CRC(76dab841) SHA1(f1f2ef0f26a3176ffe018a583d4f2a7840507d12) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4c", 0x400004, 0x80000, CRC(d7fc65e2) SHA1(f96eba13c56fc95a9a175f652b63f575bb72b6d2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6c", 0x400006, 0x80000, CRC(84ad4dcc) SHA1(8f48f265e4d689503f35eec931653392dd774049) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) ROM_CONTINUE( 0x10000, 0x08000 ) ROM_REGION( 0x40000, "oki", 0 ) - ROM_LOAD( "sf2cemix.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) - ROM_LOAD( "sf2cemix.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) ROM_REGION( 0x80, "control", 0 ) ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) ROM_END -ROM_START( sf2cemix97 ) +ROM_START( sf2mix96d ) ROM_REGION( CODE_SIZE, "maincpu", 0 ) - ROM_LOAD16_WORD_SWAP( "sf2cemix97.8f", 0x000000, 0x80000, CRC(dba189f5) SHA1(304ab5ec72e3757ed6722fc7cec4a674a6b4ee2e) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix97.7f", 0x080000, 0x80000, CRC(78517c23) SHA1(70c00975ca711472ed37051c46f61e1a25748166) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix97.6f", 0x100000, 0x80000, CRC(91a5f422) SHA1(5e7fa18211dbdf2414dd4577ed3a5ce6d423f90b) ) + ROM_LOAD16_WORD_SWAP( "sf2mix96d.8f", 0x000000, 0x80000, CRC(93e95ee7) SHA1(3d15cabfacc848c75075204ce0b28ab6b08b99bb) ) + ROM_LOAD16_WORD_SWAP( "sf2mix96d.7f", 0x080000, 0x80000, CRC(f74c6502) SHA1(ee3f00bd0ebcb74eed5d553ec79d4458aef8a99c) ) + ROM_LOAD16_WORD_SWAP( "sf2mix96d.6f", 0x100000, 0x80000, CRC(7918a0d3) SHA1(a98e39c3ad47dd820274bd6220ab75947a3a0e37) ) ROM_REGION( 0x600000, "gfx", 0 ) - ROMX_LOAD( "sf2cemix.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.7a", 0x200000, 0x80000, CRC(cd128779) SHA1(a4882f3d10cdd4cfc2dca26aed5ed050130058ea) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.9a", 0x200002, 0x80000, CRC(66dc2114) SHA1(5de16566c3d4d8a6a08d2a57b8a3d0853128837b) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.8a", 0x200004, 0x80000, CRC(bcf5a5d4) SHA1(79bf3d9aa9bf85d0893fb77c02aa74432afb4d5a) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.10a", 0x200006, 0x80000, CRC(b51db630) SHA1(4c14cfcc63dba837ef456d7256e06fda076b5df3) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.3c", 0x400000, 0x80000, CRC(c2a6eaa1) SHA1(a5dc7f6d5bb2e79e675fb7de5eb914c7977f82df) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.5c", 0x400002, 0x80000, CRC(7033d28b) SHA1(7117fcf510f79f0c045df00318ef048500b3e245) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.4c", 0x400004, 0x80000, CRC(0c300970) SHA1(3b36b9a5b9d812583acf0a0e94c22101fb035ca1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix97.6c", 0x400006, 0x80000, CRC(853ddf81) SHA1(8d6a2ffed28d87f7b86a2ec2c80fa5acc59dd998) , ROM_GROUPWORD | ROM_SKIP(6) ) - - ROM_REGION( 0x18000, "audiocpu", 0 ) - ROM_LOAD( "sf2cemix.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROMX_LOAD( "sf2mix96.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.7a", 0x200000, 0x80000, CRC(6f3264af) SHA1(9e728f51cc88a8dd0eba973e34e955172885fbef) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.9a", 0x200002, 0x80000, CRC(2e4d1ae0) SHA1(15816761840c0c90638f8c1760d48f9dabd5271e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.8a", 0x200004, 0x80000, CRC(967b5e52) SHA1(bfce50da127956433e7cd54c35b3c2bbffacc717) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.10a", 0x200006, 0x80000, CRC(beb3829d) SHA1(e364c6b86484eb92aec9f5a2ba20a23dec0542ce) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.3c", 0x400000, 0x80000, CRC(c2a6eaa1) SHA1(a5dc7f6d5bb2e79e675fb7de5eb914c7977f82df) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.5c", 0x400002, 0x80000, CRC(7033d28b) SHA1(7117fcf510f79f0c045df00318ef048500b3e245) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.4c", 0x400004, 0x80000, CRC(0c300970) SHA1(3b36b9a5b9d812583acf0a0e94c22101fb035ca1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.6c", 0x400006, 0x80000, CRC(853ddf81) SHA1(8d6a2ffed28d87f7b86a2ec2c80fa5acc59dd998) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) ROM_CONTINUE( 0x10000, 0x08000 ) ROM_REGION( 0x40000, "oki", 0 ) - ROM_LOAD( "sf2cemix.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) - ROM_LOAD( "sf2cemix.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) ROM_REGION( 0x80, "control", 0 ) ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) ROM_END -ROM_START( sf2cemix98 ) +ROM_START( sf2mix97 ) ROM_REGION( CODE_SIZE, "maincpu", 0 ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98.8f", 0x000000, 0x80000, CRC(2a7bc902) SHA1(8cdfb527eaf1d696c364ea7aa6c43d33fd3d9199) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98.7f", 0x080000, 0x80000, CRC(64d96b0e) SHA1(9c2043101cc404c8c8839cea498fc039808a0359) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98.6f", 0x100000, 0x80000, CRC(2aab40a1) SHA1(13338f0c7dbea6e584ac6ce3cf7f125a69c88a0a) ) + ROM_LOAD16_WORD_SWAP( "sf2mix97.8f", 0x000000, 0x80000, CRC(dba189f5) SHA1(304ab5ec72e3757ed6722fc7cec4a674a6b4ee2e) ) + ROM_LOAD16_WORD_SWAP( "sf2mix97.7f", 0x080000, 0x80000, CRC(78517c23) SHA1(70c00975ca711472ed37051c46f61e1a25748166) ) + ROM_LOAD16_WORD_SWAP( "sf2mix97.6f", 0x100000, 0x80000, CRC(91a5f422) SHA1(5e7fa18211dbdf2414dd4577ed3a5ce6d423f90b) ) ROM_REGION( 0x600000, "gfx", 0 ) - ROMX_LOAD( "sf2cemix.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) - - ROM_REGION( 0x18000, "audiocpu", 0 ) - ROM_LOAD( "sf2cemix.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROMX_LOAD( "sf2mix96.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix97.7a", 0x200000, 0x80000, CRC(cd128779) SHA1(a4882f3d10cdd4cfc2dca26aed5ed050130058ea) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix97.9a", 0x200002, 0x80000, CRC(66dc2114) SHA1(5de16566c3d4d8a6a08d2a57b8a3d0853128837b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix97.8a", 0x200004, 0x80000, CRC(bcf5a5d4) SHA1(79bf3d9aa9bf85d0893fb77c02aa74432afb4d5a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix97.10a", 0x200006, 0x80000, CRC(b51db630) SHA1(4c14cfcc63dba837ef456d7256e06fda076b5df3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.3c", 0x400000, 0x80000, CRC(c2a6eaa1) SHA1(a5dc7f6d5bb2e79e675fb7de5eb914c7977f82df) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.5c", 0x400002, 0x80000, CRC(7033d28b) SHA1(7117fcf510f79f0c045df00318ef048500b3e245) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.4c", 0x400004, 0x80000, CRC(0c300970) SHA1(3b36b9a5b9d812583acf0a0e94c22101fb035ca1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96d.6c", 0x400006, 0x80000, CRC(853ddf81) SHA1(8d6a2ffed28d87f7b86a2ec2c80fa5acc59dd998) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) ROM_CONTINUE( 0x10000, 0x08000 ) ROM_REGION( 0x40000, "oki", 0 ) - ROM_LOAD( "sf2cemix.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) - ROM_LOAD( "sf2cemix.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) ROM_REGION( 0x80, "control", 0 ) ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) ROM_END -ROM_START( sf2cemix98a ) +ROM_START( sf2mix98 ) ROM_REGION( CODE_SIZE, "maincpu", 0 ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98a.8f", 0x000000, 0x80000, CRC(9218219f) SHA1(e8c4f137a53114cfda05f4fd2abe801669d1c647) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98a.7f", 0x080000, 0x80000, CRC(5e3c3d10) SHA1(8765860b2995772df981870c885b532bb047b55f) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98a.6f", 0x100000, 0x80000, CRC(0abf92b1) SHA1(bc3a963e6a6d8467f26a24baf17ee5d20ae941f0) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98.8f", 0x000000, 0x80000, CRC(2a7bc902) SHA1(8cdfb527eaf1d696c364ea7aa6c43d33fd3d9199) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98.7f", 0x080000, 0x80000, CRC(64d96b0e) SHA1(9c2043101cc404c8c8839cea498fc039808a0359) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98.6f", 0x100000, 0x80000, CRC(2aab40a1) SHA1(13338f0c7dbea6e584ac6ce3cf7f125a69c88a0a) ) ROM_REGION( 0x600000, "gfx", 0 ) - ROMX_LOAD( "sf2cemix.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) - - ROM_REGION( 0x18000, "audiocpu", 0 ) - ROM_LOAD( "sf2cemix.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROMX_LOAD( "sf2mix96.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) ROM_CONTINUE( 0x10000, 0x08000 ) ROM_REGION( 0x40000, "oki", 0 ) - ROM_LOAD( "sf2cemix.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) - ROM_LOAD( "sf2cemix.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) ROM_REGION( 0x80, "control", 0 ) ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) ROM_END -ROM_START( sf2cemix98b ) +ROM_START( sf2mix98a ) ROM_REGION( CODE_SIZE, "maincpu", 0 ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98b.8f", 0x000000, 0x80000, CRC(35639930) SHA1(30fa420752348c3d5ce19758c2db20a7a55b1d27) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98b.7f", 0x080000, 0x80000, CRC(3b112eba) SHA1(5a015db76c9b024e64df1471a7d8ffdd4cc4c011) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98b.6f", 0x100000, 0x80000, CRC(fef5e69a) SHA1(064145927ec976b3b8261c4d7e54a6532de1528b) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98a.8f", 0x000000, 0x80000, CRC(9218219f) SHA1(e8c4f137a53114cfda05f4fd2abe801669d1c647) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98a.7f", 0x080000, 0x80000, CRC(5e3c3d10) SHA1(8765860b2995772df981870c885b532bb047b55f) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98a.6f", 0x100000, 0x80000, CRC(0abf92b1) SHA1(bc3a963e6a6d8467f26a24baf17ee5d20ae941f0) ) ROM_REGION( 0x600000, "gfx", 0 ) - ROMX_LOAD( "sf2cemix.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) - - ROM_REGION( 0x18000, "audiocpu", 0 ) - ROM_LOAD( "sf2cemix.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROMX_LOAD( "sf2mix96.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) ROM_CONTINUE( 0x10000, 0x08000 ) ROM_REGION( 0x40000, "oki", 0 ) - ROM_LOAD( "sf2cemix.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) - ROM_LOAD( "sf2cemix.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) ROM_REGION( 0x80, "control", 0 ) ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) ROM_END -ROM_START( sf2cemix98c ) +ROM_START( sf2mix98b ) ROM_REGION( CODE_SIZE, "maincpu", 0 ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98c.8f", 0x000000, 0x80000, CRC(ed5d932f) SHA1(0a9bfae7cdbbf9cc848595d427252cd69fe865eb) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98c.7f", 0x080000, 0x80000, CRC(27b92198) SHA1(f45ec34003d83ce09cce30662acd879689c114bd) ) - ROM_LOAD16_WORD_SWAP( "sf2cemix98c.6f", 0x100000, 0x80000, CRC(50cf4959) SHA1(9996785902a157c54f4c0d0e64aeed2345b7e8df) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98b.8f", 0x000000, 0x80000, CRC(35639930) SHA1(30fa420752348c3d5ce19758c2db20a7a55b1d27) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98b.7f", 0x080000, 0x80000, CRC(3b112eba) SHA1(5a015db76c9b024e64df1471a7d8ffdd4cc4c011) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98b.6f", 0x100000, 0x80000, CRC(fef5e69a) SHA1(064145927ec976b3b8261c4d7e54a6532de1528b) ) ROM_REGION( 0x600000, "gfx", 0 ) - ROMX_LOAD( "sf2cemix.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) - ROMX_LOAD( "sf2cemix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) - - ROM_REGION( 0x18000, "audiocpu", 0 ) - ROM_LOAD( "sf2cemix.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROMX_LOAD( "sf2mix96.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) ROM_CONTINUE( 0x10000, 0x08000 ) ROM_REGION( 0x40000, "oki", 0 ) - ROM_LOAD( "sf2cemix.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) - ROM_LOAD( "sf2cemix.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + + ROM_REGION( 0x80, "control", 0 ) + ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) +ROM_END + +ROM_START( sf2mix98c ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sf2mix98c.8f", 0x000000, 0x80000, CRC(ed5d932f) SHA1(0a9bfae7cdbbf9cc848595d427252cd69fe865eb) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98c.7f", 0x080000, 0x80000, CRC(27b92198) SHA1(f45ec34003d83ce09cce30662acd879689c114bd) ) + ROM_LOAD16_WORD_SWAP( "sf2mix98c.6f", 0x100000, 0x80000, CRC(50cf4959) SHA1(9996785902a157c54f4c0d0e64aeed2345b7e8df) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "sf2mix96.3a", 0x000000, 0x80000, CRC(a1d1a20f) SHA1(76b1291609e595e876cbfc5c8d9f5cd46d3eee34) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.5a", 0x000002, 0x80000, CRC(0708bb01) SHA1(d4ac64909bf6d6f1202ce6eae69b641b754e0d6b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.4a", 0x000004, 0x80000, CRC(42e159b9) SHA1(2bced091fedd026250fe54b27097d777c0608660) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix96.6a", 0x000006, 0x80000, CRC(cac353a3) SHA1(4b1095ed9b3bdbf5f0b45deea1a3892a047aed67) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.7a", 0x200000, 0x80000, CRC(44788fc3) SHA1(41e030011cb79e9d48321a3840a5af59125e90d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.9a", 0x200002, 0x80000, CRC(db3e33f9) SHA1(d84fd25a6b72b1749f16bc3b24045bd631aa5c3e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.8a", 0x200004, 0x80000, CRC(7f757d22) SHA1(5dcbabdf287b8b195032c26044a1b730afc737d1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.10a", 0x200006, 0x80000, CRC(7e2c6383) SHA1(7d184cc5257eaa94ff582ca64f5d56d99c930fa9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + + ROM_REGION( 0x80, "control", 0 ) + ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) +ROM_END + +ROM_START( sf2mix99 ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sf2mix99.8f", 0x000000, 0x80000, CRC(70248c41) SHA1(158b135ebb6f7fcd707169499222e99611338ada) ) + ROM_LOAD16_WORD_SWAP( "sf2mix99.7f", 0x080000, 0x80000, CRC(89c4cb6f) SHA1(6a74e85e08f5b2099982f954454e45fb9be20270) ) + ROM_LOAD16_WORD_SWAP( "sf2mix99.6f", 0x100000, 0x80000, CRC(6e0610ea) SHA1(7074687d28fda1b83714e2a5aeedc6c1b79183e2) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "sf2mix99.3a", 0x000000, 0x80000, CRC(a8f70643) SHA1(0d3ab7fe1d0d15397a79c9bd304f22593a9b8d87) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.5a", 0x000002, 0x80000, CRC(f73f1913) SHA1(b36db11822f5601726892726f8505b7e8b676ab6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.4a", 0x000004, 0x80000, CRC(a80234b4) SHA1(e8c3e8030fa2ce69465d97ccb02de622e9214b01) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.6a", 0x000006, 0x80000, CRC(4d910b53) SHA1(1f28fe150ddf77c91c8ae998ee52e068327335d5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.7a", 0x200000, 0x80000, CRC(10dbab9f) SHA1(7afd95e770b12b3e57c81b26b71aab9dd426f78f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.9a", 0x200002, 0x80000, CRC(3f368031) SHA1(d5fd60571bce28efad593c9ded2d4b30af5ecb4b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.8a", 0x200004, 0x80000, CRC(94bf5b35) SHA1(45b5dcbc23cec70ed8d8e7a364d3df46efb8846b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.10a", 0x200006, 0x80000, CRC(ae59521a) SHA1(cf0dfbb58b494b1695661f000cbfaa31f783a203) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) + + ROM_REGION( 0x80, "control", 0 ) + ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) +ROM_END + +ROM_START( sf2mix99a ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sf2mix99a.8f", 0x000000, 0x80000, CRC(ac0ea126) SHA1(8a5251e0fb4b11c0afc27f17abfc4949bae8f0cc) ) + ROM_LOAD16_WORD_SWAP( "sf2mix99a.7f", 0x080000, 0x80000, CRC(aac9a601) SHA1(252baf463c09c8dfb4f3e5464e98a8e7840d59ff) ) + ROM_LOAD16_WORD_SWAP( "sf2mix99a.6f", 0x100000, 0x80000, CRC(60c3e417) SHA1(24d0bbdd4d7e135b4200e944483ec8e9c02af568) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "sf2mix99.3a", 0x000000, 0x80000, CRC(a8f70643) SHA1(0d3ab7fe1d0d15397a79c9bd304f22593a9b8d87) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.5a", 0x000002, 0x80000, CRC(f73f1913) SHA1(b36db11822f5601726892726f8505b7e8b676ab6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.4a", 0x000004, 0x80000, CRC(a80234b4) SHA1(e8c3e8030fa2ce69465d97ccb02de622e9214b01) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.6a", 0x000006, 0x80000, CRC(4d910b53) SHA1(1f28fe150ddf77c91c8ae998ee52e068327335d5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.7a", 0x200000, 0x80000, CRC(10dbab9f) SHA1(7afd95e770b12b3e57c81b26b71aab9dd426f78f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.9a", 0x200002, 0x80000, CRC(3f368031) SHA1(d5fd60571bce28efad593c9ded2d4b30af5ecb4b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.8a", 0x200004, 0x80000, CRC(94bf5b35) SHA1(45b5dcbc23cec70ed8d8e7a364d3df46efb8846b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix99.10a", 0x200006, 0x80000, CRC(ae59521a) SHA1(cf0dfbb58b494b1695661f000cbfaa31f783a203) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.3c", 0x400000, 0x80000, CRC(d4e75239) SHA1(b67ccc61eac8e2807b0bd2c0983c9a0047e90df3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.5c", 0x400002, 0x80000, CRC(c66dc52c) SHA1(b550c22d5f1da7a7a82bffa7cf31dc3c5c1f4ede) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.4c", 0x400004, 0x80000, CRC(416149f2) SHA1(66fa6e155d0dcc2acc2b3a856d0063baf8db9105) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2mix98.6c", 0x400006, 0x80000, CRC(7316d4bc) SHA1(6fe91a43946ea13dbff47f15dbd606504dac52ad) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "sf2mix96.11a", 0x00000, 0x08000, CRC(a379fdc5) SHA1(e9de38c13bd665698528bc102b1b16e9bdcae65b) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) + ROM_LOAD( "sf2mix96.11c", 0x00000, 0x20000, CRC(6aa5d7fa) SHA1(87cfea3a9f62653fa236f49b5b25b927cff30a02) ) + ROM_LOAD( "sf2mix96.12c", 0x20000, 0x20000, CRC(f92f5a4f) SHA1(3f1d477ab0299d2783231c3bd9983513a85b2fe6) ) ROM_REGION( 0x80, "control", 0 ) ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) @@ -3327,6 +3423,38 @@ ROM_START( sf2r3 ) ROM_LOAD( "sf2.key", 0x00, 0x80, CRC(3cf6f06f) SHA1(7512a185d461f2b37edfc19e31a45d53600fbe44) ) ROM_END +ROM_START( sf2rbpr ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD( "sf2d__23.rom", 0x000000, 0x80000, CRC(450532b0) SHA1(14d5ff44ce97247ef4c42147157856d16c5fb4b8) ) + ROM_LOAD16_WORD( "sf2rbpr.22", 0x080000, 0x80000, CRC(20fd1382) SHA1(7b32b295ac4e61a7f7ae395d9dfc10d80747d833) ) + ROM_LOAD16_WORD_SWAP( "s92_21a.bin", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "s92_01.bin", 0x000000, 0x80000, CRC(03b0d852) SHA1(f370f25c96ad2b94f8c53d6b7139100285a25bef) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_02.bin", 0x000002, 0x80000, CRC(840289ec) SHA1(2fb42a242f60ba7e74009b5a90eb26e035ba1e82) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_03.bin", 0x000004, 0x80000, CRC(cdb5f027) SHA1(4c7d944fef200fdfcaf57758b901b5511188ed2e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_04.bin", 0x000006, 0x80000, CRC(e2799472) SHA1(27d3796429338d82a8de246a0ea06dd487a87768) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_05.bin", 0x200000, 0x80000, CRC(ba8a2761) SHA1(4b696d66c51611e43522bed752654314e76d33b6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_06.bin", 0x200002, 0x80000, CRC(e584bfb5) SHA1(ebdf1f5e2638eed3a65dda82b1ed9151a355f4c9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_07.bin", 0x200004, 0x80000, CRC(21e3f87d) SHA1(4a4961bb68c3a1ce15f9d393d9c03ecb2466cc29) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_08.bin", 0x200006, 0x80000, CRC(befc47df) SHA1(520390420da3a0271ba90b0a933e65143265e5cf) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_10.bin", 0x400000, 0x80000, CRC(960687d5) SHA1(2868c31121b1c7564e9767b9a19cdbf655c7ed1d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_11.bin", 0x400002, 0x80000, CRC(978ecd18) SHA1(648a59706b93c84b4206a968ecbdc3e834c476f6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_12.bin", 0x400004, 0x80000, CRC(d6ec9a0a) SHA1(ed6143f8737013b6ef1684e37c05e037e7a80dae) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92_13.bin", 0x400006, 0x80000, CRC(ed2c67f6) SHA1(0083c0ffaf6fe7659ff0cf822be4346cd6e61329) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) + ROM_LOAD( "s92_09.bin", 0x00000, 0x08000, CRC(08f6b60e) SHA1(8258fcaca4ac419312531eec67079b97f471179c) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) + ROM_LOAD( "s92_18.bin", 0x00000, 0x20000, CRC(7f162009) SHA1(346bf42992b4c36c593e21901e22c87ae4a7d86d) ) + ROM_LOAD( "s92_19.bin", 0x20000, 0x20000, CRC(beade53f) SHA1(277c397dc12752719ec6b47d2224750bd1c07f79) ) + + ROM_REGION( 0x80, "control", 0 ) + ROM_LOAD ( "sf2ce.key", 0x00, 0x80, CRC(35b37429) SHA1(b372cce106c0900554735c207fb333ac93554ec2) ) +ROM_END + ROM_START( sf2sl73a ) ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sf2sl73a.23", 0x000000, 0x80000, CRC(190f5419) SHA1(7fc7f3b6788d25b190bda3b3b6cf76a396d7d586) ) @@ -6219,12 +6347,6 @@ GAME( 2009, sf2cehk, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, GAME( 2009, sf2cehp, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "Pipi899", "Street Fighter II': Champion Edition (Moves hack 2009-01-10)", MACHINE_SUPPORTS_SAVE ) GAME( 2009, sf2cejem, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "Blackheart", "Street Fighter II': Champion Edition (Easy Moves 2009-07-30)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, sf2celw, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "A Goon", "Street Fighter II': Champion Edition (Lowtax is a Wifebeater parody)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, sf2cemix96, sf2ce, cps1_12MHz, sf2cemix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II': Champion Edition (Mix 0.96)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, sf2cemix97, sf2ce, cps1_12MHz, sf2cemix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II': Champion Edition (Mix 0.97)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, sf2cemix98, sf2ce, cps1_12MHz, sf2cemix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II': Champion Edition (Mix 0.98)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, sf2cemix98a, sf2ce, cps1_12MHz, sf2cemix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II': Champion Edition (Mix 0.98a)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, sf2cemix98b, sf2ce, cps1_12MHz, sf2cemix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II': Champion Edition (Mix 0.98b)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, sf2cemix98c, sf2ce, cps1_12MHz, sf2cemix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II': Champion Edition (Mix 0.98c)", MACHINE_SUPPORTS_SAVE ) GAME( 2014, sf2jbh, sf2, cps1_10MHz, sf2j, cps_state, init_cps1, ROT0, "Yumeji", "Street Fighter II: The World Warrior (Edition Plus 2014)", MACHINE_SUPPORTS_SAVE ) GAME( 2013, sf2koryuh, sf2ce, cps1_12MHz, sf2hack, cps_state, init_cps1, ROT0, "TT", "Street Fighter II': Champion Edition (Koryu)", MACHINE_SUPPORTS_SAVE ) // 811102 !!! - based on World version GAME( 1992, sf2h9, sf2ce, cps1_12MHz, sf2, cps_state, init_sf2h9, ROT0, "Mega Co", "Street Fighter II': Champion Edition (bootleg set 2, 920313 etc)", MACHINE_SUPPORTS_SAVE ) @@ -6232,8 +6354,18 @@ GAME( 1992, sf2h10, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, GAME( 1992, sf2h11, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (920322 Japan bootleg set 1)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2h12, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (Rainbow bootleg set 5, 920322 Japan)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2h13, sf2ce, cps1_12MHz, sf2j, cps_state, init_sf2h13, ROT0, "hack", "Street Fighter II' Turbo: Hyper Fighting (bootleg set 1, 921209 Japan)", MACHINE_SUPPORTS_SAVE ) // bad tile for Blanka on player select screen +GAME( 2020, sf2mix96, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.96)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix96d, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.96d)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix97, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.97)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix98, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.98)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix98a, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.98a)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix98b, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.98b)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix98c, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.98c)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix99, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.99)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, sf2mix99a, sf2ce, cps1_12MHz, sf2mix, cps_state, init_cps1, ROT0, "Zero800", "Street Fighter II: Champion Edition (Mix 0.99a)", MACHINE_SUPPORTS_SAVE ) GAME( 2012, sf2pun, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "Drakon", "Street Fighter II': Champion Edition (Punishment Simplified Edition v1 Final 2012-04-10)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2r3, sf2, cps1_10MHz, sf2j, cps_state, init_cps1, ROT0, "hack", "Street Fighter II': The World Warrior (3-region version)", MACHINE_SUPPORTS_SAVE ) +GAME( 2021, sf2rbpr, sf2ce, cps1_12MHz, sf2rb, cps_state, init_cps1, ROT0, "Rotwang", "Street Fighter II': Champion Edition (Rainbow, bootleg, set 1, protection removed)", MACHINE_SUPPORTS_SAVE ) GAME( 2013, sf2sl73a, sf2ce, cps1_12MHz, sf2, cps_state, init_cps1, ROT0, "Drakon", "Street Fighter II': Champion Edition (Sheng Long v7.3a)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2th, sf2ce, cps1_12MHz, sf2hack, cps_state, init_sf2hack, ROT0, "hack", "Street Fighter II': Champion Edition (Turbo set 1, bootleg)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2tha, sf2ce, cps1_12MHz, sf2hack, cps_state, init_sf2hack, ROT0, "hack", "Street Fighter II': Champion Edition (Turbo set 2, bootleg)", MACHINE_SUPPORTS_SAVE ) diff --git a/docs/release/src/hbmame/drivers/ngrbff.cpp b/docs/release/src/hbmame/drivers/ngrbff.cpp index 856ace9e796..c39b4240f18 100644 --- a/docs/release/src/hbmame/drivers/ngrbff.cpp +++ b/docs/release/src/hbmame/drivers/ngrbff.cpp @@ -5,7 +5,7 @@ #include "includes/neogeo.h" -ROM_START( fatfurspb ) +ROM_START( fatfurspb2 ) ROM_REGION( 0x180000, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "058b.p1", 0x000000, 0x100000, CRC(1222cf0a) SHA1(dab98ef9464e8759433958663f2625912295822b) ) ROM_LOAD16_WORD_SWAP( "058.p2", 0x100000, 0x080000, CRC(d7c71a6b) SHA1(b3428063031a2e5857da40a5d2ffa87fb550c1bb) ) @@ -655,7 +655,7 @@ ROM_START( rbff2y ) /* Real Bout Fatal Fury 2 - Hack by Ydmis - (Player 2 goes t ROM_LOAD16_BYTE( "240.c6", 0x2000001, 0x800000, CRC(4609e507) SHA1(bb17f50a377dddb77c1eeda5944a7bcbf0cca5f7) ) ROM_END -GAME( 1993, fatfurspb, fatfursp, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "Dodowang[EGCG]", "Fatal Fury Special (Optional Hidden Characters First Rdition)", MACHINE_SUPPORTS_SAVE ) +GAME( 1993, fatfurspb2, fatfursp, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "Dodowang[EGCG]", "Fatal Fury Special (Optional Hidden Characters First Rdition)", MACHINE_SUPPORTS_SAVE ) GAME( 1993, fatfurspbs, fatfursp, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "Yumeji", "Fatal Fury Special (Optional Hidden Character Third Edition)", MACHINE_SUPPORTS_SAVE ) GAME( 1993, fatfurspbt, fatfursp, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "PPX team", "Fatal Fury Special (BT Version PPX)", MACHINE_SUPPORTS_SAVE ) GAME( 1993, fatfurspeh, fatfursp, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "Dodowang", "Fatal Fury Special (Optional Hidden Character Second Edition)", MACHINE_SUPPORTS_SAVE ) diff --git a/docs/release/src/hbmame/drivers/scramble.cpp b/docs/release/src/hbmame/drivers/scramble.cpp new file mode 100644 index 00000000000..5e03e87082d --- /dev/null +++ b/docs/release/src/hbmame/drivers/scramble.cpp @@ -0,0 +1,26 @@ +// license:BSD-3-Clause +// copyright-holders:Robbbert +#include "../mame/drivers/scramble.cpp" + +ROM_START( troopyx ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "ic2cb.bin", 0x0000, 0x1000, CRC(a1798961) SHA1(45a1f6183016229fced3b459c95c99d83408151a) ) + ROM_LOAD( "ic2eb.bin", 0x1000, 0x1000, CRC(7f3572f9) SHA1(2f89f743a32378ed4ac4184627ed9be007c3334a) ) + ROM_LOAD( "ic2fb.bin", 0x2000, 0x1000, CRC(42e666fd) SHA1(caa6a2b07098ef1d6203309ddd3a591194b4ac70) ) + + ROM_REGION( 0x10000, "audiocpu", 0 ) + ROM_LOAD( "ic5c.bin", 0x0000, 0x1000, CRC(af42a371) SHA1(edacbb29df34fdf400a5c726d851af1479a34c70) ) + ROM_LOAD( "ic5d.bin", 0x1000, 0x1000, CRC(862b8902) SHA1(91dcbc634f7c7ed78dfbd0be5cf1e0631429cfbf) ) + ROM_LOAD( "ic5e.bin", 0x2000, 0x1000, CRC(a0396cc8) SHA1(c8266b58b144a4bc564f3a2503d5b953c0ba6ca7) ) + + ROM_REGION( 0x1000, "gfx1", 0 ) + ROM_LOAD( "troopyx.ic5h", 0x0000, 0x0800, CRC(9a40b385) SHA1(4a3b3cafe5c064f3b485a769c045eba5fc7c12ce) ) + ROM_LOAD( "ic5f_neu.bin", 0x0800, 0x0800, CRC(cbbfefc2) SHA1(2378949275b8d3fc69551b00d9b2c654b91fd780) ) + + ROM_REGION( 0x0020, "proms", 0 ) + ROM_LOAD( "82s123", 0x0000, 0x0020, CRC(4e3caeab) SHA1(a25083c3e36d28afdefe4af6e6d4f3155e303625) ) +ROM_END + +GAME( 2020, troopyx, mrkougar, mrkougb, mrkougar, scramble_state, init_mrkougar, ROT90, "chaneman", "Troopy (fixed graphics)", MACHINE_SUPPORTS_SAVE ) + + diff --git a/docs/release/src/hbmame/drivers/segahang.cpp b/docs/release/src/hbmame/drivers/segahang.cpp new file mode 100644 index 00000000000..6228a6c2de6 --- /dev/null +++ b/docs/release/src/hbmame/drivers/segahang.cpp @@ -0,0 +1,74 @@ +// license:BSD-3-Clause +// copyright-holders:Robbbert +#include "../mame/drivers/segahang.cpp" + + +// Credit to Victor Fernandez (City Game) +ROM_START( endurorrc ) + ROM_REGION( 0x40000, "maincpu", 0 ) + ROM_LOAD16_BYTE( "dpr-7640a.ic97", 0x00000, 0x8000, CRC(259bd1d2) SHA1(4e579ae60323012e62a46d01903c2d0ccde6f757) ) // marked DPR7640A + ROM_LOAD16_BYTE( "dpr-7636a.ic84", 0x00001, 0x8000, CRC(fd10fc0f) SHA1(4d19328308cba3590c930287f38ecf44dc61d4e4) ) // marked DPR7636A + ROM_LOAD16_BYTE( "bootleg_epr-7641.ic98", 0x10000, 0x8000, CRC(2153154a) SHA1(145d8ed59812d26ca412a01ae77cd7872adaba5a) ) // marked DPR7641 + ROM_LOAD16_BYTE( "bootleg_epr-7637.ic85", 0x10001, 0x8000, CRC(0a97992c) SHA1(7a6fc8c575637107ed07a30f6f0f8cb8877cbb43) ) // marked DPR7637 + ROM_LOAD16_BYTE( "bootleg_epr-7642.ic99", 0x20000, 0x8000, CRC(f6391091) SHA1(3160b342b6447cccf67c932c7c1a42354cdfb058) ) // marked DPR7642 + ROM_LOAD16_BYTE( "bootleg_epr-7638.ic86", 0x20001, 0x8000, CRC(79b367d7) SHA1(e901036b1b9fac460415d513837c8f852f7750b0) ) // marked DPR7638 + + ROM_REGION( 0x40000, "subcpu", 0 ) + ROM_LOAD16_BYTE("epr-7634a.ic54", 0x0000, 0x8000, CRC(aec83731) SHA1(3fe2d0f1a8806b850836741d664c07754a701459) ) + ROM_LOAD16_BYTE("epr-7635a.ic67", 0x0001, 0x8000, CRC(b2fce96f) SHA1(9d6c1a7c2bdbf86430b849a5f6c6fdb5595dc91c) ) + + ROM_REGION( 0x18000, "gfx1", 0 ) + ROM_LOAD( "epr-7644.ic31", 0x00000, 0x08000, CRC(e7a4ff90) SHA1(06d18470019041e32be9a969870cd995de626cd6) ) + ROM_LOAD( "epr-7645.ic46", 0x08000, 0x08000, CRC(4caa0095) SHA1(a24c741cdca0542e462f17ff94f132c62710e198) ) + ROM_LOAD( "epr-7646.ic60", 0x10000, 0x08000, CRC(7e432683) SHA1(c8249b23fce77eb456166161c2d9aa34309efe31) ) + + ROM_REGION32_LE( 0x100000, "sprites", 0 ) + ROM_LOAD32_BYTE( "epr-7678.ic36", 0x00000, 0x8000, CRC(9fb5e656) SHA1(264b0ad017eb0fc7e0b542e6dd160ba964c100fd) ) + ROM_LOAD32_BYTE( "epr-7670.ic28", 0x00001, 0x8000, CRC(dbbe2f6e) SHA1(310797a61f91d6866e728e0da3b30828e06d1b52) ) + ROM_LOAD32_BYTE( "epr-7662.ic18", 0x00002, 0x8000, CRC(cb0c13c5) SHA1(856d1234fd8f8146e20fe6c65c0a535b7b7512cd) ) + ROM_LOAD32_BYTE( "epr-7654.ic8", 0x00003, 0x8000, CRC(2db6520d) SHA1(d16739e84316b4bd26963b729208169bbf01f499) ) + ROM_LOAD32_BYTE( "epr-7677.ic35", 0x20000, 0x8000, CRC(7764765b) SHA1(62543130816c084d292f229a15b3ce1305c99bb3) ) + ROM_LOAD32_BYTE( "epr-7669.ic27", 0x20001, 0x8000, CRC(f9525faa) SHA1(fbe2f67a9baee069dbca26a669d0a263bcca0d09) ) + ROM_LOAD32_BYTE( "epr-7661.ic17", 0x20002, 0x8000, CRC(fe93a79b) SHA1(591025a371a451c9cddc8c7480c9841a18bb9a7f) ) + ROM_LOAD32_BYTE( "epr-7653.ic7", 0x20003, 0x8000, CRC(46a52114) SHA1(d646ab03c1985953401619457d03072833edc6c7) ) + ROM_LOAD32_BYTE( "epr-7676.ic34", 0x40000, 0x8000, CRC(2e42e0d4) SHA1(508f6f89e681b59272884ba129a5c6ffa1b6ba05) ) + ROM_LOAD32_BYTE( "epr-7668.ic26", 0x40001, 0x8000, CRC(e115ce33) SHA1(1af591bc1567b89d0de399e4a02d896fba938bab) ) + ROM_LOAD32_BYTE( "epr-7660.ic16", 0x40002, 0x8000, CRC(86dfbb68) SHA1(a05ac16fbe3aaf34dd46229d4b71fc1f72a3a556) ) + ROM_LOAD32_BYTE( "epr-7652.ic6", 0x40003, 0x8000, CRC(2880cfdb) SHA1(94b78d78d82c324ca108970d8689f1d6b2ca8a24) ) + ROM_LOAD32_BYTE( "epr-7675.ic33", 0x60000, 0x8000, CRC(05cd2d61) SHA1(51688a5a9bc4da3f88ce162ff30affe8c6d3d0c8) ) + ROM_LOAD32_BYTE( "epr-7667.ic25", 0x60001, 0x8000, CRC(923bde9d) SHA1(7722a7fdbf45f862f1011d1afae8dedd5885bf52) ) + ROM_LOAD32_BYTE( "epr-7659.ic15", 0x60002, 0x8000, CRC(629dc8ce) SHA1(4af2a53678890b02922dee54f7cd3c5550001572) ) + ROM_LOAD32_BYTE( "epr-7651.ic5", 0x60003, 0x8000, CRC(d7902bad) SHA1(f4872d1a42dcf7d5dbdbc1233606a706b39478d7) ) + ROM_LOAD32_BYTE( "epr-7674.ic32", 0x80000, 0x8000, CRC(1a129acf) SHA1(ebaa60ccedc95c58af3ce99105b924b303827f6e) ) + ROM_LOAD32_BYTE( "epr-7666.ic24", 0x80001, 0x8000, CRC(23697257) SHA1(19453b14e8e6789e4c48a80d1b83dbaf37fbdceb) ) + ROM_LOAD32_BYTE( "epr-7658.ic14", 0x80002, 0x8000, CRC(1677f24f) SHA1(4786996cc8a04344e82ec9be7c4e7c8a005914a3) ) + ROM_LOAD32_BYTE( "epr-7650.ic4", 0x80003, 0x8000, CRC(642635ec) SHA1(e42bbae178e9a139325633e8c85a606c91e39e36) ) + ROM_LOAD32_BYTE( "epr-7673.ic31", 0xa0000, 0x8000, CRC(82602394) SHA1(d714f397f33a52429f394fc4c403d39be7911ccf) ) + ROM_LOAD32_BYTE( "epr-7665.ic23", 0xa0001, 0x8000, CRC(12d77607) SHA1(5b5d25646336a8ceae449d5b7a6b70372d81dd8b) ) + ROM_LOAD32_BYTE( "epr-7657.ic13", 0xa0002, 0x8000, CRC(8158839c) SHA1(f22081caf11d6b57488c969b5935cd4686e11197) ) + ROM_LOAD32_BYTE( "epr-7649.ic3", 0xa0003, 0x8000, CRC(4edba14c) SHA1(db0aab94de50f8f9501b7afd2fff70fb0a6b2b36) ) + ROM_LOAD32_BYTE( "epr-7672.ic30", 0xc0000, 0x8000, CRC(d11452f7) SHA1(f68183053005a26c0014050592bad6d63325895e) ) + ROM_LOAD32_BYTE( "epr-7664.ic22", 0xc0001, 0x8000, CRC(0df2cfad) SHA1(d62d12922be921967da37fbc624aaed72c4a2a98) ) + ROM_LOAD32_BYTE( "epr-7656.ic12", 0xc0002, 0x8000, CRC(6c741272) SHA1(ccaedda1436ddc339377e610d51e13726bb6c7eb) ) + ROM_LOAD32_BYTE( "epr-7648.ic2", 0xc0003, 0x8000, CRC(983ea830) SHA1(9629476a300ba711893775ca94dce81a00afd246) ) + ROM_LOAD32_BYTE( "epr-7671.ic29", 0xe0000, 0x8000, CRC(b0c7fdc6) SHA1(c9e0993fed36526e0e46ab2da9413af24b96cae8) ) + ROM_LOAD32_BYTE( "epr-7663.ic21", 0xe0001, 0x8000, CRC(2b0b8f08) SHA1(14aa1e6866f1c23c9ff271e8f216f6ecc21601ab) ) + ROM_LOAD32_BYTE( "epr-7655.ic11", 0xe0002, 0x8000, CRC(3433fe7b) SHA1(636449a0707d6629bf6ea503cfb52ad24af1c017) ) + ROM_LOAD32_BYTE( "epr-7647.ic1", 0xe0003, 0x8000, CRC(2e7fbec0) SHA1(a59ec5fc3341833671fb948cd21b47f3a49db538) ) + + ROM_REGION( 0x8000, "segaic16road", 0 ) + ROM_LOAD( "epr-7633.ic1", 0x0000, 0x8000, CRC(6f146210) SHA1(2f58f0c3563b434ed02700b9ca1545a696a5716e) ) + + ROM_REGION( 0x10000, "soundcpu", 0 ) + ROM_LOAD( "epr-7682.ic58", 0x00000, 0x8000, CRC(c4efbf48) SHA1(2bcbc4757d98f291fcaec467abc36158b3f59be3) ) + + ROM_REGION( 0x20000, "pcm", 0 ) + ROM_LOAD( "epr-7681.ic8", 0x00000, 0x8000, CRC(bc0c4d12) SHA1(3de71bde4c23e3c31984f20fc4bc7e221354c56f) ) + ROM_LOAD( "epr-7680.ic7", 0x10000, 0x8000, CRC(627b3c8c) SHA1(806fe7dce619ad19c09178061be4607d2beba14d) ) + + ROM_REGION( 0x2000, "sprites:zoom", 0 ) + ROM_LOAD( "epr-6844.ic123", 0x0000, 0x2000, CRC(e3ec7bd6) SHA1(feec0fe664e16fac0fde61cf64b401b9b0575323) ) +ROM_END + +GAME( 2018, endurorrc, enduror, endurord, enduror, segahang_state, init_enduror, ROT0, "RetroClinic", "Enduro Racer (retroclinic bootleg)", 0 ) + diff --git a/docs/release/src/hbmame/hbmame.lst b/docs/release/src/hbmame/hbmame.lst index b8dad5a3015..2c7cfeef3a9 100644 --- a/docs/release/src/hbmame/hbmame.lst +++ b/docs/release/src/hbmame/hbmame.lst @@ -304,12 +304,6 @@ sf2cehp sf2cehk sf2cejem sf2celw -sf2cemix96 -sf2cemix97 -sf2cemix98 -sf2cemix98a -sf2cemix98b -sf2cemix98c sf2jbh // sf2jbh2014 sf2koryuh sf2h9 @@ -317,8 +311,18 @@ sf2h10 sf2h11 sf2h12 sf2h13 +sf2mix96 +sf2mix96d +sf2mix97 +sf2mix98 +sf2mix98a +sf2mix98b +sf2mix98c +sf2mix99 +sf2mix99a sf2pun sf2r3 +sf2rbpr sf2sl73a sf2th sf2tha @@ -6455,7 +6459,7 @@ fatfury3b fatfury3bd fatfury3bh fatfury3eh -fatfurspb +fatfurspb2 fatfurspbs fatfurspbt fatfurspeh @@ -8537,12 +8541,20 @@ schmeisrs01 @source:schaser.cpp schasrcv // extra sounds +@source:scramble.cpp +mrkougar //parent +troopyx + @source:segac2.cpp c2frog // HB headonch -//ooparts +ooparts //ssonicbr +@source:segahang.cpp +enduror //parent +endurorrc + @source:segaorun.cpp outrun //parent outrunen diff --git a/docs/release/src/mame/drivers/konamigx.cpp b/docs/release/src/mame/drivers/konamigx.cpp index 3c1296ec305..596a59b885c 100644 --- a/docs/release/src/mame/drivers/konamigx.cpp +++ b/docs/release/src/mame/drivers/konamigx.cpp @@ -106,9 +106,10 @@ #include "sound/k054539.h" //#include "machine/k056230.h" #include "sound/k056800.h" -#include "rendlay.h" #include "speaker.h" +#include "layout/generic.h" + // TODO: check on PCB #define MASTER_CLOCK XTAL(24'000'000) @@ -2749,7 +2750,7 @@ ROM_START( dragoona ) ROM_LOAD( "dragoona.nv", 0x0000, 0x080, CRC(7980ad2b) SHA1(dccaab02d23edbd81ae13441fbac0dbd7112c258) ) ROM_END -/* Soccer Superstars (94.12.19 - Europe ver EAC) Writes EAA to EEPROM and reports as EAA despite chip labels EAC */ +/* Soccer Superstars (94.12.19 - Europe ver EAC) Writes EAA to EEPROM and reports as EAA despite chip labels EAC, confirmed on at least two separate ROM sets */ ROM_START( soccerss ) /* main program */ ROM_REGION( 0x800000, "maincpu", 0 ) diff --git a/docs/release/src/mame/drivers/model2.cpp b/docs/release/src/mame/drivers/model2.cpp index f5fbaa48951..8d34873c367 100644 --- a/docs/release/src/mame/drivers/model2.cpp +++ b/docs/release/src/mame/drivers/model2.cpp @@ -5732,6 +5732,18 @@ ROM_START( topskatrj ) /* Top Skater (Japan), Model 2C, Sega Game ID# 833-13080- ROM_LOAD("mpr-19750.24s", 0xc00000, 0x400000, CRC(cd95d0bf) SHA1(40e2a2980c89049c339fefd48bf7aac79962cd2e) ) ROM_END +/* +Dead or Alive below also known to have genuine Tecmo labels: + PROJECT PROJECT + EPR-AK EPR-AK + ROM No. & ROM No. + 19310A 19311A + DATE DATE + 97/1/10 97/1/10 + +Sega ID# 836-12884 DEAD OR ALIVE + +*/ ROM_START( doaa ) /* Dead or Alive Revision A, Model 2A, Sega Game ID# 833-11341, ROM board ID# 834-11342, 837-12880 security board */ ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program ROM_LOAD32_WORD("epr-19310a.12", 0x000000, 0x080000, CRC(06486f7a) SHA1(b3e14103570e5f45aed16e1c158e469bc85002ae) ) diff --git a/docs/release/src/osd/windows/winmain.cpp b/docs/release/src/osd/windows/winmain.cpp index 3e14e33cb20..794494e7691 100644 --- a/docs/release/src/osd/windows/winmain.cpp +++ b/docs/release/src/osd/windows/winmain.cpp @@ -493,17 +493,17 @@ windows_options::windows_options() add_entries(s_option_entries); #if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) String^ path = ApplicationData::Current->LocalFolder->Path + L"\\"; - set_default_value(OPTION_INIPATH, (osd::text::from_wstring((LPCWSTR)path->Data()) + ";" + ini_path()).c_str()); - set_default_value(OPTION_CFG_DIRECTORY, (osd::text::from_wstring((LPCWSTR)path->Data()) + cfg_directory()).c_str()); - set_default_value(OPTION_NVRAM_DIRECTORY, (osd::text::from_wstring((LPCWSTR)path->Data()) + nvram_directory()).c_str()); - set_default_value(OPTION_INPUT_DIRECTORY, (osd::text::from_wstring((LPCWSTR)path->Data()) + input_directory()).c_str()); - set_default_value(OPTION_STATE_DIRECTORY, (osd::text::from_wstring((LPCWSTR)path->Data()) + state_directory()).c_str()); - set_default_value(OPTION_SNAPSHOT_DIRECTORY, (osd::text::from_wstring((LPCWSTR)path->Data()) + snapshot_directory()).c_str()); - set_default_value(OPTION_DIFF_DIRECTORY, (osd::text::from_wstring((LPCWSTR)path->Data()) + diff_directory()).c_str()); - set_default_value(OPTION_COMMENT_DIRECTORY, (osd::text::from_wstring((LPCWSTR)path->Data()) + comment_directory()).c_str()); - - set_default_value(OPTION_HOMEPATH, osd::text::from_wstring((LPCWSTR)path->Data()).c_str()); - set_default_value(OPTION_MEDIAPATH, (osd::text::from_wstring((LPCWSTR)path->Data()) + media_path()).c_str()); + set_default_value(OPTION_INIPATH, osd::text::from_wstring((LPCWSTR)path->Data()) + ";" + ini_path()); + set_default_value(OPTION_CFG_DIRECTORY, osd::text::from_wstring((LPCWSTR)path->Data()) + cfg_directory()); + set_default_value(OPTION_NVRAM_DIRECTORY, osd::text::from_wstring((LPCWSTR)path->Data()) + nvram_directory()); + set_default_value(OPTION_INPUT_DIRECTORY, osd::text::from_wstring((LPCWSTR)path->Data()) + input_directory()); + set_default_value(OPTION_STATE_DIRECTORY, osd::text::from_wstring((LPCWSTR)path->Data()) + state_directory()); + set_default_value(OPTION_SNAPSHOT_DIRECTORY, osd::text::from_wstring((LPCWSTR)path->Data()) + snapshot_directory()); + set_default_value(OPTION_DIFF_DIRECTORY, osd::text::from_wstring((LPCWSTR)path->Data()) + diff_directory()); + set_default_value(OPTION_COMMENT_DIRECTORY, osd::text::from_wstring((LPCWSTR)path->Data()) + comment_directory()); + + set_default_value(OPTION_HOMEPATH, osd::text::from_wstring((LPCWSTR)path->Data())); + set_default_value(OPTION_MEDIAPATH, osd::text::from_wstring((LPCWSTR)path->Data()) + media_path()); #endif } @@ -611,7 +611,7 @@ void windows_osd_interface::init(running_machine &machine) // notify listeners of screen configuration for (const auto &info : osd_common_t::s_window_list) { - machine.output().set_value(string_format("Orientation(%s)", info->monitor()->devicename()).c_str(), std::static_pointer_cast<win_window_info>(info)->m_targetorient); + machine.output().set_value(string_format("Orientation(%s)", info->monitor()->devicename()), std::static_pointer_cast<win_window_info>(info)->m_targetorient); } // hook up the debugger log diff --git a/docs/release/src/osd/winui/datamap.cpp b/docs/release/src/osd/winui/datamap.cpp index 7c508719715..41e712631f3 100644 --- a/docs/release/src/osd/winui/datamap.cpp +++ b/docs/release/src/osd/winui/datamap.cpp @@ -20,6 +20,7 @@ #include "mui_opts.h" #include "datamap.h" #include "winutf8.h" +#include "corestr.h" #ifdef _MSC_VER diff --git a/docs/release/src/osd/winui/dialogs.cpp b/docs/release/src/osd/winui/dialogs.cpp index 5c011e0af40..c7907d5dcc6 100644 --- a/docs/release/src/osd/winui/dialogs.cpp +++ b/docs/release/src/osd/winui/dialogs.cpp @@ -37,6 +37,7 @@ // MAME headers #include "winutf8.h" +#include "corestr.h" #ifdef _MSC_VER #define snprintf _snprintf diff --git a/docs/release/src/osd/winui/directories.cpp b/docs/release/src/osd/winui/directories.cpp index 39afb97c7cc..626e6806221 100644 --- a/docs/release/src/osd/winui/directories.cpp +++ b/docs/release/src/osd/winui/directories.cpp @@ -408,7 +408,7 @@ static void Directories_OnOk(HWND hDlg) if (IsMultiDir(i)) nResult |= RetrieveDirList(i, g_directoryInfo[i].nDirDlgFlags, g_directoryInfo[i].pfnSetTheseDirs); else - if (DirInfo_Modified(g_pDirInfo, i)) + //if (DirInfo_Modified(g_pDirInfo, i)) // this line only makes sense with multi - TODO - fix this up. { LPTSTR s = FixSlash(DirInfo_Dir(g_pDirInfo, i)); char* utf8_s = ui_utf8_from_wstring(s); diff --git a/docs/release/src/osd/winui/emu_opts.cpp b/docs/release/src/osd/winui/emu_opts.cpp index c3262c7e0fa..74a2445ba82 100644 --- a/docs/release/src/osd/winui/emu_opts.cpp +++ b/docs/release/src/osd/winui/emu_opts.cpp @@ -229,7 +229,7 @@ void load_options(windows_options &opts, OPTIONS_TYPE opt_type, int game_num, bo if (opt_type == OPTIONS_SOURCE) { - fname = GetIniDir() + PATH_SEPARATOR + "source" + PATH_SEPARATOR + core_filename_extract_base(driver->type.source(), true) + ".ini"; + fname = GetIniDir() + PATH_SEPARATOR + "source" + PATH_SEPARATOR + string(core_filename_extract_base(driver->type.source(), true)) + ".ini"; LoadSettingsFile(opts, fname.c_str()); return; } @@ -318,7 +318,7 @@ void save_options(windows_options &opts, OPTIONS_TYPE opt_type, int game_num) { fname.assign(driver->name); if (opt_type == OPTIONS_SOURCE) - filepath = GetIniDir() + PATH_SEPARATOR + "source" + PATH_SEPARATOR + core_filename_extract_base(driver->type.source(), true) + ".ini"; + filepath = GetIniDir() + PATH_SEPARATOR + "source" + PATH_SEPARATOR + string(core_filename_extract_base(driver->type.source(), true)) + ".ini"; } } else diff --git a/docs/release/src/osd/winui/history.cpp b/docs/release/src/osd/winui/history.cpp index 298821e0d72..0d482bf4914 100644 --- a/docs/release/src/osd/winui/history.cpp +++ b/docs/release/src/osd/winui/history.cpp @@ -465,7 +465,7 @@ std::string load_driver_geninfo(const game_driver *drv, int drvindex) { for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) { - util::hash_collection hashes(ROM_GETHASHDATA(rom)); + util::hash_collection hashes(rom->hashdata()); if (g != -1) { @@ -477,7 +477,7 @@ std::string load_driver_geninfo(const game_driver *drv, int drvindex) { for (const rom_entry *prom = rom_first_file(pregion); prom; prom = rom_next_file(prom)) { - util::hash_collection phashes(ROM_GETHASHDATA(prom)); + util::hash_collection phashes(prom->hashdata()); if (hashes == phashes) break; @@ -490,7 +490,7 @@ std::string load_driver_geninfo(const game_driver *drv, int drvindex) buffer.append(name); snprintf(name, WINUI_ARRAY_LENGTH(name), "%09d \t", rom_file_size(rom)); buffer.append(name); - snprintf(name, WINUI_ARRAY_LENGTH(name), "%-10s", ROMREGION_GETTAG(region)); + snprintf(name, WINUI_ARRAY_LENGTH(name), "%-10s", region->name().c_str()); buffer.append(name).append("\n"); } } @@ -541,7 +541,7 @@ std::string load_driver_geninfo(const game_driver *drv, int drvindex) } } - std::string temp = core_filename_extract_base(drv->type.source(), false); + string temp = string(core_filename_extract_base(drv->type.source(), false)); char source_file[temp.size()+1], tmp[2048]; strcpy(source_file, temp.c_str()); snprintf(tmp, WINUI_ARRAY_LENGTH(tmp), "\nGENERAL SOURCE INFO: %s\n", temp.c_str()); diff --git a/docs/release/src/osd/winui/mui_util.cpp b/docs/release/src/osd/winui/mui_util.cpp index ad90f1f2593..f60aa7ea211 100644 --- a/docs/release/src/osd/winui/mui_util.cpp +++ b/docs/release/src/osd/winui/mui_util.cpp @@ -27,6 +27,7 @@ #include "mui_opts.h" #include "emu_opts.h" #include "drivenum.h" +#include "corestr.h" #include "machine/ram.h" #include <shlwapi.h> @@ -388,7 +389,7 @@ char * ConvertToWindowsNewlines(const char *source) const char * GetDriverFilename(uint32_t nIndex) { static char tmp[2048]; - std::string driver = core_filename_extract_base(driver_list::driver(nIndex).type.source()); + string driver = string(core_filename_extract_base(driver_list::driver(nIndex).type.source())); strcpy(tmp, driver.c_str()); return tmp; } diff --git a/docs/release/src/osd/winui/properties.cpp b/docs/release/src/osd/winui/properties.cpp index 649680ae046..cdda5972f19 100644 --- a/docs/release/src/osd/winui/properties.cpp +++ b/docs/release/src/osd/winui/properties.cpp @@ -3090,8 +3090,8 @@ static void InitializeBIOSUI(HWND hwnd) { if (ROMENTRY_ISSYSTEM_BIOS(rom)) { - const char *name = ROM_GETHASHDATA(rom); - const char *biosname = ROM_GETNAME(rom); + const char *name = rom->hashdata().c_str(); + const char *biosname = rom->name().c_str(); t_s = ui_wstring_from_utf8(name); if( !t_s ) return; @@ -3122,7 +3122,7 @@ static void InitializeBIOSUI(HWND hwnd) { if (ROMENTRY_ISSYSTEM_BIOS(rom)) { - const char *name = ROM_GETHASHDATA(rom); + const char *name = rom->hashdata().c_str(); const char *biosname = ROM_GETNAME(rom); t_s = ui_wstring_from_utf8(name); if( !t_s ) diff --git a/docs/release/src/osd/winui/res/mameui.manifest b/docs/release/src/osd/winui/res/mameui.manifest index 1ff7516257c..824b9841bef 100644 --- a/docs/release/src/osd/winui/res/mameui.manifest +++ b/docs/release/src/osd/winui/res/mameui.manifest @@ -8,8 +8,9 @@ </dependentAssembly> </dependency> <asmv3:application> - <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"> - <dpiAware>TRUE</dpiAware> + <asmv3:windowsSettings> + <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware> + <longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware> </asmv3:windowsSettings> </asmv3:application> </assembly> diff --git a/docs/release/src/osd/winui/screenshot.cpp b/docs/release/src/osd/winui/screenshot.cpp index a1ef8028531..eb7a942b874 100644 --- a/docs/release/src/osd/winui/screenshot.cpp +++ b/docs/release/src/osd/winui/screenshot.cpp @@ -450,7 +450,7 @@ static BOOL LoadDIB(const char *filename, HGLOBAL *phDIB, HPALETTE *pPal, int pi switch (pic_type) { case TAB_ARTWORK: - t = dir_get_value(5); + t = dir_get_value(32); zip_name = "artpreview"; break; case TAB_BOSSES: diff --git a/docs/release/src/osd/winui/treeview.cpp b/docs/release/src/osd/winui/treeview.cpp index 9076aeb85d3..0306a99d123 100644 --- a/docs/release/src/osd/winui/treeview.cpp +++ b/docs/release/src/osd/winui/treeview.cpp @@ -33,6 +33,7 @@ #include "winutf8.h" #include "screen.h" #include "drivenum.h" +#include "corestr.h" #ifdef _MSC_VER #define snprintf _snprintf @@ -1226,7 +1227,7 @@ void CreateDumpingFolders(int parent_index) if (ROMREGION_ISROMDATA(region) || ROMREGION_ISDISKDATA(region) ) { //name = ROM_GETNAME(rom); - util::hash_collection hashes(ROM_GETHASHDATA(rom)); + util::hash_collection hashes(rom->hashdata()); if (hashes.flag(util::hash_collection::FLAG_BAD_DUMP)) bBadDump = true; if (hashes.flag(util::hash_collection::FLAG_NO_DUMP)) diff --git a/docs/release/src/osd/winui/winui.cpp b/docs/release/src/osd/winui/winui.cpp index dfc1e8abcd6..2e0bc814c53 100644 --- a/docs/release/src/osd/winui/winui.cpp +++ b/docs/release/src/osd/winui/winui.cpp @@ -46,6 +46,7 @@ #include "window.h" #include "../osdcore.h" #include "zippath.h" +#include "corestr.h" #include "resource.h" #include "resource.hm" @@ -4312,8 +4313,8 @@ static BOOL MameCommand(HWND hwnd,int id, HWND hwndCtl, UINT codeNotify) // Get the path from the existing filename; if no filename go to root TCHAR* t_bgdir = TEXT("."); bool free_bgdir = false; - string as, s = GetBgDir(); - util::zippath_parent(as, s.c_str()); + string s = GetBgDir(); + string as = util::zippath_parent(s); size_t t1 = as.length()-1; if (as[t1] == '\\') as.substr(0, t1-1); t1 = as.find(':'); diff --git a/docs/release/src/osd/winui/winui.h b/docs/release/src/osd/winui/winui.h index 38d1cf0a3ca..d3e460b420d 100644 --- a/docs/release/src/osd/winui/winui.h +++ b/docs/release/src/osd/winui/winui.h @@ -16,7 +16,7 @@ #define MUI_INI_FILENAME MAMENAME "UI.ini" #ifdef PTR64 -#define MAMEUINAME MAMENAME "UI64" +#define MAMEUINAME MAMENAME "UI" #else #define MAMEUINAME MAMENAME "UI32" #endif diff --git a/docs/release/src/version.cpp b/docs/release/src/version.cpp index 3fbe239da9c..1c3143099a8 100644 --- a/docs/release/src/version.cpp +++ b/docs/release/src/version.cpp @@ -8,7 +8,7 @@ ***************************************************************************/ -#define BARE_BUILD_VERSION "0.227" +#define BARE_BUILD_VERSION "0.228" extern const char bare_build_version[]; extern const char build_version[]; diff --git a/src/osd/winui/winui.h b/src/osd/winui/winui.h index 38d1cf0a3ca..d3e460b420d 100644 --- a/src/osd/winui/winui.h +++ b/src/osd/winui/winui.h @@ -16,7 +16,7 @@ #define MUI_INI_FILENAME MAMENAME "UI.ini" #ifdef PTR64 -#define MAMEUINAME MAMENAME "UI64" +#define MAMEUINAME MAMENAME "UI" #else #define MAMEUINAME MAMENAME "UI32" #endif diff --git a/src/version.cpp b/src/version.cpp index 3fbe239da9c..1c3143099a8 100644 --- a/src/version.cpp +++ b/src/version.cpp @@ -8,7 +8,7 @@ ***************************************************************************/ -#define BARE_BUILD_VERSION "0.227" +#define BARE_BUILD_VERSION "0.228" extern const char bare_build_version[]; extern const char build_version[]; |