From c51c443be11b4069b36c80dccd4960808d649227 Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Thu, 30 Jun 2022 00:37:49 +1000 Subject: [PATCH] -Added support for directory names in SOURCES= -Retired the messshared project (combined with shared). -bus/nubus: Added table of video modes for Mac monitor sense values. --- scripts/build/makedep.py | 29 ++++++++++----- scripts/genie.lua | 5 +-- scripts/target/mame/mame.lua | 8 ----- src/devices/bus/nubus/nubus_48gc.cpp | 35 ++++++++++--------- src/mame/dooyong/dooyong.cpp | 2 +- .../{dooyong_v.cpp => dooyong_tilemap.cpp} | 2 +- .../{dooyong_v.h => dooyong_tilemap.h} | 6 ++-- src/mame/{messshared => shared}/isbc_215g.cpp | 0 src/mame/{messshared => shared}/isbc_215g.h | 0 src/mame/{messshared => shared}/mega32x.cpp | 0 src/mame/{messshared => shared}/mega32x.h | 0 src/mame/{messshared => shared}/megacdcd.cpp | 0 src/mame/{messshared => shared}/megacdcd.h | 0 src/mame/{messshared => shared}/mitcrt.cpp | 0 src/mame/{messshared => shared}/mitcrt.h | 0 src/mame/{messshared => shared}/ms7004.cpp | 0 src/mame/{messshared => shared}/ms7004.h | 0 .../{messshared => shared}/teleprinter.cpp | 0 src/mame/{messshared => shared}/teleprinter.h | 0 src/mame/{messshared => shared}/vboysound.cpp | 0 src/mame/{messshared => shared}/vboysound.h | 0 src/mame/{messshared => shared}/vt100_kbd.cpp | 0 src/mame/{messshared => shared}/vt100_kbd.h | 0 .../{messshared => shared}/wswansound.cpp | 0 src/mame/{messshared => shared}/wswansound.h | 0 src/mame/{messshared => shared}/z80bin.cpp | 0 src/mame/{messshared => shared}/z80bin.h | 0 27 files changed, 48 insertions(+), 39 deletions(-) rename src/mame/dooyong/{dooyong_v.cpp => dooyong_tilemap.cpp} (99%) rename src/mame/dooyong/{dooyong_v.h => dooyong_tilemap.h} (97%) rename src/mame/{messshared => shared}/isbc_215g.cpp (100%) rename src/mame/{messshared => shared}/isbc_215g.h (100%) rename src/mame/{messshared => shared}/mega32x.cpp (100%) rename src/mame/{messshared => shared}/mega32x.h (100%) rename src/mame/{messshared => shared}/megacdcd.cpp (100%) rename src/mame/{messshared => shared}/megacdcd.h (100%) rename src/mame/{messshared => shared}/mitcrt.cpp (100%) rename src/mame/{messshared => shared}/mitcrt.h (100%) rename src/mame/{messshared => shared}/ms7004.cpp (100%) rename src/mame/{messshared => shared}/ms7004.h (100%) rename src/mame/{messshared => shared}/teleprinter.cpp (100%) rename src/mame/{messshared => shared}/teleprinter.h (100%) rename src/mame/{messshared => shared}/vboysound.cpp (100%) rename src/mame/{messshared => shared}/vboysound.h (100%) rename src/mame/{messshared => shared}/vt100_kbd.cpp (100%) rename src/mame/{messshared => shared}/vt100_kbd.h (100%) rename src/mame/{messshared => shared}/wswansound.cpp (100%) rename src/mame/{messshared => shared}/wswansound.h (100%) rename src/mame/{messshared => shared}/z80bin.cpp (100%) rename src/mame/{messshared => shared}/z80bin.h (100%) diff --git a/scripts/build/makedep.py b/scripts/build/makedep.py index 18da0a2981e..07406423ff2 100755 --- a/scripts/build/makedep.py +++ b/scripts/build/makedep.py @@ -722,7 +722,7 @@ def scan_source_dependencies(root, sources): parser = CppParser(handler) seen = set('/'.join(x for x in split_path(source) if x) for source in sources) remaining = list([(x, 0) for x in seen]) - default_roots = ((('src', 'devices'), 0), (('src', 'mame', 'shared'), 0), (('src', 'mame', 'messshared'), 0), (('src', 'lib'), 0)) + default_roots = ((('src', 'devices'), 0), (('src', 'mame', 'shared'), 0), (('src', 'lib'), 0)) while remaining: source, depth = remaining.pop() components = tuple(source.split('/')) @@ -768,7 +768,6 @@ def write_project(options, projectfile, mappings, sources, single): ' MAME_DIR .. "src/emu",\n' \ ' MAME_DIR .. "src/devices",\n' \ ' MAME_DIR .. "src/mame/shared",\n' \ - ' MAME_DIR .. "src/mame/messshared",\n' \ ' MAME_DIR .. "src/lib",\n' \ ' MAME_DIR .. "src/lib/util",\n' \ ' MAME_DIR .. "src/lib/netlist",\n' \ @@ -821,7 +820,6 @@ def write_project(options, projectfile, mappings, sources, single): ' MAME_DIR .. "src/emu",\n' \ ' MAME_DIR .. "src/devices",\n' \ ' MAME_DIR .. "src/mame/shared",\n' \ - ' MAME_DIR .. "src/mame/messshared",\n' \ ' MAME_DIR .. "src/lib",\n' \ ' MAME_DIR .. "src/lib/util",\n' \ ' MAME_DIR .. "src/lib/netlist",\n' \ @@ -839,12 +837,10 @@ def write_project(options, projectfile, mappings, sources, single): 'function linkProjects_mame_%s(_target, _subtarget)\n' \ ' links {\n' % (options.target, )) for lib in libnames: - if (lib != 'shared') and (lib != 'messshared'): + if lib != 'shared': projectfile.write(' "%s",\n' % (lib, )) if 'shared' in libraries: projectfile.write(' "shared",\n') - if 'messshared' in libraries: - projectfile.write(' "messshared",\n') projectfile.write( ' }\n' \ 'end\n' \ @@ -861,12 +857,29 @@ def write_project(options, projectfile, mappings, sources, single): projectfile.write('end\n') +def collect_sources(root, sources): + result = [ ] + for source in sources: + fullpath = os.path.join(root, source) + if os.path.isdir(fullpath): + for subdir, dirs, files in os.walk(fullpath): + for candidate in files: + if os.path.splitext(candidate)[1] == '.cpp': + if subdir != fullpath: + result.append(os.path.join(source, os.path.relpath(subdir, fullpath), candidate)) + else: + result.append(os.path.join(source, candidate)) + else: + result.append(source) + return result + + def write_filter(options, filterfile): sources = set() DriverFilter().parse_list(options.list, lambda n: sources.add(n), lambda n: None) drivers = set() - for source in options.sources: + for source in collect_sources(options.root, options.sources): components = tuple(x for x in split_path(source) if x) if (len(components) > 3) and (components[:2] == ('src', 'mame')): ext = os.path.splitext(components[-1])[1].lower() @@ -881,7 +894,7 @@ if __name__ == '__main__': options = parse_command_line() if options.command == 'sourcesproject': header_to_optional = collect_lua_directives(options) - source_dependencies = scan_source_dependencies(options.root, options.sources) + source_dependencies = scan_source_dependencies(options.root, collect_sources(options.root, options.sources)) write_project(options, sys.stdout, header_to_optional, source_dependencies, True) elif options.command == 'filterproject': header_to_optional = collect_lua_directives(options) diff --git a/scripts/genie.lua b/scripts/genie.lua index 6a3eca5014e..cef42ece7cb 100644 --- a/scripts/genie.lua +++ b/scripts/genie.lua @@ -1434,8 +1434,9 @@ if _OPTIONS["SOURCES"] ~= nil then local str = _OPTIONS["SOURCES"] local sourceargs = "" for word in string.gmatch(str, '([^,]+)') do - if not os.isfile(path.join(MAME_DIR, word)) then - error("File " .. word .. " does not exist") + local fullpath = path.join(MAME_DIR, word) + if (not os.isfile(fullpath)) and (not os.isdir(fullpath)) then + error("File/directory " .. word .. " does not exist") end sourceargs = sourceargs .. " " .. word end diff --git a/scripts/target/mame/mame.lua b/scripts/target/mame/mame.lua index c92e9c651ed..2a47c1ac1d4 100644 --- a/scripts/target/mame/mame.lua +++ b/scripts/target/mame/mame.lua @@ -1603,7 +1603,6 @@ function linkProjects_mame_mame(_target, _subtarget) "zpa", "zvt", "shared", -- must stay near the end - "messshared", -- must stay near the end } end @@ -1621,7 +1620,6 @@ function createMAMEProjects(_target, _subtarget, _name) MAME_DIR .. "src/emu", MAME_DIR .. "src/devices", MAME_DIR .. "src/mame/shared", - MAME_DIR .. "src/mame/messshared", MAME_DIR .. "src/lib", MAME_DIR .. "src/lib/util", MAME_DIR .. "3rdparty", @@ -1653,12 +1651,6 @@ files { MAME_DIR .. "src/mame/shared/*.cpp", } -createMAMEProjects(_target, _subtarget, "messshared") -files { - MAME_DIR .. "src/mame/messshared/*.h", - MAME_DIR .. "src/mame/messshared/*.cpp", -} - -------------------------------------------------- -- manufacturer-specific groupings for drivers -------------------------------------------------- diff --git a/src/devices/bus/nubus/nubus_48gc.cpp b/src/devices/bus/nubus/nubus_48gc.cpp index b12ff7fc196..9ab169ca73d 100644 --- a/src/devices/bus/nubus/nubus_48gc.cpp +++ b/src/devices/bus/nubus/nubus_48gc.cpp @@ -203,22 +203,25 @@ ROM_END // TODO: find a better place for this table to live struct mac_monitor_info { bool mono; unsigned sense[4]; }; mac_monitor_info const f_monitors[] = { - { false, { 0, 0, 0, 0 } }, // 0: RGB 21" - { true, { 1, 1, 1, 0 } }, // 1: Full-Page (B&W 15") - { false, { 2, 2, 0, 2 } }, // 2: RGB 12" - { true, { 3, 3, 1, 2 } }, // 3: Two-Page (B&W 21") - { false, { 4, 0, 4, 4 } }, // 4: NTSC Monitor - { false, { 5, 1, 5, 4 } }, // 5: RGB 15" - { false, { 6, 2, 4, 6 } }, // 6: Hi-Res (12-14") - { false, { 6, 0, 0, 6 } }, // 7: Multiple Scan 14" - { false, { 6, 0, 4, 6 } }, // 8: Multiple Scan 16" - { false, { 6, 2, 0, 6 } }, // 9: Multiple Scan 21" - { false, { 7, 0, 0, 0 } }, // 10: PAL Encoder - { false, { 7, 1, 1, 0 } }, // 11: NTSC Encoder - { false, { 7, 1, 1, 6 } }, // 12: VGA/Super VGA - { false, { 7, 2, 5, 2 } }, // 13: RGB 16" - { false, { 7, 3, 0, 0 } }, // 14: PAL Monitor - { false, { 7, 3, 4, 4 } } }; // 15: RGB 19" + // 512×385 640×480 640×870 832×624 1024×768 1152×870 + // 60.15 Hz 66.67 Hz 75.08 Hz 74.55 Hz 74.93 Hz 75.08 Hz 59.94 Hz 55.98 Hz 59.94 Hz 50.00 Hz + // portrait interlaced interlaced + { false, { 0, 0, 0, 0 } }, // 0: RGB 21" yes + { true, { 1, 1, 1, 0 } }, // 1: Full-Page (B&W 15") yes + { false, { 2, 2, 0, 2 } }, // 2: RGB 12" yes + { true, { 3, 3, 1, 2 } }, // 3: Two-Page (B&W 21") yes + { false, { 4, 0, 4, 4 } }, // 4: NTSC Monitor yes + { false, { 5, 1, 5, 4 } }, // 5: RGB 15" yes + { false, { 6, 2, 4, 6 } }, // 6: Hi-Res (12-14") yes + { false, { 6, 0, 0, 6 } }, // 7: Multiple Scan 14" yes yes + { false, { 6, 0, 4, 6 } }, // 8: Multiple Scan 16" yes yes yes yes + { false, { 6, 2, 0, 6 } }, // 9: Multiple Scan 21" yes yes yes yes + { false, { 7, 0, 0, 0 } }, // 10: PAL Encoder yes + { false, { 7, 1, 1, 0 } }, // 11: NTSC Encoder yes + { false, { 7, 1, 1, 6 } }, // 12: VGA/Super VGA yes yes + { false, { 7, 2, 5, 2 } }, // 13: RGB 16" yes + { false, { 7, 3, 0, 0 } }, // 14: PAL Monitor yes + { false, { 7, 3, 4, 4 } } }; // 15: RGB 19" yes //------------------------------------------------- diff --git a/src/mame/dooyong/dooyong.cpp b/src/mame/dooyong/dooyong.cpp index f6446b78ace..3f5570ebdf1 100644 --- a/src/mame/dooyong/dooyong.cpp +++ b/src/mame/dooyong/dooyong.cpp @@ -75,7 +75,7 @@ are almost identical, except for much darker BG layer colors). ***************************************************************************/ #include "emu.h" -#include "dooyong_v.h" +#include "dooyong_tilemap.h" #include "cpu/m68000/m68000.h" #include "cpu/z80/z80.h" diff --git a/src/mame/dooyong/dooyong_v.cpp b/src/mame/dooyong/dooyong_tilemap.cpp similarity index 99% rename from src/mame/dooyong/dooyong_v.cpp rename to src/mame/dooyong/dooyong_tilemap.cpp index 25fc0a0ef55..309c2b76983 100644 --- a/src/mame/dooyong/dooyong_v.cpp +++ b/src/mame/dooyong/dooyong_tilemap.cpp @@ -1,7 +1,7 @@ // license:BSD-3-Clause // copyright-holders:Vas Crabb #include "emu.h" -#include "dooyong_v.h" +#include "dooyong_tilemap.h" #include "screen.h" diff --git a/src/mame/dooyong/dooyong_v.h b/src/mame/dooyong/dooyong_tilemap.h similarity index 97% rename from src/mame/dooyong/dooyong_v.h rename to src/mame/dooyong/dooyong_tilemap.h index 31846057958..2ee165fba1f 100644 --- a/src/mame/dooyong/dooyong_v.h +++ b/src/mame/dooyong/dooyong_tilemap.h @@ -1,7 +1,7 @@ // license:BSD-3-Clause // copyright-holders:Vas Crabb -#ifndef MAME_VIDEO_DOOYONG_H -#define MAME_VIDEO_DOOYONG_H +#ifndef MAME_DOOYONG_DOOYONG_TILEMAP_H +#define MAME_DOOYONG_DOOYONG_TILEMAP_H #pragma once @@ -153,4 +153,4 @@ private: std::unique_ptr m_tileram; }; -#endif // MAME_VIDEO_DOOYONG_H +#endif // MAME_DOOYONG_DOOYONG_TILEMAP_H diff --git a/src/mame/messshared/isbc_215g.cpp b/src/mame/shared/isbc_215g.cpp similarity index 100% rename from src/mame/messshared/isbc_215g.cpp rename to src/mame/shared/isbc_215g.cpp diff --git a/src/mame/messshared/isbc_215g.h b/src/mame/shared/isbc_215g.h similarity index 100% rename from src/mame/messshared/isbc_215g.h rename to src/mame/shared/isbc_215g.h diff --git a/src/mame/messshared/mega32x.cpp b/src/mame/shared/mega32x.cpp similarity index 100% rename from src/mame/messshared/mega32x.cpp rename to src/mame/shared/mega32x.cpp diff --git a/src/mame/messshared/mega32x.h b/src/mame/shared/mega32x.h similarity index 100% rename from src/mame/messshared/mega32x.h rename to src/mame/shared/mega32x.h diff --git a/src/mame/messshared/megacdcd.cpp b/src/mame/shared/megacdcd.cpp similarity index 100% rename from src/mame/messshared/megacdcd.cpp rename to src/mame/shared/megacdcd.cpp diff --git a/src/mame/messshared/megacdcd.h b/src/mame/shared/megacdcd.h similarity index 100% rename from src/mame/messshared/megacdcd.h rename to src/mame/shared/megacdcd.h diff --git a/src/mame/messshared/mitcrt.cpp b/src/mame/shared/mitcrt.cpp similarity index 100% rename from src/mame/messshared/mitcrt.cpp rename to src/mame/shared/mitcrt.cpp diff --git a/src/mame/messshared/mitcrt.h b/src/mame/shared/mitcrt.h similarity index 100% rename from src/mame/messshared/mitcrt.h rename to src/mame/shared/mitcrt.h diff --git a/src/mame/messshared/ms7004.cpp b/src/mame/shared/ms7004.cpp similarity index 100% rename from src/mame/messshared/ms7004.cpp rename to src/mame/shared/ms7004.cpp diff --git a/src/mame/messshared/ms7004.h b/src/mame/shared/ms7004.h similarity index 100% rename from src/mame/messshared/ms7004.h rename to src/mame/shared/ms7004.h diff --git a/src/mame/messshared/teleprinter.cpp b/src/mame/shared/teleprinter.cpp similarity index 100% rename from src/mame/messshared/teleprinter.cpp rename to src/mame/shared/teleprinter.cpp diff --git a/src/mame/messshared/teleprinter.h b/src/mame/shared/teleprinter.h similarity index 100% rename from src/mame/messshared/teleprinter.h rename to src/mame/shared/teleprinter.h diff --git a/src/mame/messshared/vboysound.cpp b/src/mame/shared/vboysound.cpp similarity index 100% rename from src/mame/messshared/vboysound.cpp rename to src/mame/shared/vboysound.cpp diff --git a/src/mame/messshared/vboysound.h b/src/mame/shared/vboysound.h similarity index 100% rename from src/mame/messshared/vboysound.h rename to src/mame/shared/vboysound.h diff --git a/src/mame/messshared/vt100_kbd.cpp b/src/mame/shared/vt100_kbd.cpp similarity index 100% rename from src/mame/messshared/vt100_kbd.cpp rename to src/mame/shared/vt100_kbd.cpp diff --git a/src/mame/messshared/vt100_kbd.h b/src/mame/shared/vt100_kbd.h similarity index 100% rename from src/mame/messshared/vt100_kbd.h rename to src/mame/shared/vt100_kbd.h diff --git a/src/mame/messshared/wswansound.cpp b/src/mame/shared/wswansound.cpp similarity index 100% rename from src/mame/messshared/wswansound.cpp rename to src/mame/shared/wswansound.cpp diff --git a/src/mame/messshared/wswansound.h b/src/mame/shared/wswansound.h similarity index 100% rename from src/mame/messshared/wswansound.h rename to src/mame/shared/wswansound.h diff --git a/src/mame/messshared/z80bin.cpp b/src/mame/shared/z80bin.cpp similarity index 100% rename from src/mame/messshared/z80bin.cpp rename to src/mame/shared/z80bin.cpp diff --git a/src/mame/messshared/z80bin.h b/src/mame/shared/z80bin.h similarity index 100% rename from src/mame/messshared/z80bin.h rename to src/mame/shared/z80bin.h