diff --git a/emulators/81.yml b/emulators/81.yml index f69854522..359fe2b86 100644 --- a/emulators/81.yml +++ b/emulators/81.yml @@ -275,7 +275,8 @@ files: mode: standalone size: 8192 md5: 5c11c61a2dd2ca4bf39328d9ff42d289 - source_ref: "upstream Source/ROMs/FDCs/interface1.edition1.rom" + note: "Listed for ZX Interface 1, but ConfigureFDCRom has no Interface 1 branch, so the choice is not applied. Read when the configuration file names it as ROMINTERFACE1." + source_ref: "upstream Source/ROMs/FDCs/interface1.edition1.rom, upstream Source/HW_.cpp:2618-2622, 3732, 4957-4980, upstream Source/Spectrum/spec48.cpp:332-334" - name: "+d.g+dos.v1-a.rom" system: sinclair-zx-spectrum required: false @@ -487,7 +488,8 @@ files: mode: standalone size: 16384 md5: 9f6f56003307b9d55be96f406fdbf2b1 - source_ref: "upstream Source/ROMs/spectrum48.arabic.rom" + note: "In no ROM list: read when chosen with the Browse button." + source_ref: "upstream Source/ROMs/spectrum48.arabic.rom, upstream Source/HW_.cpp:252, 3794-3797, 3806-3835, upstream Source/Spectrum/spec48.cpp:354" - name: spectrum48.arabic.version1.rom system: sinclair-zx-spectrum required: false @@ -603,8 +605,8 @@ files: mode: standalone size: 16384 md5: b7893ad25728fbf6410f08eddd4a1cad - note: "Microdigital TK90X (Spectrum clone)." - source_ref: "upstream Source/ROMs/tk90.rom" + note: "Microdigital TK90X (Spectrum clone). In no ROM list: read when chosen with the Browse button." + source_ref: "upstream Source/ROMs/tk90.rom, upstream Source/HW_.cpp:252, 3794-3797, 3806-3835, upstream Source/Spectrum/spec48.cpp:354" - name: tk95.rom system: sinclair-zx-spectrum required: false @@ -612,5 +614,5 @@ files: mode: standalone size: 16384 md5: b7893ad25728fbf6410f08eddd4a1cad - note: "Microdigital TK95 (Spectrum clone)." - source_ref: "upstream Source/ROMs/tk95.rom" + note: "Microdigital TK95 (Spectrum clone). In no ROM list: read when chosen with the Browse button." + source_ref: "upstream Source/ROMs/tk95.rom, upstream Source/HW_.cpp:252, 3794-3797, 3806-3835, upstream Source/Spectrum/spec48.cpp:354" diff --git a/emulators/a7800.yml b/emulators/a7800.yml index efbcab113..0a321d3df 100644 --- a/emulators/a7800.yml +++ b/emulators/a7800.yml @@ -96,11 +96,12 @@ files: required: false category: bios_zip system: atari-7800 - source_ref: "source hash/a7800.xml:8-21" + source_ref: "source hash/a7800.xml:8-21, source src/mame/drivers/a7800.cpp:1577, source src/emu/emuopts.cpp:40, source src/emu/softlist_dev.cpp:87, 309, source src/emu/romload.cpp:575-651, 1298-1302" note: >- Software list set for the High Score Cartridge configuration (CX78HSC, slot a78_hsc). Fatal when that configuration is selected and the set is - absent. + absent. The list is read from hash/a7800.xml, which the v5.2 release + archives for Linux, macOS and Windows carry beside the binary. contents: - name: highscre.bin description: High Score Cartridge ROM, read through the pass-through cart @@ -112,12 +113,13 @@ files: required: false category: bios_zip system: atari-7800 - source_ref: "source hash/a7800.xml:24-38" + source_ref: "source hash/a7800.xml:24-38, source src/mame/drivers/a7800.cpp:1577, source src/emu/emuopts.cpp:40, source src/emu/softlist_dev.cpp:87, 309, source src/emu/romload.cpp:575-651, 1298-1302" note: >- Software list set for the XM Expansion Module configuration (slot a78_xm), which reuses the High Score Cartridge ROM alongside 128KB RAM, POKEY and YM2151. Fatal when that configuration is selected and the set - is absent. + is absent. The list is read from hash/a7800.xml, which the v5.2 + release archives for Linux, macOS and Windows carry beside the binary. contents: - name: highscre.bin description: High Score Cartridge ROM, gated by XM control register bit 3 diff --git a/emulators/abuse.yml b/emulators/abuse.yml index e2def0df1..7985e7b9a 100644 --- a/emulators/abuse.yml +++ b/emulators/abuse.yml @@ -52,11 +52,11 @@ files: - name: "defaults.prp" category: game_data - description: "Default properties for level objects" - required: true + description: "Level editor window positions" + required: false bundled: true - source_ref: "data/abuse.lsp" - note: "Shipped in Abuse-0.9.1-win32.zip." + source_ref: "src/game.cpp:2373, src/dev.cpp:821-828, 3371-3374, src/property.cpp:155-159" + note: "Shipped in Abuse-0.9.1-win32.zip. Read at every start, and a missing file leaves the defaults. Written back after an -edit session." - name: "english.lsp" path: "lisp/english.lsp" @@ -64,5 +64,5 @@ files: description: "Localized strings loaded first by abuse.lsp" required: true bundled: true - source_ref: "data/abuse.lsp:9" + source_ref: "data/abuse.lsp:9-12, data/CMakeLists.txt:1-5, 10-16, src/loader2.cpp:284, 348-354" note: "Shipped in Abuse-0.9.1-win32.zip." diff --git a/emulators/arcadeflashweb.yml b/emulators/arcadeflashweb.yml index 9d2931b9c..db394d5ad 100644 --- a/emulators/arcadeflashweb.yml +++ b/emulators/arcadeflashweb.yml @@ -131,7 +131,7 @@ files: note: >- Drawn behind the movie by the page's bg div. The same image is compiled into the binary for the QML side, so only this copy is read from disk. - source_ref: "ArcadeFlashWeb-release flash/flash.html:110, src/qml.qrc:23" + source_ref: "src/main.qml:327, 334, ArcadeFlashWeb-release flash/flash.html:110, src/qml.qrc:23, src/main.qml:457" - name: swfdump.exe size: 541095 diff --git a/emulators/beebem.yml b/emulators/beebem.yml index d0bd0654c..415881bd5 100644 --- a/emulators/beebem.yml +++ b/emulators/beebem.yml @@ -193,7 +193,7 @@ files: max_size: 131072 validation: [size] note: "Integra-B slot under the Torch configuration." - source_ref: "UserData/Roms_Torch.cfg:24" + source_ref: "UserData/Roms_Torch.cfg:24, BeebEmTorch.vbs:3, Src/BeebWin.cpp:5291-5297, 5960-5964, 473, Src/RomConfigFile.cpp:158-162, Src/BeebMem.cpp:1321-1337" - name: WDFS.rom path: BeebFile/BBCINT/WDFS.rom @@ -206,7 +206,7 @@ files: max_size: 131072 validation: [size] note: "Filing system slot under the Torch configuration." - source_ref: "UserData/Roms_Torch.cfg:26" + source_ref: "UserData/Roms_Torch.cfg:26, BeebEmTorch.vbs:3, Src/BeebWin.cpp:5291-5297, 5960-5964, 473, Src/RomConfigFile.cpp:158-162, Src/BeebMem.cpp:1321-1337" - name: MCP120-CBL.rom path: BeebFile/BBC/MCP120-CBL.rom @@ -219,7 +219,7 @@ files: max_size: 131072 validation: [size] note: "Host tube support for the Torch Z80 co-processor on a Model B." - source_ref: "UserData/Roms_Torch.cfg:5, Help/z80torch.html" + source_ref: "UserData/Roms_Torch.cfg:5, Help/z80torch.html, BeebEmTorch.vbs:3, Src/BeebWin.cpp:5291-5297, 5960-5964, 473, Src/RomConfigFile.cpp:158-162, Src/BeebMem.cpp:1321-1337" # -- BBC Model B Plus -- @@ -413,7 +413,7 @@ files: max_size: 131072 validation: [size] note: "Host tube support for the Torch Z80 co-processor on a Master." - source_ref: "UserData/Roms_Torch.cfg:79, Help/z80torch.html" + source_ref: "UserData/Roms_Torch.cfg:79, Help/z80torch.html, BeebEmTorch.vbs:3, Src/BeebWin.cpp:5291-5297, 5960-5964, 473, Src/RomConfigFile.cpp:158-162, Src/BeebMem.cpp:1321-1337" # -- BBC Master ET -- diff --git a/emulators/bluemsx.yml b/emulators/bluemsx.yml index e61d8b58a..265e0c6ba 100644 --- a/emulators/bluemsx.yml +++ b/emulators/bluemsx.yml @@ -92,7 +92,7 @@ files: required: true system: msx note: "MSX1 generic BIOS. Used by default 'MSX' machine config." - source_ref: "system/bluemsx/Machines/MSX/config.ini" + source_ref: "system/bluemsx/Machines/MSX/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX.rom path: "Machines/Shared Roms/MSX.rom" @@ -104,7 +104,7 @@ files: sha1: "e998f0c441f4f1800ef44e42cd1659150206cf79" md5: "364a1a579fe5cb8dba54519bcfcdac0d" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX/config.ini" + source_ref: "system/bluemsx/Machines/MSX/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXJ.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -114,7 +114,7 @@ files: required: false system: msx note: "MSX1 Japanese BIOS. Used by 'MSX - Japanese' machine." - source_ref: "system/bluemsx/Machines/MSX - Japanese/config.ini" + source_ref: "system/bluemsx/Machines/MSX - Japanese/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXJ.rom path: "Machines/Shared Roms/MSXJ.rom" @@ -126,7 +126,7 @@ files: sha1: "df48902f5f12af8867ae1a87f255145f0e5e0774" md5: "f005e55c680ba6e7b19f6d4dc8f73ce5" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX - Japanese/config.ini" + source_ref: "system/bluemsx/Machines/MSX - Japanese/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXBR.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -338,7 +338,7 @@ files: required: true system: msx2 note: "MSX2 generic main BIOS. Used by default 'MSX2' machine config." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2.rom path: "Machines/Shared Roms/MSX2.rom" @@ -350,7 +350,7 @@ files: sha1: "6103b39f1e38d1aa2d84b1c3219c44f1abb5436e" md5: "ec3a01c91f24fbddcbcab0ad301bc9ef" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2EXT.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -360,7 +360,7 @@ files: required: true system: msx2 note: "MSX2 extension BIOS (SubROM). Required alongside MSX2.rom." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:31, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2EXT.rom path: "Machines/Shared Roms/MSX2EXT.rom" @@ -372,7 +372,7 @@ files: sha1: "5c1f9c7fb655e43d38e5dd1fcc6b942b2ff68b02" md5: "2183c2aff17cf4297bdb496de78c2e8a" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:31, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2J.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -764,7 +764,7 @@ files: required: true system: msx2plus note: "MSX2+ main BIOS. Used by default 'MSX2+' machine config (auto-selected for .dsk/.cas/.rom)." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:31, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2P.rom path: "Machines/Shared Roms/MSX2P.rom" @@ -776,7 +776,7 @@ files: sha1: "e90f80a61d94c617850c415e12ad70ac41e66bb7" md5: "847cc025ffae665487940ff2639540e5" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:31, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2PEXT.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -786,7 +786,7 @@ files: required: true system: msx2plus note: "MSX2+ extension BIOS (SubROM)." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:35, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2PEXT.rom path: "Machines/Shared Roms/MSX2PEXT.rom" @@ -798,7 +798,7 @@ files: sha1: "fe0254cbfc11405b79e7c86c7769bd6322b04995" md5: "7c8243c71d8f143b2531f01afa6a05dc" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:35, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2PMUS.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -808,7 +808,7 @@ files: required: true system: msx2plus note: "MSX2+ MSX-MUSIC BIOS (FM-PAC built-in). Used by MSX2+ and MSX2 default configs." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:32, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSX2PMUS.rom path: "Machines/Shared Roms/MSX2PMUS.rom" @@ -820,7 +820,7 @@ files: sha1: "6354ccc5c100b1c558c9395fa8c00784d2e9b0a3" md5: "f877f32e6d8687474ac5ee83e40de23b" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:32, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" # -- MSX turboR BIOS set -- @@ -832,7 +832,7 @@ files: required: true system: msxturboR note: "MSX turboR main BIOS." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:38, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXTR.ROM path: "Machines/Shared Roms/MSXTR.ROM" @@ -844,7 +844,7 @@ files: sha1: "242e73d8284a012b275c0a266844ebbc4269d787" md5: "fd9513736823e470965949f2a3ec6a43" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:38, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXTREXT.ROM installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -854,7 +854,7 @@ files: required: true system: msxturboR note: "MSX turboR extension BIOS." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:43, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXTREXT.ROM path: "Machines/Shared Roms/MSXTREXT.ROM" @@ -866,7 +866,7 @@ files: sha1: "018d7a5222f28514908fb1b1513286a6558a6d05" md5: "824b1c4475a3bd3b91c5ae81ea940aa2" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:43, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXTRMUS.ROM installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -876,7 +876,7 @@ files: required: true system: msxturboR note: "MSX turboR MSX-MUSIC BIOS." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:39, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXTRMUS.ROM path: "Machines/Shared Roms/MSXTRMUS.ROM" @@ -888,7 +888,7 @@ files: sha1: "6aea1aef5ec31c1826c22edf580525f93baad425" md5: "c688a229f834f95f8c64df7d33188cd8" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:39, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXTROPT.ROM installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -898,7 +898,7 @@ files: required: true system: msxturboR note: "MSX turboR option ROM (firmware utilities)." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:40, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXTROPT.ROM path: "Machines/Shared Roms/MSXTROPT.ROM" @@ -910,7 +910,7 @@ files: sha1: "b4433a3975c57dd440d6bf12dbd28b2ac1b90ef4" md5: "2cba0d812ec445cfe63ffa2cac8d42c2" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:40, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXDOS23.ROM installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -920,7 +920,7 @@ files: required: true system: msxturboR note: "MSX-DOS 2.3 ROM. Used by turboR default config for disk operations." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:45, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXDOS23.ROM path: "Machines/Shared Roms/MSXDOS23.ROM" @@ -932,7 +932,7 @@ files: sha1: "0527fb75775caa76c7eca8d449938ace83d36e96" md5: "56bf5b02fed377b7bb9d91f914965431" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSXturboR/config.ini" + source_ref: "system/bluemsx/Machines/MSXturboR/config.ini:45, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" # -- Shared utility/extension ROMs -- @@ -943,7 +943,7 @@ files: size: 262144 required: false note: "Kanji font ROM (256 KB). Used by MSX2+, turboR, and Japanese MSX2 machines." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: KANJI.rom path: "Machines/Shared Roms/KANJI.rom" @@ -954,7 +954,7 @@ files: sha1: "5aff2d9b6efc723bc395b0f96f0adfa83cc54a49" md5: "acf53887c2d2783dc059a9b442c86b90" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:28, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXKANJI.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -963,7 +963,7 @@ files: size: 32768 required: false note: "MSX-Kanji driver ROM. Used by MSX2+, turboR, and Japanese MSX2 for kanji display." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:36, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MSXKANJI.rom path: "Machines/Shared Roms/MSXKANJI.rom" @@ -974,7 +974,7 @@ files: sha1: "dcc3a67732aa01c4f2ee8d1ad886444a4dbafe06" md5: "9dfdebfaa6b547222a40aab8bb2e29f8" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:36, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: FMPAC.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1004,7 +1004,7 @@ files: size: 16384 required: false note: "MSX-BASIC 2 extension ROM. Used by MSX2, MSX2+, and turboR default configs." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:34, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: XBASIC2.rom path: "Machines/Shared Roms/XBASIC2.rom" @@ -1015,7 +1015,7 @@ files: sha1: "47370bec7ca1f0615a54eda548b07fbc0c7ef398" md5: "0b6120f289336538bc564548109f97c6" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:34, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: PAINT.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1024,7 +1024,7 @@ files: size: 65536 required: false note: "Paint utility ROM. Loaded by the MSX2 - Arabic machine config." - source_ref: "system/bluemsx/Machines/MSX2 - Arabic/config.ini" + source_ref: "system/bluemsx/Machines/MSX2 - Arabic/config.ini:30, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: PAINT.rom path: "Machines/Shared Roms/PAINT.rom" @@ -1035,7 +1035,7 @@ files: sha1: "ace202e87337fbc54fea21e22c0b3af0abe6f4ae" md5: "41db0d7b37be479296ffd59fcd6775f0" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2 - Arabic/config.ini" + source_ref: "system/bluemsx/Machines/MSX2 - Arabic/config.ini:30, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: SWP.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1116,7 +1116,7 @@ files: size: 2097152 required: false note: "MoonSound (OPL4) wavetable ROM (2 MB). Used by MSX2, MSX2+, and turboR configs." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:26, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: MOONSOUND.rom path: "Machines/Shared Roms/MOONSOUND.rom" @@ -1127,7 +1127,7 @@ files: sha1: "32760893ce06dbe3930627755ba065cc3d8ec6ca" md5: "42af93619160ef2116416f74a6cb12f2" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2/config.ini" + source_ref: "system/bluemsx/Machines/MSX2/config.ini:26, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" # -- Disk controller ROMs -- @@ -1138,7 +1138,7 @@ files: size: 16384 required: false note: "Panasonic disk controller ROM. Used by MSX2+ and turboR default configs." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:37, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: PANASONICDISK.rom path: "Machines/Shared Roms/PANASONICDISK.rom" @@ -1149,7 +1149,7 @@ files: sha1: "7ed7c55e0359737ac5e68d38cb6903f9e5d7c2b6" md5: "00aa02b6077de40a0b51d71a3c3e1d5f" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+/config.ini" + source_ref: "system/bluemsx/Machines/MSX2+/config.ini:37, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: PHILIPSDISK.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1158,7 +1158,7 @@ files: size: 16384 required: false note: "Philips disk controller ROM. Used by MSX1 and MSX2 default configs." - source_ref: "system/bluemsx/Machines/MSX/config.ini" + source_ref: "system/bluemsx/Machines/MSX/config.ini:29, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: PHILIPSDISK.rom path: "Machines/Shared Roms/PHILIPSDISK.rom" @@ -1169,7 +1169,7 @@ files: sha1: "c3efedda7ab947a06d9345f7b8261076fa7ceeef" md5: "01dd1d72ed9bb6afe8a9b441c198a1cd" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX/config.ini" + source_ref: "system/bluemsx/Machines/MSX/config.ini:29, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: NATIONALDISK.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1521,7 +1521,7 @@ files: required: true system: colecovision note: "ColecoVision BIOS ROM. Required for ColecoVision mode." - source_ref: "system/bluemsx/Machines/COL - ColecoVision/config.ini" + source_ref: "system/bluemsx/Machines/COL - ColecoVision/config.ini:23, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: coleco.rom path: "Machines/COL - ColecoVision/coleco.rom" @@ -1533,7 +1533,7 @@ files: sha1: "45bedc4cbdeac66c7df59e9e599195c778d86a92" md5: "2c66f5911e5b42b8ebe113403548eee7" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/COL - ColecoVision/config.ini" + source_ref: "system/bluemsx/Machines/COL - ColecoVision/config.ini:23, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" # ============================================================ # SEGA SF-7000 BIOS @@ -1548,7 +1548,7 @@ files: required: true system: sega-sf7000 note: "Sega SF-7000 BIOS ROM. SG-1000 and SC-3000 have no BIOS requirement." - source_ref: "system/bluemsx/Machines/SEGA - SF-7000/config.ini" + source_ref: "system/bluemsx/Machines/SEGA - SF-7000/config.ini:23, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: sf7000.rom path: "Machines/SEGA - SF-7000/sf7000.rom" @@ -1560,7 +1560,7 @@ files: sha1: "77339a6db2593aadc638bed77b8e9bed5d9d87e3" md5: "561b362f9aa4cbcb240461abf83c2e0d" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/SEGA - SF-7000/config.ini" + source_ref: "system/bluemsx/Machines/SEGA - SF-7000/config.ini:23, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" # ============================================================ # Spectravideo SVI BIOS files @@ -1574,7 +1574,7 @@ files: required: true system: spectravideo note: "SVI-318 BIOS ROM." - source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-318/config.ini" + source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-318/config.ini:23, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: svi318.rom path: "Machines/SVI - Spectravideo SVI-318/svi318.rom" @@ -1586,7 +1586,7 @@ files: sha1: "07758272df475e5e06187aa3574241df1b14035b" md5: "ee6ad7ea29e791b03a28a9443e622648" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-318/config.ini" + source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-318/config.ini:23, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: svi328.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1596,7 +1596,7 @@ files: required: true system: spectravideo note: "SVI-328 BIOS ROM." - source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-328/config.ini" + source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-328/config.ini:26, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: svi328.rom path: "Machines/SVI - Spectravideo SVI-328/svi328.rom" @@ -1608,7 +1608,7 @@ files: sha1: "7d8daf52f78371ca2c9443e04827c8e1f98c8f2c" md5: "2cebd1db9dda475a011b7bce65c984a2" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-328/config.ini" + source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-328/config.ini:26, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: svi328a.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1630,7 +1630,7 @@ files: sha1: "10349ce675f6d6d47f0976e39cb7188eba858d89" md5: "352f054ab09605070bdff49d73f335cc" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-328 MK2/config.ini:26" + source_ref: "system/bluemsx/Machines/SVI - Spectravideo SVI-328 MK2/config.ini:26, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" # ============================================================ # Machine-specific ROMs (Machines//) @@ -1650,7 +1650,7 @@ files: required: false system: msx2plus note: "MSX2+ European main BIOS. Used by the 'MSX2+ - European' machine config." - source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:34" + source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:34, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: Msx2pe.rom path: "Machines/MSX2+ - European/Msx2pe.rom" @@ -1662,7 +1662,7 @@ files: sha1: "aea0e4a635efce5336e496d36e4cb0a4b79593ff" md5: "277fd57c13f301fb4b366845a32d673a" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:34" + source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:34, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: Msx2pexte.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1672,7 +1672,7 @@ files: required: false system: msx2plus note: "MSX2+ European extension BIOS (SubROM). Used by the 'MSX2+ - European' machine config." - source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:39" + source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:39, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: Msx2pexte.rom path: "Machines/MSX2+ - European/Msx2pexte.rom" @@ -1684,7 +1684,7 @@ files: sha1: "cf00ec60608010aac94cfe245eb7aa67cb44d110" md5: "f78ab735aaad7045badbda8f4c8ac751" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:39" + source_ref: "system/bluemsx/Machines/MSX2+ - European/config.ini:39, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: pesadelo.rom installed_on: [batocera, recalbox, retrobat, retrodeck, retropie] @@ -1694,7 +1694,7 @@ files: required: false system: msx note: "Forte II arcade board ROM (board type MSX-ForteII). Used by the 'Forte II Games - Pesadelo' machine config." - source_ref: "system/bluemsx/Machines/Forte II Games - Pesadelo/config.ini:27" + source_ref: "system/bluemsx/Machines/Forte II Games - Pesadelo/config.ini:27, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" - name: pesadelo.rom path: "Machines/Forte II Games - Pesadelo/pesadelo.rom" @@ -1706,7 +1706,7 @@ files: sha1: "12880dd7ad82acf04861843fb9d4f0f926d18f6b" md5: "ba53d700ec25bcb08020ce693319cd28" note: "Shipped in blueMSXv282full.zip." - source_ref: "system/bluemsx/Machines/Forte II Games - Pesadelo/config.ini:27" + source_ref: "system/bluemsx/Machines/Forte II Games - Pesadelo/config.ini:27, libretro.c:1196-1197, 1447, Src/Board/Machine.c:255-266, 397-470, 623-640, 1451" # ============================================================ # Databases (required for ROM identification/mapper detection) diff --git a/emulators/fmsx.yml b/emulators/fmsx.yml index ab89b3dd1..e0b62cdc0 100644 --- a/emulators/fmsx.yml +++ b/emulators/fmsx.yml @@ -71,7 +71,7 @@ files: required: true system: msx note: "MSX1 main BIOS (32 KB). Loaded for MSX1 model (fMSX/MSX.c:697)." - source_ref: "fMSX/ROMs/MSX.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 697, 2810-2831" # -- MSX2 BIOS -- @@ -83,7 +83,7 @@ files: required: true system: msx2 note: "MSX2 main BIOS (32 KB). Loaded for MSX2 model (fMSX/MSX.c:713)." - source_ref: "fMSX/ROMs/MSX2.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 713, 2810-2831" - name: MSX2EXT.ROM installed_on: [recalbox] @@ -93,7 +93,7 @@ files: required: true system: msx2 note: "MSX2 extension BIOS (16 KB). Loaded alongside MSX2.ROM (fMSX/MSX.c:714)." - source_ref: "fMSX/ROMs/MSX2EXT.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 714, 2810-2831" # -- MSX2+ BIOS (default model) -- @@ -105,7 +105,7 @@ files: required: true system: msx2plus note: "MSX2+ main BIOS (32 KB). Loaded for MSX2+ model, the default (fMSX/MSX.c:735)." - source_ref: "fMSX/ROMs/MSX2P.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 735, 2810-2831" - name: MSX2PEXT.ROM installed_on: [recalbox] @@ -115,7 +115,7 @@ files: required: true system: msx2plus note: "MSX2+ extension BIOS (16 KB). Loaded alongside MSX2P.ROM (fMSX/MSX.c:736)." - source_ref: "fMSX/ROMs/MSX2PEXT.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 736, 2810-2831" # -- Disk support -- @@ -126,7 +126,7 @@ files: sha1: 032cb1c1c75b9a191fa1230978971698d9d2a17f required: false note: "Disk controller BIOS (16 KB). Needed for .dsk content. Enable 'Simulate DiskROM' option (fMSX/MSX.c:784)." - source_ref: "fMSX/ROMs/DISK.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 784, 2810-2831" # -- Optional expansion ROMs -- @@ -137,7 +137,7 @@ files: sha1: 9d789166e3caf28e4742fe933d962e99618c633d required: false note: "FM-PAC cartridge ROM (64 KB, YM2413 FM synthesis). Auto-loaded into first free slot (fMSX/MSX.c:561)." - source_ref: "fMSX/ROMs/FMPAC.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 561, 2875-2890" - name: KANJI.ROM installed_on: [recalbox] @@ -146,7 +146,7 @@ files: sha1: 84a645becec0a25d3ab7a909cde1b242699a8662 required: false note: "Kanji font ROM (128 KB). Auto-loaded if present, no option needed (fMSX/MSX.c:534)." - source_ref: "fMSX/ROMs/KANJI.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 534, 2810-2831" - name: MSXDOS2.ROM installed_on: [recalbox] @@ -155,7 +155,7 @@ files: sha1: c36c9e0f96738a340381e23b4f97245388801a46 required: false note: "MSX-DOS 2 ROM (64 KB). Loaded when 'fmsx_dos2' option enabled and model is MSX2 or MSX2+ (fMSX/MSX.c:549)." - source_ref: "fMSX/ROMs/MSXDOS2.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 549, 2875-2890" - name: PAINTER.ROM installed_on: [recalbox] @@ -164,7 +164,7 @@ files: sha1: 7fd2a28c4fdaeb140f3c8c8fb90271b1472c97b9 required: false note: "Paint utility ROM (64 KB). Auto-loaded for MSX2 and MSX2+ models (fMSX/MSX.c:556)." - source_ref: "fMSX/ROMs/PAINTER.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 556, 2875-2890" - name: RS232.ROM installed_on: [recalbox] @@ -173,7 +173,7 @@ files: sha1: 7aec0134ad6a5177f4056fcb6047083e8e00529b required: false note: "RS-232C serial interface ROM (16 KB + 256 B). Loaded into slot 3:3 (fMSX/MSX.c:537)." - source_ref: "fMSX/ROMs/RS232.ROM" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 537, 2810-2831" # -- GameMaster (not bundled, requires core option) -- @@ -201,42 +201,42 @@ files: required: false md5: 85b38e4128bbc300e675f55b278683a8 note: "Default text font. Loaded by LoadFNT() (fMSX/MSX.c:527). Same content as CYRILLIC.FNT." - source_ref: "fMSX/ROMs/DEFAULT.FNT, libretro.c:1547" + source_ref: "libretro.c:955-963, 1186, 1547, fMSX/MSX.c:523-527, 2787-2794" - name: ITALIC.FNT installed_on: [recalbox] required: false md5: c83e50e9f33b8dd893c414691822740d note: "Italic text font." - source_ref: "fMSX/ROMs/ITALIC.FNT, libretro.c:1547" + source_ref: "libretro.c:955-963, 1186, 1547, fMSX/MSX.c:523-527, 2787-2794" - name: INTERNAT.FNT installed_on: [recalbox] required: false md5: ac4f4a90c1b1887db48ded39c9d9c847 note: "International text font." - source_ref: "fMSX/ROMs/INTERNAT.FNT, libretro.c:1547" + source_ref: "libretro.c:955-963, 1186, 1547, fMSX/MSX.c:523-527, 2787-2794" - name: CYRILLIC.FNT installed_on: [recalbox] required: false md5: 85b38e4128bbc300e675f55b278683a8 note: "Cyrillic text font. Same content as DEFAULT.FNT." - source_ref: "fMSX/ROMs/CYRILLIC.FNT, libretro.c:1547" + source_ref: "libretro.c:955-963, 1186, 1547, fMSX/MSX.c:523-527, 2787-2794" - name: KOREAN.FNT installed_on: [recalbox] required: false md5: 73291e76638a2f5aa2eceb843df468f4 note: "Korean text font." - source_ref: "fMSX/ROMs/KOREAN.FNT, libretro.c:1547" + source_ref: "libretro.c:955-963, 1186, 1547, fMSX/MSX.c:523-527, 2787-2794" - name: JAPANESE.FNT installed_on: [recalbox] required: false md5: aa28f0703b951a6be8df3e28e20d263d note: "Japanese text font." - source_ref: "fMSX/ROMs/JAPANESE.FNT, libretro.c:1547" + source_ref: "libretro.c:955-963, 1186, 1547, fMSX/MSX.c:523-527, 2787-2794" # -- Cartridge identification database -- @@ -252,4 +252,4 @@ files: required: false md5: 74b0f217fa0e2b8bb5a2f8e2ecc69da3 note: "SHA1 database for cartridge identification and mapper detection. Read when CARTS.CRC is absent or holds no matching line (fMSX/MSX.c:2716)." - source_ref: "fMSX/ROMs/CARTS.SHA" + source_ref: "libretro.c:1186, fMSX/MSX.c:523, 2716" diff --git a/emulators/gzdoom.yml b/emulators/gzdoom.yml index 212441074..ee25a5c18 100644 --- a/emulators/gzdoom.yml +++ b/emulators/gzdoom.yml @@ -156,7 +156,7 @@ files: # ================================================================ # IWADs (user-supplied). At least one is needed to launch a game. - # All source refs point to wadsrc_extra/static/iwadinfo.txt entries. + # Each ref gives the iwadinfo.txt entry, then the code that reads it. # ================================================================ # ---- Doom ---- @@ -166,7 +166,7 @@ files: system: doom path: "doom.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:420, 437, 659" + source_ref: "wadsrc_extra/static/iwadinfo.txt:420, 437, 659, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" note: "The Ultimate DOOM and DOOM Registered both use this name and are told apart by their lumps." - name: "doom2.wad" @@ -174,119 +174,119 @@ files: system: doom path: "doom2.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:640, 653" + source_ref: "wadsrc_extra/static/iwadinfo.txt:640, 653, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doom2f.wad" category: game_data system: doom path: "doom2f.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:625, 657" + source_ref: "wadsrc_extra/static/iwadinfo.txt:625, 657, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doombfg.wad" category: game_data system: doom path: "doombfg.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:332, 666" + source_ref: "wadsrc_extra/static/iwadinfo.txt:332, 666, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doom2bfg.wad" category: game_data system: doom path: "doom2bfg.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:560, 667" + source_ref: "wadsrc_extra/static/iwadinfo.txt:560, 667, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doomunity.wad" category: game_data system: doom path: "doomunity.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:369, 661" + source_ref: "wadsrc_extra/static/iwadinfo.txt:369, 661, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doom2unity.wad" category: game_data system: doom path: "doom2unity.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:592, 655" + source_ref: "wadsrc_extra/static/iwadinfo.txt:592, 655, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doomkex.wad" category: game_data system: doom path: "doomkex.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:350, 662" + source_ref: "wadsrc_extra/static/iwadinfo.txt:350, 662, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doom2kex.wad" category: game_data system: doom path: "doom2kex.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:576, 656" + source_ref: "wadsrc_extra/static/iwadinfo.txt:576, 656, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doomxbox.wad" category: game_data system: doom path: "doomxbox.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:403, 660" + source_ref: "wadsrc_extra/static/iwadinfo.txt:403, 660, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doom2xbox.wad" category: game_data system: doom path: "doom2xbox.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:608, 654" + source_ref: "wadsrc_extra/static/iwadinfo.txt:608, 654, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "doom_complete.pk3" category: game_data system: doom path: "doom_complete.pk3" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:389, 652" + source_ref: "wadsrc_extra/static/iwadinfo.txt:389, 652, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "plutonia.wad" category: game_data system: doom path: "plutonia.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:545, 670" + source_ref: "wadsrc_extra/static/iwadinfo.txt:545, 670, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "plutoniaunity.wad" category: game_data system: doom path: "plutoniaunity.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:514, 671" + source_ref: "wadsrc_extra/static/iwadinfo.txt:514, 671, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "plutoniakex.wad" category: game_data system: doom path: "plutoniakex.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:529, 672" + source_ref: "wadsrc_extra/static/iwadinfo.txt:529, 672, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "tnt.wad" category: game_data system: doom path: "tnt.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:499, 673" + source_ref: "wadsrc_extra/static/iwadinfo.txt:499, 673, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "tntunity.wad" category: game_data system: doom path: "tntunity.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:468, 674" + source_ref: "wadsrc_extra/static/iwadinfo.txt:468, 674, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "tntkex.wad" category: game_data system: doom path: "tntkex.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:483, 675" + source_ref: "wadsrc_extra/static/iwadinfo.txt:483, 675, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "nerve.wad" category: game_data @@ -309,7 +309,7 @@ files: system: doom path: "extras.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:357, 376, 488, 534, 582, 598" + source_ref: "wadsrc_extra/static/iwadinfo.txt:357, 376, 488, 534, 582, 598, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:208-215, 320-341, 877-901" note: "Loaded from the IWAD directory by the KEX and Unity editions." - name: "soundtrack" @@ -336,7 +336,7 @@ files: path: "freedoom1.wad" required: false installed_on: [retropie] - source_ref: "wadsrc_extra/static/iwadinfo.txt:307, 676" + source_ref: "wadsrc_extra/static/iwadinfo.txt:307, 676, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "freedoom2.wad" category: game_data @@ -344,14 +344,14 @@ files: path: "freedoom2.wad" required: false installed_on: [retropie] - source_ref: "wadsrc_extra/static/iwadinfo.txt:294, 677" + source_ref: "wadsrc_extra/static/iwadinfo.txt:294, 677, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "freedm.wad" category: game_data system: doom path: "freedm.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:281, 680" + source_ref: "wadsrc_extra/static/iwadinfo.txt:281, 680, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" # ---- Heretic ---- @@ -360,7 +360,7 @@ files: system: heretic path: "heretic.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:241, 244, 254, 257, 681" + source_ref: "wadsrc_extra/static/iwadinfo.txt:241, 244, 254, 257, 681, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" note: "Both Heretic and Shadow of the Serpent Riders use this name and are told apart by the EXTENDED lump." - name: "blasphem.wad" @@ -369,7 +369,7 @@ files: system: heretic path: "blasphem.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:228, 692-693" + source_ref: "wadsrc_extra/static/iwadinfo.txt:228, 692-693, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" # ---- Hexen ---- @@ -378,14 +378,14 @@ files: system: hexen path: "hexen.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:188, 684" + source_ref: "wadsrc_extra/static/iwadinfo.txt:188, 684, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "hexdd.wad" category: game_data system: hexen path: "hexdd.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:196-207, 685" + source_ref: "wadsrc_extra/static/iwadinfo.txt:196-207, 685, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" note: "Deathkings expansion. Requires hexen.wad (Required = Hexen: Beyond Heretic)." # ---- Strife ---- @@ -395,14 +395,14 @@ files: system: strife path: "strife1.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:151, 688" + source_ref: "wadsrc_extra/static/iwadinfo.txt:151, 688, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "sve.wad" category: game_data system: strife path: "sve.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:136, 140, 689" + source_ref: "wadsrc_extra/static/iwadinfo.txt:136, 140, 689, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" note: "Veteran Edition. Required = Strife: Quest for the Sigil (loads voices.wad)." - name: "voices.wad" @@ -410,7 +410,7 @@ files: system: strife path: "voices.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:142, 155" + source_ref: "wadsrc_extra/static/iwadinfo.txt:142, 155, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:208-215, 320-341, 877-901" # ---- Chex Quest ---- @@ -419,14 +419,14 @@ files: system: chex path: "chex.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:123, 694" + source_ref: "wadsrc_extra/static/iwadinfo.txt:123, 694, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "chex3.wad" category: game_data system: chex path: "chex3.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:109, 695" + source_ref: "wadsrc_extra/static/iwadinfo.txt:109, 695, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" # ---- Standalone commercial / community IWADs ---- @@ -435,7 +435,7 @@ files: system: doom path: "hacx.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:83, 698" + source_ref: "wadsrc_extra/static/iwadinfo.txt:83, 698, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "hacx2.wad" category: game_data @@ -450,21 +450,21 @@ files: system: doom path: "action2.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:97, 696" + source_ref: "wadsrc_extra/static/iwadinfo.txt:97, 696, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "harm1.wad" category: game_data system: doom path: "harm1.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:57, 697" + source_ref: "wadsrc_extra/static/iwadinfo.txt:57, 697, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "square.pk3" category: game_data system: doom path: "square.pk3" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:33" + source_ref: "wadsrc_extra/static/iwadinfo.txt:33, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:320-341, 351-396, 626-670" note: "Absent from the Names block: picked up only when named with -iwad." - name: "square1.pk3" @@ -472,18 +472,18 @@ files: system: doom path: "square1.pk3" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:45, 700" + source_ref: "wadsrc_extra/static/iwadinfo.txt:45, 700, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "delaweare.wad" category: game_data system: doom path: "delaweare.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:22, 701" + source_ref: "wadsrc_extra/static/iwadinfo.txt:22, 701, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" - name: "rotwb.wad" category: game_data system: doom path: "rotwb.wad" required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:9, 702" + source_ref: "wadsrc_extra/static/iwadinfo.txt:9, 702, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:3796, src/d_iwad.cpp:286-296, 320-341, 351-396, 502-531" diff --git a/emulators/lzdoom.yml b/emulators/lzdoom.yml index 5be55755b..0f0c79515 100644 --- a/emulators/lzdoom.yml +++ b/emulators/lzdoom.yml @@ -200,7 +200,7 @@ files: # ================================================================ # IWADs (user-supplied). One is needed to start a game. - # All source refs point to wadsrc_extra/static/iwadinfo.txt. + # Each ref gives the iwadinfo.txt entry, then the code that reads it. # ================================================================ # ---- Doom ---- @@ -209,7 +209,7 @@ files: category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:315, 363, 378, 393, 576" + source_ref: "wadsrc_extra/static/iwadinfo.txt:315, 363, 378, 393, 576, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "The Ultimate DOOM, DOOM Registered, the BFG and XBox editions all use this name and are told apart by their lumps." - name: "doom1.wad" @@ -217,92 +217,92 @@ files: system: doom required: false installed_on: [retropie] - source_ref: "wadsrc_extra/static/iwadinfo.txt:402-412, 577" + source_ref: "wadsrc_extra/static/iwadinfo.txt:402-412, 577, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "DOOM Shareware." - name: "doom2.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:489, 518, 545, 571" + source_ref: "wadsrc_extra/static/iwadinfo.txt:489, 518, 545, 571, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "doom2f.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:532, 572" + source_ref: "wadsrc_extra/static/iwadinfo.txt:532, 572, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "nerve.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:494, 523, 558, 562, 617" + source_ref: "wadsrc_extra/static/iwadinfo.txt:494, 523, 558, 562, 617, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:187-195, 253-263, 286-309, 319-367, 466-499, 772-789" note: "No Rest for the Living, which requires DOOM 2. Also loaded from the IWAD directory by the BFG and XBox editions of DOOM 2." - name: "doomunity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:331, 584" + source_ref: "wadsrc_extra/static/iwadinfo.txt:331, 584, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "doom2unity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:503, 585" + source_ref: "wadsrc_extra/static/iwadinfo.txt:503, 585, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "nerveunity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:508" + source_ref: "wadsrc_extra/static/iwadinfo.txt:508, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:187-195, 286-309, 772-789" note: "Loaded from the IWAD directory by DOOM 2: Unity Edition." - name: "extras.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:338, 508" + source_ref: "wadsrc_extra/static/iwadinfo.txt:338, 508, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:187-195, 286-309, 772-789" note: "Loaded from the IWAD directory by the Unity editions." - name: "soundtrack" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:338, 508" + source_ref: "wadsrc_extra/static/iwadinfo.txt:338, 508, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:187-195, 286-309, 772-789" note: "Loaded from the IWAD directory by the Unity editions." - name: "doom_complete.pk3" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:350, 570" + source_ref: "wadsrc_extra/static/iwadinfo.txt:350, 570, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "WadSmoosh merge of the Doom IWADs." - name: "plutonia.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:447, 461, 573" + source_ref: "wadsrc_extra/static/iwadinfo.txt:447, 461, 573, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "tnt.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:420, 434, 574" + source_ref: "wadsrc_extra/static/iwadinfo.txt:420, 434, 574, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "sigil_v1_21.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:468-478, 616" + source_ref: "wadsrc_extra/static/iwadinfo.txt:468-478, 616, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "Sigil, which requires The Ultimate DOOM." - name: "sigil_shreds.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:473" + source_ref: "wadsrc_extra/static/iwadinfo.txt:473, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:187-195, 286-309, 772-789" note: "Loaded from the IWAD directory by Sigil." # ---- Freedoom (free) ---- @@ -312,20 +312,20 @@ files: system: doom required: false installed_on: [retropie] - source_ref: "wadsrc_extra/static/iwadinfo.txt:292, 589" + source_ref: "wadsrc_extra/static/iwadinfo.txt:292, 589, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "freedoom2.wad" category: game_data system: doom required: false installed_on: [retropie] - source_ref: "wadsrc_extra/static/iwadinfo.txt:280, 590" + source_ref: "wadsrc_extra/static/iwadinfo.txt:280, 590, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "freedm.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:268, 593" + source_ref: "wadsrc_extra/static/iwadinfo.txt:268, 593, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" # ---- Heretic ---- @@ -333,14 +333,14 @@ files: category: game_data system: heretic required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:231, 243, 594" + source_ref: "wadsrc_extra/static/iwadinfo.txt:231, 243, 594, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "Heretic and Shadow of the Serpent Riders share the name and are told apart by their lumps." - name: "heretic1.wad" category: game_data system: heretic required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:250-260, 596" + source_ref: "wadsrc_extra/static/iwadinfo.txt:250-260, 596, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "Heretic Shareware." - name: "blasphemer.wad" @@ -348,7 +348,7 @@ files: category: game_data system: heretic required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:219, 605-606" + source_ref: "wadsrc_extra/static/iwadinfo.txt:219, 605-606, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" # ---- Hexen ---- @@ -356,13 +356,13 @@ files: category: game_data system: hexen required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:181, 597" + source_ref: "wadsrc_extra/static/iwadinfo.txt:181, 597, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "hexdd.wad" category: game_data system: hexen required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:188-199, 598" + source_ref: "wadsrc_extra/static/iwadinfo.txt:188-199, 598, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "Deathkings expansion, which requires hexen.wad." # ---- Strife ---- @@ -371,20 +371,20 @@ files: category: game_data system: strife required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:144, 601" + source_ref: "wadsrc_extra/static/iwadinfo.txt:144, 601, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "sve.wad" category: game_data system: strife required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:130, 134, 602" + source_ref: "wadsrc_extra/static/iwadinfo.txt:130, 134, 602, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" note: "Veteran Edition, which requires Strife: Quest for the Sigil." - name: "voices.wad" category: game_data system: strife required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:135, 148" + source_ref: "wadsrc_extra/static/iwadinfo.txt:135, 148, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:187-195, 286-309, 772-789" note: "Loaded from the IWAD directory by Strife." # ---- Chex Quest ---- @@ -393,13 +393,13 @@ files: category: game_data system: chex required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:118, 607" + source_ref: "wadsrc_extra/static/iwadinfo.txt:118, 607, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "chex3.wad" category: game_data system: chex required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:105, 608" + source_ref: "wadsrc_extra/static/iwadinfo.txt:105, 608, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" # ---- Standalone commercial and community IWADs ---- @@ -407,47 +407,47 @@ files: category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:81, 611" + source_ref: "wadsrc_extra/static/iwadinfo.txt:81, 611, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "hacx2.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:69, 612" + source_ref: "wadsrc_extra/static/iwadinfo.txt:69, 612, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "action2.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:93, 609" + source_ref: "wadsrc_extra/static/iwadinfo.txt:93, 609, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "harm1.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:57, 610" + source_ref: "wadsrc_extra/static/iwadinfo.txt:57, 610, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "square.pk3" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:33" + source_ref: "wadsrc_extra/static/iwadinfo.txt:33, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:286-309, 319-367, 566-604" note: "Absent from the Names block: picked up only when named with -iwad." - name: "square1.pk3" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:45, 613" + source_ref: "wadsrc_extra/static/iwadinfo.txt:45, 613, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "delaweare.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:22, 614" + source_ref: "wadsrc_extra/static/iwadinfo.txt:22, 614, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" - name: "rotwb.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:9, 615" + source_ref: "wadsrc_extra/static/iwadinfo.txt:9, 615, wadsrc_extra/CMakeLists.txt:3, src/d_main.cpp:2539, src/d_iwad.cpp:253-263, 286-309, 319-367, 466-499" diff --git a/emulators/msx-emu.yml b/emulators/msx-emu.yml index 8a16aa246..cb482d63f 100644 --- a/emulators/msx-emu.yml +++ b/emulators/msx-emu.yml @@ -238,19 +238,6 @@ files: description: "C-BIOS MSX-MUSIC ROM, slot 3-1 from page 2" source_ref: "MSX.emu/res/firmware/Machines/MSX2+ - C-BIOS/config.ini:31, MSX.emu/src/blueMSX/Board/Machine.c:300-339,450-468,1168-1181, MSX.emu/src/blueMSX/Memory/romMapperMsxMusic.c:55-68" - - name: "cbios.txt" - path: "cbios.txt" - system: msx - required: false - bundled: true - category: game_data - size: 10469 - sha1: "78ae5c049bc94ee1284536c419388b1ab7ac218c" - description: "C-BIOS 0.29 release notes and licence, bundled beside the machine folders" - note: >- - Shipped in the application bundle. No code reads it. - source_ref: "MSX.emu/res/firmware/cbios.txt" - - name: "config.ini" path: "Machines/MSX/config.ini" system: msx diff --git a/emulators/openmsx-libretro.yml b/emulators/openmsx-libretro.yml index 98df73e1b..4b2131c3a 100644 --- a/emulators/openmsx-libretro.yml +++ b/emulators/openmsx-libretro.yml @@ -53,7 +53,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_VG_8020" - source_ref: "share/machines/Philips_VG_8020.xml:52-55" + source_ref: "share/machines/Philips_VG_8020.xml:52-55, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-75p_basic-bios1.rom" aliases: ["cx5m_basic-bios1.rom"] @@ -62,7 +62,7 @@ files: required: false validation: [sha1] description: "Read by machines Sony_HB-75P, Yamaha_CX5M" - source_ref: "share/machines/Sony_HB-75P.xml:59-62, share/machines/Yamaha_CX5M.xml:54-57" + source_ref: "share/machines/Sony_HB-75P.xml:59-62, share/machines/Yamaha_CX5M.xml:54-57, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/machines/Yamaha_CX5M.xml names it cx5m_basic-bios1.rom." - name: "hb-75p_firmware.rom" @@ -71,7 +71,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-75P" - source_ref: "share/machines/Sony_HB-75P.xml:66-69" + source_ref: "share/machines/Sony_HB-75P.xml:66-69, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hx-10_basic-bios1.rom" path: "openmsx/share/systemroms/hx-10_basic-bios1.rom" @@ -79,7 +79,7 @@ files: required: false validation: [sha1] description: "Read by machine Toshiba_HX-10" - source_ref: "share/machines/Toshiba_HX-10.xml:58-61" + source_ref: "share/machines/Toshiba_HX-10.xml:58-61, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "sfg-01.rom" path: "openmsx/share/systemroms/sfg-01.rom" @@ -87,7 +87,7 @@ files: required: false validation: [sha1] description: "Read by machine Yamaha_CX5M and extension Yamaha_SFG-01" - source_ref: "share/machines/Yamaha_CX5M.xml:80-83, share/extensions/Yamaha_SFG-01.xml:31-34" + source_ref: "share/machines/Yamaha_CX5M.xml:80-83, share/extensions/Yamaha_SFG-01.xml:31-34, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "NMS8245SystemROM1.08.bin" path: "openmsx/share/systemroms/NMS8245SystemROM1.08.bin" @@ -95,7 +95,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8245" - source_ref: "share/machines/Philips_NMS_8245.xml:61-65, share/machines/Philips_NMS_8245.xml:92-96, share/machines/Philips_NMS_8245.xml:134-138" + source_ref: "share/machines/Philips_NMS_8245.xml:61-65, share/machines/Philips_NMS_8245.xml:92-96, share/machines/Philips_NMS_8245.xml:134-138, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "NMS8245SystemROM1.06.bin" path: "openmsx/share/systemroms/NMS8245SystemROM1.06.bin" @@ -103,7 +103,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8245" - source_ref: "share/machines/Philips_NMS_8245.xml:66-70, share/machines/Philips_NMS_8245.xml:97-101, share/machines/Philips_NMS_8245.xml:139-143" + source_ref: "share/machines/Philips_NMS_8245.xml:66-70, share/machines/Philips_NMS_8245.xml:97-101, share/machines/Philips_NMS_8245.xml:139-143, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "NMS8245SystemROM1.05.bin" path: "openmsx/share/systemroms/NMS8245SystemROM1.05.bin" @@ -111,7 +111,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8245" - source_ref: "share/machines/Philips_NMS_8245.xml:71-75, share/machines/Philips_NMS_8245.xml:102-106" + source_ref: "share/machines/Philips_NMS_8245.xml:71-75, share/machines/Philips_NMS_8245.xml:102-106, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "nms8245_basic-bios2.rom" aliases: ["nms8250_basic-bios2.rom"] @@ -120,7 +120,7 @@ files: required: false validation: [sha1] description: "Read by machines Philips_NMS_8245, Philips_NMS_8250" - source_ref: "share/machines/Philips_NMS_8245.xml:76-79, share/machines/Philips_NMS_8250.xml:23-26" + source_ref: "share/machines/Philips_NMS_8245.xml:76-79, share/machines/Philips_NMS_8250.xml:23-26, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/machines/Philips_NMS_8250.xml names it nms8250_basic-bios2.rom." - name: "nms8245_msx2sub.rom" @@ -129,7 +129,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8245" - source_ref: "share/machines/Philips_NMS_8245.xml:107-111" + source_ref: "share/machines/Philips_NMS_8245.xml:107-111, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "NMS8245SystemROM1.05.bin" path: "openmsx/share/systemroms/7e6a267e/NMS8245SystemROM1.05.bin" @@ -137,7 +137,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8245" - source_ref: "share/machines/Philips_NMS_8245.xml:144-148" + source_ref: "share/machines/Philips_NMS_8245.xml:144-148, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "nms8245_disk.rom" path: "openmsx/share/systemroms/nms8245_disk.rom" @@ -145,7 +145,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8245" - source_ref: "share/machines/Philips_NMS_8245.xml:149-153" + source_ref: "share/machines/Philips_NMS_8245.xml:149-153, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "nms8250_msx2sub.rom" path: "openmsx/share/systemroms/nms8250_msx2sub.rom" @@ -153,7 +153,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8250" - source_ref: "share/machines/Philips_NMS_8250.xml:39-42" + source_ref: "share/machines/Philips_NMS_8250.xml:39-42, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "nms8250_disk.rom" path: "openmsx/share/systemroms/nms8250_disk.rom" @@ -161,7 +161,7 @@ files: required: false validation: [sha1] description: "Read by machine Philips_NMS_8250" - source_ref: "share/machines/Philips_NMS_8250.xml:62-67" + source_ref: "share/machines/Philips_NMS_8250.xml:62-67, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f700p_basic-bios2.rom" path: "openmsx/share/systemroms/hb-f700p_basic-bios2.rom" @@ -169,7 +169,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F700P" - source_ref: "share/machines/Sony_HB-F700P.xml:65-68" + source_ref: "share/machines/Sony_HB-F700P.xml:65-68, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f700p_msx2sub.rom" path: "openmsx/share/systemroms/hb-f700p_msx2sub.rom" @@ -177,7 +177,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F700P" - source_ref: "share/machines/Sony_HB-F700P.xml:83-87" + source_ref: "share/machines/Sony_HB-F700P.xml:83-87, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f700p_disk.rom" path: "openmsx/share/systemroms/hb-f700p_disk.rom" @@ -185,7 +185,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F700P" - source_ref: "share/machines/Sony_HB-F700P.xml:94-98" + source_ref: "share/machines/Sony_HB-F700P.xml:94-98, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f1xd_basic-bios2.rom" path: "openmsx/share/systemroms/hb-f1xd_basic-bios2.rom" @@ -193,7 +193,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XD" - source_ref: "share/machines/Sony_HB-F1XD.xml:69-72" + source_ref: "share/machines/Sony_HB-F1XD.xml:69-72, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f1xd_msx2sub.rom" path: "openmsx/share/systemroms/hb-f1xd_msx2sub.rom" @@ -201,7 +201,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XD" - source_ref: "share/machines/Sony_HB-F1XD.xml:85-88" + source_ref: "share/machines/Sony_HB-F1XD.xml:85-88, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f1xd_disk.rom" aliases: ["hbd-20w.rom", "hbd-f1.rom"] @@ -210,7 +210,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XD and extensions Sony_HBD-20W, Sony_HBD-F1" - source_ref: "share/machines/Sony_HB-F1XD.xml:95-98, share/extensions/Sony_HBD-20W.xml:21-24, share/extensions/Sony_HBD-F1.xml:21-24" + source_ref: "share/machines/Sony_HB-F1XD.xml:95-98, share/extensions/Sony_HBD-20W.xml:21-24, share/extensions/Sony_HBD-F1.xml:21-24, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/extensions/Sony_HBD-20W.xml names it hbd-20w.rom, and share/extensions/Sony_HBD-F1.xml names it hbd-f1.rom." - name: "hb-f1xv_kanjifont.rom" @@ -220,7 +220,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XV and extension Sony_HBI-J1" - source_ref: "share/machines/Sony_HB-F1XV.xml:30-33, share/extensions/Sony_HBI-J1.xml:15-18" + source_ref: "share/machines/Sony_HB-F1XV.xml:30-33, share/extensions/Sony_HBI-J1.xml:15-18, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/extensions/Sony_HBI-J1.xml names it hbi-j1_kanjifont.rom." - name: "Sony_HB-F1XV.rom" @@ -229,7 +229,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XV" - source_ref: "share/machines/Sony_HB-F1XV.xml:89-93, share/machines/Sony_HB-F1XV.xml:136-140, share/machines/Sony_HB-F1XV.xml:148-152, share/machines/Sony_HB-F1XV.xml:166-170, share/machines/Sony_HB-F1XV.xml:182-186" + source_ref: "share/machines/Sony_HB-F1XV.xml:89-93, share/machines/Sony_HB-F1XV.xml:136-140, share/machines/Sony_HB-F1XV.xml:148-152, share/machines/Sony_HB-F1XV.xml:166-170, share/machines/Sony_HB-F1XV.xml:182-186, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f1xv_basic-bios2p.rom" path: "openmsx/share/systemroms/hb-f1xv_basic-bios2p.rom" @@ -237,7 +237,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XV" - source_ref: "share/machines/Sony_HB-F1XV.xml:94-97" + source_ref: "share/machines/Sony_HB-F1XV.xml:94-97, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f1xv.rom" aliases: ["hbi-j1_msx-je.rom"] @@ -246,7 +246,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XV and extension Sony_HBI-J1" - source_ref: "share/machines/Sony_HB-F1XV.xml:108-111, share/extensions/Sony_HBI-J1.xml:27-30" + source_ref: "share/machines/Sony_HB-F1XV.xml:108-111, share/extensions/Sony_HBI-J1.xml:27-30, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/extensions/Sony_HBI-J1.xml names it hbi-j1_msx-je.rom." - name: "hb-f1xv_msx2sub.rom" @@ -256,7 +256,7 @@ files: required: false validation: [sha1] description: "Read by machines Sony_HB-F1XV, Panasonic_FS-A1WSX" - source_ref: "share/machines/Sony_HB-F1XV.xml:141-144, share/machines/Panasonic_FS-A1WSX.xml:158-161" + source_ref: "share/machines/Sony_HB-F1XV.xml:141-144, share/machines/Panasonic_FS-A1WSX.xml:158-161, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/machines/Panasonic_FS-A1WSX.xml names it fs-a1wsx_msx2psub.rom." - name: "hb-f1xv_kanjibasic.rom" @@ -266,7 +266,7 @@ files: required: false validation: [sha1] description: "Read by machines Sony_HB-F1XV, Panasonic_FS-A1WSX" - source_ref: "share/machines/Sony_HB-F1XV.xml:153-156, share/machines/Panasonic_FS-A1WSX.xml:165-168" + source_ref: "share/machines/Sony_HB-F1XV.xml:153-156, share/machines/Panasonic_FS-A1WSX.xml:165-168, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/machines/Panasonic_FS-A1WSX.xml names it fs-a1wsx_kanjibasic.rom." - name: "hb-f1xv_disk.rom" @@ -275,7 +275,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XV" - source_ref: "share/machines/Sony_HB-F1XV.xml:171-174" + source_ref: "share/machines/Sony_HB-F1XV.xml:171-174, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb-f1xv_fmbasic.rom" path: "openmsx/share/systemroms/hb-f1xv_fmbasic.rom" @@ -283,7 +283,7 @@ files: required: false validation: [sha1] description: "Read by machine Sony_HB-F1XV" - source_ref: "share/machines/Sony_HB-F1XV.xml:187-190" + source_ref: "share/machines/Sony_HB-F1XV.xml:187-190, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-a1wsx_kanjifont.rom" aliases: ["fs-a1st_kanjifont.rom", "fs-a1gt_kanjifont.rom"] @@ -292,7 +292,7 @@ files: required: false validation: [sha1] description: "Read by machines Panasonic_FS-A1WSX, Panasonic_FS-A1ST, Panasonic_FS-A1GT" - source_ref: "share/machines/Panasonic_FS-A1WSX.xml:28-31, share/machines/Panasonic_FS-A1ST.xml:32-35, share/machines/Panasonic_FS-A1GT.xml:140-143" + source_ref: "share/machines/Panasonic_FS-A1WSX.xml:28-31, share/machines/Panasonic_FS-A1ST.xml:32-35, share/machines/Panasonic_FS-A1GT.xml:140-143, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/machines/Panasonic_FS-A1ST.xml names it fs-a1st_kanjifont.rom, and share/machines/Panasonic_FS-A1GT.xml names it fs-a1gt_kanjifont.rom." - name: "fs-a1wsx_IC18.rom" @@ -301,7 +301,7 @@ files: required: false validation: [sha1] description: "Read by machine Panasonic_FS-A1WSX" - source_ref: "share/machines/Panasonic_FS-A1WSX.xml:97-101, share/machines/Panasonic_FS-A1WSX.xml:114-118, share/machines/Panasonic_FS-A1WSX.xml:153-157, share/machines/Panasonic_FS-A1WSX.xml:177-181" + source_ref: "share/machines/Panasonic_FS-A1WSX.xml:97-101, share/machines/Panasonic_FS-A1WSX.xml:114-118, share/machines/Panasonic_FS-A1WSX.xml:153-157, share/machines/Panasonic_FS-A1WSX.xml:177-181, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-a1wsx_basic-bios2p.rom" path: "openmsx/share/systemroms/fs-a1wsx_basic-bios2p.rom" @@ -309,7 +309,7 @@ files: required: false validation: [sha1] description: "Read by machine Panasonic_FS-A1WSX" - source_ref: "share/machines/Panasonic_FS-A1WSX.xml:102-105" + source_ref: "share/machines/Panasonic_FS-A1WSX.xml:102-105, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-a1wsx_fmbasic.rom" path: "openmsx/share/systemroms/fs-a1wsx_fmbasic.rom" @@ -317,7 +317,7 @@ files: required: false validation: [sha1] description: "Read by machine Panasonic_FS-A1WSX" - source_ref: "share/machines/Panasonic_FS-A1WSX.xml:119-123" + source_ref: "share/machines/Panasonic_FS-A1WSX.xml:119-123, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-a1wsx_disk.rom" path: "openmsx/share/systemroms/fs-a1wsx_disk.rom" @@ -325,7 +325,7 @@ files: required: false validation: [sha1] description: "Read by machine Panasonic_FS-A1WSX" - source_ref: "share/machines/Panasonic_FS-A1WSX.xml:182-185" + source_ref: "share/machines/Panasonic_FS-A1WSX.xml:182-185, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-a1wsx_firmware.rom" path: "openmsx/share/systemroms/fs-a1wsx_firmware.rom" @@ -333,7 +333,7 @@ files: required: false validation: [sha1] description: "Read by machine Panasonic_FS-A1WSX" - source_ref: "share/machines/Panasonic_FS-A1WSX.xml:211-214" + source_ref: "share/machines/Panasonic_FS-A1WSX.xml:211-214, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-a1st_firmware.rom" path: "openmsx/share/systemroms/fs-a1st_firmware.rom" @@ -341,7 +341,7 @@ files: required: false validation: [sha1] description: "Read by machine Panasonic_FS-A1ST" - source_ref: "share/machines/Panasonic_FS-A1ST.xml:22-26" + source_ref: "share/machines/Panasonic_FS-A1ST.xml:22-26, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-a1gt_firmware.rom" path: "openmsx/share/systemroms/fs-a1gt_firmware.rom" @@ -349,7 +349,7 @@ files: required: false validation: [sha1] description: "Read by machine Panasonic_FS-A1GT" - source_ref: "share/machines/Panasonic_FS-A1GT.xml:22-26" + source_ref: "share/machines/Panasonic_FS-A1GT.xml:22-26, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ascii_msxdos22.rom" path: "openmsx/share/systemroms/ascii_msxdos22.rom" @@ -357,7 +357,7 @@ files: required: false validation: [sha1] description: "Read by extension ASCII_MSX-DOS2" - source_ref: "share/extensions/ASCII_MSX-DOS2.xml:18-21, share/extensions/ASCII_MSX-DOS2.xml:36-40" + source_ref: "share/extensions/ASCII_MSX-DOS2.xml:18-21, share/extensions/ASCII_MSX-DOS2.xml:36-40, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "msx-write_kanjifont.rom" aliases: ["ec-702_kanjifont.rom"] @@ -366,7 +366,7 @@ files: required: false validation: [sha1] description: "Read by extensions ASCII_Japanese_MSX-Write, Konami_EC-702" - source_ref: "share/extensions/ASCII_Japanese_MSX-Write.xml:15-18, share/extensions/Konami_EC-702.xml:14-17" + source_ref: "share/extensions/ASCII_Japanese_MSX-Write.xml:15-18, share/extensions/Konami_EC-702.xml:14-17, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/extensions/Konami_EC-702.xml names it ec-702_kanjifont.rom." - name: "Japanese MSX-Write (1986) (Ascii) (J).rom" @@ -375,7 +375,7 @@ files: required: false validation: [sha1] description: "Read by extension ASCII_Japanese_MSX-Write" - source_ref: "share/extensions/ASCII_Japanese_MSX-Write.xml:26-29" + source_ref: "share/extensions/ASCII_Japanese_MSX-Write.xml:26-29, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "msx-write_ii_kanjifont.rom" path: "openmsx/share/systemroms/msx-write_ii_kanjifont.rom" @@ -383,7 +383,7 @@ files: required: false validation: [sha1] description: "Read by extension ASCII_Japanese_MSX-Write_II" - source_ref: "share/extensions/ASCII_Japanese_MSX-Write_II.xml:15-18" + source_ref: "share/extensions/ASCII_Japanese_MSX-Write_II.xml:15-18, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "Japanese MSX-Write II (1988) (Ascii) (J).rom" path: "openmsx/share/systemroms/Japanese MSX-Write II (1988) (Ascii) (J).rom" @@ -391,7 +391,7 @@ files: required: false validation: [sha1] description: "Read by extension ASCII_Japanese_MSX-Write_II" - source_ref: "share/extensions/ASCII_Japanese_MSX-Write_II.xml:28-31" + source_ref: "share/extensions/ASCII_Japanese_MSX-Write_II.xml:28-31, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "msxdos22.rom" path: "openmsx/share/systemroms/msxdos22.rom" @@ -399,7 +399,7 @@ files: required: false validation: [sha1] description: "Read by extension msxdos2" - source_ref: "share/extensions/msxdos2.xml:17-22" + source_ref: "share/extensions/msxdos2.xml:17-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "avt_dpf-550_disk.rom" path: "openmsx/share/systemroms/avt_dpf-550_disk.rom" @@ -407,7 +407,7 @@ files: required: false validation: [sha1] description: "Read by extension AVT_DPF-550" - source_ref: "share/extensions/AVT_DPF-550.xml:20-23" + source_ref: "share/extensions/AVT_DPF-550.xml:20-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "mu-pack.rom" path: "openmsx/share/systemroms/mu-pack.rom" @@ -415,7 +415,7 @@ files: required: false validation: [sha1] description: "Read by extension mu-PACK" - source_ref: "share/extensions/mu-PACK.xml:26-29" + source_ref: "share/extensions/mu-PACK.xml:26-29, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fmpak.rom" path: "openmsx/share/systemroms/fmpak.rom" @@ -423,7 +423,7 @@ files: required: false validation: [sha1] description: "Read by extension Checkmark_FM_Stereo_PAK" - source_ref: "share/extensions/Checkmark_FM_Stereo_PAK.xml:25-28" + source_ref: "share/extensions/Checkmark_FM_Stereo_PAK.xml:25-28, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "computer_mates_disk_interface.rom" path: "openmsx/share/systemroms/computer_mates_disk_interface.rom" @@ -431,7 +431,7 @@ files: required: false validation: [sha1] description: "Read by extension Computer_Mates_Disk_Interface" - source_ref: "share/extensions/Computer_Mates_Disk_Interface.xml:44-47" + source_ref: "share/extensions/Computer_Mates_Disk_Interface.xml:44-47, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ROM_Hunter_Mk2.rom" path: "openmsx/share/systemroms/ROM_Hunter_Mk2.rom" @@ -439,7 +439,7 @@ files: required: false validation: [sha1] description: "Read by extension ROM_Hunter_Mk2" - source_ref: "share/extensions/ROM_Hunter_Mk2.xml:17-20" + source_ref: "share/extensions/ROM_Hunter_Mk2.xml:17-20, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ddx_3.0.rom" path: "openmsx/share/systemroms/ddx_3.0.rom" @@ -447,7 +447,7 @@ files: required: false validation: [sha1] description: "Read by extension DDX_3.0" - source_ref: "share/extensions/DDX_3.0.xml:20-25" + source_ref: "share/extensions/DDX_3.0.xml:20-25, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "mr512.rom" path: "openmsx/share/systemroms/mr512.rom" @@ -455,7 +455,7 @@ files: required: false validation: [sha1] description: "Read by extension MegaRAM_Disk" - source_ref: "share/extensions/MegaRAM_Disk.xml:19-22" + source_ref: "share/extensions/MegaRAM_Disk.xml:19-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ESPUNAPI_IO.rom" path: "openmsx/share/systemroms/ESPUNAPI_IO.rom" @@ -463,7 +463,7 @@ files: required: false validation: [sha1] description: "Read by extension smxwifi" - source_ref: "share/extensions/smxwifi.xml:18-21" + source_ref: "share/extensions/smxwifi.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "chakkari.rom" path: "openmsx/share/systemroms/chakkari.rom" @@ -471,7 +471,7 @@ files: required: false validation: [sha1] description: "Read by extension Epson_Chakkari_Copy" - source_ref: "share/extensions/Epson_Chakkari_Copy.xml:18-22" + source_ref: "share/extensions/Epson_Chakkari_Copy.xml:18-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "rs232.rom" path: "openmsx/share/systemroms/rs232.rom" @@ -479,7 +479,7 @@ files: required: false validation: [sha1] description: "Read by extension rs232" - source_ref: "share/extensions/rs232.xml:18-22" + source_ref: "share/extensions/rs232.xml:18-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ct-80e.rom" path: "openmsx/share/systemroms/ct-80e.rom" @@ -487,7 +487,7 @@ files: required: false validation: [sha1] description: "Read by extension Gradiente_CT-80E" - source_ref: "share/extensions/Gradiente_CT-80E.xml:26-29" + source_ref: "share/extensions/Gradiente_CT-80E.xml:26-29, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "mpc-310h.rom" path: "openmsx/share/systemroms/mpc-310h.rom" @@ -495,7 +495,7 @@ files: required: false validation: [sha1] description: "Read by extension Hitachi_MPC-310H" - source_ref: "share/extensions/Hitachi_MPC-310H.xml:20-23" + source_ref: "share/extensions/Hitachi_MPC-310H.xml:20-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "yrw801.rom" path: "openmsx/share/systemroms/yrw801.rom" @@ -503,7 +503,7 @@ files: required: false validation: [sha1] description: "Read by extensions Jun_Soft_DalSoRi_R2, moonsound" - source_ref: "share/extensions/Jun_Soft_DalSoRi_R2.xml:22-25, share/extensions/moonsound.xml:16-19" + source_ref: "share/extensions/Jun_Soft_DalSoRi_R2.xml:22-25, share/extensions/moonsound.xml:16-19, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "Konami EC-701 program.rom" path: "openmsx/share/systemroms/Konami EC-701 program.rom" @@ -511,7 +511,7 @@ files: required: false validation: [sha1] description: "Read by extension Konami_EC-701" - source_ref: "share/extensions/Konami_EC-701.xml:17-21" + source_ref: "share/extensions/Konami_EC-701.xml:17-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "Konami EC-701 dictionary.rom" path: "openmsx/share/systemroms/Konami EC-701 dictionary.rom" @@ -519,7 +519,7 @@ files: required: false validation: [sha1] description: "Read by extension Konami_EC-701" - source_ref: "share/extensions/Konami_EC-701.xml:22-25" + source_ref: "share/extensions/Konami_EC-701.xml:22-25, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "megaflashrom_scc+_sd.rom" path: "openmsx/share/systemroms/megaflashrom_scc+_sd.rom" @@ -527,7 +527,7 @@ files: required: false validation: [sha1] description: "Flash content read by extension MegaFlashROM_SCC+_SD, found by its sha1 alone: the XML names no file" - source_ref: "share/extensions/MegaFlashROM_SCC+_SD.xml:20-22" + source_ref: "share/extensions/MegaFlashROM_SCC+_SD.xml:20-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "cdx-2.rom" path: "openmsx/share/systemroms/cdx-2.rom" @@ -535,7 +535,7 @@ files: required: false validation: [sha1] description: "Read by extension Microsol_CDX-2" - source_ref: "share/extensions/Microsol_CDX-2.xml:20-23" + source_ref: "share/extensions/Microsol_CDX-2.xml:20-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ml-30dc.rom" path: "openmsx/share/systemroms/ml-30dc.rom" @@ -543,7 +543,7 @@ files: required: false validation: [sha1] description: "Read by extension Mitsubishi_ML-30DC_ML-30FD" - source_ref: "share/extensions/Mitsubishi_ML-30DC_ML-30FD.xml:19-22" + source_ref: "share/extensions/Mitsubishi_ML-30DC_ML-30FD.xml:19-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fmpac.rom" path: "openmsx/share/systemroms/fmpac.rom" @@ -551,7 +551,7 @@ files: required: false validation: [sha1] description: "Read by extensions mbstereo, fmpac" - source_ref: "share/extensions/mbstereo.xml:23-27, share/extensions/fmpac.xml:22-26" + source_ref: "share/extensions/mbstereo.xml:23-27, share/extensions/fmpac.xml:22-26, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "novaxis.rom" path: "openmsx/share/systemroms/novaxis.rom" @@ -559,7 +559,7 @@ files: required: false validation: [sha1] description: "Read by extension Gouda_SCSI" - source_ref: "share/extensions/Gouda_SCSI.xml:18-21" + source_ref: "share/extensions/Gouda_SCSI.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "msxpibios.rom" path: "openmsx/share/systemroms/msxpibios.rom" @@ -567,7 +567,7 @@ files: required: false validation: [sha1] description: "Read by extension MSXPi" - source_ref: "share/extensions/MSXPi.xml:28-35" + source_ref: "share/extensions/MSXPi.xml:28-35, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "msxaudio13.OPL3_mono.rom" path: "openmsx/share/systemroms/msxaudio13.OPL3_mono.rom" @@ -575,7 +575,7 @@ files: required: false validation: [sha1] description: "Read by extension OPL3Cartridge2_mono" - source_ref: "share/extensions/OPL3Cartridge2_mono.xml:29-34" + source_ref: "share/extensions/OPL3Cartridge2_mono.xml:29-34, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "msxaudio13.OPL3_stereo.rom" path: "openmsx/share/systemroms/msxaudio13.OPL3_stereo.rom" @@ -583,7 +583,7 @@ files: required: false validation: [sha1] description: "Read by extension OPL3Cartridge2_stereo" - source_ref: "share/extensions/OPL3Cartridge2_stereo.xml:29-34" + source_ref: "share/extensions/OPL3Cartridge2_stereo.xml:29-34, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "cf-sm003_main.rom" path: "openmsx/share/systemroms/cf-sm003_main.rom" @@ -591,7 +591,7 @@ files: required: false validation: [sha1] description: "Read by extension National_CF-SM003" - source_ref: "share/extensions/National_CF-SM003.xml:18-21" + source_ref: "share/extensions/National_CF-SM003.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "cf-sm003_kanjifont.rom" path: "openmsx/share/systemroms/cf-sm003_kanjifont.rom" @@ -599,7 +599,7 @@ files: required: false validation: [sha1] description: "Read by extension National_CF-SM003" - source_ref: "share/extensions/National_CF-SM003.xml:22-25" + source_ref: "share/extensions/National_CF-SM003.xml:22-25, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "cf-sm003_data.rom" aliases: ["skw-01_data.rom"] @@ -608,7 +608,7 @@ files: required: false validation: [sha1] description: "Read by extensions National_CF-SM003, Yamaha_SKW-01" - source_ref: "share/extensions/National_CF-SM003.xml:26-29, share/extensions/Yamaha_SKW-01.xml:26-29" + source_ref: "share/extensions/National_CF-SM003.xml:26-29, share/extensions/Yamaha_SKW-01.xml:26-29, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" note: "share/extensions/Yamaha_SKW-01.xml names it skw-01_data.rom." - name: "NEOSC.ROM" @@ -617,7 +617,7 @@ files: required: false validation: [sha1] description: "Read by extension Neos_MA-20R" - source_ref: "share/extensions/Neos_MA-20R.xml:21-24" + source_ref: "share/extensions/Neos_MA-20R.xml:21-24, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "NEOSV.ROM" path: "openmsx/share/systemroms/NEOSV.ROM" @@ -625,7 +625,7 @@ files: required: false validation: [sha1] description: "Read by extension Neos_MA-20V" - source_ref: "share/extensions/Neos_MA-20V.xml:22-25" + source_ref: "share/extensions/Neos_MA-20V.xml:22-25, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-fd1a.rom" path: "openmsx/share/systemroms/fs-fd1a.rom" @@ -633,7 +633,7 @@ files: required: false validation: [sha1] description: "Read by extension Panasonic_FS-FD1A" - source_ref: "share/extensions/Panasonic_FS-FD1A.xml:17-20" + source_ref: "share/extensions/Panasonic_FS-FD1A.xml:17-20, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-ca1.rom" path: "openmsx/share/systemroms/fs-ca1.rom" @@ -641,7 +641,7 @@ files: required: false validation: [sha1] description: "Read by extension Panasonic_FS-CA1" - source_ref: "share/extensions/Panasonic_FS-CA1.xml:25-30" + source_ref: "share/extensions/Panasonic_FS-CA1.xml:25-30, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-pw1_kanjifont.rom" path: "openmsx/share/systemroms/fs-pw1_kanjifont.rom" @@ -649,7 +649,7 @@ files: required: false validation: [sha1] description: "Read by extension Panasonic_FS-PW1" - source_ref: "share/extensions/Panasonic_FS-PW1.xml:15-18" + source_ref: "share/extensions/Panasonic_FS-PW1.xml:15-18, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fs-pw1_msxword.rom" path: "openmsx/share/systemroms/fs-pw1_msxword.rom" @@ -657,7 +657,7 @@ files: required: false validation: [sha1] description: "Read by extension Panasonic_FS-PW1" - source_ref: "share/extensions/Panasonic_FS-PW1.xml:26-29" + source_ref: "share/extensions/Panasonic_FS-PW1.xml:26-29, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "nms1200_6.rom" path: "openmsx/share/systemroms/nms1200_6.rom" @@ -665,7 +665,7 @@ files: required: false validation: [sha1] description: "Read by extension Philips_NMS_1200" - source_ref: "share/extensions/Philips_NMS_1200.xml:19-23" + source_ref: "share/extensions/Philips_NMS_1200.xml:19-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "nms1205.rom" path: "openmsx/share/systemroms/nms1205.rom" @@ -673,7 +673,7 @@ files: required: false validation: [sha1] description: "Read by extension Philips_NMS_1205" - source_ref: "share/extensions/Philips_NMS_1205.xml:39-42" + source_ref: "share/extensions/Philips_NMS_1205.xml:39-42, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "msxaudio12pre4a.rom" path: "openmsx/share/systemroms/msxaudio12pre4a.rom" @@ -681,7 +681,7 @@ files: required: false validation: [sha1] description: "Read by extension Boosted_audio" - source_ref: "share/extensions/Boosted_audio.xml:36-42" + source_ref: "share/extensions/Boosted_audio.xml:36-42, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "carnivore2.rom" path: "openmsx/share/systemroms/carnivore2.rom" @@ -689,7 +689,7 @@ files: required: false validation: [sha1] description: "Flash content read by extension Carnivore2, found by its sha1 alone: the XML names no file" - source_ref: "share/extensions/Carnivore2.xml:19-23" + source_ref: "share/extensions/Carnivore2.xml:19-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "mfd-001_disk.rom" path: "openmsx/share/systemroms/mfd-001_disk.rom" @@ -697,7 +697,7 @@ files: required: false validation: [sha1] description: "Read by extension Sanyo_MFD-001" - source_ref: "share/extensions/Sanyo_MFD-001.xml:18-21" + source_ref: "share/extensions/Sanyo_MFD-001.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "mrs-001.rom" path: "openmsx/share/systemroms/mrs-001.rom" @@ -705,7 +705,7 @@ files: required: false validation: [sha1] description: "Read by extension Sanyo_MRS-001" - source_ref: "share/extensions/Sanyo_MRS-001.xml:19-22" + source_ref: "share/extensions/Sanyo_MRS-001.xml:19-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hb3600_disk.rom" path: "openmsx/share/systemroms/hb3600_disk.rom" @@ -713,7 +713,7 @@ files: required: false validation: [sha1] description: "Read by extension Sharp_HB-3600" - source_ref: "share/extensions/Sharp_HB-3600.xml:18-21" + source_ref: "share/extensions/Sharp_HB-3600.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hddrom.rom" path: "openmsx/share/systemroms/hddrom.rom" @@ -721,7 +721,7 @@ files: required: false validation: [sha1] description: "Read by extension Beer_IDE" - source_ref: "share/extensions/Beer_IDE.xml:18-23" + source_ref: "share/extensions/Beer_IDE.xml:18-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hbi-j1_kanjibasic.rom" path: "openmsx/share/systemroms/hbi-j1_kanjibasic.rom" @@ -729,7 +729,7 @@ files: required: false validation: [sha1] description: "Read by extension Sony_HBI-J1" - source_ref: "share/extensions/Sony_HBI-J1.xml:38-41" + source_ref: "share/extensions/Sony_HBI-J1.xml:38-41, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hbd-50.rom" path: "openmsx/share/systemroms/hbd-50.rom" @@ -737,7 +737,7 @@ files: required: false validation: [sha1] description: "Read by extension Sony_HBD-50" - source_ref: "share/extensions/Sony_HBD-50.xml:24-28" + source_ref: "share/extensions/Sony_HBD-50.xml:24-28, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hbk-30.rom" path: "openmsx/share/systemroms/hbk-30.rom" @@ -745,7 +745,7 @@ files: required: false validation: [sha1] description: "Read by extension Sony_HBK-30" - source_ref: "share/extensions/Sony_HBK-30.xml:19-22" + source_ref: "share/extensions/Sony_HBK-30.xml:19-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hbi-232.rom" path: "openmsx/share/systemroms/hbi-232.rom" @@ -753,7 +753,7 @@ files: required: false validation: [sha1] description: "Read by extension Sony_HBI-232" - source_ref: "share/extensions/Sony_HBI-232.xml:18-21" + source_ref: "share/extensions/Sony_HBI-232.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "sensor-kid.rom" path: "openmsx/share/systemroms/sensor-kid.rom" @@ -761,7 +761,7 @@ files: required: false validation: [sha1] description: "Read by extension SensorKid" - source_ref: "share/extensions/SensorKid.xml:20-23" + source_ref: "share/extensions/SensorKid.xml:20-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "svi-707_disk.rom" path: "openmsx/share/systemroms/svi-707_disk.rom" @@ -769,7 +769,7 @@ files: required: false validation: [sha1] description: "Read by extension Spectravideo_SVI-707" - source_ref: "share/extensions/Spectravideo_SVI-707.xml:19-22" + source_ref: "share/extensions/Spectravideo_SVI-707.xml:19-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "svi-707_cpm.rom" path: "openmsx/share/systemroms/svi-707_cpm.rom" @@ -777,7 +777,7 @@ files: required: false validation: [sha1] description: "Read by extension Spectravideo_SVI-707" - source_ref: "share/extensions/Spectravideo_SVI-707.xml:23-26" + source_ref: "share/extensions/Spectravideo_SVI-707.xml:23-26, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "Nextor-2.1.1.SunriseIDE.ROM" path: "openmsx/share/systemroms/Nextor-2.1.1.SunriseIDE.ROM" @@ -785,7 +785,7 @@ files: required: false validation: [sha1] description: "Read by extension SunriseIDE_Nextor" - source_ref: "share/extensions/SunriseIDE_Nextor.xml:17-22" + source_ref: "share/extensions/SunriseIDE_Nextor.xml:17-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ide250.dat" path: "openmsx/share/systemroms/ide250.dat" @@ -793,7 +793,7 @@ files: required: false validation: [sha1] description: "Read by extension ide" - source_ref: "share/extensions/ide.xml:17-22" + source_ref: "share/extensions/ide.xml:17-22, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "nowindDos2.rom" path: "openmsx/share/systemroms/nowindDos2.rom" @@ -801,7 +801,7 @@ files: required: false validation: [sha1] description: "Read by extension nowind" - source_ref: "share/extensions/nowind.xml:17-23" + source_ref: "share/extensions/nowind.xml:17-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "ym2608_adpcm_rom.bin" path: "openmsx/share/systemroms/ym2608_adpcm_rom.bin" @@ -809,7 +809,7 @@ files: required: false validation: [sha1] description: "Read by extension Makoto" - source_ref: "share/extensions/Makoto.xml:15-18" + source_ref: "share/extensions/Makoto.xml:15-18, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "TDC600.rom" path: "openmsx/share/systemroms/TDC600.rom" @@ -817,7 +817,7 @@ files: required: false validation: [sha1] description: "Read by extension Talent_TDC-600" - source_ref: "share/extensions/Talent_TDC-600.xml:18-21" + source_ref: "share/extensions/Talent_TDC-600.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "dpf-550_disk.rom" path: "openmsx/share/systemroms/dpf-550_disk.rom" @@ -825,7 +825,7 @@ files: required: false validation: [sha1] description: "Read by extension Talent_DPF-550" - source_ref: "share/extensions/Talent_DPF-550.xml:18-21" + source_ref: "share/extensions/Talent_DPF-550.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "Tecall_MSX_RAMFILE_TM220.rom" path: "openmsx/share/systemroms/Tecall_MSX_RAMFILE_TM220.rom" @@ -833,7 +833,7 @@ files: required: false validation: [sha1] description: "Read by extension Tecall_MSX_RAMFILE_TM220" - source_ref: "share/extensions/Tecall_MSX_RAMFILE_TM220.xml:17-20" + source_ref: "share/extensions/Tecall_MSX_RAMFILE_TM220.xml:17-20, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hx-f101pe.rom" path: "openmsx/share/systemroms/hx-f101pe.rom" @@ -841,7 +841,7 @@ files: required: false validation: [sha1] description: "Read by extension Toshiba_HX-F101PE" - source_ref: "share/extensions/Toshiba_HX-F101PE.xml:20-23" + source_ref: "share/extensions/Toshiba_HX-F101PE.xml:20-23, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "hx-mu900.rom" path: "openmsx/share/systemroms/hx-mu900.rom" @@ -849,7 +849,7 @@ files: required: false validation: [sha1] description: "Read by extension Toshiba_HX-MU900" - source_ref: "share/extensions/Toshiba_HX-MU900.xml:26-29" + source_ref: "share/extensions/Toshiba_HX-MU900.xml:26-29, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "fd-03.rom" path: "openmsx/share/systemroms/fd-03.rom" @@ -857,7 +857,7 @@ files: required: false validation: [sha1] description: "Read by extension Yamaha_FD-03" - source_ref: "share/extensions/Yamaha_FD-03.xml:20-26" + source_ref: "share/extensions/Yamaha_FD-03.xml:20-26, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "FD-051.BIN" path: "openmsx/share/systemroms/FD-051.BIN" @@ -865,7 +865,7 @@ files: required: false validation: [sha1] description: "Read by extension Yamaha_FD-05" - source_ref: "share/extensions/Yamaha_FD-05.xml:22-25" + source_ref: "share/extensions/Yamaha_FD-05.xml:22-25, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "sfg-05.rom" path: "openmsx/share/systemroms/sfg-05.rom" @@ -873,7 +873,7 @@ files: required: false validation: [sha1] description: "Read by extension Yamaha_SFG-05" - source_ref: "share/extensions/Yamaha_SFG-05.xml:31-34" + source_ref: "share/extensions/Yamaha_SFG-05.xml:31-34, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "skw-05_main.rom" path: "openmsx/share/systemroms/skw-05_main.rom" @@ -881,7 +881,7 @@ files: required: false validation: [sha1] description: "Read by extension Yamaha_SKW-05_embedded" - source_ref: "share/extensions/Yamaha_SKW-05_embedded.xml:32-36" + source_ref: "share/extensions/Yamaha_SKW-05_embedded.xml:32-36, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "skw-05_data.rom" path: "openmsx/share/systemroms/skw-05_data.rom" @@ -889,7 +889,7 @@ files: required: false validation: [sha1] description: "Read by extension Yamaha_SKW-05_embedded" - source_ref: "share/extensions/Yamaha_SKW-05_embedded.xml:37-40" + source_ref: "share/extensions/Yamaha_SKW-05_embedded.xml:37-40, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "skw-01_main.rom" path: "openmsx/share/systemroms/skw-01_main.rom" @@ -897,7 +897,7 @@ files: required: false validation: [sha1] description: "Read by extension Yamaha_SKW-01" - source_ref: "share/extensions/Yamaha_SKW-01.xml:18-21" + source_ref: "share/extensions/Yamaha_SKW-01.xml:18-21, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" - name: "skw-01_kanjifont.rom" path: "openmsx/share/systemroms/skw-01_kanjifont.rom" @@ -905,4 +905,4 @@ files: required: false validation: [sha1] description: "Read by extension Yamaha_SKW-01" - source_ref: "share/extensions/Yamaha_SKW-01.xml:22-25" + source_ref: "share/extensions/Yamaha_SKW-01.xml:22-25, build/libretro_share.py:17-23, src/libretro/LibretroCore.cc:146-160, src/config/HardwareConfig.cc:35-45, 249-277, src/memory/Rom.cc:135-136, 165-218" diff --git a/emulators/openmsx.yml b/emulators/openmsx.yml index c8f8d3913..aa080e505 100644 --- a/emulators/openmsx.yml +++ b/emulators/openmsx.yml @@ -80,7 +80,7 @@ files: size: 65536 description: "NMS 8245 combined system ROM (BIOS+BASIC 0x0000-0x7FFF, Sub ROM 0x8000-0xBFFF, FDC 0xC000-0xFFFF)" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2_EN.xml:24,65,111" + source_ref: "share/machines/Boosted_MSX2_EN.xml:24,65,111, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fmpac.rom path: "share/systemroms/fmpac.rom" @@ -88,7 +88,7 @@ files: required: true description: "Panasonic SW-M004 FMPAC (FM-PAC) sound cartridge ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2_EN.xml:83" + source_ref: "share/machines/Boosted_MSX2_EN.xml:83, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: phc-70fd2_basickun.rom path: "share/systemroms/phc-70fd2_basickun.rom" @@ -96,7 +96,7 @@ files: required: true description: "Sanyo PHC-70FD2 MSX-BASIC Kun compiler ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2_EN.xml:89, share/machines/Boosted_MSX2+_JP.xml:167, share/machines/Boosted_MSXturboR_with_IDE.xml:79" + source_ref: "share/machines/Boosted_MSX2_EN.xml:89, share/machines/Boosted_MSX2+_JP.xml:167, share/machines/Boosted_MSXturboR_with_IDE.xml:79, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: yrw801.rom path: "share/systemroms/yrw801.rom" @@ -104,7 +104,7 @@ files: required: true description: "Yamaha YRW801 MoonSound wavetable ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2_EN.xml:186, share/machines/Boosted_MSX2+_JP.xml:120, share/machines/Boosted_MSXturboR_with_IDE.xml:203" + source_ref: "share/machines/Boosted_MSX2_EN.xml:186, share/machines/Boosted_MSX2+_JP.xml:120, share/machines/Boosted_MSXturboR_with_IDE.xml:203, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" # ------------------------------------------------------- # Boosted_MSX2+_JP (msx2+) @@ -116,7 +116,7 @@ files: required: true description: "FS-A1WSX MSX2+ BIOS and BASIC ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2+_JP.xml:143" + source_ref: "share/machines/Boosted_MSX2+_JP.xml:143, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-a1wsx_fmbasic.rom path: "share/systemroms/fs-a1wsx_fmbasic.rom" @@ -124,7 +124,7 @@ files: required: true description: "FS-A1WSX MSX-MUSIC (OPLL) ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2+_JP.xml:155" + source_ref: "share/machines/Boosted_MSX2+_JP.xml:155, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-a1wsx_msx2psub.rom installed_on: [retropie] @@ -133,7 +133,7 @@ files: required: true description: "FS-A1WSX MSX2+ Sub ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2+_JP.xml:218" + source_ref: "share/machines/Boosted_MSX2+_JP.xml:218, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" note: "RetroPie unpacks openmsxroms.tar.gz into the installed share/systemroms, which the file pool scans. This ROM is in it as MSX2PEXT.ROM and is found by its SHA1." - name: fs-a1wsx_kanjibasic.rom @@ -142,7 +142,7 @@ files: required: true description: "FS-A1WSX Kanji Driver with BASIC ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2+_JP.xml:225" + source_ref: "share/machines/Boosted_MSX2+_JP.xml:225, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-a1wsx_disk.rom path: "share/systemroms/fs-a1wsx_disk.rom" @@ -150,7 +150,7 @@ files: required: true description: "FS-A1WSX FDC (TC8566AF) disk controller ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2+_JP.xml:237" + source_ref: "share/machines/Boosted_MSX2+_JP.xml:237, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-a1wsx_firmware.rom path: "share/systemroms/fs-a1wsx_firmware.rom" @@ -158,7 +158,7 @@ files: required: true description: "FS-A1WSX Panasonic firmware ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2+_JP.xml:251" + source_ref: "share/machines/Boosted_MSX2+_JP.xml:251, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-a1wsx_kanjifont.rom path: "share/systemroms/fs-a1wsx_kanjifont.rom" @@ -167,7 +167,7 @@ files: required: true description: "Kanji font ROM (shared by FS-A1WSX and FS-A1GT machines)" validation: [sha1] - source_ref: "share/machines/Boosted_MSX2+_JP.xml:27-28, share/machines/Panasonic_FS-A1WSX.xml:29-30, share/machines/Boosted_MSXturboR_with_IDE.xml:215-216, share/machines/Panasonic_FS-A1GT.xml:141-142" + source_ref: "share/machines/Boosted_MSX2+_JP.xml:27-28, share/machines/Panasonic_FS-A1WSX.xml:29-30, share/machines/Boosted_MSXturboR_with_IDE.xml:215-216, share/machines/Panasonic_FS-A1GT.xml:141-142, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" note: "Panasonic_FS-A1WSX.xml and Boosted_MSX2+_JP.xml name it fs-a1wsx_kanjifont.rom, Panasonic_FS-A1GT.xml and Boosted_MSXturboR_with_IDE.xml name it fs-a1gt_kanjifont.rom, all four with the same sha1." # ------------------------------------------------------- @@ -182,7 +182,7 @@ files: required: true description: "FS-A1GT turboR combined firmware (512KB, contains BIOS, Sub ROM, Kanji, FDC, MSX-MUSIC, Opening ROM)" validation: [sha1] - source_ref: "share/machines/Boosted_MSXturboR_with_IDE.xml:23" + source_ref: "share/machines/Boosted_MSXturboR_with_IDE.xml:23, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: ide250.dat path: "share/systemroms/ide250.dat" @@ -190,7 +190,7 @@ files: required: true description: "Sunrise IDE 2.50 interface ROM" validation: [sha1] - source_ref: "share/machines/Boosted_MSXturboR_with_IDE.xml:49" + source_ref: "share/machines/Boosted_MSXturboR_with_IDE.xml:49, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: ide250.zip path: "share/systemroms/ide250.zip" @@ -213,7 +213,7 @@ files: required: true description: "ColecoVision system BIOS ROM" validation: [sha1] - source_ref: "share/machines/ColecoVision_SGM.xml:57" + source_ref: "share/machines/ColecoVision_SGM.xml:57, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" # ------------------------------------------------------- # Spectravideo_SVI-328 (spectravideo) @@ -224,7 +224,7 @@ files: required: true description: "SVI-328 BASIC v1.11 ROM" validation: [sha1] - source_ref: "share/machines/Spectravideo_SVI-328.xml:52" + source_ref: "share/machines/Spectravideo_SVI-328.xml:52, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" # ------------------------------------------------------- # Pioneer_PX-7 (laserdisc) @@ -236,7 +236,7 @@ files: required: true description: "Pioneer PX-7 MSX1 BIOS and BASIC ROM" validation: [sha1] - source_ref: "share/machines/Pioneer_PX-7.xml:67" + source_ref: "share/machines/Pioneer_PX-7.xml:67, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: px-7_pbasic.rom path: "share/systemroms/px-7_pbasic.rom" @@ -244,7 +244,7 @@ files: required: true description: "Pioneer PX-7 LaserDisc PBASIC controller ROM" validation: [sha1] - source_ref: "share/machines/Pioneer_PX-7.xml:82" + source_ref: "share/machines/Pioneer_PX-7.xml:82, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" # ------------------------------------------------------- # Machines whose ROMs RetroBat lists. Each ROM is found in the @@ -261,7 +261,7 @@ files: size: 32768 description: "National CF-3300 MSX1 BIOS and BASIC ROM (also used by CF-1200, CF-2700, CF-3000, FS-1300)" validation: [sha1] - source_ref: "share/machines/National_CF-3300.xml:51-52" + source_ref: "share/machines/National_CF-3300.xml:51-52, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: cf-3300_disk.rom path: "share/systemroms/cf-3300_disk.rom" @@ -270,7 +270,7 @@ files: size: 16384 description: "National CF-3300 disk controller ROM (also used by Gradiente Expert DD Plus)" validation: [sha1] - source_ref: "share/machines/National_CF-3300.xml:75-76" + source_ref: "share/machines/National_CF-3300.xml:75-76, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-5500_basic-bios2.rom path: "share/systemroms/fs-5500_basic-bios2.rom" @@ -279,7 +279,7 @@ files: size: 32768 description: "National FS-5500 MSX2 BIOS and BASIC ROM" validation: [sha1] - source_ref: "share/machines/National_FS-5500F2.xml:76-77, share/machines/National_FS-5500F1.xml:78" + source_ref: "share/machines/National_FS-5500F2.xml:76-77, share/machines/National_FS-5500F1.xml:78, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-5500_msx2sub.rom path: "share/systemroms/fs-5500_msx2sub.rom" @@ -288,7 +288,7 @@ files: size: 16384 description: "National FS-5500 MSX2 Sub ROM" validation: [sha1] - source_ref: "share/machines/National_FS-5500F2.xml:100-101, share/machines/National_FS-5500F1.xml:102" + source_ref: "share/machines/National_FS-5500F2.xml:100-101, share/machines/National_FS-5500F1.xml:102, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-5500_kanjibasic.rom path: "share/systemroms/fs-5500_kanjibasic.rom" @@ -297,7 +297,7 @@ files: size: 32768 description: "National FS-5500 Kanji Driver ROM (also used by FS-4600F and FS-5000F2)" validation: [sha1] - source_ref: "share/machines/National_FS-5500F2.xml:107-108, share/machines/National_FS-5500F1.xml:109" + source_ref: "share/machines/National_FS-5500F2.xml:107-108, share/machines/National_FS-5500F1.xml:109, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-5500_kanjifont.rom path: "share/systemroms/fs-5500_kanjifont.rom" @@ -306,7 +306,7 @@ files: size: 131072 description: "National FS-5500 Kanji font ROM (also used by FS-4000, FS-4500 and FS-4700F)" validation: [sha1] - source_ref: "share/machines/National_FS-5500F2.xml:20-21, share/machines/National_FS-5500F1.xml:22" + source_ref: "share/machines/National_FS-5500F2.xml:20-21, share/machines/National_FS-5500F1.xml:22, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: fs-5500_superimp.rom path: "share/systemroms/fs-5500_superimp.rom" @@ -315,7 +315,7 @@ files: size: 32768 description: "National FS-5500 Super Impose ROM" validation: [sha1] - source_ref: "share/machines/National_FS-5500F2.xml:117-118, share/machines/National_FS-5500F1.xml:119" + source_ref: "share/machines/National_FS-5500F2.xml:117-118, share/machines/National_FS-5500F1.xml:119, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: nms8245_msx2sub.rom path: "share/systemroms/nms8245_msx2sub.rom" @@ -326,7 +326,7 @@ files: size: 16384 description: "Philips NMS 8245 MSX2 Sub ROM (1.05/1.06 and 1.08 revisions)" validation: [sha1] - source_ref: "share/machines/Philips_NMS_8245.xml:108-110" + source_ref: "share/machines/Philips_NMS_8245.xml:108-110, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: vg8020_basic-bios1.rom path: "share/systemroms/vg8020_basic-bios1.rom" @@ -335,7 +335,7 @@ files: size: 32768 description: "Philips VG 8020 MSX1 BIOS and BASIC ROM (also used by AVT DPC-200, Goldstar FC-200, Toshiba HX-20E, HX-22I, HX-51I)" validation: [sha1] - source_ref: "share/machines/Philips_VG_8020.xml:53-54" + source_ref: "share/machines/Philips_VG_8020.xml:53-54, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: svi-738_basic-bios1.rom path: "share/systemroms/svi-738_basic-bios1.rom" @@ -344,7 +344,7 @@ files: size: 32768 description: "Spectravideo SVI-738 MSX1 BIOS and BASIC ROM" validation: [sha1] - source_ref: "share/machines/Spectravideo_SVI-738.xml:53-54" + source_ref: "share/machines/Spectravideo_SVI-738.xml:53-54, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: svi-738_se_basic-bios1.rom path: "share/systemroms/svi-738_se_basic-bios1.rom" @@ -353,7 +353,7 @@ files: size: 32768 description: "Spectravideo SVI-738 (Sweden) MSX1 BIOS and BASIC ROM" validation: [sha1] - source_ref: "share/machines/Spectravideo_SVI-738_SE.xml:53-54" + source_ref: "share/machines/Spectravideo_SVI-738_SE.xml:53-54, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: svi-738_rs232.rom path: "share/systemroms/svi-738_rs232.rom" @@ -362,7 +362,7 @@ files: size: 8192 description: "Spectravideo SVI-738 RS-232 interface ROM" validation: [sha1] - source_ref: "share/machines/Spectravideo_SVI-738.xml:76-77, share/machines/Spectravideo_SVI-738_SE.xml:76-77" + source_ref: "share/machines/Spectravideo_SVI-738.xml:76-77, share/machines/Spectravideo_SVI-738_SE.xml:76-77, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" - name: svi-738_disk.rom path: "share/systemroms/svi-738_disk.rom" @@ -373,4 +373,4 @@ files: required: false description: "Spectravideo SVI-738 disk controller ROM" validation: [sha1] - source_ref: "share/machines/Spectravideo_SVI-738.xml:90-93, share/machines/Spectravideo_SVI-738_SE.xml:90-93" + source_ref: "share/machines/Spectravideo_SVI-738.xml:90-93, share/machines/Spectravideo_SVI-738_SE.xml:90-93, build/install.py:39, src/config/HardwareConfig.cc:25-33, 249-277, src/memory/Rom.cc:97-98, 120-195" diff --git a/emulators/openttd.yml b/emulators/openttd.yml index e5b1b7dd2..3816fde12 100644 --- a/emulators/openttd.yml +++ b/emulators/openttd.yml @@ -75,7 +75,7 @@ files: description: "Transport Tycoon Deluxe DOS graphics, base" required: false md5: "9311676280e5b14077a8ee41c1b42192" - source_ref: "media/baseset/orig_dos.obg:20, media/baseset/orig_dos_de.obg:20" + source_ref: "media/baseset/orig_dos.obg:20, media/baseset/orig_dos_de.obg:20, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGI.GRF" path: "baseset/TRGI.GRF" @@ -84,7 +84,7 @@ files: description: "Transport Tycoon Deluxe DOS graphics, logos" required: false md5: "da6a6c9dcc451eec88d79211437b76a8" - source_ref: "media/baseset/orig_dos.obg:21, media/baseset/orig_dos_de.obg:21" + source_ref: "media/baseset/orig_dos.obg:21, media/baseset/orig_dos_de.obg:21, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGC.GRF" path: "baseset/TRGC.GRF" @@ -93,7 +93,7 @@ files: description: "Transport Tycoon Deluxe DOS graphics, sub-arctic climate" required: false md5: "ed446637e034104c5559b32c18afe78d" - source_ref: "media/baseset/orig_dos.obg:22, media/baseset/orig_dos_de.obg:22" + source_ref: "media/baseset/orig_dos.obg:22, media/baseset/orig_dos_de.obg:22, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGH.GRF" path: "baseset/TRGH.GRF" @@ -102,7 +102,7 @@ files: description: "Transport Tycoon Deluxe DOS graphics, sub-tropical climate" required: false md5: "ee6616fb0e6ef6b24892c58c93d86fc9" - source_ref: "media/baseset/orig_dos.obg:23, media/baseset/orig_dos_de.obg:23" + source_ref: "media/baseset/orig_dos.obg:23, media/baseset/orig_dos_de.obg:23, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGT.GRF" path: "baseset/TRGT.GRF" @@ -111,7 +111,7 @@ files: description: "Transport Tycoon Deluxe DOS graphics, toyland" required: false md5: "e30e8a398ae86c03dc534a8ac7dfb3b6" - source_ref: "media/baseset/orig_dos.obg:24" + source_ref: "media/baseset/orig_dos.obg:24, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGT.GRF" path: "baseset/TRGT.GRF" @@ -121,7 +121,7 @@ files: required: false md5: "fcde1d7e8a74197d72a62695884b909e" note: "The German DOS CD differs from the other DOS releases only in this file." - source_ref: "media/baseset/orig_dos_de.obg:24" + source_ref: "media/baseset/orig_dos_de.obg:24, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRG1R.GRF" path: "baseset/TRG1R.GRF" @@ -130,7 +130,7 @@ files: description: "Transport Tycoon Deluxe Windows graphics, base" required: false md5: "b04ce593d8c5016e07473a743d7d3358" - source_ref: "media/baseset/orig_win.obg:20" + source_ref: "media/baseset/orig_win.obg:20, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGIR.GRF" path: "baseset/TRGIR.GRF" @@ -139,7 +139,7 @@ files: description: "Transport Tycoon Deluxe Windows graphics, logos" required: false md5: "0c2484ff6be49fc63a83be6ab5c38f32" - source_ref: "media/baseset/orig_win.obg:21" + source_ref: "media/baseset/orig_win.obg:21, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGCR.GRF" path: "baseset/TRGCR.GRF" @@ -148,7 +148,7 @@ files: description: "Transport Tycoon Deluxe Windows graphics, sub-arctic climate" required: false md5: "3668f410c761a050b5e7095a2b14879b" - source_ref: "media/baseset/orig_win.obg:22" + source_ref: "media/baseset/orig_win.obg:22, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGHR.GRF" path: "baseset/TRGHR.GRF" @@ -157,7 +157,7 @@ files: description: "Transport Tycoon Deluxe Windows graphics, sub-tropical climate" required: false md5: "06bf2b7a31766f048baac2ebe43457b1" - source_ref: "media/baseset/orig_win.obg:23" + source_ref: "media/baseset/orig_win.obg:23, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "TRGTR.GRF" path: "baseset/TRGTR.GRF" @@ -166,7 +166,7 @@ files: description: "Transport Tycoon Deluxe Windows graphics, toyland" required: false md5: "de53650517fe661ceaa3138c6edb0eb8" - source_ref: "media/baseset/orig_win.obg:24" + source_ref: "media/baseset/orig_win.obg:24, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:717, src/gfxinit.cpp:352-354" - name: "SAMPLE.CAT" path: "baseset/SAMPLE.CAT" @@ -175,7 +175,7 @@ files: description: "Transport Tycoon Deluxe DOS sound samples" required: false md5: "422ea3dd074d2859bb51639a6e0e85da" - source_ref: "media/baseset/orig_dos.obs:14" + source_ref: "media/baseset/orig_dos.obs:14, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:791" - name: "SAMPLE.CAT" path: "baseset/SAMPLE.CAT" @@ -184,7 +184,7 @@ files: description: "Transport Tycoon Deluxe Windows sound samples" required: false md5: "9212e81e72badd4bbe1eaeae66458e10" - source_ref: "media/baseset/orig_win.obs:14" + source_ref: "media/baseset/orig_win.obs:14, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:791" - name: "GM.CAT" path: "baseset/GM.CAT" @@ -193,7 +193,7 @@ files: description: "Transport Tycoon Deluxe DOS music catalogue" required: false md5: "7a29d2d0c4f7d2e03091ffa9b2bdfffb" - source_ref: "media/baseset/orig_dos.obm:44" + source_ref: "media/baseset/orig_dos.obm:44, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM-TTO.CAT" path: "baseset/GM-TTO.CAT" @@ -202,7 +202,7 @@ files: description: "Transport Tycoon Original music catalogue" required: false md5: "26e85ff84b0063aa5da05dd4698fc76e" - source_ref: "media/baseset/orig_tto.obm:63" + source_ref: "media/baseset/orig_tto.obm:63, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT00.GM" path: "baseset/GM_TT00.GM" @@ -211,7 +211,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Tycoon DELUXE Theme" required: false md5: "45cfec1b9d8c7a0ad45e755833cbf221" - source_ref: "media/baseset/orig_win.obm:44, media/baseset/orig_win.obm:68" + source_ref: "media/baseset/orig_win.obm:44, media/baseset/orig_win.obm:68, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT01.GM" path: "baseset/GM_TT01.GM" @@ -220,7 +220,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Snarl Up" required: false md5: "ab14ed3392d848abd2a2e90a9d75d121" - source_ref: "media/baseset/orig_win.obm:45, media/baseset/orig_win.obm:69" + source_ref: "media/baseset/orig_win.obm:45, media/baseset/orig_win.obm:69, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT02.GM" path: "baseset/GM_TT02.GM" @@ -229,7 +229,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Easy Driver" required: false md5: "dd4f696e4be5987ce738257b08b50171" - source_ref: "media/baseset/orig_win.obm:46, media/baseset/orig_win.obm:70" + source_ref: "media/baseset/orig_win.obm:46, media/baseset/orig_win.obm:70, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT03.GM" path: "baseset/GM_TT03.GM" @@ -238,7 +238,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Little Red Diesel" required: false md5: "a1bfde23343df9e4063419bf29c166b8" - source_ref: "media/baseset/orig_win.obm:47, media/baseset/orig_win.obm:71" + source_ref: "media/baseset/orig_win.obm:47, media/baseset/orig_win.obm:71, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT04.GM" path: "baseset/GM_TT04.GM" @@ -247,7 +247,7 @@ files: description: "Transport Tycoon Deluxe Windows music, City Groove" required: false md5: "4e6943aa0c455203d76c79389054747d" - source_ref: "media/baseset/orig_win.obm:48, media/baseset/orig_win.obm:72" + source_ref: "media/baseset/orig_win.obm:48, media/baseset/orig_win.obm:72, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT05.GM" path: "baseset/GM_TT05.GM" @@ -256,7 +256,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Aliens Ate My Railway" required: false md5: "cee281cb85a2e2343552d97640545a47" - source_ref: "media/baseset/orig_win.obm:49, media/baseset/orig_win.obm:73" + source_ref: "media/baseset/orig_win.obm:49, media/baseset/orig_win.obm:73, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT06.GM" path: "baseset/GM_TT06.GM" @@ -265,7 +265,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Stoke It" required: false md5: "26d1de5efa8675f94065784e9d539e49" - source_ref: "media/baseset/orig_win.obm:50, media/baseset/orig_win.obm:74" + source_ref: "media/baseset/orig_win.obm:50, media/baseset/orig_win.obm:74, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT07.GM" path: "baseset/GM_TT07.GM" @@ -274,7 +274,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Don't Walk!" required: false md5: "6f2691e17558f552ec4c565e4ab7139c" - source_ref: "media/baseset/orig_win.obm:51, media/baseset/orig_win.obm:75" + source_ref: "media/baseset/orig_win.obm:51, media/baseset/orig_win.obm:75, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT08.GM" path: "baseset/GM_TT08.GM" @@ -283,7 +283,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Sawyer's Tune" required: false md5: "a42bf2cb3340a822f1a69646fc7a487d" - source_ref: "media/baseset/orig_win.obm:52, media/baseset/orig_win.obm:76" + source_ref: "media/baseset/orig_win.obm:52, media/baseset/orig_win.obm:76, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT09.GM" path: "baseset/GM_TT09.GM" @@ -292,7 +292,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Fell Apart On Me" required: false md5: "eb35761a58a8df3c59ed8929cce13916" - source_ref: "media/baseset/orig_win.obm:53, media/baseset/orig_win.obm:77" + source_ref: "media/baseset/orig_win.obm:53, media/baseset/orig_win.obm:77, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT10.GM" path: "baseset/GM_TT10.GM" @@ -301,7 +301,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Can't Get There From Here" required: false md5: "42fecd686720a785d20a78590c466a82" - source_ref: "media/baseset/orig_win.obm:54, media/baseset/orig_win.obm:78" + source_ref: "media/baseset/orig_win.obm:54, media/baseset/orig_win.obm:78, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT11.GM" path: "baseset/GM_TT11.GM" @@ -310,7 +310,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Hard Drivin'" required: false md5: "50ef1ef02e49d2112786dd45e69dc3ee" - source_ref: "media/baseset/orig_win.obm:55, media/baseset/orig_win.obm:79" + source_ref: "media/baseset/orig_win.obm:55, media/baseset/orig_win.obm:79, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT12.GM" path: "baseset/GM_TT12.GM" @@ -319,7 +319,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Road Hog" required: false md5: "4ce707a0e0e72419f0681dd9bd95271b" - source_ref: "media/baseset/orig_win.obm:56, media/baseset/orig_win.obm:80" + source_ref: "media/baseset/orig_win.obm:56, media/baseset/orig_win.obm:80, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT13.GM" path: "baseset/GM_TT13.GM" @@ -328,7 +328,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Hold That Train!" required: false md5: "e765753be29d889ec818f38009103619" - source_ref: "media/baseset/orig_win.obm:57, media/baseset/orig_win.obm:81" + source_ref: "media/baseset/orig_win.obm:57, media/baseset/orig_win.obm:81, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT14.GM" path: "baseset/GM_TT14.GM" @@ -337,7 +337,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Broomer's Oil Rag" required: false md5: "270e2d63bd32b95a4d007ce15a6ce45f" - source_ref: "media/baseset/orig_win.obm:58, media/baseset/orig_win.obm:82" + source_ref: "media/baseset/orig_win.obm:58, media/baseset/orig_win.obm:82, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT15.GM" path: "baseset/GM_TT15.GM" @@ -346,7 +346,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Goss Groove" required: false md5: "89e116a1c0c69f1845cc903a9bfbe460" - source_ref: "media/baseset/orig_win.obm:59, media/baseset/orig_win.obm:83" + source_ref: "media/baseset/orig_win.obm:59, media/baseset/orig_win.obm:83, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT16.GM" path: "baseset/GM_TT16.GM" @@ -355,7 +355,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Small Town" required: false md5: "f824e2371b3bedfe61aad4b9c62dd6be" - source_ref: "media/baseset/orig_win.obm:60, media/baseset/orig_win.obm:84" + source_ref: "media/baseset/orig_win.obm:60, media/baseset/orig_win.obm:84, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT17.GM" path: "baseset/GM_TT17.GM" @@ -364,7 +364,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Cruise Control" required: false md5: "1b23eebb0796c1ab99cd97fa7082cf7b" - source_ref: "media/baseset/orig_win.obm:61, media/baseset/orig_win.obm:85" + source_ref: "media/baseset/orig_win.obm:61, media/baseset/orig_win.obm:85, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT18.GM" path: "baseset/GM_TT18.GM" @@ -373,7 +373,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Stroll On" required: false md5: "15650de3bad645d0e88c4f5c7a2df92a" - source_ref: "media/baseset/orig_win.obm:62, media/baseset/orig_win.obm:86" + source_ref: "media/baseset/orig_win.obm:62, media/baseset/orig_win.obm:86, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT19.GM" path: "baseset/GM_TT19.GM" @@ -382,7 +382,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Funk Central" required: false md5: "7aec079e15bd09588660b85545ac4dfc" - source_ref: "media/baseset/orig_win.obm:63, media/baseset/orig_win.obm:87" + source_ref: "media/baseset/orig_win.obm:63, media/baseset/orig_win.obm:87, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT20.GM" path: "baseset/GM_TT20.GM" @@ -391,7 +391,7 @@ files: description: "Transport Tycoon Deluxe Windows music, Jammit" required: false md5: "1509097889dee617aa1e9a1738a5a930" - source_ref: "media/baseset/orig_win.obm:64, media/baseset/orig_win.obm:88" + source_ref: "media/baseset/orig_win.obm:64, media/baseset/orig_win.obm:88, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" - name: "GM_TT21.GM" path: "baseset/GM_TT21.GM" @@ -400,4 +400,4 @@ files: description: "Transport Tycoon Deluxe Windows music, Movin' On" required: false md5: "a8d0aaad02e1a762d8d54cf81da56bab" - source_ref: "media/baseset/orig_win.obm:65, media/baseset/orig_win.obm:89" + source_ref: "media/baseset/orig_win.obm:65, media/baseset/orig_win.obm:89, media/baseset/CMakeLists.txt:4-15, 38-62, cmake/InstallAndPackage.cmake:28-34, src/base_media_base.h:198-204, src/base_media_func.h:42-139, 164-181, src/openttd.cpp:803, src/music.cpp:119-175" diff --git a/emulators/qemu.yml b/emulators/qemu.yml index b8bce138b..e596e06bf 100644 --- a/emulators/qemu.yml +++ b/emulators/qemu.yml @@ -13,7 +13,7 @@ version_basis: pattern: 'info->library_version\s+=\s+"([^"]+)' display_name: "QEMU" cores: [qemu] -systems: [ibm-pc, x86, x86-64, ppc, ppc64, sparc, sparc64, arm, aarch64, mips, mips64, riscv32, riscv64, s390x, m68k, alpha, hppa] +systems: [ibm-pc, x86, x86-64, ppc, ppc64, sparc, sparc64, arm, aarch64, mips, mips64, riscv32, riscv64, s390x, m68k, alpha] # QEMU (Quick Emulator) libretro core, based on QEMU 9.0.50. # Builds 17 targets: aarch64, alpha, arm, i386, m68k, mips(el), mips64(el), @@ -39,11 +39,11 @@ files: sha1: "f402170ee4f374c304a7ce0b139d6cecb1732aff" md5: "e9ca30100c47a26b66488444c5b0bd15" size: 131072 - required: true + required: false note: > - SeaBIOS legacy BIOS for x86/x86_64 PC emulation. Default firmware - loaded by pc_sysfw.c for standard PC machine types. - source_ref: "source hw/i386/pc_sysfw.c:222, 243" + SeaBIOS for the ISA PC machine, and for a PC machine whose firmware + option is cleared. The pc and q35 machines load bios-256k.bin. + source_ref: "source hw/i386/pc_sysfw.c:222, 243, source hw/i386/x86-common.c:993-994" - name: "SeaBIOS (256 KB)" installed_on: [retrodeck] @@ -51,11 +51,12 @@ files: sha1: "5fe6078506094333106e6b3f33c7185dea7f0268" md5: "d3dab3095c73cad67afd3cc16a88479c" size: 262144 - required: false + required: true note: > - SeaBIOS 256 KB variant. Some machine types or configurations - may prefer this larger image. - source_ref: "source pc-bios/meson.build:30" + Firmware of the pc and q35 machines, set by their default machine + options. pc is the default machine the core starts for an .iso, + .img or .qcow, and a missing image stops QEMU. + source_ref: "source pc-bios/meson.build:30, source ui/libretro.c:24-29, 734, source hw/i386/pc_piix.c:466, 486, source hw/i386/pc_q35.c:349, source hw/i386/x86-common.c:993-1003, 1043-1045" - name: "SeaBIOS microvm" installed_on: [retrodeck] @@ -76,8 +77,8 @@ files: md5: "387c48aef9497c6c2b914b1e6b9bc7aa" size: 16384 required: false - note: "Minimal x86 firmware for fast Linux kernel booting." - source_ref: "source pc-bios/meson.build:32" + note: "Firmware of the microvm machine when ACPI is off." + source_ref: "source pc-bios/meson.build:32, source hw/i386/microvm.c:57, 277-281, source hw/i386/x86-common.c:993-994" # ======================================================== # x86 VGA BIOS (SeaVGABIOS / LGPL VGA BIOS) @@ -248,7 +249,7 @@ files: size: 67072 required: false note: "iPXE PXE boot ROM for Intel e1000 NIC (8086:100e)." - source_ref: "source pc-bios/meson.build:47" + source_ref: "source pc-bios/meson.build:47, source hw/pci/pci.c:2362-2363" - name: "PXE eepro100" installed_on: [retrodeck] @@ -268,7 +269,7 @@ files: size: 61440 required: false note: "iPXE PXE boot ROM for NE2000 PCI NIC (1050:0940)." - source_ref: "source pc-bios/meson.build:49" + source_ref: "source pc-bios/meson.build:49, source hw/pci/pci.c:2362-2363" - name: "PXE pcnet" installed_on: [retrodeck] @@ -278,7 +279,7 @@ files: size: 61440 required: false note: "iPXE PXE boot ROM for AMD PCnet NIC (1022:2000)." - source_ref: "source pc-bios/meson.build:50" + source_ref: "source pc-bios/meson.build:50, source hw/pci/pci.c:2362-2363" - name: "PXE rtl8139" installed_on: [retrodeck] @@ -288,7 +289,7 @@ files: size: 61440 required: false note: "iPXE PXE boot ROM for Realtek RTL8139 NIC (10ec:8139)." - source_ref: "source pc-bios/meson.build:51" + source_ref: "source pc-bios/meson.build:51, source hw/pci/pci.c:2362-2363" - name: "PXE virtio" installed_on: [retrodeck] @@ -298,7 +299,7 @@ files: size: 60416 required: false note: "iPXE PXE boot ROM for VirtIO NIC (1af4:1000)." - source_ref: "source pc-bios/meson.build:52" + source_ref: "source pc-bios/meson.build:52, source hw/pci/pci.c:2362-2363" # ======================================================== # EFI NETWORK BOOT ROMs (iPXE UEFI) @@ -331,7 +332,7 @@ files: size: 159232 required: false note: "iPXE EFI boot ROM for Intel eepro100 NIC." - source_ref: "source pc-bios/meson.build:54" + source_ref: "source pc-bios/meson.build:54, source hw/pci/pci.c:2362-2363" - name: "EFI ne2k_pci" installed_on: [retrodeck] @@ -386,85 +387,21 @@ files: # ======================================================== # EDK2 UEFI FIRMWARE # ======================================================== - - name: "EDK2 x86_64 UEFI" - path: "qemu/edk2-x86_64-code.fd" - sha1: "eac1a94b8e0d7c53fd5df001c36794ec34c7c724" - size: 3653632 - required: false - note: "TianoCore UEFI firmware for x86_64. Built from edk2-stable202302." - source_ref: "source pc-bios/meson.build:12" - - - name: "EDK2 x86_64 Secure Boot UEFI" - path: "qemu/edk2-x86_64-secure-code.fd" - sha1: "617abe2746696bb4a309d72cecb446dc76a2a61e" - size: 3653632 - required: false - note: "TianoCore UEFI firmware for x86_64 with Secure Boot support." - source_ref: "source pc-bios/meson.build:13" - - - name: "EDK2 i386 UEFI" - path: "qemu/edk2-i386-code.fd" - sha1: "45b8faebdfaaf19d16e3a7c5f60d69214685071c" - size: 3653632 - required: false - note: "TianoCore UEFI firmware for i386." - source_ref: "source pc-bios/meson.build:9" - - - name: "EDK2 i386 Secure Boot UEFI" - path: "qemu/edk2-i386-secure-code.fd" - sha1: "6982abec8ef2ed7c8293163d5a0bd69a01a2126f" - size: 3653632 - required: false - note: "TianoCore UEFI firmware for i386 with Secure Boot support." - source_ref: "source pc-bios/meson.build:10" - - - name: "EDK2 i386 UEFI vars template" - path: "qemu/edk2-i386-vars.fd" - sha1: "b62e676c9317a32aaa9ee1d76268d8c55663bd6e" - size: 540672 - required: false - note: "UEFI variable store template for i386/x86_64 EDK2 firmware." - source_ref: "source pc-bios/meson.build:11" - - name: "EDK2 AArch64 UEFI" path: "qemu/edk2-aarch64-code.fd" sha1: "514edbce58bfa877170673c1799351a7dab3b6df" size: 67108864 required: false - note: "TianoCore UEFI firmware for AArch64 (ARM 64-bit)." - source_ref: "source pc-bios/meson.build:4" + note: "TianoCore UEFI firmware for AArch64 (ARM 64-bit). Starts with -bios on the virt machine." + source_ref: "source pc-bios/meson.build:4, source hw/arm/virt.c:1331" - name: "EDK2 ARM UEFI" path: "qemu/edk2-arm-code.fd" sha1: "c20f01c28b59b388abb9d0febeec45d801a632f0" size: 67108864 required: false - note: "TianoCore UEFI firmware for ARM (32-bit)." - source_ref: "source pc-bios/meson.build:5" - - - name: "EDK2 ARM UEFI vars template" - path: "qemu/edk2-arm-vars.fd" - sha1: "b051167e0e57bd13d77ed92ef7b474872f44ec6d" - size: 67108864 - required: false - note: "UEFI variable store template for ARM/AArch64 EDK2 firmware." - source_ref: "source pc-bios/meson.build:6" - - - name: "EDK2 RISC-V UEFI" - path: "qemu/edk2-riscv-code.fd" - sha1: "2c8633d881ece0c4794d740138a318f7e9af480c" - size: 33554432 - required: false - note: "TianoCore UEFI firmware for RISC-V 64-bit." - source_ref: "source pc-bios/meson.build:7" - - - name: "EDK2 RISC-V UEFI vars template" - path: "qemu/edk2-riscv-vars.fd" - sha1: "c4e6cce4247ba8f32f528c1c69f49228f616677f" - size: 33554432 - required: false - note: "UEFI variable store template for RISC-V EDK2 firmware." - source_ref: "source pc-bios/meson.build:8" + note: "TianoCore UEFI firmware for ARM (32-bit). Starts with -bios on the virt machine." + source_ref: "source pc-bios/meson.build:5, source hw/arm/virt.c:1331" # ======================================================== # POWERPC FIRMWARE @@ -507,15 +444,6 @@ files: note: "Minimal Open Firmware shim for -machine pseries,x-vof=on. Also default for Pegasos II." source_ref: "source hw/ppc/spapr.c:107, source hw/ppc/pegasos2.c:43" - - name: "VOF NVRAM" - installed_on: [retrodeck] - path: "qemu/vof-nvram.bin" - sha1: "5d1184609b87f78635f0575467a1c3f440900ff0" - size: 16384 - required: false - note: "NVRAM template for VOF (Virtual Open Firmware)." - source_ref: "source pc-bios/meson.build:83" - - name: "U-Boot e500" installed_on: [retrodeck] path: "qemu/u-boot.e500" @@ -532,7 +460,7 @@ files: size: 524288 required: false note: "U-Boot for Sam460ex (AmigaOne) PowerPC board." - source_ref: "source pc-bios/meson.build:74" + source_ref: "source pc-bios/meson.build:74, source hw/ppc/sam460ex.c:46, 120-126, source hw/core/loader.c:1078-1079" - name: "QEMU VGA Mac driver" installed_on: [retrodeck] @@ -643,27 +571,6 @@ files: note: "Network boot firmware for s390x emulation." source_ref: "source hw/s390x/ipl.c:497" - # ======================================================== - # HP-PA FIRMWARE - # ======================================================== - - name: "HP-PA firmware (32-bit)" - installed_on: [retrodeck] - path: "qemu/hppa-firmware.img" - sha1: "605c36ede6c120c6cc7efe147a75a3dc4b7e4fb0" - size: 167820 - required: false - note: "SeaBIOS-hppa firmware for 32-bit HP-PARISC emulation." - source_ref: "source hw/hppa/machine.c:424" - - - name: "HP-PA firmware (64-bit)" - installed_on: [retrodeck] - path: "qemu/hppa-firmware64.img" - sha1: "b42f6d4ca74073de6c038579b4a9323ad0a6b398" - size: 206024 - required: false - note: "SeaBIOS-hppa firmware for 64-bit HP-PARISC emulation." - source_ref: "source hw/hppa/machine.c:424" - # ======================================================== # MIPS FIRMWARE (not shipped, user-supplied) # ======================================================== @@ -745,24 +652,6 @@ files: note: "Device tree blob for PowerPC Canyonlands (460EX) / Sam460ex board." source_ref: "source hw/ppc/sam460ex.c:45" - - name: "Petalogix ML605 DTB (MicroBlaze)" - installed_on: [retrodeck] - path: "qemu/petalogix-ml605.dtb" - sha1: "892d265838866869b8a8ef104252ff5b2fda156f" - size: 9882 - required: false - note: "Device tree blob for Xilinx Petalogix ML605 MicroBlaze board. MicroBlaze target not built in libretro core." - source_ref: "source pc-bios/meson.build:91" - - - name: "Petalogix S3ADSP1800 DTB (MicroBlaze)" - installed_on: [retrodeck] - path: "qemu/petalogix-s3adsp1800.dtb" - sha1: "976600e3f89ecc1f3564b7077f53c58e0b565280" - size: 8161 - required: false - note: "Device tree blob for Xilinx Petalogix S3ADSP1800 MicroBlaze board. MicroBlaze target not built in libretro core." - source_ref: "source pc-bios/meson.build:90" - - name: "Virtex ML507 DTB (PPC)" path: "qemu/virtex-ml507.dtb" @@ -776,16 +665,25 @@ notes: this path via qemu_add_data_dir() in ui/libretro.c:659-660. default_usage: > For typical x86/x86_64 usage (loading .iso/.img/.qcow files directly), - only bios.bin (or bios-256k.bin) and vgabios.bin are strictly needed. - Other VGA BIOS variants are loaded depending on the emulated GPU. - PXE/EFI ROMs are only needed for network booting. + the default pc machine needs bios-256k.bin and the VGA BIOS of its + display. Other VGA BIOS variants are loaded depending on the emulated GPU. + A NIC reads its default romfile. The pxe-*.rom images and efi-eepro100.rom + are read only when a romfile= option names them (hw/pci/pci.c:2362-2363). multi_arch: > The libretro build targets 17 architectures. Non-x86 firmware is only needed when using .qemu_cmd_line files that invoke a different qemu-system-* binary (e.g. qemu-system-ppc for MacOS 9). edk2: > EDK2 UEFI firmware is shipped as bz2-compressed blobs in pc-bios/. These - provide UEFI boot for x86, ARM, and RISC-V machine types. Users specify - them via -bios or pflash in .qemu_cmd_line files. + provide UEFI boot for x86, ARM, and RISC-V machine types. No machine + names them: a .qemu_cmd_line names a code image with -bios, which is + looked up in the data directory. pflash drives, the variable store + templates included, are opened by path from the content folder + (ui/libretro.c:697). The ARM and AArch64 code images boot through + -bios on the virt machine. The x86 images are 3653632 bytes, not a + multiple of 64 KiB, so x86_bios_rom_init refuses them + (hw/i386/x86-common.c:1000-1002), and the RISC-V image is S-mode code + for pflash0 that -bios does not start: those are read only as pflash + drives, never from the system directory. experimental: "This core is marked is_experimental=true in its .info file." version: "Based on QEMU 9.0.50 (io12/qemu-libretro)" diff --git a/emulators/raze.yml b/emulators/raze.yml index 3684d53cd..c16b1be3d 100644 --- a/emulators/raze.yml +++ b/emulators/raze.yml @@ -95,7 +95,7 @@ files: size: 26524524 crc32: "bbc9ce44" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:3, 48-59" + source_ref: "wadsrc/static/engine/grpinfo.txt:3, 48-59, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKE3D.GRP" description: "Duke Nukem 3D (South Korean Censored)" @@ -106,7 +106,7 @@ files: size: 26385383 crc32: "aa4f6a40" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:4, 61-72" + source_ref: "wadsrc/static/engine/grpinfo.txt:4, 61-72, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKE3D.GRP" description: "Duke Nukem 3D: Atomic Edition" @@ -117,7 +117,7 @@ files: size: 44356548 crc32: "fd3dcff1" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:5, 74-85" + source_ref: "wadsrc/static/engine/grpinfo.txt:5, 74-85, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKE3D.GRP" description: "Duke Nukem 3D: Plutonium Pak" @@ -128,7 +128,7 @@ files: size: 44348015 crc32: "f514a6ac" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:6, 113-124" + source_ref: "wadsrc/static/engine/grpinfo.txt:6, 113-124, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKE3D.GRP" description: "Duke Nukem 3D: Atomic Edition (WT)" @@ -139,7 +139,7 @@ files: size: 44356548 crc32: "982afe4a" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:7, 87-98" + source_ref: "wadsrc/static/engine/grpinfo.txt:7, 87-98, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "World Tour release." - name: "DUKE3D.GRP" @@ -151,7 +151,7 @@ files: size: 44486702 crc32: "89792e05" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:100-111" + source_ref: "wadsrc/static/engine/grpinfo.txt:100-111, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "World Tour release, second known build." - name: "DUKE3D.GRP" @@ -163,7 +163,7 @@ files: size: 9690241 crc32: "02f18900" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:8, 126-136" + source_ref: "wadsrc/static/engine/grpinfo.txt:8, 126-136, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKE3D.GRP" description: "Duke Nukem 3D Shareware 1.0" @@ -174,7 +174,7 @@ files: size: 10429258 crc32: "a28aa589" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:9, 138-148" + source_ref: "wadsrc/static/engine/grpinfo.txt:9, 138-148, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKE3D.GRP" description: "Duke Nukem 3D Shareware 1.1" @@ -185,7 +185,7 @@ files: size: 10442980 crc32: "912e1e8d" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:10, 150-160" + source_ref: "wadsrc/static/engine/grpinfo.txt:10, 150-160, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKE3D.GRP" description: "Duke Nukem 3D Shareware 1.3D" @@ -196,7 +196,7 @@ files: size: 11035779 crc32: "983ad923" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:11, 162-172" + source_ref: "wadsrc/static/engine/grpinfo.txt:11, 162-172, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKEDC.GRP" description: "Duke it out in D.C. (1.3D)" @@ -207,7 +207,7 @@ files: size: 7926624 crc32: "a9242158" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:14, 198-208" + source_ref: "wadsrc/static/engine/grpinfo.txt:14, 198-208, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the 1.3D release (dependency DUKE13_CRC)." - name: "DUKEDC.GRP" @@ -219,7 +219,7 @@ files: size: 8225517 crc32: "b79d997f" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:15, 210-220" + source_ref: "wadsrc/static/engine/grpinfo.txt:15, 210-220, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the Atomic Edition (dependency DUKE15_CRC)." - name: "DUKEDC.GRP" @@ -231,7 +231,7 @@ files: size: 8410183 crc32: "a8cf80da" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:16, 222-232" + source_ref: "wadsrc/static/engine/grpinfo.txt:16, 222-232, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKEDC.GRP" description: "Duke it out in D.C." @@ -242,7 +242,7 @@ files: size: 8410187 crc32: "39a692bf" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:234-245" + source_ref: "wadsrc/static/engine/grpinfo.txt:234-245, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKEDC.GRP" description: "Duke it out in D.C." @@ -253,7 +253,7 @@ files: size: 8410183 crc32: "777c77b1" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:247-258" + source_ref: "wadsrc/static/engine/grpinfo.txt:247-258, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "DUKEDC.GRP" description: "Duke it out in D.C." @@ -264,7 +264,7 @@ files: size: 8410149 crc32: "c63b6a8b" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:260-271" + source_ref: "wadsrc/static/engine/grpinfo.txt:260-271, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "VACATION.GRP" description: "Duke Caribbean: Life's a Beach (1.3)" @@ -275,7 +275,7 @@ files: size: 23559381 crc32: "4a2dbb62" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:17, 273-285" + source_ref: "wadsrc/static/engine/grpinfo.txt:17, 273-285, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the 1.3D release (dependency DUKE13_CRC)." - name: "VACATION.GRP" @@ -287,7 +287,7 @@ files: size: 22551333 crc32: "2f4fccee" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:18, 287-299" + source_ref: "wadsrc/static/engine/grpinfo.txt:18, 287-299, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the Atomic Edition (dependency DUKE15_CRC)." - name: "VACATION.GRP" @@ -299,7 +299,7 @@ files: size: 22521880 crc32: "b62b42fd" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:19, 301-313" + source_ref: "wadsrc/static/engine/grpinfo.txt:19, 301-313, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "VACATION.GRP" description: "Duke Caribbean: Life's a Beach" @@ -310,7 +310,7 @@ files: size: 22213819 crc32: "18f01c5b" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:20, 316-328" + source_ref: "wadsrc/static/engine/grpinfo.txt:20, 316-328, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "VACATION.GRP" description: "Duke Caribbean: Life's a Beach" @@ -321,7 +321,7 @@ files: size: 22397273 crc32: "65b5f690" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:330-343" + source_ref: "wadsrc/static/engine/grpinfo.txt:330-343, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "VACATION.GRP" description: "Duke Caribbean: Life's a Beach" @@ -332,7 +332,7 @@ files: size: 22201375 crc32: "b28e883c" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:345-358" + source_ref: "wadsrc/static/engine/grpinfo.txt:345-358, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "VACATION.GRP" description: "Duke Caribbean: Life's a Beach" @@ -343,7 +343,7 @@ files: size: 22213795 crc32: "64cf2351" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:360-373" + source_ref: "wadsrc/static/engine/grpinfo.txt:360-373, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "NWINTER.GRP" description: "Duke: Nuclear Winter" @@ -354,7 +354,7 @@ files: size: 16169365 crc32: "f1cae8e4" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:21, 375-388" + source_ref: "wadsrc/static/engine/grpinfo.txt:21, 375-388, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the Atomic Edition (dependency DUKE15_CRC)." - name: "NWINTER.GRP" @@ -366,7 +366,7 @@ files: size: 10965909 crc32: "c7efbfa9" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:390-402" + source_ref: "wadsrc/static/engine/grpinfo.txt:390-402, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the Atomic Edition (dependency DUKE15_CRC)." - name: "penthous.zip" @@ -378,7 +378,7 @@ files: size: 2112419 crc32: "7cd82a3b" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:459-470" + source_ref: "wadsrc/static/engine/grpinfo.txt:459-470, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "The original ZIP release, identified as a whole file. Addon of the Atomic Edition (dependency DUKE15_CRC)." # ================================================================ @@ -394,7 +394,7 @@ files: size: 8200353 crc32: "b291418f" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:32, 485-499" + source_ref: "wadsrc/static/engine/grpinfo.txt:32, 485-499, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "BLOOD.RFF" description: "BLOOD: 1.1" @@ -405,7 +405,7 @@ files: size: 8231173 crc32: "c3a99936" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:33, 501-515" + source_ref: "wadsrc/static/engine/grpinfo.txt:33, 501-515, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "BLOOD.RFF" description: "BLOOD: One Unit Whole Blood" @@ -416,7 +416,7 @@ files: size: 9570681 crc32: "a8fdda84" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:34, 517-531" + source_ref: "wadsrc/static/engine/grpinfo.txt:34, 517-531, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "BLOOD.RFF" description: "BLOOD: Unknown Version" @@ -432,7 +432,7 @@ files: system: blood path: "SOUNDS.RFF" required: false - source_ref: "wadsrc/static/engine/grpinfo.txt:494, 510, 526, 542" + source_ref: "wadsrc/static/engine/grpinfo.txt:494, 510, 526, 542, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 772-828, 696-704, 830-875" note: "Named by loadgrp in every Blood block and loaded with the main resource." - name: "GUI.RFF" @@ -440,7 +440,7 @@ files: system: blood path: "GUI.RFF" required: false - source_ref: "wadsrc/static/engine/grpinfo.txt:494, 510, 526, 542" + source_ref: "wadsrc/static/engine/grpinfo.txt:494, 510, 526, 542, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 772-828, 696-704, 830-875" note: "Named by loadgrp in every Blood block and loaded with the main resource." - name: "BLOOD.GRP" @@ -448,7 +448,7 @@ files: system: blood path: "BLOOD.GRP" required: false - source_ref: "wadsrc/static/engine/grpinfo.txt:494, 510, 526, 542" + source_ref: "wadsrc/static/engine/grpinfo.txt:494, 510, 526, 542, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 772-828, 696-704, 830-875" note: "Named by loadgrp in every Blood block and loaded with the main resource." - name: "SURFACE.DAT" @@ -496,7 +496,7 @@ files: size: 47536148 crc32: "7545319f" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:36, 614-625" + source_ref: "wadsrc/static/engine/grpinfo.txt:36, 614-625, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "SW.GRP" description: "Shadow Warrior (Europe)" @@ -507,7 +507,7 @@ files: size: 47536148 crc32: "d4a1e153" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:627-638" + source_ref: "wadsrc/static/engine/grpinfo.txt:627-638, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "SW.GRP" description: "Shadow Warrior (UK)" @@ -518,7 +518,7 @@ files: size: 47536148 crc32: "3ee68767" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:640-651" + source_ref: "wadsrc/static/engine/grpinfo.txt:640-651, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "SW.GRP" description: "Shadow Warrior (Censored)" @@ -529,7 +529,7 @@ files: size: 47537951 crc32: "1a8776d2" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:653-664" + source_ref: "wadsrc/static/engine/grpinfo.txt:653-664, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "SW.GRP" description: "Shadow Warrior Shareware 1.0" @@ -540,7 +540,7 @@ files: size: 25702245 crc32: "daa6bece" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:666-676" + source_ref: "wadsrc/static/engine/grpinfo.txt:666-676, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "SW.GRP" description: "Shadow Warrior Shareware 1.1" @@ -551,7 +551,7 @@ files: size: 25833456 crc32: "f21a6b35" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:678-688" + source_ref: "wadsrc/static/engine/grpinfo.txt:678-688, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "SW.GRP" description: "Shadow Warrior Shareware 1.2" @@ -562,7 +562,7 @@ files: size: 26056769 crc32: "08a7fa1f" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:690-700" + source_ref: "wadsrc/static/engine/grpinfo.txt:690-700, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "WT.GRP" description: "Shadow Warrior: Wanton Destruction" @@ -573,7 +573,7 @@ files: size: 48698128 crc32: "a9aaa7b7" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:37, 714-724" + source_ref: "wadsrc/static/engine/grpinfo.txt:37, 714-724, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the registered game (dependency SWREG12_CRC)." - name: "WT.GRP" @@ -585,7 +585,7 @@ files: size: 48698128 crc32: "8b6e8011" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:726-736" + source_ref: "wadsrc/static/engine/grpinfo.txt:726-736, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "TD.GRP" description: "Shadow Warrior: Twin Dragon" @@ -596,7 +596,7 @@ files: size: 12499012 crc32: "a1a65be8" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:38, 751-762" + source_ref: "wadsrc/static/engine/grpinfo.txt:38, 751-762, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" note: "Addon of the registered game (dependency SWREG12_CRC)." - name: "TD.GRP" @@ -608,7 +608,7 @@ files: size: 6236287 crc32: "b5b71277" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:764-774" + source_ref: "wadsrc/static/engine/grpinfo.txt:764-774, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "TD.GRP" description: "Shadow Warrior: Twin Dragon" @@ -619,7 +619,7 @@ files: size: 6235578 crc32: "acc8dcde" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:776-786" + source_ref: "wadsrc/static/engine/grpinfo.txt:776-786, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "TDRAGON.EXE" description: "Shadow Warrior: Twin Dragon, loose files" @@ -652,7 +652,7 @@ files: size: 27020745 crc32: "303cbd89" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:40, wadsrc/static/engine/grpinfo.txt:927-938" + source_ref: "wadsrc/static/engine/grpinfo.txt:40, wadsrc/static/engine/grpinfo.txt:927-938, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "STUFF.DAT" description: "Exhumed" @@ -663,7 +663,7 @@ files: size: 27108170 crc32: "e3b172f1" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:41, wadsrc/static/engine/grpinfo.txt:940-951" + source_ref: "wadsrc/static/engine/grpinfo.txt:41, wadsrc/static/engine/grpinfo.txt:940-951, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "STUFF.DAT" description: "Powerslave Demo" @@ -674,7 +674,7 @@ files: size: 27020745 crc32: "1d8c7645" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:42, wadsrc/static/engine/grpinfo.txt:953-963" + source_ref: "wadsrc/static/engine/grpinfo.txt:42, wadsrc/static/engine/grpinfo.txt:953-963, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" # ================================================================ # Redneck Rampage @@ -689,7 +689,7 @@ files: size: 141174222 crc32: "19d9bc79" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:28, wadsrc/static/engine/grpinfo.txt:814-827" + source_ref: "wadsrc/static/engine/grpinfo.txt:28, wadsrc/static/engine/grpinfo.txt:814-827, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "REDNECK.GRP" description: "Redneck Rampage Rides Again" @@ -700,7 +700,7 @@ files: size: 191798609 crc32: "958018c6" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:29, wadsrc/static/engine/grpinfo.txt:829-842" + source_ref: "wadsrc/static/engine/grpinfo.txt:29, wadsrc/static/engine/grpinfo.txt:829-842, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "GAME66.CON" description: "Redneck Rampage: Suckin' Grits on Route 66" @@ -724,7 +724,7 @@ files: size: 43448927 crc32: "75c1f07b" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:24, wadsrc/static/engine/grpinfo.txt:872-884" + source_ref: "wadsrc/static/engine/grpinfo.txt:24, wadsrc/static/engine/grpinfo.txt:872-884, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "NAPALM.GRP" description: "NAPALM" @@ -735,7 +735,7 @@ files: size: 44365728 crc32: "3de1589a" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:25, wadsrc/static/engine/grpinfo.txt:886-898" + source_ref: "wadsrc/static/engine/grpinfo.txt:25, wadsrc/static/engine/grpinfo.txt:886-898, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" - name: "WW2GI.GRP" description: "WWII GI" @@ -746,4 +746,4 @@ files: size: 77939508 crc32: "907b82bf" validation: [size, crc32] - source_ref: "wadsrc/static/engine/grpinfo.txt:26, wadsrc/static/engine/grpinfo.txt:900-912" + source_ref: "wadsrc/static/engine/grpinfo.txt:26, wadsrc/static/engine/grpinfo.txt:900-912, wadsrc/CMakeLists.txt:2, source/core/version.h:66, source/core/searchpaths.cpp:393-613, 621-660, 696-704, 830-875" diff --git a/emulators/scummvm.yml b/emulators/scummvm.yml index 08fa6d172..59887d876 100644 --- a/emulators/scummvm.yml +++ b/emulators/scummvm.yml @@ -112,7 +112,7 @@ files: required: false sha1: "aa2dfd12c11c6e6f3baaf7bf199bd6bcd71a520c" md5: "ee71d6cd464c618c632e6fd62b430d2c" - source_ref: "upstream dists/scummvm.rc:24" + source_ref: "upstream dists/scummvm.rc:24, source backends/platform/libretro/scripts/bundle_datafiles.sh:74, source backends/platform/libretro/src/libretro-os-utils.cpp:241, source gui/gui-manager.cpp:87-88, source gui/ThemeEngine.cpp:2229-2256, 2052-2066" note: "Modern GUI theme for ScummVM launcher." - name: "scummclassic.zip" @@ -121,7 +121,7 @@ files: required: false sha1: "69836fb392710f2182df07bab8960e8a2d92c1a9" md5: "8f37bd19dd51be456ac8f005fd5669a8" - source_ref: "upstream dists/scummvm.rc:23" + source_ref: "upstream dists/scummvm.rc:23, source backends/platform/libretro/scripts/bundle_datafiles.sh:74, source backends/platform/libretro/src/libretro-os-utils.cpp:241, source gui/gui-manager.cpp:87-88, source gui/ThemeEngine.cpp:2229-2256, 2052-2066" note: "Classic GUI theme for ScummVM launcher." - name: "scummremastered.zip" @@ -130,7 +130,7 @@ files: required: false sha1: "03e53349eefc39ce25220bfcb1ae4a580704d29d" md5: "0d990484d0dfc1680b20cfabcae373cd" - source_ref: "upstream dists/scummvm.rc:25" + source_ref: "upstream dists/scummvm.rc:25, source backends/platform/libretro/scripts/bundle_datafiles.sh:74, source backends/platform/libretro/src/libretro-os-utils.cpp:241, source gui/gui-manager.cpp:87-88, source gui/ThemeEngine.cpp:2229-2256, 2052-2066" note: "Remastered GUI theme for ScummVM launcher." - name: "residualvm.zip" @@ -139,7 +139,7 @@ files: required: false sha1: "589b622f55c9944c4883e4163d4d49508e22e056" md5: "b2811fa9b209733b61cd49ddb21e1e95" - source_ref: "upstream dists/scummvm.rc:26" + source_ref: "upstream dists/scummvm.rc:26, source backends/platform/libretro/scripts/bundle_datafiles.sh:74, source backends/platform/libretro/src/libretro-os-utils.cpp:241, source gui/gui-manager.cpp:87-88, source gui/ThemeEngine.cpp:2229-2256, 2052-2066" note: "ResidualVM theme for 3D adventure games (Grim Fandango, Myst III)." - name: "gui-icons.dat" @@ -148,7 +148,7 @@ files: required: false sha1: "38e74e6994924781487a0d39cc53dc4708a90c1c" md5: "9c59e0e9875434456ec1b7eb8e51666f" - source_ref: "upstream dists/scummvm.rc:27" + source_ref: "upstream dists/scummvm.rc:27, source backends/platform/libretro/scripts/bundle_datafiles.sh:74, source backends/platform/libretro/src/libretro-os-utils.cpp:241, source gui/gui-manager.cpp:118" note: "GUI icon pack used by the ScummVM launcher interface." - name: "shaders.dat" @@ -157,7 +157,7 @@ files: required: false sha1: "c67ec35c3f6e2ba7f09b8f61a78df7f713ff040c" md5: "f073f17187d0bfa3e7ebb7f328847969" - source_ref: "upstream dists/scummvm.rc:28" + source_ref: "upstream dists/scummvm.rc:28, source backends/platform/libretro/scripts/bundle_datafiles.sh:74, source backends/platform/libretro/src/libretro-os-utils.cpp:241, source backends/graphics/opengl/opengl-graphics.cpp:423, source gui/shaderbrowser-dialog.cpp:88" note: "Compiled shader pack for the GUI rendering pipeline." - name: "translations.dat" @@ -166,7 +166,7 @@ files: required: false sha1: "e5b6f6d6473e2d6aa0a250fd9983b573ebf6fbe4" md5: "a206e54bac1af13559ac8b2d9e550577" - source_ref: "upstream dists/scummvm.rc:43" + source_ref: "upstream dists/scummvm.rc:43, source backends/platform/libretro/scripts/bundle_datafiles.sh:74, source backends/platform/libretro/src/libretro-os-utils.cpp:241, source common/translation.h:288, source common/translation.cpp:282-290" note: "GUI translation strings for ScummVM launcher localization." # ================================================================ @@ -180,7 +180,7 @@ files: required: false sha1: "379f9def6d0de4b4bad18b0177df81783a51f17b" md5: "73cf5bd61896442a990e363f284a0bc2" - source_ref: "source dists/engine-data/engine_data_core.mk" + source_ref: "source dists/engine-data/engine_data_core.mk, source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/achievements.cpp:105-109" note: "Achievement definitions for supported games." - name: "classicmacfonts.dat" @@ -189,7 +189,7 @@ files: required: false sha1: "768b6231c6068e3d9b4f2cc6b1b1e5485578fde1" md5: "d4264d4573f22d290e033e1d834d7221" - source_ref: "source dists/engine-data/engine_data_core.mk" + source_ref: "source dists/engine-data/engine_data_core.mk, source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source graphics/macgui/macfontmanager.cpp:222" note: "Classic Macintosh bitmap fonts for Mac game rendering." - name: "encoding.dat" @@ -198,7 +198,7 @@ files: required: false sha1: "11d3873337827195bc16c3d3175ad00f1777ed95" md5: "f2e88b2faec499a4914c3a0bcffc7db1" - source_ref: "source dists/engine-data/engine_data_core.mk" + source_ref: "source dists/engine-data/engine_data_core.mk, source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source common/str-enc.cpp:142" note: "Character encoding tables for text rendering across languages." - name: "helpdialog.zip" @@ -207,7 +207,7 @@ files: required: false sha1: "386d8a89e180f8abab53e5d5926b6a81ee4b31dd" md5: "a9584a928c0f52ef28b33d8702983c35" - source_ref: "source dists/engine-data/engine_data_core.mk" + source_ref: "source dists/engine-data/engine_data_core.mk, source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source gui/helpdialog.cpp:69, 147-148, source graphics/image-archive.cpp:50-54" note: "Help dialog assets for the in-game help system." - name: "macgui.dat" @@ -216,7 +216,7 @@ files: required: false sha1: "1eed577281b8819367d1ee99b1a76ff3e1920735" md5: "d97f2965013b343dd3d4fdbbc7192f15" - source_ref: "source dists/engine-data/engine_data_core.mk" + source_ref: "source dists/engine-data/engine_data_core.mk, source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source graphics/macgui/datafiles.cpp:37, 81" note: "Macintosh GUI widget data for Mac-style game interfaces." # ================================================================ @@ -230,7 +230,7 @@ files: required: false sha1: "775b12b7e787bbaaeb73aa45b1ad3bb383e041ef" md5: "4f9dd40b455876d5c54b5ebd93aec88c" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_ACCESS)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_ACCESS), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/access/resources.cpp:44" note: "Engine data for Access Software games (e.g. Amazon, Martian Memorandum)." - name: "bagel.dat" @@ -239,7 +239,7 @@ files: required: false sha1: "f83084c72b1ff8e16f9c013e5ef7cfbb5f3cc835" md5: "f6d90885f6962f89de02e34031111599" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_BAGEL)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_BAGEL), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/bagel/spacebar/baglib/bagel.cpp:113, source common/engine_data.cpp:253" note: "Engine data for Bagel engine games." - name: "cryo.dat" @@ -248,7 +248,7 @@ files: required: false sha1: "220c2fe52d26b8607abeb2ad4a8ea4324daea5ba" md5: "fc5886ea5388f20eae299bb408da5bcc" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_CRYO)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_CRYO), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/cryo/resource.cpp:303" note: "Engine data for Cryo Interactive games (e.g. Dune, Lost Eden)." - name: "cryomni3d.dat" @@ -257,7 +257,7 @@ files: required: false sha1: "3971847e26be0abad8196caf03e5852a81ddbdea" md5: "7224c7a94074addeb69015b1346695d2" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_CRYOMNI3D)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_CRYOMNI3D), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/cryomni3d/cryomni3d.cpp:82" note: "Engine data for CryOmni3D games (Versailles 1685)." - name: "darkseed.dat" @@ -266,7 +266,7 @@ files: required: false sha1: "343172f1bfff8cb8c4abefa95e211379f39583b7" md5: "9a9cfe40dcca517f130d4430bd1af643" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_DARKSEED)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_DARKSEED), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/darkseed/darkseed.cpp:66-71" note: "Engine data for Dark Seed (H.R. Giger adventure game)." - name: "drascula.dat" @@ -275,7 +275,7 @@ files: required: false sha1: "05c97e92439b67aea8f6eb7fc96db023edf62124" md5: "b304979ed642a6dcaf26f43f8a37a1de" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_DRASCULA)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_DRASCULA), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/drascula/drascula.cpp:987" note: "Engine data for Drascula: The Vampire Strikes Back." - name: "freescape.dat" @@ -284,7 +284,7 @@ files: required: false sha1: "c6b3d3152e4e2ff4c9bf55e103bb39ed7faca2bd" md5: "71697f90fb0c7747616dbb0799ce966b" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_FREESCAPE)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_FREESCAPE), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/freescape/freescape.h:61, source engines/freescape/assets.cpp:115" note: "Engine data for Freescape games (Driller, Dark Side, Total Eclipse)." - name: "got.aud" @@ -293,7 +293,7 @@ files: required: false sha1: "209ab6d86a7c44f241689c5511b2027f7ad2c7c4" md5: "d13cc3c481e84e787ec8aa86dffc565f" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_GOT)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_GOT), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/got/sound.cpp:38, 194-198" note: "Audio data for Game of Thrones engine." - name: "got.gfx" @@ -302,7 +302,7 @@ files: required: false sha1: "0c9603da78b980bcf391bbf5f9103a5a642c4ee8" md5: "a29f591769bd731df0d9ddd3a191fe8c" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_GOT)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_GOT), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/got/gfx/gfx_chunks.cpp:85" note: "Graphics data for Game of Thrones engine." - name: "hadesch_translations.dat" @@ -311,7 +311,7 @@ files: required: false sha1: "17aae444b3010e72e092635d25d3b93c104b0ad2" md5: "7857da7e56a11e0749fb45100c323b3c" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_HADESCH)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_HADESCH), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/hadesch/hadesch.cpp:476" note: "Translation data for Hades Challenge." - name: "hugo.dat" @@ -320,7 +320,7 @@ files: required: false sha1: "74a5fa172f5327fedc145cb9eccc8fd050b9cfb9" md5: "a865e70f1b0998a500f522dab441c8fc" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_HUGO)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_HUGO), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/hugo/hugo.cpp:457" note: "Engine data for Hugo's House of Horrors trilogy." - name: "kyra.dat" @@ -329,7 +329,7 @@ files: required: false sha1: "31b0b9418af2f9dd4e4094aada05d48eb355975b" md5: "ebddd7bbd97135a427083db5daf6f9fc" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_KYRA)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_KYRA), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/kyra/resource/resource.h:1252, source engines/kyra/resource/staticres.cpp:138-145" note: "Engine data for Kyrandia series (Legend of Kyrandia, Hand of Fate, Malcolm's Revenge)." - name: "lure.dat" @@ -338,7 +338,7 @@ files: required: false sha1: "516347ec0ec2a397265d1b2fb053aa3758382e09" md5: "6f90cf73f36453d332d5c9cee311f81c" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_LURE)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_LURE), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/lure/luredefs.h:31, source engines/lure/lure.cpp:56" note: "Engine data for Lure of the Temptress." - name: "macventure.dat" @@ -347,7 +347,7 @@ files: required: false sha1: "e431e718e3c784532422ea2654d5fc6042a95c09" md5: "3b1faf40e685b955372e02f54ed70263" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MACVENTURE)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MACVENTURE), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/macventure/datafiles.cpp:40, 76" note: "Engine data for MacVenture games (Shadowgate, Deja Vu, Uninvited)." - name: "mm.dat" @@ -356,7 +356,7 @@ files: required: false sha1: "0816fe29b57911b28cbf774348f5492062326a85" md5: "01f074a6ac34dd86fcc6d1e8090614f0" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MM)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MM), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/mm/xeen/files.cpp:72, source engines/mm/mm1/globals.cpp:61, source common/engine_data.cpp:253" note: "Engine data for Might and Magic engine." - name: "mort.dat" @@ -365,7 +365,7 @@ files: required: false sha1: "0b9d0fa2a18eadf61aeddc19128ef90898ab7206" md5: "3cfb16d7bab4d77606b3b1274b8ae870" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MORTEVIELLE)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MORTEVIELLE), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/mortevielle/mortevielle.h:87, source engines/mortevielle/mortevielle.cpp:299" note: "Engine data for Mortville Manor." - name: "myst3.dat" @@ -374,7 +374,7 @@ files: required: false sha1: "5fbf7b1a596219f0daab60a8ceb2f1e59e042243" md5: "54e9056211f2fff255b6f66a3fe39a8d" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MYST3)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MYST3), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/myst3/database.cpp:460" note: "Engine data for Myst III: Exile." - name: "nancy.dat" @@ -383,7 +383,7 @@ files: required: false sha1: "7c8907d33da59afd4e4b62eee67541910e0b78d9" md5: "eb7cfdb3f74972beb8f43196e4e44001" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_NANCY)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_NANCY), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/nancy/nancy.cpp:1111" note: "Engine data for Nancy Drew adventure games." - name: "neverhood.dat" @@ -392,7 +392,7 @@ files: required: false sha1: "490012c996ba0c56dd8d077e1418ee53b1e96397" md5: "dfaab12ffb265646f31f51b6904246d1" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_NEVERHOOD)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_NEVERHOOD), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/neverhood/neverhood.cpp:91" note: "Engine data for The Neverhood." - name: "prince_translation.dat" @@ -401,7 +401,7 @@ files: required: false sha1: "57403a286c4d251384442a507d285b2dc5ce330e" md5: "993adab2fd44277d5fd7aa5971e7099c" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_PRINCE)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_PRINCE), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/prince/prince.cpp:339" note: "Translation data for The Prince and the Coward." - name: "queen.tbl" @@ -410,7 +410,7 @@ files: required: false sha1: "7bafa28dfd9b3be17430d467d8787d8204437ba0" md5: "93c6d6379eb0290ce93854a6888ec3f4" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_QUEEN)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_QUEEN), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/queen/resource.cpp:32, 149" note: "Resource table for Flight of the Amazon Queen." - name: "sky.cpt" @@ -419,7 +419,7 @@ files: required: false sha1: "fa03ede717223eaf011491d2066e37eb112e735b" md5: "9d00157b1cebd6368cbf88135c098f40" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_SKY)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_SKY), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/sky/compact.cpp:127" note: "Compact table for Beneath a Steel Sky." - name: "supernova.dat" @@ -428,7 +428,7 @@ files: required: false sha1: "8a571cfc431b5fe794f0262f0e55f72927ab27b4" md5: "89664136c503a30894d5c713be5bfe90" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_SUPERNOVA)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_SUPERNOVA), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/supernova/supernova.h:50, source engines/supernova/supernova.cpp:466" note: "Engine data for Mission Supernova." - name: "teenagent.dat" @@ -437,7 +437,7 @@ files: required: false sha1: "0d488164930332bae3aa1ad38cef44abbe3d00a6" md5: "4594620989a0bfd8b120da2de7ac30de" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TEENAGENT)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TEENAGENT), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/teenagent/resources.cpp:308" note: "Engine data for Teenagent." - name: "titanic.dat" @@ -446,7 +446,7 @@ files: required: false sha1: "15f51828f08fdbe01b56123e96312b5859a968c0" md5: "4b2fb71201dc3795cff45df6200a1918" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TITANIC)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TITANIC), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/titanic/support/files_manager.cpp:40" note: "Engine data for Starship Titanic." - name: "tony.dat" @@ -455,7 +455,7 @@ files: required: false sha1: "a5e19f364bda6a0d2330495114c9ad665bb79ad0" md5: "891022a4e2917bb54b5cdc9a46f5b3df" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TONY)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TONY), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/tony/tony.cpp:182" note: "Engine data for Tony Tough and the Night of Roasted Moths." - name: "toon.dat" @@ -464,7 +464,7 @@ files: required: false sha1: "85bb688125d66f2797a41f153ce1fa177027a83f" md5: "2b71a5d9aa19219d46711e8a77451f0f" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TOON)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_TOON), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/toon/toon.cpp:5419" note: "Engine data for Toonstruck." - name: "ultima.dat" @@ -473,7 +473,7 @@ files: required: false sha1: "e049932518390257f4d49b1691cad229e6060079" md5: "e359fb7f14c4cb072b6e9300a23a6d62" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_ULTIMA)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_ULTIMA), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/ultima/shared/engine/data_archive.cpp:31, 84-85" note: "Engine data for Ultima series (Ultima IV-VIII, Savage Empire, Martian Dreams)." - name: "ultima8.dat" @@ -482,7 +482,7 @@ files: required: false sha1: "6319d3a245297697c1e4def78dc231a3f30708bb" md5: "e5b95811b05b9f0f593b49c860391200" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_ULTIMA)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_ULTIMA), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/ultima/ultima8/ultima8.cpp:177-182" note: "Engine data specific to Ultima VIII: Pagan." - name: "wintermute.zip" @@ -491,7 +491,7 @@ files: required: false sha1: "5302f543384b21fb55466118a6966e5ef46b85f6" md5: "9783248899f9cb531f0a3e0a711ab8b3" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_WINTERMUTE)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_WINTERMUTE), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/wintermute/base/base_file_manager.cpp:408" note: "Engine data for Wintermute engine games." - name: "fonts.dat" @@ -500,7 +500,7 @@ files: required: false sha1: "1eaef39122559500fbbc705c9425500311d23e03" md5: "6df29d218962e155d0a2114006af45c0" - source_ref: "source dists/engine-data/engine_data.mk (USE_FREETYPE2)" + source_ref: "source dists/engine-data/engine_data.mk (USE_FREETYPE2), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source graphics/fonts/ttf.cpp:954-958, source engines/scumm/he/font_he.cpp:269-273" note: "FreeType2 font data for text rendering." - name: "fonts-cjk.dat" @@ -509,7 +509,7 @@ files: required: false sha1: "b46f5a744387d1991d66a06292811f217ae063e2" md5: "18b8811c1bbc297be45f38c3bd6a0728" - source_ref: "source dists/engine-data/engine_data_big.mk (USE_FREETYPE2)" + source_ref: "source dists/engine-data/engine_data_big.mk (USE_FREETYPE2), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source graphics/fonts/ttf.cpp:975-979" note: "CJK (Chinese/Japanese/Korean) font data. Large file, only for systems with enough memory." - name: "fonts-imgui.dat" @@ -518,7 +518,7 @@ files: required: false sha1: "659a025dfa39a8caada7dac6e69b4d7c88217b3f" md5: "9eb64ec7aa31dc2f5b55541415ecdf8b" - source_ref: "source dists/engine-data/engine_data.mk (USE_IMGUI)" + source_ref: "source dists/engine-data/engine_data.mk (USE_IMGUI), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source backends/imgui/imgui_fonts.cpp:83" note: "ImGui font data for debug overlay rendering." - name: "grim-patch.lab" @@ -527,7 +527,7 @@ files: required: false sha1: "3c43b7a0125f88a9f83ae4307dca57867ffd637c" md5: "32b777b824f02b1e1259903740964058" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_GRIM)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_GRIM), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/grim/resource.cpp:126-129" note: "Patch data for Grim Fandango." - name: "monkey4-patch.m4b" @@ -536,7 +536,7 @@ files: required: false sha1: "49fc530e77b61f326f6e1d5a5147daa2fd67d1e2" md5: "9eb7b7e7cc7dad1fe08be6e73d749abe" - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MONKEY4)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_MONKEY4), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source engines/grim/resource.cpp:159" note: "Patch data for Escape from Monkey Island." # ================================================================ @@ -547,7 +547,7 @@ files: installed_on: [lakka, recalbox, retrobat, retrodeck, retropie] path: "scummvm/extra/pred.dic" required: false - source_ref: "source dists/engine-data/engine_data.mk (ENABLE_AGI)" + source_ref: "source dists/engine-data/engine_data.mk (ENABLE_AGI), source backends/platform/libretro/scripts/bundle_datafiles.sh:75-77, source backends/platform/libretro/src/libretro-os-utils.cpp:243, source gui/predictivedialog.cpp:119" note: "Predictive text dictionary for AGI engine text input (King's Quest, Space Quest, etc)." # ================================================================ diff --git a/emulators/tr1x.yml b/emulators/tr1x.yml index 3cf5e8829..fcd3d7726 100644 --- a/emulators/tr1x.yml +++ b/emulators/tr1x.yml @@ -54,19 +54,19 @@ files: unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:39" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:39, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:123-131, src/trx/game/level/format/pipeline.c:96" - name: "gym.phd" path: "games/tr1/levels/gym.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:61" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:61, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:123-131, src/trx/game/level/format/pipeline.c:96" - name: "level1.phd" path: "games/tr1/levels/level1.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:99" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:99, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Caves" - name: "level2.phd" @@ -74,126 +74,126 @@ files: unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:120" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:120, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "City of Vilcabamba" - name: "level3a.phd" path: "games/tr1/levels/level3a.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:139" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:139, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Lost Valley" - name: "level3b.phd" path: "games/tr1/levels/level3b.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:159" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:159, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Tomb of Qualopec" - name: "level4.phd" path: "games/tr1/levels/level4.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:180" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:180, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "St. Francis' Folly" - name: "level5.phd" path: "games/tr1/levels/level5.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:202" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:202, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Colosseum" - name: "level6.phd" path: "games/tr1/levels/level6.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:223" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:223, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Palace Midas" - name: "level7a.phd" path: "games/tr1/levels/level7a.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:242" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:242, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "The Cistern" - name: "level7b.phd" path: "games/tr1/levels/level7b.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:263" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:263, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Tomb of Tihocan" - name: "level8a.phd" path: "games/tr1/levels/level8a.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:290" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:290, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "City of Khamoon" - name: "level8b.phd" path: "games/tr1/levels/level8b.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:313" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:313, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Obelisk of Khamoon" - name: "level8c.phd" path: "games/tr1/levels/level8c.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:335" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:335, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Sanctuary of the Scion" - name: "level10a.phd" path: "games/tr1/levels/level10a.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:358" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:358, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Natla's Mines" - name: "level10b.phd" path: "games/tr1/levels/level10b.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:392" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:392, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Atlantis" - name: "level10c.phd" path: "games/tr1/levels/level10c.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:418" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:418, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "The Great Pyramid" - name: "cut1.phd" path: "games/tr1/levels/cut1.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:508" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:508, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 1 (after Qualopec)" - name: "cut2.phd" path: "games/tr1/levels/cut2.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:531" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:531, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 2 (after Tihocan)" - name: "cut3.phd" path: "games/tr1/levels/cut3.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:552" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:552, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 3 (Khamoon ambush)" - name: "cut4.phd" path: "games/tr1/levels/cut4.phd" required: true category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:575" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:575, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 4 (Natla's mines)" # FMV cutscenes @@ -205,7 +205,7 @@ files: path: "games/tr1/fmv/core.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:601" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:601, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" note: "Core Design legal screen." - name: "escape.avi" @@ -213,7 +213,7 @@ files: path: "games/tr1/fmv/escape.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:602" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:602, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" note: "Eidos legal screen." - name: "cafe.avi" @@ -221,7 +221,7 @@ files: path: "games/tr1/fmv/cafe.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:603" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:603, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" note: "Intro cutscene." - name: "mansion.avi" @@ -229,56 +229,56 @@ files: path: "games/tr1/fmv/mansion.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:604" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:604, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "snow.avi" aliases: [snow.rpl] path: "games/tr1/fmv/snow.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:605" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:605, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "lift.avi" aliases: [lift.rpl] path: "games/tr1/fmv/lift.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:606" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:606, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "vision.avi" aliases: [vision.rpl] path: "games/tr1/fmv/vision.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:607" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:607, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "canyon.avi" aliases: [canyon.rpl] path: "games/tr1/fmv/canyon.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:608" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:608, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "pyramid.avi" aliases: [pyramid.rpl] path: "games/tr1/fmv/pyramid.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:609" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:609, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "prison.avi" aliases: [prison.rpl] path: "games/tr1/fmv/prison.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:610" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:610, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "end.avi" aliases: [end.rpl] path: "games/tr1/fmv/end.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr1/gameflow.json5:611" + source_ref: "data/trx/ship/games/tr1/gameflow.json5:611, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" # Music tracks (retail CD audio, ripped as trackNN.). # Enumerated by the ship tree in docs/trx/INSTALLING.md. diff --git a/emulators/tr2x.yml b/emulators/tr2x.yml index ee7d7fedf..8d6d5c68e 100644 --- a/emulators/tr2x.yml +++ b/emulators/tr2x.yml @@ -55,7 +55,7 @@ files: unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:35" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:35, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 264-273, src/trx/game/paths.c:203-212, src/trx/game/level/pipeline.c:179" note: "Shared sample bank, loaded for every level." # Levels @@ -65,167 +65,167 @@ files: unsourceable: "retail data the collection does not hold, and a same-named file of another game must not stand in" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:15" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:15, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:123-131, src/trx/game/level/format/pipeline.c:96" - name: "assault.tr2" path: "games/tr2/levels/assault.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:57" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:57, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:123-131, src/trx/game/level/format/pipeline.c:96" note: "Lara's Home / assault course." - name: "wall.tr2" path: "games/tr2/levels/wall.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:89" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:89, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "The Great Wall" - name: "boat.tr2" path: "games/tr2/levels/boat.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:125" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:125, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Venice" - name: "venice.tr2" path: "games/tr2/levels/venice.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:151" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:151, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Bartoli's Hideout" - name: "opera.tr2" path: "games/tr2/levels/opera.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:179" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:179, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Opera House" - name: "rig.tr2" path: "games/tr2/levels/rig.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:211" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:211, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Offshore Rig" - name: "platform.tr2" path: "games/tr2/levels/platform.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:241" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:241, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Diving Area" - name: "unwater.tr2" path: "games/tr2/levels/unwater.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:271" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:271, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "40 Fathoms" - name: "keel.tr2" path: "games/tr2/levels/keel.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:301" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:301, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Wreck of the Maria Doria" - name: "living.tr2" path: "games/tr2/levels/living.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:334" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:334, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Living Quarters" - name: "deck.tr2" path: "games/tr2/levels/deck.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:365" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:365, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "The Deck" - name: "skidoo.tr2" path: "games/tr2/levels/skidoo.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:398" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:398, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Tibetan Foothills" - name: "monastry.tr2" path: "games/tr2/levels/monastry.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:427" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:427, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Barkhang Monastery" - name: "catacomb.tr2" path: "games/tr2/levels/catacomb.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:457" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:457, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Catacombs of the Talion" - name: "icecave.tr2" path: "games/tr2/levels/icecave.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:486" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:486, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Ice Palace" - name: "emprtomb.tr2" path: "games/tr2/levels/emprtomb.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:515" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:515, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Temple of Xian" - name: "floating.tr2" path: "games/tr2/levels/floating.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:546" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:546, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Floating Islands" - name: "xian.tr2" path: "games/tr2/levels/xian.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:573" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:573, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "The Dragon's Lair" - name: "house.tr2" path: "games/tr2/levels/house.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:600" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:600, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Home Sweet Home" - name: "cut1.tr2" path: "games/tr2/levels/cut1.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:714" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:714, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 1" - name: "cut2.tr2" path: "games/tr2/levels/cut2.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:729" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:729, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 2" - name: "cut3.tr2" path: "games/tr2/levels/cut3.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:744" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:744, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 3" - name: "cut4.tr2" path: "games/tr2/levels/cut4.tr2" required: true category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:761" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:761, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Cutscene level 4" # FMV cutscenes @@ -237,7 +237,7 @@ files: path: "games/tr2/fmv/logo.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:780" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:780, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" note: "Eidos legal screen." - name: "ANCIENT.AVI" @@ -245,7 +245,7 @@ files: path: "games/tr2/fmv/ancient.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:781" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:781, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" note: "Intro cutscene." - name: "MODERN.AVI" @@ -253,42 +253,42 @@ files: path: "games/tr2/fmv/modern.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:782" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:782, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "LANDING.AVI" aliases: [landing.rpl] path: "games/tr2/fmv/landing.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:783" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:783, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "MS.AVI" aliases: [ms.rpl] path: "games/tr2/fmv/ms.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:784" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:784, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "CRASH.AVI" aliases: [crash.rpl] path: "games/tr2/fmv/crash.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:785" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:785, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "JEEP.AVI" aliases: [jeep.rpl] path: "games/tr2/fmv/jeep.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:786" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:786, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" - name: "END.AVI" aliases: [end.rpl] path: "games/tr2/fmv/end.rpl" required: false category: game_data - source_ref: "data/trx/ship/games/tr2/gameflow.json5:787" + source_ref: "data/trx/ship/games/tr2/gameflow.json5:787, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 1100-1130, src/trx/game/paths.c:192-202" # Music tracks (retail CD audio, ripped as N.). # Enumerated by the ship tree in docs/trx/INSTALLING.md (TR2 uses the @@ -700,7 +700,7 @@ files: sha1: "8d8109c1afbb2b443c1c1f57add4676f17b5dc84" md5: "04ad2f33e48081a6b27a7f0ebf90968d" category: game_data - source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:58" + source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:58, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "The Cold War" - name: "level2.tr2" @@ -711,7 +711,7 @@ files: sha1: "6c9417d3b03cc2fd9fac62cea0910d9ef107ee1b" md5: "d9b53b88dd70eec1e4b31182f3286bf5" category: game_data - source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:90" + source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:90, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Fool's Gold" - name: "level3.tr2" @@ -722,7 +722,7 @@ files: sha1: "e92f045520d6e0aaec2c42dd2c28d34a0677df70" md5: "ca4294e3bd8835ebf06e114b479a22c2" category: game_data - source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:115" + source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:115, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Furnace of the Gods" - name: "level4.tr2" @@ -733,7 +733,7 @@ files: sha1: "83ffcd559e656186bc807e1040485f72956dbc00" md5: "63ff8be5c7abf37d7065456afeda029f" category: game_data - source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:140" + source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:140, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Kingdom" - name: "level5.tr2" @@ -744,5 +744,5 @@ files: sha1: "4508d23e8475ef6afd7a1756763dd606f23c15a9" md5: "88c8124b6d152b9f3fe1c4eeec4428a5" category: game_data - source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:177" + source_ref: "data/trx/ship/games/tr2-gm/gameflow.json5:177, tools/shared/docker/game_entrypoint.py:50-53, 196-206, src/trx/game/shell/flow.c:383-385, src/trx/game/shell/mod.c:540-543, src/trx/game/paths.c:104-110, src/trx/game/game_flow/reader.c:1214-1217, 900-910, src/trx/game/paths.c:111-121, src/trx/game/level/format/pipeline.c:96" note: "Nightmare in Vegas" diff --git a/emulators/uzdoom.yml b/emulators/uzdoom.yml index efb0a7e40..b237d16e3 100644 --- a/emulators/uzdoom.yml +++ b/emulators/uzdoom.yml @@ -228,7 +228,7 @@ files: # ================================================================ # IWADs (user-supplied). At least one is needed to launch a game. - # All source refs point to wadsrc_extra/static/iwadinfo.txt entries. + # Each ref gives the iwadinfo.txt entry, then the code that reads it. # ================================================================ # ---- Doom ---- @@ -246,144 +246,190 @@ files: category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:420, 437, 659" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:420, 437, 659, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:420, 437, 659, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" note: "The Ultimate DOOM and DOOM Registered both use this name and are told apart by their lumps." - name: "doom2.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:640, 653" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:640, 653, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:640, 653, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doom2f.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:625, 657" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:625, 657, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:625, 657, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doombfg.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:332, 666" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:332, 666, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:332, 666, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doom2bfg.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:560, 667" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:560, 667, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:560, 667, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doomunity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:369, 661" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:369, 661, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:369, 661, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doom2unity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:592, 655" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:592, 655, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:592, 655, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doomkex.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:350, 662" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:350, 662, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:350, 662, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doom2kex.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:576, 656" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:576, 656, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:576, 656, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doomxbox.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:403, 660" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:403, 660, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:403, 660, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doom2xbox.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:608, 654" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:608, 654, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:608, 654, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "doom_complete.pk3" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:389, 652" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:389, 652, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:389, 652, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "plutonia.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:545, 670" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:545, 670, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:545, 668, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "plutoniaunity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:514, 671" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:514, 671, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:514, 669, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "plutoniakex.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:529, 672" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:529, 672, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:529, 670, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "tnt.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:499, 673" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:499, 673, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:499, 671, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "tntunity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:468, 674" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:468, 674, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:468, 672, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "tntkex.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:483, 675" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:483, 675, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:483, 673, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "nerve.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:565, 614, src/d_iwad.cpp:924-950" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:565, 614, src/d_iwad.cpp:924-950" + libretro: "wadsrc_extra/static/iwadinfo.txt:565, 614, src/d_iwad.cpp:948-974" note: "No Rest for the Living. Autoloaded by Doom 2 BFG and Xbox editions." - name: "nerveunity.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:598, src/d_iwad.cpp:924-950" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:598, src/d_iwad.cpp:924-950" + libretro: "wadsrc_extra/static/iwadinfo.txt:598, src/d_iwad.cpp:948-974" note: "Loaded from the IWAD directory by DOOM 2: Unity Edition." - name: "extras.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:357, 376, 488, 534, 582, 598" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:357, 376, 488, 534, 582, 598, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:214-221, 326-352, 924-947" + libretro: "wadsrc_extra/static/iwadinfo.txt:357, 376, 488, 534, 582, 598, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:221-228, 333-359, 948-971, src/common/platform/libretro/retro_core.cpp:61" note: "Loaded from the IWAD directory by the KEX and Unity editions." - name: "soundtrack" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:376, 598, src/d_iwad.cpp:924-950" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:376, 598, src/d_iwad.cpp:924-950" + libretro: "wadsrc_extra/static/iwadinfo.txt:376, 598, src/d_iwad.cpp:948-974" note: "Loaded from the IWAD directory by the DOOM and DOOM 2 Unity editions." - name: "id24res.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:341, 360, 379, src/d_iwad.cpp:896-912" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:341, 360, 379, src/d_iwad.cpp:896-912" + libretro: "wadsrc_extra/static/iwadinfo.txt:341, 360, 379, src/d_iwad.cpp:920-936" note: "id24 resource WAD. SupportWAD of every id IWAD block, loaded when found and i_loadsupportwad is set." # ---- Freedoom (free) ---- @@ -392,19 +438,25 @@ files: category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:307, 676" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:307, 676, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:307, 674, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "freedoom2.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:294, 677" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:294, 677, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:294, 675, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "freedm.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:281, 680" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:281, 680, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:281, 678, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" # ---- Heretic ---- @@ -412,7 +464,9 @@ files: category: game_data system: heretic required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:241, 244, 254, 257, 681" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:241, 244, 254, 257, 681, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:241, 244, 254, 257, 679, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" note: "Both Heretic and Shadow of the Serpent Riders use this name and are told apart by the EXTENDED lump." - name: "blasphem.wad" @@ -420,7 +474,9 @@ files: category: game_data system: heretic required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:228, 692-693" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:228, 692-693, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:228, 690-691, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" # ---- Hexen ---- @@ -428,13 +484,17 @@ files: category: game_data system: hexen required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:188, 684" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:188, 684, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:188, 682, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "hexdd.wad" category: game_data system: hexen required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:196-207, 685" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:196-207, 685, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:196-207, 683, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" note: "Deathkings expansion. Requires hexen.wad (Required = Hexen: Beyond Heretic)." # ---- Strife ---- @@ -443,20 +503,26 @@ files: category: game_data system: strife required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:151, 688" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:151, 688, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:151, 686, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "sve.wad" category: game_data system: strife required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:136, 140, 689" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:136, 140, 689, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:136, 140, 687, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" note: "Veteran Edition. Required = Strife: Quest for the Sigil (loads voices.wad)." - name: "voices.wad" category: game_data system: strife required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:142, 155" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:142, 155, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:214-221, 326-352, 924-947" + libretro: "wadsrc_extra/static/iwadinfo.txt:142, 155, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:221-228, 333-359, 948-971, src/common/platform/libretro/retro_core.cpp:61" # ---- Chex Quest ---- @@ -464,13 +530,17 @@ files: category: game_data system: chex required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:123, 694" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:123, 694, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:123, 692, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "chex3.wad" category: game_data system: chex required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:109, 695" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:109, 695, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:109, 693, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" # ---- Standalone commercial / community IWADs ---- @@ -478,48 +548,64 @@ files: category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:83, 698" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:83, 698, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:83, 696, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "hacx2.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:65-75, 699, src/d_iwad.cpp:362-407, src/common/filesystem/source/resourcefile.cpp:150-165" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:65-75, 699, src/d_iwad.cpp:362-407, src/common/filesystem/source/resourcefile.cpp:150-165" + libretro: "wadsrc_extra/static/iwadinfo.txt:65-75, 697, src/d_iwad.cpp:369-414, src/common/filesystem/source/resourcefile.cpp:150-165" note: "Identified by the MAP01 map and the HACX-E lump, whatever the container: every candidate is opened by its magic, so a zip under this name is read as a pk3. The Hacx 2.0 repository builds that zip from src/, where hacx-e.txt is the HACX-E lump and maps/MAP01.wad the first map." - name: "action2.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:97, 696" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:97, 696, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:97, 694, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "harm1.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:57, 697" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:57, 697, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:57, 695, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "square.pk3" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:33" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:33, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:326-352, 362-407, 643-692" + libretro: "wadsrc_extra/static/iwadinfo.txt:33, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:333-359, 369-414, 663-716, src/common/platform/libretro/retro_core.cpp:61" note: "Absent from the Names block: picked up only when named with -iwad." - name: "square1.pk3" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:45, 700" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:45, 700, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:45, 698, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "delaweare.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:22, 701" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:22, 701, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:22, 699, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" - name: "rotwb.wad" category: game_data system: doom required: false - source_ref: "wadsrc_extra/static/iwadinfo.txt:9, 702" + source_ref: + standalone: "wadsrc_extra/static/iwadinfo.txt:9, 702, wadsrc_extra/CMakeLists.txt:1, src/d_main.cpp:4207, src/d_iwad.cpp:292-302, 326-352, 362-407, 518-547" + libretro: "wadsrc_extra/static/iwadinfo.txt:9, 700, wadsrc_extra/CMakeLists.txt:1, src/common/platform/libretro/embedded_pk3.S.in:26-31, src/common/platform/libretro/retro_resources.h:18-19, src/d_main.cpp:4243, src/d_iwad.cpp:299-309, 333-359, 369-414, 537-566, src/common/platform/libretro/retro_core.cpp:61" diff --git a/emulators/vice.yml b/emulators/vice.yml index f85f64fc1..e859eb24c 100644 --- a/emulators/vice.yml +++ b/emulators/vice.yml @@ -469,7 +469,7 @@ files: md5: 57af4ae21d4b705c2991d98ed5c1f7b8 crc32: f833d117 note: "C64 BASIC V2 ROM (DTV copy). Embedded in core." - source_ref: "vice/data/C64DTV/basic-901226-01.bin" + source_ref: "vice/data/C64DTV/basic-901226-01.bin, vice/src/c64/c64rom.h:31, vice/src/c64dtv/c64dtv-resources.c:92, 157, retrodep/embedded/c64dtvembedded.c:43-48" - name: "vice/C64DTV/chargen-901225-01.bin" system: commodore-c64dtv @@ -481,7 +481,7 @@ files: md5: 12a4202f5331d45af846af6c58fba946 crc32: ec4272ee note: "C64 Character Generator (DTV copy). Embedded in core." - source_ref: "vice/data/C64DTV/chargen-901225-01.bin" + source_ref: "vice/data/C64DTV/chargen-901225-01.bin, vice/src/c64/c64rom.h:60, vice/src/c64dtv/c64dtv-resources.c:74, 151, retrodep/embedded/c64dtvembedded.c:43-48" - name: "vice/C64DTV/kernal-901227-03.bin" system: commodore-c64dtv @@ -493,7 +493,7 @@ files: md5: 39065497630802346bce17963f13c092 crc32: dbe3e7c7 note: "C64 Kernal Rev 3 (DTV copy). Embedded in core." - source_ref: "vice/data/C64DTV/kernal-901227-03.bin" + source_ref: "vice/data/C64DTV/kernal-901227-03.bin, vice/src/c64/c64rom.h:52, vice/src/c64dtv/c64dtv-resources.c:83, 154, retrodep/embedded/c64dtvembedded.c:43-48" # ------------------------------------------------------- # VIC-20 ROMs (vice_xvic) diff --git a/emulators/zesarux.yml b/emulators/zesarux.yml index cc64d798c..4b2bcc19e 100644 --- a/emulators/zesarux.yml +++ b/emulators/zesarux.yml @@ -1027,15 +1027,6 @@ files: source_ref: "src/soundchips/gs.h:34, src/soundchips/gs.h:29, src/soundchips/gs.c:525-545" note: "General Sound firmware v1.05a. GS_ROM_SIZE is in KB and the read is GS_ROM_SIZE*1024." - - name: "gs104.rom" - sha1: "c865121306eb3a7d811d82fbcc653b4dc1d6fa3d" - size: 32768 - required: false - bundled: true - system: sinclair-zx-spectrum - source_ref: "src/configure:1933" - note: "General Sound firmware v1.04. Shipped alongside gs105a.rom, but GS_ROM_NAME is fixed and there is no option to point the loader elsewhere, so it is usable only in place of gs105a.rom." - # ============================================================ # Alternate machine ROMs, selectable with --romfile (src/start.c:4877-4881, # loaded at src/cpu.c:3776-3779). Documented in the shipped src/ALTERNATEROMS. diff --git a/scripts/validate_schemas.py b/scripts/validate_schemas.py index c28cd2d82..97b40707a 100644 --- a/scripts/validate_schemas.py +++ b/scripts/validate_schemas.py @@ -87,6 +87,7 @@ def _validate_yaml_directory( out.extend(_systems_outside_profile(path, data)) out.extend(_doubled_paths(path)) out.extend(_group_requirement_split(path, data)) + out.extend(_data_only_source_refs(path, data)) return out @@ -155,6 +156,65 @@ def _group_requirement_split(path: Path, document: object) -> list[str]: return out +_CODE_SUFFIXES = frozenset( + "c cc cpp cxx c++ h hh hpp hxx inc inl ipp m mm mjs cjs js jsx ts tsx py cs java kt " + "go rs lua pas pp asm s sh bash zsh ps1 bat cmd vbs swift d zig nim qml qc rb pl php " + "scala ml hs dart vue ino z80 smali".split() +) +_CODE_FILE = re.compile(r"[\w+.-]\.([A-Za-z0-9+]+)\b") +_BINARY_EVIDENCE = re.compile( + r"\b0x[0-9a-fA-F]+\b|\bFUN_[0-9a-fA-F]+\b|\.(?:so|dll|exe|dylib|dex|apk|jar|elf|nro|xex)\b", + re.IGNORECASE, +) + +# Profiles whose files cite no published code. Each reason says why the +# check cannot apply yet. +DATA_ONLY_REF_EXCEPTIONS: dict[str, str] = { + "ace-dl": "closed source: the refs describe what the shipped binary opens", + "cpcemu": "closed source: the refs describe what the shipped binary opens", + "drastic": "closed source: the shader format files are read by the shipped binary", + "lexaloffle": "closed source: PICO-8 reads pico8_gpio, the refs are its readme and the KNULLI install script", + "mfme": "closed source: the refs are the release notes of the shipped binary", +} + + +def _ref_cites_code(ref: str) -> bool: + """A source_ref part names a source file, or a binary with an address.""" + from sourceref import split_source_ref + + if _BINARY_EVIDENCE.search(ref): + return True + for part in split_source_ref(ref): + for suffix in _CODE_FILE.findall(part.raw): + if suffix.lower() in _CODE_SUFFIXES: + return True + return False + + +def _data_only_source_refs(path: Path, document: object) -> list[str]: + """A files[] source_ref that cites only data or build files. + + A data file is evidence that the emulator reads a file only once the + code that ships and parses it is cited too: iwadinfo.txt names the + IWADs, d_iwad.cpp is what reads it. 655 entries in 27 profiles cited + the table alone, and six of them named a file no code opens. + """ + if not isinstance(document, dict) or path.stem in DATA_ONLY_REF_EXCEPTIONS: + return [] + out: list[str] = [] + for index, entry in enumerate(document.get("files") or []): + if not isinstance(entry, dict) or not entry.get("source_ref"): + continue + refs = entry["source_ref"] + for ref in refs.values() if isinstance(refs, dict) else [refs]: + if ref and not _ref_cites_code(str(ref)): + out.append( + f"{path.relative_to(ROOT)}: files[{index}] ({entry.get('name')}) " + f"source_ref cites no code that reads the file: {ref}" + ) + return out + + def _checks_without_values(path: Path, document: object) -> list[str]: """A check an entry declares with nothing to compare against. diff --git a/tests/test_data_only_refs.py b/tests/test_data_only_refs.py new file mode 100644 index 000000000..345f7d091 --- /dev/null +++ b/tests/test_data_only_refs.py @@ -0,0 +1,83 @@ +"""A files[] source_ref must cite the code that reads the file.""" + +from __future__ import annotations + +import tests # noqa: F401 offline, scratch under tmp/, the suite's own cache + +import sys +import unittest +from pathlib import Path + +REPO_ROOT = Path(__file__).resolve().parents[1] +sys.path.insert(0, str(REPO_ROOT / "scripts")) + +try: + import validate_schemas +except ImportError as exc: + validate_schemas = None + IMPORT_ERROR = str(exc) +else: + IMPORT_ERROR = "" + + +def _profile(ref: object) -> dict: + return {"files": [{"name": "doom.wad", "source_ref": ref}]} + + +@unittest.skipIf(validate_schemas is None, f"validate_schemas unavailable: {IMPORT_ERROR}") +class DataOnlySourceRefs(unittest.TestCase): + path = REPO_ROOT / "emulators" / "synthetic.yml" + + def errors(self, ref: object) -> list[str]: + return validate_schemas._data_only_source_refs(self.path, _profile(ref)) + + def test_a_data_table_alone_is_refused(self): + self.assertEqual(len(self.errors("wadsrc_extra/static/iwadinfo.txt:420, 437")), 1) + + def test_a_build_file_alone_is_refused(self): + for ref in ("pc-bios/meson.build:30", "wadsrc/CMakeLists.txt:1", + "dists/engine-data/engine_data.mk (ENABLE_KYRA)", "src/configure:1933"): + with self.subTest(ref=ref): + self.assertEqual(len(self.errors(ref)), 1) + + def test_a_file_in_the_tree_alone_is_refused(self): + self.assertEqual(len(self.errors("fMSX/ROMs/MSX.ROM")), 1) + + def test_the_table_with_its_reader_passes(self): + self.assertEqual(self.errors( + "wadsrc_extra/static/iwadinfo.txt:420, wadsrc_extra/CMakeLists.txt:1, " + "src/d_iwad.cpp:286-296, 502-531"), []) + + def test_a_role_prefix_is_read_through(self): + self.assertEqual(self.errors("source pc-bios/meson.build:30, source hw/i386/pc_piix.c:466"), []) + + def test_a_binary_with_an_address_passes(self): + for ref in ("libemucore.so 0x1a2b3c", "Fusion.exe 0x00401000", + "bigpemu FUN_006d8be0 (BootROM read)", "nethersx2 v2.2n classes.dex icons/star-%d.png"): + with self.subTest(ref=ref): + self.assertEqual(self.errors(ref), []) + + def test_each_build_mode_is_judged(self): + self.assertEqual(len(self.errors({"standalone": "src/main.cpp:10", "libretro": "data/list.txt:3"})), 1) + + def test_an_excepted_profile_is_not_judged(self): + name = next(iter(validate_schemas.DATA_ONLY_REF_EXCEPTIONS)) + path = REPO_ROOT / "emulators" / f"{name}.yml" + self.assertEqual(validate_schemas._data_only_source_refs(path, _profile("history.txt:38")), []) + + def test_every_exception_names_a_profile_and_a_reason(self): + for name, reason in validate_schemas.DATA_ONLY_REF_EXCEPTIONS.items(): + with self.subTest(profile=name): + self.assertTrue((REPO_ROOT / "emulators" / f"{name}.yml").is_file()) + self.assertTrue(reason.strip()) + + def test_the_profiles_cite_their_readers(self): + errors: list[str] = [] + for path in sorted((REPO_ROOT / "emulators").glob("*.yml")): + errors.extend(validate_schemas._data_only_source_refs( + path, validate_schemas._load_source(path))) + self.assertEqual(errors, []) + + +if __name__ == "__main__": + unittest.main()