diff options
42 files changed, 437 insertions, 265 deletions
diff --git a/docs/release/docs/hbnew.txt b/docs/release/docs/hbnew.txt index e02566d4be9..45e5e3afbad 100644 --- a/docs/release/docs/hbnew.txt +++ b/docs/release/docs/hbnew.txt @@ -1,7 +1,7 @@ What's new in HBMAME ==================== -2021-08-25 0.235 +2021-08-24 0.235 - mslug4xg: fixed freeze in attract mode - sblast2bs01: fixed crash at start diff --git a/docs/release/scripts/src/3rdparty.lua b/docs/release/scripts/src/3rdparty.lua index e8b08df8f0c..78d73248623 100644 --- a/docs/release/scripts/src/3rdparty.lua +++ b/docs/release/scripts/src/3rdparty.lua @@ -1416,7 +1416,6 @@ end "__STDC_FORMAT_MACROS", "__STDC_CONSTANT_MACROS", "BGFX_CONFIG_MAX_FRAME_BUFFERS=128", - "IMGUI_DISABLE_OBSOLETE_FUNCTIONS", } if _OPTIONS["targetos"]=="linux" or _OPTIONS["targetos"]=="netbsd" or _OPTIONS["targetos"]=="openbsd" then @@ -1453,17 +1452,19 @@ end MAME_DIR .. "3rdparty/bgfx/src/renderer_noop.cpp", MAME_DIR .. "3rdparty/bgfx/src/renderer_nvn.cpp", MAME_DIR .. "3rdparty/bgfx/src/renderer_vk.cpp", + MAME_DIR .. "3rdparty/bgfx/src/renderer_webgpu.cpp", MAME_DIR .. "3rdparty/bgfx/src/shader.cpp", MAME_DIR .. "3rdparty/bgfx/src/shader_dx9bc.cpp", MAME_DIR .. "3rdparty/bgfx/src/shader_dxbc.cpp", MAME_DIR .. "3rdparty/bgfx/src/shader_spirv.cpp", MAME_DIR .. "3rdparty/bgfx/src/topology.cpp", - MAME_DIR .. "3rdparty/bgfx/src/vertexdecl.cpp", + MAME_DIR .. "3rdparty/bgfx/src/vertexlayout.cpp", MAME_DIR .. "3rdparty/bgfx/examples/common/imgui/imgui.cpp", MAME_DIR .. "3rdparty/bgfx/examples/common/nanovg/nanovg.cpp", MAME_DIR .. "3rdparty/bgfx/examples/common/nanovg/nanovg_bgfx.cpp", MAME_DIR .. "3rdparty/bgfx/3rdparty/dear-imgui/imgui.cpp", MAME_DIR .. "3rdparty/bgfx/3rdparty/dear-imgui/imgui_draw.cpp", + MAME_DIR .. "3rdparty/bgfx/3rdparty/dear-imgui/imgui_tables.cpp", MAME_DIR .. "3rdparty/bgfx/3rdparty/dear-imgui/imgui_widgets.cpp", } if _OPTIONS["targetos"]=="macosx" then diff --git a/docs/release/scripts/src/bus.lua b/docs/release/scripts/src/bus.lua index d889e7af294..cca26b543e0 100644 --- a/docs/release/scripts/src/bus.lua +++ b/docs/release/scripts/src/bus.lua @@ -259,6 +259,23 @@ end --------------------------------------------------- -- +--@src/devices/bus/apricot/video/video.h,BUSES["APRICOT_VIDEO"] = true +--------------------------------------------------- + +if (BUSES["APRICOT_VIDEO"]~=null) then + files { + MAME_DIR .. "src/devices/bus/apricot/video/video.cpp", + MAME_DIR .. "src/devices/bus/apricot/video/video.h", + MAME_DIR .. "src/devices/bus/apricot/video/cards.cpp", + MAME_DIR .. "src/devices/bus/apricot/video/cards.h", + MAME_DIR .. "src/devices/bus/apricot/video/mono.cpp", + MAME_DIR .. "src/devices/bus/apricot/video/mono.h", + } +end + + +--------------------------------------------------- +-- --@src/devices/bus/aquarius/slot.h,BUSES["AQUARIUS"] = true --------------------------------------------------- @@ -1087,6 +1104,8 @@ if (BUSES["ELECTRON"]~=null) then MAME_DIR .. "src/devices/bus/electron/fbjoy.h", MAME_DIR .. "src/devices/bus/electron/fbprint.cpp", MAME_DIR .. "src/devices/bus/electron/fbprint.h", + MAME_DIR .. "src/devices/bus/electron/mc68k.cpp", + MAME_DIR .. "src/devices/bus/electron/mc68k.h", MAME_DIR .. "src/devices/bus/electron/mode7.cpp", MAME_DIR .. "src/devices/bus/electron/mode7.h", MAME_DIR .. "src/devices/bus/electron/plus1.cpp", @@ -2472,6 +2491,8 @@ if (BUSES["A2BUS"]~=null) then MAME_DIR .. "src/devices/bus/a2bus/nippelclock.h", MAME_DIR .. "src/devices/bus/a2bus/pc_xporter.cpp", MAME_DIR .. "src/devices/bus/a2bus/pc_xporter.h", + MAME_DIR .. "src/devices/bus/a2bus/q68.cpp", + MAME_DIR .. "src/devices/bus/a2bus/q68.h", MAME_DIR .. "src/devices/bus/a2bus/ramcard128k.cpp", MAME_DIR .. "src/devices/bus/a2bus/ramcard128k.h", MAME_DIR .. "src/devices/bus/a2bus/ramcard16k.cpp", diff --git a/docs/release/scripts/src/cpu.lua b/docs/release/scripts/src/cpu.lua index de81507f8a9..a8969301246 100644 --- a/docs/release/scripts/src/cpu.lua +++ b/docs/release/scripts/src/cpu.lua @@ -13,7 +13,7 @@ -- Dynamic recompiler objects -------------------------------------------------- -DRC_CPUS = { "E1", "SH", "MIPS3", "POWERPC", "RSP", "ARM7", "ADSP21062", "MB86235", "DSP16", "UNSP" } +DRC_CPUS = { "E1", "SH", "MIPS3", "POWERPC", "ARM7", "ADSP21062", "MB86235", "DSP16", "UNSP" } CPU_INCLUDE_DRC = false for i, v in ipairs(DRC_CPUS) do if (CPUS[v]~=null) then @@ -2143,39 +2143,6 @@ if CPUS["RSP"] then MAME_DIR .. "src/devices/cpu/rsp/rsp.cpp", MAME_DIR .. "src/devices/cpu/rsp/rsp.h", MAME_DIR .. "src/devices/cpu/rsp/rspdefs.h", - MAME_DIR .. "src/devices/cpu/rsp/rspdrc.cpp", - MAME_DIR .. "src/devices/cpu/rsp/rspfe.cpp", - MAME_DIR .. "src/devices/cpu/rsp/rspfe.h", - MAME_DIR .. "src/devices/cpu/rsp/rspcp2.cpp", - MAME_DIR .. "src/devices/cpu/rsp/rspcp2.h", - MAME_DIR .. "src/devices/cpu/rsp/rspcp2d.cpp", - MAME_DIR .. "src/devices/cpu/rsp/rspcp2d.h", - MAME_DIR .. "src/devices/cpu/rsp/clamp.h", - MAME_DIR .. "src/devices/cpu/rsp/vabs.h", - MAME_DIR .. "src/devices/cpu/rsp/vadd.h", - MAME_DIR .. "src/devices/cpu/rsp/vaddc.h", - MAME_DIR .. "src/devices/cpu/rsp/vand.h", - MAME_DIR .. "src/devices/cpu/rsp/vch.h", - MAME_DIR .. "src/devices/cpu/rsp/vcl.h", - MAME_DIR .. "src/devices/cpu/rsp/vcmp.h", - MAME_DIR .. "src/devices/cpu/rsp/vcr.h", - MAME_DIR .. "src/devices/cpu/rsp/vdivh.h", - MAME_DIR .. "src/devices/cpu/rsp/vldst.h", - MAME_DIR .. "src/devices/cpu/rsp/vmac.h", - MAME_DIR .. "src/devices/cpu/rsp/vmov.h", - MAME_DIR .. "src/devices/cpu/rsp/vmrg.h", - MAME_DIR .. "src/devices/cpu/rsp/vmudh.h", - MAME_DIR .. "src/devices/cpu/rsp/vmul.h", - MAME_DIR .. "src/devices/cpu/rsp/vmulh.h", - MAME_DIR .. "src/devices/cpu/rsp/vmull.h", - MAME_DIR .. "src/devices/cpu/rsp/vmulm.h", - MAME_DIR .. "src/devices/cpu/rsp/vmuln.h", - MAME_DIR .. "src/devices/cpu/rsp/vor.h", - MAME_DIR .. "src/devices/cpu/rsp/vrcpsq.h", - MAME_DIR .. "src/devices/cpu/rsp/vrsq.h", - MAME_DIR .. "src/devices/cpu/rsp/vsub.h", - MAME_DIR .. "src/devices/cpu/rsp/vsubc.h", - MAME_DIR .. "src/devices/cpu/rsp/vxor.h", MAME_DIR .. "src/devices/cpu/rsp/rspdiv.h", } end @@ -2623,15 +2590,17 @@ if CPUS["TMS57002"] then { MAME_DIR .. "src/devices/cpu/tms57002/tmsops.cpp", GEN_DIR .. "emu/cpu/tms57002/tms57002.hxx" }, } custombuildtask { - { MAME_DIR .. "src/devices/cpu/tms57002/tmsinstr.lst" , GEN_DIR .. "emu/cpu/tms57002/tms57002.hxx", { MAME_DIR .. "src/devices/cpu/tms57002/tmsmake.py" }, {"@echo Generating TMS57002 source file...", PYTHON .. " $(1) $(<) $(@)" } } + { MAME_DIR .. "src/devices/cpu/tms57002/tmsinstr.lst" , GEN_DIR .. "emu/cpu/tms57002/tms57002.hxx", { MAME_DIR .. "src/devices/cpu/tms57002/tmsmake.py" }, {"@echo Generating TMS57002 source file...", PYTHON .. " $(1) s $(<) $(@)" } } } end if opt_tool(CPUS, "TMS57002") then table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/tms57002/57002dsm.cpp") table.insert(disasm_files , MAME_DIR .. "src/devices/cpu/tms57002/57002dsm.h") + table.insert(disasm_dependency , { MAME_DIR .. "src/devices/cpu/tms57002/57002dsm.cpp", GEN_DIR .. "emu/cpu/tms57002/tms57002d.hxx" } ) table.insert(disasm_dependency , { MAME_DIR .. "src/devices/cpu/tms57002/57002dsm.cpp", GEN_DIR .. "emu/cpu/tms57002/tms57002.hxx" } ) - table.insert(disasm_custombuildtask , { MAME_DIR .. "src/devices/cpu/tms57002/tmsinstr.lst" , GEN_DIR .. "emu/cpu/tms57002/tms57002.hxx", { MAME_DIR .. "src/devices/cpu/tms57002/tmsmake.py" }, {"@echo Generating TMS57002 source file...", PYTHON .. " $(1) $(<) $(@)" }}) + table.insert(disasm_custombuildtask , { MAME_DIR .. "src/devices/cpu/tms57002/tmsinstr.lst" , GEN_DIR .. "emu/cpu/tms57002/tms57002d.hxx", { MAME_DIR .. "src/devices/cpu/tms57002/tmsmake.py" }, {"@echo Generating TMS57002 source file...", PYTHON .. " $(1) d $(<) $(@)" }}) + table.insert(disasm_custombuildtask , { MAME_DIR .. "src/devices/cpu/tms57002/tmsinstr.lst" , GEN_DIR .. "emu/cpu/tms57002/tms57002.hxx", { MAME_DIR .. "src/devices/cpu/tms57002/tmsmake.py" }, {"@echo Generating TMS57002 source file...", PYTHON .. " $(1) s $(<) $(@)" }}) end -------------------------------------------------- diff --git a/docs/release/scripts/src/formats.lua b/docs/release/scripts/src/formats.lua index 5afef69d522..d2c7ceda4a5 100644 --- a/docs/release/scripts/src/formats.lua +++ b/docs/release/scripts/src/formats.lua @@ -33,8 +33,6 @@ project "formats" MAME_DIR .. "src/lib/formats/all.cpp", MAME_DIR .. "src/lib/formats/all.h", - MAME_DIR .. "src/lib/formats/ioprocs.cpp", - MAME_DIR .. "src/lib/formats/ioprocs.h", MAME_DIR .. "src/lib/formats/imageutl.cpp", MAME_DIR .. "src/lib/formats/imageutl.h", diff --git a/docs/release/scripts/src/lib.lua b/docs/release/scripts/src/lib.lua index c943656ca14..c24bb015cd4 100644 --- a/docs/release/scripts/src/lib.lua +++ b/docs/release/scripts/src/lib.lua @@ -71,6 +71,12 @@ project "utils" MAME_DIR .. "src/lib/util/hashing.h", MAME_DIR .. "src/lib/util/huffman.cpp", MAME_DIR .. "src/lib/util/huffman.h", + MAME_DIR .. "src/lib/util/ioprocs.cpp", + MAME_DIR .. "src/lib/util/ioprocs.h", + MAME_DIR .. "src/lib/util/ioprocsfill.h", + MAME_DIR .. "src/lib/util/ioprocsfilter.cpp", + MAME_DIR .. "src/lib/util/ioprocsfilter.h", + MAME_DIR .. "src/lib/util/ioprocsvec.h", MAME_DIR .. "src/lib/util/jedparse.cpp", MAME_DIR .. "src/lib/util/jedparse.h", MAME_DIR .. "src/lib/util/md5.cpp", @@ -85,6 +91,8 @@ project "utils" MAME_DIR .. "src/lib/util/options.h", MAME_DIR .. "src/lib/util/palette.cpp", MAME_DIR .. "src/lib/util/palette.h", + MAME_DIR .. "src/lib/util/path.cpp", + MAME_DIR .. "src/lib/util/path.h", MAME_DIR .. "src/lib/util/path_to_regex.cpp", MAME_DIR .. "src/lib/util/path_to_regex.hpp", MAME_DIR .. "src/lib/util/plaparse.cpp", @@ -104,6 +112,7 @@ project "utils" MAME_DIR .. "src/lib/util/unzip.cpp", MAME_DIR .. "src/lib/util/unzip.h", MAME_DIR .. "src/lib/util/un7z.cpp", + MAME_DIR .. "src/lib/util/utilfwd.h", MAME_DIR .. "src/lib/util/vbiparse.cpp", MAME_DIR .. "src/lib/util/vbiparse.h", MAME_DIR .. "src/lib/util/vecstream.cpp", diff --git a/docs/release/scripts/src/machine.lua b/docs/release/scripts/src/machine.lua index 6e1280ac505..25b38f6ab78 100644 --- a/docs/release/scripts/src/machine.lua +++ b/docs/release/scripts/src/machine.lua @@ -826,6 +826,18 @@ end --------------------------------------------------- -- +--@src/devices/machine/applepic.h,MACHINES["APPLEPIC"] = true +--------------------------------------------------- + +if (MACHINES["APPLEPIC"]~=null) then + files { + MAME_DIR .. "src/devices/machine/applepic.cpp", + MAME_DIR .. "src/devices/machine/applepic.h", + } +end + +--------------------------------------------------- +-- --@src/devices/machine/at28c16.h,MACHINES["AT28C16"] = true --------------------------------------------------- diff --git a/docs/release/scripts/src/osd/mac.lua b/docs/release/scripts/src/osd/mac.lua index 2cc3e53c926..8a57b4ab4a3 100644 --- a/docs/release/scripts/src/osd/mac.lua +++ b/docs/release/scripts/src/osd/mac.lua @@ -166,7 +166,6 @@ project ("ocore_" .. _OPTIONS["osd"]) MAME_DIR .. "src/osd/modules/lib/osdlib_macosx.cpp", MAME_DIR .. "src/osd/modules/lib/osdlib.h", MAME_DIR .. "src/osd/modules/file/posixdir.cpp", - MAME_DIR .. "src/osd/modules/file/posixdomain.cpp", MAME_DIR .. "src/osd/modules/file/posixfile.cpp", MAME_DIR .. "src/osd/modules/file/posixfile.h", MAME_DIR .. "src/osd/modules/file/posixptty.cpp", diff --git a/docs/release/scripts/src/osd/modules.lua b/docs/release/scripts/src/osd/modules.lua index 3f9e1948c6e..7ee20732784 100644 --- a/docs/release/scripts/src/osd/modules.lua +++ b/docs/release/scripts/src/osd/modules.lua @@ -162,7 +162,6 @@ function osdmodulesbuild() "__STDC_LIMIT_MACROS", "__STDC_FORMAT_MACROS", "__STDC_CONSTANT_MACROS", - "IMGUI_DISABLE_OBSOLETE_FUNCTIONS", } files { diff --git a/docs/release/scripts/src/osd/sdl.lua b/docs/release/scripts/src/osd/sdl.lua index 37dfb221067..31dafbbeb20 100644 --- a/docs/release/scripts/src/osd/sdl.lua +++ b/docs/release/scripts/src/osd/sdl.lua @@ -482,7 +482,6 @@ project ("ocore_" .. _OPTIONS["osd"]) if BASE_TARGETOS=="unix" then files { MAME_DIR .. "src/osd/modules/file/posixdir.cpp", - MAME_DIR .. "src/osd/modules/file/posixdomain.cpp", MAME_DIR .. "src/osd/modules/file/posixfile.cpp", MAME_DIR .. "src/osd/modules/file/posixfile.h", MAME_DIR .. "src/osd/modules/file/posixptty.cpp", diff --git a/docs/release/scripts/src/osd/windows.lua b/docs/release/scripts/src/osd/windows.lua index aa6b0241fb9..cefe6234cf3 100644 --- a/docs/release/scripts/src/osd/windows.lua +++ b/docs/release/scripts/src/osd/windows.lua @@ -22,17 +22,6 @@ function maintargetosdoptions(_target,_subtarget) configuration { } - if _OPTIONS["DIRECTINPUT"] == "8" then - links { - "dinput8", - } - else - links { - "dinput", - } - end - - if _OPTIONS["USE_SDL"] == "1" then links { "SDL.dll", @@ -40,6 +29,7 @@ function maintargetosdoptions(_target,_subtarget) end links { + "dinput8", "comctl32", "comdlg32", "psapi", @@ -50,19 +40,6 @@ end newoption { - trigger = "DIRECTINPUT", - description = "Minimum DirectInput version to support", - allowed = { - { "7", "Support DirectInput 7 or later" }, - { "8", "Support DirectInput 8 or later" }, - }, -} - -if not _OPTIONS["DIRECTINPUT"] then - _OPTIONS["DIRECTINPUT"] = "8" -end - -newoption { trigger = "USE_SDL", description = "Enable SDL sound output", allowed = { @@ -124,18 +101,9 @@ project ("osd_" .. _OPTIONS["osd"]) defines { "DIRECT3D_VERSION=0x0900", + "DIRECTINPUT_VERSION=0x0800", } - if _OPTIONS["DIRECTINPUT"] == "8" then - defines { - "DIRECTINPUT_VERSION=0x0800", - } - else - defines { - "DIRECTINPUT_VERSION=0x0700", - } - end - includedirs { MAME_DIR .. "src/emu", MAME_DIR .. "src/devices", -- accessing imagedev from debugger diff --git a/docs/release/scripts/target/hbmame/hbmame.lua b/docs/release/scripts/target/hbmame/hbmame.lua index 0d301b0a506..d4af54f3190 100644 --- a/docs/release/scripts/target/hbmame/hbmame.lua +++ b/docs/release/scripts/target/hbmame/hbmame.lua @@ -359,6 +359,7 @@ files { MAME_DIR .. "src/mame/machine/asteroid.cpp", MAME_DIR .. "src/hbmame/drivers/atarig42.cpp", MAME_DIR .. "src/mame/video/atarig42.cpp", + MAME_DIR .. "src/mame/machine/atariscom.cpp", MAME_DIR .. "src/mame/machine/asic65.cpp", MAME_DIR .. "src/mame/video/atarirle.cpp", MAME_DIR .. "src/mame/audio/atarijsa.cpp", diff --git a/docs/release/scripts/target/mame/arcade.lua b/docs/release/scripts/target/mame/arcade.lua index be5c46c559c..6439c7b1941 100644 --- a/docs/release/scripts/target/mame/arcade.lua +++ b/docs/release/scripts/target/mame/arcade.lua @@ -150,6 +150,7 @@ CPUS["UPD78K"] = true CPUS["KS0164"] = true --CPUS["COPS1"] = true CPUS["MEG"] = true +CPUS["F2MC16"] = true -------------------------------------------------- -- specify available sound cores @@ -456,6 +457,7 @@ MACHINES["AM79C90"] = true --MACHINES["AM9513"] = true MACHINES["AM9517A"] = true MACHINES["AMIGAFDC"] = true +--MACHINES["APPLEPIC"] = true MACHINES["AT_KEYBC"] = true MACHINES["AT28C16"] = true --MACHINES["AT28C64B"] = true @@ -5059,6 +5061,7 @@ files { MAME_DIR .. "src/mame/includes/oneshot.h", MAME_DIR .. "src/mame/video/oneshot.cpp", MAME_DIR .. "src/mame/drivers/onetwo.cpp", + MAME_DIR .. "src/mame/drivers/opercoin.cpp", MAME_DIR .. "src/mame/drivers/othello.cpp", MAME_DIR .. "src/mame/drivers/pachifev.cpp", MAME_DIR .. "src/mame/drivers/pasha2.cpp", @@ -5088,6 +5091,7 @@ files { MAME_DIR .. "src/mame/drivers/pse.cpp", MAME_DIR .. "src/mame/drivers/quizo.cpp", MAME_DIR .. "src/mame/drivers/quizpun2.cpp", + MAME_DIR .. "src/mame/drivers/radikaldarts.cpp", MAME_DIR .. "src/mame/drivers/rbmk.cpp", MAME_DIR .. "src/mame/drivers/rcorsair.cpp", MAME_DIR .. "src/mame/drivers/re900.cpp", diff --git a/docs/release/scripts/target/mame/mess.lua b/docs/release/scripts/target/mame/mess.lua index 4ef88975da0..66617814749 100644 --- a/docs/release/scripts/target/mame/mess.lua +++ b/docs/release/scripts/target/mame/mess.lua @@ -479,6 +479,7 @@ MACHINES["AM9513"] = true MACHINES["AM9517A"] = true MACHINES["AM9519"] = true MACHINES["AMIGAFDC"] = true +MACHINES["APPLEPIC"] = true MACHINES["ARM_IOMD"] = true MACHINES["AT_KEYBC"] = true MACHINES["AT28C16"] = true @@ -837,6 +838,7 @@ BUSES["AMIGA_KEYBOARD"] = true BUSES["APF"] = true BUSES["APRICOT_EXPANSION"] = true BUSES["APRICOT_KEYBOARD"] = true +BUSES["APRICOT_VIDEO"] = true BUSES["AQUARIUS"] = true BUSES["ARCADIA"] = true BUSES["ASTROCADE"] = true @@ -4424,6 +4426,8 @@ files { MAME_DIR .. "src/mame/drivers/ymmu50.cpp", MAME_DIR .. "src/mame/drivers/ymmu80.cpp", MAME_DIR .. "src/mame/drivers/ymmu100.cpp", + MAME_DIR .. "src/mame/drivers/ympsr16.cpp", + MAME_DIR .. "src/mame/drivers/ympsr40.cpp", MAME_DIR .. "src/mame/drivers/ympsr60.cpp", MAME_DIR .. "src/mame/drivers/ympsr340.cpp", MAME_DIR .. "src/mame/drivers/ymsy35.cpp", @@ -4561,6 +4565,7 @@ files { MAME_DIR .. "src/mame/drivers/gem_rp.cpp", MAME_DIR .. "src/mame/drivers/gigatron.cpp", MAME_DIR .. "src/mame/drivers/gimix.cpp", + MAME_DIR .. "src/mame/drivers/gm1000.cpp", MAME_DIR .. "src/mame/drivers/gnat10.cpp", MAME_DIR .. "src/mame/drivers/goupil.cpp", MAME_DIR .. "src/mame/drivers/grfd2301.cpp", @@ -4657,6 +4662,7 @@ files { MAME_DIR .. "src/mame/drivers/ptcsol.cpp", MAME_DIR .. "src/mame/drivers/pulsar.cpp", MAME_DIR .. "src/mame/drivers/pv9234.cpp", + MAME_DIR .. "src/mame/drivers/pwp14.cpp", MAME_DIR .. "src/mame/drivers/qtsbc.cpp", MAME_DIR .. "src/mame/drivers/rd100.cpp", MAME_DIR .. "src/mame/drivers/rvoice.cpp", diff --git a/docs/release/src/devices/cpu/m68000/m68kcpu.cpp b/docs/release/src/devices/cpu/m68000/m68kcpu.cpp index 52ad22d2b5d..99919858703 100644 --- a/docs/release/src/devices/cpu/m68000/m68kcpu.cpp +++ b/docs/release/src/devices/cpu/m68000/m68kcpu.cpp @@ -1683,7 +1683,6 @@ void m68000_base_device::define_state(void) state_add(M68K_SR, "SR", m_iotemp).callimport().callexport().mask(m_sr_mask); state_add(STATE_GENFLAGS, "GENFLAGS", m_iotemp).noshow().callimport().callexport().formatstr("%16s"); state_add(M68K_SP, "SP", m_dar[15]); - state_add(STATE_GENSP, "GENSP", m_dar[15]).noshow(); state_add(M68K_USP, "USP", m_iotemp).callimport().callexport(); if (m_cpu_type & MASK_020_OR_LATER) { diff --git a/docs/release/src/devices/video/vector.cpp b/docs/release/src/devices/video/vector.cpp index b344801dd9f..9f4a35f4bf5 100644 --- a/docs/release/src/devices/video/vector.cpp +++ b/docs/release/src/devices/video/vector.cpp @@ -108,7 +108,7 @@ void vector_device::add_point(int x, int y, rgb_t color, int intensity) { point *newpoint; - intensity = std::max(0, std::min(255, intensity)); + intensity = std::clamp(intensity, 0, 255); m_min_intensity = intensity > 0 ? std::min(m_min_intensity, intensity) : m_min_intensity; m_max_intensity = intensity > 0 ? std::max(m_max_intensity, intensity) : m_max_intensity; @@ -119,7 +119,7 @@ void vector_device::add_point(int x, int y, rgb_t color, int intensity) intensity -= (int)(intensity * random * vector_options::s_flicker); - intensity = std::max(0, std::min(255, intensity)); + intensity = std::clamp(intensity, 0, 255); } newpoint = &m_vector_list[m_vector_index]; diff --git a/docs/release/src/emu/romload.cpp b/docs/release/src/emu/romload.cpp index 706f837b95b..97fa85b4487 100644 --- a/docs/release/src/emu/romload.cpp +++ b/docs/release/src/emu/romload.cpp @@ -101,15 +101,15 @@ std::vector<std::string> make_software_searchpath(software_list_device &swlist, } -chd_error do_open_disk(const emu_options &options, std::initializer_list<std::reference_wrapper<const std::vector<std::string> > > searchpath, const rom_entry *romp, chd_file &chd, std::function<const rom_entry * ()> next_parent) +std::error_condition do_open_disk(const emu_options &options, std::initializer_list<std::reference_wrapper<const std::vector<std::string> > > searchpath, const rom_entry *romp, chd_file &chd, std::function<const rom_entry * ()> next_parent) { // hashes are fixed, but we might need to try multiple filenames std::set<std::string> tried; 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)) + std::error_condition result(std::errc::no_such_file_or_directory); + while (romp && result) { filename = romp->name() + ".chd"; if (tried.insert(filename).second) @@ -120,8 +120,8 @@ chd_error do_open_disk(const emu_options &options, std::initializer_list<std::re { imgfile.reset(new emu_file(options.media_path(), paths, OPEN_FLAG_READ)); imgfile->set_restrict_to_mediapath(1); - const osd_file::error filerr(imgfile->open(filename, OPEN_FLAG_READ)); - if (osd_file::error::NONE == filerr) + const std::error_condition filerr(imgfile->open(filename, OPEN_FLAG_READ)); + if (!filerr) break; else imgfile.reset(); @@ -132,12 +132,12 @@ chd_error do_open_disk(const emu_options &options, std::initializer_list<std::re { fullpath = imgfile->fullpath(); imgfile.reset(); - result = chd.open(fullpath.c_str()); + result = chd.open(fullpath); } } // walk the parents looking for a CHD with the same hashes but a different name - if (CHDERR_NONE != result) + if (result) { while (romp) { @@ -345,11 +345,11 @@ chd_file *rom_load_manager::get_disk_handle(std::string_view region) file associated with the given region -------------------------------------------------*/ -int rom_load_manager::set_disk_handle(std::string_view region, const char *fullpath) +std::error_condition 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); - if (err == CHDERR_NONE) + if (!err) m_chd_list.push_back(std::move(chd)); return err; } @@ -439,7 +439,7 @@ void rom_load_manager::fill_random(u8 *base, u32 length) for missing files -------------------------------------------------*/ -void rom_load_manager::handle_missing_file(const rom_entry *romp, const std::vector<std::string> &tried_file_names, chd_error chderr) +void rom_load_manager::handle_missing_file(const rom_entry *romp, const std::vector<std::string> &tried_file_names, std::error_condition chderr) { std::string tried; if (!tried_file_names.empty()) @@ -453,12 +453,12 @@ void rom_load_manager::handle_missing_file(const rom_entry *romp, const std::vec tried += ')'; } - const bool is_chd(chderr != CHDERR_NONE); + const bool is_chd(chderr); const std::string name(is_chd ? romp->name() + ".chd" : romp->name()); - const bool is_chd_error(is_chd && chderr != CHDERR_FILE_NOT_FOUND); + const bool is_chd_error(is_chd && chderr != std::errc::no_such_file_or_directory); if (is_chd_error) - m_errorstring.append(string_format("%s CHD ERROR: %s\n", name, chd_file::error_string(chderr))); + m_errorstring.append(string_format("%s CHD ERROR: %s\n", name, chderr.message())); if (ROM_ISOPTIONAL(romp)) { @@ -638,7 +638,7 @@ void rom_load_manager::region_post_process(memory_region *region, bool invert) std::unique_ptr<emu_file> rom_load_manager::open_rom_file(std::initializer_list<std::reference_wrapper<const std::vector<std::string> > > searchpath, const rom_entry *romp, std::vector<std::string> &tried_file_names, bool from_list) { - osd_file::error filerr = osd_file::error::NOT_FOUND; + std::error_condition filerr = std::errc::no_such_file_or_directory; u32 const romsize = rom_file_size(romp); tried_file_names.clear(); @@ -664,14 +664,14 @@ std::unique_ptr<emu_file> rom_load_manager::open_rom_file(std::initializer_list< m_romsloadedsize += romsize; // return the result - if (osd_file::error::NONE != filerr) + if (filerr) return nullptr; else return result; } -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) +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, std::error_condition &filerr) { // record the set names we search tried.insert(tried.end(), paths.begin(), paths.end()); @@ -685,7 +685,7 @@ std::unique_ptr<emu_file> rom_load_manager::open_rom_file(const std::vector<std: filerr = result->open(name); // don't return anything if unsuccessful - if (osd_file::error::NONE != filerr) + if (filerr) return nullptr; else return result; @@ -939,7 +939,7 @@ void rom_load_manager::process_rom_entries(std::initializer_list<std::reference_ { file = open_rom_file(searchpath, romp, tried_file_names, from_list); if (!file) - handle_missing_file(romp, tried_file_names, CHDERR_NONE); + handle_missing_file(romp, tried_file_names, std::error_condition()); } // loop until we run out of reloads @@ -1000,44 +1000,44 @@ void rom_load_manager::process_rom_entries(std::initializer_list<std::reference_ open_disk_diff - open a DISK diff file -------------------------------------------------*/ -chd_error rom_load_manager::open_disk_diff(emu_options &options, const rom_entry *romp, chd_file &source, chd_file &diff_chd) +std::error_condition 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 = romp->name() + ".dif"; - /* try to open the diff */ + // try to open the diff LOG("Opening differencing image file: %s\n", fname.c_str()); emu_file diff_file(options.diff_directory(), OPEN_FLAG_READ | OPEN_FLAG_WRITE); - osd_file::error filerr = diff_file.open(fname); - if (filerr == osd_file::error::NONE) + std::error_condition filerr = diff_file.open(fname); + if (!filerr) { std::string fullpath(diff_file.fullpath()); diff_file.close(); LOG("Opening differencing image file: %s\n", fullpath.c_str()); - return diff_chd.open(fullpath.c_str(), true, &source); + return diff_chd.open(fullpath, true, &source); } - /* didn't work; try creating it instead */ + // didn't work; try creating it instead LOG("Creating differencing image: %s\n", fname.c_str()); diff_file.set_openflags(OPEN_FLAG_READ | OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); filerr = diff_file.open(fname); - if (filerr == osd_file::error::NONE) + if (!filerr) { std::string fullpath(diff_file.fullpath()); diff_file.close(); - /* create the CHD */ + // create the CHD LOG("Creating differencing image file: %s\n", fullpath.c_str()); chd_codec_type compression[4] = { CHD_CODEC_NONE }; - chd_error err = diff_chd.create(fullpath.c_str(), source.logical_bytes(), source.hunk_bytes(), compression, source); - if (err != CHDERR_NONE) + std::error_condition err = diff_chd.create(fullpath, source.logical_bytes(), source.hunk_bytes(), compression, source); + if (err) return err; return diff_chd.clone_all_metadata(source); } - return CHDERR_FILE_NOT_FOUND; + return std::errc::no_such_file_or_directory; } @@ -1059,7 +1059,7 @@ void rom_load_manager::process_disk_entries(std::initializer_list<std::reference if (ROMENTRY_ISFILE(romp)) { auto chd = std::make_unique<open_chd>(regiontag); - chd_error err; + std::error_condition err; /* make the filename of the source */ const std::string filename = romp->name() + ".chd"; @@ -1068,7 +1068,7 @@ void rom_load_manager::process_disk_entries(std::initializer_list<std::reference // FIXME: we've lost the ability to search parents here LOG("Opening disk image: %s\n", filename.c_str()); err = do_open_disk(machine().options(), searchpath, romp, chd->orig_chd(), next_parent); - if (err != CHDERR_NONE) + if (err) { handle_missing_file(romp, std::vector<std::string>(), err); chd = nullptr; @@ -1098,9 +1098,9 @@ void rom_load_manager::process_disk_entries(std::initializer_list<std::reference { /* try to open or create the diff */ err = open_disk_diff(machine().options(), romp, chd->orig_chd(), chd->diff_chd()); - if (err != CHDERR_NONE) + if (err) { - m_errorstring.append(string_format("%s DIFF CHD ERROR: %s\n", filename, chd_file::error_string(err))); + m_errorstring.append(string_format("%s DIFF CHD ERROR: %s\n", filename, err.message())); m_errors++; chd = nullptr; continue; @@ -1132,7 +1132,7 @@ std::vector<std::string> rom_load_manager::get_software_searchpath(software_list device -------------------------------------------------*/ -chd_error rom_load_manager::open_disk_image(const emu_options &options, const device_t &device, const rom_entry *romp, chd_file &image_chd) +std::error_condition rom_load_manager::open_disk_image(const emu_options &options, const device_t &device, const rom_entry *romp, chd_file &image_chd) { const std::vector<std::string> searchpath(device.searchpath()); @@ -1151,7 +1151,7 @@ chd_error rom_load_manager::open_disk_image(const emu_options &options, const de software item -------------------------------------------------*/ -chd_error rom_load_manager::open_disk_image(const emu_options &options, software_list_device &swlist, const software_info &swinfo, const rom_entry *romp, chd_file &image_chd) +std::error_condition rom_load_manager::open_disk_image(const emu_options &options, software_list_device &swlist, const software_info &swinfo, const rom_entry *romp, chd_file &image_chd) { std::vector<software_info const *> parents; std::vector<std::string> searchpath = make_software_searchpath(swlist, swinfo, parents); diff --git a/docs/release/src/emu/video.cpp b/docs/release/src/emu/video.cpp index b6dada1c0b5..56f877ec8fa 100644 --- a/docs/release/src/emu/video.cpp +++ b/docs/release/src/emu/video.cpp @@ -359,8 +359,8 @@ void video_manager::save_active_screen_snapshots() if (machine().render().is_live(screen)) { emu_file file(machine().options().snapshot_directory(), OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - osd_file::error filerr = open_next(file, "png"); - if (filerr == osd_file::error::NONE) + std::error_condition const filerr = open_next(file, "png"); + if (!filerr) save_snapshot(&screen, file); } } @@ -368,8 +368,8 @@ void video_manager::save_active_screen_snapshots() { // otherwise, just write a single snapshot emu_file file(machine().options().snapshot_directory(), OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - osd_file::error filerr = open_next(file, "png"); - if (filerr == osd_file::error::NONE) + std::error_condition const filerr = open_next(file, "png"); + if (!filerr) save_snapshot(nullptr, file); } } @@ -431,12 +431,12 @@ void video_manager::begin_recording_screen(const std::string &filename, uint32_t OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); // and open the actual file - osd_file::error filerr = filename.empty() + std::error_condition filerr = filename.empty() ? open_next(*movie_file, extension) : movie_file->open(filename); - if (filerr != osd_file::error::NONE) + if (filerr) { - osd_printf_error("Error creating movie, osd_file::error=%d\n", int(filerr)); + osd_printf_error("Error creating movie, %s:%d %s\n", filerr.category().name(), filerr.value(), filerr.message()); return; } @@ -1007,8 +1007,8 @@ void video_manager::recompute_speed(const attotime &emutime) { // create a final screenshot emu_file file(machine().options().snapshot_directory(), OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - osd_file::error filerr = file.open(machine().basename() + PATH_SEPARATOR "final.png"); - if (filerr == osd_file::error::NONE) + std::error_condition filerr = file.open(machine().basename() + PATH_SEPARATOR "final.png"); + if (!filerr) save_snapshot(nullptr, file); //printf("Scheduled exit at %f\n", emutime.as_double()); @@ -1096,7 +1096,7 @@ void video_manager::pixels(u32 *buffer) // scheme //------------------------------------------------- -osd_file::error video_manager::open_next(emu_file &file, const char *extension, uint32_t added_index) +std::error_condition video_manager::open_next(emu_file &file, const char *extension, uint32_t added_index) { u32 origflags = file.openflags(); @@ -1205,11 +1205,9 @@ osd_file::error video_manager::open_next(emu_file &file, const char *extension, strreplace(fname, "%i", string_format("%04d", seq)); // try to open the file; stop when we fail - osd_file::error filerr = file.open(fname); - if (filerr == osd_file::error::NOT_FOUND) - { + std::error_condition const filerr = file.open(fname); + if (std::errc::no_such_file_or_directory == filerr) break; - } } } diff --git a/docs/release/src/emu/video.h b/docs/release/src/emu/video.h index 98b91713a53..4ff0035a5c4 100644 --- a/docs/release/src/emu/video.h +++ b/docs/release/src/emu/video.h @@ -19,6 +19,8 @@ #include "recording.h" +#include <system_error> + //************************************************************************** // CONSTANTS @@ -62,7 +64,7 @@ public: // misc void toggle_record_movie(movie_recording::format format); - osd_file::error open_next(emu_file &file, const char *extension, uint32_t index = 0); + std::error_condition open_next(emu_file &file, const char *extension, uint32_t index = 0); void compute_snapshot_size(s32 &width, s32 &height); void pixels(u32 *buffer); diff --git a/docs/release/src/frontend/mame/audit.cpp b/docs/release/src/frontend/mame/audit.cpp index d6579c62d8a..6f1d52f2f0f 100644 --- a/docs/release/src/frontend/mame/audit.cpp +++ b/docs/release/src/frontend/mame/audit.cpp @@ -425,11 +425,11 @@ media_auditor::summary media_auditor::audit_samples() while (path.next(curpath, samplename)) { // attempt to access the file (.flac) or (.wav) - osd_file::error filerr = file.open(curpath + ".flac"); - if (filerr != osd_file::error::NONE) + std::error_condition filerr = file.open(curpath + ".flac"); + if (filerr) filerr = file.open(curpath + ".wav"); - if (filerr == osd_file::error::NONE) + if (!filerr) { record.set_status(audit_status::GOOD, audit_substatus::GOOD); found++; @@ -589,14 +589,14 @@ media_auditor::audit_record &media_auditor::audit_one_rom(const std::vector<std: file.set_restrict_to_mediapath(1); // open the file if we can - osd_file::error filerr; + std::error_condition filerr; if (has_crc) filerr = file.open(record.name(), crc); else filerr = file.open(record.name()); // if it worked, get the actual length and hashes, then stop - if (filerr == osd_file::error::NONE) + if (!filerr) record.set_actual(file.hashes(m_validation), file.size()); // compute the final status @@ -617,10 +617,10 @@ media_auditor::audit_record &media_auditor::audit_one_disk(const rom_entry *rom, // open the disk chd_file source; - const chd_error err = rom_load_manager::open_disk_image(m_enumerator.options(), std::forward<T>(args)..., rom, source); + const std::error_condition err = rom_load_manager::open_disk_image(m_enumerator.options(), std::forward<T>(args)..., rom, source); // if we succeeded, get the hashes - if (err == CHDERR_NONE) + if (!err) { util::hash_collection hashes; @@ -633,7 +633,7 @@ media_auditor::audit_record &media_auditor::audit_one_disk(const rom_entry *rom, } // compute the final status - compute_status(record, rom, err == CHDERR_NONE); + compute_status(record, rom, !err); return record; } diff --git a/docs/release/src/frontend/mame/clifront.cpp b/docs/release/src/frontend/mame/clifront.cpp index fd8b6463012..f7c0db3e1dd 100644 --- a/docs/release/src/frontend/mame/clifront.cpp +++ b/docs/release/src/frontend/mame/clifront.cpp @@ -1681,7 +1681,7 @@ void cli_frontend::execute_commands(std::string_view exename) { // attempt to open the output file emu_file file(OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - if (file.open(std::string(emulator_info::get_configname()) + ".ini") != osd_file::error::NONE) + if (file.open(std::string(emulator_info::get_configname()) + ".ini")) throw emu_fatalerror("Unable to create file %s.ini\n",emulator_info::get_configname()); // generate the updated INI @@ -1689,7 +1689,7 @@ void cli_frontend::execute_commands(std::string_view exename) ui_options ui_opts; emu_file file_ui(OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - if (file_ui.open("ui.ini") != osd_file::error::NONE) + if (file_ui.open("ui.ini")) throw emu_fatalerror("Unable to create file ui.ini\n"); // generate the updated INI @@ -1704,7 +1704,7 @@ void cli_frontend::execute_commands(std::string_view exename) plugin_opts.scan_directory(pluginpath, true); } emu_file file_plugin(OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - if (file_plugin.open("plugin.ini") != osd_file::error::NONE) + if (file_plugin.open("plugin.ini")) throw emu_fatalerror("Unable to create file plugin.ini\n"); // generate the updated INI diff --git a/docs/release/src/frontend/mame/language.cpp b/docs/release/src/frontend/mame/language.cpp index 6c0a8954384..d68ba282087 100644 --- a/docs/release/src/frontend/mame/language.cpp +++ b/docs/release/src/frontend/mame/language.cpp @@ -72,11 +72,11 @@ void load_translation(emu_options &m_options) // MESSUI: See if language file exists. If not, try English, see if that exists. If not, use inbuilt default. emu_file file(m_options.language_path(), OPEN_FLAG_READ); - if (file.open(name + PATH_SEPARATOR "strings.mo") != osd_file::error::NONE) + if (file.open(name + PATH_SEPARATOR "strings.mo")) { osd_printf_verbose("Error opening translation file %s\n", name); name = "English"; - if (file.open(name + PATH_SEPARATOR "strings.mo") != osd_file::error::NONE) + if (file.open(name + PATH_SEPARATOR "strings.mo")) { osd_printf_verbose("Error opening translation file %s\n", name); return; diff --git a/docs/release/src/frontend/mame/mameopts.cpp b/docs/release/src/frontend/mame/mameopts.cpp index 0e6c28da23d..a1d370ddb74 100644 --- a/docs/release/src/frontend/mame/mameopts.cpp +++ b/docs/release/src/frontend/mame/mameopts.cpp @@ -130,8 +130,8 @@ void mame_options::parse_one_ini(emu_options &options, const char *basename, int // open the file; if we fail, that's ok emu_file file(options.ini_path(), OPEN_FLAG_READ); osd_printf_verbose("Attempting load of %s.ini\n", basename); - osd_file::error filerr = file.open(std::string(basename) + ".ini"); - if (filerr != osd_file::error::NONE) + std::error_condition const filerr = file.open(std::string(basename) + ".ini"); + if (filerr) return; // parse the file diff --git a/docs/release/src/frontend/mame/ui/inifile.cpp b/docs/release/src/frontend/mame/ui/inifile.cpp index 90d9f1213a8..9e43de79623 100644 --- a/docs/release/src/frontend/mame/ui/inifile.cpp +++ b/docs/release/src/frontend/mame/ui/inifile.cpp @@ -45,7 +45,7 @@ inifile_manager::inifile_manager(ui_options &options) if (core_filename_ends_with(name, ".ini")) { emu_file file(m_options.categoryini_path(), OPEN_FLAG_READ); - if (file.open(name) == osd_file::error::NONE) + if (!file.open(name)) { init_category(std::move(name), file); file.close(); @@ -224,7 +224,7 @@ favorite_manager::favorite_manager(ui_options &options) , m_need_sort(true) { emu_file file(m_options.ui_path(), OPEN_FLAG_READ); - if (file.open(FAVORITE_FILENAME) == osd_file::error::NONE) + if (!file.open(FAVORITE_FILENAME)) { char readbuf[1024]; file.gets(readbuf, 1024); @@ -545,7 +545,7 @@ void favorite_manager::save_favorites() { // attempt to open the output file emu_file file(m_options.ui_path(), OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS); - if (file.open(FAVORITE_FILENAME) == osd_file::error::NONE) + if (!file.open(FAVORITE_FILENAME)) { if (m_favorites.empty()) { diff --git a/docs/release/src/hbmame/drivers/atarig42.cpp b/docs/release/src/hbmame/drivers/atarig42.cpp index e8f1376f299..08faa237818 100644 --- a/docs/release/src/hbmame/drivers/atarig42.cpp +++ b/docs/release/src/hbmame/drivers/atarig42.cpp @@ -3,7 +3,7 @@ #include "../mame/drivers/atarig42.cpp" - +#if 0 class dangerex_state : public atarig42_0x400_state { public: @@ -123,4 +123,6 @@ void dangerex_state::init_dangerex() GAME( 1992, dangerex, 0, atarig42_0x400, dangerex, dangerex_state, init_dangerex, ROT0, "Atari Games", "Danger Express (prototype)", 0 ) +#endif + diff --git a/docs/release/src/hbmame/drivers/bublbobl.cpp b/docs/release/src/hbmame/drivers/bublbobl.cpp index 2049f770f21..ae41104af0f 100644 --- a/docs/release/src/hbmame/drivers/bublbobl.cpp +++ b/docs/release/src/hbmame/drivers/bublbobl.cpp @@ -216,7 +216,28 @@ ROM_START( bbredux3 ) ROM_LOAD( "pal16l8.u4", 0x0400, 0x0104, CRC(077d20a8) SHA1(8e568ffd6f66c3dd61708dd0f3be9c2ed488ae4b) ) ROM_END -// issues since 2017-08-06: music keeps dropping out, reboots if you press ctrl instead of 1 at level select screen +class bublbobl_hbmame : public bublbobl_state +{ +public: + bublbobl_hbmame(const machine_config &mconfig, device_type type, const char *tag) + : bublbobl_state(mconfig, type, tag) + { } + + void sboblboblh(machine_config &config); + +private: +}; + +void bublbobl_hbmame::sboblboblh(machine_config &config) +{ + boblbobl(config); + + config.device_remove("watchdog"); + WATCHDOG_TIMER(config, "watchdog").set_vblank_count("screen", 1280); // stop it rebooting in the level select screen +} + + +// issues since 2017-08-06: music keeps dropping out ROM_START( sboblboblh ) ROM_REGION( 0x30000, "maincpu", 0 ) ROM_LOAD( "bb3.u28", 0x00000, 0x08000, CRC(c23cd704) SHA1(a389ecc8d55d1b0c915fd3814d93338b9e402701) ) @@ -351,7 +372,7 @@ GAME( 2000, bbhackv1, bublbobl, bub68705, bublbobl, bub68705_state, init_commo GAME( 2013, bbredux1, bublbobl, boblbobl, boblbobl, bublbobl_state, init_common, ROT0, "Punji", "Bobble Bobble Redux (Level Skip)", MACHINE_SUPPORTS_SAVE ) GAME( 2013, bbredux2, bublbobl, boblbobl, boblbobl, bublbobl_state, init_common, ROT0, "Punji", "Bobble Bobble Redux (Game Continue)", MACHINE_SUPPORTS_SAVE ) GAME( 2013, bbredux3, bublbobl, boblbobl, boblbobl, bublbobl_state, init_common, ROT0, "Punji", "Bobble Bobble Redux (High Score)", MACHINE_SUPPORTS_SAVE ) -GAME( 19??, sboblboblh, bublbobl, boblbobl, boblbobl, bublbobl_state, init_common, ROT0, "hack", "Super Bobble Bobble (Level Select)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 19??, sboblboblh, bublbobl, sboblboblh, boblbobl, bublbobl_hbmame, init_common, ROT0, "hack", "Super Bobble Bobble (Level Select)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) GAME( 2007, bublbobf, bublbobl, bublbobl, bublbobl, bublbobl_state, init_common, ROT0, "Arkatrad", "Bubble Bobble (French)", MACHINE_SUPPORTS_SAVE ) GAME( 1986, bublboblu, bublbobl, bublbobl, bublbobl, bublbobl_state, init_common, ROT0, "bootleg", "Bubble Bobble (Ultra Version, Hack)", MACHINE_SUPPORTS_SAVE ) GAME( 1986, bub68705a, bublbobl, bub68705, bublbobl, bub68705_state, init_common, ROT0, "bootleg", "Bubble Bobble (Bootleg with 68705, set 2)", MACHINE_SUPPORTS_SAVE ) diff --git a/docs/release/src/hbmame/drivers/midwunit.cpp b/docs/release/src/hbmame/drivers/midwunit.cpp index ccda462e151..912acd111a5 100644 --- a/docs/release/src/hbmame/drivers/midwunit.cpp +++ b/docs/release/src/hbmame/drivers/midwunit.cpp @@ -1672,6 +1672,144 @@ ROM_START( umk3uc20210423 ) // date from site ROM_LOAD32_BYTE( "uc20181023.u110", 0x1400003, 0x100000, CRC(88f78828) SHA1(95f83c2f3d7026c2f592bb5de3142613d2a7e6ce) ) ROM_END +ROM_START( umk3uc20210430 ) // date on screen, FB/NEO version + ROM_REGION16_LE( 0x800000, "dcs", ROMREGION_ERASEFF ) + ROM_LOAD16_BYTE( "l2.0_mortal_kombat_3_u2_ultimate.u2", 0x000000, 0x100000, CRC(3838cfe5) SHA1(e3d2901f3bae1362742fc6ee0aa31c9f63b4dfa3) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u3_music_spch.u3", 0x200000, 0x100000, CRC(856fe411) SHA1(6165ebecfce7500e948d84492ffa19eed7f47091) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u4_music_spch.u4", 0x400000, 0x100000, CRC(428a406f) SHA1(e70ec83cd054de0da1e178720ed0035b8887f797) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u5_music_spch.u5", 0x600000, 0x100000, CRC(3b98a09f) SHA1(edf1d02a56dcf3349e6b4bb4097acfe7592305f4) ) + + ROM_REGION16_LE( 0x100000, "maincpu", 0 ) + ROM_LOAD16_BYTE( "uc20210430.u54", 0x00000, 0x80000, CRC(26707d48) SHA1(fbe89901e856f8ea2f261df44ec20f956b530d29) ) + ROM_LOAD16_BYTE( "uc20210430.u63", 0x00001, 0x80000, CRC(57f16a4a) SHA1(ec9a86b32b61cf3ecdb1a23c264292ef3abb9b8a) ) + + ROM_REGION( 0x1009, "serial_security:pic", 0 ) + ROM_LOAD( "463_mk3_ultimate.u64", 0x0000, 0x1009, CRC(4f425218) SHA1(7f26045ed2c9ca94fadcb673ce10f28208aa720e) ) + + ROM_REGION( 0x2400000, "gfxrom", 0 ) + ROM_LOAD32_BYTE( "uc20181023.u133", 0x0000000, 0x100000, CRC(62c6f8ab) SHA1(cfe77e21cb25b4513411658051b849e3c0dd728c) ) + ROM_LOAD32_BYTE( "uc20181023.u132", 0x0000001, 0x100000, CRC(87d977dc) SHA1(3bd6ded7c212621c3f45e29fa90a19b1c7abaac6) ) + ROM_LOAD32_BYTE( "uc20181023.u131", 0x0000002, 0x100000, CRC(483cbc7b) SHA1(39d03642ea62f8623b76ecf084a390db7c366dcd) ) + ROM_LOAD32_BYTE( "uc20181023.u130", 0x0000003, 0x100000, CRC(ecf63628) SHA1(3efeda0a59f110e6ab17247b1fed7965291ec885) ) + + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u129_game_rom.u129", 0x0400000, 0x100000, CRC(a8b41803) SHA1(9697e35e8bb51d6d36b1d7ae47377b446e57682f) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u128_game_rom.u128", 0x0400001, 0x100000, CRC(b410d72f) SHA1(ac5c1c6f744186540f4ab100d9bd4ce6007e600b) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u127_game_rom.u127", 0x0400002, 0x100000, CRC(bd985be7) SHA1(f5183abea2e5eb2c2c8cefa72c9ed321679f5128) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u126_game_rom.u126", 0x0400003, 0x100000, CRC(e7c32cf4) SHA1(94ea7b2eed7dae66f5dd676c20d6b360140e3e0e) ) + + ROM_LOAD32_BYTE( "uc20181023.u125", 0x0800000, 0x100000, CRC(78e8b9e5) SHA1(9a5f87e896c023b70b74a40c4fcb82e46cd8b1cb) ) + ROM_LOAD32_BYTE( "uc20181023.u124", 0x0800001, 0x100000, CRC(1137536c) SHA1(8aee7855a454eeb68e51205ba47e94a0a2915ee3) ) + ROM_LOAD32_BYTE( "uc20181023.u123", 0x0800002, 0x100000, CRC(6a65e954) SHA1(b04e64f361500093450a1a648dad13412282bda1) ) + ROM_LOAD32_BYTE( "uc20181023.u122", 0x0800003, 0x100000, CRC(e6274718) SHA1(66bc57f4e05af9b27caa89fb0a3bd5aef3892117) ) + + ROM_LOAD32_BYTE( "uc20200506.u121", 0x0c00000, 0x100000, CRC(efd4084c) SHA1(f8ac8227443abcc313c358c4dbb34ad896ad7b70) ) + ROM_LOAD32_BYTE( "uc20200506.u120", 0x0c00001, 0x100000, CRC(42a6c0e6) SHA1(853dce49454a86745ec4034130d6720457d703a1) ) + ROM_LOAD32_BYTE( "uc20200506.u119", 0x0c00002, 0x100000, CRC(948d4aa7) SHA1(e506327edcba86cb56d8ecb787e75babf4019a71) ) + ROM_LOAD32_BYTE( "uc20200506.u118", 0x0c00003, 0x100000, CRC(ab7ca588) SHA1(f7c539183d203ec9f48ee27ba8a9dc2efc4d5035) ) + + ROM_LOAD32_BYTE( "uc20210430.u117", 0x1000000, 0x100000, CRC(48a21834) SHA1(709d8420091049d36e51bbb711d3f64c6f19fe83) ) + ROM_LOAD32_BYTE( "uc20210430.u116", 0x1000001, 0x100000, CRC(7a16b282) SHA1(6f63d45f43385b2f480ad929892413dba18f01a1) ) + ROM_LOAD32_BYTE( "uc20210430.u115", 0x1000002, 0x100000, CRC(32195ef2) SHA1(3b3e00ce511d1b5b930bf0b1e03fb3a91b11b946) ) + ROM_LOAD32_BYTE( "uc20210430.u114", 0x1000003, 0x100000, CRC(b15f13e1) SHA1(20a66871225f1f0903b215d692279d595bcfe412) ) + + ROM_LOAD32_BYTE( "uc20181023.u113", 0x1400000, 0x100000, CRC(b352019b) SHA1(fa4e902e5750cf542ac5b566caa27d790ceb2544) ) + ROM_LOAD32_BYTE( "uc20181023.u112", 0x1400001, 0x100000, CRC(71143b7c) SHA1(5e97e54406002aa2297879a7b358f1d263593ffe) ) + ROM_LOAD32_BYTE( "uc20181023.u111", 0x1400002, 0x100000, CRC(09821226) SHA1(740aa13569e59963ee87f32c39b558cb53f8a81d) ) + ROM_LOAD32_BYTE( "uc20181023.u110", 0x1400003, 0x100000, CRC(88f78828) SHA1(95f83c2f3d7026c2f592bb5de3142613d2a7e6ce) ) +ROM_END + +ROM_START( umk3uk20210709 ) // date from site + ROM_REGION16_LE( 0x800000, "dcs", ROMREGION_ERASEFF ) + ROM_LOAD16_BYTE( "l2.0_mortal_kombat_3_u2_ultimate.u2", 0x000000, 0x100000, CRC(3838cfe5) SHA1(e3d2901f3bae1362742fc6ee0aa31c9f63b4dfa3) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u3_music_spch.u3", 0x200000, 0x100000, CRC(856fe411) SHA1(6165ebecfce7500e948d84492ffa19eed7f47091) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u4_music_spch.u4", 0x400000, 0x100000, CRC(428a406f) SHA1(e70ec83cd054de0da1e178720ed0035b8887f797) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u5_music_spch.u5", 0x600000, 0x100000, CRC(3b98a09f) SHA1(edf1d02a56dcf3349e6b4bb4097acfe7592305f4) ) + + ROM_REGION16_LE( 0x100000, "maincpu", 0 ) + ROM_LOAD16_BYTE( "uk20210709.u54", 0x00000, 0x80000, CRC(f8e2c5a8) SHA1(0e586d2ca7e92116b00c11e81b1cf8f1985e29fa) ) + ROM_LOAD16_BYTE( "uk20210709.u63", 0x00001, 0x80000, CRC(3951aa40) SHA1(6ac7728cefedc42cd7f64a8cca5c33707c38677e) ) + + ROM_REGION( 0x1009, "serial_security:pic", 0 ) + ROM_LOAD( "463_mk3_ultimate.u64", 0x0000, 0x1009, CRC(4f425218) SHA1(7f26045ed2c9ca94fadcb673ce10f28208aa720e) ) + + ROM_REGION( 0x2400000, "gfxrom", 0 ) + ROM_LOAD32_BYTE( "uc20181023.u133", 0x0000000, 0x100000, CRC(62c6f8ab) SHA1(cfe77e21cb25b4513411658051b849e3c0dd728c) ) + ROM_LOAD32_BYTE( "uc20181023.u132", 0x0000001, 0x100000, CRC(87d977dc) SHA1(3bd6ded7c212621c3f45e29fa90a19b1c7abaac6) ) + ROM_LOAD32_BYTE( "uc20181023.u131", 0x0000002, 0x100000, CRC(483cbc7b) SHA1(39d03642ea62f8623b76ecf084a390db7c366dcd) ) + ROM_LOAD32_BYTE( "uc20181023.u130", 0x0000003, 0x100000, CRC(ecf63628) SHA1(3efeda0a59f110e6ab17247b1fed7965291ec885) ) + + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u129_game_rom.u129", 0x0400000, 0x100000, CRC(a8b41803) SHA1(9697e35e8bb51d6d36b1d7ae47377b446e57682f) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u128_game_rom.u128", 0x0400001, 0x100000, CRC(b410d72f) SHA1(ac5c1c6f744186540f4ab100d9bd4ce6007e600b) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u127_game_rom.u127", 0x0400002, 0x100000, CRC(bd985be7) SHA1(f5183abea2e5eb2c2c8cefa72c9ed321679f5128) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u126_game_rom.u126", 0x0400003, 0x100000, CRC(e7c32cf4) SHA1(94ea7b2eed7dae66f5dd676c20d6b360140e3e0e) ) + + ROM_LOAD32_BYTE( "uc20181023.u125", 0x0800000, 0x100000, CRC(78e8b9e5) SHA1(9a5f87e896c023b70b74a40c4fcb82e46cd8b1cb) ) + ROM_LOAD32_BYTE( "uc20181023.u124", 0x0800001, 0x100000, CRC(1137536c) SHA1(8aee7855a454eeb68e51205ba47e94a0a2915ee3) ) + ROM_LOAD32_BYTE( "uc20181023.u123", 0x0800002, 0x100000, CRC(6a65e954) SHA1(b04e64f361500093450a1a648dad13412282bda1) ) + ROM_LOAD32_BYTE( "uc20181023.u122", 0x0800003, 0x100000, CRC(e6274718) SHA1(66bc57f4e05af9b27caa89fb0a3bd5aef3892117) ) + + ROM_LOAD32_BYTE( "uc20200506.u121", 0x0c00000, 0x100000, CRC(efd4084c) SHA1(f8ac8227443abcc313c358c4dbb34ad896ad7b70) ) + ROM_LOAD32_BYTE( "uc20200506.u120", 0x0c00001, 0x100000, CRC(42a6c0e6) SHA1(853dce49454a86745ec4034130d6720457d703a1) ) + ROM_LOAD32_BYTE( "uc20200506.u119", 0x0c00002, 0x100000, CRC(948d4aa7) SHA1(e506327edcba86cb56d8ecb787e75babf4019a71) ) + ROM_LOAD32_BYTE( "uc20200506.u118", 0x0c00003, 0x100000, CRC(ab7ca588) SHA1(f7c539183d203ec9f48ee27ba8a9dc2efc4d5035) ) + + ROM_LOAD32_BYTE( "uk20210709.u117", 0x1000000, 0x100000, CRC(36739726) SHA1(f00b0e9edfb00ebe1c7f3d69fc64c9bbf11f415f) ) + ROM_LOAD32_BYTE( "uk20210709.u116", 0x1000001, 0x100000, CRC(cdf4adac) SHA1(c31771eecbc0450169a9737746fe0f6215eb7d57) ) + ROM_LOAD32_BYTE( "uk20210709.u115", 0x1000002, 0x100000, CRC(d800d13f) SHA1(be9a3148017adc395857c58d2fc706b77d8e85f4) ) + ROM_LOAD32_BYTE( "uk20210709.u114", 0x1000003, 0x100000, CRC(9ec22b64) SHA1(3b32f58c8473dcb5dc647b3128e72fd471c85888) ) + + ROM_LOAD32_BYTE( "uc20181023.u113", 0x1400000, 0x100000, CRC(b352019b) SHA1(fa4e902e5750cf542ac5b566caa27d790ceb2544) ) + ROM_LOAD32_BYTE( "uc20181023.u112", 0x1400001, 0x100000, CRC(71143b7c) SHA1(5e97e54406002aa2297879a7b358f1d263593ffe) ) + ROM_LOAD32_BYTE( "uc20181023.u111", 0x1400002, 0x100000, CRC(09821226) SHA1(740aa13569e59963ee87f32c39b558cb53f8a81d) ) + ROM_LOAD32_BYTE( "uc20181023.u110", 0x1400003, 0x100000, CRC(88f78828) SHA1(95f83c2f3d7026c2f592bb5de3142613d2a7e6ce) ) +ROM_END + +ROM_START( umk3uk20210727 ) // date from files + ROM_REGION16_LE( 0x800000, "dcs", ROMREGION_ERASEFF ) + ROM_LOAD16_BYTE( "l2.0_mortal_kombat_3_u2_ultimate.u2", 0x000000, 0x100000, CRC(3838cfe5) SHA1(e3d2901f3bae1362742fc6ee0aa31c9f63b4dfa3) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u3_music_spch.u3", 0x200000, 0x100000, CRC(856fe411) SHA1(6165ebecfce7500e948d84492ffa19eed7f47091) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u4_music_spch.u4", 0x400000, 0x100000, CRC(428a406f) SHA1(e70ec83cd054de0da1e178720ed0035b8887f797) ) + ROM_LOAD16_BYTE( "l1_mortal_kombat_3_u5_music_spch.u5", 0x600000, 0x100000, CRC(3b98a09f) SHA1(edf1d02a56dcf3349e6b4bb4097acfe7592305f4) ) + + ROM_REGION16_LE( 0x100000, "maincpu", 0 ) + ROM_LOAD16_BYTE( "uk20210727.u54", 0x00000, 0x80000, CRC(bc509bce) SHA1(d34e638c21ae7e24ba7b30585691152009041a2f) ) + ROM_LOAD16_BYTE( "uk20210727.u63", 0x00001, 0x80000, CRC(2f900a03) SHA1(916f57a46fae23d137641139c3a80b5cf2417224) ) + + ROM_REGION( 0x1009, "serial_security:pic", 0 ) + ROM_LOAD( "463_mk3_ultimate.u64", 0x0000, 0x1009, CRC(4f425218) SHA1(7f26045ed2c9ca94fadcb673ce10f28208aa720e) ) + + ROM_REGION( 0x2400000, "gfxrom", 0 ) + ROM_LOAD32_BYTE( "uc20181023.u133", 0x0000000, 0x100000, CRC(62c6f8ab) SHA1(cfe77e21cb25b4513411658051b849e3c0dd728c) ) + ROM_LOAD32_BYTE( "uc20181023.u132", 0x0000001, 0x100000, CRC(87d977dc) SHA1(3bd6ded7c212621c3f45e29fa90a19b1c7abaac6) ) + ROM_LOAD32_BYTE( "uc20181023.u131", 0x0000002, 0x100000, CRC(483cbc7b) SHA1(39d03642ea62f8623b76ecf084a390db7c366dcd) ) + ROM_LOAD32_BYTE( "uc20181023.u130", 0x0000003, 0x100000, CRC(ecf63628) SHA1(3efeda0a59f110e6ab17247b1fed7965291ec885) ) + + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u129_game_rom.u129", 0x0400000, 0x100000, CRC(a8b41803) SHA1(9697e35e8bb51d6d36b1d7ae47377b446e57682f) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u128_game_rom.u128", 0x0400001, 0x100000, CRC(b410d72f) SHA1(ac5c1c6f744186540f4ab100d9bd4ce6007e600b) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u127_game_rom.u127", 0x0400002, 0x100000, CRC(bd985be7) SHA1(f5183abea2e5eb2c2c8cefa72c9ed321679f5128) ) + ROM_LOAD32_BYTE( "l1_mortal_kombat_3_u126_game_rom.u126", 0x0400003, 0x100000, CRC(e7c32cf4) SHA1(94ea7b2eed7dae66f5dd676c20d6b360140e3e0e) ) + + ROM_LOAD32_BYTE( "uc20181023.u125", 0x0800000, 0x100000, CRC(78e8b9e5) SHA1(9a5f87e896c023b70b74a40c4fcb82e46cd8b1cb) ) + ROM_LOAD32_BYTE( "uc20181023.u124", 0x0800001, 0x100000, CRC(1137536c) SHA1(8aee7855a454eeb68e51205ba47e94a0a2915ee3) ) + ROM_LOAD32_BYTE( "uc20181023.u123", 0x0800002, 0x100000, CRC(6a65e954) SHA1(b04e64f361500093450a1a648dad13412282bda1) ) + ROM_LOAD32_BYTE( "uc20181023.u122", 0x0800003, 0x100000, CRC(e6274718) SHA1(66bc57f4e05af9b27caa89fb0a3bd5aef3892117) ) + + ROM_LOAD32_BYTE( "uc20200506.u121", 0x0c00000, 0x100000, CRC(efd4084c) SHA1(f8ac8227443abcc313c358c4dbb34ad896ad7b70) ) + ROM_LOAD32_BYTE( "uc20200506.u120", 0x0c00001, 0x100000, CRC(42a6c0e6) SHA1(853dce49454a86745ec4034130d6720457d703a1) ) + ROM_LOAD32_BYTE( "uc20200506.u119", 0x0c00002, 0x100000, CRC(948d4aa7) SHA1(e506327edcba86cb56d8ecb787e75babf4019a71) ) + ROM_LOAD32_BYTE( "uc20200506.u118", 0x0c00003, 0x100000, CRC(ab7ca588) SHA1(f7c539183d203ec9f48ee27ba8a9dc2efc4d5035) ) + + ROM_LOAD32_BYTE( "uk20210709.u117", 0x1000000, 0x100000, CRC(36739726) SHA1(f00b0e9edfb00ebe1c7f3d69fc64c9bbf11f415f) ) + ROM_LOAD32_BYTE( "uk20210709.u116", 0x1000001, 0x100000, CRC(cdf4adac) SHA1(c31771eecbc0450169a9737746fe0f6215eb7d57) ) + ROM_LOAD32_BYTE( "uk20210709.u115", 0x1000002, 0x100000, CRC(d800d13f) SHA1(be9a3148017adc395857c58d2fc706b77d8e85f4) ) + ROM_LOAD32_BYTE( "uk20210709.u114", 0x1000003, 0x100000, CRC(9ec22b64) SHA1(3b32f58c8473dcb5dc647b3128e72fd471c85888) ) + + ROM_LOAD32_BYTE( "uc20181023.u113", 0x1400000, 0x100000, CRC(b352019b) SHA1(fa4e902e5750cf542ac5b566caa27d790ceb2544) ) + ROM_LOAD32_BYTE( "uc20181023.u112", 0x1400001, 0x100000, CRC(71143b7c) SHA1(5e97e54406002aa2297879a7b358f1d263593ffe) ) + ROM_LOAD32_BYTE( "uc20181023.u111", 0x1400002, 0x100000, CRC(09821226) SHA1(740aa13569e59963ee87f32c39b558cb53f8a81d) ) + ROM_LOAD32_BYTE( "uc20181023.u110", 0x1400003, 0x100000, CRC(88f78828) SHA1(95f83c2f3d7026c2f592bb5de3142613d2a7e6ce) ) +ROM_END + ROM_START( umk3tm20180120 ) ROM_REGION16_LE( 0x800000, "dcs", ROMREGION_ERASEFF ) ROM_LOAD16_BYTE( "l2.0_mortal_kombat_3_u2_ultimate.u2", 0x000000, 0x100000, CRC(3838cfe5) SHA1(e3d2901f3bae1362742fc6ee0aa31c9f63b4dfa3) ) @@ -1843,6 +1981,9 @@ GAME( 2021, umk3uc20210228, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, GAME( 2021, umk3uc20210304, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (Ultimate Cup Edition 2021-03-04)", MACHINE_SUPPORTS_SAVE ) GAME( 2021, umk3uc20210401, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (Ultimate Cup Edition 2021-04-01)", MACHINE_SUPPORTS_SAVE ) GAME( 2021, umk3uc20210423, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (Ultimate Cup Edition 2021-04-23)", MACHINE_SUPPORTS_SAVE ) +GAME( 2021, umk3uc20210430, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (Ultimate Cup Edition 2021-04-30)", MACHINE_SUPPORTS_SAVE ) +GAME( 2021, umk3uk20210709, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (UC Edition 2021-07-09)", MACHINE_SUPPORTS_SAVE ) +GAME( 2021, umk3uk20210727, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (UC Edition 2021-07-27)", MACHINE_SUPPORTS_SAVE ) GAME( 2018, umk3tm20180120, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (Team Edition 2018-01-20)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) GAME( 2019, umk3tm20190417, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "TEAM UMK 3", "Ultimate Mortal Kombat 3 (Team Edition 2 2019-04-17)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) GAME( 2019, umk3plus20190921, umk3, wunit_picemu, mk3, midwunit_state, init_umk3, ROT0, "Mortalkombatplus", "Ultimate Mortal Kombat 3 (Plus Beta 1 2019-09-21)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) diff --git a/docs/release/src/hbmame/drivers/mslug3.cpp b/docs/release/src/hbmame/drivers/mslug3.cpp index ebaf60da35d..e88a05bc0fe 100644 --- a/docs/release/src/hbmame/drivers/mslug3.cpp +++ b/docs/release/src/hbmame/drivers/mslug3.cpp @@ -10778,7 +10778,7 @@ GAME( 2020, mslug3h09, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ GAME( 2000, mslug3h10, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "Ydmis", "Metal Slug 3 (Fire Bomb)", MACHINE_SUPPORTS_SAVE ) GAME( 2000, mslug3h11, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "Ydmis", "Metal Slug 3 (Stone Bomb)", MACHINE_SUPPORTS_SAVE ) GAME( 2000, mslug3h12, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "DDJ", "Metal Slug 3 (Change Character)", MACHINE_SUPPORTS_SAVE ) -GAME( 2000, mslug3h13, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "DDJ", "Metal Slug 3 (Change Weapon)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) +GAME( 2000, mslug3h13, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "DDJ", "Metal Slug 3 (Change Weapon)", MACHINE_SUPPORTS_SAVE ) GAME( 2000, mslug3h14, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "DDJ", "Metal Slug 3 (Change Zombie)", MACHINE_SUPPORTS_SAVE ) GAME( 2000, mslug3h15, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "Ydmis", "Metal Slug 3 (Prisoner Never Lost)", MACHINE_SUPPORTS_SAVE ) GAME( 2000, mslug3h16, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "DDJ", "Metal Slug 3 (Quick Go Next Mission)", MACHINE_SUPPORTS_SAVE ) @@ -10802,20 +10802,20 @@ GAME( 2000, mslug3h33, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ GAME( 2000, mslug3h34, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "Ydmis", "Metal Slug 3 (Weapons ShotGun With Infinite Ammo)", MACHINE_SUPPORTS_SAVE ) GAME( 2000, mslug3h35, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "Ydmis", "Metal Slug 3 (Weapons Thunder Cloud With Infinite Ammo)", MACHINE_SUPPORTS_SAVE ) GAME( 2000, mslug3h36, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "Ydmis", "Metal Slug 3 (Weapons Rocket Launcher With Infinite Ammo)" , MACHINE_SUPPORTS_SAVE ) -GAME( 2000, mslug3h37, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "PlayerX China", "Metal Slug 3 (Out Of Blue)" , MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) +GAME( 2000, mslug3h37, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "PlayerX China", "Metal Slug 3 (Out Of Blue)" , MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug3h38, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Burst Enhanced Edition 2020-03-29)", MACHINE_SUPPORTS_SAVE ) GAME( 2018, mslug3h39, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Enemy Soldier Reset Alpha 2014-01-18)" , MACHINE_SUPPORTS_SAVE ) -GAME( 2017, mslug3h40, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Random Enemies Resetting Version 1.0 2017-12-08)" , MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2017, mslug3h40, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Random Enemies Resetting Version 1.0 2017-12-08)" , MACHINE_SUPPORTS_SAVE ) GAME( 2018, mslug3h41, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Store Version 2017-12-16)" , MACHINE_SUPPORTS_SAVE ) GAME( 2018, mslug3h42, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Summon Mount Edition 2017-04-04)" , MACHINE_SUPPORTS_SAVE ) GAME( 2004, mslug3h43, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3fr, ROT0, "Shyma.X", "Metal Slug 3 (Neo Arc French Traduction Rev.2)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug3h44, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Burst Enhanced Edition 2020-04-28)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug3h45, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "Ydmis/Gaston90", "Metal Slug 3 (248 grenades 2020-05-31)", MACHINE_SUPPORTS_SAVE ) -GAME( 2018, mslug3h46, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Ghost Wu Zuoma 2018-05-29)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2018, mslug3h46, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Ghost Wu Zuoma 2018-05-29)", MACHINE_SUPPORTS_SAVE ) GAME( 2017, mslug3h47, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Summon Mount Prototype Rev.1 2017-10-09)", MACHINE_SUPPORTS_SAVE ) GAME( 2019, mslug3h48, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "XiaShuiDaoMeiRenYu", "Metal Slug 3 (Enemies Resetting Version 2019-04-15)" , MACHINE_SUPPORTS_SAVE ) -GAME( 2018, mslug3h49, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Enhanced Edition 2018-05-09)" , MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 2018, mslug3h50, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Random Enemies Resetting Version 1.0.1 2018-07-21)" , MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2018, mslug3h49, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Enhanced Edition 2018-05-09)" , MACHINE_SUPPORTS_SAVE ) +GAME( 2018, mslug3h50, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Random Enemies Resetting Version 1.0.1 2018-07-21)" , MACHINE_SUPPORTS_SAVE ) GAME( 2019, mslug3h51, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "hack", "Metal Slug 3 (Enemy Soldiers Reset 2019-01-02)" , MACHINE_SUPPORTS_SAVE ) GAME( 2019, mslug3h52, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "CiBaoXianQuan", "Metal Slug 3 (Multi-Function Version 2019-01-19)" , MACHINE_SUPPORTS_SAVE ) GAME( 2019, mslug3h53, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "XiaShuiDaoMeiRenYu", "Metal Slug 3 (Enemies Resetting Version 2019-02-12)" , MACHINE_SUPPORTS_SAVE ) @@ -10831,8 +10831,8 @@ GAME( 2018, mslug3h62, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ GAME( 2019, mslug3h63, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Mount Enhanced 2019-04-04)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug3h64, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Ultimate Simplified Edition 2020-08-25)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug3h65, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "hack", "Metal Slug 3 (Hybrid Bullets Version 2020-09-12)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, mslug3h66, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "hack", "Metal Slug 3 (Crazy Zombie 2020-09-12)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) //It is unstable and can crash suddenly at any level, the problem is generated by the file .p1. -GAME( 2020, mslug3h67, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "hack", "Metal Slug 3 (Crazy Mummy 2020-09-05)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) //It is unstable and can crash suddenly at any level, the problem is generated by the file .p1. +GAME( 2020, mslug3h66, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "hack", "Metal Slug 3 (Crazy Zombie 2020-09-12)", MACHINE_SUPPORTS_SAVE ) //It is unstable and can crash suddenly at any level, the problem is generated by the file .p1. +GAME( 2020, mslug3h67, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "hack", "Metal Slug 3 (Crazy Mummy 2020-09-05)", MACHINE_SUPPORTS_SAVE ) //It is unstable and can crash suddenly at any level, the problem is generated by the file .p1. GAME( 2020, mslug3h68, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "hack", "Metal Slug 3 (The Last Warhead 2020-09-05)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug3h69, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 3 (Crazy Fire Edition 2020-09-03)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug3h70, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3h, ROT0, "I love Nimes", "Metal Slug 3 (Burst Enhanced Edition 2020-09-18)", MACHINE_SUPPORTS_SAVE ) @@ -10840,17 +10840,14 @@ GAME( 2020, mslug3h71, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ GAME( 2019, mslug6h01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "XiaShuiDaoMeiRenYu", "Metal Slug 6 (Enemies Resetting Version 2019-02-12)", MACHINE_SUPPORTS_SAVE ) //Official roms hacks GAME( 2019, mslug6h02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Enemy Soldier Reset #3 2019-01-02)", MACHINE_SUPPORTS_SAVE ) //Official roms hacks -GAME( 2019, mslug6h03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Summon Mount Edition 2019-02-19)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2019, mslug6h03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Summon Mount Edition 2019-02-19)", MACHINE_SUPPORTS_SAVE ) GAME( 2015, mslug6h04, mslug3, neogeo_noslot, neogeo, neogeo_state, init_mslug3b6, ROT0, "hack", "Metal Slug 6 (Super Enhanced Edition 2015-05-15)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, mslug6h05, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Enemies Resetting Version 2019-07-20)(Summon Mount Burst Enhanced Edition 2020-03-29)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) -GAME( 2020, mslug6h06, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Enemies Resetting Version 2019-07-20)(Summon Mount Burst Enhanced Edition 2020-04-28)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2020, mslug6h05, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Enemies Resetting Version 2019-07-20)(Summon Mount Burst Enhanced Edition 2020-03-29)", MACHINE_SUPPORTS_SAVE ) +GAME( 2020, mslug6h06, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Enemies Resetting Version 2019-07-20)(Summon Mount Burst Enhanced Edition 2020-04-28)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug6h07, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Fatty War 2020-08-25)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug6h08, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "hack", "Metal Slug 6 (Crazy Fire Edición 2020-09-03)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug6h09, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "hack", "Metal Slug 6 (Enemies Resetting Version 2019-09-30)", MACHINE_SUPPORTS_SAVE ) -/************** - Metal Slug 3 -*****************/ GAME( 2020, mslug3ern01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "Gaston90/XiaShuiDaoMeiRenYu", "Metal Slug 3 (Enemies Resetting Version 2019-07-20)[Edition 1](Multi-Function Version)" , MACHINE_SUPPORTS_SAVE ) //Enemies Resetting Version 2019-07-20 GAME( 2020, mslug3ern02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_neogeo, ROT0, "Gaston90/XiaShuiDaoMeiRenYu", "Metal Slug 3 (Enemies Resetting Version 2019-09-29)[Edition 1](Ghost Wu Zuoma Version)", MACHINE_SUPPORTS_SAVE ) //Enemies Resetting Version 2019-07-20 GAME( 2020, mslug3ern03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_cmc42sfix, ROT0, "Gaston90/XiaShuiDaoMeiRenYu", "Metal Slug 3 (Enemies Resetting Version 2019-09-29)[Edition 1](Summon Mount Edition)", MACHINE_SUPPORTS_SAVE ) //Enemies Resetting Version 2019-07-20 @@ -11053,22 +11050,22 @@ GAME( 2020, mslug6hd01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ GAME( 2020, mslug6he01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset #1 2020-09-05)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug6hz01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Removed The Change Gun Version 2020-09-18)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, mslug6ta01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Prototype 2018-07-21)(Summon Mount Edition)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2020, mslug6ta01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Prototype 2018-07-21)(Summon Mount Edition)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug6ta02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/I love Nimes", "Metal Slug 6 (Enemy Soldier Reset Prototype 2018-07-21)(Burst Enhanced Edition)", MACHINE_SUPPORTS_SAVE ) GAME( 2020, mslug6ta03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Prototype 2018-07-21)(Hybrid Bullets Version)", MACHINE_SUPPORTS_SAVE ) -GAME( 2020, mslug6tb01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/XiaShuiDaoMeiRenYu", "Metal Slug 6 (Enemies Resetting Version 2019-09-29)[Edition 2](Summon Mount Edition)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) //Enemies Resetting 2019-07-20 +GAME( 2020, mslug6tb01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/XiaShuiDaoMeiRenYu", "Metal Slug 6 (Enemies Resetting Version 2019-09-29)[Edition 2](Summon Mount Edition)", MACHINE_SUPPORTS_SAVE ) //Enemies Resetting 2019-07-20 GAME( 2020, mslug6tb02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/XiaShuiDaoMeiRenYu/I love Nimes", "Metal Slug 6 (Enemies Resetting Version 2019-09-29)[Edition 2](Burst Enhanced Edition)", MACHINE_SUPPORTS_SAVE ) //Enemies Resetting 2019-07-20 GAME( 2020, mslug6tb03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/XiaShuiDaoMeiRenYu", "Metal Slug 6 (Enemies Resetting Version 2019-09-29)[Edition 2](Hybrid Bullets Version)", MACHINE_SUPPORTS_SAVE ) //Enemies Resetting 2019-07-20 -GAME( 2020, mslug6tc01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (The Last Warhead 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) //The Last Warhead 2020-09-05 +GAME( 2020, mslug6tc01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (The Last Warhead 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_SUPPORTS_SAVE ) //The Last Warhead 2020-09-05 GAME( 2020, mslug6tc02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/I love Nimes", "Metal Slug 6 (The Last Warhead 2020-09-29)[Edition 2](Burst Enhanced Edition)", MACHINE_SUPPORTS_SAVE ) //The Last Warhead 2020-09-05 GAME( 2020, mslug6tc03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (The Last Warhead 2020-09-29)[Edition 2](Hybrid Bullets Version)", MACHINE_SUPPORTS_SAVE ) //The Last Warhead 2020-09-05 -GAME( 2020, mslug6td01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (The Future 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) //The Future 2020-09-29 +GAME( 2020, mslug6td01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (The Future 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_SUPPORTS_SAVE ) //The Future 2020-09-29 GAME( 2020, mslug6td02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/I love Nimes", "Metal Slug 6 (The Future 2020-09-29)[Edition 2](Burst Enhanced Edition)", MACHINE_SUPPORTS_SAVE ) //The Future 2020-09-29 GAME( 2020, mslug6td03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (The Future 2020-09-29)[Edition 2](Hybrid Bullets Version)", MACHINE_SUPPORTS_SAVE ) //The Future 2020-09-29 -GAME( 2020, mslug6te01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Version #1 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #1 2020-09-05 +GAME( 2020, mslug6te01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Version #1 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #1 2020-09-05 GAME( 2020, mslug6te02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/I love Nimes", "Metal Slug 6 (Enemy Soldier Reset Version #1 2020-09-29)[Edition 2](Burst Enhanced Edition)", MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #1 2020-09-05 GAME( 2020, mslug6te03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Version #1 2020-09-29)[Edition 2](Hybrid Bullets Version)", MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #1 2020-09-05 -GAME( 2020, mslug6tf01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Version #3 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #3 2019-01-02 +GAME( 2020, mslug6tf01, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Version #3 2020-09-29)[Edition 2](Summon Mount Edition)", MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #3 2019-01-02 GAME( 2020, mslug6tf02, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90/I love Nimes", "Metal Slug 6 (Enemy Soldier Reset Version #3 2020-09-29)[Edition 2](Burst Enhanced Edition)", MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #3 2019-01-02 GAME( 2020, mslug6tf03, mslug3, neogeo_noslot, neogeo, neogeo_state, init_ms6s16, ROT0, "Gaston90", "Metal Slug 6 (Enemy Soldier Reset Version #3 2020-09-29)[Edition 2](Hybrid Bullets Version)", MACHINE_SUPPORTS_SAVE ) //Enemy Soldier Reset #3 2019-01-02 diff --git a/docs/release/src/hbmame/drivers/mslug4.cpp b/docs/release/src/hbmame/drivers/mslug4.cpp index 8ed2c3e33e5..6474cdfdc7c 100644 --- a/docs/release/src/hbmame/drivers/mslug4.cpp +++ b/docs/release/src/hbmame/drivers/mslug4.cpp @@ -220,6 +220,11 @@ ROM_START( mslug4xg ) ROM_REGION( 0x500000, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "263xg.p1", 0x000000, 0x100000, CRC(358a28ce) SHA1(b998a77f73cbc42e8ee1f580bd3780c675197b8e) ) ROM_LOAD16_WORD_SWAP( "263.p2", 0x100000, 0x400000, CRC(fdb7aed8) SHA1(dbeaec38f44e58ffedba99e70fa1439c2bf0dfa3) ) + // fixes freeze in attract mode + ROM_FILL(0xc56c6,1,0x1d) + ROM_FILL(0xc56c7,1,0x40) + ROM_FILL(0xc56d0,1,0x1d) + ROM_FILL(0xc56d1,1,0x41) NEO_SFIX_MT_512K @@ -402,7 +407,7 @@ GAME( 2002, mslug4eh5, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug GAME( 2002, mslug4eh6, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "Creamymami", "Metal Slug 4 (Style Remix 030414 Set 6)", MACHINE_SUPPORTS_SAVE ) GAME( 2002, mslug4eh, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "Creamymami", "Metal Slug 4 (Style Remix 030414 Set 1)", MACHINE_SUPPORTS_SAVE ) GAME( 2002, mslug4kh, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "Creamymami and Fighters Kim", "Metal Slug 4 (Style remix 030731)", MACHINE_SUPPORTS_SAVE ) -GAME( 2002, mslug4xg, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "ZKW", "Metal Slug 4 (PPX Team Hack, Remixed)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2002, mslug4xg, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "ZKW", "Metal Slug 4 (PPX Team Hack, Remixed)", MACHINE_SUPPORTS_SAVE ) GAME( 2002, mslug4d, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "Mega", "Metal Slug 4 (Decrypted C)", MACHINE_SUPPORTS_SAVE ) GAME( 2007, mslug4dh, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "HappyASR [EGCG]", "Metal Slug 4 (Super D Version)", MACHINE_SUPPORTS_SAVE ) GAME( 2002, mslug4eho, mslug4, neogeo_noslot, neogeo, neogeo_state, init_mslug4hb, ROT0, "Creamymami", "Metal Slug 4 (Style Remix Old)", MACHINE_SUPPORTS_SAVE ) diff --git a/docs/release/src/hbmame/drivers/snesb.cpp b/docs/release/src/hbmame/drivers/snesb.cpp index 6f4939122cf..25439bbc7e1 100644 --- a/docs/release/src/hbmame/drivers/snesb.cpp +++ b/docs/release/src/hbmame/drivers/snesb.cpp @@ -15,9 +15,11 @@ ROM_START( sblast2bs01 ) ROM_REGION( 0x180000, "user3", ROMREGION_ERASEFF ) + // not used ROM_REGION(0x100, "sound_ipl", 0) ROM_LOAD("spc700.rom", 0, 0x40, CRC(44bb3a40) SHA1(97e352553e94242ae823547cd853eecda55c20f0) ) + // not used ROM_REGION(0x800, "user6", ROMREGION_ERASEFF) ROM_REGION( 0x180000, "user7", 0 ) @@ -28,5 +30,5 @@ ROM_END /* YEAR NAME PARENT MACHINE INPUT INIT MONITOR COMPANY FULLNAME FLAGS */ // Sonic Blast Man 2 -GAME( 1997, sblast2bs01, sblast2b, kinstb, sblast2b, snesb_state, init_sblast2b, ROT0, "RockyWall", "Sonic Blast Man 2 Special Turbo (Level Sequence Repair)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS) -// broken in 214-215 cycle +GAME( 1997, sblast2bs01, sblast2b, sblast2b, sblast2b, snesb_state, init_sblast2b, ROT0, "RockyWall", "Sonic Blast Man 2 Special Turbo (Level Sequence Repair)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS) + diff --git a/docs/release/src/hbmame/hbmame.lst b/docs/release/src/hbmame/hbmame.lst index 550cbd59b2a..92bfd4ea5c3 100644 --- a/docs/release/src/hbmame/hbmame.lst +++ b/docs/release/src/hbmame/hbmame.lst @@ -69,7 +69,7 @@ bonzeadv //parent jigkmgris01 @source:atarig42.cpp -//more... +dangerex @source:atarisy1.cpp atarisy1 //bios @@ -4261,6 +4261,9 @@ umk3uc20210228 umk3uc20210304 umk3uc20210401 umk3uc20210423 +umk3uc20210430 +umk3uk20210709 +umk3uk20210727 umk3tm20180120 umk3tm20190417 umk3plus20190921 diff --git a/docs/release/src/mame/drivers/galaxian.cpp b/docs/release/src/mame/drivers/galaxian.cpp index 2356644773c..85e8644763e 100644 --- a/docs/release/src/mame/drivers/galaxian.cpp +++ b/docs/release/src/mame/drivers/galaxian.cpp @@ -4556,6 +4556,15 @@ static INPUT_PORTS_START( porter ) INPUT_PORTS_END +static INPUT_PORTS_START( portera ) + PORT_INCLUDE(porter) + + PORT_MODIFY("IN0") + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL +INPUT_PORTS_END + + static INPUT_PORTS_START( skybase ) PORT_INCLUDE(mooncrst) @@ -15143,7 +15152,7 @@ GAME( 1984, bagmanm2, bagman, bagmanmc, bagmanmc, bagmanmc_state, init_ // Other games on basic mooncrst hardware GAME( 1982, porter, dockman, porter, porter, pisces_state, init_pisces, ROT90, "bootleg", "Port Man (bootleg on Moon Cresta hardware)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL ) -GAME( 1982, portera, dockman, porter, porter, pisces_state, init_pisces, ROT90, "bootleg", "El Estivador (Spanish bootleg of Port Man on Galaxian hardware)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL ) +GAME( 1982, portera, dockman, porter, portera, pisces_state, init_pisces, ROT90, "bootleg", "El Estivador (Spanish bootleg of Port Man on Galaxian hardware)", MACHINE_IMPERFECT_COLORS | MACHINE_NO_COCKTAIL ) GAME( 1982, skybase, 0, skybase, skybase, pisces_state, init_pisces, ROT90, "Omori Electric Co., Ltd.", "Sky Base", MACHINE_SUPPORTS_SAVE ) GAME( 198?, kong, 0, kong, kong, galaxian_state, init_kong, ROT90, "Taito do Brasil", "Kong (Donkey Kong conversion on Galaxian hardware)", MACHINE_SUPPORTS_SAVE | MACHINE_WRONG_COLORS ) // rewrite of Donkey Kong (!) not a clone diff --git a/docs/release/src/mame/drivers/konamigx.cpp b/docs/release/src/mame/drivers/konamigx.cpp index 285068a805e..c3b31babc6c 100644 --- a/docs/release/src/mame/drivers/konamigx.cpp +++ b/docs/release/src/mame/drivers/konamigx.cpp @@ -2181,39 +2181,6 @@ ROM_START( salmndr2a ) ROM_LOAD( "salmndr2a.nv", 0x0000, 0x080, CRC(3a98a8f9) SHA1(08c2d164620a4d8ad902d502acea8ad621931198) ) ROM_END -/* Magical Twinbee */ -ROM_START( mtwinbee ) - /* main program */ - ROM_REGION( 0x800000, "maincpu", 0 ) - GX_BIOS - ROM_LOAD32_WORD_SWAP( "424eaa02.31b", 0x200002, 512*1024, CRC(34659905) SHA1(011df093502644ab7ceb7fd1fbca41d09af89566) ) - ROM_LOAD32_WORD_SWAP( "424eaa04.27b", 0x200000, 512*1024, CRC(f42d3139) SHA1(e03006b4a87a70dfba9ec5e4857442424269986c) ) - - /* sound program */ - ROM_REGION( 0x40000, "soundcpu", 0 ) - ROM_LOAD16_BYTE("424a06.9c", 0x000000, 128*1024, CRC(a4760e14) SHA1(78dbd309f3f7fa61e92c9554e594449a7d4eed5a) ) - ROM_LOAD16_BYTE("424a07.7c", 0x000001, 128*1024, CRC(fa90d7e2) SHA1(6b6dee29643309005834416bdfdb18d74f34cb1b) ) - - /* tiles */ - ROM_REGION( 0x500000, "k056832", ROMREGION_ERASE00 ) - TILE_WORD_ROM_LOAD( "424a14.17h", 0x000000, 2*1024*1024, CRC(b1d9fce8) SHA1(143ed2f03ac10a0f18d878c0ee0509a5714e4664) ) - TILE_BYTE_ROM_LOAD( "424a12.13g", 0x000004, 512*1024, CRC(7f9cb8b1) SHA1(f5e18d70fcb572bb85f9b064995fc0ab0bb581e8) ) - - /* sprites */ - ROM_REGION( 0x500000, "k055673", ROMREGION_ERASE00 ) - ROM_LOAD32_WORD( "424a11.25g", 0x000000, 2*1024*1024, CRC(29592688) SHA1(a4b44e9153988a510915af83116e3c18dd15642f) ) - ROM_LOAD32_WORD( "424a10.28g", 0x000002, 2*1024*1024, CRC(cf24e5e3) SHA1(095bf2ae4f47c6e4768515ae5e22c982fbc660a5) ) - ROM_LOAD( "424a09.30g", 0x400000, 1*1024*1024, CRC(daa07224) SHA1(198cafa3d0ead2aa2593be066c6f372e66c11c44) ) - - /* sound data */ - ROM_REGION( 0x400000, "k054539", 0 ) - ROM_LOAD( "424a17.9g", 0x000000, 2*1024*1024, CRC(e9dd9692) SHA1(c289019c8d1dd71b3cec26479c39b649de804707) ) - ROM_LOAD( "424a18.7g", 0x200000, 2*1024*1024, CRC(0f0d9f3a) SHA1(57f6b113b80f06964b7e672ad517c1654c5569c5) ) - - ROM_REGION16_BE( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting with error - ROM_LOAD( "mtwinbee.nv", 0x0000, 0x080, CRC(942b4323) SHA1(2f6799bf187510355df5e52c4d416f5c5e70fa05) ) -ROM_END - /* Twinbee Yahhoo! */ ROM_START( tbyahhoo ) /* main program */ @@ -2276,6 +2243,39 @@ ROM_START( daiskiss ) ROM_LOAD( "535a22.9g", 0x000000, 2*1024*1024, CRC(7ee59acb) SHA1(782bf15f205e9fe7bd069f6445eb8187837dee32) ) ROM_END +/* Magical Twinbee */ +ROM_START( mtwinbee ) + /* main program */ + ROM_REGION( 0x800000, "maincpu", 0 ) + GX_BIOS + ROM_LOAD32_WORD_SWAP( "424eaa02.31b", 0x200002, 512*1024, CRC(34659905) SHA1(011df093502644ab7ceb7fd1fbca41d09af89566) ) + ROM_LOAD32_WORD_SWAP( "424eaa04.27b", 0x200000, 512*1024, CRC(f42d3139) SHA1(e03006b4a87a70dfba9ec5e4857442424269986c) ) + + /* sound program */ + ROM_REGION( 0x40000, "soundcpu", 0 ) + ROM_LOAD16_BYTE("424a06.9c", 0x000000, 128*1024, CRC(a4760e14) SHA1(78dbd309f3f7fa61e92c9554e594449a7d4eed5a) ) + ROM_LOAD16_BYTE("424a07.7c", 0x000001, 128*1024, CRC(fa90d7e2) SHA1(6b6dee29643309005834416bdfdb18d74f34cb1b) ) + + /* tiles */ + ROM_REGION( 0x500000, "k056832", ROMREGION_ERASE00 ) + TILE_WORD_ROM_LOAD( "424a14.17h", 0x000000, 2*1024*1024, CRC(b1d9fce8) SHA1(143ed2f03ac10a0f18d878c0ee0509a5714e4664) ) + TILE_BYTE_ROM_LOAD( "424a12.13g", 0x000004, 512*1024, CRC(7f9cb8b1) SHA1(f5e18d70fcb572bb85f9b064995fc0ab0bb581e8) ) + + /* sprites */ + ROM_REGION( 0x500000, "k055673", ROMREGION_ERASE00 ) + ROM_LOAD32_WORD( "424a11.25g", 0x000000, 2*1024*1024, CRC(29592688) SHA1(a4b44e9153988a510915af83116e3c18dd15642f) ) + ROM_LOAD32_WORD( "424a10.28g", 0x000002, 2*1024*1024, CRC(cf24e5e3) SHA1(095bf2ae4f47c6e4768515ae5e22c982fbc660a5) ) + ROM_LOAD( "424a09.30g", 0x400000, 1*1024*1024, CRC(daa07224) SHA1(198cafa3d0ead2aa2593be066c6f372e66c11c44) ) + + /* sound data */ + ROM_REGION( 0x400000, "k054539", 0 ) + ROM_LOAD( "424a17.9g", 0x000000, 2*1024*1024, CRC(e9dd9692) SHA1(c289019c8d1dd71b3cec26479c39b649de804707) ) + ROM_LOAD( "424a18.7g", 0x200000, 2*1024*1024, CRC(0f0d9f3a) SHA1(57f6b113b80f06964b7e672ad517c1654c5569c5) ) + + ROM_REGION16_BE( 0x80, "eeprom", 0 ) // default eeprom to prevent game booting with error + ROM_LOAD( "mtwinbee.nv", 0x0000, 0x080, CRC(942b4323) SHA1(2f6799bf187510355df5e52c4d416f5c5e70fa05) ) +ROM_END + /* Sexy Parodius version JAA (Japan) */ ROM_START( sexyparo ) /* main program */ @@ -4046,8 +4046,8 @@ GAME( 1994, gokuparo, fantjour, gokuparo, gokuparo, konamigx_state, init_ko GAME( 1994, crzcross, konamigx, gokuparo, puzldama, konamigx_state, init_posthack, ROT0, "Konami", "Crazy Cross (ver EAA)", MACHINE_IMPERFECT_GRAPHICS ) GAME( 1994, puzldama, crzcross, gokuparo, puzldama, konamigx_state, init_posthack, ROT0, "Konami", "Taisen Puzzle-dama (ver JAA)", MACHINE_IMPERFECT_GRAPHICS ) -GAME( 1995, mtwinbee, konamigx, tbyahhoo, gokuparo, konamigx_state, init_posthack, ROT0, "Konami", "Magical Twin Bee (ver EAA)", MACHINE_IMPERFECT_GRAPHICS ) -GAME( 1995, tbyahhoo, mtwinbee, tbyahhoo, gokuparo, konamigx_state, init_posthack, ROT0, "Konami", "Twin Bee Yahhoo! (ver JAA)", MACHINE_IMPERFECT_GRAPHICS ) +GAME( 1995, tbyahhoo, konamigx, tbyahhoo, gokuparo, konamigx_state, init_posthack, ROT0, "Konami", "Twin Bee Yahhoo! (ver JAA)", MACHINE_IMPERFECT_GRAPHICS ) +GAME( 1995, mtwinbee, tbyahhoo, tbyahhoo, gokuparo, konamigx_state, init_posthack, ROT0, "Konami", "Magical Twin Bee (ver EAA)", MACHINE_IMPERFECT_GRAPHICS ) GAME( 1995, tkmmpzdm, konamigx, konamigx_6bpp, tokkae, konamigx_state, init_konamigx, ROT0, "Konami", "Tokimeki Memorial Taisen Puzzle-dama (ver JAB)", MACHINE_IMPERFECT_GRAPHICS ) diff --git a/docs/release/src/mame/video/avgdvg.cpp b/docs/release/src/mame/video/avgdvg.cpp index 173114821f6..00746047f97 100644 --- a/docs/release/src/mame/video/avgdvg.cpp +++ b/docs/release/src/mame/video/avgdvg.cpp @@ -16,8 +16,10 @@ #include "emu.h" #include "avgdvg.h" + #include "screen.h" + /************************************* * * Macros and defines @@ -821,9 +823,13 @@ int avg_mhavoc_device::handler_7() // mhavoc_strobe3 const u8 g = bit1 * 0xcb; const u8 b = bit0 * 0xcb; + int x = m_xpos; + int y = m_ypos; + apply_flipping(x, y); + vg_add_point_buf( - m_xpos, - m_ypos, + x, + y, rgb_t(r, g, b), (((m_int_latch >> 1) == 1) ? m_intensity : m_int_latch & 0xe) << 4); m_spkl_shift = (BIT(m_spkl_shift, 6) ^ BIT(m_spkl_shift, 5) ^ 1) | (m_spkl_shift << 1); @@ -846,9 +852,13 @@ int avg_mhavoc_device::handler_7() // mhavoc_strobe3 const u8 g = bit1 * 0xcb; const u8 b = bit0 * 0xcb; + int x = m_xpos; + int y = m_ypos; + apply_flipping(x, y); + vg_add_point_buf( - m_xpos, - m_ypos, + x, + y, rgb_t(r, g, b), (((m_int_latch >> 1) == 1) ? m_intensity : m_int_latch & 0xe) << 4); } diff --git a/docs/release/src/mame/video/midtunit.cpp b/docs/release/src/mame/video/midtunit.cpp index 2562168dab8..a9158a87582 100644 --- a/docs/release/src/mame/video/midtunit.cpp +++ b/docs/release/src/mame/video/midtunit.cpp @@ -902,7 +902,7 @@ void midtunit_video_device::log_bitmap(int command, int bpp, bool Skip) char name_buf[256]; snprintf(name_buf, 255, "0x%08x.png", raw_offset); auto const filerr = file.open(name_buf); - if (filerr != osd_file::error::NONE) + if (filerr) { return; } @@ -1029,7 +1029,7 @@ void midtunit_video_device::log_bitmap(int command, int bpp, bool Skip) snprintf(name_buf, 255, "0x%08x.json", raw_offset); auto const jsonerr = json.open(name_buf); - if (jsonerr != osd_file::error::NONE) + if (jsonerr) { return; } diff --git a/docs/release/src/osd/winui/emu_opts.cpp b/docs/release/src/osd/winui/emu_opts.cpp index 74a2445ba82..21bf6934407 100644 --- a/docs/release/src/osd/winui/emu_opts.cpp +++ b/docs/release/src/osd/winui/emu_opts.cpp @@ -174,11 +174,10 @@ string GetIniDir(void) // load mewui settings static void LoadSettingsFile(ui_options &opts, const char *filename) { - osd_file::error filerr; util::core_file::ptr file; - filerr = util::core_file::open(filename, OPEN_FLAG_READ, file); - if (filerr == osd_file::error::NONE) + std::error_condition filerr = util::core_file::open(filename, OPEN_FLAG_READ, file); + if (!filerr) { opts.parse_ini_file(*file, OPTION_PRIORITY_CMDLINE, true, true); file.reset(); @@ -188,11 +187,10 @@ static void LoadSettingsFile(ui_options &opts, const char *filename) // load a game ini static void LoadSettingsFile(windows_options &opts, const char *filename) { - osd_file::error filerr; util::core_file::ptr file; - filerr = util::core_file::open(filename, OPEN_FLAG_READ, file); - if (filerr == osd_file::error::NONE) + std::error_condition filerr = util::core_file::open(filename, OPEN_FLAG_READ, file); + if (!filerr) { opts.parse_ini_file(*file, OPTION_PRIORITY_CMDLINE, true, true); file.reset(); @@ -202,12 +200,11 @@ static void LoadSettingsFile(windows_options &opts, const char *filename) // This saves changes to <game>.INI or MAME.INI only static void SaveSettingsFile(windows_options &opts, const char *filename) { - osd_file::error filerr = osd_file::error::NONE; util::core_file::ptr file; - filerr = util::core_file::open(filename, OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS, file); + std::error_condition filerr = util::core_file::open(filename, OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS, file); - if (filerr == osd_file::error::NONE) + if (!filerr) { string inistring = opts.output_ini(); // printf("=====%s=====\n%s\n",filename,inistring.c_str()); // for debugging @@ -441,12 +438,11 @@ string dir_get_value(int dir_index) // This saves changes to UI.INI only static void SaveSettingsFile(ui_options &opts, const char *filename) { - osd_file::error filerr = osd_file::error::NONE; util::core_file::ptr file; - filerr = util::core_file::open(filename, OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS, file); + std::error_condition filerr = util::core_file::open(filename, OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS, file); - if (filerr == osd_file::error::NONE) + if (!filerr) { string inistring = opts.output_ini(); file->puts(inistring.c_str()); diff --git a/docs/release/src/osd/winui/screenshot.cpp b/docs/release/src/osd/winui/screenshot.cpp index eb7a942b874..0fd76f315c3 100644 --- a/docs/release/src/osd/winui/screenshot.cpp +++ b/docs/release/src/osd/winui/screenshot.cpp @@ -363,7 +363,7 @@ static bool png_read_bitmap_gui(util::core_file &mfile, HGLOBAL *phDIB, HPALETTE File search functions ***************************************************************************/ -static osd_file::error OpenRawDIBFile(const char *dir_name, const char *filename, util::core_file::ptr &file) +static std::error_condition OpenRawDIBFile(const char *dir_name, const char *filename, util::core_file::ptr &file) { // clear out result file = NULL; @@ -373,26 +373,26 @@ static osd_file::error OpenRawDIBFile(const char *dir_name, const char *filename return util::core_file::open(fname.c_str(), OPEN_FLAG_READ, file); } -static osd_file::error OpenZipDIBFile(const char *dir_name, const char *zip_name, const char *filename, util::core_file::ptr &file, void **buffer) +static std::error_condition OpenZipDIBFile(const char *dir_name, const char *zip_name, const char *filename, util::core_file::ptr &file, void **buffer) { - util::archive_file::error ziperr = util::archive_file::error::NONE; util::archive_file::ptr zip; + std::error_condition ziperr{}; // clear out result file = nullptr; // look for the raw file string fname = string(dir_name).append(PATH_SEPARATOR).append(filename); - osd_file::error filerr = util::core_file::open(fname, OPEN_FLAG_READ, file); + std::error_condition filerr = util::core_file::open(fname, OPEN_FLAG_READ, file); // did the raw file not exist? - if (filerr != osd_file::error::NONE) + if (filerr) { // look into zip file fname = std::string(dir_name).append(PATH_SEPARATOR).append(zip_name).append(".zip"); ziperr = util::archive_file::open_zip(fname, zip); - if (ziperr == util::archive_file::error::NONE) + if (!ziperr) { int found = zip->search(filename, false); @@ -401,7 +401,7 @@ static osd_file::error OpenZipDIBFile(const char *dir_name, const char *zip_name *buffer = malloc(zip->current_uncompressed_length()); ziperr = zip->decompress(*buffer, zip->current_uncompressed_length()); - if (ziperr == util::archive_file::error::NONE) + if (!ziperr) filerr = util::core_file::open_ram(*buffer, zip->current_uncompressed_length(), OPEN_FLAG_READ, file); } @@ -409,13 +409,13 @@ static osd_file::error OpenZipDIBFile(const char *dir_name, const char *zip_name } } - if ((filerr != osd_file::error::NONE) || (ziperr != util::archive_file::error::NONE)) + if (filerr || ziperr) { // look into 7z file fname = std::string(dir_name).append(PATH_SEPARATOR).append(zip_name).append(".7z"); ziperr = util::archive_file::open_7z(fname, zip); - if (ziperr == util::archive_file::error::NONE) + if (!ziperr) { int found = zip->search(filename, false); @@ -424,7 +424,7 @@ static osd_file::error OpenZipDIBFile(const char *dir_name, const char *zip_name *buffer = malloc(zip->current_uncompressed_length()); ziperr = zip->decompress(*buffer, zip->current_uncompressed_length()); - if (ziperr == util::archive_file::error::NONE) + if (!ziperr) filerr = util::core_file::open_ram(*buffer, zip->current_uncompressed_length(), OPEN_FLAG_READ, file); } @@ -438,7 +438,7 @@ static osd_file::error OpenZipDIBFile(const char *dir_name, const char *zip_name // display a snap, cabinet, title, flyer, marquee, pcb, control panel static BOOL LoadDIB(const char *filename, HGLOBAL *phDIB, HPALETTE *pPal, int pic_type) { - osd_file::error filerr = osd_file::error::NOT_FOUND; // defined in osdcore.h + std::error_condition filerr = std::errc::no_such_file_or_directory; util::core_file::ptr file = NULL; char fullpath[2048]; const char* zip_name; @@ -552,7 +552,7 @@ static BOOL LoadDIB(const char *filename, HGLOBAL *phDIB, HPALETTE *pPal, int pi // Support multiple paths char* partpath = strtok(fullpath, ";"); - while (partpath && filerr != osd_file::error::NONE) + while (partpath && filerr) { //Add handling for the displaying of all the different supported snapshot pattern types @@ -564,21 +564,21 @@ static BOOL LoadDIB(const char *filename, HGLOBAL *phDIB, HPALETTE *pPal, int pi filerr = OpenRawDIBFile(partpath, fname.c_str(), file); // Try dir/system.zip/game.png - if (filerr != osd_file::error::NONE) + if (filerr) { fname = string(file_name) + ext; filerr = OpenZipDIBFile(partpath, system_name, fname.c_str(), file, &buffer); } // Try dir/system.zip/system/game.png - if (filerr != osd_file::error::NONE) + if (filerr) { fname = string(system_name) + "/" + string(file_name) + ext; filerr = OpenZipDIBFile(partpath, system_name, fname.c_str(), file, &buffer); } // Try dir/zipfile/system/game.png - if (filerr != osd_file::error::NONE) + if (filerr) { filerr = OpenZipDIBFile(partpath, zip_name, fname.c_str(), file, &buffer); } @@ -588,7 +588,7 @@ static BOOL LoadDIB(const char *filename, HGLOBAL *phDIB, HPALETTE *pPal, int pi // For SNAPS only, try filenames with 0000.png if ((pic_type == TAB_SCREENSHOT) && (extnum == 0)) { - if (filerr != osd_file::error::NONE) + if (filerr) { //%g/%i fname = string(system_name) + PATH_SEPARATOR + "0000.png"; @@ -597,21 +597,21 @@ static BOOL LoadDIB(const char *filename, HGLOBAL *phDIB, HPALETTE *pPal, int pi } // Try dir/system.png %g - if (filerr != osd_file::error::NONE) + if (filerr) { fname = string(system_name) + ext; filerr = OpenRawDIBFile(partpath, fname.c_str(), file); } //%g/%g - if (filerr != osd_file::error::NONE) + if (filerr) { fname = string(system_name) + PATH_SEPARATOR + string(system_name) + ext; filerr = OpenRawDIBFile(partpath, fname.c_str(), file); } // Try dir/zipfile/system.png - if (filerr != osd_file::error::NONE) + if (filerr) { fname = string(system_name) + ext; filerr = OpenZipDIBFile(partpath, zip_name, fname.c_str(), file, &buffer); @@ -620,7 +620,7 @@ static BOOL LoadDIB(const char *filename, HGLOBAL *phDIB, HPALETTE *pPal, int pi partpath = strtok(NULL, ";"); } - if (filerr == osd_file::error::NONE) + if (!filerr) { if (extnum) success = jpeg_read_bitmap_gui(*file, phDIB, pPal); @@ -733,7 +733,7 @@ BOOL LoadDIBBG(HGLOBAL *phDIB, HPALETTE *pPal) // look for the raw file string fname = GetBgDir(); - if (util::core_file::open(fname.c_str(), OPEN_FLAG_READ, file) == osd_file::error::NONE) + if (!util::core_file::open(fname.c_str(), OPEN_FLAG_READ, file)) { success = png_read_bitmap_gui(*file, phDIB, pPal); file.reset(); diff --git a/docs/release/src/osd/winui/winui.cpp b/docs/release/src/osd/winui/winui.cpp index 7285c53666f..4947b50524b 100644 --- a/docs/release/src/osd/winui/winui.cpp +++ b/docs/release/src/osd/winui/winui.cpp @@ -1178,14 +1178,14 @@ HICON LoadIconFromFile(const char *iconname) sprintf(tmpStr, "%s/icons.zip", s1); sprintf(tmpIcoName, "%s.ico", iconname); - if (util::archive_file::open_zip(tmpStr, zip) == util::archive_file::error::NONE) + if (!util::archive_file::open_zip(tmpStr, zip)) { if (zip->search(tmpIcoName, false) >= 0) { bufferPtr = (PBYTE)malloc(zip->current_uncompressed_length()); if (bufferPtr) { - if (zip->decompress(bufferPtr, zip->current_uncompressed_length()) == util::archive_file::error::NONE) + if (!zip->decompress(bufferPtr, zip->current_uncompressed_length())) hIcon = FormatICOInMemoryToHICON(bufferPtr, zip->current_uncompressed_length()); free(bufferPtr); @@ -1198,14 +1198,14 @@ HICON LoadIconFromFile(const char *iconname) sprintf(tmpStr, "%s/icons.7z", s1); sprintf(tmpIcoName, "%s.ico", iconname); - if (util::archive_file::open_7z(tmpStr, zip) == util::archive_file::error::NONE) + if (!util::archive_file::open_7z(tmpStr, zip)) { if (zip->search(tmpIcoName, false) >= 0) { bufferPtr = (PBYTE)malloc(zip->current_uncompressed_length()); if (bufferPtr) { - if (zip->decompress(bufferPtr, zip->current_uncompressed_length()) == util::archive_file::error::NONE) + if (!zip->decompress(bufferPtr, zip->current_uncompressed_length())) hIcon = FormatICOInMemoryToHICON(bufferPtr, zip->current_uncompressed_length()); free(bufferPtr); @@ -5293,7 +5293,6 @@ static void MamePlayBackGame() if (CommonFileDialog(GetOpenFileName, filename, FILETYPE_INPUT_FILES)) { - osd_file::error fileerr; char drive[_MAX_DRIVE]; char dir[_MAX_DIR]; char bare_fname[_MAX_FNAME]; @@ -5310,8 +5309,8 @@ static void MamePlayBackGame() path[strlen(path)-1] = 0; // take off trailing back slash emu_file pPlayBack(MameUIGlobal().input_directory(), OPEN_FLAG_READ); - fileerr = pPlayBack.open(string(fname)); - if (fileerr != osd_file::error::NONE) + std::error_condition fileerr = pPlayBack.open(string(fname)); + if (fileerr) { MameMessageBox("Could not open '%s' as a valid input file.", filename); return; @@ -5413,8 +5412,8 @@ static void MameLoadState() } #endif // MESS emu_file pSaveState(MameUIGlobal().state_directory(), OPEN_FLAG_READ); - osd_file::error fileerr = pSaveState.open(string(state_fname)); - if (fileerr != osd_file::error::NONE) + std::error_condition fileerr = pSaveState.open(string(state_fname)); + if (fileerr) { MameMessageBox("Could not open '%s' as a valid savestate file.", filename); return; diff --git a/docs/release/src/version.cpp b/docs/release/src/version.cpp index aead431ceec..c3695e2b74a 100644 --- a/docs/release/src/version.cpp +++ b/docs/release/src/version.cpp @@ -8,7 +8,7 @@ ***************************************************************************/ -#define BARE_BUILD_VERSION "0.234" +#define BARE_BUILD_VERSION "0.235" extern const char bare_build_version[]; extern const char build_version[]; @@ -1755,14 +1755,14 @@ endif ifeq (posix,$(SHELLTYPE)) $(GENDIR)/version.cpp: makefile $(GENDIR)/git_desc | $(GEN_FOLDERS) - @echo '#define BARE_BUILD_VERSION "0.234"' > $@ + @echo '#define BARE_BUILD_VERSION "0.235"' > $@ @echo 'extern const char bare_build_version[];' >> $@ @echo 'extern const char build_version[];' >> $@ @echo 'const char bare_build_version[] = BARE_BUILD_VERSION;' >> $@ @echo 'const char build_version[] = BARE_BUILD_VERSION " ($(NEW_GIT_VERSION))";' >> $@ else $(GENDIR)/version.cpp: makefile $(GENDIR)/git_desc | $(GEN_FOLDERS) - @echo #define BARE_BUILD_VERSION "0.234" > $@ + @echo #define BARE_BUILD_VERSION "0.235" > $@ @echo extern const char bare_build_version[]; >> $@ @echo extern const char build_version[]; >> $@ @echo const char bare_build_version[] = BARE_BUILD_VERSION; >> $@ diff --git a/src/hbmame/drivers/atarig42.cpp b/src/hbmame/drivers/atarig42.cpp index e8f1376f299..08faa237818 100644 --- a/src/hbmame/drivers/atarig42.cpp +++ b/src/hbmame/drivers/atarig42.cpp @@ -3,7 +3,7 @@ #include "../mame/drivers/atarig42.cpp" - +#if 0 class dangerex_state : public atarig42_0x400_state { public: @@ -123,4 +123,6 @@ void dangerex_state::init_dangerex() GAME( 1992, dangerex, 0, atarig42_0x400, dangerex, dangerex_state, init_dangerex, ROT0, "Atari Games", "Danger Express (prototype)", 0 ) +#endif + diff --git a/src/version.cpp b/src/version.cpp index aead431ceec..c3695e2b74a 100644 --- a/src/version.cpp +++ b/src/version.cpp @@ -8,7 +8,7 @@ ***************************************************************************/ -#define BARE_BUILD_VERSION "0.234" +#define BARE_BUILD_VERSION "0.235" extern const char bare_build_version[]; extern const char build_version[]; |