From f796155e1aebd4b1f09ed5f303998611e84a1d53 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:05:00 +0200
Subject: [PATCH 1/9] fix: count only the names retropie help gains
The report listed every file a profiled core reads as added (1360),
while the export appends one name to one scriptmodule.
---
exports/retropie.json | 12231 ------------------------
scripts/exporter/retropie_exporter.py | 16 +-
tests/test_export_report.py | 31 +
3 files changed, 46 insertions(+), 12232 deletions(-)
diff --git a/exports/retropie.json b/exports/retropie.json
index 09d1b14b..4b18c259 100644
--- a/exports/retropie.json
+++ b/exports/retropie.json
@@ -9,2040 +9,6 @@
"summary": "1 packages updated. Left as is: dgen, gpsp, lr-freechaf, uae4arm, which no profiled core matches. Left as is: lr-fbneo, lr-fmsx, openmsx, pcsx2 and 1 more, whose help text lists no files to add to. Left as is: xm7, whose help text names a file no profile documents yet (dicrom.rom, extsub.rom, fbasic30.rom, fddseek.wav, initiate.rom, relay_on.wav, relayoff.wav, subsys_a.rom, subsys_b.rom, subsys_c.rom, subsyscg.rom). Left as is: sdltrs, whose help text names a file no profile documents yet (level3.rom, level4.rom, level4p.rom). Left as is: lr-opera, whose help text names a file no profile documents yet (panazf10.bin), 108 entries found by content not listed",
"counts": null,
"changes": [
- {
- "kind": "added",
- "system": "3DO Company, The - 3DO",
- "name": "3dobios.zip",
- "destination": "3dobios.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "3DO Company, The - 3DO",
- "name": "opera-boot.bin",
- "destination": "opera-boot.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Amstrad - CPC",
- "name": "parados.rom",
- "destination": "rom/parados.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "hiscore.dat",
- "destination": "fbalpha2012/hiscore.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "cheat.dat",
- "destination": "mame2000/cheat/cheat.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "hiscore.dat",
- "destination": "hiscore.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "history.dat",
- "destination": "mame2003/history.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "mameinfo.dat",
- "destination": "mame2003/mameinfo.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "dkong.zip",
- "destination": "fba2012/samples/dkong.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "dkongjr.zip",
- "destination": "fba2012/samples/dkongjr.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "galaga.zip",
- "destination": "fba2012/samples/galaga.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "rallyx.zip",
- "destination": "fba2012/samples/rallyx.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "ghox.zip",
- "destination": "fba2012/samples/ghox.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "fireshrk.zip",
- "destination": "fba2012/samples/fireshrk.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "tekipaki.zip",
- "destination": "fba2012/samples/tekipaki.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "vimana.zip",
- "destination": "fba2012/samples/vimana.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "donpachi.zip",
- "destination": "fbneo/samples/donpachi.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "sfz3mix.zip",
- "destination": "fbneo/samples/sfz3mix.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "qsound.zip",
- "destination": "qsound.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "hiscore.dat",
- "destination": "hiscore.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "hiscore.dat",
- "destination": "mame2003/hiscore.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "blueshrk.zip",
- "destination": "mame2003-plus/artwork/blueshrk.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "frogs.zip",
- "destination": "mame2003-plus/artwork/frogs.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "invaders.zip",
- "destination": "mame2003-plus/artwork/invaders.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "omegrace.zip",
- "destination": "mame2003-plus/artwork/omegrace.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "skydiver.zip",
- "destination": "mame2003-plus/artwork/skydiver.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "solarq.zip",
- "destination": "mame2003-plus/artwork/solarq.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "warrior.zip",
- "destination": "mame2003-plus/artwork/warrior.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "hiscore.dat",
- "destination": "mame2010/hiscore.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "cheat.zip",
- "destination": "mame2010/cheat.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Arcade",
- "name": "hiscore.dat",
- "destination": "ume2015/hiscore.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "tos.sym",
- "destination": "tos.sym",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "cartridge ROM",
- "destination": "cartridge ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "BOOT.ST",
- "destination": "hatari/BOOT.ST",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "hatari.cfg",
- "destination": "hatari/hatari.cfg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "hatari.nvram",
- "destination": "hatari.nvram",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "floppy.raw",
- "destination": "floppy.raw",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "etos1024k.img",
- "destination": "etos1024k.img",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "etos192uk.img",
- "destination": "etos192uk.img",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "etos192us.img",
- "destination": "etos192us.img",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Atari - ST",
- "name": "hatarib.nvram",
- "destination": "hatarib.nvram",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "kick13.rom",
- "destination": "amiga/kick13.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "kick12.rom",
- "destination": "amiga/kick12.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "kick20.rom",
- "destination": "amiga/kick20.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "kick205.rom",
- "destination": "kick205.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "kick31.rom",
- "destination": "amiga/kick31.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "amiga-os-310.rom",
- "destination": "amiga-os-310.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "rom.key",
- "destination": "amiga/rom.key",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "6570-036.rom",
- "destination": "6570-036.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "68HC05.rom",
- "destination": "68HC05.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "D8039HLC.rom",
- "destination": "D8039HLC.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "kick31034.A1000",
- "destination": "kick31034.A1000",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "kick32034.A1000",
- "destination": "kick32034.A1000",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_click_A500.wav",
- "destination": "uae_data/drive_click_A500.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_spin_A500.wav",
- "destination": "uae_data/drive_spin_A500.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_spinnd_A500.wav",
- "destination": "uae_data/drive_spinnd_A500.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_startup_A500.wav",
- "destination": "uae_data/drive_startup_A500.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_snatch_A500.wav",
- "destination": "uae_data/drive_snatch_A500.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_click_LOUD.wav",
- "destination": "uae_data/drive_click_LOUD.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_spin_LOUD.wav",
- "destination": "uae_data/drive_spin_LOUD.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_spinnd_LOUD.wav",
- "destination": "uae_data/drive_spinnd_LOUD.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_startup_LOUD.wav",
- "destination": "uae_data/drive_startup_LOUD.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - Amiga",
- "name": "drive_snatch_LOUD.wav",
- "destination": "uae_data/drive_snatch_LOUD.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernal-318020-05.bin",
- "destination": "vice/C128/kernal-318020-05.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernal-315078-03.bin",
- "destination": "vice/C128/kernal-315078-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernal-325172-01.bin",
- "destination": "vice/C128/kernal-325172-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernal-318034-01.bin",
- "destination": "vice/C128/kernal-318034-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernalfi",
- "destination": "vice/C128/kernalfi",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernalfr",
- "destination": "vice/C128/kernalfr",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernalit",
- "destination": "vice/C128/kernalit",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernalno",
- "destination": "vice/C128/kernalno",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/basiclo-318018-04.bin",
- "destination": "vice/C128/basiclo-318018-04.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/basichi-318019-04.bin",
- "destination": "vice/C128/basichi-318019-04.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/basic-901226-01.bin",
- "destination": "vice/C128/basic-901226-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernal-901227-03.bin",
- "destination": "vice/C128/kernal-901227-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernal64-325179-01.bin",
- "destination": "vice/C128/kernal64-325179-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/kernal64-325182-01.bin",
- "destination": "vice/C128/kernal64-325182-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/chargen-390059-01.bin",
- "destination": "vice/C128/chargen-390059-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/chargen-315079-01.bin",
- "destination": "vice/C128/chargen-315079-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/chargen-325167-02.bin",
- "destination": "vice/C128/chargen-325167-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/chargen-325173-01D.bin",
- "destination": "vice/C128/chargen-325173-01D.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/chargen-325078-02.bin",
- "destination": "vice/C128/chargen-325078-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/C128/chargen-325181-01.bin",
- "destination": "vice/C128/chargen-325181-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Commodore - C128",
- "name": "vice/DRIVES/dos1571cr-318047-01.bin",
- "destination": "vice/DRIVES/dos1571cr-318047-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ROM1.BIN",
- "destination": "SC-55/ROM1.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ROM2.BIN",
- "destination": "SC-55/ROM2.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ROM_SM.BIN",
- "destination": "SC-55/ROM_SM.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "WAVEROM1.BIN",
- "destination": "SC-55/WAVEROM1.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "WAVEROM2.BIN",
- "destination": "SC-55/WAVEROM2.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "WAVEROM3.BIN",
- "destination": "SC-55/WAVEROM3.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "CM32LN_CONTROL.ROM",
- "destination": "CM32LN_CONTROL.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_04.rom",
- "destination": "mt32-roms/ctrl_mt32_1_04.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_05.rom",
- "destination": "mt32-roms/ctrl_mt32_1_05.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_06.rom",
- "destination": "mt32-roms/ctrl_mt32_1_06.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_07.rom",
- "destination": "mt32-roms/ctrl_mt32_1_07.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_bluer.rom",
- "destination": "mt32-roms/ctrl_mt32_bluer.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_2_03.rom",
- "destination": "mt32-roms/ctrl_mt32_2_03.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_2_04.rom",
- "destination": "mt32-roms/ctrl_mt32_2_04.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_2_06.rom",
- "destination": "mt32-roms/ctrl_mt32_2_06.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_2_07.rom",
- "destination": "mt32-roms/ctrl_mt32_2_07.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_cm32l_1_00.rom",
- "destination": "mt32-roms/ctrl_cm32l_1_00.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_cm32l_1_02.rom",
- "destination": "mt32-roms/ctrl_cm32l_1_02.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_cm32ln_1_00.rom",
- "destination": "mt32-roms/ctrl_cm32ln_1_00.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_04_a.rom",
- "destination": "mt32-roms/ctrl_mt32_1_04_a.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_04_b.rom",
- "destination": "mt32-roms/ctrl_mt32_1_04_b.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_05_a.rom",
- "destination": "mt32-roms/ctrl_mt32_1_05_a.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_05_b.rom",
- "destination": "mt32-roms/ctrl_mt32_1_05_b.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_06_a.rom",
- "destination": "mt32-roms/ctrl_mt32_1_06_a.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_06_b.rom",
- "destination": "mt32-roms/ctrl_mt32_1_06_b.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_07_a.rom",
- "destination": "mt32-roms/ctrl_mt32_1_07_a.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_1_07_b.rom",
- "destination": "mt32-roms/ctrl_mt32_1_07_b.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_bluer_a.rom",
- "destination": "mt32-roms/ctrl_mt32_bluer_a.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ctrl_mt32_bluer_b.rom",
- "destination": "mt32-roms/ctrl_mt32_bluer_b.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "pcm_mt32.rom",
- "destination": "mt32-roms/pcm_mt32.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "pcm_mt32_l.rom",
- "destination": "mt32-roms/pcm_mt32_l.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "pcm_mt32_h.rom",
- "destination": "mt32-roms/pcm_mt32_h.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "pcm_cm32l.rom",
- "destination": "mt32-roms/pcm_cm32l.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "pcm_cm32l_h.rom",
- "destination": "mt32-roms/pcm_cm32l_h.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_waverom1.bin",
- "destination": "soundcanvas-roms/SC-55-v1.21/sc55_waverom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_waverom2.bin",
- "destination": "soundcanvas-roms/SC-55-v1.21/sc55_waverom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_waverom3.bin",
- "destination": "soundcanvas-roms/SC-55-v1.21/sc55_waverom3.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom1.bin",
- "destination": "soundcanvas-roms/SC-55-v1.00/sc55_rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom2.bin",
- "destination": "soundcanvas-roms/SC-55-v1.00/sc55_rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom1.bin",
- "destination": "soundcanvas-roms/SC-55-v1.10/sc55_rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom2.bin",
- "destination": "soundcanvas-roms/SC-55-v1.10/sc55_rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom1.bin",
- "destination": "soundcanvas-roms/SC-55-v1.20/sc55_rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom2.bin",
- "destination": "soundcanvas-roms/SC-55-v1.20/sc55_rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom2.bin",
- "destination": "soundcanvas-roms/SC-55-v1.21/sc55_rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom1.bin",
- "destination": "soundcanvas-roms/SC-55-v2.00/sc55_rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55_rom2.bin",
- "destination": "soundcanvas-roms/SC-55-v2.00/sc55_rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "default.sf2",
- "destination": "soundfonts/default.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "GeneralUser-GS.sf2",
- "destination": "soundfonts/GeneralUser-GS.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "FluidR3_GM.sf2",
- "destination": "soundfonts/FluidR3_GM.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "system.rom",
- "destination": "system.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "IBM PC Cassette BASIC ROM",
- "destination": "IBM PC Cassette BASIC ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "ibm-vga.bin",
- "destination": "ibm-vga.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "awe32.raw",
- "destination": "awe32.raw",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.21/rom1.bin",
- "destination": "sc55-roms/mk1-v1.21/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.21/rom2.bin",
- "destination": "sc55-roms/mk1-v1.21/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.21/wave1.bin",
- "destination": "sc55-roms/mk1-v1.21/wave1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.21/wave2.bin",
- "destination": "sc55-roms/mk1-v1.21/wave2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.21/wave3.bin",
- "destination": "sc55-roms/mk1-v1.21/wave3.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.00/rom1.bin",
- "destination": "sc55-roms/mk1-v1.00/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.00/rom2.bin",
- "destination": "sc55-roms/mk1-v1.00/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.10/rom1.bin",
- "destination": "sc55-roms/mk1-v1.10/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.10/rom2.bin",
- "destination": "sc55-roms/mk1-v1.10/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.20/rom1.bin",
- "destination": "sc55-roms/mk1-v1.20/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v1.20/rom2.bin",
- "destination": "sc55-roms/mk1-v1.20/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v2.00/rom1.bin",
- "destination": "sc55-roms/mk1-v2.00/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk1-v2.00/rom2.bin",
- "destination": "sc55-roms/mk1-v2.00/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk2-v1.01/rom1.bin",
- "destination": "sc55-roms/mk2-v1.01/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk2-v1.01/rom2.bin",
- "destination": "sc55-roms/mk2-v1.01/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk2-v1.01/smrom.bin",
- "destination": "sc55-roms/mk2-v1.01/smrom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk2-v1.01/wave1.bin",
- "destination": "sc55-roms/mk2-v1.01/wave1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/mk2-v1.01/wave2.bin",
- "destination": "sc55-roms/mk2-v1.01/wave2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/sc155-rev1/rom2.bin",
- "destination": "sc55-roms/sc155-rev1/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/cm300-v1.30/rom1.bin",
- "destination": "sc55-roms/cm300-v1.30/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/cm300-v1.30/rom2.bin",
- "destination": "sc55-roms/cm300-v1.30/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/cm300-v1.30/wave1.bin",
- "destination": "sc55-roms/cm300-v1.30/wave1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/cm300-v1.30/wave2.bin",
- "destination": "sc55-roms/cm300-v1.30/wave2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/st-v1.01/rom2.bin",
- "destination": "sc55-roms/st-v1.01/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/cm300-v1.10/rom1.bin",
- "destination": "sc55-roms/cm300-v1.10/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/cm300-v1.10/rom2.bin",
- "destination": "sc55-roms/cm300-v1.10/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/cm300-v1.20/rom2.bin",
- "destination": "sc55-roms/cm300-v1.20/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/scb55-v2.00/rom1.bin",
- "destination": "sc55-roms/scb55-v2.00/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/scb55-v2.00/rom2.bin",
- "destination": "sc55-roms/scb55-v2.00/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/rlp3237-v2.01/rom2.bin",
- "destination": "sc55-roms/rlp3237-v2.01/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "DOS",
- "name": "sc55-roms/rlp3237-v2.01/wave1.bin",
- "destination": "sc55-roms/rlp3237-v2.01/wave1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Elektronika - BK-0010/BK-0011(M)",
- "name": "TERAK.ROM",
- "destination": "bk/TERAK.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Elektronika - BK-0010/BK-0011(M)",
- "name": "bk0010.zip",
- "destination": "bk0010.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Enterprise - 64/128",
- "name": "ep64_exdos.zip",
- "destination": "ep64_exdos.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "EPOCH/YENO Super Cassette Vision",
- "name": "scv.zip",
- "destination": "scv.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Galaksija",
- "name": "rom1.bin",
- "destination": "soundcanvas-roms/SC-55mk2-v1.01/rom1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Galaksija",
- "name": "rom2.bin",
- "destination": "soundcanvas-roms/SC-55mk2-v1.01/rom2.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Id Software - Doom",
- "name": "gzdoom.pk3",
- "destination": "gzdoom.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Id Software - Doom",
- "name": "GENMIDI.GS.wopl",
- "destination": "fm_banks/GENMIDI.GS.wopl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Id Software - Doom",
- "name": "gs-by-papiezak-and-sneakernets.wopn",
- "destination": "fm_banks/gs-by-papiezak-and-sneakernets.wopn",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Id Software - Doom",
- "name": "game_widescreen_gfx.pk3",
- "destination": "game_widescreen_gfx.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "J2ME",
- "name": "freej2me_plus-lr.jar",
- "destination": "freej2me_plus-lr.jar",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "ROM",
- "destination": "ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "mac128k.zip",
- "destination": "mac128k.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "mac512k.zip",
- "destination": "mac512k.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "macplus.zip",
- "destination": "macplus.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "macse.zip",
- "destination": "macse.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "macclasc.zip",
- "destination": "macclasc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "mac2fdhd.zip",
- "destination": "mac2fdhd.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "maciix.zip",
- "destination": "maciix.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "maclc3.zip",
- "destination": "maclc3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "adbmodem.zip",
- "destination": "adbmodem.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "egret.zip",
- "destination": "egret.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "mackbd_m0110.zip",
- "destination": "mackbd_m0110.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "mackbd_m0110a.zip",
- "destination": "mackbd_m0110a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "mackbd_m0120.zip",
- "destination": "mackbd_m0120.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "nb_mdc824.zip",
- "destination": "nb_mdc824.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "nb_image.zip",
- "destination": "nb_image.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "MacIIx.ROM",
- "destination": "MacIIx.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "MacII",
- "name": "MinivMacBootv2.dsk",
- "destination": "macintosh/MinivMacBootv2.dsk",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Mattel - Intellivision",
- "name": "ecs.bin",
- "destination": "ecs.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Microsoft - MSX",
- "name": "DEFAULT.FNT",
- "destination": "DEFAULT.FNT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Microsoft - MSX",
- "name": "INTERNAT.FNT",
- "destination": "INTERNAT.FNT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Microsoft - MSX",
- "name": "KOREAN.FNT",
- "destination": "KOREAN.FNT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Microsoft - MSX",
- "name": "JAPANESE.FNT",
- "destination": "JAPANESE.FNT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "bios.rom",
- "destination": "np2/bios.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "bios9821.rom",
- "destination": "np2/bios9821.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "font.bmp",
- "destination": "np2/font.bmp",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "sound.rom",
- "destination": "np2/sound.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "2608_bd.wav",
- "destination": "np2/2608_bd.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "2608_sd.wav",
- "destination": "np2/2608_sd.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "2608_top.wav",
- "destination": "np2/2608_top.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "2608_hh.wav",
- "destination": "np2/2608_hh.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "2608_tom.wav",
- "destination": "np2/2608_tom.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "2608_rim.wav",
- "destination": "np2/2608_rim.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "scsi.rom",
- "destination": "np2/scsi.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "sasi.rom",
- "destination": "np2/sasi.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "ide.rom",
- "destination": "np2kai/ide.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "pci.rom",
- "destination": "np2kai/pci.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "gpib.rom",
- "destination": "np2kai/gpib.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "key.txt",
- "destination": "np2kai/key.txt",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "FONT.ROM",
- "destination": "pc98/FONT.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "KANJI1.ROM",
- "destination": "pc98/KANJI1.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "KANJI2.ROM",
- "destination": "pc98/KANJI2.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-98",
- "name": "PC88.FNT",
- "destination": "pc98/PC88.FNT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-8801",
- "name": "n88sub.rom",
- "destination": "quasi88/n88sub.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-8801",
- "name": "font.rom",
- "destination": "quasi88/font.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-8801",
- "name": "font2.rom",
- "destination": "quasi88/font2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-8801",
- "name": "font3.rom",
- "destination": "quasi88/font3.rom",
- "field": null,
- "old": null,
- "new": {}
- },
{
"kind": "added",
"system": "NEC - PC-8801",
@@ -2051,10203 +17,6 @@
"field": null,
"old": null,
"new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-8801",
- "name": "N88EXT1.ROM",
- "destination": "rom/N88EXT1.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-8801",
- "name": "N88EXT2.ROM",
- "destination": "rom/N88EXT2.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "NEC - PC-8801",
- "name": "N88EXT3.ROM",
- "destination": "rom/N88EXT3.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Gameboy",
- "name": "default.pal",
- "destination": "palettes/default.pal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Game Boy Advance",
- "name": "gba.zip",
- "destination": "gba.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Gameboy Color",
- "name": "agb_boot.bin",
- "destination": "agb_boot.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "dsp_rom.bin",
- "destination": "dolphin-emu/Sys/GC/dsp_rom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "dsp_coef.bin",
- "destination": "dolphin-emu/Sys/GC/dsp_coef.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "font_western.bin",
- "destination": "dolphin-emu/Sys/GC/font_western.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "font_japanese.bin",
- "destination": "dolphin-emu/Sys/GC/font_japanese.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "keys.bin",
- "destination": "keys.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8723a_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8723a_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8723b_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8723b_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8723d_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8723d_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8761a_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8761a_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8761bu_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8761bu_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8821a_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8821a_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8821c_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8821c_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8822b_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8822b_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8822cu_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8822cu_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8851bu_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8851bu_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8852au_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8852au_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8852bu_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8852bu_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8852cu_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8852cu_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8852btu_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8852btu_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - GameCube",
- "name": "rtl8922au_fw.bin",
- "destination": "Load/Firmware/rtl_bt/rtl8922au_fw.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo 64DD",
- "name": "font.ttf",
- "destination": "Mupen64plus/font.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo DS",
- "name": "nds_firmware_modified.bin",
- "destination": "system/nds_firmware_modified.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo DS",
- "name": "game_database_user.xml",
- "destination": "game_database_user.xml",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo DS",
- "name": "microphone.wav",
- "destination": "microphone/microphone.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo DS",
- "name": "default.lua",
- "destination": "scripts/default.lua",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo DS",
- "name": "drastic_dldi.img",
- "destination": "drastic_dldi.img",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo DS",
- "name": "dsi_firmware.bin",
- "destination": "dsi_firmware.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo DS",
- "name": "dsi_nand.bin",
- "destination": "dsi_nand.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo Entertainment System",
- "name": "StudyBox.bin",
- "destination": "StudyBox.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo Entertainment System",
- "name": "MesenPalette.pal",
- "destination": "MesenPalette.pal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo Entertainment System",
- "name": "ymf288_adpcm_rom.bin",
- "destination": "ymf288_adpcm_rom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo Entertainment System",
- "name": "lh5323m1.bin",
- "destination": "lh5323m1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo Entertainment System",
- "name": "MesenNesDB.txt",
- "destination": "MesenNesDB.txt",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Nintendo Entertainment System",
- "name": "custom.pal",
- "destination": "custom.pal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Satellaview",
- "name": "BSX0120-0.bin",
- "destination": "Satellaview/BSX0120-0.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Satellaview",
- "name": "BSX0121-0.bin",
- "destination": "Satellaview/BSX0121-0.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Satellaview",
- "name": "BSX0122-0.bin",
- "destination": "Satellaview/BSX0122-0.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Satellaview",
- "name": "BSX0123-0.bin",
- "destination": "Satellaview/BSX0123-0.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Satellaview",
- "name": "BSX0124-0.bin",
- "destination": "Satellaview/BSX0124-0.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Game Boy",
- "name": "lr35902.boot.rom",
- "destination": "SGB1.sfc/lr35902.boot.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "st010.zip",
- "destination": "st010.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "st011.zip",
- "destination": "st011.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp1.zip",
- "destination": "dsp1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp1b.zip",
- "destination": "dsp1b.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp2.zip",
- "destination": "dsp2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp3.zip",
- "destination": "dsp3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp4.zip",
- "destination": "dsp4.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "st018.zip",
- "destination": "st018.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp1.rom",
- "destination": "dsp1.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp1b.rom",
- "destination": "dsp1b.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp2.rom",
- "destination": "dsp2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp3.rom",
- "destination": "dsp3.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "dsp4.rom",
- "destination": "dsp4.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "st010.rom",
- "destination": "st010.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "st011.rom",
- "destination": "st011.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Nintendo - Super Nintendo Entertainment System",
- "name": "st018.rom",
- "destination": "st018.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Philips - CD-i",
- "name": "hash/",
- "destination": "mame/hash/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Philips - CD-i",
- "name": "plugins/",
- "destination": "mame/plugins/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Philips - CD-i",
- "name": "cdi910.zip",
- "destination": "same_cdi/bios/cdi910.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Philips - CD-i",
- "name": "cdi490a.zip",
- "destination": "same_cdi/bios/cdi490a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Dreamcast",
- "name": "dc_nvmem.bin",
- "destination": "dc/dc_nvmem.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Dreamcast",
- "name": "font.bin",
- "destination": "dc/font.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Dreamcast-based Arcade",
- "name": "segasp.zip",
- "destination": "segasp.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "us_scd2_9306.bin",
- "destination": "us_scd2_9306.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "eu_mcd2_9306.bin",
- "destination": "eu_mcd2_9306.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "jp_mcd2_921222.bin",
- "destination": "jp_mcd2_921222.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "SegaCDBIOS9303.bin",
- "destination": "SegaCDBIOS9303.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "eu_mcd2_9303.bin",
- "destination": "eu_mcd2_9303.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "jp_mcd1_9112.bin",
- "destination": "jp_mcd1_9112.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "us_scd1_9210.bin",
- "destination": "us_scd1_9210.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "eu_mcd1_9210.bin",
- "destination": "eu_mcd1_9210.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Mega CD - Sega CD",
- "name": "jp_mcd1_9111.bin",
- "destination": "jp_mcd1_9111.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Saturn",
- "name": "mpeg_card.bin",
- "destination": "mpeg_card.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Saturn",
- "name": "satar4mp.bin",
- "destination": "satar4mp.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sega - Saturn",
- "name": "cdb/cdb_rom.bin",
- "destination": "cdb/cdb_rom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X1",
- "name": "FNT0808.X1",
- "destination": "xmil/FNT0808.X1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X1",
- "name": "FNT0816.X1",
- "destination": "xmil/FNT0816.X1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X1",
- "name": "FNT1616.X1",
- "destination": "xmil/FNT1616.X1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X68000",
- "name": "cgrom30.dat",
- "destination": "cgrom30.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X68000",
- "name": "cgrom30.tmp",
- "destination": "cgrom30.tmp",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X68000",
- "name": "cgrom.tmp",
- "destination": "keropi/cgrom.tmp",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X68000",
- "name": "scsiinrom.dat",
- "destination": "scsiinrom.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sharp - X68000",
- "name": "scsiexrom.dat",
- "destination": "scsiexrom.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/48.rom",
- "destination": "fuse/48.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/128-0.rom",
- "destination": "fuse/128-0.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/128-1.rom",
- "destination": "fuse/128-1.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/plus2-0.rom",
- "destination": "fuse/plus2-0.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/plus2-1.rom",
- "destination": "fuse/plus2-1.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/plus3-0.rom",
- "destination": "fuse/plus3-0.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/plus3-1.rom",
- "destination": "fuse/plus3-1.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/plus3-2.rom",
- "destination": "fuse/plus3-2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/plus3e-3.rom",
- "destination": "fuse/plus3e-3.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/tc2048.rom",
- "destination": "fuse/tc2048.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/if1-2.rom",
- "destination": "fuse/if1-2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/didaktik80.rom",
- "destination": "fuse/didaktik80.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/opus.rom",
- "destination": "fuse/opus.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/mf1.rom",
- "destination": "fuse/mf1.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/mf128.rom",
- "destination": "fuse/mf128.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/mf3.rom",
- "destination": "fuse/mf3.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/ttx2000s.rom",
- "destination": "fuse/ttx2000s.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sinclair - ZX Spectrum",
- "name": "fuse/usource.rom",
- "destination": "fuse/usource.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "SNK - NeoGeo CD",
- "name": "neocd.zip",
- "destination": "neocd.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation",
- "name": "scph5903.bin",
- "destination": "scph5903.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation",
- "name": "openbios.bin",
- "destination": "openbios.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "r27v1602f.8g",
- "destination": "pcsx2/bios/r27v1602f.8g",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "r27v1602f.7d",
- "destination": "pcsx2/bios/r27v1602f.7d",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ps2-0230a-20080220.rom1",
- "destination": "pcsx2/bios/ps2-0230a-20080220.rom1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ps2-0230a-20080220.rom2",
- "destination": "pcsx2/bios/ps2-0230a-20080220.rom2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ps2-0230a-20080220.nvm",
- "destination": "pcsx2/bios/ps2-0230a-20080220.nvm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ps2-0230a-20080220.mec",
- "destination": "pcsx2/bios/ps2-0230a-20080220.mec",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "eeprom.dat",
- "destination": "eeprom.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "flash.dat",
- "destination": "flash.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "armsx2_overrides.yaml",
- "destination": "pcsx2/resources/armsx2_overrides.yaml",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "RedumpDatabase.yaml",
- "destination": "pcsx2/resources/RedumpDatabase.yaml",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "patches.zip",
- "destination": "pcsx2/resources/patches.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "Roboto-Regular.ttf",
- "destination": "pcsx2/resources/fonts/Roboto-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "RobotoMono-Medium.ttf",
- "destination": "pcsx2/resources/fonts/RobotoMono-Medium.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "fa-solid-900.ttf",
- "destination": "pcsx2/resources/fonts/fa-solid-900.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "promptfont.otf",
- "destination": "pcsx2/resources/fonts/promptfont.otf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "NotoSansJP-Regular.ttf",
- "destination": "pcsx2/resources/fonts/NotoSansJP-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "NotoSansKR-Regular.ttf",
- "destination": "pcsx2/resources/fonts/NotoSansKR-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "NotoSansSC-Regular.ttf",
- "destination": "pcsx2/resources/fonts/NotoSansSC-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "NotoSansTC-Regular.ttf",
- "destination": "pcsx2/resources/fonts/NotoSansTC-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "NotoSansArabic-Regular.ttf",
- "destination": "pcsx2/resources/fonts/NotoSansArabic-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "NotoSansHebrew-Regular.ttf",
- "destination": "pcsx2/resources/fonts/NotoSansHebrew-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "NotoSansDevanagari-Regular.ttf",
- "destination": "pcsx2/resources/fonts/NotoSansDevanagari-Regular.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "tfx.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/tfx.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "convert.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/convert.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "present.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/present.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "merge.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/merge.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "interlace.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/interlace.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "shadeboost.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/shadeboost.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "cas.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/cas.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "fsr1.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/fsr1.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "sgsr.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/sgsr.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "imgui.glsl",
- "destination": "pcsx2/resources/shaders/vulkan/imgui.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "fxaa.fx",
- "destination": "pcsx2/resources/shaders/common/fxaa.fx",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ffx_a.h",
- "destination": "pcsx2/resources/shaders/common/ffx_a.h",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ffx_cas.h",
- "destination": "pcsx2/resources/shaders/common/ffx_cas.h",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ffx_a_fsr1.h",
- "destination": "pcsx2/resources/shaders/common/ffx_a_fsr1.h",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ffx_fsr1.h",
- "destination": "pcsx2/resources/shaders/common/ffx_fsr1.h",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "tfx_vgs.glsl",
- "destination": "pcsx2/resources/shaders/opengl/tfx_vgs.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "tfx_fs.glsl",
- "destination": "pcsx2/resources/shaders/opengl/tfx_fs.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "convert.glsl",
- "destination": "pcsx2/resources/shaders/opengl/convert.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "present.glsl",
- "destination": "pcsx2/resources/shaders/opengl/present.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "merge.glsl",
- "destination": "pcsx2/resources/shaders/opengl/merge.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "interlace.glsl",
- "destination": "pcsx2/resources/shaders/opengl/interlace.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "shadeboost.glsl",
- "destination": "pcsx2/resources/shaders/opengl/shadeboost.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "cas.glsl",
- "destination": "pcsx2/resources/shaders/opengl/cas.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "imgui.glsl",
- "destination": "pcsx2/resources/shaders/opengl/imgui.glsl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "message.wav",
- "destination": "pcsx2/resources/sounds/achievements/message.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "unlock.wav",
- "destination": "pcsx2/resources/sounds/achievements/unlock.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "lbsubmit.wav",
- "destination": "pcsx2/resources/sounds/achievements/lbsubmit.wav",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "placeholder.png",
- "destination": "pcsx2/resources/fullscreenui/placeholder.png",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "no-save.png",
- "destination": "pcsx2/resources/fullscreenui/no-save.png",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "media-cdrom.svg",
- "destination": "pcsx2/resources/fullscreenui/media-cdrom.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "start-game.svg",
- "destination": "pcsx2/resources/fullscreenui/start-game.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "applications-system.svg",
- "destination": "pcsx2/resources/fullscreenui/applications-system.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "exit.svg",
- "destination": "pcsx2/resources/fullscreenui/exit.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "start-file.svg",
- "destination": "pcsx2/resources/fullscreenui/start-file.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "drive-cdrom.svg",
- "destination": "pcsx2/resources/fullscreenui/drive-cdrom.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "start-bios.svg",
- "destination": "pcsx2/resources/fullscreenui/start-bios.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "back-icon.svg",
- "destination": "pcsx2/resources/fullscreenui/back-icon.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "desktop-mode.svg",
- "destination": "pcsx2/resources/fullscreenui/desktop-mode.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "AppBanner.svg",
- "destination": "pcsx2/resources/icons/AppBanner.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "AppIconLarge.png",
- "destination": "pcsx2/resources/icons/AppIconLarge.png",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ra-icon.svg",
- "destination": "pcsx2/resources/icons/ra-icon.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "cheats_ws.zip",
- "destination": "pcsx2/resources/cheats_ws.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "cheats_ni.zip",
- "destination": "pcsx2/resources/cheats_ni.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "star-0.svg",
- "destination": "pcsx2/resources/icons/star-0.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "star-1.svg",
- "destination": "pcsx2/resources/icons/star-1.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "star-2.svg",
- "destination": "pcsx2/resources/icons/star-2.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "star-3.svg",
- "destination": "pcsx2/resources/icons/star-3.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "star-4.svg",
- "destination": "pcsx2/resources/icons/star-4.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "star-5.svg",
- "destination": "pcsx2/resources/icons/star-5.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "at.svg",
- "destination": "pcsx2/resources/icons/flags/at.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "au.svg",
- "destination": "pcsx2/resources/icons/flags/au.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "be.svg",
- "destination": "pcsx2/resources/icons/flags/be.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "br.svg",
- "destination": "pcsx2/resources/icons/flags/br.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ch.svg",
- "destination": "pcsx2/resources/icons/flags/ch.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "cn.svg",
- "destination": "pcsx2/resources/icons/flags/cn.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "de.svg",
- "destination": "pcsx2/resources/icons/flags/de.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "es.svg",
- "destination": "pcsx2/resources/icons/flags/es.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "eu.svg",
- "destination": "pcsx2/resources/icons/flags/eu.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "fi.svg",
- "destination": "pcsx2/resources/icons/flags/fi.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "fr.svg",
- "destination": "pcsx2/resources/icons/flags/fr.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "gb.svg",
- "destination": "pcsx2/resources/icons/flags/gb.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "gr.svg",
- "destination": "pcsx2/resources/icons/flags/gr.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "hk.svg",
- "destination": "pcsx2/resources/icons/flags/hk.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "in.svg",
- "destination": "pcsx2/resources/icons/flags/in.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "it.svg",
- "destination": "pcsx2/resources/icons/flags/it.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "jp.svg",
- "destination": "pcsx2/resources/icons/flags/jp.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "kr.svg",
- "destination": "pcsx2/resources/icons/flags/kr.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "nl.svg",
- "destination": "pcsx2/resources/icons/flags/nl.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "no.svg",
- "destination": "pcsx2/resources/icons/flags/no.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "Other.svg",
- "destination": "pcsx2/resources/icons/flags/Other.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "pl.svg",
- "destination": "pcsx2/resources/icons/flags/pl.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "pt.svg",
- "destination": "pcsx2/resources/icons/flags/pt.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "ru.svg",
- "destination": "pcsx2/resources/icons/flags/ru.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "scn.svg",
- "destination": "pcsx2/resources/icons/flags/scn.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "se.svg",
- "destination": "pcsx2/resources/icons/flags/se.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "tw.svg",
- "destination": "pcsx2/resources/icons/flags/tw.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "us.svg",
- "destination": "pcsx2/resources/icons/flags/us.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation 2",
- "name": "za.svg",
- "destination": "pcsx2/resources/icons/flags/za.svg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Sony - PlayStation Portable",
- "name": "zh_gb.pgf",
- "destination": "ppsspp-1.5.4/assets/flash0/font/zh_gb.pgf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vswap.wl1",
- "destination": "vswap.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vgadict.wl1",
- "destination": "vgadict.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vgahead.wl1",
- "destination": "vgahead.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vgagraph.wl1",
- "destination": "vgagraph.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "maphead.wl1",
- "destination": "maphead.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "gamemaps.wl1",
- "destination": "gamemaps.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "audiohed.wl1",
- "destination": "audiohed.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "audiot.wl1",
- "destination": "audiot.wl1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vswap.sdm",
- "destination": "vswap.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vgadict.sdm",
- "destination": "vgadict.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vgahead.sdm",
- "destination": "vgahead.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "vgagraph.sdm",
- "destination": "vgagraph.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "maphead.sdm",
- "destination": "maphead.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "gamemaps.sdm",
- "destination": "gamemaps.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "audiohed.sdm",
- "destination": "audiohed.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "Wolfenstein 3D",
- "name": "audiot.sdm",
- "destination": "audiot.sdm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acclaim-zn1",
- "name": "acpsx.zip",
- "destination": "acpsx.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acclaim-zn1",
- "name": "coh1000a.zip",
- "destination": "coh1000a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-archimedes",
- "name": "aa310.zip",
- "destination": "aa310.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-archimedes",
- "name": "archimedes_keyboard.zip",
- "destination": "archimedes_keyboard.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-bbc-micro",
- "name": "bbcm.zip",
- "destination": "bbcm.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-bbc-micro",
- "name": "bbcmc.zip",
- "destination": "bbcmc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-bbc-micro",
- "name": "saa5050.zip",
- "destination": "saa5050.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-bbc-micro",
- "name": "bbc_tube_80186.zip",
- "destination": "bbc_tube_80186.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-bbc-micro",
- "name": "bbc_bitstik1.zip",
- "destination": "bbc_bitstik1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-bbc-micro",
- "name": "bbc_bitstik2.zip",
- "destination": "bbc_bitstik2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "acorn-bbc-micro",
- "name": "bbc.zip",
- "destination": "mame/samples/bbc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "andamiro-pumpitup",
- "name": "pumpitup.zip",
- "destination": "pumpitup.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apf-m1000",
- "name": "apfm1000.zip",
- "destination": "apfm1000.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple-ii",
- "name": "icon.bmp",
- "destination": "icon.bmp",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple-ii",
- "name": "Base64A.rom",
- "destination": "Base64A.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple-ii",
- "name": "PRAVETS82.ROM",
- "destination": "PRAVETS82.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple-ii",
- "name": "PRAVETS8M.ROM",
- "destination": "PRAVETS8M.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple-ii",
- "name": "PRAVETS8C.ROM",
- "destination": "PRAVETS8C.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple-ii",
- "name": "TK3000e.rom",
- "destination": "TK3000e.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple-macintosh",
- "name": "vMac.ROM",
- "destination": "vMac.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "apple2.zip",
- "destination": "apple2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "apple2p.zip",
- "destination": "apple2p.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "apple2e.zip",
- "destination": "apple2e.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "apple2ee.zip",
- "destination": "apple2ee.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "a2diskiing.zip",
- "destination": "a2diskiing.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "d2fdc.zip",
- "destination": "d2fdc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "a2cffa02.zip",
- "destination": "a2cffa02.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "votrsc01.zip",
- "destination": "votrsc01.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2",
- "name": "votrsc01a.zip",
- "destination": "votrsc01a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "apple2gs",
- "name": "apple2gs.zip",
- "destination": "apple2gs.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "ace.zip",
- "destination": "ace.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "ace91.zip",
- "destination": "ace91.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "ace91_euro.zip",
- "destination": "ace91_euro.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "ace_a.zip",
- "destination": "ace_a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "ace_a2.zip",
- "destination": "ace_a2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "aceeuro.zip",
- "destination": "aceeuro.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "astron.zip",
- "destination": "astron.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "astronp.zip",
- "destination": "astronp.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "badlandp.zip",
- "destination": "badlandp.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "badlands.zip",
- "destination": "badlands.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "bega.zip",
- "destination": "bega.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "begar1.zip",
- "destination": "begar1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "blazer.zip",
- "destination": "blazer.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cliff.zip",
- "destination": "cliff.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cliff_ox.zip",
- "destination": "cliff_ox.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cliffalt.zip",
- "destination": "cliffalt.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cliffalt2.zip",
- "destination": "cliffalt2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cobra.zip",
- "destination": "cobra.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cobraab.zip",
- "destination": "cobraab.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cobraconv.zip",
- "destination": "cobraconv.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cobram3.zip",
- "destination": "cobram3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "cputest.zip",
- "destination": "cputest.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "dle11.zip",
- "destination": "dle11.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "dle20.zip",
- "destination": "dle20.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "dle21.zip",
- "destination": "dle21.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "esh.zip",
- "destination": "esh.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "eshalt.zip",
- "destination": "eshalt.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "eshalt2.zip",
- "destination": "eshalt2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "eshfix7.zip",
- "destination": "eshfix7.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "eshfix7alt.zip",
- "destination": "eshfix7alt.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "eshfix7alt2.zip",
- "destination": "eshfix7alt2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "firefox.zip",
- "destination": "firefox.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "firefoxa.zip",
- "destination": "firefoxa.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "galaxy.zip",
- "destination": "galaxy.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "galaxyp.zip",
- "destination": "galaxyp.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "gpworld.zip",
- "destination": "gpworld.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "gtg.zip",
- "destination": "gtg.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "interstellar.zip",
- "destination": "interstellar.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair.zip",
- "destination": "lair.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2.zip",
- "destination": "lair2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_211.zip",
- "destination": "lair2_211.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_300.zip",
- "destination": "lair2_300.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_314.zip",
- "destination": "lair2_314.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_315.zip",
- "destination": "lair2_315.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_316_euro.zip",
- "destination": "lair2_316_euro.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_318.zip",
- "destination": "lair2_318.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_319_euro.zip",
- "destination": "lair2_319_euro.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair2_319_span.zip",
- "destination": "lair2_319_span.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_a.zip",
- "destination": "lair_a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_b.zip",
- "destination": "lair_b.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_c.zip",
- "destination": "lair_c.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_d.zip",
- "destination": "lair_d.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_d2.zip",
- "destination": "lair_d2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_e.zip",
- "destination": "lair_e.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_f.zip",
- "destination": "lair_f.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_ita.zip",
- "destination": "lair_ita.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_n1.zip",
- "destination": "lair_n1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lair_x.zip",
- "destination": "lair_x.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "laireuro.zip",
- "destination": "laireuro.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "lgp.zip",
- "destination": "lgp.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "mach3.zip",
- "destination": "mach3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "roadblaster.zip",
- "destination": "roadblaster.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "sae.zip",
- "destination": "sae.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "sdq.zip",
- "destination": "sdq.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "sdqshort.zip",
- "destination": "sdqshort.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "sdqshortalt.zip",
- "destination": "sdqshortalt.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "timetrav.zip",
- "destination": "timetrav.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "tq.zip",
- "destination": "tq.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "tq_alt.zip",
- "destination": "tq_alt.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "tq_swear.zip",
- "destination": "tq_swear.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcade-laserdisc",
- "name": "uvt.zip",
- "destination": "uvt.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "arcadia-systems",
- "name": "ar_bios.zip",
- "destination": "ar_bios.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "astrocde",
- "name": "astrocde.zip",
- "destination": "astrocde.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "astrocde",
- "name": "astrocdl.zip",
- "destination": "astrocdl.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "astrocde",
- "name": "astrocdw.zip",
- "destination": "astrocdw.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atari-jaguar",
- "name": "[BIOS] Atari Jaguar CD (World).j64",
- "destination": "[BIOS] Atari Jaguar CD (World).j64",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atari-jaguar",
- "name": "[BIOS] Atari Jaguar Developer CD (World).j64",
- "destination": "[BIOS] Atari Jaguar Developer CD (World).j64",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atari-jaguar",
- "name": "jagboot.rom",
- "destination": "jagboot.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atari-jaguar",
- "name": "jagboot_m.rom",
- "destination": "jagboot_m.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atari-system1",
- "name": "atarisy1.zip",
- "destination": "atarisy1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atari-zn1",
- "name": "atpsx.zip",
- "destination": "atpsx.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atari-zn1",
- "name": "coh1000w.zip",
- "destination": "coh1000w.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atlus-zn1",
- "name": "atluspsx.zip",
- "destination": "atluspsx.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atlus-zn1",
- "name": "coh1001l.zip",
- "destination": "coh1001l.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "atom.zip",
- "destination": "atom.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "atombbc.zip",
- "destination": "atombbc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "prophet2.zip",
- "destination": "prophet2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "atom_discpack.zip",
- "destination": "atom_discpack.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "atom_gdos.zip",
- "destination": "atom_gdos.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "atom_gdos2015.zip",
- "destination": "atom_gdos2015.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "atom_speech.zip",
- "destination": "atom_speech.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "atom",
- "name": "atom_vdu80.zip",
- "destination": "atom_vdu80.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "bally-astrocade",
- "name": "astrocde.zip",
- "destination": "astrocde.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "bandai-rx78",
- "name": "rx78.zip",
- "destination": "rx78.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "barcrest-mpu4",
- "name": "bctvidbs.zip",
- "destination": "bctvidbs.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "bbk-longman-4980",
- "name": "8.BIN",
- "destination": "BBKEmu/A4980/8.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "bbk-longman-4980",
- "name": "E.BIN",
- "destination": "BBKEmu/A4980/E.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "bbk-longman-4980",
- "name": "gam4980/8.BIN",
- "destination": "gam4980/8.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "bbk-longman-4980",
- "name": "gam4980/E.BIN",
- "destination": "gam4980/E.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "brezzasoft-crystal",
- "name": "crysbios.zip",
- "destination": "crysbios.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "camplynx",
- "name": "lynx48k.zip",
- "destination": "lynx48k.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "camplynx",
- "name": "lynx96k.zip",
- "destination": "lynx96k.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "camplynx",
- "name": "lynx128k.zip",
- "destination": "lynx128k.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii.zip",
- "destination": "sfiii.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiiiu.zip",
- "destination": "sfiiiu.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiiia.zip",
- "destination": "sfiiia.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiiij.zip",
- "destination": "sfiiij.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiiih.zip",
- "destination": "sfiiih.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiiin.zip",
- "destination": "sfiiin.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii2.zip",
- "destination": "sfiii2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii2j.zip",
- "destination": "sfiii2j.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii2h.zip",
- "destination": "sfiii2h.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii2n.zip",
- "destination": "sfiii2n.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii3.zip",
- "destination": "sfiii3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii3u.zip",
- "destination": "sfiii3u.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii3j.zip",
- "destination": "sfiii3j.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii3n.zip",
- "destination": "sfiii3n.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "sfiii3na.zip",
- "destination": "sfiii3na.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojo.zip",
- "destination": "jojo.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojou.zip",
- "destination": "jojou.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojoa.zip",
- "destination": "jojoa.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojoj.zip",
- "destination": "jojoj.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojon.zip",
- "destination": "jojon.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojobar1.zip",
- "destination": "jojobar1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojobajr1.zip",
- "destination": "jojobajr1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojoba.zip",
- "destination": "jojoba.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "jojoban.zip",
- "destination": "jojoban.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "redearth.zip",
- "destination": "redearth.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "warzard.zip",
- "destination": "warzard.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-cps3",
- "name": "redearthn.zip",
- "destination": "redearthn.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-zn1",
- "name": "cpzn1.zip",
- "destination": "cpzn1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-zn1",
- "name": "coh1000c.zip",
- "destination": "coh1000c.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-zn2",
- "name": "cpzn2.zip",
- "destination": "cpzn2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "capcom-zn2",
- "name": "coh3002c.zip",
- "destination": "coh3002c.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "casio-loopy",
- "name": "casloopy.zip",
- "destination": "casloopy.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "casio-pv2000",
- "name": "pv2000.zip",
- "destination": "pv2000.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cave-story",
- "name": "Doukutsu.exe",
- "destination": "nxengine/Doukutsu.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cave-story",
- "name": "data/",
- "destination": "nxengine/data/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cave-story",
- "name": "data/npc.tbl",
- "destination": "nxengine/data/npc.tbl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cave-story",
- "name": "data/sprites.sif",
- "destination": "nxengine/data/sprites.sif",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cave-story",
- "name": "tilekey.dat",
- "destination": "nxengine/tilekey.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "century-cvs",
- "name": "cvs.zip",
- "destination": "cvs.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cgenie",
- "name": "cgenie.zip",
- "destination": "cgenie.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cgenie",
- "name": "cgenienz.zip",
- "destination": "cgenienz.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "cgenie",
- "name": "cgenie_fdc.zip",
- "destination": "cgenie_fdc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "coco.zip",
- "destination": "coco.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "coco2b.zip",
- "destination": "coco2b.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "coco3.zip",
- "destination": "coco3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "coco3p.zip",
- "destination": "coco3p.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "coco_fdc.zip",
- "destination": "coco_fdc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "bas13.rom",
- "destination": "bas13.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "bas12.rom",
- "destination": "bas12.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "bas11.rom",
- "destination": "bas11.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "bas10.rom",
- "destination": "bas10.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "extbas11.rom",
- "destination": "extbas11.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "extbas10.rom",
- "destination": "extbas10.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "deluxe.rom",
- "destination": "deluxe.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "mx1600bas.rom",
- "destination": "mx1600bas.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "mx1600extbas.rom",
- "destination": "mx1600extbas.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "cp400bas.rom",
- "destination": "cp400bas.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "cp400ext.rom",
- "destination": "cp400ext.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "disk11.rom",
- "destination": "disk11.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "disk10.rom",
- "destination": "disk10.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco",
- "name": "orch90.rom",
- "destination": "orch90.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco3",
- "name": "coco3.rom",
- "destination": "coco3.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coco3",
- "name": "coco3p.rom",
- "destination": "coco3p.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "eos.rom",
- "destination": "eos.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "writer.rom",
- "destination": "writer.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam.zip",
- "destination": "adam.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_kb.zip",
- "destination": "adam_kb.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_prn.zip",
- "destination": "adam_prn.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_ddp.zip",
- "destination": "adam_ddp.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_fdc.zip",
- "destination": "adam_fdc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_fdc_320kb.zip",
- "destination": "adam_fdc_320kb.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_fdc_a720dipi.zip",
- "destination": "adam_fdc_a720dipi.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_fdc_fp720at.zip",
- "destination": "adam_fdc_fp720at.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_fdc_mihddd.zip",
- "destination": "adam_fdc_mihddd.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "coleco-adam",
- "name": "adam_spi.zip",
- "destination": "adam_spi.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "keen1.exe",
- "destination": "games/keen1/keen1.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egahead.ck1",
- "destination": "games/keen1/egahead.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egalatch.ck1",
- "destination": "games/keen1/egalatch.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egasprit.ck1",
- "destination": "games/keen1/egasprit.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level01.ck1",
- "destination": "games/keen1/level01.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level02.ck1",
- "destination": "games/keen1/level02.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level03.ck1",
- "destination": "games/keen1/level03.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level04.ck1",
- "destination": "games/keen1/level04.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level05.ck1",
- "destination": "games/keen1/level05.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level06.ck1",
- "destination": "games/keen1/level06.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level07.ck1",
- "destination": "games/keen1/level07.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level08.ck1",
- "destination": "games/keen1/level08.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level09.ck1",
- "destination": "games/keen1/level09.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level10.ck1",
- "destination": "games/keen1/level10.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level11.ck1",
- "destination": "games/keen1/level11.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level12.ck1",
- "destination": "games/keen1/level12.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level13.ck1",
- "destination": "games/keen1/level13.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level14.ck1",
- "destination": "games/keen1/level14.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level15.ck1",
- "destination": "games/keen1/level15.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level16.ck1",
- "destination": "games/keen1/level16.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level80.ck1",
- "destination": "games/keen1/level80.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level81.ck1",
- "destination": "games/keen1/level81.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level90.ck1",
- "destination": "games/keen1/level90.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "finale.ck1",
- "destination": "games/keen1/finale.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "sounds.ck1",
- "destination": "games/keen1/sounds.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "storytxt.ck1",
- "destination": "games/keen1/storytxt.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "helptext.ck1",
- "destination": "games/keen1/helptext.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "endtext.ck1",
- "destination": "games/keen1/endtext.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "previews.ck1",
- "destination": "games/keen1/previews.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "preview2.ck1",
- "destination": "games/keen1/preview2.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "preview3.ck1",
- "destination": "games/keen1/preview3.ck1",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "keen2.exe",
- "destination": "games/keen2/keen2.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egahead.ck2",
- "destination": "games/keen2/egahead.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egalatch.ck2",
- "destination": "games/keen2/egalatch.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egasprit.ck2",
- "destination": "games/keen2/egasprit.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level01.ck2",
- "destination": "games/keen2/level01.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level02.ck2",
- "destination": "games/keen2/level02.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level03.ck2",
- "destination": "games/keen2/level03.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level04.ck2",
- "destination": "games/keen2/level04.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level05.ck2",
- "destination": "games/keen2/level05.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level06.ck2",
- "destination": "games/keen2/level06.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level07.ck2",
- "destination": "games/keen2/level07.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level08.ck2",
- "destination": "games/keen2/level08.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level09.ck2",
- "destination": "games/keen2/level09.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level10.ck2",
- "destination": "games/keen2/level10.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level11.ck2",
- "destination": "games/keen2/level11.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level12.ck2",
- "destination": "games/keen2/level12.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level13.ck2",
- "destination": "games/keen2/level13.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level14.ck2",
- "destination": "games/keen2/level14.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level15.ck2",
- "destination": "games/keen2/level15.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level16.ck2",
- "destination": "games/keen2/level16.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level80.ck2",
- "destination": "games/keen2/level80.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level81.ck2",
- "destination": "games/keen2/level81.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level90.ck2",
- "destination": "games/keen2/level90.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "finale.ck2",
- "destination": "games/keen2/finale.ck2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "keen3.exe",
- "destination": "games/keen3/keen3.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egahead.ck3",
- "destination": "games/keen3/egahead.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egalatch.ck3",
- "destination": "games/keen3/egalatch.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egasprit.ck3",
- "destination": "games/keen3/egasprit.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level01.ck3",
- "destination": "games/keen3/level01.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level02.ck3",
- "destination": "games/keen3/level02.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level03.ck3",
- "destination": "games/keen3/level03.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level04.ck3",
- "destination": "games/keen3/level04.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level05.ck3",
- "destination": "games/keen3/level05.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level06.ck3",
- "destination": "games/keen3/level06.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level07.ck3",
- "destination": "games/keen3/level07.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level08.ck3",
- "destination": "games/keen3/level08.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level09.ck3",
- "destination": "games/keen3/level09.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level10.ck3",
- "destination": "games/keen3/level10.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level11.ck3",
- "destination": "games/keen3/level11.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level12.ck3",
- "destination": "games/keen3/level12.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level13.ck3",
- "destination": "games/keen3/level13.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level14.ck3",
- "destination": "games/keen3/level14.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level15.ck3",
- "destination": "games/keen3/level15.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level16.ck3",
- "destination": "games/keen3/level16.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level80.ck3",
- "destination": "games/keen3/level80.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level81.ck3",
- "destination": "games/keen3/level81.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "level90.ck3",
- "destination": "games/keen3/level90.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "finale.ck3",
- "destination": "games/keen3/finale.ck3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "keen4e.exe",
- "destination": "games/keen4/keen4e.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egagraph.ck4",
- "destination": "games/keen4/egagraph.ck4",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "gamemaps.ck4",
- "destination": "games/keen4/gamemaps.ck4",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "audio.ck4",
- "destination": "games/keen4/audio.ck4",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "keen5e.exe",
- "destination": "games/keen5/keen5e.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egagraph.ck5",
- "destination": "games/keen5/egagraph.ck5",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "gamemaps.ck5",
- "destination": "games/keen5/gamemaps.ck5",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "audio.ck5",
- "destination": "games/keen5/audio.ck5",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "keen6e.exe",
- "destination": "games/keen6/keen6e.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egagraph.ck6",
- "destination": "games/keen6/egagraph.ck6",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "gamemaps.ck6",
- "destination": "games/keen6/gamemaps.ck6",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "audio.ck6",
- "destination": "games/keen6/audio.ck6",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "k6demo.exe",
- "destination": "games/K6DEMO/k6demo.exe",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "egagraph.ck6",
- "destination": "games/K6DEMO/egagraph.ck6",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "gamemaps.ck6",
- "destination": "games/K6DEMO/gamemaps.ck6",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "audio.ck6",
- "destination": "games/K6DEMO/audio.ck6",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "KDREAMS.EXE",
- "destination": "games/KeenDreams/KDREAMS.EXE",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "KDREAMS.EGA",
- "destination": "games/KeenDreams/KDREAMS.EGA",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "KDREAMS.MAP",
- "destination": "games/KeenDreams/KDREAMS.MAP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "KDREAMS.AUD",
- "destination": "games/KeenDreams/KDREAMS.AUD",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commander-keen",
- "name": "KDREAMS.CMP",
- "destination": "games/KeenDreams/KDREAMS.CMP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "Basic ROM",
- "destination": "Basic ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "Kernal ROM",
- "destination": "Kernal ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "Char ROM",
- "destination": "Char ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "1541 ROM",
- "destination": "1541 ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/basic-901226-01.bin",
- "destination": "vice/C64/basic-901226-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/kernal-901227-03.bin",
- "destination": "vice/C64/kernal-901227-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/kernal-901227-01.bin",
- "destination": "vice/C64/kernal-901227-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/kernal-901227-02.bin",
- "destination": "vice/C64/kernal-901227-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/kernal-390852-01.bin",
- "destination": "vice/C64/kernal-390852-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/kernal-251104-04.bin",
- "destination": "vice/C64/kernal-251104-04.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/kernal-901246-01.bin",
- "destination": "vice/C64/kernal-901246-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/kernal-906145-02.bin",
- "destination": "vice/C64/kernal-906145-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/chargen-901225-01.bin",
- "destination": "vice/C64/chargen-901225-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/C64/chargen-906143-02.bin",
- "destination": "vice/C64/chargen-906143-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/SCPU64/scpu64",
- "destination": "vice/SCPU64/scpu64",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/SCPU64/chargen-901225-01.bin",
- "destination": "vice/SCPU64/chargen-901225-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/SCPU64/chargen-906143-02.bin",
- "destination": "vice/SCPU64/chargen-906143-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/DRIVES/dos1540-325302+3-01.bin",
- "destination": "vice/DRIVES/dos1540-325302+3-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/DRIVES/dos1541-325302-01+901229-05.bin",
- "destination": "vice/DRIVES/dos1541-325302-01+901229-05.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/DRIVES/dos1541ii-251968-03.bin",
- "destination": "vice/DRIVES/dos1541ii-251968-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/DRIVES/dos1570-315090-01.bin",
- "destination": "vice/DRIVES/dos1570-315090-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/DRIVES/dos1571-310654-05.bin",
- "destination": "vice/DRIVES/dos1571-310654-05.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "vice/DRIVES/dos1581-318045-02.bin",
- "destination": "vice/DRIVES/dos1581-318045-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "kernal-901227-01.bin",
- "destination": "kernal-901227-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "kernal-901227-02.bin",
- "destination": "kernal-901227-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "kernal",
- "destination": "data/C64/kernal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "basic",
- "destination": "data/C64/basic",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "chargen",
- "destination": "data/C64/chargen",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "sxkernal",
- "destination": "data/C64/sxkernal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "jpkernal",
- "destination": "data/C64/jpkernal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "jpchrgen",
- "destination": "data/C64/jpchrgen",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "gskernal",
- "destination": "data/C64/gskernal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "edkernal",
- "destination": "data/C64/edkernal",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos1540",
- "destination": "data/DRIVES/dos1540",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos1541",
- "destination": "data/DRIVES/dos1541",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "d1541II",
- "destination": "data/DRIVES/d1541II",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos1570",
- "destination": "data/DRIVES/dos1570",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos1571",
- "destination": "data/DRIVES/dos1571",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos1581",
- "destination": "data/DRIVES/dos1581",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos2000",
- "destination": "data/DRIVES/dos2000",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos4000",
- "destination": "data/DRIVES/dos4000",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos2031",
- "destination": "data/DRIVES/dos2031",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos2040",
- "destination": "data/DRIVES/dos2040",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos3040",
- "destination": "data/DRIVES/dos3040",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos4040",
- "destination": "data/DRIVES/dos4040",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "dos1001",
- "destination": "data/DRIVES/dos1001",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "mps803",
- "destination": "data/PRINTER/mps803",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64",
- "name": "nl10-cbm",
- "destination": "data/PRINTER/nl10-cbm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64dtv",
- "name": "vice/C64DTV/dtvrom.bin",
- "destination": "vice/C64DTV/dtvrom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64dtv",
- "name": "vice/C64DTV/basic-901226-01.bin",
- "destination": "vice/C64DTV/basic-901226-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64dtv",
- "name": "vice/C64DTV/chargen-901225-01.bin",
- "destination": "vice/C64DTV/chargen-901225-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64dtv",
- "name": "vice/C64DTV/kernal-901227-03.bin",
- "destination": "vice/C64DTV/kernal-901227-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-c64dtv",
- "name": "dtvrom.bin",
- "destination": "dtvrom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/basic-901242+3-04a.bin",
- "destination": "vice/CBM-II/basic-901242+3-04a.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/basic-901240+1-03.bin",
- "destination": "vice/CBM-II/basic-901240+1-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/basic-901235+6-02.bin",
- "destination": "vice/CBM-II/basic-901235+6-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/kernal-901244-04a.bin",
- "destination": "vice/CBM-II/kernal-901244-04a.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/kernal-901234-02.bin",
- "destination": "vice/CBM-II/kernal-901234-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/chargen-901225-01.bin",
- "destination": "vice/CBM-II/chargen-901225-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/chargen-901237-01.bin",
- "destination": "vice/CBM-II/chargen-901237-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cbm-ii",
- "name": "vice/CBM-II/chargen-901232-01.bin",
- "destination": "vice/CBM-II/chargen-901232-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cd32",
- "name": "cd32.rom",
- "destination": "cd32.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cd32",
- "name": "cd32ext.rom",
- "destination": "cd32ext.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-cubo",
- "name": "cubo.zip",
- "destination": "cubo.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/basic-1.901439-09-05-02-06.bin",
- "destination": "vice/PET/basic-1.901439-09-05-02-06.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/basic-2.901465-01-02.bin",
- "destination": "vice/PET/basic-2.901465-01-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/basic-4.901465-23-20-21.bin",
- "destination": "vice/PET/basic-4.901465-23-20-21.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/kernal-1.901439-04-07.bin",
- "destination": "vice/PET/kernal-1.901439-04-07.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/kernal-2.901465-03.bin",
- "destination": "vice/PET/kernal-2.901465-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/kernal-4.901465-22.bin",
- "destination": "vice/PET/kernal-4.901465-22.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/edit-1-n.901439-03.bin",
- "destination": "vice/PET/edit-1-n.901439-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/edit-2-n.901447-24.bin",
- "destination": "vice/PET/edit-2-n.901447-24.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/edit-2-b.901474-01.bin",
- "destination": "vice/PET/edit-2-b.901474-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/edit-4-40-n-50Hz.901498-01.bin",
- "destination": "vice/PET/edit-4-40-n-50Hz.901498-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/edit-4-40-b-50Hz.ts.bin",
- "destination": "vice/PET/edit-4-40-b-50Hz.ts.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/edit-4-80-b-50Hz.901474-04_.bin",
- "destination": "vice/PET/edit-4-80-b-50Hz.901474-04_.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/characters-1.901447-08.bin",
- "destination": "vice/PET/characters-1.901447-08.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/characters-2.901447-10.bin",
- "destination": "vice/PET/characters-2.901447-10.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/characters.901640-01.bin",
- "destination": "vice/PET/characters.901640-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/waterloo-a000.901898-01.bin",
- "destination": "vice/PET/waterloo-a000.901898-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/waterloo-b000.901898-02.bin",
- "destination": "vice/PET/waterloo-b000.901898-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/waterloo-c000.901898-03.bin",
- "destination": "vice/PET/waterloo-c000.901898-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/waterloo-d000.901898-04.bin",
- "destination": "vice/PET/waterloo-d000.901898-04.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/waterloo-e000.901897-01.bin",
- "destination": "vice/PET/waterloo-e000.901897-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/PET/waterloo-f000.901898-05.bin",
- "destination": "vice/PET/waterloo-f000.901898-05.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/DRIVES/dos1001-901887+8-01.bin",
- "destination": "vice/DRIVES/dos1001-901887+8-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/DRIVES/dos2031-901484-03+05.bin",
- "destination": "vice/DRIVES/dos2031-901484-03+05.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/DRIVES/dos2040-901468-06+07.bin",
- "destination": "vice/DRIVES/dos2040-901468-06+07.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/DRIVES/dos3040-901468-11-13.bin",
- "destination": "vice/DRIVES/dos3040-901468-11-13.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/DRIVES/dos4040-901468-14-16.bin",
- "destination": "vice/DRIVES/dos4040-901468-14-16.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-pet",
- "name": "vice/DRIVES/dos9000-300516+7-revC.bin",
- "destination": "vice/DRIVES/dos9000-300516+7-revC.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/basic-318006-01.bin",
- "destination": "vice/PLUS4/basic-318006-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/kernal-318004-05.bin",
- "destination": "vice/PLUS4/kernal-318004-05.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/kernal-318005-05.bin",
- "destination": "vice/PLUS4/kernal-318005-05.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/kernal-318004-01.bin",
- "destination": "vice/PLUS4/kernal-318004-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/kernal-364.bin",
- "destination": "vice/PLUS4/kernal-364.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/3plus1-317053-01.bin",
- "destination": "vice/PLUS4/3plus1-317053-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/3plus1-317054-01.bin",
- "destination": "vice/PLUS4/3plus1-317054-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/PLUS4/c2lo-364.bin",
- "destination": "vice/PLUS4/c2lo-364.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-plus4",
- "name": "vice/DRIVES/dos1551-318008-01.bin",
- "destination": "vice/DRIVES/dos1551-318008-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "vice/VIC20/basic-901486-01.bin",
- "destination": "vice/VIC20/basic-901486-01.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "vice/VIC20/kernal.901486-07.bin",
- "destination": "vice/VIC20/kernal.901486-07.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "vice/VIC20/kernal.901486-06.bin",
- "destination": "vice/VIC20/kernal.901486-06.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "vice/VIC20/kernal.901486-02.bin",
- "destination": "vice/VIC20/kernal.901486-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "vice/VIC20/chargen-901460-03.bin",
- "destination": "vice/VIC20/chargen-901460-03.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "vice/VIC20/chargen-901460-02.bin",
- "destination": "vice/VIC20/chargen-901460-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "kernal.901486-02.bin",
- "destination": "kernal.901486-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "commodore-vic20",
- "name": "chargen-901460-02.bin",
- "destination": "chargen-901460-02.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "crvision",
- "name": "crvision.zip",
- "destination": "crvision.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "crvision",
- "name": "fnvision.zip",
- "destination": "fnvision.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "crvision",
- "name": "lasr2001.zip",
- "destination": "lasr2001.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "crvision",
- "name": "manager.zip",
- "destination": "manager.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ctf",
- "name": "pak0.pak",
- "destination": "ctf/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent",
- "name": "descent.hog",
- "destination": "descent.hog",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent",
- "name": "descent.pig",
- "destination": "descent.pig",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent",
- "name": "d1xr-briefings-ger.dxa",
- "destination": "d1x-rebirth/d1xr-briefings-ger.dxa",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent",
- "name": "d1xr-mac-demo-sounds.dxa",
- "destination": "d1x-rebirth/d1xr-mac-demo-sounds.dxa",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent",
- "name": "d1xr-opl3-music.dxa",
- "destination": "d1x-rebirth/d1xr-opl3-music.dxa",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent",
- "name": "editor.dxa",
- "destination": "d1x-rebirth/editor.dxa",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "descent2.hog",
- "destination": "descent2.hog",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "descent2.ham",
- "destination": "descent2.ham",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "groupa.pig",
- "destination": "groupa.pig",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "alien1.pig",
- "destination": "alien1.pig",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "alien2.pig",
- "destination": "alien2.pig",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "fire.pig",
- "destination": "fire.pig",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "ice.pig",
- "destination": "ice.pig",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "water.pig",
- "destination": "water.pig",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "descent2.s22",
- "destination": "descent2.s22",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "descent2.s11",
- "destination": "descent2.s11",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "d2x.hog",
- "destination": "missions/d2x.hog",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "intro-h.mvl",
- "destination": "intro-h.mvl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "robots-h.mvl",
- "destination": "robots-h.mvl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "other-h.mvl",
- "destination": "other-h.mvl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "d2xr-briefings-ger.dxa",
- "destination": "d2x-rebirth/d2xr-briefings-ger.dxa",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "d2xr-opl3-music.dxa",
- "destination": "d2x-rebirth/d2xr-opl3-music.dxa",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "descent2",
- "name": "editor.dxa",
- "destination": "d2x-rebirth/editor.dxa",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon32",
- "name": "d32.rom",
- "destination": "d32.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "dragon64.zip",
- "destination": "dragon64.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "d64_1.rom",
- "destination": "d64_1.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "d64_2.rom",
- "destination": "d64_2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "d200e_1.rom",
- "destination": "d200e_1.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "d200e_2.rom",
- "destination": "d200e_2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "d200e_26.rom",
- "destination": "d200e_26.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "alpha-boot-v1.0.rom",
- "destination": "alpha-boot-v1.0.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "alpha-boot-v0.4.rom",
- "destination": "alpha-boot-v0.4.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "alpha-basic.rom",
- "destination": "alpha-basic.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "ddos40.rom",
- "destination": "ddos40.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "ddos10.rom",
- "destination": "ddos10.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "dplus49b.rom",
- "destination": "dplus49b.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "dplus48.rom",
- "destination": "dplus48.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "sdose6.rom",
- "destination": "sdose6.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "dragon64",
- "name": "delta2.rom",
- "destination": "delta2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "duke3d",
- "name": "NWINTER.GRP",
- "destination": "NWINTER.GRP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "duke3d",
- "name": "penthous.zip",
- "destination": "penthous.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "duke3d",
- "name": "PENTP.GRP",
- "destination": "PENTP.GRP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "efo-cedar-magnet",
- "name": "cedmag.zip",
- "destination": "cedmag.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "eighting-zn1",
- "name": "psarc95.zip",
- "destination": "psarc95.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "eighting-zn1",
- "name": "coh1002e.zip",
- "destination": "coh1002e.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "electron",
- "name": "electron.zip",
- "destination": "electron.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "electron",
- "name": "electron64.zip",
- "destination": "electron64.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "electron",
- "name": "electron_plus1.zip",
- "destination": "electron_plus1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "electron",
- "name": "electron_plus3.zip",
- "destination": "electron_plus3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "enterprise-128",
- "name": "exdos14isdos10uk.rom",
- "destination": "ep128emu/roms/exdos14isdos10uk.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "enterprise-128",
- "name": "epdos16f.rom",
- "destination": "ep128emu/roms/epdos16f.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "entex-advision",
- "name": "advision.zip",
- "destination": "advision.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "exidy-maxaflex",
- "name": "maxaflex.zip",
- "destination": "maxaflex.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fm7",
- "name": "fm7.zip",
- "destination": "fm7.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fm7",
- "name": "fm77av.zip",
- "destination": "fm77av.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fm7",
- "name": "fmnew7.zip",
- "destination": "fmnew7.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fmtowns",
- "name": "fmtowns.zip",
- "destination": "geartowns/fmtowns.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fmtowns",
- "name": "fmtownsux.zip",
- "destination": "geartowns/fmtownsux.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fmtowns",
- "name": "fmtmarty.zip",
- "destination": "geartowns/fmtmarty.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fmtowns",
- "name": "fmtownshr.zip",
- "destination": "geartowns/fmtownshr.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "fmtowns",
- "name": "fmtownsftv.zip",
- "destination": "geartowns/fmtownsftv.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "gamate",
- "name": "gamate.zip",
- "destination": "gamate.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "gamepark-gp32",
- "name": "gp32.zip",
- "destination": "gp32.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "gamepock",
- "name": "gamepock.zip",
- "destination": "gamepock.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "hartung-game-master",
- "name": "gmaster.zip",
- "destination": "gmaster.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "hyper-neogeo64",
- "name": "hng64.zip",
- "destination": "hng64.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "imax-macs",
- "name": "macsbios.zip",
- "destination": "macsbios.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "itech-eagle",
- "name": "iteagle.zip",
- "destination": "iteagle.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "Animations/",
- "destination": "jazz2/Content/Animations/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "Metadata/",
- "destination": "jazz2/Content/Metadata/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "Translations/",
- "destination": "jazz2/Content/Translations/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "Anims.j2a",
- "destination": "jazz2/Source/Anims.j2a",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "AnimsSw.j2a",
- "destination": "jazz2/Source/AnimsSw.j2a",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "Data.j2d",
- "destination": "jazz2/Source/Data.j2d",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "prince.j2e",
- "destination": "jazz2/Source/prince.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "rescue.j2e",
- "destination": "jazz2/Source/rescue.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "flash.j2e",
- "destination": "jazz2/Source/flash.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "monk.j2e",
- "destination": "jazz2/Source/monk.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "share.j2e",
- "destination": "jazz2/Source/share.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "xmas98.j2e",
- "destination": "jazz2/Source/xmas98.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "xmas99.j2e",
- "destination": "jazz2/Source/xmas99.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "secretf.j2e",
- "destination": "jazz2/Source/secretf.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "home.j2e",
- "destination": "jazz2/Source/home.j2e",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "share1.j2l",
- "destination": "jazz2/Source/share1.j2l",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "share2.j2l",
- "destination": "jazz2/Source/share2.j2l",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "share3.j2l",
- "destination": "jazz2/Source/share3.j2l",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "sharectf.j2l",
- "destination": "jazz2/Source/sharectf.j2l",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "sharect2.j2l",
- "destination": "jazz2/Source/sharect2.j2l",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "sharetrs.j2l",
- "destination": "jazz2/Source/sharetrs.j2l",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "labrat1n.j2t",
- "destination": "jazz2/Source/labrat1n.j2t",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "psych2.j2t",
- "destination": "jazz2/Source/psych2.j2t",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "diam2.j2t",
- "destination": "jazz2/Source/diam2.j2t",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "menu.j2b",
- "destination": "jazz2/Source/menu.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "bonus2.j2b",
- "destination": "jazz2/Source/bonus2.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "bonus3.j2b",
- "destination": "jazz2/Source/bonus3.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "intro.j2b",
- "destination": "jazz2/Source/intro.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "ending.j2b",
- "destination": "jazz2/Source/ending.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "labrat.j2b",
- "destination": "jazz2/Source/labrat.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "funkyg.j2b",
- "destination": "jazz2/Source/funkyg.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "diamond.j2b",
- "destination": "jazz2/Source/diamond.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "boss2.j2b",
- "destination": "jazz2/Source/boss2.j2b",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "intro.j2v",
- "destination": "jazz2/Source/intro.j2v",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "jazz-jackrabbit-2",
- "name": "ending.j2v",
- "destination": "jazz2/Source/ending.j2v",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "konami-gv",
- "name": "konamigv.zip",
- "destination": "konamigv.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "konami-gx",
- "name": "konamigx.zip",
- "destination": "konamigx.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "konami-twinkle",
- "name": "gq863.zip",
- "destination": "gq863.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "konami-viper",
- "name": "kviper.zip",
- "destination": "kviper.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "laser310",
- "name": "laser310.zip",
- "destination": "laser310.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "laseractive",
- "name": "pac-n1.bin",
- "destination": "pac-n1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "laseractive",
- "name": "pce-lp1.bin",
- "destination": "pce-lp1.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "laseractive",
- "name": "pac-n10.bin",
- "destination": "pac-n10.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mattel-aquarius",
- "name": "aquarius.zip",
- "destination": "aquarius.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mattel-aquarius",
- "name": "aquarius2.zip",
- "destination": "aquarius2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mattel-aquarius",
- "name": "aquarius_ar.zip",
- "destination": "aquarius_ar.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mc10",
- "name": "mc10.zip",
- "destination": "mc10.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mc10",
- "name": "alice.zip",
- "destination": "alice.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mc10",
- "name": "mc10.rom",
- "destination": "mc10.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mc10",
- "name": "alice.rom",
- "destination": "alice.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "microsoft-xbox",
- "name": "mcpx_1.0.bin",
- "destination": "mcpx_1.0.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "microsoft-xbox",
- "name": "Complex_4627.bin",
- "destination": "Complex_4627.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "microsoft-xbox",
- "name": "xbox_eeprom.bin",
- "destination": "xbox_eeprom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "microsoft-xbox",
- "name": "xbox_hdd.qcow2",
- "destination": "xbox_hdd.qcow2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "midway-mcr",
- "name": "ssio.zip",
- "destination": "ssio.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "midway-mcr",
- "name": "twotiger.zip",
- "destination": "fbneo/samples/twotiger.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mz2000",
- "name": "mz2000.zip",
- "destination": "mz2000.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mz2500",
- "name": "mz2500.zip",
- "destination": "mz2500.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mz700",
- "name": "mz700.zip",
- "destination": "mz700.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mz800",
- "name": "mz800.zip",
- "destination": "mz800.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mz80k",
- "name": "mz80kj.zip",
- "destination": "mz80kj.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "mz80k",
- "name": "mz80k.zip",
- "destination": "mz80k.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nam",
- "name": "NAM.GRP",
- "destination": "NAM.GRP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "namco-system246",
- "name": "sys246.zip",
- "destination": "sys246.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "namco-system256",
- "name": "sys256.zip",
- "destination": "sys256.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "namco-system573",
- "name": "sys573.zip",
- "destination": "sys573.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "napalm",
- "name": "NAPALM.GRP",
- "destination": "NAPALM.GRP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nec-pc-engine-cd",
- "name": "[BIOS] Super CD-ROM System (Japan) (v3.0).pce",
- "destination": "[BIOS] Super CD-ROM System (Japan) (v3.0).pce",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nec-pc-engine-cd",
- "name": "[BIOS] Games Express CD Card (Japan).pce",
- "destination": "[BIOS] Games Express CD Card (Japan).pce",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ngage",
- "name": "SYM.ROM",
- "destination": "eka2l1/firmware/SYM.ROM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "keys.txt",
- "destination": "sysdata/keys.txt",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "shared_font.bin",
- "destination": "sysdata/shared_font.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "seeddb.bin",
- "destination": "sysdata/seeddb.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "otp.bin",
- "destination": "sysdata/otp.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "movable.sed",
- "destination": "nand/private/movable.sed",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "SecureInfo_A",
- "destination": "nand/rw/sys/SecureInfo_A",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "LocalFriendCodeSeed_B",
- "destination": "nand/rw/sys/LocalFriendCodeSeed_B",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "aes_keys.txt",
- "destination": "Citra/sysdata/aes_keys.txt",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-3ds",
- "name": "boot9.bin",
- "destination": "Citra/sysdata/boot9.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-aleck64",
- "name": "aleck64.zip",
- "destination": "aleck64.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-nss",
- "name": "nss.zip",
- "destination": "nss.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-playch10",
- "name": "playch10.zip",
- "destination": "playch10.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-sfcbox",
- "name": "sfcbox.zip",
- "destination": "sfcbox.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-sfcbox",
- "name": "KROM1.BIN",
- "destination": "KROM1.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-sfcbox",
- "name": "MB90082.BIN",
- "destination": "MB90082.BIN",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "keys.txt",
- "destination": "Cemu/keys.txt",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "otp.bin",
- "destination": "Cemu/otp.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "seeprom.bin",
- "destination": "Cemu/seeprom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "CafeCn.ttf",
- "destination": "Cemu/resources/sharedFonts/CafeCn.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "CafeKr.ttf",
- "destination": "Cemu/resources/sharedFonts/CafeKr.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "CafeStd.ttf",
- "destination": "Cemu/resources/sharedFonts/CafeStd.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "CafeTw.ttf",
- "destination": "Cemu/resources/sharedFonts/CafeTw.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "shareddata.bin",
- "destination": "Cemu/shareddata.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "snd_user.rpl",
- "destination": "Cemu/cafeLibs/snd_user.rpl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "snduser2.rpl",
- "destination": "Cemu/cafeLibs/snduser2.rpl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "swkbd.rpl",
- "destination": "Cemu/cafeLibs/swkbd.rpl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "erreula.rpl",
- "destination": "Cemu/cafeLibs/erreula.rpl",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "nintendo-wiiu",
- "name": "OfflineDB.zar",
- "destination": "Cemu/resources/miiverse/OfflineDB.zar",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "omicron",
- "name": "omicron.jar",
- "destination": "omicron/omicron.jar",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc60",
- "name": "pc6001.zip",
- "destination": "pc6001.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc60",
- "name": "pc6001a.zip",
- "destination": "pc6001a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc60",
- "name": "pc6001mk2.zip",
- "destination": "pc6001mk2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc60",
- "name": "pc6601.zip",
- "destination": "pc6601.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc60",
- "name": "pc6001mk2sr.zip",
- "destination": "pc6001mk2sr.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc60",
- "name": "pc6601sr.zip",
- "destination": "pc6601sr.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc80",
- "name": "pc8001.zip",
- "destination": "pc8001.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pc80",
- "name": "pc8001mk2sr.zip",
- "destination": "pc8001mk2sr.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pcw",
- "name": "pcw8256.zip",
- "destination": "pcw8256.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pcw",
- "name": "pcw9512.zip",
- "destination": "pcw9512.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pegasus",
- "name": "pegasus.zip",
- "destination": "pegasus.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "philips-vg5k",
- "name": "vg5k.zip",
- "destination": "vg5k.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "pioneer-laseractive",
- "name": "laseractive_dyw_1322a.bin",
- "destination": "laseractive_dyw_1322a.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake",
- "name": "pak0.pak",
- "destination": "id1/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake",
- "name": "pak1.pak",
- "destination": "id1/pak1.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake",
- "name": "pak0.pak",
- "destination": "hipnotic/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake",
- "name": "pak0.pak",
- "destination": "rogue/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake",
- "name": "pak0.pak",
- "destination": "dopa/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake",
- "name": "pak1.pak",
- "destination": "quoth/pak1.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake",
- "name": "pak2.pak",
- "destination": "quoth/pak2.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake2",
- "name": "pak0.pak",
- "destination": "baseq2/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake2",
- "name": "pak1.pak",
- "destination": "baseq2/pak1.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake2",
- "name": "pak2.pak",
- "destination": "baseq2/pak2.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake3",
- "name": "pak0.pk3",
- "destination": "baseq3/pak0.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "quake3",
- "name": "pak0.pk3",
- "destination": "demoq3/pak0.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "real3d-pro1000",
- "name": "pro1000.zip",
- "destination": "pro1000.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "real3d-pro1000",
- "name": "3dlogo.cmem",
- "destination": "Assets/3dlogo.cmem",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "real3d-pro1000",
- "name": "3dlogo.pmem",
- "destination": "Assets/3dlogo.pmem",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "riscv",
- "name": "fw_payload.bin",
- "destination": "rvvm/fw_payload.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "riscv",
- "name": "Image",
- "destination": "rvvm/Image",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rogue",
- "name": "pak0.pak",
- "destination": "rogue/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "easyrpg.soundfont",
- "destination": "easyrpg.soundfont",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "wildmidi.cfg",
- "destination": "wildmidi.cfg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "RPG Maker 2000 RTP",
- "destination": "rtp/2000/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "RPG Maker 2003 RTP",
- "destination": "rtp/2003/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "Standard",
- "destination": "mkxp-z/RTP/Standard/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "RPGVX",
- "destination": "mkxp-z/RTP/RPGVX/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "RPGVXAce",
- "destination": "mkxp-z/RTP/RPGVXAce/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "Fonts",
- "destination": "mkxp-z/Fonts/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "Preload",
- "destination": "mkxp-z/Scripts/Preload/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "rpgmaker",
- "name": "Postload",
- "destination": "mkxp-z/Scripts/Postload/",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sammy-medal",
- "name": "sammymdl.zip",
- "destination": "sammymdl.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "abc.mkf",
- "destination": "sdlpal/abc.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "ball.mkf",
- "destination": "sdlpal/ball.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "data.mkf",
- "destination": "sdlpal/data.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "f.mkf",
- "destination": "sdlpal/f.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "fbp.mkf",
- "destination": "sdlpal/fbp.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "fire.mkf",
- "destination": "sdlpal/fire.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "gop.mkf",
- "destination": "sdlpal/gop.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "map.mkf",
- "destination": "sdlpal/map.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "mgo.mkf",
- "destination": "sdlpal/mgo.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "pat.mkf",
- "destination": "sdlpal/pat.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "rgm.mkf",
- "destination": "sdlpal/rgm.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "rng.mkf",
- "destination": "sdlpal/rng.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "sss.mkf",
- "destination": "sdlpal/sss.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "m.msg",
- "destination": "sdlpal/m.msg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "word.dat",
- "destination": "sdlpal/word.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "desc.dat",
- "destination": "sdlpal/desc.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "wor16.asc",
- "destination": "sdlpal/wor16.asc",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "wor16.fon",
- "destination": "sdlpal/wor16.fon",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "voc.mkf",
- "destination": "sdlpal/voc.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "sounds.mkf",
- "destination": "sdlpal/sounds.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "mus.mkf",
- "destination": "sdlpal/mus.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "midi.mkf",
- "destination": "sdlpal/midi.mkf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "1.avi",
- "destination": "sdlpal/1.avi",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "2.avi",
- "destination": "sdlpal/2.avi",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "3.avi",
- "destination": "sdlpal/3.avi",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "4.avi",
- "destination": "sdlpal/4.avi",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "5.avi",
- "destination": "sdlpal/5.avi",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sdlpal",
- "name": "6.avi",
- "destination": "sdlpal/6.avi",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-32x",
- "name": "32X_G_BIOS.bin",
- "destination": "32X_G_BIOS.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-32x",
- "name": "32X_M_BIOS.bin",
- "destination": "32X_M_BIOS.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-32x",
- "name": "32X_S_BIOS.bin",
- "destination": "32X_S_BIOS.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-ai",
- "name": "segaai.zip",
- "destination": "segaai.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-ai",
- "name": "segaai_soundbox.zip",
- "destination": "segaai_soundbox.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-beena",
- "name": "beena.zip",
- "destination": "beena.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-chihiro",
- "name": "chihiro.zip",
- "destination": "chihiro.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-hikaru",
- "name": "hikaru.zip",
- "destination": "hikaru.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-lindbergh",
- "name": "lindbios.zip",
- "destination": "lindbios.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-megaplay",
- "name": "megaplay.zip",
- "destination": "megaplay.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-megatech",
- "name": "megatech.zip",
- "destination": "megatech.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-model3",
- "name": "Music.xml",
- "destination": "supermodel/Music.xml",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-naomi",
- "name": "naomi_boot.bin",
- "destination": "dc/naomi_boot.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-naomigd",
- "name": "naomigd.zip",
- "destination": "naomigd.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10381b.132",
- "destination": "cannonball/epr-10381b.132",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10383b.117",
- "destination": "cannonball/epr-10383b.117",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10380b.133",
- "destination": "cannonball/epr-10380b.133",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10382b.118",
- "destination": "cannonball/epr-10382b.118",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10327a.76",
- "destination": "cannonball/epr-10327a.76",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10329a.58",
- "destination": "cannonball/epr-10329a.58",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10328a.75",
- "destination": "cannonball/epr-10328a.75",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10330a.57",
- "destination": "cannonball/epr-10330a.57",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10268.99",
- "destination": "cannonball/opr-10268.99",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10232.102",
- "destination": "cannonball/opr-10232.102",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10267.100",
- "destination": "cannonball/opr-10267.100",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10231.103",
- "destination": "cannonball/opr-10231.103",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10266.101",
- "destination": "cannonball/opr-10266.101",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10230.104",
- "destination": "cannonball/opr-10230.104",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10185.11",
- "destination": "cannonball/opr-10185.11",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10186.47",
- "destination": "cannonball/opr-10186.47",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10371.9",
- "destination": "cannonball/mpr-10371.9",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10373.10",
- "destination": "cannonball/mpr-10373.10",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10375.11",
- "destination": "cannonball/mpr-10375.11",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10377.12",
- "destination": "cannonball/mpr-10377.12",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10372.13",
- "destination": "cannonball/mpr-10372.13",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10374.14",
- "destination": "cannonball/mpr-10374.14",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10376.15",
- "destination": "cannonball/mpr-10376.15",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "mpr-10378.16",
- "destination": "cannonball/mpr-10378.16",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10187.88",
- "destination": "cannonball/epr-10187.88",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10193.66",
- "destination": "cannonball/opr-10193.66",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10192.67",
- "destination": "cannonball/opr-10192.67",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10191.68",
- "destination": "cannonball/opr-10191.68",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10190.69",
- "destination": "cannonball/opr-10190.69",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10189.70",
- "destination": "cannonball/opr-10189.70",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10188.71",
- "destination": "cannonball/opr-10188.71",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "opr-10188.71f",
- "destination": "cannonball/opr-10188.71f",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10380.133",
- "destination": "cannonball/epr-10380.133",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10382.118",
- "destination": "cannonball/epr-10382.118",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10381.132",
- "destination": "cannonball/epr-10381.132",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10383.117",
- "destination": "cannonball/epr-10383.117",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10327.76",
- "destination": "cannonball/epr-10327.76",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10329.58",
- "destination": "cannonball/epr-10329.58",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10328.75",
- "destination": "cannonball/epr-10328.75",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-outrun",
- "name": "epr-10330.57",
- "destination": "cannonball/epr-10330.57",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-stv",
- "name": "epr-20091.ic8",
- "destination": "epr-20091.ic8",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-stv",
- "name": "epr-17952a.ic8",
- "destination": "epr-17952a.ic8",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-stv",
- "name": "epr-17954a.ic8",
- "destination": "epr-17954a.ic8",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-stv",
- "name": "epr-19854.ic8",
- "destination": "epr-19854.ic8",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-triforce",
- "name": "segaboot.gcm",
- "destination": "dolphin-emu/Sys/Triforce/segaboot.gcm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sega-triforce",
- "name": "triforce.zip",
- "destination": "triforce.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "snk-neogeo-mvs",
- "name": "irrmaze.zip",
- "destination": "irrmaze.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sony-pocketstation",
- "name": "pocketstation.bin",
- "destination": "pocketstation.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "sunplus-spmp8000",
- "name": "tonelib.bin",
- "destination": "tonelib.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "supracan",
- "name": "supracan.zip",
- "destination": "supracan.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "supracan",
- "name": "umc6650.zip",
- "destination": "umc6650.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "taito-fx1",
- "name": "taitofx1.zip",
- "destination": "taitofx1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "taito-fx1",
- "name": "coh1000t.zip",
- "destination": "coh1000t.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "taito-gnet",
- "name": "coh3002t.zip",
- "destination": "coh3002t.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "taito-gnet",
- "name": "coh1002t.zip",
- "destination": "coh1002t.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "tandy-vis",
- "name": "vis.zip",
- "destination": "vis.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "teamarena",
- "name": "pak0.pk3",
- "destination": "missionpack/pak0.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "teamarena",
- "name": "pak1.pk3",
- "destination": "missionpack/pak1.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "teamarena",
- "name": "pak2.pk3",
- "destination": "missionpack/pak2.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "teamarena",
- "name": "pak3.pk3",
- "destination": "missionpack/pak3.pk3",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "tecmo-tps",
- "name": "tps.zip",
- "destination": "tps.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "tecmo-tps",
- "name": "coh1002m.zip",
- "destination": "coh1002m.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_4a.zip",
- "destination": "ti99_4a.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_speech.zip",
- "destination": "ti99_speech.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_4.zip",
- "destination": "ti99_4.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_fdc.zip",
- "destination": "ti99_fdc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_bwg.zip",
- "destination": "ti99_bwg.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_ccdcc.zip",
- "destination": "ti99_ccdcc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_ccfdc.zip",
- "destination": "ti99_ccfdc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_rs232.zip",
- "destination": "ti99_rs232.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_evpc.zip",
- "destination": "ti99_evpc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_hfdc.zip",
- "destination": "ti99_hfdc.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_pcode.zip",
- "destination": "ti99_pcode.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_ddcc1.zip",
- "destination": "ti99_ddcc1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_myarcmem.zip",
- "destination": "ti99_myarcmem.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_tipi.zip",
- "destination": "ti99_tipi.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_whtscsi.zip",
- "destination": "ti99_whtscsi.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_arcturus.zip",
- "destination": "ti99_arcturus.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti99_gkracker.zip",
- "destination": "ti99_gkracker.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "TI-994A.ctg",
- "destination": "TI-994A.ctg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "spchrom.bin",
- "destination": "spchrom.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti-disk.ctg",
- "destination": "ti-disk.ctg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "Gram Kracker.ctg",
- "destination": "Gram Kracker.ctg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "ti-pcard.ctg",
- "destination": "ti-pcard.ctg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ti99",
- "name": "cf7+.ctg",
- "destination": "cf7+.ctg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "tiger-game-com",
- "name": "gamecom.zip",
- "destination": "gamecom.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRG1.GRF",
- "destination": "openttd/baseset/TRG1.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGI.GRF",
- "destination": "openttd/baseset/TRGI.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGC.GRF",
- "destination": "openttd/baseset/TRGC.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGH.GRF",
- "destination": "openttd/baseset/TRGH.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGT.GRF",
- "destination": "openttd/baseset/TRGT.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRG1R.GRF",
- "destination": "openttd/baseset/TRG1R.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGIR.GRF",
- "destination": "openttd/baseset/TRGIR.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGCR.GRF",
- "destination": "openttd/baseset/TRGCR.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGHR.GRF",
- "destination": "openttd/baseset/TRGHR.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "TRGTR.GRF",
- "destination": "openttd/baseset/TRGTR.GRF",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "SAMPLE.CAT",
- "destination": "openttd/baseset/SAMPLE.CAT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM.CAT",
- "destination": "openttd/baseset/GM.CAT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM-TTO.CAT",
- "destination": "openttd/baseset/GM-TTO.CAT",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT00.GM",
- "destination": "openttd/baseset/GM_TT00.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT01.GM",
- "destination": "openttd/baseset/GM_TT01.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT02.GM",
- "destination": "openttd/baseset/GM_TT02.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT03.GM",
- "destination": "openttd/baseset/GM_TT03.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT04.GM",
- "destination": "openttd/baseset/GM_TT04.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT05.GM",
- "destination": "openttd/baseset/GM_TT05.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT06.GM",
- "destination": "openttd/baseset/GM_TT06.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT07.GM",
- "destination": "openttd/baseset/GM_TT07.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT08.GM",
- "destination": "openttd/baseset/GM_TT08.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT09.GM",
- "destination": "openttd/baseset/GM_TT09.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT10.GM",
- "destination": "openttd/baseset/GM_TT10.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT11.GM",
- "destination": "openttd/baseset/GM_TT11.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT12.GM",
- "destination": "openttd/baseset/GM_TT12.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT13.GM",
- "destination": "openttd/baseset/GM_TT13.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT14.GM",
- "destination": "openttd/baseset/GM_TT14.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT15.GM",
- "destination": "openttd/baseset/GM_TT15.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT16.GM",
- "destination": "openttd/baseset/GM_TT16.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT17.GM",
- "destination": "openttd/baseset/GM_TT17.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT18.GM",
- "destination": "openttd/baseset/GM_TT18.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT19.GM",
- "destination": "openttd/baseset/GM_TT19.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT20.GM",
- "destination": "openttd/baseset/GM_TT20.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "transport-tycoon-deluxe",
- "name": "GM_TT21.GM",
- "destination": "openttd/baseset/GM_TT21.GM",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "trs80.zip",
- "destination": "trs80.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "trs80l2.zip",
- "destination": "trs80l2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "eg3003.zip",
- "destination": "eg3003.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "sys80.zip",
- "destination": "sys80.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "ht1080z.zip",
- "destination": "ht1080z.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "ht1080z2.zip",
- "destination": "ht1080z2.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "ht108064.zip",
- "destination": "ht108064.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "trs80m3.zip",
- "destination": "trs80m3.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "trs80m4.zip",
- "destination": "trs80m4.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "trs80m4p.zip",
- "destination": "trs80m4p.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "cp500.zip",
- "destination": "cp500.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "level2.rom",
- "destination": "level2.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "model3.rom",
- "destination": "model3.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "trs80",
- "name": "model4p.rom",
- "destination": "model4p.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "tutor",
- "name": "tutor.zip",
- "destination": "tutor.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "player.PNG",
- "destination": "SyobonAction/res/player.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "brock.PNG",
- "destination": "SyobonAction/res/brock.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "item.PNG",
- "destination": "SyobonAction/res/item.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "teki.PNG",
- "destination": "SyobonAction/res/teki.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "haikei.PNG",
- "destination": "SyobonAction/res/haikei.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "brock2.PNG",
- "destination": "SyobonAction/res/brock2.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "omake.PNG",
- "destination": "SyobonAction/res/omake.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "omake2.PNG",
- "destination": "SyobonAction/res/omake2.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "syobon3.PNG",
- "destination": "SyobonAction/res/syobon3.PNG",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "sazanami-gothic.ttf",
- "destination": "SyobonAction/res/sazanami-gothic.ttf",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "field.ogg",
- "destination": "SyobonAction/BGM/field.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "dungeon.ogg",
- "destination": "SyobonAction/BGM/dungeon.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "star4.ogg",
- "destination": "SyobonAction/BGM/star4.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "castle.ogg",
- "destination": "SyobonAction/BGM/castle.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "puyo.ogg",
- "destination": "SyobonAction/BGM/puyo.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "jump.ogg",
- "destination": "SyobonAction/SE/jump.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "brockbreak.ogg",
- "destination": "SyobonAction/SE/brockbreak.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "coin.ogg",
- "destination": "SyobonAction/SE/coin.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "humi.ogg",
- "destination": "SyobonAction/SE/humi.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "koura.ogg",
- "destination": "SyobonAction/SE/koura.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "dokan.ogg",
- "destination": "SyobonAction/SE/dokan.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "brockkinoko.ogg",
- "destination": "SyobonAction/SE/brockkinoko.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "powerup.ogg",
- "destination": "SyobonAction/SE/powerup.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "kirra.ogg",
- "destination": "SyobonAction/SE/kirra.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "goal.ogg",
- "destination": "SyobonAction/SE/goal.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "death.ogg",
- "destination": "SyobonAction/SE/death.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "Pswitch.ogg",
- "destination": "SyobonAction/SE/Pswitch.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "jumpBlock.ogg",
- "destination": "SyobonAction/SE/jumpBlock.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "hintBlock.ogg",
- "destination": "SyobonAction/SE/hintBlock.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "4-clear.ogg",
- "destination": "SyobonAction/SE/4-clear.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "allclear.ogg",
- "destination": "SyobonAction/SE/allclear.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "unknown",
- "name": "tekifire.ogg",
- "destination": "SyobonAction/SE/tekifire.ogg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ur-quan-masters",
- "name": "uqm-0.8.0-3domusic.uqm",
- "destination": "uqm/content/addons/uqm-0.8.0-3domusic.uqm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ur-quan-masters",
- "name": "uqm-0.8.0-voice.uqm",
- "destination": "uqm/content/addons/uqm-0.8.0-voice.uqm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ur-quan-masters",
- "name": "uqm-remix-disc1.uqm",
- "destination": "uqm/content/addons/uqm-remix-disc1.uqm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ur-quan-masters",
- "name": "uqm-remix-disc2.uqm",
- "destination": "uqm/content/addons/uqm-remix-disc2.uqm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ur-quan-masters",
- "name": "uqm-remix-disc3.uqm",
- "destination": "uqm/content/addons/uqm-remix-disc3.uqm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ur-quan-masters",
- "name": "uqm-remix-disc4-1.uqm",
- "destination": "uqm/content/addons/uqm-remix-disc4-1.uqm",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vectrex",
- "name": "vectrex.zip",
- "destination": "vectrex.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "videosystem-zn1",
- "name": "coh1002v.zip",
- "destination": "coh1002v.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "bios.cof",
- "destination": "nuance/bios.cof",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "minibios.cof",
- "destination": "nuance/minibios.cof",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "minibiosX.cof",
- "destination": "nuance/minibiosX.cof",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "nuance.cfg",
- "destination": "nuance/nuance.cfg",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "video_generic.vs",
- "destination": "nuance/video_generic.vs",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "video_m32_o32.fs",
- "destination": "nuance/video_m32_o32.fs",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "video_m32_o32_crt.fs",
- "destination": "nuance/video_m32_o32_crt.fs",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vm-labs-nuon",
- "name": "FlashEEPROM.bin",
- "destination": "FlashEEPROM.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vtech-socrates",
- "name": "socrates.zip",
- "destination": "socrates.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vtech-vsmile",
- "name": "vsmile.zip",
- "destination": "vsmile.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "vvvvvv",
- "name": "gamecontrollerdb.txt",
- "destination": "gamecontrollerdb.txt",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-cc800",
- "name": "obj.bin",
- "destination": "WQXEmu/cc800/obj.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-cc800",
- "name": "cc800.fls",
- "destination": "WQXEmu/cc800/cc800.fls",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc1020",
- "name": "obj_lu.bin",
- "destination": "WQXEmu/nc1020/obj_lu.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc1020",
- "name": "nc1020.fls",
- "destination": "WQXEmu/nc1020/nc1020.fls",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc2000",
- "name": "nc2000.nor",
- "destination": "WQXEmu/nc2000/nc2000.nor",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc2000",
- "name": "nc2000.nand",
- "destination": "WQXEmu/nc2000/nc2000.nand",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc2000",
- "name": "nc2000.nand0",
- "destination": "WQXEmu/nc2000/nc2000.nand0",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc3000",
- "name": "nc3000.nor",
- "destination": "WQXEmu/nc3000/nc3000.nor",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc3000",
- "name": "nc3000.nand",
- "destination": "WQXEmu/nc3000/nc3000.nand",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-nc3000",
- "name": "nc3000.nand0",
- "destination": "WQXEmu/nc3000/nc3000.nand0",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-pc1000",
- "name": "pc1000.rom",
- "destination": "WQXEmu/pc1000/pc1000.rom",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "wenquxing-pc1000",
- "name": "pc1000.nor",
- "destination": "WQXEmu/pc1000/pc1000.nor",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ww2gi",
- "name": "WW2GI.GRP",
- "destination": "WW2GI.GRP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "ww2gi",
- "name": "PLATOONL.GRP",
- "destination": "PLATOONL.GRP",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "xatrix",
- "name": "pak0.pak",
- "destination": "xatrix/pak0.pak",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "xbox",
- "name": "mcpx_1.0.bin",
- "destination": "mcpx_1.0.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "xbox",
- "name": "cromwell_1024.bin",
- "destination": "cromwell_1024.bin",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "xegs",
- "name": "xegs.zip",
- "destination": "xegs.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "xrick",
- "name": "data.zip",
- "destination": "data.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "xrick",
- "name": "xrick/data.zip",
- "destination": "xrick/data.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "zcdata.dat",
- "destination": "zc210/zcdata.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "default.sf2",
- "destination": "zc210/sf2/default.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom0.sf2",
- "destination": "zc210/sf2/custom0.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom1.sf2",
- "destination": "zc210/sf2/custom1.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom2.sf2",
- "destination": "zc210/sf2/custom2.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom3.sf2",
- "destination": "zc210/sf2/custom3.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom4.sf2",
- "destination": "zc210/sf2/custom4.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom5.sf2",
- "destination": "zc210/sf2/custom5.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom6.sf2",
- "destination": "zc210/sf2/custom6.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom7.sf2",
- "destination": "zc210/sf2/custom7.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom8.sf2",
- "destination": "zc210/sf2/custom8.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "custom9.sf2",
- "destination": "zc210/sf2/custom9.sf2",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "LinkTothePast.dat",
- "destination": "zc210/sfx/LinkTothePast.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "LinksAwakening.dat",
- "destination": "zc210/sfx/LinksAwakening.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "BSZelda.dat",
- "destination": "zc210/sfx/BSZelda.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "Metroid.dat",
- "destination": "zc210/sfx/Metroid.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "Tortuga.dat",
- "destination": "zc210/sfx/Tortuga.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "Castle.dat",
- "destination": "zc210/sfx/Castle.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "Elise.dat",
- "destination": "zc210/sfx/Elise.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "SwangSong.dat",
- "destination": "zc210/sfx/SwangSong.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zc210",
- "name": "Custom.dat",
- "destination": "zc210/sfx/Custom.dat",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zn1-acclaim",
- "name": "acpsx.zip",
- "destination": "acpsx.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zn1-capcom",
- "name": "cpzn1.zip",
- "destination": "cpzn1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zn1-taito",
- "name": "taitofx1.zip",
- "destination": "taitofx1.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zn1-tecmo",
- "name": "tps.zip",
- "destination": "tps.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zn1-video-system",
- "name": "sncwgltd.zip",
- "destination": "sncwgltd.zip",
- "field": null,
- "old": null,
- "new": {}
- },
- {
- "kind": "added",
- "system": "zn2-capcom",
- "name": "cpzn2.zip",
- "destination": "cpzn2.zip",
- "field": null,
- "old": null,
- "new": {}
}
],
"hashes_corrected": [],
diff --git a/scripts/exporter/retropie_exporter.py b/scripts/exporter/retropie_exporter.py
index 1f2bc27a..802ad57f 100644
--- a/scripts/exporter/retropie_exporter.py
+++ b/scripts/exporter/retropie_exporter.py
@@ -316,6 +316,7 @@ class Exporter(BaseExporter):
str(a).lower() for a in (fe.native("aliases", []) or [])
)
self._skipped: dict[str, list[str]] = {}
+ self._named: set[int] = set()
produced: dict[str, str] = {}
def skip(reason: str, module: str) -> None:
@@ -360,7 +361,8 @@ class Exporter(BaseExporter):
| {str(a).lower() for a in (fe.native("aliases", []) or [])}) & listed
and (slot := self._slot_of(fe)) is not None
}
- missing = self._in_search_order(self._one_per_slot(candidates, filled))
+ proposed = self._one_per_slot(candidates, filled)
+ missing = self._in_search_order(proposed)
if not missing:
continue
@@ -383,9 +385,21 @@ class Exporter(BaseExporter):
f'rp_module_help="{new_help}"',
1,
)
+ self._named.update(id(fe) for fe in proposed)
return produced
+ def lands(self, fe: NativeFile) -> bool:
+ """An addition lands only where a help sentence now names it.
+
+ Every file a profiled core reads is writable in principle, yet the
+ render appends names to a handful of sentences: counting the rest
+ listed 1360 additions for one changed scriptmodule.
+ """
+ if fe.platform is not None:
+ return self.writable(fe)
+ return id(fe) in getattr(self, "_named", set())
+
def outcome(
self,
systems: dict[str, NativeSystem],
diff --git a/tests/test_export_report.py b/tests/test_export_report.py
index 600e8982..780cd982 100644
--- a/tests/test_export_report.py
+++ b/tests/test_export_report.py
@@ -289,6 +289,37 @@ class ReportedChangesAreTheDiff(unittest.TestCase):
}
self.assertEqual(reported_added, added)
+ def test_retropie(self):
+ """Each addition is a name a help sentence gains, and no other: the
+ report counted every file a profiled core reads as added."""
+ from common import load_platform_config, native_layer
+ from exporter import discover_exporters
+ from exporter.baseline import build_native_model
+
+ archive = UPSTREAM_CACHE / "retropie" / "RetroPie-Setup.tar.gz"
+ if not archive.is_file():
+ self.skipTest("no cached original for retropie")
+ config = load_platform_config("retropie", str(ROOT / "platforms"))
+ truth = export_native.current_truth("retropie", config, str(ROOT / "platforms"))
+ scraped = native_layer(config)
+ systems, report = build_native_model(truth, scraped)
+ exporter = discover_exporters()["retropie"]()
+ originals = exporter.unpack(archive.read_bytes())
+ produced = exporter.render(systems, report, originals, scraped)
+ self.assertTrue(produced, "nothing changed, the comparison proves nothing")
+ gained: set[str] = set()
+ for relative, text in produced.items():
+ before = exporter.modules({relative: originals[relative]})[relative][1]
+ after = exporter.modules({relative: text})[relative][1]
+ gained |= exporter._listed(after) - exporter._listed(before)
+ changes = export_native.landed_changes(exporter, systems).records
+ reported = {c["name"].lower() for c in changes if c["kind"] == "added"}
+ self.assertEqual(reported, gained)
+ self.assertEqual(
+ sum(c["kind"] == "added" for c in changes), len(gained),
+ "one name counted under several entries",
+ )
+
class ThePageShowsEachValueBeforeAndAfter(unittest.TestCase):
"""A list of names gave a maintainer nothing to check a correction
From fbf7cb191b441af035ac3f166344639274d18add Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:08:45 +0200
Subject: [PATCH 2/9] fix: keep recalbox composite md5 on archives
Bios.cpp:64-68 hashes a .zip with Zip::Md5Composite, the md5 of its
members in name order. A profile's md5 on an archive is the container's,
so it neither pairs with, corrects nor fills that field, and an archive
addition with only a container md5 is left out.
---
exports/recalbox.json | 38 ++----------------------
exports/recalbox/es_bios.xml | 5 ++--
scripts/exporter/baseline.py | 38 ++++++++++++++++++++++--
tests/test_exporters.py | 57 ++++++++++++++++++++++++++++++++++++
4 files changed, 97 insertions(+), 41 deletions(-)
diff --git a/exports/recalbox.json b/exports/recalbox.json
index a342a215..b5f738f4 100644
--- a/exports/recalbox.json
+++ b/exports/recalbox.json
@@ -7,11 +7,11 @@
"files": [
"es_bios.xml"
],
- "summary": "357 kept, 88 added, 4 hashes corrected, 129 requirements corrected, 527 additions left out, 102 entries found by content not listed",
+ "summary": "357 kept, 87 added, 2 hashes corrected, 129 requirements corrected, 528 additions left out, 102 entries found by content not listed",
"counts": {
"kept": 357,
- "added": 88,
- "not_added": 527,
+ "added": 87,
+ "not_added": 528,
"not_kept": 0
},
"changes": [
@@ -102,18 +102,6 @@
"required": false
}
},
- {
- "kind": "added",
- "system": "amiga600",
- "name": "boot-data.zip",
- "destination": "whdboot/boot-data.zip",
- "field": null,
- "old": null,
- "new": {
- "md5": "9e638f3d531eb7cd82594f49a4cf03b7",
- "required": false
- }
- },
{
"kind": "added",
"system": "amiga600",
@@ -1953,15 +1941,6 @@
"old": true,
"new": false
},
- {
- "kind": "hash_corrected",
- "system": "neogeocd",
- "name": "neocdz.zip",
- "destination": "neocdz.zip",
- "field": "md5",
- "old": "f39572af7584cb5b3f70ae8cc848aba2,389dbeb0cb857c130414747462cf9d71,c85b8132799f1b2ad3754a97947809d2,b9ab07a79997fc044ca164fc72cd5680",
- "new": "b31a246b69493c35194fe0bac120dc37"
- },
{
"kind": "requirement_corrected",
"system": "neogeocd",
@@ -1971,15 +1950,6 @@
"old": true,
"new": false
},
- {
- "kind": "hash_corrected",
- "system": "neogeocd",
- "name": "neocd.zip",
- "destination": "geolith/neocd.zip",
- "field": "md5",
- "old": "3711783a59ef875c31076512e3f9f0e5",
- "new": "006a881532f2caffc3fe9fb5593f2ed5"
- },
{
"kind": "requirement_corrected",
"system": "neogeocd",
@@ -2270,8 +2240,6 @@
}
],
"hashes_corrected": [
- "neogeocd/neocdz.zip md5",
- "neogeocd/neocd.zip md5",
"ti994a/TI-994A.ctg md5",
"ti994a/ti-disk.ctg md5"
],
diff --git a/exports/recalbox/es_bios.xml b/exports/recalbox/es_bios.xml
index 07514c27..ee5b9e89 100644
--- a/exports/recalbox/es_bios.xml
+++ b/exports/recalbox/es_bios.xml
@@ -12,7 +12,6 @@
-
@@ -616,7 +615,7 @@
b4519df27a352c2a6e42e06d31330d91,bf00272e7150b31156a8995d60bf185d,
ca66fd463ef7dcab492a6de8ce5f45eb,f4a125538dfd7a8044e025fc5188fb88,
a3b2c9a69c28ad0bd4ea07877b744bbe,00dad01abdbf8ea9e79ad2fe11bdb182" hashMatchMandatory="false" core="libretro/fbneo,libretro/fba2x,libretro/mame2000,libretro/mame2003,libretro/mame2003-plus,libretro/mame2010,libretro/mame2015" />
-
+
@@ -629,7 +628,7 @@
-
+
diff --git a/scripts/exporter/baseline.py b/scripts/exporter/baseline.py
index 2f79fab6..f55bfb1a 100644
--- a/scripts/exporter/baseline.py
+++ b/scripts/exporter/baseline.py
@@ -61,6 +61,20 @@ def checked_hashes(entry: dict | None) -> dict | None:
return {k: v for k, v in entry.items() if k not in HASH_FIELDS or k in kinds}
+def comparable(entry: dict | None) -> dict:
+ """The entry with only the hashes the truth can be compared with.
+
+ Recalbox hashes a .zip by its members (Bios.cpp:64-68 calls
+ Zip::Md5Composite, which feeds each member's bytes in name order into
+ one md5), never by the container's bytes. Its md5 on an archive is that
+ composite, a digest no profile declares: read as a container md5 it was
+ replaced by geolith's, which Recalbox never computes.
+ """
+ if not entry or entry.get("zip_digest") != "composite":
+ return entry or {}
+ return {k: v for k, v in entry.items() if k != "md5"}
+
+
def is_label(entry: dict) -> bool:
"""A name only content-scanning cores give: no core opens that file.
@@ -104,6 +118,10 @@ class NativeFile:
# For an addition, each core that wants it as (runs standalone, name the
# platform gives it), empty when no core the platform runs is named.
runners: list[tuple[bool, str]] = field(default_factory=list)
+ # The platform reads this file's md5 as a composite of its members
+ # (Recalbox on a .zip): the truth's md5 describes the container and
+ # can be neither compared with it nor written in its place.
+ composite_md5: bool = False
@property
def origin(self) -> str:
@@ -129,7 +147,9 @@ class NativeFile:
truth's crc32 beside Batocera's md5 for bios7.bin is one dump, and
reading it as a contradiction emptied the md5 the frontend checks.
"""
- truth, plat = _field_sets(self._checked_truth), _field_sets(self.platform)
+ truth, plat = _field_sets(self._checked_truth), _field_sets(comparable(self.platform))
+ if self.composite_md5:
+ truth["md5"] = set()
if not any(truth.values()):
return "platform"
if not any(plat.values()):
@@ -152,6 +172,8 @@ class NativeFile:
the divergence is recorded, never silently merged: an emulator that
rejects a file will reject it whatever the platform declares.
"""
+ if field_name == "md5" and self.composite_md5:
+ return _hash_values(self.platform or {}, field_name)
truth_values = _hash_values(self._checked_truth, field_name)
platform_values = _hash_values(self.platform or {}, field_name)
source = self._identity_source()
@@ -186,6 +208,9 @@ class NativeFile:
chosen among those the truth accepts. A field only the truth names
is written when it names one value, which is then that dump's.
"""
+ if field_name == "md5" and self.composite_md5:
+ values = _hash_values(self.platform or {}, field_name)
+ return values[0] if values else ""
source = self._identity_source()
truth_values = _hash_values(self._checked_truth, field_name)
platform_values = _hash_values(self.platform or {}, field_name)
@@ -365,11 +390,13 @@ def by_hash(truth_entry: dict, platform_entry: dict) -> bool:
ours = {v for f in HASH_FIELDS for v in _hash_values(truth_entry, f)}
if not ours:
return False
- return bool(ours & {v for f in HASH_FIELDS for v in _hash_values(platform_entry, f)})
+ theirs = comparable(platform_entry)
+ return bool(ours & {v for f in HASH_FIELDS for v in _hash_values(theirs, f)})
def _contradicts(truth_entry: dict, platform_entry: dict) -> bool:
"""A hash both entries declare, without a value in common."""
+ platform_entry = comparable(platform_entry)
return any(
(ours := set(_hash_values(truth_entry, f)))
and (theirs := set(_hash_values(platform_entry, f)))
@@ -445,6 +472,7 @@ def build_native_model(
systems: dict[str, NativeSystem] = {}
scraped_systems = (scraped or {}).get("systems", {})
+ composite_zips = (scraped or {}).get("zip_digest") == "composite"
# Pass 1: the platform's own file, grouped as the platform groups it.
for sys_key, sys_data in scraped_systems.items():
@@ -467,6 +495,7 @@ def build_native_model(
destination=destination,
native_system=native_id,
platform=file_entry,
+ composite_md5=file_entry.get("zip_digest") == "composite",
)
)
report.files_kept += 1
@@ -545,7 +574,9 @@ def build_native_model(
checked = checked_hashes(truth_entry) or {}
for field_name in HASH_FIELDS:
ours = set(_hash_values(checked, field_name))
- theirs = set(_hash_values(matched.platform or {}, field_name))
+ if field_name == "md5" and matched.composite_md5:
+ continue
+ theirs = set(_hash_values(comparable(matched.platform), field_name))
if ours and theirs and not ours & theirs:
matched.corrections.append(field_name)
report.hashes_corrected.append(
@@ -602,6 +633,7 @@ def build_native_model(
native_system=native_id,
truth=truth_entry,
foreign_system=native_id not in platform_ids,
+ composite_md5=composite_zips and name.lower().endswith(".zip"),
)
)
report.files_added += 1
diff --git a/tests/test_exporters.py b/tests/test_exporters.py
index 402b2e66..904735b2 100644
--- a/tests/test_exporters.py
+++ b/tests/test_exporters.py
@@ -43,6 +43,7 @@ from export_native import ( # noqa: E402
SOURCES_INDEX,
collect_originals,
fetch,
+ landed_changes,
pinned_base,
source_key,
)
@@ -1084,6 +1085,62 @@ class RecalboxExport(unittest.TestCase):
}
self.assertEqual(blocks, {pentagon: ["3" * 32], scorpion: [new]})
+ COMPOSITE_SCRAPED = {
+ "zip_digest": "composite",
+ "systems": {"snk-neogeo-cd": {"native_id": "neogeocd", "files": [{
+ "name": "neocdz.zip", "destination": "neocdz.zip", "md5": "a" * 32,
+ "native_system": "neogeocd", "core": "libretro/fbneo",
+ "required": True, "zip_digest": "composite",
+ }]}},
+ }
+
+ def test_a_composite_md5_is_not_replaced_by_a_container_md5(self):
+ """Recalbox hashes a .zip by its members (Bios.cpp:64-68,
+ Zip::Md5Composite): the truth's container md5 is another digest."""
+ truth = {"systems": {"snk-neogeo-cd": {"files": [
+ {"name": "neocdz.zip", "md5": "b" * 32, "required": True, "_cores": ["geolith"]},
+ {"name": "boot-data.zip", "md5": "c" * 32, "required": False, "_cores": ["geolith"]},
+ ]}}}
+ systems, report = build_native_model(truth, self.COMPOSITE_SCRAPED)
+ exporter = discover_exporters()["recalbox"]()
+ produced = exporter.render(systems, report, {}, None)["es_bios.xml"]
+ md5_of = {b.get("path"): b.get("md5") for b in ET.fromstring(produced).iter("bios")}
+ self.assertEqual(md5_of, {"neocdz.zip": "a" * 32})
+ self.assertEqual(landed_changes(exporter, systems).records, [])
+
+ def test_a_container_md5_never_pairs_with_a_composite(self):
+ """neocd.bin's md5 equals the composite of a neocdz.zip: by hash the
+ two would be read as one renamed file."""
+ truth = {"systems": {"snk-neogeo-cd": {"files": [
+ {"name": "neocd.bin", "md5": "a" * 32, "required": True, "_cores": ["neocd"]},
+ ]}}}
+ systems, _ = build_native_model(truth, self.COMPOSITE_SCRAPED)
+ declared = next(fe for s in systems.values() for fe in s.files if fe.platform)
+ self.assertIsNone(declared.truth)
+
+ def test_the_live_export_keeps_every_zip_md5(self):
+ """No element of es_bios.xml names a .zip under a new md5: none can
+ be stated as the composite Recalbox computes."""
+ path = REPO_ROOT / "exports" / "recalbox" / "es_bios.xml"
+ original = UPSTREAM_CACHE / "recalbox" / "es_bios.xml"
+ if not original.is_file():
+ self.skipTest("no cached original for recalbox")
+
+ def zips(text: str) -> dict[tuple[str, str], str]:
+ return {
+ (s.get("platform"), b.get("path")): ",".join(sorted(
+ v.strip().lower() for v in b.get("md5", "").split(",")
+ ))
+ for s in ET.fromstring(text).iter("system")
+ for b in s.iter("bios")
+ if b.get("path", "").lower().endswith(".zip")
+ }
+
+ before = zips(original.read_text(encoding="utf-8"))
+ after = zips(path.read_text(encoding="utf-8"))
+ self.assertEqual({k: v for k, v in after.items() if k in before}, before)
+ self.assertEqual(set(after) - set(before), set())
+
def test_a_truncated_export_is_reported(self):
exporter, systems, _ = self._render()
empty = {
From 2e29b3be03816f8308309fb07b8748dcd3b97cfb Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:10:54 +0200
Subject: [PATCH 3/9] fix: read recalbox mandatory per named core
An element lists its cores. Its mandatory flag now follows whether those
cores need the file, and stays as written where none of them reads it.
cdi/cdibios.zip keeps mandatory=false (same_cdi does not read it), the
two amiberry kickstarts keep theirs, saturn_bios.bin becomes optional
for the three HLE cores it names.
---
exports/recalbox.json | 40 +++++++------------------
exports/recalbox/es_bios.xml | 8 ++---
scripts/export_native.py | 30 ++++++++++---------
scripts/exporter/base_exporter.py | 8 +++++
scripts/exporter/recalbox_exporter.py | 42 +++++++++++++++++++++++++--
tests/test_exporters.py | 28 ++++++++++++++++++
6 files changed, 108 insertions(+), 48 deletions(-)
diff --git a/exports/recalbox.json b/exports/recalbox.json
index b5f738f4..b8d10259 100644
--- a/exports/recalbox.json
+++ b/exports/recalbox.json
@@ -7,7 +7,7 @@
"files": [
"es_bios.xml"
],
- "summary": "357 kept, 87 added, 2 hashes corrected, 129 requirements corrected, 528 additions left out, 102 entries found by content not listed",
+ "summary": "357 kept, 87 added, 2 hashes corrected, 127 requirements corrected, 528 additions left out, 102 entries found by content not listed",
"counts": {
"kept": 357,
"added": 87,
@@ -15,15 +15,6 @@
"not_kept": 0
},
"changes": [
- {
- "kind": "requirement_corrected",
- "system": "amiga600",
- "name": "kick33180.A500",
- "destination": "amiga/bios/kick33180.A500",
- "field": "required",
- "old": true,
- "new": false
- },
{
"kind": "requirement_corrected",
"system": "amiga600",
@@ -318,15 +309,6 @@
"required": false
}
},
- {
- "kind": "requirement_corrected",
- "system": "amiga1200",
- "name": "kick39106.A1200",
- "destination": "amiga/bios/kick39106.A1200",
- "field": "required",
- "old": true,
- "new": false
- },
{
"kind": "requirement_corrected",
"system": "amiga1200",
@@ -1923,6 +1905,15 @@
"old": true,
"new": false
},
+ {
+ "kind": "requirement_corrected",
+ "system": "saturn",
+ "name": "saturn_bios.bin",
+ "destination": "saturn/saturn_bios.bin",
+ "field": "required",
+ "old": true,
+ "new": false
+ },
{
"kind": "requirement_corrected",
"system": "saturn",
@@ -2205,15 +2196,6 @@
"required": false
}
},
- {
- "kind": "requirement_corrected",
- "system": "cdi",
- "name": "cdibios.zip",
- "destination": "cdi/cdibios.zip",
- "field": "required",
- "old": false,
- "new": true
- },
{
"kind": "added",
"system": "scummvm",
@@ -2247,7 +2229,7 @@
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
- "requirements_corrected": 129,
+ "requirements_corrected": 127,
"withheld": [],
"found_by_content": 102,
"removal_candidates": [
diff --git a/exports/recalbox/es_bios.xml b/exports/recalbox/es_bios.xml
index ee5b9e89..d3418b98 100644
--- a/exports/recalbox/es_bios.xml
+++ b/exports/recalbox/es_bios.xml
@@ -1,7 +1,7 @@
-
+
@@ -32,7 +32,7 @@
-
+
@@ -579,7 +579,7 @@
-
+
@@ -688,7 +688,7 @@
-
+
diff --git a/scripts/export_native.py b/scripts/export_native.py
index 629eb03f..e5f5f40a 100644
--- a/scripts/export_native.py
+++ b/scripts/export_native.py
@@ -509,7 +509,7 @@ def _added_fields(exporter: object, entry: object) -> dict:
if "size" in carried and entry.size() is not None:
written["size"] = entry.size()
if "required" in carried:
- written["required"] = entry.required
+ written["required"] = exporter.required_value(entry)
return written
@@ -535,20 +535,24 @@ def landed_changes(exporter: object, systems: dict) -> LandedChanges:
"added", entry, None, None, _added_fields(exporter, entry)
))
continue
+ if (
+ (entry.truth or {}).get("required") is not None
+ and entry.platform.get("required") is not None
+ and exporter.states(entry, "required")
+ and exporter.required_value(entry) != bool(entry.platform["required"])
+ ):
+ records.append(_change(
+ "requirement_corrected", entry, "required",
+ bool(entry.platform["required"]), exporter.required_value(entry),
+ ))
for field_name in entry.corrections:
- if not exporter.states(entry, field_name):
+ if field_name == "required" or not exporter.states(entry, field_name):
continue
- if field_name == "required":
- records.append(_change(
- "requirement_corrected", entry, "required",
- bool(entry.platform.get("required")), entry.required,
- ))
- else:
- records.append(_change(
- "hash_corrected", entry, field_name,
- _platform_value(entry, field_name),
- exporter.written(entry, field_name),
- ))
+ records.append(_change(
+ "hash_corrected", entry, field_name,
+ _platform_value(entry, field_name),
+ exporter.written(entry, field_name),
+ ))
records.extend(
_change("hash_filled", entry, field_name, None,
exporter.written(entry, field_name))
diff --git a/scripts/exporter/base_exporter.py b/scripts/exporter/base_exporter.py
index b91289a0..020f6a2e 100644
--- a/scripts/exporter/base_exporter.py
+++ b/scripts/exporter/base_exporter.py
@@ -200,6 +200,14 @@ class BaseExporter(ABC):
return self.single_value(fe, field_name)
return ",".join(fe.hashes(field_name))
+ def required_value(self, fe: NativeFile) -> bool:
+ """The requirement the render writes for an entry.
+
+ The model's flag is true when any core needs the file. A format
+ that names the cores of each entry narrows it to those cores.
+ """
+ return fe.required
+
def states(self, fe: NativeFile, field_name: str) -> bool:
"""Whether the written file carries this entry's corrected field.
diff --git a/scripts/exporter/recalbox_exporter.py b/scripts/exporter/recalbox_exporter.py
index da43fc82..0647bcb8 100644
--- a/scripts/exporter/recalbox_exporter.py
+++ b/scripts/exporter/recalbox_exporter.py
@@ -20,7 +20,7 @@ from xml.sax.saxutils import quoteattr
sys.path.insert(0, str(Path(__file__).resolve().parent.parent))
-from common import parse_untrusted_xml
+from common import load_emulator_profiles, parse_untrusted_xml
from .base_exporter import BaseExporter
from .baseline import NativeFile, NativeSystem, Report
@@ -29,6 +29,8 @@ SOURCE_URL = (
"https://gitlab.com/recalbox/recalbox/-/raw/master/board/recalbox/fsoverlay"
"/recalbox/share_init/system/.emulationstation/es_bios.xml"
)
+# Resolved from the file: the profiles say which names each core answers to.
+EMULATORS_DIR = Path(__file__).resolve().parents[2] / "emulators"
SCHEMA_URL = (
"https://gitlab.com/recalbox/recalbox/-/raw/master/board/recalbox/fsoverlay"
"/recalbox/share_init/system/.emulationstation/es_bios.xsd"
@@ -149,12 +151,48 @@ class Exporter(BaseExporter):
return path
return fe.destination or fe.name
+ def _profile_keys(self) -> dict[str, str]:
+ """Each name a core answers to, as Recalbox writes it, to its profile."""
+ index = getattr(self, "_keys", None)
+ if index is None:
+ index = {}
+ for key, profile in load_emulator_profiles(str(EMULATORS_DIR)).items():
+ for name in (key, *(str(c) for c in profile.get("cores") or [])):
+ index.setdefault(name.replace("-", "_").lower(), key)
+ self._keys = index
+ return index
+
+ def required_value(self, fe: NativeFile) -> bool:
+ """Whether the cores the element names need the file.
+
+ An element lists its cores, and the merged flag is true when any
+ core needs the file: cdi/cdibios.zip names libretro/same_cdi, whose
+ driver declares no such set, and became mandatory because MAME
+ requires it. Where none of the element's cores reads the file, the
+ truth says nothing about it and the platform's value stands.
+ """
+ truth = fe.truth or {}
+ required_by = truth.get("_required_by")
+ readers = truth.get("_cores")
+ if required_by is None or not readers:
+ return fe.required
+ index = self._profile_keys()
+ named = {
+ index.get(core.rsplit("/", 1)[-1].replace("-", "_").lower(), "")
+ for core in fe.cores()
+ } & set(readers)
+ if not named:
+ if fe.platform is not None and fe.platform.get("required") is not None:
+ return bool(fe.platform["required"])
+ return fe.required
+ return bool(named & set(required_by))
+
def _bios_element(self, fe: NativeFile, native_id: str) -> str:
attrs = [f"path={quoteattr(self._path(fe))}"]
attrs.append(f'md5={quoteattr(",".join(fe.hashes("md5")))}')
attrs.append(f'core={quoteattr(",".join(fe.cores()))}')
- if not fe.required:
+ if not self.required_value(fe):
attrs.append('mandatory="false"')
elif fe.native("mandatory_declared", None) is True:
attrs.append('mandatory="true"')
diff --git a/tests/test_exporters.py b/tests/test_exporters.py
index 904735b2..c2f4d91c 100644
--- a/tests/test_exporters.py
+++ b/tests/test_exporters.py
@@ -1141,6 +1141,34 @@ class RecalboxExport(unittest.TestCase):
self.assertEqual({k: v for k, v in after.items() if k in before}, before)
self.assertEqual(set(after) - set(before), set())
+ def test_mandatory_follows_the_cores_the_element_names(self):
+ """cdi/cdibios.zip names libretro/same_cdi, which does not read the
+ set: MAME requiring it says nothing about that element."""
+ scraped = {"systems": {"philips-cdi": {"native_id": "cdi", "files": [
+ {"name": "cdibios.zip", "destination": "cdi/cdibios.zip", "md5": "a" * 32,
+ "native_system": "cdi", "core": "libretro/same_cdi", "required": False},
+ {"name": "cdimono1.zip", "destination": "cdi/cdimono1.zip", "md5": "b" * 32,
+ "native_system": "cdi", "core": "libretro/same_cdi", "required": False},
+ ]}}}
+ truth = {"systems": {"philips-cdi": {"files": [
+ {"name": "cdibios.zip", "required": True, "_cores": ["mame0278"],
+ "_required_by": ["mame0278"]},
+ {"name": "cdimono1.zip", "required": True, "_cores": ["same_cdi", "mame0278"],
+ "_required_by": ["same_cdi"]},
+ ]}}}
+ systems, report = build_native_model(truth, scraped)
+ exporter = discover_exporters()["recalbox"]()
+ produced = exporter.render(systems, report, {}, None)["es_bios.xml"]
+ mandatory = {
+ b.get("path"): b.get("mandatory") for b in ET.fromstring(produced).iter("bios")
+ }
+ self.assertEqual(mandatory, {"cdi/cdibios.zip": "false", "cdi/cdimono1.zip": None})
+ changes = landed_changes(exporter, systems).records
+ self.assertEqual(
+ [(c["name"], c["old"], c["new"]) for c in changes],
+ [("cdimono1.zip", False, True)],
+ )
+
def test_a_truncated_export_is_reported(self):
exporter, systems, _ = self._render()
empty = {
From d48e81861c1d65bbbb1818b87d0e7911cb1fa57a Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:12:02 +0200
Subject: [PATCH 4/9] fix: keep a mister entry whole without a size
Downloader rejects an entry without an integer size (db_entity.py:187)
and compares it after each fetch (fetch_file_worker.py:127). A new hash
the truth gives no size for is withheld and named, not written beside
the old size nor reported as a size removal.
---
scripts/exporter/misterfpga_exporter.py | 24 ++++++++++++++++++++++--
tests/test_exporters.py | 25 +++++++++++++++++++++++++
2 files changed, 47 insertions(+), 2 deletions(-)
diff --git a/scripts/exporter/misterfpga_exporter.py b/scripts/exporter/misterfpga_exporter.py
index 0d0df758..79de82d7 100644
--- a/scripts/exporter/misterfpga_exporter.py
+++ b/scripts/exporter/misterfpga_exporter.py
@@ -113,6 +113,7 @@ class Exporter(BaseExporter):
database = json.loads(original, object_pairs_hook=OrderedDict)
indexed = self._by_path(systems)
self._written = set()
+ self._unsized: list[str] = []
for path, entry in database.get("files", {}).items():
fe = indexed.get(path)
@@ -124,9 +125,17 @@ class Exporter(BaseExporter):
# entry without one, a new size beside the old hash describes
# no file, and the entry is left as MiSTer wrote it.
continue
+ size = fe.size()
+ if md5 != entry.get("hash") and not size:
+ # Downloader refuses an entry without an integer size
+ # (db_entity.py:187) and compares it after each fetch
+ # (fetch_file_worker.py:127). The old size beside the new
+ # hash describes the dump the truth rejects, so the entry
+ # stays as MiSTer wrote it.
+ self._unsized.append(path)
+ continue
self._written.add(id(fe))
entry["hash"] = md5
- size = fe.size()
if size:
entry["size"] = size
@@ -143,6 +152,14 @@ class Exporter(BaseExporter):
produced[_ARCHIVE] = archive if unchanged else rebuild_archive(archive, _DB_NAME, text)
return produced
+ def withheld(self) -> list[str]:
+ """Each hash correction left out for want of the new dump's size."""
+ return [
+ f"{path} keeps its hash: the truth states no size for the new "
+ "dump, and the Downloader checks every entry by size"
+ for path in getattr(self, "_unsized", [])
+ ]
+
def validate(
self,
systems: dict[str, NativeSystem],
@@ -169,6 +186,9 @@ class Exporter(BaseExporter):
for path, fe in indexed.items():
declared = files.get(path)
md5 = fe.hash("md5")
- if declared is not None and md5 and declared.get("hash") != md5:
+ if (
+ declared is not None and md5 and declared.get("hash") != md5
+ and path not in getattr(self, "_unsized", [])
+ ):
issues.append(f"hash not applied: {path}")
return issues
diff --git a/tests/test_exporters.py b/tests/test_exporters.py
index c2f4d91c..fc3abc00 100644
--- a/tests/test_exporters.py
+++ b/tests/test_exporters.py
@@ -1670,6 +1670,31 @@ class MisterDatabaseComesBackAsWritten(unittest.TestCase):
export_native._write_produced(Path(tmp), {"a.zip": b"PK\x03\x04\xff"}, {})
self.assertEqual((Path(tmp) / "a.zip").read_bytes(), b"PK\x03\x04\xff")
+ def test_a_new_hash_without_a_size_leaves_the_entry_whole(self):
+ """The Downloader checks each entry by size (fetch_file_worker.py:127):
+ the old size beside the new hash described no file, and the report
+ announced a size removal the database did not carry."""
+ from export_native import landed_changes # noqa: PLC0415
+
+ database = {"db_id": "bios_db", "files": {
+ "games/X/boot.rom": {"hash": "a" * 32, "size": 100, "url": "u"},
+ }}
+ original = json.dumps(database)
+ scraped = {"systems": {"x": {"files": [{
+ "name": "boot.rom", "destination": "X/boot.rom",
+ "md5": "a" * 32, "size": 100,
+ }]}}}
+ truth = {"systems": {"x": {"files": [{
+ "name": "boot.rom", "path": "X/boot.rom", "md5": "b" * 32, "_cores": ["x"],
+ }]}}}
+ exporter = discover_exporters()["misterfpga"]()
+ systems, report = build_native_model(truth, scraped)
+ produced = exporter.render(systems, report, {"bios_db.json": original}, scraped)
+ self.assertEqual(produced["bios_db.json"], original)
+ self.assertEqual(landed_changes(exporter, systems).records, [])
+ self.assertEqual(len(exporter.withheld()), 1)
+ self.assertEqual(exporter.validate(systems, produced), [])
+
def test_an_empty_truth_hands_back_the_database(self):
archive = UPSTREAM_CACHE / "misterfpga" / "bios_db.json.zip"
if not archive.exists():
From 4670e0442efc41abedce957886a65dc56bf7daf0 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:13:46 +0200
Subject: [PATCH 5/9] fix: withhold a mister hash only beside a size
An entry that states no size has none to contradict: the hash is written
as before.
---
scripts/exporter/misterfpga_exporter.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/exporter/misterfpga_exporter.py b/scripts/exporter/misterfpga_exporter.py
index 79de82d7..1567df50 100644
--- a/scripts/exporter/misterfpga_exporter.py
+++ b/scripts/exporter/misterfpga_exporter.py
@@ -126,7 +126,7 @@ class Exporter(BaseExporter):
# no file, and the entry is left as MiSTer wrote it.
continue
size = fe.size()
- if md5 != entry.get("hash") and not size:
+ if md5 != entry.get("hash") and entry.get("size") and not size:
# Downloader refuses an entry without an integer size
# (db_entity.py:187) and compares it after each fetch
# (fetch_file_worker.py:127). The old size beside the new
From 4a6b654bdc40310e011125c7b0c12c813e5da2d3 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:13:46 +0200
Subject: [PATCH 6/9] fix: keep a romm entry whole without a size
RomM compares file_size_bytes with the entry's size before any hash. A
new hash the truth gives no size for went out beside the old size and
was reported as a size removal. The entry now stays as written and the
correction is withheld and named.
---
scripts/exporter/romm_exporter.py | 38 ++++++++++++++++++++++++++++---
tests/test_export_counts.py | 3 ++-
tests/test_exporters.py | 14 +++++++++---
3 files changed, 48 insertions(+), 7 deletions(-)
diff --git a/scripts/exporter/romm_exporter.py b/scripts/exporter/romm_exporter.py
index 2786ae3b..74f09ff0 100644
--- a/scripts/exporter/romm_exporter.py
+++ b/scripts/exporter/romm_exporter.py
@@ -26,6 +26,10 @@ SOURCE_URL = (
)
+# Fixture field, model field, in the order RomM writes them.
+_FIELDS = (("size", "size"), ("crc", "crc32"), ("md5", "md5"), ("sha1", "sha1"))
+
+
class Exporter(BaseExporter):
"""Write RomM's known_bios_files.json, corrected."""
@@ -35,6 +39,8 @@ class Exporter(BaseExporter):
# addition that claims each other key first: both set by render.
self._platform_keys: set[tuple[str, str]] = set()
self._first_addition: dict[tuple[str, str], int] = {}
+ # Entries of theirs the truth takes over without a size: left whole.
+ self._unsized: dict[int, str] = {}
@staticmethod
def platform_name() -> str:
@@ -112,6 +118,7 @@ class Exporter(BaseExporter):
if fe.platform is not None
}
self._first_addition = {}
+ self._unsized = {}
self.normalized: list[str] = []
self.normalized_values: list[tuple[NativeFile, str, str, str]] = []
for system in sorted(systems.values(), key=lambda s: s.native_id):
@@ -133,11 +140,22 @@ class Exporter(BaseExporter):
# Their entry keeps its fields and their order, ours fill in.
entry: OrderedDict[str, str] = OrderedDict(output.get(key, {}))
# The fixture states every value as a string, size included.
- # Where the model settles no size, RomM's own value stands.
# str(None) wrote "None", and RomM's int() on it raised.
size = fe.size()
- if size is None and fe.platform is not None:
- size = fe.platform.get("size")
+ if size is None and fe.platform is not None and fe.platform.get("size"):
+ # The truth took the entry over without a size: RomM's
+ # size describes the dump the truth rejects, and RomM
+ # compares the size before any hash, so the new hashes
+ # beside it never verify. The entry stays as written.
+ self._unsized[id(fe)] = key
+ if key not in output:
+ output[key] = OrderedDict(
+ (field, value)
+ for field, name in _FIELDS
+ if (value := ",".join(_hash_values(fe.platform, name))
+ if name != "size" else str(fe.platform["size"]))
+ )
+ continue
if size is not None:
self._write(entry, "size", str(int(size)), fe, "size")
for field, hash_name in (("crc", "crc32"), ("md5", "md5"), ("sha1", "sha1")):
@@ -160,6 +178,20 @@ class Exporter(BaseExporter):
does not keep."""
return bool(_hash_values(fe.platform or {}, name)) and not fe.hashes(name)
+ def states(self, fe: NativeFile, field_name: str) -> bool:
+ """An entry left whole carries none of the truth's values."""
+ if id(fe) in self._unsized:
+ return False
+ return super().states(fe, field_name)
+
+ def withheld(self) -> list[str]:
+ """Each entry kept whole for want of the new dump's size."""
+ return [
+ f"{key} keeps its values: the truth states no size for the new "
+ "dump, and RomM compares the size before any hash"
+ for key in sorted(self._unsized.values())
+ ]
+
def written(self, fe: NativeFile, field_name: str) -> str:
"""A record holds one value per field, the one record_hash names."""
return fe.record_hash(field_name)
diff --git a/tests/test_export_counts.py b/tests/test_export_counts.py
index 740f9778..a1a2f490 100644
--- a/tests/test_export_counts.py
+++ b/tests/test_export_counts.py
@@ -913,7 +913,8 @@ class TheSummaryCountsWhatTheFileCarries(unittest.TestCase):
return NativeFile(
"scph5501.bin", "scph5501.bin", "psx",
platform={"size": 524288, "crc32": "deadbeef", "md5": A, "sha1": "1" * 40},
- truth={"md5": B},
+ # With a size of its own: without one, RomM keeps its entry whole.
+ truth={"md5": B, "size": 524288},
)
def test_romm_drops_the_hashes_it_counts_cleared(self):
diff --git a/tests/test_exporters.py b/tests/test_exporters.py
index fc3abc00..3c7f4dfc 100644
--- a/tests/test_exporters.py
+++ b/tests/test_exporters.py
@@ -1509,9 +1509,17 @@ class RommSizeIsNeverNone(unittest.TestCase):
produced = exporter.render(systems, report, {}, None)
return exporter, systems, produced, json.loads(produced["known_bios_files.json"])
- def test_the_platform_size_stands_when_none_is_settled(self):
- _, _, _, data = self._export(524288)
- self.assertEqual(data["psx:scph5501.bin"]["size"], "524288")
+ def test_an_entry_the_truth_takes_without_a_size_stays_whole(self):
+ """RomM compares the size before any hash: the new md5 beside the
+ old size never verified, and the report said the size was removed."""
+ from export_native import landed_changes # noqa: PLC0415
+
+ exporter, systems, _, data = self._export(524288)
+ self.assertEqual(
+ data["psx:scph5501.bin"], {"size": "524288", "md5": "a" * 32}
+ )
+ self.assertEqual(landed_changes(exporter, systems).records, [])
+ self.assertEqual(len(exporter.withheld()), 1)
def test_no_size_is_written_rather_than_none(self):
exporter, systems, produced, data = self._export(None)
From d9548e3522e2e47f2ee2495090dfc875dd145b9b Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:14:44 +0200
Subject: [PATCH 7/9] fix: count a recalbox element kept as written
An element whose md5 the truth contradicts without naming another is
written back whole. It was counted as an entry the format cannot keep.
It now counts as kept, and the md5 it keeps is named as withheld.
---
scripts/exporter/recalbox_exporter.py | 28 +++++++++++++++++++++++++++
tests/test_exporters.py | 26 +++++++++++++++++++++++++
2 files changed, 54 insertions(+)
diff --git a/scripts/exporter/recalbox_exporter.py b/scripts/exporter/recalbox_exporter.py
index 0647bcb8..490ae90b 100644
--- a/scripts/exporter/recalbox_exporter.py
+++ b/scripts/exporter/recalbox_exporter.py
@@ -222,6 +222,19 @@ class Exporter(BaseExporter):
return False
return super().states(fe, field_name)
+ def lands(self, fe: NativeFile) -> bool:
+ """An element of theirs the render cannot rewrite is still in the
+ file, written back as Recalbox wrote it."""
+ return self.writable(fe) or id(fe) in getattr(self, "_held_whole", {})
+
+ def withheld(self) -> list[str]:
+ """Each element kept as written because the truth names no md5."""
+ return [
+ f"{label} keeps its md5: the truth accepts another dump and "
+ "names no md5 for it, which es_bios.xsd requires"
+ for label in sorted(getattr(self, "_held_whole", {}).values())
+ ]
+
@classmethod
def writable(cls, fe: NativeFile, require: str = "") -> bool:
"""es_bios.xsd makes md5 and core required: without them, no element.
@@ -272,6 +285,21 @@ class Exporter(BaseExporter):
for s in root.iter("system")
]
+ # Elements of theirs written back as they stand, by (platform, path).
+ held = {
+ (platform, " ".join(child.get("path", "").split()))
+ for platform, _, children in theirs
+ for child in children
+ if isinstance(child, dict)
+ }
+ self._held_whole = {
+ id(fe): f"{system.native_id}/{self._path(fe)}"
+ for system in systems.values()
+ for fe in system.files
+ if fe.platform is not None
+ and not self.writable(fe)
+ and (system.native_id, " ".join(self._path(fe).split())) in held
+ }
ours: dict[str, tuple[NativeSystem, dict[str, tuple[NativeFile, str]]]] = {}
for system in systems.values():
writable = [fe for fe in system.files if self.writable(fe)]
diff --git a/tests/test_exporters.py b/tests/test_exporters.py
index 3c7f4dfc..72025477 100644
--- a/tests/test_exporters.py
+++ b/tests/test_exporters.py
@@ -1169,6 +1169,32 @@ class RecalboxExport(unittest.TestCase):
[("cdimono1.zip", False, True)],
)
+ def test_an_element_kept_as_written_is_not_counted_lost(self):
+ """The truth takes the entry on sha1 and size and names no md5: the
+ element is written back whole, and the run counted it a platform
+ entry the format cannot keep."""
+ scraped = {"systems": {"x": {"native_id": "x", "files": [{
+ "name": "a.bin", "destination": "x/a.bin", "md5": "a" * 32, "size": 100,
+ "native_system": "x", "core": "libretro/foo", "required": True,
+ }]}}}
+ truth = {"systems": {"x": {"files": [{
+ "name": "a.bin", "path": "x/a.bin", "sha1": "b" * 40, "size": 200,
+ "required": True, "_cores": ["foo"],
+ }]}}}
+ element = f' '
+ original = (
+ '\n\n'
+ f' \n{element}\n \n\n'
+ )
+ systems, report = build_native_model(truth, scraped)
+ exporter = discover_exporters()["recalbox"]()
+ produced = exporter.render(systems, report, {"es_bios.xml": original}, None)
+ self.assertIn(element, produced["es_bios.xml"])
+ fe = next(fe for s in systems.values() for fe in s.files)
+ self.assertTrue(exporter.lands(fe))
+ self.assertEqual(landed_changes(exporter, systems).records, [])
+ self.assertEqual(len(exporter.withheld()), 1)
+
def test_a_truncated_export_is_reported(self):
exporter, systems, _ = self._render()
empty = {
From 79d3a86db7ff256fbcfa500db2bf38aec3ba926a Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:17:10 +0200
Subject: [PATCH 8/9] chore: drop an unused import in export tests
---
tests/test_export_report.py | 1 -
1 file changed, 1 deletion(-)
diff --git a/tests/test_export_report.py b/tests/test_export_report.py
index 780cd982..135e80d5 100644
--- a/tests/test_export_report.py
+++ b/tests/test_export_report.py
@@ -7,7 +7,6 @@ file from and no list to check the diff against.
from __future__ import annotations
-import json
import re
import sys
import tempfile
From 28435230a780051671c6ed28b69dad81812d1b48 Mon Sep 17 00:00:00 2001
From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com>
Date: Wed, 21 Oct 2026 05:39:17 +0200
Subject: [PATCH 9/9] fix: read each named core's own entry in recalbox
An element's mandatory flag came from the one truth entry its md5 paired
with. saturn/saturn_bios.bin names yabause, yabasanshiro and kronos,
which require it, and was paired with the beetle_saturn entry, which
does not. Each named core's entries for the file, found by name, now
decide, except a namesake elsewhere in the same tree (bluemsx KANJI.rom
under Shared Roms is not the one under MSX2+ - European).
---
exports/recalbox.json | 31 +++++++++-----
exports/recalbox/es_bios.xml | 6 +--
scripts/export_native.py | 5 ++-
scripts/exporter/baseline.py | 14 +++++++
scripts/exporter/recalbox_exporter.py | 60 +++++++++++++++++++++------
tests/test_exporters.py | 51 +++++++++++++++++++++++
6 files changed, 138 insertions(+), 29 deletions(-)
diff --git a/exports/recalbox.json b/exports/recalbox.json
index b8d10259..676e4e4e 100644
--- a/exports/recalbox.json
+++ b/exports/recalbox.json
@@ -7,7 +7,7 @@
"files": [
"es_bios.xml"
],
- "summary": "357 kept, 87 added, 2 hashes corrected, 127 requirements corrected, 528 additions left out, 102 entries found by content not listed",
+ "summary": "357 kept, 87 added, 2 hashes corrected, 128 requirements corrected, 528 additions left out, 102 entries found by content not listed",
"counts": {
"kept": 357,
"added": 87,
@@ -711,6 +711,15 @@
"old": true,
"new": false
},
+ {
+ "kind": "requirement_corrected",
+ "system": "pc98",
+ "name": "bios.rom",
+ "destination": "np2kai/bios.rom",
+ "field": "required",
+ "old": true,
+ "new": false
+ },
{
"kind": "requirement_corrected",
"system": "pc98",
@@ -777,6 +786,15 @@
"old": true,
"new": false
},
+ {
+ "kind": "requirement_corrected",
+ "system": "msx1,msx2",
+ "name": "FMPAC.ROM",
+ "destination": "msx/FMPAC.ROM",
+ "field": "required",
+ "old": true,
+ "new": false
+ },
{
"kind": "requirement_corrected",
"system": "msx1,msx2",
@@ -1905,15 +1923,6 @@
"old": true,
"new": false
},
- {
- "kind": "requirement_corrected",
- "system": "saturn",
- "name": "saturn_bios.bin",
- "destination": "saturn/saturn_bios.bin",
- "field": "required",
- "old": true,
- "new": false
- },
{
"kind": "requirement_corrected",
"system": "saturn",
@@ -2229,7 +2238,7 @@
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
- "requirements_corrected": 127,
+ "requirements_corrected": 128,
"withheld": [],
"found_by_content": 102,
"removal_candidates": [
diff --git a/exports/recalbox/es_bios.xml b/exports/recalbox/es_bios.xml
index d3418b98..806c9290 100644
--- a/exports/recalbox/es_bios.xml
+++ b/exports/recalbox/es_bios.xml
@@ -146,7 +146,7 @@
+ cd237e16e7e77c06bb58540e9e9fca68,e246140dec5124c5e404869a84caefce" hashMatchMandatory="false" core="libretro/np2kai" mandatory="false" />
-
+
@@ -579,7 +579,7 @@
-
+
diff --git a/scripts/export_native.py b/scripts/export_native.py
index e5f5f40a..1ccddb68 100644
--- a/scripts/export_native.py
+++ b/scripts/export_native.py
@@ -535,9 +535,10 @@ def landed_changes(exporter: object, systems: dict) -> LandedChanges:
"added", entry, None, None, _added_fields(exporter, entry)
))
continue
+ # Asked of the exporter: a format that names each entry's cores
+ # reads every entry of those cores, not only the paired one.
if (
- (entry.truth or {}).get("required") is not None
- and entry.platform.get("required") is not None
+ entry.platform.get("required") is not None
and exporter.states(entry, "required")
and exporter.required_value(entry) != bool(entry.platform["required"])
):
diff --git a/scripts/exporter/baseline.py b/scripts/exporter/baseline.py
index f55bfb1a..e6f28bef 100644
--- a/scripts/exporter/baseline.py
+++ b/scripts/exporter/baseline.py
@@ -122,6 +122,10 @@ class NativeFile:
# (Recalbox on a .zip): the truth's md5 describes the container and
# can be neither compared with it nor written in its place.
composite_md5: bool = False
+ # Every truth entry of the system that answers to this platform entry's
+ # name, whichever one the pairing took: the element names its cores, and
+ # each core's own entry for the file says whether that core needs it.
+ namesakes: list[dict] = field(default_factory=list)
@property
def origin(self) -> str:
@@ -563,6 +567,16 @@ def build_native_model(
if candidate.truth is None
]
pairs = pair_entries(truth_files, [c.platform or {} for c in candidates])
+ for candidate in (
+ c
+ for native_id in target_ids
+ for c in systems.get(native_id, NativeSystem(native_id)).files
+ if c.platform is not None
+ ):
+ own = str(candidate.name).casefold()
+ candidate.namesakes.extend(
+ entry for entry in truth_files if own in _names(entry)
+ )
for t_index, truth_entry in enumerate(truth_files):
name = str(truth_entry["name"])
diff --git a/scripts/exporter/recalbox_exporter.py b/scripts/exporter/recalbox_exporter.py
index 490ae90b..71704304 100644
--- a/scripts/exporter/recalbox_exporter.py
+++ b/scripts/exporter/recalbox_exporter.py
@@ -23,7 +23,7 @@ sys.path.insert(0, str(Path(__file__).resolve().parent.parent))
from common import load_emulator_profiles, parse_untrusted_xml
from .base_exporter import BaseExporter
-from .baseline import NativeFile, NativeSystem, Report
+from .baseline import NativeFile, NativeSystem, Report, by_destination, by_name
SOURCE_URL = (
"https://gitlab.com/recalbox/recalbox/-/raw/master/board/recalbox/fsoverlay"
@@ -165,27 +165,61 @@ class Exporter(BaseExporter):
def required_value(self, fe: NativeFile) -> bool:
"""Whether the cores the element names need the file.
- An element lists its cores, and the merged flag is true when any
- core needs the file: cdi/cdibios.zip names libretro/same_cdi, whose
- driver declares no such set, and became mandatory because MAME
- requires it. Where none of the element's cores reads the file, the
- truth says nothing about it and the platform's value stands.
+ The element lists its cores, and each core's own entry for the file,
+ found by name, says whether that core needs it. The md5 pairing
+ takes one entry only: saturn/saturn_bios.bin names yabause,
+ yabasanshiro and kronos, which require it, and its md5 paired it
+ with the beetle_saturn entry. The merged flag is true when any core
+ needs the file: cdi/cdibios.zip names same_cdi, which declares no
+ such set, and became mandatory because MAME requires it. Where none
+ of the element's cores declares the file, the platform's value
+ stands.
"""
- truth = fe.truth or {}
- required_by = truth.get("_required_by")
- readers = truth.get("_cores")
- if required_by is None or not readers:
+ entries = [fe.truth] if fe.truth else []
+ entries += [
+ e for e in fe.namesakes
+ if e is not fe.truth and self._same_file(e, fe.platform or {})
+ ]
+ if not entries:
return fe.required
index = self._profile_keys()
named = {
index.get(core.rsplit("/", 1)[-1].replace("-", "_").lower(), "")
for core in fe.cores()
- } & set(readers)
- if not named:
+ } - {""}
+ readers: set[str] = set()
+ requirers: set[str] = set()
+ for entry in entries:
+ cores = set(entry.get("_cores") or ()) & named
+ readers |= cores
+ required_by = entry.get("_required_by")
+ if required_by is None:
+ if entry.get("required") is not False:
+ requirers |= cores
+ else:
+ requirers |= cores & set(required_by)
+ if not readers:
if fe.platform is not None and fe.platform.get("required") is not None:
return bool(fe.platform["required"])
return fe.required
- return bool(named & set(required_by))
+ return bool(requirers)
+
+ @staticmethod
+ def _same_file(entry: dict, declared: dict) -> bool:
+ """Whether a truth entry of that name describes this element's file.
+
+ Its path or its name in the same directory does. A name under an
+ unrelated directory does too: kronos reads kronos/saturn_bios.bin,
+ and Recalbox files the same BIOS under saturn/. A name in another
+ directory of the same tree does not: bluemsx reads
+ Machines/Shared Roms/KANJI.rom, which is not Recalbox's
+ Machines/MSX2+ - European/KANJI.rom.
+ """
+ if by_destination(entry, declared) or by_name(entry, declared):
+ return True
+ theirs = str(declared.get("destination") or declared.get("name", "")).split("/")[:-1]
+ ours = str(entry.get("path") or entry.get("name", "")).split("/")[:-1]
+ return not {d.casefold() for d in theirs} & {d.casefold() for d in ours}
def _bios_element(self, fe: NativeFile, native_id: str) -> str:
attrs = [f"path={quoteattr(self._path(fe))}"]
diff --git a/tests/test_exporters.py b/tests/test_exporters.py
index 72025477..24e17ef4 100644
--- a/tests/test_exporters.py
+++ b/tests/test_exporters.py
@@ -1169,6 +1169,57 @@ class RecalboxExport(unittest.TestCase):
[("cdimono1.zip", False, True)],
)
+ def test_mandatory_reads_the_named_cores_not_the_hash_pairing(self):
+ """saturn/saturn_bios.bin names yabause, yabasanshiro and kronos,
+ which require it. Its md5 paired it with the beetle_saturn entry,
+ which does not, and the element went out mandatory="false"."""
+ md5 = "af5828fdff51384f99b3c4926be27762"
+ scraped = {"systems": {"sega-saturn": {"native_id": "saturn", "files": [{
+ "name": "saturn_bios.bin", "destination": "saturn/saturn_bios.bin",
+ "md5": md5, "native_system": "saturn", "required": True,
+ "core": "libretro/yabause,libretro/kronos",
+ }]}}}
+ truth = {"systems": {"sega-saturn": {"files": [
+ {"name": "saturn_bios.bin", "path": "saturn_bios.bin", "md5": md5,
+ "required": True, "_cores": ["beetle_saturn", "kronos", "yabause"],
+ "_required_by": ["beetle_saturn"]},
+ {"name": "saturn_bios.bin", "path": "kronos/saturn_bios.bin",
+ "required": True, "_cores": ["kronos", "yabause"],
+ "_required_by": ["kronos", "yabause"]},
+ ]}}}
+ systems, report = build_native_model(truth, scraped)
+ exporter = discover_exporters()["recalbox"]()
+ declared = next(fe for s in systems.values() for fe in s.files if fe.platform)
+ self.assertEqual(declared.truth["_required_by"], ["beetle_saturn"])
+ produced = exporter.render(systems, report, {}, None)["es_bios.xml"]
+ element = next(
+ b for b in ET.fromstring(produced).iter("bios")
+ if b.get("path") == "saturn/saturn_bios.bin"
+ )
+ self.assertNotEqual(element.get("mandatory"), "false")
+ self.assertEqual(
+ [c for c in landed_changes(exporter, systems).records
+ if c["kind"] == "requirement_corrected"],
+ [],
+ )
+
+ def test_a_namesake_elsewhere_in_the_same_tree_is_another_file(self):
+ """bluemsx reads Machines/Shared Roms/KANJI.rom, not Recalbox's
+ Machines/MSX2+ - European/KANJI.rom."""
+ scraped = {"systems": {"msx": {"native_id": "msx2", "files": [{
+ "name": "KANJI.rom", "destination": "Machines/MSX2+ - European/KANJI.rom",
+ "md5": "a" * 32, "native_system": "msx2", "required": True,
+ "core": "libretro/bluemsx",
+ }]}}}
+ truth = {"systems": {"msx": {"files": [{
+ "name": "KANJI.rom", "path": "Machines/Shared Roms/KANJI.rom",
+ "md5": "b" * 32, "required": False, "_cores": ["bluemsx"], "_required_by": [],
+ }]}}}
+ systems, _ = build_native_model(truth, scraped)
+ exporter = discover_exporters()["recalbox"]()
+ declared = next(fe for s in systems.values() for fe in s.files if fe.platform)
+ self.assertTrue(exporter.required_value(declared))
+
def test_an_element_kept_as_written_is_not_counted_lost(self):
"""The truth takes the entry on sha1 and size and names no md5: the
element is written back whole, and the run counted it a platform