summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
author Robbbert <Robbbert@users.noreply.github.com>2021-01-27 11:29:25 +1100
committer Robbbert <Robbbert@users.noreply.github.com>2021-01-27 11:29:25 +1100
commit2c041520acb29c8330e96a2713ce720e1e380018 (patch)
tree3e89b8c08d3cdb25ba0fbd2975bdc548207c09b8
parentd5407444774ae45feb53a3e5927880a3def3d55c (diff)
0.228 Release filestag228
-rw-r--r--docs/release/build/make.bat22
-rw-r--r--docs/release/build/make64.bat1
-rw-r--r--docs/release/build/v.bat4
-rw-r--r--docs/release/scripts/genie.lua1
-rw-r--r--docs/release/scripts/resources/windows/mame/mame.man7
-rw-r--r--docs/release/scripts/resources/windows/mess/mess.man7
-rw-r--r--docs/release/scripts/src/bus.lua12
-rw-r--r--docs/release/scripts/src/cpu.lua2
-rw-r--r--docs/release/scripts/src/emu.lua1
-rw-r--r--docs/release/scripts/src/machine.lua36
-rw-r--r--docs/release/scripts/src/main.lua26
-rw-r--r--docs/release/scripts/src/osd/mac.lua1
-rw-r--r--docs/release/scripts/src/osd/sdl.lua1
-rw-r--r--docs/release/scripts/src/osd/uwp.lua1
-rw-r--r--docs/release/scripts/src/osd/winui.lua8
-rw-r--r--docs/release/scripts/src/sound.lua12
-rw-r--r--docs/release/scripts/src/tests.lua28
-rw-r--r--docs/release/scripts/target/hbmame/hbmame.lua9
-rw-r--r--docs/release/scripts/target/mame/arcade.lua16
-rw-r--r--docs/release/scripts/target/mame/ci.lua1
-rw-r--r--docs/release/scripts/target/mame/mess.lua38
-rw-r--r--docs/release/scripts/target/mame/tiny.lua1
-rw-r--r--docs/release/src/devices/cpu/m68000/m68kcpu.cpp2
-rw-r--r--docs/release/src/emu/emuopts.cpp45
-rw-r--r--docs/release/src/emu/emuopts.h9
-rw-r--r--docs/release/src/emu/romload.cpp89
-rw-r--r--docs/release/src/emu/validity.cpp15
-rw-r--r--docs/release/src/emu/video.cpp3
-rw-r--r--docs/release/src/frontend/mame/audit.cpp17
-rw-r--r--docs/release/src/frontend/mame/audit.h4
-rw-r--r--docs/release/src/frontend/mame/clifront.cpp41
-rw-r--r--docs/release/src/frontend/mame/language.cpp2
-rw-r--r--docs/release/src/frontend/mame/mameopts.cpp4
-rw-r--r--docs/release/src/hbmame/drivers/cps1.cpp30
-rw-r--r--docs/release/src/hbmame/drivers/cps1mis.cpp398
-rw-r--r--docs/release/src/hbmame/drivers/ngrbff.cpp4
-rw-r--r--docs/release/src/hbmame/drivers/scramble.cpp26
-rw-r--r--docs/release/src/hbmame/drivers/segahang.cpp74
-rw-r--r--docs/release/src/hbmame/hbmame.lst28
-rw-r--r--docs/release/src/mame/drivers/konamigx.cpp5
-rw-r--r--docs/release/src/mame/drivers/model2.cpp12
-rw-r--r--docs/release/src/osd/windows/winmain.cpp24
-rw-r--r--docs/release/src/osd/winui/datamap.cpp1
-rw-r--r--docs/release/src/osd/winui/dialogs.cpp1
-rw-r--r--docs/release/src/osd/winui/directories.cpp2
-rw-r--r--docs/release/src/osd/winui/emu_opts.cpp4
-rw-r--r--docs/release/src/osd/winui/history.cpp8
-rw-r--r--docs/release/src/osd/winui/mui_util.cpp3
-rw-r--r--docs/release/src/osd/winui/properties.cpp6
-rw-r--r--docs/release/src/osd/winui/res/mameui.manifest5
-rw-r--r--docs/release/src/osd/winui/screenshot.cpp2
-rw-r--r--docs/release/src/osd/winui/treeview.cpp3
-rw-r--r--docs/release/src/osd/winui/winui.cpp5
-rw-r--r--docs/release/src/osd/winui/winui.h2
-rw-r--r--docs/release/src/version.cpp2
-rw-r--r--src/osd/winui/winui.h2
-rw-r--r--src/version.cpp2
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 &current, char const *name, util::hash_collection const &hashes, uint64_t length) const
+ std::add_pointer_t<device_type> find_shared_device(device_t &current, 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(&current.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[];