From cf7b2ad9c1b4e0b6f661014616d8994abcbba274 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:06:54 +0100
Subject: [PATCH 01/34] fix: install site sections before the page plan
plan_emulator_pages names systems, and siterender then fell back to the repository's database.json and emulators/ whatever --db and --emulators-dir gave.
---
scripts/generate_site.py | 5 +++--
tests/test_site_system_names.py | 19 +++++++++++++++++++
2 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index 5e3fb96a9..b5e1856d2 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -12142,15 +12142,16 @@ def _generate(args: argparse.Namespace) -> None:
# The test each emulator page builds for itself: the parts a page is
# cut into weigh the status its rows show.
file_held = _availability_check(db, suppl_names)
+ # The plan names systems: the sections must be this run's data first.
+ manufacturers = _group_by_manufacturer(db)
+ set_console_sections(manufacturers, program_names(profiles))
plan_emulator_pages(profiles, file_held)
# Build system_id -> manufacturer page map (needed by all generators)
print("Building system cross-reference map...")
- manufacturers = _group_by_manufacturer(db)
set_system_page_map(
_system_pages_from_data(manufacturers, coverages, db, profiles)
)
print(f" {len(_system_page_map)} system IDs mapped to pages")
- set_console_sections(manufacturers, program_names(profiles))
from siterender import link_coverage, system_ids # noqa: PLC0415
print("Generating system pages...")
diff --git a/tests/test_site_system_names.py b/tests/test_site_system_names.py
index da1103b97..b24fc3de8 100644
--- a/tests/test_site_system_names.py
+++ b/tests/test_site_system_names.py
@@ -118,3 +118,22 @@ class SystemNames(unittest.TestCase):
if __name__ == "__main__":
unittest.main()
+
+
+class SectionsComeBeforeThePlan(unittest.TestCase):
+ """plan_emulator_pages names systems. Run before set_console_sections,
+ it made siterender read ./database.json and ./emulators whatever --db
+ and --emulators-dir gave, so the parts were cut on another collection."""
+
+ def test_generate_installs_the_sections_before_planning(self):
+ import ast
+ import inspect
+
+ import generate_site
+
+ tree = ast.parse(inspect.getsource(generate_site._generate))
+ lines = {}
+ for node in ast.walk(tree):
+ if isinstance(node, ast.Call) and isinstance(node.func, ast.Name):
+ lines.setdefault(node.func.id, node.lineno)
+ self.assertLess(lines["set_console_sections"], lines["plan_emulator_pages"])
From b6b7856e972e238337e9d49569aaa0081b900358 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:11:09 +0100
Subject: [PATCH 02/34] fix: read bundled on the site as verify does
comes_with_app kept an entry narrowed by mode as required and missing, while verify and the pack read it as installed with that build (validation.installed_with_emulator). The four other site checks of bundled now go through the same function.
---
scripts/generate_site.py | 36 ++++++++++++++++--------------------
tests/test_site_emulators.py | 9 +++++++--
2 files changed, 23 insertions(+), 22 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index b5e1856d2..4dde50897 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -6662,7 +6662,7 @@ def _start_groups(
for f in primaries:
sha1 = str(f.get("sha1", ""))
for emulator, entry in _reading_pairs(sha1, consumers):
- if entry.get("bundled"):
+ if comes_with_app(entry):
continue
system = None
systems = _entry_systems(emulator, entry)
@@ -6677,7 +6677,7 @@ def _start_groups(
for sha1, emulator, entry, system in _entries_by_section(consumers).get(here, []):
record = known.get(sha1)
parts = str((record or {}).get("path", "")).split("/")
- if (sha1 in held or not record or entry.get("bundled") or ".variants" in parts
+ if (sha1 in held or not record or comes_with_app(entry) or ".variants" in parts
or len(parts) < 3 or parts[1] != "Arcade"):
continue
if sha1 not in kept:
@@ -7819,12 +7819,15 @@ def generate_emulators_index(profiles: dict) -> str:
def comes_with_app(f: dict) -> bool:
- """The emulator installs the file in every build the profile documents.
+ """The emulator installs the file in the build the entry describes.
- ``bundled`` narrowed by ``mode`` is installed by one build only, and the
- other build still reads it from the user's folder.
+ The rule verify and the pack read (``installed_with_emulator``). An entry
+ narrowed by ``mode`` is that build's alone: the other build reads its
+ own entry, or nothing.
"""
- return f.get("bundled") is True and not f.get("mode")
+ from validation import installed_with_emulator # noqa: PLC0415
+
+ return installed_with_emulator(f)
def _file_badges(f: dict, in_repo: bool, for_system: str = "") -> list[str]:
@@ -7841,7 +7844,6 @@ def _file_badges(f: dict, in_repo: bool, for_system: str = "") -> list[str]:
category = f.get("category", "")
region = f.get("region", "")
storage = f.get("storage", "")
- bundled = f.get("bundled", False)
embedded = f.get("embedded", False)
has_builtin = f.get("has_builtin", False)
archive = f.get("archive", "")
@@ -7851,9 +7853,10 @@ def _file_badges(f: dict, in_repo: bool, for_system: str = "") -> list[str]:
if shipped:
# NetherSX2's three interface fonts sat beside the BIOS as
# "required" and "missing": the app ships them, nobody fetches them.
- badges.append(
- 'comes with the app'
- )
+ # Narrowed to one build, the build is named.
+ build = f.get("mode") if f.get("mode") in ("standalone", "libretro") else ""
+ label = f"installed with the {build} emulator" if build else "comes with the app"
+ badges.append(f'{label}')
elif required:
needed = f"required for {html.escape(for_system)}" if for_system else "required"
badges.append(
@@ -7879,7 +7882,7 @@ def _file_badges(f: dict, in_repo: bool, for_system: str = "") -> list[str]:
badges.append(
'HLE fallback'
)
- if mode:
+ if mode and not (shipped and mode in ("standalone", "libretro")):
badges.append(
f'{mode}'
)
@@ -7896,13 +7899,6 @@ def _file_badges(f: dict, in_repo: bool, for_system: str = "") -> list[str]:
badges.append(
f'{storage}'
)
- if bundled and not shipped:
- # Said in words: the pack leaves the file out because the emulator,
- # in the build the entry names, already installs it.
- build = f" {f['mode']}" if f.get("mode") in ("standalone", "libretro") else ""
- badges.append(
- f'installed with the{build} emulator'
- )
if embedded:
badges.append(
'embedded'
@@ -8860,7 +8856,7 @@ def standalone_place(name: str, profile: dict, entry: dict, key: str = "") -> st
if not isinstance(entry, dict) or not profile.get("data_root"):
return ""
mode = entry.get("mode")
- if mode == "libretro" or (entry.get("bundled") is True and mode in (None, "standalone")):
+ if mode == "libretro" or comes_with_app(entry):
return ""
excluded = _folder_only(name, entry)
if "*" in excluded or (key in excluded if key else excluded):
@@ -8898,7 +8894,7 @@ def _data_root_folder(name: str, profile: dict, key: str, entries: list[dict]) -
folders = set()
for f in entries:
mode = f.get("mode")
- if mode == "libretro" or (f.get("bundled") is True and mode in (None, "standalone")):
+ if mode == "libretro" or comes_with_app(f):
continue
place = standalone_place(name, profile, f, key)
if not place:
diff --git a/tests/test_site_emulators.py b/tests/test_site_emulators.py
index 70d1d9782..97eaa32b3 100644
--- a/tests/test_site_emulators.py
+++ b/tests/test_site_emulators.py
@@ -254,11 +254,16 @@ class WhatTheAppShipsIsNoFileToGet(unittest.TestCase):
self.assertIn(">comes with the app", badges)
self.assertNotIn(">required", badges)
self.assertNotIn(">missing", badges)
- # Installed by one build only: the other still reads it from the folder.
+ # Narrowed to one build, the entry is that build's alone, as verify
+ # and the pack read it: EightyOne installs its ROMs, and the libretro
+ # core, which embeds them, reads no entry. Nothing to fetch.
dual = " ".join(gs._file_badges({"name": "a", "bundled": True, "mode": "standalone",
"required": True}, False))
- self.assertIn(">required", dual)
+ self.assertNotIn(">required", dual)
+ self.assertNotIn(">missing", dual)
self.assertIn("installed with the standalone emulator", dual)
+ rom = next(f for f in _profile("81")["files"] if f["name"] == "jupiterace.rom")
+ self.assertTrue(gs.comes_with_app(rom))
def test_counts_leave_them_out(self):
shipped = sum(1 for f in self.profile["files"] if gs.comes_with_app(f))
From 17538bcddf50ab4e2eee268c3b98c0293992a364 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:13:23 +0100
Subject: [PATCH 03/34] refactor: keep one region word table on the site
_REGION_WORDS was bound twice in generate_site. The second table won at import, so the first, read by _region_word, was never used. The region lines now read the one table through _region_words.
---
scripts/generate_site.py | 9 +--------
tests/test_site_render.py | 25 +++++++++++++++++++++++++
2 files changed, 26 insertions(+), 8 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index 4dde50897..c5206c4f0 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -6443,13 +6443,6 @@ def _region_order() -> dict[str, int]:
return {region: index for index, region in enumerate(ordered)}
-_REGION_WORDS = {"uk": "UK", "asia-ntsc": "Asia (NTSC)", "asia-pal": "Asia (PAL)"}
-
-
-def _region_word(region: str) -> str:
- return _REGION_WORDS.get(region) or region.replace("-", " ").title()
-
-
def _reading_pairs(sha1: str, consumers: FileConsumers) -> list[tuple[str, dict]]:
"""The profile entries that read a file, each with its emulator."""
files_of = getattr(consumers, "emulator_files", {})
@@ -7031,7 +7024,7 @@ def _group_start(group: _StartGroup, first_below: bool) -> list[tuple[str, str]]
else:
regional[(*same, region)] = regional.pop(same)
- out = [(", ".join(_region_word(r) for r in regions), regional[regions])
+ out = [(", ".join(_region_words(r) for r in regions), regional[regions])
for regions in sorted(regional, key=lambda rs: (order.get(rs[0], len(order)), rs))]
# A name a region line gives already is no "also", and one only
# emulators no region line answers reads is an "instead": armsx1 reads
diff --git a/tests/test_site_render.py b/tests/test_site_render.py
index 2ad8e6788..0236dc2bd 100644
--- a/tests/test_site_render.py
+++ b/tests/test_site_render.py
@@ -429,3 +429,28 @@ class TheSearchSkipsLinkLists(unittest.TestCase):
if __name__ == "__main__":
unittest.main()
+
+
+class OneDefinitionPerName(unittest.TestCase):
+ """generate_site defined _REGION_WORDS twice: the second table replaced
+ the first at import, and _region_word, written beside the first, never
+ read it."""
+
+ def test_no_module_name_is_bound_twice(self):
+ import ast
+
+ for path in sorted((REPO_ROOT / "scripts").glob("*site*.py")):
+ seen: dict[str, int] = {}
+ for node in ast.parse(path.read_text(encoding="utf-8")).body:
+ if isinstance(node, (ast.FunctionDef, ast.ClassDef)):
+ names = [node.name]
+ elif isinstance(node, ast.Assign):
+ names = [t.id for t in node.targets if isinstance(t, ast.Name)]
+ elif isinstance(node, ast.AnnAssign) and isinstance(node.target, ast.Name):
+ names = [node.target.id]
+ else:
+ continue
+ for name in names:
+ self.assertNotIn(name, seen, f"{path.name}:{node.lineno} binds {name} "
+ f"again, first at line {seen.get(name)}")
+ seen[name] = node.lineno
From ed100a5c082a30fe8bf92555ef5d1da76b2f8887 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:13:51 +0100
Subject: [PATCH 04/34] fix: skip the wide table check without a build
A missing page was a continue, so with no website/dist the test ran no assertion and reported ok.
---
tests/test_site_components.py | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/tests/test_site_components.py b/tests/test_site_components.py
index 4bd277d60..20e06fd29 100644
--- a/tests/test_site_components.py
+++ b/tests/test_site_components.py
@@ -353,15 +353,24 @@ class WideTablesStackAndFiltersAreBuilt(unittest.TestCase):
def test_every_wide_table_stacks(self):
for page in ("emulators/duckstation", "gaps", "gaps-files-to-source", "emulators", "data",
"wiki/verification-modes"):
- html = (DIST / page / "index.html")
- if not html.is_file():
- continue
- for table in _tables(_read(html)):
+ for table in _tables(_built(page)):
if len(_headers(table)) < 4:
continue
with self.subTest(page=page, header=_headers(table)):
self.assertIn('data-rb-stack="true"', table.split(">", 1)[0])
+ def test_no_build_is_a_skip_not_a_pass(self):
+ """Every missing page was a `continue`: with no build the test ran no
+ assertion and still reported ok."""
+ from unittest import mock
+
+ module = sys.modules[__name__]
+ case = WideTablesStackAndFiltersAreBuilt("test_every_wide_table_stacks")
+ result = unittest.TestResult()
+ with mock.patch.object(module, "DIST", REPO_ROOT / "tmp" / "no-such-dist"):
+ case.run(result)
+ self.assertEqual(len(result.skipped), 1)
+
def test_long_tables_get_their_labels_at_runtime(self):
"""Labels on every cell of a long stacked table were 122 KB of
emulators/mame and took it over the 600,000-byte page budget."""
From 9d51052c25d91e3378750a7aa90a0142fd117152 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:15:24 +0100
Subject: [PATCH 05/34] docs: rerun the installer samples on the new lists
c624a820f rewrote install/*.json when ide12.rom was collected and left the run samples one file behind, which failed four tests in test_doc_pages.
---
wiki/installer.md | 38 +++++++++++++++++++-------------------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/wiki/installer.md b/wiki/installer.md
index 149779ba2..35bd85390 100644
--- a/wiki/installer.md
+++ b/wiki/installer.md
@@ -403,13 +403,13 @@ A RetroArch dry run into an empty folder, with the list of 2026-11-05, printed t
```
Fetching file index for retroarch...
106 files read from RetroArch's save directory go to a folder per core under /home/me/.config/retroarch/saves
- 11000 files (6.7 GB)
- 3270 BIOS files (4.1 GB), 5089 game data files (2.5 GB) and 2641 data files (40.2 MB).
+ 11001 files (6.7 GB)
+ 3271 BIOS files (4.1 GB), 5089 game data files (2.5 GB) and 2641 data files (40.2 MB).
Game data: files a game or a game engine reads, of no use to the other cores. Data files: the files an emulator reads from a data folder of its own, such as Dolphin's Sys and PPSSPP's assets.
- Not installable: 38 files are not in the collection, 2 of them required.
+ Not installable: 37 files are not in the collection, 2 of them required.
Checking existing files...
- 0 in place, 11000 missing, 0 wrong copies
+ 0 in place, 11001 missing, 0 wrong copies
```
@@ -468,13 +468,13 @@ few minutes on a memory card, because every file is hashed:
```
Fetching file index for batocera...
23 files read from Batocera's save directory go to a folder per system under /userdata/saves
- 14723 files (9.2 GB)
- 3179 BIOS files (4.4 GB) and 11544 game data files (4.8 GB).
+ 14724 files (9.2 GB)
+ 3180 BIOS files (4.4 GB) and 11544 game data files (4.8 GB).
Game data: files a game or a game engine reads, of no use to the other cores.
- Not installable: 427 files are not in the collection, 80 of them required.
+ Not installable: 426 files are not in the collection, 80 of them required.
Checking existing files...
- 0 in place, 14723 missing, 0 wrong copies
+ 0 in place, 14724 missing, 0 wrong copies
```
@@ -489,10 +489,10 @@ as the log of the run below:
```
-Downloading 14723 files (9.2 GB)...
+Downloading 14724 files (9.2 GB)...
Press Ctrl+C to stop. Running the same command again carries on from here.
- [1/14723] panafz1.bin ok
- [2/14723] panafz10.bin ok
+ [1/14724] panafz1.bin ok
+ [2/14724] panafz10.bin ok
```
@@ -504,10 +504,10 @@ command again picks up where it stopped.
```
-Done. 14723 files installed.
- Installed: 3179 BIOS files and 11544 game data files.
+Done. 14724 files installed.
+ Installed: 3180 BIOS files and 11544 game data files.
BIOS folder: /userdata/bios
-427 files were not installed: the collection does not hold them, or its copy fails their check.
+426 files were not installed: the collection does not hold them, or its copy fails their check.
Needed to start an emulator (1 file):
capcom-cps3 (fbneo): sfiii2a.zip
https://abdess.github.io/retrobios/emulators/fbneo/
@@ -559,7 +559,7 @@ The same command with `--check` reads the folder and writes nothing:
```
Checking existing files...
- 14723 in place, 0 missing, 0 wrong copies
+ 14724 in place, 0 missing, 0 wrong copies
Everything is in place.
```
@@ -750,8 +750,8 @@ by `scripts/generate_installer_doc.py`):
```
-RetroArch: 11000 files, 6.7 GB.
- 3270 BIOS files (4.1 GB), 5089 game data files (2.5 GB) and 2641 data files (40.2 MB).
+RetroArch: 11001 files, 6.7 GB.
+ 3271 BIOS files (4.1 GB), 5089 game data files (2.5 GB) and 2641 data files (40.2 MB).
Game data: files a game or a game engine reads, of no use to the other cores. Data files: the files an emulator reads from a data folder of its own, such as Dolphin's Sys and PPSSPP's assets.
BIOS folder: /home/me/.config/retroarch/system
Not available here, and needed to start its emulator: sfiii2a.zip (Capcom Cps3). Your own copy goes in the BIOS folder.
@@ -765,8 +765,8 @@ RetroArch: 11000 files, 6.7 GB.
Counted again for your choices. Nothing is written before Enter.
-RetroArch: 5911 files, 4.2 GB.
- 3270 BIOS files (4.1 GB) and 2641 data files (40.2 MB). 5089 game data files left out.
+RetroArch: 5912 files, 4.2 GB.
+ 3271 BIOS files (4.1 GB) and 2641 data files (40.2 MB). 5089 game data files left out.
Game data: files a game or a game engine reads, of no use to the other cores. Data files: the files an emulator reads from a data folder of its own, such as Dolphin's Sys and PPSSPP's assets.
BIOS folder: /home/me/.config/retroarch/system
Not available here, and needed to start its emulator: sfiii2a.zip (Capcom Cps3). Your own copy goes in the BIOS folder.
From 6ae9e461bd81780cad7f972b9f5465019eee159b Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:16:32 +0100
Subject: [PATCH 06/34] docs: name the steps the pipeline skip flags skip
--skip-packs said --skip-docs would stop after verify while 4d and 4e still run, and the tools.md flag table left 8b out of --skip-docs. The help, the usage and the flag table now name the steps the step table marks.
---
scripts/pipeline.py | 14 +++++++-------
tests/test_doc_pages.py | 31 +++++++++++++++++++++++++++++++
wiki/tools.md | 6 +++---
3 files changed, 41 insertions(+), 10 deletions(-)
diff --git a/scripts/pipeline.py b/scripts/pipeline.py
index 11d8c3f24..244eeb307 100644
--- a/scripts/pipeline.py
+++ b/scripts/pipeline.py
@@ -35,8 +35,8 @@ come from .cache/large/ only.
Usage:
python scripts/pipeline.py # active platforms
python scripts/pipeline.py --include-archived # all platforms
- python scripts/pipeline.py --skip-packs # steps 0 to 3b, 4d, 7 and 8
- python scripts/pipeline.py --skip-docs # skip steps 7 and 8
+ python scripts/pipeline.py --skip-packs # skip steps 4, 4b, 4c, 5 and 6
+ python scripts/pipeline.py --skip-docs # skip steps 7, 8 and 8b
python scripts/pipeline.py --offline # no network, see above
"""
@@ -698,13 +698,13 @@ def main() -> None:
parser.add_argument(
"--skip-packs",
action="store_true",
- help="Skip steps 4 to 6 except 4d: packs, manifests and their checks. "
- "Steps 7 and 8 still rewrite README.md and the site pages in website/, "
- "add --skip-docs to "
- "stop after verify",
+ help="Skip steps 4, 4b, 4c, 5 and 6: packs, manifests and their checks. "
+ "Step 4d still gates the run, step 4e still rewrites install/games/, and "
+ "steps 7 to 8b rewrite README.md and the site unless --skip-docs is given",
)
parser.add_argument(
- "--skip-docs", action="store_true", help="Skip README and site generation"
+ "--skip-docs", action="store_true",
+ help="Skip steps 7, 8 and 8b: README, installer page and site"
)
parser.add_argument(
"--offline", action="store_true",
diff --git a/tests/test_doc_pages.py b/tests/test_doc_pages.py
index 409e80248..4a3ef5d69 100644
--- a/tests/test_doc_pages.py
+++ b/tests/test_doc_pages.py
@@ -1794,5 +1794,36 @@ class ReportExcerptIsTheRun(unittest.TestCase):
self.assertIn(line, printed)
+class SkipFlagsNameTheSteps(unittest.TestCase):
+ """--skip-packs said "add --skip-docs to stop after verify" while 4d and
+ 4e still ran, and the flag table left 8b out of --skip-docs."""
+
+ STEP = r"\b\d[a-z]?\d?\b"
+
+ def test_the_flag_row_the_help_and_the_usage_agree_with_the_step_table(self):
+ page = (ROOT / "wiki" / "tools.md").read_text(encoding="utf-8")
+ table = page.split("Pipeline steps:", 1)[1].split("Pipeline flags:", 1)[0]
+ source = (ROOT / "scripts" / "pipeline.py").read_text(encoding="utf-8")
+ helps = {}
+ for node in ast.walk(ast.parse(source)):
+ if (isinstance(node, ast.Call) and getattr(node.func, "attr", "") == "add_argument"
+ and node.args and isinstance(node.args[0], ast.Constant)):
+ helps.update({node.args[0].value: ast.literal_eval(kw.value)
+ for kw in node.keywords if kw.arg == "help"})
+ for flag in ("--skip-packs", "--skip-docs"):
+ steps = set()
+ for row in table.splitlines():
+ cells = [c.strip() for c in row.split("|")]
+ if len(cells) > 3 and cells[3].startswith(f"`{flag}`"):
+ steps.add(cells[1])
+ self.assertTrue(steps)
+ row = re.search(rf"^\| `{flag}` \| skip steps ([^.|]*)", page, re.M).group(1)
+ usage = re.search(rf"pipeline\.py {flag} +# skip steps (.*)$", source, re.M).group(1)
+ said = helps[flag].split(":", 1)[0]
+ for text in (row, usage, said):
+ with self.subTest(flag=flag, text=text):
+ self.assertEqual(set(re.findall(self.STEP, text)), steps)
+
+
if __name__ == "__main__":
unittest.main()
diff --git a/wiki/tools.md b/wiki/tools.md
index 6cce3c211..d691b8917 100644
--- a/wiki/tools.md
+++ b/wiki/tools.md
@@ -15,7 +15,7 @@ Run everything in sequence:
```bash
python scripts/pipeline.py --offline # DB + verify + packs + manifests + integrity + readme + site
-python scripts/pipeline.py --offline --skip-packs # DB + verify + readme + site
+python scripts/pipeline.py --offline --skip-packs # no packs or manifests
python scripts/pipeline.py --offline --skip-docs # skip readme + site generation
python scripts/pipeline.py --offline --target switch # filter by hardware target
python scripts/pipeline.py --offline --with-truth # include truth generation + diff
@@ -63,8 +63,8 @@ Pipeline flags:
| Flag | Effect |
|------|--------|
| `--offline` | skip every step that needs the network (2, 2a, 2a2, 2b, 2b2), and pack only the release assets already in `.cache/large/` |
-| `--skip-packs` | skip steps 4, 4b, 4c, 6 and the consistency check. README and site are still rewritten unless `--skip-docs` is given too |
-| `--skip-docs` | skip steps 7 and 8 |
+| `--skip-packs` | skip steps 4, 4b, 4c, 5 and 6. Steps 4d and 4e still run, and README and site are still rewritten unless `--skip-docs` is given too |
+| `--skip-docs` | skip steps 7, 8 and 8b |
| `--include-archived` | include archived platforms in verify, packs, truth and export |
| `--target TARGET` | filter verify, packs and truth by hardware target |
| `--source {platform,truth,full}` | pack file source, passed through to `generate_pack.py`. Refused with `--skip-packs` |
From 46a6ac267517b16786c2649c17f07561246ffef9 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:17:52 +0100
Subject: [PATCH 07/34] docs: list the site build among the PR checks
CONTRIBUTING named the checks CI runs on a pull request and left out the npm build, validate_site.py, vermin and the pip packages the test job installs. A wiki-only change passed every listed check and failed CI.
---
CONTRIBUTING.md | 5 ++++-
scripts/generate_readme.py | 5 ++++-
tests/test_contributing_text.py | 19 +++++++++++++++++++
3 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 165b3e672..0383856fe 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -64,13 +64,16 @@ validation above is its check. For code, profiles or platform files, these are
the checks CI runs on a pull request (Python 3.12 or newer):
```bash
-pip install pyyaml "jsonschema[format-nongpl]" markdown
+pip install pyyaml "jsonschema[format-nongpl]" markdown pyte hypothesis vermin
python scripts/validate_pr.py --changed # the BIOS files the branch adds
python scripts/validate_schemas.py --source-only # profiles and platform files
python scripts/profile_sync.py --added --base upstream/main --strict # each profile the branch adds
python scripts/refresh_data_dirs.py # data directories the pack-building tests read
python scripts/generate_site.py # the pages the site tests read
+npm ci --prefix website && npm run build --prefix website # the built site, Node 24
python -m unittest discover -s tests -t .
+python scripts/validate_site.py --site-dir website/dist # links and page budgets
+vermin --no-tips -t=3.8- --violations install.py # install.py stays on Python 3.8
```
`upstream` is this repository as a remote of your fork
diff --git a/scripts/generate_readme.py b/scripts/generate_readme.py
index fb6bfa462..596f62d68 100644
--- a/scripts/generate_readme.py
+++ b/scripts/generate_readme.py
@@ -969,13 +969,16 @@ validation above is its check. For code, profiles or platform files, these are
the checks CI runs on a pull request (Python 3.12 or newer):
```bash
-pip install pyyaml "jsonschema[format-nongpl]" markdown
+pip install pyyaml "jsonschema[format-nongpl]" markdown pyte hypothesis vermin
python scripts/validate_pr.py --changed # the BIOS files the branch adds
python scripts/validate_schemas.py --source-only # profiles and platform files
python scripts/profile_sync.py --added --base upstream/main --strict # each profile the branch adds
python scripts/refresh_data_dirs.py # data directories the pack-building tests read
python scripts/generate_site.py # the pages the site tests read
+npm ci --prefix website && npm run build --prefix website # the built site, Node 24
python -m unittest discover -s tests -t .
+python scripts/validate_site.py --site-dir website/dist # links and page budgets
+vermin --no-tips -t=3.8- --violations install.py # install.py stays on Python 3.8
```
`upstream` is this repository as a remote of your fork
diff --git a/tests/test_contributing_text.py b/tests/test_contributing_text.py
index 09392caea..bf00749aa 100644
--- a/tests/test_contributing_text.py
+++ b/tests/test_contributing_text.py
@@ -78,6 +78,25 @@ class BeforeOpeningAPullRequest(unittest.TestCase):
self.assertIn("profile_sync.py --added --base upstream/main --strict", block)
self.assertNotIn("--changed --strict", block)
+ def test_it_names_the_site_build_and_the_packages_ci_runs(self):
+ """A wiki-only change passed every listed check and failed CI on
+ validate_site.py, which the list did not name."""
+ text = generate_readme.generate_contributing()
+ section = text.split("## Before opening a PR", 1)[1].split("\n## ", 1)[0]
+ workflow = (REPO_ROOT / ".github" / "workflows" / "validate.yml").read_text(encoding="utf-8")
+ for command in ("npm ci --prefix website", "npm run build --prefix website",
+ "validate_site.py --site-dir website/dist",
+ "vermin --no-tips -t=3.8- --violations install.py"):
+ with self.subTest(command=command):
+ self.assertIn(command, workflow)
+ self.assertIn(command, section)
+ installed = re.search(r'^\s*run: pip install (pyyaml "jsonschema.*markdown.*)$',
+ workflow, re.M).group(1)
+ pip_line = next(line for line in section.splitlines() if line.startswith("pip install"))
+ for package in (re.split(r"[\[=]", token.strip('"'))[0] for token in installed.split()):
+ with self.subTest(package=package):
+ self.assertRegex(pip_line, rf"\b{package}\b")
+
def test_it_installs_what_the_checks_need_and_no_site_package(self):
"""The site is built by Node from website/package-lock.json: a pip
line naming the old theme installed packages nothing reads."""
From 9e04bf887d7e8c94893ab1fae56dd5a05c452063 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:18:38 +0100
Subject: [PATCH 08/34] docs: give files over 100 MB their route
CONTRIBUTING sent any file over the browser's 25 MB through a clone, which GitHub refuses past 100 MB, and named a release only a maintainer can write to. It now gives the route validate_pr.py prints: an issue with the hashes.
---
CONTRIBUTING.md | 5 ++++-
scripts/generate_readme.py | 6 +++++-
tests/test_contributing_text.py | 11 +++++++++++
3 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 0383856fe..924244569 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -25,7 +25,10 @@ the most useful contribution.
From a clone, the file goes to `bios/Manufacturer/Console/filename`, and
`python scripts/validate_pr.py path/to/file` names that folder for a file still
outside `bios/`. Given a folder, such as an old card's BIOS folder, it checks
-every file under it. A file over the browser's 25 MB limit goes in that way.
+every file under it. A file over the browser's 25 MB limit goes in that way,
+up to the 100 MB GitHub accepts in a push. A larger file stays out of the pull
+request: [open an issue](https://github.com/Abdess/retrobios/issues/new?template=missing-bios.yml) with the hashes
+`validate_pr.py` prints, and a maintainer adds it to the `large-files` release.
## Add a platform
diff --git a/scripts/generate_readme.py b/scripts/generate_readme.py
index 596f62d68..01e3ac47d 100644
--- a/scripts/generate_readme.py
+++ b/scripts/generate_readme.py
@@ -37,6 +37,7 @@ from common import (
from nativemode import check_label
import release_record
from siteguides import install_command
+from validate_pr import LARGE_FILE_ISSUE_URL
from verify import verify_platform
@@ -930,7 +931,10 @@ the most useful contribution.
From a clone, the file goes to `bios/Manufacturer/Console/filename`, and
`python scripts/validate_pr.py path/to/file` names that folder for a file still
outside `bios/`. Given a folder, such as an old card's BIOS folder, it checks
-every file under it. A file over the browser's 25 MB limit goes in that way.
+every file under it. A file over the browser's 25 MB limit goes in that way,
+up to the 100 MB GitHub accepts in a push. A larger file stays out of the pull
+request: [open an issue]({LARGE_FILE_ISSUE_URL}) with the hashes
+`validate_pr.py` prints, and a maintainer adds it to the `large-files` release.
## Add a platform
diff --git a/tests/test_contributing_text.py b/tests/test_contributing_text.py
index bf00749aa..66ced6b53 100644
--- a/tests/test_contributing_text.py
+++ b/tests/test_contributing_text.py
@@ -97,6 +97,17 @@ class BeforeOpeningAPullRequest(unittest.TestCase):
with self.subTest(package=package):
self.assertRegex(pip_line, rf"\b{package}\b")
+ def test_a_file_too_large_for_git_has_a_route(self):
+ """The guide sent any file over 25 MB through a clone, which GitHub
+ refuses past 100 MB, and only a maintainer can write to the release."""
+ import validate_pr
+
+ text = generate_readme.generate_contributing()
+ section = text.split("## What happens next", 1)[1].split("\n## ", 1)[0]
+ self.assertEqual(validate_pr.MAX_FILE_SIZE, 100 * 1024 * 1024)
+ self.assertIn("100 MB", section)
+ self.assertIn(f"]({validate_pr.LARGE_FILE_ISSUE_URL})", section)
+
def test_it_installs_what_the_checks_need_and_no_site_package(self):
"""The site is built by Node from website/package-lock.json: a pip
line naming the old theme installed packages nothing reads."""
From a06f5ad2ba865ea1502d4814e224532cd0a32629 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:20:50 +0100
Subject: [PATCH 09/34] fix: fetch the project main an upstream lacks
A remote named upstream added as CONTRIBUTING said and never fetched made validate_pr --changed compare with the fork's main and exit 0 on nothing. It now fetches the project's main when the remote does not hold it. profile_sync names the fetch when --base is absent, and CONTRIBUTING adds git fetch upstream.
---
CONTRIBUTING.md | 5 +++--
scripts/generate_readme.py | 5 +++--
scripts/profile_sync.py | 4 ++++
scripts/validate_pr.py | 21 ++++++++++-------
tests/test_profile_sync.py | 7 ++++++
tests/test_validate_pr_flow.py | 41 ++++++++++++++++++++++++++++++++++
6 files changed, 71 insertions(+), 12 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 924244569..8c1253272 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -80,8 +80,9 @@ vermin --no-tips -t=3.8- --violations install.py # install.py stays on P
```
`upstream` is this repository as a remote of your fork
-(`git remote add upstream https://github.com/Abdess/retrobios`). A profile you
-only edit is not held to `--strict`: its older refs are reviewed by hand.
+(`git remote add upstream https://github.com/Abdess/retrobios`, then
+`git fetch upstream`). A profile you only edit is not held to `--strict`: its
+older refs are reviewed by hand.
The full pipeline is not needed for a contribution: it rebuilds every pack
in `dist/`, which is why maintainers run it before a release.
diff --git a/scripts/generate_readme.py b/scripts/generate_readme.py
index 01e3ac47d..6e1a30e62 100644
--- a/scripts/generate_readme.py
+++ b/scripts/generate_readme.py
@@ -986,8 +986,9 @@ vermin --no-tips -t=3.8- --violations install.py # install.py stays on P
```
`upstream` is this repository as a remote of your fork
-(`git remote add upstream https://github.com/Abdess/retrobios`). A profile you
-only edit is not held to `--strict`: its older refs are reviewed by hand.
+(`git remote add upstream https://github.com/Abdess/retrobios`, then
+`git fetch upstream`). A profile you only edit is not held to `--strict`: its
+older refs are reviewed by hand.
The full pipeline is not needed for a contribution: it rebuilds every pack
in `dist/`, which is why maintainers run it before a release.
diff --git a/scripts/profile_sync.py b/scripts/profile_sync.py
index 3245ab3b0..ddde60eb1 100644
--- a/scripts/profile_sync.py
+++ b/scripts/profile_sync.py
@@ -4355,6 +4355,10 @@ def branch_profiles(emulators_dir: str, base: str, added_only: bool) -> list[str
branch point are not counted, and ends at the working tree, so a
profile not yet committed is checked too. A rename reads as an addition.
"""
+ if subprocess.run(["git", "rev-parse", "--verify", "--quiet", base],
+ capture_output=True, check=False).returncode:
+ remote = base.split("/", 1)[0] if "/" in base else "upstream"
+ raise SystemExit(f"ERROR: {base} is not in this clone: run git fetch {remote} first")
merge_base = _git_lines(["merge-base", base, "HEAD"])[0]
paths = _git_lines([
"diff", "--name-only", "--no-renames",
diff --git a/scripts/validate_pr.py b/scripts/validate_pr.py
index 9d99637df..a7f3a0fc0 100644
--- a/scripts/validate_pr.py
+++ b/scripts/validate_pr.py
@@ -558,30 +558,35 @@ def _repo_key(url: str) -> str:
def _project_main_line() -> str | None:
- """The project's main line, fetched when no remote of this clone names it.
+ """The project's main line, fetched when this clone does not hold it.
A fork's clone has origin alone. Once the commit is pushed to the fork's
main, origin/main is HEAD and the diff against it was empty, so --changed
- found nothing and exited 0. None leaves the upstream/ and origin/ lines
- in charge: a remote of that name names the project, or the clone has no
- remote at all and only its uncommitted files can be read.
+ found nothing and exited 0. A remote added as CONTRIBUTING says and never
+ fetched did the same: upstream/main did not exist and origin/main won.
+ None leaves the upstream/ and origin/ lines in charge when the clone has
+ no remote at all and only its uncommitted files can be read.
"""
remotes = _git_lines("remote") or []
if not remotes:
return None
project = {_repo_key(url) for url in PROJECT_URLS}
+ source = PROJECT_URLS[0]
for remote in remotes:
urls = _git_lines("remote", "get-url", "--all", remote) or []
if any(_repo_key(url) in project for url in urls):
- return None if remote in ("upstream", "origin") else f"{remote}/main"
+ if _git_lines("rev-parse", "--verify", "--quiet", f"{remote}/main"):
+ return f"{remote}/main"
+ source = remote
+ break
fetched = subprocess.run(
- ["git", "fetch", "--quiet", "--no-tags", PROJECT_URLS[0], "main"],
+ ["git", "fetch", "--quiet", "--no-tags", source, "main"],
capture_output=True, text=True, check=False,
)
if fetched.returncode != 0:
raise RuntimeError(
- f"no remote of this clone is {PROJECT_URLS[0]}, and fetching its "
- f"main failed: {fetched.stderr.strip()}"
+ f"this clone does not hold the main of {PROJECT_URLS[0]}, and "
+ f"fetching it from {source} failed: {fetched.stderr.strip()}"
)
return "FETCH_HEAD"
diff --git a/tests/test_profile_sync.py b/tests/test_profile_sync.py
index 0fef264af..b8998e541 100644
--- a/tests/test_profile_sync.py
+++ b/tests/test_profile_sync.py
@@ -5918,6 +5918,13 @@ class TestBranchProfiles(unittest.TestCase):
["draft", "new"],
)
+ def test_an_unfetched_base_says_to_fetch(self):
+ """`--base upstream/main` with upstream added and never fetched
+ stopped on git's "Not a valid object name" and no next step."""
+ with self.assertRaises(SystemExit) as raised:
+ profile_sync.branch_profiles("emulators", "upstream/main", added_only=True)
+ self.assertIn("git fetch upstream", str(raised.exception))
+
def test_the_flag_selects_those_profiles(self):
args = profile_sync.build_parser().parse_args(["--changed", "--base", "main"])
profiles = {"kept": {}, "edited": {}, "new": {}, "draft": {}}
diff --git a/tests/test_validate_pr_flow.py b/tests/test_validate_pr_flow.py
index e5930f573..0cb7a8667 100644
--- a/tests/test_validate_pr_flow.py
+++ b/tests/test_validate_pr_flow.py
@@ -13,6 +13,7 @@ import subprocess
import sys
import tempfile
import unittest
+from unittest import mock
from pathlib import Path
import yaml
@@ -146,5 +147,45 @@ class RunFromAnyDirectory(unittest.TestCase):
self.assertIn("Already in the database at this path", messages)
+class AnUnfetchedUpstreamIsFetched(unittest.TestCase):
+ """CONTRIBUTING has the project added as `upstream` with no fetch. The
+ remote named the project, so nothing was fetched, upstream/main did not
+ exist, origin/main was the pushed branch, and --changed found nothing."""
+
+ def _git(self, cwd: Path, *args: str) -> None:
+ subprocess.run(["git", *args], cwd=cwd, check=True, capture_output=True, text=True)
+
+ def test_the_branch_file_is_found(self):
+ with tempfile.TemporaryDirectory(dir=REPO_ROOT / "tmp") as tmp:
+ root = Path(tmp)
+ project = root / "Abdess" / "retrobios.git"
+ fork = root / "fork.git"
+ clone = root / "clone"
+ for bare in (project, fork):
+ bare.mkdir(parents=True)
+ self._git(bare, "init", "-q", "--bare", "-b", "main")
+ clone.mkdir()
+ self._git(clone, "init", "-q", "-b", "main")
+ self._git(clone, "-c", "user.name=t", "-c", "user.email=t@t", "commit", "-q",
+ "--allow-empty", "-m", "base")
+ self._git(clone, "push", "-q", str(project), "main")
+ (clone / "bios").mkdir()
+ (clone / "bios" / "new.bin").write_bytes(b"x")
+ self._git(clone, "add", "bios/new.bin")
+ self._git(clone, "-c", "user.name=t", "-c", "user.email=t@t", "commit", "-q",
+ "-m", "add")
+ self._git(clone, "remote", "add", "origin", str(fork))
+ self._git(clone, "push", "-q", "origin", "main")
+ self._git(clone, "fetch", "-q", "origin")
+ self._git(clone, "remote", "add", "upstream", str(project))
+ cwd = os.getcwd()
+ os.chdir(clone)
+ try:
+ with mock.patch.object(validate_pr, "PROJECT_URLS", (str(project),)):
+ self.assertEqual(validate_pr.get_changed_files(), ["bios/new.bin"])
+ finally:
+ os.chdir(cwd)
+
+
if __name__ == "__main__":
unittest.main()
From eaa7effa745390295d64cd1ed6feacadf01895e3 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:22:55 +0100
Subject: [PATCH 10/34] fix: mark held and unknown PR files for review
validate_pr said all checks passed for random bytes and for a copy of a held file, and sent the copy to the folder that already holds it. Each now reads REVIEW with its next step, the status line counts them, and a held copy gets no placement hint. A copy inside a tree kept out of dedup is still accepted.
---
scripts/validate_pr.py | 40 +++++++++++++++++++++++-----
tests/test_validate_pr.py | 55 +++++++++++++++++++++++++++++++++------
2 files changed, 81 insertions(+), 14 deletions(-)
diff --git a/scripts/validate_pr.py b/scripts/validate_pr.py
index a7f3a0fc0..c1a702816 100644
--- a/scripts/validate_pr.py
+++ b/scripts/validate_pr.py
@@ -36,6 +36,7 @@ from common import (
)
from hashing import parse_hash_list
from nativemode import digest_algorithm
+from dedup import _in_nodedup_dir
from validation import frontend_digest_matches, inner_rom_check
try:
@@ -79,6 +80,10 @@ class ValidationResult:
self.md5 = ""
self.crc32 = ""
self.size = 0
+ # "held" (a copy of a file the collection has) or "unknown" (no list
+ # or profile declares it): no check fails, and neither is a file
+ # the pull request adds to the collection.
+ self.outcome = ""
def add_check(self, passed: bool, message: str) -> None:
self.checks.append(("PASS" if passed else "FAIL", message))
@@ -93,8 +98,12 @@ class ValidationResult:
def passed(self) -> bool:
return all(s != "FAIL" for s, _ in self.checks)
+ @property
+ def status(self) -> str:
+ return "FAIL" if not self.passed else "REVIEW" if self.outcome else "PASS"
+
def to_markdown(self) -> str:
- status = "PASS" if self.passed else "FAIL"
+ status = self.status
lines = [f"### {status} `{self.filename}`"]
lines.append("")
lines.append(f"- **Path**: `{self.filepath}`")
@@ -374,9 +383,15 @@ def validate_file(
# PR that regenerated database.json was told each new file
# duplicated itself.
result.add_check(True, "Already in the database at this path")
+ elif _in_nodedup_dir(relative):
+ result.add_info(
+ f"Identical to `{existing['path']}`, kept: this tree is read by path"
+ )
else:
+ result.outcome = "held"
result.add_warning(
- f"Duplicate: identical file already exists at `{existing['path']}`"
+ f"Already held at `{existing['path']}`: nothing to add, "
+ "leave this copy out of the pull request"
)
else:
result.add_check(True, "Not a duplicate in database")
@@ -421,8 +436,11 @@ def validate_file(
"Filename matches a known requirement but hash differs - may be a variant"
)
else:
+ result.outcome = "unknown"
result.add_warning(
- "File not referenced in any platform config - needs manual review"
+ "Not recognised: no platform list or emulator profile declares this "
+ "file. Say in the pull request which emulator reads it, for which "
+ "system, and where the dump comes from"
)
normalized = os.path.normpath(relative)
@@ -452,6 +470,8 @@ def validate_file(
result.add_check(True, f"Correct placement: bios/{parts[1]}/{parts[2]}/")
else:
result.add_warning("File should be in bios/Manufacturer/Console/ structure")
+ elif result.outcome == "held":
+ pass
elif expected_folders:
# The contributor asks before forking: say where it goes.
result.add_warning(
@@ -750,6 +770,7 @@ def main() -> None:
{
"file": r.filepath,
"passed": r.passed,
+ "outcome": r.outcome or "new",
"sha1": r.sha1,
"md5": r.md5,
"size": r.size,
@@ -759,7 +780,15 @@ def main() -> None:
print(json.dumps(output, indent=2))
elif args.markdown:
lines = ["## BIOS Validation Report", ""]
- status = "all checks passed" if all_passed else "some checks failed"
+ held = sum(r.outcome == "held" for r in results)
+ unknown = sum(r.outcome == "unknown" for r in results)
+ review = ", ".join(part for part in (
+ f"{held} already held" if held else "",
+ f"{unknown} not recognised" if unknown else "",
+ ) if part)
+ status = ("some checks failed" if not all_passed
+ else f"no check failed, to review: {review}" if review
+ else "all checks passed")
lines.append(f"**Status**: {status}")
lines.append("")
@@ -770,8 +799,7 @@ def main() -> None:
print("\n".join(lines))
else:
for r in results:
- status = "PASS" if r.passed else "FAIL"
- print(f"\n[{status}] {r.filepath}")
+ print(f"\n[{r.status}] {r.filepath}")
if r.sha1:
print(f" SHA1: {r.sha1}")
print(f" MD5: {r.md5}")
diff --git a/tests/test_validate_pr.py b/tests/test_validate_pr.py
index 93575737d..04b7a78fa 100644
--- a/tests/test_validate_pr.py
+++ b/tests/test_validate_pr.py
@@ -243,20 +243,38 @@ class HashRecognition(_Fixture):
self.assertIn(".variants/known.bin.", markdown)
def test_an_unreferenced_file_asks_for_review(self):
+ """Random bytes read "PASS" and "all checks passed", and the warning
+ named the platform configs alone though the profiles were searched."""
rel = self._bios_file("bios/Sony/PS/mystery.bin")
- markdown = validate_pr.validate_file(rel, None, EMPTY_HASHES).to_markdown()
- self.assertIn("needs manual review", markdown)
+ result = validate_pr.validate_file(rel, None, EMPTY_HASHES)
+ markdown = result.to_markdown()
+ self.assertEqual(result.outcome, "unknown")
+ self.assertIn("### REVIEW", markdown)
+ self.assertIn("no platform list or emulator profile declares this file", markdown)
+ self.assertIn("which emulator reads it", markdown)
def test_a_duplicate_of_a_known_file_is_reported(self):
- rel = self._bios_file("bios/Sony/PS/dupe.bin")
+ """A copy of a held file passed, and was sent to the folder that
+ already holds it."""
+ rel = self._bios_file("elsewhere/dupe.bin")
probe = validate_pr.validate_file(rel, None, EMPTY_HASHES)
db = {"files": {probe.sha1: {"path": "bios/Sony/PS/original.bin"}}}
- markdown = validate_pr.validate_file(rel, db, EMPTY_HASHES).to_markdown()
- self.assertIn("Duplicate", markdown)
- self.assertIn("original.bin", markdown)
+ known = {**EMPTY_HASHES, "sha1": {probe.sha1},
+ "folders": {probe.sha1: {"bios/Sony/PS/"}}}
+ result = validate_pr.validate_file(rel, db, known)
+ markdown = result.to_markdown()
+ self.assertEqual(result.outcome, "held")
+ self.assertIn("### REVIEW", markdown)
+ self.assertIn("Already held at `bios/Sony/PS/original.bin`: nothing to add", markdown)
+ self.assertNotIn("not under bios/", markdown)
# A duplicate is worth saying out loud but must not block the PR.
- self.assertTrue(validate_pr.validate_file(rel, db, EMPTY_HASHES).passed)
+ self.assertTrue(result.passed)
+ def test_a_copy_in_a_tree_read_by_path_is_kept(self):
+ rel = self._bios_file("bios/ScummVM/a/dupe.bin")
+ probe = validate_pr.validate_file(rel, None, EMPTY_HASHES)
+ db = {"files": {probe.sha1: {"path": "bios/ScummVM/b/dupe.bin"}}}
+ self.assertNotEqual(validate_pr.validate_file(rel, db, EMPTY_HASHES).outcome, "held")
def test_the_file_the_database_holds_is_not_its_own_duplicate(self):
"""The documented example on a tracked file warned "Duplicate:
@@ -334,7 +352,8 @@ class Placement(_Fixture):
class Reporting(_Fixture):
def test_markdown_carries_every_digest_and_the_verdict(self):
rel = self._bios_file("bios/Sega/Saturn/sega.bin")
- result = validate_pr.validate_file(rel, None, EMPTY_HASHES)
+ probe = validate_pr.validate_file(rel, None, EMPTY_HASHES)
+ result = validate_pr.validate_file(rel, None, {**EMPTY_HASHES, "sha1": {probe.sha1}})
markdown = result.to_markdown()
for value in (result.sha1, result.md5, result.crc32):
self.assertIn(value, markdown)
@@ -344,6 +363,26 @@ class Reporting(_Fixture):
rel = self._bios_file("bios/Sega/Saturn/bad.exe")
self.assertIn("### FAIL", validate_pr.validate_file(rel, None, EMPTY_HASHES).to_markdown())
+ @unittest.skipUnless((REPO_ROOT / "database.json").is_file(), "database.json is not built")
+ def test_the_status_line_names_what_is_left_to_review(self):
+ import shutil
+ import subprocess
+
+ held = REPO_ROOT / "bios" / "Sony" / "PlayStation Portable" / "ppge_atlas.zim"
+ if not held.is_file():
+ self.skipTest(f"{held} is not here")
+ shutil.copy(held, self.tmp / "ppge_atlas.zim")
+ (self.tmp / "mystery.bin").write_bytes(os.urandom(4096))
+ proc = subprocess.run(
+ [sys.executable, str(REPO_ROOT / "scripts" / "validate_pr.py"), "--markdown",
+ str(self.tmp / "mystery.bin"), str(self.tmp / "ppge_atlas.zim")],
+ capture_output=True, text=True, timeout=300, check=False,
+ )
+ self.assertEqual(proc.returncode, 0, proc.stderr)
+ self.assertIn("**Status**: no check failed, to review: 1 already held, "
+ "1 not recognised", proc.stdout)
+ self.assertNotIn("all checks passed", proc.stdout)
+
class PlatformHashLoading(_Fixture):
def test_missing_directory_yields_empty_sets(self):
From f24b34c1ef2ba8bfa9ed5c2ad7c867d1ef4debca Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:25:47 +0100
Subject: [PATCH 11/34] feat: place recognised files with validate_pr
The report named the folder of each file and left the copy to the contributor, one file and one .variants/ name at a time. --place copies each recognised file from outside bios/ to its folder under the name the lists declare, or to the .variants/ slot of a name already held, never over a file. A hash with two names or two folders is not placed.
---
CONTRIBUTING.md | 11 ++++---
scripts/generate_readme.py | 11 ++++---
scripts/validate_pr.py | 63 ++++++++++++++++++++++++++++++++++++--
tests/test_validate_pr.py | 21 +++++++++++--
wiki/tools.md | 2 +-
5 files changed, 92 insertions(+), 16 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 8c1253272..ae2c25459 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -24,11 +24,12 @@ the most useful contribution.
From a clone, the file goes to `bios/Manufacturer/Console/filename`, and
`python scripts/validate_pr.py path/to/file` names that folder for a file still
-outside `bios/`. Given a folder, such as an old card's BIOS folder, it checks
-every file under it. A file over the browser's 25 MB limit goes in that way,
-up to the 100 MB GitHub accepts in a push. A larger file stays out of the pull
-request: [open an issue](https://github.com/Abdess/retrobios/issues/new?template=missing-bios.yml) with the hashes
-`validate_pr.py` prints, and a maintainer adds it to the `large-files` release.
+outside `bios/`, and `--place` copies it there under its declared name. Given a
+folder, such as an old card's BIOS folder, it checks every file under it. A
+file over the browser's 25 MB limit goes in that way, up to the 100 MB GitHub
+accepts in a push. A larger file stays out of the pull request: [open an
+issue](https://github.com/Abdess/retrobios/issues/new?template=missing-bios.yml) with the hashes `validate_pr.py` prints, and a
+maintainer adds it to the `large-files` release.
## Add a platform
diff --git a/scripts/generate_readme.py b/scripts/generate_readme.py
index 6e1a30e62..006aab519 100644
--- a/scripts/generate_readme.py
+++ b/scripts/generate_readme.py
@@ -930,11 +930,12 @@ the most useful contribution.
From a clone, the file goes to `bios/Manufacturer/Console/filename`, and
`python scripts/validate_pr.py path/to/file` names that folder for a file still
-outside `bios/`. Given a folder, such as an old card's BIOS folder, it checks
-every file under it. A file over the browser's 25 MB limit goes in that way,
-up to the 100 MB GitHub accepts in a push. A larger file stays out of the pull
-request: [open an issue]({LARGE_FILE_ISSUE_URL}) with the hashes
-`validate_pr.py` prints, and a maintainer adds it to the `large-files` release.
+outside `bios/`, and `--place` copies it there under its declared name. Given a
+folder, such as an old card's BIOS folder, it checks every file under it. A
+file over the browser's 25 MB limit goes in that way, up to the 100 MB GitHub
+accepts in a push. A larger file stays out of the pull request: [open an
+issue]({LARGE_FILE_ISSUE_URL}) with the hashes `validate_pr.py` prints, and a
+maintainer adds it to the `large-files` release.
## Add a platform
diff --git a/scripts/validate_pr.py b/scripts/validate_pr.py
index c1a702816..f44aff8b4 100644
--- a/scripts/validate_pr.py
+++ b/scripts/validate_pr.py
@@ -21,6 +21,7 @@ import argparse
import json
import os
import re
+import shutil
import subprocess
import sys
from pathlib import Path
@@ -84,6 +85,9 @@ class ValidationResult:
# or profile declares it): no check fails, and neither is a file
# the pull request adds to the collection.
self.outcome = ""
+ # Where --place copies the file: one folder and one declared name, or
+ # the .variants/ slot of a name the collection already holds.
+ self.destination = ""
def add_check(self, passed: bool, message: str) -> None:
self.checks.append(("PASS" if passed else "FAIL", message))
@@ -156,7 +160,7 @@ def load_platform_hashes(platforms_dir: str, db: dict | None = None) -> dict:
under, read from the other files of that system it holds.
"""
known = {"sha1": set(), "md5": set(), "sha256": set(), "crc32": set(),
- "names": set(), "folders": {}, "sizes": {}, "entries": {}}
+ "names": set(), "folders": {}, "sizes": {}, "entries": {}, "named": {}}
systems_of: dict[str, set[str]] = {}
folders_of: dict[str, dict[str, int]] = {}
files = (db or {}).get("files", {})
@@ -203,6 +207,9 @@ def load_platform_hashes(platforms_dir: str, db: dict | None = None) -> dict:
)
for value in (*sha1s, *md5s):
systems_of.setdefault(value, set()).add(system_id)
+ for value in (*sha1s, *md5s, *sha256s):
+ if "name" in file_entry:
+ known["named"].setdefault(value, set()).add(file_entry["name"])
_note_folder(folders_of, system_id, files, by_md5, sha1s, md5s)
known["folders"] = _system_homes(systems_of, folders_of)
@@ -260,6 +267,7 @@ def load_profile_hashes(
"""
known: dict[str, dict] = {
"sha1": {}, "sha256": {}, "md5": {}, "crc32": {}, "sizes": {}, "folders": {},
+ "named": {},
}
systems_of: dict[str, set[str]] = {}
folders_of: dict[str, dict[str, int]] = {}
@@ -283,6 +291,8 @@ def load_profile_hashes(
for algo, values in hashes.items():
for value in values:
known[algo].setdefault(value, set()).add(emulator)
+ if isinstance(entry.get("name"), str):
+ known["named"].setdefault(value, set()).add(entry["name"])
# The entry's own system, or the profile's when it emulates one.
system = entry.get("system") or (
declared_systems[0] if len(declared_systems) == 1 else None
@@ -474,9 +484,23 @@ def validate_file(
pass
elif expected_folders:
# The contributor asks before forking: say where it goes.
+ names = {
+ name
+ for table in (platform_hashes, profile_hashes)
+ for value in (result.sha1, result.md5, hashes.get("sha256", ""))
+ for name in table.get("named", {}).get(value, ())
+ }
+ name = next(iter(names)) if len(names) == 1 else ""
+ if len(expected_folders) == 1 and name and "/" not in name:
+ folder = expected_folders[0]
+ result.destination = (
+ f"{folder}.variants/{name}.{result.sha1[:8]}"
+ if os.path.exists(folder + name) else folder + name
+ )
result.add_warning(
"File is not under bios/ yet. Its system's files are in "
+ " or ".join(f"`{f}`" for f in expected_folders)
+ + (f". --place copies it to `{result.destination}`" if result.destination else "")
)
elif _variant_home(db, result.filename, result.sha1):
result.add_warning(
@@ -505,9 +529,11 @@ def validate_file(
if (name_known and not (sha1_known or md5_known or other_known or accepted_by)
and not by_profile and size_fits):
home = _variant_home(db, result.filename)
+ slot = f"{home}.variants/{result.filename}.{result.sha1[:8]}"
+ if home and not normalized.startswith("bios" + os.sep):
+ result.destination = slot
result.add_info(
- "This may be a valid variant. If accepted, it will be placed in "
- f"`{home}.variants/{result.filename}.{result.sha1[:8]}`"
+ f"This may be a valid variant. If accepted, it will be placed in `{slot}`"
)
return result
@@ -700,6 +726,28 @@ def _files_to_validate(
return files
+def place(results: list[ValidationResult]) -> list[str]:
+ """Copy each placeable file to its destination, never over a file.
+
+ The report named the folder of each file and left 40 copies from a card
+ to be made by hand, each .variants/ name retyped. The source is copied,
+ not moved: it is often a card or another tree the contributor keeps.
+ """
+ placed = []
+ for r in results:
+ if not (r.passed and r.destination and not r.outcome):
+ continue
+ target = Path(r.destination)
+ if target.exists():
+ print(f"not placed: {target} exists", file=sys.stderr)
+ continue
+ target.parent.mkdir(parents=True, exist_ok=True)
+ shutil.copy2(r.filepath, target)
+ placed.append(r.destination)
+ print(f"placed {r.filepath} at {r.destination}", file=sys.stderr)
+ return placed
+
+
def _load_database_if_any(path: str) -> dict | None:
"""The database, optional only where the default is meant.
@@ -734,6 +782,11 @@ def main() -> None:
"--markdown", action="store_true", help="Output as markdown (for PR comments)"
)
output.add_argument("--json", action="store_true", help="Output as JSON")
+ parser.add_argument(
+ "--place", action="store_true",
+ help="copy each recognised file from outside bios/ to the folder and name "
+ "the report gives, or to .variants/ beside the name it varies",
+ )
args = parser.parse_args()
# The database, platforms and profiles are read from the repository
@@ -771,6 +824,7 @@ def main() -> None:
"file": r.filepath,
"passed": r.passed,
"outcome": r.outcome or "new",
+ "destination": r.destination,
"sha1": r.sha1,
"md5": r.md5,
"size": r.size,
@@ -816,6 +870,9 @@ def main() -> None:
)
print(f" [{marker}] {m}")
+ if args.place:
+ place(results)
+
if not all_passed:
sys.exit(1)
diff --git a/tests/test_validate_pr.py b/tests/test_validate_pr.py
index 04b7a78fa..642420795 100644
--- a/tests/test_validate_pr.py
+++ b/tests/test_validate_pr.py
@@ -139,9 +139,25 @@ class AFileOnlyACoreReadsIsKnown(_Fixture):
)
self.assertIn(
("WARN", "File is not under bios/ yet. Its system's files are in "
- "`bios/Maker/Console/`"),
+ "`bios/Maker/Console/`. --place copies it to `bios/Maker/Console/b.bin`"),
result.checks,
)
+ self.assertEqual(result.destination, "bios/Maker/Console/b.bin")
+ # A file of that name already there: the copy is a variant.
+ self._bios_file("bios/Maker/Console/b.bin", b"another")
+ self.assertEqual(
+ validate_pr.validate_file("Downloads/b.bin", db, EMPTY_HASHES, known).destination,
+ f"bios/Maker/Console/.variants/b.bin.{result.sha1[:8]}",
+ )
+ # Copied under the declared name, never over a file, and only once.
+ card = self._bios_file("card/B.BIN", missing)
+ named = validate_pr.validate_file(card, db, EMPTY_HASHES, known)
+ self.assertEqual(validate_pr.place([named]), [named.destination])
+ self.assertEqual((self.tmp / named.destination).read_bytes(), missing)
+ self.assertTrue((self.tmp / card).is_file())
+ self.assertEqual(validate_pr.place([named]), [])
+ unknown = validate_pr.validate_file(self._bios_file("card/x.bin"), db, EMPTY_HASHES, known)
+ self.assertEqual((unknown.outcome, unknown.destination), ("unknown", ""))
placed = validate_pr.validate_file(
self._bios_file("bios/Other/Place/b.bin", missing), db, EMPTY_HASHES, known,
)
@@ -388,7 +404,8 @@ class PlatformHashLoading(_Fixture):
def test_missing_directory_yields_empty_sets(self):
known = validate_pr.load_platform_hashes(str(self.tmp / "absent"))
self.assertEqual(known, {"sha1": set(), "md5": set(), "sha256": set(), "crc32": set(),
- "names": set(), "folders": {}, "sizes": {}, "entries": {}})
+ "names": set(), "folders": {}, "sizes": {}, "entries": {},
+ "named": {}})
def test_declared_hashes_and_names_are_collected(self):
platforms = self.tmp / "platforms"
diff --git a/wiki/tools.md b/wiki/tools.md
index d691b8917..16173cd99 100644
--- a/wiki/tools.md
+++ b/wiki/tools.md
@@ -1364,7 +1364,7 @@ Further options, by script:
| `romset_recipes.py` | `--dat-recipes PATH`, a snapshot or a directory of them (default `recipes/`) |
| `split_pack.py` | `--max-size 1900M`, the ceiling per part (K, M, G, default 2G) |
| `torrentzip.py` | `--check ZIP` reports conformance, `--rebuild ZIP -o OUT` normalizes an archive |
-| `validate_pr.py` | `--changed` takes the BIOS files the branch changes, a folder named checks every file under it, `--markdown`, `--json` |
+| `validate_pr.py` | `--changed` takes the BIOS files the branch changes, a folder named checks every file under it, `--place` copies each recognised file from outside `bios/` to its folder and declared name (or its `.variants/` slot), `--markdown`, `--json` |
| `validate_site.py` | `--site-dir` (rendered site, default `website/dist`), `--base` (path the site is served under), `--max-errors N` |
| `scraper/coreinfo_scraper.py` | `--compare-db database.json` lists the `.info` firmware the database lacks |
| `scraper/mame_hash_scraper.py` | `--release mameNNNN --profile FILE --source-commit SHA --core NAME --built-by PLATFORM` writes the profile of a MAME build a platform compiles. `--devices --listxml FILE` documents in `mame.yml` every device set with dumped ROMs that the release's `-listxml` names (`isdevice="yes"`), with `--dry-run` to preview |
From 1b388e3cdc3cccab27eecc56d3a27269b0230c1d Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:29:02 +0100
Subject: [PATCH 12/34] fix: credit a core the archive it reads members in
FBNeo reads sm1.sm1 inside neogeo.zip. The site resolved each member entry by its crc32, credited loose copies FBNeo never opens, and no neogeo.zip card named FBNeo. A member entry now resolves through archive_entry as the pack does, and its card names the archive.
---
scripts/cross_reference.py | 22 ++++++++++++++++------
scripts/generate_site.py | 7 +++++--
tests/test_site_render.py | 30 ++++++++++++++++++++++++++++++
3 files changed, 51 insertions(+), 8 deletions(-)
diff --git a/scripts/cross_reference.py b/scripts/cross_reference.py
index 09b889989..19405123f 100644
--- a/scripts/cross_reference.py
+++ b/scripts/cross_reference.py
@@ -27,6 +27,7 @@ from common import (
platform_arg,
ProfileSelectionError,
_norm_system_id,
+ archive_entry,
directory_members,
expand_directory_entries,
get_mame_clone_map,
@@ -545,6 +546,20 @@ class FileConsumers:
if member is not entry
}
+ @staticmethod
+ def entry_target(entry: dict, files: list[dict]) -> tuple[dict, str]:
+ """The entry a profile entry resolves through, and its destination.
+
+ A ROM read inside an archive is the archive: FBNeo opens sm1.sm1 in
+ neogeo.zip, and resolved by its crc32 it credited a loose copy FBNeo
+ never opens, while no neogeo.zip card named FBNeo. The archive
+ members the profile reads decide between same-named copies, as in
+ the emulator pack and verify.
+ """
+ if entry.get("archive"):
+ return archive_entry(entry["archive"], files), ""
+ return with_archive_members(entry, files), entry.get("path") or ""
+
def add_emulators(self, profiles: dict[str, dict]) -> None:
"""Each file a profile entry resolves to, a directory's members included.
@@ -573,12 +588,7 @@ class FileConsumers:
for dest, sha1 in members.items()
]
else:
- # The archive members the profile reads decide between
- # same-named copies, as in the emulator pack and verify.
- found = [self.sha1_of(
- with_archive_members(entry, files), entry.get("path") or "",
- owner=name,
- )]
+ found = [self.sha1_of(*self.entry_target(entry, files), owner=name)]
for sha1 in found:
if sha1:
self.emulators.setdefault(sha1, set()).add(name)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index c5206c4f0..f2a47ed66 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -8182,10 +8182,13 @@ def _render_emulator_file(
if consumers and f.get("type") == "directory":
details.extend(_directory_copies(f, consumers))
if consumers:
- sha1 = consumers.sha1_of(f, f.get("path") or "", owner=owner)
+ sha1 = consumers.sha1_of(
+ *consumers.entry_target(f, profile.get("files") or []), owner=owner)
held = consumers.path_of(sha1) if sha1 and in_repo else ""
parts = held.split("/")
- if len(parts) >= 3 and parts[0] == "bios":
+ if len(parts) >= 3 and parts[0] == "bios" and f.get("archive"):
+ details.append(_held_copy_line((held, f["name"]), consumers))
+ elif len(parts) >= 3 and parts[0] == "bios":
# Which copy answers this entry, linked to its collection card
# (provenance, every hash, download): an entry declaring no hash
# said "in repo" without naming the file.
diff --git a/tests/test_site_render.py b/tests/test_site_render.py
index 0236dc2bd..e943dffde 100644
--- a/tests/test_site_render.py
+++ b/tests/test_site_render.py
@@ -454,3 +454,33 @@ class OneDefinitionPerName(unittest.TestCase):
self.assertNotIn(name, seen, f"{path.name}:{node.lineno} binds {name} "
f"again, first at line {seen.get(name)}")
seen[name] = node.lineno
+
+
+@unittest.skipUnless((REPO_ROOT / "database.json").is_file(), "database.json is not built")
+class AMemberIsReadInItsArchive(unittest.TestCase):
+ """FBNeo reads sm1.sm1 inside neogeo.zip. Resolved by its crc32, the
+ entry credited a loose sm1.sm1 FBNeo never opens, and no neogeo.zip card
+ named FBNeo, while the pack ships it one."""
+
+ def test_the_archive_is_credited_and_named_on_the_card(self):
+ import json
+
+ import generate_site as gs
+ from common import archive_entry, resolve_local_file
+ from cross_reference import FileConsumers
+
+ db = json.loads((REPO_ROOT / "database.json").read_text(encoding="utf-8"))
+ profile = yaml.safe_load((REPO_ROOT / "emulators" / "fbneo.yml").read_text(encoding="utf-8"))
+ files = profile["files"]
+ consumers = FileConsumers(db)
+ consumers.add_emulators({"fbneo": profile})
+ credited = {consumers.path_of(sha1) for sha1 in consumers.emulators}
+ shipped, _status = resolve_local_file(
+ {**archive_entry("neogeo.zip", files), "source_profile": "fbneo"}, db)
+ self.assertIn(shipped, credited)
+ self.assertFalse([p for p in credited if p.endswith("/sm1.sm1")])
+ sm1 = next(f for f in files if f["name"] == "sm1.sm1")
+ rows = "\n".join(gs._render_emulator_file(sm1, profile, consumers, files,
+ lambda _f: True, owner="fbneo"))
+ self.assertIn("Collection copy: member `sm1.sm1` of", rows)
+ self.assertIn(shipped, rows)
From 4bc9074dfe34fdf7e72ef6ec9c4f4ccb0a03705b Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:29:22 +0100
Subject: [PATCH 13/34] feat: say why an upstream revision is held
The emulator page showed the reason for pin_frozen and never the one for upstream_frozen, which 11 profiles record: mupen64plus read as left behind HEAD.
---
scripts/generate_site.py | 12 ++++++++----
tests/test_site_emulator_page.py | 11 +++++++++++
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index f2a47ed66..3c7a3d6f4 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -7984,10 +7984,14 @@ def _build_rows(profile: dict) -> list[str]:
found = _found_by_text(profile.get("found_by"))
if found:
rows.append(f"| Files found by | {found} |")
- frozen = profile.get("pin_frozen")
- if frozen:
- held = _escape_tags(' '.join(str(frozen).split())).replace('|', r'\|')
- rows.append(f"| Revision held | {held} |")
+ # Each pin says why it is held: a bare upstream revision read as a
+ # profile left behind HEAD (mupen64plus, aps3e).
+ for field, label in (("pin_frozen", "Revision held"),
+ ("upstream_frozen", "Upstream revision held")):
+ frozen = profile.get(field)
+ if frozen:
+ held = _escape_tags(' '.join(str(frozen).split())).replace('|', r'\|')
+ rows.append(f"| {label} | {held} |")
announced = profile.get("version_source")
if isinstance(announced, dict) and announced.get("url"):
url = str(announced["url"])
diff --git a/tests/test_site_emulator_page.py b/tests/test_site_emulator_page.py
index ba592d3e3..382ec4d9f 100644
--- a/tests/test_site_emulator_page.py
+++ b/tests/test_site_emulator_page.py
@@ -68,6 +68,17 @@ class WhoShipsTheBuildAndWhy(unittest.TestCase):
"(https://example.org/news) (version 13.0 announced there, "
"found only as rebuilt copies) |", page)
+ def test_the_upstream_pin_says_why_it_is_held(self):
+ """mupen64plus showed its core revision and not that AmberELEC
+ builds that one: read as a profile behind HEAD."""
+ page = _page("mupen64plus", {
+ "type": "libretro",
+ "upstream_frozen": "AmberELEC builds the core at this revision.",
+ "files": [],
+ })
+ self.assertIn("| Upstream revision held | AmberELEC builds the core at this "
+ "revision. |", page)
+
class ACardKeepsItsAddress(unittest.TestCase):
"""emulators/raze/#file-duke3d-grp stopped pointing at its card once a
From e0f11ed1752f34eb990b7dd263168c0ec9542250 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:32:08 +0100
Subject: [PATCH 14/34] fix: deploy the site when validate_pr changes
CONTRIBUTING now reads the large file issue URL from validate_pr, which imports dedup: a change to either rewrites the contributing page.
---
.github/workflows/deploy-site.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/workflows/deploy-site.yml b/.github/workflows/deploy-site.yml
index 5353269cd..23c2a59a7 100644
--- a/.github/workflows/deploy-site.yml
+++ b/.github/workflows/deploy-site.yml
@@ -17,6 +17,7 @@ on:
- "scripts/cross_reference.py"
- "scripts/crypto_verify.py"
- "scripts/derivations.py"
+ - "scripts/dedup.py"
- "scripts/deterministic_zip.py"
- "scripts/dumpcatalog.py"
- "scripts/exporter/baseline.py"
@@ -61,6 +62,7 @@ on:
- "scripts/split_pack.py"
- "scripts/truth.py"
- "scripts/upstream.py"
+ - "scripts/validate_pr.py"
- "scripts/validate_schemas.py"
- "scripts/validate_site.py"
- "scripts/validation.py"
From 525c06419badbe45ec0ce83f4d68db212ac9f2b3 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:32:08 +0100
Subject: [PATCH 15/34] feat: link the version to the file or tag
The Version cell printed the file a version is read from, or its tag, as bare text beside a pinned Revision link. The file now links at the pin where the recorded tree holds it, and the tag links to its tree. cited_paths records the version files so the record can confirm them.
---
scripts/generate_site.py | 19 +-
scripts/sitesources.py | 35 +-
tests/test_site_emulator_page.py | 21 ++
website/src/data/source-paths.json | 509 +++++++++++++++++++++++++----
4 files changed, 510 insertions(+), 74 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index 3c7a3d6f4..f595f438b 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -8469,8 +8469,9 @@ def emulator_romset(profile: dict) -> str:
return ""
-def _version_said(value: object, basis: dict) -> str:
- """One build's version and where the profile reads it."""
+def _version_said(value: object, basis: dict, profile: dict, mode: str = "") -> str:
+ """One build's version and where the profile reads it, linked to the
+ file or the tag where the source allows."""
kind = basis.get("kind")
if kind == "none":
return "none stated in the source"
@@ -8479,13 +8480,18 @@ def _version_said(value: object, basis: dict) -> str:
return f"unknown: {_UNVERIFIED.get(str(basis.get('why')), 'unread')}"
return "none published"
value = str(value)
+ url = version_basis_url(profile, basis, mode) if kind in ("file", "tag") else ""
+
+ def shown(text: object) -> str:
+ return f"[{_code(str(text))}]({url})" if url else _code(str(text))
+
if kind == "file":
- return f"{value}, stated in `{basis.get('path')}`"
+ return f"{value}, stated in {shown(basis.get('path'))}"
if kind == "tag":
distance = int(basis.get("distance") or 0)
if not distance:
return f"{value}, the tag at this revision"
- return f"{value}, {distance} commit{'s' if distance != 1 else ''} after tag `{basis.get('tag')}`"
+ return f"{value}, {distance} commit{'s' if distance != 1 else ''} after tag {shown(basis.get('tag'))}"
if kind == "package":
return f"{value}, read from {basis.get('artifact')}"
if kind == "unverified":
@@ -8520,10 +8526,10 @@ def version_markdown(profile: dict) -> str:
values = value if isinstance(value, dict) else {}
modes = list(dict.fromkeys([*values, *basis]))
return ", ".join(
- f"{_version_said(values.get(mode), basis.get(mode) or {})} ({mode})"
+ f"{_version_said(values.get(mode), basis.get(mode) or {}, profile, mode)} ({mode})"
for mode in modes
)
- return _version_said(value, basis)
+ return _version_said(value, basis, profile)
ROMSET_FAQ_PAGE = Path(WIKI_SRC_DIR) / "technical-faq.md"
@@ -12463,6 +12469,7 @@ from sitesources import ( # noqa: E402,F401
_forge_sources,
_source_permalink,
_source_ref_markdown,
+ version_basis_url,
)
from siterender import ( # noqa: E402,F401
_by_mode,
diff --git a/scripts/sitesources.py b/scripts/sitesources.py
index 20844939b..faf307241 100644
--- a/scripts/sitesources.py
+++ b/scripts/sitesources.py
@@ -240,8 +240,15 @@ def _walk(value: object) -> Iterator[tuple[str, object]]:
def cited_paths(profile: dict) -> set[str]:
"""Every path a page of the profile could link: the parts of each
- source_ref and the file:line citations of its prose."""
- paths: set[str] = set()
+ source_ref, the file:line citations of its prose and the file its
+ version is read from."""
+ basis = profile.get("version_basis")
+ bases = ([basis] if isinstance(basis, dict) and "kind" in basis
+ else list(basis.values()) if isinstance(basis, dict) else [])
+ paths: set[str] = {
+ str(b["path"]) for b in bases
+ if isinstance(b, dict) and b.get("kind") == "file" and b.get("path")
+ }
for key, value in _walk(profile):
if key == "source_ref" and isinstance(value, (str, dict)):
for _label, refs in source_ref_values(value):
@@ -355,6 +362,30 @@ def _commit_url(repo: upstream.Repo, pin: str) -> str:
return f"{base}/commit/{pin}"
+def version_basis_url(profile: dict, basis: dict, mode: str = "") -> str:
+ """Where a reader checks a version: the file stating it at the pin, or
+ the tag it counts from. "" when neither can be linked.
+
+ The Version cell printed `libretro/handy.h` as bare text beside a
+ pinned Revision link, so the #define it reads was one search away.
+ """
+ field = "upstream" if basis.get("repo") == "upstream" else "source"
+ declared = next(iter(_repo_pins(profile, field, mode)), None)
+ repo = _browse_repo(declared[0]) if declared else None
+ if repo is None:
+ return ""
+ kind, path, tag = basis.get("kind"), str(basis.get("path") or ""), str(basis.get("tag") or "")
+ if kind == "file" and path:
+ pin = next((p for r, p in _forge_sources(profile, mode)
+ if (r.host, r.slug) == (repo.host, repo.slug)), "")
+ return _source_permalink(repo, pin, path, None, None) if pin and tree_holds(
+ repo, pin, path) else ""
+ if kind == "tag" and tag and repo.family in ("github", "gitlab"):
+ tree = "/-/tree/" if repo.family == "gitlab" else "/tree/"
+ return f"https://{repo.host}/{repo.owner}/{repo.name}{tree}{urllib.parse.quote(tag)}"
+ return ""
+
+
def revision_markdown(profile: dict) -> str:
"""Each repository the profile reads, linked at the commit it was read at.
diff --git a/tests/test_site_emulator_page.py b/tests/test_site_emulator_page.py
index 382ec4d9f..be1165ee1 100644
--- a/tests/test_site_emulator_page.py
+++ b/tests/test_site_emulator_page.py
@@ -68,6 +68,27 @@ class WhoShipsTheBuildAndWhy(unittest.TestCase):
"(https://example.org/news) (version 13.0 announced there, "
"found only as rebuilt copies) |", page)
+ def test_the_version_links_its_proof(self):
+ """`0.97, stated in libretro/handy.h` was bare text beside a pinned
+ Revision link: the #define it reads was one search away."""
+ import generate_site as gs
+ import sitesources
+ import yaml
+
+ handy = yaml.safe_load((REPO_ROOT / "emulators" / "handy.yml").read_text(encoding="utf-8"))
+ path = handy["version_basis"]["path"]
+ self.assertIn(path, sitesources.cited_paths(handy))
+ self.assertIn(f"stated in [`{path}`](https://github.com/libretro/libretro-handy/blob/"
+ f"{handy['source_commit']}/{path})", gs.version_markdown(handy))
+ tagged = {"source": "https://github.com/owner/emu", "source_commit": "a" * 40,
+ "core_version": "1.2-3-gaaaaaaa",
+ "version_basis": {"kind": "tag", "tag": "1.2", "distance": 3}}
+ self.assertEqual(gs.version_markdown(tagged), "1.2-3-gaaaaaaa, 3 commits after tag "
+ "[`1.2`](https://github.com/owner/emu/tree/1.2)")
+ # A file no recorded tree confirms stays plain: no link beats a 404.
+ unread = {**tagged, "version_basis": {"kind": "file", "path": "src/none.h"}}
+ self.assertEqual(gs.version_markdown(unread), "1.2-3-gaaaaaaa, stated in `src/none.h`")
+
def test_the_upstream_pin_says_why_it_is_held(self):
"""mupen64plus showed its core revision and not that AmberELEC
builds that one: read as a profile behind HEAD."""
diff --git a/website/src/data/source-paths.json b/website/src/data/source-paths.json
index e676d24a1..a80a3531c 100644
--- a/website/src/data/source-paths.json
+++ b/website/src/data/source-paths.json
@@ -1,10 +1,16 @@
{
"archive.softwareheritage.org/softwareheritage/revision@dc20a615275f66bee20a4fd851ef0231daca4f14": [],
"bitbucket.org/linuxwolf6/splitwolf@f6c00044cdef00a31c66307d8b7cb1fb4ddf8c67": [],
+ "codeberg.org/iyzsong/anarch-libretro@187050344ef440c4eaf3135304a020093564fa3f": [
+ "texts.h"
+ ],
"codeberg.org/iyzsong/eternal-libretro@13adf143aea822ebc1ee23722a80e93a7979e4c9": [
"libretro.c"
],
"codeberg.org/iyzsong/gam4980@32c531d3e7159081afd8dee72e8266153821095d": [],
+ "codeberg.org/iyzsong/uxn-libretro@2037b34ee0bf5f3914c38e0aafd145ece170b0f6": [
+ "build.zig.zon"
+ ],
"codeberg.org/schelling/dosbox-pure-unleashed@4a11412248ca4c862751a7d9e6818023795031e9": [
"Makefile",
"main.cpp"
@@ -22,6 +28,9 @@
"src/gui/midi_sc55.h",
"src/gui/mt32emu.h"
],
+ "codeberg.org/virtualxt/virtualxt@a400adb0abf242c2fecbe926618338a00dc557c5": [
+ "virtualxt_libretro.info"
+ ],
"git.eden-emu.dev/eden-emu/eden@26a03d2473787abf3223b2d0e65b291eee00c1e1": [
"src/android/app/src/main/java/org/yuzu/yuzu_emu/utils/DirectoryInitialization.kt",
"src/common/fs/path_util.cpp",
@@ -52,7 +61,8 @@
"Src/OSD/libretro/LibretroWrapper.cpp",
"Src/OSD/libretro/libretro.cpp",
"Src/OSD/libretro/libretroCrosshair.cpp",
- "Src/Sound/MPEG/MpegAudio.cpp"
+ "Src/Sound/MPEG/MpegAudio.cpp",
+ "Src/Version.h"
],
"git.libretro.com/libretro/cemu-libretro@14f56b569b3668db01a4972225993abd3e8f2096": [
".gitlab-ci.yml",
@@ -89,6 +99,7 @@
"libretro-radio.c"
],
"git.libretro.com/libretro/rust-dos@152d9bca7820f0d9a5d1ca820a2d20855698a211": [
+ "Cargo.toml",
"crates/gus/build.rs",
"crates/gus/src/builtin.rs",
"crates/mt32/src/lib.rs",
@@ -105,6 +116,7 @@
"src/verite/mod.rs"
],
"git.libretro.com/libretro/wqxemu@caf0998989446e3d6659f67c1b8aabd708a0379d": [
+ "Cargo.toml",
"crates/wqxemu-core/src/machine.rs",
"crates/wqxemu-core/src/machines/cc800.rs",
"crates/wqxemu-core/src/machines/mod.rs",
@@ -138,7 +150,8 @@
"src/xenia/ui/audio_helper.cc",
"src/xenia/ui/d3d12/d3d12_provider.cc",
"src/xenia/ui/imgui_drawer.cc",
- "src/xenia/ui/vulkan/vulkan_instance.cc"
+ "src/xenia/ui/vulkan/vulkan_instance.cc",
+ "upstream.version"
],
"git.ngram.ca/mirrors/Ryujinx@7d158acc3b5826a08941d6e8d50d3a3897021bcd": [
"src/Ryujinx.Common/Configuration/AppDataManager.cs",
@@ -190,6 +203,7 @@
],
"github.com/7800-devtools/a7800@7a2afdc1ea08fc331b16b750d8c1f02d4ef62fc8": [
"hash/a7800.xml",
+ "makefile",
"src/devices/bus/a7800/hiscore.cpp",
"src/devices/bus/a7800/xm.cpp",
"src/emu/crsshair.cpp",
@@ -281,6 +295,7 @@
"font/fontdata.c",
"io/pcidev.c",
"keystat.c",
+ "np2ver.h",
"pccore.c",
"sdl/libretro/libretro.c",
"sound/fmgen/fmgen_opna.cpp",
@@ -321,6 +336,7 @@
"src/util.cpp"
],
"github.com/AloysHF/BBKEmu@6641863f6ec59a74635753766e3f9d34adf92b05": [
+ "Cargo.toml",
"crates/bbkemu-core/src/emulator.rs",
"crates/bbkemu-core/src/memory.rs",
"crates/bbkemu-core/src/model.rs",
@@ -365,6 +381,7 @@
"crates/dingooemu/src/main.rs"
],
"github.com/AloysHF/Native32Emu@059fa33c658caa4dbbad140ebf2af1197f9dd778": [
+ "Cargo.toml",
"crates/native32emu-core/src/archive_loader.rs",
"crates/native32emu-core/src/content_loader.rs",
"crates/native32emu-core/src/emulator.rs",
@@ -376,10 +393,12 @@
"crates/native32emu-libretro/src/libretro/constants.rs"
],
"github.com/AloysHF/PlaydiaEmu@b1b990e7f28d6baa58d5fcde9faa155990ee8f3f": [
+ "Cargo.toml",
"crates/playdiaemu-core/src/content.rs",
"crates/playdiaemu-libretro/playdiaemu_libretro.info"
],
"github.com/AloysHF/SPMP8000Emu@65a93528ee33767bb9cf8faef516c8d1ad43fd13": [
+ "Cargo.toml",
"crates/spmp8000emu-core/assets/README.md",
"crates/spmp8000emu-core/src/api/emu_fs.rs",
"crates/spmp8000emu-core/src/api/mod.rs",
@@ -390,6 +409,7 @@
"crates/spmp8000emu-libretro/src/libretro/constants.rs"
],
"github.com/AloysHF/WQXEmu@caf0998989446e3d6659f67c1b8aabd708a0379d": [
+ "Cargo.toml",
"crates/wqxemu-core/src/machine.rs",
"crates/wqxemu-core/src/machines/cc800.rs",
"crates/wqxemu-core/src/machines/mod.rs",
@@ -412,7 +432,9 @@
"plastic_tui/src/ui.rs",
"plastic_ui/src/main.rs"
],
- "github.com/AppleWin/AppleWin@1f3cadb88d1158c139d2e3a7b864d91836856948": [],
+ "github.com/AppleWin/AppleWin@1f3cadb88d1158c139d2e3a7b864d91836856948": [
+ "resource/version.h"
+ ],
"github.com/AppleWin/AppleWin@3e8054b4627624398e4589f7f27b3d40a6b9718e": [
"resource/resource.h",
"source/CardManager.cpp",
@@ -480,6 +502,7 @@
"libretro/libretro.c"
],
"github.com/BlitterStudio/amiberry@49dbd1f027ef2afc12862b30c0c31ac8efa66221": [
+ "CMakeLists.txt",
"android/app/build.gradle",
"libretro/libretro.cpp",
"src/a2091.cpp",
@@ -520,7 +543,9 @@
"source/bus-main-m68k.c",
"source/bus-sub-m68k.c"
],
- "github.com/Clownacy/clownmdemu-libretro@d43c2708b0a31c285ce16724b6c4a2e92af07346": [],
+ "github.com/Clownacy/clownmdemu-libretro@d43c2708b0a31c285ce16724b6c4a2e92af07346": [
+ "source/libretro-interface.c"
+ ],
"github.com/ColinPitrat/caprice32@8c778bf072a06fb7c23b9cccd179041db7f79a52": [
"cap32.cfg",
"rom/MF2.rom",
@@ -587,7 +612,8 @@
"engine/source/gamelib/packfile.c",
"engine/source/gamelib/packfile.h",
"engine/source/gamelib/translation.c",
- "engine/source/utils.c"
+ "engine/source/utils.c",
+ "engine/version.sh"
],
"github.com/DaedalusX64/daedalus@f17e9ed86f3806fadeb69abd29c9526ab2d4bd1b": [
"Source/CMakeLists.txt",
@@ -656,6 +682,7 @@
"Src/Version.h"
],
"github.com/DrGlaucous/doukutsu-rs-nm@51e64c2e9615bcd476034c69b58927877fe73494": [
+ "Cargo.toml",
"drsretroarch/src/core.rs",
"src/data/vanilla.rs",
"src/game/shared_game_state.rs"
@@ -668,6 +695,7 @@
"src/emu/CMakeLists.txt",
"src/emu/android/app/src/main/cpp/src/native-lib.cpp",
"src/emu/android/app/src/main/java/com/github/eka2l1/emu/Emulator.java",
+ "src/emu/common/include/common/configure.h.in",
"src/emu/common/src/path.cpp",
"src/emu/common/src/types.cpp",
"src/emu/config/include/config/options.inl",
@@ -728,6 +756,7 @@
"src/emu/CMakeLists.txt",
"src/emu/android/app/src/main/cpp/src/native-lib.cpp",
"src/emu/android/app/src/main/java/com/github/eka2l1/emu/Emulator.java",
+ "src/emu/common/include/common/configure.h.in",
"src/emu/common/src/path.cpp",
"src/emu/common/src/types.cpp",
"src/emu/config/include/config/options.inl",
@@ -782,6 +811,7 @@
"src/scripts/pottery_startup_fix.lua"
],
"github.com/EasyRPG/Player@096c004def987f3545198304b1b7a8352f284a50": [
+ "CMakeLists.txt",
"builds/android/app/src/main/java/org/easyrpg/player/player/EasyRpgPlayerActivity.java",
"builds/android/app/src/main/java/org/easyrpg/player/settings/SettingsManager.java",
"src/decoder_fluidsynth.cpp",
@@ -810,11 +840,13 @@
],
"github.com/FCare/Kronos@d0384bc33aad06bfa9cf5cd308c4bd7ae6cfc814": [
"yabause/src/ctrl/src/stv.c",
+ "yabause/src/libretro/Makefile.common",
"yabause/src/libretro/libretro.c",
"yabause/src/sys/memory/src/cs0.c",
"yabause/src/utils/src/db.c"
],
"github.com/FWGS/xash3d-fwgs@27092af50d912432887faa43a1cccddfae569b2d": [
+ "engine/common/com_strings.h",
"filesystem/gameinfo.c",
"filesystem/pak.c",
"filesystem/searchpath.c"
@@ -828,6 +860,7 @@
],
"github.com/FrodeSolheim/fs-uae@f362278ccd4c60991caac3b4d240d4a3f751bea2": [
"cfgfile.cpp",
+ "configure.ac",
"od-fs/fsuae/fsuae-init.c",
"od-fs/fsuae/fsuae-messages.cpp",
"od-fs/python/app/app_init.py",
@@ -870,9 +903,13 @@
"codemp/qcommon/qcommon.h"
],
"github.com/Jakz/retro8@ecee6594c5b953966ee0515f3edac4032c7ed40f": [
+ "src/libretro/libretro.cpp",
"src/vm/gfx.cpp",
"src/vm/lua_bridge.cpp"
],
+ "github.com/JesseTG/McSoftServe@fbdd09c7dfc11e35d900e51086f63e7f853e6c01": [
+ "CMakeLists.txt"
+ ],
"github.com/JesseTG/melonds-ds@f394adbacb5722ee97c1b37c8064da9a25818310": [
"src/libretro/config/config.cpp",
"src/libretro/config/config.hpp",
@@ -880,7 +917,11 @@
"src/libretro/config/constants.cpp",
"src/libretro/config/constants.hpp"
],
+ "github.com/JesseTG/rom-cleaner@f75e2b58733de180f28a73286c6a82505be7bbb2": [
+ "libretro.cpp"
+ ],
"github.com/JetSetIlly/Gopher2600@295b9e1c08203453677ea4184e284c0664f5949a": [
+ "Makefile",
"cartridgeloader/loader.go",
"debugger/debugger.go",
"gopher2600.go",
@@ -906,12 +947,14 @@
],
"github.com/KaosOverride/CapriceRPI@7d86ebdc6a5e645220c6f30cf407ac57c3256054": [
"src/cap32.cpp",
+ "src/cap32.h",
"src/roms/builtin_roms.h"
],
"github.com/LIJI32/SameBoy@9bf7e0b4dffc20941e4dfadffc6899ae19463844": [
"Core/gb.c",
"Core/gb.h",
- "libretro/libretro.c"
+ "libretro/libretro.c",
+ "version.mk"
],
"github.com/LLeny/holani-retro@d0d79b4928e3d32695294142784c033ce7aeda9b": [
"src/lib.rs"
@@ -921,6 +964,7 @@
"src/rom.rs"
],
"github.com/LekKit/RVVM@343f6784c8922446083c5d5bd111d7c1eb8590eb": [
+ "CMakeLists.txt",
"src/bindings/libretro/libretro.c",
"src/core/rvvm.c",
"src/main.c"
@@ -988,6 +1032,7 @@
"tools/installer/TRX_Installer/InstallMappings.cs"
],
"github.com/NagyD/SDLPoP@3c5add5fb7f83d4ceb542823ab66d00146c4271b": [
+ "src/config.h",
"src/seg009.c"
],
"github.com/Novum/vkQuake@a6cfba6904e0743dae4235f9dad9711bb5bd27f1": [
@@ -1216,15 +1261,18 @@
"rpcs3/Emu/Cell/lv2/sys_prx.cpp",
"rpcs3/Emu/System.cpp",
"rpcs3/Loader/PUP.cpp",
+ "rpcs3/rpcs3_version.cpp",
"rpcs3/rpcs3qt/main_window.cpp"
],
"github.com/RSDKModding/RSDKv3-Decompilation@2a7fd8b70f1b33553e0d6c67491d07e8290b80c1": [
+ "CMakeLists.txt",
"RSDKv3/Reader.cpp",
"RSDKv3/RetroEngine.cpp",
"RSDKv3/RetroEngine.hpp",
"RSDKv3/Userdata.cpp"
],
"github.com/RSDKModding/RSDKv4-Decompilation@a7f5195e21fdad7b75e4587e249013feeea9e6f3": [
+ "CMakeLists.txt",
"RSDKv4/ModAPI.cpp",
"RSDKv4/Reader.cpp",
"RSDKv4/Reader.hpp",
@@ -1325,11 +1373,13 @@
"C64.emu/src/vice/vicii/vicii-resources.c",
"C64.emu/src/vice/viciisc/vicii-resources.c",
"C64.emu/src/vice/video/video-resources.c",
+ "EmuFramework/CMakeLists.txt",
"EmuFramework/include/emuframework/AppMeta.hh",
"EmuFramework/include/emuframework/AssetManager.hh",
"EmuFramework/include/emuframework/DataPathSelectView.hh",
"EmuFramework/include/emuframework/EmuSystem.hh",
"EmuFramework/include/shared/mednafen/mednafen-config.h",
+ "EmuFramework/metadata/conf.mk",
"EmuFramework/src/AppMeta.cc",
"EmuFramework/src/AssetManager.cc",
"EmuFramework/src/EmuApp.cc",
@@ -1602,7 +1652,8 @@
"Source/RMG-Input/main.cpp",
"Source/RMG/UserInterface/Dialog/SettingsDialog.cpp",
"Source/RMG/UserInterface/MainWindow.cpp",
- "Source/RMG/main.cpp"
+ "Source/RMG/main.cpp",
+ "VERSION"
],
"github.com/STJr/SRB2@639b58c6d718452ef343a0bc927d043bed9e40d6": [
"src/CMakeLists.txt",
@@ -1610,10 +1661,12 @@
"src/d_main.c",
"src/doomdef.h",
"src/sdl/i_system.c",
+ "src/version.h",
"src/w_wad.c"
],
"github.com/SourMesen/Mesen-S@89199f298a95345a893d814525b6668567a6d490": [
"Core/BaseCartridge.cpp",
+ "Core/EmuSettings.cpp",
"Core/FirmwareHelper.h",
"Core/Gameboy.cpp",
"Core/GbBootRom.h",
@@ -1648,6 +1701,7 @@
],
"github.com/Spuds0588/mgba-splitscreen@f1d5975d77285f77affbfe64b7050ebd5c4b6a77": [
"CMakeLists.txt",
+ "mgba-splitscreen/package.json",
"src/gba/gba.c",
"src/platform/libretro-splitscreen/instances.c",
"src/platform/libretro-splitscreen/mgba_splitscreen_libretro.info"
@@ -1660,7 +1714,8 @@
"src/emulator.c"
],
"github.com/SquirrelJME/SquirrelJME@24d0e97d4297d0bce26a9651f5bce5d326ea690a": [
- "nanocoat/src/boot.c"
+ "nanocoat/src/boot.c",
+ "squirreljme-version"
],
"github.com/StillJC/ArcadeDuck@80cdb6da6b51d687192a6346efe4499b10fe4faf": [
"data/resources/arcadedb.yaml",
@@ -1734,7 +1789,8 @@
],
"github.com/TASEmulators/desmume@e06d11f6df8c2e35d570412c45f5a63e5e7c031d": [
"desmume/src/NDSSystem.cpp",
- "desmume/src/firmware.cpp"
+ "desmume/src/firmware.cpp",
+ "desmume/src/version.cpp"
],
"github.com/TASEmulators/desmume@fc504ee0bc9ac3434cafcaae7b129c025499a609": [
"desmume/src/NDSSystem.cpp",
@@ -1754,6 +1810,7 @@
],
"github.com/TerryCavanagh/VVVVVV@40e1ec3bbf2a990a5c600564fe312c2121178a50": [
"desktop_version/src/FileSystemUtils.cpp",
+ "desktop_version/src/ReleaseVersion.h",
"desktop_version/src/main.cpp"
],
"github.com/TheForceEngine/TheForceEngine@cc25205cc94c36a396f6f50295772f6ec83069a2": [
@@ -1776,7 +1833,8 @@
"src/main/level_file.cpp",
"src/main/menu_main.cpp",
"src/main/translate.cpp",
- "src/sound.cpp"
+ "src/sound.cpp",
+ "version.cmake"
],
"github.com/ThisBoringWorld/gam4980@eeaa531b55e7127ab4b5e0bdc5ceba686df59c6a": [
"src/libretro.c"
@@ -1850,6 +1908,7 @@
"SDL/keyboard.c",
"SDL/prop.c",
"SDL/tool/create_cgrom.c",
+ "version.txt",
"win32api/dosio.c",
"x68k/ioc.c",
"x68k/midi_fluid.c",
@@ -1876,6 +1935,7 @@
"wadsrc_lights/CMakeLists.txt",
"wadsrc_widepix/CMakeLists.txt"
],
+ "github.com/Uzebox/uzebox@eb02e5f69212983e778a2ca87b198f22071303b8": [],
"github.com/VICE-Team/svn-mirror@46b1bc4393251f838ce3dadd241c1f567d9371d1": [],
"github.com/VICE-Team/svn-mirror@81546e60c222fe4aef750b890b0dbe3a5ac280d8": [
"vice/configure.ac",
@@ -1941,6 +2001,7 @@
"vice/src/video/video-color.c"
],
"github.com/Vita3K/Vita3K@6ec8e6ce31f3d6099b14eb9dd0320c09ef6386b6": [
+ "vita3k/CMakeLists.txt",
"vita3k/app/src/app.cpp",
"vita3k/module/src/load_module.cpp",
"vita3k/packages/src/pup.cpp",
@@ -1960,6 +2021,7 @@
"README.md",
"cmake/Symbian.cmake",
"src/emu/CMakeLists.txt",
+ "src/emu/common/include/common/configure.h.in",
"src/emu/common/src/path.cpp",
"src/emu/common/src/types.cpp",
"src/emu/config/include/config/options.inl",
@@ -2136,6 +2198,9 @@
"vm/vm.c",
"vm/vm_console.c"
],
+ "github.com/aduros/wasm4@9d6c962785cfe3719d0245fd279ecbe98a4dbb63": [
+ "cli/package.json"
+ ],
"github.com/adventuregamestudio/ags@6802bad8dc3189462003d4a169fc591f64cfb9b6": [
"Common/ac/gamesetupstructbase.h",
"Common/ac/spritefile.cpp",
@@ -2224,6 +2289,7 @@
"src/game/gconfig.cc"
],
"github.com/alexbatalov/fallout2-ce@e97087b9582f37075db347a89898887320753f8b": [
+ "CMakeLists.txt",
"src/game.cc",
"src/game_config.cc",
"src/interface.cc",
@@ -2309,6 +2375,9 @@
"src/ui_text.c",
"src/version.c"
],
+ "github.com/amberwhitehead/pzretro@6d859b47092f585a7ec05804c1d51a1676a06531": [
+ "src/core.cpp"
+ ],
"github.com/andkrau/NuanceResurrection@daf3ca642756a559ecce91e10da0e73cbad180ff": [
"CMakeLists.txt",
"src/Bios.h",
@@ -2487,6 +2556,7 @@
],
"github.com/atari800/atari800@98cc2dc749867c9c7317a0271ba062a6c797f886": [],
"github.com/audetto/AppleWin@0a89db3d593a74d04590b902fb7206723591f445": [
+ "resource/version.h",
"source/frontends/common2/gnuframe.cpp"
],
"github.com/aureyoboss/ArcadeFlashWeb@5de66e0cd69b48721a094887a28d042f71ddad08": [
@@ -2507,6 +2577,7 @@
"src/tools/mkpfi.c"
],
"github.com/autch/piemu@23208626e16e53b73fd21a2fbd0c429338625dc4": [
+ "app.h",
"piemu.c",
"tools/mkpfi.c"
],
@@ -2647,6 +2718,7 @@
"bsnes/target-libretro/libretro.cpp"
],
"github.com/bvschaik/julius@34d1ecd54befb845c0139b371fa8a0438210dac1": [
+ "CMakeLists.txt",
"src/building/model.c",
"src/core/image.c",
"src/core/lang.c",
@@ -2658,10 +2730,12 @@
],
"github.com/cebix/macemu@96e512bd6376e78a2869f16dcc8a9028bce5ee72": [
"BasiliskII/src/Unix/main_unix.cpp",
+ "BasiliskII/src/include/version.h",
"BasiliskII/src/main.cpp",
"BasiliskII/src/rom_patches.cpp",
"SheepShaver/src/Unix/main_unix.cpp",
"SheepShaver/src/Windows/main_windows.cpp",
+ "SheepShaver/src/include/version.h",
"SheepShaver/src/main.cpp",
"SheepShaver/src/rom_patches.cpp"
],
@@ -2761,6 +2835,7 @@
"src/video/screen.c"
],
"github.com/chocolate-doom/chocolate-doom@72d9e9318c4ccc61dab29bb9cc30bc8a9a93266d": [
+ "configure.ac",
"src/d_iwad.c",
"src/d_iwad.h",
"src/doom/d_main.c",
@@ -2774,9 +2849,11 @@
],
"github.com/christianhaitian/bennugd-monolithic@60ee3389efcf9b402d66035e87f33d17d70cbd83": [
"README.md",
- "core/bgdi/src/main.c"
+ "core/bgdi/src/main.c",
+ "projects/cmake/include/common_defs.cmake"
],
"github.com/christianhaitian/ti99sim@e3608541943b5258afe45b74e3f78e723df1fcbd": [
+ "doc/CHANGES.html",
"src/core/device-support.cpp",
"src/core/ti994a-gk.cpp",
"src/core/ti994a.cpp",
@@ -2844,6 +2921,7 @@
"fs.cpp",
"game.cpp",
"main.cpp",
+ "main_libretro.cpp",
"resource.cpp"
],
"github.com/deathkiller/jazz2-native@ff9ddb7be9c84bdcf71b22d9380da06135edeb62": [
@@ -2864,6 +2942,7 @@
"cmake/ncine_options.cmake"
],
"github.com/derik-dot-digital/D.Smile@d4bbc3be27537def21513991647f14ea9a9c2d15": [
+ "app/build.gradle.kts",
"app/src/main/cpp/core/vsmile.cpp",
"app/src/main/cpp/jni_bridge.cpp",
"app/src/main/java/com/dsmile/emulator/ui/EmuActivity.kt",
@@ -2882,18 +2961,25 @@
"Source/diablo.cpp",
"Source/engine/assets.cpp",
"Source/init.cpp",
- "Source/options.cpp"
+ "Source/options.cpp",
+ "VERSION"
+ ],
+ "github.com/diekleinekuh/BennuGD_libretro@5fba764ac709545d4b0d3b28deff2ec0c7d1a91b": [
+ "core/common/bgd_version.c"
],
"github.com/digarok/gsplus-legacy-archive@480572054518112647c8fae5d7ea7046a6d6ecfb": [
+ "CMakeLists.txt",
"src/config.c",
"src/imagewriter.cpp",
"src/printer.cpp",
"src/sim65816.c"
],
"github.com/digarok/gsplus@41e71031debbde98e66ea5c5c67498e9b4726a6d": [
+ "gsplus/src/CMakeLists.txt",
"gsplus/src/config.c"
],
"github.com/dividebysandwich/rust-dos@152d9bca7820f0d9a5d1ca820a2d20855698a211": [
+ "Cargo.toml",
"crates/gus/build.rs",
"crates/gus/src/builtin.rs",
"crates/mt32/src/lib.rs",
@@ -3019,6 +3105,7 @@
"Source/Core/DolphinQt/MenuBar.cpp"
],
"github.com/dosbox-staging/dosbox-staging@fa1856c057902be3e08856675d6cc1e7ffe43db6": [
+ "CMakeLists.txt",
"src/audio/disk_noise.cpp",
"src/dos/CMakeLists.txt",
"src/dos/dos_code_page.cpp",
@@ -3042,6 +3129,7 @@
"src/shell/autoexec.cpp"
],
"github.com/doublegate/RustyNES@3d02b99dc84fb389c03fc6b1f986ffa658dda0dd": [
+ "Cargo.toml",
"crates/rustynes-core/src/bus.rs",
"crates/rustynes-core/src/nes.rs",
"crates/rustynes-gamedb/src/lib.rs",
@@ -3049,6 +3137,7 @@
"crates/rustynes-mappers/src/fds.rs"
],
"github.com/doukutsu-rs/doukutsu-rs@d05995b2ce88e583491fcecfbd5883735d3527ea": [
+ "Cargo.toml",
"src/data/vanilla.rs",
"src/game/shared_game_state.rs"
],
@@ -3185,6 +3274,7 @@
"github.com/emuplace/sudachi.emuplace.app@c7431bd420d66c54df277ba0a0b71de42cf0a5bf": [],
"github.com/etlegacy/etlegacy@add16a92f4b10c2955136e3ab7868bfc9bff8fad": [
"README.md",
+ "VERSION.txt",
"cmake/ETLBuildMod.cmake",
"cmake/ETLVersion.cmake",
"src/qcommon/files.c",
@@ -3192,6 +3282,7 @@
"src/sys/sys_main.c"
],
"github.com/fabiangreffrath/taradino@2b4ea3c6c18caf60959efee1f2534c2122607716": [
+ "CMakeLists.txt",
"rott/rt_datadir.c",
"rott/rt_main.c",
"rott/rt_main.h",
@@ -3200,7 +3291,8 @@
"github.com/finalburnneo/FBNeo@697e385c8285bfc528343b96d948ee3a4f9e24c5": [
"src/burn/burn.cpp",
"src/burn/drv/neogeo/d_neogeo.cpp",
- "src/burn/hiscore.cpp"
+ "src/burn/hiscore.cpp",
+ "src/burn/version.h"
],
"github.com/finalburnneo/FBNeo@c110542721d8674b6ff48e691ac032c040fecbba": [
"src/burn/burn.cpp",
@@ -3229,6 +3321,7 @@
"src/burn/drv/taito/d_taitof2.cpp",
"src/burn/hiscore.cpp",
"src/burn/snd/samples.cpp",
+ "src/burn/version.h",
"src/burner/conc.cpp"
],
"github.com/flyinghead/flycast@e88b0ced2243de137bcccac0072f0c1dd00d41bd": [
@@ -3279,12 +3372,14 @@
"app/src/main/java/paulscode/android/mupen64plusae/persistent/AppData.java",
"app/src/main/java/paulscode/android/mupen64plusae/persistent/GlobalPrefs.java",
"app/src/main/java/paulscode/android/mupen64plusae/util/RomHeader.java",
+ "build_common/version_common.gradle",
"mupen64plus-core/upstream/src/main/main.c",
"settings.gradle"
],
"github.com/garglk/garglk@9e06211c20bee35026744424a57f50375cdc29db": [
"CMakeLists.txt",
"INSTALL.md",
+ "VERSION",
"garglk/CMakeLists.txt",
"garglk/config.cpp",
"garglk/draw.cpp",
@@ -3356,6 +3451,7 @@
"idTech4Amm/src/main/java/com/n0n3m4/DIII4A/launcher/SetupControlsThemeFunc.java"
],
"github.com/gopher64/gopher64@87385e77432cd278ac8588c7ed3d5014fc0d6bab": [
+ "Cargo.toml",
"build.rs",
"parallel-rdp/interface.cpp",
"src/cheats.rs",
@@ -3497,7 +3593,8 @@
"src/xenia/ui/audio_helper.cc",
"src/xenia/ui/d3d12/d3d12_provider.cc",
"src/xenia/ui/imgui_drawer.cc",
- "src/xenia/ui/vulkan/vulkan_instance.cc"
+ "src/xenia/ui/vulkan/vulkan_instance.cc",
+ "upstream.version"
],
"github.com/hatari/hatari@23bc3060ebf0da348cc842e358c102ba88002b56": [],
"github.com/hatari/hatari@c1a5c88bc06e56778b6b7f8483becfd58a7da2b4": [
@@ -3561,6 +3658,7 @@
"src/org/recompile/mobile/PlatformFont.java"
],
"github.com/hex007/freej2me@eb4ac87e9a0b212ba701691eb67ee4892b2b1173": [
+ "META-INF/freej2me-build.version",
"src/libretro/freej2me_libretro.c"
],
"github.com/hrydgard/ppsspp@43a69b1c84dfe29e82b46bd3797a1106cbd65c5b": [
@@ -3593,6 +3691,9 @@
"dirksimple_libretro.c",
"dirksimple_sdl.c"
],
+ "github.com/icculus/mojozork@ff7e00742a00acec8e175ddefb97520fb270df2d": [
+ "mojozork-libretro.c"
+ ],
"github.com/ihhub/fheroes2@35ca4c915be00098547d5050412a325dd55cfd7f": [
"src/fheroes2/agg/agg.cpp",
"src/fheroes2/audio/audio_manager.cpp",
@@ -3684,6 +3785,7 @@
"ui/libretro.c"
],
"github.com/ioquake/ioq3@87a99d18206e878a20289f05ac3c16005dcae5c3": [
+ "cmake/identity.cmake",
"code/qcommon/files.c",
"code/qcommon/q_shared.h",
"code/qcommon/qcommon.h"
@@ -3691,6 +3793,7 @@
"github.com/iortcw/iortcw@438e7d413b5f7277187c35b032eb0ef9093ae778": [
"MP/code/qcommon/files.c",
"MP/code/qcommon/q_shared.h",
+ "SP/Makefile",
"SP/code/qcommon/files.c",
"SP/code/qcommon/qcommon.h"
],
@@ -3704,6 +3807,7 @@
"pico/pico_int.h",
"pico/sms.c",
"platform/common/emu.c",
+ "platform/common/version.h",
"platform/libretro/libretro.c"
],
"github.com/ivanizag/izapple2@4e773baf9f1f3fb692e3f3444eb5f42fddb205ef": [
@@ -3719,7 +3823,9 @@
"github.com/iyzsong/onscripter-libretro@ec4ff1842d498faaa844d570becf561d088deea0": [
"libretro.cpp"
],
- "github.com/iyzsong/syobonaction-libretro@792c40cb590bcc7286cf720b5fb85807082b534e": [],
+ "github.com/iyzsong/syobonaction-libretro@792c40cb590bcc7286cf720b5fb85807082b534e": [
+ "libretro.cpp"
+ ],
"github.com/izzy2lost/Super3@c410f82f771b33094b8c1cdbf96ef7c74ec9cff1": [
"Manual.txt",
"README.md",
@@ -3774,6 +3880,7 @@
"github.com/joamag/boytacean@4d806d0770f117cc8e6ac0fe75b95aa9dc39fc4f": [
"frontends/libretro/src/core.rs",
"frontends/sdl/src/main.rs",
+ "setup.py",
"src/data.rs",
"src/gb.rs"
],
@@ -3833,6 +3940,7 @@
"src/spi.cpp"
],
"github.com/jsgroth/jgenesis@0a00c47ba7a16bd6e77ef7e0b6c8fab2fc603cba": [
+ "Cargo.toml",
"backend/gb-core/src/memory.rs",
"backend/gba-core/src/memory.rs",
"backend/genesis-components/src/cartridge.rs",
@@ -3860,6 +3968,7 @@
"frontend/jgenesis-native-driver/src/mainloop/smsgg.rs"
],
"github.com/jtothebell/fake-08@814991a2571ad3970e386cef48f3b148aa1c27b9": [
+ "Makefile",
"platform/libretro/libretro.cpp",
"source/p8GlobalLuaFunctions.h",
"source/vm.h"
@@ -3868,7 +3977,8 @@
"sc2/build/win32_install/packages.nsh",
"sc2/build/win32_install/uqm-installer.nsi",
"sc2/src/options.c",
- "sc2/src/uqm/setup.c"
+ "sc2/src/uqm/setup.c",
+ "sc2/src/uqmversion.h"
],
"github.com/kondrak/vkQuake2@6763f207229f97cffabb6fc2da72017a794b139b": [
"client/snd_miniaudio.c",
@@ -3880,6 +3990,7 @@
"github.com/kurtjd/jaxe@c767afd785e01a15bcd575a2d93b737add82b675": [
"include/chip8.h",
"src/chip8.c",
+ "src/libretro.c",
"src/main.c"
],
"github.com/lemon32767/ccleste@261d96f15af430b8111abc7a5250229246654f52": [
@@ -3887,6 +3998,7 @@
"sdl12main.c"
],
"github.com/lethal-guitar/RigelEngine@f05996f9b3ad3b3ea5bb818e49e7977636746343": [
+ "CMakeLists.txt",
"README.md",
"cmake/rigel_pack.cmake",
"src/assets/cmp_file_package.cpp",
@@ -3915,6 +4027,7 @@
"src/burn/burn.cpp",
"src/burn/drv/neogeo/d_neogeo.cpp",
"src/burn/hiscore.cpp",
+ "src/burn/version.h",
"src/burner/libretro/libretro.cpp"
],
"github.com/libretro/FBNeo@da14132bab6683980b1ad7e4d0d6fd47bf06dce7": [
@@ -3944,9 +4057,13 @@
"src/burn/drv/taito/d_taitof2.cpp",
"src/burn/hiscore.cpp",
"src/burn/snd/samples.cpp",
+ "src/burn/version.h",
"src/burner/conc.cpp",
"src/burner/libretro/libretro.cpp"
],
+ "github.com/libretro/FFmpeg@4920879d2f09a78cdf855403c349457cee1c31da": [
+ "RELEASE"
+ ],
"github.com/libretro/FreeChaF@76c7a84f1f7e80f3e6f2bba96fe100cb24e99124": [
"src/channelf_hle.c",
"src/libretro.c",
@@ -3977,12 +4094,14 @@
],
"github.com/libretro/Mesen-S@9e4fdeb9b336470bc96beb8765b2e79c86a2da1e": [
"Core/BaseCartridge.cpp",
+ "Core/EmuSettings.cpp",
"Core/FirmwareHelper.h",
"Core/Gameboy.cpp",
"Core/GbBootRom.h",
"Core/NecDsp.cpp"
],
"github.com/libretro/Mesen@0102910c39ad1a62bc3f784466f3f67ca9eae335": [
+ "Core/EmulationSettings.cpp",
"Core/FdsLoader.cpp",
"Core/StudyBoxLoader.cpp",
"Libretro/libretro.cpp"
@@ -4028,6 +4147,7 @@
"font/fontdata.c",
"io/pcidev.c",
"keystat.c",
+ "np2ver.h",
"pccore.c",
"sdl/libretro/libretro.c",
"sound/fmgen/fmgen_opna.cpp",
@@ -4060,9 +4180,13 @@
"source/PokeMini.c",
"source/PokeMini.h"
],
+ "github.com/libretro/QuickNES_Core@26bb785c9deddb66a17717b21bb4e328f03ade32": [
+ "libretro/libretro.cpp"
+ ],
"github.com/libretro/RACE@c7810dd7f172827bfa2004813bc000b13786636b": [
"flash.c",
"koyote_bin.h",
+ "libretro/libretro.c",
"main.c",
"ngpBios.c",
"race-memory.c",
@@ -4079,10 +4203,14 @@
"src/resource_aba.cpp",
"src/staticres.cpp"
],
+ "github.com/libretro/RetroArch@5078a39b624e31b359e1527ea7fbfddfc7de96cb": [
+ "version.all"
+ ],
"github.com/libretro/SameBoy@aa158a889a48b538a0302873704a34577c8eb67d": [
"Core/gb.c",
"Core/gb.h",
- "libretro/libretro.c"
+ "libretro/libretro.c",
+ "version.mk"
],
"github.com/libretro/TIC-80@14fd99edc29962778bc88d81773288ffc6e8aa53": [
".gitmodules"
@@ -4091,14 +4219,21 @@
"libretro.c",
"memory.c"
],
+ "github.com/libretro/ThePowderToy@bb2d9f6623d2ccf25a0021045af9591c8a0bbaff": [
+ "src/Config.h"
+ ],
"github.com/libretro/a5200@40c6f2f1ad4a3145b328d5baaf010fae6c7e752b": [
"emu/memory.c",
"libretro/libretro.c"
],
"github.com/libretro/arduous@831b83e67ad46e8c86b8165649ff81bc6fc6c157": [
+ "CMakeLists.txt",
"include/arduous/arduous.h",
"src/arduous/arduous.cpp"
],
+ "github.com/libretro/beetle-bsnes-libretro@5f05e4c785e936c928ac468e129c55b6f08592cb": [
+ "libretro.cpp"
+ ],
"github.com/libretro/beetle-finalarcade2019@0581797db6fdffd826086b053ced4b6b29bb6678": [
"src/burn/burn.cpp",
"src/burn/drv/coleco/d_coleco.cpp",
@@ -4128,6 +4263,9 @@
"mednafen/lynx/cart.cpp",
"mednafen/lynx/rom.cpp"
],
+ "github.com/libretro/beetle-ngp-libretro@a50d5ac288a81f2104ddf43195a4efdd15c72227": [
+ "libretro.c"
+ ],
"github.com/libretro/beetle-pce-fast-libretro@4eee99c451f85ebe66d1591de88b892015b23059": [
"libretro.c"
],
@@ -4141,7 +4279,8 @@
"mednafen/settings.c"
],
"github.com/libretro/beetle-psx-libretro@7fea57a541abb39b8c5035b6261c3e70962d221b": [
- "libretro.c"
+ "libretro.c",
+ "libretro_options.h"
],
"github.com/libretro/beetle-saturn-libretro@30f4c12072d265c9e553dcb29386059114945dea": [
"disc.c",
@@ -4165,6 +4304,9 @@
"github.com/libretro/beetle-vb-libretro@d5ae54c8e23b573a3b34e888b2d48a588027e92c": [
"libretro.cpp"
],
+ "github.com/libretro/beetle-wswan-libretro@4b01295838ea89e3f1355bbe4cb5cf98aa6108cd": [
+ "libretro.c"
+ ],
"github.com/libretro/bk-emulator@92042a753289cedf05e7e6bd8e75849f83e48966": [
"boot.c",
"libretro.c",
@@ -4183,10 +4325,12 @@
"paths.c",
"romdb.c",
"segacd.c",
- "systems.cfg"
+ "systems.cfg",
+ "version.inc"
],
"github.com/libretro/blueMSX-libretro@e3086eb5d36d77fa11704cf53dc176686e70127d": [
"Src/Board/Machine.c",
+ "Src/BuildInfo/version.h",
"Src/Memory/MegaromCartridge.c",
"libretro.c",
"libretro_core_options.h",
@@ -4210,9 +4354,14 @@
"github.com/libretro/bsnes-jg@4aef191fef72be539ccc07ada21c6e0a65360eb7": [
"libretro/libretro.cpp",
"src/cartridge.cpp",
- "src/coprocessor/icd.cpp"
+ "src/coprocessor/icd.cpp",
+ "version.h"
+ ],
+ "github.com/libretro/bsnes-libretro-cplusplus98@baec09aa4796b7575aba1c1ae7335f493c2216af": [
+ "snes/libretro/libretro.cpp"
],
"github.com/libretro/bsnes-libretro@05439f96121d2b9d7ad7a5fc1f29d7eebdcc8c43": [
+ "bsnes/emulator/emulator.hpp",
"bsnes/heuristics/super-famicom.cpp",
"bsnes/sfc/cartridge/load.cpp",
"bsnes/sfc/coprocessor/armdsp/armdsp.hpp",
@@ -4222,16 +4371,19 @@
],
"github.com/libretro/bsnes-mercury@79d7f9de218b6ffa65a80bbdc5828532bc239232": [
"ananke/heuristics/super-famicom.hpp",
+ "emulator/emulator.hpp",
"sfc/cartridge/markup.cpp",
"target-libretro/libretro.cpp"
],
"github.com/libretro/bsnes2014@3c1394e042ee444c8248e1b9210e14ea55e836e9": [
"ananke/heuristics/super-famicom.hpp",
+ "emulator/emulator.hpp",
"target-libretro/libretro.cpp"
],
"github.com/libretro/cannonball@0d83575d920ea4c0a280847a19d7802f673e6a68": [
"src/main/engine/omusic.c",
"src/main/frontend/config.c",
+ "src/main/frontend/menu.c",
"src/main/libretro/main.c",
"src/main/romloader.c"
],
@@ -4267,6 +4419,7 @@
],
"github.com/libretro/crawl-ref@cc2530f377a3a5d686d4b6a360d88b01de0fbc59": [
"crawl-ref/libretro/libretro.cc",
+ "crawl-ref/source/build.h",
"crawl-ref/source/database.cc",
"crawl-ref/source/files.cc",
"crawl-ref/source/fontwrapper-ft.cc",
@@ -4274,17 +4427,20 @@
"crawl-ref/source/tiletex.cc"
],
"github.com/libretro/daphne@6f1695dd1f376060666eec0a416ff56bb6c9cccc": [
+ "daphne/daphne-1.0-src/daphne.cpp",
"daphne/daphne-1.0-src/game/game.cpp",
"daphne/libretro/libretro.cpp"
],
"github.com/libretro/desmume2015@422b688009ccb9f2917c086a8fe79c8cecb030ae": [
"desmume/src/NDSSystem.cpp",
- "desmume/src/NDSSystem.h"
+ "desmume/src/NDSSystem.h",
+ "desmume/src/version.c"
],
"github.com/libretro/desmume@95b4d798731caa809125b6c3c11d17cc332ff6ef": [
"desmume/src/NDSSystem.cpp",
"desmume/src/firmware.cpp",
- "desmume/src/frontend/libretro/libretro.cpp"
+ "desmume/src/frontend/libretro/libretro.cpp",
+ "desmume/src/version.cpp"
],
"github.com/libretro/dolphin@3aac3f052f733f8df2f1616843a4d2e14002ed11": [
"Source/Android/app/build.gradle.kts",
@@ -4318,6 +4474,7 @@
"libretro/deps/munt/mt32emu/src/ROMInfo.cpp",
"libretro/src/libretro.cpp",
"libretro/src/midi_bassmidi.cpp",
+ "libretro/svn",
"src/gui/midi_mt32.cpp"
],
"github.com/libretro/dosbox-libretro@a563bb5e9753f207d74e9d8c417d793b784fa4be": [
@@ -4327,6 +4484,7 @@
"libretro/src/libretro.cpp",
"libretro/src/libretro_core_options.cpp",
"libretro/src/midi_bassmidi.cpp",
+ "libretro/svn",
"src/gui/midi.cpp",
"src/gui/midi_mt32.cpp",
"src/gui/midi_sc55.h"
@@ -4338,12 +4496,14 @@
"src/gui/mt32emu.h"
],
"github.com/libretro/dosbox-svn@46a3164fc0f1e808ae56143d81698b00fb6b4781": [
+ "include/config.h",
"libretro/Makefile.common",
"libretro/Makefile.libretro",
"libretro/libretro.cpp",
"src/misc/cross.cpp"
],
"github.com/libretro/easyrpg-libretro@a3fbb7c24fd5a39fd95388d09135256a6b19f1e4": [
+ "CMakeLists.txt",
"builds/android/app/src/main/java/org/easyrpg/player/player/EasyRpgPlayerActivity.java",
"builds/android/app/src/main/java/org/easyrpg/player/settings/SettingsManager.java",
"src/decoder_fluidsynth.cpp",
@@ -4352,11 +4512,13 @@
],
"github.com/libretro/ecwolf@0cccd9a85d7ffa33fb695691a8a5db246606518c": [
"src/libretro/libretro.cpp",
+ "src/libretro/versiondefs.h",
"src/libretro/wl_main.cpp",
"src/version.h",
"src/wl_iwad.cpp"
],
"github.com/libretro/emux@3e558cb15157fcb1944846a845547d369605c963": [
+ "configure.ac",
"controllers/mapper/gb_mapper.c",
"controllers/mapper/gb_mapper.h",
"controllers/mapper/sms_mapper.c",
@@ -4374,16 +4536,20 @@
"github.com/libretro/fbalpha2012@0ce31536bef3162fe7e69ff5f555334ec4913cef": [
"svn-current/trunk/src/burn/burn.cpp",
"svn-current/trunk/src/burn/hiscore.cpp",
- "svn-current/trunk/src/burn/snd/samples.cpp"
+ "svn-current/trunk/src/burn/snd/samples.cpp",
+ "svn-current/trunk/src/burn/version.h"
],
"github.com/libretro/fbalpha2012_cps1@5542c1848ef81e92db311193b01dc349bc29d7cc": [
- "src/burn/hiscore.cpp"
+ "src/burn/hiscore.cpp",
+ "src/burner/libretro/libretro.cpp"
],
"github.com/libretro/fbalpha2012_cps2@e3f3ae46f120228b74d41e2b2862f1fbf1d7eb5b": [
- "src/burn/hiscore.c"
+ "src/burn/hiscore.c",
+ "src/burner/libretro/libretro.cpp"
],
"github.com/libretro/fbalpha2012_cps3@57f8015c2e0cdebcf42d3add2c314bb7448f9421": [
- "svn-current/trunk/src/burn/hiscore.cpp"
+ "svn-current/trunk/src/burn/hiscore.cpp",
+ "svn-current/trunk/src/burn/version.h"
],
"github.com/libretro/fbalpha2012_neogeo@e092097037d494c50d17c5144a2758d68538061b": [
"src/burn/drv/neogeo/d_neogeo.cpp",
@@ -4391,10 +4557,12 @@
],
"github.com/libretro/fixGB@c7865087b8c8126b8bc60fddb75b20efad992458": [
"libretro/libretro.c",
+ "main.c",
"mem.c"
],
"github.com/libretro/fixNES@72af6c6fd9d3b6c23d334ba7385b6a09225f2276": [
"libretro/libretro.c",
+ "main.c",
"mapper.c"
],
"github.com/libretro/fmsx-libretro@4de11755ce4f196ac1c8a7bb20bb4eccbc87a7d4": [
@@ -4422,9 +4590,11 @@
"github.com/libretro/frodo-libretro@891d20102a8894dd4fce73fb8bd2f623483fd05f": [
"Src/C64.cpp",
"Src/C64.h",
+ "Src/Version.h",
"Src/main.cpp"
],
"github.com/libretro/fuse-libretro@e997e2bc32c888348f862f69f2c53babfedf7791": [
+ "fuse/configure.ac",
"fuse/machine.c",
"fuse/machines/pentagon.c",
"fuse/machines/pentagon512.c",
@@ -4465,15 +4635,20 @@
"src/geo.c",
"src/geo_cd.c"
],
+ "github.com/libretro/gong@69ef0b69dc542af4c1cf2efcc451dd6c378281b6": [
+ "gong.c"
+ ],
"github.com/libretro/gpsp@5819380c2ffb0900219d700a382ee68c464ebb99": [
"bios/source/core.s",
"gba_memory.c",
+ "gpsp_config.h",
"libretro/libretro.c",
"main.h"
],
"github.com/libretro/gw-libretro@91d599b951e7bfe7e040347f58667cba20074adc": [
"gwrom/gwrom.h",
- "src/libretro.c"
+ "src/libretro.c",
+ "src/libretro_version.c"
],
"github.com/libretro/hatari@25f488b1667ed064a25c30eb3f06b40bc877c495": [
".gitlab-ci-libretro.yml",
@@ -4533,6 +4708,9 @@
"src/tos.c",
"src/vdi.c"
],
+ "github.com/libretro/hbmame-libretro@840eeef5ee0fd75dab62c90bf25789b898f3dba3": [
+ "makefile"
+ ],
"github.com/libretro/ishiiruka@f228bde5fbf4861ba749a229803addcd6238663f": [
"Source/Core/Common/CommonPaths.h",
"Source/Core/Common/SysConf.cpp",
@@ -4555,11 +4733,22 @@
"src/jcv_coleco.c",
"src/jcv_crvision.c",
"src/jcv_db.c",
- "src/jollycv.c"
+ "src/jollycv.c",
+ "version.h"
+ ],
+ "github.com/libretro/jumpnbump-libretro@2cc840155ce4bf42b2e9e0ef3854b32d534e607e": [
+ "libretro.c"
+ ],
+ "github.com/libretro/libretro-2048@39333f7b13dc4daea7c151d9c38d22b961246343": [
+ "libretro.c"
+ ],
+ "github.com/libretro/libretro-3dengine@efa2bf6f32f930721fe9ae2361d7ec858077c483": [
+ "libretro.cpp"
],
"github.com/libretro/libretro-atari800@4e7fbc73765c1a9670c7506616046ad1d4ccda51": [
"atari800/src/atari.c",
- "atari800/src/sysrom.c"
+ "atari800/src/sysrom.c",
+ "libretro/config.h"
],
"github.com/libretro/libretro-cap32@8e61dd69d948cea16c3bad734f7b9d0c2a018cc8": [
"cap32/cap32.c",
@@ -4570,10 +4759,15 @@
"cap32/rom/amsdos.h",
"cap32/rom/cpm.h",
"cap32/slots.c",
- "libretro/libretro-core.c"
+ "libretro/libretro-core.c",
+ "libretro/libretro-core.h"
+ ],
+ "github.com/libretro/libretro-chailove@524ef951abbd07464830ee12a3f6f5e2aba9efd3": [
+ "src/ChaiLove.h"
],
"github.com/libretro/libretro-crocods@a9c63b29443715ae2add392010fca4eae7f93e67": [
"crocods-core/cpc6128.bin.c",
+ "crocods-core/crocods.h",
"crocods-core/multiface.c",
"crocods-core/platform.c",
"crocods-core/romdisc.bin.c",
@@ -4592,11 +4786,16 @@
],
"github.com/libretro/libretro-fsuae@089bb69207fe8fa5eec0006d1d759fb6426f4027": [
"Makefile.libretro",
+ "configure.ac",
"libretro/libretro.c",
"sources/src/fs-uae/config.c",
"sources/src/fs-uae/paths.c"
],
+ "github.com/libretro/libretro-gme@1562f6207a066e9807243c89648d1cb44e411971": [
+ "deps/game-music-emu/gme/gme.h"
+ ],
"github.com/libretro/libretro-handy@bc55d462f0b2d6b073ea93dc552ebd73cec60fd1": [
+ "libretro/handy.h",
"libretro/libretro.cpp",
"lynx/rom.cpp",
"lynx/rom.h",
@@ -4604,7 +4803,8 @@
],
"github.com/libretro/libretro-lutro@6224157a615b18507bc0b117a3398c7a324cd3e5": [
"filesystem.c",
- "libretro.c"
+ "libretro.c",
+ "lutro.h"
],
"github.com/libretro/libretro-meowPC98@5fdbb2187f6b14ca7bf668dd52b36c820b989995": [
"bios/bios.c",
@@ -4617,19 +4817,24 @@
"libretro/libretro.c",
"np2tool/GETBIOS.ASM",
"sound/rhythmc.c",
- "sound/soundrom.c"
+ "sound/soundrom.c",
+ "x11/configure.ac"
],
"github.com/libretro/libretro-minivmac@babdf7b53d361a7225858b68a8a64efe8b06f5e5": [
"libretro/libretro-core.c",
"minivmac/cfg/CNFGRAPI.h",
"minivmac/src/OSGLUERETRO.c"
],
+ "github.com/libretro/libretro-mpv@99f7fe4fd43d68da45006301829eaf37c7edbcc2": [
+ "version.h"
+ ],
"github.com/libretro/libretro-o2em@679d6fec04963f6e70a7ec217e3d0ebb1fe472fc": [
"libretro.c",
"libretro_core_options.h",
"src/voice.c"
],
"github.com/libretro/libretro-pcem@e07923e902dcedcf65a502fb3f14e75b9ded5271": [
+ "configure.ac",
"src/mem.c",
"src/ne2000.c",
"src/nvr.c",
@@ -4662,24 +4867,46 @@
"libretro/libretro.c",
"src/d_main.c"
],
+ "github.com/libretro/libretro-remotejoy@745b97ca8d2d825d0bfde4bb321d1bf7b49fd91d": [
+ "libretro/libretro.c"
+ ],
"github.com/libretro/libretro-samples@7c2ad112d7a5176de2191e473369668da8946b16": [
+ "audio/audio_callback/libretro-test.c",
+ "audio/audio_no_callback/libretro-test.c",
+ "audio/audio_playback_wav/libretro-test.c",
+ "input/button_test/libretro.c",
"tests/cruzes/cruzes.c",
+ "video/opengl/libretro_test_gl_compute_shaders/app/boxes.cpp",
"video/opengl/libretro_test_gl_fixedfunction/libretro_gl_ff_test.c",
"video/software/rendering/libretro-test.c",
- "video/software/rendering_direct_to_vram/libretro-test.c"
+ "video/software/rendering_direct_to_vram/libretro-test.c",
+ "video/vulkan/vk_async_compute/libretro-test.c"
+ ],
+ "github.com/libretro/libretro-samples@bce193bc1b8c9a3da43b2ead0158a69e28b37ed8": [
+ "tests/test/libretro-test.c",
+ "video/opengl/libretro_test_gl_shaders/libretro_gl_test.c",
+ "video/vulkan/vk_rendering/libretro-test.c"
+ ],
+ "github.com/libretro/libretro-simcoupe@c28046241ac6a4d79e55326b6e354dc02f92fa34": [
+ "SimCoupe/Base/GUIDlg.cpp"
],
"github.com/libretro/libretro-uae@151828f14d43bb2b0651327ee19a23b36a7081b2": [
"libretro/libretro-core.c",
"libretro/libretro-core.h",
+ "retrodep/sysconfig.h",
"sources/src/caps/caps.c",
"sources/src/driveclick.c"
],
"github.com/libretro/libretro-uae@7387937066b1b693816c3b4e2b7a0c601d41363d": [
"libretro/libretro-core.c",
"libretro/libretro-core.h",
+ "retrodep/sysconfig.h",
"sources/src/caps/caps.c",
"sources/src/driveclick.c"
],
+ "github.com/libretro/libretro-uzem@d991ee94547c8294abc1c4cb73d63116aa58b5bc": [
+ "uzem.h"
+ ],
"github.com/libretro/libretro-vecx@dccff5402a16d1ea7c112095a8e42632bf149506": [
"bios/system.h",
"libretro.c",
@@ -4716,7 +4943,8 @@
"src/drivers/stv.c",
"src/drivers/suprnova.c",
"src/drivers/zn.c",
- "src/hiscore.c"
+ "src/hiscore.c",
+ "src/mame2003/mame2003.c"
],
"github.com/libretro/mame2003-plus-libretro@993403d0332946b8aa6abab56fbd9864498790a1": [
"src/artwork.c",
@@ -4743,7 +4971,8 @@
"src/cheat.c",
"src/cpuexec.c",
"src/datafile.c",
- "src/hiscore.c"
+ "src/hiscore.c",
+ "src/libretro/libretro.c"
],
"github.com/libretro/mame2010-libretro@dff8aadd1c3f38215af3955746d6e19abe0ddcea": [
"src/emu/cheat.c",
@@ -4784,7 +5013,8 @@
"src/mame/drivers/triforce.c",
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
- "src/mame/drivers/zn.c"
+ "src/mame/drivers/zn.c",
+ "src/osd/retro/retroos.c"
],
"github.com/libretro/mame2015-libretro@7adbf440d5f554097f58f8c6ebb673adc4320a31": [
"src/emu/fileio.c",
@@ -4841,7 +5071,8 @@
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
"src/mame/drivers/zn.c",
- "src/osd/retro/retromain.c"
+ "src/osd/retro/retromain.c",
+ "src/version.c"
],
"github.com/libretro/mame2015-libretro@c8fe6c7399f24466808b67933b2b96feea188e0b": [
"src/emu/hiscore.c",
@@ -4896,7 +5127,8 @@
"src/mame/drivers/triforce.c",
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
- "src/mame/drivers/zn.c"
+ "src/mame/drivers/zn.c",
+ "src/version.c"
],
"github.com/libretro/mame2016-libretro@ae07c2f88ff2482ba9f50ffc8c9e7e6fbfe97d0a": [
"src/emu/romload.cpp",
@@ -4950,9 +5182,11 @@
"src/mame/drivers/triforce.cpp",
"src/mame/drivers/twinkle.cpp",
"src/mame/drivers/viper.cpp",
- "src/mame/drivers/zn.cpp"
+ "src/mame/drivers/zn.cpp",
+ "src/version.cpp"
],
"github.com/libretro/mame@5f5a07748ce5c239c4118463ce8e6473743d4859": [
+ "makefile",
"plugins/boot.lua",
"src/devices/bus/a1bus/a1cassette.cpp",
"src/devices/bus/a1bus/a1cffa.cpp",
@@ -5941,6 +6175,7 @@
"src/osd/sdl3/sdlopts.cpp"
],
"github.com/libretro/mame@dc1a96537089d6d4ecd01d9886b21061471c70c0": [
+ "makefile",
"src/mame/acorn/aristmk5.cpp",
"src/mame/amiga/alg.cpp",
"src/mame/amiga/arsystems.cpp",
@@ -6001,6 +6236,7 @@
"src/mame/taito/taitotz.cpp"
],
"github.com/libretro/mame@fba50741006fa3e27e1897f589d2048a505b8fd6": [
+ "makefile",
"src/mame/acorn/aristmk5.cpp",
"src/mame/amiga/alg.cpp",
"src/mame/amiga/arsystems.cpp",
@@ -6063,6 +6299,7 @@
"src/mame/taito/taitotz.cpp"
],
"github.com/libretro/melonDS@66b5d2634cd0a79030562811e6e05f5532f800ba": [
+ "Makefile.common",
"src/DSi.cpp",
"src/DSi.h",
"src/DSi_NAND.cpp",
@@ -6076,18 +6313,24 @@
],
"github.com/libretro/meteor-libretro@9ea6c358eae6acd1a346647d96b832ccaffad0aa": [
"ameteor/source/bios.cpp",
- "ameteor/source/cpu.cpp"
+ "ameteor/source/cpu.cpp",
+ "libretro/libretro.cpp"
],
"github.com/libretro/mgba@7a12d6d4b9acb14c0ae62c9166b6a2f3d08007f6": [
"src/gb/core.c",
"src/gb/gb.c",
"src/gba/gba.c",
"src/gba/hle-bios.c",
- "src/platform/libretro/libretro.c"
+ "src/platform/libretro/libretro.c",
+ "version.cmake"
+ ],
+ "github.com/libretro/mrboom-libretro@40ac32020b540c4bb418c7d798a990932a65da04": [
+ "common.hpp"
],
"github.com/libretro/mupen64plus-libretro-nx@15bada85906593376e8fd697f1b0b3af3a20f512": [
"GLideN64/src/TextDrawer.cpp",
- "mupen64plus-core/src/main/main.c"
+ "mupen64plus-core/src/main/main.c",
+ "mupen64plus-core/src/main/version.h"
],
"github.com/libretro/mupen64plus-libretro@ab8134ac90a567581df6de4fc427dd67bfad1b17": [
"GLideN64/src/Config.cpp",
@@ -6120,6 +6363,7 @@
"github.com/libretro/neocd_libretro@b1e04c738cb48a1dae0574b8877f6a116d270ca1": [
"src/bios.cpp",
"src/bios.h",
+ "src/libretro.cpp",
"src/libretro_bios.cpp",
"src/memory.cpp",
"src/path.cpp"
@@ -6140,6 +6384,7 @@
],
"github.com/libretro/opera-libretro@370d9a25c030bb9de4aade371b31045691c40a95": [
"libopera/opera_bios.c",
+ "libretro.c",
"libretro_core_options.c",
"opera_boot.h",
"opera_lr_opts.c"
@@ -6160,11 +6405,15 @@
"mupen64plus-core/src/device/pif/bootrom_hle.c"
],
"github.com/libretro/parallel-ps2@8c2b679622d602fe656ceba646b2f1f3a981c717": [
+ "libretro/main.cpp",
"pcsx2/CDVD/CDVD.cpp",
"pcsx2/GameDatabase.cpp",
"pcsx2/VMManager.cpp",
"pcsx2/ps2/BiosTools.cpp"
],
+ "github.com/libretro/pascal-pong-libretro@2a0cfd44652c0b215862de3ef56916d1384ad8a0": [
+ "pong.pas"
+ ],
"github.com/libretro/pcsx1-libretro@35dabb85ff3af6825820f54090d344945f65d24e": [
"frontend/libretro.c"
],
@@ -6182,6 +6431,10 @@
"pico/pico_int.h",
"pico/sms.c",
"platform/common/emu.c",
+ "platform/common/version.h",
+ "platform/libretro/libretro.c"
+ ],
+ "github.com/libretro/potator@227c5f6f3ce74d32e9002ce24c1420288559a860": [
"platform/libretro/libretro.c"
],
"github.com/libretro/prosystem-libretro@8a88014287c7a01cd568067e5a557d0a2b2a051f": [
@@ -6193,20 +6446,31 @@
"libretro.c"
],
"github.com/libretro/quasi88-libretro@7884be5277776a5d8c4fdc4e574e9b5b589945c9": [
- "src/LIBRETRO/libretro.c"
+ "src/LIBRETRO/libretro.c",
+ "src/version.h"
+ ],
+ "github.com/libretro/redbook@43544bb988f37a8f3df5af5d2c6f89dd255b8235": [
+ "libretro.c"
],
"github.com/libretro/redream-next@d826ece7f987c6fed336246e7272e2ded6cefa69": [
"src/guest/rom/boot.c",
- "src/guest/rom/flash.c"
+ "src/guest/rom/flash.c",
+ "src/host/retro_host.c"
],
"github.com/libretro/retro8@ddc06a142398ee9755894b3f0bb17c8dc428151d": [
+ "src/libretro/libretro.cpp",
"src/vm/gfx.cpp",
"src/vm/lua_bridge.cpp"
],
+ "github.com/libretro/retroluxury@fdcd94fe4099735edcbea638760da3f2297bc520": [
+ "test/libretro.c"
+ ],
"github.com/libretro/rustation-libretro@3e328e3967e312e1f239aeeecd479a7b4bfda850": [
+ "Cargo.toml",
"src/lib.rs"
],
"github.com/libretro/same_cdi@ff9bb99a50d518aef6d2add1c49b7c44447e3e78": [
+ "gen/version.cpp",
"src/mame/drivers/cdi.cpp",
"src/osd/libretro/libretro-internal/retro_init.cpp"
],
@@ -6215,6 +6479,7 @@
"backends/platform/libretro/include/libretro-defs.h",
"backends/platform/libretro/scripts/bundle_datafiles.sh",
"backends/platform/libretro/src/libretro-os-utils.cpp",
+ "base/internal_version.h",
"dists/engine-data/engine_data.mk",
"dists/engine-data/engine_data_big.mk",
"dists/engine-data/engine_data_core.mk",
@@ -6222,49 +6487,65 @@
],
"github.com/libretro/smsplus-gx@3844b46caa926b6494987b97da63092818c4ddef": [
"source/ports/libretro/smsplus_libretro.c",
- "source/ports/sdl/smsplus.c"
+ "source/ports/sdl/smsplus.c",
+ "source/system.h"
],
"github.com/libretro/snes9x2002@6ffbf9ef4f0063e1f1b78a40d10c50fc52f2524c": [
+ "libretro/libretro.c",
"src/globals.c"
],
"github.com/libretro/snes9x2005@a79dfe9047e7fec58808aefe48ad2bf499c7af11": [
+ "libretro.c",
"source/apu_blargg.c",
"source/dsp1emu.c",
"source/globals.c"
],
"github.com/libretro/snes9x2010@fe690dd321fa5a46b5234a2bde089d2518c62b0e": [
+ "libretro/libretro.c",
"src/apu.c",
"src/bsx.c",
"src/dsp.c"
],
"github.com/libretro/snes9x@fae2fea08f74180759ef540ee94259213f503480": [
"libretro/libretro.cpp",
- "memmap.cpp"
+ "memmap.cpp",
+ "snes9x.h"
],
"github.com/libretro/stella2014-libretro@7d1361e407e63f29e52892655069e5fb4096e691": [
+ "stella/src/common/Version.hxx",
"stella/src/emucore/CartAR.cxx",
"stella/src/emucore/KidVid.cxx",
"stella/src/emucore/PropsSet.cxx"
],
"github.com/libretro/stella2023@ba52c43b9eda950eb0c0eec69cda9b17dee8c39b": [
+ "src/common/Version.hxx",
"src/emucore/CartAR.cxx",
"src/emucore/KidVid.cxx"
],
"github.com/libretro/supafaust@642d1d1b6684aa7e306a02a89885f3f5456a5157": [
"libretro.cpp",
+ "mednafen/config.h",
"mednafen/snes_faust/cart.cpp",
"mednafen/snes_faust/cart/cx4.cpp",
"mednafen/snes_faust/cart/dsp1.cpp",
"mednafen/snes_faust/cart/dsp2.cpp"
],
+ "github.com/libretro/superbroswar-libretro@7f94e03163e1641ecd2a5703eb9ca7e1312b5e8d": [
+ "libretro/libretro.cpp"
+ ],
"github.com/libretro/swanstation@631f0fb31b809e0f889d7c551fe695788e39c1d3": [
"src/core/bios.cpp",
"src/core/bios.h",
"src/core/host_interface.cpp",
"src/core/system.cpp",
- "src/libretro/libretro_core_options.h"
+ "src/libretro/libretro_core_options.h",
+ "src/libretro/libretro_host_interface.cpp"
+ ],
+ "github.com/libretro/tgbdual-libretro@0392c9c469e653205e471114c7949c07c83bfce9": [
+ "libretro/libretro.cpp"
],
"github.com/libretro/tyrquake@67db338ff4d27fdbcead61d4e54938d758ae62cb": [
+ "Makefile",
"common/bgmusic.c",
"common/common.c",
"common/host.c",
@@ -6275,22 +6556,28 @@
"libretro/core/libretro-core.cpp",
"src/memory.cpp"
],
+ "github.com/libretro/uw8-libretro@1a64f4bde9662cb3dc04214d2b9f8ead19c85f0a": [
+ "uw8.c"
+ ],
"github.com/libretro/vba-next@788192f215ad0a1413f1625b40ebba3423fa0ade": [
"build/Makefile.common",
"libretro/libretro.c",
"src/gba.c"
],
"github.com/libretro/vbam-libretro@115defb3a318258ab84746d45258a1aec19d0b4b": [
+ "CHANGELOG.md",
"src/gb/GB.cpp",
"src/gba/GBA.cpp",
"src/libretro/libretro.cpp"
],
"github.com/libretro/vemulator-libretro@27a062f6ae532e5028e4fb54f523cc689e78146a": [
+ "main.cpp",
"vmu.cpp"
],
"github.com/libretro/vice-libretro@6cbc44add8b0a03791b343712dc63dc1edad2675": [
"libretro/libretro-core.c",
"retrodep/ui.c",
+ "vice/configure",
"vice/data/C64DTV/basic-901226-01.bin",
"vice/data/C64DTV/chargen-901225-01.bin",
"vice/data/C64DTV/kernal-901227-03.bin",
@@ -6320,19 +6607,29 @@
],
"github.com/libretro/vitaquake2@4b333fe18e8816974f04432af01f87654ae16e21": [
"libretro/libretro.c",
- "qcommon/files.c"
+ "qcommon/files.c",
+ "qcommon/qcommon.h"
+ ],
+ "github.com/libretro/vitaquake3@61374f650f42c4f25c215ea1f8db992af162ada6": [
+ "Makefile"
+ ],
+ "github.com/libretro/vitavoyager@58b70dd7ea891c2e8ddc37d03a5d58116b0ea118": [
+ "Makefile"
],
"github.com/libretro/xmil-libretro@3106aa54ffb244cca4019a6e95dacaa698781bc3": [
"font/fontdata.c",
"font/fontx1.c",
- "io/memio.c"
+ "io/memio.c",
+ "xmilver.h"
],
"github.com/libretro/xrick-libretro@fcfde3623a04b4e986548e06d46630fcd0bd1e18": [
+ "include/config.h",
"libretro/core/libretro-core.c"
],
"github.com/libretro/yabause@09ed8e5b2e97e7a848ea2514545c34c7b809e399": [
"yabause/CMakeLists.txt",
"yabause/src/config.h.in",
+ "yabause/src/libretro/Makefile.common",
"yabause/src/libretro/libretro.c",
"yabause/src/memory.c",
"yabause/src/memory.h",
@@ -6341,6 +6638,7 @@
],
"github.com/libretro/yabause@3791ffb2221fda61d70aec5cca376418caf05669": [
"yabause/src/ctrl/src/stv.c",
+ "yabause/src/libretro/Makefile.common",
"yabause/src/libretro/libretro.c",
"yabause/src/sys/memory/src/cs0.c",
"yabause/src/utils/src/db.c"
@@ -6352,6 +6650,7 @@
"yabause/src/memory.h"
],
"github.com/lightspark/lightspark@6f07fd65cb95b88ff73e905bf78a1a8b1ddf6049": [
+ "CMakeLists.txt",
"README.md",
"src/backends/cachedsurface.cpp",
"src/backends/config.cpp",
@@ -6395,7 +6694,8 @@
"src/lindbergh/hook.c",
"src/lindbergh/lindbergh.c",
"src/lindbergh/sdlInput.c",
- "src/lindbergh/shaderPatches.c"
+ "src/lindbergh/shaderPatches.c",
+ "src/lindbergh/version.h"
],
"github.com/lindbergh-loader/linuxloader@9aa6e3e45ccfbbc60eb0f975aa9d3d158a13706c": [
"libs/win32/ll-deps/cg2.dll",
@@ -6488,7 +6788,8 @@
"src/mame/drivers/triforce.c",
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
- "src/mame/drivers/zn.c"
+ "src/mame/drivers/zn.c",
+ "src/version.c"
],
"github.com/mamedev/mame@0fdce58484202265b0794a77652bb5e3da9c56af": [
"src/emu/romload.c",
@@ -6498,6 +6799,7 @@
"src/mame/drivers/zn.c"
],
"github.com/mamedev/mame@2e0aa823508663c4a27164be43467d1ef740cdcd": [
+ "makefile",
"src/mame/acorn/aristmk5.cpp",
"src/mame/amiga/alg.cpp",
"src/mame/amiga/arsystems.cpp",
@@ -6559,6 +6861,7 @@
],
"github.com/mamedev/mame@39eb9e44c394df9aec8186f2d2ef7517ace232e1": [
"hash/a7800.xml",
+ "makefile",
"src/devices/bus/a7800/hiscore.cpp",
"src/emu/crsshair.cpp",
"src/emu/fileio.cpp",
@@ -6617,7 +6920,8 @@
"src/mame/drivers/triforce.cpp",
"src/mame/drivers/twinkle.cpp",
"src/mame/drivers/viper.cpp",
- "src/mame/drivers/zn.cpp"
+ "src/mame/drivers/zn.cpp",
+ "src/version.cpp"
],
"github.com/mamedev/mame@6ae44e46f91aa2bd74d9895e6bfd345baebd3d22": [
"src/emu/machine.c",
@@ -6671,7 +6975,8 @@
"src/mame/drivers/triforce.c",
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
- "src/mame/drivers/zn.c"
+ "src/mame/drivers/zn.c",
+ "src/version.c"
],
"github.com/mamedev/mame@c285eb9bcd3505c14a338e29f251ba00776cc75c": [
"src/emu/romload.c",
@@ -6706,9 +7011,11 @@
"src/mame/drivers/triforce.c",
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
- "src/mame/drivers/zn.c"
+ "src/mame/drivers/zn.c",
+ "src/version.c"
],
"github.com/mamedev/mame@eb05584a2b8d98d5af5587244c9cb7dcccf660fd": [
+ "makefile",
"src/mame/acorn/aristmk5.cpp",
"src/mame/amiga/alg.cpp",
"src/mame/amiga/arsystems.cpp",
@@ -7821,7 +8128,8 @@
"src/mame/drivers/triforce.c",
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
- "src/mame/drivers/zn.c"
+ "src/mame/drivers/zn.c",
+ "src/version.c"
],
"github.com/melonDS-emu/melonDS@7d8dea42e221b13521270c423b61add41a741b97": [
"src/DSi.cpp",
@@ -7864,7 +8172,8 @@
"src/gb/gb.c",
"src/gba/gba.c",
"src/gba/hle-bios.c",
- "src/platform/libretro/libretro.c"
+ "src/platform/libretro/libretro.c",
+ "version.cmake"
],
"github.com/mgba-emu/mgba@afd6f14eaf8bd35214ed3fb9dc69a92bfc3877a9": [
"CMakeLists.txt",
@@ -7880,6 +8189,9 @@
"src/OSGLUSDL.c",
"src/OSGLUXWN.c"
],
+ "github.com/minkcv/vm@11f63848a592644722ea1240b4b96785db9b009f": [
+ "machine/libretro.c"
+ ],
"github.com/mirror/daphne-emu@cd214c6046365047704f8a0563928970b30444e6": [
"src/game/astron.cpp",
"src/game/badlands.cpp",
@@ -7907,14 +8219,19 @@
"src/video/video.cpp",
"src/video/video.h"
],
+ "github.com/mittonk/PD777@331af5f53cc0ffbab90f915681c8dfe3a4cda0a2": [
+ "source/libretro/libretro.cpp"
+ ],
"github.com/mittonk/dice-libretro@4b4596b8dd2252b9d08bd6aaa02afda4be834db3": [
"chips/rom.cpp",
"libretro.cpp"
],
"github.com/mkxp-z/mkxp-z@37a04d14413454551a7b6aadbb4e93e67168accb": [
+ "meson.build",
"src/display/font.cpp"
],
"github.com/mmatyas/supermariowar@ed60ed45e296ff88a8883cbc51f5bf5aed880636": [
+ "CMakeLists.txt",
"src/common/global.cpp",
"src/common/path.cpp",
"src/smw/GSSplashScreen.cpp",
@@ -7947,6 +8264,7 @@
"app/src/main/java/paulscode/android/mupen64plusae/persistent/GlobalPrefs.java",
"app/src/main/java/paulscode/android/mupen64plusae/task/ExtractAssetsOrCleanupTask.java",
"app/src/main/java/paulscode/android/mupen64plusae/util/RomHeader.java",
+ "build_common/version_common.gradle",
"mupen64plus-core/mupen64plus-core.mk",
"mupen64plus-core/upstream/src/api/frontend.c",
"mupen64plus-core/upstream/src/device/gb/gb_cart.c",
@@ -7976,7 +8294,8 @@
"github.com/mupen64plus/mupen64plus-ui-console@c8ac4862a019d7885b24927d9b4db5dd3e42a528": [
"projects/unix/Makefile",
"src/cheat.c",
- "src/main.c"
+ "src/main.c",
+ "src/version.h"
],
"github.com/nachoverdon/Dolphin-MMJR2@4d0fdb8eea616320e967408cf5547c72a95196f3": [
"CMakeLists.txt",
@@ -8070,6 +8389,7 @@
],
"github.com/nesbox/TIC-80@ae1195a9d0fbda243bf0ebd861d6876d072a979e": [
".gitmodules",
+ "cmake/version.cmake",
"include/tic80_config.h",
"src/system/libretro/tic80_libretro.c"
],
@@ -8105,9 +8425,11 @@
"github.com/netux79/zc210-libretro@b6426da40b074245fda097fd345fa7c9cdbf152a": [
"libretro.cpp",
"zc/zc_sys.cpp",
+ "zc/zdefs.h",
"zc/zelda.cpp"
],
"github.com/nikita36078/J2ME-Loader@76383ebf348b5d477256fc884dfc55f053b45a86": [
+ "app/build.gradle",
"app/src/main/cpp/Android.mk",
"app/src/main/cpp/m3g/Android.mk",
"app/src/main/cpp/micro3d/Android.mk",
@@ -8188,6 +8510,7 @@
"src/memory/Rom.cc"
],
"github.com/openmoh/openmohaa@a2f340195975f4f042e28a60b62561dd9a0b2700": [
+ "cmake/identity.cmake",
"code/qcommon/common.c",
"code/qcommon/files.cpp",
"code/qcommon/q_shared.h"
@@ -8211,7 +8534,8 @@
"src/tyrian2.c"
],
"github.com/p2000t/M2000@da0b8cbef2007c907f5db2166847c3209643865d": [
- "src/P2000.c"
+ "src/P2000.c",
+ "src/P2000.h"
],
"github.com/panda3ds-emu/panda3ds@3787358bdae41d5532ccd00c8998a527ae949949": [
"src/core/crypto/aes_engine.cpp",
@@ -8232,6 +8556,7 @@
"src/game/pak.c"
],
"github.com/pete-gordon/oricutron@002279fce9fa756d1d63cdc40ae97939eb7de7ed": [
+ "Makefile",
"ReadMe.txt",
"gui.c",
"gui.h",
@@ -8276,10 +8601,12 @@
"Source/Project64-core/RomList/RomList.cpp",
"Source/Project64-core/Settings.cpp",
"Source/Project64-core/Settings/SettingType/SettingsType-RomDatabase.cpp",
+ "Source/Project64-core/Version.h.in",
"Source/Project64/UserInterface/Settings/SettingsPage-DiskDrive.cpp",
"Source/Script/package_zip.cmd"
],
"github.com/proninyaroslav/nesoid@b2ff53fefa56a668aad4a579af85adc672d7a791": [
+ "app/build.gradle",
"app/jni/common/emuengine.h",
"app/jni/neslib/Android.mk",
"app/jni/neslib/cart.c",
@@ -8346,6 +8673,7 @@
"src/core/mappers/waveFile.cpp",
"src/core/palette.c",
"src/core/unif.c",
+ "src/core/version.h",
"src/gui/dipswitch.cpp",
"src/gui/nes20db.cpp",
"src/gui/qt.cpp",
@@ -8434,7 +8762,8 @@
"src/mame/drivers/triforce.c",
"src/mame/drivers/twinkle.c",
"src/mame/drivers/viper.c",
- "src/mame/drivers/zn.c"
+ "src/mame/drivers/zn.c",
+ "src/version.c"
],
"github.com/r-type/sdlvice-libretro@baaaeed97ce1c0a07ed78e3e155cfbd6f508b472": [
"src/c64/c64-resources.c",
@@ -8445,7 +8774,8 @@
"src/drive/ieee/ieee-resources.c",
"src/drive/ieee/ieee.c",
"src/printerdrv/drv-mps803.c",
- "src/printerdrv/drv-nl10.c"
+ "src/printerdrv/drv-nl10.c",
+ "src/version.h"
],
"github.com/rafaelvcaetano/melonDS-android-lib@431ab4bd0003c4356e25fce89640ae1004579b9b": [
"CMakeLists.txt",
@@ -8470,7 +8800,8 @@
"app/src/main/java/me/magnum/melonds/impl/SharedPreferencesSettingsRepository.kt",
"app/src/main/java/me/magnum/melonds/impl/emulator/AndroidEmulatorManager.kt",
"app/src/main/res/values/strings.xml",
- "app/src/main/res/xml/pref_custom_firmware.xml"
+ "app/src/main/res/xml/pref_custom_firmware.xml",
+ "buildSrc/src/main/kotlin/AppConfig.kt"
],
"github.com/raspberrypi/quake3@8d89a2a3c1707bf0f75b2ea26645b872e97c0b95": [
"Makefile",
@@ -8489,6 +8820,7 @@
"github.com/recalbox/pifba@419faa7c3967560f6fa149f2f78b5aedca5b123a": [
"burn/neogeo/d_neogeo.cpp",
"burn/pgm/d_pgm.cpp",
+ "burn/version.h",
"rpi/bzip.cpp",
"rpi/main.cpp"
],
@@ -8564,6 +8896,7 @@
"thirdparty/SDL2/src/joystick/SDL_gamecontroller.c"
],
"github.com/ruffle-rs/ruffle@fe6cfc545405b888ebb478ce1c211d63147ca49b": [
+ "Cargo.toml",
"core/Cargo.toml",
"core/src/avm1/globals.rs",
"core/src/avm2/error_messages.rs",
@@ -8590,6 +8923,9 @@
"video/external/src/decoder/openh264.rs",
"web/Cargo.toml"
],
+ "github.com/rz5/nes@68dfadea5889da5da7c7e171823c9b3ab24fc892": [
+ "nes.c"
+ ],
"github.com/sarah-walker-pcem/pcem@25b54e3ff1d51cbf2469b447e55bce7a589697e9": [],
"github.com/sashkinbro/EmuCoreV@b71d8cf5397b1c6394e92eeb48427cd17e542971": [
"app/build.gradle.kts",
@@ -8673,6 +9009,9 @@
"app/src/main/java/com/sbro/emucorex/ui/cheats/CheatManagerScreen.kt",
"app/src/main/java/com/sbro/emucorex/ui/gamedb/GameDbCatalogRepository.kt"
],
+ "github.com/schellingb/vidtest_libretro@edfd32747e5eeb5ce82a5cee686ee1b32f1cc52e": [
+ "vidtest.c"
+ ],
"github.com/scummvm/scummvm@21955df19b580dad2807ec55f573b5f348690a81": [
"Makefile.common",
"audio/softsynth/fluidsynth.cpp",
@@ -8687,6 +9026,7 @@
"backends/platform/sdl/win32/win32.cpp",
"backends/vkeybd/virtual-keyboard.cpp",
"base/commandLine.cpp",
+ "base/internal_version.h",
"base/main.cpp",
"common/engine_data.cpp",
"common/str-enc.cpp",
@@ -8747,6 +9087,7 @@
"backends/platform/libretro/include/libretro-defs.h",
"backends/platform/libretro/scripts/bundle_datafiles.sh",
"backends/platform/libretro/src/libretro-os-utils.cpp",
+ "base/internal_version.h",
"dists/engine-data/engine_data.mk",
"dists/engine-data/engine_data_big.mk",
"dists/engine-data/engine_data_core.mk",
@@ -8819,6 +9160,7 @@
"ending.c",
"font.c",
"global.c",
+ "libretro/libretro.c",
"main.c",
"midi.c",
"midi_timidity.c",
@@ -8890,7 +9232,8 @@
"src/mame/drivers/viper.c",
"src/mame/drivers/zn.c",
"src/osd/droid-ios/osd-droid.c",
- "src/osd/droid-ios/osdmain.c"
+ "src/osd/droid-ios/osdmain.c",
+ "src/version.c"
],
"github.com/sh95014/AppleWin@51893cab7e8a3d1298734848f4fd616f2e1831fb": [
"Mariani.xcodeproj/project.pbxproj",
@@ -8925,6 +9268,7 @@
"source/linux/linuxframe.cpp"
],
"github.com/shadps4-emu/shadPS4@3eecea94ddaca360b19f4b800523b609a8b2ffcc": [
+ "CMakeLists.txt",
"src/core/libraries/sysmodule/sysmodule_internal.cpp",
"src/core/linker.cpp"
],
@@ -8974,6 +9318,7 @@
"x64/src/main/emulator/EmulatorPlatform.java"
],
"github.com/shinyquagsire23/OpenJKDF2@798f930402525a23b94671d85b97b00390342fa0": [
+ "cmake_modules/version.cmake",
"src/Dw/dwInits.cpp",
"src/Main/InstallHelper.c",
"src/Main/Main.c",
@@ -8983,6 +9328,7 @@
"src/main.c"
],
"github.com/simias/rustation@1daf4faaade3c0fd1e9deace8e309e91303f1b46": [
+ "Cargo.toml",
"src/bios/db.rs",
"src/cdrom/disc/mod.rs",
"src/lib.rs"
@@ -9041,7 +9387,8 @@
"github.com/snes9xgit/snes9x@85591435763dede7ef111aab8070cdf2d5a7da49": [
"bsx.cpp",
"libretro/libretro.cpp",
- "memmap.cpp"
+ "memmap.cpp",
+ "snes9x.h"
],
"github.com/snes9xgit/snes9x@b33f2afb33c61d675aaf0319bd3b8cc8d6924d49": [
"bsx.cpp",
@@ -9077,6 +9424,7 @@
"Src/SprowCoPro.cpp",
"Src/SprowCoPro.h",
"Src/Tube.cpp",
+ "Src/Version.h",
"Src/Video.cpp",
"Src/Z80Support.cpp",
"UserData/Roms_Torch.cfg"
@@ -9098,6 +9446,7 @@
"src/os/windows/OSystemWINDOWS.cxx"
],
"github.com/stella-emu/stella@408dd6a30cc6fd91decc602403281c7dcfbc1b82": [
+ "src/common/Version.hxx",
"src/emucore/CartAR.cxx",
"src/emucore/KidVid.cxx"
],
@@ -9117,6 +9466,7 @@
"src/core/system.cpp"
],
"github.com/suijingfeng/vkQuake3@650bd625eb725446279c6176804b554e2e1c98f3": [
+ "Makefile",
"code/qcommon/files.c",
"code/qcommon/q_shared.h",
"code/qcommon/qcommon.h",
@@ -9131,6 +9481,7 @@
"github.com/sydarn/yabause@a40dace1ae0af3ebd45848549fdf396f40e3930f": [
"yabause/CMakeLists.txt",
"yabause/src/config.h.in",
+ "yabause/src/libretro/Makefile.common",
"yabause/src/libretro/libretro.c",
"yabause/src/memory.c",
"yabause/src/memory.h",
@@ -9152,6 +9503,7 @@
],
"github.com/timoinutilis/lowres-nx@63d5988f74e1eea2ecd6ea0445a8ce260b0a9822": [
"core/boot_intro.c",
+ "core/core.h",
"libretro/libretro_main.c"
],
"github.com/tom-seddon/b2@e1c9b84a9460909d4dc2030ad1d4e050012b1910": [
@@ -9162,7 +9514,9 @@
"src/b2/roms.cpp"
],
"github.com/tonioni/WinUAE@15110cf6606d1188800ea7ad86bf1cbd9c688741": [
+ "CMakeLists.txt",
"cfgfile.cpp",
+ "include/winuae_version.h",
"memory.cpp",
"od-win32/win32.cpp",
"od-win32/win32gui.cpp",
@@ -9197,6 +9551,7 @@
],
"github.com/trngaje/advanced_drastic@eaf41ab9bc8adcc15c010bf9517bc94c38e7bffd": [
"README.md",
+ "drastic",
"launch.sh"
],
"github.com/trzy/Supermodel@0eef09ba2b74e48fd5cfd388ee69a3743fd5f618": [
@@ -9242,6 +9597,7 @@
"Src/Version.h"
],
"github.com/usineur/hode@59f3c466923c6b8d49e29176ff697a91165e7efc": [
+ "CMakeLists.txt",
"README.txt",
"fs_posix.cpp",
"main.cpp",
@@ -9258,6 +9614,7 @@
"libretro.cpp"
],
"github.com/visualboyadvance-m/visualboyadvance-m@46cc9f6bda114737e99304a4bd8427c038e63084": [
+ "CHANGELOG.md",
"src/core/gba/gba.cpp",
"src/libretro/libretro.cpp"
],
@@ -9298,6 +9655,7 @@
"src/core/VPApp.cpp",
"src/core/player.cpp",
"src/core/stdafx.h",
+ "src/core/vpversion.h",
"src/parts/bumper.cpp",
"src/parts/decal.cpp",
"src/parts/kicker.cpp",
@@ -9317,6 +9675,7 @@
],
"github.com/warmenhoven/Emir@8174cbbeea4070654841cdd4604361b3eee8fdd1": [
".github/workflows/build.yaml",
+ "CMakeLists.txt",
"apps/ymir-libretro/src/libretro.cpp",
"apps/ymir-sdl3/CMakeLists.txt",
"apps/ymir-sdl3/src/app/app.cpp",
@@ -9331,6 +9690,9 @@
"libs/ymir-core/include/ymir/sys/memory_defs.hpp",
"libs/ymir-core/src/ymir/db/ipl_db.cpp"
],
+ "github.com/warmenhoven/amiarcadia@8ca27c925833fe0021475155512c7f467924f647": [
+ "DroidArcadia/app/src/main/cpp/da.h"
+ ],
"github.com/warmenhoven/tia@6ae5bf998fe7a7842294089db17fc86fd73db1f0": [
"Makefile",
"src/cart.c",
@@ -9394,6 +9756,7 @@
"Source/Core/DolphinQt/MenuBar.cpp"
],
"github.com/white-axe/mkxp-z@650cb0888a07d0b5044e131160ddfa53feaf595b": [
+ "meson.build",
"src/core.cpp",
"src/display/font.cpp"
],
@@ -9460,6 +9823,7 @@
"code/sys/sys_win32.c"
],
"github.com/wzcwzc/emuscv@6d6e4594d79862dd5c2ff7f725c109e4266f0b03": [
+ "Makefile.libretro",
"src/vm/scv/memory.cpp",
"src/vm/scv/memory.h"
],
@@ -9591,6 +9955,7 @@
],
"github.com/ymir-emu/Ymir@8174cbbeea4070654841cdd4604361b3eee8fdd1": [
".github/workflows/build.yaml",
+ "CMakeLists.txt",
"apps/ymir-libretro/src/libretro.cpp",
"apps/ymir-sdl3/CMakeLists.txt",
"apps/ymir-sdl3/src/app/app.cpp",
@@ -9607,6 +9972,7 @@
],
"github.com/ymir-emu/Ymir@fe439e98abc555c243a8a197850c71777ff664f4": [
".github/workflows/build.yaml",
+ "CMakeLists.txt",
"apps/ymir-sdl3/CMakeLists.txt",
"apps/ymir-sdl3/src/app/app.cpp",
"apps/ymir-sdl3/src/app/profile.cpp",
@@ -9621,6 +9987,7 @@
"libs/ymir-core/src/ymir/db/ipl_db.cpp"
],
"github.com/yonkuma/piemu@0785214f13746bdfd709b1909f007e213b470ba1": [
+ "app.h",
"piemu.c",
"tools/mkpfi.c"
],
@@ -9630,6 +9997,7 @@
],
"github.com/yuzu-emu-mirror/yuzu@15e6e48bef0216480661444a8d8b348c1cca47bb": [],
"github.com/zelurker/raine@8e25d5d8907ae459181610912b0030c955683015": [
+ "makefile",
"source/emudx.c",
"source/emumain.c",
"source/files.c",
@@ -9656,6 +10024,7 @@
"src/libretro/core.h"
],
"gitlab.com/DavidGriffith/frotz@042d7bcadc1e2a8090cf737c841d8b7fc14b6eff": [
+ "Makefile",
"src/sdl/sf_deffont.c",
"src/sdl/sf_fonts.c",
"src/sdl/sf_resource.c"
@@ -9696,9 +10065,11 @@
"src/fileio/CExeFile.cpp",
"src/fileio/CPatcher.cpp",
"src/fileio/CTileLoader.cpp",
- "src/fileio/KeenFiles.h"
+ "src/fileio/KeenFiles.h",
+ "version.h"
],
"gitlab.com/MaaaX-EPOCH84/libretro-emucv@6a6e1b15c5d5afefbc3fefdd8b52f3f2c8c0a0eb": [
+ "CMakeLists.txt",
"src/common.cpp",
"src/core.cpp",
"src/emu.cpp",
@@ -9728,6 +10099,7 @@
"gitlab.com/jengun/sdltrs@205ddfd78fd00b32b3f730453175dbd70782ce79": [
"CMakeLists.txt",
"README.md",
+ "configure.ac",
"src/trs_cassette.c",
"src/trs_chars.c",
"src/trs_clones.c",
@@ -9748,7 +10120,8 @@
],
"gitlab.com/jgemu/bsnes@53e6a7c2ec4b4220adc2f8dcb3786489bd04fe0e": [
"src/cartridge.cpp",
- "src/coprocessor/icd.cpp"
+ "src/coprocessor/icd.cpp",
+ "version.h"
],
"gitlab.com/jgemu/geolith@05ddef568212e7225ceec22f3ecb20b5a9b640e6": [
"jg.c",
@@ -9760,7 +10133,8 @@
"src/jcv_coleco.c",
"src/jcv_crvision.c",
"src/jcv_db.c",
- "src/jollycv.c"
+ "src/jollycv.c",
+ "version.h"
],
"gitlab.com/jgemu/nestopia@b3adbeb42482e979ab99e16bcd9a22480f13479f": [],
"gitlab.com/parallel-launcher/parallel-launcher@8dc2a83770c57bc00e1b1fae0aed71f2120cc875": [
@@ -9768,6 +10142,7 @@
"src/core/rom-finder.cpp",
"src/core/settings.hpp",
"src/core/updates.cpp",
+ "src/core/version.cpp",
"src/main.cpp",
"src/rhdc/core/sync.cpp",
"src/ui/main-window.cpp",
@@ -9814,6 +10189,7 @@
"source/Video.cpp"
],
"gitlab.com/solarus-games/solarus@49d1d4686f67ec81c86c90ca30279a4ce06b1729": [
+ "CMakeLists.txt",
"cmake/AddDefines.cmake",
"cmake/AddInstallDirs.cmake",
"cmake/AddInstallTargets.cmake",
@@ -9824,6 +10200,7 @@
],
"gitlab.com/solarus-games/solarus@86fa2031e1303aaaf9924a2f03dfdb7b7d1cbf4b": [
".gitlab-ci.yml",
+ "CMakeLists.txt",
"cmake/AddDefines.cmake",
"cmake/AddInstallDirs.cmake",
"cmake/AddInstallTargets.cmake",
From 8cbd7204807ff29ebfb8d8239311c533193df489 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:32:51 +0100
Subject: [PATCH 16/34] docs: say what a SHA1 lookup leaves out
The Data page said a SHA1 lookup was enough because MD5 and CRC32 declarations are filed under the collection file's SHA1 too. That holds only for a file the collection holds: 702 platform MD5s and 18 CRC32s are filed under their own value alone.
---
scripts/generate_site.py | 8 +++++---
tests/test_site_reference.py | 17 +++++++++++++++++
2 files changed, 22 insertions(+), 3 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index f595f438b..eef11d4f8 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -2191,9 +2191,11 @@ def generate_data_page(exports: list[dict], measurements_sqlite: Path | None = N
"when one is known, the `system_name` the site gives its system. "
"[Find or check a file](files/index.md) reads it.",
"",
- "In a browser, the SHA1 of a file the reader picks finds its records. Web "
- "Crypto has no MD5, and none is needed: a setup that lists a file by MD5 "
- "or CRC32 is filed under the SHA1 of the collection file it names too.",
+ "In a browser, the SHA1 of a file the reader picks finds its records when "
+ "the collection holds that file. A list naming a file the collection lacks "
+ "is filed under its MD5 or CRC32 alone, and Web Crypto has no MD5: "
+ "that page computes MD5 and CRC32 in script and looks "
+ "up all four.",
"",
"```js",
"// The records of the file a reader picked, by its SHA1.",
diff --git a/tests/test_site_reference.py b/tests/test_site_reference.py
index e32f4610d..de6080114 100644
--- a/tests/test_site_reference.py
+++ b/tests/test_site_reference.py
@@ -696,6 +696,23 @@ class ManifestsArePublished(unittest.TestCase):
self.assertLess(page.index("## Stable JSON endpoints"), page.index("The DAT is Logiqx XML"))
+class TheLookupRecipeSaysWhatASha1Misses(unittest.TestCase):
+ """The page said a SHA1 lookup was enough, "a setup that lists a file
+ by MD5 or CRC32 is filed under the SHA1 of the collection file it names
+ too". A record whose value no collection file answers has no SHA1: 702
+ platform MD5s were out of the recipe's reach."""
+
+ def test_the_page_and_the_records_agree(self):
+ record = {"layer": "platform", "algorithm": "md5", "value": "0" * 32,
+ "name": "dmg_boot.bin", "owner": "recalbox"}
+ self.assertEqual(generate_site._held_under_every_hash([record], {}, {}), [])
+ self.assertNotIn("sha1", record)
+ page = " ".join(generate_site.generate_data_page([]).split())
+ self.assertNotIn("none is needed", page)
+ self.assertIn("A list naming a file the collection lacks is filed under its MD5 "
+ "or CRC32 alone", page)
+
+
class AnIdLeadsToItsData(unittest.TestCase):
"""8.6: a system by its id, a core by the name the buildbot gives it."""
From 1ad65704682e1831459d03a59fe74aedd7a02320 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:34:00 +0100
Subject: [PATCH 17/34] fix: drop BIOS files from app-only emulator titles
A profile whose every file comes with the app was titled " BIOS files" and described by its system alone. The title now reads " emulator" and the description says every file it reads comes with the app.
---
scripts/generate_site.py | 20 ++++++++++++++++++--
tests/test_site_search.py | 14 ++++++++++++++
2 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index eef11d4f8..169842b1d 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -2445,7 +2445,7 @@ def _browser_title(relative: Path, title: str) -> str:
# The words a web search for a console or an emulator types: "dreamcast
# bios", "duckstation bios". The h1 and the sidebar keep the name.
if key.startswith("emulators/"):
- has_files = PAGE_DATA.get(key, {}).get("hasPart")
+ has_files = PAGE_DATA.get(key, {}).get("hasPart") and key not in NOTHING_TO_FETCH
# Lexaloffle, QEMU and ScummVM name a system page too.
own = " emulator" if f"systems/{relative.name}" in PAGE_DATA else ""
return f"{title}{own} BIOS files" if has_files else f"{title} emulator"
@@ -2555,6 +2555,8 @@ def _emulator_description(markdown: str, key: str, title: str, intro: str) -> st
elif title not in intro:
# "It reads 1 file": the profile names no system to open on.
intro = f"{title}: {intro[:1].lower()}{intro[1:]}"
+ if key in NOTHING_TO_FETCH:
+ return _shorten(f"{intro} Every file it reads comes with the app.", 155)
# An alias page sends the reader to the core whose files it shares.
if PAGE_DATA.get(key, {}).get("hasPart") or "uses the same firmware as" in intro:
return _shorten(intro, 155)
@@ -2625,6 +2627,9 @@ def _system_description(markdown: str, browser: str) -> str:
# Structured data a page generator knows beyond its text, by page path
# relative to docs/: read by decorate_markdown_pages.
PAGE_DATA: dict[str, dict] = {}
+# Emulator pages whose every file comes with the app: no "BIOS files" in
+# their title, and their description says so (DaedalusX64, ZEsarUX).
+NOTHING_TO_FETCH: set[str] = set()
# Pages that hold part of a page too long for one (a console of a split
# manufacturer, a run of an emulator's cards), by path relative to docs/:
# their H1 already says what they are.
@@ -2952,6 +2957,17 @@ def release_versions(profile: dict) -> dict[str, str]:
if re.search(r"[0-9]", value) and not names_a_commit(value)}
+def record_emulator_page(name: str, profile: dict) -> None:
+ """What the title and the description of an emulator page read."""
+ key = f"emulators/{name}.md"
+ PAGE_DATA[key] = emulator_structured_data(profile)
+ listed = [f for f in profile.get("files") or [] if isinstance(f, dict)]
+ if listed and all(comes_with_app(f) for f in listed):
+ NOTHING_TO_FETCH.add(key)
+ else:
+ NOTHING_TO_FETCH.discard(key)
+
+
def emulator_structured_data(profile: dict) -> dict:
"""What an emulator page states, for a reader of its JSON-LD.
@@ -12305,7 +12321,7 @@ def _generate(args: argparse.Namespace) -> None:
name, profile, db, consumers, suppl_names, data_registry,
data_dirs=page_data_directories(name, profiles),
)
- PAGE_DATA[f"emulators/{name}.md"] = emulator_structured_data(profile)
+ record_emulator_page(name, profile)
# A frozen copy answers after the emulator: a frozen_snapshot, and a
# profile pinned to the revision one platform builds (pin_frozen).
# Reicast and Flycast 2021 LE answered "dc bios missing" before Flycast.
diff --git a/tests/test_site_search.py b/tests/test_site_search.py
index ca493590c..e9705738d 100644
--- a/tests/test_site_search.py
+++ b/tests/test_site_search.py
@@ -231,6 +231,20 @@ class Descriptions(unittest.TestCase):
self.assertTrue(text.startswith("DuckStation emulates Sony PlayStation."))
self.assertNotIn("source-pinned", text)
+ def test_a_page_whose_files_come_with_the_app_promises_none(self) -> None:
+ """DaedalusX64's three files come with the app. The result read
+ "DaedalusX64 BIOS files" over "DaedalusX64 emulates Nintendo 64."."""
+ saved, shipped = dict(gs.PAGE_DATA), set(gs.NOTHING_TO_FETCH)
+ self.addCleanup(lambda: (gs.PAGE_DATA.clear(), gs.PAGE_DATA.update(saved),
+ gs.NOTHING_TO_FETCH.clear(), gs.NOTHING_TO_FETCH.update(shipped)))
+ with open(REPO_ROOT / "emulators" / "daedalusx64.yml", encoding="utf-8") as handle:
+ gs.record_emulator_page("daedalusx64", yaml.safe_load(handle))
+ key = Path("emulators/daedalusx64.md")
+ self.assertEqual(gs._browser_title(key, "DaedalusX64"), "DaedalusX64 emulator")
+ body = "# DaedalusX64\n\nDaedalusX64 emulates Nintendo 64.\n"
+ self.assertEqual(gs._page_description(body, key, "DaedalusX64"),
+ "DaedalusX64 emulates Nintendo 64. Every file it reads comes with the app.")
+
def test_a_console_page_is_described_by_its_start_line(self) -> None:
body = "# Sega: Dreamcast\n\nPart of Sega.\n\n**Start with**: `dc_boot.bin`, `dc_flash.bin`.\n"
text = gs._page_description(body, Path("systems/sega-dreamcast.md"), "Sega: Dreamcast")
From 564bfe8b1875cf3d560fcd1a48a0417eaf4b3f18 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:34:19 +0100
Subject: [PATCH 18/34] fix: describe platform pages by what they give
The meta description of each platform page was its summary followed by the label of a link, "ROCKNIX website.", and never said the page gives the BIOS files, their folder and the install command.
---
scripts/generate_site.py | 6 ++++++
tests/test_site_search.py | 10 ++++++++++
2 files changed, 16 insertions(+)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index 169842b1d..d48f812de 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -2516,6 +2516,12 @@ def _page_description(markdown: str, relative: Path, title: str) -> str:
return _system_description(markdown, browser)
if key.startswith("emulators/") and relative.stem != "index":
return _emulator_description(markdown, key, title, _first_paragraph(lead))
+ if key.startswith("platforms/") and relative.stem != "index":
+ # The summary ends on a link to the platform's site, whose label
+ # alone was left: "A system for handhelds. ROCKNIX website."
+ summary = _first_paragraph(lead).removesuffix(f" {title} website.")
+ return _shorten(f"The BIOS files for {title}, the folder they go in and the "
+ f"command that installs them. {summary}", 155)
first = _first_paragraph(lead, minimum=35)
questions = [_plain_markdown(re.sub(r"\s*\{[^}]*\}\s*$", "", heading))
for heading in re.findall(r"^## (.+\?)(?:[ \t]*\{[^}]*\})?[ \t]*$", markdown, re.M)]
diff --git a/tests/test_site_search.py b/tests/test_site_search.py
index e9705738d..32dbcd683 100644
--- a/tests/test_site_search.py
+++ b/tests/test_site_search.py
@@ -245,6 +245,16 @@ class Descriptions(unittest.TestCase):
self.assertEqual(gs._page_description(body, key, "DaedalusX64"),
"DaedalusX64 emulates Nintendo 64. Every file it reads comes with the app.")
+ def test_a_platform_page_says_what_it_gives(self) -> None:
+ """All 18 ended on the label of a link a snippet cannot follow,
+ "ROCKNIX website.", and never named the BIOS files or their folder."""
+ body = ("# ROCKNIX\n\nA system for handhelds. [ROCKNIX website](https://rocknix.org).\n\n"
+ "## On the device { #install }\n")
+ self.assertEqual(
+ gs._page_description(body, Path("platforms/rocknix.md"), "ROCKNIX"),
+ "The BIOS files for ROCKNIX, the folder they go in and the command that installs "
+ "them. A system for handhelds.")
+
def test_a_console_page_is_described_by_its_start_line(self) -> None:
body = "# Sega: Dreamcast\n\nPart of Sega.\n\n**Start with**: `dc_boot.bin`, `dc_flash.bin`.\n"
text = gs._page_description(body, Path("systems/sega-dreamcast.md"), "Sega: Dreamcast")
From d63ef4b1cfac2efa511ea5ea6e1927df5dc64b77 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:34:41 +0100
Subject: [PATCH 19/34] fix: keep an initial inside the note sentence
The emulator description taken from the notes cut at the first period followed by a space, so hcl's read "open-source port of E.".
---
scripts/generate_site.py | 4 +++-
tests/test_site_search.py | 10 ++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index d48f812de..e9d0dec0e 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -2547,7 +2547,9 @@ def _emulator_description(markdown: str, key: str, title: str, intro: str) -> st
its profile table when the profile names no system."""
notes = re.search(r"Technical notes\s*\n\n(.+?)(?:\n\n|$)", markdown, re.S)
if not intro and notes:
- sentence = re.split(r"(?<=\.)\s", _plain_markdown(notes[1]), maxsplit=1)[0]
+ # An initial is no sentence end: hcl's read "open-source port of E."
+ sentence = re.split(r"(? None:
+ """hcl's description was "Hydra Castle Labyrinth: open-source port of E."."""
+ body = ("# Hydra Castle Labyrinth\n\n\nTechnical notes
\n\n"
+ "Open-source port of E. Hashimoto's 2008 freeware Metroidvania. It reads "
+ "its data folder.\n\n \n")
+ text = gs._emulator_description(body, "emulators/hcl.md", "Hydra Castle Labyrinth", "")
+ self.assertTrue(text.startswith("Hydra Castle Labyrinth: open-source port of E. "
+ "Hashimoto's 2008 freeware Metroidvania."), text)
+ self.assertNotIn("It reads", text)
+
def test_a_platform_page_says_what_it_gives(self) -> None:
"""All 18 ended on the label of a link a snippet cannot follow,
"ROCKNIX website.", and never named the BIOS files or their folder."""
From 124e96cd09849c5c5d5e80f2cff8c909eac61365 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:35:32 +0100
Subject: [PATCH 20/34] fix: keep glossary tooltips out of proper names
The glossary's capitalised terms matched mostly inside product names and paths: Free Unix Spectrum Emulator, Windows Terminal, Documents/Dolphin Emulator, on 35 pages. A capitalised term after a capitalised word or a slash is now left alone. Acronyms keep their tooltip.
---
scripts/sitestarlight.py | 13 ++++++++++++-
tests/test_site_render.py | 21 +++++++++++++++++++++
2 files changed, 33 insertions(+), 1 deletion(-)
diff --git a/scripts/sitestarlight.py b/scripts/sitestarlight.py
index bf532b9f5..f4ffbf027 100644
--- a/scripts/sitestarlight.py
+++ b/scripts/sitestarlight.py
@@ -244,10 +244,21 @@ def _tooltip_line(line: str, pattern: re.Pattern, pending: dict[str, str]) -> st
return "".join(out)
+_NAME_BEFORE = re.compile(r"(?:/|\b[A-Z][\w'-]*[ \t]+)$")
+
+
+def _in_proper_name(term: str, before: str) -> bool:
+ """A capitalised term after a capitalised word or a slash is part of a
+ name: Free Unix Spectrum Emulator, Windows Terminal, Documents/Dolphin
+ Emulator. An acronym (BIOS, ZIP) is the term wherever it stands."""
+ first = term.split()[0]
+ return first[:1].isupper() and not first.isupper() and bool(_NAME_BEFORE.search(before))
+
+
def _tooltip_text(text: str, pattern: re.Pattern, pending: dict[str, str]) -> str:
def swap(match: re.Match) -> str:
term = match.group(1)
- if term not in pending:
+ if term not in pending or _in_proper_name(term, text[:match.start()]):
return term
definition = pending.pop(term)
return f'{term}'
diff --git a/tests/test_site_render.py b/tests/test_site_render.py
index e943dffde..eebcaf79d 100644
--- a/tests/test_site_render.py
+++ b/tests/test_site_render.py
@@ -484,3 +484,24 @@ class AMemberIsReadInItsArchive(unittest.TestCase):
lambda _f: True, owner="fbneo"))
self.assertIn("Collection copy: member `sm1.sm1` of", rows)
self.assertIn(shipped, rows)
+
+
+class NoTooltipInsideAName(unittest.TestCase):
+ """The glossary's capitalised terms matched almost only product names:
+ Free Unix Spectrum Emulator, Windows Terminal, Documents/Dolphin Emulator."""
+
+ def test_names_are_left_and_terms_are_marked(self):
+ import sitestarlight
+
+ terms = {"Emulator": "An app that acts like a console.",
+ "Terminal": "A window where you type commands.",
+ "BIOS": "The console's built-in software."}
+ for line in ("Fuse (Free Unix Spectrum Emulator) reads it.",
+ "Open Windows Terminal (WSL).",
+ "Copy it to Documents/Dolphin Emulator/Sys."):
+ with self.subTest(line=line):
+ self.assertNotIn("rb-term", sitestarlight.add_tooltips(line, terms))
+ marked = sitestarlight.add_tooltips(
+ "Emulator settings come first. The PlayStation BIOS goes there.", terms)
+ self.assertIn('title="An app that acts like a console.">Emulator', marked)
+ self.assertIn('>BIOS', marked)
From 32cc1ce4fa42270fee774d815b43c0cf57129c5b Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:46:22 +0100
Subject: [PATCH 21/34] fix: render a single tab without a tab bar
142 tab bars held one tab, most of them "On the device" under a heading saying so. One item now stands alone, led by its label unless it names the place the text around already gives. The network route drops "Run the command on the computer" under the heading "From your computer", which keeps RetroPie in its word budget.
---
scripts/generate_site.py | 2 +-
scripts/siteguides.py | 6 ++++++
scripts/sitemarkup.py | 11 ++++++++++-
tests/test_site_components.py | 16 ++++++++++++++++
tests/test_site_emulators.py | 4 +++-
tests/test_site_entry.py | 4 +++-
6 files changed, 39 insertions(+), 4 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index e9d0dec0e..9b23dc852 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -4202,7 +4202,7 @@ def _setup_routes(name: str, display: str, page_link: bool = False) -> list[str]
# lines are on the get/ page, the one the command is shared from.
tabs = ("windows",) if page_link else ("windows", "macos", "linux")
computer += [
- "Needs the device on your network. Run the command on the computer.",
+ "Needs the device on your network.",
"",
*terminal_tabs(tabs, args, how=how),
*([f"[Mac or Linux](../{get_page_link(name)}#from-your-computer)", ""]
diff --git a/scripts/siteguides.py b/scripts/siteguides.py
index 0436ca768..786653620 100644
--- a/scripts/siteguides.py
+++ b/scripts/siteguides.py
@@ -454,6 +454,10 @@ def fence(shell: str, command: str, indent: str = "") -> list[str]:
return [f'{indent}```{shell} title="{FENCE_TITLES[shell]}"', f"{indent}{command}", f"{indent}```"]
+# Terminals named by where the command runs, not by the system it runs on.
+PLACES = ("device", "server")
+
+
def terminal_tabs(
tabs: tuple[str, ...], args: dict[str, str], indent: str = "", steps: bool = True,
how: dict[str, str] | None = None,
@@ -465,6 +469,8 @@ def terminal_tabs(
items = []
for key in tabs:
label, shared, shell = TERMINALS[key]
+ if len(tabs) == 1 and key in PLACES:
+ label = "" # one place, which the text around already names
text = (how or {}).get(key) or shared
body = [text, ""] if steps else []
items.append((label, body + fence(shell, install_command(shell, args.get(key, "")))))
diff --git a/scripts/sitemarkup.py b/scripts/sitemarkup.py
index cbd995606..e440d5cc5 100644
--- a/scripts/sitemarkup.py
+++ b/scripts/sitemarkup.py
@@ -139,8 +139,17 @@ def details(kind: str, title: str, body: list[str], indent: str = "", opened: bo
def tabs(items: list[tuple[str, list[str]]], indent: str = "", sync: str = "os") -> list[str]:
"""Content tabs. Tabs that share a label share the reader's choice
- across pages."""
+ across pages.
+
+ One item is no choice: 142 bars offered a single tab, most of them
+ "On the device" under a heading that says so. Its body stands alone,
+ led by its label when it has one: the RetroPie card is read from Linux
+ only, and the label is where the page said so."""
lines: list[str] = []
+ if len(items) == 1:
+ label, body = items[0]
+ lead = [f"{indent}**{label}**", ""] if label else []
+ return [*lead, *_indented(_trim(body), indent), ""]
if _engine == "mkdocs":
for label, body in items:
lines += [f'{indent}=== "{label}"', "", *_indented(_trim(body), indent + " "), ""]
diff --git a/tests/test_site_components.py b/tests/test_site_components.py
index 20e06fd29..17fe94afb 100644
--- a/tests/test_site_components.py
+++ b/tests/test_site_components.py
@@ -334,6 +334,22 @@ class NoLevelBadgeOnATabRoot(unittest.TestCase):
self.assertNotIn('class="rb-level ', _title_through_heading(_built(page)))
+class OneTabIsNoTabBar(unittest.TestCase):
+ """142 tab bars held one tab, most of them "On the device" right under
+ the heading "On the device"."""
+
+ def test_a_single_item_stands_alone(self):
+ import sitemarkup
+ import siteguides
+
+ self.assertEqual(sitemarkup.tabs([("Linux", ["run it"])]), ["**Linux**", "", "run it", ""])
+ self.assertEqual(sitemarkup.tabs([("", ["run it"])]), ["run it", ""])
+ self.assertIn('', sitemarkup.tabs([("A", ["a"]), ("B", ["b"])]))
+ device = "\n".join(siteguides.terminal_tabs(("device",), {}))
+ self.assertNotIn("")]
self.assertRegex(install, r"With [^:]+: the installer finds")
- self.assertEqual(set(re.findall(r'', install)), {"On the device"})
+ # One place to run it, so no tab bar (one tab offers no choice).
+ self.assertNotIn("
Date: Thu, 5 Nov 2026 19:49:22 +0100
Subject: [PATCH 22/34] fix: link the check commands from the pack pages
The get pages told a reader on another setup version to run `--check` after copying, with no command and no link, to someone holding a ZIP and no installer. The line now links the setup page's How to check section.
---
scripts/generate_site.py | 21 ++++++++++++++-------
tests/test_site_entry.py | 12 ++++++++++--
2 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index 9b23dc852..108b77a01 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -679,9 +679,13 @@ def release_line(platform_name: str, record: dict) -> list[str]:
return lines
-# What a reader on another version of the setup does with the pack. Our data
-# says which list the pack was made from, not what an older list lacks.
-OTHER_VERSION = "Other version? Run `--check` after copying."
+def other_version(platform_name: str, prefix: str = "../") -> str:
+ """What a reader on another version of the setup does with the pack.
+ Our data says which list the pack was made from, not what an older list
+ lacks. A bare `--check` was no command to run for someone holding a ZIP:
+ the line links the setup page's commands that check."""
+ target = f"{prefix}platforms/{platform_name}.md#how-to-check"
+ return f"Other version? [Check the files]({target}) after copying."
def setup_version(platform_name: str, record: dict | None = None) -> str:
@@ -700,13 +704,15 @@ def setup_version(platform_name: str, record: dict | None = None) -> str:
return f"{config.get('platform', platform_name)} {version.removeprefix('v')}"
-def version_line(platform_name: str, record: dict, named: bool = False) -> str:
+def version_line(platform_name: str, record: dict, named: bool = False,
+ prefix: str = "../") -> str:
"""The version the pack fits, and what to do on another. *named* when
the release line already named the pack's version."""
made_from = setup_version(platform_name, record)
+ other = other_version(platform_name, prefix)
if named or not made_from:
- return OTHER_VERSION
- return f"Made for {made_from}. {OTHER_VERSION}"
+ return other
+ return f"Made for {made_from}. {other}"
# Why a setup has no ZIP, answered once on the FAQ.
@@ -793,7 +799,8 @@ def _pack_buttons(platform_name: str, label: str = "Pack", prefix: str = "../",
)
released = release_line(platform_name, record)
return "\n\n".join([buttons, *released,
- version_line(platform_name, record, named=len(released) > 1)])
+ version_line(platform_name, record, named=len(released) > 1,
+ prefix=prefix)])
def generate_get_page(platform_name: str) -> str:
diff --git a/tests/test_site_entry.py b/tests/test_site_entry.py
index 5e1344f39..032f5d67d 100644
--- a/tests/test_site_entry.py
+++ b/tests/test_site_entry.py
@@ -443,14 +443,22 @@ class PackNamesItsVersion(unittest.TestCase):
block = generate_site._pack_buttons("batocera")
version = generate_site._pack_version(release_record.pack_name_for("batocera", record))
self.assertIn(f"Made for Batocera {version}. "
- + generate_site.OTHER_VERSION, block)
+ + generate_site.other_version("batocera"), block)
def test_a_version_gap_is_said_once(self):
record = {"tag": "v2026.10.10", "packs": {"RetroBat_1.0_BIOS_Pack.zip": {
"assets": ["RetroBat_1.0_BIOS_Pack.zip"], "platforms": ["retrobat"]}}}
released = generate_site.release_line("retrobat", record)
line = generate_site.version_line("retrobat", record, named=len(released) > 1)
- self.assertEqual(line, generate_site.OTHER_VERSION)
+ self.assertEqual(line, generate_site.other_version("retrobat"))
+
+ def test_another_version_is_sent_to_the_check_commands(self):
+ """A ZIP reader read "Run `--check` after copying." with no command."""
+ line = generate_site.other_version("emudeck")
+ self.assertNotIn("Run `--check`", line)
+ self.assertIn("](../platforms/emudeck.md#how-to-check)", line)
+ page = _page("platforms/emudeck.md")
+ self.assertIn("{ #how-to-check }", page)
def test_the_v_prefix_is_dropped(self):
self.assertEqual(generate_site.setup_version("retroarch", {}),
From 3002bc5ef662f9a623164f55c5ea37e3ec0cb200 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:50:34 +0100
Subject: [PATCH 23/34] docs: state the yabause upstream as a dated fact
"Upstream project is dead" was a verdict published on the emulator page. The note now gives the date of the last commit on Yabause/yabause master, 2018-07-07 (7e38821d).
---
emulators/yabause.yml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/emulators/yabause.yml b/emulators/yabause.yml
index 9e4473539..2140005e7 100644
--- a/emulators/yabause.yml
+++ b/emulators/yabause.yml
@@ -17,9 +17,9 @@ systems:
- sega-saturn
notes: |
- Yabause is a software-rendered Sega Saturn emulator. Upstream project is
- dead. The libretro port is maintained by the community on the master branch of
- libretro/yabause.
+ Yabause is a software-rendered Sega Saturn emulator. The last commit on the
+ master branch of Yabause/yabause is from 2018-07-07. The libretro port is
+ maintained by the community on the master branch of libretro/yabause.
Saturn BIOS search order:
1. {system}/saturn_bios.bin
From 43e125bede036fc3a3d69bcc4b2928d5015abe52 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:50:48 +0100
Subject: [PATCH 24/34] docs: state the libretro Gearboy fork as facts
"abandoned fork frozen at v2.6.0 from 2018" was a verdict, and the fork took a commit on 2026-09-04. The note now says it is archived, quotes its description and the version its src/definitions.h states.
---
emulators/gearboy.yml | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/emulators/gearboy.yml b/emulators/gearboy.yml
index d1a091cb3..e8b472e38 100644
--- a/emulators/gearboy.yml
+++ b/emulators/gearboy.yml
@@ -19,8 +19,9 @@ systems:
notes: |
Gearboy is a Game Boy / Game Boy Color emulator by drhelius (Ignacio Sanchez).
- The buildbot builds from drhelius/Gearboy (upstream), not from libretro/Gearboy
- (abandoned fork frozen at v2.6.0 from 2018).
+ The buildbot builds from drhelius/Gearboy (upstream), not from libretro/Gearboy,
+ an archived fork (its description reads "NOTE: PUBLIC ARCHIVE") whose
+ src/definitions.h states version 2.6.0.
Bootrom loading is gated behind core options (disabled by default).
Without bootroms, the core HLE-skips the boot animation.
From ac98a1fe8aa52897a19a08523a4b93ad0c474557 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:51:57 +0100
Subject: [PATCH 25/34] docs: replace project verdicts in profiles
pcsx1, rustation and np2kai called a project abandoned, dead or never completed. Each now gives the date of the last commit or the project's own words, and a test refuses the verdicts yabause and gearboy carried too.
---
emulators/np2kai.yml | 2 +-
emulators/pcsx1.yml | 2 +-
emulators/rustation.yml | 2 +-
tests/test_prose_style.py | 16 ++++++++++++++++
4 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/emulators/np2kai.yml b/emulators/np2kai.yml
index 2ccbae0a4..570372fc2 100644
--- a/emulators/np2kai.yml
+++ b/emulators/np2kai.yml
@@ -16,7 +16,7 @@ cores: [np2kai]
systems: [pc-98]
# NP2kai is a PC-9801/9821 emulator by AZO234, enhanced fork of Neko Project II
-# by Yui (original upstream dead: np2.yui.ne.jp). All files load from
+# by Yui (original site: np2.yui.ne.jp). All files load from
# /np2kai/ subdirectory, set in retro_load_game()
# (sdl/libretro/libretro.c:1800-1815). All getbiospath() calls resolve
# relative to that directory.
diff --git a/emulators/pcsx1.yml b/emulators/pcsx1.yml
index 4cfba40bf..6191bc337 100644
--- a/emulators/pcsx1.yml
+++ b/emulators/pcsx1.yml
@@ -15,7 +15,7 @@ display_name: "Sony - PlayStation (PCSX1)"
cores: [pcsx1]
systems: [sony-playstation]
notes: >
- Never-completed fork of PCSX-ReARMed targeting general PC hardware. Experimental, abandoned since 2018.
+ Fork of PCSX-ReARMed targeting general PC hardware. The last commit on libretro/pcsx1-libretro is from 2018-02-11.
HLE BIOS built-in: if no BIOS file found, core warns and falls back to HLE automatically.
BIOS search order: scph1001.bin, scph5501.bin, scph7001.bin by exact filename, then scans system
directory for any file matching "scph*" (case-insensitive) with size == 512 KB.
diff --git a/emulators/rustation.yml b/emulators/rustation.yml
index 699ba38e5..477fec99b 100644
--- a/emulators/rustation.yml
+++ b/emulators/rustation.yml
@@ -30,7 +30,7 @@ notes: >
Database contains 24 entries (22 good, 2 known-bad rejected)
covering BIOS versions 1.0 through 4.5.
.info declares firmware_count=0, while the core reads the BIOS images this profile lists.
- Project abandoned, superseded by rustation-ng.
+ Its README says it is no longer developed and points to rustation-ng.
files:
# -- Region: Japan --
diff --git a/tests/test_prose_style.py b/tests/test_prose_style.py
index 490b63b83..650e57ecd 100644
--- a/tests/test_prose_style.py
+++ b/tests/test_prose_style.py
@@ -308,6 +308,22 @@ class ProfilesStateFactsAboutOtherProjects(unittest.TestCase):
]
self.assertEqual(offenders, [], "\n".join(offenders[:40]))
+ # A project's state is a dated fact or its own words, never a verdict:
+ # "Upstream project is dead" (yabause), "abandoned fork" (gearboy).
+ PROJECT_VERDICTS = re.compile(
+ r"\b(?:(?:project|upstream)(?:\s+project)?\s+(?:is\s+)?dead|"
+ r"abandoned\s+(?:fork|since)|project\s+abandoned|never-completed)\b",
+ re.IGNORECASE,
+ )
+
+ def test_no_verdict_on_a_project(self):
+ offenders = [
+ f"{path.relative_to(ROOT)}: {found.group(0)}"
+ for path in sorted((ROOT / "emulators").glob("*.yml"))
+ for found in self.PROJECT_VERDICTS.finditer(path.read_text(encoding="utf-8"))
+ ]
+ self.assertEqual(offenders, [], "\n".join(offenders[:40]))
+
def test_no_grade_on_another_projects_file(self):
offenders = [
f"{path.relative_to(ROOT)}: {line.strip()[:100]}"
From 133afc1df6be3686628d2251304884c7d8cf6bf8 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:53:45 +0100
Subject: [PATCH 26/34] docs: say the pack copies each ZIP byte for byte
Since fed03c3db _add_zip_to_pack copies every archive of the collection as is. architecture.md and tools.md still said MAME and FBNeo romsets were rebuilt deterministically, so a third party rebuilding neogeo.zip to compare would read a sound pack as corrupt.
---
tests/test_deterministic_zip.py | 15 +++++++++++++++
wiki/architecture.md | 18 +++++++++---------
wiki/tools.md | 2 +-
3 files changed, 25 insertions(+), 10 deletions(-)
diff --git a/tests/test_deterministic_zip.py b/tests/test_deterministic_zip.py
index d5f094812..359f508c2 100644
--- a/tests/test_deterministic_zip.py
+++ b/tests/test_deterministic_zip.py
@@ -252,6 +252,21 @@ class TestPackDeterminism(unittest.TestCase):
names = {i.filename.rsplit("/", 1)[-1] for i in zf.infolist()}
self.assertIn("romset.zip", names)
+ def test_a_romset_is_the_collection_bytes_and_the_wiki_says_so(self):
+ """The pack copies each ZIP byte for byte since fed03c3db, and the
+ wiki still told a third party to rebuild romsets to compare."""
+ pack = self._build("out1")
+ with zipfile.ZipFile(pack) as zf:
+ member = next(n for n in zf.namelist() if n.endswith("romset.zip"))
+ self.assertEqual(zf.read(member), (self.bios / "romset.zip").read_bytes())
+ root = Path(__file__).resolve().parent.parent / "wiki"
+ for page in ("architecture.md", "tools.md"):
+ with self.subTest(page=page):
+ text = " ".join((root / page).read_text(encoding="utf-8").split())
+ self.assertNotIn("rebuilt deterministically", text)
+ self.assertNotIn("rebuilds MAME", text)
+ self.assertNotIn("Rebuild MAME BIOS ZIPs", text)
+
def test_every_member_carries_the_fixed_epoch(self):
"""A member's date must come from the build's inputs, not its clock.
diff --git a/wiki/architecture.md b/wiki/architecture.md
index bd69cd264..e2cafa57b 100644
--- a/wiki/architecture.md
+++ b/wiki/architecture.md
@@ -280,17 +280,16 @@ being intact: see [verifying a release](release-process.md#verifying-a-release).
Three things make that hold. Generated members (`README.txt`, `manifest.json`)
carry a fixed date rather than the wall clock, and the manifest's `generated`
-field is read from `database.json` instead of the build time. MAME and FBNeo
-romsets are rebuilt deterministically from their ROMs, so a pack does not
-inherit whatever metadata the source archive happened to carry. And every
-member is written with the same fixed date: `ZipFile.write` copies the source
-file's mtime, which is the checkout time for a file from the collection and
-the wall clock for one the build just staged in `tmp/`.
+field is read from `database.json` instead of the build time. Each ZIP of the
+collection, MAME and FBNeo romsets included, is copied byte for byte, so it
+hashes to the SHA1 the install list and the site publish, and git fixes those
+bytes. And every member is written with the same fixed date: `ZipFile.write`
+copies the source file's mtime, which is the checkout time for a file from the
+collection and the wall clock for one the build just staged in `tmp/`.
`tests/test_deterministic_zip.py` builds the same fixture twice and compares
the bytes, for both the platform and the emulator pack paths. Its fixture
-holds a romset, because without one the comparison never reaches the rebuild
-path and passes while the real packs still move.
+holds a ZIP, so the comparison covers the archive copy as well as loose files.
## Collection rules
@@ -383,7 +382,8 @@ resolution.
deploy identity. No workflow builds or publishes a release.
- `safe_extract_zip()` prevents zip-slip path traversal attacks
-- `deterministic_zip` rebuilds MAME ZIPs so same ROMs always produce the same hash
+- a pack copies each ZIP of the collection byte for byte, so every member
+ hashes to the SHA1 the install list publishes
- `crypto_verify.py` and `sect233r1.py` verify 3DS RSA-2048 signatures and AES-128-CBC integrity
- ZIP inner ROM verification via `checkInsideZip()` replicates Batocera's behavior
- `md5_composite()` replicates Recalbox's composite ZIP hash
diff --git a/wiki/tools.md b/wiki/tools.md
index 16173cd99..8514e0b3f 100644
--- a/wiki/tools.md
+++ b/wiki/tools.md
@@ -1325,7 +1325,7 @@ before a release (wiki/release-process.md). Its lines stay in
| `validate_site.py` | Validate rendered metadata, heading order, image alternatives, JSON-LD, local resources, links and fragments, and the page size and search index budgets |
| `romset_recipes.py` | Identify which emulator version an arcade archive matches, and rebuild a pinned archive from ROMs already held |
| `scraper/romset_dat_importer.py` | Fetch and import per-set recipes from MAME `-listxml` or FBNeo DATs into `recipes/`. `--fetch` alone takes the newest MAME release, and FBNeo DATs are refreshed by git blob sha. `--fetch ` reads FBNeo at that tag, branch or commit |
-| `deterministic_zip.py` | Rebuild MAME BIOS ZIPs deterministically (same ROMs = same hash) |
+| `deterministic_zip.py` | The fixed date pack members carry. Its archive rebuild is no longer called by the pack, which copies each ZIP byte for byte |
| `torrentzip.py` | Build TorrentZip archives for MAME/FBNeo ROM sets (archive bytes depend only on contents) |
| `crypto_verify.py` | 3DS RSA signature and AES crypto verification |
| `sect233r1.py` | Pure Python ECDSA verification on sect233r1 curve (3DS OTP cert) |
From 911dea8e4c653042f34690718f4df0d8b2818ad5 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:55:15 +0100
Subject: [PATCH 27/34] docs: state the size proof slots.py counts
architecture.md said a file found by its name claims nothing. Since 2b535525e slots.py counts such a copy (size_exact) when it has the exact size the profile declares and the platform's file another size, as RetroDECK's sgb2.boot.rom shows.
---
tests/test_doc_pages.py | 15 +++++++++++++++
wiki/architecture.md | 6 +++++-
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/tests/test_doc_pages.py b/tests/test_doc_pages.py
index 4a3ef5d69..516c7a5dc 100644
--- a/tests/test_doc_pages.py
+++ b/tests/test_doc_pages.py
@@ -1794,6 +1794,21 @@ class ReportExcerptIsTheRun(unittest.TestCase):
self.assertIn(line, printed)
+class ClaimRuleNamesTheSizeProof(unittest.TestCase):
+ """architecture.md said a file found by its name claims nothing, while
+ slots.py has counted a name-found copy at the declared size against a
+ platform file of another size since 2b535525e."""
+
+ def test_the_page_states_what_slots_counts(self):
+ import slots
+
+ self.assertIn(slots.SIZE_EXACT, slots.PROVEN_STATUSES)
+ page = " ".join((ROOT / "wiki" / "architecture.md").read_text(encoding="utf-8").split())
+ section = page.split("### When both layers claim one destination", 1)[1].split("###", 1)[0]
+ self.assertIn(f"(`{slots.SIZE_EXACT}`)", section)
+ self.assertIn("Two files of equal size are revisions", section)
+
+
class SkipFlagsNameTheSteps(unittest.TestCase):
"""--skip-packs said "add --skip-docs to stop after verify" while 4d and
4e still ran, and the flag table left 8b out of --skip-docs."""
diff --git a/wiki/architecture.md b/wiki/architecture.md
index e2cafa57b..69889c947 100644
--- a/wiki/architecture.md
+++ b/wiki/architecture.md
@@ -180,7 +180,11 @@ A platform and an emulator profile can each name a different file for the same
place in the BIOS folder: RetroBat puts its own `ATARIOSB.ROM` at
`bios/ATARIOSB.ROM`, where atari800 reads another dump. A claim counts only when
it rests on content or on the path. A file found by its name alone claims
-nothing. The pack then answers to whoever asked for it:
+nothing, unless its copy has the exact size the profile declares and the
+platform's file has another size (`size_exact`): RetroDECK's `sgb2.boot.rom` is
+the Super Game Boy 2 SNES program ROM where supersnes9x reads a 256-byte boot ROM.
+Two files of equal size are revisions, not a conflict. The pack then answers to
+whoever asked for it:
- A **platform pack** must leave the frontend's own check green, since a user
reading red concludes the pack is broken. Where the frontend only looks for
From 71457078e69fd2675cdcf446b2bee172ff67039e Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:55:39 +0100
Subject: [PATCH 28/34] docs: state the cross-reference settlement rule
reading-reports.md said the cross-reference checks whether a profile's files appear in the platform config, a rule by name. Since 2026-10-10 declaration_settles counts a declaration only at the core's slot or at a size the core accepts, and an alias only where the core reads it.
---
tests/test_doc_pages.py | 20 ++++++++++++++++++++
wiki/reading-reports.md | 9 +++++++--
2 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/tests/test_doc_pages.py b/tests/test_doc_pages.py
index 516c7a5dc..fa33f91ee 100644
--- a/tests/test_doc_pages.py
+++ b/tests/test_doc_pages.py
@@ -1809,6 +1809,26 @@ class ClaimRuleNamesTheSizeProof(unittest.TestCase):
self.assertIn("Two files of equal size are revisions", section)
+class CrossReferenceSettlesBySlotAndSize(unittest.TestCase):
+ """reading-reports.md said the cross-reference checks whether a profile's
+ files "appear in the platform config", a by-name rule, while verify
+ settles a file only at its slot or at a size the core accepts."""
+
+ def test_the_page_states_the_rule_verify_reads(self):
+ from validation import declaration_settles
+
+ rom1 = {"name": "ROM1.BIN", "size": 32768, "validation": ["size"]}
+ self.assertFalse(declaration_settles(rom1, "ROM1.BIN", {"ROM1.BIN": [(4096, "rom1.bin")]},
+ dest="dosbox/ROM1.BIN"))
+ self.assertTrue(declaration_settles(rom1, "ROM1.BIN", {"ROM1.BIN": [(32768, "rom1.bin")]},
+ dest="dosbox/ROM1.BIN"))
+ page = " ".join((ROOT / "wiki" / "reading-reports.md").read_text(encoding="utf-8").split())
+ section = page.split("### Cross-reference section", 1)[1].split("###", 1)[0]
+ self.assertIn("declaration_settles()", section)
+ self.assertIn("A name alone is not enough", section)
+ self.assertNotIn("appear in the platform config", section)
+
+
class SkipFlagsNameTheSteps(unittest.TestCase):
"""--skip-packs said "add --skip-docs to stop after verify" while 4d and
4e still ran, and the flag table left 8b out of --skip-docs."""
diff --git a/wiki/reading-reports.md b/wiki/reading-reports.md
index eda8e261f..8fa9d7fc2 100644
--- a/wiki/reading-reports.md
+++ b/wiki/reading-reports.md
@@ -140,8 +140,13 @@ are still included in packs automatically. A required one the collection lacks
is listed under the counts, and `--verbose` lists the optional ones too.
The cross-reference uses `resolve_platform_cores()` to determine which emulator
-profiles are relevant for each platform, then checks whether each profile's files
-appear in the platform config.
+profiles are relevant for each platform, then checks whether the platform
+already declares each profile's files (`declaration_settles()`). A name alone
+is not enough. The declaration must fill the core's own slot or have a size the
+core accepts: Galaksija's 4 KiB `ROM1.BIN` does not stand for DOSBox's 32 KiB
+SC-55 one. An alias counts only at the path where the core reads it, so
+RetroDECK's root `MSX.ROM` is not CLK's `MSX/MSX.ROM`. An archive counts by its
+name.
### Filtering output
From e9ecef689646f774015e50a1535cc2424dcf33eb Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 19:55:59 +0100
Subject: [PATCH 29/34] docs: name the committed files over 50 MB
release-process.md listed tbblue.mmc, removed from bios/ on 2026-10-20, and left out uqm-remix-disc1.uqm. A test now reads the list against git ls-files.
---
tests/test_doc_pages.py | 20 ++++++++++++++++++++
wiki/release-process.md | 6 +++---
2 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/tests/test_doc_pages.py b/tests/test_doc_pages.py
index fa33f91ee..f238e6d95 100644
--- a/tests/test_doc_pages.py
+++ b/tests/test_doc_pages.py
@@ -1829,6 +1829,26 @@ class CrossReferenceSettlesBySlotAndSize(unittest.TestCase):
self.assertNotIn("appear in the platform config", section)
+class CommittedLargeFilesAreTheOnesNamed(unittest.TestCase):
+ """release-process.md named tbblue.mmc among the committed files over
+ 50 MB two weeks after it left bios/, and not uqm-remix-disc1.uqm."""
+
+ def test_the_list_is_the_tree(self):
+ import subprocess
+
+ listed = subprocess.run(["git", "ls-files", "-z", "bios"], cwd=ROOT, capture_output=True,
+ check=True).stdout.decode("utf-8").split("\0")
+ large = sorted(Path(path).name for path in listed
+ if path and (ROOT / path).is_file()
+ and (ROOT / path).stat().st_size > 50_000_000)
+ page = " ".join((ROOT / "wiki" / "release-process.md").read_text(encoding="utf-8").split())
+ said = re.search(r"Size does not decide it: (\w+) committed files are over 50 MB \(([^)]*)\)",
+ page)
+ self.assertIsNotNone(said)
+ self.assertEqual(sorted(re.findall(r"`([^`]+)`", said.group(2))), large)
+ self.assertEqual(said.group(1), {3: "three", 4: "four", 5: "five"}.get(len(large)))
+
+
class SkipFlagsNameTheSteps(unittest.TestCase):
"""--skip-packs said "add --skip-docs to stop after verify" while 4d and
4e still ran, and the flag table left 8b out of --skip-docs."""
diff --git a/wiki/release-process.md b/wiki/release-process.md
index 9e7746532..250ad6ad7 100644
--- a/wiki/release-process.md
+++ b/wiki/release-process.md
@@ -166,9 +166,9 @@ PR based on changed paths:
## Large files management
Files too large for git are stored as assets on a permanent GitHub release
-named `large-files`. Size does not decide it: four committed files are over
-50 MB (`history.xml`, `default-GM.sf3`, `5.avi`, `tbblue.mmc`) and are served
-from the repository like any other.
+named `large-files`. Size does not decide it: four committed files are
+over 50 MB (`history.xml`, `default-GM.sf3`, `5.avi`, `uqm-remix-disc1.uqm`)
+and are served from the repository like any other.
Examples: PS3UPDAT.PUP, PSVUPDAT.PUP, PSP2UPDAT.PUP, the DSi NAND images,
maclc3.zip, Firmware.19.0.0.zip (Switch), the QEMU EDK2 firmware, the ScummVM
From add6619730df0f790a91b0cb9edf88300b21f2d5 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 20:33:36 +0100
Subject: [PATCH 30/34] chore: regenerate the games index on the new lists
c624a820f rewrote install/retroarch.json and left install/games/ behind, which failed test_games_index.
---
install/games/fallback/retroarch.json | 2 +-
install/games/index.json | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/install/games/fallback/retroarch.json b/install/games/fallback/retroarch.json
index 34adfb398..2a71687c2 100644
--- a/install/games/fallback/retroarch.json
+++ b/install/games/fallback/retroarch.json
@@ -1 +1 @@
-{"files":[["128-0.rom",16384,"bios"],["128-1.rom",16384,"bios"],["128-spanish-0.rom",16384,"bios"],["128-spanish-1.rom",16384,"bios"],["22vp931.zip",1405,"bios"],["32X_G_BIOS.bin",256,"bios"],["32X_M_BIOS.bin",2048,"bios"],["32X_S_BIOS.bin",1024,"bios"],["3c505.zip",10896,"bios"],["3do_arcade_saot.bin",524288,"bios"],["3xtwin.zip",1417,"bios"],["48.rom",16384,"bios"],["4dparprn.zip",409,"bios"],["5200.rom",2048,"bios"],["64DD_IPL.bin",4194304,"bios"],["6570-036.rom",2048,"bios"],["68HC05.rom",8192,"bios"],["7800 BIOS (E).rom",16384,"bios"],["7800 BIOS (U).rom",4096,"bios"],["ATARIBAS.ROM",8192,"bios"],["ATARIOSA.ROM",10240,"bios"],["ATARIOSB.ROM",10240,"bios"],["ATARIXL.ROM",16384,"bios"],["Azahar/Azahar/nand/private/movable.sed",320,"bios"],["Azahar/Azahar/nand/rw/sys/LocalFriendCodeSeed_B",272,"bios"],["Azahar/Azahar/nand/rw/sys/SecureInfo_A",273,"bios"],["Azahar/Azahar/sysdata/keys.txt",7424,"bios"],["Azahar/Azahar/sysdata/otp.bin",256,"bios"],["Azahar/Azahar/sysdata/seeddb.bin",53264,"bios"],["Azahar/Azahar/sysdata/shared_font.bin",3145728,"bios"],["BB01R4_OS.ROM",16384,"bios"],["BBKEmu/A4980/8.BIN",2097152,"bios"],["BBKEmu/A4980/E.BIN",2097152,"bios"],["BIOS.col",8192,"bios"],["BS-X (En) (DRM-Free).bin",1048576,"bios"],["BS-X (En).bin",1048576,"bios"],["BS-X.bin",1048576,"bios"],["CARTS.SHA",33152,"bios"],["CM32LN_CONTROL.ROM",65536,"bios"],["CM32L_CONTROL.ROM",65536,"bios"],["CM32L_PCM.ROM",1048576,"bios"],["CYRILLIC.FNT",2048,"bios"],["Cemu/cafeLibs/erreula.rpl",790080,"bios"],["Cemu/cafeLibs/snd_user.rpl",84032,"bios"],["Cemu/cafeLibs/snduser2.rpl",111360,"bios"],["Cemu/cafeLibs/swkbd.rpl",1116288,"bios"],["Cemu/keys.txt",449507,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeCn.ttf",13110604,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeKr.ttf",2260660,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeStd.ttf",2442464,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeTw.ttf",8229724,"bios"],["Cemu/mlc01/sys/title/0005001b/1004f000/content/00/swkbd/swkbd.pack",1907900,"bios"],["Cemu/mlc01/sys/title/0005001b/10051000/content/00/erreula/erreula.pack",1252759,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_ACCOUNT_1_CERT.der",1226,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_ACCOUNT_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_COMMON_1_CERT.der",1224,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_COMMON_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_OLIVE_1_CERT.der",1224,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_OLIVE_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_VINO_1_CERT.der",1223,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_VINO_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_WOOD_1_CERT.der",1223,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_WOOD_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ADDTRUST_EXT_CA_ROOT.der",1082,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/BALTIMORE_CYBERTRUST_ROOT_CA.der",891,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CA.der",897,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CA_G2.der",1173,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CA_G3.der",1060,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CLASS2_CA.der",924,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CLASS2_CA_G2.der",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CLASS2_CA_G3.der",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/COMODO_CA.der",980,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CYBERTRUST_GLOBAL_ROOT_CA.der",933,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_ASSURED_ID_ROOT_CA.der",955,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_ASSURED_ID_ROOT_CA_G2.der",922,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_GLOBAL_ROOT_CA.der",947,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_GLOBAL_ROOT_CA_G2.der",914,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_HIGH_ASSURANCE_EV_ROOT_CA.der",969,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_CA_2048.der",1070,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_ROOT_CA.der",1173,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_ROOT_CA_G2.der",1090,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_SECURE_SERVER_CA.der",1244,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/EQUIFAX_SECURE_CA.der",804,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_GLOBAL_CA.der",856,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_GLOBAL_CA2.der",874,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_PRIMARY_CA.der",896,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_PRIMARY_CA_G3.der",1026,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GLOBALSIGN_ROOT_CA.der",889,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GLOBALSIGN_ROOT_CA_R2.der",958,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GLOBALSIGN_ROOT_CA_R3.der",867,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GTE_CYBERTRUST_GLOBAL_ROOT.der",606,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/THAWTE_PREMIUM_SERVER_CA.der",811,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/THAWTE_PRIMARY_ROOT_CA.der",1060,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/THAWTE_PRIMARY_ROOT_CA_G3.der",1070,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/UTN_DATACORP_SGC_CA.der",1122,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/UTN_USERFIRST_HARDWARE_CA.der",1144,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA.der",576,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA_G2.der",774,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA_G3.der",1054,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA_G5.der",1239,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_UNIVERSAL_ROOT_CA.der",1213,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERIZON_GLOBAL_ROOT_CA.der",889,"bios"],["Cemu/otp.bin",1024,"bios"],["Cemu/resources/sharedFonts/CafeCn.ttf",9664448,"bios"],["Cemu/resources/sharedFonts/CafeKr.ttf",5626464,"bios"],["Cemu/resources/sharedFonts/CafeStd.ttf",5363768,"bios"],["Cemu/resources/sharedFonts/CafeTw.ttf",6593548,"bios"],["Cemu/seeprom.bin",512,"bios"],["Cemu/shareddata.bin",33554432,"bios"],["Citra/Citra/sysdata/aes_keys.txt",7357,"bios"],["Citra/Citra/sysdata/boot9.bin",65536,"bios"],["Citra/Citra/sysdata/seeddb.bin",53264,"bios"],["Citra/Citra/sysdata/shared_font.bin",3145728,"bios"],["Complex_4627.bin",1048576,"bios"],["D8039HLC.rom",2048,"bios"],["DISK.ROM",16384,"bios"],["DOSBOX.SF2",32319396,"bios"],["Databases/colecodb.xml",158187,"bios"],["Databases/msxcaswavdb.xml",819679,"bios"],["Databases/msxromdb.xml",930986,"bios"],["Databases/msxsysromdb.xml",157542,"bios"],["Databases/segadb.xml",82318,"bios"],["Databases/svidb.xml",261070,"bios"],["Dinothawr.zip",6724506,"bios"],["FB Alpha 2012 CPS-3/hiscore.dat",322458,"bios"],["FB Alpha 2012/hiscore.dat",322458,"bios"],["FMPAC.ROM",65536,"bios"],["FMPAC16.ROM",16384,"bios"],["ITALIC.FNT",2048,"bios"],["Ishiiruka/User/Wii/clientca.pem",1005,"bios"],["Ishiiruka/User/Wii/clientcakey.pem",609,"bios"],["Ishiiruka/User/Wii/rootca.pem",897,"bios"],["Ishiiruka/User/Wii/sd.raw",134217728,"bios"],["Ishiiruka/User/Wii/shared2/sys/SYSCONF",16384,"bios"],["Ishiiruka/User/Wii/title/00000001/00000002/data/setting.txt",256,"bios"],["JiffyDOS_1541-II.bin",16384,"bios"],["JiffyDOS_1571_repl310654.bin",32768,"bios"],["JiffyDOS_1581.bin",32768,"bios"],["JiffyDOS_C128.bin",16384,"bios"],["JiffyDOS_C64.bin",8192,"bios"],["JiffyDOS_SX-64.bin",8192,"bios"],["KANJI.ROM",131072,"bios"],["MSX.ROM",32768,"bios"],["MSX2.ROM",32768,"bios"],["MSX2EXT.ROM",16384,"bios"],["MSX2P.ROM",32768,"bios"],["MSX2PEXT.ROM",16384,"bios"],["MSXDOS2.ROM",65536,"bios"],["MT32_CONTROL.ROM",65536,"bios"],["MT32_PCM.ROM",524288,"bios"],["Machines/COL - ColecoVision/coleco.rom",8192,"bios"],["Machines/Forte II Games - Pesadelo/pesadelo.rom",65536,"bios"],["Machines/MSX - C-BIOS/cbios_logo_msx1.rom",16384,"bios"],["Machines/MSX - C-BIOS/cbios_main_msx1.rom",32768,"bios"],["Machines/MSX2 - C-BIOS/cbios_logo_msx2.rom",16384,"bios"],["Machines/MSX2 - C-BIOS/cbios_main_msx2.rom",32768,"bios"],["Machines/MSX2 - C-BIOS/cbios_sub.rom",16384,"bios"],["Machines/MSX2+ - C-BIOS/cbios_logo_msx2+.rom",16384,"bios"],["Machines/MSX2+ - C-BIOS/cbios_main_msx2+.rom",32768,"bios"],["Machines/MSX2+ - C-BIOS/cbios_music.rom",16384,"bios"],["Machines/MSX2+ - European/Msx2pe.rom",32768,"bios"],["Machines/MSX2+ - European/Msx2pexte.rom",49152,"bios"],["Machines/SEGA - SF-7000/sf7000.rom",8192,"bios"],["Machines/SVI - Spectravideo SVI-318/svi318.rom",32768,"bios"],["Machines/SVI - Spectravideo SVI-328 MK2/svi328a.rom",32768,"bios"],["Machines/SVI - Spectravideo SVI-328/svi328.rom",32768,"bios"],["Machines/Shared Roms/ARAB1.ROM",32768,"bios"],["Machines/Shared Roms/ARABIC.rom",32768,"bios"],["Machines/Shared Roms/BEERIDE.ROM",16384,"bios"],["Machines/Shared Roms/FMPAC.rom",65536,"bios"],["Machines/Shared Roms/GCVMX80.ROM",8192,"bios"],["Machines/Shared Roms/HANGUL.rom",131072,"bios"],["Machines/Shared Roms/KANJI.rom",262144,"bios"],["Machines/Shared Roms/MICROSOLDISK.ROM",16384,"bios"],["Machines/Shared Roms/MOONSOUND.rom",2097152,"bios"],["Machines/Shared Roms/MSX.rom",32768,"bios"],["Machines/Shared Roms/MSX2.rom",32768,"bios"],["Machines/Shared Roms/MSX2AR.ROM",32768,"bios"],["Machines/Shared Roms/MSX2AREXT.ROM",16384,"bios"],["Machines/Shared Roms/MSX2BR.rom",32768,"bios"],["Machines/Shared Roms/MSX2BREXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2EXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2FR.rom",32768,"bios"],["Machines/Shared Roms/MSX2FREXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2G.rom",32768,"bios"],["Machines/Shared Roms/MSX2GEXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2HAN.rom",32768,"bios"],["Machines/Shared Roms/MSX2J.rom",32768,"bios"],["Machines/Shared Roms/MSX2JEXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2KR.rom",32768,"bios"],["Machines/Shared Roms/MSX2KREXT.rom",32768,"bios"],["Machines/Shared Roms/MSX2P.rom",32768,"bios"],["Machines/Shared Roms/MSX2PEXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2PMUS.rom",16384,"bios"],["Machines/Shared Roms/MSX2R.rom",32768,"bios"],["Machines/Shared Roms/MSX2R2.ROM",32768,"bios"],["Machines/Shared Roms/MSX2REXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2SE.rom",32768,"bios"],["Machines/Shared Roms/MSX2SP.rom",32768,"bios"],["Machines/Shared Roms/MSX2SPEXT.rom",16384,"bios"],["Machines/Shared Roms/MSXAR.ROM",32768,"bios"],["Machines/Shared Roms/MSXBR.rom",32768,"bios"],["Machines/Shared Roms/MSXDOS23.ROM",65536,"bios"],["Machines/Shared Roms/MSXFR.rom",32768,"bios"],["Machines/Shared Roms/MSXG.rom",32768,"bios"],["Machines/Shared Roms/MSXHAN.rom",8192,"bios"],["Machines/Shared Roms/MSXJ.rom",32768,"bios"],["Machines/Shared Roms/MSXKANJI.rom",32768,"bios"],["Machines/Shared Roms/MSXKR.rom",32768,"bios"],["Machines/Shared Roms/MSXR.rom",32768,"bios"],["Machines/Shared Roms/MSXR2.ROM",32768,"bios"],["Machines/Shared Roms/MSXSE.ROM",32768,"bios"],["Machines/Shared Roms/MSXSP.rom",32768,"bios"],["Machines/Shared Roms/MSXTR.ROM",32768,"bios"],["Machines/Shared Roms/MSXTREXT.ROM",16384,"bios"],["Machines/Shared Roms/MSXTRMUS.ROM",16384,"bios"],["Machines/Shared Roms/MSXTROPT.ROM",16384,"bios"],["Machines/Shared Roms/NATIONALDISK.rom",16384,"bios"],["Machines/Shared Roms/NOVAXIS.rom",16384,"bios"],["Machines/Shared Roms/PAINT.rom",65536,"bios"],["Machines/Shared Roms/PANASONICDISK.rom",16384,"bios"],["Machines/Shared Roms/PHILIPSDISK.rom",16384,"bios"],["Machines/Shared Roms/RS232.ROM",8192,"bios"],["Machines/Shared Roms/SUNRISEIDE.rom",65536,"bios"],["Machines/Shared Roms/SWP.rom",32768,"bios"],["Machines/Shared Roms/XBASIC2.rom",16384,"bios"],["Machines/Shared Roms/nowindDos1.rom",524288,"bios"],["Machines/Shared Roms/nowindDos2.rom",524288,"bios"],["MesenNesDB.txt",548608,"game_data"],["MesenPalette.pal",192,"bios"],["Mupen64plus/IPL.n64",4194304,"bios"],["Mupen64plus/font.ttf",65932,"bios"],["NstDatabase.xml",1009534,"bios"],["PAINTER.ROM",65536,"bios"],["PPSSPP/ppge_atlas.meta",1119232,"bios"],["PPSSPP/ppge_atlas.zim",666530,"bios"],["Panda3DS/Emulator Files/sysdata/aes_keys.txt",7357,"bios"],["Panda3DS/Emulator Files/sysdata/seeddb.bin",53264,"bios"],["ROM_OS_BB01R59",16384,"bios"],["ROM_OS_BB01R59A",16384,"bios"],["ROM_OS_BB02R3V4",16384,"bios"],["ROM_OS_CC01R4",16384,"bios"],["RS232.ROM",16640,"bios"],["SC-55-v1.00/sc55_rom1.bin",32768,"bios"],["SC-55-v1.00/sc55_rom2.bin",262144,"bios"],["SC-55-v1.00/sc55_waverom1.bin",1048576,"bios"],["SC-55-v1.00/sc55_waverom2.bin",1048576,"bios"],["SC-55-v1.00/sc55_waverom3.bin",1048576,"bios"],["SC-55/ROM1.BIN",32768,"bios"],["SC-55/ROM2.BIN",524288,"bios"],["SC-55/ROM_SM.BIN",4096,"bios"],["SC-55/WAVEROM1.BIN",2097152,"bios"],["SC-55/WAVEROM2.BIN",1048576,"bios"],["SC-55/WAVEROM3.BIN",1048576,"bios"],["SGB1.sfc",262144,"bios"],["SGB2.sfc",524288,"bios"],["STBIOS.bin",262144,"bios"],["Satellaview/BSX0120-0.bin",34,"game_data"],["Satellaview/BSX0121-0.bin",34,"game_data"],["Satellaview/BSX0122-0.bin",1031,"game_data"],["Satellaview/BSX0123-0.bin",16,"game_data"],["Satellaview/BSX0124-0.bin",97,"game_data"],["SegaCDBIOS9303.bin",131072,"bios"],["SkyEmu/cgb_boot.bin",2304,"bios"],["SkyEmu/dmg_rom.bin",256,"bios"],["SkyEmu/firmware.bin",262144,"bios"],["SkyEmu/gba_bios.bin",16384,"bios"],["SkyEmu/nds7.bin",16384,"bios"],["SkyEmu/nds9.bin",4096,"bios"],["Stella/stella/KVB1.WAV",4219542,"game_data"],["Stella/stella/KVB2.WAV",9593878,"game_data"],["Stella/stella/KVB3.WAV",7676992,"game_data"],["Stella/stella/KVS1.WAV",3436329,"game_data"],["Stella/stella/KVS2.WAV",2086275,"game_data"],["Stella/stella/KVS3.WAV",3720920,"game_data"],["Stella/stella/KVSHARED.WAV",3059116,"game_data"],["StudyBox.bin",262144,"bios"],["Super GameBoy.sfc/lr35902.boot.rom",256,"bios"],["Super GameBoy.sfc/program.rom",262144,"bios"],["Super GameBoy.sfc/sgb1.boot.rom",256,"bios"],["Vircon32Bios.v32",1073060,"bios"],["WHDLoad.prefs",1935,"bios"],["XEGAME.ROM",8192,"bios"],["[BIOS] Atari Jaguar CD (World).j64",262144,"bios"],["[BIOS] Atari Jaguar Developer CD (World).j64",262144,"bios"],["a1000kbd_de.zip",1331,"bios"],["a1000kbd_dk.zip",1331,"bios"],["a1000kbd_fr.zip",1331,"bios"],["a1000kbd_gb.zip",1331,"bios"],["a1000kbd_it.zip",1331,"bios"],["a1000kbd_se.zip",1331,"bios"],["a1000kbd_us.zip",1331,"bios"],["a1200kbd_rb.zip",1476,"bios"],["a1cass.zip",509,"bios"],["a2000kbd_ch.zip",1335,"bios"],["a2000kbd_de.zip",1335,"bios"],["a2000kbd_dk.zip",1335,"bios"],["a2000kbd_es.zip",1335,"bios"],["a2000kbd_fr.zip",1335,"bios"],["a2000kbd_g80_de.zip",1151,"bios"],["a2000kbd_g80_dk.zip",1151,"bios"],["a2000kbd_g80_gb.zip",1151,"bios"],["a2000kbd_g80_se.zip",1151,"bios"],["a2000kbd_g80_us.zip",1151,"bios"],["a2000kbd_gb.zip",1335,"bios"],["a2000kbd_it.zip",1335,"bios"],["a2000kbd_no.zip",1335,"bios"],["a2000kbd_se.zip",1335,"bios"],["a2000kbd_us.zip",1335,"bios"],["a2aevm80.zip",2540,"bios"],["a2ap16.zip",2649,"bios"],["a2ap16a.zip",2549,"bios"],["a2aplcrd.zip",1188,"bios"],["a2autokbd.zip",1363,"bios"],["a2booti.zip",3578,"bios"],["a2bufgrapplerplus.zip",3613,"bios"],["a2bufgrapplerplusa.zip",483416,"bios"],["a2cffa02.zip",2371,"bios"],["a2cffa2.zip",2389,"bios"],["a2corvus.zip",1590,"bios"],["a2diskiing.zip",371,"bios"],["a2excel9.zip",7157,"bios"],["a2focdrv.zip",1651,"bios"],["a2grappler.zip",1536,"bios"],["a2grapplerplus.zip",5587,"bios"],["a2hsscsi.zip",11374,"bios"],["a2ieee488.zip",1619,"bios"],["a2iwm.zip",371,"bios"],["a2kb200.zip",1144,"bios"],["a2memexp.zip",2174,"bios"],["a2mouse.zip",2836,"bios"],["a2parprn.zip",354,"bios"],["a2pdromdr.zip",666891,"bios"],["a2pic.zip",519,"bios"],["a2q68.zip",5474,"bios"],["a2q68plus.zip",5474,"bios"],["a2ramfac.zip",16155,"bios"],["a2romfp.zip",11102,"bios"],["a2romint.zip",12783,"bios"],["a2scsi.zip",8945,"bios"],["a2sd.zip",1282,"bios"],["a2sic.zip",1867,"bios"],["a2sider1.zip",1738,"bios"],["a2sider2.zip",707,"bios"],["a2ssc.zip",1845,"bios"],["a2superdrive.zip",10883,"bios"],["a2suprterm.zip",1864,"bios"],["a2surance.zip",3321,"bios"],["a2swyft.zip",11515,"bios"],["a2thunpl.zip",998,"bios"],["a2tk10.zip",1541,"bios"],["a2tmstho.zip",1217,"bios"],["a2twarp.zip",2309,"bios"],["a2ultrme.zip",3652,"bios"],["a2ulttrm.zip",3746,"bios"],["a2uniprint.zip",2145,"bios"],["a2vidtrm.zip",10620,"bios"],["a2vistaa800.zip",790,"bios"],["a2vtc1.zip",2062,"bios"],["a2vuliie.zip",3719,"bios"],["a2zipdrv.zip",3006,"bios"],["a3fdc.zip",262,"bios"],["a500kbd_ch.zip",1335,"bios"],["a500kbd_de.zip",1335,"bios"],["a500kbd_dk.zip",1335,"bios"],["a500kbd_es.zip",1335,"bios"],["a500kbd_fr.zip",1335,"bios"],["a500kbd_gb.zip",1335,"bios"],["a500kbd_it.zip",1335,"bios"],["a500kbd_no.zip",1335,"bios"],["a500kbd_se.zip",1335,"bios"],["a500kbd_us.zip",1335,"bios"],["a600kbd_ch.zip",1335,"bios"],["a600kbd_de.zip",1335,"bios"],["a600kbd_dk.zip",1335,"bios"],["a600kbd_es.zip",1335,"bios"],["a600kbd_fr.zip",1335,"bios"],["a600kbd_gb.zip",1335,"bios"],["a600kbd_it.zip",1335,"bios"],["a600kbd_no.zip",1335,"bios"],["a600kbd_se.zip",1335,"bios"],["a600kbd_us.zip",1335,"bios"],["abc1600mac.zip",7345,"bios"],["abc1600mover.zip",1347,"bios"],["abc55.zip",1546,"bios"],["abc77.zip",1546,"bios"],["abc800kb.zip",1087,"bios"],["abc80kb.zip",389,"bios"],["abc830.zip",24177,"bios"],["abc832.zip",24177,"bios"],["abc834.zip",24177,"bios"],["abc838.zip",24177,"bios"],["abc850flop.zip",24177,"bios"],["abc99.zip",5285,"bios"],["abc_db4106.zip",1696,"bios"],["abc_db4107.zip",23643,"bios"],["abc_db4112.zip",9945,"bios"],["abc_fd2.zip",6129,"bios"],["abc_slutprov.zip",509,"bios"],["abc_ssa.zip",101707,"bios"],["abc_uni800.zip",163,"bios"],["abc_unidisk.zip",9386,"bios"],["abcsio.zip",3201,"bios"],["acb2072.zip",11517,"bios"],["ace80.zip",1177,"bios"],["ace_sp_reelctrl.zip",1966,"bios"],["ace_sp_reelctrl_pcp.zip",1148,"bios"],["acorn_vdu80.zip",704,"bios"],["acs8600_ics.zip",2931,"bios"],["aes.zip",850311,"bios"],["agat7_flop.zip",588,"bios"],["agat840k_hle.zip",322,"bios"],["agat9_flop.zip",589,"bios"],["agat_fdc.zip",609,"bios"],["agb_boot.bin",2304,"bios"],["aha1542a.zip",15453,"bios"],["aha1542b.zip",84294,"bios"],["aha1542c.zip",52938,"bios"],["aha1542cf.zip",92027,"bios"],["aha1542cp.zip",36978,"bios"],["aha1740.zip",28701,"bios"],["aha1742a.zip",57787,"bios"],["aha2940.zip",38616,"bios"],["aha2940au.zip",31135,"bios"],["alto2_cpu.zip",15499,"bios"],["altos2_kbd.zip",695,"bios"],["am100kbd.zip",2016,"bios"],["amiga_a2091.zip",54815,"bios"],["amiga_a570.zip",171907,"bios"],["amiga_a590.zip",69833,"bios"],["amiga_ar1.zip",61074,"bios"],["amiga_ar2.zip",193315,"bios"],["amiga_ar3.zip",263916,"bios"],["amiga_buddha.zip",1179140,"bios"],["amiga_oktagon2008.zip",13786,"bios"],["amiga_ripple.zip",15180,"bios"],["ampex230_kbd.zip",976,"bios"],["ap2000.zip",21618,"bios"],["aplcd150.zip",9137,"bios"],["aprissi.zip",5014,"bios"],["arc_a448.zip",602,"bios"],["arc_a448b.zip",836,"bios"],["arc_acejoy.zip",1311,"bios"],["arc_armadeus.zip",1014,"bios"],["arc_bbcio_aga30.zip",1329,"bios"],["arc_bbcio_aka10.zip",3792,"bios"],["arc_bbcio_we.zip",1273,"bios"],["arc_eaglem2.zip",47500,"bios"],["arc_ether1_aka25.zip",163,"bios"],["arc_ether2_aeh50.zip",378,"bios"],["arc_ether3_aeh54.zip",50047,"bios"],["arc_ethera.zip",149278,"bios"],["arc_etherd.zip",105641,"bios"],["arc_etherr.zip",49753,"bios"],["arc_faxpack.zip",5826,"bios"],["arc_greyhawk.zip",5265,"bios"],["arc_hdisc_akd52.zip",421,"bios"],["arc_hdisc_cw.zip",565,"bios"],["arc_hdisc_morley.zip",1333,"bios"],["arc_hdisc_we.zip",462,"bios"],["arc_ide_be.zip",24321,"bios"],["arc_ide_rdev.zip",7001,"bios"],["arc_iomidi_aka15.zip",5309,"bios"],["arc_lark.zip",33629,"bios"],["arc_lbp4.zip",14292,"bios"],["arc_midi2.zip",12743,"bios"],["arc_midi_aka16.zip",21857,"bios"],["arc_midimax.zip",36846,"bios"],["arc_midimax2.zip",21595,"bios"],["arc_nexus_a500.zip",15560,"bios"],["arc_rom_aka05.zip",4909,"bios"],["arc_rom_r225.zip",107080,"bios"],["arc_rs423.zip",285,"bios"],["arc_scan256.zip",9805,"bios"],["arc_scanjunior.zip",6379,"bios"],["arc_scanjunior3.zip",6965,"bios"],["arc_scanlight.zip",7019,"bios"],["arc_scanvideo.zip",25778,"bios"],["arc_scsi_aka30.zip",11747,"bios"],["arc_scsi_aka31.zip",11851,"bios"],["arc_scsi_aka32.zip",96376,"bios"],["arc_scsi_cumana.zip",43880,"bios"],["arc_scsi_ling.zip",51477,"bios"],["arc_scsi_morley.zip",196852,"bios"],["arc_scsi_oak.zip",85368,"bios"],["arc_scsi_vti.zip",34230,"bios"],["arc_serial.zip",3063,"bios"],["arc_spectra.zip",2421,"bios"],["arc_ua_morley.zip",1410,"bios"],["arc_uma_morley.zip",9527,"bios"],["arc_upa_hccs.zip",1172,"bios"],["arc_upmidi_aka12.zip",9038,"bios"],["areplay.bin",32768,"bios"],["aros-ext.bin",524288,"bios"],["aros-rom.bin",524288,"bios"],["asc88.zip",5709,"bios"],["ascsasi.zip",1357,"bios"],["at_keybc.zip",3655,"bios"],["atari-1200xl-os-rev-10.rom",16384,"bios"],["atari-1200xl-os-rev-11.rom",16384,"bios"],["atari-5200-os-2port.rom",2048,"bios"],["atari-800-os-a-ntsc.rom",10240,"bios"],["atari-basic-rev-a.rom",8192,"bios"],["atari-basic-rev-b.rom",8192,"bios"],["atari-xl-os-ver-1.rom",16384,"bios"],["atari-xl-os-ver-3.rom",16384,"bios"],["atari1050.zip",13755,"bios"],["atari810.zip",3303,"bios"],["atom_discpack.zip",3459,"bios"],["atom_gdos.zip",3145,"bios"],["atom_gdos2015.zip",6985,"bios"],["atom_speech.zip",2019,"bios"],["atom_vdu80.zip",1074,"bios"],["awe32.raw",1048576,"bios"],["ax208.zip",5590,"bios"],["ax208p.zip",5598,"bios"],["banshee_x86.zip",35460,"bios"],["basf7100_kbd.zip",456,"bios"],["bass.dll",144696,"bios"],["bassmidi.dll",73600,"bios"],["bbc_24bbc.zip",2844684,"bios"],["bbc_2ndserial.zip",2844684,"bios"],["bbc_autoprom.zip",2737,"bios"],["bbc_beebspch.zip",6564,"bios"],["bbc_cc500.zip",2844684,"bios"],["bbc_chameleon.zip",654,"bios"],["bbc_cms6502.zip",17969,"bios"],["bbc_cumana68k.zip",3790,"bios"],["bbc_datacentre.zip",40386,"bios"],["bbc_detalker.zip",2019,"bios"],["bbc_ieee488.zip",2844684,"bios"],["bbc_multiform.zip",11635,"bios"],["bbc_opus3.zip",36996,"bios"],["bbc_opusa.zip",23792,"bios"],["bbc_pdram.zip",2195,"bios"],["bbc_pms64k.zip",8361,"bios"],["bbc_ramdisc.zip",2844684,"bios"],["bbc_tube_16032.zip",17960,"bios"],["bbc_tube_32016.zip",31067,"bios"],["bbc_tube_32016l.zip",3585,"bios"],["bbc_tube_6502.zip",4337,"bios"],["bbc_tube_6502e.zip",1515,"bios"],["bbc_tube_6502p.zip",6023,"bios"],["bbc_tube_65c102.zip",4375,"bios"],["bbc_tube_80286.zip",6649,"bios"],["bbc_tube_a500.zip",12117,"bios"],["bbc_tube_a500d.zip",12312,"bios"],["bbc_tube_arm.zip",38022,"bios"],["bbc_tube_arm7.zip",109910,"bios"],["bbc_tube_casper.zip",18005,"bios"],["bbc_tube_cms6809.zip",9090,"bios"],["bbc_tube_matchbox.zip",48928,"bios"],["bbc_tube_pcplus.zip",6662,"bios"],["bbc_tube_rc6502.zip",31532,"bios"],["bbc_tube_rc65816.zip",31259,"bios"],["bbc_tube_x25.zip",17863,"bios"],["bbc_tube_z80.zip",3197,"bios"],["bbc_tube_z80w.zip",3145,"bios"],["bbc_tube_zep100.zip",40985,"bios"],["bbc_tube_zep100l.zip",18020,"bios"],["bbc_tube_zep100w.zip",29266,"bios"],["bbc_voicebox.zip",2019,"bios"],["betadisk.zip",563424,"bios"],["bingoct.zip",173688,"bios"],["bios.gg",1024,"bios"],["bios.min",4096,"bios"],["bios.sms",8192,"bios"],["bios7.bin",16384,"bios"],["bios9.bin",4096,"bios"],["bios_CD_E.bin",131072,"bios"],["bios_CD_J.bin",131072,"bios"],["bios_CD_U.bin",131072,"bios"],["bios_E.sms",8192,"bios"],["bios_J.sms",8192,"bios"],["bios_MD.bin",2048,"bios"],["bios_U.sms",8192,"bios"],["bioscv.rom",2048,"bios"],["bk/B11M_BOS.ROM",8192,"bios"],["bk/B11M_EXT.ROM",8192,"bios"],["bk/BAS11M_0.ROM",16384,"bios"],["bk/BAS11M_1.ROM",8192,"bios"],["bk/BASIC10.ROM",24576,"bios"],["bk/DISK_327.ROM",4096,"bios"],["bk/FOCAL10.ROM",24576,"bios"],["bk/MONIT10.ROM",8192,"bios"],["bk/TERAK.ROM",128,"bios"],["bk_altpro.zip",9022,"bios"],["bk_kmd.zip",6973,"bios"],["bk_samara.zip",3049,"bios"],["bluechip.zip",23865,"bios"],["bml3kanji.zip",69657,"bios"],["bml3mp1802.zip",1841,"bios"],["bml3mp1805.zip",1874,"bios"],["boot.bin",2097152,"bios"],["bootloader-dbvz.rom",512,"bios"],["bsmt2000.zip",2646,"bios"],["bt542b.zip",18614,"bios"],["bt542bh.zip",22150,"bios"],["bt545s.zip",21352,"bios"],["bw2_ramcard.zip",8925,"bios"],["bwtwo.zip",2396,"bios"],["c1526.zip",18797,"bios"],["c1540.zip",12139,"bios"],["c1541.zip",85282,"bios"],["c1541c.zip",23897,"bios"],["c1541dd.zip",15970,"bios"],["c1541ii.zip",35933,"bios"],["c1541pd.zip",14855,"bios"],["c1541pdc.zip",23097,"bios"],["c1551.zip",11640,"bios"],["c1563.zip",12632,"bios"],["c1570.zip",17870,"bios"],["c1571.zip",55420,"bios"],["c1571cr.zip",38062,"bios"],["c1581.zip",58254,"bios"],["c2031.zip",12163,"bios"],["c2040.zip",7844,"bios"],["c2040_fdc.zip",426,"bios"],["c3040.zip",7844,"bios"],["c4023.zip",4285,"bios"],["c4040.zip",20926,"bios"],["c52.bin",1024,"bios"],["c64_ar4x.zip",190,"bios"],["c64_buscard.zip",2010118,"bios"],["c64_buscard2.zip",2010118,"bios"],["c64_cspeech.zip",2011,"bios"],["c64_mscr.zip",2311,"bios"],["c64_nl10.zip",16716,"bios"],["c64_supercpu.zip",2010118,"bios"],["c64_xl80.zip",830,"bios"],["c64_z80videopak.zip",858,"bios"],["c8050.zip",39422,"bios"],["c8050fdc.zip",426,"bios"],["c8250.zip",39422,"bios"],["c8250lp.zip",29852,"bios"],["c8280.zip",23702,"bios"],["cadabc.zip",9823,"bios"],["cannonball/epr-10187.88",32768,"game_data"],["cannonball/epr-10327.76",65536,"game_data"],["cannonball/epr-10327a.76",65536,"game_data"],["cannonball/epr-10328.75",65536,"game_data"],["cannonball/epr-10328a.75",65536,"game_data"],["cannonball/epr-10329.58",65536,"game_data"],["cannonball/epr-10329a.58",65536,"game_data"],["cannonball/epr-10330.57",65536,"game_data"],["cannonball/epr-10330a.57",65536,"game_data"],["cannonball/epr-10380.133",65536,"game_data"],["cannonball/epr-10380b.133",65536,"game_data"],["cannonball/epr-10381.132",65536,"game_data"],["cannonball/epr-10381b.132",65536,"game_data"],["cannonball/epr-10382.118",65536,"game_data"],["cannonball/epr-10382b.118",65536,"game_data"],["cannonball/epr-10383.117",65536,"game_data"],["cannonball/epr-10383b.117",65536,"game_data"],["cannonball/mpr-10371.9",131072,"game_data"],["cannonball/mpr-10372.13",131072,"game_data"],["cannonball/mpr-10373.10",131072,"game_data"],["cannonball/mpr-10374.14",131072,"game_data"],["cannonball/mpr-10375.11",131072,"game_data"],["cannonball/mpr-10376.15",131072,"game_data"],["cannonball/mpr-10377.12",131072,"game_data"],["cannonball/mpr-10378.16",131072,"game_data"],["cannonball/opr-10185.11",32768,"game_data"],["cannonball/opr-10186.47",32768,"game_data"],["cannonball/opr-10188.71",32768,"game_data"],["cannonball/opr-10188.71f",32768,"game_data"],["cannonball/opr-10189.70",32768,"game_data"],["cannonball/opr-10190.69",32768,"game_data"],["cannonball/opr-10191.68",32768,"game_data"],["cannonball/opr-10192.67",32768,"game_data"],["cannonball/opr-10193.66",32768,"game_data"],["cannonball/opr-10230.104",32768,"game_data"],["cannonball/opr-10231.103",32768,"game_data"],["cannonball/opr-10232.102",32768,"game_data"],["cannonball/opr-10266.101",32768,"game_data"],["cannonball/opr-10267.100",32768,"game_data"],["cannonball/opr-10268.99",32768,"game_data"],["capsimg.dll",191488,"bios"],["capsimg.so",95460,"bios"],["carthw.cfg",16367,"bios"],["cbm2_hrga.zip",3343,"bios"],["cbm2_hrgb.zip",3343,"bios"],["cbm8000_hsg_a.zip",3615,"bios"],["cbm8000_hsg_b.zip",3615,"bios"],["cbm_interpod.zip",3450,"bios"],["cbm_serbox.zip",2245,"bios"],["cchip.zip",2700,"bios"],["ccs7710.zip",1473,"bios"],["cd90_015.zip",1871,"bios"],["cd90_351.zip",4831,"bios"],["cd90_640.zip",1744,"bios"],["cdb/cdb_rom.bin",65536,"bios"],["cdd2000.zip",195999,"bios"],["cdimono1.zip",745703,"bios"],["cdr4210.zip",82902,"bios"],["cdrn820s.zip",66313,"bios"],["cdu415.zip",31828,"bios"],["cdu561_25.zip",141631,"bios"],["cdu75s.zip",31456,"bios"],["centennial_sl01m_15_11194.zip",301,"bios"],["centennial_sl02m_15_11194.zip",301,"bios"],["centennial_sl04m_15_11194.zip",313,"bios"],["cffa1.zip",4726,"bios"],["cfp1080s.zip",67669,"bios"],["cga.zip",3710,"bios"],["cga_iskr1030m.zip",1588,"bios"],["cga_iskr1031.zip",1665,"bios"],["cga_m24.zip",2283,"bios"],["cga_mc1502.zip",1235,"bios"],["cga_poisk2.zip",3177,"bios"],["cga_superimpose.zip",3710,"bios"],["cgb_bios.bin",2304,"bios"],["cgb_boot.bin",2304,"bios"],["cgenie_fdc.zip",20834,"bios"],["cgthree.zip",1224,"bios"],["chargen-901460-02.bin",4096,"bios"],["chessmachine.zip",542,"bios"],["cit101_kbd.zip",930,"bios"],["cit101e_kbd.zip",921,"bios"],["cit220p_kbd.zip",773,"bios"],["clgd5401.zip",36135,"bios"],["clgd542x.zip",329437,"bios"],["clgd5434_pci.zip",78023,"bios"],["clgd5446_pci.zip",40471,"bios"],["clgd5465_laguna.zip",21300,"bios"],["cmdhd.zip",8968,"bios"],["cmdrc2.zip",12317,"bios"],["cmi_ankbd.zip",836,"bios"],["cmi_mkbd.zip",1391,"bios"],["cms_4080term.zip",576010,"bios"],["cmsscsi.zip",5181,"bios"],["coleco.rom",8192,"bios"],["coleco.zip",28014,"bios"],["colecovision.rom",8192,"bios"],["compiskb.zip",480,"bios"],["comx_clm.zip",4009,"bios"],["comx_eb.zip",9599,"bios"],["comx_epr.zip",15391,"bios"],["comx_fd.zip",6238,"bios"],["comx_pl80.zip",8379,"bios"],["comx_prn.zip",5439,"bios"],["comx_thm.zip",2913,"bios"],["concept_kbd.zip",336,"bios"],["cp2024.zip",23160,"bios"],["cp31.zip",128845,"bios"],["cpc_brunword4.zip",139453,"bios"],["cpc_ddi1.zip",10934,"bios"],["cpc_dkspeech.zip",1460991,"bios"],["cpc_hd20.zip",19579,"bios"],["cpc_mface2.zip",1460991,"bios"],["cpc_ser.zip",1460991,"bios"],["cpc_serams.zip",1460991,"bios"],["cpc_smartwatch.zip",5640,"bios"],["cpc_ssa1.zip",1460991,"bios"],["cpc_transtape.zip",4021,"bios"],["cpuap.zip",26613,"bios"],["cq90_028.zip",1744,"bios"],["crd254sh.zip",31383,"bios"],["crvfdc01.zip",149,"bios"],["crvfdc02.zip",151,"bios"],["csd1.zip",12487,"bios"],["ct1741.zip",8003,"bios"],["cuda.zip",12814,"bios"],["cuda302.zip",3720,"bios"],["cudalite.zip",4037,"bios"],["custom.pal",192,"bios"],["cv8lc.zip",7423,"bios"],["cw7501.zip",83060,"bios"],["cx4.data.rom",3072,"bios"],["d2fdc.zip",262,"bios"],["d9060.zip",32197,"bios"],["d9090.zip",32197,"bios"],["db50xg.zip",3666695,"bios"],["db60xg.zip",3669859,"bios"],["dc/boot.bin",2097152,"bios"],["dc/dc_boot.bin",2097152,"bios"],["dc/dc_nvmem.bin",131072,"bios"],["dc/flash.bin",131072,"bios"],["dc/font.bin",519984,"bios"],["dc320b.zip",15794,"bios"],["dc320e.zip",31945,"bios"],["dc820.zip",26031,"bios"],["dc820b.zip",32045,"bios"],["dectalk_isa.zip",3823,"bios"],["dg640.zip",855,"bios"],["digilog_kbd.zip",1067,"bios"],["dim68k_kbd.zip",1550,"bios"],["dinothawr/dinothawr.game",3399,"game_data"],["dio98543.zip",2010,"bios"],["dio98544.zip",2034,"bios"],["dio98550.zip",3081,"bios"],["dio98603a.zip",291168,"bios"],["dio98603b.zip",377453,"bios"],["dio98628.zip",5918,"bios"],["dio98629.zip",5266,"bios"],["disciple.rom",8192,"bios"],["disk_plus3.szx",1568,"bios"],["diskii13.zip",590,"bios"],["disksys.rom",8192,"bios"],["dm_clgd5430.zip",20166,"bios"],["dmg_boot.bin",256,"bios"],["dmg_rom.bin",256,"bios"],["dmv_k220.zip",15572,"bios"],["dmv_k230.zip",2880,"bios"],["dmv_k231.zip",2880,"bios"],["dmv_k235.zip",2430,"bios"],["dmv_k806.zip",642,"bios"],["dmv_keyboard.zip",1135,"bios"],["dolphin-emu/Sys/GC/EUR/IPL.bin",2097152,"bios"],["dolphin-emu/Sys/GC/JAP/IPL.bin",2097152,"bios"],["dolphin-emu/Sys/GC/USA/IPL.bin",2097152,"bios"],["dolphin-emu/Sys/GC/dsp_coef.bin",4096,"bios"],["dolphin-emu/Sys/GC/dsp_rom.bin",8192,"bios"],["dolphin-emu/Sys/GC/font_japanese.bin",259626,"bios"],["dolphin-emu/Sys/GC/font_western.bin",6478,"bios"],["dolphin-emu/Sys/codehandler.bin",2880,"bios"],["dolphin-emu/User/GBA/gba_bios.bin",16384,"bios"],["dolphin-emu/User/Load/WiiSD.raw",134217728,"bios"],["dolphin-emu/User/Wii/clientca.pem",1005,"bios"],["dolphin-emu/User/Wii/clientcakey.pem",609,"bios"],["dolphin-emu/User/Wii/rootca.pem",897,"bios"],["dolphin-emu/User/Wii/shared2/sys/SYSCONF",16384,"bios"],["dolphin-emu/User/Wii/title/00000001/00000002/data/setting.txt",256,"bios"],["doom.wad",11159840,"game_data"],["doom1.wad",4196020,"game_data"],["doom2.wad",14943400,"game_data"],["doom2f.wad",14607420,"game_data"],["ds1001.zip",313,"bios"],["dsd4432.zip",1119,"bios"],["dsd5217.zip",21312,"bios"],["dsi_bios7.bin",65536,"bios"],["dsi_bios9.bin",65536,"bios"],["dsi_firmware.bin",131072,"bios"],["dsi_nand.bin",251658304,"bios"],["dsp1.data.rom",2048,"bios"],["dsp1.program.rom",6144,"bios"],["dsp1b.data.rom",2048,"bios"],["dsp1b.program.rom",6144,"bios"],["dsp2.data.rom",2048,"bios"],["dsp2.program.rom",6144,"bios"],["dsp3.data.rom",2048,"bios"],["dsp3.program.rom",6144,"bios"],["dsp4.data.rom",2048,"bios"],["dsp4.program.rom",6144,"bios"],["dsp56303.zip",568,"bios"],["dsp56311.zip",568,"bios"],["dsp56362.zip",629,"bios"],["dtlh1100.bin",524288,"bios"],["duodock.zip",47614,"bios"],["dvk_kmd.zip",6186,"bios"],["dw_kbd.zip",722,"bios"],["easyrpg.soundfont",148398306,"game_data"],["ec1841_0002.zip",3710,"bios"],["ecb_grip21.zip",10317,"bios"],["econet_e01.zip",26965,"bios"],["econet_e01s.zip",54134,"bios"],["ecwolf.pk3",178755,"bios"],["eeprom.dat",64,"bios"],["ef9340_1.zip",1022,"bios"],["ef9365.zip",590,"bios"],["ega.zip",18988,"bios"],["eidemax.zip",46469,"bios"],["einstein_sd.zip",1105,"bios"],["einstein_speech.zip",2019,"bios"],["eispc_kb.zip",848,"bios"],["enetlc.zip",8935,"bios"],["enetlctp.zip",471,"bios"],["enetnbtp.zip",472,"bios"],["enh2000.zip",12453,"bios"],["enp10.zip",35461,"bios"],["ep128emu/roms/basic20.rom",16384,"bios"],["ep128emu/roms/basic21.rom",16384,"bios"],["ep128emu/roms/brd.rom",16384,"bios"],["ep128emu/roms/cpc464.rom",32768,"bios"],["ep128emu/roms/cpc6128.rom",32768,"bios"],["ep128emu/roms/cpc664.rom",32768,"bios"],["ep128emu/roms/cpc_amsdos.rom",16384,"bios"],["ep128emu/roms/epd19hft.rom",32768,"bios"],["ep128emu/roms/epdos16f.rom",32768,"bios"],["ep128emu/roms/epfileio.rom",16384,"bios"],["ep128emu/roms/exdos13.rom",32768,"bios"],["ep128emu/roms/exdos14isdos10uk.rom",32768,"bios"],["ep128emu/roms/exos20.rom",32768,"bios"],["ep128emu/roms/exos21.rom",32768,"bios"],["ep128emu/roms/exos24uk.rom",65536,"bios"],["ep128emu/roms/hun.rom",16384,"bios"],["ep128emu/roms/tvc22_ext.rom",8192,"bios"],["ep128emu/roms/tvc22_sys.rom",16384,"bios"],["ep128emu/roms/tvc_dos12d.rom",16384,"bios"],["ep128emu/roms/tvcfileio.rom",8192,"bios"],["ep128emu/roms/zt19hfnt.rom",32768,"bios"],["ep128emu/roms/zt19uk.rom",32768,"bios"],["ep128emu/roms/zx128.rom",32768,"bios"],["ep128emu/roms/zx48.rom",16384,"bios"],["ep64_exdos.zip",14521,"bios"],["epr-17952a.ic8",524288,"bios"],["epr-17954a.ic8",524288,"bios"],["epr-20091.ic8",524288,"bios"],["epson_fx80.zip",12887,"bios"],["epson_jx80.zip",11210,"bios"],["epson_pf10.zip",3426,"bios"],["epson_qx_option_multifont.zip",42543,"bios"],["epson_rx80.zip",6311,"bios"],["epson_tf20.zip",3426,"bios"],["ergoline_kbd.zip",1847,"bios"],["esq2x40_vfx.zip",288,"bios"],["et4000.zip",31117,"bios"],["et4000_kasan16.zip",206680,"bios"],["et4kw32i.zip",18756,"bios"],["et532_board.zip",1252,"bios"],["ethudock.zip",692,"bios"],["etos1024k.img",1048576,"bios"],["etos192uk.img",196608,"bios"],["etos192us.img",196608,"bios"],["eu_mcd1_9210.bin",131072,"bios"],["eu_mcd2_9303.bin",131072,"bios"],["eu_mcd2_9306.bin",131072,"bios"],["europc_kbd.zip",1138,"bios"],["ev346.zip",3881,"bios"],["everdrive_md.zip",37759,"bios"],["ex1280.zip",3538,"bios"],["ex800.zip",21628,"bios"],["exec.bin",8192,"bios"],["executive10_102_kbd.zip",1778,"bios"],["exorterm155_device.zip",8999,"bios"],["exos201.zip",19800,"bios"],["f4431_kbd.zip",1807,"bios"],["fba/hiscore.dat",322458,"bios"],["fba2012/samples/dkong.zip",29270,"game_data"],["fba2012/samples/dkongjr.zip",300220,"game_data"],["fba2012/samples/fireshrk.zip",180371945,"game_data"],["fba2012/samples/galaga.zip",243090,"game_data"],["fba2012/samples/ghox.zip",149028023,"game_data"],["fba2012/samples/rallyx.zip",72511,"game_data"],["fba2012/samples/tekipaki.zip",207969846,"game_data"],["fba2012/samples/vimana.zip",278695628,"game_data"],["fbalpha2012/hiscore.dat",322458,"bios"],["fbneo/bubsys.zip",7950,"bios"],["fbneo/cchip.zip",2700,"bios"],["fbneo/channelf.zip",2705,"bios"],["fbneo/coleco.zip",28014,"bios"],["fbneo/decocass.zip",16107,"bios"],["fbneo/fdsbios.zip",5758,"bios"],["fbneo/hiscore.dat",324575,"bios"],["fbneo/hiscore.dat",328397,"bios"],["fbneo/isgsm.zip",10207,"bios"],["fbneo/midssio.zip",163,"bios"],["fbneo/msx.zip",193854,"bios"],["fbneo/namcoc69.zip",7771,"bios"],["fbneo/namcoc70.zip",7822,"bios"],["fbneo/namcoc75.zip",8709,"bios"],["fbneo/neocdz.zip",214681,"bios"],["fbneo/neocdz.zip",1184219,"bios"],["fbneo/neogeo.zip",1859335,"bios"],["fbneo/ngp.zip",74758,"bios"],["fbneo/nmk004.zip",3556,"bios"],["fbneo/pgm.zip",2094636,"bios"],["fbneo/samples/donpachi.zip",208549253,"game_data"],["fbneo/samples/sfz3mix.zip",101017377,"game_data"],["fbneo/skns.zip",924762,"bios"],["fbneo/spec128.zip",25489,"bios"],["fbneo/spec1282a.zip",41646,"bios"],["fbneo/spectrum.zip",12432,"bios"],["fbneo/ym2608.zip",7609,"bios"],["fc_disksys.zip",11579,"bios"],["fd148.zip",11962,"bios"],["fd2000.zip",45358,"bios"],["fd4000.zip",45409,"bios"],["fdc344.zip",2298,"bios"],["fdcmag.zip",2158,"bios"],["fga4he.zip",17002,"bios"],["filetto_cga.zip",3713,"bios"],["firmware.bin",262144,"bios"],["flash.bin",131072,"bios"],["freedom220_kbd.zip",1353,"bios"],["freedoom1.wad",28795076,"game_data"],["freedoom2.wad",28787748,"game_data"],["freej2me-lr.jar",552042,"bios"],["freej2me-sdl.jar",552043,"bios"],["freej2me.jar",552039,"bios"],["freej2me_plus-lr.jar",1219093,"bios"],["fsd1.zip",11799,"bios"],["fsd2.zip",48020,"bios"],["fsuae/Kickstarts/amiga-ext-130-cdtv.rom",262144,"bios"],["fsuae/Kickstarts/amiga-ext-310-cd32.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-120.rom",262144,"bios"],["fsuae/Kickstarts/amiga-os-130.rom",262144,"bios"],["fsuae/Kickstarts/amiga-os-204.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-205.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-a1200.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-a3000.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-a4000.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-cd32.rom",524288,"bios"],["fsuae/Kickstarts/cd32fmv.rom",262144,"bios"],["fsuae/Kickstarts/rom.key",2069,"bios"],["fuse/128-0.rom",16384,"bios"],["fuse/128-1.rom",16384,"bios"],["fuse/128p-0.rom",16384,"bios"],["fuse/128p-1.rom",16384,"bios"],["fuse/256s-0.rom",16384,"bios"],["fuse/256s-1.rom",16384,"bios"],["fuse/256s-2.rom",16384,"bios"],["fuse/256s-3.rom",16384,"bios"],["fuse/48.rom",16384,"bios"],["fuse/didaktik80.rom",14336,"bios"],["fuse/disciple.rom",8192,"bios"],["fuse/gluck.rom",16384,"bios"],["fuse/if1-2.rom",8192,"bios"],["fuse/mf1.rom",8192,"bios"],["fuse/mf128.rom",8192,"bios"],["fuse/mf3.rom",8192,"bios"],["fuse/opus.rom",8192,"bios"],["fuse/plus2-0.rom",16384,"bios"],["fuse/plus2-1.rom",16384,"bios"],["fuse/plus3-0.rom",16384,"bios"],["fuse/plus3-1.rom",16384,"bios"],["fuse/plus3-2.rom",16384,"bios"],["fuse/plus3-3.rom",16384,"bios"],["fuse/plus3e-0.rom",16384,"bios"],["fuse/plus3e-1.rom",16384,"bios"],["fuse/plus3e-2.rom",16384,"bios"],["fuse/plus3e-3.rom",16384,"bios"],["fuse/plusd.rom",8192,"bios"],["fuse/se-0.rom",16384,"bios"],["fuse/se-1.rom",16384,"bios"],["fuse/speccyboot-1.4.rom",8192,"bios"],["fuse/tc2048.rom",16384,"bios"],["fuse/tc2068-0.rom",16384,"bios"],["fuse/tc2068-1.rom",8192,"bios"],["fuse/trdos.rom",16384,"bios"],["fuse/ttx2000s.rom",8192,"bios"],["fuse/usource.rom",8192,"bios"],["fx-scsi.rom",524288,"bios"],["g7400.bin",1024,"bios"],["g80_1500.zip",5636,"bios"],["galaksija/CHRGEN.BIN",2048,"bios"],["galaksija/ROM1.BIN",4096,"bios"],["galaksija/ROM2.BIN",4096,"bios"],["gamegenie.nes",24592,"bios"],["gamtor_vga.zip",208,"bios"],["gb_bios.bin",256,"bios"],["gba_bios.bin",16384,"bios"],["gbc_bios.bin",2304,"bios"],["gc-dvd-20010608.bin",131072,"bios"],["gc-dvd-20010831.bin",131072,"bios"],["gc-dvd-20020402.bin",131072,"bios"],["gc-dvd-20020823.bin",131072,"bios"],["gc-ntsc-10.bin",2097152,"bios"],["gc-ntsc-11.bin",2097152,"bios"],["gc-ntsc-12.bin",2097152,"bios"],["gc-pal-10.bin",2097152,"bios"],["gc-pal-11.bin",2097152,"bios"],["gc-pal-12.bin",2097152,"bios"],["gecard.pce",32768,"bios"],["geforce256.zip",25685,"bios"],["geforce256ddr.zip",21811,"bios"],["gexpress.pce",32768,"bios"],["gfxultra.zip",19347,"bios"],["gfxultrap.zip",38094,"bios"],["ggenie.bin",32768,"bios"],["gic.zip",373,"bios"],["goldstar.bin",1048576,"bios"],["gp32.zip",1378301,"bios"],["gpib_hardbox.zip",18236,"bios"],["gpib_mshark.zip",13934,"bios"],["gpib_softbox.zip",9859,"bios"],["gpl16250va.zip",155340,"bios"],["gpl951xx.zip",3396,"bios"],["grom.bin",2048,"bios"],["gzdoom.pk3",3612904,"game_data"],["h89bus_io_decoder_444_43.zip",175,"bios"],["h89bus_io_decoder_444_61.zip",176,"bios"],["h89bus_io_decoder_cdr86.zip",177,"bios"],["h89bus_io_decoder_mms_61c.zip",193,"bios"],["h8_cpu_8080.zip",7111,"bios"],["h8_ha_8_6.zip",6415,"bios"],["hatari/BOOT.ST",737280,"bios"],["hcpu30.zip",15456,"bios"],["hd44780.zip",965,"bios"],["hd44780u.zip",2082,"bios"],["hd61830.zip",839,"bios"],["hdae5000.zip",823668,"bios"],["he191_3425.zip",983,"bios"],["heath_gp19_tlb.zip",13491,"bios"],["heath_igc_super19_tlb_device.zip",5615,"bios"],["heath_igc_tlb_device.zip",5021,"bios"],["heath_igc_ultra_tlb_device.zip",4818,"bios"],["heath_igc_watz_tlb_device.zip",7609,"bios"],["heath_imaginator_tlb.zip",9135,"bios"],["heath_super19_tlb.zip",5615,"bios"],["heath_superset_tlb.zip",14186,"bios"],["heath_tlb.zip",5021,"bios"],["heath_ultra_tlb.zip",4818,"bios"],["heath_watz_tlb.zip",7609,"bios"],["hisaturn.bin",524288,"bios"],["hk68v10.zip",8083,"bios"],["howard.o",513,"bios"],["hp82900.zip",691,"bios"],["hp82937.zip",2028,"bios"],["hp82939.zip",1869,"bios"],["hp9122c.zip",10761,"bios"],["hp9133.zip",21140,"bios"],["hp98034.zip",717,"bios"],["hp98035.zip",1993,"bios"],["hp98046.zip",1103,"bios"],["hp9845_prt.zip",1241,"bios"],["hp9895.zip",6135,"bios"],["hpblp.zip",34683,"bios"],["human_interface.zip",2044,"bios"],["i8244.zip",456,"bios"],["i8245.zip",456,"bios"],["ibm_mfc.zip",17863,"bios"],["ibm_vga.zip",13184,"bios"],["ibsap2.zip",1061,"bios"],["id1/pak0.pak",18689235,"game_data"],["idpart_video.zip",2623,"bios"],["ie15_device.zip",5520,"bios"],["ie15kbd.zip",352,"bios"],["if1-1.rom",8192,"bios"],["if1-2.rom",8192,"bios"],["imds2ioc.zip",19804,"bios"],["imi5000h.zip",3337,"bios"],["in207100kbd.zip",1074,"bios"],["in213kbd.zip",658,"bios"],["indusgt.zip",15707,"bios"],["intv_ecs.zip",13890,"bios"],["intv_voice.zip",2025,"bios"],["iq151_disc2.zip",1872,"bios"],["iq151_minigraf.zip",3404,"bios"],["iq151_ms15a.zip",1938,"bios"],["iq151_video32.zip",709,"bios"],["iq151_video64.zip",1120,"bios"],["iris_kbd.zip",939,"bios"],["isa_aga.zip",2673,"bios"],["isa_aga_pc200.zip",3722,"bios"],["isa_epc_mda.zip",1714,"bios"],["isa_finalchs.zip",39370,"bios"],["isa_hdc.zip",5558,"bios"],["isa_hercules.zip",3204,"bios"],["isa_ibm_mda.zip",483513,"bios"],["isa_ibm_pgc.zip",69664,"bios"],["isa_ibm_speech.zip",22584,"bios"],["isa_pcmidi.zip",6300,"bios"],["isa_prose4001.zip",96246,"bios"],["isbc202.zip",2023,"bios"],["isbc8024.zip",2868,"bios"],["isbc_215g.zip",11746,"bios"],["ivelultrkb.zip",841,"bios"],["jagboot.rom",131072,"bios"],["jagboot_m.rom",131072,"bios"],["jaleco_vj_pc.zip",116758,"bios"],["jc1310.zip",3574,"bios"],["jopac.bin",1024,"bios"],["jp_mcd1_9111.bin",131072,"bios"],["jp_mcd1_9112.bin",131072,"bios"],["jp_mcd2_921222.bin",131072,"bios"],["k7659_keyboard.zip",384,"bios"],["kaypro10kbd.zip",1307,"bios"],["kayproiikbd.zip",1101,"bios"],["kb_3270pc.zip",1115,"bios"],["kb_ec1841.zip",788,"bios"],["kb_iskr1030.zip",1022,"bios"],["kb_ms_natural.zip",3029,"bios"],["kb_pcat101.zip",2989,"bios"],["kb_pcat84.zip",1032,"bios"],["kb_pcxt83.zip",726,"bios"],["kbd_lle_en_us.zip",3038,"bios"],["kc_d004.zip",4285,"bios"],["kc_d004_gide.zip",30180,"bios"],["kernal-901227-01.bin",8192,"bios"],["kernal-901227-02.bin",8192,"bios"],["kernal.901486-02.bin",8192,"bios"],["keropi/cgrom.dat",786432,"bios"],["keropi/iplrom.dat",131072,"bios"],["keropi/iplrom30.dat",131072,"bios"],["keropi/iplromco.dat",131072,"bios"],["keropi/iplromxv.dat",131072,"bios"],["keytronic_l2207.zip",2325,"bios"],["keytronic_pc3270.zip",3168,"bios"],["keytronic_pc3270_at.zip",3168,"bios"],["kick.rom",262144,"bios"],["kick12.rom",524288,"bios"],["kick13.rom",524288,"bios"],["kick20.rom",524288,"bios"],["kick205.rom",524288,"bios"],["kick31.rom",524288,"bios"],["kick31034.A1000",262144,"bios"],["kick32034.A1000",262144,"bios"],["kick33180.A500",262144,"bios"],["kick34005.A500",262144,"bios"],["kick34005.CDTV",262144,"bios"],["kick37175.A500",524288,"bios"],["kick37350.A600",524288,"bios"],["kick39106.A1200",524288,"bios"],["kick39106.A4000",524288,"bios"],["kick40060.CD32",524288,"bios"],["kick40060.CD32.ext",524288,"bios"],["kick40063.A600",524288,"bios"],["kick40068.A1200",524288,"bios"],["kick40068.A4000",524288,"bios"],["km035.zip",1035,"bios"],["kronos/saturn_bios.bin",524288,"bios"],["kronos/stvbios.zip",3455065,"bios"],["ks0066.zip",2011,"bios"],["labtam_3232.zip",73648,"bios"],["labtam_8086cpu.zip",3231,"bios"],["labtam_vducom.zip",75740,"bios"],["labtam_z80sbc.zip",16546,"bios"],["lba_enhancer.zip",2746,"bios"],["lc7985.zip",957,"bios"],["ldv1000.zip",4816,"bios"],["lh5323m1.bin",262144,"bios"],["lha201.zip",6661,"bios"],["libbass.dylib",874240,"bios"],["libbass.so",248952,"bios"],["libbassmidi.dylib",519808,"bios"],["libbassmidi.so",142080,"bios"],["lisa2fdc.zip",3159,"bios"],["lisafdc.zip",3328,"bios"],["lisavideo.zip",260,"bios"],["lk201.zip",6069,"bios"],["lm24014h.zip",629,"bios"],["lrk331.zip",18121,"bios"],["luna_68k_cmc.zip",13767,"bios"],["luna_68k_gpu.zip",84000,"bios"],["luna_68k_ioc.zip",28610,"bios"],["lux10828.zip",9352,"bios"],["lux21046.zip",24177,"bios"],["lux21056.zip",7454,"bios"],["lx800.zip",15176,"bios"],["lx810l.zip",22103,"bios"],["lynxboot.img",512,"bios"],["m1comm.zip",3832,"bios"],["m20_8086.zip",6611,"bios"],["m24_kbd.zip",1483,"bios"],["m24_z8000.zip",9638,"bios"],["m50dass.zip",5021,"bios"],["m68705p3.zip",266,"bios"],["m68705p5.zip",266,"bios"],["m68705r3.zip",271,"bios"],["m68705u3.zip",271,"bios"],["m68hc05pge.zip",607,"bios"],["mach64isa.zip",121273,"bios"],["macxlfdc.zip",5757,"bios"],["macxlvideo.zip",212,"bios"],["mame/hash/32x.xml",128073,"game_data"],["mame/hash/3do_m2.xml",1791,"game_data"],["mame/hash/README.md",354,"game_data"],["mame/hash/a2600.xml",737892,"game_data"],["mame/hash/a2600_cass.xml",32898,"game_data"],["mame/hash/a5200.hsi",32063,"game_data"],["mame/hash/a5200.xml",58114,"game_data"],["mame/hash/a7800.xml",127364,"game_data"],["mame/hash/abc1600_flop.xml",7222,"game_data"],["mame/hash/abc1600_hdd.xml",547,"game_data"],["mame/hash/abc800_hdd.xml",1362,"game_data"],["mame/hash/abc806_flop.xml",4664,"game_data"],["mame/hash/abc80_cass.xml",1063,"game_data"],["mame/hash/abc80_flop.xml",4875,"game_data"],["mame/hash/abc80_rom.xml",2440,"game_data"],["mame/hash/abc830_flop.xml",7246,"game_data"],["mame/hash/abc832_flop.xml",14768,"game_data"],["mame/hash/abc838_flop.xml",1979,"game_data"],["mame/hash/acrnsys_flop.xml",1659,"game_data"],["mame/hash/acrnsys_rom.xml",2174,"game_data"],["mame/hash/advantage.xml",5914,"game_data"],["mame/hash/aim65_cart.xml",9060,"game_data"],["mame/hash/aleste.xml",1366,"game_data"],["mame/hash/alice32.xml",27026,"game_data"],["mame/hash/alice90.xml",3996,"game_data"],["mame/hash/alphasmart_kapps.xml",16025,"game_data"],["mame/hash/alphatro_cart.xml",1129,"game_data"],["mame/hash/alphatro_flop.xml",1342,"game_data"],["mame/hash/altos5.xml",1323,"game_data"],["mame/hash/altos586.xml",574,"game_data"],["mame/hash/altos8600.xml",1043,"game_data"],["mame/hash/amiga_amix.xml",4460,"game_data"],["mame/hash/amiga_apps.xml",7434,"game_data"],["mame/hash/amiga_cd.xml",15524,"game_data"],["mame/hash/amiga_demos.xml",3217,"game_data"],["mame/hash/amiga_flop.xml",410553,"game_data"],["mame/hash/amiga_hardware.xml",9287,"game_data"],["mame/hash/amiga_hdd.xml",1617,"game_data"],["mame/hash/amiga_workbench.xml",61616,"game_data"],["mame/hash/amigaaga_flop.xml",215186,"game_data"],["mame/hash/amigaecs_flop.xml",35873,"game_data"],["mame/hash/amigaocs_flop.xml",2095329,"game_data"],["mame/hash/ampro.xml",2178,"game_data"],["mame/hash/apc.xml",14254,"game_data"],["mame/hash/apexc_cyl.xml",1523,"game_data"],["mame/hash/apogee.xml",41066,"game_data"],["mame/hash/apollo_ctape.xml",2075,"game_data"],["mame/hash/apple1.xml",20026,"game_data"],["mame/hash/apple2_cass.xml",138008,"game_data"],["mame/hash/apple2_rom.xml",1709,"game_data"],["mame/hash/apple3.xml",10270,"game_data"],["mame/hash/applix_flop.xml",541,"game_data"],["mame/hash/apricot_flop.xml",33034,"game_data"],["mame/hash/apxen_flop.xml",1562,"game_data"],["mame/hash/aquarius_cart.xml",14960,"game_data"],["mame/hash/aquarius_cass.xml",34155,"game_data"],["mame/hash/arb.xml",3568,"game_data"],["mame/hash/arcadia.xml",57566,"game_data"],["mame/hash/atom_cass.xml",19518,"game_data"],["mame/hash/atom_flop.xml",7657,"game_data"],["mame/hash/atom_rom.xml",16011,"game_data"],["mame/hash/attache.xml",555,"game_data"],["mame/hash/aussiebyte.xml",545,"game_data"],["mame/hash/b2m.xml",1244,"game_data"],["mame/hash/basf7100.xml",881,"game_data"],["mame/hash/bbcbc.xml",5189,"game_data"],["mame/hash/bdesignm_design_cart.xml",3983,"game_data"],["mame/hash/bdesignm_game_cart.xml",3809,"game_data"],["mame/hash/bingobear.xml",1244,"game_data"],["mame/hash/bkrankp_cart.xml",9615,"game_data"],["mame/hash/bmjr_cass.xml",790,"game_data"],["mame/hash/bml3_cass.xml",1359,"game_data"],["mame/hash/bml3_flop.xml",4172,"game_data"],["mame/hash/brother_pn.xml",1902,"game_data"],["mame/hash/bungo_flop.xml",2355,"game_data"],["mame/hash/buzztime_cart.xml",1855,"game_data"],["mame/hash/bw12.xml",869,"game_data"],["mame/hash/bw14.xml",4116,"game_data"],["mame/hash/bw2.xml",2574,"game_data"],["mame/hash/bx256hp_flop.xml",4979,"game_data"],["mame/hash/c128_cart.xml",7667,"game_data"],["mame/hash/c128_flop.xml",29219,"game_data"],["mame/hash/c128_rom.xml",3843,"game_data"],["mame/hash/c2color_cart.xml",4498,"game_data"],["mame/hash/c64_cart.xml",258956,"game_data"],["mame/hash/c64_cass.xml",578831,"game_data"],["mame/hash/c64_flop_misc.xml",34001,"game_data"],["mame/hash/c64_flop_orig.xml",30419,"game_data"],["mame/hash/c64_quik.xml",585,"game_data"],["mame/hash/c65_flop.xml",616,"game_data"],["mame/hash/carbeena.xml",811,"game_data"],["mame/hash/casio_rompack.xml",72987,"game_data"],["mame/hash/cassvisn_cart.xml",8242,"game_data"],["mame/hash/cbm2_cart.xml",2432,"game_data"],["mame/hash/cbm2_flop.xml",55851,"game_data"],["mame/hash/cbm8096_flop.xml",976,"game_data"],["mame/hash/cbm8296_flop.xml",1344,"game_data"],["mame/hash/cc40_cart.xml",4533,"game_data"],["mame/hash/cd32.xml",73479,"game_data"],["mame/hash/cdtv.xml",128903,"game_data"],["mame/hash/cecflop.xml",9584,"game_data"],["mame/hash/cgenie_cass.xml",135849,"game_data"],["mame/hash/cgenie_flop_rom.xml",1068,"game_data"],["mame/hash/challenge_gear_cart.xml",1798,"game_data"],["mame/hash/channelf.xml",20040,"game_data"],["mame/hash/chessking_cart.xml",641,"game_data"],["mame/hash/chessmstdm.xml",1095,"game_data"],["mame/hash/chip8_quik.xml",32203,"game_data"],["mame/hash/clickstart_cart.xml",10218,"game_data"],["mame/hash/clipper_flop.xml",1190,"game_data"],["mame/hash/coleco.xml",153128,"game_data"],["mame/hash/coleco_homebrew.xml",89593,"game_data"],["mame/hash/compclr2_flop.xml",94972,"game_data"],["mame/hash/compis.xml",40308,"game_data"],["mame/hash/comx35_flop.xml",543,"game_data"],["mame/hash/conchess.xml",1245,"game_data"],["mame/hash/copera.xml",5754,"game_data"],["mame/hash/cpc_cass.xml",1991951,"game_data"],["mame/hash/cpc_flop.xml",12700511,"game_data"],["mame/hash/ctvboy.xml",3078,"game_data"],["mame/hash/cubieboard4.xml",3873,"game_data"],["mame/hash/cx3000tc.xml",2044,"game_data"],["mame/hash/cz1_cart.xml",1477,"game_data"],["mame/hash/dai_cass.xml",4412,"game_data"],["mame/hash/database.xml",8810,"game_data"],["mame/hash/dc.xml",1547464,"game_data"],["mame/hash/dgnbeta_flop.xml",1891,"game_data"],["mame/hash/digiblast_cart.xml",10923,"game_data"],["mame/hash/digilog320.xml",1545,"game_data"],["mame/hash/dim68k.xml",7070,"game_data"],["mame/hash/dmv.xml",54867,"game_data"],["mame/hash/dps1.xml",596,"game_data"],["mame/hash/duelmast_cart.xml",1148,"game_data"],["mame/hash/easy_karaoke_cart.xml",16341,"game_data"],["mame/hash/ec1841.xml",4295,"game_data"],["mame/hash/einstein.xml",53792,"game_data"],["mame/hash/einstein_rom.xml",547,"game_data"],["mame/hash/entex_sag.xml",3620,"game_data"],["mame/hash/ep64_cart.xml",6240,"game_data"],["mame/hash/ep64_cass.xml",1272,"game_data"],["mame/hash/ep64_flop.xml",73009,"game_data"],["mame/hash/epson_cpm.xml",5880,"game_data"],["mame/hash/eti660_quik.xml",2480,"game_data"],["mame/hash/ews286_flop.xml",1384,"game_data"],["mame/hash/excalibur64.xml",551,"game_data"],["mame/hash/exl100.xml",6011,"game_data"],["mame/hash/famibox.xml",31176,"game_data"],["mame/hash/famicom_cass.xml",21948,"game_data"],["mame/hash/famicom_flop.xml",168824,"game_data"],["mame/hash/fidel_msc.xml",1132,"game_data"],["mame/hash/fidel_sc6.xml",565,"game_data"],["mame/hash/fidel_scc.xml",4897,"game_data"],["mame/hash/fmtowns_cd.xml",2734453,"game_data"],["mame/hash/fmtowns_flop_cracked.xml",3606,"game_data"],["mame/hash/fmtowns_flop_misc.xml",63683,"game_data"],["mame/hash/fmtowns_flop_orig.xml",150372,"game_data"],["mame/hash/fp1100_cass.xml",4676,"game_data"],["mame/hash/gaelco_ds5002fp_rom.xml",4164,"game_data"],["mame/hash/galaxy.xml",24068,"game_data"],["mame/hash/gameboy.xml",1136450,"game_data"],["mame/hash/gamegear.xml",414475,"game_data"],["mame/hash/gameking.xml",21981,"game_data"],["mame/hash/gameking3.xml",4399,"game_data"],["mame/hash/gba.xml",1727109,"game_data"],["mame/hash/gba_ereader.xml",286933,"game_data"],["mame/hash/gbcolor.xml",1161729,"game_data"],["mame/hash/generic_cdrom.xml",52075,"game_data"],["mame/hash/generic_flop_525.xml",4909,"game_data"],["mame/hash/genie3_flop.xml",4849,"game_data"],["mame/hash/ggm.xml",8019,"game_data"],["mame/hash/gimix.xml",2241,"game_data"],["mame/hash/gj4000.xml",681,"game_data"],["mame/hash/gjmovie.xml",760,"game_data"],["mame/hash/gjrstar.xml",2795,"game_data"],["mame/hash/gl2000.xml",4022,"game_data"],["mame/hash/gl6000sl.xml",1205,"game_data"],["mame/hash/glcolor.xml",2575,"game_data"],["mame/hash/glcx.xml",4447,"game_data"],["mame/hash/gln.xml",1724,"game_data"],["mame/hash/gls.xml",609,"game_data"],["mame/hash/gtfore.xml",2385,"game_data"],["mame/hash/guab.xml",4131,"game_data"],["mame/hash/gx4000.xml",12933,"game_data"],["mame/hash/h21.xml",1358,"game_data"],["mame/hash/h88_cass.xml",6198,"game_data"],["mame/hash/horizon.xml",110171,"game_data"],["mame/hash/hp85_rom.xml",2800,"game_data"],["mame/hash/hp86_rom.xml",5029,"game_data"],["mame/hash/hp9825_rom.xml",6691,"game_data"],["mame/hash/hp9831_rom.xml",1188,"game_data"],["mame/hash/hp9835a_rom.xml",2757,"game_data"],["mame/hash/hp9845a_rom.xml",4328,"game_data"],["mame/hash/hp9845b_rom.xml",19426,"game_data"],["mame/hash/hp98x6_rom.xml",1486,"game_data"],["mame/hash/hp9k3xx_cdrom.xml",7323,"game_data"],["mame/hash/hp9k3xx_flop.xml",30834,"game_data"],["mame/hash/hp9k3xx_hdd.xml",691,"game_data"],["mame/hash/hp_ipc.xml",23990,"game_data"],["mame/hash/hp_ipc_rom.xml",672,"game_data"],["mame/hash/ht68k.xml",923,"game_data"],["mame/hash/hx20_rom.xml",904,"game_data"],["mame/hash/hyperscan.xml",2390,"game_data"],["mame/hash/hyperscan_card.xml",193115,"game_data"],["mame/hash/i7000_card.xml",7455,"game_data"],["mame/hash/ibm5140.xml",1967,"game_data"],["mame/hash/ibm5150_cass.xml",736,"game_data"],["mame/hash/ibm5150_hdd.xml",5316,"game_data"],["mame/hash/ibm5170.xml",1162208,"game_data"],["mame/hash/ibm5170_cdrom.xml",454762,"game_data"],["mame/hash/ibm5170_hdd.xml",12253,"game_data"],["mame/hash/ibm6580.xml",4972,"game_data"],["mame/hash/ibmpc110.xml",1581,"game_data"],["mame/hash/ibmpcjr_cart.xml",9823,"game_data"],["mame/hash/ibmpcjr_flop.xml",6253,"game_data"],["mame/hash/ibmpcjx.xml",2034,"game_data"],["mame/hash/icanguit.xml",4013,"game_data"],["mame/hash/icanpian.xml",7041,"game_data"],["mame/hash/intellect02.xml",1026,"game_data"],["mame/hash/interact.xml",14054,"game_data"],["mame/hash/interpro.xml",15826,"game_data"],["mame/hash/intv.hsi",21652,"game_data"],["mame/hash/intv.xml",100100,"game_data"],["mame/hash/intvecs.xml",7161,"game_data"],["mame/hash/iq128.xml",1656,"game_data"],["mame/hash/iq151_cart.xml",2180,"game_data"],["mame/hash/iq151_flop.xml",1019,"game_data"],["mame/hash/ique.xml",18576,"game_data"],["mame/hash/iqunlim_cart.xml",1166,"game_data"],["mame/hash/itt3030.xml",1428,"game_data"],["mame/hash/jaguar.xml",78281,"game_data"],["mame/hash/jakks_gamekey_dp.xml",761,"game_data"],["mame/hash/jakks_gamekey_dy.xml",2768,"game_data"],["mame/hash/jakks_gamekey_mv.xml",756,"game_data"],["mame/hash/jakks_gamekey_nk.xml",1934,"game_data"],["mame/hash/jakks_gamekey_nm.xml",2051,"game_data"],["mame/hash/jakks_gamekey_sw.xml",2931,"game_data"],["mame/hash/jakks_gamekey_wp.xml",1064,"game_data"],["mame/hash/jaminator.xml",6011,"game_data"],["mame/hash/jazz.xml",1564,"game_data"],["mame/hash/jb3000_flop.xml",660,"game_data"],["mame/hash/juicebox.xml",18075,"game_data"],["mame/hash/juku.xml",6267,"game_data"],["mame/hash/jupace_cass.xml",81423,"game_data"],["mame/hash/jupace_snap.xml",2564,"game_data"],["mame/hash/k28.xml",3157,"game_data"],["mame/hash/k28o.xml",827,"game_data"],["mame/hash/kaypro.xml",8389,"game_data"],["mame/hash/kc_cart.xml",2336,"game_data"],["mame/hash/kc_cass.xml",70753,"game_data"],["mame/hash/kc_flop.xml",2125,"game_data"],["mame/hash/kim1_cass.xml",4296,"game_data"],["mame/hash/kisssite_cd.xml",13436,"game_data"],["mame/hash/korvet_flop.xml",8743,"game_data"],["mame/hash/lanteach.xml",561,"game_data"],["mame/hash/lantrans.xml",4167,"game_data"],["mame/hash/leapfrog_didj_cart.xml",3419,"game_data"],["mame/hash/leapfrog_iquest_cart.xml",996,"game_data"],["mame/hash/leapfrog_leappad_cart.xml",91522,"game_data"],["mame/hash/leapfrog_ltleappad_cart.xml",9206,"game_data"],["mame/hash/leapfrog_mfleappad_cart.xml",11748,"game_data"],["mame/hash/leapfrog_zippity_cart.xml",1903,"game_data"],["mame/hash/leapster.xml",79859,"game_data"],["mame/hash/leapster_explorer_cart.xml",2082,"game_data"],["mame/hash/lisa.xml",35666,"game_data"],["mame/hash/lisa2.xml",5305,"game_data"],["mame/hash/lk3000.xml",2341,"game_data"],["mame/hash/lnux4004.xml",551,"game_data"],["mame/hash/lviv.xml",117889,"game_data"],["mame/hash/lynx.xml",57321,"game_data"],["mame/hash/m20.xml",24233,"game_data"],["mame/hash/m24.xml",585,"game_data"],["mame/hash/m3.xml",567,"game_data"],["mame/hash/m5_cart.xml",24121,"game_data"],["mame/hash/m5_cass.xml",16984,"game_data"],["mame/hash/m5_flop.xml",1025,"game_data"],["mame/hash/mbc200.xml",906,"game_data"],["mame/hash/mbc55x.xml",6393,"game_data"],["mame/hash/mbee_cart.xml",23641,"game_data"],["mame/hash/mbee_cass.xml",1994,"game_data"],["mame/hash/mbee_flop.xml",218405,"game_data"],["mame/hash/mbee_quik.xml",64816,"game_data"],["mame/hash/mc1000_cass.xml",53448,"game_data"],["mame/hash/mc1502_flop.xml",949,"game_data"],["mame/hash/md2_flop.xml",2723,"game_data"],["mame/hash/megacd.xml",1291438,"game_data"],["mame/hash/megadriv.xml",1656213,"game_data"],["mame/hash/megaduck.xml",19227,"game_data"],["mame/hash/megapc.xml",1756,"game_data"],["mame/hash/mephisto_mm1.xml",613,"game_data"],["mame/hash/mephisto_mm2.xml",650,"game_data"],["mame/hash/mephisto_mm4.xml",618,"game_data"],["mame/hash/mephisto_mm5.xml",616,"game_data"],["mame/hash/mephisto_smondial2.xml",681,"game_data"],["mame/hash/microbox2_flop.xml",955,"game_data"],["mame/hash/microvision.xml",12187,"game_data"],["mame/hash/midi_flop.xml",1102,"game_data"],["mame/hash/mikro80.xml",2155,"game_data"],["mame/hash/mikrosha_cart.xml",564,"game_data"],["mame/hash/mikrosha_cass.xml",19640,"game_data"],["mame/hash/mindset_flop.xml",889,"game_data"],["mame/hash/misterx.xml",1485,"game_data"],["mame/hash/mk14_quik.xml",1607,"game_data"],["mame/hash/mm1_flop.xml",3737,"game_data"],["mame/hash/mm2_flop.xml",1145,"game_data"],["mame/hash/mm2_hdd.xml",564,"game_data"],["mame/hash/mo5_cart.xml",21269,"game_data"],["mame/hash/mo5_cass.xml",706525,"game_data"],["mame/hash/mo5_flop.xml",32837,"game_data"],["mame/hash/mo5_qd.xml",12350,"game_data"],["mame/hash/mo6_cass.xml",70027,"game_data"],["mame/hash/mo6_flop.xml",23106,"game_data"],["mame/hash/mobigo_cart.xml",23750,"game_data"],["mame/hash/monon_color.xml",15292,"game_data"],["mame/hash/mpc3000_flop.xml",3350,"game_data"],["mame/hash/mpc60_flop.xml",15063,"game_data"],["mame/hash/mpf1_rom.xml",2881,"game_data"],["mame/hash/mpu1000.xml",614,"game_data"],["mame/hash/mpz80.xml",21352,"game_data"],["mame/hash/msx.hsi",130435,"game_data"],["mame/hash/msx1_bee_card.xml",5450,"game_data"],["mame/hash/msx1_cart.xml",1069721,"game_data"],["mame/hash/msx1_cass.xml",815967,"game_data"],["mame/hash/msx1_flop.xml",243313,"game_data"],["mame/hash/msx1_flop_525.xml",8311,"game_data"],["mame/hash/msx2.hsi",290917,"game_data"],["mame/hash/msx2_cart.xml",191807,"game_data"],["mame/hash/msx2_cass.xml",2308,"game_data"],["mame/hash/msx2_flop.xml",1138601,"game_data"],["mame/hash/msx2p_cart.xml",2243,"game_data"],["mame/hash/msx2p_flop.xml",35351,"game_data"],["mame/hash/msx_softcard.xml",2406,"game_data"],["mame/hash/msx_yamaha_minicart.xml",913,"game_data"],["mame/hash/msxr_cart.xml",4556,"game_data"],["mame/hash/msxr_flop.xml",58312,"game_data"],["mame/hash/mt65_cass.xml",3972,"game_data"],["mame/hash/mt65_rom.xml",7665,"game_data"],["mame/hash/mt65_snap.xml",6125,"game_data"],["mame/hash/mtu130_flop.xml",2682,"game_data"],["mame/hash/mtx_cart.xml",3484,"game_data"],["mame/hash/mtx_cass.xml",23223,"game_data"],["mame/hash/mtx_flop.xml",3849,"game_data"],["mame/hash/mtx_hdd.xml",1479,"game_data"],["mame/hash/mtx_rom.xml",2033,"game_data"],["mame/hash/mylife_cart.xml",3029,"game_data"],["mame/hash/myvision.xml",10822,"game_data"],["mame/hash/mz2000_cass.xml",18487,"game_data"],["mame/hash/mz2000_flop.xml",6827,"game_data"],["mame/hash/mz2000_snap.xml",6357,"game_data"],["mame/hash/mz2500_flop.xml",41591,"game_data"],["mame/hash/mz5500_flop.xml",3298,"game_data"],["mame/hash/mz700_cass.xml",101940,"game_data"],["mame/hash/mz800_cass.xml",6416,"game_data"],["mame/hash/mz800_rom.xml",1699,"game_data"],["mame/hash/mz80b_cass.xml",3476,"game_data"],["mame/hash/mz80b_flop.xml",1334,"game_data"],["mame/hash/mz80k_cass.xml",17674,"game_data"],["mame/hash/n64.xml",634504,"game_data"],["mame/hash/n64_lodgenet.xml",18886,"game_data"],["mame/hash/n64dd.xml",7365,"game_data"],["mame/hash/nascom_flop.xml",4009,"game_data"],["mame/hash/nascom_snap.xml",32837,"game_data"],["mame/hash/nascom_socket.xml",2918,"game_data"],["mame/hash/neocd.xml",69767,"game_data"],["mame/hash/neogeo.xml",861636,"game_data"],["mame/hash/nes.hsi",2901163,"game_data"],["mame/hash/nes.xml",3760989,"game_data"],["mame/hash/nes_ade.xml",3683,"game_data"],["mame/hash/nes_datach.xml",5512,"game_data"],["mame/hash/nes_kstudio.xml",1679,"game_data"],["mame/hash/nes_ntbrom.xml",1534,"game_data"],["mame/hash/nes_vt_cart.xml",1225,"game_data"],["mame/hash/next.xml",4495,"game_data"],["mame/hash/next_cdrom.xml",2473,"game_data"],["mame/hash/next_hdd.xml",5837,"game_data"],["mame/hash/ngp.xml",6692,"game_data"],["mame/hash/ngpc.xml",69520,"game_data"],["mame/hash/nimbus.xml",14651,"game_data"],["mame/hash/novag_ssensor4.xml",690,"game_data"],["mame/hash/nuon.xml",3452,"game_data"],["mame/hash/octopus.xml",3416,"game_data"],["mame/hash/ondra.xml",4936,"game_data"],["mame/hash/orao.xml",25307,"game_data"],["mame/hash/oric1_cass.xml",201867,"game_data"],["mame/hash/orina_stylish_plus_cart.xml",694,"game_data"],["mame/hash/orion_cart.xml",898,"game_data"],["mame/hash/orion_cass.xml",28871,"game_data"],["mame/hash/orion_flop.xml",42898,"game_data"],["mame/hash/orionpro_flop.xml",12350,"game_data"],["mame/hash/osborne1.xml",10325,"game_data"],["mame/hash/osborne2.xml",2130,"game_data"],["mame/hash/p2000_cart.xml",19726,"game_data"],["mame/hash/p2000_cass.xml",80619,"game_data"],["mame/hash/p500_flop.xml",925,"game_data"],["mame/hash/partner_cass.xml",27737,"game_data"],["mame/hash/partner_flop.xml",890,"game_data"],["mame/hash/pasogo.xml",4088,"game_data"],["mame/hash/pasopia7_cass.xml",1740,"game_data"],["mame/hash/pasopia_cass.xml",3381,"game_data"],["mame/hash/pb2000c.xml",994,"game_data"],["mame/hash/pc1000.xml",5519,"game_data"],["mame/hash/pc100_flop.xml",3563,"game_data"],["mame/hash/pc1512_flop.xml",6358,"game_data"],["mame/hash/pc1512_hdd.xml",511,"game_data"],["mame/hash/pc1640_flop.xml",2796,"game_data"],["mame/hash/pc1640_hdd.xml",572,"game_data"],["mame/hash/pc200.xml",1683,"game_data"],["mame/hash/pc6001_cart.xml",6880,"game_data"],["mame/hash/pc6001_cass.xml",52713,"game_data"],["mame/hash/pc6001mk2_cass.xml",42402,"game_data"],["mame/hash/pc6001mk2_flop.xml",5521,"game_data"],["mame/hash/pc6001mk2sr_cass.xml",8673,"game_data"],["mame/hash/pc6001mk2sr_flop.xml",1876,"game_data"],["mame/hash/pc8201.xml",1733,"game_data"],["mame/hash/pc8801_cass.xml",56042,"game_data"],["mame/hash/pc8801_cdrom.xml",6105,"game_data"],["mame/hash/pc8801_flop.xml",2323906,"game_data"],["mame/hash/pc8801_flop_orig.xml",840,"game_data"],["mame/hash/pc88va.xml",66115,"game_data"],["mame/hash/pc88va_flop_orig.xml",5665,"game_data"],["mame/hash/pc98.xml",3156503,"game_data"],["mame/hash/pc98_cd.xml",496918,"game_data"],["mame/hash/pc98_flop_orig.xml",10051,"game_data"],["mame/hash/pc98_hdd.xml",939,"game_data"],["mame/hash/pcd_flop.xml",2088,"game_data"],["mame/hash/pce.xml",168484,"game_data"],["mame/hash/pcecd.xml",359086,"game_data"],["mame/hash/pcfx.xml",6670,"game_data"],["mame/hash/pcw16.xml",2116,"game_data"],["mame/hash/pcx_flop.xml",7886,"game_data"],["mame/hash/pda600.xml",1050,"game_data"],["mame/hash/pdp1_ptp.xml",2537,"game_data"],["mame/hash/pecom_cass.xml",3816,"game_data"],["mame/hash/pencil2.xml",4876,"game_data"],["mame/hash/pencil2_cass.xml",7881,"game_data"],["mame/hash/pentagon_cass.xml",1246,"game_data"],["mame/hash/pet_cass.xml",106400,"game_data"],["mame/hash/pet_flop.xml",33750,"game_data"],["mame/hash/pet_hdd.xml",1283,"game_data"],["mame/hash/pet_quik.xml",1032,"game_data"],["mame/hash/pet_rom.xml",14809,"game_data"],["mame/hash/phc25_cass.xml",12548,"game_data"],["mame/hash/pi_storyreader_cart.xml",22422,"game_data"],["mame/hash/pi_storyreader_v2_cart.xml",658,"game_data"],["mame/hash/picno.xml",12147,"game_data"],["mame/hash/pico.xml",288031,"game_data"],["mame/hash/pippin.xml",45021,"game_data"],["mame/hash/pippin_flop.xml",750,"game_data"],["mame/hash/pixter_cart.xml",2630,"game_data"],["mame/hash/playmaker.xml",1242,"game_data"],["mame/hash/pls1000_cart.xml",2938,"game_data"],["mame/hash/plus4_cart.xml",10278,"game_data"],["mame/hash/plus4_cass.xml",1191,"game_data"],["mame/hash/plus4_flop.xml",2108,"game_data"],["mame/hash/plus4_quik.xml",951,"game_data"],["mame/hash/pmd85_cass.xml",45145,"game_data"],["mame/hash/pockchalv2.xml",18615,"game_data"],["mame/hash/pockchalw.xml",30826,"game_data"],["mame/hash/pofo.xml",2062,"game_data"],["mame/hash/poisk1_flop.xml",961,"game_data"],["mame/hash/pokemini.xml",19575,"game_data"],["mame/hash/poly_flop.xml",1085,"game_data"],["mame/hash/polysix.xml",889,"game_data"],["mame/hash/popstar_cart.xml",1581,"game_data"],["mame/hash/precur2w_cart.xml",782,"game_data"],["mame/hash/princ.xml",3746,"game_data"],["mame/hash/pro128_cart.xml",1868,"game_data"],["mame/hash/pro128_cass.xml",81276,"game_data"],["mame/hash/pro128_flop.xml",1233,"game_data"],["mame/hash/prof180.xml",1181,"game_data"],["mame/hash/prof80.xml",865,"game_data"],["mame/hash/psi98.xml",1275,"game_data"],["mame/hash/psion1.xml",3874,"game_data"],["mame/hash/psion2.xml",79959,"game_data"],["mame/hash/psion_flop.xml",1096,"game_data"],["mame/hash/psion_quik.xml",5838,"game_data"],["mame/hash/psion_ssd.xml",21905,"game_data"],["mame/hash/psx.xml",3919227,"game_data"],["mame/hash/pt68k2.xml",555,"game_data"],["mame/hash/pv1000.xml",12768,"game_data"],["mame/hash/px4_cart.xml",3064,"game_data"],["mame/hash/px8_cart.xml",7208,"game_data"],["mame/hash/pyl601.xml",5562,"game_data"],["mame/hash/ql_cart.xml",1279,"game_data"],["mame/hash/ql_cass.xml",1897,"game_data"],["mame/hash/ql_flop.xml",2234,"game_data"],["mame/hash/quizwiz.xml",3091,"game_data"],["mame/hash/qx10_flop.xml",3250,"game_data"],["mame/hash/r8_card.xml",4710,"game_data"],["mame/hash/r9751.xml",10712,"game_data"],["mame/hash/radio86_cart.xml",539,"game_data"],["mame/hash/radio86_cass.xml",36046,"game_data"],["mame/hash/rainbow.xml",10136,"game_data"],["mame/hash/ramstar.xml",6165,"game_data"],["mame/hash/roland_tnsc1.xml",4197,"game_data"],["mame/hash/roland_tnsc2.xml",3332,"game_data"],["mame/hash/rwtrntcs.xml",1090,"game_data"],["mame/hash/rz1_cass.xml",2687,"game_data"],["mame/hash/s2000_flop.xml",603,"game_data"],["mame/hash/s3000_cdrom.xml",3926,"game_data"],["mame/hash/sagafox.xml",531,"game_data"],["mame/hash/sage2.xml",4188,"game_data"],["mame/hash/saitek_egr.xml",2069,"game_data"],["mame/hash/saitek_kso.xml",1105,"game_data"],["mame/hash/saitek_schess.xml",1334,"game_data"],["mame/hash/samcoupe_cass.xml",1614,"game_data"],["mame/hash/samcoupe_flop.xml",21118,"game_data"],["mame/hash/sat_cart.xml",6332,"game_data"],["mame/hash/sat_vccart.xml",8717,"game_data"],["mame/hash/saturn.xml",1716943,"game_data"],["mame/hash/sawatte.xml",10312,"game_data"],["mame/hash/sb80_flop.xml",2853,"game_data"],["mame/hash/sbrain.xml",525,"game_data"],["mame/hash/sc3000_cart.xml",16483,"game_data"],["mame/hash/sc3000_cass.xml",19145,"game_data"],["mame/hash/sd132_flop.xml",2596,"game_data"],["mame/hash/sd1_flop.xml",568,"game_data"],["mame/hash/sdk85.xml",1175,"game_data"],["mame/hash/sf7000.xml",10494,"game_data"],["mame/hash/sg1000.xml",118348,"game_data"],["mame/hash/sgi_mips.xml",242357,"game_data"],["mame/hash/sgi_mips_hdd.xml",2337,"game_data"],["mame/hash/sgx.xml",2705,"game_data"],["mame/hash/singingstarkaraoke_cart.xml",1479,"game_data"],["mame/hash/sitcom.xml",6387,"game_data"],["mame/hash/smartcycle_cart.xml",6112,"game_data"],["mame/hash/smarttv_cart.xml",6900,"game_data"],["mame/hash/smc777.xml",71270,"game_data"],["mame/hash/snes.xml",2841229,"game_data"],["mame/hash/snes_bspack.xml",213194,"game_data"],["mame/hash/snes_strom.xml",8678,"game_data"],["mame/hash/snes_vkun.xml",1383,"game_data"],["mame/hash/snotec.xml",8033,"game_data"],["mame/hash/snread.xml",3415,"game_data"],["mame/hash/snspell.xml",5704,"game_data"],["mame/hash/softbox.xml",996,"game_data"],["mame/hash/softwarelist.dtd",2483,"game_data"],["mame/hash/sol20_cass.xml",35251,"game_data"],["mame/hash/sony_news.xml",4134,"game_data"],["mame/hash/sorcerer_cart.xml",7212,"game_data"],["mame/hash/sorcerer_cass.xml",58610,"game_data"],["mame/hash/sorcerer_flop.xml",2033,"game_data"],["mame/hash/spc1000_cass.xml",44923,"game_data"],["mame/hash/spc1500_cass.xml",1620,"game_data"],["mame/hash/special_cass.xml",56426,"game_data"],["mame/hash/special_flop.xml",903,"game_data"],["mame/hash/specnext_sd.xml",1136,"game_data"],["mame/hash/specpls3_flop.xml",813283,"game_data"],["mame/hash/spectrum_betadisc_flop.xml",51683,"game_data"],["mame/hash/spectrum_cart.xml",9023,"game_data"],["mame/hash/spectrum_cass.xml",6897158,"game_data"],["mame/hash/spectrum_flop_opus.xml",30500,"game_data"],["mame/hash/spectrum_mgt_flop.xml",4836,"game_data"],["mame/hash/spectrum_microdrive.xml",28256,"game_data"],["mame/hash/spectrum_wafadrive.xml",701,"game_data"],["mame/hash/sprachmg.xml",4905,"game_data"],["mame/hash/squale_cart.xml",2249,"game_data"],["mame/hash/ssem_quik.xml",4598,"game_data"],["mame/hash/st_cart.xml",3348,"game_data"],["mame/hash/st_flop.xml",210727,"game_data"],["mame/hash/st_flop_demos.xml",3744,"game_data"],["mame/hash/stepone_flop.xml",4628,"game_data"],["mame/hash/studio2.xml",32602,"game_data"],["mame/hash/sun_sparc.xml",4191,"game_data"],["mame/hash/super6.xml",6296,"game_data"],["mame/hash/super80_cass.xml",102426,"game_data"],["mame/hash/super80_flop.xml",1706,"game_data"],["mame/hash/super_tv_pc_cart.xml",3902,"game_data"],["mame/hash/superpet_flop.xml",13019,"game_data"],["mame/hash/supracan.xml",10722,"game_data"],["mame/hash/sv8000.xml",3267,"game_data"],["mame/hash/svi318_cart.xml",4379,"game_data"],["mame/hash/svi318_cass.xml",86966,"game_data"],["mame/hash/svi318_flop.xml",2959,"game_data"],["mame/hash/svision.xml",29557,"game_data"],["mame/hash/svmu.xml",29673,"game_data"],["mame/hash/t1000.xml",7944,"game_data"],["mame/hash/tandy200.xml",1727,"game_data"],["mame/hash/tandy2k.xml",4874,"game_data"],["mame/hash/tandy6k.xml",4732,"game_data"],["mame/hash/tc4.xml",1582,"game_data"],["mame/hash/tdv2324.xml",3160,"game_data"],["mame/hash/tek4052_cart.xml",2734,"game_data"],["mame/hash/telestory_cart.xml",9328,"game_data"],["mame/hash/teradrive_flop.xml",4861,"game_data"],["mame/hash/teradrive_hdd.xml",954,"game_data"],["mame/hash/tg16.xml",37822,"game_data"],["mame/hash/thinkpad8xx.xml",6558,"game_data"],["mame/hash/ti74_cart.xml",1611,"game_data"],["mame/hash/ti95_cart.xml",1071,"game_data"],["mame/hash/tiki100.xml",33003,"game_data"],["mame/hash/timex_cass.xml",53889,"game_data"],["mame/hash/timex_dock.xml",17721,"game_data"],["mame/hash/tmc600_quik.xml",1369,"game_data"],["mame/hash/tntell.xml",2942,"game_data"],["mame/hash/to770_cart.xml",772,"game_data"],["mame/hash/to770a_cart.xml",758,"game_data"],["mame/hash/to7_cart.xml",25832,"game_data"],["mame/hash/to7_cass.xml",305755,"game_data"],["mame/hash/to7_qd.xml",9433,"game_data"],["mame/hash/to8_cass.xml",6669,"game_data"],["mame/hash/to8_qd.xml",3289,"game_data"],["mame/hash/to_flop.xml",545143,"game_data"],["mame/hash/triton_rom.xml",532,"game_data"],["mame/hash/trs80m2.xml",9352,"game_data"],["mame/hash/trsm100.xml",5175,"game_data"],["mame/hash/tsconf.xml",16553,"game_data"],["mame/hash/ttwist_brainquest_cart.xml",682,"game_data"],["mame/hash/turboextreme_cart.xml",607,"game_data"],["mame/hash/tvc_cart.xml",5156,"game_data"],["mame/hash/tvc_cass.xml",97888,"game_data"],["mame/hash/tvc_flop.xml",326997,"game_data"],["mame/hash/tvdear.xml",1842,"game_data"],["mame/hash/tvgogo.xml",5603,"game_data"],["mame/hash/tvochken.xml",16440,"game_data"],["mame/hash/tx0_ptp.xml",6329,"game_data"],["mame/hash/u110_card.xml",8800,"game_data"],["mame/hash/unichamp.xml",1778,"game_data"],["mame/hash/ut88.xml",2584,"game_data"],["mame/hash/uzebox.xml",50778,"game_data"],["mame/hash/v1050_flop.xml",4387,"game_data"],["mame/hash/v1050_hdd.xml",1054,"game_data"],["mame/hash/vbaby_cart.xml",4246,"game_data"],["mame/hash/vboy.xml",23269,"game_data"],["mame/hash/vc4000.xml",17828,"game_data"],["mame/hash/vector06_cart.xml",679,"game_data"],["mame/hash/vector06_flop.xml",7730,"game_data"],["mame/hash/vfxsd_flop.xml",994,"game_data"],["mame/hash/vgmplay.xml",19970196,"game_data"],["mame/hash/vic10.xml",13030,"game_data"],["mame/hash/vic1001_cart.xml",159400,"game_data"],["mame/hash/vic1001_cass.xml",1136,"game_data"],["mame/hash/vic1001_flop.xml",3222,"game_data"],["mame/hash/victor9k_flop.xml",1056,"game_data"],["mame/hash/vidbrain.xml",9944,"game_data"],["mame/hash/videoart.xml",3840,"game_data"],["mame/hash/videopac.xml",107901,"game_data"],["mame/hash/vii.xml",903,"game_data"],["mame/hash/vip.xml",981,"game_data"],["mame/hash/visicom.xml",3074,"game_data"],["mame/hash/vixen.xml",7617,"game_data"],["mame/hash/vsmile_cd.xml",28424,"game_data"],["mame/hash/vsmileb_cart.xml",20217,"game_data"],["mame/hash/vtech2_cass.xml",2383,"game_data"],["mame/hash/vtech_innotab_cart.xml",10101,"game_data"],["mame/hash/vtech_innotv_cart.xml",2019,"game_data"],["mame/hash/vtech_storio_cart.xml",13859,"game_data"],["mame/hash/wangpc.xml",2810,"game_data"],["mame/hash/waveterm.xml",2024,"game_data"],["mame/hash/wicat.xml",10200,"game_data"],["mame/hash/wizard_cart.xml",6438,"game_data"],["mame/hash/wmbullet.xml",1680,"game_data"],["mame/hash/wren_flop.xml",2590,"game_data"],["mame/hash/wscolor.xml",103090,"game_data"],["mame/hash/wswan.xml",145839,"game_data"],["mame/hash/x07_card.xml",698,"game_data"],["mame/hash/x07_cass.xml",51019,"game_data"],["mame/hash/x1_cass.xml",76089,"game_data"],["mame/hash/x1_flop.xml",249940,"game_data"],["mame/hash/x37_flop.xml",6292,"game_data"],["mame/hash/x37_hdd.xml",530,"game_data"],["mame/hash/x68k_flop.xml",1441600,"game_data"],["mame/hash/xerox820.xml",5473,"game_data"],["mame/hash/xerox820ii.xml",4778,"game_data"],["mame/hash/yeno_laptop_cart.xml",1742,"game_data"],["mame/hash/z80clock.xml",9043,"game_data"],["mame/hash/z80ne_cass.xml",42440,"game_data"],["mame/hash/z80ne_flop.xml",30301,"game_data"],["mame/hash/z88_cart.xml",24642,"game_data"],["mame/hash/zorba.xml",33048,"game_data"],["mame/hash/zx80_cass.xml",3169,"game_data"],["mame/hash/zx81_cass.xml",474158,"game_data"],["mame/plugins/README.md",88,"game_data"],["mame/plugins/autofire/autofire_menu.lua",11558,"game_data"],["mame/plugins/autofire/autofire_save.lua",2817,"game_data"],["mame/plugins/autofire/init.lua",3223,"game_data"],["mame/plugins/autofire/plugin.json",162,"game_data"],["mame/plugins/boot.lua",990,"game_data"],["mame/plugins/cheat/cheat_json.lua",198,"game_data"],["mame/plugins/cheat/cheat_simple.lua",10784,"game_data"],["mame/plugins/cheat/cheat_xml.lua",7419,"game_data"],["mame/plugins/cheat/init.lua",26494,"game_data"],["mame/plugins/cheat/plugin.json",149,"game_data"],["mame/plugins/cheat/xml_to_json.lua",252,"game_data"],["mame/plugins/cheatfind/init.lua",35221,"game_data"],["mame/plugins/cheatfind/plugin.json",168,"game_data"],["mame/plugins/commonui/init.lua",5312,"game_data"],["mame/plugins/commonui/plugin.json",154,"game_data"],["mame/plugins/console/init.lua",8744,"game_data"],["mame/plugins/console/plugin.json",153,"game_data"],["mame/plugins/data/button_char.lua",7593,"game_data"],["mame/plugins/data/data_command.lua",635,"game_data"],["mame/plugins/data/data_gameinit.lua",466,"game_data"],["mame/plugins/data/data_hiscore.lua",41388,"game_data"],["mame/plugins/data/data_history.lua",5235,"game_data"],["mame/plugins/data/data_mameinfo.lua",908,"game_data"],["mame/plugins/data/data_marp.lua",3763,"game_data"],["mame/plugins/data/data_messinfo.lua",912,"game_data"],["mame/plugins/data/data_story.lua",792,"game_data"],["mame/plugins/data/data_sysinfo.lua",475,"game_data"],["mame/plugins/data/database.lua",3853,"game_data"],["mame/plugins/data/init.lua",1938,"game_data"],["mame/plugins/data/load_dat.lua",6420,"game_data"],["mame/plugins/data/plugin.json",146,"game_data"],["mame/plugins/discord/init.lua",2881,"game_data"],["mame/plugins/discord/plugin.json",155,"game_data"],["mame/plugins/dummy/init.lua",881,"game_data"],["mame/plugins/dummy/plugin.json",167,"game_data"],["mame/plugins/gdbstub/init.lua",7838,"game_data"],["mame/plugins/gdbstub/plugin.json",154,"game_data"],["mame/plugins/hiscore/hiscore.dat",314161,"game_data"],["mame/plugins/hiscore/init.lua",10287,"game_data"],["mame/plugins/hiscore/plugin.json",167,"game_data"],["mame/plugins/hiscore/sort_hiscore.lua",4447,"game_data"],["mame/plugins/inputmacro/init.lua",3797,"game_data"],["mame/plugins/inputmacro/inputmacro_menu.lua",20962,"game_data"],["mame/plugins/inputmacro/inputmacro_persist.lua",3719,"game_data"],["mame/plugins/inputmacro/plugin.json",171,"game_data"],["mame/plugins/json/LICENSE",1079,"game_data"],["mame/plugins/json/README.md",45,"game_data"],["mame/plugins/json/init.lua",21505,"game_data"],["mame/plugins/json/plugin.json",136,"game_data"],["mame/plugins/keypress/init.lua",1162,"game_data"],["mame/plugins/keypress/plugin.json",195,"game_data"],["mame/plugins/layout/init.lua",2376,"game_data"],["mame/plugins/layout/plugin.json",157,"game_data"],["mame/plugins/offscreenreload/init.lua",2415,"game_data"],["mame/plugins/offscreenreload/offscreenreload_menu.lua",11498,"game_data"],["mame/plugins/offscreenreload/offscreenreload_persist.lua",3471,"game_data"],["mame/plugins/offscreenreload/plugin.json",189,"game_data"],["mame/plugins/plugin.schema",655,"game_data"],["mame/plugins/portname/init.lua",5173,"game_data"],["mame/plugins/portname/plugin.json",170,"game_data"],["mame/plugins/timecode/init.lua",11542,"game_data"],["mame/plugins/timecode/plugin.json",175,"game_data"],["mame/plugins/timer/init.lua",2359,"game_data"],["mame/plugins/timer/plugin.json",161,"game_data"],["mame/plugins/timer/timer_persist.lua",7109,"game_data"],["mame/plugins/vector/init.lua",1443,"game_data"],["mame/plugins/vector/plugin.json",182,"game_data"],["mame/plugins/xml/LICENSE.txt",1061,"game_data"],["mame/plugins/xml/init.lua",12842,"game_data"],["mame/plugins/xml/plugin.json",146,"game_data"],["mame/samples/floppy/35_seek_12ms.wav",26540,"game_data"],["mame/samples/floppy/35_seek_20ms.wav",44144,"game_data"],["mame/samples/floppy/35_seek_2ms.wav",7450,"game_data"],["mame/samples/floppy/35_seek_6ms.wav",22230,"game_data"],["mame/samples/floppy/35_spin_empty.wav",17708,"game_data"],["mame/samples/floppy/35_spin_end.wav",17684,"game_data"],["mame/samples/floppy/35_spin_loaded.wav",17708,"game_data"],["mame/samples/floppy/35_spin_start_empty.wav",17708,"game_data"],["mame/samples/floppy/35_spin_start_loaded.wav",35308,"game_data"],["mame/samples/floppy/35_step_1_1.wav",6878,"game_data"],["mame/samples/floppy/525_seek_12ms.wav",22764,"game_data"],["mame/samples/floppy/525_seek_20ms.wav",30060,"game_data"],["mame/samples/floppy/525_seek_6ms.wav",14860,"game_data"],["mame/samples/floppy/525_spin_empty.wav",8864,"game_data"],["mame/samples/floppy/525_spin_end.wav",8864,"game_data"],["mame/samples/floppy/525_spin_loaded.wav",17708,"game_data"],["mame/samples/floppy/525_spin_start_empty.wav",11180,"game_data"],["mame/samples/floppy/525_spin_start_loaded.wav",17708,"game_data"],["mame/samples/floppy/525_step_1_1.wav",6628,"game_data"],["mame2000/cheat/cheat.dat",7971360,"game_data"],["mame2003-plus/artwork/blueshrk.zip",925914,"game_data"],["mame2003-plus/artwork/dotron.zip",2010009,"game_data"],["mame2003-plus/artwork/frogs.zip",2832731,"game_data"],["mame2003-plus/artwork/invaders.zip",4324198,"game_data"],["mame2003-plus/artwork/omegrace.zip",1754523,"game_data"],["mame2003-plus/artwork/skydiver.zip",117241,"game_data"],["mame2003-plus/artwork/solarq.zip",1342645,"game_data"],["mame2003-plus/artwork/warrior.zip",1125335,"game_data"],["mame2003-plus/cheat.dat",7971360,"game_data"],["mame2003-plus/hiscore.dat",131926,"game_data"],["mame2003-plus/history.dat",38635890,"game_data"],["mame2003-plus/mameinfo.dat",24837237,"game_data"],["mame2003/cheat.dat",7971360,"game_data"],["mame2003/hiscore.dat",215475,"game_data"],["mame2003/history.dat",38635890,"game_data"],["mame2003/mameinfo.dat",24837237,"game_data"],["mame2010/cheat.zip",24981772,"game_data"],["mame2010/hiscore.dat",202298,"game_data"],["mc1502_rom.zip",25819,"bios"],["mc_mk4_hopper.zip",791,"bios"],["mcpx_1.0.bin",512,"bios"],["md_kbd.zip",1044,"bios"],["md_rom_svp.zip",1263,"bios"],["mdisplay3.zip",14234,"bios"],["mg1_kbd_device.zip",740,"bios"],["mga2064w.zip",86678,"bios"],["microtan_kbd_mt009.zip",376,"bios"],["microtouch.zip",41890,"bios"],["midcsd.zip",222,"bios"],["midssio.zip",163,"bios"],["mindset_sound_module.zip",1102,"bios"],["minichif.zip",22917,"bios"],["mks3.zip",2351,"bios"],["mm1kb.zip",499,"bios"],["mm5740.zip",212,"bios"],["mockingboardd.zip",1861,"bios"],["model1io.zip",4700,"bios"],["model1io2.zip",17058,"bios"],["mpcb828.zip",167,"bios"],["mpcb896.zip",168,"bios"],["mpcb963.zip",164,"bios"],["mpcba79.zip",168,"bios"],["mpcbb68.zip",3163,"bios"],["mpcbb92.zip",3163,"bios"],["mpeg_card.bin",524288,"bios"],["mpf1_epb.zip",1497,"bios"],["mpf1_epb_ibp.zip",2667,"bios"],["mpf1_iom_ip.zip",1166,"bios"],["mpf1_prt.zip",2971,"bios"],["mpf1_prt_ip.zip",2760,"bios"],["mpf1_sgb.zip",2402,"bios"],["mpf1_ssb.zip",3448,"bios"],["mpf1_ssb_ip.zip",4164,"bios"],["mpf1_tva_ip.zip",1790,"bios"],["mpf1_vid.zip",2320,"bios"],["mpr-17933.bin",524288,"bios"],["mpr-18100.bin",524288,"bios"],["mpr-18811-mx.ic1",2097152,"bios"],["mpr-19367-mx.ic1",2097152,"bios"],["mps1200.zip",21255,"bios"],["mps1250.zip",26948,"bios"],["mpu401.zip",3573,"bios"],["mr9735_002.zip",542,"bios"],["ms7004.zip",1446,"bios"],["msdsd1.zip",11813,"bios"],["msdsd2.zip",12220,"bios"],["msm6222b01.zip",972,"bios"],["msmt070.zip",202,"bios"],["msmt071.zip",170,"bios"],["msmt081.zip",170,"bios"],["msmt094.zip",110283,"bios"],["msx_cart_bm_012.zip",5300,"bios"],["msx_cart_easispeech.zip",2011,"bios"],["msx_cart_sfg01.zip",10912,"bios"],["msx_cart_sfg05.zip",69473,"bios"],["msx_cart_skw01.zip",111704,"bios"],["msx_cart_sunrise_ataide.zip",158361,"bios"],["msx_moonsound.zip",1922475,"bios"],["mt32-roms/cm32l_control.rom",65536,"bios"],["mt32-roms/mt32_control.rom",65536,"bios"],["mt32-roms/pcm_cm32l.rom",1048576,"bios"],["mt32-roms/pcm_mt32.rom",524288,"bios"],["mtx_cfx.zip",54548,"bios"],["mtx_sdxbas.zip",10404,"bios"],["mtx_sdxcpm.zip",4710,"bios"],["mu5lcd.zip",12098,"bios"],["mulcd.zip",40392,"bios"],["mvme120.zip",47505,"bios"],["mvme121.zip",142638,"bios"],["mvme122.zip",142638,"bios"],["mvme123.zip",142638,"bios"],["mvme147.zip",251991,"bios"],["mvme180.zip",96310,"bios"],["mvme181.zip",127740,"bios"],["mvme187.zip",222085,"bios"],["mvme327a.zip",39770,"bios"],["mvme328.zip",47299,"bios"],["mvme350.zip",8228,"bios"],["mz1e30.zip",13614,"bios"],["mz1p16.zip",3679,"bios"],["mzr8105.zip",10272,"bios"],["nabupc_keyboard.zip",1348,"bios"],["namco50.zip",898,"bios"],["namco51.zip",716,"bios"],["namco52.zip",389,"bios"],["namco53.zip",675,"bios"],["namco54.zip",592,"bios"],["namco62.zip",645,"bios"],["namco_amc.zip",3052,"bios"],["namco_asca1.zip",130552,"bios"],["namco_asca3.zip",130552,"bios"],["namco_asca3a.zip",130552,"bios"],["namco_asca5.zip",130552,"bios"],["namco_csz1.zip",2730,"bios"],["namco_cyberlead.zip",130552,"bios"],["namco_cyberlead_led.zip",80055,"bios"],["namco_cyberleada.zip",130552,"bios"],["namco_emio102.zip",130552,"bios"],["namco_fca10.zip",130552,"bios"],["namco_fca11.zip",130552,"bios"],["namco_fcb.zip",130552,"bios"],["namco_tssio.zip",130552,"bios"],["namco_xmiu1.zip",130552,"bios"],["namcoc65.zip",2163,"bios"],["namcoc67.zip",6552,"bios"],["namcoc68.zip",1721,"bios"],["namcoc69.zip",7771,"bios"],["namcoc70.zip",7822,"bios"],["namcoc71.zip",2756,"bios"],["namcoc74.zip",6936,"bios"],["namcoc75.zip",8709,"bios"],["namcoc76.zip",9579,"bios"],["nanoreseau_mo.zip",1937,"bios"],["nanoreseau_to.zip",1970,"bios"],["nb_aenet.zip",400,"bios"],["nb_amc3b.zip",417,"bios"],["nb_btbug.zip",91614,"bios"],["nb_c264.zip",6489,"bios"],["nb_laserview.zip",4885,"bios"],["nb_m2hr.zip",3538,"bios"],["nb_m2vc.zip",2106,"bios"],["nb_mdc48.zip",6576,"bios"],["nb_pcs8.zip",9570,"bios"],["nb_qdlink.zip",3316,"bios"],["nb_rtpd.zip",1828,"bios"],["nb_sp8s3.zip",23241,"bios"],["nb_spdq.zip",39282,"bios"],["nb_thungx.zip",18290,"bios"],["nb_thungx16.zip",18318,"bios"],["nb_vikbw.zip",2162,"bios"],["nb_wkstn.zip",2715,"bios"],["nb_wspt.zip",2646,"bios"],["ncr53c825_pci.zip",10043,"bios"],["nds7.bin",16384,"bios"],["nds9.bin",4096,"bios"],["nds_sd_card.bin",1048576,"bios"],["neocd.zip",429431,"bios"],["neocd/000-lo.lo",131072,"bios"],["neocd/front-sp1.bin",524288,"bios"],["neocd/neocd.bin",524288,"bios"],["neocd/neocd_f.rom",524288,"bios"],["neocd/neocd_sf.rom",524288,"bios"],["neocd/neocd_st.rom",524288,"bios"],["neocd/neocd_sz.rom",524288,"bios"],["neocd/neocd_t.rom",524288,"bios"],["neocd/neocd_z.rom",524288,"bios"],["neocd/ng-lo.rom",65536,"bios"],["neocd/top-sp1.bin",524288,"bios"],["neocd/uni-bioscd.rom",524288,"bios"],["neocdz.zip",955352,"bios"],["neocdz.zip",1181333,"bios"],["neogeo.zip",1859335,"bios"],["neon250.zip",20999,"bios"],["nes.pal",192,"bios"],["nes_rob.zip",637,"bios"],["nestopia/samples/ftaerobi/00.wav",378030,"game_data"],["nestopia/samples/ftaerobi/01.wav",145582,"game_data"],["nestopia/samples/ftaerobi/02.wav",114606,"game_data"],["nestopia/samples/ftaerobi/03.wav",311470,"game_data"],["nestopia/samples/ftaerobi/04.wav",94382,"game_data"],["nestopia/samples/ftaerobi/05.wav",95404,"game_data"],["nestopia/samples/ftaerobi/06.wav",98476,"game_data"],["nestopia/samples/ftaerobi/07.wav",90284,"game_data"],["nestopia/samples/moepro/00.wav",60848,"game_data"],["nestopia/samples/moepro/01.wav",37296,"game_data"],["nestopia/samples/moepro/02.wav",45742,"game_data"],["nestopia/samples/moepro/03.wav",75950,"game_data"],["nestopia/samples/moepro/04.wav",59056,"game_data"],["nestopia/samples/moepro/05.wav",52402,"game_data"],["nestopia/samples/moepro/06.wav",25644,"game_data"],["nestopia/samples/moepro/07.wav",58796,"game_data"],["nestopia/samples/moepro/08.wav",61104,"game_data"],["nestopia/samples/moepro/09.wav",79024,"game_data"],["nestopia/samples/moepro/10.wav",55986,"game_data"],["nestopia/samples/moepro/11.wav",59310,"game_data"],["nestopia/samples/moepro/12.wav",33198,"game_data"],["nestopia/samples/moepro/13.wav",49714,"game_data"],["nestopia/samples/moepro/14.wav",35246,"game_data"],["nestopia/samples/moepro/15.wav",267952,"game_data"],["nestopia/samples/moepro88/00.wav",25132,"game_data"],["nestopia/samples/moepro88/01.wav",29874,"game_data"],["nestopia/samples/moepro88/02.wav",25454,"game_data"],["nestopia/samples/moepro88/03.wav",26028,"game_data"],["nestopia/samples/moepro88/04.wav",36144,"game_data"],["nestopia/samples/moepro88/05.wav",35884,"game_data"],["nestopia/samples/moepro88/06.wav",34990,"game_data"],["nestopia/samples/moepro88/07.wav",49580,"game_data"],["nestopia/samples/moepro88/08.wav",49966,"game_data"],["nestopia/samples/moepro88/09.wav",49716,"game_data"],["nestopia/samples/moepro88/10.wav",56752,"game_data"],["nestopia/samples/moepro88/11.wav",58542,"game_data"],["nestopia/samples/moepro88/12.wav",34994,"game_data"],["nestopia/samples/moepro88/13.wav",31410,"game_data"],["nestopia/samples/moepro88/14.wav",128176,"game_data"],["nestopia/samples/moepro88/15.wav",26416,"game_data"],["nestopia/samples/moepro88/16.wav",44,"game_data"],["nestopia/samples/moepro88/17.wav",25390,"game_data"],["nestopia/samples/moepro88/18.wav",28590,"game_data"],["nestopia/samples/moepro88/19.wav",269490,"game_data"],["nestopia/samples/mptennis/00.wav",44,"game_data"],["nestopia/samples/mptennis/01.wav",44,"game_data"],["nestopia/samples/mptennis/02.wav",58796,"game_data"],["nestopia/samples/mptennis/03.wav",57260,"game_data"],["nestopia/samples/mptennis/04.wav",42412,"game_data"],["nestopia/samples/mptennis/05.wav",39724,"game_data"],["nestopia/samples/mptennis/06.wav",82732,"game_data"],["nestopia/samples/mptennis/07.wav",58028,"game_data"],["nestopia/samples/mptennis/08.wav",66732,"game_data"],["nestopia/samples/mptennis/09.wav",57132,"game_data"],["nestopia/samples/mptennis/10.wav",50860,"game_data"],["nestopia/samples/mptennis/11.wav",53490,"game_data"],["nestopia/samples/mptennis/12.wav",54572,"game_data"],["nestopia/samples/mptennis/13.wav",271406,"game_data"],["nestopia/samples/mptennis/14.wav",46510,"game_data"],["nestopia/samples/mptennis/15.wav",41900,"game_data"],["nestopia/samples/mptennis/16.wav",47532,"game_data"],["nestopia/samples/mptennis/17.wav",31664,"game_data"],["nestopia/samples/mptennis/18.wav",58924,"game_data"],["nestopia/samples/mptennis/19.wav",44,"game_data"],["nestopia/samples/terao/00.wav",90798,"game_data"],["nestopia/samples/terao/01.wav",54700,"game_data"],["nestopia/samples/terao/02.wav",48044,"game_data"],["nestopia/samples/terao/03.wav",83634,"game_data"],["nestopia/samples/terao/04.wav",77740,"game_data"],["nestopia/samples/terao/05.wav",80812,"game_data"],["newbrain_eim.zip",24763,"bios"],["newbrain_fdc.zip",128088,"bios"],["nlq401.zip",7554,"bios"],["nmk004.zip",3556,"bios"],["nokia_crtc186.zip",5203,"bios"],["novell_dcb.zip",3425,"bios"],["np2/2608_bd.wav",19192,"bios"],["np2/2608_hh.wav",36722,"bios"],["np2/2608_rim.wav",5288,"bios"],["np2/2608_sd.wav",15558,"bios"],["np2/2608_tom.wav",23092,"bios"],["np2/2608_top.wav",57016,"bios"],["np2/bios.rom",98304,"bios"],["np2/bios9821.rom",8192,"bios"],["np2/font.bmp",524350,"bios"],["np2/sasi.rom",4096,"bios"],["np2/scsi.rom",8192,"bios"],["np2/sound.rom",16384,"bios"],["np2kai/2608_BD.WAV",19192,"bios"],["np2kai/2608_HH.WAV",36722,"bios"],["np2kai/2608_RIM.WAV",5288,"bios"],["np2kai/2608_SD.WAV",15558,"bios"],["np2kai/2608_TOM.WAV",23092,"bios"],["np2kai/2608_TOP.WAV",57016,"bios"],["np2kai/FONT.ROM",288768,"bios"],["np2kai/bios.rom",98304,"bios"],["np2kai/font.bmp",524350,"bios"],["np2kai/ide.rom",8192,"bios"],["np2kai/itf.rom",32768,"bios"],["np2kai/pci.rom",32768,"bios"],["np2kai/sasi.rom",4096,"bios"],["np2kai/scsi.rom",8192,"bios"],["np2kai/sound.rom",16384,"bios"],["np600a3.zip",8089,"bios"],["nss_tvinterface.zip",17125,"bios"],["nxengine/Doukutsu.exe",1478656,"game_data"],["nxengine/data/npc.tbl",8664,"game_data"],["nxengine/data/sprites.sif",59482,"game_data"],["nxengine/tilekey.dat",1028,"game_data"],["o2rom.bin",1024,"bios"],["omniwave.zip",880710,"bios"],["omti8621isa.zip",13582,"bios"],["openbios.bin",524288,"bios"],["opera-boot.bin",131072,"bios"],["oric_jasmin.zip",471,"bios"],["oric_microdisc.zip",3254,"bios"],["osa_analyst.zip",348004,"bios"],["osa_bforce.zip",26799,"bios"],["osa_maestro.zip",324479,"bios"],["osa_maestroa.zip",47396,"bios"],["osa_sparc.zip",348745,"bios"],["oti64111_pci.zip",19135,"bios"],["p1_fdc.zip",6158,"bios"],["p1_hdc.zip",6372,"bios"],["p1_rom.zip",5821,"bios"],["p72.zip",351169,"bios"],["pa7246.zip",63947,"bios"],["palmos40-en-m500.rom",2359296,"bios"],["palmos41-en-m515.rom",4194304,"bios"],["palmos52-en-t3.rom",16777216,"bios"],["palmos60-en-t3.rom",16777216,"bios"],["panafz1-kanji.bin",933636,"bios"],["panafz1.bin",1048576,"bios"],["panafz10-norsa.bin",1048576,"bios"],["panafz10.bin",1048576,"bios"],["panafz10e-anvil-norsa.bin",1048576,"bios"],["panafz10e-anvil.bin",1048576,"bios"],["panafz10ja-anvil-kanji.bin",1048576,"bios"],["panafz1j-kanji.bin",1048576,"bios"],["panafz1j-norsa.bin",1048576,"bios"],["panafz1j.bin",1048576,"bios"],["partner_gdp.zip",1917,"bios"],["pc1512kb.zip",733,"bios"],["pc1640_iga.zip",8824,"bios"],["pc6022.zip",3694,"bios"],["pc80s31.zip",3242,"bios"],["pc80s31k.zip",7153,"bios"],["pc88va2_fd_if.zip",3891,"bios"],["pc9801_14.zip",5571,"bios"],["pc9801_26.zip",36650,"bios"],["pc9801_27.zip",2700,"bios"],["pc9801_55l.zip",4654,"bios"],["pc9801_55u.zip",4653,"bios"],["pc9801_86.zip",22165,"bios"],["pc98_fdd_2dd.zip",1959,"bios"],["pc98_fdd_2hd.zip",2702,"bios"],["pc98_otomichan_kai.zip",116066,"bios"],["pcd_kbd.zip",2572,"bios"],["pcd_video.zip",612,"bios"],["pcfx.rom",1048576,"bios"],["pcfxbios.bin",1048576,"bios"],["pcfxga.rom",1048576,"bios"],["pcfxv101.bin",1048576,"bios"],["pcsx2/bios/SCPH-10000.MEC",4,"bios"],["pcsx2/bios/SCPH-10000.bin",4194304,"bios"],["pcsx2/bios/SCPH-30004R.bin",4194304,"bios"],["pcsx2/bios/SCPH-39001.bin",4194304,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.BIN",4194304,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.NVM",1024,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.ROM1",524288,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.ROM2",524288,"bios"],["pcsx2/bios/SCPH-70004.BIN",4194304,"bios"],["pcsx2/bios/SCPH-70004.ROM1",524288,"bios"],["pcsx2/bios/SCPH-70006_BIOS_V12_HK_200.NVM",1024,"bios"],["pcsx2/bios/SCPH-70008_BIOS_V12_RUS_200.BIN",4194304,"bios"],["pcsx2/bios/SCPH-70008_BIOS_V12_RUS_200.NVM",1024,"bios"],["pcsx2/bios/SCPH-75008_BIOS_V14_RUS_220.NVM",1024,"bios"],["pcsx2/bios/SCPH-77008_BIOS_V15_RUS_220.NVM",1024,"bios"],["pcsx2/bios/SCPH-90006_BIOS_VX_HK _230.NVM",1024,"bios"],["pcsx2/bios/SCPH-90006_BIOS_VX_HK _230.ROM1",524288,"bios"],["pcsx2/bios/SCPH30004R.nvm",1024,"bios"],["pcsx2/bios/ps2-0100j-20000117.bin",4194304,"bios"],["pcsx2/bios/ps2-0100jd-20000117.bin",4194304,"bios"],["pcsx2/bios/ps2-0101j-20000217.bin",4194304,"bios"],["pcsx2/bios/ps2-0101jd-20000217.bin",4194304,"bios"],["pcsx2/bios/ps2-0101xd-20000224.bin",4194304,"bios"],["pcsx2/bios/ps2-0110a-20000727.bin",4194304,"bios"],["pcsx2/bios/ps2-0110ad-20000727.bin",4194304,"bios"],["pcsx2/bios/ps2-0120a-20000902.bin",4194304,"bios"],["pcsx2/bios/ps2-0120e-20000902.bin",4194304,"bios"],["pcsx2/bios/ps2-0120ed-20000902-20030110.bin",4194304,"bios"],["pcsx2/bios/ps2-0120ed-20000902.bin",4194304,"bios"],["pcsx2/bios/ps2-0120j-20001027-185015.bin",4194304,"bios"],["pcsx2/bios/ps2-0120j-20001027-191435.bin",4194304,"bios"],["pcsx2/bios/ps2-0150a-20001228.bin",4194304,"bios"],["pcsx2/bios/ps2-0150ad-20001228-20030520.bin",4194304,"bios"],["pcsx2/bios/ps2-0150e-20001228.bin",4194304,"bios"],["pcsx2/bios/ps2-0150ed-20001228-20030520.bin",4194304,"bios"],["pcsx2/bios/ps2-0150j-20010118.bin",4194304,"bios"],["pcsx2/bios/ps2-0150jd-20010118.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20010427.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20010704.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20011004.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20020207.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20010704.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20011004.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20020319.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20020426.bin",4194304,"bios"],["pcsx2/bios/ps2-0160h-20010730.bin",4194304,"bios"],["pcsx2/bios/ps2-0160h-20020426.bin",4194304,"bios"],["pcsx2/bios/ps2-0160h-20030602.bin",4194304,"bios"],["pcsx2/bios/ps2-0160j-20010427.bin",4194304,"bios"],["pcsx2/bios/ps2-0160j-20011004.bin",4194304,"bios"],["pcsx2/bios/ps2-0160j-20020426.bin",4194304,"bios"],["pcsx2/bios/ps2-0170a-20030325.bin",4194304,"bios"],["pcsx2/bios/ps2-0170ad-20030325.bin",4194304,"bios"],["pcsx2/bios/ps2-0170e-20030227.bin",4194304,"bios"],["pcsx2/bios/ps2-0170ed-20030227.bin",4194304,"bios"],["pcsx2/bios/ps2-0170j-20030206.bin",4194304,"bios"],["pcsx2/bios/ps2-0170jd-20030206.bin",4194304,"bios"],["pcsx2/bios/ps2-0180cd-20030224.bin",4194304,"bios"],["pcsx2/bios/ps2-0180j-20031028.bin",4194304,"bios"],["pcsx2/bios/ps2-0190a-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190a-20040329.bin",4194304,"bios"],["pcsx2/bios/ps2-0190ad-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190c-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190cd-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190e-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190e-20030822.bin",4194304,"bios"],["pcsx2/bios/ps2-0190h-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190j-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190j-20030822.bin",4194304,"bios"],["pcsx2/bios/ps2-0190k-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190r-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0200a-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200ad-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200e-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200ed-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200h-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200j-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0210j-20040917.bin",4194304,"bios"],["pcsx2/bios/ps2-0220a-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220a-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220a-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220ad-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220ad-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220e-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220e-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220e-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220h-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220h-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220h-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220j-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220j-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220j-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220jd-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220jd-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0230a-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0230a-20080220.nvm",1024,"bios"],["pcsx2/bios/ps2-0230e-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0230h-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0230j-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0250e-20100415.bin",4194304,"bios"],["pcsx2/bios/ps2-0250j-20100415.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-110u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-120e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-120u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-130e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-130u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-200j.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-210e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-210j.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-210u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-212g.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-212u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-213e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-215g.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-300e.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-300u.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-302c.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-302e.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-302u.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-310.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-311.bin",4194304,"bios"],["pcsx2/bios/ps2_scph50006.bin",4194304,"bios"],["pcsx2/bios/ps2_scph50008.bin",4194304,"bios"],["pcsx2/bios/scph30004fr.nvm",1024,"bios"],["pcsx2/bios/scph39001.nvm",1024,"bios"],["pcsx2/resources/GameIndex.yaml",1737799,"bios"],["pcx_video.zip",8874,"bios"],["pd32.zip",998,"bios"],["pd3_30hr.zip",4685,"bios"],["pd3_c264.zip",5773,"bios"],["pd3_lviw.zip",4760,"bios"],["pd3_mclr.zip",4568,"bios"],["pd3_pc16.zip",8246,"bios"],["pdc20262.zip",14359,"bios"],["pdc20268.zip",9340,"bios"],["pds30_emac.zip",346,"bios"],["pds_sefp.zip",14387,"bios"],["pdslc_macconlc.zip",419,"bios"],["pencil2_coleco.zip",5795,"bios"],["permedia2.zip",138948,"bios"],["pet_superpet.zip",15774,"bios"],["pg200.zip",549,"bios"],["plg100_vl.zip",333318,"bios"],["plg150_ap.zip",11733949,"bios"],["plus2-0.rom",16384,"bios"],["plus2-1.rom",16384,"bios"],["plus3-0.rom",16384,"bios"],["plus3-1.rom",16384,"bios"],["plus3-2.rom",16384,"bios"],["plus3-3.rom",16384,"bios"],["plus3e-0.rom",16384,"bios"],["plus3e-1.rom",16384,"bios"],["plus3e-2.rom",16384,"bios"],["plus3e-3.rom",16384,"bios"],["plusd.rom",8192,"bios"],["plutonia.wad",17420824,"game_data"],["polyvti.zip",859,"bios"],["pr8210.zip",2012,"bios"],["prav8ckb.zip",1204,"bios"],["prboom.wad",143312,"bios"],["profighterq.zip",11314,"bios"],["profighterqa.zip",17554,"bios"],["profighterqb.zip",62747,"bios"],["profighterx.zip",24041,"bios"],["promotion3210.zip",18077,"bios"],["ps1_rom.bin",524288,"bios"],["ps2_desr5000.bin",4194304,"bios"],["ps2_desr5500.bin",4194304,"bios"],["ps2_dtlh10000_0117.bin",4194304,"bios"],["ps2_dtlh10000_0217.bin",4194304,"bios"],["ps2_dtlh10000_0224.bin",4194304,"bios"],["ps2_dtlh30000.bin",4194304,"bios"],["ps2_dtlh30001.bin",4194304,"bios"],["ps2_dtlh30002.bin",4194304,"bios"],["ps2_dtlh30101.bin",4194304,"bios"],["ps2_dtlh30102_0902.bin",4194304,"bios"],["ps2_dtlh30102_1228.bin",4194304,"bios"],["ps2_dtlh50000.bin",4194304,"bios"],["ps2_dtlh50001_0325.bin",4194304,"bios"],["ps2_dtlh50001_0623.bin",4194304,"bios"],["ps2_dtlh50002.bin",4194304,"bios"],["ps2_dtlh50009.bin",4194304,"bios"],["ps2_dtlh70002.bin",4194304,"bios"],["ps2_dtlh75000.bin",4194304,"bios"],["ps2_dtlh75000a.bin",4194304,"bios"],["ps2_dtlh90000_a.bin",4194304,"bios"],["ps2_dtlh90000_j.bin",4194304,"bios"],["ps2_kdl22px300.bin",4194304,"bios"],["ps2_keybc.zip",3537,"bios"],["ps2_scph10000_0117.bin",4194304,"bios"],["ps2_scph10000_15000.bin",4194304,"bios"],["ps2_scph18000.bin",524288,"bios"],["ps2_scph18000_gh003.bin",4194304,"bios"],["ps2_scph18000_gh008.bin",4194304,"bios"],["ps2_scph30000_0427.bin",4194304,"bios"],["ps2_scph30000_35000.bin",4194304,"bios"],["ps2_scph30001_0727.bin",4194304,"bios"],["ps2_scph30001_0902.bin",4194304,"bios"],["ps2_scph30001_35001.bin",4194304,"bios"],["ps2_scph30001r_0427.bin",4194304,"bios"],["ps2_scph30001r_0704.bin",4194304,"bios"],["ps2_scph30001r_1004.bin",4194304,"bios"],["ps2_scph30002_0902.bin",4194304,"bios"],["ps2_scph30002_1228.bin",4194304,"bios"],["ps2_scph30002r_0704.bin",4194304,"bios"],["ps2_scph30002r_1004.bin",4194304,"bios"],["ps2_scph30003.bin",524288,"bios"],["ps2_scph30005r.bin",4194304,"bios"],["ps2_scph37000_39000.bin",4194304,"bios"],["ps2_scph39001.bin",4194304,"bios"],["ps2_scph39002.bin",4194304,"bios"],["ps2_scph39005.bin",4194304,"bios"],["ps2_scph39008.bin",4194304,"bios"],["ps2_scph50000_0822.bin",4194304,"bios"],["ps2_scph50000_55000.bin",4194304,"bios"],["ps2_scph50001_0325.bin",4194304,"bios"],["ps2_scph50001_0623.bin",4194304,"bios"],["ps2_scph50002_0227.bin",4194304,"bios"],["ps2_scph50002_0623.bin",4194304,"bios"],["ps2_scph50004_0822.bin",4194304,"bios"],["ps2_scph50005.bin",4194304,"bios"],["ps2_scph50006.bin",4194304,"bios"],["ps2_scph50008.bin",4194304,"bios"],["ps2_scph50009.bin",4194304,"bios"],["ps2_scph50011.bin",4194304,"bios"],["ps2_scph55000_0623.bin",4194304,"bios"],["ps2_scph70000.bin",4194304,"bios"],["ps2_scph70001.bin",4194304,"bios"],["ps2_scph70002.bin",4194304,"bios"],["ps2_scph70002_alt.bin",524288,"bios"],["ps2_scph70005.bin",4194304,"bios"],["ps2_scph75000.bin",4194304,"bios"],["ps2_scph75001.bin",4194304,"bios"],["ps2_scph75002.bin",4194304,"bios"],["ps2_scph75006.bin",4194304,"bios"],["ps2_scph77000.bin",4194304,"bios"],["ps2_scph77001.bin",4194304,"bios"],["ps2_scph77002.bin",4194304,"bios"],["ps2_scph77006.bin",4194304,"bios"],["ps2_scph79000_90000.bin",4194304,"bios"],["ps2_scph79001_90001.bin",4194304,"bios"],["ps2_scph79002_90002.bin",4194304,"bios"],["ps2_scph79006_90006.bin",4194304,"bios"],["ps2_scph90000_0220.bin",4194304,"bios"],["ps2_scph90001_0220.bin",4194304,"bios"],["ps2_scph90002_0220.bin",4194304,"bios"],["ps2_scph90005_0220.bin",4194304,"bios"],["psion_3fax.zip",394842,"bios"],["psion_3link_ser.zip",50609,"bios"],["psx_cd.zip",222667,"bios"],["psxgboost.zip",179516,"bios"],["psxonpsp660.bin",524288,"bios"],["pvga1a.zip",65692,"bios"],["pvga1a_jk.zip",103539,"bios"],["px320a.zip",1092458,"bios"],["qg640.zip",75366,"bios"],["ql_cumanafdi.zip",16173,"bios"],["ql_gold.zip",66339,"bios"],["ql_kdi.zip",6387,"bios"],["ql_mhd.zip",5988,"bios"],["ql_mpfdi.zip",5067,"bios"],["ql_opdbm.zip",27486,"bios"],["ql_pcmlqdi.zip",10237,"bios"],["ql_qldisc.zip",13083,"bios"],["ql_qplus4.zip",597,"bios"],["ql_qubide.zip",30514,"bios"],["ql_sdisk.zip",8903,"bios"],["ql_sqboard256.zip",541045,"bios"],["ql_sqboard512.zip",541045,"bios"],["ql_sqmouse.zip",61242,"bios"],["ql_sqmouse512.zip",541045,"bios"],["ql_trump.zip",121019,"bios"],["ql_trump256.zip",121019,"bios"],["ql_trump512.zip",121019,"bios"],["ql_trump768.zip",121019,"bios"],["qsound.zip",2654,"bios"],["qsound_hle.zip",2676,"bios"],["qts1.zip",25174,"bios"],["quadro.zip",51307,"bios"],["quasi88/N88EXT0.ROM",8192,"bios"],["quasi88/N88EXT1.ROM",8192,"bios"],["quasi88/N88EXT2.ROM",8192,"bios"],["quasi88/N88EXT3.ROM",8192,"bios"],["quasi88/disk.rom",2048,"bios"],["quasi88/font.rom",2048,"bios"],["quasi88/font2.rom",2048,"bios"],["quasi88/font3.rom",2048,"bios"],["quasi88/n88.rom",32768,"bios"],["quasi88/n88_0.rom",8192,"bios"],["quasi88/n88_1.rom",8192,"bios"],["quasi88/n88_2.rom",8192,"bios"],["quasi88/n88_3.rom",8192,"bios"],["quasi88/n88jisho.rom",524288,"bios"],["quasi88/n88knj1.rom",131072,"bios"],["quasi88/n88knj2.rom",131072,"bios"],["quasi88/n88n.rom",32768,"bios"],["quoth/pak0.pak",48226771,"game_data"],["quoth/pak1.pak",84961704,"game_data"],["quoth/pak2.pak",8021749,"game_data"],["qvision_wavestar.zip",4834,"bios"],["qx10_keyboard_ascii.zip",963,"bios"],["qx10_keyboard_hasci.zip",963,"bios"],["rageiidvd.zip",74874,"bios"],["rc2014_micro.zip",12592,"bios"],["rc2014_mini_cpm.zip",23836,"bios"],["rc2014_pagable_rom.zip",34021,"bios"],["rc2014_rom_ram_512k.zip",2572870,"bios"],["rc2014_switchable_rom.zip",42387,"bios"],["riva128.zip",60632,"bios"],["riva128zx.zip",59311,"bios"],["rivatnt.zip",82626,"bios"],["rivatnt2.zip",46394,"bios"],["rivatnt2_m64.zip",272160,"bios"],["rivatnt2_ultra.zip",24007,"bios"],["rm_mq2.zip",6064,"bios"],["robotron_k7070.zip",15464,"bios"],["robotron_k7071.zip",4152,"bios"],["rolm_pdc.zip",8595,"bios"],["rolm_smioc.zip",6192,"bios"],["rom.db",17742,"bios"],["rom.key",2069,"bios"],["roms/a2090a-combitec-turbo.rom",32768,"bios"],["roms/a2090a.rom",16384,"bios"],["roms/a2090b-combitec-turbo.rom",32768,"bios"],["roms/a2090b-combitec.rom",32768,"bios"],["roms/a2090b-macrosystem.rom",32768,"bios"],["roms/a2620-a2630-01.rom",65536,"bios"],["roms/a2620-a2630-02.rom",65536,"bios"],["roms/a2620-a2630-03.rom",65536,"bios"],["roms/a2620-a2630-04.rom",65536,"bios"],["roms/a2620-a2630-06.rom",65536,"bios"],["roms/a2620-a2630-07.rom",65536,"bios"],["roms/a4091-v40.13.rom",32768,"bios"],["roms/a4091-v40.4.rom",32768,"bios"],["roms/a4091-v40.9.rom",32768,"bios"],["roms/a590-a2091-guru-rom-v6.14.rom",32768,"bios"],["roms/a590-a2091-v4.4.rom",16384,"bios"],["roms/a590-a2091-v4.6.rom",16384,"bios"],["roms/a590-a2091-v5.92.rom",16384,"bios"],["roms/a590-a2091-v6.0.rom",16384,"bios"],["roms/a590-a2091-v6.1.rom",16384,"bios"],["roms/a590-a2091-v6.6.rom",16384,"bios"],["roms/a590-a2091-v7.0.rom",16384,"bios"],["roms/accessx-2000-v2.1.rom",32768,"bios"],["roms/accessx-500-2000-v2.1-descrambled.rom",32768,"bios"],["roms/accessx-500-v2.1.rom",32768,"bios"],["roms/action-cartridge-super-iv-pro-rom-v4.3.rom",170368,"bios"],["roms/action-replay-1200.rom",262144,"bios"],["roms/action-replay-mk-i-v1.00.rom",65536,"bios"],["roms/action-replay-mk-i-v1.50.rom",65536,"bios"],["roms/action-replay-mk-ii-v2.05.rom",131072,"bios"],["roms/action-replay-mk-ii-v2.12.rom",131072,"bios"],["roms/action-replay-mk-ii-v2.14.rom",131072,"bios"],["roms/action-replay-mk-iii-v3.09.rom",262144,"bios"],["roms/action-replay-mk-iii-v3.17.rom",262144,"bios"],["roms/adide-40-44-v33.rom",16384,"bios"],["roms/adide-40-44-v34.rom",16384,"bios"],["roms/alf-2.rom",65536,"bios"],["roms/alfapower-v6.10.rom",32768,"bios"],["roms/alfapower-v8.2.rom",32768,"bios"],["roms/alfapower-v8.3.rom",32768,"bios"],["roms/apollo-1240-1260.rom",131072,"bios"],["roms/apollo-500-2000.rom",16384,"bios"],["roms/archos-add-500.rom",16384,"bios"],["roms/archos-overdrive-hd-v5.0.rom",32768,"bios"],["roms/ashcom-design-addhard-v2.0.rom",16384,"bios"],["roms/blizzard-1230-i-ii.rom",32768,"bios"],["roms/blizzard-1230-iii.rom",32768,"bios"],["roms/blizzard-1230-iv.rom",32768,"bios"],["roms/blizzard-1240-1260.rom",32768,"bios"],["roms/blizzard-2060-v7.25.rom",65536,"bios"],["roms/blizzard-2060-v8.2.rom",65536,"bios"],["roms/blizzard-2060-v8.5.rom",65536,"bios"],["roms/blizzard-scsi-kit-iii.rom",65536,"bios"],["roms/blizzard-scsi-kit-iv.rom",32768,"bios"],["roms/buddha-v103.17.rom",32768,"bios"],["roms/c-ltd-kronos.rom",8192,"bios"],["roms/california-access-malibu-v1.0.rom",8192,"bios"],["roms/combitec-hd20a-hd40a.rom",32768,"bios"],["roms/comspec-sa-series-v34.805.rom",16384,"bios"],["roms/csa-magnum-040.rom",65536,"bios"],["roms/csa-twelve-gauge.rom",32768,"bios"],["roms/cyberstorm-mk-i-68060-support.rom",32768,"bios"],["roms/cyberstorm-mk-i-cyberscsi-module.rom",32768,"bios"],["roms/dkb-1230-1240-cobra-plus-ferret-v1.23.rom",12060,"bios"],["roms/dkb-1230-1240-cobra.rom",1460,"bios"],["roms/dkb-rapidfire-spitfire-v1.31.rom",11284,"bios"],["roms/dkb-wildfire-v1.1.rom",18352,"bios"],["roms/elsat-mega-ram-hd.rom",16384,"bios"],["roms/evesham-micros-reference.rom",65536,"bios"],["roms/expansion-systems-dataflyerplus-v1.5.rom",32768,"bios"],["roms/expansion-systems-dataflyerplus-v1.7.rom",32768,"bios"],["roms/expansion-systems-dataflyerplus-v2.0.rom",32768,"bios"],["roms/expansion-systems-dataflyerplus-v2.1.rom",32768,"bios"],["roms/fastlane.rom",32768,"bios"],["roms/fusion-forty.rom",131072,"bios"],["roms/gvp-a1230-turboplus-series-ii-v5.0.rom",16384,"bios"],["roms/gvp-a1230-turboplus.rom",16384,"bios"],["roms/gvp-a3001-series-i.rom",8192,"bios"],["roms/gvp-series-i-ii-v3.15.rom",16384,"bios"],["roms/gvp-series-i-ii-v3.7.rom",16384,"bios"],["roms/gvp-series-i-v1.0.rom",16384,"bios"],["roms/gvp-series-i-v3.7.rom",16384,"bios"],["roms/gvp-series-ii-guru-rom.rom",32624,"bios"],["roms/gvp-series-ii-v4.13.rom",16384,"bios"],["roms/gvp-series-ii-v4.15.rom",16384,"bios"],["roms/hardital-dotto.rom",32768,"bios"],["roms/hardital-synthesis-v48.5.rom",32768,"bios"],["roms/hardital-synthesis-v53.1.rom",32768,"bios"],["roms/hardital-tqm.rom",32768,"bios"],["roms/harms-3000-professional.rom",65536,"bios"],["roms/icd-adscsi-2000-v1.6-icddisk-v1.0.rom",32768,"bios"],["roms/icd-adscsi-2000-v2.01-icddisk-v32.1.rom",32768,"bios"],["roms/icd-adscsi-2000-v2.1-icddisk-v33.0.rom",32768,"bios"],["roms/icd-adscsi-2000-v2.2-icddisk-v34.0.rom",32768,"bios"],["roms/ivs-grandslam-trumpcard-pro-v4.9.rom",16384,"bios"],["roms/ivs-trumpcard-v1.5.rom",8192,"bios"],["roms/ivs-trumpcard-v3.1.rom",8192,"bios"],["roms/ivs-trumpcard-v4.9.rom",16384,"bios"],["roms/ivs-vector-4.14.rom",65536,"bios"],["roms/kommos-a500-a2000-v1.7.rom",32768,"bios"],["roms/kommos-a500-a2000-v1.8.rom",32768,"bios"],["roms/kupke-golem-030.rom",8192,"bios"],["roms/kupke-golem-hd3000-v1.4.rom",16384,"bios"],["roms/kupke-golem-v3.9.rom",16384,"bios"],["roms/kupke-golem-v4.2.rom",16384,"bios"],["roms/m-tec-at500-megabody-v1.33.rom",32768,"bios"],["roms/m-tec-at500-v1.33w.rom",32768,"bios"],["roms/m-tec-e-matrix-530.rom",65536,"bios"],["roms/macrosystem-falcon-040-no-scsi.rom",131072,"bios"],["roms/mainhattan-data-a-team-v1.8.rom",65536,"bios"],["roms/masoboshi-mc-702-v2.201.rom",32768,"bios"],["roms/mast-fireball.rom",8192,"bios"],["roms/mastercard-v2.3.rom",65536,"bios"],["roms/microbotics-hardframe-v1.5.rom",32768,"bios"],["roms/microbotics-hardframe-v1.8.rom",32768,"bios"],["roms/microbotics-hardframe-v1.9.rom",32768,"bios"],["roms/multi-evolution-500-2000-v2.2.rom",65536,"bios"],["roms/multi-evolution-500-2000-v3.0.rom",65536,"bios"],["roms/multi-evolution-500-2000-v3.4.rom",65536,"bios"],["roms/nordic-power-v1.5.rom",65536,"bios"],["roms/nordic-power-v2.0.rom",65536,"bios"],["roms/nordic-power-v3.0.rom",65536,"bios"],["roms/nordic-power-v3.2.rom",65536,"bios"],["roms/oktagon-2008.rom",32768,"bios"],["roms/pacific-peripherals-overdrive-v1.5.rom",8192,"bios"],["roms/pacific-peripherals-overdrive-v2.0.rom",8192,"bios"],["roms/phoenix-board-scsi-vj.rom",32768,"bios"],["roms/picasso_iv_flash.rom",131072,"bios"],["roms/preferred-technologies-nexus.rom",8192,"bios"],["roms/pro-access-v2.17.rom",65536,"bios"],["roms/profex-electronics-hd-3300.rom",8192,"bios"],["roms/protar-a500hd.rom",32768,"bios"],["roms/quikpak-4060-xp-v2.1.rom",32768,"bios"],["roms/roctec-rochard-rh800c-v1.rom",16384,"bios"],["roms/roctec-rochard-rh800c-v2.rom",16384,"bios"],["roms/spirit-technology-inmate.rom",32768,"bios"],["roms/supradrive-2000dma-44-25b.rom",8192,"bios"],["roms/supradrive-amab2.rom",8192,"bios"],["roms/supradrive-amab3.rom",8192,"bios"],["roms/supradrive-amab4.rom",8192,"bios"],["roms/supradrive-amab5.rom",8192,"bios"],["roms/supradrive-amab6.rom",8192,"bios"],["roms/sx32-pro.rom",65536,"bios"],["roms/tekmagic2040.rom",65536,"bios"],["roms/tekmagic2060.rom",65536,"bios"],["roms/trifecta-v4.31.rom",32768,"bios"],["roms/trumpcard-500at-v1.1.rom",16384,"bios"],["roms/trumpcard-500at-v1.2.rom",16384,"bios"],["roms/typhoon-mk2.rom",65536,"bios"],["roms/vector-falcon-8000-v7.1.rom",32768,"bios"],["roms/vector-falcon-8000-v7.6.rom",32768,"bios"],["roms/vortex-system-2000.rom",16384,"bios"],["roms/warp-engine.rom",32768,"bios"],["roms/x-power-professional-500-v1.2.rom",131072,"bios"],["roms/x-power-professional-500-v1.3.rom",131072,"bios"],["roms/xetec-fasttrak.rom",32768,"bios"],["roms/zeus-040.rom",16384,"bios"],["rt1000b.zip",5852,"bios"],["rtpc_kbd.zip",1918,"bios"],["rtpc_kls.zip",5044,"bios"],["rx01.zip",2846,"bios"],["s100_am310.zip",1308,"bios"],["s100_djdma.zip",3777,"bios"],["s100_nsmdsa.zip",396,"bios"],["s100_nsmdsad.zip",334,"bios"],["s100_sj2db.zip",1012,"bios"],["s1410.zip",11050,"bios"],["s3_764.zip",18299,"bios"],["s8k_cpu.zip",31998,"bios"],["s8k_cpu10.zip",6294,"bios"],["s8k_hpcpu.zip",11518,"bios"],["s97269pb.zip",566,"bios"],["s97801_device.zip",8720,"bios"],["s97801_kbd.zip",1772,"bios"],["s_smp.zip",209,"bios"],["saa5051.zip",522,"bios"],["saa5052.zip",514,"bios"],["saa5053.zip",519,"bios"],["saa5054.zip",511,"bios"],["saa5055.zip",525,"bios"],["saa5056.zip",535,"bios"],["saa5057.zip",523,"bios"],["saa5240a.zip",1015,"bios"],["saa5240b.zip",978,"bios"],["saa5243e.zip",1297,"bios"],["sad8852.zip",4434,"bios"],["same_cdi/bios/cdi490a.zip",379558,"bios"],["same_cdi/bios/cdi910.zip",487572,"bios"],["same_cdi/bios/cdibios.zip",472798,"bios"],["same_cdi/bios/cdimono1.zip",660996,"bios"],["same_cdi/bios/cdimono2.zip",244291,"bios"],["sanyotry.bin",1048576,"bios"],["satar4mp.bin",262144,"bios"],["satcdb.zip",101309,"bios"],["saturn_bios.bin",524288,"bios"],["sb300p.zip",1591,"bios"],["sbus_hme.zip",17450,"bios"],["sbus_sunpc.zip",536,"bios"],["sc119.zip",721668,"bios"],["sc55-roms/cm300-v1.10/rom2.bin",262144,"bios"],["sc55-roms/cm300-v1.20/rom2.bin",262144,"bios"],["sc55-roms/cm300-v1.30/rom1.bin",32768,"bios"],["sc55-roms/cm300-v1.30/rom2.bin",262144,"bios"],["sc55-roms/cm300-v1.30/wave1.bin",1048576,"bios"],["sc55-roms/cm300-v1.30/wave2.bin",1048576,"bios"],["sc55-roms/mk1-v1.00/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.00/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.10/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.10/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.20/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.20/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.21/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.21/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.21/wave1.bin",1048576,"bios"],["sc55-roms/mk1-v1.21/wave2.bin",1048576,"bios"],["sc55-roms/mk1-v1.21/wave3.bin",1048576,"bios"],["sc55-roms/mk1-v2.00/rom1.bin",32768,"bios"],["sc55-roms/mk1-v2.00/rom2.bin",262144,"bios"],["sc55-roms/mk2-v1.01/rom1.bin",32768,"bios"],["sc55-roms/mk2-v1.01/rom2.bin",524288,"bios"],["sc55-roms/mk2-v1.01/smrom.bin",4096,"bios"],["sc55-roms/mk2-v1.01/wave1.bin",2097152,"bios"],["sc55-roms/mk2-v1.01/wave2.bin",1048576,"bios"],["sc55-roms/sc155-rev1/rom2.bin",262144,"bios"],["sc55-roms/scb55-v2.00/rom2.bin",262144,"bios"],["sc55-roms/st-v1.01/rom2.bin",262144,"bios"],["scorpion_ic.zip",18332,"bios"],["scph100.bin",524288,"bios"],["scph1000.bin",524288,"bios"],["scph1000r.bin",524288,"bios"],["scph1001.bin",524288,"bios"],["scph1001_v20.bin",524288,"bios"],["scph1001_v21.bin",524288,"bios"],["scph1002.bin",524288,"bios"],["scph1002a.bin",524288,"bios"],["scph1002b.bin",524288,"bios"],["scph1002c.bin",524288,"bios"],["scph101.bin",524288,"bios"],["scph101_v44.bin",524288,"bios"],["scph101_v45.bin",524288,"bios"],["scph102.bin",524288,"bios"],["scph102A.bin",524288,"bios"],["scph102B.bin",524288,"bios"],["scph102C.bin",524288,"bios"],["scph102_v44.bin",524288,"bios"],["scph102_v45.bin",524288,"bios"],["scph3000.bin",524288,"bios"],["scph3500.bin",524288,"bios"],["scph5000.bin",524288,"bios"],["scph5500.bin",524288,"bios"],["scph5501.bin",524288,"bios"],["scph5502.bin",524288,"bios"],["scph5552.bin",524288,"bios"],["scph5903.bin",1048576,"bios"],["scph7000.bin",524288,"bios"],["scph7000w.bin",524288,"bios"],["scph7001.bin",524288,"bios"],["scph7002.bin",524288,"bios"],["scph7003.bin",524288,"bios"],["scph7502.bin",524288,"bios"],["scph9002(7502).bin",524288,"bios"],["scpu-dos-1.4.bin",131072,"bios"],["scpu-dos-2.04.bin",131072,"bios"],["scummvm.zip",9523360,"bios"],["scummvm/extra/CM32L_CONTROL.ROM",65536,"bios"],["scummvm/extra/CM32L_PCM.ROM",1048576,"bios"],["scummvm/extra/MT32_CONTROL.ROM",65536,"bios"],["scummvm/extra/MT32_PCM.ROM",524288,"bios"],["scummvm/extra/Roland_SC-55.sf2",3283278,"bios"],["scummvm/extra/access.dat",520352,"bios"],["scummvm/extra/achievements.dat",249239,"bios"],["scummvm/extra/bagel.dat",20584,"bios"],["scummvm/extra/classicmacfonts.dat",626103,"bios"],["scummvm/extra/cryo.dat",12499,"bios"],["scummvm/extra/cryomni3d.dat",70416,"bios"],["scummvm/extra/darkseed.dat",37183,"bios"],["scummvm/extra/drascula.dat",259625,"bios"],["scummvm/extra/encoding.dat",179670,"bios"],["scummvm/extra/fonts-cjk.dat",38277312,"bios"],["scummvm/extra/fonts-imgui.dat",4000965,"bios"],["scummvm/extra/fonts.dat",6449829,"bios"],["scummvm/extra/freescape.dat",30124,"bios"],["scummvm/extra/got.aud",11313,"bios"],["scummvm/extra/got.gfx",288199,"bios"],["scummvm/extra/grim-patch.lab",9341,"bios"],["scummvm/extra/hadesch_translations.dat",431,"bios"],["scummvm/extra/helpdialog.zip",207764,"bios"],["scummvm/extra/hugo.dat",186866,"bios"],["scummvm/extra/kyra.dat",2028520,"bios"],["scummvm/extra/lure.dat",768832,"bios"],["scummvm/extra/macgui.dat",65656,"bios"],["scummvm/extra/macventure.dat",4146,"bios"],["scummvm/extra/mm.dat",280803,"bios"],["scummvm/extra/monkey4-patch.m4b",2990,"bios"],["scummvm/extra/mort.dat",76302,"bios"],["scummvm/extra/myst3.dat",358287,"bios"],["scummvm/extra/nancy.dat",255042,"bios"],["scummvm/extra/neverhood.dat",23804,"bios"],["scummvm/extra/pred.dic",126481,"bios"],["scummvm/extra/prince_translation.dat",168060,"bios"],["scummvm/extra/queen.tbl",1100505,"bios"],["scummvm/extra/sky.cpt",419427,"bios"],["scummvm/extra/supernova.dat",523211,"bios"],["scummvm/extra/teenagent.dat",403315,"bios"],["scummvm/extra/titanic.dat",3197968,"bios"],["scummvm/extra/tony.dat",24584,"bios"],["scummvm/extra/toon.dat",20996,"bios"],["scummvm/extra/ultima.dat",15981464,"bios"],["scummvm/extra/ultima8.dat",238149,"bios"],["scummvm/extra/vkeybd_default.zip",184946,"bios"],["scummvm/extra/wintermute.zip",4520,"bios"],["scummvm/theme/gui-icons.dat",3315855,"bios"],["scummvm/theme/residualvm.zip",94555,"bios"],["scummvm/theme/scummclassic.zip",16488,"bios"],["scummvm/theme/scummmodern.zip",68087,"bios"],["scummvm/theme/scummremastered.zip",93901,"bios"],["scummvm/theme/shaders.dat",657234,"bios"],["scummvm/theme/translations.dat",3693914,"bios"],["se-0.rom",16384,"bios"],["se-1.rom",16384,"bios"],["sed1200da.zip",749,"bios"],["sed1200db.zip",775,"bios"],["sed1200fa.zip",749,"bios"],["sed1200fb.zip",775,"bios"],["sed1278.zip",2096,"bios"],["sega1003.bin",524288,"bios"],["sega_100.bin",524288,"bios"],["sega_100a.bin",524288,"bios"],["sega_101.bin",524288,"bios"],["sega_sp400.zip",3461,"bios"],["segabill.zip",3117,"bios"],["sente6vb.zip",4778,"bios"],["serad.zip",4375,"bios"],["sfd1001.zip",13984,"bios"],["sgb.boot.rom",256,"bios"],["sgb1.program.rom",262144,"bios"],["sgb2.boot.rom",256,"bios"],["sgb2.program.rom",524288,"bios"],["sgb2_bios.bin",256,"bios"],["sgb2_boot.bin",256,"bios"],["sgb_bios.bin",256,"bios"],["sgb_boot.bin",256,"bios"],["sgi_gm1.zip",25397,"bios"],["sgi_ip2.zip",39192,"bios"],["sgi_ip4.zip",211576,"bios"],["sgi_kbd.zip",1233,"bios"],["sgi_pm1.zip",18125,"bios"],["sgi_pm2.zip",35149,"bios"],["side116.zip",3528,"bios"],["simutrek.zip",2912,"bios"],["sis630_gui.zip",49059,"bios"],["sis6326_agp.zip",101579,"bios"],["sis6326_dvd.zip",23245,"bios"],["sis6326_pci.zip",64665,"bios"],["sis900_eth.zip",24831,"bios"],["sk.bin",2097152,"bios"],["sk2chip.bin",262144,"bios"],["sl31253.bin",1024,"bios"],["sl31254.bin",1024,"bios"],["sl90025.bin",1024,"bios"],["smoc501.zip",37103,"bios"],["sms_diypaddle.zip",334,"bios"],["smvme2000.zip",29273,"bios"],["sn74s262.zip",675,"bios"],["sn74s263.zip",705,"bios"],["sns_dsp1bleg.zip",4140,"bios"],["sns_dsp1leg.zip",4135,"bios"],["sns_dsp1leg_hi.zip",4135,"bios"],["sns_dsp2leg.zip",2987,"bios"],["sns_dsp3leg.zip",3522,"bios"],["sns_dsp4leg.zip",3417,"bios"],["sns_rom_sgb.zip",390,"bios"],["sns_rom_sgb2.zip",392,"bios"],["sns_seta10leg.zip",2712,"bios"],["sns_seta11leg.zip",17424,"bios"],["softcard3.zip",407,"bios"],["sound_orchestra.zip",13041,"bios"],["spc1000_fdd_exp.zip",1839,"bios"],["speakboard.zip",116066,"bios"],["speccyboot-1.4.rom",8192,"bios"],["spectred_kbd.zip",911,"bios"],["spectrum_beta128.zip",2046403,"bios"],["spectrum_betacbi.zip",2046403,"bios"],["spectrum_betaclone.zip",2046403,"bios"],["spectrum_betaplus.zip",2046403,"bios"],["spectrum_betav2.zip",2046403,"bios"],["spectrum_betav3.zip",2046403,"bios"],["spectrum_d40.zip",14616,"bios"],["spectrum_d80.zip",14616,"bios"],["spectrum_d80v2.zip",7460,"bios"],["spectrum_disciple.zip",2046403,"bios"],["spectrum_flpone.zip",2046403,"bios"],["spectrum_gamma.zip",2046403,"bios"],["spectrum_intf1.zip",11519,"bios"],["spectrum_kempcentref.zip",1768,"bios"],["spectrum_kempcentreu.zip",1957,"bios"],["spectrum_kempdisc.zip",2046403,"bios"],["spectrum_lprint.zip",1878,"bios"],["spectrum_lprint3.zip",2046403,"bios"],["spectrum_mface1.zip",2046403,"bios"],["spectrum_mface128.zip",2046403,"bios"],["spectrum_mface128v1.zip",2046403,"bios"],["spectrum_mface1v1.zip",2046403,"bios"],["spectrum_mface1v2.zip",2046403,"bios"],["spectrum_mface1v3.zip",2046403,"bios"],["spectrum_mface3.zip",19134,"bios"],["spectrum_mikroplus.zip",12536,"bios"],["spectrum_mpoker.zip",2573,"bios"],["spectrum_mprint.zip",2046403,"bios"],["spectrum_opus.zip",29218,"bios"],["spectrum_plus2test.zip",3413,"bios"],["spectrum_plusd.zip",17587,"bios"],["spectrum_proceed.zip",6377,"bios"],["spectrum_sdi.zip",2603,"bios"],["spectrum_spdos.zip",2046403,"bios"],["spectrum_speccydos.zip",2046403,"bios"],["spectrum_specmate.zip",2046403,"bios"],["spectrum_swiftdisc.zip",2046403,"bios"],["spectrum_swiftdisc2.zip",2046403,"bios"],["spectrum_usource.zip",7261,"bios"],["spectrum_uspeech.zip",3944,"bios"],["spectrum_vtx5000.zip",2046403,"bios"],["spectrum_wafa.zip",2046403,"bios"],["squirreljme-0.3.0-fast.jar",15181774,"bios"],["squirreljme-0.3.0-slow-test.jar",15181774,"bios"],["squirreljme-0.3.0-slow.jar",15181774,"bios"],["squirreljme-0.3.0-test.jar",3396757,"bios"],["squirreljme-0.3.0.jar",15181774,"bios"],["squirreljme-fast.jar",15181774,"bios"],["squirreljme-slow-test.jar",15181774,"bios"],["squirreljme-slow.jar",15181774,"bios"],["squirreljme-test.jar",3396757,"bios"],["squirreljme.jar",4700395,"bios"],["st010.data.rom",4096,"bios"],["st010.program.rom",49152,"bios"],["st011.data.rom",4096,"bios"],["st011.program.rom",49152,"bios"],["st018.data.rom",32768,"bios"],["st018.program.rom",131072,"bios"],["st_kbd.zip",3344,"bios"],["stereo_fx.zip",3977,"bios"],["stic.zip",1296,"bios"],["stvbios.zip",3455065,"bios"],["sun1_cpu.zip",57393,"bios"],["sun_gem.zip",9773,"bios"],["sv603.zip",5695,"bios"],["sv806.zip",2717,"bios"],["sw1000xg.zip",20518162,"bios"],["swp30.zip",47545,"bios"],["swtpc8212_device.zip",5070,"bios"],["sx1541.zip",30913,"bios"],["sys68k_cpu1.zip",30486,"bios"],["sys68k_cpu20.zip",34447,"bios"],["sys68k_cpu21.zip",34447,"bios"],["sys68k_cpu21a.zip",34447,"bios"],["sys68k_cpu21b.zip",34447,"bios"],["sys68k_cpu21s.zip",34447,"bios"],["sys68k_cpu21ya.zip",34447,"bios"],["sys68k_cpu21yb.zip",34447,"bios"],["sys68k_cpu30.zip",291856,"bios"],["sys68k_cpu30be.zip",291856,"bios"],["sys68k_cpu30x.zip",291856,"bios"],["sys68k_cpu30xa.zip",291856,"bios"],["sys68k_cpu30za.zip",291856,"bios"],["sys68k_cpu33.zip",218296,"bios"],["sys68k_iscsi1.zip",17599,"bios"],["sys68k_isio1.zip",7302,"bios"],["syscard1.pce",262144,"bios"],["syscard2.pce",262144,"bios"],["syscard2u.pce",262144,"bios"],["syscard3.pce",262144,"bios"],["syscard3u.pce",262144,"bios"],["t5182.zip",2681,"bios"],["tanbus_ra32krom.zip",4189,"bios"],["tanbus_tandos.zip",6297,"bios"],["tanbus_tanex.zip",26826,"bios"],["tanbus_vid8082.zip",5374,"bios"],["tandberg_tdv2100_disp_logic.zip",1299,"bios"],["tandberg_tdv2100_keyboard.zip",572,"bios"],["tandy_1000_graphics.zip",3739,"bios"],["tandy_1000x_graphics.zip",3731,"bios"],["tape_128.szx",1464,"bios"],["tape_16.szx",591,"bios"],["tape_2048.szx",720,"bios"],["tape_2068.szx",1799,"bios"],["tape_48.szx",708,"bios"],["tape_pentagon.szx",1479,"bios"],["tape_plus2.szx",1571,"bios"],["tape_plus2a.szx",1617,"bios"],["tape_plus3.szx",1856,"bios"],["tape_plus3e.szx",1970,"bios"],["tape_scorpion.szx",3500,"bios"],["tape_se.szx",2146,"bios"],["tape_ts2068.szx",1840,"bios"],["tc2048.rom",16384,"bios"],["tc2068-0.rom",16384,"bios"],["tc2068-1.rom",8192,"bios"],["tdl12.zip",8050,"bios"],["technica.zip",12198,"bios"],["tek410x_kbd.zip",936,"bios"],["tek_msu_fdc.zip",2453,"bios"],["teletex800.zip",1260,"bios"],["tetriskr_cga.zip",160878,"bios"],["tgui9680.zip",22311,"bios"],["ti83.rom",262144,"bios"],["ti83plus.rom",524288,"bios"],["ti83se.rom",2097152,"bios"],["ti99_arcturus.zip",11432,"bios"],["ti99_bwg.zip",7452,"bios"],["ti99_ccdcc.zip",9611,"bios"],["ti99_ccfdc.zip",9712,"bios"],["ti99_ddcc1.zip",6231,"bios"],["ti99_evpc.zip",17207,"bios"],["ti99_fdc.zip",4969,"bios"],["ti99_gkracker.zip",5998,"bios"],["ti99_hfdc.zip",11813,"bios"],["ti99_myarcmem.zip",6085,"bios"],["ti99_pcode.zip",41460,"bios"],["ti99_rs232.zip",1782,"bios"],["ti99_thermal.zip",1544,"bios"],["ti99_tipi.zip",5838,"bios"],["ti99_whtscsi.zip",12367,"bios"],["ti_hx5102.zip",9758,"bios"],["tiki100_8088.zip",1246,"bios"],["tim011_kbd.zip",1862,"bios"],["tk02.zip",2839,"bios"],["tms320c30.zip",573,"bios"],["tms320c31.zip",573,"bios"],["tms320c32.zip",620,"bios"],["tms320vc33.zip",573,"bios"],["tnt.wad",18195736,"game_data"],["tonelib.bin",130500,"bios"],["tos.img",196608,"bios"],["tp880v.zip",55282,"bios"],["tp881v.zip",72045,"bios"],["trio64dx_pci.zip",73424,"bios"],["trs80m2kb.zip",920,"bios"],["tsvme104.zip",25233,"bios"],["turbogx.zip",11121,"bios"],["turbogxp.zip",11215,"bios"],["tv950kb.zip",1046,"bios"],["tv955kb.zip",1417,"bios"],["tvc_hbf.zip",36960,"bios"],["tvga9000.zip",37841,"bios"],["uae_data/drive_click_A500.wav",3313326,"bios"],["uae_data/drive_click_LOUD.wav",3308526,"bios"],["uae_data/drive_snatch_A500.wav",34450,"bios"],["uae_data/drive_snatch_LOUD.wav",39864,"bios"],["uae_data/drive_spin_A500.wav",134294,"bios"],["uae_data/drive_spin_LOUD.wav",20216,"bios"],["uae_data/drive_spinnd_A500.wav",352430,"bios"],["uae_data/drive_spinnd_LOUD.wav",241790,"bios"],["uae_data/drive_startup_A500.wav",34450,"bios"],["uae_data/drive_startup_LOUD.wav",43492,"bios"],["ubpnic.zip",171,"bios"],["ultra12f.zip",44397,"bios"],["ultra12f32.zip",20138,"bios"],["ultra14f.zip",16630,"bios"],["ultra24f.zip",19448,"bios"],["umc6650.zip",160,"bios"],["ume2015/hiscore.dat",216250,"game_data"],["uniap2ti.zip",1716,"bios"],["upd7220.zip",367,"bios"],["upd7801g.s01",4096,"bios"],["us_scd1_9210.bin",131072,"bios"],["us_scd2_9306.bin",131072,"bios"],["uts_400kbd.zip",853,"bios"],["uts_extw.zip",1046,"bios"],["v102_kbd.zip",1329,"bios"],["v50_kbd.zip",1066,"bios"],["v550_kbd.zip",1184,"bios"],["vanta.zip",72613,"bios"],["vector4_kbd.zip",1267,"bios"],["vic1515.zip",2699,"bios"],["vic1520.zip",3695,"bios"],["vic20_fe3.zip",9529,"bios"],["vic20_videopak.zip",830,"bios"],["vice/C128/basic-901226-01.bin",8192,"bios"],["vice/C128/basichi-318019-04.bin",16384,"bios"],["vice/C128/basiclo-318018-04.bin",16384,"bios"],["vice/C128/chargen-315079-01.bin",8192,"bios"],["vice/C128/chargen-325078-02.bin",8192,"bios"],["vice/C128/chargen-325167-02.bin",8192,"bios"],["vice/C128/chargen-325173-01D.bin",8192,"bios"],["vice/C128/chargen-325181-01.bin",8192,"bios"],["vice/C128/chargen-390059-01.bin",8192,"bios"],["vice/C128/kernal-315078-03.bin",16384,"bios"],["vice/C128/kernal-318020-05.bin",16384,"bios"],["vice/C128/kernal-318034-01.bin",16384,"bios"],["vice/C128/kernal-325172-01.bin",16384,"bios"],["vice/C128/kernal-901227-03.bin",8192,"bios"],["vice/C128/kernal64-325179-01.bin",8192,"bios"],["vice/C128/kernal64-325182-01.bin",8192,"bios"],["vice/C128/kernalfi",16384,"bios"],["vice/C128/kernalfr",16384,"bios"],["vice/C128/kernalit",16384,"bios"],["vice/C128/kernalno",16384,"bios"],["vice/C64/kernal-901227-01.bin",8192,"bios"],["vice/C64/kernal-901227-02.bin",8192,"bios"],["vice/DRIVES/dos1571cr-318047-01.bin",32768,"bios"],["vice/JiffyDOS_1541-II.bin",16384,"bios"],["vice/JiffyDOS_1571_repl310654.bin",32768,"bios"],["vice/JiffyDOS_1581.bin",32768,"bios"],["vice/JiffyDOS_C128.bin",16384,"bios"],["vice/JiffyDOS_C64.bin",8192,"bios"],["vice/JiffyDOS_SX-64.bin",8192,"bios"],["vice/VIC20/chargen-901460-02.bin",4096,"bios"],["vice/VIC20/kernal.901486-02.bin",8192,"bios"],["victor9k_fdc.zip",1152,"bios"],["victor9k_kb.zip",669,"bios"],["videnh2.zip",1713,"bios"],["virge_pci.zip",35167,"bios"],["virgedx_pci.zip",56560,"bios"],["virgevx_pci.zip",19358,"bios"],["vision864.zip",18539,"bios"],["vision964.zip",18202,"bios"],["vision968.zip",55852,"bios"],["voice/E480.WAV",101,"game_data"],["voice/E481.WAV",554,"game_data"],["voice/E482.WAV",554,"game_data"],["voice/E483.WAV",1096,"game_data"],["voice/E484.WAV",2219,"game_data"],["voice/E485.WAV",4592,"game_data"],["voice/E486.WAV",2902,"game_data"],["voice/E487.WAV",804,"game_data"],["voice/E488.WAV",1378,"game_data"],["voice/E489.WAV",576,"game_data"],["voice/E48A.WAV",1556,"game_data"],["voice/E48B.WAV",1516,"game_data"],["voice/E48C.WAV",794,"game_data"],["voice/E48D.WAV",1510,"game_data"],["voice/E48E.WAV",1892,"game_data"],["voice/E48F.WAV",788,"game_data"],["voice/E490.WAV",2020,"game_data"],["voice/E491.WAV",1122,"game_data"],["voice/E492.WAV",1862,"game_data"],["voice/E493.WAV",2772,"game_data"],["voice/E494.WAV",3120,"game_data"],["voice/E495.WAV",854,"game_data"],["voice/E496.WAV",1154,"game_data"],["voice/E497.WAV",1122,"game_data"],["voice/E498.WAV",1144,"game_data"],["voice/E499.WAV",2056,"game_data"],["voice/E49A.WAV",1302,"game_data"],["voice/E49B.WAV",2492,"game_data"],["voice/E49C.WAV",936,"game_data"],["voice/E49D.WAV",2038,"game_data"],["voice/E49E.WAV",1146,"game_data"],["voice/E49F.WAV",2884,"game_data"],["voice/E4A0.WAV",4096,"game_data"],["voice/E4A1.WAV",1702,"game_data"],["voice/E4A2.WAV",1570,"game_data"],["voice/E4A3.WAV",2060,"game_data"],["voice/E4A4.WAV",846,"game_data"],["voice/E4A5.WAV",1756,"game_data"],["voice/E4A6.WAV",2144,"game_data"],["voice/E4A7.WAV",1388,"game_data"],["voice/E4A8.WAV",1586,"game_data"],["voice/E4A9.WAV",2022,"game_data"],["voice/E4AA.WAV",1624,"game_data"],["voice/E4AB.WAV",2302,"game_data"],["voice/E4AC.WAV",2484,"game_data"],["voice/E4AD.WAV",1252,"game_data"],["voice/E4AE.WAV",1978,"game_data"],["voice/E4AF.WAV",3984,"game_data"],["voice/E4B0.WAV",2184,"game_data"],["voice/E4B1.WAV",1448,"game_data"],["voice/E4B2.WAV",2040,"game_data"],["voice/E4B3.WAV",1762,"game_data"],["voice/E4B4.WAV",3334,"game_data"],["voice/E4B5.WAV",2604,"game_data"],["voice/E4B6.WAV",2654,"game_data"],["voice/E4B7.WAV",984,"game_data"],["voice/E4B8.WAV",2156,"game_data"],["voice/E4B9.WAV",890,"game_data"],["voice/E4BA.WAV",3656,"game_data"],["voice/E4BB.WAV",3166,"game_data"],["voice/E4BC.WAV",3840,"game_data"],["voice/E4BD.WAV",464,"game_data"],["voice/E4BE.WAV",2084,"game_data"],["voice/E4BF.WAV",646,"game_data"],["voice/E4C0.WAV",5348,"game_data"],["voice/E4C1.WAV",8577,"game_data"],["voice/E4C2.WAV",5504,"game_data"],["voice/E4C3.WAV",12420,"game_data"],["voice/E4C4.WAV",11286,"game_data"],["voice/E4C5.WAV",7194,"game_data"],["voice/E4C6.WAV",7078,"game_data"],["voice/E4C7.WAV",4566,"game_data"],["voice/E4C8.WAV",7740,"game_data"],["voice/E4C9.WAV",9504,"game_data"],["voice/E4CA.WAV",12896,"game_data"],["voice/E4FA.WAV",11049,"game_data"],["voice/E4FB.WAV",7604,"game_data"],["voice/E880.WAV",10745,"game_data"],["voice/E881.WAV",7324,"game_data"],["voice/E882.WAV",6876,"game_data"],["voice/E883.WAV",7418,"game_data"],["voice/E884.WAV",13296,"game_data"],["voice/E885.WAV",10055,"game_data"],["voice/E886.WAV",5827,"game_data"],["voice/E887.WAV",6215,"game_data"],["voice/E888.WAV",5264,"game_data"],["voice/E889.WAV",8524,"game_data"],["voice/E88A.WAV",4348,"game_data"],["voice/E88B.WAV",4104,"game_data"],["voice/E88C.WAV",9624,"game_data"],["voice/E88D.WAV",6914,"game_data"],["voice/E88E.WAV",8319,"game_data"],["voice/E88F.WAV",9592,"game_data"],["voice/E890.WAV",9479,"game_data"],["voice/E891.WAV",8697,"game_data"],["voice/E892.WAV",6878,"game_data"],["voice/E893.WAV",6220,"game_data"],["voice/E894.WAV",6830,"game_data"],["voice/E895.WAV",6283,"game_data"],["voice/E980.WAV",6300,"game_data"],["voice/E981.WAV",5324,"game_data"],["voice/E982.WAV",11267,"game_data"],["voice/E983.WAV",7202,"game_data"],["voice/E984.WAV",6732,"game_data"],["voice/E985.WAV",6317,"game_data"],["voice/E986.WAV",6638,"game_data"],["voice/E987.WAV",8261,"game_data"],["voice/E988.WAV",10269,"game_data"],["voice/E989.WAV",5644,"game_data"],["voice/E98A.WAV",6008,"game_data"],["voice/E98B.WAV",10470,"game_data"],["voice/E98C.WAV",6304,"game_data"],["voice/E98D.WAV",3478,"game_data"],["voice/E98E.WAV",12232,"game_data"],["voice/E98F.WAV",13922,"game_data"],["voice/E990.WAV",10460,"game_data"],["voice/E991.WAV",2924,"game_data"],["voice/E992.WAV",16808,"game_data"],["voice/E993.WAV",12544,"game_data"],["voice/E994.WAV",7100,"game_data"],["voice/E995.WAV",6452,"game_data"],["voice/E996.WAV",6685,"game_data"],["voice/EA80.WAV",3092,"game_data"],["voice/EA81.WAV",5390,"game_data"],["voice/EA82.WAV",14341,"game_data"],["voice/EA83.WAV",4719,"game_data"],["voice/EA84.WAV",5252,"game_data"],["voice/EA85.WAV",7018,"game_data"],["voice/EA86.WAV",8480,"game_data"],["voice/EA87.WAV",9496,"game_data"],["voice/EA88.WAV",38600,"game_data"],["voice/EA89.WAV",29892,"game_data"],["voice/EA8A.WAV",11328,"game_data"],["voice/EA8B.WAV",2604,"game_data"],["voice/EA8C.WAV",16184,"game_data"],["voice/EA8D.WAV",3308,"game_data"],["voice/EA8E.WAV",3350,"game_data"],["voice/EA8F.WAV",18174,"game_data"],["voice/EA90.WAV",3348,"game_data"],["voice/EA91.WAV",3299,"game_data"],["voice/EA92.WAV",3302,"game_data"],["voice/EA93.WAV",3306,"game_data"],["voice/EA94.WAV",3267,"game_data"],["voice/EA95.WAV",3388,"game_data"],["voice/EA96.WAV",3392,"game_data"],["voice/EA97.WAV",3393,"game_data"],["voice/EA98.WAV",3359,"game_data"],["voice/EA99.WAV",3300,"game_data"],["voice/EA9A.WAV",3312,"game_data"],["voice/EA9B.WAV",3402,"game_data"],["voice/EA9C.WAV",3308,"game_data"],["voice/EA9D.WAV",3313,"game_data"],["voice/EA9E.WAV",3302,"game_data"],["voice/EA9F.WAV",3340,"game_data"],["voice/EAA0.WAV",3314,"game_data"],["voice/EAA1.WAV",3306,"game_data"],["voice/EAA2.WAV",3308,"game_data"],["voice/EAA3.WAV",3314,"game_data"],["voice/EAA4.WAV",3313,"game_data"],["voice/EAA5.WAV",3311,"game_data"],["voice/EAA6.WAV",3340,"game_data"],["voice/EAA7.WAV",3302,"game_data"],["voice/EB80.WAV",7226,"game_data"],["voice/EB81.WAV",5558,"game_data"],["voice/EB82.WAV",5566,"game_data"],["voice/EB83.WAV",6276,"game_data"],["voice/EB84.WAV",7508,"game_data"],["voice/EB85.WAV",5400,"game_data"],["voice/EB86.WAV",8981,"game_data"],["voice/EB87.WAV",8844,"game_data"],["voice/EB88.WAV",6554,"game_data"],["voice/EB89.WAV",6932,"game_data"],["voice/EB8A.WAV",7059,"game_data"],["voice/EB8B.WAV",7544,"game_data"],["voice/EB8C.WAV",5790,"game_data"],["voice/EB8D.WAV",6700,"game_data"],["voice/EB8E.WAV",6188,"game_data"],["voice/EB8F.WAV",4880,"game_data"],["voice/EB90.WAV",7480,"game_data"],["voice/EB91.WAV",6804,"game_data"],["voice/EB92.WAV",7419,"game_data"],["voice/EB93.WAV",6105,"game_data"],["voice/EB94.WAV",4972,"game_data"],["voice/EB95.WAV",5084,"game_data"],["voice/EB96.WAV",6492,"game_data"],["voice/EB97.WAV",8819,"game_data"],["voice/EB98.WAV",6104,"game_data"],["voice/EB99.WAV",5896,"game_data"],["voice/EB9A.WAV",5784,"game_data"],["voice/EB9B.WAV",5742,"game_data"],["voice/EB9C.WAV",6154,"game_data"],["voice/EB9D.WAV",4984,"game_data"],["voice/EC80.WAV",6815,"game_data"],["voice/EC81.WAV",5628,"game_data"],["voice/EC82.WAV",17440,"game_data"],["voice/EC83.WAV",8162,"game_data"],["voice/EC84.WAV",7944,"game_data"],["voice/EC85.WAV",6848,"game_data"],["voice/EC86.WAV",8225,"game_data"],["voice/EC87.WAV",5588,"game_data"],["voice/EC88.WAV",8954,"game_data"],["voice/EC89.WAV",7340,"game_data"],["voice/EC8A.WAV",9092,"game_data"],["voice/EC8B.WAV",7754,"game_data"],["voice/EC8C.WAV",7100,"game_data"],["voice/EC8D.WAV",5732,"game_data"],["voice/EC8E.WAV",6200,"game_data"],["voice/EC8F.WAV",6504,"game_data"],["voice/EC90.WAV",7853,"game_data"],["voice/EC91.WAV",8378,"game_data"],["voice/EC92.WAV",5336,"game_data"],["voice/EC93.WAV",8294,"game_data"],["voice/EC94.WAV",7838,"game_data"],["voice/EC95.WAV",6927,"game_data"],["voice/EC96.WAV",7524,"game_data"],["voice/EC97.WAV",8140,"game_data"],["voice/EC98.WAV",8370,"game_data"],["voice/EC99.WAV",7292,"game_data"],["voice/EC9A.WAV",6884,"game_data"],["voice/EC9B.WAV",6846,"game_data"],["voice/ED80.WAV",6308,"game_data"],["voice/ED81.WAV",5772,"game_data"],["voice/ED82.WAV",6794,"game_data"],["voice/ED83.WAV",6680,"game_data"],["voice/ED84.WAV",6624,"game_data"],["voice/ED85.WAV",7450,"game_data"],["voice/ED86.WAV",7055,"game_data"],["voice/ED87.WAV",5955,"game_data"],["voice/ED88.WAV",6789,"game_data"],["voice/ED89.WAV",6542,"game_data"],["voice/ED8A.WAV",6924,"game_data"],["voice/ED8B.WAV",7062,"game_data"],["voice/ED8C.WAV",6967,"game_data"],["voice/ED8D.WAV",7205,"game_data"],["voice/ED8E.WAV",7381,"game_data"],["voice/ED8F.WAV",5168,"game_data"],["voice/ED90.WAV",5344,"game_data"],["voice/ED91.WAV",5345,"game_data"],["voice/ED92.WAV",7924,"game_data"],["voice/ED93.WAV",7415,"game_data"],["voice/ED94.WAV",6820,"game_data"],["voice/ED95.WAV",6464,"game_data"],["voice/ED96.WAV",6576,"game_data"],["voice/ED97.WAV",6124,"game_data"],["voice/ED98.WAV",7688,"game_data"],["voice/ED99.WAV",6369,"game_data"],["voice/ED9A.WAV",6254,"game_data"],["voice/EE80.WAV",6012,"game_data"],["voice/EE81.WAV",8294,"game_data"],["voice/EE82.WAV",7128,"game_data"],["voice/EE83.WAV",4256,"game_data"],["voice/EE84.WAV",7514,"game_data"],["voice/EE85.WAV",8176,"game_data"],["voice/EE86.WAV",6824,"game_data"],["voice/EE87.WAV",8117,"game_data"],["voice/EE88.WAV",8756,"game_data"],["voice/EE89.WAV",7406,"game_data"],["voice/EE8A.WAV",7352,"game_data"],["voice/EE8B.WAV",8651,"game_data"],["voice/EE8C.WAV",7511,"game_data"],["voice/EE8D.WAV",8024,"game_data"],["voice/EE8E.WAV",9809,"game_data"],["voice/EE8F.WAV",8364,"game_data"],["voice/EE90.WAV",4828,"game_data"],["voice/EE91.WAV",6092,"game_data"],["voice/EE92.WAV",5000,"game_data"],["voice/EE93.WAV",7197,"game_data"],["voice/EE94.WAV",6785,"game_data"],["voice/EE95.WAV",6105,"game_data"],["voice/EE96.WAV",7604,"game_data"],["voicebox.zip",2019,"bios"],["voodoo_3000_x86.zip",40056,"bios"],["votraxtnt.zip",3922,"bios"],["votrsc01.zip",588,"bios"],["votrsc01a.zip",590,"bios"],["vp700.zip",3613,"bios"],["vsaturn.bin",524288,"bios"],["vtech_fdc.zip",4431,"bios"],["vtech_rs232.zip",2458,"bios"],["vtech_rtty.zip",2488,"bios"],["vtech_sdloader.zip",11160,"bios"],["vtech_wordpro.zip",8125,"bios"],["wangpc_lic.zip",2810,"bios"],["wangpc_rtc.zip",3197,"bios"],["wangpc_wdc.zip",3193,"bios"],["wangpckb.zip",1228,"bios"],["wd1002a_wx1.zip",1868,"bios"],["wd1007a.zip",3971,"bios"],["wd90c00_jk.zip",58499,"bios"],["wd90c11_lr.zip",18343,"bios"],["wd90c30_lr.zip",41732,"bios"],["wd90c31_lr.zip",22513,"bios"],["wd90c31a_lr.zip",38568,"bios"],["wd90c31a_zs.zip",18777,"bios"],["wd90c33_zz.zip",19105,"bios"],["wd90c90_jk.zip",15497,"bios"],["wd9710_pci.zip",18718,"bios"],["wdxt_gen.zip",4266,"bios"],["wg130.zip",1861561,"bios"],["whdboot/JST",89108,"bios"],["whdboot/WHDLoad",161031,"bios"],["whdboot/boot-data.zip",297373,"bios"],["whdboot/game-data/whdload_db.json",6741053,"bios"],["whdboot/host-quit",3180,"bios"],["whdboot/save-data/Kickstarts/kick31034.A1000.RTB",3736,"bios"],["whdboot/save-data/Kickstarts/kick33180.A500.RTB",3882,"bios"],["whdboot/save-data/Kickstarts/kick34005.A500.RTB",4020,"bios"],["whdboot/save-data/Kickstarts/kick36143.A3000.RTB",5980,"bios"],["whdboot/save-data/Kickstarts/kick37175.A500.RTB",5576,"bios"],["whdboot/save-data/Kickstarts/kick39106.A1200.RTB",5002,"bios"],["whdboot/save-data/Kickstarts/kick40063.A600.RTB",5000,"bios"],["whdboot/save-data/Kickstarts/kick40068.A1200.RTB",5008,"bios"],["whdboot/save-data/Kickstarts/kick40068.A4000.RTB",4976,"bios"],["wildmidi.cfg",192,"game_data"],["wpcap.dll",499128,"bios"],["wyse700.zip",4164,"bios"],["x68k_cz6bs1.zip",3156,"bios"],["x820iikb.zip",1128,"bios"],["x820kb.zip",1128,"bios"],["xbox_eeprom.bin",256,"bios"],["xbox_hdd.qcow2",1638400,"bios"],["xerox820_16_8.zip",1338,"bios"],["xerox820_emii_flpy5.zip",2303,"bios"],["xerox820_emii_rgd5.zip",2303,"bios"],["xetec_c5181.zip",3192,"bios"],["xmil/FNT0808.X1",2048,"bios"],["xmil/FNT0816.X1",4096,"bios"],["xmil/FNT1616.X1",306176,"bios"],["xmil/IPLROM.X1",4096,"bios"],["xmil/IPLROM.X1T",32768,"bios"],["xrick/data.zip",1457440,"bios"],["xt446.zip",18613894,"bios"],["xtide.zip",148910,"bios"],["ym2413.zip",286,"bios"],["ym2423.zip",313,"bios"],["ym2608.zip",7587,"bios"],["ym2608.zip",7609,"bios"],["ymf281.zip",313,"bios"],["ymf288_adpcm_rom.bin",8192,"bios"],["z8671.zip",2028,"bios"],["z8682.zip",201,"bios"],["zdoom.pk3",619127,"game_data"],["zip100_ide.zip",36071,"bios"],["zorba_kbd.zip",1406,"bios"],["zt18hfnt.rom",32768,"bios"],["zxbus_neogs.zip",297163,"bios"]],"format_version":1,"platform":"retroarch","sets":{"acorn-bbc-micro|b2":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"amstrad-cpc|":{"bytes":114688,"files":[873,874,875,876],"optional":[],"required_bytes":114688},"amstrad-cpc|cap32":{"bytes":114688,"files":[873,874,875,876],"optional":[],"required_bytes":114688},"amstrad-cpc|crocods":{"bytes":114688,"files":[873,874,875,876],"optional":[],"required_bytes":114688},"apple-ios|touchhle":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"apple-macintosh|minivmac":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"apple2|linapple":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"aquaplus-piece|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arcade-laserdisc|daphne":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arcade-laserdisc|hypseus-singe":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arcade|":{"bytes":1608777213,"files":[4,8,10,12,124,125,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,495,496,497,506,507,508,509,510,511,512,514,515,516,517,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,586,587,588,589,590,591,592,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,680,681,682,683,684,685,686,687,688,689,690,692,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,713,714,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,766,767,769,770,771,772,773,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,797,799,802,803,804,805,806,807,827,828,829,844,845,846,848,849,850,852,853,854,855,858,859,860,861,862,863,864,865,866,867,868,869,898,899,900,901,902,903,904,905,906,907,908,909,910,917,918,919,920,921,923,924,925,926,927,928,929,930,931,932,933,934,935,937,938,939,940,941,942,944,945,946,947,948,949,950,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,974,981,982,1034,1039,1054,1055,1057,1058,1060,1063,1064,1065,1066,1067,1070,1071,1072,1073,1074,1075,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1095,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1115,1116,1117,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1150,1151,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1177,1178,1179,1200,1203,1204,1205,1206,1207,1208,1209,1210,1212,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2028,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2066,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2178,2179,2181,2252,2253,2254,2255,2256,2257,2285,2286,2292,2293,2296,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2471,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2501,2502,2503,2505,2506,2507,2508,2509,2533,2592,2593,2594,2595,2597,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2823,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2859,2861,2862,2863,2864,2892,2986,2987,2988,2989,2990,2995,2996,2997,2998,2999,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3105,3106,3107,3109,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3138,3139,3140,3141,3142,3143,3144,3145,3146,3163,3164,3165,3166,3167,3168,3169,3173,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3220,3221,3222,3223,3224,3225,3226,3227,3228,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3274,3275,3276,3277,3278,3279,3280,3281,3282,3553,3554,3555,3556,3557,3558,3560,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3598,3599,3600,3601,3604,3605,3606,3607,3614,3615,3616,3617,3619,3620,3622,3623,3625,3626,3628],"optional":[],"required_bytes":1608777213},"arcade|fbalpha2012":{"bytes":825620530,"files":[125,409,928,929,930,931,932,933,934,935,937,938,939,940,941,942,943,945,946,947,948,949,950,951,953,954,955,956,959,960,961,962,963,2178,2620],"optional":[125,928,929,930,931,932,933,934,935],"required_bytes":8587539},"arcade|fbneo":{"bytes":319127529,"files":[409,937,938,939,940,941,942,944,945,946,947,948,949,950,952,953,954,955,956,957,958,959,960,961,962,963,2178,2620],"optional":[957,958],"required_bytes":9560899},"arcade|mame":{"bytes":289518643,"files":[4,8,10,12,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,495,496,497,506,507,508,509,510,511,512,514,515,516,517,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,586,587,588,589,590,591,592,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,680,681,682,683,684,685,686,687,688,689,690,692,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,713,714,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,766,767,769,770,771,772,773,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,797,799,802,803,804,805,806,807,827,828,829,844,845,846,848,849,850,852,853,854,855,858,859,860,861,862,863,864,865,866,867,868,869,898,899,900,901,902,903,904,905,906,907,908,909,910,917,918,919,920,921,923,924,925,926,937,938,939,940,941,942,943,945,946,947,948,949,950,951,953,954,955,956,959,960,961,962,963,964,965,966,967,968,969,970,971,974,981,982,1034,1039,1054,1055,1057,1058,1060,1063,1064,1065,1066,1067,1070,1071,1072,1073,1074,1075,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1095,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1115,1116,1117,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1150,1151,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1177,1178,1179,1200,1203,1204,1205,1206,1207,1208,1209,1210,1212,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2025,2026,2028,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2066,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2178,2179,2181,2252,2253,2254,2255,2256,2257,2285,2286,2292,2293,2296,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2471,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2501,2502,2503,2505,2506,2507,2508,2509,2533,2592,2593,2594,2595,2597,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2823,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2859,2861,2862,2863,2864,2892,2986,2987,2988,2989,2990,2995,2996,2997,2998,2999,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3105,3106,3107,3109,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3138,3139,3140,3141,3142,3143,3144,3145,3146,3163,3164,3165,3166,3167,3168,3169,3173,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3220,3221,3222,3223,3224,3225,3227,3228,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3274,3275,3276,3277,3278,3279,3280,3281,3282,3553,3554,3555,3556,3557,3558,3560,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3598,3599,3600,3601,3604,3605,3606,3607,3614,3615,3616,3617,3618,3620,3622,3623,3625,3626,3628],"optional":[4,8,10,12,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,410,411,412,413,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,495,496,497,506,507,508,509,510,511,512,514,515,516,517,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,586,587,588,589,590,591,592,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,680,681,682,683,684,685,686,687,688,689,690,692,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,713,714,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,766,767,769,770,771,772,773,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,797,799,802,803,804,805,806,807,827,828,829,844,845,846,848,849,850,852,853,854,855,858,859,860,861,862,863,864,865,866,867,868,869,898,899,900,901,902,903,904,905,906,907,908,909,910,917,918,919,920,921,923,924,925,926,964,965,966,967,968,969,970,971,974,981,982,1034,1039,1054,1055,1057,1058,1060,1063,1064,1065,1066,1067,1070,1071,1072,1073,1074,1075,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1095,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1115,1116,1117,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1150,1151,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1177,1178,1179,1200,1203,1204,1205,1206,1207,1208,1209,1210,1212,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1349,1355,1356,1607,1608,1619,1620,1679,1792,1793,1794,1795,1796,1797,1798,1835,1836,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2025,2026,2028,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2066,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2179,2181,2252,2253,2254,2255,2256,2257,2285,2286,2292,2293,2296,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2471,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2501,2502,2503,2505,2506,2507,2508,2509,2533,2592,2593,2594,2595,2597,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2621,2622,2623,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2823,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2859,2861,2862,2863,2864,2892,2986,2987,2988,2989,2990,2995,2996,2997,2998,2999,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3105,3106,3107,3109,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3138,3139,3140,3141,3142,3143,3144,3145,3146,3163,3164,3165,3166,3167,3168,3169,3173,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3220,3221,3222,3223,3224,3225,3227,3228,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3274,3275,3276,3277,3278,3279,3280,3281,3282,3553,3554,3555,3556,3557,3558,3560,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3598,3599,3600,3601,3604,3605,3606,3607,3614,3615,3616,3617,3618,3620,3622,3623,3625,3626,3628],"required_bytes":103004545},"arcade|mame2000":{"bytes":16558899,"files":[409,937,938,939,940,941,942,943,945,946,947,948,949,950,951,953,954,955,956,959,960,961,962,963,2006,2178,2620],"optional":[2006],"required_bytes":8587539},"arcade|mame2003_plus":{"bytes":94627885,"files":[409,937,938,939,940,941,942,943,945,946,947,948,949,950,951,953,954,955,956,959,960,961,962,963,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2043,2044,2138,2178,2620],"optional":[2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2043,2044],"required_bytes":8597118},"arcade|mame2010":{"bytes":33771609,"files":[409,937,938,939,940,941,942,943,945,946,947,948,949,950,951,953,954,955,956,959,960,961,962,963,2023,2024,2178,2620],"optional":[2023,2024],"required_bytes":8587539},"arduboy|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arduboy|ardens":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arduboy|arduous":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-2600|stella":{"bytes":33793052,"files":[269,270,271,272,273,274,275],"optional":[269,270,271,272,273,274,275],"required_bytes":0},"atari-2600|stella2014":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-400-800|":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[],"required_bytes":231424},"atari-400-800|atari800":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[238,239,240,241,498,499,500,501,502,503,504,505],"required_bytes":71680},"atari-5200|":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[],"required_bytes":231424},"atari-5200|a5200":{"bytes":71680,"files":[13,19,20,21,22,30,282],"optional":[],"required_bytes":71680},"atari-5200|atari800":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[238,239,240,241,498,499,500,501,502,503,504,505],"required_bytes":71680},"atari-7800|":{"bytes":20480,"files":[17,18],"optional":[],"required_bytes":20480},"atari-7800|prosystem":{"bytes":20480,"files":[17,18],"optional":[],"required_bytes":20480},"atari-jaguar|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-jaguar|bigpemu":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-jaguar|virtualjaguar":{"bytes":786432,"files":[283,284,1148,1149],"optional":[283,284,1148,1149],"required_bytes":0},"atari-lynx|":{"bytes":1025,"files":[1096,1231],"optional":[],"required_bytes":1025},"atari-lynx|beetle_lynx":{"bytes":512,"files":[1231],"optional":[],"required_bytes":512},"atari-lynx|handy":{"bytes":1025,"files":[1096,1231],"optional":[1096],"required_bytes":512},"atari-st|":{"bytes":2375680,"files":[911,912,913,1076,3198],"optional":[],"required_bytes":2375680},"atari-st|hatari":{"bytes":933888,"files":[1076,3198],"optional":[1076],"required_bytes":196608},"bally-astrocade|mess2015":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"bandai-wswanc|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"bandai-wswan|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"bbk-longman-4980|bbkemu":{"bytes":4194304,"files":[31,32],"optional":[],"required_bytes":4194304},"bbk-longman-4988|bbkemu":{"bytes":4194304,"files":[31,32],"optional":[],"required_bytes":4194304},"bennugd|bennugd":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps1|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps1|fbalpha2012_cps1":{"bytes":322458,"files":[936],"optional":[936],"required_bytes":0},"capcom-cps1|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps2|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps2|fbalpha2012_cps2":{"bytes":322458,"files":[936],"optional":[936],"required_bytes":0},"capcom-cps2|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps3|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps3|fbalpha2012_cps3":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps3|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"casio-loopy|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"cave-story|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"cave-story|doukutsu_rs":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"cave-story|nxengine":{"bytes":1547830,"files":[2287,2288,2289,2290],"optional":[2289,2290],"required_bytes":1487320},"chip8|jaxe":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"coco|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"coco|xroar":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"colecovision|":{"bytes":6498322,"files":[33,117,118,119,120,121,122,150,166,167,168,169,170,171,172,173,174,207,217,218,219,220,221,222,223,224,225,226,227,576,731,732,733,940],"optional":[],"required_bytes":6498322},"colecovision|bluemsx":{"bytes":6470308,"files":[33,117,118,119,120,121,122,150,166,167,168,169,170,171,172,173,174,207,217,218,219,220,221,222,223,224,225,226,227,576,731,733,940],"optional":[117,118,120,121,122,166,167,168,169,170,171,172,173,174,207,217,218,219,220,221,222,223,224,225,226,227],"required_bytes":993816},"colecovision|coolcv":{"bytes":985624,"files":[33,119,576,731,733,940],"optional":[],"required_bytes":985624},"colecovision|gearcoleco":{"bytes":985624,"files":[33,119,576,731,733,940],"optional":[],"required_bytes":985624},"commodore-amiga-cd32|puae":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-amiga-cd32|puae2021":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-amiga|":{"bytes":38387780,"files":[15,16,114,281,493,494,677,678,983,984,985,986,987,988,989,990,991,992,993,994,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,2085,2086,2087,2088,2665,2666,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2677,2678,2679,2680,2681,2682,2683,2684,2685,2686,2687,2688,2689,2690,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2702,2703,2704,2705,2706,2707,2708,2709,2710,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2722,2723,2724,2725,2726,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2738,2739,2740,2741,2742,2743,2744,2745,2746,2747,2748,2749,2750,2751,2752,2753,2754,2755,2756,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,2811,2812,2813,2814,2815,2816,2817,2818,2819,2820,2821,2822,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219,3582,3583,3584,3585,3586,3587,3588,3589,3590,3591,3592,3593,3594,3595],"optional":[],"required_bytes":38387780},"commodore-amiga|puae":{"bytes":13843102,"files":[281,677,678,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,2665,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219],"optional":[281,677,678,1186,1187,2665,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219],"required_bytes":5505024},"commodore-amiga|puae2021":{"bytes":13843102,"files":[281,677,678,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,2665,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219],"optional":[281,677,678,1186,1187,2665,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219],"required_bytes":5505024},"commodore-amiga|uae4arm":{"bytes":5507093,"files":[1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,2665],"optional":[2665],"required_bytes":5505024},"commodore-c128|vice_x128":{"bytes":753664,"files":[135,136,137,138,139,2927,2928,3243,3244,3245,3246,3247,3248,3249,3250,3251,3252,3253,3254,3255,3256,3257,3258,3259,3260,3261,3262,3265,3266,3267,3268,3269,3270],"optional":[135,136,137,138,139],"required_bytes":647168},"commodore-c64|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-c64|vice_x64":{"bytes":49152,"files":[140,1169,1170,3263,3264,3271],"optional":[140,1169,1170,3263,3264,3271],"required_bytes":0},"commodore-cbm-ii|vice_xcbm2":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-pet|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-pet|vice_xpet":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-plus4|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-plus4|vice_xplus4":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-vic20|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-vic20|vice_xvic":{"bytes":24576,"files":[715,1171,3272,3273],"optional":[715,1171,3272,3273],"required_bytes":0},"dinothawr|":{"bytes":6727905,"files":[123,787],"optional":[],"required_bytes":6727905},"dinothawr|dinothawr":{"bytes":6727905,"files":[123,787],"optional":[],"required_bytes":6727905},"discrete-arcade|dice":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"doom|":{"bytes":142481407,"files":[823,824,825,826,975,976,1069,2500,2504,3196,3624],"optional":[],"required_bytes":142481407},"doom|gzdoom":{"bytes":143312,"files":[2504],"optional":[],"required_bytes":143312},"doom|prboom":{"bytes":142481407,"files":[823,824,825,826,975,976,1069,2500,2504,3196,3624],"optional":[823,824,825,826,975,976,1069,2500,3196,3624],"required_bytes":143312},"dos|":{"bytes":57366868,"files":[38,39,40,116,148,149,243,244,245,246,247,248,249,250,251,252,253,513,518,519,1213,1214,1215,1216,2865,2866,2867,2868,2869,2870,2871,2872,2873,2874,2875,2876,2877,2878,2879,2880,2881,2882,2883,2884,2885,2886,2887,2888,2889,2890,2891],"optional":[],"required_bytes":57366868},"dos|dosbox_pure":{"bytes":43239764,"files":[38,39,40,116,148,149,243,244,245,246,247,248,249,250,251,252,518,519,1213,1214,1215,1216],"optional":[38,116,243,244,245,246,247,248,249,250,251,252],"required_bytes":3707312},"dragon32|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"elektronika-bk|bk":{"bytes":102528,"files":[577,578,579,580,581,582,583,584,585],"optional":[585],"required_bytes":102400},"enterprise-128|ep128emu_core":{"bytes":65536,"files":[878,881],"optional":[878,881],"required_bytes":0},"enterprise-64-128|":{"bytes":95957100,"files":[392,437,515,529,613,622,625,626,629,630,710,716,739,763,764,827,870,871,872,877,879,880,882,883,884,885,890,891,894,898,899,902,921,1083,1088,1089,1090,1091,1092,1093,1116,1117,1227,1229,1230,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1350,1351,1352,1353,1354,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,2029,2041,2042,2079,2106,2155,2254,2286,2307,2326,2329,2838,2839,2841,2843,2844,2846,2847,2850,2892,2988,2989,3012,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3115,3195,3554,3555,3557,3617,3620,3627],"optional":[],"required_bytes":95957100},"enterprise-64-128|ep128emu_core":{"bytes":376832,"files":[870,871,872,877,879,880,882,883,884,885,890,891,3627],"optional":[],"required_bytes":376832},"entex-advision|mess2015":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"fairchild-channelf|":{"bytes":5777,"files":[939,3023,3024,3025],"optional":[],"required_bytes":5777},"fairchild-channelf|freechaf":{"bytes":5777,"files":[939,3023,3024,3025],"optional":[],"required_bytes":5777},"famicom-disk-system|fceumm":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"famicom|fceumm":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"famicom|nestopia":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"flashback|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"flashback|reminiscence":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"flash|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"galaksija|galaksija":{"bytes":10240,"files":[1035,1036,1037],"optional":[],"required_bytes":10240},"game-boy-advance|mgba":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"game-boy-color|gambatte":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"game-boy|gambatte":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"gamepark-gp32|mame":{"bytes":1378301,"files":[1062],"optional":[],"required_bytes":1378301},"gametank|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"gametank|gametank":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"handheld-electronic|gw":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"igs-pgm|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"intellivision|":{"bytes":10240,"files":[922,1068],"optional":[],"required_bytes":10240},"intellivision|freeintv":{"bytes":10240,"files":[922,1068],"optional":[],"required_bytes":10240},"j2me|freej2me":{"bytes":112628937,"files":[977,978,979,3089,3090,3091,3093,3094,3095,3096,3098],"optional":[],"required_bytes":112628937},"j2me|freej2me_plus":{"bytes":113848030,"files":[977,978,979,980,3089,3090,3091,3093,3094,3095,3096,3098],"optional":[],"required_bytes":113848030},"j2me|squirreljme":{"bytes":119422451,"files":[977,978,979,3089,3090,3091,3092,3093,3094,3095,3096,3097,3098],"optional":[3092,3097],"required_bytes":112628937},"lowresnx|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"lowresnx|lowresnx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"mega-duck|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"mega-duck|sameduck":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"microsoft-xbox|xemu":{"bytes":3186872,"files":[113,2027,3597,3602,3603],"optional":[3597,3602],"required_bytes":2687488},"msx2plus|bluemsx":{"bytes":212992,"files":[157,158,159,160,161,191,192,193],"optional":[157,158,159,160,161],"required_bytes":65536},"msx2|bluemsx":{"bytes":622592,"files":[154,155,156,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,194,195,196,197,198,199],"optional":[154,155,156,177,178,179,180,182,183,184,185,186,187,188,189,190,194,195,196,197,198,199],"required_bytes":49152},"msxturbor|bluemsx":{"bytes":147456,"files":[202,213,214,215,216],"optional":[],"required_bytes":147456},"msx|bluemsx":{"bytes":7630068,"files":[37,41,115,117,118,119,120,121,122,126,127,128,141,142,143,144,145,146,147,151,152,153,166,167,168,169,170,171,172,173,174,175,200,201,203,204,205,206,207,208,209,210,211,212,217,218,219,220,221,222,223,224,225,226,227,233,242,947],"optional":[117,118,120,121,122,151,152,153,166,167,168,169,170,171,172,173,174,200,201,203,204,205,206,207,208,209,210,211,212,217,218,219,220,221,222,223,224,225,226,227],"required_bytes":1703016},"nec-pc-88|":{"bytes":925696,"files":[2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640],"optional":[],"required_bytes":925696},"nec-pc-88|quasi88":{"bytes":925696,"files":[2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640],"optional":[2629,2630,2631],"required_bytes":919552},"nec-pc-engine-cd|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nec-pc-engine-cd|mednafen_pce_fast":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nec-pc-engine|":{"bytes":1376256,"files":[1053,1056,3133,3134,3135,3136,3137],"optional":[],"required_bytes":1376256},"nec-pc-engine|mednafen_pce_fast":{"bytes":1376256,"files":[1053,1056,3133,3134,3135,3136,3137],"optional":[],"required_bytes":1376256},"nec-pc-engine|mednafen_supergrafx":{"bytes":1376256,"files":[1053,1056,3133,3134,3135,3136,3137],"optional":[],"required_bytes":1376256},"nec-pcfx|":{"bytes":4718592,"files":[1032,2341,2342,2343,2344],"optional":[],"required_bytes":4718592},"nec-pcfx|beetle_pcfx":{"bytes":4718592,"files":[1032,2341,2342,2343,2344],"optional":[],"required_bytes":4718592},"nec-supergrafx|mednafen_supergrafx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"neogeo|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"neogeo|fbalpha2012_neogeo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"neogeo|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-3ds|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-3ds|azahar":{"bytes":3207537,"files":[23,24,25,26,27,28,29],"optional":[23,24,25,26,27,28,29],"required_bytes":0},"nintendo-3ds|citra":{"bytes":3271885,"files":[109,110,111,112],"optional":[109,110,111,112],"required_bytes":0},"nintendo-3ds|panda3ds":{"bytes":60621,"files":[236,237],"optional":[236,237],"required_bytes":0},"nintendo-64dd|":{"bytes":8454540,"files":[14,230,231],"optional":[],"required_bytes":8454540},"nintendo-64dd|mupen64plus_next":{"bytes":8454540,"files":[14,230,231],"optional":[231],"required_bytes":8388608},"nintendo-64dd|parallel_n64":{"bytes":8388608,"files":[14,230],"optional":[],"required_bytes":8388608},"nintendo-64|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-64|mupen64plus_next":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-64|parallel_n64":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-dsi|dsperate":{"bytes":251920448,"files":[830,831,832,833],"optional":[],"required_bytes":251920448},"nintendo-dsi|melonds_ds":{"bytes":251920448,"files":[830,831,832,833],"optional":[],"required_bytes":251920448},"nintendo-ds|":{"bytes":253573696,"files":[263,264,265,266,267,268,567,568,830,831,832,833,972,2160,2161,2162],"optional":[],"required_bytes":253573696},"nintendo-ds|drastic":{"bytes":252223552,"files":[567,568,830,831,832,833,972,2160,2161],"optional":[],"required_bytes":252223552},"nintendo-ds|melonds":{"bytes":252223552,"files":[567,568,830,831,832,833,972,2160,2161],"optional":[],"required_bytes":252223552},"nintendo-fds|":{"bytes":38542,"files":[798,942,1038],"optional":[],"required_bytes":38542},"nintendo-fds|fceumm":{"bytes":38542,"files":[798,942,1038],"optional":[],"required_bytes":38542},"nintendo-fds|nestopia":{"bytes":38542,"files":[798,942,1038],"optional":[],"required_bytes":38542},"nintendo-gamecube|":{"bytes":288170070,"files":[129,130,131,132,133,134,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052],"optional":[],"required_bytes":288170070},"nintendo-gamecube|dolphin":{"bytes":153933191,"files":[808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052],"optional":[816,817,818,819,820,821,822],"required_bytes":19679928},"nintendo-gba|":{"bytes":317952,"files":[263,264,265,266,267,268,1041],"optional":[],"required_bytes":317952},"nintendo-gba|gpsp":{"bytes":16384,"files":[1041],"optional":[],"required_bytes":16384},"nintendo-gba|mgba":{"bytes":16384,"files":[1041],"optional":[],"required_bytes":16384},"nintendo-gbc|":{"bytes":2294016,"files":[36,254,255,263,264,265,266,267,268,414,711,712,800,834,835,836,837,838,839,840,841,842,843,1042,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":2294016},"nintendo-gbc|gambatte":{"bytes":1990144,"files":[36,254,255,711,712,800,834,835,836,837,838,839,840,841,842,843,1042,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":1990144},"nintendo-gbc|mgba":{"bytes":1990144,"files":[36,254,255,711,712,800,834,835,836,837,838,839,840,841,842,843,1042,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":1990144},"nintendo-gb|":{"bytes":2287616,"files":[36,254,255,263,264,265,266,267,268,712,800,801,834,835,836,837,838,839,840,841,842,843,1040,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":2287616},"nintendo-gb|gambatte":{"bytes":1986048,"files":[36,254,255,712,800,801,834,835,836,837,838,839,840,841,842,843,1040,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":1986048},"nintendo-gb|mgba":{"bytes":1986048,"files":[36,254,255,712,800,801,834,835,836,837,838,839,840,841,842,843,1040,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":1986048},"nintendo-nes|":{"bytes":7079398,"files":[228,229,232,276,765,1038,1211,2180,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,3621],"optional":[],"required_bytes":7079398},"nintendo-nes|fceumm":{"bytes":1034318,"files":[232,1038,2180],"optional":[2180],"required_bytes":1034126},"nintendo-nes|nestopia":{"bytes":5997926,"files":[232,765,1038,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251],"optional":[765],"required_bytes":5997734},"nintendo-nes|quicknes":{"bytes":1034126,"files":[232,1038],"optional":[],"required_bytes":1034126},"nintendo-pokemon-mini|":{"bytes":4096,"files":[565],"optional":[],"required_bytes":4096},"nintendo-pokemon-mini|pokemini":{"bytes":4096,"files":[565],"optional":[],"required_bytes":4096},"nintendo-satellaview|":{"bytes":4083900,"files":[34,35,36,254,255,257,258,259,260,261,712,800,834,835,836,837,838,839,840,841,842,843,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":4083900},"nintendo-satellaview|snes9x":{"bytes":4082688,"files":[34,35,36,254,255,712,800,834,835,836,837,838,839,840,841,842,843,3005,3007,3099,3100,3101,3102],"optional":[],"required_bytes":4082688},"nintendo-sgb|":{"bytes":3035648,"files":[36,254,255,277,278,279,712,800,834,835,836,837,838,839,840,841,842,843,3000,3001,3002,3003,3004,3005,3006,3007,3099,3100,3101,3102],"optional":[],"required_bytes":3035648},"nintendo-sgb|mgba":{"bytes":2772736,"files":[36,254,255,712,800,834,835,836,837,838,839,840,841,842,843,3000,3001,3003,3004,3005,3006,3007,3099,3100,3101,3102],"optional":[],"required_bytes":2772736},"nintendo-snes|chimerasnes":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3005,3007,3099,3100,3101,3102,3103,3104],"optional":[],"required_bytes":2152448},"nintendo-snes|mednafen_supafaust":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3005,3007,3099,3100,3101,3102,3103,3104],"optional":[],"required_bytes":2152448},"nintendo-snes|snes9x":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3005,3007,3099,3100,3101,3102,3103,3104],"optional":[],"required_bytes":2152448},"nintendo-snes|snes9x2005":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3005,3007,3099,3100,3101,3102,3103,3104],"optional":[],"required_bytes":2152448},"nintendo-snes|snes9x2005_plus":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3005,3007,3099,3100,3101,3102,3103,3104],"optional":[],"required_bytes":2152448},"nintendo-sufami-turbo|":{"bytes":262144,"files":[256],"optional":[],"required_bytes":262144},"nintendo-sufami-turbo|snes9x":{"bytes":262144,"files":[256],"optional":[],"required_bytes":262144},"nintendo-sufami-turbo|snes9x2010":{"bytes":262144,"files":[256],"optional":[],"required_bytes":262144},"nintendo-switch|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-virtualboy|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-virtualboy|beetle_vb":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-wiiu|cemu":{"bytes":92610046,"files":[42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108],"optional":[42,43,44,45,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108],"required_bytes":449507},"nintendo-wii|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-wii|dolphin":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"odyssey2|o2em":{"bytes":1606321,"files":[621,1033,1152,2291,3283,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552],"optional":[],"required_bytes":1606321},"olivetti-pc128|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"onscripter|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"onscripter|onscripter":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"openbor|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"openbor|openbor":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"palm-os|":{"bytes":40108544,"files":[594,2309,2310,2311,2312],"optional":[],"required_bytes":40108544},"palm-os|mu":{"bytes":40108544,"files":[594,2309,2310,2311,2312],"optional":[],"required_bytes":40108544},"panasonic-3do|opera":{"bytes":13123332,"files":[9,1061,2295,2313,2314,2315,2316,2317,2318,2319,2320,2321,2322,2857],"optional":[2295],"required_bytes":12992260},"pc-98|":{"bytes":1987076,"files":[2258,2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284],"optional":[],"required_bytes":1987076},"pc-98|nekop2":{"bytes":1933828,"files":[2258,2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2280,2284],"optional":[2258,2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269],"required_bytes":1117442},"pc-98|np2kai":{"bytes":1170690,"files":[2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284],"optional":[2279,2281,2282,2283],"required_bytes":1117442},"pc80|quasi88":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"philips-cdi|same_cdi":{"bytes":2990918,"files":[693,2852,2853,2854,2855,2856],"optional":[2852,2853],"required_bytes":2123788},"philips-videopac|":{"bytes":1605297,"files":[621,1033,1152,3283,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552],"optional":[],"required_bytes":1605297},"philips-videopac|o2em":{"bytes":1605297,"files":[621,1033,1152,3283,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552],"optional":[],"required_bytes":1605297},"pico8|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"pico8|fake08":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"pico8|lexaloffle":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"quake2|vitaquake2":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"quake|tyrquake":{"bytes":159899459,"files":[1114,2641,2642,2643],"optional":[2642,2643],"required_bytes":66916006},"rpgmaker|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"rpgmaker|easyrpg":{"bytes":148398498,"files":[851,3596],"optional":[851,3596],"required_bytes":0},"rpgmaker|mkxp_z":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sammy-atomiswave|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sammy-atomiswave|flycast":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sammy-atomiswave|flycast2021":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"scummvm|":{"bytes":100146431,"files":[2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983],"optional":[],"required_bytes":100146431},"scummvm|scummvm":{"bytes":100146431,"files":[2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983],"optional":[2930,2931,2932,2933,2937,2938,2941,2944,2945,2948,2949,2952,2964,2965,2974],"required_bytes":54440382},"scv|emuscv":{"bytes":4096,"files":[3229],"optional":[],"required_bytes":4096},"sega-32x|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-32x|picodrive":{"bytes":3328,"files":[5,6,7],"optional":[5,6,7],"required_bytes":0},"sega-dreamcast|":{"bytes":7204656,"files":[593,774,775,776,777,778,973],"optional":[],"required_bytes":7204656},"sega-dreamcast|flycast":{"bytes":4456448,"files":[774,775,776,777],"optional":[776],"required_bytes":4325376},"sega-dreamcast|flycast2021":{"bytes":4976432,"files":[774,775,776,777,778],"optional":[776,778],"required_bytes":4325376},"sega-gamegear|gearsystem":{"bytes":1024,"files":[564],"optional":[],"required_bytes":1024},"sega-gamegear|genesis_plus_gx":{"bytes":1024,"files":[564],"optional":[],"required_bytes":1024},"sega-gamegear|picodrive":{"bytes":17391,"files":[564,679],"optional":[679],"required_bytes":1024},"sega-genesis|genesis_plus_gx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-genesis|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-mastersystem|gearsystem":{"bytes":32768,"files":[566,572,573,575],"optional":[],"required_bytes":32768},"sega-mastersystem|genesis_plus_gx":{"bytes":32768,"files":[566,572,573,575],"optional":[],"required_bytes":32768},"sega-mastersystem|picodrive":{"bytes":49135,"files":[566,572,573,575,679],"optional":[679],"required_bytes":32768},"sega-mastersystem|smsplus":{"bytes":32768,"files":[566,572,573,575],"optional":[],"required_bytes":32768},"sega-megacd|genesis_plus_gx":{"bytes":393216,"files":[569,570,571],"optional":[],"required_bytes":393216},"sega-megacd|picodrive":{"bytes":1589231,"files":[262,569,570,571,679,914,915,916,1153,1154,1155,3230,3231],"optional":[262,679,914,915,1153,1154,3230],"required_bytes":786432},"sega-megadrive|genesis_plus_gx":{"bytes":2444622,"files":[492,574,1059,2664,3021,3022],"optional":[],"required_bytes":2444622},"sega-megadrive|picodrive":{"bytes":2460989,"files":[492,574,679,1059,2664,3021,3022],"optional":[679],"required_bytes":2444622},"sega-model3|supermodel3":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-naomi|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-naomi|flycast":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-naomi|flycast2021":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-outrun|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-outrun|cannonball":{"bytes":2621440,"files":[637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676],"optional":[638,640,642,644,646,648,650,652,665],"required_bytes":2064384},"sega-pico|fake08":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-pico|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-saturn|":{"bytes":13744217,"files":[691,1094,1201,1202,2051,2062,2063,2064,2065,2858,2860,2991,2992,2993,2994,3559],"optional":[],"required_bytes":13744217},"sega-saturn|yabasanshiro":{"bytes":12892249,"files":[1094,1201,1202,2062,2063,2064,2065,2860,2991,2992,2993,2994,3559],"optional":[],"required_bytes":12892249},"sega-sc3000|bluemsx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sc3000|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sf7000|bluemsx":{"bytes":8192,"files":[162],"optional":[],"required_bytes":8192},"sega-sg1000|bluemsx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sg1000|gearsystem":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sg1000|genesis_plus_gx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sg1000|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-stv|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-stv|beetle_saturn":{"bytes":5027929,"files":[895,896,897,3108],"optional":[3108],"required_bytes":1572864},"sega-triforce|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-vmu|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-vmu|vemulator":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sharp-x1|":{"bytes":349184,"files":[3608,3609,3610,3611,3612],"optional":[],"required_bytes":349184},"sharp-x1|x1":{"bytes":349184,"files":[3608,3609,3610,3611,3612],"optional":[3608,3609,3610],"required_bytes":36864},"sharp-x68000|":{"bytes":1310720,"files":[1172,1173,1174,1175,1176],"optional":[],"required_bytes":1310720},"sharp-x68000|px68k":{"bytes":1310720,"files":[1172,1173,1174,1175,1176],"optional":[],"required_bytes":1310720},"sinclair-zx-spectrum|":{"bytes":946477,"files":[0,1,2,3,11,795,796,892,893,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1118,1119,2489,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2984,2985,3045,3147,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162],"optional":[],"required_bytes":946477},"sinclair-zx-spectrum|fuse":{"bytes":946477,"files":[0,1,2,3,11,795,796,892,893,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1118,1119,2489,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2984,2985,3045,3147,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162],"optional":[],"required_bytes":946477},"sinclair-zx81|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sinclair-zx81|81":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-neogeo-cd|":{"bytes":8008490,"files":[952,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176],"optional":[],"required_bytes":8008490},"snk-neogeo-cd|neocd":{"bytes":6835502,"files":[951,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2177],"optional":[],"required_bytes":6835502},"snk-neogeo-pocket|beetle_ngp":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngpc|beetle_ngp":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngp|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngp|beetle_ngp":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngp|race":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"solarus|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sony-playstation-2|":{"bytes":437955723,"files":[857,2345,2346,2347,2348,2349,2350,2351,2352,2353,2354,2355,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2403,2404,2405,2406,2407,2408,2409,2410,2411,2412,2413,2414,2415,2416,2417,2418,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2437,2438,2439,2440,2441,2442,2443,2444,2445,2446,2447,2448,2449,2450,2451,2452,2453,2454,2455,2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470],"optional":[],"required_bytes":437955723},"sony-playstation-2|aethersx2":{"bytes":307921991,"files":[2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2393,2395,2396,2397,2398,2399,2400,2402,2403,2404,2405,2407,2409,2410,2411,2412,2413,2415,2416,2418,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2439,2441,2442,2443,2444,2445,2470],"optional":[],"required_bytes":307921991},"sony-playstation-3|rpcs3":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sony-playstation-vita|vita3k":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sony-playstation|":{"bytes":344981504,"files":[847,2294,2510,2511,2512,2513,2514,2515,2516,2517,2518,2519,2520,2521,2522,2523,2524,2525,2526,2527,2528,2529,2530,2531,2532,2534,2535,2536,2537,2538,2539,2540,2541,2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566,2567,2568,2569,2570,2571,2572,2573,2574,2575,2576,2577,2578,2579,2580,2581,2582,2583,2584,2585,2586,2587,2588,2589,2590,2591,2596,2893,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2906,2907,2908,2909,2910,2911,2912,2913,2914,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924,2925,2926],"optional":[],"required_bytes":344981504},"sony-playstation|beetle_psx":{"bytes":13107200,"files":[2294,2510,2596,2893,2894,2896,2899,2903,2907,2908,2909,2912,2913,2914,2915,2916,2917,2918,2919,2922,2923,2924,2925,2926],"optional":[2294,2919],"required_bytes":11534336},"sony-playstation|pcsx_rearmed":{"bytes":11534336,"files":[2510,2596,2893,2894,2896,2899,2903,2907,2908,2909,2912,2913,2914,2915,2916,2917,2918,2922,2923,2924,2925,2926],"optional":[],"required_bytes":11534336},"sony-psp|":{"bytes":1785762,"files":[234,235],"optional":[],"required_bytes":1785762},"sony-psp|ppsspp":{"bytes":1785762,"files":[234,235],"optional":[234],"required_bytes":666530},"spectravideo|bluemsx":{"bytes":98304,"files":[163,164,165],"optional":[],"required_bytes":98304},"sunplus-native32|native32emu":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sunplus-spmp8000|spmp8000emu":{"bytes":130500,"files":[3197],"optional":[3197],"required_bytes":0},"super-mario-war|superbroswar":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"texas-instruments-ti-83|":{"bytes":2883584,"files":[3170,3171,3172],"optional":[],"required_bytes":2883584},"texas-instruments-ti-83|numero":{"bytes":2883584,"files":[3170,3171,3172],"optional":[],"required_bytes":2883584},"thomson-mo5|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-mo6|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to770|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to7|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to8d|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to8|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to9plus|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to9|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"ti99|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"tic80|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"tic80|tic80":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"tomb-raider|openlara":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"uzebox|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"uzebox|uzem":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"vectrex|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"vectrex|vecx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"videoton-tvc|ep128emu_core":{"bytes":49152,"files":[886,887,888,889],"optional":[],"required_bytes":49152},"vircon32|vircon32":{"bytes":1073060,"files":[280],"optional":[],"required_bytes":1073060},"watara-supervision|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"watara-supervision|potator":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"wolfenstein3d|ecwolf":{"bytes":178755,"files":[856],"optional":[],"required_bytes":178755},"wonderswan-color|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"wonderswan|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"xegs|atari800":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"xrick|":{"bytes":1457440,"files":[3613],"optional":[],"required_bytes":1457440},"xrick|xrick":{"bytes":1457440,"files":[3613],"optional":[],"required_bytes":1457440},"zeldaclassic|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"zmachine|mojozork":{"bytes":0,"files":[],"optional":[],"required_bytes":0}}}
+{"files":[["128-0.rom",16384,"bios"],["128-1.rom",16384,"bios"],["128-spanish-0.rom",16384,"bios"],["128-spanish-1.rom",16384,"bios"],["22vp931.zip",1405,"bios"],["32X_G_BIOS.bin",256,"bios"],["32X_M_BIOS.bin",2048,"bios"],["32X_S_BIOS.bin",1024,"bios"],["3c505.zip",10896,"bios"],["3do_arcade_saot.bin",524288,"bios"],["3xtwin.zip",1417,"bios"],["48.rom",16384,"bios"],["4dparprn.zip",409,"bios"],["5200.rom",2048,"bios"],["64DD_IPL.bin",4194304,"bios"],["6570-036.rom",2048,"bios"],["68HC05.rom",8192,"bios"],["7800 BIOS (E).rom",16384,"bios"],["7800 BIOS (U).rom",4096,"bios"],["ATARIBAS.ROM",8192,"bios"],["ATARIOSA.ROM",10240,"bios"],["ATARIOSB.ROM",10240,"bios"],["ATARIXL.ROM",16384,"bios"],["Azahar/Azahar/nand/private/movable.sed",320,"bios"],["Azahar/Azahar/nand/rw/sys/LocalFriendCodeSeed_B",272,"bios"],["Azahar/Azahar/nand/rw/sys/SecureInfo_A",273,"bios"],["Azahar/Azahar/sysdata/keys.txt",7424,"bios"],["Azahar/Azahar/sysdata/otp.bin",256,"bios"],["Azahar/Azahar/sysdata/seeddb.bin",53264,"bios"],["Azahar/Azahar/sysdata/shared_font.bin",3145728,"bios"],["BB01R4_OS.ROM",16384,"bios"],["BBKEmu/A4980/8.BIN",2097152,"bios"],["BBKEmu/A4980/E.BIN",2097152,"bios"],["BIOS.col",8192,"bios"],["BS-X (En) (DRM-Free).bin",1048576,"bios"],["BS-X (En).bin",1048576,"bios"],["BS-X.bin",1048576,"bios"],["CARTS.SHA",33152,"bios"],["CM32LN_CONTROL.ROM",65536,"bios"],["CM32L_CONTROL.ROM",65536,"bios"],["CM32L_PCM.ROM",1048576,"bios"],["CYRILLIC.FNT",2048,"bios"],["Cemu/cafeLibs/erreula.rpl",790080,"bios"],["Cemu/cafeLibs/snd_user.rpl",84032,"bios"],["Cemu/cafeLibs/snduser2.rpl",111360,"bios"],["Cemu/cafeLibs/swkbd.rpl",1116288,"bios"],["Cemu/keys.txt",449507,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeCn.ttf",13110604,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeKr.ttf",2260660,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeStd.ttf",2442464,"bios"],["Cemu/mlc01/sys/title/0005001b/10042400/content/CafeTw.ttf",8229724,"bios"],["Cemu/mlc01/sys/title/0005001b/1004f000/content/00/swkbd/swkbd.pack",1907900,"bios"],["Cemu/mlc01/sys/title/0005001b/10051000/content/00/erreula/erreula.pack",1252759,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_ACCOUNT_1_CERT.der",1226,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_ACCOUNT_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_COMMON_1_CERT.der",1224,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_COMMON_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_OLIVE_1_CERT.der",1224,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_OLIVE_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_VINO_1_CERT.der",1223,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_VINO_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_WOOD_1_CERT.der",1223,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/ccerts/WIIU_WOOD_1_RSA_KEY.aes",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ADDTRUST_EXT_CA_ROOT.der",1082,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/BALTIMORE_CYBERTRUST_ROOT_CA.der",891,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CA.der",897,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CA_G2.der",1173,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CA_G3.der",1060,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CLASS2_CA.der",924,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CLASS2_CA_G2.der",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CACERT_NINTENDO_CLASS2_CA_G3.der",1200,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/COMODO_CA.der",980,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/CYBERTRUST_GLOBAL_ROOT_CA.der",933,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_ASSURED_ID_ROOT_CA.der",955,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_ASSURED_ID_ROOT_CA_G2.der",922,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_GLOBAL_ROOT_CA.der",947,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_GLOBAL_ROOT_CA_G2.der",914,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/DIGICERT_HIGH_ASSURANCE_EV_ROOT_CA.der",969,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_CA_2048.der",1070,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_ROOT_CA.der",1173,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_ROOT_CA_G2.der",1090,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/ENTRUST_SECURE_SERVER_CA.der",1244,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/EQUIFAX_SECURE_CA.der",804,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_GLOBAL_CA.der",856,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_GLOBAL_CA2.der",874,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_PRIMARY_CA.der",896,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GEOTRUST_PRIMARY_CA_G3.der",1026,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GLOBALSIGN_ROOT_CA.der",889,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GLOBALSIGN_ROOT_CA_R2.der",958,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GLOBALSIGN_ROOT_CA_R3.der",867,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/GTE_CYBERTRUST_GLOBAL_ROOT.der",606,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/THAWTE_PREMIUM_SERVER_CA.der",811,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/THAWTE_PRIMARY_ROOT_CA.der",1060,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/THAWTE_PRIMARY_ROOT_CA_G3.der",1070,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/UTN_DATACORP_SGC_CA.der",1122,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/UTN_USERFIRST_HARDWARE_CA.der",1144,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA.der",576,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA_G2.der",774,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA_G3.der",1054,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_CLASS3_PUBLIC_PRIMARY_CA_G5.der",1239,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERISIGN_UNIVERSAL_ROOT_CA.der",1213,"bios"],["Cemu/mlc01/sys/title/0005001b/10054000/content/scerts/VERIZON_GLOBAL_ROOT_CA.der",889,"bios"],["Cemu/otp.bin",1024,"bios"],["Cemu/resources/sharedFonts/CafeCn.ttf",9664448,"bios"],["Cemu/resources/sharedFonts/CafeKr.ttf",5626464,"bios"],["Cemu/resources/sharedFonts/CafeStd.ttf",5363768,"bios"],["Cemu/resources/sharedFonts/CafeTw.ttf",6593548,"bios"],["Cemu/seeprom.bin",512,"bios"],["Cemu/shareddata.bin",33554432,"bios"],["Citra/Citra/sysdata/aes_keys.txt",7357,"bios"],["Citra/Citra/sysdata/boot9.bin",65536,"bios"],["Citra/Citra/sysdata/seeddb.bin",53264,"bios"],["Citra/Citra/sysdata/shared_font.bin",3145728,"bios"],["Complex_4627.bin",1048576,"bios"],["D8039HLC.rom",2048,"bios"],["DISK.ROM",16384,"bios"],["DOSBOX.SF2",32319396,"bios"],["Databases/colecodb.xml",158187,"bios"],["Databases/msxcaswavdb.xml",819679,"bios"],["Databases/msxromdb.xml",930986,"bios"],["Databases/msxsysromdb.xml",157542,"bios"],["Databases/segadb.xml",82318,"bios"],["Databases/svidb.xml",261070,"bios"],["Dinothawr.zip",6724506,"bios"],["FB Alpha 2012 CPS-3/hiscore.dat",322458,"bios"],["FB Alpha 2012/hiscore.dat",322458,"bios"],["FMPAC.ROM",65536,"bios"],["FMPAC16.ROM",16384,"bios"],["ITALIC.FNT",2048,"bios"],["Ishiiruka/User/Wii/clientca.pem",1005,"bios"],["Ishiiruka/User/Wii/clientcakey.pem",609,"bios"],["Ishiiruka/User/Wii/rootca.pem",897,"bios"],["Ishiiruka/User/Wii/sd.raw",134217728,"bios"],["Ishiiruka/User/Wii/shared2/sys/SYSCONF",16384,"bios"],["Ishiiruka/User/Wii/title/00000001/00000002/data/setting.txt",256,"bios"],["JiffyDOS_1541-II.bin",16384,"bios"],["JiffyDOS_1571_repl310654.bin",32768,"bios"],["JiffyDOS_1581.bin",32768,"bios"],["JiffyDOS_C128.bin",16384,"bios"],["JiffyDOS_C64.bin",8192,"bios"],["JiffyDOS_SX-64.bin",8192,"bios"],["KANJI.ROM",131072,"bios"],["MSX.ROM",32768,"bios"],["MSX2.ROM",32768,"bios"],["MSX2EXT.ROM",16384,"bios"],["MSX2P.ROM",32768,"bios"],["MSX2PEXT.ROM",16384,"bios"],["MSXDOS2.ROM",65536,"bios"],["MT32_CONTROL.ROM",65536,"bios"],["MT32_PCM.ROM",524288,"bios"],["Machines/COL - ColecoVision/coleco.rom",8192,"bios"],["Machines/Forte II Games - Pesadelo/pesadelo.rom",65536,"bios"],["Machines/MSX - C-BIOS/cbios_logo_msx1.rom",16384,"bios"],["Machines/MSX - C-BIOS/cbios_main_msx1.rom",32768,"bios"],["Machines/MSX2 - C-BIOS/cbios_logo_msx2.rom",16384,"bios"],["Machines/MSX2 - C-BIOS/cbios_main_msx2.rom",32768,"bios"],["Machines/MSX2 - C-BIOS/cbios_sub.rom",16384,"bios"],["Machines/MSX2+ - C-BIOS/cbios_logo_msx2+.rom",16384,"bios"],["Machines/MSX2+ - C-BIOS/cbios_main_msx2+.rom",32768,"bios"],["Machines/MSX2+ - C-BIOS/cbios_music.rom",16384,"bios"],["Machines/MSX2+ - European/Msx2pe.rom",32768,"bios"],["Machines/MSX2+ - European/Msx2pexte.rom",49152,"bios"],["Machines/SEGA - SF-7000/sf7000.rom",8192,"bios"],["Machines/SVI - Spectravideo SVI-318/svi318.rom",32768,"bios"],["Machines/SVI - Spectravideo SVI-328 MK2/svi328a.rom",32768,"bios"],["Machines/SVI - Spectravideo SVI-328/svi328.rom",32768,"bios"],["Machines/Shared Roms/ARAB1.ROM",32768,"bios"],["Machines/Shared Roms/ARABIC.rom",32768,"bios"],["Machines/Shared Roms/BEERIDE.ROM",16384,"bios"],["Machines/Shared Roms/FMPAC.rom",65536,"bios"],["Machines/Shared Roms/GCVMX80.ROM",8192,"bios"],["Machines/Shared Roms/HANGUL.rom",131072,"bios"],["Machines/Shared Roms/KANJI.rom",262144,"bios"],["Machines/Shared Roms/MICROSOLDISK.ROM",16384,"bios"],["Machines/Shared Roms/MOONSOUND.rom",2097152,"bios"],["Machines/Shared Roms/MSX.rom",32768,"bios"],["Machines/Shared Roms/MSX2.rom",32768,"bios"],["Machines/Shared Roms/MSX2AR.ROM",32768,"bios"],["Machines/Shared Roms/MSX2AREXT.ROM",16384,"bios"],["Machines/Shared Roms/MSX2BR.rom",32768,"bios"],["Machines/Shared Roms/MSX2BREXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2EXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2FR.rom",32768,"bios"],["Machines/Shared Roms/MSX2FREXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2G.rom",32768,"bios"],["Machines/Shared Roms/MSX2GEXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2HAN.rom",32768,"bios"],["Machines/Shared Roms/MSX2J.rom",32768,"bios"],["Machines/Shared Roms/MSX2JEXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2KR.rom",32768,"bios"],["Machines/Shared Roms/MSX2KREXT.rom",32768,"bios"],["Machines/Shared Roms/MSX2P.rom",32768,"bios"],["Machines/Shared Roms/MSX2PEXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2PMUS.rom",16384,"bios"],["Machines/Shared Roms/MSX2R.rom",32768,"bios"],["Machines/Shared Roms/MSX2R2.ROM",32768,"bios"],["Machines/Shared Roms/MSX2REXT.rom",16384,"bios"],["Machines/Shared Roms/MSX2SE.rom",32768,"bios"],["Machines/Shared Roms/MSX2SP.rom",32768,"bios"],["Machines/Shared Roms/MSX2SPEXT.rom",16384,"bios"],["Machines/Shared Roms/MSXAR.ROM",32768,"bios"],["Machines/Shared Roms/MSXBR.rom",32768,"bios"],["Machines/Shared Roms/MSXDOS23.ROM",65536,"bios"],["Machines/Shared Roms/MSXFR.rom",32768,"bios"],["Machines/Shared Roms/MSXG.rom",32768,"bios"],["Machines/Shared Roms/MSXHAN.rom",8192,"bios"],["Machines/Shared Roms/MSXJ.rom",32768,"bios"],["Machines/Shared Roms/MSXKANJI.rom",32768,"bios"],["Machines/Shared Roms/MSXKR.rom",32768,"bios"],["Machines/Shared Roms/MSXR.rom",32768,"bios"],["Machines/Shared Roms/MSXR2.ROM",32768,"bios"],["Machines/Shared Roms/MSXSE.ROM",32768,"bios"],["Machines/Shared Roms/MSXSP.rom",32768,"bios"],["Machines/Shared Roms/MSXTR.ROM",32768,"bios"],["Machines/Shared Roms/MSXTREXT.ROM",16384,"bios"],["Machines/Shared Roms/MSXTRMUS.ROM",16384,"bios"],["Machines/Shared Roms/MSXTROPT.ROM",16384,"bios"],["Machines/Shared Roms/NATIONALDISK.rom",16384,"bios"],["Machines/Shared Roms/NOVAXIS.rom",16384,"bios"],["Machines/Shared Roms/PAINT.rom",65536,"bios"],["Machines/Shared Roms/PANASONICDISK.rom",16384,"bios"],["Machines/Shared Roms/PHILIPSDISK.rom",16384,"bios"],["Machines/Shared Roms/RS232.ROM",8192,"bios"],["Machines/Shared Roms/SUNRISEIDE.rom",65536,"bios"],["Machines/Shared Roms/SWP.rom",32768,"bios"],["Machines/Shared Roms/XBASIC2.rom",16384,"bios"],["Machines/Shared Roms/nowindDos1.rom",524288,"bios"],["Machines/Shared Roms/nowindDos2.rom",524288,"bios"],["MesenNesDB.txt",548608,"game_data"],["MesenPalette.pal",192,"bios"],["Mupen64plus/IPL.n64",4194304,"bios"],["Mupen64plus/font.ttf",65932,"bios"],["NstDatabase.xml",1009534,"bios"],["PAINTER.ROM",65536,"bios"],["PPSSPP/ppge_atlas.meta",1119232,"bios"],["PPSSPP/ppge_atlas.zim",666530,"bios"],["Panda3DS/Emulator Files/sysdata/aes_keys.txt",7357,"bios"],["Panda3DS/Emulator Files/sysdata/seeddb.bin",53264,"bios"],["ROM_OS_BB01R59",16384,"bios"],["ROM_OS_BB01R59A",16384,"bios"],["ROM_OS_BB02R3V4",16384,"bios"],["ROM_OS_CC01R4",16384,"bios"],["RS232.ROM",16640,"bios"],["SC-55-v1.00/sc55_rom1.bin",32768,"bios"],["SC-55-v1.00/sc55_rom2.bin",262144,"bios"],["SC-55-v1.00/sc55_waverom1.bin",1048576,"bios"],["SC-55-v1.00/sc55_waverom2.bin",1048576,"bios"],["SC-55-v1.00/sc55_waverom3.bin",1048576,"bios"],["SC-55/ROM1.BIN",32768,"bios"],["SC-55/ROM2.BIN",524288,"bios"],["SC-55/ROM_SM.BIN",4096,"bios"],["SC-55/WAVEROM1.BIN",2097152,"bios"],["SC-55/WAVEROM2.BIN",1048576,"bios"],["SC-55/WAVEROM3.BIN",1048576,"bios"],["SGB1.sfc",262144,"bios"],["SGB2.sfc",524288,"bios"],["STBIOS.bin",262144,"bios"],["Satellaview/BSX0120-0.bin",34,"game_data"],["Satellaview/BSX0121-0.bin",34,"game_data"],["Satellaview/BSX0122-0.bin",1031,"game_data"],["Satellaview/BSX0123-0.bin",16,"game_data"],["Satellaview/BSX0124-0.bin",97,"game_data"],["SegaCDBIOS9303.bin",131072,"bios"],["SkyEmu/cgb_boot.bin",2304,"bios"],["SkyEmu/dmg_rom.bin",256,"bios"],["SkyEmu/firmware.bin",262144,"bios"],["SkyEmu/gba_bios.bin",16384,"bios"],["SkyEmu/nds7.bin",16384,"bios"],["SkyEmu/nds9.bin",4096,"bios"],["Stella/stella/KVB1.WAV",4219542,"game_data"],["Stella/stella/KVB2.WAV",9593878,"game_data"],["Stella/stella/KVB3.WAV",7676992,"game_data"],["Stella/stella/KVS1.WAV",3436329,"game_data"],["Stella/stella/KVS2.WAV",2086275,"game_data"],["Stella/stella/KVS3.WAV",3720920,"game_data"],["Stella/stella/KVSHARED.WAV",3059116,"game_data"],["StudyBox.bin",262144,"bios"],["Super GameBoy.sfc/lr35902.boot.rom",256,"bios"],["Super GameBoy.sfc/program.rom",262144,"bios"],["Super GameBoy.sfc/sgb1.boot.rom",256,"bios"],["Vircon32Bios.v32",1073060,"bios"],["WHDLoad.prefs",1935,"bios"],["XEGAME.ROM",8192,"bios"],["[BIOS] Atari Jaguar CD (World).j64",262144,"bios"],["[BIOS] Atari Jaguar Developer CD (World).j64",262144,"bios"],["a1000kbd_de.zip",1331,"bios"],["a1000kbd_dk.zip",1331,"bios"],["a1000kbd_fr.zip",1331,"bios"],["a1000kbd_gb.zip",1331,"bios"],["a1000kbd_it.zip",1331,"bios"],["a1000kbd_se.zip",1331,"bios"],["a1000kbd_us.zip",1331,"bios"],["a1200kbd_rb.zip",1476,"bios"],["a1cass.zip",509,"bios"],["a2000kbd_ch.zip",1335,"bios"],["a2000kbd_de.zip",1335,"bios"],["a2000kbd_dk.zip",1335,"bios"],["a2000kbd_es.zip",1335,"bios"],["a2000kbd_fr.zip",1335,"bios"],["a2000kbd_g80_de.zip",1151,"bios"],["a2000kbd_g80_dk.zip",1151,"bios"],["a2000kbd_g80_gb.zip",1151,"bios"],["a2000kbd_g80_se.zip",1151,"bios"],["a2000kbd_g80_us.zip",1151,"bios"],["a2000kbd_gb.zip",1335,"bios"],["a2000kbd_it.zip",1335,"bios"],["a2000kbd_no.zip",1335,"bios"],["a2000kbd_se.zip",1335,"bios"],["a2000kbd_us.zip",1335,"bios"],["a2aevm80.zip",2540,"bios"],["a2ap16.zip",2649,"bios"],["a2ap16a.zip",2549,"bios"],["a2aplcrd.zip",1188,"bios"],["a2autokbd.zip",1363,"bios"],["a2booti.zip",3578,"bios"],["a2bufgrapplerplus.zip",3613,"bios"],["a2bufgrapplerplusa.zip",483416,"bios"],["a2cffa02.zip",2371,"bios"],["a2cffa2.zip",2389,"bios"],["a2corvus.zip",1590,"bios"],["a2diskiing.zip",371,"bios"],["a2excel9.zip",7157,"bios"],["a2focdrv.zip",1651,"bios"],["a2grappler.zip",1536,"bios"],["a2grapplerplus.zip",5587,"bios"],["a2hsscsi.zip",11374,"bios"],["a2ieee488.zip",1619,"bios"],["a2iwm.zip",371,"bios"],["a2kb200.zip",1144,"bios"],["a2memexp.zip",2174,"bios"],["a2mouse.zip",2836,"bios"],["a2parprn.zip",354,"bios"],["a2pdromdr.zip",666891,"bios"],["a2pic.zip",519,"bios"],["a2q68.zip",5474,"bios"],["a2q68plus.zip",5474,"bios"],["a2ramfac.zip",16155,"bios"],["a2romfp.zip",11102,"bios"],["a2romint.zip",12783,"bios"],["a2scsi.zip",8945,"bios"],["a2sd.zip",1282,"bios"],["a2sic.zip",1867,"bios"],["a2sider1.zip",1738,"bios"],["a2sider2.zip",707,"bios"],["a2ssc.zip",1845,"bios"],["a2superdrive.zip",10883,"bios"],["a2suprterm.zip",1864,"bios"],["a2surance.zip",3321,"bios"],["a2swyft.zip",11515,"bios"],["a2thunpl.zip",998,"bios"],["a2tk10.zip",1541,"bios"],["a2tmstho.zip",1217,"bios"],["a2twarp.zip",2309,"bios"],["a2ultrme.zip",3652,"bios"],["a2ulttrm.zip",3746,"bios"],["a2uniprint.zip",2145,"bios"],["a2vidtrm.zip",10620,"bios"],["a2vistaa800.zip",790,"bios"],["a2vtc1.zip",2062,"bios"],["a2vuliie.zip",3719,"bios"],["a2zipdrv.zip",3006,"bios"],["a3fdc.zip",262,"bios"],["a500kbd_ch.zip",1335,"bios"],["a500kbd_de.zip",1335,"bios"],["a500kbd_dk.zip",1335,"bios"],["a500kbd_es.zip",1335,"bios"],["a500kbd_fr.zip",1335,"bios"],["a500kbd_gb.zip",1335,"bios"],["a500kbd_it.zip",1335,"bios"],["a500kbd_no.zip",1335,"bios"],["a500kbd_se.zip",1335,"bios"],["a500kbd_us.zip",1335,"bios"],["a600kbd_ch.zip",1335,"bios"],["a600kbd_de.zip",1335,"bios"],["a600kbd_dk.zip",1335,"bios"],["a600kbd_es.zip",1335,"bios"],["a600kbd_fr.zip",1335,"bios"],["a600kbd_gb.zip",1335,"bios"],["a600kbd_it.zip",1335,"bios"],["a600kbd_no.zip",1335,"bios"],["a600kbd_se.zip",1335,"bios"],["a600kbd_us.zip",1335,"bios"],["abc1600mac.zip",7345,"bios"],["abc1600mover.zip",1347,"bios"],["abc55.zip",1546,"bios"],["abc77.zip",1546,"bios"],["abc800kb.zip",1087,"bios"],["abc80kb.zip",389,"bios"],["abc830.zip",24177,"bios"],["abc832.zip",24177,"bios"],["abc834.zip",24177,"bios"],["abc838.zip",24177,"bios"],["abc850flop.zip",24177,"bios"],["abc99.zip",5285,"bios"],["abc_db4106.zip",1696,"bios"],["abc_db4107.zip",23643,"bios"],["abc_db4112.zip",9945,"bios"],["abc_fd2.zip",6129,"bios"],["abc_slutprov.zip",509,"bios"],["abc_ssa.zip",101707,"bios"],["abc_uni800.zip",163,"bios"],["abc_unidisk.zip",9386,"bios"],["abcsio.zip",3201,"bios"],["acb2072.zip",11517,"bios"],["ace80.zip",1177,"bios"],["ace_sp_reelctrl.zip",1966,"bios"],["ace_sp_reelctrl_pcp.zip",1148,"bios"],["acorn_vdu80.zip",704,"bios"],["acs8600_ics.zip",2931,"bios"],["aes.zip",850311,"bios"],["agat7_flop.zip",588,"bios"],["agat840k_hle.zip",322,"bios"],["agat9_flop.zip",589,"bios"],["agat_fdc.zip",609,"bios"],["agb_boot.bin",2304,"bios"],["aha1542a.zip",15453,"bios"],["aha1542b.zip",84294,"bios"],["aha1542c.zip",52938,"bios"],["aha1542cf.zip",92027,"bios"],["aha1542cp.zip",36978,"bios"],["aha1740.zip",28701,"bios"],["aha1742a.zip",57787,"bios"],["aha2940.zip",38616,"bios"],["aha2940au.zip",31135,"bios"],["alto2_cpu.zip",15499,"bios"],["altos2_kbd.zip",695,"bios"],["am100kbd.zip",2016,"bios"],["amiga_a2091.zip",54815,"bios"],["amiga_a570.zip",171907,"bios"],["amiga_a590.zip",69833,"bios"],["amiga_ar1.zip",61074,"bios"],["amiga_ar2.zip",193315,"bios"],["amiga_ar3.zip",263916,"bios"],["amiga_buddha.zip",1179140,"bios"],["amiga_oktagon2008.zip",13786,"bios"],["amiga_ripple.zip",15180,"bios"],["ampex230_kbd.zip",976,"bios"],["ap2000.zip",21618,"bios"],["aplcd150.zip",9137,"bios"],["aprissi.zip",5014,"bios"],["arc_a448.zip",602,"bios"],["arc_a448b.zip",836,"bios"],["arc_acejoy.zip",1311,"bios"],["arc_armadeus.zip",1014,"bios"],["arc_bbcio_aga30.zip",1329,"bios"],["arc_bbcio_aka10.zip",3792,"bios"],["arc_bbcio_we.zip",1273,"bios"],["arc_eaglem2.zip",47500,"bios"],["arc_ether1_aka25.zip",163,"bios"],["arc_ether2_aeh50.zip",378,"bios"],["arc_ether3_aeh54.zip",50047,"bios"],["arc_ethera.zip",149278,"bios"],["arc_etherd.zip",105641,"bios"],["arc_etherr.zip",49753,"bios"],["arc_faxpack.zip",5826,"bios"],["arc_greyhawk.zip",5265,"bios"],["arc_hdisc_akd52.zip",421,"bios"],["arc_hdisc_cw.zip",565,"bios"],["arc_hdisc_morley.zip",1333,"bios"],["arc_hdisc_we.zip",462,"bios"],["arc_ide_be.zip",24321,"bios"],["arc_ide_rdev.zip",7001,"bios"],["arc_iomidi_aka15.zip",5309,"bios"],["arc_lark.zip",33629,"bios"],["arc_lbp4.zip",14292,"bios"],["arc_midi2.zip",12743,"bios"],["arc_midi_aka16.zip",21857,"bios"],["arc_midimax.zip",36846,"bios"],["arc_midimax2.zip",21595,"bios"],["arc_nexus_a500.zip",15560,"bios"],["arc_rom_aka05.zip",4909,"bios"],["arc_rom_r225.zip",107080,"bios"],["arc_rs423.zip",285,"bios"],["arc_scan256.zip",9805,"bios"],["arc_scanjunior.zip",6379,"bios"],["arc_scanjunior3.zip",6965,"bios"],["arc_scanlight.zip",7019,"bios"],["arc_scanvideo.zip",25778,"bios"],["arc_scsi_aka30.zip",11747,"bios"],["arc_scsi_aka31.zip",11851,"bios"],["arc_scsi_aka32.zip",96376,"bios"],["arc_scsi_cumana.zip",43880,"bios"],["arc_scsi_ling.zip",51477,"bios"],["arc_scsi_morley.zip",196852,"bios"],["arc_scsi_oak.zip",85368,"bios"],["arc_scsi_vti.zip",34230,"bios"],["arc_serial.zip",3063,"bios"],["arc_spectra.zip",2421,"bios"],["arc_ua_morley.zip",1410,"bios"],["arc_uma_morley.zip",9527,"bios"],["arc_upa_hccs.zip",1172,"bios"],["arc_upmidi_aka12.zip",9038,"bios"],["areplay.bin",32768,"bios"],["aros-ext.bin",524288,"bios"],["aros-rom.bin",524288,"bios"],["asc88.zip",5709,"bios"],["ascsasi.zip",1357,"bios"],["at_keybc.zip",3655,"bios"],["atari-1200xl-os-rev-10.rom",16384,"bios"],["atari-1200xl-os-rev-11.rom",16384,"bios"],["atari-5200-os-2port.rom",2048,"bios"],["atari-800-os-a-ntsc.rom",10240,"bios"],["atari-basic-rev-a.rom",8192,"bios"],["atari-basic-rev-b.rom",8192,"bios"],["atari-xl-os-ver-1.rom",16384,"bios"],["atari-xl-os-ver-3.rom",16384,"bios"],["atari1050.zip",13755,"bios"],["atari810.zip",3303,"bios"],["atom_discpack.zip",3459,"bios"],["atom_gdos.zip",3145,"bios"],["atom_gdos2015.zip",6985,"bios"],["atom_speech.zip",2019,"bios"],["atom_vdu80.zip",1074,"bios"],["awe32.raw",1048576,"bios"],["ax208.zip",5590,"bios"],["ax208p.zip",5598,"bios"],["banshee_x86.zip",35460,"bios"],["basf7100_kbd.zip",456,"bios"],["bass.dll",144696,"bios"],["bassmidi.dll",73600,"bios"],["bbc_24bbc.zip",2844684,"bios"],["bbc_2ndserial.zip",2844684,"bios"],["bbc_autoprom.zip",2737,"bios"],["bbc_beebspch.zip",6564,"bios"],["bbc_cc500.zip",2844684,"bios"],["bbc_chameleon.zip",654,"bios"],["bbc_cms6502.zip",17969,"bios"],["bbc_cumana68k.zip",3790,"bios"],["bbc_datacentre.zip",40386,"bios"],["bbc_detalker.zip",2019,"bios"],["bbc_ieee488.zip",2844684,"bios"],["bbc_multiform.zip",11635,"bios"],["bbc_opus3.zip",36996,"bios"],["bbc_opusa.zip",23792,"bios"],["bbc_pdram.zip",2195,"bios"],["bbc_pms64k.zip",8361,"bios"],["bbc_ramdisc.zip",2844684,"bios"],["bbc_tube_16032.zip",17960,"bios"],["bbc_tube_32016.zip",31067,"bios"],["bbc_tube_32016l.zip",3585,"bios"],["bbc_tube_6502.zip",4337,"bios"],["bbc_tube_6502e.zip",1515,"bios"],["bbc_tube_6502p.zip",6023,"bios"],["bbc_tube_65c102.zip",4375,"bios"],["bbc_tube_80286.zip",6649,"bios"],["bbc_tube_a500.zip",12117,"bios"],["bbc_tube_a500d.zip",12312,"bios"],["bbc_tube_arm.zip",38022,"bios"],["bbc_tube_arm7.zip",109910,"bios"],["bbc_tube_casper.zip",18005,"bios"],["bbc_tube_cms6809.zip",9090,"bios"],["bbc_tube_matchbox.zip",48928,"bios"],["bbc_tube_pcplus.zip",6662,"bios"],["bbc_tube_rc6502.zip",31532,"bios"],["bbc_tube_rc65816.zip",31259,"bios"],["bbc_tube_x25.zip",17863,"bios"],["bbc_tube_z80.zip",3197,"bios"],["bbc_tube_z80w.zip",3145,"bios"],["bbc_tube_zep100.zip",40985,"bios"],["bbc_tube_zep100l.zip",18020,"bios"],["bbc_tube_zep100w.zip",29266,"bios"],["bbc_voicebox.zip",2019,"bios"],["betadisk.zip",563424,"bios"],["bingoct.zip",173688,"bios"],["bios.gg",1024,"bios"],["bios.min",4096,"bios"],["bios.sms",8192,"bios"],["bios7.bin",16384,"bios"],["bios9.bin",4096,"bios"],["bios_CD_E.bin",131072,"bios"],["bios_CD_J.bin",131072,"bios"],["bios_CD_U.bin",131072,"bios"],["bios_E.sms",8192,"bios"],["bios_J.sms",8192,"bios"],["bios_MD.bin",2048,"bios"],["bios_U.sms",8192,"bios"],["bioscv.rom",2048,"bios"],["bk/B11M_BOS.ROM",8192,"bios"],["bk/B11M_EXT.ROM",8192,"bios"],["bk/BAS11M_0.ROM",16384,"bios"],["bk/BAS11M_1.ROM",8192,"bios"],["bk/BASIC10.ROM",24576,"bios"],["bk/DISK_327.ROM",4096,"bios"],["bk/FOCAL10.ROM",24576,"bios"],["bk/MONIT10.ROM",8192,"bios"],["bk/TERAK.ROM",128,"bios"],["bk_altpro.zip",9022,"bios"],["bk_kmd.zip",6973,"bios"],["bk_samara.zip",3049,"bios"],["bluechip.zip",23865,"bios"],["bml3kanji.zip",69657,"bios"],["bml3mp1802.zip",1841,"bios"],["bml3mp1805.zip",1874,"bios"],["boot.bin",2097152,"bios"],["bootloader-dbvz.rom",512,"bios"],["bsmt2000.zip",2646,"bios"],["bt542b.zip",18614,"bios"],["bt542bh.zip",22150,"bios"],["bt545s.zip",21352,"bios"],["bw2_ramcard.zip",8925,"bios"],["bwtwo.zip",2396,"bios"],["c1526.zip",18797,"bios"],["c1540.zip",12139,"bios"],["c1541.zip",85282,"bios"],["c1541c.zip",23897,"bios"],["c1541dd.zip",15970,"bios"],["c1541ii.zip",35933,"bios"],["c1541pd.zip",14855,"bios"],["c1541pdc.zip",23097,"bios"],["c1551.zip",11640,"bios"],["c1563.zip",12632,"bios"],["c1570.zip",17870,"bios"],["c1571.zip",55420,"bios"],["c1571cr.zip",38062,"bios"],["c1581.zip",58254,"bios"],["c2031.zip",12163,"bios"],["c2040.zip",7844,"bios"],["c2040_fdc.zip",426,"bios"],["c3040.zip",7844,"bios"],["c4023.zip",4285,"bios"],["c4040.zip",20926,"bios"],["c52.bin",1024,"bios"],["c64_ar4x.zip",190,"bios"],["c64_buscard.zip",2010118,"bios"],["c64_buscard2.zip",2010118,"bios"],["c64_cspeech.zip",2011,"bios"],["c64_mscr.zip",2311,"bios"],["c64_nl10.zip",16716,"bios"],["c64_supercpu.zip",2010118,"bios"],["c64_xl80.zip",830,"bios"],["c64_z80videopak.zip",858,"bios"],["c8050.zip",39422,"bios"],["c8050fdc.zip",426,"bios"],["c8250.zip",39422,"bios"],["c8250lp.zip",29852,"bios"],["c8280.zip",23702,"bios"],["cadabc.zip",9823,"bios"],["cannonball/epr-10187.88",32768,"game_data"],["cannonball/epr-10327.76",65536,"game_data"],["cannonball/epr-10327a.76",65536,"game_data"],["cannonball/epr-10328.75",65536,"game_data"],["cannonball/epr-10328a.75",65536,"game_data"],["cannonball/epr-10329.58",65536,"game_data"],["cannonball/epr-10329a.58",65536,"game_data"],["cannonball/epr-10330.57",65536,"game_data"],["cannonball/epr-10330a.57",65536,"game_data"],["cannonball/epr-10380.133",65536,"game_data"],["cannonball/epr-10380b.133",65536,"game_data"],["cannonball/epr-10381.132",65536,"game_data"],["cannonball/epr-10381b.132",65536,"game_data"],["cannonball/epr-10382.118",65536,"game_data"],["cannonball/epr-10382b.118",65536,"game_data"],["cannonball/epr-10383.117",65536,"game_data"],["cannonball/epr-10383b.117",65536,"game_data"],["cannonball/mpr-10371.9",131072,"game_data"],["cannonball/mpr-10372.13",131072,"game_data"],["cannonball/mpr-10373.10",131072,"game_data"],["cannonball/mpr-10374.14",131072,"game_data"],["cannonball/mpr-10375.11",131072,"game_data"],["cannonball/mpr-10376.15",131072,"game_data"],["cannonball/mpr-10377.12",131072,"game_data"],["cannonball/mpr-10378.16",131072,"game_data"],["cannonball/opr-10185.11",32768,"game_data"],["cannonball/opr-10186.47",32768,"game_data"],["cannonball/opr-10188.71",32768,"game_data"],["cannonball/opr-10188.71f",32768,"game_data"],["cannonball/opr-10189.70",32768,"game_data"],["cannonball/opr-10190.69",32768,"game_data"],["cannonball/opr-10191.68",32768,"game_data"],["cannonball/opr-10192.67",32768,"game_data"],["cannonball/opr-10193.66",32768,"game_data"],["cannonball/opr-10230.104",32768,"game_data"],["cannonball/opr-10231.103",32768,"game_data"],["cannonball/opr-10232.102",32768,"game_data"],["cannonball/opr-10266.101",32768,"game_data"],["cannonball/opr-10267.100",32768,"game_data"],["cannonball/opr-10268.99",32768,"game_data"],["capsimg.dll",191488,"bios"],["capsimg.so",95460,"bios"],["carthw.cfg",16367,"bios"],["cbm2_hrga.zip",3343,"bios"],["cbm2_hrgb.zip",3343,"bios"],["cbm8000_hsg_a.zip",3615,"bios"],["cbm8000_hsg_b.zip",3615,"bios"],["cbm_interpod.zip",3450,"bios"],["cbm_serbox.zip",2245,"bios"],["cchip.zip",2700,"bios"],["ccs7710.zip",1473,"bios"],["cd90_015.zip",1871,"bios"],["cd90_351.zip",4831,"bios"],["cd90_640.zip",1744,"bios"],["cdb/cdb_rom.bin",65536,"bios"],["cdd2000.zip",195999,"bios"],["cdimono1.zip",745703,"bios"],["cdr4210.zip",82902,"bios"],["cdrn820s.zip",66313,"bios"],["cdu415.zip",31828,"bios"],["cdu561_25.zip",141631,"bios"],["cdu75s.zip",31456,"bios"],["centennial_sl01m_15_11194.zip",301,"bios"],["centennial_sl02m_15_11194.zip",301,"bios"],["centennial_sl04m_15_11194.zip",313,"bios"],["cffa1.zip",4726,"bios"],["cfp1080s.zip",67669,"bios"],["cga.zip",3710,"bios"],["cga_iskr1030m.zip",1588,"bios"],["cga_iskr1031.zip",1665,"bios"],["cga_m24.zip",2283,"bios"],["cga_mc1502.zip",1235,"bios"],["cga_poisk2.zip",3177,"bios"],["cga_superimpose.zip",3710,"bios"],["cgb_bios.bin",2304,"bios"],["cgb_boot.bin",2304,"bios"],["cgenie_fdc.zip",20834,"bios"],["cgthree.zip",1224,"bios"],["chargen-901460-02.bin",4096,"bios"],["chessmachine.zip",542,"bios"],["cit101_kbd.zip",930,"bios"],["cit101e_kbd.zip",921,"bios"],["cit220p_kbd.zip",773,"bios"],["clgd5401.zip",36135,"bios"],["clgd542x.zip",329437,"bios"],["clgd5434_pci.zip",78023,"bios"],["clgd5446_pci.zip",40471,"bios"],["clgd5465_laguna.zip",21300,"bios"],["cmdhd.zip",8968,"bios"],["cmdrc2.zip",12317,"bios"],["cmi_ankbd.zip",836,"bios"],["cmi_mkbd.zip",1391,"bios"],["cms_4080term.zip",576010,"bios"],["cmsscsi.zip",5181,"bios"],["coleco.rom",8192,"bios"],["coleco.zip",28014,"bios"],["colecovision.rom",8192,"bios"],["compiskb.zip",480,"bios"],["comx_clm.zip",4009,"bios"],["comx_eb.zip",9599,"bios"],["comx_epr.zip",15391,"bios"],["comx_fd.zip",6238,"bios"],["comx_pl80.zip",8379,"bios"],["comx_prn.zip",5439,"bios"],["comx_thm.zip",2913,"bios"],["concept_kbd.zip",336,"bios"],["cp2024.zip",23160,"bios"],["cp31.zip",128845,"bios"],["cpc_brunword4.zip",139453,"bios"],["cpc_ddi1.zip",10934,"bios"],["cpc_dkspeech.zip",1460991,"bios"],["cpc_hd20.zip",19579,"bios"],["cpc_mface2.zip",1460991,"bios"],["cpc_ser.zip",1460991,"bios"],["cpc_serams.zip",1460991,"bios"],["cpc_smartwatch.zip",5640,"bios"],["cpc_ssa1.zip",1460991,"bios"],["cpc_transtape.zip",4021,"bios"],["cpuap.zip",26613,"bios"],["cq90_028.zip",1744,"bios"],["crd254sh.zip",31383,"bios"],["crvfdc01.zip",149,"bios"],["crvfdc02.zip",151,"bios"],["csd1.zip",12487,"bios"],["ct1741.zip",8003,"bios"],["cuda.zip",12814,"bios"],["cuda302.zip",3720,"bios"],["cudalite.zip",4037,"bios"],["custom.pal",192,"bios"],["cv8lc.zip",7423,"bios"],["cw7501.zip",83060,"bios"],["cx4.data.rom",3072,"bios"],["d2fdc.zip",262,"bios"],["d9060.zip",32197,"bios"],["d9090.zip",32197,"bios"],["db50xg.zip",3666695,"bios"],["db60xg.zip",3669859,"bios"],["dc/boot.bin",2097152,"bios"],["dc/dc_boot.bin",2097152,"bios"],["dc/dc_nvmem.bin",131072,"bios"],["dc/flash.bin",131072,"bios"],["dc/font.bin",519984,"bios"],["dc320b.zip",15794,"bios"],["dc320e.zip",31945,"bios"],["dc820.zip",26031,"bios"],["dc820b.zip",32045,"bios"],["dectalk_isa.zip",3823,"bios"],["dg640.zip",855,"bios"],["digilog_kbd.zip",1067,"bios"],["dim68k_kbd.zip",1550,"bios"],["dinothawr/dinothawr.game",3399,"game_data"],["dio98543.zip",2010,"bios"],["dio98544.zip",2034,"bios"],["dio98550.zip",3081,"bios"],["dio98603a.zip",291168,"bios"],["dio98603b.zip",377453,"bios"],["dio98628.zip",5918,"bios"],["dio98629.zip",5266,"bios"],["disciple.rom",8192,"bios"],["disk_plus3.szx",1568,"bios"],["diskii13.zip",590,"bios"],["disksys.rom",8192,"bios"],["dm_clgd5430.zip",20166,"bios"],["dmg_boot.bin",256,"bios"],["dmg_rom.bin",256,"bios"],["dmv_k220.zip",15572,"bios"],["dmv_k230.zip",2880,"bios"],["dmv_k231.zip",2880,"bios"],["dmv_k235.zip",2430,"bios"],["dmv_k806.zip",642,"bios"],["dmv_keyboard.zip",1135,"bios"],["dolphin-emu/Sys/GC/EUR/IPL.bin",2097152,"bios"],["dolphin-emu/Sys/GC/JAP/IPL.bin",2097152,"bios"],["dolphin-emu/Sys/GC/USA/IPL.bin",2097152,"bios"],["dolphin-emu/Sys/GC/dsp_coef.bin",4096,"bios"],["dolphin-emu/Sys/GC/dsp_rom.bin",8192,"bios"],["dolphin-emu/Sys/GC/font_japanese.bin",259626,"bios"],["dolphin-emu/Sys/GC/font_western.bin",6478,"bios"],["dolphin-emu/Sys/codehandler.bin",2880,"bios"],["dolphin-emu/User/GBA/gba_bios.bin",16384,"bios"],["dolphin-emu/User/Load/WiiSD.raw",134217728,"bios"],["dolphin-emu/User/Wii/clientca.pem",1005,"bios"],["dolphin-emu/User/Wii/clientcakey.pem",609,"bios"],["dolphin-emu/User/Wii/rootca.pem",897,"bios"],["dolphin-emu/User/Wii/shared2/sys/SYSCONF",16384,"bios"],["dolphin-emu/User/Wii/title/00000001/00000002/data/setting.txt",256,"bios"],["doom.wad",11159840,"game_data"],["doom1.wad",4196020,"game_data"],["doom2.wad",14943400,"game_data"],["doom2f.wad",14607420,"game_data"],["ds1001.zip",313,"bios"],["dsd4432.zip",1119,"bios"],["dsd5217.zip",21312,"bios"],["dsi_bios7.bin",65536,"bios"],["dsi_bios9.bin",65536,"bios"],["dsi_firmware.bin",131072,"bios"],["dsi_nand.bin",251658304,"bios"],["dsp1.data.rom",2048,"bios"],["dsp1.program.rom",6144,"bios"],["dsp1b.data.rom",2048,"bios"],["dsp1b.program.rom",6144,"bios"],["dsp2.data.rom",2048,"bios"],["dsp2.program.rom",6144,"bios"],["dsp3.data.rom",2048,"bios"],["dsp3.program.rom",6144,"bios"],["dsp4.data.rom",2048,"bios"],["dsp4.program.rom",6144,"bios"],["dsp56303.zip",568,"bios"],["dsp56311.zip",568,"bios"],["dsp56362.zip",629,"bios"],["dtlh1100.bin",524288,"bios"],["duodock.zip",47614,"bios"],["dvk_kmd.zip",6186,"bios"],["dw_kbd.zip",722,"bios"],["easyrpg.soundfont",148398306,"game_data"],["ec1841_0002.zip",3710,"bios"],["ecb_grip21.zip",10317,"bios"],["econet_e01.zip",26965,"bios"],["econet_e01s.zip",54134,"bios"],["ecwolf.pk3",178755,"bios"],["eeprom.dat",64,"bios"],["ef9340_1.zip",1022,"bios"],["ef9365.zip",590,"bios"],["ega.zip",18988,"bios"],["eidemax.zip",46469,"bios"],["einstein_sd.zip",1105,"bios"],["einstein_speech.zip",2019,"bios"],["eispc_kb.zip",848,"bios"],["enetlc.zip",8935,"bios"],["enetlctp.zip",471,"bios"],["enetnbtp.zip",472,"bios"],["enh2000.zip",12453,"bios"],["enp10.zip",35461,"bios"],["ep128emu/roms/basic20.rom",16384,"bios"],["ep128emu/roms/basic21.rom",16384,"bios"],["ep128emu/roms/brd.rom",16384,"bios"],["ep128emu/roms/cpc464.rom",32768,"bios"],["ep128emu/roms/cpc6128.rom",32768,"bios"],["ep128emu/roms/cpc664.rom",32768,"bios"],["ep128emu/roms/cpc_amsdos.rom",16384,"bios"],["ep128emu/roms/epd19hft.rom",32768,"bios"],["ep128emu/roms/epdos16f.rom",32768,"bios"],["ep128emu/roms/epfileio.rom",16384,"bios"],["ep128emu/roms/exdos13.rom",32768,"bios"],["ep128emu/roms/exdos14isdos10uk.rom",32768,"bios"],["ep128emu/roms/exos20.rom",32768,"bios"],["ep128emu/roms/exos21.rom",32768,"bios"],["ep128emu/roms/exos24uk.rom",65536,"bios"],["ep128emu/roms/hun.rom",16384,"bios"],["ep128emu/roms/ide12.rom",16384,"bios"],["ep128emu/roms/tvc22_ext.rom",8192,"bios"],["ep128emu/roms/tvc22_sys.rom",16384,"bios"],["ep128emu/roms/tvc_dos12d.rom",16384,"bios"],["ep128emu/roms/tvcfileio.rom",8192,"bios"],["ep128emu/roms/zt19hfnt.rom",32768,"bios"],["ep128emu/roms/zt19uk.rom",32768,"bios"],["ep128emu/roms/zx128.rom",32768,"bios"],["ep128emu/roms/zx48.rom",16384,"bios"],["ep64_exdos.zip",14521,"bios"],["epr-17952a.ic8",524288,"bios"],["epr-17954a.ic8",524288,"bios"],["epr-20091.ic8",524288,"bios"],["epson_fx80.zip",12887,"bios"],["epson_jx80.zip",11210,"bios"],["epson_pf10.zip",3426,"bios"],["epson_qx_option_multifont.zip",42543,"bios"],["epson_rx80.zip",6311,"bios"],["epson_tf20.zip",3426,"bios"],["ergoline_kbd.zip",1847,"bios"],["esq2x40_vfx.zip",288,"bios"],["et4000.zip",31117,"bios"],["et4000_kasan16.zip",206680,"bios"],["et4kw32i.zip",18756,"bios"],["et532_board.zip",1252,"bios"],["ethudock.zip",692,"bios"],["etos1024k.img",1048576,"bios"],["etos192uk.img",196608,"bios"],["etos192us.img",196608,"bios"],["eu_mcd1_9210.bin",131072,"bios"],["eu_mcd2_9303.bin",131072,"bios"],["eu_mcd2_9306.bin",131072,"bios"],["europc_kbd.zip",1138,"bios"],["ev346.zip",3881,"bios"],["everdrive_md.zip",37759,"bios"],["ex1280.zip",3538,"bios"],["ex800.zip",21628,"bios"],["exec.bin",8192,"bios"],["executive10_102_kbd.zip",1778,"bios"],["exorterm155_device.zip",8999,"bios"],["exos201.zip",19800,"bios"],["f4431_kbd.zip",1807,"bios"],["fba/hiscore.dat",322458,"bios"],["fba2012/samples/dkong.zip",29270,"game_data"],["fba2012/samples/dkongjr.zip",300220,"game_data"],["fba2012/samples/fireshrk.zip",180371945,"game_data"],["fba2012/samples/galaga.zip",243090,"game_data"],["fba2012/samples/ghox.zip",149028023,"game_data"],["fba2012/samples/rallyx.zip",72511,"game_data"],["fba2012/samples/tekipaki.zip",207969846,"game_data"],["fba2012/samples/vimana.zip",278695628,"game_data"],["fbalpha2012/hiscore.dat",322458,"bios"],["fbneo/bubsys.zip",7950,"bios"],["fbneo/cchip.zip",2700,"bios"],["fbneo/channelf.zip",2705,"bios"],["fbneo/coleco.zip",28014,"bios"],["fbneo/decocass.zip",16107,"bios"],["fbneo/fdsbios.zip",5758,"bios"],["fbneo/hiscore.dat",324575,"bios"],["fbneo/hiscore.dat",328397,"bios"],["fbneo/isgsm.zip",10207,"bios"],["fbneo/midssio.zip",163,"bios"],["fbneo/msx.zip",193854,"bios"],["fbneo/namcoc69.zip",7771,"bios"],["fbneo/namcoc70.zip",7822,"bios"],["fbneo/namcoc75.zip",8709,"bios"],["fbneo/neocdz.zip",214681,"bios"],["fbneo/neocdz.zip",1184219,"bios"],["fbneo/neogeo.zip",1859335,"bios"],["fbneo/ngp.zip",74758,"bios"],["fbneo/nmk004.zip",3556,"bios"],["fbneo/pgm.zip",2094636,"bios"],["fbneo/samples/donpachi.zip",208549253,"game_data"],["fbneo/samples/sfz3mix.zip",101017377,"game_data"],["fbneo/skns.zip",924762,"bios"],["fbneo/spec128.zip",25489,"bios"],["fbneo/spec1282a.zip",41646,"bios"],["fbneo/spectrum.zip",12432,"bios"],["fbneo/ym2608.zip",7609,"bios"],["fc_disksys.zip",11579,"bios"],["fd148.zip",11962,"bios"],["fd2000.zip",45358,"bios"],["fd4000.zip",45409,"bios"],["fdc344.zip",2298,"bios"],["fdcmag.zip",2158,"bios"],["fga4he.zip",17002,"bios"],["filetto_cga.zip",3713,"bios"],["firmware.bin",262144,"bios"],["flash.bin",131072,"bios"],["freedom220_kbd.zip",1353,"bios"],["freedoom1.wad",28795076,"game_data"],["freedoom2.wad",28787748,"game_data"],["freej2me-lr.jar",552042,"bios"],["freej2me-sdl.jar",552043,"bios"],["freej2me.jar",552039,"bios"],["freej2me_plus-lr.jar",1219093,"bios"],["fsd1.zip",11799,"bios"],["fsd2.zip",48020,"bios"],["fsuae/Kickstarts/amiga-ext-130-cdtv.rom",262144,"bios"],["fsuae/Kickstarts/amiga-ext-310-cd32.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-120.rom",262144,"bios"],["fsuae/Kickstarts/amiga-os-130.rom",262144,"bios"],["fsuae/Kickstarts/amiga-os-204.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-205.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-a1200.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-a3000.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-a4000.rom",524288,"bios"],["fsuae/Kickstarts/amiga-os-310-cd32.rom",524288,"bios"],["fsuae/Kickstarts/cd32fmv.rom",262144,"bios"],["fsuae/Kickstarts/rom.key",2069,"bios"],["fuse/128-0.rom",16384,"bios"],["fuse/128-1.rom",16384,"bios"],["fuse/128p-0.rom",16384,"bios"],["fuse/128p-1.rom",16384,"bios"],["fuse/256s-0.rom",16384,"bios"],["fuse/256s-1.rom",16384,"bios"],["fuse/256s-2.rom",16384,"bios"],["fuse/256s-3.rom",16384,"bios"],["fuse/48.rom",16384,"bios"],["fuse/didaktik80.rom",14336,"bios"],["fuse/disciple.rom",8192,"bios"],["fuse/gluck.rom",16384,"bios"],["fuse/if1-2.rom",8192,"bios"],["fuse/mf1.rom",8192,"bios"],["fuse/mf128.rom",8192,"bios"],["fuse/mf3.rom",8192,"bios"],["fuse/opus.rom",8192,"bios"],["fuse/plus2-0.rom",16384,"bios"],["fuse/plus2-1.rom",16384,"bios"],["fuse/plus3-0.rom",16384,"bios"],["fuse/plus3-1.rom",16384,"bios"],["fuse/plus3-2.rom",16384,"bios"],["fuse/plus3-3.rom",16384,"bios"],["fuse/plus3e-0.rom",16384,"bios"],["fuse/plus3e-1.rom",16384,"bios"],["fuse/plus3e-2.rom",16384,"bios"],["fuse/plus3e-3.rom",16384,"bios"],["fuse/plusd.rom",8192,"bios"],["fuse/se-0.rom",16384,"bios"],["fuse/se-1.rom",16384,"bios"],["fuse/speccyboot-1.4.rom",8192,"bios"],["fuse/tc2048.rom",16384,"bios"],["fuse/tc2068-0.rom",16384,"bios"],["fuse/tc2068-1.rom",8192,"bios"],["fuse/trdos.rom",16384,"bios"],["fuse/ttx2000s.rom",8192,"bios"],["fuse/usource.rom",8192,"bios"],["fx-scsi.rom",524288,"bios"],["g7400.bin",1024,"bios"],["g80_1500.zip",5636,"bios"],["galaksija/CHRGEN.BIN",2048,"bios"],["galaksija/ROM1.BIN",4096,"bios"],["galaksija/ROM2.BIN",4096,"bios"],["gamegenie.nes",24592,"bios"],["gamtor_vga.zip",208,"bios"],["gb_bios.bin",256,"bios"],["gba_bios.bin",16384,"bios"],["gbc_bios.bin",2304,"bios"],["gc-dvd-20010608.bin",131072,"bios"],["gc-dvd-20010831.bin",131072,"bios"],["gc-dvd-20020402.bin",131072,"bios"],["gc-dvd-20020823.bin",131072,"bios"],["gc-ntsc-10.bin",2097152,"bios"],["gc-ntsc-11.bin",2097152,"bios"],["gc-ntsc-12.bin",2097152,"bios"],["gc-pal-10.bin",2097152,"bios"],["gc-pal-11.bin",2097152,"bios"],["gc-pal-12.bin",2097152,"bios"],["gecard.pce",32768,"bios"],["geforce256.zip",25685,"bios"],["geforce256ddr.zip",21811,"bios"],["gexpress.pce",32768,"bios"],["gfxultra.zip",19347,"bios"],["gfxultrap.zip",38094,"bios"],["ggenie.bin",32768,"bios"],["gic.zip",373,"bios"],["goldstar.bin",1048576,"bios"],["gp32.zip",1378301,"bios"],["gpib_hardbox.zip",18236,"bios"],["gpib_mshark.zip",13934,"bios"],["gpib_softbox.zip",9859,"bios"],["gpl16250va.zip",155340,"bios"],["gpl951xx.zip",3396,"bios"],["grom.bin",2048,"bios"],["gzdoom.pk3",3612904,"game_data"],["h89bus_io_decoder_444_43.zip",175,"bios"],["h89bus_io_decoder_444_61.zip",176,"bios"],["h89bus_io_decoder_cdr86.zip",177,"bios"],["h89bus_io_decoder_mms_61c.zip",193,"bios"],["h8_cpu_8080.zip",7111,"bios"],["h8_ha_8_6.zip",6415,"bios"],["hatari/BOOT.ST",737280,"bios"],["hcpu30.zip",15456,"bios"],["hd44780.zip",965,"bios"],["hd44780u.zip",2082,"bios"],["hd61830.zip",839,"bios"],["hdae5000.zip",823668,"bios"],["he191_3425.zip",983,"bios"],["heath_gp19_tlb.zip",13491,"bios"],["heath_igc_super19_tlb_device.zip",5615,"bios"],["heath_igc_tlb_device.zip",5021,"bios"],["heath_igc_ultra_tlb_device.zip",4818,"bios"],["heath_igc_watz_tlb_device.zip",7609,"bios"],["heath_imaginator_tlb.zip",9135,"bios"],["heath_super19_tlb.zip",5615,"bios"],["heath_superset_tlb.zip",14186,"bios"],["heath_tlb.zip",5021,"bios"],["heath_ultra_tlb.zip",4818,"bios"],["heath_watz_tlb.zip",7609,"bios"],["hisaturn.bin",524288,"bios"],["hk68v10.zip",8083,"bios"],["howard.o",513,"bios"],["hp82900.zip",691,"bios"],["hp82937.zip",2028,"bios"],["hp82939.zip",1869,"bios"],["hp9122c.zip",10761,"bios"],["hp9133.zip",21140,"bios"],["hp98034.zip",717,"bios"],["hp98035.zip",1993,"bios"],["hp98046.zip",1103,"bios"],["hp9845_prt.zip",1241,"bios"],["hp9895.zip",6135,"bios"],["hpblp.zip",34683,"bios"],["human_interface.zip",2044,"bios"],["i8244.zip",456,"bios"],["i8245.zip",456,"bios"],["ibm_mfc.zip",17863,"bios"],["ibm_vga.zip",13184,"bios"],["ibsap2.zip",1061,"bios"],["id1/pak0.pak",18689235,"game_data"],["idpart_video.zip",2623,"bios"],["ie15_device.zip",5520,"bios"],["ie15kbd.zip",352,"bios"],["if1-1.rom",8192,"bios"],["if1-2.rom",8192,"bios"],["imds2ioc.zip",19804,"bios"],["imi5000h.zip",3337,"bios"],["in207100kbd.zip",1074,"bios"],["in213kbd.zip",658,"bios"],["indusgt.zip",15707,"bios"],["intv_ecs.zip",13890,"bios"],["intv_voice.zip",2025,"bios"],["iq151_disc2.zip",1872,"bios"],["iq151_minigraf.zip",3404,"bios"],["iq151_ms15a.zip",1938,"bios"],["iq151_video32.zip",709,"bios"],["iq151_video64.zip",1120,"bios"],["iris_kbd.zip",939,"bios"],["isa_aga.zip",2673,"bios"],["isa_aga_pc200.zip",3722,"bios"],["isa_epc_mda.zip",1714,"bios"],["isa_finalchs.zip",39370,"bios"],["isa_hdc.zip",5558,"bios"],["isa_hercules.zip",3204,"bios"],["isa_ibm_mda.zip",483513,"bios"],["isa_ibm_pgc.zip",69664,"bios"],["isa_ibm_speech.zip",22584,"bios"],["isa_pcmidi.zip",6300,"bios"],["isa_prose4001.zip",96246,"bios"],["isbc202.zip",2023,"bios"],["isbc8024.zip",2868,"bios"],["isbc_215g.zip",11746,"bios"],["ivelultrkb.zip",841,"bios"],["jagboot.rom",131072,"bios"],["jagboot_m.rom",131072,"bios"],["jaleco_vj_pc.zip",116758,"bios"],["jc1310.zip",3574,"bios"],["jopac.bin",1024,"bios"],["jp_mcd1_9111.bin",131072,"bios"],["jp_mcd1_9112.bin",131072,"bios"],["jp_mcd2_921222.bin",131072,"bios"],["k7659_keyboard.zip",384,"bios"],["kaypro10kbd.zip",1307,"bios"],["kayproiikbd.zip",1101,"bios"],["kb_3270pc.zip",1115,"bios"],["kb_ec1841.zip",788,"bios"],["kb_iskr1030.zip",1022,"bios"],["kb_ms_natural.zip",3029,"bios"],["kb_pcat101.zip",2989,"bios"],["kb_pcat84.zip",1032,"bios"],["kb_pcxt83.zip",726,"bios"],["kbd_lle_en_us.zip",3038,"bios"],["kc_d004.zip",4285,"bios"],["kc_d004_gide.zip",30180,"bios"],["kernal-901227-01.bin",8192,"bios"],["kernal-901227-02.bin",8192,"bios"],["kernal.901486-02.bin",8192,"bios"],["keropi/cgrom.dat",786432,"bios"],["keropi/iplrom.dat",131072,"bios"],["keropi/iplrom30.dat",131072,"bios"],["keropi/iplromco.dat",131072,"bios"],["keropi/iplromxv.dat",131072,"bios"],["keytronic_l2207.zip",2325,"bios"],["keytronic_pc3270.zip",3168,"bios"],["keytronic_pc3270_at.zip",3168,"bios"],["kick.rom",262144,"bios"],["kick12.rom",524288,"bios"],["kick13.rom",524288,"bios"],["kick20.rom",524288,"bios"],["kick205.rom",524288,"bios"],["kick31.rom",524288,"bios"],["kick31034.A1000",262144,"bios"],["kick32034.A1000",262144,"bios"],["kick33180.A500",262144,"bios"],["kick34005.A500",262144,"bios"],["kick34005.CDTV",262144,"bios"],["kick37175.A500",524288,"bios"],["kick37350.A600",524288,"bios"],["kick39106.A1200",524288,"bios"],["kick39106.A4000",524288,"bios"],["kick40060.CD32",524288,"bios"],["kick40060.CD32.ext",524288,"bios"],["kick40063.A600",524288,"bios"],["kick40068.A1200",524288,"bios"],["kick40068.A4000",524288,"bios"],["km035.zip",1035,"bios"],["kronos/saturn_bios.bin",524288,"bios"],["kronos/stvbios.zip",3455065,"bios"],["ks0066.zip",2011,"bios"],["labtam_3232.zip",73648,"bios"],["labtam_8086cpu.zip",3231,"bios"],["labtam_vducom.zip",75740,"bios"],["labtam_z80sbc.zip",16546,"bios"],["lba_enhancer.zip",2746,"bios"],["lc7985.zip",957,"bios"],["ldv1000.zip",4816,"bios"],["lh5323m1.bin",262144,"bios"],["lha201.zip",6661,"bios"],["libbass.dylib",874240,"bios"],["libbass.so",248952,"bios"],["libbassmidi.dylib",519808,"bios"],["libbassmidi.so",142080,"bios"],["lisa2fdc.zip",3159,"bios"],["lisafdc.zip",3328,"bios"],["lisavideo.zip",260,"bios"],["lk201.zip",6069,"bios"],["lm24014h.zip",629,"bios"],["lrk331.zip",18121,"bios"],["luna_68k_cmc.zip",13767,"bios"],["luna_68k_gpu.zip",84000,"bios"],["luna_68k_ioc.zip",28610,"bios"],["lux10828.zip",9352,"bios"],["lux21046.zip",24177,"bios"],["lux21056.zip",7454,"bios"],["lx800.zip",15176,"bios"],["lx810l.zip",22103,"bios"],["lynxboot.img",512,"bios"],["m1comm.zip",3832,"bios"],["m20_8086.zip",6611,"bios"],["m24_kbd.zip",1483,"bios"],["m24_z8000.zip",9638,"bios"],["m50dass.zip",5021,"bios"],["m68705p3.zip",266,"bios"],["m68705p5.zip",266,"bios"],["m68705r3.zip",271,"bios"],["m68705u3.zip",271,"bios"],["m68hc05pge.zip",607,"bios"],["mach64isa.zip",121273,"bios"],["macxlfdc.zip",5757,"bios"],["macxlvideo.zip",212,"bios"],["mame/hash/32x.xml",128073,"game_data"],["mame/hash/3do_m2.xml",1791,"game_data"],["mame/hash/README.md",354,"game_data"],["mame/hash/a2600.xml",737892,"game_data"],["mame/hash/a2600_cass.xml",32898,"game_data"],["mame/hash/a5200.hsi",32063,"game_data"],["mame/hash/a5200.xml",58114,"game_data"],["mame/hash/a7800.xml",127364,"game_data"],["mame/hash/abc1600_flop.xml",7222,"game_data"],["mame/hash/abc1600_hdd.xml",547,"game_data"],["mame/hash/abc800_hdd.xml",1362,"game_data"],["mame/hash/abc806_flop.xml",4664,"game_data"],["mame/hash/abc80_cass.xml",1063,"game_data"],["mame/hash/abc80_flop.xml",4875,"game_data"],["mame/hash/abc80_rom.xml",2440,"game_data"],["mame/hash/abc830_flop.xml",7246,"game_data"],["mame/hash/abc832_flop.xml",14768,"game_data"],["mame/hash/abc838_flop.xml",1979,"game_data"],["mame/hash/acrnsys_flop.xml",1659,"game_data"],["mame/hash/acrnsys_rom.xml",2174,"game_data"],["mame/hash/advantage.xml",5914,"game_data"],["mame/hash/aim65_cart.xml",9060,"game_data"],["mame/hash/aleste.xml",1366,"game_data"],["mame/hash/alice32.xml",27026,"game_data"],["mame/hash/alice90.xml",3996,"game_data"],["mame/hash/alphasmart_kapps.xml",16025,"game_data"],["mame/hash/alphatro_cart.xml",1129,"game_data"],["mame/hash/alphatro_flop.xml",1342,"game_data"],["mame/hash/altos5.xml",1323,"game_data"],["mame/hash/altos586.xml",574,"game_data"],["mame/hash/altos8600.xml",1043,"game_data"],["mame/hash/amiga_amix.xml",4460,"game_data"],["mame/hash/amiga_apps.xml",7434,"game_data"],["mame/hash/amiga_cd.xml",15524,"game_data"],["mame/hash/amiga_demos.xml",3217,"game_data"],["mame/hash/amiga_flop.xml",410553,"game_data"],["mame/hash/amiga_hardware.xml",9287,"game_data"],["mame/hash/amiga_hdd.xml",1617,"game_data"],["mame/hash/amiga_workbench.xml",61616,"game_data"],["mame/hash/amigaaga_flop.xml",215186,"game_data"],["mame/hash/amigaecs_flop.xml",35873,"game_data"],["mame/hash/amigaocs_flop.xml",2095329,"game_data"],["mame/hash/ampro.xml",2178,"game_data"],["mame/hash/apc.xml",14254,"game_data"],["mame/hash/apexc_cyl.xml",1523,"game_data"],["mame/hash/apogee.xml",41066,"game_data"],["mame/hash/apollo_ctape.xml",2075,"game_data"],["mame/hash/apple1.xml",20026,"game_data"],["mame/hash/apple2_cass.xml",138008,"game_data"],["mame/hash/apple2_rom.xml",1709,"game_data"],["mame/hash/apple3.xml",10270,"game_data"],["mame/hash/applix_flop.xml",541,"game_data"],["mame/hash/apricot_flop.xml",33034,"game_data"],["mame/hash/apxen_flop.xml",1562,"game_data"],["mame/hash/aquarius_cart.xml",14960,"game_data"],["mame/hash/aquarius_cass.xml",34155,"game_data"],["mame/hash/arb.xml",3568,"game_data"],["mame/hash/arcadia.xml",57566,"game_data"],["mame/hash/atom_cass.xml",19518,"game_data"],["mame/hash/atom_flop.xml",7657,"game_data"],["mame/hash/atom_rom.xml",16011,"game_data"],["mame/hash/attache.xml",555,"game_data"],["mame/hash/aussiebyte.xml",545,"game_data"],["mame/hash/b2m.xml",1244,"game_data"],["mame/hash/basf7100.xml",881,"game_data"],["mame/hash/bbcbc.xml",5189,"game_data"],["mame/hash/bdesignm_design_cart.xml",3983,"game_data"],["mame/hash/bdesignm_game_cart.xml",3809,"game_data"],["mame/hash/bingobear.xml",1244,"game_data"],["mame/hash/bkrankp_cart.xml",9615,"game_data"],["mame/hash/bmjr_cass.xml",790,"game_data"],["mame/hash/bml3_cass.xml",1359,"game_data"],["mame/hash/bml3_flop.xml",4172,"game_data"],["mame/hash/brother_pn.xml",1902,"game_data"],["mame/hash/bungo_flop.xml",2355,"game_data"],["mame/hash/buzztime_cart.xml",1855,"game_data"],["mame/hash/bw12.xml",869,"game_data"],["mame/hash/bw14.xml",4116,"game_data"],["mame/hash/bw2.xml",2574,"game_data"],["mame/hash/bx256hp_flop.xml",4979,"game_data"],["mame/hash/c128_cart.xml",7667,"game_data"],["mame/hash/c128_flop.xml",29219,"game_data"],["mame/hash/c128_rom.xml",3843,"game_data"],["mame/hash/c2color_cart.xml",4498,"game_data"],["mame/hash/c64_cart.xml",258956,"game_data"],["mame/hash/c64_cass.xml",578831,"game_data"],["mame/hash/c64_flop_misc.xml",34001,"game_data"],["mame/hash/c64_flop_orig.xml",30419,"game_data"],["mame/hash/c64_quik.xml",585,"game_data"],["mame/hash/c65_flop.xml",616,"game_data"],["mame/hash/carbeena.xml",811,"game_data"],["mame/hash/casio_rompack.xml",72987,"game_data"],["mame/hash/cassvisn_cart.xml",8242,"game_data"],["mame/hash/cbm2_cart.xml",2432,"game_data"],["mame/hash/cbm2_flop.xml",55851,"game_data"],["mame/hash/cbm8096_flop.xml",976,"game_data"],["mame/hash/cbm8296_flop.xml",1344,"game_data"],["mame/hash/cc40_cart.xml",4533,"game_data"],["mame/hash/cd32.xml",73479,"game_data"],["mame/hash/cdtv.xml",128903,"game_data"],["mame/hash/cecflop.xml",9584,"game_data"],["mame/hash/cgenie_cass.xml",135849,"game_data"],["mame/hash/cgenie_flop_rom.xml",1068,"game_data"],["mame/hash/challenge_gear_cart.xml",1798,"game_data"],["mame/hash/channelf.xml",20040,"game_data"],["mame/hash/chessking_cart.xml",641,"game_data"],["mame/hash/chessmstdm.xml",1095,"game_data"],["mame/hash/chip8_quik.xml",32203,"game_data"],["mame/hash/clickstart_cart.xml",10218,"game_data"],["mame/hash/clipper_flop.xml",1190,"game_data"],["mame/hash/coleco.xml",153128,"game_data"],["mame/hash/coleco_homebrew.xml",89593,"game_data"],["mame/hash/compclr2_flop.xml",94972,"game_data"],["mame/hash/compis.xml",40308,"game_data"],["mame/hash/comx35_flop.xml",543,"game_data"],["mame/hash/conchess.xml",1245,"game_data"],["mame/hash/copera.xml",5754,"game_data"],["mame/hash/cpc_cass.xml",1991951,"game_data"],["mame/hash/cpc_flop.xml",12700511,"game_data"],["mame/hash/ctvboy.xml",3078,"game_data"],["mame/hash/cubieboard4.xml",3873,"game_data"],["mame/hash/cx3000tc.xml",2044,"game_data"],["mame/hash/cz1_cart.xml",1477,"game_data"],["mame/hash/dai_cass.xml",4412,"game_data"],["mame/hash/database.xml",8810,"game_data"],["mame/hash/dc.xml",1547464,"game_data"],["mame/hash/dgnbeta_flop.xml",1891,"game_data"],["mame/hash/digiblast_cart.xml",10923,"game_data"],["mame/hash/digilog320.xml",1545,"game_data"],["mame/hash/dim68k.xml",7070,"game_data"],["mame/hash/dmv.xml",54867,"game_data"],["mame/hash/dps1.xml",596,"game_data"],["mame/hash/duelmast_cart.xml",1148,"game_data"],["mame/hash/easy_karaoke_cart.xml",16341,"game_data"],["mame/hash/ec1841.xml",4295,"game_data"],["mame/hash/einstein.xml",53792,"game_data"],["mame/hash/einstein_rom.xml",547,"game_data"],["mame/hash/entex_sag.xml",3620,"game_data"],["mame/hash/ep64_cart.xml",6240,"game_data"],["mame/hash/ep64_cass.xml",1272,"game_data"],["mame/hash/ep64_flop.xml",73009,"game_data"],["mame/hash/epson_cpm.xml",5880,"game_data"],["mame/hash/eti660_quik.xml",2480,"game_data"],["mame/hash/ews286_flop.xml",1384,"game_data"],["mame/hash/excalibur64.xml",551,"game_data"],["mame/hash/exl100.xml",6011,"game_data"],["mame/hash/famibox.xml",31176,"game_data"],["mame/hash/famicom_cass.xml",21948,"game_data"],["mame/hash/famicom_flop.xml",168824,"game_data"],["mame/hash/fidel_msc.xml",1132,"game_data"],["mame/hash/fidel_sc6.xml",565,"game_data"],["mame/hash/fidel_scc.xml",4897,"game_data"],["mame/hash/fmtowns_cd.xml",2734453,"game_data"],["mame/hash/fmtowns_flop_cracked.xml",3606,"game_data"],["mame/hash/fmtowns_flop_misc.xml",63683,"game_data"],["mame/hash/fmtowns_flop_orig.xml",150372,"game_data"],["mame/hash/fp1100_cass.xml",4676,"game_data"],["mame/hash/gaelco_ds5002fp_rom.xml",4164,"game_data"],["mame/hash/galaxy.xml",24068,"game_data"],["mame/hash/gameboy.xml",1136450,"game_data"],["mame/hash/gamegear.xml",414475,"game_data"],["mame/hash/gameking.xml",21981,"game_data"],["mame/hash/gameking3.xml",4399,"game_data"],["mame/hash/gba.xml",1727109,"game_data"],["mame/hash/gba_ereader.xml",286933,"game_data"],["mame/hash/gbcolor.xml",1161729,"game_data"],["mame/hash/generic_cdrom.xml",52075,"game_data"],["mame/hash/generic_flop_525.xml",4909,"game_data"],["mame/hash/genie3_flop.xml",4849,"game_data"],["mame/hash/ggm.xml",8019,"game_data"],["mame/hash/gimix.xml",2241,"game_data"],["mame/hash/gj4000.xml",681,"game_data"],["mame/hash/gjmovie.xml",760,"game_data"],["mame/hash/gjrstar.xml",2795,"game_data"],["mame/hash/gl2000.xml",4022,"game_data"],["mame/hash/gl6000sl.xml",1205,"game_data"],["mame/hash/glcolor.xml",2575,"game_data"],["mame/hash/glcx.xml",4447,"game_data"],["mame/hash/gln.xml",1724,"game_data"],["mame/hash/gls.xml",609,"game_data"],["mame/hash/gtfore.xml",2385,"game_data"],["mame/hash/guab.xml",4131,"game_data"],["mame/hash/gx4000.xml",12933,"game_data"],["mame/hash/h21.xml",1358,"game_data"],["mame/hash/h88_cass.xml",6198,"game_data"],["mame/hash/horizon.xml",110171,"game_data"],["mame/hash/hp85_rom.xml",2800,"game_data"],["mame/hash/hp86_rom.xml",5029,"game_data"],["mame/hash/hp9825_rom.xml",6691,"game_data"],["mame/hash/hp9831_rom.xml",1188,"game_data"],["mame/hash/hp9835a_rom.xml",2757,"game_data"],["mame/hash/hp9845a_rom.xml",4328,"game_data"],["mame/hash/hp9845b_rom.xml",19426,"game_data"],["mame/hash/hp98x6_rom.xml",1486,"game_data"],["mame/hash/hp9k3xx_cdrom.xml",7323,"game_data"],["mame/hash/hp9k3xx_flop.xml",30834,"game_data"],["mame/hash/hp9k3xx_hdd.xml",691,"game_data"],["mame/hash/hp_ipc.xml",23990,"game_data"],["mame/hash/hp_ipc_rom.xml",672,"game_data"],["mame/hash/ht68k.xml",923,"game_data"],["mame/hash/hx20_rom.xml",904,"game_data"],["mame/hash/hyperscan.xml",2390,"game_data"],["mame/hash/hyperscan_card.xml",193115,"game_data"],["mame/hash/i7000_card.xml",7455,"game_data"],["mame/hash/ibm5140.xml",1967,"game_data"],["mame/hash/ibm5150_cass.xml",736,"game_data"],["mame/hash/ibm5150_hdd.xml",5316,"game_data"],["mame/hash/ibm5170.xml",1162208,"game_data"],["mame/hash/ibm5170_cdrom.xml",454762,"game_data"],["mame/hash/ibm5170_hdd.xml",12253,"game_data"],["mame/hash/ibm6580.xml",4972,"game_data"],["mame/hash/ibmpc110.xml",1581,"game_data"],["mame/hash/ibmpcjr_cart.xml",9823,"game_data"],["mame/hash/ibmpcjr_flop.xml",6253,"game_data"],["mame/hash/ibmpcjx.xml",2034,"game_data"],["mame/hash/icanguit.xml",4013,"game_data"],["mame/hash/icanpian.xml",7041,"game_data"],["mame/hash/intellect02.xml",1026,"game_data"],["mame/hash/interact.xml",14054,"game_data"],["mame/hash/interpro.xml",15826,"game_data"],["mame/hash/intv.hsi",21652,"game_data"],["mame/hash/intv.xml",100100,"game_data"],["mame/hash/intvecs.xml",7161,"game_data"],["mame/hash/iq128.xml",1656,"game_data"],["mame/hash/iq151_cart.xml",2180,"game_data"],["mame/hash/iq151_flop.xml",1019,"game_data"],["mame/hash/ique.xml",18576,"game_data"],["mame/hash/iqunlim_cart.xml",1166,"game_data"],["mame/hash/itt3030.xml",1428,"game_data"],["mame/hash/jaguar.xml",78281,"game_data"],["mame/hash/jakks_gamekey_dp.xml",761,"game_data"],["mame/hash/jakks_gamekey_dy.xml",2768,"game_data"],["mame/hash/jakks_gamekey_mv.xml",756,"game_data"],["mame/hash/jakks_gamekey_nk.xml",1934,"game_data"],["mame/hash/jakks_gamekey_nm.xml",2051,"game_data"],["mame/hash/jakks_gamekey_sw.xml",2931,"game_data"],["mame/hash/jakks_gamekey_wp.xml",1064,"game_data"],["mame/hash/jaminator.xml",6011,"game_data"],["mame/hash/jazz.xml",1564,"game_data"],["mame/hash/jb3000_flop.xml",660,"game_data"],["mame/hash/juicebox.xml",18075,"game_data"],["mame/hash/juku.xml",6267,"game_data"],["mame/hash/jupace_cass.xml",81423,"game_data"],["mame/hash/jupace_snap.xml",2564,"game_data"],["mame/hash/k28.xml",3157,"game_data"],["mame/hash/k28o.xml",827,"game_data"],["mame/hash/kaypro.xml",8389,"game_data"],["mame/hash/kc_cart.xml",2336,"game_data"],["mame/hash/kc_cass.xml",70753,"game_data"],["mame/hash/kc_flop.xml",2125,"game_data"],["mame/hash/kim1_cass.xml",4296,"game_data"],["mame/hash/kisssite_cd.xml",13436,"game_data"],["mame/hash/korvet_flop.xml",8743,"game_data"],["mame/hash/lanteach.xml",561,"game_data"],["mame/hash/lantrans.xml",4167,"game_data"],["mame/hash/leapfrog_didj_cart.xml",3419,"game_data"],["mame/hash/leapfrog_iquest_cart.xml",996,"game_data"],["mame/hash/leapfrog_leappad_cart.xml",91522,"game_data"],["mame/hash/leapfrog_ltleappad_cart.xml",9206,"game_data"],["mame/hash/leapfrog_mfleappad_cart.xml",11748,"game_data"],["mame/hash/leapfrog_zippity_cart.xml",1903,"game_data"],["mame/hash/leapster.xml",79859,"game_data"],["mame/hash/leapster_explorer_cart.xml",2082,"game_data"],["mame/hash/lisa.xml",35666,"game_data"],["mame/hash/lisa2.xml",5305,"game_data"],["mame/hash/lk3000.xml",2341,"game_data"],["mame/hash/lnux4004.xml",551,"game_data"],["mame/hash/lviv.xml",117889,"game_data"],["mame/hash/lynx.xml",57321,"game_data"],["mame/hash/m20.xml",24233,"game_data"],["mame/hash/m24.xml",585,"game_data"],["mame/hash/m3.xml",567,"game_data"],["mame/hash/m5_cart.xml",24121,"game_data"],["mame/hash/m5_cass.xml",16984,"game_data"],["mame/hash/m5_flop.xml",1025,"game_data"],["mame/hash/mbc200.xml",906,"game_data"],["mame/hash/mbc55x.xml",6393,"game_data"],["mame/hash/mbee_cart.xml",23641,"game_data"],["mame/hash/mbee_cass.xml",1994,"game_data"],["mame/hash/mbee_flop.xml",218405,"game_data"],["mame/hash/mbee_quik.xml",64816,"game_data"],["mame/hash/mc1000_cass.xml",53448,"game_data"],["mame/hash/mc1502_flop.xml",949,"game_data"],["mame/hash/md2_flop.xml",2723,"game_data"],["mame/hash/megacd.xml",1291438,"game_data"],["mame/hash/megadriv.xml",1656213,"game_data"],["mame/hash/megaduck.xml",19227,"game_data"],["mame/hash/megapc.xml",1756,"game_data"],["mame/hash/mephisto_mm1.xml",613,"game_data"],["mame/hash/mephisto_mm2.xml",650,"game_data"],["mame/hash/mephisto_mm4.xml",618,"game_data"],["mame/hash/mephisto_mm5.xml",616,"game_data"],["mame/hash/mephisto_smondial2.xml",681,"game_data"],["mame/hash/microbox2_flop.xml",955,"game_data"],["mame/hash/microvision.xml",12187,"game_data"],["mame/hash/midi_flop.xml",1102,"game_data"],["mame/hash/mikro80.xml",2155,"game_data"],["mame/hash/mikrosha_cart.xml",564,"game_data"],["mame/hash/mikrosha_cass.xml",19640,"game_data"],["mame/hash/mindset_flop.xml",889,"game_data"],["mame/hash/misterx.xml",1485,"game_data"],["mame/hash/mk14_quik.xml",1607,"game_data"],["mame/hash/mm1_flop.xml",3737,"game_data"],["mame/hash/mm2_flop.xml",1145,"game_data"],["mame/hash/mm2_hdd.xml",564,"game_data"],["mame/hash/mo5_cart.xml",21269,"game_data"],["mame/hash/mo5_cass.xml",706525,"game_data"],["mame/hash/mo5_flop.xml",32837,"game_data"],["mame/hash/mo5_qd.xml",12350,"game_data"],["mame/hash/mo6_cass.xml",70027,"game_data"],["mame/hash/mo6_flop.xml",23106,"game_data"],["mame/hash/mobigo_cart.xml",23750,"game_data"],["mame/hash/monon_color.xml",15292,"game_data"],["mame/hash/mpc3000_flop.xml",3350,"game_data"],["mame/hash/mpc60_flop.xml",15063,"game_data"],["mame/hash/mpf1_rom.xml",2881,"game_data"],["mame/hash/mpu1000.xml",614,"game_data"],["mame/hash/mpz80.xml",21352,"game_data"],["mame/hash/msx.hsi",130435,"game_data"],["mame/hash/msx1_bee_card.xml",5450,"game_data"],["mame/hash/msx1_cart.xml",1069721,"game_data"],["mame/hash/msx1_cass.xml",815967,"game_data"],["mame/hash/msx1_flop.xml",243313,"game_data"],["mame/hash/msx1_flop_525.xml",8311,"game_data"],["mame/hash/msx2.hsi",290917,"game_data"],["mame/hash/msx2_cart.xml",191807,"game_data"],["mame/hash/msx2_cass.xml",2308,"game_data"],["mame/hash/msx2_flop.xml",1138601,"game_data"],["mame/hash/msx2p_cart.xml",2243,"game_data"],["mame/hash/msx2p_flop.xml",35351,"game_data"],["mame/hash/msx_softcard.xml",2406,"game_data"],["mame/hash/msx_yamaha_minicart.xml",913,"game_data"],["mame/hash/msxr_cart.xml",4556,"game_data"],["mame/hash/msxr_flop.xml",58312,"game_data"],["mame/hash/mt65_cass.xml",3972,"game_data"],["mame/hash/mt65_rom.xml",7665,"game_data"],["mame/hash/mt65_snap.xml",6125,"game_data"],["mame/hash/mtu130_flop.xml",2682,"game_data"],["mame/hash/mtx_cart.xml",3484,"game_data"],["mame/hash/mtx_cass.xml",23223,"game_data"],["mame/hash/mtx_flop.xml",3849,"game_data"],["mame/hash/mtx_hdd.xml",1479,"game_data"],["mame/hash/mtx_rom.xml",2033,"game_data"],["mame/hash/mylife_cart.xml",3029,"game_data"],["mame/hash/myvision.xml",10822,"game_data"],["mame/hash/mz2000_cass.xml",18487,"game_data"],["mame/hash/mz2000_flop.xml",6827,"game_data"],["mame/hash/mz2000_snap.xml",6357,"game_data"],["mame/hash/mz2500_flop.xml",41591,"game_data"],["mame/hash/mz5500_flop.xml",3298,"game_data"],["mame/hash/mz700_cass.xml",101940,"game_data"],["mame/hash/mz800_cass.xml",6416,"game_data"],["mame/hash/mz800_rom.xml",1699,"game_data"],["mame/hash/mz80b_cass.xml",3476,"game_data"],["mame/hash/mz80b_flop.xml",1334,"game_data"],["mame/hash/mz80k_cass.xml",17674,"game_data"],["mame/hash/n64.xml",634504,"game_data"],["mame/hash/n64_lodgenet.xml",18886,"game_data"],["mame/hash/n64dd.xml",7365,"game_data"],["mame/hash/nascom_flop.xml",4009,"game_data"],["mame/hash/nascom_snap.xml",32837,"game_data"],["mame/hash/nascom_socket.xml",2918,"game_data"],["mame/hash/neocd.xml",69767,"game_data"],["mame/hash/neogeo.xml",861636,"game_data"],["mame/hash/nes.hsi",2901163,"game_data"],["mame/hash/nes.xml",3760989,"game_data"],["mame/hash/nes_ade.xml",3683,"game_data"],["mame/hash/nes_datach.xml",5512,"game_data"],["mame/hash/nes_kstudio.xml",1679,"game_data"],["mame/hash/nes_ntbrom.xml",1534,"game_data"],["mame/hash/nes_vt_cart.xml",1225,"game_data"],["mame/hash/next.xml",4495,"game_data"],["mame/hash/next_cdrom.xml",2473,"game_data"],["mame/hash/next_hdd.xml",5837,"game_data"],["mame/hash/ngp.xml",6692,"game_data"],["mame/hash/ngpc.xml",69520,"game_data"],["mame/hash/nimbus.xml",14651,"game_data"],["mame/hash/novag_ssensor4.xml",690,"game_data"],["mame/hash/nuon.xml",3452,"game_data"],["mame/hash/octopus.xml",3416,"game_data"],["mame/hash/ondra.xml",4936,"game_data"],["mame/hash/orao.xml",25307,"game_data"],["mame/hash/oric1_cass.xml",201867,"game_data"],["mame/hash/orina_stylish_plus_cart.xml",694,"game_data"],["mame/hash/orion_cart.xml",898,"game_data"],["mame/hash/orion_cass.xml",28871,"game_data"],["mame/hash/orion_flop.xml",42898,"game_data"],["mame/hash/orionpro_flop.xml",12350,"game_data"],["mame/hash/osborne1.xml",10325,"game_data"],["mame/hash/osborne2.xml",2130,"game_data"],["mame/hash/p2000_cart.xml",19726,"game_data"],["mame/hash/p2000_cass.xml",80619,"game_data"],["mame/hash/p500_flop.xml",925,"game_data"],["mame/hash/partner_cass.xml",27737,"game_data"],["mame/hash/partner_flop.xml",890,"game_data"],["mame/hash/pasogo.xml",4088,"game_data"],["mame/hash/pasopia7_cass.xml",1740,"game_data"],["mame/hash/pasopia_cass.xml",3381,"game_data"],["mame/hash/pb2000c.xml",994,"game_data"],["mame/hash/pc1000.xml",5519,"game_data"],["mame/hash/pc100_flop.xml",3563,"game_data"],["mame/hash/pc1512_flop.xml",6358,"game_data"],["mame/hash/pc1512_hdd.xml",511,"game_data"],["mame/hash/pc1640_flop.xml",2796,"game_data"],["mame/hash/pc1640_hdd.xml",572,"game_data"],["mame/hash/pc200.xml",1683,"game_data"],["mame/hash/pc6001_cart.xml",6880,"game_data"],["mame/hash/pc6001_cass.xml",52713,"game_data"],["mame/hash/pc6001mk2_cass.xml",42402,"game_data"],["mame/hash/pc6001mk2_flop.xml",5521,"game_data"],["mame/hash/pc6001mk2sr_cass.xml",8673,"game_data"],["mame/hash/pc6001mk2sr_flop.xml",1876,"game_data"],["mame/hash/pc8201.xml",1733,"game_data"],["mame/hash/pc8801_cass.xml",56042,"game_data"],["mame/hash/pc8801_cdrom.xml",6105,"game_data"],["mame/hash/pc8801_flop.xml",2323906,"game_data"],["mame/hash/pc8801_flop_orig.xml",840,"game_data"],["mame/hash/pc88va.xml",66115,"game_data"],["mame/hash/pc88va_flop_orig.xml",5665,"game_data"],["mame/hash/pc98.xml",3156503,"game_data"],["mame/hash/pc98_cd.xml",496918,"game_data"],["mame/hash/pc98_flop_orig.xml",10051,"game_data"],["mame/hash/pc98_hdd.xml",939,"game_data"],["mame/hash/pcd_flop.xml",2088,"game_data"],["mame/hash/pce.xml",168484,"game_data"],["mame/hash/pcecd.xml",359086,"game_data"],["mame/hash/pcfx.xml",6670,"game_data"],["mame/hash/pcw16.xml",2116,"game_data"],["mame/hash/pcx_flop.xml",7886,"game_data"],["mame/hash/pda600.xml",1050,"game_data"],["mame/hash/pdp1_ptp.xml",2537,"game_data"],["mame/hash/pecom_cass.xml",3816,"game_data"],["mame/hash/pencil2.xml",4876,"game_data"],["mame/hash/pencil2_cass.xml",7881,"game_data"],["mame/hash/pentagon_cass.xml",1246,"game_data"],["mame/hash/pet_cass.xml",106400,"game_data"],["mame/hash/pet_flop.xml",33750,"game_data"],["mame/hash/pet_hdd.xml",1283,"game_data"],["mame/hash/pet_quik.xml",1032,"game_data"],["mame/hash/pet_rom.xml",14809,"game_data"],["mame/hash/phc25_cass.xml",12548,"game_data"],["mame/hash/pi_storyreader_cart.xml",22422,"game_data"],["mame/hash/pi_storyreader_v2_cart.xml",658,"game_data"],["mame/hash/picno.xml",12147,"game_data"],["mame/hash/pico.xml",288031,"game_data"],["mame/hash/pippin.xml",45021,"game_data"],["mame/hash/pippin_flop.xml",750,"game_data"],["mame/hash/pixter_cart.xml",2630,"game_data"],["mame/hash/playmaker.xml",1242,"game_data"],["mame/hash/pls1000_cart.xml",2938,"game_data"],["mame/hash/plus4_cart.xml",10278,"game_data"],["mame/hash/plus4_cass.xml",1191,"game_data"],["mame/hash/plus4_flop.xml",2108,"game_data"],["mame/hash/plus4_quik.xml",951,"game_data"],["mame/hash/pmd85_cass.xml",45145,"game_data"],["mame/hash/pockchalv2.xml",18615,"game_data"],["mame/hash/pockchalw.xml",30826,"game_data"],["mame/hash/pofo.xml",2062,"game_data"],["mame/hash/poisk1_flop.xml",961,"game_data"],["mame/hash/pokemini.xml",19575,"game_data"],["mame/hash/poly_flop.xml",1085,"game_data"],["mame/hash/polysix.xml",889,"game_data"],["mame/hash/popstar_cart.xml",1581,"game_data"],["mame/hash/precur2w_cart.xml",782,"game_data"],["mame/hash/princ.xml",3746,"game_data"],["mame/hash/pro128_cart.xml",1868,"game_data"],["mame/hash/pro128_cass.xml",81276,"game_data"],["mame/hash/pro128_flop.xml",1233,"game_data"],["mame/hash/prof180.xml",1181,"game_data"],["mame/hash/prof80.xml",865,"game_data"],["mame/hash/psi98.xml",1275,"game_data"],["mame/hash/psion1.xml",3874,"game_data"],["mame/hash/psion2.xml",79959,"game_data"],["mame/hash/psion_flop.xml",1096,"game_data"],["mame/hash/psion_quik.xml",5838,"game_data"],["mame/hash/psion_ssd.xml",21905,"game_data"],["mame/hash/psx.xml",3919227,"game_data"],["mame/hash/pt68k2.xml",555,"game_data"],["mame/hash/pv1000.xml",12768,"game_data"],["mame/hash/px4_cart.xml",3064,"game_data"],["mame/hash/px8_cart.xml",7208,"game_data"],["mame/hash/pyl601.xml",5562,"game_data"],["mame/hash/ql_cart.xml",1279,"game_data"],["mame/hash/ql_cass.xml",1897,"game_data"],["mame/hash/ql_flop.xml",2234,"game_data"],["mame/hash/quizwiz.xml",3091,"game_data"],["mame/hash/qx10_flop.xml",3250,"game_data"],["mame/hash/r8_card.xml",4710,"game_data"],["mame/hash/r9751.xml",10712,"game_data"],["mame/hash/radio86_cart.xml",539,"game_data"],["mame/hash/radio86_cass.xml",36046,"game_data"],["mame/hash/rainbow.xml",10136,"game_data"],["mame/hash/ramstar.xml",6165,"game_data"],["mame/hash/roland_tnsc1.xml",4197,"game_data"],["mame/hash/roland_tnsc2.xml",3332,"game_data"],["mame/hash/rwtrntcs.xml",1090,"game_data"],["mame/hash/rz1_cass.xml",2687,"game_data"],["mame/hash/s2000_flop.xml",603,"game_data"],["mame/hash/s3000_cdrom.xml",3926,"game_data"],["mame/hash/sagafox.xml",531,"game_data"],["mame/hash/sage2.xml",4188,"game_data"],["mame/hash/saitek_egr.xml",2069,"game_data"],["mame/hash/saitek_kso.xml",1105,"game_data"],["mame/hash/saitek_schess.xml",1334,"game_data"],["mame/hash/samcoupe_cass.xml",1614,"game_data"],["mame/hash/samcoupe_flop.xml",21118,"game_data"],["mame/hash/sat_cart.xml",6332,"game_data"],["mame/hash/sat_vccart.xml",8717,"game_data"],["mame/hash/saturn.xml",1716943,"game_data"],["mame/hash/sawatte.xml",10312,"game_data"],["mame/hash/sb80_flop.xml",2853,"game_data"],["mame/hash/sbrain.xml",525,"game_data"],["mame/hash/sc3000_cart.xml",16483,"game_data"],["mame/hash/sc3000_cass.xml",19145,"game_data"],["mame/hash/sd132_flop.xml",2596,"game_data"],["mame/hash/sd1_flop.xml",568,"game_data"],["mame/hash/sdk85.xml",1175,"game_data"],["mame/hash/sf7000.xml",10494,"game_data"],["mame/hash/sg1000.xml",118348,"game_data"],["mame/hash/sgi_mips.xml",242357,"game_data"],["mame/hash/sgi_mips_hdd.xml",2337,"game_data"],["mame/hash/sgx.xml",2705,"game_data"],["mame/hash/singingstarkaraoke_cart.xml",1479,"game_data"],["mame/hash/sitcom.xml",6387,"game_data"],["mame/hash/smartcycle_cart.xml",6112,"game_data"],["mame/hash/smarttv_cart.xml",6900,"game_data"],["mame/hash/smc777.xml",71270,"game_data"],["mame/hash/snes.xml",2841229,"game_data"],["mame/hash/snes_bspack.xml",213194,"game_data"],["mame/hash/snes_strom.xml",8678,"game_data"],["mame/hash/snes_vkun.xml",1383,"game_data"],["mame/hash/snotec.xml",8033,"game_data"],["mame/hash/snread.xml",3415,"game_data"],["mame/hash/snspell.xml",5704,"game_data"],["mame/hash/softbox.xml",996,"game_data"],["mame/hash/softwarelist.dtd",2483,"game_data"],["mame/hash/sol20_cass.xml",35251,"game_data"],["mame/hash/sony_news.xml",4134,"game_data"],["mame/hash/sorcerer_cart.xml",7212,"game_data"],["mame/hash/sorcerer_cass.xml",58610,"game_data"],["mame/hash/sorcerer_flop.xml",2033,"game_data"],["mame/hash/spc1000_cass.xml",44923,"game_data"],["mame/hash/spc1500_cass.xml",1620,"game_data"],["mame/hash/special_cass.xml",56426,"game_data"],["mame/hash/special_flop.xml",903,"game_data"],["mame/hash/specnext_sd.xml",1136,"game_data"],["mame/hash/specpls3_flop.xml",813283,"game_data"],["mame/hash/spectrum_betadisc_flop.xml",51683,"game_data"],["mame/hash/spectrum_cart.xml",9023,"game_data"],["mame/hash/spectrum_cass.xml",6897158,"game_data"],["mame/hash/spectrum_flop_opus.xml",30500,"game_data"],["mame/hash/spectrum_mgt_flop.xml",4836,"game_data"],["mame/hash/spectrum_microdrive.xml",28256,"game_data"],["mame/hash/spectrum_wafadrive.xml",701,"game_data"],["mame/hash/sprachmg.xml",4905,"game_data"],["mame/hash/squale_cart.xml",2249,"game_data"],["mame/hash/ssem_quik.xml",4598,"game_data"],["mame/hash/st_cart.xml",3348,"game_data"],["mame/hash/st_flop.xml",210727,"game_data"],["mame/hash/st_flop_demos.xml",3744,"game_data"],["mame/hash/stepone_flop.xml",4628,"game_data"],["mame/hash/studio2.xml",32602,"game_data"],["mame/hash/sun_sparc.xml",4191,"game_data"],["mame/hash/super6.xml",6296,"game_data"],["mame/hash/super80_cass.xml",102426,"game_data"],["mame/hash/super80_flop.xml",1706,"game_data"],["mame/hash/super_tv_pc_cart.xml",3902,"game_data"],["mame/hash/superpet_flop.xml",13019,"game_data"],["mame/hash/supracan.xml",10722,"game_data"],["mame/hash/sv8000.xml",3267,"game_data"],["mame/hash/svi318_cart.xml",4379,"game_data"],["mame/hash/svi318_cass.xml",86966,"game_data"],["mame/hash/svi318_flop.xml",2959,"game_data"],["mame/hash/svision.xml",29557,"game_data"],["mame/hash/svmu.xml",29673,"game_data"],["mame/hash/t1000.xml",7944,"game_data"],["mame/hash/tandy200.xml",1727,"game_data"],["mame/hash/tandy2k.xml",4874,"game_data"],["mame/hash/tandy6k.xml",4732,"game_data"],["mame/hash/tc4.xml",1582,"game_data"],["mame/hash/tdv2324.xml",3160,"game_data"],["mame/hash/tek4052_cart.xml",2734,"game_data"],["mame/hash/telestory_cart.xml",9328,"game_data"],["mame/hash/teradrive_flop.xml",4861,"game_data"],["mame/hash/teradrive_hdd.xml",954,"game_data"],["mame/hash/tg16.xml",37822,"game_data"],["mame/hash/thinkpad8xx.xml",6558,"game_data"],["mame/hash/ti74_cart.xml",1611,"game_data"],["mame/hash/ti95_cart.xml",1071,"game_data"],["mame/hash/tiki100.xml",33003,"game_data"],["mame/hash/timex_cass.xml",53889,"game_data"],["mame/hash/timex_dock.xml",17721,"game_data"],["mame/hash/tmc600_quik.xml",1369,"game_data"],["mame/hash/tntell.xml",2942,"game_data"],["mame/hash/to770_cart.xml",772,"game_data"],["mame/hash/to770a_cart.xml",758,"game_data"],["mame/hash/to7_cart.xml",25832,"game_data"],["mame/hash/to7_cass.xml",305755,"game_data"],["mame/hash/to7_qd.xml",9433,"game_data"],["mame/hash/to8_cass.xml",6669,"game_data"],["mame/hash/to8_qd.xml",3289,"game_data"],["mame/hash/to_flop.xml",545143,"game_data"],["mame/hash/triton_rom.xml",532,"game_data"],["mame/hash/trs80m2.xml",9352,"game_data"],["mame/hash/trsm100.xml",5175,"game_data"],["mame/hash/tsconf.xml",16553,"game_data"],["mame/hash/ttwist_brainquest_cart.xml",682,"game_data"],["mame/hash/turboextreme_cart.xml",607,"game_data"],["mame/hash/tvc_cart.xml",5156,"game_data"],["mame/hash/tvc_cass.xml",97888,"game_data"],["mame/hash/tvc_flop.xml",326997,"game_data"],["mame/hash/tvdear.xml",1842,"game_data"],["mame/hash/tvgogo.xml",5603,"game_data"],["mame/hash/tvochken.xml",16440,"game_data"],["mame/hash/tx0_ptp.xml",6329,"game_data"],["mame/hash/u110_card.xml",8800,"game_data"],["mame/hash/unichamp.xml",1778,"game_data"],["mame/hash/ut88.xml",2584,"game_data"],["mame/hash/uzebox.xml",50778,"game_data"],["mame/hash/v1050_flop.xml",4387,"game_data"],["mame/hash/v1050_hdd.xml",1054,"game_data"],["mame/hash/vbaby_cart.xml",4246,"game_data"],["mame/hash/vboy.xml",23269,"game_data"],["mame/hash/vc4000.xml",17828,"game_data"],["mame/hash/vector06_cart.xml",679,"game_data"],["mame/hash/vector06_flop.xml",7730,"game_data"],["mame/hash/vfxsd_flop.xml",994,"game_data"],["mame/hash/vgmplay.xml",19970196,"game_data"],["mame/hash/vic10.xml",13030,"game_data"],["mame/hash/vic1001_cart.xml",159400,"game_data"],["mame/hash/vic1001_cass.xml",1136,"game_data"],["mame/hash/vic1001_flop.xml",3222,"game_data"],["mame/hash/victor9k_flop.xml",1056,"game_data"],["mame/hash/vidbrain.xml",9944,"game_data"],["mame/hash/videoart.xml",3840,"game_data"],["mame/hash/videopac.xml",107901,"game_data"],["mame/hash/vii.xml",903,"game_data"],["mame/hash/vip.xml",981,"game_data"],["mame/hash/visicom.xml",3074,"game_data"],["mame/hash/vixen.xml",7617,"game_data"],["mame/hash/vsmile_cd.xml",28424,"game_data"],["mame/hash/vsmileb_cart.xml",20217,"game_data"],["mame/hash/vtech2_cass.xml",2383,"game_data"],["mame/hash/vtech_innotab_cart.xml",10101,"game_data"],["mame/hash/vtech_innotv_cart.xml",2019,"game_data"],["mame/hash/vtech_storio_cart.xml",13859,"game_data"],["mame/hash/wangpc.xml",2810,"game_data"],["mame/hash/waveterm.xml",2024,"game_data"],["mame/hash/wicat.xml",10200,"game_data"],["mame/hash/wizard_cart.xml",6438,"game_data"],["mame/hash/wmbullet.xml",1680,"game_data"],["mame/hash/wren_flop.xml",2590,"game_data"],["mame/hash/wscolor.xml",103090,"game_data"],["mame/hash/wswan.xml",145839,"game_data"],["mame/hash/x07_card.xml",698,"game_data"],["mame/hash/x07_cass.xml",51019,"game_data"],["mame/hash/x1_cass.xml",76089,"game_data"],["mame/hash/x1_flop.xml",249940,"game_data"],["mame/hash/x37_flop.xml",6292,"game_data"],["mame/hash/x37_hdd.xml",530,"game_data"],["mame/hash/x68k_flop.xml",1441600,"game_data"],["mame/hash/xerox820.xml",5473,"game_data"],["mame/hash/xerox820ii.xml",4778,"game_data"],["mame/hash/yeno_laptop_cart.xml",1742,"game_data"],["mame/hash/z80clock.xml",9043,"game_data"],["mame/hash/z80ne_cass.xml",42440,"game_data"],["mame/hash/z80ne_flop.xml",30301,"game_data"],["mame/hash/z88_cart.xml",24642,"game_data"],["mame/hash/zorba.xml",33048,"game_data"],["mame/hash/zx80_cass.xml",3169,"game_data"],["mame/hash/zx81_cass.xml",474158,"game_data"],["mame/plugins/README.md",88,"game_data"],["mame/plugins/autofire/autofire_menu.lua",11558,"game_data"],["mame/plugins/autofire/autofire_save.lua",2817,"game_data"],["mame/plugins/autofire/init.lua",3223,"game_data"],["mame/plugins/autofire/plugin.json",162,"game_data"],["mame/plugins/boot.lua",990,"game_data"],["mame/plugins/cheat/cheat_json.lua",198,"game_data"],["mame/plugins/cheat/cheat_simple.lua",10784,"game_data"],["mame/plugins/cheat/cheat_xml.lua",7419,"game_data"],["mame/plugins/cheat/init.lua",26494,"game_data"],["mame/plugins/cheat/plugin.json",149,"game_data"],["mame/plugins/cheat/xml_to_json.lua",252,"game_data"],["mame/plugins/cheatfind/init.lua",35221,"game_data"],["mame/plugins/cheatfind/plugin.json",168,"game_data"],["mame/plugins/commonui/init.lua",5312,"game_data"],["mame/plugins/commonui/plugin.json",154,"game_data"],["mame/plugins/console/init.lua",8744,"game_data"],["mame/plugins/console/plugin.json",153,"game_data"],["mame/plugins/data/button_char.lua",7593,"game_data"],["mame/plugins/data/data_command.lua",635,"game_data"],["mame/plugins/data/data_gameinit.lua",466,"game_data"],["mame/plugins/data/data_hiscore.lua",41388,"game_data"],["mame/plugins/data/data_history.lua",5235,"game_data"],["mame/plugins/data/data_mameinfo.lua",908,"game_data"],["mame/plugins/data/data_marp.lua",3763,"game_data"],["mame/plugins/data/data_messinfo.lua",912,"game_data"],["mame/plugins/data/data_story.lua",792,"game_data"],["mame/plugins/data/data_sysinfo.lua",475,"game_data"],["mame/plugins/data/database.lua",3853,"game_data"],["mame/plugins/data/init.lua",1938,"game_data"],["mame/plugins/data/load_dat.lua",6420,"game_data"],["mame/plugins/data/plugin.json",146,"game_data"],["mame/plugins/discord/init.lua",2881,"game_data"],["mame/plugins/discord/plugin.json",155,"game_data"],["mame/plugins/dummy/init.lua",881,"game_data"],["mame/plugins/dummy/plugin.json",167,"game_data"],["mame/plugins/gdbstub/init.lua",7838,"game_data"],["mame/plugins/gdbstub/plugin.json",154,"game_data"],["mame/plugins/hiscore/hiscore.dat",314161,"game_data"],["mame/plugins/hiscore/init.lua",10287,"game_data"],["mame/plugins/hiscore/plugin.json",167,"game_data"],["mame/plugins/hiscore/sort_hiscore.lua",4447,"game_data"],["mame/plugins/inputmacro/init.lua",3797,"game_data"],["mame/plugins/inputmacro/inputmacro_menu.lua",20962,"game_data"],["mame/plugins/inputmacro/inputmacro_persist.lua",3719,"game_data"],["mame/plugins/inputmacro/plugin.json",171,"game_data"],["mame/plugins/json/LICENSE",1079,"game_data"],["mame/plugins/json/README.md",45,"game_data"],["mame/plugins/json/init.lua",21505,"game_data"],["mame/plugins/json/plugin.json",136,"game_data"],["mame/plugins/keypress/init.lua",1162,"game_data"],["mame/plugins/keypress/plugin.json",195,"game_data"],["mame/plugins/layout/init.lua",2376,"game_data"],["mame/plugins/layout/plugin.json",157,"game_data"],["mame/plugins/offscreenreload/init.lua",2415,"game_data"],["mame/plugins/offscreenreload/offscreenreload_menu.lua",11498,"game_data"],["mame/plugins/offscreenreload/offscreenreload_persist.lua",3471,"game_data"],["mame/plugins/offscreenreload/plugin.json",189,"game_data"],["mame/plugins/plugin.schema",655,"game_data"],["mame/plugins/portname/init.lua",5173,"game_data"],["mame/plugins/portname/plugin.json",170,"game_data"],["mame/plugins/timecode/init.lua",11542,"game_data"],["mame/plugins/timecode/plugin.json",175,"game_data"],["mame/plugins/timer/init.lua",2359,"game_data"],["mame/plugins/timer/plugin.json",161,"game_data"],["mame/plugins/timer/timer_persist.lua",7109,"game_data"],["mame/plugins/vector/init.lua",1443,"game_data"],["mame/plugins/vector/plugin.json",182,"game_data"],["mame/plugins/xml/LICENSE.txt",1061,"game_data"],["mame/plugins/xml/init.lua",12842,"game_data"],["mame/plugins/xml/plugin.json",146,"game_data"],["mame/samples/floppy/35_seek_12ms.wav",26540,"game_data"],["mame/samples/floppy/35_seek_20ms.wav",44144,"game_data"],["mame/samples/floppy/35_seek_2ms.wav",7450,"game_data"],["mame/samples/floppy/35_seek_6ms.wav",22230,"game_data"],["mame/samples/floppy/35_spin_empty.wav",17708,"game_data"],["mame/samples/floppy/35_spin_end.wav",17684,"game_data"],["mame/samples/floppy/35_spin_loaded.wav",17708,"game_data"],["mame/samples/floppy/35_spin_start_empty.wav",17708,"game_data"],["mame/samples/floppy/35_spin_start_loaded.wav",35308,"game_data"],["mame/samples/floppy/35_step_1_1.wav",6878,"game_data"],["mame/samples/floppy/525_seek_12ms.wav",22764,"game_data"],["mame/samples/floppy/525_seek_20ms.wav",30060,"game_data"],["mame/samples/floppy/525_seek_6ms.wav",14860,"game_data"],["mame/samples/floppy/525_spin_empty.wav",8864,"game_data"],["mame/samples/floppy/525_spin_end.wav",8864,"game_data"],["mame/samples/floppy/525_spin_loaded.wav",17708,"game_data"],["mame/samples/floppy/525_spin_start_empty.wav",11180,"game_data"],["mame/samples/floppy/525_spin_start_loaded.wav",17708,"game_data"],["mame/samples/floppy/525_step_1_1.wav",6628,"game_data"],["mame2000/cheat/cheat.dat",7971360,"game_data"],["mame2003-plus/artwork/blueshrk.zip",925914,"game_data"],["mame2003-plus/artwork/dotron.zip",2010009,"game_data"],["mame2003-plus/artwork/frogs.zip",2832731,"game_data"],["mame2003-plus/artwork/invaders.zip",4324198,"game_data"],["mame2003-plus/artwork/omegrace.zip",1754523,"game_data"],["mame2003-plus/artwork/skydiver.zip",117241,"game_data"],["mame2003-plus/artwork/solarq.zip",1342645,"game_data"],["mame2003-plus/artwork/warrior.zip",1125335,"game_data"],["mame2003-plus/cheat.dat",7971360,"game_data"],["mame2003-plus/hiscore.dat",131926,"game_data"],["mame2003-plus/history.dat",38635890,"game_data"],["mame2003-plus/mameinfo.dat",24837237,"game_data"],["mame2003/cheat.dat",7971360,"game_data"],["mame2003/hiscore.dat",215475,"game_data"],["mame2003/history.dat",38635890,"game_data"],["mame2003/mameinfo.dat",24837237,"game_data"],["mame2010/cheat.zip",24981772,"game_data"],["mame2010/hiscore.dat",202298,"game_data"],["mc1502_rom.zip",25819,"bios"],["mc_mk4_hopper.zip",791,"bios"],["mcpx_1.0.bin",512,"bios"],["md_kbd.zip",1044,"bios"],["md_rom_svp.zip",1263,"bios"],["mdisplay3.zip",14234,"bios"],["mg1_kbd_device.zip",740,"bios"],["mga2064w.zip",86678,"bios"],["microtan_kbd_mt009.zip",376,"bios"],["microtouch.zip",41890,"bios"],["midcsd.zip",222,"bios"],["midssio.zip",163,"bios"],["mindset_sound_module.zip",1102,"bios"],["minichif.zip",22917,"bios"],["mks3.zip",2351,"bios"],["mm1kb.zip",499,"bios"],["mm5740.zip",212,"bios"],["mockingboardd.zip",1861,"bios"],["model1io.zip",4700,"bios"],["model1io2.zip",17058,"bios"],["mpcb828.zip",167,"bios"],["mpcb896.zip",168,"bios"],["mpcb963.zip",164,"bios"],["mpcba79.zip",168,"bios"],["mpcbb68.zip",3163,"bios"],["mpcbb92.zip",3163,"bios"],["mpeg_card.bin",524288,"bios"],["mpf1_epb.zip",1497,"bios"],["mpf1_epb_ibp.zip",2667,"bios"],["mpf1_iom_ip.zip",1166,"bios"],["mpf1_prt.zip",2971,"bios"],["mpf1_prt_ip.zip",2760,"bios"],["mpf1_sgb.zip",2402,"bios"],["mpf1_ssb.zip",3448,"bios"],["mpf1_ssb_ip.zip",4164,"bios"],["mpf1_tva_ip.zip",1790,"bios"],["mpf1_vid.zip",2320,"bios"],["mpr-17933.bin",524288,"bios"],["mpr-18100.bin",524288,"bios"],["mpr-18811-mx.ic1",2097152,"bios"],["mpr-19367-mx.ic1",2097152,"bios"],["mps1200.zip",21255,"bios"],["mps1250.zip",26948,"bios"],["mpu401.zip",3573,"bios"],["mr9735_002.zip",542,"bios"],["ms7004.zip",1446,"bios"],["msdsd1.zip",11813,"bios"],["msdsd2.zip",12220,"bios"],["msm6222b01.zip",972,"bios"],["msmt070.zip",202,"bios"],["msmt071.zip",170,"bios"],["msmt081.zip",170,"bios"],["msmt094.zip",110283,"bios"],["msx_cart_bm_012.zip",5300,"bios"],["msx_cart_easispeech.zip",2011,"bios"],["msx_cart_sfg01.zip",10912,"bios"],["msx_cart_sfg05.zip",69473,"bios"],["msx_cart_skw01.zip",111704,"bios"],["msx_cart_sunrise_ataide.zip",158361,"bios"],["msx_moonsound.zip",1922475,"bios"],["mt32-roms/cm32l_control.rom",65536,"bios"],["mt32-roms/mt32_control.rom",65536,"bios"],["mt32-roms/pcm_cm32l.rom",1048576,"bios"],["mt32-roms/pcm_mt32.rom",524288,"bios"],["mtx_cfx.zip",54548,"bios"],["mtx_sdxbas.zip",10404,"bios"],["mtx_sdxcpm.zip",4710,"bios"],["mu5lcd.zip",12098,"bios"],["mulcd.zip",40392,"bios"],["mvme120.zip",47505,"bios"],["mvme121.zip",142638,"bios"],["mvme122.zip",142638,"bios"],["mvme123.zip",142638,"bios"],["mvme147.zip",251991,"bios"],["mvme180.zip",96310,"bios"],["mvme181.zip",127740,"bios"],["mvme187.zip",222085,"bios"],["mvme327a.zip",39770,"bios"],["mvme328.zip",47299,"bios"],["mvme350.zip",8228,"bios"],["mz1e30.zip",13614,"bios"],["mz1p16.zip",3679,"bios"],["mzr8105.zip",10272,"bios"],["nabupc_keyboard.zip",1348,"bios"],["namco50.zip",898,"bios"],["namco51.zip",716,"bios"],["namco52.zip",389,"bios"],["namco53.zip",675,"bios"],["namco54.zip",592,"bios"],["namco62.zip",645,"bios"],["namco_amc.zip",3052,"bios"],["namco_asca1.zip",130552,"bios"],["namco_asca3.zip",130552,"bios"],["namco_asca3a.zip",130552,"bios"],["namco_asca5.zip",130552,"bios"],["namco_csz1.zip",2730,"bios"],["namco_cyberlead.zip",130552,"bios"],["namco_cyberlead_led.zip",80055,"bios"],["namco_cyberleada.zip",130552,"bios"],["namco_emio102.zip",130552,"bios"],["namco_fca10.zip",130552,"bios"],["namco_fca11.zip",130552,"bios"],["namco_fcb.zip",130552,"bios"],["namco_tssio.zip",130552,"bios"],["namco_xmiu1.zip",130552,"bios"],["namcoc65.zip",2163,"bios"],["namcoc67.zip",6552,"bios"],["namcoc68.zip",1721,"bios"],["namcoc69.zip",7771,"bios"],["namcoc70.zip",7822,"bios"],["namcoc71.zip",2756,"bios"],["namcoc74.zip",6936,"bios"],["namcoc75.zip",8709,"bios"],["namcoc76.zip",9579,"bios"],["nanoreseau_mo.zip",1937,"bios"],["nanoreseau_to.zip",1970,"bios"],["nb_aenet.zip",400,"bios"],["nb_amc3b.zip",417,"bios"],["nb_btbug.zip",91614,"bios"],["nb_c264.zip",6489,"bios"],["nb_laserview.zip",4885,"bios"],["nb_m2hr.zip",3538,"bios"],["nb_m2vc.zip",2106,"bios"],["nb_mdc48.zip",6576,"bios"],["nb_pcs8.zip",9570,"bios"],["nb_qdlink.zip",3316,"bios"],["nb_rtpd.zip",1828,"bios"],["nb_sp8s3.zip",23241,"bios"],["nb_spdq.zip",39282,"bios"],["nb_thungx.zip",18290,"bios"],["nb_thungx16.zip",18318,"bios"],["nb_vikbw.zip",2162,"bios"],["nb_wkstn.zip",2715,"bios"],["nb_wspt.zip",2646,"bios"],["ncr53c825_pci.zip",10043,"bios"],["nds7.bin",16384,"bios"],["nds9.bin",4096,"bios"],["nds_sd_card.bin",1048576,"bios"],["neocd.zip",429431,"bios"],["neocd/000-lo.lo",131072,"bios"],["neocd/front-sp1.bin",524288,"bios"],["neocd/neocd.bin",524288,"bios"],["neocd/neocd_f.rom",524288,"bios"],["neocd/neocd_sf.rom",524288,"bios"],["neocd/neocd_st.rom",524288,"bios"],["neocd/neocd_sz.rom",524288,"bios"],["neocd/neocd_t.rom",524288,"bios"],["neocd/neocd_z.rom",524288,"bios"],["neocd/ng-lo.rom",65536,"bios"],["neocd/top-sp1.bin",524288,"bios"],["neocd/uni-bioscd.rom",524288,"bios"],["neocdz.zip",955352,"bios"],["neocdz.zip",1181333,"bios"],["neogeo.zip",1859335,"bios"],["neon250.zip",20999,"bios"],["nes.pal",192,"bios"],["nes_rob.zip",637,"bios"],["nestopia/samples/ftaerobi/00.wav",378030,"game_data"],["nestopia/samples/ftaerobi/01.wav",145582,"game_data"],["nestopia/samples/ftaerobi/02.wav",114606,"game_data"],["nestopia/samples/ftaerobi/03.wav",311470,"game_data"],["nestopia/samples/ftaerobi/04.wav",94382,"game_data"],["nestopia/samples/ftaerobi/05.wav",95404,"game_data"],["nestopia/samples/ftaerobi/06.wav",98476,"game_data"],["nestopia/samples/ftaerobi/07.wav",90284,"game_data"],["nestopia/samples/moepro/00.wav",60848,"game_data"],["nestopia/samples/moepro/01.wav",37296,"game_data"],["nestopia/samples/moepro/02.wav",45742,"game_data"],["nestopia/samples/moepro/03.wav",75950,"game_data"],["nestopia/samples/moepro/04.wav",59056,"game_data"],["nestopia/samples/moepro/05.wav",52402,"game_data"],["nestopia/samples/moepro/06.wav",25644,"game_data"],["nestopia/samples/moepro/07.wav",58796,"game_data"],["nestopia/samples/moepro/08.wav",61104,"game_data"],["nestopia/samples/moepro/09.wav",79024,"game_data"],["nestopia/samples/moepro/10.wav",55986,"game_data"],["nestopia/samples/moepro/11.wav",59310,"game_data"],["nestopia/samples/moepro/12.wav",33198,"game_data"],["nestopia/samples/moepro/13.wav",49714,"game_data"],["nestopia/samples/moepro/14.wav",35246,"game_data"],["nestopia/samples/moepro/15.wav",267952,"game_data"],["nestopia/samples/moepro88/00.wav",25132,"game_data"],["nestopia/samples/moepro88/01.wav",29874,"game_data"],["nestopia/samples/moepro88/02.wav",25454,"game_data"],["nestopia/samples/moepro88/03.wav",26028,"game_data"],["nestopia/samples/moepro88/04.wav",36144,"game_data"],["nestopia/samples/moepro88/05.wav",35884,"game_data"],["nestopia/samples/moepro88/06.wav",34990,"game_data"],["nestopia/samples/moepro88/07.wav",49580,"game_data"],["nestopia/samples/moepro88/08.wav",49966,"game_data"],["nestopia/samples/moepro88/09.wav",49716,"game_data"],["nestopia/samples/moepro88/10.wav",56752,"game_data"],["nestopia/samples/moepro88/11.wav",58542,"game_data"],["nestopia/samples/moepro88/12.wav",34994,"game_data"],["nestopia/samples/moepro88/13.wav",31410,"game_data"],["nestopia/samples/moepro88/14.wav",128176,"game_data"],["nestopia/samples/moepro88/15.wav",26416,"game_data"],["nestopia/samples/moepro88/16.wav",44,"game_data"],["nestopia/samples/moepro88/17.wav",25390,"game_data"],["nestopia/samples/moepro88/18.wav",28590,"game_data"],["nestopia/samples/moepro88/19.wav",269490,"game_data"],["nestopia/samples/mptennis/00.wav",44,"game_data"],["nestopia/samples/mptennis/01.wav",44,"game_data"],["nestopia/samples/mptennis/02.wav",58796,"game_data"],["nestopia/samples/mptennis/03.wav",57260,"game_data"],["nestopia/samples/mptennis/04.wav",42412,"game_data"],["nestopia/samples/mptennis/05.wav",39724,"game_data"],["nestopia/samples/mptennis/06.wav",82732,"game_data"],["nestopia/samples/mptennis/07.wav",58028,"game_data"],["nestopia/samples/mptennis/08.wav",66732,"game_data"],["nestopia/samples/mptennis/09.wav",57132,"game_data"],["nestopia/samples/mptennis/10.wav",50860,"game_data"],["nestopia/samples/mptennis/11.wav",53490,"game_data"],["nestopia/samples/mptennis/12.wav",54572,"game_data"],["nestopia/samples/mptennis/13.wav",271406,"game_data"],["nestopia/samples/mptennis/14.wav",46510,"game_data"],["nestopia/samples/mptennis/15.wav",41900,"game_data"],["nestopia/samples/mptennis/16.wav",47532,"game_data"],["nestopia/samples/mptennis/17.wav",31664,"game_data"],["nestopia/samples/mptennis/18.wav",58924,"game_data"],["nestopia/samples/mptennis/19.wav",44,"game_data"],["nestopia/samples/terao/00.wav",90798,"game_data"],["nestopia/samples/terao/01.wav",54700,"game_data"],["nestopia/samples/terao/02.wav",48044,"game_data"],["nestopia/samples/terao/03.wav",83634,"game_data"],["nestopia/samples/terao/04.wav",77740,"game_data"],["nestopia/samples/terao/05.wav",80812,"game_data"],["newbrain_eim.zip",24763,"bios"],["newbrain_fdc.zip",128088,"bios"],["nlq401.zip",7554,"bios"],["nmk004.zip",3556,"bios"],["nokia_crtc186.zip",5203,"bios"],["novell_dcb.zip",3425,"bios"],["np2/2608_bd.wav",19192,"bios"],["np2/2608_hh.wav",36722,"bios"],["np2/2608_rim.wav",5288,"bios"],["np2/2608_sd.wav",15558,"bios"],["np2/2608_tom.wav",23092,"bios"],["np2/2608_top.wav",57016,"bios"],["np2/bios.rom",98304,"bios"],["np2/bios9821.rom",8192,"bios"],["np2/font.bmp",524350,"bios"],["np2/sasi.rom",4096,"bios"],["np2/scsi.rom",8192,"bios"],["np2/sound.rom",16384,"bios"],["np2kai/2608_BD.WAV",19192,"bios"],["np2kai/2608_HH.WAV",36722,"bios"],["np2kai/2608_RIM.WAV",5288,"bios"],["np2kai/2608_SD.WAV",15558,"bios"],["np2kai/2608_TOM.WAV",23092,"bios"],["np2kai/2608_TOP.WAV",57016,"bios"],["np2kai/FONT.ROM",288768,"bios"],["np2kai/bios.rom",98304,"bios"],["np2kai/font.bmp",524350,"bios"],["np2kai/ide.rom",8192,"bios"],["np2kai/itf.rom",32768,"bios"],["np2kai/pci.rom",32768,"bios"],["np2kai/sasi.rom",4096,"bios"],["np2kai/scsi.rom",8192,"bios"],["np2kai/sound.rom",16384,"bios"],["np600a3.zip",8089,"bios"],["nss_tvinterface.zip",17125,"bios"],["nxengine/Doukutsu.exe",1478656,"game_data"],["nxengine/data/npc.tbl",8664,"game_data"],["nxengine/data/sprites.sif",59482,"game_data"],["nxengine/tilekey.dat",1028,"game_data"],["o2rom.bin",1024,"bios"],["omniwave.zip",880710,"bios"],["omti8621isa.zip",13582,"bios"],["openbios.bin",524288,"bios"],["opera-boot.bin",131072,"bios"],["oric_jasmin.zip",471,"bios"],["oric_microdisc.zip",3254,"bios"],["osa_analyst.zip",348004,"bios"],["osa_bforce.zip",26799,"bios"],["osa_maestro.zip",324479,"bios"],["osa_maestroa.zip",47396,"bios"],["osa_sparc.zip",348745,"bios"],["oti64111_pci.zip",19135,"bios"],["p1_fdc.zip",6158,"bios"],["p1_hdc.zip",6372,"bios"],["p1_rom.zip",5821,"bios"],["p72.zip",351169,"bios"],["pa7246.zip",63947,"bios"],["palmos40-en-m500.rom",2359296,"bios"],["palmos41-en-m515.rom",4194304,"bios"],["palmos52-en-t3.rom",16777216,"bios"],["palmos60-en-t3.rom",16777216,"bios"],["panafz1-kanji.bin",933636,"bios"],["panafz1.bin",1048576,"bios"],["panafz10-norsa.bin",1048576,"bios"],["panafz10.bin",1048576,"bios"],["panafz10e-anvil-norsa.bin",1048576,"bios"],["panafz10e-anvil.bin",1048576,"bios"],["panafz10ja-anvil-kanji.bin",1048576,"bios"],["panafz1j-kanji.bin",1048576,"bios"],["panafz1j-norsa.bin",1048576,"bios"],["panafz1j.bin",1048576,"bios"],["partner_gdp.zip",1917,"bios"],["pc1512kb.zip",733,"bios"],["pc1640_iga.zip",8824,"bios"],["pc6022.zip",3694,"bios"],["pc80s31.zip",3242,"bios"],["pc80s31k.zip",7153,"bios"],["pc88va2_fd_if.zip",3891,"bios"],["pc9801_14.zip",5571,"bios"],["pc9801_26.zip",36650,"bios"],["pc9801_27.zip",2700,"bios"],["pc9801_55l.zip",4654,"bios"],["pc9801_55u.zip",4653,"bios"],["pc9801_86.zip",22165,"bios"],["pc98_fdd_2dd.zip",1959,"bios"],["pc98_fdd_2hd.zip",2702,"bios"],["pc98_otomichan_kai.zip",116066,"bios"],["pcd_kbd.zip",2572,"bios"],["pcd_video.zip",612,"bios"],["pcfx.rom",1048576,"bios"],["pcfxbios.bin",1048576,"bios"],["pcfxga.rom",1048576,"bios"],["pcfxv101.bin",1048576,"bios"],["pcsx2/bios/SCPH-10000.MEC",4,"bios"],["pcsx2/bios/SCPH-10000.bin",4194304,"bios"],["pcsx2/bios/SCPH-30004R.bin",4194304,"bios"],["pcsx2/bios/SCPH-39001.bin",4194304,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.BIN",4194304,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.NVM",1024,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.ROM1",524288,"bios"],["pcsx2/bios/SCPH-50009_BIOS_V10_CHN_190.ROM2",524288,"bios"],["pcsx2/bios/SCPH-70004.BIN",4194304,"bios"],["pcsx2/bios/SCPH-70004.ROM1",524288,"bios"],["pcsx2/bios/SCPH-70006_BIOS_V12_HK_200.NVM",1024,"bios"],["pcsx2/bios/SCPH-70008_BIOS_V12_RUS_200.BIN",4194304,"bios"],["pcsx2/bios/SCPH-70008_BIOS_V12_RUS_200.NVM",1024,"bios"],["pcsx2/bios/SCPH-75008_BIOS_V14_RUS_220.NVM",1024,"bios"],["pcsx2/bios/SCPH-77008_BIOS_V15_RUS_220.NVM",1024,"bios"],["pcsx2/bios/SCPH-90006_BIOS_VX_HK _230.NVM",1024,"bios"],["pcsx2/bios/SCPH-90006_BIOS_VX_HK _230.ROM1",524288,"bios"],["pcsx2/bios/SCPH30004R.nvm",1024,"bios"],["pcsx2/bios/ps2-0100j-20000117.bin",4194304,"bios"],["pcsx2/bios/ps2-0100jd-20000117.bin",4194304,"bios"],["pcsx2/bios/ps2-0101j-20000217.bin",4194304,"bios"],["pcsx2/bios/ps2-0101jd-20000217.bin",4194304,"bios"],["pcsx2/bios/ps2-0101xd-20000224.bin",4194304,"bios"],["pcsx2/bios/ps2-0110a-20000727.bin",4194304,"bios"],["pcsx2/bios/ps2-0110ad-20000727.bin",4194304,"bios"],["pcsx2/bios/ps2-0120a-20000902.bin",4194304,"bios"],["pcsx2/bios/ps2-0120e-20000902.bin",4194304,"bios"],["pcsx2/bios/ps2-0120ed-20000902-20030110.bin",4194304,"bios"],["pcsx2/bios/ps2-0120ed-20000902.bin",4194304,"bios"],["pcsx2/bios/ps2-0120j-20001027-185015.bin",4194304,"bios"],["pcsx2/bios/ps2-0120j-20001027-191435.bin",4194304,"bios"],["pcsx2/bios/ps2-0150a-20001228.bin",4194304,"bios"],["pcsx2/bios/ps2-0150ad-20001228-20030520.bin",4194304,"bios"],["pcsx2/bios/ps2-0150e-20001228.bin",4194304,"bios"],["pcsx2/bios/ps2-0150ed-20001228-20030520.bin",4194304,"bios"],["pcsx2/bios/ps2-0150j-20010118.bin",4194304,"bios"],["pcsx2/bios/ps2-0150jd-20010118.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20010427.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20010704.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20011004.bin",4194304,"bios"],["pcsx2/bios/ps2-0160a-20020207.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20010704.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20011004.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20020319.bin",4194304,"bios"],["pcsx2/bios/ps2-0160e-20020426.bin",4194304,"bios"],["pcsx2/bios/ps2-0160h-20010730.bin",4194304,"bios"],["pcsx2/bios/ps2-0160h-20020426.bin",4194304,"bios"],["pcsx2/bios/ps2-0160h-20030602.bin",4194304,"bios"],["pcsx2/bios/ps2-0160j-20010427.bin",4194304,"bios"],["pcsx2/bios/ps2-0160j-20011004.bin",4194304,"bios"],["pcsx2/bios/ps2-0160j-20020426.bin",4194304,"bios"],["pcsx2/bios/ps2-0170a-20030325.bin",4194304,"bios"],["pcsx2/bios/ps2-0170ad-20030325.bin",4194304,"bios"],["pcsx2/bios/ps2-0170e-20030227.bin",4194304,"bios"],["pcsx2/bios/ps2-0170ed-20030227.bin",4194304,"bios"],["pcsx2/bios/ps2-0170j-20030206.bin",4194304,"bios"],["pcsx2/bios/ps2-0170jd-20030206.bin",4194304,"bios"],["pcsx2/bios/ps2-0180cd-20030224.bin",4194304,"bios"],["pcsx2/bios/ps2-0180j-20031028.bin",4194304,"bios"],["pcsx2/bios/ps2-0190a-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190a-20040329.bin",4194304,"bios"],["pcsx2/bios/ps2-0190ad-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190c-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190cd-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190e-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190e-20030822.bin",4194304,"bios"],["pcsx2/bios/ps2-0190h-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190j-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190j-20030822.bin",4194304,"bios"],["pcsx2/bios/ps2-0190k-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0190r-20030623.bin",4194304,"bios"],["pcsx2/bios/ps2-0200a-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200ad-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200e-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200ed-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200h-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0200j-20040614.bin",4194304,"bios"],["pcsx2/bios/ps2-0210j-20040917.bin",4194304,"bios"],["pcsx2/bios/ps2-0220a-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220a-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220a-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220ad-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220ad-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220e-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220e-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220e-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220h-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220h-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220h-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220j-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220j-20060210.bin",4194304,"bios"],["pcsx2/bios/ps2-0220j-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0220jd-20050620.bin",4194304,"bios"],["pcsx2/bios/ps2-0220jd-20060905.bin",4194304,"bios"],["pcsx2/bios/ps2-0230a-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0230a-20080220.nvm",1024,"bios"],["pcsx2/bios/ps2-0230e-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0230h-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0230j-20080220.bin",4194304,"bios"],["pcsx2/bios/ps2-0250e-20100415.bin",4194304,"bios"],["pcsx2/bios/ps2-0250j-20100415.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-110u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-120e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-120u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-130e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-130u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-200j.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-210e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-210j.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-210u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-212g.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-212u.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-213e.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-215g.bin",2097152,"bios"],["pcsx2/bios/ps2-dvd-300e.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-300u.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-302c.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-302e.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-302u.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-310.bin",4194304,"bios"],["pcsx2/bios/ps2-dvd-311.bin",4194304,"bios"],["pcsx2/bios/ps2_scph50006.bin",4194304,"bios"],["pcsx2/bios/ps2_scph50008.bin",4194304,"bios"],["pcsx2/bios/scph30004fr.nvm",1024,"bios"],["pcsx2/bios/scph39001.nvm",1024,"bios"],["pcsx2/resources/GameIndex.yaml",1737799,"bios"],["pcx_video.zip",8874,"bios"],["pd32.zip",998,"bios"],["pd3_30hr.zip",4685,"bios"],["pd3_c264.zip",5773,"bios"],["pd3_lviw.zip",4760,"bios"],["pd3_mclr.zip",4568,"bios"],["pd3_pc16.zip",8246,"bios"],["pdc20262.zip",14359,"bios"],["pdc20268.zip",9340,"bios"],["pds30_emac.zip",346,"bios"],["pds_sefp.zip",14387,"bios"],["pdslc_macconlc.zip",419,"bios"],["pencil2_coleco.zip",5795,"bios"],["permedia2.zip",138948,"bios"],["pet_superpet.zip",15774,"bios"],["pg200.zip",549,"bios"],["plg100_vl.zip",333318,"bios"],["plg150_ap.zip",11733949,"bios"],["plus2-0.rom",16384,"bios"],["plus2-1.rom",16384,"bios"],["plus3-0.rom",16384,"bios"],["plus3-1.rom",16384,"bios"],["plus3-2.rom",16384,"bios"],["plus3-3.rom",16384,"bios"],["plus3e-0.rom",16384,"bios"],["plus3e-1.rom",16384,"bios"],["plus3e-2.rom",16384,"bios"],["plus3e-3.rom",16384,"bios"],["plusd.rom",8192,"bios"],["plutonia.wad",17420824,"game_data"],["polyvti.zip",859,"bios"],["pr8210.zip",2012,"bios"],["prav8ckb.zip",1204,"bios"],["prboom.wad",143312,"bios"],["profighterq.zip",11314,"bios"],["profighterqa.zip",17554,"bios"],["profighterqb.zip",62747,"bios"],["profighterx.zip",24041,"bios"],["promotion3210.zip",18077,"bios"],["ps1_rom.bin",524288,"bios"],["ps2_desr5000.bin",4194304,"bios"],["ps2_desr5500.bin",4194304,"bios"],["ps2_dtlh10000_0117.bin",4194304,"bios"],["ps2_dtlh10000_0217.bin",4194304,"bios"],["ps2_dtlh10000_0224.bin",4194304,"bios"],["ps2_dtlh30000.bin",4194304,"bios"],["ps2_dtlh30001.bin",4194304,"bios"],["ps2_dtlh30002.bin",4194304,"bios"],["ps2_dtlh30101.bin",4194304,"bios"],["ps2_dtlh30102_0902.bin",4194304,"bios"],["ps2_dtlh30102_1228.bin",4194304,"bios"],["ps2_dtlh50000.bin",4194304,"bios"],["ps2_dtlh50001_0325.bin",4194304,"bios"],["ps2_dtlh50001_0623.bin",4194304,"bios"],["ps2_dtlh50002.bin",4194304,"bios"],["ps2_dtlh50009.bin",4194304,"bios"],["ps2_dtlh70002.bin",4194304,"bios"],["ps2_dtlh75000.bin",4194304,"bios"],["ps2_dtlh75000a.bin",4194304,"bios"],["ps2_dtlh90000_a.bin",4194304,"bios"],["ps2_dtlh90000_j.bin",4194304,"bios"],["ps2_kdl22px300.bin",4194304,"bios"],["ps2_keybc.zip",3537,"bios"],["ps2_scph10000_0117.bin",4194304,"bios"],["ps2_scph10000_15000.bin",4194304,"bios"],["ps2_scph18000.bin",524288,"bios"],["ps2_scph18000_gh003.bin",4194304,"bios"],["ps2_scph18000_gh008.bin",4194304,"bios"],["ps2_scph30000_0427.bin",4194304,"bios"],["ps2_scph30000_35000.bin",4194304,"bios"],["ps2_scph30001_0727.bin",4194304,"bios"],["ps2_scph30001_0902.bin",4194304,"bios"],["ps2_scph30001_35001.bin",4194304,"bios"],["ps2_scph30001r_0427.bin",4194304,"bios"],["ps2_scph30001r_0704.bin",4194304,"bios"],["ps2_scph30001r_1004.bin",4194304,"bios"],["ps2_scph30002_0902.bin",4194304,"bios"],["ps2_scph30002_1228.bin",4194304,"bios"],["ps2_scph30002r_0704.bin",4194304,"bios"],["ps2_scph30002r_1004.bin",4194304,"bios"],["ps2_scph30003.bin",524288,"bios"],["ps2_scph30005r.bin",4194304,"bios"],["ps2_scph37000_39000.bin",4194304,"bios"],["ps2_scph39001.bin",4194304,"bios"],["ps2_scph39002.bin",4194304,"bios"],["ps2_scph39005.bin",4194304,"bios"],["ps2_scph39008.bin",4194304,"bios"],["ps2_scph50000_0822.bin",4194304,"bios"],["ps2_scph50000_55000.bin",4194304,"bios"],["ps2_scph50001_0325.bin",4194304,"bios"],["ps2_scph50001_0623.bin",4194304,"bios"],["ps2_scph50002_0227.bin",4194304,"bios"],["ps2_scph50002_0623.bin",4194304,"bios"],["ps2_scph50004_0822.bin",4194304,"bios"],["ps2_scph50005.bin",4194304,"bios"],["ps2_scph50006.bin",4194304,"bios"],["ps2_scph50008.bin",4194304,"bios"],["ps2_scph50009.bin",4194304,"bios"],["ps2_scph50011.bin",4194304,"bios"],["ps2_scph55000_0623.bin",4194304,"bios"],["ps2_scph70000.bin",4194304,"bios"],["ps2_scph70001.bin",4194304,"bios"],["ps2_scph70002.bin",4194304,"bios"],["ps2_scph70002_alt.bin",524288,"bios"],["ps2_scph70005.bin",4194304,"bios"],["ps2_scph75000.bin",4194304,"bios"],["ps2_scph75001.bin",4194304,"bios"],["ps2_scph75002.bin",4194304,"bios"],["ps2_scph75006.bin",4194304,"bios"],["ps2_scph77000.bin",4194304,"bios"],["ps2_scph77001.bin",4194304,"bios"],["ps2_scph77002.bin",4194304,"bios"],["ps2_scph77006.bin",4194304,"bios"],["ps2_scph79000_90000.bin",4194304,"bios"],["ps2_scph79001_90001.bin",4194304,"bios"],["ps2_scph79002_90002.bin",4194304,"bios"],["ps2_scph79006_90006.bin",4194304,"bios"],["ps2_scph90000_0220.bin",4194304,"bios"],["ps2_scph90001_0220.bin",4194304,"bios"],["ps2_scph90002_0220.bin",4194304,"bios"],["ps2_scph90005_0220.bin",4194304,"bios"],["psion_3fax.zip",394842,"bios"],["psion_3link_ser.zip",50609,"bios"],["psx_cd.zip",222667,"bios"],["psxgboost.zip",179516,"bios"],["psxonpsp660.bin",524288,"bios"],["pvga1a.zip",65692,"bios"],["pvga1a_jk.zip",103539,"bios"],["px320a.zip",1092458,"bios"],["qg640.zip",75366,"bios"],["ql_cumanafdi.zip",16173,"bios"],["ql_gold.zip",66339,"bios"],["ql_kdi.zip",6387,"bios"],["ql_mhd.zip",5988,"bios"],["ql_mpfdi.zip",5067,"bios"],["ql_opdbm.zip",27486,"bios"],["ql_pcmlqdi.zip",10237,"bios"],["ql_qldisc.zip",13083,"bios"],["ql_qplus4.zip",597,"bios"],["ql_qubide.zip",30514,"bios"],["ql_sdisk.zip",8903,"bios"],["ql_sqboard256.zip",541045,"bios"],["ql_sqboard512.zip",541045,"bios"],["ql_sqmouse.zip",61242,"bios"],["ql_sqmouse512.zip",541045,"bios"],["ql_trump.zip",121019,"bios"],["ql_trump256.zip",121019,"bios"],["ql_trump512.zip",121019,"bios"],["ql_trump768.zip",121019,"bios"],["qsound.zip",2654,"bios"],["qsound_hle.zip",2676,"bios"],["qts1.zip",25174,"bios"],["quadro.zip",51307,"bios"],["quasi88/N88EXT0.ROM",8192,"bios"],["quasi88/N88EXT1.ROM",8192,"bios"],["quasi88/N88EXT2.ROM",8192,"bios"],["quasi88/N88EXT3.ROM",8192,"bios"],["quasi88/disk.rom",2048,"bios"],["quasi88/font.rom",2048,"bios"],["quasi88/font2.rom",2048,"bios"],["quasi88/font3.rom",2048,"bios"],["quasi88/n88.rom",32768,"bios"],["quasi88/n88_0.rom",8192,"bios"],["quasi88/n88_1.rom",8192,"bios"],["quasi88/n88_2.rom",8192,"bios"],["quasi88/n88_3.rom",8192,"bios"],["quasi88/n88jisho.rom",524288,"bios"],["quasi88/n88knj1.rom",131072,"bios"],["quasi88/n88knj2.rom",131072,"bios"],["quasi88/n88n.rom",32768,"bios"],["quoth/pak0.pak",48226771,"game_data"],["quoth/pak1.pak",84961704,"game_data"],["quoth/pak2.pak",8021749,"game_data"],["qvision_wavestar.zip",4834,"bios"],["qx10_keyboard_ascii.zip",963,"bios"],["qx10_keyboard_hasci.zip",963,"bios"],["rageiidvd.zip",74874,"bios"],["rc2014_micro.zip",12592,"bios"],["rc2014_mini_cpm.zip",23836,"bios"],["rc2014_pagable_rom.zip",34021,"bios"],["rc2014_rom_ram_512k.zip",2572870,"bios"],["rc2014_switchable_rom.zip",42387,"bios"],["riva128.zip",60632,"bios"],["riva128zx.zip",59311,"bios"],["rivatnt.zip",82626,"bios"],["rivatnt2.zip",46394,"bios"],["rivatnt2_m64.zip",272160,"bios"],["rivatnt2_ultra.zip",24007,"bios"],["rm_mq2.zip",6064,"bios"],["robotron_k7070.zip",15464,"bios"],["robotron_k7071.zip",4152,"bios"],["rolm_pdc.zip",8595,"bios"],["rolm_smioc.zip",6192,"bios"],["rom.db",17742,"bios"],["rom.key",2069,"bios"],["roms/a2090a-combitec-turbo.rom",32768,"bios"],["roms/a2090a.rom",16384,"bios"],["roms/a2090b-combitec-turbo.rom",32768,"bios"],["roms/a2090b-combitec.rom",32768,"bios"],["roms/a2090b-macrosystem.rom",32768,"bios"],["roms/a2620-a2630-01.rom",65536,"bios"],["roms/a2620-a2630-02.rom",65536,"bios"],["roms/a2620-a2630-03.rom",65536,"bios"],["roms/a2620-a2630-04.rom",65536,"bios"],["roms/a2620-a2630-06.rom",65536,"bios"],["roms/a2620-a2630-07.rom",65536,"bios"],["roms/a4091-v40.13.rom",32768,"bios"],["roms/a4091-v40.4.rom",32768,"bios"],["roms/a4091-v40.9.rom",32768,"bios"],["roms/a590-a2091-guru-rom-v6.14.rom",32768,"bios"],["roms/a590-a2091-v4.4.rom",16384,"bios"],["roms/a590-a2091-v4.6.rom",16384,"bios"],["roms/a590-a2091-v5.92.rom",16384,"bios"],["roms/a590-a2091-v6.0.rom",16384,"bios"],["roms/a590-a2091-v6.1.rom",16384,"bios"],["roms/a590-a2091-v6.6.rom",16384,"bios"],["roms/a590-a2091-v7.0.rom",16384,"bios"],["roms/accessx-2000-v2.1.rom",32768,"bios"],["roms/accessx-500-2000-v2.1-descrambled.rom",32768,"bios"],["roms/accessx-500-v2.1.rom",32768,"bios"],["roms/action-cartridge-super-iv-pro-rom-v4.3.rom",170368,"bios"],["roms/action-replay-1200.rom",262144,"bios"],["roms/action-replay-mk-i-v1.00.rom",65536,"bios"],["roms/action-replay-mk-i-v1.50.rom",65536,"bios"],["roms/action-replay-mk-ii-v2.05.rom",131072,"bios"],["roms/action-replay-mk-ii-v2.12.rom",131072,"bios"],["roms/action-replay-mk-ii-v2.14.rom",131072,"bios"],["roms/action-replay-mk-iii-v3.09.rom",262144,"bios"],["roms/action-replay-mk-iii-v3.17.rom",262144,"bios"],["roms/adide-40-44-v33.rom",16384,"bios"],["roms/adide-40-44-v34.rom",16384,"bios"],["roms/alf-2.rom",65536,"bios"],["roms/alfapower-v6.10.rom",32768,"bios"],["roms/alfapower-v8.2.rom",32768,"bios"],["roms/alfapower-v8.3.rom",32768,"bios"],["roms/apollo-1240-1260.rom",131072,"bios"],["roms/apollo-500-2000.rom",16384,"bios"],["roms/archos-add-500.rom",16384,"bios"],["roms/archos-overdrive-hd-v5.0.rom",32768,"bios"],["roms/ashcom-design-addhard-v2.0.rom",16384,"bios"],["roms/blizzard-1230-i-ii.rom",32768,"bios"],["roms/blizzard-1230-iii.rom",32768,"bios"],["roms/blizzard-1230-iv.rom",32768,"bios"],["roms/blizzard-1240-1260.rom",32768,"bios"],["roms/blizzard-2060-v7.25.rom",65536,"bios"],["roms/blizzard-2060-v8.2.rom",65536,"bios"],["roms/blizzard-2060-v8.5.rom",65536,"bios"],["roms/blizzard-scsi-kit-iii.rom",65536,"bios"],["roms/blizzard-scsi-kit-iv.rom",32768,"bios"],["roms/buddha-v103.17.rom",32768,"bios"],["roms/c-ltd-kronos.rom",8192,"bios"],["roms/california-access-malibu-v1.0.rom",8192,"bios"],["roms/combitec-hd20a-hd40a.rom",32768,"bios"],["roms/comspec-sa-series-v34.805.rom",16384,"bios"],["roms/csa-magnum-040.rom",65536,"bios"],["roms/csa-twelve-gauge.rom",32768,"bios"],["roms/cyberstorm-mk-i-68060-support.rom",32768,"bios"],["roms/cyberstorm-mk-i-cyberscsi-module.rom",32768,"bios"],["roms/dkb-1230-1240-cobra-plus-ferret-v1.23.rom",12060,"bios"],["roms/dkb-1230-1240-cobra.rom",1460,"bios"],["roms/dkb-rapidfire-spitfire-v1.31.rom",11284,"bios"],["roms/dkb-wildfire-v1.1.rom",18352,"bios"],["roms/elsat-mega-ram-hd.rom",16384,"bios"],["roms/evesham-micros-reference.rom",65536,"bios"],["roms/expansion-systems-dataflyerplus-v1.5.rom",32768,"bios"],["roms/expansion-systems-dataflyerplus-v1.7.rom",32768,"bios"],["roms/expansion-systems-dataflyerplus-v2.0.rom",32768,"bios"],["roms/expansion-systems-dataflyerplus-v2.1.rom",32768,"bios"],["roms/fastlane.rom",32768,"bios"],["roms/fusion-forty.rom",131072,"bios"],["roms/gvp-a1230-turboplus-series-ii-v5.0.rom",16384,"bios"],["roms/gvp-a1230-turboplus.rom",16384,"bios"],["roms/gvp-a3001-series-i.rom",8192,"bios"],["roms/gvp-series-i-ii-v3.15.rom",16384,"bios"],["roms/gvp-series-i-ii-v3.7.rom",16384,"bios"],["roms/gvp-series-i-v1.0.rom",16384,"bios"],["roms/gvp-series-i-v3.7.rom",16384,"bios"],["roms/gvp-series-ii-guru-rom.rom",32624,"bios"],["roms/gvp-series-ii-v4.13.rom",16384,"bios"],["roms/gvp-series-ii-v4.15.rom",16384,"bios"],["roms/hardital-dotto.rom",32768,"bios"],["roms/hardital-synthesis-v48.5.rom",32768,"bios"],["roms/hardital-synthesis-v53.1.rom",32768,"bios"],["roms/hardital-tqm.rom",32768,"bios"],["roms/harms-3000-professional.rom",65536,"bios"],["roms/icd-adscsi-2000-v1.6-icddisk-v1.0.rom",32768,"bios"],["roms/icd-adscsi-2000-v2.01-icddisk-v32.1.rom",32768,"bios"],["roms/icd-adscsi-2000-v2.1-icddisk-v33.0.rom",32768,"bios"],["roms/icd-adscsi-2000-v2.2-icddisk-v34.0.rom",32768,"bios"],["roms/ivs-grandslam-trumpcard-pro-v4.9.rom",16384,"bios"],["roms/ivs-trumpcard-v1.5.rom",8192,"bios"],["roms/ivs-trumpcard-v3.1.rom",8192,"bios"],["roms/ivs-trumpcard-v4.9.rom",16384,"bios"],["roms/ivs-vector-4.14.rom",65536,"bios"],["roms/kommos-a500-a2000-v1.7.rom",32768,"bios"],["roms/kommos-a500-a2000-v1.8.rom",32768,"bios"],["roms/kupke-golem-030.rom",8192,"bios"],["roms/kupke-golem-hd3000-v1.4.rom",16384,"bios"],["roms/kupke-golem-v3.9.rom",16384,"bios"],["roms/kupke-golem-v4.2.rom",16384,"bios"],["roms/m-tec-at500-megabody-v1.33.rom",32768,"bios"],["roms/m-tec-at500-v1.33w.rom",32768,"bios"],["roms/m-tec-e-matrix-530.rom",65536,"bios"],["roms/macrosystem-falcon-040-no-scsi.rom",131072,"bios"],["roms/mainhattan-data-a-team-v1.8.rom",65536,"bios"],["roms/masoboshi-mc-702-v2.201.rom",32768,"bios"],["roms/mast-fireball.rom",8192,"bios"],["roms/mastercard-v2.3.rom",65536,"bios"],["roms/microbotics-hardframe-v1.5.rom",32768,"bios"],["roms/microbotics-hardframe-v1.8.rom",32768,"bios"],["roms/microbotics-hardframe-v1.9.rom",32768,"bios"],["roms/multi-evolution-500-2000-v2.2.rom",65536,"bios"],["roms/multi-evolution-500-2000-v3.0.rom",65536,"bios"],["roms/multi-evolution-500-2000-v3.4.rom",65536,"bios"],["roms/nordic-power-v1.5.rom",65536,"bios"],["roms/nordic-power-v2.0.rom",65536,"bios"],["roms/nordic-power-v3.0.rom",65536,"bios"],["roms/nordic-power-v3.2.rom",65536,"bios"],["roms/oktagon-2008.rom",32768,"bios"],["roms/pacific-peripherals-overdrive-v1.5.rom",8192,"bios"],["roms/pacific-peripherals-overdrive-v2.0.rom",8192,"bios"],["roms/phoenix-board-scsi-vj.rom",32768,"bios"],["roms/picasso_iv_flash.rom",131072,"bios"],["roms/preferred-technologies-nexus.rom",8192,"bios"],["roms/pro-access-v2.17.rom",65536,"bios"],["roms/profex-electronics-hd-3300.rom",8192,"bios"],["roms/protar-a500hd.rom",32768,"bios"],["roms/quikpak-4060-xp-v2.1.rom",32768,"bios"],["roms/roctec-rochard-rh800c-v1.rom",16384,"bios"],["roms/roctec-rochard-rh800c-v2.rom",16384,"bios"],["roms/spirit-technology-inmate.rom",32768,"bios"],["roms/supradrive-2000dma-44-25b.rom",8192,"bios"],["roms/supradrive-amab2.rom",8192,"bios"],["roms/supradrive-amab3.rom",8192,"bios"],["roms/supradrive-amab4.rom",8192,"bios"],["roms/supradrive-amab5.rom",8192,"bios"],["roms/supradrive-amab6.rom",8192,"bios"],["roms/sx32-pro.rom",65536,"bios"],["roms/tekmagic2040.rom",65536,"bios"],["roms/tekmagic2060.rom",65536,"bios"],["roms/trifecta-v4.31.rom",32768,"bios"],["roms/trumpcard-500at-v1.1.rom",16384,"bios"],["roms/trumpcard-500at-v1.2.rom",16384,"bios"],["roms/typhoon-mk2.rom",65536,"bios"],["roms/vector-falcon-8000-v7.1.rom",32768,"bios"],["roms/vector-falcon-8000-v7.6.rom",32768,"bios"],["roms/vortex-system-2000.rom",16384,"bios"],["roms/warp-engine.rom",32768,"bios"],["roms/x-power-professional-500-v1.2.rom",131072,"bios"],["roms/x-power-professional-500-v1.3.rom",131072,"bios"],["roms/xetec-fasttrak.rom",32768,"bios"],["roms/zeus-040.rom",16384,"bios"],["rt1000b.zip",5852,"bios"],["rtpc_kbd.zip",1918,"bios"],["rtpc_kls.zip",5044,"bios"],["rx01.zip",2846,"bios"],["s100_am310.zip",1308,"bios"],["s100_djdma.zip",3777,"bios"],["s100_nsmdsa.zip",396,"bios"],["s100_nsmdsad.zip",334,"bios"],["s100_sj2db.zip",1012,"bios"],["s1410.zip",11050,"bios"],["s3_764.zip",18299,"bios"],["s8k_cpu.zip",31998,"bios"],["s8k_cpu10.zip",6294,"bios"],["s8k_hpcpu.zip",11518,"bios"],["s97269pb.zip",566,"bios"],["s97801_device.zip",8720,"bios"],["s97801_kbd.zip",1772,"bios"],["s_smp.zip",209,"bios"],["saa5051.zip",522,"bios"],["saa5052.zip",514,"bios"],["saa5053.zip",519,"bios"],["saa5054.zip",511,"bios"],["saa5055.zip",525,"bios"],["saa5056.zip",535,"bios"],["saa5057.zip",523,"bios"],["saa5240a.zip",1015,"bios"],["saa5240b.zip",978,"bios"],["saa5243e.zip",1297,"bios"],["sad8852.zip",4434,"bios"],["same_cdi/bios/cdi490a.zip",379558,"bios"],["same_cdi/bios/cdi910.zip",487572,"bios"],["same_cdi/bios/cdibios.zip",472798,"bios"],["same_cdi/bios/cdimono1.zip",660996,"bios"],["same_cdi/bios/cdimono2.zip",244291,"bios"],["sanyotry.bin",1048576,"bios"],["satar4mp.bin",262144,"bios"],["satcdb.zip",101309,"bios"],["saturn_bios.bin",524288,"bios"],["sb300p.zip",1591,"bios"],["sbus_hme.zip",17450,"bios"],["sbus_sunpc.zip",536,"bios"],["sc119.zip",721668,"bios"],["sc55-roms/cm300-v1.10/rom2.bin",262144,"bios"],["sc55-roms/cm300-v1.20/rom2.bin",262144,"bios"],["sc55-roms/cm300-v1.30/rom1.bin",32768,"bios"],["sc55-roms/cm300-v1.30/rom2.bin",262144,"bios"],["sc55-roms/cm300-v1.30/wave1.bin",1048576,"bios"],["sc55-roms/cm300-v1.30/wave2.bin",1048576,"bios"],["sc55-roms/mk1-v1.00/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.00/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.10/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.10/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.20/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.20/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.21/rom1.bin",32768,"bios"],["sc55-roms/mk1-v1.21/rom2.bin",262144,"bios"],["sc55-roms/mk1-v1.21/wave1.bin",1048576,"bios"],["sc55-roms/mk1-v1.21/wave2.bin",1048576,"bios"],["sc55-roms/mk1-v1.21/wave3.bin",1048576,"bios"],["sc55-roms/mk1-v2.00/rom1.bin",32768,"bios"],["sc55-roms/mk1-v2.00/rom2.bin",262144,"bios"],["sc55-roms/mk2-v1.01/rom1.bin",32768,"bios"],["sc55-roms/mk2-v1.01/rom2.bin",524288,"bios"],["sc55-roms/mk2-v1.01/smrom.bin",4096,"bios"],["sc55-roms/mk2-v1.01/wave1.bin",2097152,"bios"],["sc55-roms/mk2-v1.01/wave2.bin",1048576,"bios"],["sc55-roms/sc155-rev1/rom2.bin",262144,"bios"],["sc55-roms/scb55-v2.00/rom2.bin",262144,"bios"],["sc55-roms/st-v1.01/rom2.bin",262144,"bios"],["scorpion_ic.zip",18332,"bios"],["scph100.bin",524288,"bios"],["scph1000.bin",524288,"bios"],["scph1000r.bin",524288,"bios"],["scph1001.bin",524288,"bios"],["scph1001_v20.bin",524288,"bios"],["scph1001_v21.bin",524288,"bios"],["scph1002.bin",524288,"bios"],["scph1002a.bin",524288,"bios"],["scph1002b.bin",524288,"bios"],["scph1002c.bin",524288,"bios"],["scph101.bin",524288,"bios"],["scph101_v44.bin",524288,"bios"],["scph101_v45.bin",524288,"bios"],["scph102.bin",524288,"bios"],["scph102A.bin",524288,"bios"],["scph102B.bin",524288,"bios"],["scph102C.bin",524288,"bios"],["scph102_v44.bin",524288,"bios"],["scph102_v45.bin",524288,"bios"],["scph3000.bin",524288,"bios"],["scph3500.bin",524288,"bios"],["scph5000.bin",524288,"bios"],["scph5500.bin",524288,"bios"],["scph5501.bin",524288,"bios"],["scph5502.bin",524288,"bios"],["scph5552.bin",524288,"bios"],["scph5903.bin",1048576,"bios"],["scph7000.bin",524288,"bios"],["scph7000w.bin",524288,"bios"],["scph7001.bin",524288,"bios"],["scph7002.bin",524288,"bios"],["scph7003.bin",524288,"bios"],["scph7502.bin",524288,"bios"],["scph9002(7502).bin",524288,"bios"],["scpu-dos-1.4.bin",131072,"bios"],["scpu-dos-2.04.bin",131072,"bios"],["scummvm.zip",9523360,"bios"],["scummvm/extra/CM32L_CONTROL.ROM",65536,"bios"],["scummvm/extra/CM32L_PCM.ROM",1048576,"bios"],["scummvm/extra/MT32_CONTROL.ROM",65536,"bios"],["scummvm/extra/MT32_PCM.ROM",524288,"bios"],["scummvm/extra/Roland_SC-55.sf2",3283278,"bios"],["scummvm/extra/access.dat",520352,"bios"],["scummvm/extra/achievements.dat",249239,"bios"],["scummvm/extra/bagel.dat",20584,"bios"],["scummvm/extra/classicmacfonts.dat",626103,"bios"],["scummvm/extra/cryo.dat",12499,"bios"],["scummvm/extra/cryomni3d.dat",70416,"bios"],["scummvm/extra/darkseed.dat",37183,"bios"],["scummvm/extra/drascula.dat",259625,"bios"],["scummvm/extra/encoding.dat",179670,"bios"],["scummvm/extra/fonts-cjk.dat",38277312,"bios"],["scummvm/extra/fonts-imgui.dat",4000965,"bios"],["scummvm/extra/fonts.dat",6449829,"bios"],["scummvm/extra/freescape.dat",30124,"bios"],["scummvm/extra/got.aud",11313,"bios"],["scummvm/extra/got.gfx",288199,"bios"],["scummvm/extra/grim-patch.lab",9341,"bios"],["scummvm/extra/hadesch_translations.dat",431,"bios"],["scummvm/extra/helpdialog.zip",207764,"bios"],["scummvm/extra/hugo.dat",186866,"bios"],["scummvm/extra/kyra.dat",2028520,"bios"],["scummvm/extra/lure.dat",768832,"bios"],["scummvm/extra/macgui.dat",65656,"bios"],["scummvm/extra/macventure.dat",4146,"bios"],["scummvm/extra/mm.dat",280803,"bios"],["scummvm/extra/monkey4-patch.m4b",2990,"bios"],["scummvm/extra/mort.dat",76302,"bios"],["scummvm/extra/myst3.dat",358287,"bios"],["scummvm/extra/nancy.dat",255042,"bios"],["scummvm/extra/neverhood.dat",23804,"bios"],["scummvm/extra/pred.dic",126481,"bios"],["scummvm/extra/prince_translation.dat",168060,"bios"],["scummvm/extra/queen.tbl",1100505,"bios"],["scummvm/extra/sky.cpt",419427,"bios"],["scummvm/extra/supernova.dat",523211,"bios"],["scummvm/extra/teenagent.dat",403315,"bios"],["scummvm/extra/titanic.dat",3197968,"bios"],["scummvm/extra/tony.dat",24584,"bios"],["scummvm/extra/toon.dat",20996,"bios"],["scummvm/extra/ultima.dat",15981464,"bios"],["scummvm/extra/ultima8.dat",238149,"bios"],["scummvm/extra/vkeybd_default.zip",184946,"bios"],["scummvm/extra/wintermute.zip",4520,"bios"],["scummvm/theme/gui-icons.dat",3315855,"bios"],["scummvm/theme/residualvm.zip",94555,"bios"],["scummvm/theme/scummclassic.zip",16488,"bios"],["scummvm/theme/scummmodern.zip",68087,"bios"],["scummvm/theme/scummremastered.zip",93901,"bios"],["scummvm/theme/shaders.dat",657234,"bios"],["scummvm/theme/translations.dat",3693914,"bios"],["se-0.rom",16384,"bios"],["se-1.rom",16384,"bios"],["sed1200da.zip",749,"bios"],["sed1200db.zip",775,"bios"],["sed1200fa.zip",749,"bios"],["sed1200fb.zip",775,"bios"],["sed1278.zip",2096,"bios"],["sega1003.bin",524288,"bios"],["sega_100.bin",524288,"bios"],["sega_100a.bin",524288,"bios"],["sega_101.bin",524288,"bios"],["sega_sp400.zip",3461,"bios"],["segabill.zip",3117,"bios"],["sente6vb.zip",4778,"bios"],["serad.zip",4375,"bios"],["sfd1001.zip",13984,"bios"],["sgb.boot.rom",256,"bios"],["sgb1.program.rom",262144,"bios"],["sgb2.boot.rom",256,"bios"],["sgb2.program.rom",524288,"bios"],["sgb2_bios.bin",256,"bios"],["sgb2_boot.bin",256,"bios"],["sgb_bios.bin",256,"bios"],["sgb_boot.bin",256,"bios"],["sgi_gm1.zip",25397,"bios"],["sgi_ip2.zip",39192,"bios"],["sgi_ip4.zip",211576,"bios"],["sgi_kbd.zip",1233,"bios"],["sgi_pm1.zip",18125,"bios"],["sgi_pm2.zip",35149,"bios"],["side116.zip",3528,"bios"],["simutrek.zip",2912,"bios"],["sis630_gui.zip",49059,"bios"],["sis6326_agp.zip",101579,"bios"],["sis6326_dvd.zip",23245,"bios"],["sis6326_pci.zip",64665,"bios"],["sis900_eth.zip",24831,"bios"],["sk.bin",2097152,"bios"],["sk2chip.bin",262144,"bios"],["sl31253.bin",1024,"bios"],["sl31254.bin",1024,"bios"],["sl90025.bin",1024,"bios"],["smoc501.zip",37103,"bios"],["sms_diypaddle.zip",334,"bios"],["smvme2000.zip",29273,"bios"],["sn74s262.zip",675,"bios"],["sn74s263.zip",705,"bios"],["sns_dsp1bleg.zip",4140,"bios"],["sns_dsp1leg.zip",4135,"bios"],["sns_dsp1leg_hi.zip",4135,"bios"],["sns_dsp2leg.zip",2987,"bios"],["sns_dsp3leg.zip",3522,"bios"],["sns_dsp4leg.zip",3417,"bios"],["sns_rom_sgb.zip",390,"bios"],["sns_rom_sgb2.zip",392,"bios"],["sns_seta10leg.zip",2712,"bios"],["sns_seta11leg.zip",17424,"bios"],["softcard3.zip",407,"bios"],["sound_orchestra.zip",13041,"bios"],["spc1000_fdd_exp.zip",1839,"bios"],["speakboard.zip",116066,"bios"],["speccyboot-1.4.rom",8192,"bios"],["spectred_kbd.zip",911,"bios"],["spectrum_beta128.zip",2046403,"bios"],["spectrum_betacbi.zip",2046403,"bios"],["spectrum_betaclone.zip",2046403,"bios"],["spectrum_betaplus.zip",2046403,"bios"],["spectrum_betav2.zip",2046403,"bios"],["spectrum_betav3.zip",2046403,"bios"],["spectrum_d40.zip",14616,"bios"],["spectrum_d80.zip",14616,"bios"],["spectrum_d80v2.zip",7460,"bios"],["spectrum_disciple.zip",2046403,"bios"],["spectrum_flpone.zip",2046403,"bios"],["spectrum_gamma.zip",2046403,"bios"],["spectrum_intf1.zip",11519,"bios"],["spectrum_kempcentref.zip",1768,"bios"],["spectrum_kempcentreu.zip",1957,"bios"],["spectrum_kempdisc.zip",2046403,"bios"],["spectrum_lprint.zip",1878,"bios"],["spectrum_lprint3.zip",2046403,"bios"],["spectrum_mface1.zip",2046403,"bios"],["spectrum_mface128.zip",2046403,"bios"],["spectrum_mface128v1.zip",2046403,"bios"],["spectrum_mface1v1.zip",2046403,"bios"],["spectrum_mface1v2.zip",2046403,"bios"],["spectrum_mface1v3.zip",2046403,"bios"],["spectrum_mface3.zip",19134,"bios"],["spectrum_mikroplus.zip",12536,"bios"],["spectrum_mpoker.zip",2573,"bios"],["spectrum_mprint.zip",2046403,"bios"],["spectrum_opus.zip",29218,"bios"],["spectrum_plus2test.zip",3413,"bios"],["spectrum_plusd.zip",17587,"bios"],["spectrum_proceed.zip",6377,"bios"],["spectrum_sdi.zip",2603,"bios"],["spectrum_spdos.zip",2046403,"bios"],["spectrum_speccydos.zip",2046403,"bios"],["spectrum_specmate.zip",2046403,"bios"],["spectrum_swiftdisc.zip",2046403,"bios"],["spectrum_swiftdisc2.zip",2046403,"bios"],["spectrum_usource.zip",7261,"bios"],["spectrum_uspeech.zip",3944,"bios"],["spectrum_vtx5000.zip",2046403,"bios"],["spectrum_wafa.zip",2046403,"bios"],["squirreljme-0.3.0-fast.jar",15181774,"bios"],["squirreljme-0.3.0-slow-test.jar",15181774,"bios"],["squirreljme-0.3.0-slow.jar",15181774,"bios"],["squirreljme-0.3.0-test.jar",3396757,"bios"],["squirreljme-0.3.0.jar",15181774,"bios"],["squirreljme-fast.jar",15181774,"bios"],["squirreljme-slow-test.jar",15181774,"bios"],["squirreljme-slow.jar",15181774,"bios"],["squirreljme-test.jar",3396757,"bios"],["squirreljme.jar",4700395,"bios"],["st010.data.rom",4096,"bios"],["st010.program.rom",49152,"bios"],["st011.data.rom",4096,"bios"],["st011.program.rom",49152,"bios"],["st018.data.rom",32768,"bios"],["st018.program.rom",131072,"bios"],["st_kbd.zip",3344,"bios"],["stereo_fx.zip",3977,"bios"],["stic.zip",1296,"bios"],["stvbios.zip",3455065,"bios"],["sun1_cpu.zip",57393,"bios"],["sun_gem.zip",9773,"bios"],["sv603.zip",5695,"bios"],["sv806.zip",2717,"bios"],["sw1000xg.zip",20518162,"bios"],["swp30.zip",47545,"bios"],["swtpc8212_device.zip",5070,"bios"],["sx1541.zip",30913,"bios"],["sys68k_cpu1.zip",30486,"bios"],["sys68k_cpu20.zip",34447,"bios"],["sys68k_cpu21.zip",34447,"bios"],["sys68k_cpu21a.zip",34447,"bios"],["sys68k_cpu21b.zip",34447,"bios"],["sys68k_cpu21s.zip",34447,"bios"],["sys68k_cpu21ya.zip",34447,"bios"],["sys68k_cpu21yb.zip",34447,"bios"],["sys68k_cpu30.zip",291856,"bios"],["sys68k_cpu30be.zip",291856,"bios"],["sys68k_cpu30x.zip",291856,"bios"],["sys68k_cpu30xa.zip",291856,"bios"],["sys68k_cpu30za.zip",291856,"bios"],["sys68k_cpu33.zip",218296,"bios"],["sys68k_iscsi1.zip",17599,"bios"],["sys68k_isio1.zip",7302,"bios"],["syscard1.pce",262144,"bios"],["syscard2.pce",262144,"bios"],["syscard2u.pce",262144,"bios"],["syscard3.pce",262144,"bios"],["syscard3u.pce",262144,"bios"],["t5182.zip",2681,"bios"],["tanbus_ra32krom.zip",4189,"bios"],["tanbus_tandos.zip",6297,"bios"],["tanbus_tanex.zip",26826,"bios"],["tanbus_vid8082.zip",5374,"bios"],["tandberg_tdv2100_disp_logic.zip",1299,"bios"],["tandberg_tdv2100_keyboard.zip",572,"bios"],["tandy_1000_graphics.zip",3739,"bios"],["tandy_1000x_graphics.zip",3731,"bios"],["tape_128.szx",1464,"bios"],["tape_16.szx",591,"bios"],["tape_2048.szx",720,"bios"],["tape_2068.szx",1799,"bios"],["tape_48.szx",708,"bios"],["tape_pentagon.szx",1479,"bios"],["tape_plus2.szx",1571,"bios"],["tape_plus2a.szx",1617,"bios"],["tape_plus3.szx",1856,"bios"],["tape_plus3e.szx",1970,"bios"],["tape_scorpion.szx",3500,"bios"],["tape_se.szx",2146,"bios"],["tape_ts2068.szx",1840,"bios"],["tc2048.rom",16384,"bios"],["tc2068-0.rom",16384,"bios"],["tc2068-1.rom",8192,"bios"],["tdl12.zip",8050,"bios"],["technica.zip",12198,"bios"],["tek410x_kbd.zip",936,"bios"],["tek_msu_fdc.zip",2453,"bios"],["teletex800.zip",1260,"bios"],["tetriskr_cga.zip",160878,"bios"],["tgui9680.zip",22311,"bios"],["ti83.rom",262144,"bios"],["ti83plus.rom",524288,"bios"],["ti83se.rom",2097152,"bios"],["ti99_arcturus.zip",11432,"bios"],["ti99_bwg.zip",7452,"bios"],["ti99_ccdcc.zip",9611,"bios"],["ti99_ccfdc.zip",9712,"bios"],["ti99_ddcc1.zip",6231,"bios"],["ti99_evpc.zip",17207,"bios"],["ti99_fdc.zip",4969,"bios"],["ti99_gkracker.zip",5998,"bios"],["ti99_hfdc.zip",11813,"bios"],["ti99_myarcmem.zip",6085,"bios"],["ti99_pcode.zip",41460,"bios"],["ti99_rs232.zip",1782,"bios"],["ti99_thermal.zip",1544,"bios"],["ti99_tipi.zip",5838,"bios"],["ti99_whtscsi.zip",12367,"bios"],["ti_hx5102.zip",9758,"bios"],["tiki100_8088.zip",1246,"bios"],["tim011_kbd.zip",1862,"bios"],["tk02.zip",2839,"bios"],["tms320c30.zip",573,"bios"],["tms320c31.zip",573,"bios"],["tms320c32.zip",620,"bios"],["tms320vc33.zip",573,"bios"],["tnt.wad",18195736,"game_data"],["tonelib.bin",130500,"bios"],["tos.img",196608,"bios"],["tp880v.zip",55282,"bios"],["tp881v.zip",72045,"bios"],["trio64dx_pci.zip",73424,"bios"],["trs80m2kb.zip",920,"bios"],["tsvme104.zip",25233,"bios"],["turbogx.zip",11121,"bios"],["turbogxp.zip",11215,"bios"],["tv950kb.zip",1046,"bios"],["tv955kb.zip",1417,"bios"],["tvc_hbf.zip",36960,"bios"],["tvga9000.zip",37841,"bios"],["uae_data/drive_click_A500.wav",3313326,"bios"],["uae_data/drive_click_LOUD.wav",3308526,"bios"],["uae_data/drive_snatch_A500.wav",34450,"bios"],["uae_data/drive_snatch_LOUD.wav",39864,"bios"],["uae_data/drive_spin_A500.wav",134294,"bios"],["uae_data/drive_spin_LOUD.wav",20216,"bios"],["uae_data/drive_spinnd_A500.wav",352430,"bios"],["uae_data/drive_spinnd_LOUD.wav",241790,"bios"],["uae_data/drive_startup_A500.wav",34450,"bios"],["uae_data/drive_startup_LOUD.wav",43492,"bios"],["ubpnic.zip",171,"bios"],["ultra12f.zip",44397,"bios"],["ultra12f32.zip",20138,"bios"],["ultra14f.zip",16630,"bios"],["ultra24f.zip",19448,"bios"],["umc6650.zip",160,"bios"],["ume2015/hiscore.dat",216250,"game_data"],["uniap2ti.zip",1716,"bios"],["upd7220.zip",367,"bios"],["upd7801g.s01",4096,"bios"],["us_scd1_9210.bin",131072,"bios"],["us_scd2_9306.bin",131072,"bios"],["uts_400kbd.zip",853,"bios"],["uts_extw.zip",1046,"bios"],["v102_kbd.zip",1329,"bios"],["v50_kbd.zip",1066,"bios"],["v550_kbd.zip",1184,"bios"],["vanta.zip",72613,"bios"],["vector4_kbd.zip",1267,"bios"],["vic1515.zip",2699,"bios"],["vic1520.zip",3695,"bios"],["vic20_fe3.zip",9529,"bios"],["vic20_videopak.zip",830,"bios"],["vice/C128/basic-901226-01.bin",8192,"bios"],["vice/C128/basichi-318019-04.bin",16384,"bios"],["vice/C128/basiclo-318018-04.bin",16384,"bios"],["vice/C128/chargen-315079-01.bin",8192,"bios"],["vice/C128/chargen-325078-02.bin",8192,"bios"],["vice/C128/chargen-325167-02.bin",8192,"bios"],["vice/C128/chargen-325173-01D.bin",8192,"bios"],["vice/C128/chargen-325181-01.bin",8192,"bios"],["vice/C128/chargen-390059-01.bin",8192,"bios"],["vice/C128/kernal-315078-03.bin",16384,"bios"],["vice/C128/kernal-318020-05.bin",16384,"bios"],["vice/C128/kernal-318034-01.bin",16384,"bios"],["vice/C128/kernal-325172-01.bin",16384,"bios"],["vice/C128/kernal-901227-03.bin",8192,"bios"],["vice/C128/kernal64-325179-01.bin",8192,"bios"],["vice/C128/kernal64-325182-01.bin",8192,"bios"],["vice/C128/kernalfi",16384,"bios"],["vice/C128/kernalfr",16384,"bios"],["vice/C128/kernalit",16384,"bios"],["vice/C128/kernalno",16384,"bios"],["vice/C64/kernal-901227-01.bin",8192,"bios"],["vice/C64/kernal-901227-02.bin",8192,"bios"],["vice/DRIVES/dos1571cr-318047-01.bin",32768,"bios"],["vice/JiffyDOS_1541-II.bin",16384,"bios"],["vice/JiffyDOS_1571_repl310654.bin",32768,"bios"],["vice/JiffyDOS_1581.bin",32768,"bios"],["vice/JiffyDOS_C128.bin",16384,"bios"],["vice/JiffyDOS_C64.bin",8192,"bios"],["vice/JiffyDOS_SX-64.bin",8192,"bios"],["vice/VIC20/chargen-901460-02.bin",4096,"bios"],["vice/VIC20/kernal.901486-02.bin",8192,"bios"],["victor9k_fdc.zip",1152,"bios"],["victor9k_kb.zip",669,"bios"],["videnh2.zip",1713,"bios"],["virge_pci.zip",35167,"bios"],["virgedx_pci.zip",56560,"bios"],["virgevx_pci.zip",19358,"bios"],["vision864.zip",18539,"bios"],["vision964.zip",18202,"bios"],["vision968.zip",55852,"bios"],["voice/E480.WAV",101,"game_data"],["voice/E481.WAV",554,"game_data"],["voice/E482.WAV",554,"game_data"],["voice/E483.WAV",1096,"game_data"],["voice/E484.WAV",2219,"game_data"],["voice/E485.WAV",4592,"game_data"],["voice/E486.WAV",2902,"game_data"],["voice/E487.WAV",804,"game_data"],["voice/E488.WAV",1378,"game_data"],["voice/E489.WAV",576,"game_data"],["voice/E48A.WAV",1556,"game_data"],["voice/E48B.WAV",1516,"game_data"],["voice/E48C.WAV",794,"game_data"],["voice/E48D.WAV",1510,"game_data"],["voice/E48E.WAV",1892,"game_data"],["voice/E48F.WAV",788,"game_data"],["voice/E490.WAV",2020,"game_data"],["voice/E491.WAV",1122,"game_data"],["voice/E492.WAV",1862,"game_data"],["voice/E493.WAV",2772,"game_data"],["voice/E494.WAV",3120,"game_data"],["voice/E495.WAV",854,"game_data"],["voice/E496.WAV",1154,"game_data"],["voice/E497.WAV",1122,"game_data"],["voice/E498.WAV",1144,"game_data"],["voice/E499.WAV",2056,"game_data"],["voice/E49A.WAV",1302,"game_data"],["voice/E49B.WAV",2492,"game_data"],["voice/E49C.WAV",936,"game_data"],["voice/E49D.WAV",2038,"game_data"],["voice/E49E.WAV",1146,"game_data"],["voice/E49F.WAV",2884,"game_data"],["voice/E4A0.WAV",4096,"game_data"],["voice/E4A1.WAV",1702,"game_data"],["voice/E4A2.WAV",1570,"game_data"],["voice/E4A3.WAV",2060,"game_data"],["voice/E4A4.WAV",846,"game_data"],["voice/E4A5.WAV",1756,"game_data"],["voice/E4A6.WAV",2144,"game_data"],["voice/E4A7.WAV",1388,"game_data"],["voice/E4A8.WAV",1586,"game_data"],["voice/E4A9.WAV",2022,"game_data"],["voice/E4AA.WAV",1624,"game_data"],["voice/E4AB.WAV",2302,"game_data"],["voice/E4AC.WAV",2484,"game_data"],["voice/E4AD.WAV",1252,"game_data"],["voice/E4AE.WAV",1978,"game_data"],["voice/E4AF.WAV",3984,"game_data"],["voice/E4B0.WAV",2184,"game_data"],["voice/E4B1.WAV",1448,"game_data"],["voice/E4B2.WAV",2040,"game_data"],["voice/E4B3.WAV",1762,"game_data"],["voice/E4B4.WAV",3334,"game_data"],["voice/E4B5.WAV",2604,"game_data"],["voice/E4B6.WAV",2654,"game_data"],["voice/E4B7.WAV",984,"game_data"],["voice/E4B8.WAV",2156,"game_data"],["voice/E4B9.WAV",890,"game_data"],["voice/E4BA.WAV",3656,"game_data"],["voice/E4BB.WAV",3166,"game_data"],["voice/E4BC.WAV",3840,"game_data"],["voice/E4BD.WAV",464,"game_data"],["voice/E4BE.WAV",2084,"game_data"],["voice/E4BF.WAV",646,"game_data"],["voice/E4C0.WAV",5348,"game_data"],["voice/E4C1.WAV",8577,"game_data"],["voice/E4C2.WAV",5504,"game_data"],["voice/E4C3.WAV",12420,"game_data"],["voice/E4C4.WAV",11286,"game_data"],["voice/E4C5.WAV",7194,"game_data"],["voice/E4C6.WAV",7078,"game_data"],["voice/E4C7.WAV",4566,"game_data"],["voice/E4C8.WAV",7740,"game_data"],["voice/E4C9.WAV",9504,"game_data"],["voice/E4CA.WAV",12896,"game_data"],["voice/E4FA.WAV",11049,"game_data"],["voice/E4FB.WAV",7604,"game_data"],["voice/E880.WAV",10745,"game_data"],["voice/E881.WAV",7324,"game_data"],["voice/E882.WAV",6876,"game_data"],["voice/E883.WAV",7418,"game_data"],["voice/E884.WAV",13296,"game_data"],["voice/E885.WAV",10055,"game_data"],["voice/E886.WAV",5827,"game_data"],["voice/E887.WAV",6215,"game_data"],["voice/E888.WAV",5264,"game_data"],["voice/E889.WAV",8524,"game_data"],["voice/E88A.WAV",4348,"game_data"],["voice/E88B.WAV",4104,"game_data"],["voice/E88C.WAV",9624,"game_data"],["voice/E88D.WAV",6914,"game_data"],["voice/E88E.WAV",8319,"game_data"],["voice/E88F.WAV",9592,"game_data"],["voice/E890.WAV",9479,"game_data"],["voice/E891.WAV",8697,"game_data"],["voice/E892.WAV",6878,"game_data"],["voice/E893.WAV",6220,"game_data"],["voice/E894.WAV",6830,"game_data"],["voice/E895.WAV",6283,"game_data"],["voice/E980.WAV",6300,"game_data"],["voice/E981.WAV",5324,"game_data"],["voice/E982.WAV",11267,"game_data"],["voice/E983.WAV",7202,"game_data"],["voice/E984.WAV",6732,"game_data"],["voice/E985.WAV",6317,"game_data"],["voice/E986.WAV",6638,"game_data"],["voice/E987.WAV",8261,"game_data"],["voice/E988.WAV",10269,"game_data"],["voice/E989.WAV",5644,"game_data"],["voice/E98A.WAV",6008,"game_data"],["voice/E98B.WAV",10470,"game_data"],["voice/E98C.WAV",6304,"game_data"],["voice/E98D.WAV",3478,"game_data"],["voice/E98E.WAV",12232,"game_data"],["voice/E98F.WAV",13922,"game_data"],["voice/E990.WAV",10460,"game_data"],["voice/E991.WAV",2924,"game_data"],["voice/E992.WAV",16808,"game_data"],["voice/E993.WAV",12544,"game_data"],["voice/E994.WAV",7100,"game_data"],["voice/E995.WAV",6452,"game_data"],["voice/E996.WAV",6685,"game_data"],["voice/EA80.WAV",3092,"game_data"],["voice/EA81.WAV",5390,"game_data"],["voice/EA82.WAV",14341,"game_data"],["voice/EA83.WAV",4719,"game_data"],["voice/EA84.WAV",5252,"game_data"],["voice/EA85.WAV",7018,"game_data"],["voice/EA86.WAV",8480,"game_data"],["voice/EA87.WAV",9496,"game_data"],["voice/EA88.WAV",38600,"game_data"],["voice/EA89.WAV",29892,"game_data"],["voice/EA8A.WAV",11328,"game_data"],["voice/EA8B.WAV",2604,"game_data"],["voice/EA8C.WAV",16184,"game_data"],["voice/EA8D.WAV",3308,"game_data"],["voice/EA8E.WAV",3350,"game_data"],["voice/EA8F.WAV",18174,"game_data"],["voice/EA90.WAV",3348,"game_data"],["voice/EA91.WAV",3299,"game_data"],["voice/EA92.WAV",3302,"game_data"],["voice/EA93.WAV",3306,"game_data"],["voice/EA94.WAV",3267,"game_data"],["voice/EA95.WAV",3388,"game_data"],["voice/EA96.WAV",3392,"game_data"],["voice/EA97.WAV",3393,"game_data"],["voice/EA98.WAV",3359,"game_data"],["voice/EA99.WAV",3300,"game_data"],["voice/EA9A.WAV",3312,"game_data"],["voice/EA9B.WAV",3402,"game_data"],["voice/EA9C.WAV",3308,"game_data"],["voice/EA9D.WAV",3313,"game_data"],["voice/EA9E.WAV",3302,"game_data"],["voice/EA9F.WAV",3340,"game_data"],["voice/EAA0.WAV",3314,"game_data"],["voice/EAA1.WAV",3306,"game_data"],["voice/EAA2.WAV",3308,"game_data"],["voice/EAA3.WAV",3314,"game_data"],["voice/EAA4.WAV",3313,"game_data"],["voice/EAA5.WAV",3311,"game_data"],["voice/EAA6.WAV",3340,"game_data"],["voice/EAA7.WAV",3302,"game_data"],["voice/EB80.WAV",7226,"game_data"],["voice/EB81.WAV",5558,"game_data"],["voice/EB82.WAV",5566,"game_data"],["voice/EB83.WAV",6276,"game_data"],["voice/EB84.WAV",7508,"game_data"],["voice/EB85.WAV",5400,"game_data"],["voice/EB86.WAV",8981,"game_data"],["voice/EB87.WAV",8844,"game_data"],["voice/EB88.WAV",6554,"game_data"],["voice/EB89.WAV",6932,"game_data"],["voice/EB8A.WAV",7059,"game_data"],["voice/EB8B.WAV",7544,"game_data"],["voice/EB8C.WAV",5790,"game_data"],["voice/EB8D.WAV",6700,"game_data"],["voice/EB8E.WAV",6188,"game_data"],["voice/EB8F.WAV",4880,"game_data"],["voice/EB90.WAV",7480,"game_data"],["voice/EB91.WAV",6804,"game_data"],["voice/EB92.WAV",7419,"game_data"],["voice/EB93.WAV",6105,"game_data"],["voice/EB94.WAV",4972,"game_data"],["voice/EB95.WAV",5084,"game_data"],["voice/EB96.WAV",6492,"game_data"],["voice/EB97.WAV",8819,"game_data"],["voice/EB98.WAV",6104,"game_data"],["voice/EB99.WAV",5896,"game_data"],["voice/EB9A.WAV",5784,"game_data"],["voice/EB9B.WAV",5742,"game_data"],["voice/EB9C.WAV",6154,"game_data"],["voice/EB9D.WAV",4984,"game_data"],["voice/EC80.WAV",6815,"game_data"],["voice/EC81.WAV",5628,"game_data"],["voice/EC82.WAV",17440,"game_data"],["voice/EC83.WAV",8162,"game_data"],["voice/EC84.WAV",7944,"game_data"],["voice/EC85.WAV",6848,"game_data"],["voice/EC86.WAV",8225,"game_data"],["voice/EC87.WAV",5588,"game_data"],["voice/EC88.WAV",8954,"game_data"],["voice/EC89.WAV",7340,"game_data"],["voice/EC8A.WAV",9092,"game_data"],["voice/EC8B.WAV",7754,"game_data"],["voice/EC8C.WAV",7100,"game_data"],["voice/EC8D.WAV",5732,"game_data"],["voice/EC8E.WAV",6200,"game_data"],["voice/EC8F.WAV",6504,"game_data"],["voice/EC90.WAV",7853,"game_data"],["voice/EC91.WAV",8378,"game_data"],["voice/EC92.WAV",5336,"game_data"],["voice/EC93.WAV",8294,"game_data"],["voice/EC94.WAV",7838,"game_data"],["voice/EC95.WAV",6927,"game_data"],["voice/EC96.WAV",7524,"game_data"],["voice/EC97.WAV",8140,"game_data"],["voice/EC98.WAV",8370,"game_data"],["voice/EC99.WAV",7292,"game_data"],["voice/EC9A.WAV",6884,"game_data"],["voice/EC9B.WAV",6846,"game_data"],["voice/ED80.WAV",6308,"game_data"],["voice/ED81.WAV",5772,"game_data"],["voice/ED82.WAV",6794,"game_data"],["voice/ED83.WAV",6680,"game_data"],["voice/ED84.WAV",6624,"game_data"],["voice/ED85.WAV",7450,"game_data"],["voice/ED86.WAV",7055,"game_data"],["voice/ED87.WAV",5955,"game_data"],["voice/ED88.WAV",6789,"game_data"],["voice/ED89.WAV",6542,"game_data"],["voice/ED8A.WAV",6924,"game_data"],["voice/ED8B.WAV",7062,"game_data"],["voice/ED8C.WAV",6967,"game_data"],["voice/ED8D.WAV",7205,"game_data"],["voice/ED8E.WAV",7381,"game_data"],["voice/ED8F.WAV",5168,"game_data"],["voice/ED90.WAV",5344,"game_data"],["voice/ED91.WAV",5345,"game_data"],["voice/ED92.WAV",7924,"game_data"],["voice/ED93.WAV",7415,"game_data"],["voice/ED94.WAV",6820,"game_data"],["voice/ED95.WAV",6464,"game_data"],["voice/ED96.WAV",6576,"game_data"],["voice/ED97.WAV",6124,"game_data"],["voice/ED98.WAV",7688,"game_data"],["voice/ED99.WAV",6369,"game_data"],["voice/ED9A.WAV",6254,"game_data"],["voice/EE80.WAV",6012,"game_data"],["voice/EE81.WAV",8294,"game_data"],["voice/EE82.WAV",7128,"game_data"],["voice/EE83.WAV",4256,"game_data"],["voice/EE84.WAV",7514,"game_data"],["voice/EE85.WAV",8176,"game_data"],["voice/EE86.WAV",6824,"game_data"],["voice/EE87.WAV",8117,"game_data"],["voice/EE88.WAV",8756,"game_data"],["voice/EE89.WAV",7406,"game_data"],["voice/EE8A.WAV",7352,"game_data"],["voice/EE8B.WAV",8651,"game_data"],["voice/EE8C.WAV",7511,"game_data"],["voice/EE8D.WAV",8024,"game_data"],["voice/EE8E.WAV",9809,"game_data"],["voice/EE8F.WAV",8364,"game_data"],["voice/EE90.WAV",4828,"game_data"],["voice/EE91.WAV",6092,"game_data"],["voice/EE92.WAV",5000,"game_data"],["voice/EE93.WAV",7197,"game_data"],["voice/EE94.WAV",6785,"game_data"],["voice/EE95.WAV",6105,"game_data"],["voice/EE96.WAV",7604,"game_data"],["voicebox.zip",2019,"bios"],["voodoo_3000_x86.zip",40056,"bios"],["votraxtnt.zip",3922,"bios"],["votrsc01.zip",588,"bios"],["votrsc01a.zip",590,"bios"],["vp700.zip",3613,"bios"],["vsaturn.bin",524288,"bios"],["vtech_fdc.zip",4431,"bios"],["vtech_rs232.zip",2458,"bios"],["vtech_rtty.zip",2488,"bios"],["vtech_sdloader.zip",11160,"bios"],["vtech_wordpro.zip",8125,"bios"],["wangpc_lic.zip",2810,"bios"],["wangpc_rtc.zip",3197,"bios"],["wangpc_wdc.zip",3193,"bios"],["wangpckb.zip",1228,"bios"],["wd1002a_wx1.zip",1868,"bios"],["wd1007a.zip",3971,"bios"],["wd90c00_jk.zip",58499,"bios"],["wd90c11_lr.zip",18343,"bios"],["wd90c30_lr.zip",41732,"bios"],["wd90c31_lr.zip",22513,"bios"],["wd90c31a_lr.zip",38568,"bios"],["wd90c31a_zs.zip",18777,"bios"],["wd90c33_zz.zip",19105,"bios"],["wd90c90_jk.zip",15497,"bios"],["wd9710_pci.zip",18718,"bios"],["wdxt_gen.zip",4266,"bios"],["wg130.zip",1861561,"bios"],["whdboot/JST",89108,"bios"],["whdboot/WHDLoad",161031,"bios"],["whdboot/boot-data.zip",297373,"bios"],["whdboot/game-data/whdload_db.json",6741053,"bios"],["whdboot/host-quit",3180,"bios"],["whdboot/save-data/Kickstarts/kick31034.A1000.RTB",3736,"bios"],["whdboot/save-data/Kickstarts/kick33180.A500.RTB",3882,"bios"],["whdboot/save-data/Kickstarts/kick34005.A500.RTB",4020,"bios"],["whdboot/save-data/Kickstarts/kick36143.A3000.RTB",5980,"bios"],["whdboot/save-data/Kickstarts/kick37175.A500.RTB",5576,"bios"],["whdboot/save-data/Kickstarts/kick39106.A1200.RTB",5002,"bios"],["whdboot/save-data/Kickstarts/kick40063.A600.RTB",5000,"bios"],["whdboot/save-data/Kickstarts/kick40068.A1200.RTB",5008,"bios"],["whdboot/save-data/Kickstarts/kick40068.A4000.RTB",4976,"bios"],["wildmidi.cfg",192,"game_data"],["wpcap.dll",499128,"bios"],["wyse700.zip",4164,"bios"],["x68k_cz6bs1.zip",3156,"bios"],["x820iikb.zip",1128,"bios"],["x820kb.zip",1128,"bios"],["xbox_eeprom.bin",256,"bios"],["xbox_hdd.qcow2",1638400,"bios"],["xerox820_16_8.zip",1338,"bios"],["xerox820_emii_flpy5.zip",2303,"bios"],["xerox820_emii_rgd5.zip",2303,"bios"],["xetec_c5181.zip",3192,"bios"],["xmil/FNT0808.X1",2048,"bios"],["xmil/FNT0816.X1",4096,"bios"],["xmil/FNT1616.X1",306176,"bios"],["xmil/IPLROM.X1",4096,"bios"],["xmil/IPLROM.X1T",32768,"bios"],["xrick/data.zip",1457440,"bios"],["xt446.zip",18613894,"bios"],["xtide.zip",148910,"bios"],["ym2413.zip",286,"bios"],["ym2423.zip",313,"bios"],["ym2608.zip",7587,"bios"],["ym2608.zip",7609,"bios"],["ymf281.zip",313,"bios"],["ymf288_adpcm_rom.bin",8192,"bios"],["z8671.zip",2028,"bios"],["z8682.zip",201,"bios"],["zdoom.pk3",619127,"game_data"],["zip100_ide.zip",36071,"bios"],["zorba_kbd.zip",1406,"bios"],["zt18hfnt.rom",32768,"bios"],["zxbus_neogs.zip",297163,"bios"]],"format_version":1,"platform":"retroarch","sets":{"acorn-bbc-micro|b2":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"amstrad-cpc|":{"bytes":114688,"files":[873,874,875,876],"optional":[],"required_bytes":114688},"amstrad-cpc|cap32":{"bytes":114688,"files":[873,874,875,876],"optional":[],"required_bytes":114688},"amstrad-cpc|crocods":{"bytes":114688,"files":[873,874,875,876],"optional":[],"required_bytes":114688},"apple-ios|touchhle":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"apple-macintosh|minivmac":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"apple2|linapple":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"aquaplus-piece|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arcade-laserdisc|daphne":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arcade-laserdisc|hypseus-singe":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arcade|":{"bytes":1608777213,"files":[4,8,10,12,124,125,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,495,496,497,506,507,508,509,510,511,512,514,515,516,517,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,586,587,588,589,590,591,592,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,680,681,682,683,684,685,686,687,688,689,690,692,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,713,714,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,766,767,769,770,771,772,773,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,797,799,802,803,804,805,806,807,827,828,829,844,845,846,848,849,850,852,853,854,855,858,859,860,861,862,863,864,865,866,867,868,869,899,900,901,902,903,904,905,906,907,908,909,910,911,918,919,920,921,922,924,925,926,927,928,929,930,931,932,933,934,935,936,938,939,940,941,942,943,945,946,947,948,949,950,951,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,975,982,983,1035,1040,1055,1056,1058,1059,1061,1064,1065,1066,1067,1068,1071,1072,1073,1074,1075,1076,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1096,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1116,1117,1118,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1151,1152,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1178,1179,1180,1201,1204,1205,1206,1207,1208,1209,1210,1211,1213,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2085,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2179,2180,2182,2253,2254,2255,2256,2257,2258,2286,2287,2293,2294,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2309,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2489,2502,2503,2504,2506,2507,2508,2509,2510,2534,2593,2594,2595,2596,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2624,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2852,2860,2862,2863,2864,2865,2893,2987,2988,2989,2990,2991,2996,2997,2998,2999,3000,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3089,3106,3107,3108,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3133,3139,3140,3141,3142,3143,3144,3145,3146,3147,3164,3165,3166,3167,3168,3169,3170,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3221,3222,3223,3224,3225,3226,3227,3228,3229,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3275,3276,3277,3278,3279,3280,3281,3282,3283,3554,3555,3556,3557,3558,3559,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3582,3599,3600,3601,3602,3605,3606,3607,3608,3615,3616,3617,3618,3620,3621,3623,3624,3626,3627,3629],"optional":[],"required_bytes":1608777213},"arcade|fbalpha2012":{"bytes":825620530,"files":[125,409,929,930,931,932,933,934,935,936,938,939,940,941,942,943,944,946,947,948,949,950,951,952,954,955,956,957,960,961,962,963,964,2179,2621],"optional":[125,929,930,931,932,933,934,935,936],"required_bytes":8587539},"arcade|fbneo":{"bytes":319127529,"files":[409,938,939,940,941,942,943,945,946,947,948,949,950,951,953,954,955,956,957,958,959,960,961,962,963,964,2179,2621],"optional":[958,959],"required_bytes":9560899},"arcade|mame":{"bytes":289518643,"files":[4,8,10,12,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,495,496,497,506,507,508,509,510,511,512,514,515,516,517,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,586,587,588,589,590,591,592,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,680,681,682,683,684,685,686,687,688,689,690,692,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,713,714,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,766,767,769,770,771,772,773,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,797,799,802,803,804,805,806,807,827,828,829,844,845,846,848,849,850,852,853,854,855,858,859,860,861,862,863,864,865,866,867,868,869,899,900,901,902,903,904,905,906,907,908,909,910,911,918,919,920,921,922,924,925,926,927,938,939,940,941,942,943,944,946,947,948,949,950,951,952,954,955,956,957,960,961,962,963,964,965,966,967,968,969,970,971,972,975,982,983,1035,1040,1055,1056,1058,1059,1061,1064,1065,1066,1067,1068,1071,1072,1073,1074,1075,1076,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1096,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1116,1117,1118,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1151,1152,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1178,1179,1180,1201,1204,1205,1206,1207,1208,1209,1210,1211,1213,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2026,2027,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2085,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2179,2180,2182,2253,2254,2255,2256,2257,2258,2286,2287,2293,2294,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2309,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2489,2502,2503,2504,2506,2507,2508,2509,2510,2534,2593,2594,2595,2596,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2624,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2852,2860,2862,2863,2864,2865,2893,2987,2988,2989,2990,2991,2996,2997,2998,2999,3000,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3089,3106,3107,3108,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3133,3139,3140,3141,3142,3143,3144,3145,3146,3147,3164,3165,3166,3167,3168,3169,3170,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3221,3222,3223,3224,3225,3226,3228,3229,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3275,3276,3277,3278,3279,3280,3281,3282,3283,3554,3555,3556,3557,3558,3559,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3582,3599,3600,3601,3602,3605,3606,3607,3608,3615,3616,3617,3618,3619,3621,3623,3624,3626,3627,3629],"optional":[4,8,10,12,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,410,411,412,413,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,495,496,497,506,507,508,509,510,511,512,514,515,516,517,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,586,587,588,589,590,591,592,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,680,681,682,683,684,685,686,687,688,689,690,692,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,713,714,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,766,767,769,770,771,772,773,779,780,781,782,783,784,785,786,788,789,790,791,792,793,794,797,799,802,803,804,805,806,807,827,828,829,844,845,846,848,849,850,852,853,854,855,858,859,860,861,862,863,864,865,866,867,868,869,899,900,901,902,903,904,905,906,907,908,909,910,911,918,919,920,921,922,924,925,926,927,965,966,967,968,969,970,971,972,975,982,983,1035,1040,1055,1056,1058,1059,1061,1064,1065,1066,1067,1068,1071,1072,1073,1074,1075,1076,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1096,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1116,1117,1118,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1151,1152,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1178,1179,1180,1201,1204,1205,1206,1207,1208,1209,1210,1211,1213,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1350,1356,1357,1608,1609,1620,1621,1680,1793,1794,1795,1796,1797,1798,1799,1836,1837,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2026,2027,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2085,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2180,2182,2253,2254,2255,2256,2257,2258,2286,2287,2293,2294,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2309,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2489,2502,2503,2504,2506,2507,2508,2509,2510,2534,2593,2594,2595,2596,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2622,2623,2624,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2852,2860,2862,2863,2864,2865,2893,2987,2988,2989,2990,2991,2996,2997,2998,2999,3000,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3089,3106,3107,3108,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3133,3139,3140,3141,3142,3143,3144,3145,3146,3147,3164,3165,3166,3167,3168,3169,3170,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3221,3222,3223,3224,3225,3226,3228,3229,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3275,3276,3277,3278,3279,3280,3281,3282,3283,3554,3555,3556,3557,3558,3559,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3582,3599,3600,3601,3602,3605,3606,3607,3608,3615,3616,3617,3618,3619,3621,3623,3624,3626,3627,3629],"required_bytes":103004545},"arcade|mame2000":{"bytes":16558899,"files":[409,938,939,940,941,942,943,944,946,947,948,949,950,951,952,954,955,956,957,960,961,962,963,964,2007,2179,2621],"optional":[2007],"required_bytes":8587539},"arcade|mame2003_plus":{"bytes":94627885,"files":[409,938,939,940,941,942,943,944,946,947,948,949,950,951,952,954,955,956,957,960,961,962,963,964,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2044,2045,2139,2179,2621],"optional":[2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2044,2045],"required_bytes":8597118},"arcade|mame2010":{"bytes":33771609,"files":[409,938,939,940,941,942,943,944,946,947,948,949,950,951,952,954,955,956,957,960,961,962,963,964,2024,2025,2179,2621],"optional":[2024,2025],"required_bytes":8587539},"arduboy|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arduboy|ardens":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"arduboy|arduous":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-2600|stella":{"bytes":33793052,"files":[269,270,271,272,273,274,275],"optional":[269,270,271,272,273,274,275],"required_bytes":0},"atari-2600|stella2014":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-400-800|":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[],"required_bytes":231424},"atari-400-800|atari800":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[238,239,240,241,498,499,500,501,502,503,504,505],"required_bytes":71680},"atari-5200|":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[],"required_bytes":231424},"atari-5200|a5200":{"bytes":71680,"files":[13,19,20,21,22,30,282],"optional":[],"required_bytes":71680},"atari-5200|atari800":{"bytes":231424,"files":[13,19,20,21,22,30,238,239,240,241,282,498,499,500,501,502,503,504,505],"optional":[238,239,240,241,498,499,500,501,502,503,504,505],"required_bytes":71680},"atari-7800|":{"bytes":20480,"files":[17,18],"optional":[],"required_bytes":20480},"atari-7800|prosystem":{"bytes":20480,"files":[17,18],"optional":[],"required_bytes":20480},"atari-jaguar|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-jaguar|bigpemu":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"atari-jaguar|virtualjaguar":{"bytes":786432,"files":[283,284,1149,1150],"optional":[283,284,1149,1150],"required_bytes":0},"atari-lynx|":{"bytes":1025,"files":[1097,1232],"optional":[],"required_bytes":1025},"atari-lynx|beetle_lynx":{"bytes":512,"files":[1232],"optional":[],"required_bytes":512},"atari-lynx|handy":{"bytes":1025,"files":[1097,1232],"optional":[1097],"required_bytes":512},"atari-st|":{"bytes":2375680,"files":[912,913,914,1077,3199],"optional":[],"required_bytes":2375680},"atari-st|hatari":{"bytes":933888,"files":[1077,3199],"optional":[1077],"required_bytes":196608},"bally-astrocade|mess2015":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"bandai-wswanc|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"bandai-wswan|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"bbk-longman-4980|bbkemu":{"bytes":4194304,"files":[31,32],"optional":[],"required_bytes":4194304},"bbk-longman-4988|bbkemu":{"bytes":4194304,"files":[31,32],"optional":[],"required_bytes":4194304},"bennugd|bennugd":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps1|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps1|fbalpha2012_cps1":{"bytes":322458,"files":[937],"optional":[937],"required_bytes":0},"capcom-cps1|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps2|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps2|fbalpha2012_cps2":{"bytes":322458,"files":[937],"optional":[937],"required_bytes":0},"capcom-cps2|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps3|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps3|fbalpha2012_cps3":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"capcom-cps3|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"casio-loopy|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"cave-story|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"cave-story|doukutsu_rs":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"cave-story|nxengine":{"bytes":1547830,"files":[2288,2289,2290,2291],"optional":[2290,2291],"required_bytes":1487320},"chip8|jaxe":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"coco|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"coco|xroar":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"colecovision|":{"bytes":6498322,"files":[33,117,118,119,120,121,122,150,166,167,168,169,170,171,172,173,174,207,217,218,219,220,221,222,223,224,225,226,227,576,731,732,733,941],"optional":[],"required_bytes":6498322},"colecovision|bluemsx":{"bytes":6470308,"files":[33,117,118,119,120,121,122,150,166,167,168,169,170,171,172,173,174,207,217,218,219,220,221,222,223,224,225,226,227,576,731,733,941],"optional":[117,118,120,121,122,166,167,168,169,170,171,172,173,174,207,217,218,219,220,221,222,223,224,225,226,227],"required_bytes":993816},"colecovision|coolcv":{"bytes":985624,"files":[33,119,576,731,733,941],"optional":[],"required_bytes":985624},"colecovision|gearcoleco":{"bytes":985624,"files":[33,119,576,731,733,941],"optional":[],"required_bytes":985624},"commodore-amiga-cd32|puae":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-amiga-cd32|puae2021":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-amiga|":{"bytes":38387780,"files":[15,16,114,281,493,494,677,678,984,985,986,987,988,989,990,991,992,993,994,995,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,2086,2087,2088,2089,2666,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2677,2678,2679,2680,2681,2682,2683,2684,2685,2686,2687,2688,2689,2690,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2702,2703,2704,2705,2706,2707,2708,2709,2710,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2722,2723,2724,2725,2726,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2738,2739,2740,2741,2742,2743,2744,2745,2746,2747,2748,2749,2750,2751,2752,2753,2754,2755,2756,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,2811,2812,2813,2814,2815,2816,2817,2818,2819,2820,2821,2822,2823,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220,3583,3584,3585,3586,3587,3588,3589,3590,3591,3592,3593,3594,3595,3596],"optional":[],"required_bytes":38387780},"commodore-amiga|puae":{"bytes":13843102,"files":[281,677,678,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,2666,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220],"optional":[281,677,678,1187,1188,2666,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220],"required_bytes":5505024},"commodore-amiga|puae2021":{"bytes":13843102,"files":[281,677,678,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,2666,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220],"optional":[281,677,678,1187,1188,2666,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220],"required_bytes":5505024},"commodore-amiga|uae4arm":{"bytes":5507093,"files":[1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,2666],"optional":[2666],"required_bytes":5505024},"commodore-c128|vice_x128":{"bytes":753664,"files":[135,136,137,138,139,2928,2929,3244,3245,3246,3247,3248,3249,3250,3251,3252,3253,3254,3255,3256,3257,3258,3259,3260,3261,3262,3263,3266,3267,3268,3269,3270,3271],"optional":[135,136,137,138,139],"required_bytes":647168},"commodore-c64|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-c64|vice_x64":{"bytes":49152,"files":[140,1170,1171,3264,3265,3272],"optional":[140,1170,1171,3264,3265,3272],"required_bytes":0},"commodore-cbm-ii|vice_xcbm2":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-pet|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-pet|vice_xpet":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-plus4|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-plus4|vice_xplus4":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-vic20|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"commodore-vic20|vice_xvic":{"bytes":24576,"files":[715,1172,3273,3274],"optional":[715,1172,3273,3274],"required_bytes":0},"dinothawr|":{"bytes":6727905,"files":[123,787],"optional":[],"required_bytes":6727905},"dinothawr|dinothawr":{"bytes":6727905,"files":[123,787],"optional":[],"required_bytes":6727905},"discrete-arcade|dice":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"doom|":{"bytes":142481407,"files":[823,824,825,826,976,977,1070,2501,2505,3197,3625],"optional":[],"required_bytes":142481407},"doom|gzdoom":{"bytes":143312,"files":[2505],"optional":[],"required_bytes":143312},"doom|prboom":{"bytes":142481407,"files":[823,824,825,826,976,977,1070,2501,2505,3197,3625],"optional":[823,824,825,826,976,977,1070,2501,3197,3625],"required_bytes":143312},"dos|":{"bytes":57366868,"files":[38,39,40,116,148,149,243,244,245,246,247,248,249,250,251,252,253,513,518,519,1214,1215,1216,1217,2866,2867,2868,2869,2870,2871,2872,2873,2874,2875,2876,2877,2878,2879,2880,2881,2882,2883,2884,2885,2886,2887,2888,2889,2890,2891,2892],"optional":[],"required_bytes":57366868},"dos|dosbox_pure":{"bytes":43239764,"files":[38,39,40,116,148,149,243,244,245,246,247,248,249,250,251,252,518,519,1214,1215,1216,1217],"optional":[38,116,243,244,245,246,247,248,249,250,251,252],"required_bytes":3707312},"dragon32|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"elektronika-bk|bk":{"bytes":102528,"files":[577,578,579,580,581,582,583,584,585],"optional":[585],"required_bytes":102400},"enterprise-128|ep128emu_core":{"bytes":81920,"files":[878,881,886],"optional":[878,881,886],"required_bytes":0},"enterprise-64-128|":{"bytes":95957100,"files":[392,437,515,529,613,622,625,626,629,630,710,716,739,763,764,827,870,871,872,877,879,880,882,883,884,885,891,892,895,899,900,903,922,1084,1089,1090,1091,1092,1093,1094,1117,1118,1228,1230,1231,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1351,1352,1353,1354,1355,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,2030,2042,2043,2080,2107,2156,2255,2287,2308,2327,2330,2839,2840,2842,2844,2845,2847,2848,2851,2893,2989,2990,3013,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3116,3196,3555,3556,3558,3618,3621,3628],"optional":[],"required_bytes":95957100},"enterprise-64-128|ep128emu_core":{"bytes":376832,"files":[870,871,872,877,879,880,882,883,884,885,891,892,3628],"optional":[],"required_bytes":376832},"entex-advision|mess2015":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"fairchild-channelf|":{"bytes":5777,"files":[940,3024,3025,3026],"optional":[],"required_bytes":5777},"fairchild-channelf|freechaf":{"bytes":5777,"files":[940,3024,3025,3026],"optional":[],"required_bytes":5777},"famicom-disk-system|fceumm":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"famicom|fceumm":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"famicom|nestopia":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"flashback|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"flashback|reminiscence":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"flash|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"galaksija|galaksija":{"bytes":10240,"files":[1036,1037,1038],"optional":[],"required_bytes":10240},"game-boy-advance|mgba":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"game-boy-color|gambatte":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"game-boy|gambatte":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"gamepark-gp32|mame":{"bytes":1378301,"files":[1063],"optional":[],"required_bytes":1378301},"gametank|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"gametank|gametank":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"handheld-electronic|gw":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"igs-pgm|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"intellivision|":{"bytes":10240,"files":[923,1069],"optional":[],"required_bytes":10240},"intellivision|freeintv":{"bytes":10240,"files":[923,1069],"optional":[],"required_bytes":10240},"j2me|freej2me":{"bytes":112628937,"files":[978,979,980,3090,3091,3092,3094,3095,3096,3097,3099],"optional":[],"required_bytes":112628937},"j2me|freej2me_plus":{"bytes":113848030,"files":[978,979,980,981,3090,3091,3092,3094,3095,3096,3097,3099],"optional":[],"required_bytes":113848030},"j2me|squirreljme":{"bytes":119422451,"files":[978,979,980,3090,3091,3092,3093,3094,3095,3096,3097,3098,3099],"optional":[3093,3098],"required_bytes":112628937},"lowresnx|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"lowresnx|lowresnx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"mega-duck|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"mega-duck|sameduck":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"microsoft-xbox|xemu":{"bytes":3186872,"files":[113,2028,3598,3603,3604],"optional":[3598,3603],"required_bytes":2687488},"msx2plus|bluemsx":{"bytes":212992,"files":[157,158,159,160,161,191,192,193],"optional":[157,158,159,160,161],"required_bytes":65536},"msx2|bluemsx":{"bytes":622592,"files":[154,155,156,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,194,195,196,197,198,199],"optional":[154,155,156,177,178,179,180,182,183,184,185,186,187,188,189,190,194,195,196,197,198,199],"required_bytes":49152},"msxturbor|bluemsx":{"bytes":147456,"files":[202,213,214,215,216],"optional":[],"required_bytes":147456},"msx|bluemsx":{"bytes":7630068,"files":[37,41,115,117,118,119,120,121,122,126,127,128,141,142,143,144,145,146,147,151,152,153,166,167,168,169,170,171,172,173,174,175,200,201,203,204,205,206,207,208,209,210,211,212,217,218,219,220,221,222,223,224,225,226,227,233,242,948],"optional":[117,118,120,121,122,151,152,153,166,167,168,169,170,171,172,173,174,200,201,203,204,205,206,207,208,209,210,211,212,217,218,219,220,221,222,223,224,225,226,227],"required_bytes":1703016},"nec-pc-88|":{"bytes":925696,"files":[2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640,2641],"optional":[],"required_bytes":925696},"nec-pc-88|quasi88":{"bytes":925696,"files":[2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640,2641],"optional":[2630,2631,2632],"required_bytes":919552},"nec-pc-engine-cd|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nec-pc-engine-cd|mednafen_pce_fast":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nec-pc-engine|":{"bytes":1376256,"files":[1054,1057,3134,3135,3136,3137,3138],"optional":[],"required_bytes":1376256},"nec-pc-engine|mednafen_pce_fast":{"bytes":1376256,"files":[1054,1057,3134,3135,3136,3137,3138],"optional":[],"required_bytes":1376256},"nec-pc-engine|mednafen_supergrafx":{"bytes":1376256,"files":[1054,1057,3134,3135,3136,3137,3138],"optional":[],"required_bytes":1376256},"nec-pcfx|":{"bytes":4718592,"files":[1033,2342,2343,2344,2345],"optional":[],"required_bytes":4718592},"nec-pcfx|beetle_pcfx":{"bytes":4718592,"files":[1033,2342,2343,2344,2345],"optional":[],"required_bytes":4718592},"nec-supergrafx|mednafen_supergrafx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"neogeo|fbalpha2012":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"neogeo|fbalpha2012_neogeo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"neogeo|fbneo":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-3ds|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-3ds|azahar":{"bytes":3207537,"files":[23,24,25,26,27,28,29],"optional":[23,24,25,26,27,28,29],"required_bytes":0},"nintendo-3ds|citra":{"bytes":3271885,"files":[109,110,111,112],"optional":[109,110,111,112],"required_bytes":0},"nintendo-3ds|panda3ds":{"bytes":60621,"files":[236,237],"optional":[236,237],"required_bytes":0},"nintendo-64dd|":{"bytes":8454540,"files":[14,230,231],"optional":[],"required_bytes":8454540},"nintendo-64dd|mupen64plus_next":{"bytes":8454540,"files":[14,230,231],"optional":[231],"required_bytes":8388608},"nintendo-64dd|parallel_n64":{"bytes":8388608,"files":[14,230],"optional":[],"required_bytes":8388608},"nintendo-64|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-64|mupen64plus_next":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-64|parallel_n64":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-dsi|dsperate":{"bytes":251920448,"files":[830,831,832,833],"optional":[],"required_bytes":251920448},"nintendo-dsi|melonds_ds":{"bytes":251920448,"files":[830,831,832,833],"optional":[],"required_bytes":251920448},"nintendo-ds|":{"bytes":253573696,"files":[263,264,265,266,267,268,567,568,830,831,832,833,973,2161,2162,2163],"optional":[],"required_bytes":253573696},"nintendo-ds|drastic":{"bytes":252223552,"files":[567,568,830,831,832,833,973,2161,2162],"optional":[],"required_bytes":252223552},"nintendo-ds|melonds":{"bytes":252223552,"files":[567,568,830,831,832,833,973,2161,2162],"optional":[],"required_bytes":252223552},"nintendo-fds|":{"bytes":38542,"files":[798,943,1039],"optional":[],"required_bytes":38542},"nintendo-fds|fceumm":{"bytes":38542,"files":[798,943,1039],"optional":[],"required_bytes":38542},"nintendo-fds|nestopia":{"bytes":38542,"files":[798,943,1039],"optional":[],"required_bytes":38542},"nintendo-gamecube|":{"bytes":288170070,"files":[129,130,131,132,133,134,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053],"optional":[],"required_bytes":288170070},"nintendo-gamecube|dolphin":{"bytes":153933191,"files":[808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053],"optional":[816,817,818,819,820,821,822],"required_bytes":19679928},"nintendo-gba|":{"bytes":317952,"files":[263,264,265,266,267,268,1042],"optional":[],"required_bytes":317952},"nintendo-gba|gpsp":{"bytes":16384,"files":[1042],"optional":[],"required_bytes":16384},"nintendo-gba|mgba":{"bytes":16384,"files":[1042],"optional":[],"required_bytes":16384},"nintendo-gbc|":{"bytes":2294016,"files":[36,254,255,263,264,265,266,267,268,414,711,712,800,834,835,836,837,838,839,840,841,842,843,1043,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":2294016},"nintendo-gbc|gambatte":{"bytes":1990144,"files":[36,254,255,711,712,800,834,835,836,837,838,839,840,841,842,843,1043,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":1990144},"nintendo-gbc|mgba":{"bytes":1990144,"files":[36,254,255,711,712,800,834,835,836,837,838,839,840,841,842,843,1043,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":1990144},"nintendo-gb|":{"bytes":2287616,"files":[36,254,255,263,264,265,266,267,268,712,800,801,834,835,836,837,838,839,840,841,842,843,1041,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":2287616},"nintendo-gb|gambatte":{"bytes":1986048,"files":[36,254,255,712,800,801,834,835,836,837,838,839,840,841,842,843,1041,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":1986048},"nintendo-gb|mgba":{"bytes":1986048,"files":[36,254,255,712,800,801,834,835,836,837,838,839,840,841,842,843,1041,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":1986048},"nintendo-nes|":{"bytes":7079398,"files":[228,229,232,276,765,1039,1212,2181,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,2252,3622],"optional":[],"required_bytes":7079398},"nintendo-nes|fceumm":{"bytes":1034318,"files":[232,1039,2181],"optional":[2181],"required_bytes":1034126},"nintendo-nes|nestopia":{"bytes":5997926,"files":[232,765,1039,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,2252],"optional":[765],"required_bytes":5997734},"nintendo-nes|quicknes":{"bytes":1034126,"files":[232,1039],"optional":[],"required_bytes":1034126},"nintendo-pokemon-mini|":{"bytes":4096,"files":[565],"optional":[],"required_bytes":4096},"nintendo-pokemon-mini|pokemini":{"bytes":4096,"files":[565],"optional":[],"required_bytes":4096},"nintendo-satellaview|":{"bytes":4083900,"files":[34,35,36,254,255,257,258,259,260,261,712,800,834,835,836,837,838,839,840,841,842,843,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":4083900},"nintendo-satellaview|snes9x":{"bytes":4082688,"files":[34,35,36,254,255,712,800,834,835,836,837,838,839,840,841,842,843,3006,3008,3100,3101,3102,3103],"optional":[],"required_bytes":4082688},"nintendo-sgb|":{"bytes":3035648,"files":[36,254,255,277,278,279,712,800,834,835,836,837,838,839,840,841,842,843,3001,3002,3003,3004,3005,3006,3007,3008,3100,3101,3102,3103],"optional":[],"required_bytes":3035648},"nintendo-sgb|mgba":{"bytes":2772736,"files":[36,254,255,712,800,834,835,836,837,838,839,840,841,842,843,3001,3002,3004,3005,3006,3007,3008,3100,3101,3102,3103],"optional":[],"required_bytes":2772736},"nintendo-snes|chimerasnes":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3006,3008,3100,3101,3102,3103,3104,3105],"optional":[],"required_bytes":2152448},"nintendo-snes|mednafen_supafaust":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3006,3008,3100,3101,3102,3103,3104,3105],"optional":[],"required_bytes":2152448},"nintendo-snes|snes9x":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3006,3008,3100,3101,3102,3103,3104,3105],"optional":[],"required_bytes":2152448},"nintendo-snes|snes9x2005":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3006,3008,3100,3101,3102,3103,3104,3105],"optional":[],"required_bytes":2152448},"nintendo-snes|snes9x2005_plus":{"bytes":2152448,"files":[36,254,255,712,768,800,834,835,836,837,838,839,840,841,842,843,3006,3008,3100,3101,3102,3103,3104,3105],"optional":[],"required_bytes":2152448},"nintendo-sufami-turbo|":{"bytes":262144,"files":[256],"optional":[],"required_bytes":262144},"nintendo-sufami-turbo|snes9x":{"bytes":262144,"files":[256],"optional":[],"required_bytes":262144},"nintendo-sufami-turbo|snes9x2010":{"bytes":262144,"files":[256],"optional":[],"required_bytes":262144},"nintendo-switch|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-virtualboy|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-virtualboy|beetle_vb":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-wiiu|cemu":{"bytes":92610046,"files":[42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108],"optional":[42,43,44,45,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108],"required_bytes":449507},"nintendo-wii|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"nintendo-wii|dolphin":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"odyssey2|o2em":{"bytes":1606321,"files":[621,1034,1153,2292,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552,3553],"optional":[],"required_bytes":1606321},"olivetti-pc128|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"onscripter|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"onscripter|onscripter":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"openbor|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"openbor|openbor":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"palm-os|":{"bytes":40108544,"files":[594,2310,2311,2312,2313],"optional":[],"required_bytes":40108544},"palm-os|mu":{"bytes":40108544,"files":[594,2310,2311,2312,2313],"optional":[],"required_bytes":40108544},"panasonic-3do|opera":{"bytes":13123332,"files":[9,1062,2296,2314,2315,2316,2317,2318,2319,2320,2321,2322,2323,2858],"optional":[2296],"required_bytes":12992260},"pc-98|":{"bytes":1987076,"files":[2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284,2285],"optional":[],"required_bytes":1987076},"pc-98|nekop2":{"bytes":1933828,"files":[2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2281,2285],"optional":[2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270],"required_bytes":1117442},"pc-98|np2kai":{"bytes":1170690,"files":[2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284,2285],"optional":[2280,2282,2283,2284],"required_bytes":1117442},"pc80|quasi88":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"philips-cdi|same_cdi":{"bytes":2990918,"files":[693,2853,2854,2855,2856,2857],"optional":[2853,2854],"required_bytes":2123788},"philips-videopac|":{"bytes":1605297,"files":[621,1034,1153,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552,3553],"optional":[],"required_bytes":1605297},"philips-videopac|o2em":{"bytes":1605297,"files":[621,1034,1153,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552,3553],"optional":[],"required_bytes":1605297},"pico8|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"pico8|fake08":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"pico8|lexaloffle":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"quake2|vitaquake2":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"quake|tyrquake":{"bytes":159899459,"files":[1115,2642,2643,2644],"optional":[2643,2644],"required_bytes":66916006},"rpgmaker|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"rpgmaker|easyrpg":{"bytes":148398498,"files":[851,3597],"optional":[851,3597],"required_bytes":0},"rpgmaker|mkxp_z":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sammy-atomiswave|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sammy-atomiswave|flycast":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sammy-atomiswave|flycast2021":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"scummvm|":{"bytes":100146431,"files":[2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983,2984],"optional":[],"required_bytes":100146431},"scummvm|scummvm":{"bytes":100146431,"files":[2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983,2984],"optional":[2931,2932,2933,2934,2938,2939,2942,2945,2946,2949,2950,2953,2965,2966,2975],"required_bytes":54440382},"scv|emuscv":{"bytes":4096,"files":[3230],"optional":[],"required_bytes":4096},"sega-32x|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-32x|picodrive":{"bytes":3328,"files":[5,6,7],"optional":[5,6,7],"required_bytes":0},"sega-dreamcast|":{"bytes":7204656,"files":[593,774,775,776,777,778,974],"optional":[],"required_bytes":7204656},"sega-dreamcast|flycast":{"bytes":4456448,"files":[774,775,776,777],"optional":[776],"required_bytes":4325376},"sega-dreamcast|flycast2021":{"bytes":4976432,"files":[774,775,776,777,778],"optional":[776,778],"required_bytes":4325376},"sega-gamegear|gearsystem":{"bytes":1024,"files":[564],"optional":[],"required_bytes":1024},"sega-gamegear|genesis_plus_gx":{"bytes":1024,"files":[564],"optional":[],"required_bytes":1024},"sega-gamegear|picodrive":{"bytes":17391,"files":[564,679],"optional":[679],"required_bytes":1024},"sega-genesis|genesis_plus_gx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-genesis|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-mastersystem|gearsystem":{"bytes":32768,"files":[566,572,573,575],"optional":[],"required_bytes":32768},"sega-mastersystem|genesis_plus_gx":{"bytes":32768,"files":[566,572,573,575],"optional":[],"required_bytes":32768},"sega-mastersystem|picodrive":{"bytes":49135,"files":[566,572,573,575,679],"optional":[679],"required_bytes":32768},"sega-mastersystem|smsplus":{"bytes":32768,"files":[566,572,573,575],"optional":[],"required_bytes":32768},"sega-megacd|genesis_plus_gx":{"bytes":393216,"files":[569,570,571],"optional":[],"required_bytes":393216},"sega-megacd|picodrive":{"bytes":1589231,"files":[262,569,570,571,679,915,916,917,1154,1155,1156,3231,3232],"optional":[262,679,915,916,1154,1155,3231],"required_bytes":786432},"sega-megadrive|genesis_plus_gx":{"bytes":2444622,"files":[492,574,1060,2665,3022,3023],"optional":[],"required_bytes":2444622},"sega-megadrive|picodrive":{"bytes":2460989,"files":[492,574,679,1060,2665,3022,3023],"optional":[679],"required_bytes":2444622},"sega-model3|supermodel3":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-naomi|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-naomi|flycast":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-naomi|flycast2021":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-outrun|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-outrun|cannonball":{"bytes":2621440,"files":[637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676],"optional":[638,640,642,644,646,648,650,652,665],"required_bytes":2064384},"sega-pico|fake08":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-pico|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-saturn|":{"bytes":13744217,"files":[691,1095,1202,1203,2052,2063,2064,2065,2066,2859,2861,2992,2993,2994,2995,3560],"optional":[],"required_bytes":13744217},"sega-saturn|yabasanshiro":{"bytes":12892249,"files":[1095,1202,1203,2063,2064,2065,2066,2861,2992,2993,2994,2995,3560],"optional":[],"required_bytes":12892249},"sega-sc3000|bluemsx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sc3000|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sf7000|bluemsx":{"bytes":8192,"files":[162],"optional":[],"required_bytes":8192},"sega-sg1000|bluemsx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sg1000|gearsystem":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sg1000|genesis_plus_gx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-sg1000|picodrive":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-stv|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-stv|beetle_saturn":{"bytes":5027929,"files":[896,897,898,3109],"optional":[3109],"required_bytes":1572864},"sega-triforce|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-vmu|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sega-vmu|vemulator":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sharp-x1|":{"bytes":349184,"files":[3609,3610,3611,3612,3613],"optional":[],"required_bytes":349184},"sharp-x1|x1":{"bytes":349184,"files":[3609,3610,3611,3612,3613],"optional":[3609,3610,3611],"required_bytes":36864},"sharp-x68000|":{"bytes":1310720,"files":[1173,1174,1175,1176,1177],"optional":[],"required_bytes":1310720},"sharp-x68000|px68k":{"bytes":1310720,"files":[1173,1174,1175,1176,1177],"optional":[],"required_bytes":1310720},"sinclair-zx-spectrum|":{"bytes":946477,"files":[0,1,2,3,11,795,796,893,894,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1119,1120,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2500,2985,2986,3046,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162,3163],"optional":[],"required_bytes":946477},"sinclair-zx-spectrum|fuse":{"bytes":946477,"files":[0,1,2,3,11,795,796,893,894,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1119,1120,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2500,2985,2986,3046,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162,3163],"optional":[],"required_bytes":946477},"sinclair-zx81|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sinclair-zx81|81":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-neogeo-cd|":{"bytes":8008490,"files":[953,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177],"optional":[],"required_bytes":8008490},"snk-neogeo-cd|neocd":{"bytes":6835502,"files":[952,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2178],"optional":[],"required_bytes":6835502},"snk-neogeo-pocket|beetle_ngp":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngpc|beetle_ngp":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngp|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngp|beetle_ngp":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"snk-ngp|race":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"solarus|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sony-playstation-2|":{"bytes":437955723,"files":[857,2346,2347,2348,2349,2350,2351,2352,2353,2354,2355,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2403,2404,2405,2406,2407,2408,2409,2410,2411,2412,2413,2414,2415,2416,2417,2418,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2437,2438,2439,2440,2441,2442,2443,2444,2445,2446,2447,2448,2449,2450,2451,2452,2453,2454,2455,2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470,2471],"optional":[],"required_bytes":437955723},"sony-playstation-2|aethersx2":{"bytes":307921991,"files":[2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2394,2396,2397,2398,2399,2400,2401,2403,2404,2405,2406,2408,2410,2411,2412,2413,2414,2416,2417,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2437,2440,2442,2443,2444,2445,2446,2471],"optional":[],"required_bytes":307921991},"sony-playstation-3|rpcs3":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sony-playstation-vita|vita3k":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sony-playstation|":{"bytes":344981504,"files":[847,2295,2511,2512,2513,2514,2515,2516,2517,2518,2519,2520,2521,2522,2523,2524,2525,2526,2527,2528,2529,2530,2531,2532,2533,2535,2536,2537,2538,2539,2540,2541,2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566,2567,2568,2569,2570,2571,2572,2573,2574,2575,2576,2577,2578,2579,2580,2581,2582,2583,2584,2585,2586,2587,2588,2589,2590,2591,2592,2597,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2906,2907,2908,2909,2910,2911,2912,2913,2914,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924,2925,2926,2927],"optional":[],"required_bytes":344981504},"sony-playstation|beetle_psx":{"bytes":13107200,"files":[2295,2511,2597,2894,2895,2897,2900,2904,2908,2909,2910,2913,2914,2915,2916,2917,2918,2919,2920,2923,2924,2925,2926,2927],"optional":[2295,2920],"required_bytes":11534336},"sony-playstation|pcsx_rearmed":{"bytes":11534336,"files":[2511,2597,2894,2895,2897,2900,2904,2908,2909,2910,2913,2914,2915,2916,2917,2918,2919,2923,2924,2925,2926,2927],"optional":[],"required_bytes":11534336},"sony-psp|":{"bytes":1785762,"files":[234,235],"optional":[],"required_bytes":1785762},"sony-psp|ppsspp":{"bytes":1785762,"files":[234,235],"optional":[234],"required_bytes":666530},"spectravideo|bluemsx":{"bytes":98304,"files":[163,164,165],"optional":[],"required_bytes":98304},"sunplus-native32|native32emu":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"sunplus-spmp8000|spmp8000emu":{"bytes":130500,"files":[3198],"optional":[3198],"required_bytes":0},"super-mario-war|superbroswar":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"texas-instruments-ti-83|":{"bytes":2883584,"files":[3171,3172,3173],"optional":[],"required_bytes":2883584},"texas-instruments-ti-83|numero":{"bytes":2883584,"files":[3171,3172,3173],"optional":[],"required_bytes":2883584},"thomson-mo5|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-mo6|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to770|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to7|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to8d|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to8|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to9plus|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"thomson-to9|theodore":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"ti99|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"tic80|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"tic80|tic80":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"tomb-raider|openlara":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"uzebox|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"uzebox|uzem":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"vectrex|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"vectrex|vecx":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"videoton-tvc|ep128emu_core":{"bytes":49152,"files":[887,888,889,890],"optional":[],"required_bytes":49152},"vircon32|vircon32":{"bytes":1073060,"files":[280],"optional":[],"required_bytes":1073060},"watara-supervision|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"watara-supervision|potator":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"wolfenstein3d|ecwolf":{"bytes":178755,"files":[856],"optional":[],"required_bytes":178755},"wonderswan-color|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"wonderswan|beetle_wswan":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"xegs|atari800":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"xrick|":{"bytes":1457440,"files":[3614],"optional":[],"required_bytes":1457440},"xrick|xrick":{"bytes":1457440,"files":[3614],"optional":[],"required_bytes":1457440},"zeldaclassic|":{"bytes":0,"files":[],"optional":[],"required_bytes":0},"zmachine|mojozork":{"bytes":0,"files":[],"optional":[],"required_bytes":0}}}
diff --git a/install/games/index.json b/install/games/index.json
index e45e1c3d9..a95279495 100644
--- a/install/games/index.json
+++ b/install/games/index.json
@@ -1 +1 @@
-{"arcade":{"fbneo":{"file":"arcade/fbneo.json","gzip_size":115955,"sha256":"88961c9a6be804772baa767f6ee3a9162478c30c60fe55c8363d8fe4fbc909da","size":423362},"flycast":{"file":"arcade/flycast.json","gzip_size":1841,"sha256":"957189a6e993fda08e21c90ffc6ad94aed9ca9e6dd9ed8c7724e29db036791cb","size":5441},"mame":{"file":"arcade/mame.json","gzip_size":154527,"sha256":"b12010301293a218ecfac45706d81a26c3ac0c27eebeca7409bc8f6ce0163e9e","size":604648},"mame0258":{"file":"arcade/mame0258.json","gzip_size":141151,"sha256":"7ecff1979ed2ac123ea3ba4825dde6e2c31906415165fabefc9af93fa48a6de4","size":556059},"mame0278":{"file":"arcade/mame0278.json","gzip_size":148595,"sha256":"7881e3516f451ec83e886aaf41ebac9d60f497e1f954f49749d52890d7955cbf","size":582797},"mame2000":{"file":"arcade/mame2000.json","gzip_size":8624,"sha256":"f0d69b0872ecfc2845eeb7304543e5b17c11db82060b5514c206b6962ed08263","size":23316},"mame2003":{"file":"arcade/mame2003.json","gzip_size":17456,"sha256":"3b44e2a92c80a8f104b7781fcc1c776d025ad2cf4986638efa3ea041baa9a56d","size":48929},"mame2003_plus":{"file":"arcade/mame2003_plus.json","gzip_size":21077,"sha256":"2857283556fa49c20d8160ed113465bf0c2e643ed0b8acd2d38266a78be8e25e","size":62373},"mame2010":{"file":"arcade/mame2010.json","gzip_size":30869,"sha256":"50b1b381b4b07463f69f1f4c512dd1c98a78d4d0e9c3aeaf49b7b1b007b42152","size":96528},"mame2015":{"file":"arcade/mame2015.json","gzip_size":86990,"sha256":"afeb8c32f651421f74c6de057b0c0b837acd14c533b5160bb31f4411e0afffec","size":360117},"mame2016":{"file":"arcade/mame2016.json","gzip_size":101249,"sha256":"1f75147977d9d082a38b8f8e47a02b301f3d6e6db97c9b9282f3e7f27f26ee47","size":406190}},"containers":{"7z":{"description":"Per-file CRCs and sizes sit in the header at the end of the archive, LZMA-compressed by default (kEncodedHeader). One LZMA decode of the header, independent of the archive size, gives them. Python's lzma is an optional module.","re_read":true,"signature":{"bytes_hex":"377abcaf271c","offset":0},"source_ref":"ip7z/7zip@b88c6bc0 DOC/7zFormat.txt:171-189, DOC/7zFormat.txt:318-334, CPP/7zip/Archive/7z/7zHandlerOut.cpp:859"},"cd-sector":{"description":"User data of a CD sector. In a 2048-byte image (.iso) sector N starts at N * 2048. In a raw 2352-byte image it starts at N * 2352 plus 16 for Mode 1 and plus 24 for Mode 2 Form 1 (12 sync bytes, a 4-byte header, and for Mode 2 an 8-byte subheader).","re_read":true,"sector_size":{"iso":2048,"raw":2352},"source_ref":"stenzek/duckstation@526b4a12 src/util/iso_reader.cpp:157-171, src/util/cd_image.h:28-34","user_data_offset":{"mode1":16,"mode2":24}},"chd-v5":{"description":"MAME compressed hunks, big-endian. The header holds sizes, codecs and hashes only, never the system or the region. The overall SHA-1 is what MAME software lists record. Neither SHA-1 equals a Redump track hash: chdman hashes 2448-byte frames (subcode included, zero-filled), pads each track to 4 frames and byte-swaps audio, all tracks in one stream.","fields":{"compressors":{"encoding":"fourcc4","length":16,"offset":16},"header_length":{"encoding":"u32be","length":4,"offset":8,"value":124},"hunk_bytes":{"encoding":"u32be","length":4,"offset":56},"logical_bytes":{"encoding":"u64be","length":8,"offset":32},"map_offset":{"encoding":"u64be","length":8,"offset":40},"metadata_offset":{"encoding":"u64be","length":8,"offset":48},"overall_sha1":{"encoding":"hex","length":20,"offset":84},"parent_sha1":{"encoding":"hex","length":20,"offset":104},"raw_sha1":{"encoding":"hex","length":20,"offset":64},"unit_bytes":{"encoding":"u32be","length":4,"offset":60},"version":{"encoding":"u32be","length":4,"offset":12,"value":5}},"magic":{"bytes":"MComprHD","offset":0},"media_tags":{"CHCD":"cd","CHGD":"gd-rom","CHGT":"gd-rom","CHT2":"cd","CHTR":"cd","DVD ":"dvd","GDDD":"hard-disk"},"metadata_entry":{"description":"16-byte entry header, payload follows. Linked list from metadata_offset.","flags":{"encoding":"u8","length":1,"offset":4},"length":{"encoding":"u24be","length":3,"offset":5},"next":{"encoding":"u64be","length":8,"offset":8},"tag":{"encoding":"ascii","length":4,"offset":0}},"re_read":true,"source_ref":"mamedev/mame@f34f0250 src/lib/util/chd.h:148-162, src/lib/util/chd.cpp:2021-2061, src/lib/util/chd.cpp:2822-2831, src/lib/util/chd.h:212-235, src/lib/util/chd.cpp:1709-1749, src/tools/chdman.cpp:443-445, src/tools/chdman.cpp:2195-2203, src/lib/util/cdrom.cpp:2669-2672, src/emu/romload.cpp:1211"},"gamecube-disc":{"description":"Where disc offset 0 sits inside each container Dolphin opens.","formats":{"ciso":{"disc_header_at":32768,"magic":"CISO"},"gcz":{"disc_header_at":null,"magic_u32le":2970337281,"note":"block 0 is zlib unless bit 63 of its pointer is set"},"iso":{"disc_header_at":0,"magic":null},"rvz":{"disc_header_at":88,"magic":"RVZ\u0001","note":"first 0x80 disc bytes copied into header 2"},"wbfs":{"disc_header_at":null,"magic":"WBFS","note":"disc offset 0 at wlba[0] << wbfs_sector_shift"},"wia":{"disc_header_at":88,"magic":"WIA\u0001","note":"first 0x80 disc bytes copied into header 2"}},"re_read":true,"source_ref":"dolphin-emu/dolphin@0d93fc03 Source/Core/DiscIO/WIABlob.h:80-119, Source/Core/DiscIO/WIABlob.cpp:320-330, Source/Core/DiscIO/CISOBlob.cpp:66-69, Source/Core/DiscIO/CompressedBlob.cpp:140-150, Source/Core/DiscIO/WbfsBlob.cpp:148-155"},"iso9660":{"description":"Primary volume descriptor in sector 16 ('CD001' at offset 1), root directory record at PVD offset 156 (34 bytes). A file is found by name in the root directory, with the ';1' version suffix.","pvd_sector":16,"re_read":true,"root_record_offset":156,"source_ref":"stenzek/duckstation@526b4a12 src/util/iso_reader.cpp:68-90, src/util/iso_reader.h:60-99"},"zip":{"description":"The central directory gives each member's CRC-32 (offset 16) and uncompressed size (offset 24) without inflating. Python's zipfile reads it on open (ZipInfo.CRC, ZipInfo.file_size).","re_read":true,"source_ref":"python/cpython@fa919fdf Lib/zipfile.py:99-115, Lib/zipfile.py:1293-1347"}},"data_version":"c17b9f2dda6f9774","fallback":{"amberelec":{"file":"fallback/amberelec.json","gzip_size":12141,"sha256":"6a3c624996adc555ad45c170dc5c0402841a4ec2361a9ed11acffd666a6fa4b4","size":61223},"batocera":{"file":"fallback/batocera.json","gzip_size":42316,"sha256":"4ee3450717aa1e7cac1941bfc6e72a718973bfb2cd0a41d213ccadae58aa6724","size":309422},"bizhawk":{"file":"fallback/bizhawk.json","gzip_size":1944,"sha256":"152b14f3aff69714698a58837d6331ebcbcd3aaaa5f62939b9c743e535a319f4","size":7320},"emudeck":{"file":"fallback/emudeck.json","gzip_size":26318,"sha256":"11a818cb8a36969586b45fa50390cae1f354ce915a70a1b1d5e45d26b9c5dd84","size":110253},"emuelec":{"file":"fallback/emuelec.json","gzip_size":16695,"sha256":"1e76868f0cb723a0b44a1b403f666cc37eeefdd7b7bf420d5e2e2053f28c9464","size":82083},"knulli":{"file":"fallback/knulli.json","gzip_size":39825,"sha256":"62ec2a347783a30e6e0a61a5df3045b347013a1022c73d39945147d5908f7920","size":267594},"minui":{"file":"fallback/minui.json","gzip_size":701,"sha256":"d68b30917db60263e57331271ebc33d00520dcbc15cdcaba8ccaf2901be2c870","size":2761},"misterfpga":{"file":"fallback/misterfpga.json","gzip_size":1898,"sha256":"b8f457378063d2f9b4010c2fefc21561df71e2e2d06f4ad1a7d945f4ad0a6f55","size":9569},"myminui":{"file":"fallback/myminui.json","gzip_size":1887,"sha256":"029242a5d03083b697c3c801f5a7f86687d62432fa925e0ec1c4759c3e3c20a5","size":7993},"nextui":{"file":"fallback/nextui.json","gzip_size":3088,"sha256":"3c28a4e3d67d5e5b653303419423c4326845b7e8b047c5f4ee1fdf44da0f5faf","size":15502},"recalbox":{"file":"fallback/recalbox.json","gzip_size":13869,"sha256":"6854fff04b6e4d619f92e76b0427f45fd0bd06c1d88f9037b603c0a0dc9c9efc","size":62692},"retroarch":{"file":"fallback/retroarch.json","gzip_size":45029,"sha256":"77f3ba3c64bdbe6fa7b4d84f4df2036548e395463c1decc50366b669669952a8","size":217735},"retrobat":{"file":"fallback/retrobat.json","gzip_size":32950,"sha256":"59aae7e5e1c53931a456cfe4cf580e3c0dd3bf8bd77455baa7732670404a4786","size":139887},"retrodeck":{"file":"fallback/retrodeck.json","gzip_size":46070,"sha256":"bfd7ffd2d69a7a0d2df0fdf70072661060f6538379b46960d79e9405b6ace447","size":236872},"retropie":{"file":"fallback/retropie.json","gzip_size":37196,"sha256":"20a85de251a7e43246bbf55d6902bdcd3989b4969d1f61b771b9f4a51824463e","size":153232},"rocknix":{"file":"fallback/rocknix.json","gzip_size":9255,"sha256":"e86b0b9099692f63e4f59bc0b1cd7dfc0b1c74bd381e0f53749c5d6a85630ba0","size":38910},"romm":{"file":"fallback/romm.json","gzip_size":6111,"sha256":"e4009ba31a3a5e08d7cf0c6cfcdfaa0e704faa19460d8e1c0fc169b745a4a15e","size":27444}},"folders":{"240ptestsuite":["nintendo-fds","nintendo-nes"],"2600":["atari-2600"],"2ship":["2ship"],"32x":["sega-32x"],"3d0":["panasonic-3do"],"3do":["panasonic-3do"],"3ds":["nintendo-3ds"],"5200":["atari-5200"],"64":["nintendo-64"],"64dd":["nintendo-64","nintendo-64dd"],"7800":["atari-7800"],"800":["atari-400-800"],"a2600":["atari-2600"],"a5200":["atari-5200"],"a7800":["atari-7800"],"a800":["atari-400-800"],"acclaim-zn1":["acclaim-zn1"],"acorn-archimedes":["acorn-archimedes"],"acorn-bbc-micro":["acorn-bbc-micro"],"acpc":["amstrad-cpc"],"actionmax":["arcade-laserdisc"],"adam":["coleco-adam"],"advision":["entex-advision"],"advmame":["arcade"],"agb":["nintendo-gba"],"ags":["ags"],"amiga":["commodore-amiga"],"amiga (puae)":["commodore-amiga","commodore-amiga-cd32","commodore-cdtv"],"amiga-cd32":["commodore-amiga-cd32"],"amiga1200":["commodore-amiga"],"amiga4000":["commodore-amiga"],"amiga500":["commodore-amiga"],"amiga600":["commodore-amiga"],"amigacd32":["commodore-amiga","commodore-amiga-cd32"],"amigacdtv":["commodore-amiga"],"amstrad":["amstrad-cpc"],"amstrad cpc (cpc)":["amstrad-cpc"],"amstrad-cpc":["amstrad-cpc"],"amstradcpc":["amstrad-cpc"],"amstradgx4000":["amstrad-cpc"],"apf-m1000":["apf-m1000"],"apfm1000":["apf-m1000"],"apple":["apple2"],"apple ii":["apple-ii"],"apple-ii":["apple-ii"],"apple-iigs":["apple-iigs"],"apple-ios":["apple-ios"],"apple-macintosh":["apple-macintosh"],"apple-macintosh-ii":["apple-macintosh-ii"],"apple2":["apple2"],"apple2gs":["apple-iigs"],"applemacintosh":["apple-macintosh"],"aquaplus-piece":["aquaplus-piece"],"aquarius":["mattel-aquarius"],"arcade":["arcade","capcom-cps1","capcom-cps2","capcom-cps3"],"arcade (mame)":["arcade"],"arcade-laserdisc":["arcade-laserdisc"],"arcadeatomiswave":["sammy-atomiswave"],"arcadehbmame":["arcade"],"arcadenaomi":["sammy-atomiswave"],"arcadeneogeo":["neogeo"],"arcadeneogeocd":["snk-neogeo-cd"],"arcadesegaatomiswave":["sammy-atomiswave"],"arcadeseganaomi":["sammy-atomiswave"],"arcadesnk":["neogeo"],"arcadesnkneogeo":["neogeo"],"arcadevertical":["arcade"],"arcadia":["emerson-arcadia-2001"],"arcatomiswave":["sammy-atomiswave"],"archimedes":["acorn-archimedes"],"arcnaomi":["sammy-atomiswave"],"arcneogeo":["neogeo"],"arcneogeocd":["snk-neogeo-cd"],"arcsegaatomiswave":["sammy-atomiswave"],"arcseganaomi":["sammy-atomiswave"],"arduboy":["arduboy"],"ast":["atari-st"],"aste":["atari-st"],"astrocade":["bally-astrocade"],"astrocde":["bally-astrocade"],"atari":["atari-2600"],"atari 2600 (a2600)":["atari-2600"],"atari 5200 (a5200)":["atari-5200"],"atari 7800":["atari-7800"],"atari 7800 (a7800)":["atari-7800"],"atari jaguar":["atari-jaguar"],"atari lynx (lynx)":["atari-lynx"],"atari st":["atari-st"],"atari-2600":["atari-2600"],"atari-2600-plus":["atari-2600"],"atari-400-800":["atari-400-800"],"atari-5200":["atari-5200"],"atari-7800":["atari-7800"],"atari-jaguar":["atari-jaguar"],"atari-jaguarcd":["atari-jaguarcd"],"atari-lynx":["atari-lynx"],"atari-lynx-mkii":["atari-lynx"],"atari-st":["atari-st"],"atari-zn1":["atari-zn1"],"atari2600":["atari-2600"],"atari5200":["atari-5200"],"atari5200 (a5200)":["atari-5200"],"atari7800":["atari-7800"],"atari7800 (a7800)":["atari-7800"],"atari800":["atari-400-800"],"atari8bit":["atari-400-800"],"atarifalcon":["atari-st"],"atarijaguar":["atari-jaguar"],"atarijaguarcd":["atari-jaguar","atari-jaguarcd"],"atarilynx":["atari-lynx"],"atarist":["atari-st"],"atariste":["atari-st"],"ataritt":["atari-st"],"atarixe":["atari-400-800"],"atarixegs":["xegs"],"atlus-zn1":["atlus-zn1"],"atom":["atom"],"atomiswave":["sammy-atomiswave","sega-dreamcast-arcade"],"aw":["sammy-atomiswave"],"bally-astrocade":["bally-astrocade"],"bandai-rx78":["bandai-rx78"],"bandai-wswan":["bandai-wswan"],"bandai-wswanc":["bandai-wswanc"],"bandaiwonderswan":["wonderswan"],"bandaiwonderswancolor":["wonderswan"],"bbc":["acorn-bbc-micro"],"bbcmicro":["acorn-bbc-micro"],"bbk":["bbk-longman-4980","bbk-longman-4988"],"bbk-longman-4980":["bbk-longman-4980"],"bbk-longman-4988":["bbk-longman-4988"],"beena":["sega-beena"],"bennugd":["bennugd"],"bermuda-syndrome":["bermuda-syndrome"],"bgb":["game-boy-color"],"bk":["elektronika-bk"],"blake-stone":["blake-stone"],"blood":["blood"],"bshift":["bshift"],"bstone":["blake-stone"],"bsx":["nintendo-satellaview"],"bsyndrome":["bermuda-syndrome"],"build":["blood","duke3d","exhumed","nam","powerslave","redneck","shadow-warrior","ww2gi"],"bws":["wonderswan"],"bwsc":["wonderswan"],"c-plus-4":["commodore-plus4"],"c128":["commodore-c128"],"c16":["commodore-plus4"],"c20":["commodore-vic20"],"c64":["commodore-c64"],"caesar3":["caesar3"],"camplynx":["camplynx"],"cannonball":["sega-outrun"],"capcom-cps1":["capcom-cps1"],"capcom-cps2":["capcom-cps2"],"capcom-cps3":["capcom-cps3"],"capcom-zn1":["capcom-zn1"],"capcom-zn2":["capcom-zn2"],"capcomcps1":["capcom-cps1"],"capcomcps2":["capcom-cps2"],"capcomcps3":["capcom-cps3"],"casio-loopy":["casio-loopy"],"casio-pv1000":["casio-pv1000"],"casio-pv2000":["casio-pv2000"],"casio_pv-1000":["casio-pv1000"],"casio_pv-2000":["casio-pv2000"],"casioloopy":["casio-loopy"],"cassettevision":["epochcv"],"catacomb":["catacomb-3d","catacomb-adventure"],"catacomb-3d":["catacomb-3d"],"catacomb-adventure":["catacomb-adventure"],"cave-story":["cave-story"],"cavestory":["cave-story"],"cbm-ii":["commodore-cbm-ii"],"cbmii":["commodore-cbm-ii"],"cd-i":["philips-cdi"],"cdi":["philips-cdi"],"cdimono1":["philips-cdi"],"cdtv":["commodore-amiga","commodore-cdtv"],"cgb":["nintendo-gbc"],"cgenie":["cgenie"],"cgenius":["commander-keen"],"channel f":["fairchild-channelf"],"channelf":["fairchild-channelf"],"chex":["chex"],"chf":["fairchild-channelf"],"chihiro":["sega-chihiro"],"chip-8":["chip8"],"chip8":["chip8"],"chipeight":["chip8"],"coco":["coco"],"coco3":["coco","coco3"],"coleco":["colecovision"],"coleco vision":["colecovision"],"coleco-adam":["coleco-adam"],"colecovision":["colecovision"],"colecovision (coleco)":["colecovision"],"commander-keen":["commander-keen"],"commanderx16":["commanderx16"],"commmodore-128":["commodore-c128"],"commodore":["commodore-c64"],"commodore 128 (c128)":["commodore-c128"],"commodore 64 (c64)":["commodore-c64"],"commodore pet (pet)":["commodore-pet"],"commodore plus4 (plus4)":["commodore-plus4"],"commodore vic20 (vic)":["commodore-vic20"],"commodore-64c":["commodore-c64"],"commodore-amiga":["commodore-amiga"],"commodore-amiga-cd32":["commodore-amiga-cd32"],"commodore-c128":["commodore-c128"],"commodore-c64":["commodore-c64"],"commodore-cbm-ii":["commodore-cbm-ii"],"commodore-cdtv":["commodore-cdtv"],"commodore-pet":["commodore-pet"],"commodore-plus4":["commodore-plus4"],"commodore-vic20":["commodore-vic20"],"commodore128":["commodore-c128"],"commodore64":["commodore-c64"],"commodoreamiga":["commodore-amiga"],"commodorec128":["commodore-c128"],"commodorec64":["commodore-c64"],"commodorecbmii":["commodore-cbm-ii"],"commodorepet":["commodore-pet"],"commodoreplus4":["commodore-plus4"],"commodorevic20":["commodore-vic20"],"corsixth":["theme-hospital"],"cougarboy":["mega-duck"],"cpc":["amstrad-cpc"],"cpet":["commodore-pet"],"cplus4":["commodore-plus4"],"cps":["arcade"],"cps1":["arcade","capcom-cps1"],"cps2":["arcade","capcom-cps2"],"cps3":["arcade","capcom-cps3"],"creativision":["crvision"],"crvision":["crvision"],"cstrike":["cstrike"],"cv":["colecovision"],"czero":["czero"],"czeror":["czeror"],"daphne":["arcade-laserdisc"],"dark-forces":["dark-forces"],"dark-forces-ii":["dark-forces-ii"],"dc":["sega-dreamcast"],"descent":["descent"],"descent2":["descent2"],"devilutionx":["diablo"],"diablo":["diablo"],"dice":["discrete-arcade"],"dinothawr":["dinothawr"],"discrete-arcade":["discrete-arcade"],"disksystem":["nintendo-fds"],"dmc":["dmc"],"dmg":["game-boy","nintendo-gb"],"doom":["doom"],"doom (doom)":["doom"],"doom (prboom)":["doom","heretic"],"doom3":["doom3"],"dos":["dos"],"dosbox":["dos"],"dragon":["coco","dragon64"],"dragon32":["coco","dragon32"],"dragon64":["coco","dragon64"],"dreamcast":["sega-dreamcast"],"dreamm":["dos","fmtowns","ibm-pc","tandy-1000"],"droidworks":["droidworks"],"ds":["nintendo-ds"],"dsi":["nintendo-ds","nintendo-dsi"],"duke3d":["duke3d"],"dusklight":["dusklight"],"dxx-rebirth":["descent","descent2"],"easyrpg":["rpgmaker"],"ecwolf":["wolfenstein3d"],"eduke32":["duke3d"],"eighthundred":["atari-400-800"],"eighting-zn1":["eighting-zn1"],"electron":["electron"],"elektor-tv-games-computer":["elektor-tv-games-computer"],"elektronika":["elektronika-bk"],"elektronika-bk":["elektronika-bk"],"elektronikabk":["elektronika-bk"],"emerson-arcadia-2001":["emerson-arcadia-2001"],"enemyterritory":["enemyterritory"],"enterprise":["enterprise-128","enterprise-64-128"],"enterprise-128":["enterprise-128"],"enterprise-64-128":["enterprise-64-128"],"enterprise128":["enterprise-128"],"entex-advision":["entex-advision"],"ep128":["enterprise-128"],"ep64-128":["enterprise-64-128"],"epochcv":["epochcv"],"epochsupercassettevision":["scv"],"epsxe":["sony-playstation"],"etlegacy":["enemyterritory"],"exelvision-exl100":["exelvision-exl100"],"exhumed":["exhumed"],"exl100":["exelvision-exl100"],"fairchild":["fairchild-channelf"],"fairchild-channel-f":["fairchild-channelf"],"fairchild-channelf":["fairchild-channelf"],"fairchildchannelf":["fairchild-channelf"],"fake08":["pico8"],"falcon":["atari-st"],"fallout":["fallout"],"fallout1-ce":["fallout"],"fallout2":["fallout2"],"fallout2-ce":["fallout2"],"famicom":["famicom","nintendo-nes"],"famicom disk system (fds)":["nintendo-fds"],"famicom-disk-system":["famicom-disk-system"],"famicomdisk":["nintendo-fds"],"famicomdisksystem":["famicom-disk-system"],"famicomds":["famicom-disk-system"],"fat plumber shit":["nintendo-nes"],"fba":["arcade"],"fbneo":["arcade"],"fbnneogeo":["neogeo"],"fc":["famicom","nintendo-fds","nintendo-nes"],"fcds":["famicom-disk-system"],"fcnes":["famicom"],"fds":["famicom-disk-system","nintendo-fds"],"fiftytwohundred":["atari-5200"],"finalburnneo":["arcade"],"flash":["flash"],"flashback":["flashback"],"flycast":["sega-dreamcast"],"fm-7":["fm7"],"fm7":["fm7"],"fmtowns":["fmtowns"],"fmtownsux":["fmtowns"],"fpinball":["fpinball"],"freej2me":["j2me"],"fury":["fury"],"galaksija":["galaksija"],"galretro":["galaksija"],"gamate":["gamate"],"game boy (gb)":["nintendo-gb"],"game boy advance (gba)":["nintendo-gba"],"game boy advance (mgba)":["nintendo-gba"],"game boy color (gbc)":["nintendo-gbc"],"game gear":["sega-gamegear"],"game-boy":["game-boy"],"game-boy-adavance-sp":["nintendo-gb","nintendo-gba","nintendo-gbc","nintendo-sgb"],"game-boy-advance":["game-boy-advance"],"game-boy-color":["game-boy-color"],"game-boy-light":["nintendo-gb","nintendo-gbc"],"game-boy-micro":["nintendo-gb","nintendo-gba","nintendo-gbc","nintendo-sgb"],"game-boy-pocket":["nintendo-gb","nintendo-gbc"],"game-televisison":["nintendo-fds","nintendo-nes"],"gameandwatch":["handheld-electronic"],"gameboy":["game-boy","nintendo-gb"],"gameboyadvance":["game-boy-advance","nintendo-gba"],"gameboycolor":["game-boy-color","nintendo-gbc"],"gamecom":["tiger-game-com"],"gamecube":["nintendo-gamecube"],"gamegear":["sega-gamegear"],"gamegearh":["sega-gamegear"],"gamegearhacks":["sega-gamegear"],"gameking":["gameking"],"gamemaster":["hartung-game-master"],"gamenwatch":["handheld-electronic"],"gamepark-gp32":["gamepark-gp32"],"gamepock":["gamepock"],"gamepocketcomputer":["gamepock"],"gametank":["gametank"],"gb":["game-boy","nintendo-gb","nintendo-gbc"],"gb2players":["nintendo-gb"],"gba":["game-boy-advance","nintendo-gba"],"gba2players":["nintendo-gba"],"gbadvance":["game-boy-advance"],"gbah":["nintendo-gba"],"gbahacks":["game-boy-advance"],"gbav":["nintendo-gb","nintendo-gba","nintendo-gbc","nintendo-sgb"],"gbc":["game-boy-color","nintendo-gb","nintendo-gbc"],"gbc2players":["nintendo-gbc"],"gbch":["nintendo-gbc"],"gbchacks":["game-boy-color"],"gbcolor":["game-boy-color"],"gbdmg":["game-boy"],"gbh":["nintendo-gb"],"gbhacks":["game-boy"],"gbsp":["game-boy-advance"],"gc":["nintendo-gamecube"],"gce":["vectrex"],"gcevectrex":["vectrex"],"gearbox":["gearbox"],"gen":["sega-megadrive"],"gen32x":["sega-32x"],"gencd":["sega-megacd"],"genesis":["sega-genesis","sega-megadrive"],"genesiscd":["sega-megacd"],"genesishacks":["sega-megadrive"],"genh":["sega-megadrive"],"genmd":["sega-megadrive"],"gens":["sega-megadrive"],"gensegacd":["sega-megacd"],"gg":["sega-gamegear"],"ggsms":["sega-mastersystem"],"ghostship":["ghostship"],"gmaster":["hartung-game-master"],"gp32":["gamepark-gp32"],"gt":["gametank"],"gw":["handheld-electronic"],"gx4000":["amstrad-cpc"],"gzdoom":["chex","doom","heretic","hexen","strife"],"half-life":["half-life"],"halflife":["half-life"],"handheld-electronic":["handheld-electronic"],"handheldelectronic":["handheld-electronic"],"harcade":["arcade"],"hartung-game-master":["hartung-game-master"],"hbmame":["arcade"],"heretic":["heretic"],"hexen":["hexen"],"hikaru":["sega-hikaru"],"horizontal":["arcade"],"horizontalarcade":["arcade"],"hyper-neogeo64":["hyper-neogeo64"],"ibm-pc":["ibm-pc"],"ibm-pcjr":["ibm-pcjr"],"idquake":["quake"],"idquake2":["quake2"],"igs-pgm":["igs-pgm"],"intelli":["intellivision"],"intellivision":["intellivision"],"interact":["interact"],"interton-vc4000":["interton-vc4000"],"intv":["intellivision"],"iortcw":["return-to-castle-wolfenstein"],"ios":["apple-ios"],"iphone":["apple-ios"],"ique-player":["nintendo-64","nintendo-64dd"],"itv":["intellivision"],"j2me":["j2me"],"jag":["atari-jaguar"],"jaguar":["atari-jaguar"],"jaguarcd":["atari-jaguarcd"],"java":["j2me"],"jazz-jackrabbit":["jazz-jackrabbit"],"jazz-jackrabbit-2":["jazz-jackrabbit-2"],"jazz2":["jazz-jackrabbit-2"],"jedi-academy":["jedi-academy"],"jediknight2":["jediknight2"],"jkdf2":["dark-forces-ii","droidworks","mysteries-of-the-sith"],"jknight":["jedi-academy","jediknight2"],"kega":["sega-megadrive"],"konami-gq":["konami-gq"],"konami-gv":["konami-gv"],"laser310":["laser310"],"laseractive":["laseractive"],"laserdisc":["arcade-laserdisc"],"libgametank":["gametank"],"lindbergh":["sega-lindbergh"],"loopy":["casio-loopy"],"lowresnx":["lowresnx"],"lucasart":["scummvm"],"lucasarts":["scummvm"],"lynx":["atari-lynx"],"mac":["apple-macintosh","apple-macintosh-ii"],"macintosh":["apple-macintosh"],"magnavox":["odyssey2"],"magnavoxodyssey":["odyssey2"],"magnavoxodyssey2":["odyssey2"],"magnavoxvideopac":["odyssey2"],"mame":["arcade"],"mame-advmame":["arcade"],"mame-libretro":["arcade"],"mame-mame4all":["arcade"],"mame2000":["arcade"],"mame2003":["arcade"],"mame2003plus":["arcade"],"mame2010":["arcade"],"mark3":["sega-mastersystem"],"marty":["marty"],"master-system-girl":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"master-system-super-compact":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"mastersystem":["sega-mastersystem"],"mastersystemhacks":["sega-mastersystem"],"mattel-aquarius":["mattel-aquarius"],"mattelintellivision":["intellivision"],"mc10":["mc10"],"md":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megadrive"],"md32x":["sega-32x"],"mdcd":["sega-megacd"],"mdgen":["sega-megadrive"],"mdmsu":["sega-megadrive"],"mdmsu1":["sega-megadrive"],"mdsegacd":["sega-megacd"],"mega-duck":["mega-duck"],"mega-pc":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"megacd":["sega-megacd"],"megacdjp":["sega-megacd"],"megachip8":["chip8"],"megadrive":["sega-genesis","sega-megadrive"],"megadrive-japan":["sega-megadrive"],"megadrive-msu":["sega-megacd"],"megadrivecd":["sega-megacd"],"megadriveh":["sega-megadrive"],"megadrivehacks":["sega-megadrive"],"megadrivejp":["sega-genesis","sega-megadrive"],"megadrivemsu":["sega-megadrive"],"megaduck":["mega-duck"],"mgba":["game-boy-advance","nintendo-gba"],"microsoft msx (msx)":["msx"],"microsoft-xbox":["microsoft-xbox"],"microsoft-xbox-360":["microsoft-xbox-360"],"microsoftdos":["dos"],"microsoftmsx":["msx"],"midp":["j2me"],"minivmac":["apple-macintosh"],"mkxp":["rpgmaker"],"mkxp-z":["rpgmaker"],"mobile":["j2me"],"model2":["sega-model2"],"model2/roms":["sega-model2"],"model3":["sega-model3"],"mohaa":["mohaa"],"moto":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"ms":["sega-mastersystem"],"msdos":["dos"],"msdos (dos)":["dos"],"msu":["nintendo-snes"],"msu-md":["sega-megacd"],"msu1":["nintendo-snes"],"msumd":["sega-megacd","sega-megadrive"],"msx":["msx"],"msx1":["msx","msx1"],"msx2":["msx","msx2"],"msx2+":["msx2+"],"msx2plus":["msx2plus"],"msxturbor":["msx","msxturbor"],"multivision":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sc3000","sega-sg1000"],"mysteries-of-the-sith":["mysteries-of-the-sith"],"myvision":["myvision"],"mz2000":["mz2000"],"mz2500":["mz2500"],"mz700":["mz700"],"mz800":["mz800"],"mz80k":["mz80k"],"n3ds":["nintendo-3ds"],"n64":["nintendo-64"],"n64dd":["nintendo-64","nintendo-64dd"],"n64hacks":["nintendo-64"],"nam":["nam"],"namco-system11":["namco-system11"],"namco-system246":["namco-system246"],"namco-system256":["namco-system256"],"namco-system357":["namco-system357"],"namco2x6":["namco-system246"],"naomi":["sammy-atomiswave","sega-dreamcast-arcade","sega-naomi"],"naomi2":["sega-naomi2"],"naomigd":["sega-dreamcast-arcade","sega-naomigd"],"native32":["sunplus-native32"],"nds":["nintendo-ds"],"ndsi":["nintendo-dsi"],"ndsiware":["nintendo-dsi"],"nec-pc-88":["nec-pc-88"],"nec-pc-engine":["nec-pc-engine"],"nec-pc-engine-cd":["nec-pc-engine-cd"],"nec-pcfx":["nec-pcfx"],"nec-supergrafx":["nec-supergrafx"],"necpc8000":["nec-pc-88","pc80"],"necpc98":["pc-98"],"necpce":["nec-pc-engine"],"necpcecd":["nec-pc-engine-cd"],"necpcengine":["nec-pc-engine"],"necpcenginecd":["nec-pc-engine-cd"],"necpcfx":["nec-pcfx"],"necsgfx":["nec-supergrafx"],"necsupergrafx":["nec-supergrafx"],"nectg16":["nec-pc-engine"],"nectgcd":["nec-pc-engine-cd"],"necturbografx":["nec-pc-engine"],"necturbografx16":["nec-pc-engine"],"necturbografxcd":["nec-pc-engine-cd"],"neo geo pocket (ngp)":["snk-ngp"],"neo geo pocket color (ngpc)":["snk-ngpc"],"neo-geo-cd":["snk-neogeo-cd"],"neo-geo-pocket":["snk-neogeo-pocket"],"neo-geo-pocket-color":["neo-geo-pocket-color"],"neocd":["snk-neogeo-cd"],"neocdz":["snk-neogeo-cd"],"neogeo":["neogeo"],"neogeo cd (ngcd)":["snk-neogeo-cd"],"neogeo-cd":["snk-neogeo-cd"],"neogeo64":["hyper-neogeo64"],"neogeoaes":["snk-neogeo-aes"],"neogeocd":["snk-neogeo-cd"],"neogeocdjp":["snk-neogeo-cd"],"neogeomvs":["snk-neogeo-mvs"],"neogeopocket":["snk-neogeo-pocket","snk-ngp"],"neogeopocketcolor":["snk-neogeo-pocket","snk-ngpc"],"nes":["famicom","nintendo-nes"],"nescd":["famicom"],"nesds":["famicom"],"nesfc":["famicom"],"nesh":["nintendo-nes"],"neshacks":["famicom"],"new-nintendo-3ds":["nintendo-3ds"],"new-style-nes":["nintendo-fds","nintendo-nes"],"new-style-super-nes-model-sns-101":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"ng":["neogeo"],"ngage":["ngage"],"ngb":["game-boy"],"ngba":["game-boy-advance"],"ngbc":["game-boy-color"],"ngc":["nintendo-gamecube","snk-ngp"],"ngcd":["snk-neogeo-cd"],"ngp":["snk-neogeo-pocket","snk-ngp","snk-ngpc"],"ngpc":["snk-neogeo-pocket","snk-ngp","snk-ngpc"],"ngpocket":["snk-neogeo-pocket"],"ngpocketcolor":["snk-neogeo-pocket"],"ngw":["handheld-electronic"],"ninds":["nintendo-ds"],"ninetyeight":["pc-98"],"ningba":["game-boy-advance"],"ningbc":["game-boy-color"],"ninnes":["famicom"],"ninsnes":["nintendo-satellaview"],"nintendo ds (nds)":["nintendo-ds"],"nintendo entertainment system (fc)":["nintendo-nes"],"nintendo-3ds":["nintendo-3ds"],"nintendo-64":["nintendo-64"],"nintendo-64dd":["nintendo-64dd"],"nintendo-ds":["nintendo-ds"],"nintendo-ds-lite":["nintendo-ds","nintendo-dsi"],"nintendo-dsi":["nintendo-dsi"],"nintendo-dsi-xl":["nintendo-ds","nintendo-dsi"],"nintendo-fds":["nintendo-fds"],"nintendo-gamecube":["nintendo-gamecube"],"nintendo-gb":["nintendo-gb"],"nintendo-gba":["nintendo-gba"],"nintendo-gbc":["nintendo-gbc"],"nintendo-nes":["nintendo-nes"],"nintendo-pokemon-mini":["nintendo-pokemon-mini"],"nintendo-satellaview":["nintendo-satellaview"],"nintendo-sgb":["nintendo-sgb"],"nintendo-snes":["nintendo-snes"],"nintendo-sufami-turbo":["nintendo-sufami-turbo"],"nintendo-switch":["nintendo-switch"],"nintendo-virtualboy":["nintendo-virtualboy"],"nintendo-wii":["nintendo-wii"],"nintendo-wiiu":["nintendo-wiiu"],"nintendo3ds":["nintendo-3ds"],"nintendo64":["nintendo-64"],"nintendods":["nintendo-ds"],"nintendodsi":["nintendo-ds","nintendo-dsi"],"nintendoentertainmentsystem":["famicom"],"nintendofamicom":["famicom"],"nintendofamicomdisksystem":["famicom-disk-system"],"nintendogameandwatch":["handheld-electronic"],"nintendogameboy":["game-boy"],"nintendogameboyadvance":["game-boy-advance"],"nintendogameboycolor":["game-boy-color"],"nintendogb":["game-boy"],"nintendogba":["game-boy-advance"],"nintendogbc":["game-boy-color"],"nintendogw":["handheld-electronic"],"nintendon64":["nintendo-64"],"nintendones":["famicom"],"nintendonintendo64":["nintendo-64"],"nintendonintendo64dd":["nintendo-64"],"nintendonintendodsi":["nintendo-ds"],"nintendonintendoentertainmentsystem":["famicom"],"nintendopokemini":["nintendo-pokemon-mini"],"nintendopokemonmini":["nintendo-pokemon-mini"],"nintendosfc":["nintendo-satellaview"],"nintendosnes":["nintendo-satellaview"],"nintendosnesmsu":["nintendo-satellaview"],"nintendosnesmsu1":["nintendo-satellaview"],"nintendosupernintendo":["nintendo-satellaview"],"nintendosupernintendoentertainmentsystem":["nintendo-satellaview"],"nintendovb":["nintendo-virtualboy"],"nintendovitrualboy":["nintendo-virtualboy"],"nomad":["sega-megadrive"],"nsnes":["nintendo-satellaview"],"nsv":["nintendo-satellaview"],"nvb":["nintendo-virtualboy"],"nxengine":["cave-story"],"o2":["philips-videopac"],"o2em":["odyssey2"],"odyssey":["odyssey2","philips-videopac"],"odyssey-2-slash-videopac-g7000":["odyssey2"],"odyssey2":["odyssey2"],"olivetti-pc128":["olivetti-pc128"],"onscripter":["onscripter"],"openbeatsofrage":["openbor"],"openbor":["openbor"],"opengoal":["opengoal"],"openjazz":["jazz-jackrabbit"],"openlara":["tomb-raider"],"oric":["oric"],"oricatmos":["oricatmos"],"originalgameboy":["game-boy"],"outlaws":["outlaws"],"outrun":["sega-outrun"],"p2000t":["philips-p2000t"],"p8":["pico8"],"palm":["palm-os"],"palm-os":["palm-os"],"palmos":["palm-os"],"panasonic":["panasonic-3do"],"panasonic-3do":["panasonic-3do"],"pbp":["sony-playstation"],"pbps":["sony-playstation"],"pc":["dos"],"pc engine":["nec-pc-engine"],"pc-8800":["nec-pc-88"],"pc-98":["pc-98"],"pc-9800":["pc-98"],"pc-9800-series":["pc-98"],"pc-fx":["nec-pcfx"],"pc60":["pc60"],"pc80":["pc80"],"pc8000":["nec-pc-88","pc80"],"pc88":["nec-pc-88"],"pc8801":["nec-pc-88"],"pc98":["pc-98"],"pce":["nec-pc-engine","nec-supergrafx"],"pcecd":["nec-pc-engine","nec-pc-engine-cd"],"pcengine":["nec-pc-engine"],"pcenginecd":["nec-pc-engine","nec-pc-engine-cd"],"pcfx":["nec-pcfx"],"pcninetyeight":["pc-98"],"pcsx":["sony-playstation"],"pcv2":["bandai-wswan","bandai-wswanc"],"pcw":["pcw"],"pdark":["pdark"],"pegasus":["pegasus"],"pet":["commodore-pet"],"pgm":["arcade","igs-pgm"],"philips-cd-i":["philips-cdi"],"philips-cdi":["philips-cdi"],"philips-p2000t":["philips-p2000t"],"philips-vg5k":["philips-vg5k"],"philips-videopac":["philips-videopac"],"philipscdi":["philips-cdi"],"pico":["pico8","sega-pico"],"pico-8":["pico8"],"pico-8 (p8)":["pico8"],"pico-8/carts":["pico8"],"pico8":["pico8"],"piece":["aquaplus-piece"],"pkm":["nintendo-pokemon-mini"],"playstation":["sony-playstation"],"playstationchds":["sony-playstation"],"playstationpbps":["sony-playstation"],"playstationportable":["sony-psp"],"plus4":["commodore-plus4"],"pocket-challenge-v2":["pocket-challenge-v2"],"pocketchallengev2":["pocket-challenge-v2"],"pocketstation":["sony-pocketstation"],"poke":["nintendo-pokemon-mini"],"pokemini":["nintendo-pokemon-mini"],"pokemon-mini":["nintendo-pokemon-mini"],"pokemonmini":["nintendo-pokemon-mini"],"pokémon mini (pkm)":["nintendo-pokemon-mini"],"ports":["wolfenstein3d"],"ports/caesar3":["caesar3"],"ports/cave story":["cave-story"],"ports/dinothawr":["dinothawr"],"ports/doom":["chex","doom","heretic","hexen","strife"],"ports/doom 3":["doom3"],"ports/ecwolf/games":["wolfenstein3d"],"ports/flashback":["flashback"],"ports/out run":["sega-outrun"],"ports/prince of persia":["prince-of-persia"],"ports/quake":["quake"],"ports/quake 2":["quake2"],"ports/quake 3":["quake3"],"ports/rick dangerous":["xrick"],"ports/star trek voyager":["quake3"],"ports/tamagotchi":["tamagotchi-p1"],"ports/theme hospital":["theme-hospital"],"ports/tomb raider":["tomb-raider"],"ports/vvvvvv":["vvvvvv"],"ports/wolfenstein 3d":["wolfenstein3d"],"powerslave":["powerslave"],"ppsspp":["sony-psp"],"prboom":["doom","heretic"],"primehack":["nintendo-gamecube","nintendo-wii"],"prince-of-persia":["prince-of-persia"],"ps":["sony-playstation"],"ps1":["sony-playstation"],"ps2":["sony-playstation-2"],"ps3":["sony-playstation-3"],"ps4":["ps4"],"ps4/shortcuts":["ps4"],"pschd":["sony-playstation"],"pschds":["sony-playstation"],"psiso":["sony-playstation"],"psisos":["sony-playstation"],"psone":["sony-playstation"],"psp":["sony-psp"],"pspbp":["sony-playstation"],"pspbps":["sony-playstation"],"pspminis":["sony-psp"],"psvita":["sony-playstation-vita"],"psx":["sony-playstation"],"psxchd":["sony-playstation"],"psxchds":["sony-playstation"],"psxiso":["sony-playstation"],"psxisos":["sony-playstation"],"psxpbp":["sony-playstation"],"psxpbps":["sony-playstation"],"puae":["commodore-amiga","commodore-amiga-cd32","commodore-cdtv"],"pv1000":["casio-pv1000"],"pv2000":["casio-pv2000"],"ql":["sinclair-ql"],"quake":["quake"],"quake (quake)":["quake"],"quake2":["quake2"],"quake3":["quake3"],"raze":["blood","duke3d","exhumed","nam","powerslave","redneck","shadow-warrior","ww2gi"],"redneck":["redneck"],"redream":["sega-dreamcast"],"reminiscence":["flashback"],"retcom":["galaksija"],"retro8":["pico8"],"return-to-castle-wolfenstein":["return-to-castle-wolfenstein"],"ricochet":["ricochet"],"rott":["rott"],"rpgmaker":["rpgmaker"],"rtcw":["return-to-castle-wolfenstein","rott"],"rx78":["bandai-rx78"],"s32x":["sega-32x"],"sam-coupe":["sam-coupe"],"samcoupe":["sam-coupe"],"sameduck":["mega-duck"],"sammy-atomiswave":["sammy-atomiswave"],"sat":["sega-saturn"],"satella":["nintendo-satellaview"],"satellaview":["nintendo-satellaview"],"satourne":["sega-saturn"],"saturn":["sega-saturn"],"saturnjp":["sega-saturn"],"sc-3000":["sega-sc3000"],"sc3000":["sega-sc3000"],"scd":["sega-megacd"],"scumm":["scummvm"],"scummvm":["scummvm"],"scummvm/shortcuts":["scummvm"],"scv":["scv"],"sdc":["sega-dreamcast"],"sdlpop":["prince-of-persia"],"sega 32x (32x)":["sega-32x"],"sega cd (segacd)":["sega-megacd"],"sega dreamcast":["sega-dreamcast"],"sega game gear (gg)":["sega-gamegear"],"sega genesis (md)":["sega-megadrive"],"sega master system (sms)":["sms"],"sega sg-1000 (sg1000)":["sega-sg1000"],"sega-32x":["sega-32x"],"sega-ai":["sega-ai"],"sega-beena":["sega-beena"],"sega-chihiro":["sega-chihiro"],"sega-dreamcast":["sega-dreamcast"],"sega-dreamcast-arcade":["sega-dreamcast-arcade"],"sega-game-box-9":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-gamegear":["sega-gamegear"],"sega-genesis":["sega-genesis"],"sega-hikaru":["sega-hikaru"],"sega-lindbergh":["sega-lindbergh"],"sega-mark-iii":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-master-system-ii":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-mastersystem":["sega-mastersystem"],"sega-mega-drive-2-slash-genesis":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-mega-jet":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-megacd":["sega-megacd"],"sega-megadrive":["sega-megadrive"],"sega-model2":["sega-model2"],"sega-model3":["sega-model3"],"sega-naomi":["sega-naomi"],"sega-naomi2":["sega-naomi2"],"sega-naomigd":["sega-naomigd"],"sega-nomad":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-outrun":["sega-outrun"],"sega-pico":["sega-pico"],"sega-saturn":["sega-saturn"],"sega-sc3000":["sega-sc3000"],"sega-sf7000":["sega-sf7000"],"sega-sg1000":["sega-sg1000"],"sega-stv":["sega-stv"],"sega-systemsp":["sega-systemsp"],"sega-triforce":["sega-triforce"],"sega-vmu":["sega-vmu"],"sega32":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sc3000","sega-sg1000"],"sega32x":["sega-32x"],"sega32xjp":["sega-32x"],"sega32xna":["sega-32x"],"segaai":["sega-ai"],"segaatomiswave":["sammy-atomiswave"],"segacd":["sega-megacd"],"segadc":["sega-dreamcast"],"segadreamcast":["sega-dreamcast"],"segagamegear":["sega-gamegear"],"segagenesis":["sega-megadrive"],"segagenesismsu":["sega-megadrive"],"segagg":["sega-gamegear"],"segamastersystem":["sega-mastersystem"],"segamcd":["sega-megacd"],"segamdmsu":["sega-megadrive"],"segamegacd":["sega-megacd"],"segamegadrive":["sega-megadrive"],"segamodel3":["sega-model3"],"segams":["sega-mastersystem"],"seganaomi":["sammy-atomiswave"],"segapico":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sc3000","sega-sg1000"],"segasat":["sega-saturn"],"segasaturn":["sega-saturn"],"segascd":["sega-megacd"],"segasegacd":["sega-megacd"],"segasg1000":["sega-sg1000"],"segasgone":["sega-sg1000"],"segasms":["sega-mastersystem"],"segastv":["sega-stv"],"seggg":["sega-gamegear"],"segms":["sega-mastersystem"],"seventyeighthundred":["atari-7800"],"sfam":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"sfc":["nintendo-satellaview","nintendo-snes"],"sg-1000":["sega-sg1000"],"sg1000":["sega-sg1000"],"sg1k":["sega-sg1000"],"sgb":["nintendo-gb","nintendo-sgb"],"sgb-msu1":["nintendo-sgb"],"sgfx":["nec-pc-engine","nec-supergrafx"],"sgg":["sega-gamegear"],"sgonethousand":["sega-sg1000"],"sgx":["nec-pc-engine","nec-supergrafx"],"sgxcd":["nec-pc-engine"],"shadow-warrior":["shadow-warrior"],"sharp-x1":["sharp-x1"],"sharp-x68000":["sharp-x68000"],"sharpx1":["sharp-x1"],"sharpx6800":["sharp-x68000"],"sharpx68000":["sharp-x68000"],"sharpx68k":["sharp-x68000"],"sinclair-ql":["sinclair-ql"],"sinclair-spectrum":["sinclair-spectrum"],"sinclair-zx-spectrum":["sinclair-zx-spectrum"],"sinclair-zx-spectrum-next":["sinclair-zx-spectrum-next"],"sinclair-zx81":["sinclair-zx81"],"sinclairzx81":["sinclair-zx81"],"singe":["arcade-laserdisc"],"smbx":["smbx"],"sms":["sega-mastersystem","sms"],"smsgg":["sega-mastersystem"],"snes":["nintendo-satellaview","nintendo-snes"],"snes-hacks":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"snes-msu1":["nintendo-snes"],"snes9x":["nintendo-satellaview"],"snesh":["nintendo-snes"],"sneshacks":["nintendo-satellaview"],"snesmsu":["nintendo-satellaview"],"snesmsu1":["nintendo-satellaview","nintendo-snes"],"snesna":["nintendo-snes"],"sng":["neogeo"],"snk-neogeo-aes":["snk-neogeo-aes"],"snk-neogeo-cd":["snk-neogeo-cd"],"snk-neogeo-mvs":["snk-neogeo-mvs"],"snk-neogeo-pocket":["snk-neogeo-pocket"],"snk-ngp":["snk-ngp"],"snk-ngpc":["snk-ngpc"],"snkneogeo":["neogeo"],"snkneogeocd":["snk-neogeo-cd"],"snkneogeopocket":["snk-neogeo-pocket"],"snkneogeopocketcolor":["snk-neogeo-pocket"],"snkngcd":["snk-neogeo-cd"],"snkngp":["snk-neogeo-pocket"],"snkngpc":["snk-neogeo-pocket"],"socrates":["vtech-socrates"],"soh":["soh"],"solarus":["solarus"],"sonic-1-2013":["sonic-1-2013"],"sonic-2-2013":["sonic-2-2013"],"sonic-mania":["sonic-mania"],"sonic3-air":["sonic3-air"],"sonicretro":["sonic-1-2013","sonic-2-2013"],"sony playstation (ps)":["sony-playstation"],"sony-playstation":["sony-playstation"],"sony-playstation-2":["sony-playstation-2"],"sony-playstation-3":["sony-playstation-3"],"sony-playstation-vita":["sony-playstation-vita"],"sony-pocketstation":["sony-pocketstation"],"sony-psp":["sony-psp"],"sonyplaystation":["sony-playstation"],"sonyplaystationportable":["sony-psp"],"sonyps":["sony-playstation"],"sonyps1":["sony-playstation"],"sonypsp":["sony-psp"],"sonypsx":["sony-playstation"],"spec":["sinclair-zx-spectrum"],"spectravideo":["spectravideo"],"spectrum":["sinclair-spectrum","sinclair-zx-spectrum"],"spmp8000":["sunplus-spmp8000"],"ss":["sega-saturn"],"st":["atari-st"],"st-v":["sega-stv"],"star-control-2":["star-control-2"],"starship":["starship"],"ste":["atari-st"],"story":["onscripter"],"strife":["strife"],"studio-ii":["studio-ii"],"stv":["sega-stv"],"sufami":["nintendo-satellaview","nintendo-sufami-turbo"],"sufami-turbo":["nintendo-sufami-turbo"],"sufamiturbo":["nintendo-sufami-turbo"],"sunplus-native32":["sunplus-native32"],"sunplus-spmp8000":["sunplus-spmp8000"],"supa":["nintendo-snes"],"super game boy (sgb)":["nintendo-sgb"],"super nintendo entertainment system (sfc)":["nintendo-snes"],"super nintendo entertainment system (supa)":["nintendo-snes"],"super-famicom-jr-model-shvc-101":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"super-famicom-shvc-001":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"super-gb":["nintendo-sgb"],"super-mario-war":["super-mario-war"],"super-nintendo-original-european-version":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"superacan":["superacan"],"superbroswar":["super-mario-war"],"supercassettevision":["scv"],"superchip":["chip8"],"superfamicom":["nintendo-satellaview","nintendo-snes"],"supergameboy":["nintendo-sgb"],"supergrafx":["nec-supergrafx"],"supermariowar":["super-mario-war"],"supernes":["nintendo-satellaview","nintendo-snes"],"supernintendo":["nintendo-satellaview"],"supernintendoentertainmentsystem":["nintendo-satellaview"],"superpretendo":["nintendo-satellaview"],"supervision":["watara-supervision"],"supracan":["supracan"],"svi":["colecovision","msx","msx2","msx2plus","msxturbor","sega-sc3000","sega-sf7000","sega-sg1000","spectravideo"],"svicoleco":["colecovision","msx","msx2","msx2plus","msxturbor","sega-sc3000","sega-sf7000","sega-sg1000","spectravideo"],"svicolecovision":["colecovision","msx","msx2","msx2plus","msxturbor","sega-sc3000","sega-sf7000","sega-sg1000","spectravideo"],"swancrystal":["bandai-wswan","bandai-wswanc"],"switch":["nintendo-switch"],"symbian":["symbian"],"systemsp":["sega-systemsp"],"t80":["tic80"],"taito-fx1":["taito-fx1"],"tamagotchi-p1":["tamagotchi-p1"],"tandy-1000":["tandy-1000"],"tandy-vis":["tandy-vis"],"tandy1000":["tandy-1000"],"tanodragon":["dragon64"],"tecmo-tps":["tecmo-tps"],"teknoparrot":["namco-system246","namco-system256","namco-system357","sammy-atomiswave","sega-chihiro","sega-hikaru","sega-lindbergh","sega-naomi","sega-naomi2","sega-naomigd","sega-triforce"],"tera-drive":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"texas-instruments-ti-83":["texas-instruments-ti-83"],"texasinstrumentsti83":["texas-instruments-ti-83"],"tfc":["tfc"],"tg":["nec-pc-engine"],"tg-cd":["nec-pc-engine-cd"],"tg16":["nec-pc-engine"],"tg16cd":["nec-pc-engine-cd"],"tgb_dual":["nintendo-gb"],"tgcd":["nec-pc-engine-cd"],"tgfx":["nec-pc-engine"],"tgfx16-cd":["nec-pc-engine-cd"],"tgrafx":["nec-pc-engine"],"tgrafx16":["nec-pc-engine"],"theforceengine":["dark-forces","outlaws"],"theme-hospital":["theme-hospital"],"theodore":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"thextech":["smbx"],"thirtytwox":["sega-32x"],"thomson":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"thomson-mo5":["thomson-mo5"],"thomson-mo6":["thomson-mo6"],"thomson-to7":["thomson-to7"],"thomson-to770":["thomson-to770"],"thomson-to8":["thomson-to8"],"thomson-to8d":["thomson-to8d"],"thomson-to9":["thomson-to9"],"thomson-to9plus":["thomson-to9plus"],"thomsonmoto":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"ti-99_4a":["ti99"],"ti83":["texas-instruments-ti-83"],"ti99":["ti99"],"ti994a":["ti99"],"tic":["tic80"],"tic-80":["tic80"],"tic80":["tic80"],"tiger-game-com":["tiger-game-com"],"to8":["thomson-to8"],"tomb-raider":["tomb-raider"],"tomb-raider-1":["tomb-raider-1"],"tomb-raider-2":["tomb-raider-2"],"tombraider":["tomb-raider"],"traider1":["tomb-raider-1"],"traider2":["tomb-raider-2"],"triforce":["sega-triforce"],"trs-80":["trs80"],"trs80":["trs80"],"trs80coco":["coco"],"tt":["atari-st"],"turbocd":["nec-pc-engine-cd"],"turbografx":["nec-pc-engine"],"turbografx-16 (pce)":["nec-pc-engine"],"turbografx-cd":["nec-pc-engine"],"turbografx16":["nec-pc-engine"],"turbografxcd":["nec-pc-engine-cd"],"turbographix":["nec-pc-engine"],"tutor":["tutor"],"tvc":["videoton-tvc"],"tvgames":["tvgames"],"tvgc":["elektor-tv-games-computer","emerson-arcadia-2001","interton-vc4000"],"twentysixhundred":["atari-2600"],"tyrian":["tyrian"],"tyrquake":["quake"],"uqm":["star-control-2","ur-quan-masters"],"ur-quan-masters":["ur-quan-masters"],"uzebox":["uzebox"],"varcade":["arcade"],"vb":["nintendo-virtualboy"],"vc4000":["interton-vc4000"],"vec":["vectrex"],"vecrtex":["vectrex"],"vectrex":["vectrex"],"vemulator":["sega-vmu"],"vertarcade":["arcade"],"vertical":["arcade"],"verticalarcade":["arcade"],"vg5000":["philips-vg5k"],"vg5k":["philips-vg5k"],"vgmplay":["vgmplay"],"vic":["commodore-vic20"],"vic-20":["commodore-vic20"],"vic20":["commodore-vic20"],"videobrain":["videobrain"],"videopac":["odyssey2","philips-videopac"],"videopac-g7400":["philips-videopac"],"videopacplus":["philips-videopac"],"videosystem-zn1":["videosystem-zn1"],"videoton-tvc":["videoton-tvc"],"vircon32":["vircon32"],"virtboy":["nintendo-virtualboy"],"virtuaboy":["nintendo-virtualboy"],"virtual boy (vb)":["nintendo-virtualboy"],"virtualboy":["nintendo-virtualboy"],"vis":["tandy-vis"],"visualstory":["onscripter"],"vmac":["apple-macintosh"],"vmu":["sega-vmu"],"vpinball":["vpinball"],"vsmile":["vtech-vsmile"],"vtech-socrates":["vtech-socrates"],"vtech-vsmile":["vtech-vsmile"],"vvvvvv":["vvvvvv"],"watara":["watara-supervision"],"watara-supervision":["watara-supervision"],"watarasupervision":["watara-supervision"],"wii":["nintendo-wii"],"wiiu":["nintendo-wiiu"],"wiiu/roms":["nintendo-wiiu"],"wiiware":["nintendo-wii"],"windows3x":["dos","ibm-pc","ibm-pcjr","pc-98","tandy-1000"],"windows9x":["dos","ibm-pc","ibm-pcjr","pc-98","tandy-1000"],"wolf":["wolfenstein3d"],"wolf3d":["wolfenstein3d"],"wolfenstein":["wolfenstein3d"],"wolfenstein3d":["wolfenstein3d"],"wonderswan":["bandai-wswan","wonderswan","wonderswan-color"],"wonderswan-color":["wonderswan-color"],"wonderswanc":["wonderswan-color"],"wonderswancolor":["wonderswan","wonderswan-color"],"ws":["bandai-wswan","bandai-wswanc","wonderswan","wonderswan-color"],"wsc":["wonderswan","wonderswan-color"],"wswan":["bandai-wswan"],"wswanc":["bandai-wswanc"],"ww2gi":["ww2gi"],"x1":["sharp-x1"],"x16":["commanderx16"],"x68000":["sharp-x68000"],"x68k":["sharp-x68000"],"xash3d_fwgs":["bshift","cstrike","czero","czeror","dmc","gearbox","half-life","ricochet","tfc"],"xbox":["microsoft-xbox"],"xbox360":["microsoft-xbox-360"],"xbox360/roms":["microsoft-xbox-360"],"xegs":["xegs"],"xone":["sharp-x1"],"xrick":["xrick"],"xroar":["coco"],"zc210":["zc210"],"zeldac":["zeldaclassic"],"zeldaclassic":["zeldaclassic"],"zinc":["acclaim-zn1","atari-zn1","atlus-zn1","capcom-zn1","capcom-zn2","eighting-zn1","konami-gq","konami-gv","namco-system11","taito-fx1","tecmo-tps","videosystem-zn1"],"zmachine":["zmachine"],"zsnes":["nintendo-satellaview"],"zx spectrum (zxs)":["sinclair-zx-spectrum"],"zx81":["sinclair-zx81"],"zxeightyone":["sinclair-zx81"],"zxnext":["sinclair-zx-spectrum-next"],"zxs":["sinclair-zx-spectrum"],"zxspectrum":["sinclair-zx-spectrum"]},"format_version":1,"licences":[{"mirror":{"licence":"MIT","repo":"https://github.com/hugo19941994/auto-datfile-generator","scope":"the mirror's scripts only, the DATs it republishes stay under the terms above"},"quote":"Unless otherwise stated on the website, the data made available through this website (\"Data\") may be freely used, copied, reproduced, modified, adapted, combined, published, distributed, and otherwise reused by anyone for any lawful purpose, to the extent that the website operator owns or controls the applicable rights or is authorized to grant such permission. No permission, attribution, citation, backlink, or acknowledgment of the website or its operators is required for such use.","read":"2026-11-03","terms_title":"Data Usage License","terms_updated":"2026-09-11","terms_url":"https://datomatic.no-intro.org/terms.html"},{"quote":"Dumpers only submit metadata and Redump only stores metadata. This information is considered public domain to be used however people see fit","read":"2026-11-03","terms_url":"https://redump.info/about"}],"setups":{"allium":{"file":"setups/allium.json","gzip_size":5091,"sha256":"7e1b5914e15cc2ff710052fc7385fb9457ca955f5a633313d4ce4e8496b32033","size":35139},"amberelec":{"file":"setups/amberelec.json","gzip_size":5613,"sha256":"7c25ef2b727003a6ff285cb255286264acdc726fefbcea43f6f254ed708250be","size":38051},"archr":{"file":"setups/archr.json","gzip_size":7548,"sha256":"b5fe00e263b6df7c536260bbd8b7c41fe3e031a812f40644c8dacc93e049a88f","size":57318},"arkos":{"file":"setups/arkos.json","gzip_size":6069,"sha256":"0f4cf86ae6afb1ecb1c5019f8ac7c598044118b902f11aa9d8823e90ac2ca82d","size":39966},"batocera":{"file":"setups/batocera.json","gzip_size":14457,"sha256":"af163f68ee5069620ebf6b0fcb98ebd7ee721203c0dbf21d55244a024649d5fc","size":134476},"bizhawk":{"file":"setups/bizhawk.json","gzip_size":2469,"sha256":"1bd6306d2f485700b531d3d3ac502cbf36aaa9cfeb954f751ea3bb862aeb7aa9","size":16059},"chaos":{"file":"setups/chaos.json","gzip_size":5625,"sha256":"3a56b30c0992cd78eef8e097e9b1ef8aa479a664ea550d32d7777e18cbed0bb6","size":38023},"crossmix-os":{"file":"setups/crossmix-os.json","gzip_size":4628,"sha256":"8361175b1aebab116d878cc9117f531678969758c13a83b8ece2289c5eca9f46","size":30935},"darkos":{"file":"setups/darkos.json","gzip_size":5877,"sha256":"cc13afb7b04ac99eca20df747da975f55fb0757df63ef70b7923087f75f5a9df","size":37501},"emudeck":{"file":"setups/emudeck.json","gzip_size":8178,"sha256":"0a0d0b8a9c0fa9e6251dc28f88040ed6bc931a0f763ba1df0c07c72791995838","size":59403},"emudeck-windows":{"file":"setups/emudeck-windows.json","gzip_size":8145,"sha256":"e3b15545aafdc94411ba5cea61b6de9d9ce75889dff7ee6fefe3e63d4966fc17","size":60030},"emuelec":{"file":"setups/emuelec.json","gzip_size":7916,"sha256":"3117d2dd0ffb721e11f1e70385ed599f36d54c2d19db1dc598be52b5f8b73445","size":55398},"jelos":{"file":"setups/jelos.json","gzip_size":6646,"sha256":"52d5260b6ef397e1e41f957dc51808d8943848950322107336e886ae963bc2fd","size":47161},"knulli":{"file":"setups/knulli.json","gzip_size":11986,"sha256":"73cda1ec1afde3494896c2d82ae185eb0013721b817cf46293be84a7967900af","size":97205},"kolos":{"file":"setups/kolos.json","gzip_size":6170,"sha256":"1ab8b0c0a57bf6bb16f781bd1b97fe28e3c0d961a575af86546a482e5de4d150","size":43277},"koriki":{"file":"setups/koriki.json","gzip_size":4029,"sha256":"d2f15741cd1b16ac6f1f51dc1afa09a1831e6502b5d2ead7ee507a051ba414f1","size":22608},"lakka":{"file":"setups/lakka.json","gzip_size":517,"sha256":"3adec2a8c4f9a992e271382650338d00310db3de3bffd5448109c635ec03e2fd","size":1037},"minui":{"file":"setups/minui.json","gzip_size":2055,"sha256":"0a38d3d3b6d0fc16ed59a9fa420aba91a3402dc4ae584b349dc19076ad4818cc","size":10242},"misterfpga":{"file":"setups/misterfpga.json","gzip_size":3578,"sha256":"5c6e306970b67c12e6cc25c82328691fd13ad0c554ce1309efd1f0278158ad07","size":23518},"miyoocfw":{"file":"setups/miyoocfw.json","gzip_size":959,"sha256":"cb13cdcae35830c58d6465ff2f6e36c2d0558c576fd8eb8fd053537fb007573b","size":2285},"muos":{"file":"setups/muos.json","gzip_size":7386,"sha256":"3beffb9369d734978047ec64a440202704d9682bfe25c9c05e159c3b4618ed87","size":46601},"myminui":{"file":"setups/myminui.json","gzip_size":2797,"sha256":"8cac64f671ed745b8cd713be9e88b9f83e8e83061c32ff62fca646c91ea986ea","size":14717},"nextui":{"file":"setups/nextui.json","gzip_size":2950,"sha256":"e9eb9a3d06cc796bf54b185691144c828a2c7dc767a9b83c25fb310ca3b64d1d","size":15309},"onion":{"file":"setups/onion.json","gzip_size":6337,"sha256":"35cad2ef2a7162b93035cbeafd2ac881ba17a777ae11d05e16c4c4fb071071e8","size":34615},"pan4elec":{"file":"setups/pan4elec.json","gzip_size":5717,"sha256":"2534db783b7eb7037c4457fc9ae540d885aa6fdd3a59411df7856aeb64ef68b9","size":39455},"plumos-mf":{"file":"setups/plumos-mf.json","gzip_size":6141,"sha256":"5c2ae5292af66a32a16ad6c70ead6cbabef934c5e3e5261d6d92e9942bfd403b","size":33703},"plumos-pixel2":{"file":"setups/plumos-pixel2.json","gzip_size":6180,"sha256":"4c674898610e234f9a6711db34f9cebec91eaeb76d160e13a62eabd13a702720","size":31896},"recalbox":{"file":"setups/recalbox.json","gzip_size":9153,"sha256":"965c44508d9fe798954cdf392db0726e8b3be5796b0b5dea6b3a92aaba12bb47","size":69567},"retroarch":{"file":"setups/retroarch.json","gzip_size":476,"sha256":"025188a526422c7d79c996edc19c486c9b4f322798325a18405733066483b3d6","size":786},"retrobat":{"file":"setups/retrobat.json","gzip_size":10307,"sha256":"39e0945e6d33c1312f73b3b3ff26ee9a81d70d5061cd78a415ca87c0d68ad1b6","size":70854},"retrodeck":{"file":"setups/retrodeck.json","gzip_size":7183,"sha256":"f29336cedac2da9e8b1ccb89d9b608a9a8f147564ed6abafdaa8e0b4c922fbae","size":53597},"retropie":{"file":"setups/retropie.json","gzip_size":4670,"sha256":"f80f62e4d96cf62937da5f3e434fa6754bbf9eb17738b0d24062be7de9e5c4a2","size":24007},"rocknix":{"file":"setups/rocknix.json","gzip_size":7590,"sha256":"ff85bfdbdbc852265f5a7d71327e4df6512c53515a70add8d124f4ac3281689e","size":58836},"romm":{"file":"setups/romm.json","gzip_size":3790,"sha256":"73d2f0f4d95e9146ac9f850bf41e3a85bb133e543749dcecb785e80c67648946","size":30844},"spruceos":{"file":"setups/spruceos.json","gzip_size":6419,"sha256":"ccbe920491891b66c1db61e4c09abae154d367421856a8817d4c7e22111000c2","size":28367},"unofficialos":{"file":"setups/unofficialos.json","gzip_size":7152,"sha256":"bec913e663e25217e0a84db7bb0042a6f0b38d7d2a34d52e5de0c7a3fc5de4a6","size":51670}},"systems":{"atari-5200":{"file":"systems/atari-5200.json","gzip_size":4092,"sha256":"55bf18d45a6a7d75cda37ac27088b2510c4a27894157bca7f15452d67b5b76af","size":12435},"atari-7800":{"file":"systems/atari-7800.json","gzip_size":887,"sha256":"2ff726865df34502c72be99d18948dedd0782f19a38a215297c89c813d648481","size":1668},"atari-jaguar":{"file":"systems/atari-jaguar.json","gzip_size":292,"sha256":"a0215745664dcfdbe9f454e226561e61fdb8f60c0d72ba877b52e8f1b7929934","size":413},"atari-lynx":{"file":"systems/atari-lynx.json","gzip_size":1678,"sha256":"ab7cc8614064981951ddcca1c4a9d263b49b04fc0a89f2a984de08c20392a3d0","size":3634},"colecovision":{"file":"systems/colecovision.json","gzip_size":4412,"sha256":"9eb8ecd30e9877d6a36551ef03eb70b4151152023d0133a3b05109022d56151c","size":11293},"commodore-amiga":{"file":"systems/commodore-amiga.json","gzip_size":290,"sha256":"9988cce7dd6403204ab580edbc9522e5a9080c790bf04a98e6c3d435bbee42e3","size":788},"commodore-amiga-cd32":{"file":"systems/commodore-amiga-cd32.json","gzip_size":265,"sha256":"2c4d3823a40cdd4197209b2abaf38db755218130812f92c03ddad2ee0fd4a46d","size":456},"intellivision":{"file":"systems/intellivision.json","gzip_size":4507,"sha256":"748c7d7887370f16d5992fa7e53381108a24366584239543ccadf4347ccc8f01","size":12528},"laseractive":{"file":"systems/laseractive.json","gzip_size":363,"sha256":"d96ade3209fda8314cf9010a5ced458ad95037867fa204c8e457b05c46f5d80d","size":723},"msx":{"file":"systems/msx.json","gzip_size":214,"sha256":"e73b146104ffeb5ececb7173a5a3ce3903d0d0de1fde5e301658252c5675359b","size":285},"msx2plus":{"file":"systems/msx2plus.json","gzip_size":331,"sha256":"21b724cfbe529d2d992a7a633c570674c70753a42153befabe8c86c689b66c49","size":462},"nec-pc-engine":{"file":"systems/nec-pc-engine.json","gzip_size":9241,"sha256":"1fe6db213678d40878dfa6c411d1031319ef9f0d605b5653d1b4aa01e8a04452","size":27628},"nec-pc-engine-cd":{"file":"systems/nec-pc-engine-cd.json","gzip_size":12487,"sha256":"754e02b8e7e99135454008a89e883c9d6829a1f62cbc759abba2e5991866f9e9","size":43447},"nec-supergrafx":{"file":"systems/nec-supergrafx.json","gzip_size":831,"sha256":"111bd2ee40d75db1d140f263313bb6c97e31965883dbdf16906893e043f8d52d","size":1441},"neo-geo-pocket-color":{"file":"systems/neo-geo-pocket-color.json","gzip_size":3371,"sha256":"484bdf90a16917d464f28e8de1bbdce8d369c274d20d3d8c55ba0911a7a5e9ba","size":10072},"nintendo-3ds":{"file":"systems/nintendo-3ds.json","gzip_size":485,"sha256":"5e903462cea76f28681397aee0e6e3f119cd206ea60dd18ae734cbc5c5779cf7","size":808},"nintendo-64":{"file":"systems/nintendo-64.json","gzip_size":21504,"sha256":"24acf25d8c43e5227dc674057b41deffcc5c6db39f0f09e4ab258334749acd28","size":73974},"nintendo-64dd":{"file":"systems/nintendo-64dd.json","gzip_size":2541,"sha256":"82a62ff230513d4b3b7ec6bcb1ac8efe4101ff4e301dfea4300e13dea12cbc4a","size":7705},"nintendo-ds":{"file":"systems/nintendo-ds.json","gzip_size":186345,"sha256":"9f74ade6f2fff15b51c410ce83aafccdb3cb0c1701c9cd42a593ca84d1ab4c33","size":566900},"nintendo-dsi":{"file":"systems/nintendo-dsi.json","gzip_size":240,"sha256":"a470b580ca27fdf66bcf1213d3f7d3ab3acbf2a6272dd445a9ade5fc4cd4b569","size":345},"nintendo-fds":{"file":"systems/nintendo-fds.json","gzip_size":9025,"sha256":"59f40fb23866487b95f2a0b709b216c6c66de694f4528b0c4b53aae3fc1f4e7d","size":30626},"nintendo-gamecube":{"file":"systems/nintendo-gamecube.json","gzip_size":46580,"sha256":"afd0881edb18be56407268b9c2c6a6437e2670baa76203e4e03da33fac8ed4ee","size":189501},"nintendo-gb":{"file":"systems/nintendo-gb.json","gzip_size":39786,"sha256":"8cfeadc99c49af41435728dc1e5343ca14d632bcc4681e87f286ca41e3281868","size":127687},"nintendo-gba":{"file":"systems/nintendo-gba.json","gzip_size":76891,"sha256":"c254fa7973aa84f1b9e49f256437a03360d06ecf3b80838cae36bc5bbd84b80f","size":248499},"nintendo-gbc":{"file":"systems/nintendo-gbc.json","gzip_size":44917,"sha256":"3c281676ea9778761b00d454661d9fa7c5dfb70cbe435c1bb30158ef766d418f","size":154739},"nintendo-nes":{"file":"systems/nintendo-nes.json","gzip_size":89663,"sha256":"6e0e1d1f2681c10998518abe4b46cd2ea4a9f993316432876f19f8a52167e332","size":274177},"nintendo-pokemon-mini":{"file":"systems/nintendo-pokemon-mini.json","gzip_size":1537,"sha256":"083eed4eccdfcb12daab714d7cf3a595cbe7554010a7c79171916bc97b4611dc","size":4199},"nintendo-satellaview":{"file":"systems/nintendo-satellaview.json","gzip_size":13245,"sha256":"fc91880841ba301ff3fc2e7edfe53eed876edb33f9d7534d814d39dacd0a1654","size":51819},"nintendo-sgb":{"file":"systems/nintendo-sgb.json","gzip_size":746,"sha256":"617365112f8b93207b50323f761c4073d1c5aee87d877675822fb34247bab373","size":1621},"nintendo-snes":{"file":"systems/nintendo-snes.json","gzip_size":79838,"sha256":"5a1ffe5d5c958424793b77ce016c65205967f1d8ff910ffc6e8118f00b584001","size":249778},"nintendo-sufami-turbo":{"file":"systems/nintendo-sufami-turbo.json","gzip_size":1512,"sha256":"8070d9473708fee7ada3481daecd09e5389573652f1986e4a00275821337ac09","size":3210},"nintendo-wii":{"file":"systems/nintendo-wii.json","gzip_size":563,"sha256":"bff9fd15aa2896dbe9b5f60e713b04dd2d40dcfbee5dc8699a7ccec14536a466","size":1229},"odyssey2":{"file":"systems/odyssey2.json","gzip_size":3297,"sha256":"978953171a55509460854a4747ffbb94d9a0f16f0b2304abfe1aedbc3392582d","size":7851},"panasonic-3do":{"file":"systems/panasonic-3do.json","gzip_size":17243,"sha256":"38035ce01095a974ae7d0e1818f0d0c65f54cd89d326fa315893ef1062de9c0d","size":50013},"sega-32x":{"file":"systems/sega-32x.json","gzip_size":3894,"sha256":"6b0da0c37349c2340197d7a178f5862d942c43819f494ab2552e00e6dc83d360","size":16064},"sega-dreamcast":{"file":"systems/sega-dreamcast.json","gzip_size":36655,"sha256":"0041c8525fa27290841faa607ac8047e016f98896c5ff33b502495e8b37e14ed","size":122845},"sega-gamegear":{"file":"systems/sega-gamegear.json","gzip_size":14821,"sha256":"12ddb73bef81410d643f6b09ac0da2e49adb3dca8943f273f776d9c5c67583a2","size":54189},"sega-mastersystem":{"file":"systems/sega-mastersystem.json","gzip_size":14536,"sha256":"5669393a76b922ed2e14995c66c2804ccc7a1165a2416e50722c954aba560360","size":47411},"sega-megacd":{"file":"systems/sega-megacd.json","gzip_size":15396,"sha256":"ce94f85bf4ff3c8d4e58357c68cdb39a2b12d4b8052e61e77fd3189d2a3052c9","size":46794},"sega-megadrive":{"file":"systems/sega-megadrive.json","gzip_size":53279,"sha256":"10507cfccd4ec9fc2c63e71bbc83fda1001e565819665bb0b65d09f4506054bb","size":180871},"sega-naomi":{"file":"systems/sega-naomi.json","gzip_size":276,"sha256":"7da5520e2aa6c2f0e1e4e8f5417be5776d196960e793f740c3dd05ff37ab88e9","size":486},"sega-saturn":{"file":"systems/sega-saturn.json","gzip_size":66052,"sha256":"d3a87b71ce4771f0c4a93fa2d0621f100da77005b37e75faa541aec873a0f319","size":199102},"sega-stv":{"file":"systems/sega-stv.json","gzip_size":782,"sha256":"eb73b6449be6a70bf942f39c49322c03770ddd3bbb6a40f1add7f0ab90bd0841","size":2424},"sega-triforce":{"file":"systems/sega-triforce.json","gzip_size":286,"sha256":"7c68241a76bef2b4ff0cba2ea2f312250abc8585fcc52b41ced2bcbc76175726","size":539},"snk-neogeo-cd":{"file":"systems/snk-neogeo-cd.json","gzip_size":4649,"sha256":"ccc757ea85e9398347cc4ff1db29118a1923422aed21a7437d7c54806330fa8e","size":12370},"snk-neogeo-pocket":{"file":"systems/snk-neogeo-pocket.json","gzip_size":1070,"sha256":"c88819387ac6a344a017198e7bc2560fe306ba9f80350483dab29dd48a03342b","size":2179},"sony-playstation":{"file":"systems/sony-playstation.json","gzip_size":323936,"sha256":"e27d244a888c5246e00166eba8a893032cf96a85dff08905c77d696d997bd861","size":939819},"sony-playstation-2":{"file":"systems/sony-playstation-2.json","gzip_size":361140,"sha256":"410adb750ffbce2e2389facace712c1ad784cfa128da2763b5821ba5cc0ffac7","size":1075273},"vectrex":{"file":"systems/vectrex.json","gzip_size":1615,"sha256":"908725537d457bd597c180c61705f494209c412d728951944d86e504f40387ad","size":3457},"wonderswan":{"file":"systems/wonderswan.json","gzip_size":5961,"sha256":"e0949ae3fd96c11f54db7f56d1d9bc7b9613afe54d411ac16241095eb20f42ba","size":18778},"wonderswan-color":{"file":"systems/wonderswan-color.json","gzip_size":5618,"sha256":"41931c79d3546731ac4665f711c3d6296d30a26244be08e3bd9da01cbfdfa470","size":18027}}}
+{"arcade":{"fbneo":{"file":"arcade/fbneo.json","gzip_size":115955,"sha256":"88961c9a6be804772baa767f6ee3a9162478c30c60fe55c8363d8fe4fbc909da","size":423362},"flycast":{"file":"arcade/flycast.json","gzip_size":1841,"sha256":"957189a6e993fda08e21c90ffc6ad94aed9ca9e6dd9ed8c7724e29db036791cb","size":5441},"mame":{"file":"arcade/mame.json","gzip_size":154527,"sha256":"b12010301293a218ecfac45706d81a26c3ac0c27eebeca7409bc8f6ce0163e9e","size":604648},"mame0258":{"file":"arcade/mame0258.json","gzip_size":141151,"sha256":"7ecff1979ed2ac123ea3ba4825dde6e2c31906415165fabefc9af93fa48a6de4","size":556059},"mame0278":{"file":"arcade/mame0278.json","gzip_size":148595,"sha256":"7881e3516f451ec83e886aaf41ebac9d60f497e1f954f49749d52890d7955cbf","size":582797},"mame2000":{"file":"arcade/mame2000.json","gzip_size":8624,"sha256":"f0d69b0872ecfc2845eeb7304543e5b17c11db82060b5514c206b6962ed08263","size":23316},"mame2003":{"file":"arcade/mame2003.json","gzip_size":17456,"sha256":"3b44e2a92c80a8f104b7781fcc1c776d025ad2cf4986638efa3ea041baa9a56d","size":48929},"mame2003_plus":{"file":"arcade/mame2003_plus.json","gzip_size":21077,"sha256":"2857283556fa49c20d8160ed113465bf0c2e643ed0b8acd2d38266a78be8e25e","size":62373},"mame2010":{"file":"arcade/mame2010.json","gzip_size":30869,"sha256":"50b1b381b4b07463f69f1f4c512dd1c98a78d4d0e9c3aeaf49b7b1b007b42152","size":96528},"mame2015":{"file":"arcade/mame2015.json","gzip_size":86990,"sha256":"afeb8c32f651421f74c6de057b0c0b837acd14c533b5160bb31f4411e0afffec","size":360117},"mame2016":{"file":"arcade/mame2016.json","gzip_size":101249,"sha256":"1f75147977d9d082a38b8f8e47a02b301f3d6e6db97c9b9282f3e7f27f26ee47","size":406190}},"containers":{"7z":{"description":"Per-file CRCs and sizes sit in the header at the end of the archive, LZMA-compressed by default (kEncodedHeader). One LZMA decode of the header, independent of the archive size, gives them. Python's lzma is an optional module.","re_read":true,"signature":{"bytes_hex":"377abcaf271c","offset":0},"source_ref":"ip7z/7zip@b88c6bc0 DOC/7zFormat.txt:171-189, DOC/7zFormat.txt:318-334, CPP/7zip/Archive/7z/7zHandlerOut.cpp:859"},"cd-sector":{"description":"User data of a CD sector. In a 2048-byte image (.iso) sector N starts at N * 2048. In a raw 2352-byte image it starts at N * 2352 plus 16 for Mode 1 and plus 24 for Mode 2 Form 1 (12 sync bytes, a 4-byte header, and for Mode 2 an 8-byte subheader).","re_read":true,"sector_size":{"iso":2048,"raw":2352},"source_ref":"stenzek/duckstation@526b4a12 src/util/iso_reader.cpp:157-171, src/util/cd_image.h:28-34","user_data_offset":{"mode1":16,"mode2":24}},"chd-v5":{"description":"MAME compressed hunks, big-endian. The header holds sizes, codecs and hashes only, never the system or the region. The overall SHA-1 is what MAME software lists record. Neither SHA-1 equals a Redump track hash: chdman hashes 2448-byte frames (subcode included, zero-filled), pads each track to 4 frames and byte-swaps audio, all tracks in one stream.","fields":{"compressors":{"encoding":"fourcc4","length":16,"offset":16},"header_length":{"encoding":"u32be","length":4,"offset":8,"value":124},"hunk_bytes":{"encoding":"u32be","length":4,"offset":56},"logical_bytes":{"encoding":"u64be","length":8,"offset":32},"map_offset":{"encoding":"u64be","length":8,"offset":40},"metadata_offset":{"encoding":"u64be","length":8,"offset":48},"overall_sha1":{"encoding":"hex","length":20,"offset":84},"parent_sha1":{"encoding":"hex","length":20,"offset":104},"raw_sha1":{"encoding":"hex","length":20,"offset":64},"unit_bytes":{"encoding":"u32be","length":4,"offset":60},"version":{"encoding":"u32be","length":4,"offset":12,"value":5}},"magic":{"bytes":"MComprHD","offset":0},"media_tags":{"CHCD":"cd","CHGD":"gd-rom","CHGT":"gd-rom","CHT2":"cd","CHTR":"cd","DVD ":"dvd","GDDD":"hard-disk"},"metadata_entry":{"description":"16-byte entry header, payload follows. Linked list from metadata_offset.","flags":{"encoding":"u8","length":1,"offset":4},"length":{"encoding":"u24be","length":3,"offset":5},"next":{"encoding":"u64be","length":8,"offset":8},"tag":{"encoding":"ascii","length":4,"offset":0}},"re_read":true,"source_ref":"mamedev/mame@f34f0250 src/lib/util/chd.h:148-162, src/lib/util/chd.cpp:2021-2061, src/lib/util/chd.cpp:2822-2831, src/lib/util/chd.h:212-235, src/lib/util/chd.cpp:1709-1749, src/tools/chdman.cpp:443-445, src/tools/chdman.cpp:2195-2203, src/lib/util/cdrom.cpp:2669-2672, src/emu/romload.cpp:1211"},"gamecube-disc":{"description":"Where disc offset 0 sits inside each container Dolphin opens.","formats":{"ciso":{"disc_header_at":32768,"magic":"CISO"},"gcz":{"disc_header_at":null,"magic_u32le":2970337281,"note":"block 0 is zlib unless bit 63 of its pointer is set"},"iso":{"disc_header_at":0,"magic":null},"rvz":{"disc_header_at":88,"magic":"RVZ\u0001","note":"first 0x80 disc bytes copied into header 2"},"wbfs":{"disc_header_at":null,"magic":"WBFS","note":"disc offset 0 at wlba[0] << wbfs_sector_shift"},"wia":{"disc_header_at":88,"magic":"WIA\u0001","note":"first 0x80 disc bytes copied into header 2"}},"re_read":true,"source_ref":"dolphin-emu/dolphin@0d93fc03 Source/Core/DiscIO/WIABlob.h:80-119, Source/Core/DiscIO/WIABlob.cpp:320-330, Source/Core/DiscIO/CISOBlob.cpp:66-69, Source/Core/DiscIO/CompressedBlob.cpp:140-150, Source/Core/DiscIO/WbfsBlob.cpp:148-155"},"iso9660":{"description":"Primary volume descriptor in sector 16 ('CD001' at offset 1), root directory record at PVD offset 156 (34 bytes). A file is found by name in the root directory, with the ';1' version suffix.","pvd_sector":16,"re_read":true,"root_record_offset":156,"source_ref":"stenzek/duckstation@526b4a12 src/util/iso_reader.cpp:68-90, src/util/iso_reader.h:60-99"},"zip":{"description":"The central directory gives each member's CRC-32 (offset 16) and uncompressed size (offset 24) without inflating. Python's zipfile reads it on open (ZipInfo.CRC, ZipInfo.file_size).","re_read":true,"source_ref":"python/cpython@fa919fdf Lib/zipfile.py:99-115, Lib/zipfile.py:1293-1347"}},"data_version":"e116113526ed7626","fallback":{"amberelec":{"file":"fallback/amberelec.json","gzip_size":12141,"sha256":"6a3c624996adc555ad45c170dc5c0402841a4ec2361a9ed11acffd666a6fa4b4","size":61223},"batocera":{"file":"fallback/batocera.json","gzip_size":42316,"sha256":"4ee3450717aa1e7cac1941bfc6e72a718973bfb2cd0a41d213ccadae58aa6724","size":309422},"bizhawk":{"file":"fallback/bizhawk.json","gzip_size":1944,"sha256":"152b14f3aff69714698a58837d6331ebcbcd3aaaa5f62939b9c743e535a319f4","size":7320},"emudeck":{"file":"fallback/emudeck.json","gzip_size":26318,"sha256":"11a818cb8a36969586b45fa50390cae1f354ce915a70a1b1d5e45d26b9c5dd84","size":110253},"emuelec":{"file":"fallback/emuelec.json","gzip_size":16695,"sha256":"1e76868f0cb723a0b44a1b403f666cc37eeefdd7b7bf420d5e2e2053f28c9464","size":82083},"knulli":{"file":"fallback/knulli.json","gzip_size":39825,"sha256":"62ec2a347783a30e6e0a61a5df3045b347013a1022c73d39945147d5908f7920","size":267594},"minui":{"file":"fallback/minui.json","gzip_size":701,"sha256":"d68b30917db60263e57331271ebc33d00520dcbc15cdcaba8ccaf2901be2c870","size":2761},"misterfpga":{"file":"fallback/misterfpga.json","gzip_size":1898,"sha256":"b8f457378063d2f9b4010c2fefc21561df71e2e2d06f4ad1a7d945f4ad0a6f55","size":9569},"myminui":{"file":"fallback/myminui.json","gzip_size":1887,"sha256":"029242a5d03083b697c3c801f5a7f86687d62432fa925e0ec1c4759c3e3c20a5","size":7993},"nextui":{"file":"fallback/nextui.json","gzip_size":3088,"sha256":"3c28a4e3d67d5e5b653303419423c4326845b7e8b047c5f4ee1fdf44da0f5faf","size":15502},"recalbox":{"file":"fallback/recalbox.json","gzip_size":13869,"sha256":"6854fff04b6e4d619f92e76b0427f45fd0bd06c1d88f9037b603c0a0dc9c9efc","size":62692},"retroarch":{"file":"fallback/retroarch.json","gzip_size":45034,"sha256":"7645d79fb80ea7334d5c17ded28e9c60c74568d6ab3c6e138b40b3815ce82061","size":217786},"retrobat":{"file":"fallback/retrobat.json","gzip_size":32950,"sha256":"59aae7e5e1c53931a456cfe4cf580e3c0dd3bf8bd77455baa7732670404a4786","size":139887},"retrodeck":{"file":"fallback/retrodeck.json","gzip_size":46070,"sha256":"bfd7ffd2d69a7a0d2df0fdf70072661060f6538379b46960d79e9405b6ace447","size":236872},"retropie":{"file":"fallback/retropie.json","gzip_size":37196,"sha256":"20a85de251a7e43246bbf55d6902bdcd3989b4969d1f61b771b9f4a51824463e","size":153232},"rocknix":{"file":"fallback/rocknix.json","gzip_size":9255,"sha256":"e86b0b9099692f63e4f59bc0b1cd7dfc0b1c74bd381e0f53749c5d6a85630ba0","size":38910},"romm":{"file":"fallback/romm.json","gzip_size":6111,"sha256":"e4009ba31a3a5e08d7cf0c6cfcdfaa0e704faa19460d8e1c0fc169b745a4a15e","size":27444}},"folders":{"240ptestsuite":["nintendo-fds","nintendo-nes"],"2600":["atari-2600"],"2ship":["2ship"],"32x":["sega-32x"],"3d0":["panasonic-3do"],"3do":["panasonic-3do"],"3ds":["nintendo-3ds"],"5200":["atari-5200"],"64":["nintendo-64"],"64dd":["nintendo-64","nintendo-64dd"],"7800":["atari-7800"],"800":["atari-400-800"],"a2600":["atari-2600"],"a5200":["atari-5200"],"a7800":["atari-7800"],"a800":["atari-400-800"],"acclaim-zn1":["acclaim-zn1"],"acorn-archimedes":["acorn-archimedes"],"acorn-bbc-micro":["acorn-bbc-micro"],"acpc":["amstrad-cpc"],"actionmax":["arcade-laserdisc"],"adam":["coleco-adam"],"advision":["entex-advision"],"advmame":["arcade"],"agb":["nintendo-gba"],"ags":["ags"],"amiga":["commodore-amiga"],"amiga (puae)":["commodore-amiga","commodore-amiga-cd32","commodore-cdtv"],"amiga-cd32":["commodore-amiga-cd32"],"amiga1200":["commodore-amiga"],"amiga4000":["commodore-amiga"],"amiga500":["commodore-amiga"],"amiga600":["commodore-amiga"],"amigacd32":["commodore-amiga","commodore-amiga-cd32"],"amigacdtv":["commodore-amiga"],"amstrad":["amstrad-cpc"],"amstrad cpc (cpc)":["amstrad-cpc"],"amstrad-cpc":["amstrad-cpc"],"amstradcpc":["amstrad-cpc"],"amstradgx4000":["amstrad-cpc"],"apf-m1000":["apf-m1000"],"apfm1000":["apf-m1000"],"apple":["apple2"],"apple ii":["apple-ii"],"apple-ii":["apple-ii"],"apple-iigs":["apple-iigs"],"apple-ios":["apple-ios"],"apple-macintosh":["apple-macintosh"],"apple-macintosh-ii":["apple-macintosh-ii"],"apple2":["apple2"],"apple2gs":["apple-iigs"],"applemacintosh":["apple-macintosh"],"aquaplus-piece":["aquaplus-piece"],"aquarius":["mattel-aquarius"],"arcade":["arcade","capcom-cps1","capcom-cps2","capcom-cps3"],"arcade (mame)":["arcade"],"arcade-laserdisc":["arcade-laserdisc"],"arcadeatomiswave":["sammy-atomiswave"],"arcadehbmame":["arcade"],"arcadenaomi":["sammy-atomiswave"],"arcadeneogeo":["neogeo"],"arcadeneogeocd":["snk-neogeo-cd"],"arcadesegaatomiswave":["sammy-atomiswave"],"arcadeseganaomi":["sammy-atomiswave"],"arcadesnk":["neogeo"],"arcadesnkneogeo":["neogeo"],"arcadevertical":["arcade"],"arcadia":["emerson-arcadia-2001"],"arcatomiswave":["sammy-atomiswave"],"archimedes":["acorn-archimedes"],"arcnaomi":["sammy-atomiswave"],"arcneogeo":["neogeo"],"arcneogeocd":["snk-neogeo-cd"],"arcsegaatomiswave":["sammy-atomiswave"],"arcseganaomi":["sammy-atomiswave"],"arduboy":["arduboy"],"ast":["atari-st"],"aste":["atari-st"],"astrocade":["bally-astrocade"],"astrocde":["bally-astrocade"],"atari":["atari-2600"],"atari 2600 (a2600)":["atari-2600"],"atari 5200 (a5200)":["atari-5200"],"atari 7800":["atari-7800"],"atari 7800 (a7800)":["atari-7800"],"atari jaguar":["atari-jaguar"],"atari lynx (lynx)":["atari-lynx"],"atari st":["atari-st"],"atari-2600":["atari-2600"],"atari-2600-plus":["atari-2600"],"atari-400-800":["atari-400-800"],"atari-5200":["atari-5200"],"atari-7800":["atari-7800"],"atari-jaguar":["atari-jaguar"],"atari-jaguarcd":["atari-jaguarcd"],"atari-lynx":["atari-lynx"],"atari-lynx-mkii":["atari-lynx"],"atari-st":["atari-st"],"atari-zn1":["atari-zn1"],"atari2600":["atari-2600"],"atari5200":["atari-5200"],"atari5200 (a5200)":["atari-5200"],"atari7800":["atari-7800"],"atari7800 (a7800)":["atari-7800"],"atari800":["atari-400-800"],"atari8bit":["atari-400-800"],"atarifalcon":["atari-st"],"atarijaguar":["atari-jaguar"],"atarijaguarcd":["atari-jaguar","atari-jaguarcd"],"atarilynx":["atari-lynx"],"atarist":["atari-st"],"atariste":["atari-st"],"ataritt":["atari-st"],"atarixe":["atari-400-800"],"atarixegs":["xegs"],"atlus-zn1":["atlus-zn1"],"atom":["atom"],"atomiswave":["sammy-atomiswave","sega-dreamcast-arcade"],"aw":["sammy-atomiswave"],"bally-astrocade":["bally-astrocade"],"bandai-rx78":["bandai-rx78"],"bandai-wswan":["bandai-wswan"],"bandai-wswanc":["bandai-wswanc"],"bandaiwonderswan":["wonderswan"],"bandaiwonderswancolor":["wonderswan"],"bbc":["acorn-bbc-micro"],"bbcmicro":["acorn-bbc-micro"],"bbk":["bbk-longman-4980","bbk-longman-4988"],"bbk-longman-4980":["bbk-longman-4980"],"bbk-longman-4988":["bbk-longman-4988"],"beena":["sega-beena"],"bennugd":["bennugd"],"bermuda-syndrome":["bermuda-syndrome"],"bgb":["game-boy-color"],"bk":["elektronika-bk"],"blake-stone":["blake-stone"],"blood":["blood"],"bshift":["bshift"],"bstone":["blake-stone"],"bsx":["nintendo-satellaview"],"bsyndrome":["bermuda-syndrome"],"build":["blood","duke3d","exhumed","nam","powerslave","redneck","shadow-warrior","ww2gi"],"bws":["wonderswan"],"bwsc":["wonderswan"],"c-plus-4":["commodore-plus4"],"c128":["commodore-c128"],"c16":["commodore-plus4"],"c20":["commodore-vic20"],"c64":["commodore-c64"],"caesar3":["caesar3"],"camplynx":["camplynx"],"cannonball":["sega-outrun"],"capcom-cps1":["capcom-cps1"],"capcom-cps2":["capcom-cps2"],"capcom-cps3":["capcom-cps3"],"capcom-zn1":["capcom-zn1"],"capcom-zn2":["capcom-zn2"],"capcomcps1":["capcom-cps1"],"capcomcps2":["capcom-cps2"],"capcomcps3":["capcom-cps3"],"casio-loopy":["casio-loopy"],"casio-pv1000":["casio-pv1000"],"casio-pv2000":["casio-pv2000"],"casio_pv-1000":["casio-pv1000"],"casio_pv-2000":["casio-pv2000"],"casioloopy":["casio-loopy"],"cassettevision":["epochcv"],"catacomb":["catacomb-3d","catacomb-adventure"],"catacomb-3d":["catacomb-3d"],"catacomb-adventure":["catacomb-adventure"],"cave-story":["cave-story"],"cavestory":["cave-story"],"cbm-ii":["commodore-cbm-ii"],"cbmii":["commodore-cbm-ii"],"cd-i":["philips-cdi"],"cdi":["philips-cdi"],"cdimono1":["philips-cdi"],"cdtv":["commodore-amiga","commodore-cdtv"],"cgb":["nintendo-gbc"],"cgenie":["cgenie"],"cgenius":["commander-keen"],"channel f":["fairchild-channelf"],"channelf":["fairchild-channelf"],"chex":["chex"],"chf":["fairchild-channelf"],"chihiro":["sega-chihiro"],"chip-8":["chip8"],"chip8":["chip8"],"chipeight":["chip8"],"coco":["coco"],"coco3":["coco","coco3"],"coleco":["colecovision"],"coleco vision":["colecovision"],"coleco-adam":["coleco-adam"],"colecovision":["colecovision"],"colecovision (coleco)":["colecovision"],"commander-keen":["commander-keen"],"commanderx16":["commanderx16"],"commmodore-128":["commodore-c128"],"commodore":["commodore-c64"],"commodore 128 (c128)":["commodore-c128"],"commodore 64 (c64)":["commodore-c64"],"commodore pet (pet)":["commodore-pet"],"commodore plus4 (plus4)":["commodore-plus4"],"commodore vic20 (vic)":["commodore-vic20"],"commodore-64c":["commodore-c64"],"commodore-amiga":["commodore-amiga"],"commodore-amiga-cd32":["commodore-amiga-cd32"],"commodore-c128":["commodore-c128"],"commodore-c64":["commodore-c64"],"commodore-cbm-ii":["commodore-cbm-ii"],"commodore-cdtv":["commodore-cdtv"],"commodore-pet":["commodore-pet"],"commodore-plus4":["commodore-plus4"],"commodore-vic20":["commodore-vic20"],"commodore128":["commodore-c128"],"commodore64":["commodore-c64"],"commodoreamiga":["commodore-amiga"],"commodorec128":["commodore-c128"],"commodorec64":["commodore-c64"],"commodorecbmii":["commodore-cbm-ii"],"commodorepet":["commodore-pet"],"commodoreplus4":["commodore-plus4"],"commodorevic20":["commodore-vic20"],"corsixth":["theme-hospital"],"cougarboy":["mega-duck"],"cpc":["amstrad-cpc"],"cpet":["commodore-pet"],"cplus4":["commodore-plus4"],"cps":["arcade"],"cps1":["arcade","capcom-cps1"],"cps2":["arcade","capcom-cps2"],"cps3":["arcade","capcom-cps3"],"creativision":["crvision"],"crvision":["crvision"],"cstrike":["cstrike"],"cv":["colecovision"],"czero":["czero"],"czeror":["czeror"],"daphne":["arcade-laserdisc"],"dark-forces":["dark-forces"],"dark-forces-ii":["dark-forces-ii"],"dc":["sega-dreamcast"],"descent":["descent"],"descent2":["descent2"],"devilutionx":["diablo"],"diablo":["diablo"],"dice":["discrete-arcade"],"dinothawr":["dinothawr"],"discrete-arcade":["discrete-arcade"],"disksystem":["nintendo-fds"],"dmc":["dmc"],"dmg":["game-boy","nintendo-gb"],"doom":["doom"],"doom (doom)":["doom"],"doom (prboom)":["doom","heretic"],"doom3":["doom3"],"dos":["dos"],"dosbox":["dos"],"dragon":["coco","dragon64"],"dragon32":["coco","dragon32"],"dragon64":["coco","dragon64"],"dreamcast":["sega-dreamcast"],"dreamm":["dos","fmtowns","ibm-pc","tandy-1000"],"droidworks":["droidworks"],"ds":["nintendo-ds"],"dsi":["nintendo-ds","nintendo-dsi"],"duke3d":["duke3d"],"dusklight":["dusklight"],"dxx-rebirth":["descent","descent2"],"easyrpg":["rpgmaker"],"ecwolf":["wolfenstein3d"],"eduke32":["duke3d"],"eighthundred":["atari-400-800"],"eighting-zn1":["eighting-zn1"],"electron":["electron"],"elektor-tv-games-computer":["elektor-tv-games-computer"],"elektronika":["elektronika-bk"],"elektronika-bk":["elektronika-bk"],"elektronikabk":["elektronika-bk"],"emerson-arcadia-2001":["emerson-arcadia-2001"],"enemyterritory":["enemyterritory"],"enterprise":["enterprise-128","enterprise-64-128"],"enterprise-128":["enterprise-128"],"enterprise-64-128":["enterprise-64-128"],"enterprise128":["enterprise-128"],"entex-advision":["entex-advision"],"ep128":["enterprise-128"],"ep64-128":["enterprise-64-128"],"epochcv":["epochcv"],"epochsupercassettevision":["scv"],"epsxe":["sony-playstation"],"etlegacy":["enemyterritory"],"exelvision-exl100":["exelvision-exl100"],"exhumed":["exhumed"],"exl100":["exelvision-exl100"],"fairchild":["fairchild-channelf"],"fairchild-channel-f":["fairchild-channelf"],"fairchild-channelf":["fairchild-channelf"],"fairchildchannelf":["fairchild-channelf"],"fake08":["pico8"],"falcon":["atari-st"],"fallout":["fallout"],"fallout1-ce":["fallout"],"fallout2":["fallout2"],"fallout2-ce":["fallout2"],"famicom":["famicom","nintendo-nes"],"famicom disk system (fds)":["nintendo-fds"],"famicom-disk-system":["famicom-disk-system"],"famicomdisk":["nintendo-fds"],"famicomdisksystem":["famicom-disk-system"],"famicomds":["famicom-disk-system"],"fat plumber shit":["nintendo-nes"],"fba":["arcade"],"fbneo":["arcade"],"fbnneogeo":["neogeo"],"fc":["famicom","nintendo-fds","nintendo-nes"],"fcds":["famicom-disk-system"],"fcnes":["famicom"],"fds":["famicom-disk-system","nintendo-fds"],"fiftytwohundred":["atari-5200"],"finalburnneo":["arcade"],"flash":["flash"],"flashback":["flashback"],"flycast":["sega-dreamcast"],"fm-7":["fm7"],"fm7":["fm7"],"fmtowns":["fmtowns"],"fmtownsux":["fmtowns"],"fpinball":["fpinball"],"freej2me":["j2me"],"fury":["fury"],"galaksija":["galaksija"],"galretro":["galaksija"],"gamate":["gamate"],"game boy (gb)":["nintendo-gb"],"game boy advance (gba)":["nintendo-gba"],"game boy advance (mgba)":["nintendo-gba"],"game boy color (gbc)":["nintendo-gbc"],"game gear":["sega-gamegear"],"game-boy":["game-boy"],"game-boy-adavance-sp":["nintendo-gb","nintendo-gba","nintendo-gbc","nintendo-sgb"],"game-boy-advance":["game-boy-advance"],"game-boy-color":["game-boy-color"],"game-boy-light":["nintendo-gb","nintendo-gbc"],"game-boy-micro":["nintendo-gb","nintendo-gba","nintendo-gbc","nintendo-sgb"],"game-boy-pocket":["nintendo-gb","nintendo-gbc"],"game-televisison":["nintendo-fds","nintendo-nes"],"gameandwatch":["handheld-electronic"],"gameboy":["game-boy","nintendo-gb"],"gameboyadvance":["game-boy-advance","nintendo-gba"],"gameboycolor":["game-boy-color","nintendo-gbc"],"gamecom":["tiger-game-com"],"gamecube":["nintendo-gamecube"],"gamegear":["sega-gamegear"],"gamegearh":["sega-gamegear"],"gamegearhacks":["sega-gamegear"],"gameking":["gameking"],"gamemaster":["hartung-game-master"],"gamenwatch":["handheld-electronic"],"gamepark-gp32":["gamepark-gp32"],"gamepock":["gamepock"],"gamepocketcomputer":["gamepock"],"gametank":["gametank"],"gb":["game-boy","nintendo-gb","nintendo-gbc"],"gb2players":["nintendo-gb"],"gba":["game-boy-advance","nintendo-gba"],"gba2players":["nintendo-gba"],"gbadvance":["game-boy-advance"],"gbah":["nintendo-gba"],"gbahacks":["game-boy-advance"],"gbav":["nintendo-gb","nintendo-gba","nintendo-gbc","nintendo-sgb"],"gbc":["game-boy-color","nintendo-gb","nintendo-gbc"],"gbc2players":["nintendo-gbc"],"gbch":["nintendo-gbc"],"gbchacks":["game-boy-color"],"gbcolor":["game-boy-color"],"gbdmg":["game-boy"],"gbh":["nintendo-gb"],"gbhacks":["game-boy"],"gbsp":["game-boy-advance"],"gc":["nintendo-gamecube"],"gce":["vectrex"],"gcevectrex":["vectrex"],"gearbox":["gearbox"],"gen":["sega-megadrive"],"gen32x":["sega-32x"],"gencd":["sega-megacd"],"genesis":["sega-genesis","sega-megadrive"],"genesiscd":["sega-megacd"],"genesishacks":["sega-megadrive"],"genh":["sega-megadrive"],"genmd":["sega-megadrive"],"gens":["sega-megadrive"],"gensegacd":["sega-megacd"],"gg":["sega-gamegear"],"ggsms":["sega-mastersystem"],"ghostship":["ghostship"],"gmaster":["hartung-game-master"],"gp32":["gamepark-gp32"],"gt":["gametank"],"gw":["handheld-electronic"],"gx4000":["amstrad-cpc"],"gzdoom":["chex","doom","heretic","hexen","strife"],"half-life":["half-life"],"halflife":["half-life"],"handheld-electronic":["handheld-electronic"],"handheldelectronic":["handheld-electronic"],"harcade":["arcade"],"hartung-game-master":["hartung-game-master"],"hbmame":["arcade"],"heretic":["heretic"],"hexen":["hexen"],"hikaru":["sega-hikaru"],"horizontal":["arcade"],"horizontalarcade":["arcade"],"hyper-neogeo64":["hyper-neogeo64"],"ibm-pc":["ibm-pc"],"ibm-pcjr":["ibm-pcjr"],"idquake":["quake"],"idquake2":["quake2"],"igs-pgm":["igs-pgm"],"intelli":["intellivision"],"intellivision":["intellivision"],"interact":["interact"],"interton-vc4000":["interton-vc4000"],"intv":["intellivision"],"iortcw":["return-to-castle-wolfenstein"],"ios":["apple-ios"],"iphone":["apple-ios"],"ique-player":["nintendo-64","nintendo-64dd"],"itv":["intellivision"],"j2me":["j2me"],"jag":["atari-jaguar"],"jaguar":["atari-jaguar"],"jaguarcd":["atari-jaguarcd"],"java":["j2me"],"jazz-jackrabbit":["jazz-jackrabbit"],"jazz-jackrabbit-2":["jazz-jackrabbit-2"],"jazz2":["jazz-jackrabbit-2"],"jedi-academy":["jedi-academy"],"jediknight2":["jediknight2"],"jkdf2":["dark-forces-ii","droidworks","mysteries-of-the-sith"],"jknight":["jedi-academy","jediknight2"],"kega":["sega-megadrive"],"konami-gq":["konami-gq"],"konami-gv":["konami-gv"],"laser310":["laser310"],"laseractive":["laseractive"],"laserdisc":["arcade-laserdisc"],"libgametank":["gametank"],"lindbergh":["sega-lindbergh"],"loopy":["casio-loopy"],"lowresnx":["lowresnx"],"lucasart":["scummvm"],"lucasarts":["scummvm"],"lynx":["atari-lynx"],"mac":["apple-macintosh","apple-macintosh-ii"],"macintosh":["apple-macintosh"],"magnavox":["odyssey2"],"magnavoxodyssey":["odyssey2"],"magnavoxodyssey2":["odyssey2"],"magnavoxvideopac":["odyssey2"],"mame":["arcade"],"mame-advmame":["arcade"],"mame-libretro":["arcade"],"mame-mame4all":["arcade"],"mame2000":["arcade"],"mame2003":["arcade"],"mame2003plus":["arcade"],"mame2010":["arcade"],"mark3":["sega-mastersystem"],"marty":["marty"],"master-system-girl":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"master-system-super-compact":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"mastersystem":["sega-mastersystem"],"mastersystemhacks":["sega-mastersystem"],"mattel-aquarius":["mattel-aquarius"],"mattelintellivision":["intellivision"],"mc10":["mc10"],"md":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megadrive"],"md32x":["sega-32x"],"mdcd":["sega-megacd"],"mdgen":["sega-megadrive"],"mdmsu":["sega-megadrive"],"mdmsu1":["sega-megadrive"],"mdsegacd":["sega-megacd"],"mega-duck":["mega-duck"],"mega-pc":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"megacd":["sega-megacd"],"megacdjp":["sega-megacd"],"megachip8":["chip8"],"megadrive":["sega-genesis","sega-megadrive"],"megadrive-japan":["sega-megadrive"],"megadrive-msu":["sega-megacd"],"megadrivecd":["sega-megacd"],"megadriveh":["sega-megadrive"],"megadrivehacks":["sega-megadrive"],"megadrivejp":["sega-genesis","sega-megadrive"],"megadrivemsu":["sega-megadrive"],"megaduck":["mega-duck"],"mgba":["game-boy-advance","nintendo-gba"],"microsoft msx (msx)":["msx"],"microsoft-xbox":["microsoft-xbox"],"microsoft-xbox-360":["microsoft-xbox-360"],"microsoftdos":["dos"],"microsoftmsx":["msx"],"midp":["j2me"],"minivmac":["apple-macintosh"],"mkxp":["rpgmaker"],"mkxp-z":["rpgmaker"],"mobile":["j2me"],"model2":["sega-model2"],"model2/roms":["sega-model2"],"model3":["sega-model3"],"mohaa":["mohaa"],"moto":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"ms":["sega-mastersystem"],"msdos":["dos"],"msdos (dos)":["dos"],"msu":["nintendo-snes"],"msu-md":["sega-megacd"],"msu1":["nintendo-snes"],"msumd":["sega-megacd","sega-megadrive"],"msx":["msx"],"msx1":["msx","msx1"],"msx2":["msx","msx2"],"msx2+":["msx2+"],"msx2plus":["msx2plus"],"msxturbor":["msx","msxturbor"],"multivision":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sc3000","sega-sg1000"],"mysteries-of-the-sith":["mysteries-of-the-sith"],"myvision":["myvision"],"mz2000":["mz2000"],"mz2500":["mz2500"],"mz700":["mz700"],"mz800":["mz800"],"mz80k":["mz80k"],"n3ds":["nintendo-3ds"],"n64":["nintendo-64"],"n64dd":["nintendo-64","nintendo-64dd"],"n64hacks":["nintendo-64"],"nam":["nam"],"namco-system11":["namco-system11"],"namco-system246":["namco-system246"],"namco-system256":["namco-system256"],"namco-system357":["namco-system357"],"namco2x6":["namco-system246"],"naomi":["sammy-atomiswave","sega-dreamcast-arcade","sega-naomi"],"naomi2":["sega-naomi2"],"naomigd":["sega-dreamcast-arcade","sega-naomigd"],"native32":["sunplus-native32"],"nds":["nintendo-ds"],"ndsi":["nintendo-dsi"],"ndsiware":["nintendo-dsi"],"nec-pc-88":["nec-pc-88"],"nec-pc-engine":["nec-pc-engine"],"nec-pc-engine-cd":["nec-pc-engine-cd"],"nec-pcfx":["nec-pcfx"],"nec-supergrafx":["nec-supergrafx"],"necpc8000":["nec-pc-88","pc80"],"necpc98":["pc-98"],"necpce":["nec-pc-engine"],"necpcecd":["nec-pc-engine-cd"],"necpcengine":["nec-pc-engine"],"necpcenginecd":["nec-pc-engine-cd"],"necpcfx":["nec-pcfx"],"necsgfx":["nec-supergrafx"],"necsupergrafx":["nec-supergrafx"],"nectg16":["nec-pc-engine"],"nectgcd":["nec-pc-engine-cd"],"necturbografx":["nec-pc-engine"],"necturbografx16":["nec-pc-engine"],"necturbografxcd":["nec-pc-engine-cd"],"neo geo pocket (ngp)":["snk-ngp"],"neo geo pocket color (ngpc)":["snk-ngpc"],"neo-geo-cd":["snk-neogeo-cd"],"neo-geo-pocket":["snk-neogeo-pocket"],"neo-geo-pocket-color":["neo-geo-pocket-color"],"neocd":["snk-neogeo-cd"],"neocdz":["snk-neogeo-cd"],"neogeo":["neogeo"],"neogeo cd (ngcd)":["snk-neogeo-cd"],"neogeo-cd":["snk-neogeo-cd"],"neogeo64":["hyper-neogeo64"],"neogeoaes":["snk-neogeo-aes"],"neogeocd":["snk-neogeo-cd"],"neogeocdjp":["snk-neogeo-cd"],"neogeomvs":["snk-neogeo-mvs"],"neogeopocket":["snk-neogeo-pocket","snk-ngp"],"neogeopocketcolor":["snk-neogeo-pocket","snk-ngpc"],"nes":["famicom","nintendo-nes"],"nescd":["famicom"],"nesds":["famicom"],"nesfc":["famicom"],"nesh":["nintendo-nes"],"neshacks":["famicom"],"new-nintendo-3ds":["nintendo-3ds"],"new-style-nes":["nintendo-fds","nintendo-nes"],"new-style-super-nes-model-sns-101":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"ng":["neogeo"],"ngage":["ngage"],"ngb":["game-boy"],"ngba":["game-boy-advance"],"ngbc":["game-boy-color"],"ngc":["nintendo-gamecube","snk-ngp"],"ngcd":["snk-neogeo-cd"],"ngp":["snk-neogeo-pocket","snk-ngp","snk-ngpc"],"ngpc":["snk-neogeo-pocket","snk-ngp","snk-ngpc"],"ngpocket":["snk-neogeo-pocket"],"ngpocketcolor":["snk-neogeo-pocket"],"ngw":["handheld-electronic"],"ninds":["nintendo-ds"],"ninetyeight":["pc-98"],"ningba":["game-boy-advance"],"ningbc":["game-boy-color"],"ninnes":["famicom"],"ninsnes":["nintendo-satellaview"],"nintendo ds (nds)":["nintendo-ds"],"nintendo entertainment system (fc)":["nintendo-nes"],"nintendo-3ds":["nintendo-3ds"],"nintendo-64":["nintendo-64"],"nintendo-64dd":["nintendo-64dd"],"nintendo-ds":["nintendo-ds"],"nintendo-ds-lite":["nintendo-ds","nintendo-dsi"],"nintendo-dsi":["nintendo-dsi"],"nintendo-dsi-xl":["nintendo-ds","nintendo-dsi"],"nintendo-fds":["nintendo-fds"],"nintendo-gamecube":["nintendo-gamecube"],"nintendo-gb":["nintendo-gb"],"nintendo-gba":["nintendo-gba"],"nintendo-gbc":["nintendo-gbc"],"nintendo-nes":["nintendo-nes"],"nintendo-pokemon-mini":["nintendo-pokemon-mini"],"nintendo-satellaview":["nintendo-satellaview"],"nintendo-sgb":["nintendo-sgb"],"nintendo-snes":["nintendo-snes"],"nintendo-sufami-turbo":["nintendo-sufami-turbo"],"nintendo-switch":["nintendo-switch"],"nintendo-virtualboy":["nintendo-virtualboy"],"nintendo-wii":["nintendo-wii"],"nintendo-wiiu":["nintendo-wiiu"],"nintendo3ds":["nintendo-3ds"],"nintendo64":["nintendo-64"],"nintendods":["nintendo-ds"],"nintendodsi":["nintendo-ds","nintendo-dsi"],"nintendoentertainmentsystem":["famicom"],"nintendofamicom":["famicom"],"nintendofamicomdisksystem":["famicom-disk-system"],"nintendogameandwatch":["handheld-electronic"],"nintendogameboy":["game-boy"],"nintendogameboyadvance":["game-boy-advance"],"nintendogameboycolor":["game-boy-color"],"nintendogb":["game-boy"],"nintendogba":["game-boy-advance"],"nintendogbc":["game-boy-color"],"nintendogw":["handheld-electronic"],"nintendon64":["nintendo-64"],"nintendones":["famicom"],"nintendonintendo64":["nintendo-64"],"nintendonintendo64dd":["nintendo-64"],"nintendonintendodsi":["nintendo-ds"],"nintendonintendoentertainmentsystem":["famicom"],"nintendopokemini":["nintendo-pokemon-mini"],"nintendopokemonmini":["nintendo-pokemon-mini"],"nintendosfc":["nintendo-satellaview"],"nintendosnes":["nintendo-satellaview"],"nintendosnesmsu":["nintendo-satellaview"],"nintendosnesmsu1":["nintendo-satellaview"],"nintendosupernintendo":["nintendo-satellaview"],"nintendosupernintendoentertainmentsystem":["nintendo-satellaview"],"nintendovb":["nintendo-virtualboy"],"nintendovitrualboy":["nintendo-virtualboy"],"nomad":["sega-megadrive"],"nsnes":["nintendo-satellaview"],"nsv":["nintendo-satellaview"],"nvb":["nintendo-virtualboy"],"nxengine":["cave-story"],"o2":["philips-videopac"],"o2em":["odyssey2"],"odyssey":["odyssey2","philips-videopac"],"odyssey-2-slash-videopac-g7000":["odyssey2"],"odyssey2":["odyssey2"],"olivetti-pc128":["olivetti-pc128"],"onscripter":["onscripter"],"openbeatsofrage":["openbor"],"openbor":["openbor"],"opengoal":["opengoal"],"openjazz":["jazz-jackrabbit"],"openlara":["tomb-raider"],"oric":["oric"],"oricatmos":["oricatmos"],"originalgameboy":["game-boy"],"outlaws":["outlaws"],"outrun":["sega-outrun"],"p2000t":["philips-p2000t"],"p8":["pico8"],"palm":["palm-os"],"palm-os":["palm-os"],"palmos":["palm-os"],"panasonic":["panasonic-3do"],"panasonic-3do":["panasonic-3do"],"pbp":["sony-playstation"],"pbps":["sony-playstation"],"pc":["dos"],"pc engine":["nec-pc-engine"],"pc-8800":["nec-pc-88"],"pc-98":["pc-98"],"pc-9800":["pc-98"],"pc-9800-series":["pc-98"],"pc-fx":["nec-pcfx"],"pc60":["pc60"],"pc80":["pc80"],"pc8000":["nec-pc-88","pc80"],"pc88":["nec-pc-88"],"pc8801":["nec-pc-88"],"pc98":["pc-98"],"pce":["nec-pc-engine","nec-supergrafx"],"pcecd":["nec-pc-engine","nec-pc-engine-cd"],"pcengine":["nec-pc-engine"],"pcenginecd":["nec-pc-engine","nec-pc-engine-cd"],"pcfx":["nec-pcfx"],"pcninetyeight":["pc-98"],"pcsx":["sony-playstation"],"pcv2":["bandai-wswan","bandai-wswanc"],"pcw":["pcw"],"pdark":["pdark"],"pegasus":["pegasus"],"pet":["commodore-pet"],"pgm":["arcade","igs-pgm"],"philips-cd-i":["philips-cdi"],"philips-cdi":["philips-cdi"],"philips-p2000t":["philips-p2000t"],"philips-vg5k":["philips-vg5k"],"philips-videopac":["philips-videopac"],"philipscdi":["philips-cdi"],"pico":["pico8","sega-pico"],"pico-8":["pico8"],"pico-8 (p8)":["pico8"],"pico-8/carts":["pico8"],"pico8":["pico8"],"piece":["aquaplus-piece"],"pkm":["nintendo-pokemon-mini"],"playstation":["sony-playstation"],"playstationchds":["sony-playstation"],"playstationpbps":["sony-playstation"],"playstationportable":["sony-psp"],"plus4":["commodore-plus4"],"pocket-challenge-v2":["pocket-challenge-v2"],"pocketchallengev2":["pocket-challenge-v2"],"pocketstation":["sony-pocketstation"],"poke":["nintendo-pokemon-mini"],"pokemini":["nintendo-pokemon-mini"],"pokemon-mini":["nintendo-pokemon-mini"],"pokemonmini":["nintendo-pokemon-mini"],"pokémon mini (pkm)":["nintendo-pokemon-mini"],"ports":["wolfenstein3d"],"ports/caesar3":["caesar3"],"ports/cave story":["cave-story"],"ports/dinothawr":["dinothawr"],"ports/doom":["chex","doom","heretic","hexen","strife"],"ports/doom 3":["doom3"],"ports/ecwolf/games":["wolfenstein3d"],"ports/flashback":["flashback"],"ports/out run":["sega-outrun"],"ports/prince of persia":["prince-of-persia"],"ports/quake":["quake"],"ports/quake 2":["quake2"],"ports/quake 3":["quake3"],"ports/rick dangerous":["xrick"],"ports/star trek voyager":["quake3"],"ports/tamagotchi":["tamagotchi-p1"],"ports/theme hospital":["theme-hospital"],"ports/tomb raider":["tomb-raider"],"ports/vvvvvv":["vvvvvv"],"ports/wolfenstein 3d":["wolfenstein3d"],"powerslave":["powerslave"],"ppsspp":["sony-psp"],"prboom":["doom","heretic"],"primehack":["nintendo-gamecube","nintendo-wii"],"prince-of-persia":["prince-of-persia"],"ps":["sony-playstation"],"ps1":["sony-playstation"],"ps2":["sony-playstation-2"],"ps3":["sony-playstation-3"],"ps4":["ps4"],"ps4/shortcuts":["ps4"],"pschd":["sony-playstation"],"pschds":["sony-playstation"],"psiso":["sony-playstation"],"psisos":["sony-playstation"],"psone":["sony-playstation"],"psp":["sony-psp"],"pspbp":["sony-playstation"],"pspbps":["sony-playstation"],"pspminis":["sony-psp"],"psvita":["sony-playstation-vita"],"psx":["sony-playstation"],"psxchd":["sony-playstation"],"psxchds":["sony-playstation"],"psxiso":["sony-playstation"],"psxisos":["sony-playstation"],"psxpbp":["sony-playstation"],"psxpbps":["sony-playstation"],"puae":["commodore-amiga","commodore-amiga-cd32","commodore-cdtv"],"pv1000":["casio-pv1000"],"pv2000":["casio-pv2000"],"ql":["sinclair-ql"],"quake":["quake"],"quake (quake)":["quake"],"quake2":["quake2"],"quake3":["quake3"],"raze":["blood","duke3d","exhumed","nam","powerslave","redneck","shadow-warrior","ww2gi"],"redneck":["redneck"],"redream":["sega-dreamcast"],"reminiscence":["flashback"],"retcom":["galaksija"],"retro8":["pico8"],"return-to-castle-wolfenstein":["return-to-castle-wolfenstein"],"ricochet":["ricochet"],"rott":["rott"],"rpgmaker":["rpgmaker"],"rtcw":["return-to-castle-wolfenstein","rott"],"rx78":["bandai-rx78"],"s32x":["sega-32x"],"sam-coupe":["sam-coupe"],"samcoupe":["sam-coupe"],"sameduck":["mega-duck"],"sammy-atomiswave":["sammy-atomiswave"],"sat":["sega-saturn"],"satella":["nintendo-satellaview"],"satellaview":["nintendo-satellaview"],"satourne":["sega-saturn"],"saturn":["sega-saturn"],"saturnjp":["sega-saturn"],"sc-3000":["sega-sc3000"],"sc3000":["sega-sc3000"],"scd":["sega-megacd"],"scumm":["scummvm"],"scummvm":["scummvm"],"scummvm/shortcuts":["scummvm"],"scv":["scv"],"sdc":["sega-dreamcast"],"sdlpop":["prince-of-persia"],"sega 32x (32x)":["sega-32x"],"sega cd (segacd)":["sega-megacd"],"sega dreamcast":["sega-dreamcast"],"sega game gear (gg)":["sega-gamegear"],"sega genesis (md)":["sega-megadrive"],"sega master system (sms)":["sms"],"sega sg-1000 (sg1000)":["sega-sg1000"],"sega-32x":["sega-32x"],"sega-ai":["sega-ai"],"sega-beena":["sega-beena"],"sega-chihiro":["sega-chihiro"],"sega-dreamcast":["sega-dreamcast"],"sega-dreamcast-arcade":["sega-dreamcast-arcade"],"sega-game-box-9":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-gamegear":["sega-gamegear"],"sega-genesis":["sega-genesis"],"sega-hikaru":["sega-hikaru"],"sega-lindbergh":["sega-lindbergh"],"sega-mark-iii":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-master-system-ii":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-mastersystem":["sega-mastersystem"],"sega-mega-drive-2-slash-genesis":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-mega-jet":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-megacd":["sega-megacd"],"sega-megadrive":["sega-megadrive"],"sega-model2":["sega-model2"],"sega-model3":["sega-model3"],"sega-naomi":["sega-naomi"],"sega-naomi2":["sega-naomi2"],"sega-naomigd":["sega-naomigd"],"sega-nomad":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"sega-outrun":["sega-outrun"],"sega-pico":["sega-pico"],"sega-saturn":["sega-saturn"],"sega-sc3000":["sega-sc3000"],"sega-sf7000":["sega-sf7000"],"sega-sg1000":["sega-sg1000"],"sega-stv":["sega-stv"],"sega-systemsp":["sega-systemsp"],"sega-triforce":["sega-triforce"],"sega-vmu":["sega-vmu"],"sega32":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sc3000","sega-sg1000"],"sega32x":["sega-32x"],"sega32xjp":["sega-32x"],"sega32xna":["sega-32x"],"segaai":["sega-ai"],"segaatomiswave":["sammy-atomiswave"],"segacd":["sega-megacd"],"segadc":["sega-dreamcast"],"segadreamcast":["sega-dreamcast"],"segagamegear":["sega-gamegear"],"segagenesis":["sega-megadrive"],"segagenesismsu":["sega-megadrive"],"segagg":["sega-gamegear"],"segamastersystem":["sega-mastersystem"],"segamcd":["sega-megacd"],"segamdmsu":["sega-megadrive"],"segamegacd":["sega-megacd"],"segamegadrive":["sega-megadrive"],"segamodel3":["sega-model3"],"segams":["sega-mastersystem"],"seganaomi":["sammy-atomiswave"],"segapico":["sega-32x","sega-gamegear","sega-genesis","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sc3000","sega-sg1000"],"segasat":["sega-saturn"],"segasaturn":["sega-saturn"],"segascd":["sega-megacd"],"segasegacd":["sega-megacd"],"segasg1000":["sega-sg1000"],"segasgone":["sega-sg1000"],"segasms":["sega-mastersystem"],"segastv":["sega-stv"],"seggg":["sega-gamegear"],"segms":["sega-mastersystem"],"seventyeighthundred":["atari-7800"],"sfam":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"sfc":["nintendo-satellaview","nintendo-snes"],"sg-1000":["sega-sg1000"],"sg1000":["sega-sg1000"],"sg1k":["sega-sg1000"],"sgb":["nintendo-gb","nintendo-sgb"],"sgb-msu1":["nintendo-sgb"],"sgfx":["nec-pc-engine","nec-supergrafx"],"sgg":["sega-gamegear"],"sgonethousand":["sega-sg1000"],"sgx":["nec-pc-engine","nec-supergrafx"],"sgxcd":["nec-pc-engine"],"shadow-warrior":["shadow-warrior"],"sharp-x1":["sharp-x1"],"sharp-x68000":["sharp-x68000"],"sharpx1":["sharp-x1"],"sharpx6800":["sharp-x68000"],"sharpx68000":["sharp-x68000"],"sharpx68k":["sharp-x68000"],"sinclair-ql":["sinclair-ql"],"sinclair-spectrum":["sinclair-spectrum"],"sinclair-zx-spectrum":["sinclair-zx-spectrum"],"sinclair-zx-spectrum-next":["sinclair-zx-spectrum-next"],"sinclair-zx81":["sinclair-zx81"],"sinclairzx81":["sinclair-zx81"],"singe":["arcade-laserdisc"],"smbx":["smbx"],"sms":["sega-mastersystem","sms"],"smsgg":["sega-mastersystem"],"snes":["nintendo-satellaview","nintendo-snes"],"snes-hacks":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"snes-msu1":["nintendo-snes"],"snes9x":["nintendo-satellaview"],"snesh":["nintendo-snes"],"sneshacks":["nintendo-satellaview"],"snesmsu":["nintendo-satellaview"],"snesmsu1":["nintendo-satellaview","nintendo-snes"],"snesna":["nintendo-snes"],"sng":["neogeo"],"snk-neogeo-aes":["snk-neogeo-aes"],"snk-neogeo-cd":["snk-neogeo-cd"],"snk-neogeo-mvs":["snk-neogeo-mvs"],"snk-neogeo-pocket":["snk-neogeo-pocket"],"snk-ngp":["snk-ngp"],"snk-ngpc":["snk-ngpc"],"snkneogeo":["neogeo"],"snkneogeocd":["snk-neogeo-cd"],"snkneogeopocket":["snk-neogeo-pocket"],"snkneogeopocketcolor":["snk-neogeo-pocket"],"snkngcd":["snk-neogeo-cd"],"snkngp":["snk-neogeo-pocket"],"snkngpc":["snk-neogeo-pocket"],"socrates":["vtech-socrates"],"soh":["soh"],"solarus":["solarus"],"sonic-1-2013":["sonic-1-2013"],"sonic-2-2013":["sonic-2-2013"],"sonic-mania":["sonic-mania"],"sonic3-air":["sonic3-air"],"sonicretro":["sonic-1-2013","sonic-2-2013"],"sony playstation (ps)":["sony-playstation"],"sony-playstation":["sony-playstation"],"sony-playstation-2":["sony-playstation-2"],"sony-playstation-3":["sony-playstation-3"],"sony-playstation-vita":["sony-playstation-vita"],"sony-pocketstation":["sony-pocketstation"],"sony-psp":["sony-psp"],"sonyplaystation":["sony-playstation"],"sonyplaystationportable":["sony-psp"],"sonyps":["sony-playstation"],"sonyps1":["sony-playstation"],"sonypsp":["sony-psp"],"sonypsx":["sony-playstation"],"spec":["sinclair-zx-spectrum"],"spectravideo":["spectravideo"],"spectrum":["sinclair-spectrum","sinclair-zx-spectrum"],"spmp8000":["sunplus-spmp8000"],"ss":["sega-saturn"],"st":["atari-st"],"st-v":["sega-stv"],"star-control-2":["star-control-2"],"starship":["starship"],"ste":["atari-st"],"story":["onscripter"],"strife":["strife"],"studio-ii":["studio-ii"],"stv":["sega-stv"],"sufami":["nintendo-satellaview","nintendo-sufami-turbo"],"sufami-turbo":["nintendo-sufami-turbo"],"sufamiturbo":["nintendo-sufami-turbo"],"sunplus-native32":["sunplus-native32"],"sunplus-spmp8000":["sunplus-spmp8000"],"supa":["nintendo-snes"],"super game boy (sgb)":["nintendo-sgb"],"super nintendo entertainment system (sfc)":["nintendo-snes"],"super nintendo entertainment system (supa)":["nintendo-snes"],"super-famicom-jr-model-shvc-101":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"super-famicom-shvc-001":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"super-gb":["nintendo-sgb"],"super-mario-war":["super-mario-war"],"super-nintendo-original-european-version":["nintendo-satellaview","nintendo-snes","nintendo-sufami-turbo"],"superacan":["superacan"],"superbroswar":["super-mario-war"],"supercassettevision":["scv"],"superchip":["chip8"],"superfamicom":["nintendo-satellaview","nintendo-snes"],"supergameboy":["nintendo-sgb"],"supergrafx":["nec-supergrafx"],"supermariowar":["super-mario-war"],"supernes":["nintendo-satellaview","nintendo-snes"],"supernintendo":["nintendo-satellaview"],"supernintendoentertainmentsystem":["nintendo-satellaview"],"superpretendo":["nintendo-satellaview"],"supervision":["watara-supervision"],"supracan":["supracan"],"svi":["colecovision","msx","msx2","msx2plus","msxturbor","sega-sc3000","sega-sf7000","sega-sg1000","spectravideo"],"svicoleco":["colecovision","msx","msx2","msx2plus","msxturbor","sega-sc3000","sega-sf7000","sega-sg1000","spectravideo"],"svicolecovision":["colecovision","msx","msx2","msx2plus","msxturbor","sega-sc3000","sega-sf7000","sega-sg1000","spectravideo"],"swancrystal":["bandai-wswan","bandai-wswanc"],"switch":["nintendo-switch"],"symbian":["symbian"],"systemsp":["sega-systemsp"],"t80":["tic80"],"taito-fx1":["taito-fx1"],"tamagotchi-p1":["tamagotchi-p1"],"tandy-1000":["tandy-1000"],"tandy-vis":["tandy-vis"],"tandy1000":["tandy-1000"],"tanodragon":["dragon64"],"tecmo-tps":["tecmo-tps"],"teknoparrot":["namco-system246","namco-system256","namco-system357","sammy-atomiswave","sega-chihiro","sega-hikaru","sega-lindbergh","sega-naomi","sega-naomi2","sega-naomigd","sega-triforce"],"tera-drive":["sega-gamegear","sega-mastersystem","sega-megacd","sega-megadrive","sega-pico","sega-sg1000"],"texas-instruments-ti-83":["texas-instruments-ti-83"],"texasinstrumentsti83":["texas-instruments-ti-83"],"tfc":["tfc"],"tg":["nec-pc-engine"],"tg-cd":["nec-pc-engine-cd"],"tg16":["nec-pc-engine"],"tg16cd":["nec-pc-engine-cd"],"tgb_dual":["nintendo-gb"],"tgcd":["nec-pc-engine-cd"],"tgfx":["nec-pc-engine"],"tgfx16-cd":["nec-pc-engine-cd"],"tgrafx":["nec-pc-engine"],"tgrafx16":["nec-pc-engine"],"theforceengine":["dark-forces","outlaws"],"theme-hospital":["theme-hospital"],"theodore":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"thextech":["smbx"],"thirtytwox":["sega-32x"],"thomson":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"thomson-mo5":["thomson-mo5"],"thomson-mo6":["thomson-mo6"],"thomson-to7":["thomson-to7"],"thomson-to770":["thomson-to770"],"thomson-to8":["thomson-to8"],"thomson-to8d":["thomson-to8d"],"thomson-to9":["thomson-to9"],"thomson-to9plus":["thomson-to9plus"],"thomsonmoto":["olivetti-pc128","thomson-mo5","thomson-mo6","thomson-to7","thomson-to770","thomson-to8","thomson-to8d","thomson-to9","thomson-to9plus"],"ti-99_4a":["ti99"],"ti83":["texas-instruments-ti-83"],"ti99":["ti99"],"ti994a":["ti99"],"tic":["tic80"],"tic-80":["tic80"],"tic80":["tic80"],"tiger-game-com":["tiger-game-com"],"to8":["thomson-to8"],"tomb-raider":["tomb-raider"],"tomb-raider-1":["tomb-raider-1"],"tomb-raider-2":["tomb-raider-2"],"tombraider":["tomb-raider"],"traider1":["tomb-raider-1"],"traider2":["tomb-raider-2"],"triforce":["sega-triforce"],"trs-80":["trs80"],"trs80":["trs80"],"trs80coco":["coco"],"tt":["atari-st"],"turbocd":["nec-pc-engine-cd"],"turbografx":["nec-pc-engine"],"turbografx-16 (pce)":["nec-pc-engine"],"turbografx-cd":["nec-pc-engine"],"turbografx16":["nec-pc-engine"],"turbografxcd":["nec-pc-engine-cd"],"turbographix":["nec-pc-engine"],"tutor":["tutor"],"tvc":["videoton-tvc"],"tvgames":["tvgames"],"tvgc":["elektor-tv-games-computer","emerson-arcadia-2001","interton-vc4000"],"twentysixhundred":["atari-2600"],"tyrian":["tyrian"],"tyrquake":["quake"],"uqm":["star-control-2","ur-quan-masters"],"ur-quan-masters":["ur-quan-masters"],"uzebox":["uzebox"],"varcade":["arcade"],"vb":["nintendo-virtualboy"],"vc4000":["interton-vc4000"],"vec":["vectrex"],"vecrtex":["vectrex"],"vectrex":["vectrex"],"vemulator":["sega-vmu"],"vertarcade":["arcade"],"vertical":["arcade"],"verticalarcade":["arcade"],"vg5000":["philips-vg5k"],"vg5k":["philips-vg5k"],"vgmplay":["vgmplay"],"vic":["commodore-vic20"],"vic-20":["commodore-vic20"],"vic20":["commodore-vic20"],"videobrain":["videobrain"],"videopac":["odyssey2","philips-videopac"],"videopac-g7400":["philips-videopac"],"videopacplus":["philips-videopac"],"videosystem-zn1":["videosystem-zn1"],"videoton-tvc":["videoton-tvc"],"vircon32":["vircon32"],"virtboy":["nintendo-virtualboy"],"virtuaboy":["nintendo-virtualboy"],"virtual boy (vb)":["nintendo-virtualboy"],"virtualboy":["nintendo-virtualboy"],"vis":["tandy-vis"],"visualstory":["onscripter"],"vmac":["apple-macintosh"],"vmu":["sega-vmu"],"vpinball":["vpinball"],"vsmile":["vtech-vsmile"],"vtech-socrates":["vtech-socrates"],"vtech-vsmile":["vtech-vsmile"],"vvvvvv":["vvvvvv"],"watara":["watara-supervision"],"watara-supervision":["watara-supervision"],"watarasupervision":["watara-supervision"],"wii":["nintendo-wii"],"wiiu":["nintendo-wiiu"],"wiiu/roms":["nintendo-wiiu"],"wiiware":["nintendo-wii"],"windows3x":["dos","ibm-pc","ibm-pcjr","pc-98","tandy-1000"],"windows9x":["dos","ibm-pc","ibm-pcjr","pc-98","tandy-1000"],"wolf":["wolfenstein3d"],"wolf3d":["wolfenstein3d"],"wolfenstein":["wolfenstein3d"],"wolfenstein3d":["wolfenstein3d"],"wonderswan":["bandai-wswan","wonderswan","wonderswan-color"],"wonderswan-color":["wonderswan-color"],"wonderswanc":["wonderswan-color"],"wonderswancolor":["wonderswan","wonderswan-color"],"ws":["bandai-wswan","bandai-wswanc","wonderswan","wonderswan-color"],"wsc":["wonderswan","wonderswan-color"],"wswan":["bandai-wswan"],"wswanc":["bandai-wswanc"],"ww2gi":["ww2gi"],"x1":["sharp-x1"],"x16":["commanderx16"],"x68000":["sharp-x68000"],"x68k":["sharp-x68000"],"xash3d_fwgs":["bshift","cstrike","czero","czeror","dmc","gearbox","half-life","ricochet","tfc"],"xbox":["microsoft-xbox"],"xbox360":["microsoft-xbox-360"],"xbox360/roms":["microsoft-xbox-360"],"xegs":["xegs"],"xone":["sharp-x1"],"xrick":["xrick"],"xroar":["coco"],"zc210":["zc210"],"zeldac":["zeldaclassic"],"zeldaclassic":["zeldaclassic"],"zinc":["acclaim-zn1","atari-zn1","atlus-zn1","capcom-zn1","capcom-zn2","eighting-zn1","konami-gq","konami-gv","namco-system11","taito-fx1","tecmo-tps","videosystem-zn1"],"zmachine":["zmachine"],"zsnes":["nintendo-satellaview"],"zx spectrum (zxs)":["sinclair-zx-spectrum"],"zx81":["sinclair-zx81"],"zxeightyone":["sinclair-zx81"],"zxnext":["sinclair-zx-spectrum-next"],"zxs":["sinclair-zx-spectrum"],"zxspectrum":["sinclair-zx-spectrum"]},"format_version":1,"licences":[{"mirror":{"licence":"MIT","repo":"https://github.com/hugo19941994/auto-datfile-generator","scope":"the mirror's scripts only, the DATs it republishes stay under the terms above"},"quote":"Unless otherwise stated on the website, the data made available through this website (\"Data\") may be freely used, copied, reproduced, modified, adapted, combined, published, distributed, and otherwise reused by anyone for any lawful purpose, to the extent that the website operator owns or controls the applicable rights or is authorized to grant such permission. No permission, attribution, citation, backlink, or acknowledgment of the website or its operators is required for such use.","read":"2026-11-03","terms_title":"Data Usage License","terms_updated":"2026-09-11","terms_url":"https://datomatic.no-intro.org/terms.html"},{"quote":"Dumpers only submit metadata and Redump only stores metadata. This information is considered public domain to be used however people see fit","read":"2026-11-03","terms_url":"https://redump.info/about"}],"setups":{"allium":{"file":"setups/allium.json","gzip_size":5091,"sha256":"7e1b5914e15cc2ff710052fc7385fb9457ca955f5a633313d4ce4e8496b32033","size":35139},"amberelec":{"file":"setups/amberelec.json","gzip_size":5613,"sha256":"7c25ef2b727003a6ff285cb255286264acdc726fefbcea43f6f254ed708250be","size":38051},"archr":{"file":"setups/archr.json","gzip_size":7548,"sha256":"b5fe00e263b6df7c536260bbd8b7c41fe3e031a812f40644c8dacc93e049a88f","size":57318},"arkos":{"file":"setups/arkos.json","gzip_size":6069,"sha256":"0f4cf86ae6afb1ecb1c5019f8ac7c598044118b902f11aa9d8823e90ac2ca82d","size":39966},"batocera":{"file":"setups/batocera.json","gzip_size":14457,"sha256":"af163f68ee5069620ebf6b0fcb98ebd7ee721203c0dbf21d55244a024649d5fc","size":134476},"bizhawk":{"file":"setups/bizhawk.json","gzip_size":2469,"sha256":"1bd6306d2f485700b531d3d3ac502cbf36aaa9cfeb954f751ea3bb862aeb7aa9","size":16059},"chaos":{"file":"setups/chaos.json","gzip_size":5625,"sha256":"3a56b30c0992cd78eef8e097e9b1ef8aa479a664ea550d32d7777e18cbed0bb6","size":38023},"crossmix-os":{"file":"setups/crossmix-os.json","gzip_size":4628,"sha256":"8361175b1aebab116d878cc9117f531678969758c13a83b8ece2289c5eca9f46","size":30935},"darkos":{"file":"setups/darkos.json","gzip_size":5877,"sha256":"cc13afb7b04ac99eca20df747da975f55fb0757df63ef70b7923087f75f5a9df","size":37501},"emudeck":{"file":"setups/emudeck.json","gzip_size":8178,"sha256":"0a0d0b8a9c0fa9e6251dc28f88040ed6bc931a0f763ba1df0c07c72791995838","size":59403},"emudeck-windows":{"file":"setups/emudeck-windows.json","gzip_size":8145,"sha256":"e3b15545aafdc94411ba5cea61b6de9d9ce75889dff7ee6fefe3e63d4966fc17","size":60030},"emuelec":{"file":"setups/emuelec.json","gzip_size":7916,"sha256":"3117d2dd0ffb721e11f1e70385ed599f36d54c2d19db1dc598be52b5f8b73445","size":55398},"jelos":{"file":"setups/jelos.json","gzip_size":6646,"sha256":"52d5260b6ef397e1e41f957dc51808d8943848950322107336e886ae963bc2fd","size":47161},"knulli":{"file":"setups/knulli.json","gzip_size":11986,"sha256":"73cda1ec1afde3494896c2d82ae185eb0013721b817cf46293be84a7967900af","size":97205},"kolos":{"file":"setups/kolos.json","gzip_size":6170,"sha256":"1ab8b0c0a57bf6bb16f781bd1b97fe28e3c0d961a575af86546a482e5de4d150","size":43277},"koriki":{"file":"setups/koriki.json","gzip_size":4029,"sha256":"d2f15741cd1b16ac6f1f51dc1afa09a1831e6502b5d2ead7ee507a051ba414f1","size":22608},"lakka":{"file":"setups/lakka.json","gzip_size":517,"sha256":"3adec2a8c4f9a992e271382650338d00310db3de3bffd5448109c635ec03e2fd","size":1037},"minui":{"file":"setups/minui.json","gzip_size":2055,"sha256":"0a38d3d3b6d0fc16ed59a9fa420aba91a3402dc4ae584b349dc19076ad4818cc","size":10242},"misterfpga":{"file":"setups/misterfpga.json","gzip_size":3578,"sha256":"5c6e306970b67c12e6cc25c82328691fd13ad0c554ce1309efd1f0278158ad07","size":23518},"miyoocfw":{"file":"setups/miyoocfw.json","gzip_size":959,"sha256":"cb13cdcae35830c58d6465ff2f6e36c2d0558c576fd8eb8fd053537fb007573b","size":2285},"muos":{"file":"setups/muos.json","gzip_size":7386,"sha256":"3beffb9369d734978047ec64a440202704d9682bfe25c9c05e159c3b4618ed87","size":46601},"myminui":{"file":"setups/myminui.json","gzip_size":2797,"sha256":"8cac64f671ed745b8cd713be9e88b9f83e8e83061c32ff62fca646c91ea986ea","size":14717},"nextui":{"file":"setups/nextui.json","gzip_size":2950,"sha256":"e9eb9a3d06cc796bf54b185691144c828a2c7dc767a9b83c25fb310ca3b64d1d","size":15309},"onion":{"file":"setups/onion.json","gzip_size":6337,"sha256":"35cad2ef2a7162b93035cbeafd2ac881ba17a777ae11d05e16c4c4fb071071e8","size":34615},"pan4elec":{"file":"setups/pan4elec.json","gzip_size":5717,"sha256":"2534db783b7eb7037c4457fc9ae540d885aa6fdd3a59411df7856aeb64ef68b9","size":39455},"plumos-mf":{"file":"setups/plumos-mf.json","gzip_size":6141,"sha256":"5c2ae5292af66a32a16ad6c70ead6cbabef934c5e3e5261d6d92e9942bfd403b","size":33703},"plumos-pixel2":{"file":"setups/plumos-pixel2.json","gzip_size":6180,"sha256":"4c674898610e234f9a6711db34f9cebec91eaeb76d160e13a62eabd13a702720","size":31896},"recalbox":{"file":"setups/recalbox.json","gzip_size":9153,"sha256":"965c44508d9fe798954cdf392db0726e8b3be5796b0b5dea6b3a92aaba12bb47","size":69567},"retroarch":{"file":"setups/retroarch.json","gzip_size":476,"sha256":"025188a526422c7d79c996edc19c486c9b4f322798325a18405733066483b3d6","size":786},"retrobat":{"file":"setups/retrobat.json","gzip_size":10307,"sha256":"39e0945e6d33c1312f73b3b3ff26ee9a81d70d5061cd78a415ca87c0d68ad1b6","size":70854},"retrodeck":{"file":"setups/retrodeck.json","gzip_size":7183,"sha256":"f29336cedac2da9e8b1ccb89d9b608a9a8f147564ed6abafdaa8e0b4c922fbae","size":53597},"retropie":{"file":"setups/retropie.json","gzip_size":4670,"sha256":"f80f62e4d96cf62937da5f3e434fa6754bbf9eb17738b0d24062be7de9e5c4a2","size":24007},"rocknix":{"file":"setups/rocknix.json","gzip_size":7590,"sha256":"ff85bfdbdbc852265f5a7d71327e4df6512c53515a70add8d124f4ac3281689e","size":58836},"romm":{"file":"setups/romm.json","gzip_size":3790,"sha256":"73d2f0f4d95e9146ac9f850bf41e3a85bb133e543749dcecb785e80c67648946","size":30844},"spruceos":{"file":"setups/spruceos.json","gzip_size":6419,"sha256":"ccbe920491891b66c1db61e4c09abae154d367421856a8817d4c7e22111000c2","size":28367},"unofficialos":{"file":"setups/unofficialos.json","gzip_size":7152,"sha256":"bec913e663e25217e0a84db7bb0042a6f0b38d7d2a34d52e5de0c7a3fc5de4a6","size":51670}},"systems":{"atari-5200":{"file":"systems/atari-5200.json","gzip_size":4092,"sha256":"55bf18d45a6a7d75cda37ac27088b2510c4a27894157bca7f15452d67b5b76af","size":12435},"atari-7800":{"file":"systems/atari-7800.json","gzip_size":887,"sha256":"2ff726865df34502c72be99d18948dedd0782f19a38a215297c89c813d648481","size":1668},"atari-jaguar":{"file":"systems/atari-jaguar.json","gzip_size":292,"sha256":"a0215745664dcfdbe9f454e226561e61fdb8f60c0d72ba877b52e8f1b7929934","size":413},"atari-lynx":{"file":"systems/atari-lynx.json","gzip_size":1678,"sha256":"ab7cc8614064981951ddcca1c4a9d263b49b04fc0a89f2a984de08c20392a3d0","size":3634},"colecovision":{"file":"systems/colecovision.json","gzip_size":4412,"sha256":"9eb8ecd30e9877d6a36551ef03eb70b4151152023d0133a3b05109022d56151c","size":11293},"commodore-amiga":{"file":"systems/commodore-amiga.json","gzip_size":290,"sha256":"9988cce7dd6403204ab580edbc9522e5a9080c790bf04a98e6c3d435bbee42e3","size":788},"commodore-amiga-cd32":{"file":"systems/commodore-amiga-cd32.json","gzip_size":265,"sha256":"2c4d3823a40cdd4197209b2abaf38db755218130812f92c03ddad2ee0fd4a46d","size":456},"intellivision":{"file":"systems/intellivision.json","gzip_size":4507,"sha256":"748c7d7887370f16d5992fa7e53381108a24366584239543ccadf4347ccc8f01","size":12528},"laseractive":{"file":"systems/laseractive.json","gzip_size":363,"sha256":"d96ade3209fda8314cf9010a5ced458ad95037867fa204c8e457b05c46f5d80d","size":723},"msx":{"file":"systems/msx.json","gzip_size":214,"sha256":"e73b146104ffeb5ececb7173a5a3ce3903d0d0de1fde5e301658252c5675359b","size":285},"msx2plus":{"file":"systems/msx2plus.json","gzip_size":331,"sha256":"21b724cfbe529d2d992a7a633c570674c70753a42153befabe8c86c689b66c49","size":462},"nec-pc-engine":{"file":"systems/nec-pc-engine.json","gzip_size":9241,"sha256":"1fe6db213678d40878dfa6c411d1031319ef9f0d605b5653d1b4aa01e8a04452","size":27628},"nec-pc-engine-cd":{"file":"systems/nec-pc-engine-cd.json","gzip_size":12487,"sha256":"754e02b8e7e99135454008a89e883c9d6829a1f62cbc759abba2e5991866f9e9","size":43447},"nec-supergrafx":{"file":"systems/nec-supergrafx.json","gzip_size":831,"sha256":"111bd2ee40d75db1d140f263313bb6c97e31965883dbdf16906893e043f8d52d","size":1441},"neo-geo-pocket-color":{"file":"systems/neo-geo-pocket-color.json","gzip_size":3371,"sha256":"484bdf90a16917d464f28e8de1bbdce8d369c274d20d3d8c55ba0911a7a5e9ba","size":10072},"nintendo-3ds":{"file":"systems/nintendo-3ds.json","gzip_size":485,"sha256":"5e903462cea76f28681397aee0e6e3f119cd206ea60dd18ae734cbc5c5779cf7","size":808},"nintendo-64":{"file":"systems/nintendo-64.json","gzip_size":21504,"sha256":"24acf25d8c43e5227dc674057b41deffcc5c6db39f0f09e4ab258334749acd28","size":73974},"nintendo-64dd":{"file":"systems/nintendo-64dd.json","gzip_size":2541,"sha256":"82a62ff230513d4b3b7ec6bcb1ac8efe4101ff4e301dfea4300e13dea12cbc4a","size":7705},"nintendo-ds":{"file":"systems/nintendo-ds.json","gzip_size":186345,"sha256":"9f74ade6f2fff15b51c410ce83aafccdb3cb0c1701c9cd42a593ca84d1ab4c33","size":566900},"nintendo-dsi":{"file":"systems/nintendo-dsi.json","gzip_size":240,"sha256":"a470b580ca27fdf66bcf1213d3f7d3ab3acbf2a6272dd445a9ade5fc4cd4b569","size":345},"nintendo-fds":{"file":"systems/nintendo-fds.json","gzip_size":9025,"sha256":"59f40fb23866487b95f2a0b709b216c6c66de694f4528b0c4b53aae3fc1f4e7d","size":30626},"nintendo-gamecube":{"file":"systems/nintendo-gamecube.json","gzip_size":46580,"sha256":"afd0881edb18be56407268b9c2c6a6437e2670baa76203e4e03da33fac8ed4ee","size":189501},"nintendo-gb":{"file":"systems/nintendo-gb.json","gzip_size":39786,"sha256":"8cfeadc99c49af41435728dc1e5343ca14d632bcc4681e87f286ca41e3281868","size":127687},"nintendo-gba":{"file":"systems/nintendo-gba.json","gzip_size":76891,"sha256":"c254fa7973aa84f1b9e49f256437a03360d06ecf3b80838cae36bc5bbd84b80f","size":248499},"nintendo-gbc":{"file":"systems/nintendo-gbc.json","gzip_size":44917,"sha256":"3c281676ea9778761b00d454661d9fa7c5dfb70cbe435c1bb30158ef766d418f","size":154739},"nintendo-nes":{"file":"systems/nintendo-nes.json","gzip_size":89663,"sha256":"6e0e1d1f2681c10998518abe4b46cd2ea4a9f993316432876f19f8a52167e332","size":274177},"nintendo-pokemon-mini":{"file":"systems/nintendo-pokemon-mini.json","gzip_size":1537,"sha256":"083eed4eccdfcb12daab714d7cf3a595cbe7554010a7c79171916bc97b4611dc","size":4199},"nintendo-satellaview":{"file":"systems/nintendo-satellaview.json","gzip_size":13245,"sha256":"fc91880841ba301ff3fc2e7edfe53eed876edb33f9d7534d814d39dacd0a1654","size":51819},"nintendo-sgb":{"file":"systems/nintendo-sgb.json","gzip_size":746,"sha256":"617365112f8b93207b50323f761c4073d1c5aee87d877675822fb34247bab373","size":1621},"nintendo-snes":{"file":"systems/nintendo-snes.json","gzip_size":79838,"sha256":"5a1ffe5d5c958424793b77ce016c65205967f1d8ff910ffc6e8118f00b584001","size":249778},"nintendo-sufami-turbo":{"file":"systems/nintendo-sufami-turbo.json","gzip_size":1512,"sha256":"8070d9473708fee7ada3481daecd09e5389573652f1986e4a00275821337ac09","size":3210},"nintendo-wii":{"file":"systems/nintendo-wii.json","gzip_size":563,"sha256":"bff9fd15aa2896dbe9b5f60e713b04dd2d40dcfbee5dc8699a7ccec14536a466","size":1229},"odyssey2":{"file":"systems/odyssey2.json","gzip_size":3297,"sha256":"978953171a55509460854a4747ffbb94d9a0f16f0b2304abfe1aedbc3392582d","size":7851},"panasonic-3do":{"file":"systems/panasonic-3do.json","gzip_size":17243,"sha256":"38035ce01095a974ae7d0e1818f0d0c65f54cd89d326fa315893ef1062de9c0d","size":50013},"sega-32x":{"file":"systems/sega-32x.json","gzip_size":3894,"sha256":"6b0da0c37349c2340197d7a178f5862d942c43819f494ab2552e00e6dc83d360","size":16064},"sega-dreamcast":{"file":"systems/sega-dreamcast.json","gzip_size":36655,"sha256":"0041c8525fa27290841faa607ac8047e016f98896c5ff33b502495e8b37e14ed","size":122845},"sega-gamegear":{"file":"systems/sega-gamegear.json","gzip_size":14821,"sha256":"12ddb73bef81410d643f6b09ac0da2e49adb3dca8943f273f776d9c5c67583a2","size":54189},"sega-mastersystem":{"file":"systems/sega-mastersystem.json","gzip_size":14536,"sha256":"5669393a76b922ed2e14995c66c2804ccc7a1165a2416e50722c954aba560360","size":47411},"sega-megacd":{"file":"systems/sega-megacd.json","gzip_size":15396,"sha256":"ce94f85bf4ff3c8d4e58357c68cdb39a2b12d4b8052e61e77fd3189d2a3052c9","size":46794},"sega-megadrive":{"file":"systems/sega-megadrive.json","gzip_size":53279,"sha256":"10507cfccd4ec9fc2c63e71bbc83fda1001e565819665bb0b65d09f4506054bb","size":180871},"sega-naomi":{"file":"systems/sega-naomi.json","gzip_size":276,"sha256":"7da5520e2aa6c2f0e1e4e8f5417be5776d196960e793f740c3dd05ff37ab88e9","size":486},"sega-saturn":{"file":"systems/sega-saturn.json","gzip_size":66052,"sha256":"d3a87b71ce4771f0c4a93fa2d0621f100da77005b37e75faa541aec873a0f319","size":199102},"sega-stv":{"file":"systems/sega-stv.json","gzip_size":782,"sha256":"eb73b6449be6a70bf942f39c49322c03770ddd3bbb6a40f1add7f0ab90bd0841","size":2424},"sega-triforce":{"file":"systems/sega-triforce.json","gzip_size":286,"sha256":"7c68241a76bef2b4ff0cba2ea2f312250abc8585fcc52b41ced2bcbc76175726","size":539},"snk-neogeo-cd":{"file":"systems/snk-neogeo-cd.json","gzip_size":4649,"sha256":"ccc757ea85e9398347cc4ff1db29118a1923422aed21a7437d7c54806330fa8e","size":12370},"snk-neogeo-pocket":{"file":"systems/snk-neogeo-pocket.json","gzip_size":1070,"sha256":"c88819387ac6a344a017198e7bc2560fe306ba9f80350483dab29dd48a03342b","size":2179},"sony-playstation":{"file":"systems/sony-playstation.json","gzip_size":323936,"sha256":"e27d244a888c5246e00166eba8a893032cf96a85dff08905c77d696d997bd861","size":939819},"sony-playstation-2":{"file":"systems/sony-playstation-2.json","gzip_size":361140,"sha256":"410adb750ffbce2e2389facace712c1ad784cfa128da2763b5821ba5cc0ffac7","size":1075273},"vectrex":{"file":"systems/vectrex.json","gzip_size":1615,"sha256":"908725537d457bd597c180c61705f494209c412d728951944d86e504f40387ad","size":3457},"wonderswan":{"file":"systems/wonderswan.json","gzip_size":5961,"sha256":"e0949ae3fd96c11f54db7f56d1d9bc7b9613afe54d411ac16241095eb20f42ba","size":18778},"wonderswan-color":{"file":"systems/wonderswan-color.json","gzip_size":5618,"sha256":"41931c79d3546731ac4665f711c3d6296d30a26244be08e3bd9da01cbfdfa470","size":18027}}}
From 213b20e2c86afecf6695bdf0635f43f1902364c8 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 20:33:37 +0100
Subject: [PATCH 31/34] refactor: read an entry's target as a function
The emulator card read entry_target from the consumers object, which the tests stand in for with a namespace. It is a module function now, and the pairing test resolves an archive member through it as the site does.
---
scripts/cross_reference.py | 30 +++++++++++++++---------------
scripts/generate_site.py | 4 ++--
tests/test_file_consumers.py | 10 ++++++----
3 files changed, 23 insertions(+), 21 deletions(-)
diff --git a/scripts/cross_reference.py b/scripts/cross_reference.py
index 19405123f..61ac3b47d 100644
--- a/scripts/cross_reference.py
+++ b/scripts/cross_reference.py
@@ -546,20 +546,6 @@ class FileConsumers:
if member is not entry
}
- @staticmethod
- def entry_target(entry: dict, files: list[dict]) -> tuple[dict, str]:
- """The entry a profile entry resolves through, and its destination.
-
- A ROM read inside an archive is the archive: FBNeo opens sm1.sm1 in
- neogeo.zip, and resolved by its crc32 it credited a loose copy FBNeo
- never opens, while no neogeo.zip card named FBNeo. The archive
- members the profile reads decide between same-named copies, as in
- the emulator pack and verify.
- """
- if entry.get("archive"):
- return archive_entry(entry["archive"], files), ""
- return with_archive_members(entry, files), entry.get("path") or ""
-
def add_emulators(self, profiles: dict[str, dict]) -> None:
"""Each file a profile entry resolves to, a directory's members included.
@@ -588,13 +574,27 @@ class FileConsumers:
for dest, sha1 in members.items()
]
else:
- found = [self.sha1_of(*self.entry_target(entry, files), owner=name)]
+ found = [self.sha1_of(*entry_target(entry, files), owner=name)]
for sha1 in found:
if sha1:
self.emulators.setdefault(sha1, set()).add(name)
self.emulator_entries.setdefault(sha1, {}).setdefault(name, index)
+def entry_target(entry: dict, files: list[dict]) -> tuple[dict, str]:
+ """The entry a profile entry resolves through, and its destination.
+
+ A ROM read inside an archive is the archive: FBNeo opens sm1.sm1 in
+ neogeo.zip, and resolved by its crc32 it credited a loose copy FBNeo
+ never opens, while no neogeo.zip card named FBNeo. The archive
+ members the profile reads decide between same-named copies, as in
+ the emulator pack and verify.
+ """
+ if entry.get("archive"):
+ return archive_entry(entry["archive"], files), ""
+ return with_archive_members(entry, files), entry.get("path") or ""
+
+
def entry_source(f: dict, index: dict) -> str | None:
"""Where the collection holds a profile entry, or None.
diff --git a/scripts/generate_site.py b/scripts/generate_site.py
index 108b77a01..b75afd262 100644
--- a/scripts/generate_site.py
+++ b/scripts/generate_site.py
@@ -63,7 +63,7 @@ from common import (
)
from artifacts import ArtifactLockBusy, artifact_lock
from artifacts import json_text as _json_text
-from cross_reference import FileConsumers, held_copy
+from cross_reference import FileConsumers, entry_target, held_copy
from nativemode import check_label, digest_algorithm, reads_file_contents
@@ -8220,7 +8220,7 @@ def _render_emulator_file(
details.extend(_directory_copies(f, consumers))
if consumers:
sha1 = consumers.sha1_of(
- *consumers.entry_target(f, profile.get("files") or []), owner=owner)
+ *entry_target(f, profile.get("files") or []), owner=owner)
held = consumers.path_of(sha1) if sha1 and in_repo else ""
parts = held.split("/")
if len(parts) >= 3 and parts[0] == "bios" and f.get("archive"):
diff --git a/tests/test_file_consumers.py b/tests/test_file_consumers.py
index 50790d2f0..1d382916f 100644
--- a/tests/test_file_consumers.py
+++ b/tests/test_file_consumers.py
@@ -17,7 +17,7 @@ from pathlib import Path
REPO_ROOT = Path(__file__).resolve().parent.parent
sys.path.insert(0, str(REPO_ROOT / "scripts"))
-from cross_reference import FileConsumers # noqa: E402
+from cross_reference import FileConsumers, entry_target # noqa: E402
from generate_site import generate_system_page # noqa: E402
_TMP = tempfile.TemporaryDirectory()
@@ -246,7 +246,6 @@ class EveryReaderIsTheEmulatorPackFile(unittest.TestCase):
build_zip_contents_index, load_data_dir_registry,
load_emulator_profiles, resolve_local_file,
)
- from validation import with_archive_members
db_path = REPO_ROOT / "database.json"
if not db_path.exists():
@@ -275,9 +274,12 @@ class EveryReaderIsTheEmulatorPackFile(unittest.TestCase):
if members:
from_trees |= {(sha1, name) for sha1 in members.values()}
continue
+ # A ROM read inside an archive is the archive, as the
+ # emulator pack resolves it (archive_entry).
+ target, dest = entry_target(entry, files)
path, status = resolve_local_file(
- {**with_archive_members(entry, files), "source_profile": name},
- db, zips, dest_hint=entry.get("path") or "",
+ {**target, "source_profile": name},
+ db, zips, dest_hint=dest,
data_dir_registry=registry,
)
if path and status not in ("not_found", "hash_mismatch"):
From 62ed48e0a1765d0bccefdc25378809c18ec578e9 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 20:33:37 +0100
Subject: [PATCH 32/34] fix: run every class when a site test runs alone
Two classes were appended after unittest.main().
---
tests/test_site_render.py | 8 ++++----
tests/test_site_system_names.py | 8 ++++----
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/tests/test_site_render.py b/tests/test_site_render.py
index eebcaf79d..35b27dbc8 100644
--- a/tests/test_site_render.py
+++ b/tests/test_site_render.py
@@ -427,10 +427,6 @@ class TheSearchSkipsLinkLists(unittest.TestCase):
self.assertIn(short, text)
-if __name__ == "__main__":
- unittest.main()
-
-
class OneDefinitionPerName(unittest.TestCase):
"""generate_site defined _REGION_WORDS twice: the second table replaced
the first at import, and _region_word, written beside the first, never
@@ -505,3 +501,7 @@ class NoTooltipInsideAName(unittest.TestCase):
"Emulator settings come first. The PlayStation BIOS goes there.", terms)
self.assertIn('title="An app that acts like a console.">Emulator', marked)
self.assertIn('>BIOS', marked)
+
+
+if __name__ == "__main__":
+ unittest.main()
diff --git a/tests/test_site_system_names.py b/tests/test_site_system_names.py
index b24fc3de8..bfc883fc4 100644
--- a/tests/test_site_system_names.py
+++ b/tests/test_site_system_names.py
@@ -116,10 +116,6 @@ class SystemNames(unittest.TestCase):
self.assertFalse(names & siterender.program_names(self.profiles))
-if __name__ == "__main__":
- unittest.main()
-
-
class SectionsComeBeforeThePlan(unittest.TestCase):
"""plan_emulator_pages names systems. Run before set_console_sections,
it made siterender read ./database.json and ./emulators whatever --db
@@ -137,3 +133,7 @@ class SectionsComeBeforeThePlan(unittest.TestCase):
if isinstance(node, ast.Call) and isinstance(node.func, ast.Name):
lines.setdefault(node.func.id, node.lineno)
self.assertLess(lines["set_console_sections"], lines["plan_emulator_pages"])
+
+
+if __name__ == "__main__":
+ unittest.main()
From 943add6df0f55262a78eb0be5a6bc449b1e13e69 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 20:33:37 +0100
Subject: [PATCH 33/34] fix: align tests with the new help and messages
The --skip-packs help and the validate_pr fetch error were reworded, and a batocera page with no tab bar is plain Markdown that keeps the underscore entity, read here as a browser shows it.
---
scripts/validate_pr.py | 2 +-
tests/test_audit_regressions.py | 3 ++-
tests/test_refresh_failures.py | 2 +-
tests/test_site_reference.py | 6 +++++-
4 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/scripts/validate_pr.py b/scripts/validate_pr.py
index f44aff8b4..cbc6fa1bd 100644
--- a/scripts/validate_pr.py
+++ b/scripts/validate_pr.py
@@ -632,7 +632,7 @@ def _project_main_line() -> str | None:
if fetched.returncode != 0:
raise RuntimeError(
f"this clone does not hold the main of {PROJECT_URLS[0]}, and "
- f"fetching it from {source} failed: {fetched.stderr.strip()}"
+ f"fetching its main from {source} failed: {fetched.stderr.strip()}"
)
return "FETCH_HEAD"
diff --git a/tests/test_audit_regressions.py b/tests/test_audit_regressions.py
index e6f95068d..446bfe900 100644
--- a/tests/test_audit_regressions.py
+++ b/tests/test_audit_regressions.py
@@ -6660,7 +6660,8 @@ class SkipPacksHelpSaysWhatRuns(unittest.TestCase):
)
text = " ".join(proc.stdout.split())
self.assertNotIn("Only regenerate DB and verify", text)
- self.assertIn("Steps 7 and 8 still rewrite README.md and the site pages in website/", text)
+ self.assertIn("step 4e still rewrites install/games/, and steps 7 to 8b rewrite README.md "
+ "and the site unless --skip-docs is given", text)
self.assertNotIn("docs/", text)
def test_every_step_it_names_is_one_it_skips(self):
diff --git a/tests/test_refresh_failures.py b/tests/test_refresh_failures.py
index 2225ccfe5..11e2bfc27 100644
--- a/tests/test_refresh_failures.py
+++ b/tests/test_refresh_failures.py
@@ -130,7 +130,7 @@ class AForkPushedToItsOwnMain(unittest.TestCase):
# A project that cannot be reached is an error, never "nothing".
missing = self._changed(clone, str(Path(tmp, "absent")))
self.assertNotEqual(missing.returncode, 0)
- self.assertIn("fetching its main failed", missing.stderr)
+ self.assertIn("fetching its main from", missing.stderr)
class RefreshFailuresAreFailures(unittest.TestCase):
diff --git a/tests/test_site_reference.py b/tests/test_site_reference.py
index de6080114..5375a7972 100644
--- a/tests/test_site_reference.py
+++ b/tests/test_site_reference.py
@@ -422,7 +422,11 @@ class BuiltBatoceraPage(unittest.TestCase):
# PlayStation's list is long enough to sit on a page of its own.
pages = [main] + [p.read_text(encoding="utf-8") for p in
(DIST / "platforms").glob("batocera-sony-playstation*/index.html")]
- html = "".join(pages)
+ # Read as a browser shows it: a page with no tab bar is plain
+ # Markdown, which keeps the entity a name's underscore is written as.
+ import html as _html
+
+ html = _html.unescape("".join(pages))
for text in ("Served by:", "scph1001_v20.bin", "https://github.com/stenzek/duckstation/blob/"):
with self.subTest(text=text):
self.assertTrue(text in html)
From 9a66ac32195cbb4236e8e68369629117b1bff412 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Thu, 5 Nov 2026 22:59:30 +0100
Subject: [PATCH 34/34] chore: drop the source tree pcem no longer pins
The pcem upstream pin moved to 10739b96. Merging both batches kept the
empty record of the orphaned 25b54e3f tree.
---
website/src/data/source-paths.json | 1 -
1 file changed, 1 deletion(-)
diff --git a/website/src/data/source-paths.json b/website/src/data/source-paths.json
index da25b547c..d591448f7 100644
--- a/website/src/data/source-paths.json
+++ b/website/src/data/source-paths.json
@@ -8954,7 +8954,6 @@
"src/vid_tvga.c",
"src/vid_vga.c"
],
- "github.com/sarah-walker-pcem/pcem@25b54e3ff1d51cbf2469b447e55bce7a589697e9": [],
"github.com/sashkinbro/EmuCoreV@b71d8cf5397b1c6394e92eeb48427cd17e542971": [
"app/build.gradle.kts",
"app/src/main/AndroidManifest.xml",