feat: name systems in the install manifests

Each manifest carries system_titles, the name the site prints for every system its files list (Sony PlayStation, not sony-playstation or psx), so the installer can show it. Older installers ignore the field.
This commit is contained in:
Abdessamad Derraz committed 2026-10-23 15:55:46 +02:00
1 parent 9a381bb894
commit 4a1d875f43
21 files changed
+911 -8

No files matched your search

+37
View File
@@ -1660,6 +1660,43 @@
"psx"
]
},
"system_titles": {
"3do": "3DO",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"nec-pc-88": "NEC PC-88",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64": "Nintendo 64",
"nintendo-ds": "Nintendo DS",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"sc-3000": "Sega SC-3000",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-saturn": "Sega Saturn",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation"
},
"files": [
{
"dest": "bios/panafz1.bin",
+98
View File
@@ -6029,6 +6029,104 @@
"vsmile"
]
},
"system_titles": {
"3do": "3DO",
"acorn-bbc-micro": "Acorn BBC Micro",
"adam": "Coleco Adam",
"apfm1000": "APF M-1000",
"apple-ii": "Apple II",
"apple-iigs": "Apple IIGS",
"apple-macintosh-ii": "Apple Macintosh II",
"archimedes": "Acorn Archimedes",
"astrocade": "Bally Astrocade",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"atom": "Acorn Atom",
"beena": "Sega Beena",
"camplynx": "Camputers Lynx",
"cdi": "Philips CD-i",
"cgenie": "EACA Colour Genie",
"chihiro": "Sega Chihiro",
"coco": "Tandy CoCo",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"crvision": "VTech CreatiVision",
"dragon64": "Dragon 64",
"electron": "Acorn Electron",
"elektronika-bk": "Elektronika BK",
"enterprise-64-128": "Enterprise 64-128",
"entex-advision": "Entex Adventure Vision",
"fairchild-channel-f": "Fairchild Channel F",
"fm7": "Fujitsu FM-7",
"fmtowns": "Fujitsu FM Towns",
"gamate": "Bit Corporation Gamate",
"gamecom": "Tiger Game.com",
"gamepark-gp32": "GamePark GP32",
"gamepock": "Epoch Game Pocket Computer",
"gmaster": "Hartung Game Master",
"hikaru": "Sega Hikaru",
"laser310": "VTech Laser 310",
"loopy": "Casio Loopy",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"mc10": "Tandy MC-10",
"microsoft-msx": "Microsoft MSX",
"mz2000": "Sharp MZ-2000",
"mz2500": "Sharp MZ-2500",
"mz700": "Sharp MZ-700",
"mz800": "Sharp MZ-800",
"mz80k": "Sharp MZ-80K",
"nec-pc-88": "NEC PC-88",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"oricatmos": "Oric Atmos",
"pc60": "NEC PC-6001",
"pc80": "NEC PC-8001",
"pcw": "Amstrad PCW",
"philips-videopac": "Philips Videopac",
"pv2000": "Casio PV-2000",
"rx78": "Bandai RX-78",
"scummvm": "ScummVM games",
"scv": "Epoch Super Cassette Vision",
"sega-ai": "Sega AI",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-mega-cd": "Sega Mega CD",
"sega-saturn": "Sega Saturn",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-playstation-3": "Sony PlayStation 3",
"sony-playstation-vita": "Sony PlayStation Vita",
"supracan": "Funtech Super A'Can",
"tandy-vis": "Tandy VIS",
"ti99": "Texas Instruments TI-99",
"triforce": "Sega Triforce",
"trs80": "Tandy TRS-80",
"tutor": "Tomy Tutor",
"vectrex": "GCE Vectrex",
"vgmplay": "Video game music files",
"videoton-tvc": "Videoton TVC",
"vtech-socrates": "VTech Socrates",
"vtech-vsmile": "VTech V.Smile",
"xbox": "Microsoft Xbox",
"xegs": "Atari XEGS",
"zc210": "Zelda Classic"
},
"files": [
{
"dest": "panafz1.bin",
+35 -1
View File
@@ -6,7 +6,7 @@
"platform": "bizhawk",
"display_name": "BizHawk",
"version": "1.0",
"generated": "2026-10-23T07:11:31Z",
"generated": "2026-10-23T12:47:02Z",
"base_destination": "Firmware",
"detect": [
{
@@ -131,6 +131,40 @@
"TI83"
]
},
"system_titles": {
"3do": "3DO",
"apple-ii": "Apple II",
"atari-7800": "Atari 7800",
"atari-lynx": "Atari Lynx",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"commodore-c64": "Commodore C64",
"doom": "Doom",
"fairchild-channel-f": "Fairchild Channel F",
"gce-vectrex": "GCE Vectrex",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"nec-pc-engine-cd": "NEC PC Engine CD",
"nec-pc-fx": "NEC PC-FX",
"nintendo-3ds": "Nintendo 3DS",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-nes": "Nintendo NES",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-snes": "Nintendo SNES",
"philips-videopac": "Philips Videopac",
"sega-32x": "Sega 32X",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-drive": "Sega Mega Drive",
"sega-saturn": "Sega Saturn",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"sony-playstation": "Sony PlayStation",
"texas-instruments-ti-83": "Texas Instruments TI-83"
},
"files": [
{
"dest": "panafz1.bin",
+21
View File
@@ -1053,6 +1053,27 @@
]
},
"system_names": {},
"system_titles": {
"coleco-colecovision": "ColecoVision",
"nintendo-3ds": "Nintendo 3DS",
"nintendo-64": "Nintendo 64",
"nintendo-ds": "Nintendo DS",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-nes": "Nintendo NES",
"nintendo-switch": "Nintendo Switch",
"nintendo-wii-u": "Nintendo Wii U",
"panasonic-3do": "3DO",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-mega-cd": "Sega Mega CD",
"sega-saturn": "Sega Saturn",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-psp": "Sony PlayStation Portable",
"xbox": "Microsoft Xbox"
},
"files": [
{
"dest": "colecovision.rom",
+52
View File
@@ -2903,6 +2903,58 @@
"RickDangerous"
]
},
"system_titles": {
"3do": "3DO",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"cave-story": "Cave Story",
"cdi": "Philips CD-i",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"diablo": "Diablo",
"dinothawr": "Dinothawr game",
"doom": "Doom",
"duke-nukem-2": "Duke Nukem II",
"duke3d": "Duke Nukem 3D",
"flashback": "Flashback",
"fmtowns": "Fujitsu FM Towns",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64": "Nintendo 64",
"nintendo-ds": "Nintendo DS",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"quake": "Quake",
"sc-3000": "Sega SC-3000",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-outrun": "OutRun",
"sega-saturn": "Sega Saturn",
"sharp-x68000": "Sharp X68000",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sonic-1-2013": "Sonic the Hedgehog (2013)",
"sonic-2-2013": "Sonic the Hedgehog 2 (2013)",
"sonic-mania": "Sonic Mania",
"soniccd": "Sonic CD",
"sony-playstation": "Sony PlayStation",
"tyrian": "Tyrian",
"vvvvvv": "VVVVVV game",
"xrick": "Rick Dangerous"
},
"files": [
{
"dest": "bios/panafz1.bin",
+76
View File
@@ -5646,6 +5646,82 @@
"vsmile"
]
},
"system_titles": {
"3do": "3DO",
"acorn-bbc-micro": "Acorn BBC Micro",
"adam": "Coleco Adam",
"apfm1000": "APF M-1000",
"apple-ii": "Apple II",
"apple-iigs": "Apple IIGS",
"apple-macintosh-ii": "Apple Macintosh II",
"archimedes": "Acorn Archimedes",
"astrocde": "Bally Astrocade",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"atom": "Acorn Atom",
"camplynx": "Camputers Lynx",
"cdi": "Philips CD-i",
"chihiro": "Sega Chihiro",
"coco": "Tandy CoCo",
"commodore-amiga": "Commodore Amiga",
"crvision": "VTech CreatiVision",
"electron": "Acorn Electron",
"entex-advision": "Entex Adventure Vision",
"fairchild-channel-f": "Fairchild Channel F",
"fm7": "Fujitsu FM-7",
"fmtowns": "Fujitsu FM Towns",
"fpinball": "Future Pinball tables",
"gamate": "Bit Corporation Gamate",
"gamecom": "Tiger Game.com",
"gamepark-gp32": "GamePark GP32",
"gamepock": "Epoch Game Pocket Computer",
"gmaster": "Hartung Game Master",
"hikaru": "Sega Hikaru",
"laser310": "VTech Laser 310",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"microsoft-xbox": "Microsoft Xbox",
"nec-pc-88": "NEC PC-88",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"philips-videopac": "Philips Videopac",
"scummvm": "ScummVM games",
"scv": "Epoch Super Cassette Vision",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-mega-cd": "Sega Mega CD",
"sega-saturn": "Sega Saturn",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-playstation-3": "Sony PlayStation 3",
"sony-playstation-vita": "Sony PlayStation Vita",
"supracan": "Funtech Super A'Can",
"tandy-vis": "Tandy VIS",
"ti99": "Texas Instruments TI-99",
"tutor": "Tomy Tutor",
"vectrex": "GCE Vectrex",
"vgmplay": "Video game music files",
"vtech-socrates": "VTech Socrates",
"vtech-vsmile": "VTech V.Smile",
"xegs": "Atari XEGS",
"zc210": "Zelda Classic"
},
"files": [
{
"dest": "panafz1.bin",
+67
View File
@@ -1418,6 +1418,73 @@
"Videoton - TV Computer"
]
},
"system_titles": {
"3do": "3DO",
"amstrad-cpc": "Amstrad CPC",
"apple-macintosh-ii": "Apple Macintosh II",
"arcade": "Arcade games",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"commodore-c128": "Commodore C128",
"dinothawr": "Dinothawr game",
"doom": "Doom",
"dos": "MS-DOS",
"elektronika-bk": "Elektronika BK",
"enterprise-64-128": "Enterprise 64-128",
"epoch-scv": "Epoch Super Cassette Vision",
"fairchild-channel-f": "Fairchild Channel F",
"galaksija": "Galaksija computer",
"j2me": "Java J2ME",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"nec-pc-88": "NEC PC-88",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-dsi": "Nintendo DSi",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-nes": "Nintendo NES",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-snes": "Nintendo SNES",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"palm-os": "Palm OS",
"philips-cdi": "Philips CD-i",
"philips-videopac": "Philips Videopac",
"scummvm": "ScummVM games",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-mega-drive": "Sega Mega Drive",
"sega-saturn": "Sega Saturn",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-psp": "Sony PlayStation Portable",
"ti-83": "Texas Instruments TI-83",
"videoton-tvc": "Videoton TVC",
"vircon32": "Vircon32 cartridges",
"wolfenstein-3d": "Wolfenstein 3D",
"xrick": "Rick Dangerous"
},
"files": [
{
"dest": "3do_arcade_saot.bin",
+2 -1
View File
@@ -6,7 +6,7 @@
"platform": "minui",
"display_name": "MinUI",
"version": "1.0",
"generated": "2026-10-22T05:12:35Z",
"generated": "2026-10-23T12:47:02Z",
"base_destination": "",
"detect": [
{
@@ -39,6 +39,7 @@
},
"system_cores": {},
"system_names": {},
"system_titles": {},
"files": [
{
"dest": "Bios/MGBA/gb_bios.bin",
+43 -1
View File
@@ -6,7 +6,7 @@
"platform": "misterfpga",
"display_name": "MiSTer FPGA",
"version": "1.0",
"generated": "2026-10-23T07:11:31Z",
"generated": "2026-10-23T12:47:02Z",
"base_destination": "games",
"detect": [
{
@@ -93,6 +93,48 @@
"GameCom"
]
},
"system_titles": {
"3do": "3DO",
"apple-iigs": "Apple IIGS",
"atari-jaguar": "Atari Jaguar",
"atari-lynx": "Atari Lynx",
"bally-astrocade": "Bally Astrocade",
"casio-pv2000": "Casio PV-2000",
"coco3": "Tandy Color Computer 3",
"creativision": "VTech CreatiVision",
"epoch-scv": "Epoch Super Cassette Vision",
"gamate": "Bit Corporation Gamate",
"gameking": "TimeTop GameKing",
"interact": "Interact Home Computer",
"loopy": "Casio Loopy",
"marty": "Fujitsu FM Towns Marty",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"nec-pc-88": "NEC PC-88",
"nec-pc-engine-cd": "NEC PC Engine CD",
"ngpc": "SNK Neo Geo Pocket Color",
"nintendo-64": "Nintendo 64",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-nes": "Nintendo NES",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-snes": "Nintendo SNES",
"philips-cdi": "Philips CD-i",
"pocket-challenge-v2": "Benesse Pocket Challenge V2",
"sega-mega-cd": "Sega Mega CD",
"sega-saturn": "Sega Saturn",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"studio-ii": "RCA Studio II",
"superacan": "Funtech Super A'Can",
"ti99": "Texas Instruments TI-99",
"tiger-game-com": "Tiger Game.com",
"videobrain": "Umtech VideoBrain",
"wonderswan": "Bandai WonderSwan",
"wonderswan-color": "Bandai WonderSwan Color"
},
"files": [
{
"dest": "3DO/boot.rom",
+2 -1
View File
@@ -6,7 +6,7 @@
"platform": "myminui",
"display_name": "MyMinUI",
"version": "1.0",
"generated": "2026-10-23T11:13:30Z",
"generated": "2026-10-23T12:47:02Z",
"base_destination": "",
"detect": [
{
@@ -91,6 +91,7 @@
},
"system_cores": {},
"system_names": {},
"system_titles": {},
"files": [
{
"dest": "Bios/DOS/MT32_CONTROL.ROM",
+2 -1
View File
@@ -6,7 +6,7 @@
"platform": "nextui",
"display_name": "NextUI",
"version": "1.0",
"generated": "2026-10-23T07:11:31Z",
"generated": "2026-10-23T12:47:02Z",
"base_destination": "",
"detect": [
{
@@ -88,6 +88,7 @@
},
"system_cores": {},
"system_names": {},
"system_titles": {},
"files": [
{
"dest": "Bios/FBN/fbneo/hiscore.dat",
+60 -1
View File
@@ -6,7 +6,7 @@
"platform": "recalbox",
"display_name": "Recalbox",
"version": "1.0",
"generated": "2026-10-23T11:13:30Z",
"generated": "2026-10-23T12:47:02Z",
"base_destination": "bios",
"detect": [
{
@@ -1584,6 +1584,65 @@
"ps2"
]
},
"system_titles": {
"3do": "3DO",
"64dd": "Nintendo 64DD",
"apple2gs": "Apple IIGS",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-st": "Atari ST",
"cdi": "Philips CD-i",
"coco": "Tandy CoCo",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"commodore-c64": "Commodore C64",
"dragon64": "Dragon 64",
"elektronika-bk": "Elektronika BK",
"fairchild-channel-f": "Fairchild Channel F",
"lynx": "Atari Lynx",
"macintosh": "Apple Macintosh",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"naomi2": "Sega NAOMI 2",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-ds": "Nintendo DS",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"oricatmos": "Oric Atmos",
"palm-os": "Palm OS",
"pc88": "NEC PC-88",
"pc98": "NEC PC-98",
"philips-videopac": "Philips Videopac",
"satellaview": "Nintendo Satellaview",
"scummvm": "ScummVM games",
"scv": "Epoch Super Cassette Vision",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-mega-drive": "Sega Mega Drive",
"sega-saturn": "Sega Saturn",
"sharp-x68000": "Sharp X68000",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"spectravideo": "Spectravideo",
"stv": "Sega ST-V",
"ti994a": "Texas Instruments TI-99",
"x1": "Sharp X1",
"xbox": "Microsoft Xbox"
},
"files": [
{
"dest": "3do/panafz1.bin",
+67
View File
@@ -2029,6 +2029,73 @@
"Videoton - TV Computer"
]
},
"system_titles": {
"3do": "3DO",
"amstrad-cpc": "Amstrad CPC",
"apple-macintosh-ii": "Apple Macintosh II",
"arcade": "Arcade games",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"commodore-c128": "Commodore C128",
"dinothawr": "Dinothawr game",
"doom": "Doom",
"dos": "MS-DOS",
"elektronika-bk": "Elektronika BK",
"enterprise-64-128": "Enterprise 64-128",
"epoch-scv": "Epoch Super Cassette Vision",
"fairchild-channel-f": "Fairchild Channel F",
"galaksija": "Galaksija computer",
"j2me": "Java J2ME",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"nec-pc-88": "NEC PC-88",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-dsi": "Nintendo DSi",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-nes": "Nintendo NES",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-snes": "Nintendo SNES",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"palm-os": "Palm OS",
"philips-cdi": "Philips CD-i",
"philips-videopac": "Philips Videopac",
"scummvm": "ScummVM games",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-mega-drive": "Sega Mega Drive",
"sega-saturn": "Sega Saturn",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-psp": "Sony PlayStation Portable",
"ti-83": "Texas Instruments TI-83",
"videoton-tvc": "Videoton TVC",
"vircon32": "Vircon32 cartridges",
"wolfenstein-3d": "Wolfenstein 3D",
"xrick": "Rick Dangerous"
},
"files": [
{
"dest": "3do_arcade_saot.bin",
+92
View File
@@ -3432,6 +3432,98 @@
"ecwolf"
]
},
"system_titles": {
"3do": "3DO",
"adam": "Coleco Adam",
"apfm1000": "APF M-1000",
"apple-ii": "Apple II",
"apple-iigs": "Apple IIGS",
"aquarius": "Mattel Aquarius",
"archimedes": "Acorn Archimedes",
"astrocde": "Bally Astrocade",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-jaguar": "Atari Jaguar",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"atari7800": "Atari 7800",
"atom": "Acorn Atom",
"bbcmicro": "Acorn BBC Micro",
"camplynx": "Camputers Lynx",
"cdi": "Philips CD-i",
"chihiro": "Sega Chihiro",
"coco": "Tandy CoCo",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"crvision": "VTech CreatiVision",
"dragon32": "Dragon 32",
"electron": "Acorn Electron",
"elektronika-bk": "Elektronika BK",
"emerson-arcadia-2001": "Emerson Arcadia 2001",
"entex-advision": "Entex Adventure Vision",
"fairchild-channel-f": "Fairchild Channel F",
"fm7": "Fujitsu FM-7",
"fmtowns": "Fujitsu FM Towns",
"gamate": "Bit Corporation Gamate",
"gamecom": "Tiger Game.com",
"gamepark-gp32": "GamePark GP32",
"gamepock": "Epoch Game Pocket Computer",
"gmaster": "Hartung Game Master",
"hikaru": "Sega Hikaru",
"j2me": "Java J2ME",
"laseractive": "Pioneer LaserActive",
"loopy": "Casio Loopy",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"megacd": "Sega Mega CD",
"microsoft-msx": "Microsoft MSX",
"namco-system246": "Namco System 246",
"nec-pc-88": "NEC PC-88",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"neogeo64": "SNK Hyper Neo Geo 64",
"ngage": "Nokia N-Gage",
"ngp": "SNK Neo Geo Pocket",
"ngpc": "SNK Neo Geo Pocket Color",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"pegasus": "Aamber Pegasus",
"pv1000": "Casio PV-1000",
"scummvm": "ScummVM games",
"scv": "Epoch Super Cassette Vision",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-master-system": "Sega Master System",
"sega-saturn": "Sega Saturn",
"sega32x": "Sega 32X",
"segastv": "Sega ST-V",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"snk-neogeo": "SNK Neo Geo",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"supracan": "Funtech Super A'Can",
"ti99": "Texas Instruments TI-99",
"triforce": "Sega Triforce",
"tutor": "Tomy Tutor",
"vc4000": "Interton VC 4000",
"vectrex": "GCE Vectrex",
"vg5k": "Philips VG 5000",
"vtech-vsmile": "VTech V.Smile",
"wolfenstein3d": "Wolfenstein 3D",
"xbox": "Microsoft Xbox",
"xegs": "Atari XEGS"
},
"files": [
{
"dest": "panafz1.bin",
+67
View File
@@ -2116,6 +2116,73 @@
"wolfenstein"
]
},
"system_titles": {
"3do": "3DO",
"amstrad-cpc": "Amstrad CPC",
"apple-ii": "Apple II",
"apple-iigs": "Apple IIGS",
"apple-macintosh-ii": "Apple Macintosh II",
"arcade": "Arcade games",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-jaguar": "Atari Jaguar",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"coco": "Tandy CoCo",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"commodore-c64": "Commodore C64",
"doom": "Doom",
"dragon64": "Dragon 64",
"enterprise-64-128": "Enterprise 64-128",
"epoch-scv": "Epoch Super Cassette Vision",
"fairchild-channel-f": "Fairchild Channel F",
"hartung-game-master": "Hartung Game Master",
"j2me": "Java J2ME",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"microsoft-xbox": "Microsoft Xbox",
"nec-pc-88": "NEC PC-88",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"neogeo": "SNK Neo Geo",
"ngp": "SNK Neo Geo Pocket",
"ngpc": "SNK Neo Geo Pocket Color",
"nintendo-3ds": "Nintendo 3DS",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-nes": "Nintendo NES",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-snes": "Nintendo SNES",
"odyssey2": "Magnavox Odyssey2",
"philips-cdi": "Philips CD-i",
"pico8": "Lexaloffle PICO-8",
"scummvm": "ScummVM games",
"sega-dreamcast": "Sega Dreamcast",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-mega-drive": "Sega Mega Drive",
"sega-saturn": "Sega Saturn",
"sega32x": "Sega 32X",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-psp": "Sony PlayStation Portable",
"supracan": "Funtech Super A'Can",
"tiger-game-com": "Tiger Game.com",
"triforce": "Sega Triforce",
"vectrex": "GCE Vectrex",
"vtech-vsmile": "VTech V.Smile",
"wolfenstein-3d": "Wolfenstein 3D",
"x68000": "Sharp X68000"
},
"files": [
{
"dest": "bios/panafz1.bin",
+67
View File
@@ -4887,6 +4887,73 @@
"Videoton - TV Computer"
]
},
"system_titles": {
"3do": "3DO",
"amstrad-cpc": "Amstrad CPC",
"apple-macintosh-ii": "Apple Macintosh II",
"arcade": "Arcade games",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"commodore-c128": "Commodore C128",
"dinothawr": "Dinothawr game",
"doom": "Doom",
"dos": "MS-DOS",
"elektronika-bk": "Elektronika BK",
"enterprise-64-128": "Enterprise 64-128",
"epoch-scv": "Epoch Super Cassette Vision",
"fairchild-channel-f": "Fairchild Channel F",
"galaksija": "Galaksija computer",
"j2me": "Java J2ME",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"nec-pc-88": "NEC PC-88",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-dsi": "Nintendo DSi",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-nes": "Nintendo NES",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-snes": "Nintendo SNES",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"palm-os": "Palm OS",
"philips-cdi": "Philips CD-i",
"philips-videopac": "Philips Videopac",
"scummvm": "ScummVM games",
"sega-dreamcast": "Sega Dreamcast",
"sega-dreamcast-arcade": "Sega Dreamcast-based arcade boards",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-mega-drive": "Sega Mega Drive",
"sega-saturn": "Sega Saturn",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"snk-neogeo-cd": "SNK Neo Geo CD",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-psp": "Sony PlayStation Portable",
"ti-83": "Texas Instruments TI-83",
"videoton-tvc": "Videoton TVC",
"vircon32": "Vircon32 cartridges",
"wolfenstein-3d": "Wolfenstein 3D",
"xrick": "Rick Dangerous"
},
"files": [
{
"dest": "3do_arcade_saot.bin",
+16
View File
@@ -1644,6 +1644,22 @@
"ps3"
]
},
"system_titles": {
"microsoft-xbox": "Microsoft Xbox",
"nintendo-ds": "Nintendo DS",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"sega-dreamcast": "Sega Dreamcast",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-saturn": "Sega Saturn",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-playstation-3": "Sony PlayStation 3"
},
"files": [
{
"dest": "xemu/bios/mcpx_1.0.bin",
+58 -1
View File
@@ -6,7 +6,7 @@
"platform": "romm",
"display_name": "RomM",
"version": "1.0",
"generated": "2026-10-23T07:11:31Z",
"generated": "2026-10-23T12:47:02Z",
"base_destination": "bios",
"detect": [
{
@@ -9252,6 +9252,63 @@
"wolfenstein"
]
},
"system_titles": {
"3do": "3DO",
"amstrad-cpc": "Amstrad CPC",
"apple-macintosh-ii": "Apple Macintosh II",
"arcade": "Arcade games",
"atari-400-800": "Atari 400-800",
"atari-5200": "Atari 5200",
"atari-7800": "Atari 7800",
"atari-lynx": "Atari Lynx",
"atari-st": "Atari ST",
"coleco-colecovision": "ColecoVision",
"commodore-amiga": "Commodore Amiga",
"doom": "Doom",
"enterprise-64-128": "Enterprise 64-128",
"fairchild-channel-f": "Fairchild Channel F",
"j2me": "Java J2ME",
"magnavox-odyssey2": "Magnavox Odyssey2",
"mattel-intellivision": "Mattel Intellivision",
"microsoft-msx": "Microsoft MSX",
"microsoft-xbox": "Microsoft Xbox",
"nec-pc-98": "NEC PC-98",
"nec-pc-engine": "NEC PC Engine",
"nec-pc-engine-cd": "NEC PC Engine CD",
"nec-pc-fx": "NEC PC-FX",
"nintendo-64dd": "Nintendo 64DD",
"nintendo-ds": "Nintendo DS",
"nintendo-fds": "Nintendo Famicom Disk System",
"nintendo-gamecube": "Nintendo GameCube",
"nintendo-gb": "Nintendo Game Boy",
"nintendo-gba": "Nintendo Game Boy Advance",
"nintendo-gbc": "Nintendo Game Boy Color",
"nintendo-nes": "Nintendo NES",
"nintendo-pokemon-mini": "Nintendo Pokemon Mini",
"nintendo-satellaview": "Nintendo Satellaview",
"nintendo-sgb": "Nintendo Super Game Boy",
"nintendo-snes": "Nintendo SNES",
"nintendo-sufami-turbo": "Nintendo SuFami Turbo",
"philips-videopac": "Philips Videopac",
"scummvm": "ScummVM games",
"sega-dreamcast": "Sega Dreamcast",
"sega-game-gear": "Sega Game Gear",
"sega-master-system": "Sega Master System",
"sega-mega-cd": "Sega Mega CD",
"sega-mega-drive": "Sega Mega Drive",
"sega-saturn": "Sega Saturn",
"sharp-x1": "Sharp X1",
"sharp-x68000": "Sharp X68000",
"sinclair-zx-spectrum": "Sinclair ZX Spectrum",
"snk-neogeo-aes": "SNK Neo Geo AES",
"snk-neogeo-cd": "SNK Neo Geo CD",
"snk-neogeo-mvs": "SNK Neo Geo MVS",
"sony-playstation": "Sony PlayStation",
"sony-playstation-2": "Sony PlayStation 2",
"sony-psp": "Sony PlayStation Portable",
"videoton-tvc": "Videoton TVC",
"wolfenstein-3d": "Wolfenstein 3D"
},
"files": [
{
"dest": "3do/3do_arcade_saot.bin",
+8
View File
@@ -136,6 +136,14 @@
"uniqueItems": true
}
},
"system_titles": {
"description": "Each system id with the name a person reads for it, the one the site prints (Sony PlayStation). A system the site cannot name is absent.",
"type": "object",
"additionalProperties": {
"type": "string",
"minLength": 1
}
},
"system_names": {
"description": "Each platform system with the names the platform's own file gives it (native_system), which the installer accepts for --system.",
"type": "object",
+28 -1
View File
@@ -12,7 +12,7 @@ and 3-tier storage (embedded/external/user_provided).
from __future__ import annotations
from collections.abc import Callable, Iterator
from collections.abc import Callable, Iterable, Iterator
from artifacts import _build_timestamp, set_plain_mode
import argparse
@@ -4095,6 +4095,32 @@ def _record_unplaceable(unplaceable: list[dict], record_omission: Callable[...,
CASE_FOLDING_OS = frozenset({"windows", "darwin"})
def system_titles(*entry_lists: Iterable[dict]) -> dict[str, str]:
"""The name a person reads for each system the entries carry.
Batocera names PlayStation `psx` and the installer showed
`sony-playstation (psx)`: neither is what a beginner looks for. The
title is the one the site prints, so a system reads the same on its
page and in the installer. A system the site cannot name is left out,
and the installer shows its id: the site build refuses such a system,
so only a test fixture reaches here with one.
"""
from siterender import system_name
ids = {
sys_id
for entries in entry_lists for entry in entries
for sys_id in entry.get("systems") or []
}
titles: dict[str, str] = {}
for sys_id in sorted(ids):
try:
titles[sys_id] = system_name(sys_id)
except KeyError:
continue
return titles
def generate_manifest(
platform_name: str,
platforms_dir: str,
@@ -4562,6 +4588,7 @@ def generate_manifest(
# The names the platform itself gives its systems (Batocera's psx),
# which --system accepts beside the ids.
"system_names": platform_system_names(config, list(pack_systems)),
"system_titles": system_titles(manifest_files, omitted_by_destination.values()),
"files": manifest_files,
}
if data_directories:
+13
View File
@@ -1093,6 +1093,19 @@ class ThePlatformsOwnSystemNamesAreAccepted(unittest.TestCase):
self.assertIn('"system_names": platform_system_names(config, list(pack_systems))',
source)
def test_every_listed_system_gets_the_title_the_site_prints(self):
sys.path.insert(0, str(REPO_ROOT / "scripts"))
from generate_pack import system_titles # noqa: PLC0415
files = [{"dest": "a.bin", "systems": ["sony-playstation", "nintendo-gba"]}]
omitted = [{"dest": "b.bin", "systems": ["3do"]}]
self.assertEqual(system_titles(files, omitted), {
"3do": "3DO",
"nintendo-gba": "Nintendo Game Boy Advance",
"sony-playstation": "Sony PlayStation",
})
self.assertEqual(system_titles([{"dest": "c.bin", "systems": ["sys-a"]}]), {})
def test_a_native_name_narrows_and_lists(self):
with FakeRepository() as repo:
path = repo.root / "install" / "retroarch.json"