igir
Version:
🕹 A zero-setup ROM collection manager that sorts, filters, extracts or archives, patches, and reports on collections of any size on any OS.
1,777 lines (1,776 loc) • 42.6 kB
JSON
{
"$schema": "./consoleTokens.schema.json",
"version": 1,
"consoles": [
{
"datNameRegex": "/Archimedes/i",
"extensions": [],
"tokens": {
"es": "archimedes",
"mister": "ARCHIE",
"romm": "acorn-archimedes"
}
},
{
"datNameRegex": "/Atom/i",
"extensions": [],
"tokens": {
"batocera": "atom",
"mister": "AcornAtom",
"romm": "atom"
}
},
{
"datNameRegex": "/CPC/i",
"extensions": [],
"tokens": {
"adam": "AMSTRAD",
"batocera": "amstradcpc",
"crossmix": "CPC",
"es": "amstradcpc",
"rocknix": "amstradcpc",
"mister": "Amstrad",
"onion": "CPC",
"retrodeck": "amstradcpc",
"romm": "acpc",
"spruce": "CPC",
"twmenu": "cpc"
}
},
{
"datNameRegex": "/PCW/i",
"extensions": [],
"tokens": {
"batocera": "pcw",
"mister": "AmstradPCW",
"romm": "amstrad-pcw"
}
},
{
"datNameRegex": "/Apple.*I/i",
"extensions": [],
"tokens": {
"mister": "Apple-I",
"romm": "apple"
}
},
{
"datNameRegex": "/Apple.*IIe?/i",
"extensions": [".do", ".nib", ".po"],
"tokens": {
"batocera": "apple2",
"es": "apple2",
"mister": "Apple-II",
"retrodeck": "apple2",
"romm": "appleii"
}
},
{
"datNameRegex": "/Apple.*IIGS/i",
"extensions": [".2mg"],
"tokens": {
"batocera": "apple2gs",
"es": "apple2gs",
"retrodeck": "apple2gs",
"romm": "apple-iigs"
}
},
{
"datNameRegex": "/Arduboy/i",
"extensions": [".arduboy", ".hex"],
"tokens": {
"batocera": "arduboy",
"crossmix": "ARDUBOY",
"es": "arduboy",
"rocknix": "arduboy",
"mister": "Arduboy",
"onion": "ARDUBOY",
"pocket": "arduboy",
"retrodeck": "arduboy",
"romm": "arduboy",
"spruce": "ARDUBOY"
}
},
{
"datNameRegex": "/800|8-bit Family/",
"extensions": [".atr", ".atx"],
"tokens": {
"batocera": "atari800",
"crossmix": "ATARI800",
"es": "atari800",
"rocknix": "atari800",
"mister": "Atari800",
"onion": "EIGHTHUNDRED",
"retrodeck": "atari800",
"romm": "atari8bit",
"spruce": "EIGHTHUNDRED"
}
},
{
"datNameRegex": "/2600/",
"extensions": [
".a26",
".act",
".pb",
".tv",
".tvr",
".mn",
".cv",
".eb",
".ef",
".efr",
".ua",
".x07",
".sb"
],
"tokens": {
"adam": "A2600",
"batocera": "atari2600",
"crossmix": "ATARI2600",
"es": "atari2600",
"rocknix": "atari2600",
"mister": "Atari2600",
"miyoocfw": "2600",
"onion": "ATARI",
"pocket": "2600",
"retrodeck": "atari2600",
"romm": "atari2600",
"spruce": "ATARI",
"twmenu": "a26"
}
},
{
"datNameRegex": "/5200/",
"extensions": [".a52"],
"tokens": {
"adam": "A5200",
"batocera": "atari5200",
"crossmix": "ATARI5200",
"es": "atari5200",
"rocknix": "atari5200",
"mister": "Atari5200",
"onion": "FIFTYTWOHUNDRED",
"retrodeck": "atari5200",
"romm": "atari5200",
"spruce": "FIFTYTWOHUNDRED",
"twmenu": "a52"
}
},
{
"datNameRegex": "/7800/",
"extensions": [".a78"],
"tokens": {
"adam": "A7800",
"batocera": "atari7800",
"crossmix": "ATARI7800",
"es": "atari7800",
"rocknix": "atari7800",
"mister": "Atari7800",
"onion": "SEVENTYEIGHTHUNDRED",
"pocket": "7800",
"retrodeck": "atari7800",
"romm": "atari7800",
"spruce": "SEVENTYEIGHTHUNDRED",
"twmenu": "a78"
}
},
{
"datNameRegex": "/Jaguar/i",
"extensions": [".j64"],
"tokens": {
"batocera": "jaguar",
"es": "atarijaguar",
"rocknix": "atarijaguar",
"onion": "JAGUAR",
"retrodeck": "atarijaguar",
"romm": "jaguar"
}
},
{
"datNameRegex": "/Jaguar CD/i",
"extensions": [],
"tokens": {
"batocera": "jaguarcd",
"es": "atarijaguarcd",
"rocknix": "atarijaguar",
"retrodeck": "atarijaguarcd",
"romm": "atari-jaguar-cd"
}
},
{
"datNameRegex": "/Lynx/i",
"extensions": [".lnx", ".lyx"],
"tokens": {
"adam": "LYNX",
"batocera": "lynx",
"crossmix": "LYNX",
"es": "atarilynx",
"funkeyos": "Atari lynx",
"rocknix": "atarilynx",
"mister": "AtariLynx",
"miyoocfw": "LYNX",
"onion": "LYNX",
"pocket": "lynx",
"retrodeck": "atarilynx",
"romm": "lynx",
"spruce": "LYNX"
}
},
{
"datNameRegex": "/Atari.*\\bST/i",
"extensions": [".msa", ".st", ".stx"],
"tokens": {
"batocera": "atarist",
"crossmix": "ATARIST",
"es": "atarist",
"rocknix": "atarist",
"mister": "AtariST",
"onion": "ATARIST",
"retrodeck": "atarist",
"romm": "atari-st",
"spruce": "ATARIST"
}
},
{
"datNameRegex": "/Astrocade/i",
"extensions": [],
"tokens": {
"batocera": "astrocde",
"es": "astrocde",
"mister": "Astrocade",
"retrodeck": "astrocde",
"romm": "astrocade"
}
},
{
"datNameRegex": "/Super ?Vision 8000/i",
"extensions": [],
"tokens": {
"batocera": "sv8000",
"mister": "Supervision8000",
"romm": "super-vision-8000"
}
},
{
"datNameRegex": "/RX[ -]?78/i",
"extensions": [],
"tokens": {
"batocera": "rx78",
"mister": "RX78"
}
},
{
"datNameRegex": "/WonderSwan/i",
"extensions": [".ws"],
"tokens": {
"adam": "WSC",
"batocera": "wswan",
"crossmix": "WS",
"es": "wonderswan",
"funkeyos": "WonderSwan",
"rocknix": "wonderswan",
"mister": "WonderSwan",
"miyoocfw": "WSWAN",
"onion": "WS",
"pocket": "wonderswan",
"retrodeck": "wonderswan",
"romm": "wonderswan",
"spruce": "WS",
"twmenu": "ws"
}
},
{
"datNameRegex": "/WonderSwan Color/i",
"extensions": [".wsc"],
"tokens": {
"adam": "WSC",
"batocera": "wswanc",
"crossmix": "WSC",
"es": "wonderswancolor",
"funkeyos": "WonderSwan",
"rocknix": "wonderswancolor",
"mister": "WonderSwan",
"miyoocfw": "WSWAN",
"onion": "WS",
"pocket": "wonderswan",
"retrodeck": "wonderswancolor",
"romm": "wonderswan-color",
"spruce": "WSC",
"twmenu": "ws"
}
},
{
"datNameRegex": "/Gamate/i",
"extensions": [],
"tokens": {
"batocera": "gamate",
"es": "gamate",
"mister": "Gamate",
"pocket": "gamate",
"romm": "gamate"
}
},
{
"datNameRegex": "/PV[ -]?1000/i",
"extensions": [],
"tokens": {
"batocera": "pv1000",
"es": "pv1000",
"mister": "Casio_PV-1000",
"retrodeck": "pv1000",
"romm": "casio-pv-1000"
}
},
{
"datNameRegex": "/PV[ -]?2000/i",
"extensions": [],
"tokens": {
"batocera": "pv2000",
"mister": "Casio_PV-2000",
"romm": "casio-pv-2000"
}
},
{
"datNameRegex": "/Amiga/i",
"extensions": [],
"tokens": {
"adam": "AMIGA",
"crossmix": "AMIGA",
"es": "amiga",
"rocknix": "amiga",
"mister": "Amiga",
"onion": "AMIGA",
"pocket": "amiga",
"retrodeck": "amiga",
"romm": "amiga",
"spruce": "AMIGA"
}
},
{
"datNameRegex": "/Amiga CD32/i",
"extensions": [],
"tokens": {
"batocera": "amigacd32",
"crossmix": "AMIGACD",
"es": "amigacd32",
"rocknix": "amigacd32",
"mister": "Amiga",
"onion": "AMIGACD",
"retrodeck": "amigacd32",
"romm": "amiga-cd32"
}
},
{
"datNameRegex": "/Amiga CDTV/i",
"extensions": [],
"tokens": {
"batocera": "amigacdtv",
"crossmix": "AMIGACDTV",
"es": "cdtv",
"retrodeck": "cdtv",
"romm": "commodore-cdtv"
}
},
{
"datNameRegex": "/Commodore C?16/i",
"extensions": [],
"tokens": {
"rocknix": "c16",
"mister": "C16",
"romm": "c16"
}
},
{
"datNameRegex": "/Commodore C?64/i",
"extensions": [".crt", ".d64", ".t64"],
"tokens": {
"adam": "C64",
"batocera": "c64",
"crossmix": "C64",
"es": "c64",
"rocknix": "c64",
"mister": "C64",
"onion": "COMMODORE",
"pocket": "c64",
"retrodeck": "c64",
"romm": "c64",
"spruce": "COMMODORE"
}
},
{
"datNameRegex": "/Commodore C?128/i",
"extensions": [],
"tokens": {
"batocera": "c128",
"rocknix": "c128",
"mister": "C128",
"romm": "c128"
}
},
{
"datNameRegex": "/Plus.*4/i",
"extensions": [],
"tokens": {
"batocera": "cplus4",
"crossmix": "CPLUS4",
"es": "plus4",
"retrodeck": "plus4",
"romm": "c-plus-4"
}
},
{
"datNameRegex": "/VIC[ -]?20/i",
"extensions": [],
"tokens": {
"batocera": "c20",
"crossmix": "VIC20",
"es": "vic20",
"rocknix": "vic20",
"mister": "VIC20",
"onion": "VIC20",
"retrodeck": "vic20",
"romm": "vic-20",
"spruce": "VIC20"
}
},
{
"datNameRegex": "/ColecoVision/i",
"extensions": [".col"],
"tokens": {
"adam": "COLECO",
"batocera": "colecovision",
"crossmix": "COLECO",
"es": "colecovision",
"rocknix": "coleco",
"mister": "Coleco",
"onion": "COLECO",
"pocket": "coleco",
"retrodeck": "colecovision",
"romm": "colecovision",
"spruce": "COLECO",
"twmenu": "col"
}
},
{
"datNameRegex": "/Arcadia/i",
"extensions": [],
"tokens": {
"batocera": "arcadia",
"es": "arcadia",
"mister": "Arcadia",
"pocket": "arcadia",
"retrodeck": "arcadia",
"romm": "arcadia-2001"
}
},
{
"datNameRegex": "/Adventure Vision/i",
"extensions": [],
"tokens": {
"batocera": "advision",
"mister": "AVision",
"pocket": "avision",
"romm": "adventure-vision"
}
},
{
"datNameRegex": "/Super Cassette Vision/i",
"extensions": [],
"tokens": {
"batocera": "scv",
"es": "scv",
"rocknix": "svc",
"retrodeck": "scv",
"romm": "epoch-super-cassette-vision"
}
},
{
"datNameRegex": "/Channel F/i",
"extensions": [".chf"],
"tokens": {
"batocera": "channelf",
"crossmix": "CHANNELF",
"es": "channelf",
"rocknix": "channelf",
"mister": "ChannelF",
"onion": "FAIRCHILD",
"pocket": "channel_f",
"retrodeck": "channelf",
"romm": "fairchild-channel-f",
"spruce": "FAIRCHILD"
}
},
{
"datNameRegex": "/Super A'?Can/i",
"extensions": [],
"tokens": {
"batocera": "supracan",
"es": "supracan",
"romm": "super-acan"
}
},
{
"datNameRegex": "/GP2X/i",
"extensions": [],
"tokens": {
"romm": "gp2x"
}
},
{
"datNameRegex": "/GP32/i",
"extensions": [],
"tokens": {
"batocera": "gp32",
"romm": "gp32"
}
},
{
"datNameRegex": "/Vectrex/i",
"extensions": [".gam", ".vc", ".vec"],
"tokens": {
"batocera": "vectrex",
"crossmix": "VECTREX",
"es": "vectrex",
"rocknix": "vectrex",
"mister": "Vectrex",
"miyoocfw": "VECTREX",
"onion": "VECTREX",
"pocket": "vectrex",
"retrodeck": "vectrex",
"romm": "vectrex",
"spruce": "VECTREX"
}
},
{
"datNameRegex": "/Game Master/i",
"extensions": [],
"tokens": {
"batocera": "gmaster",
"es": "gmaster",
"retrodeck": "gmaster",
"romm": "hartung"
}
},
{
"datNameRegex": "/VC ?4000/i",
"extensions": [],
"tokens": {
"batocera": "vc4000",
"mister": "VC4000",
"romm": "vc-4000"
}
},
{
"datNameRegex": "/Odyssey 2/i",
"extensions": [],
"tokens": {
"batocera": "o2em",
"es": "odyssey2",
"rocknix": "odyssey",
"mister": "Odyssey2",
"onion": "ODYSSEY",
"pocket": "odyssey2",
"retrodeck": "odyssey2",
"romm": "odyssey-2",
"spruce": "ODYSSEY"
}
},
{
"datNameRegex": "/Intellivision/i",
"extensions": [".int"],
"tokens": {
"adam": "INTELLI",
"batocera": "intellivision",
"crossmix": "INTELLIVISION",
"es": "intellivision",
"rocknix": "intellivision",
"mister": "Intellivision",
"onion": "INTELLIVISION",
"pocket": "intv",
"retrodeck": "intellivision",
"romm": "intellivision",
"spruce": "INTELLIVISION"
}
},
{
"datNameRegex": "/MSX/i",
"extensions": [".mx1"],
"tokens": {
"adam": "MSX",
"batocera": "msx1",
"crossmix": "MSX",
"es": "msx",
"rocknix": "msx",
"mister": "MSX1",
"onion": "MSX",
"pocket": "msx",
"retrodeck": "msx",
"romm": "msx",
"spruce": "MSX"
}
},
{
"datNameRegex": "/MSX2/i",
"extensions": [".mx2"],
"tokens": {
"adam": "MSX",
"batocera": "msx2",
"crossmix": "MSX2",
"es": "msx2",
"rocknix": "msx2",
"mister": "MSX",
"onion": "MSX",
"retrodeck": "msx2",
"romm": "msx2",
"spruce": "MSX"
}
},
{
"datNameRegex": "/MSX2+/i",
"extensions": [],
"tokens": {
"adam": "MSX",
"batocera": "msx2+",
"es": "msx2",
"mister": "MSX",
"onion": "MSX",
"retrodeck": "msx2",
"romm": "msx2plus",
"spruce": "MSX"
}
},
{
"datNameRegex": "/MSX TurboR/i",
"extensions": [],
"tokens": {
"adam": "MSX",
"batocera": "msxturbor",
"es": "msxturbor",
"mister": "MSX",
"onion": "MSX",
"retrodeck": "msxturbor",
"romm": "msx-turbo",
"spruce": "MSX"
}
},
{
"datNameRegex": "/Xbox/i",
"extensions": [],
"tokens": {
"batocera": "xbox",
"es": "xbox",
"rocknix": "xbox",
"retrodeck": "xbox",
"romm": "xbox"
}
},
{
"datNameRegex": "/Xbox 360/i",
"extensions": [],
"tokens": {
"batocera": "xbox360",
"es": "xbox360",
"romm": "xbox360"
}
},
{
"datNameRegex": "/J2ME/i",
"extensions": [".jar"],
"tokens": {
"es": "j2me",
"rocknix": "j2me",
"retrodeck": "j2me",
"romm": "j2me"
}
},
{
"datNameRegex": "/Palm OS/i",
"extensions": [".pqa", ".prc"],
"tokens": {
"crossmix": "PALMOS",
"es": "palm",
"rocknix": "palm",
"onion": "PALM",
"retrodeck": "palm",
"romm": "palm-os"
}
},
{
"datNameRegex": "/Symbian/i",
"extensions": [".sis", ".sisx", ".symbian"],
"tokens": {
"es": "symbian",
"retrodeck": "symbian",
"romm": "symbian"
}
},
{
"datNameRegex": "/My Vision/i",
"extensions": [],
"tokens": {
"mister": "MyVision"
}
},
{
"datNameRegex": "/PC Engine/i",
"extensions": [".pce"],
"tokens": {
"adam": "PCE",
"batocera": "pcengine",
"crossmix": "PCE",
"es": "pcengine",
"funkeyos": "PCE-TurboGrafx",
"rocknix": "tg16",
"minui": "TurboGrafx-16 (PCE)",
"mister": "TGFX16",
"miyoocfw": "PCE",
"onion": "PCE",
"pocket": "pce",
"retrodeck": "pcengine",
"romm": "tg16",
"spruce": "PCE",
"twmenu": "tg16"
}
},
{
"datNameRegex": "/TurboGrafx/i",
"extensions": [],
"tokens": {
"adam": "PCE",
"batocera": "pcengine",
"crossmix": "PCE",
"es": "tg16",
"funkeyos": "PCE-TurboGrafx",
"rocknix": "tg16",
"minui": "TurboGrafx-16 (PCE)",
"mister": "TGFX16",
"miyoocfw": "PCE",
"onion": "PCE",
"pocket": "pce",
"retrodeck": "pcengine",
"romm": "tg16",
"spruce": "PCE",
"twmenu": "tg16"
}
},
{
"datNameRegex": "/PC Engine CD/i",
"extensions": [],
"tokens": {
"adam": "PCECD",
"batocera": "pcenginecd",
"crossmix": "PCECD",
"es": "pcenginecd",
"rocknix": "tg16cd",
"minui": "TurboGrafx-16 CD (PCE)",
"mister": "TGFX16-CD",
"miyoocfw": "PCE",
"onion": "PCECD",
"pocket": "pcecd",
"retrodeck": "pcenginecd",
"romm": "turbografx-cd",
"spruce": "PCECD"
}
},
{
"datNameRegex": "/TurboGrafx CD/i",
"extensions": [],
"tokens": {
"adam": "PCECD",
"batocera": "pcenginecd",
"crossmix": "PCECD",
"es": "tg-cd",
"rocknix": "tg16cd",
"minui": "TurboGrafx-16 CD (PCE)",
"mister": "TGFX16-CD",
"miyoocfw": "PCE",
"onion": "PCECD",
"pocket": "pcecd",
"retrodeck": "pcenginecd",
"romm": "turbografx-cd",
"spruce": "PCECD"
}
},
{
"datNameRegex": "/SuperGrafx/i",
"extensions": [".sgx"],
"tokens": {
"batocera": "supergrafx",
"crossmix": "SFX",
"es": "supergrafx",
"rocknix": "sgfx",
"mister": "TGFX16",
"onion": "SGFX",
"pocket": "pce",
"retrodeck": "supergrafx",
"romm": "supergrafx",
"spruce": "SGFX"
}
},
{
"datNameRegex": "/PC[ -]?88(01)?/i",
"extensions": [".d88"],
"tokens": {
"batocera": "pc88",
"crossmix": "PC88",
"es": "pc88",
"rocknix": "pc88",
"mister": "PC8801",
"onion": "PCEIGHTYEIGHT",
"retrodeck": "pc88",
"romm": "pc-8800-series"
}
},
{
"datNameRegex": "/PC-98/i",
"extensions": [".d98"],
"tokens": {
"batocera": "pc98",
"crossmix": "PC98",
"es": "pc98",
"rocknix": "pc98",
"onion": "PCNINETYEIGHT",
"retrodeck": "pc98",
"romm": "pc-9800-series",
"spruce": "PC98"
}
},
{
"datNameRegex": "/PC-FX/i",
"extensions": [],
"tokens": {
"crossmix": "PCFX",
"es": "pcfx",
"rocknix": "pcfx",
"onion": "PCFX",
"retrodeck": "pcfx",
"romm": "pc-fx"
}
},
{
"datNameRegex": "/TIC-80/i",
"extensions": [".tic"],
"tokens": {
"adam": "TIC80",
"crossmix": "TIC",
"es": "tic80",
"rocknix": "tic-80",
"onion": "TIC",
"retrodeck": "tic80",
"spruce": "TIC"
}
},
{
"datNameRegex": "/FDS|(Famicom|Family) Computer Disk System/i",
"extensions": [".fds"],
"tokens": {
"adam": "FDS",
"batocera": "fds",
"crossmix": "FDS",
"es": "fds",
"funkeyos": "NES",
"rocknix": "fds",
"minui": "Famicom Disk System (FC)",
"mister": "NES",
"miyoocfw": "NES",
"onion": "FDS",
"pocket": "nes",
"retrodeck": "fds",
"romm": "fds",
"spruce": "FDS"
}
},
{
"datNameRegex": "/Game (and|&) Watch/i",
"extensions": [".mgw"],
"tokens": {
"adam": "GW",
"batocera": "gameandwatch",
"crossmix": "GW",
"es": "gameandwatch",
"rocknix": "gameandwatch",
"mister": "GameNWatch",
"onion": "GW",
"pocket": "gameandwatch",
"retrodeck": "gameandwatch",
"romm": "g-and-w",
"spruce": "GW"
}
},
{
"datNameRegex": "/GameCube/i",
"extensions": [".gcm", ".gcz"],
"tokens": {
"batocera": "gamecube",
"es": "gc",
"rocknix": "gamecube",
"retrodeck": "gc",
"romm": "ngc"
}
},
{
"datNameRegex": "/GB|Game ?Boy/i",
"extensions": [".gb", ".sgb"],
"tokens": {
"adam": "GB",
"batocera": "gb",
"crossmix": "GB",
"es": "gb",
"funkeyos": "Game Boy",
"rocknix": "gb",
"minui": "Game Boy (GB)",
"mister": "Gameboy",
"miyoocfw": "GB",
"onion": "GB",
"pocket": "gb",
"retrodeck": "gb",
"romm": "gb",
"spruce": "GB",
"twmenu": "gb"
}
},
{
"datNameRegex": "/GBA|Game ?Boy Advance/i",
"extensions": [".gba"],
"tokens": {
"adam": "GBA",
"batocera": "gba",
"crossmix": "GBA",
"es": "gba",
"funkeyos": "Game Boy Advance",
"rocknix": "gba",
"minui": "Game Boy Advance (GBA)",
"mister": "GBA",
"miyoocfw": "GBA",
"onion": "GBA",
"pocket": "gba",
"retrodeck": "gba",
"romm": "gba",
"spruce": "GBA",
"twmenu": "gba"
}
},
{
"datNameRegex": "/GBC|Game ?Boy Color/i",
"extensions": [".gbc"],
"tokens": {
"adam": "GBC",
"batocera": "gbc",
"crossmix": "GBC",
"es": "gbc",
"funkeyos": "Game Boy Color",
"rocknix": "gbc",
"minui": "Game Boy Color (GBC)",
"mister": "Gameboy",
"miyoocfw": "GB",
"onion": "GBC",
"pocket": "gbc",
"retrodeck": "gbc",
"romm": "gbc",
"spruce": "GBC",
"twmenu": "gb"
}
},
{
"datNameRegex": "/Nintendo 64|N64/i",
"extensions": [".d64", ".n64", ".v64", ".z64"],
"tokens": {
"batocera": "n64",
"crossmix": "N64",
"es": "n64",
"rocknix": "n64",
"mister": "N64",
"retrodeck": "n64",
"romm": "n64",
"spruce": "N64"
}
},
{
"datNameRegex": "/Nintendo 64DD|N64DD/i",
"extensions": [".ndd"],
"tokens": {
"batocera": "n64dd",
"crossmix": "N64DD",
"es": "n64dd",
"retrodeck": "n64dd",
"romm": "64dd"
}
},
{
"datNameRegex": "/(\\W|^)3DS(\\W|$)|Nintendo 3DS/i",
"extensions": [".3ds", ".3dsx", ".cci", ".cia", ".cfa", ".cxi"],
"tokens": {
"batocera": "3ds",
"es": "n3ds",
"rocknix": "3ds",
"retrodeck": "n3ds",
"romm": "3ds"
}
},
{
"datNameRegex": "/(\\W|^)NDS(\\W|$)|Nintendo DS/i",
"extensions": [".nds"],
"tokens": {
"batocera": "nds",
"crossmix": "NDS",
"es": "nds",
"rocknix": "nds",
"onion": "NDS",
"retrodeck": "nds",
"romm": "nds",
"spruce": "NDS",
"twmenu": "nds"
}
},
{
"datNameRegex": "/(\\W|^)NDSi(\\W|$)|Nintendo DSi([Ww]are)?/i",
"extensions": [".dsi"],
"tokens": {
"es": "nds",
"retrodeck": "nds",
"romm": "nintendo-dsi",
"twmenu": "dsiware"
}
},
{
"datNameRegex": "/Famicom/i",
"extensions": [],
"tokens": {
"adam": "FC",
"batocera": "nes",
"crossmix": "FC",
"es": "famicom",
"funkeyos": "NES",
"rocknix": "nes",
"minui": "Nintendo Entertainment System (FC)",
"mister": "NES",
"miyoocfw": "NES",
"onion": "FC",
"pocket": "nes",
"retrodeck": "nes",
"romm": "famicom",
"spruce": "FC",
"twmenu": "nes"
}
},
{
"datNameRegex": "/(\\W|^)NES(\\W|$)|Nintendo Entertainment System/i",
"extensions": [".fc", ".nes", ".nez"],
"tokens": {
"adam": "FC",
"batocera": "nes",
"crossmix": "FC",
"es": "nes",
"funkeyos": "NES",
"rocknix": "nes",
"minui": "Nintendo Entertainment System (FC)",
"mister": "NES",
"miyoocfw": "NES",
"onion": "FC",
"pocket": "nes",
"retrodeck": "nes",
"romm": "nes",
"spruce": "FC",
"twmenu": "nes"
}
},
{
"datNameRegex": "/Pokemon Mini/i",
"extensions": [".min"],
"tokens": {
"adam": "POKEMINI",
"batocera": "pokemini",
"crossmix": "POKEMINI",
"es": "pokemini",
"funkeyos": "Pokemini",
"rocknix": "pokemini",
"minui": "Pokemon mini (PKM)",
"mister": "PokemonMini",
"miyoocfw": "POKEMINI",
"onion": "POKE",
"pocket": "poke_mini",
"retrodeck": "pokemini",
"romm": "pokemon-mini",
"spruce": "POKE"
}
},
{
"datNameRegex": "/Satellaview/i",
"extensions": [".bs"],
"tokens": {
"batocera": "satellaview",
"crossmix": "SATELLAVIEW",
"es": "satellaview",
"rocknix": "satellaview",
"mister": "SNES",
"onion": "SATELLAVIEW",
"pocket": "snes",
"retrodeck": "satellaview",
"romm": "satellaview",
"spruce": "SATELLAVIEW"
}
},
{
"datNameRegex": "/SuFami/i",
"extensions": [],
"tokens": {
"batocera": "sufami",
"crossmix": "SUFAMI",
"es": "sufami",
"rocknix": "sufami",
"onion": "SUFAMI",
"retrodeck": "sufami",
"romm": "sufami-turbo",
"spruce": "SUFAMI"
}
},
{
"datNameRegex": "/Super Famicom/i",
"extensions": [],
"tokens": {
"adam": "SFC",
"batocera": "snes",
"crossmix": "SFC",
"es": "sfc",
"funkeyos": "SNES",
"rocknix": "snes",
"minui": "Super Nintendo Entertainment System (SFC)",
"mister": "SNES",
"miyoocfw": "SNES",
"onion": "SFC",
"pocket": "snes",
"retrodeck": "snes",
"romm": "sfam",
"spruce": "SFC",
"twmenu": "snes"
}
},
{
"datNameRegex": "/(\\W|^)SNES(\\W|$)|Super Nintendo Entertainment System/i",
"extensions": [".fig", ".sfc", ".smc", ".snes"],
"tokens": {
"adam": "SFC",
"batocera": "snes",
"crossmix": "SFC",
"es": "snes",
"funkeyos": "SNES",
"rocknix": "snes",
"minui": "Super Nintendo Entertainment System (SFC)",
"mister": "SNES",
"miyoocfw": "SNES",
"onion": "SFC",
"pocket": "snes",
"retrodeck": "snes",
"romm": "snes",
"spruce": "SFC",
"twmenu": "snes"
}
},
{
"datNameRegex": "/Switch/i",
"extensions": [".nca", ".nro", ".nso", ".nsp", ".nsz", ".xci", ".xcz", ".zca"],
"tokens": {
"es": "switch",
"retrodeck": "switch",
"romm": "switch"
}
},
{
"datNameRegex": "/Virtual Boy/i",
"extensions": [".vb", ".vboy"],
"tokens": {
"adam": "VB",
"batocera": "virtualboy",
"crossmix": "VB",
"es": "virtualboy",
"funkeyos": "Virtualboy",
"rocknix": "virtualboy",
"minui": "Virtual Boy (VB)",
"onion": "VB",
"retrodeck": "virtualboy",
"romm": "virtualboy",
"spruce": "VB"
}
},
{
"datNameRegex": "/Wii/i",
"extensions": [],
"tokens": {
"batocera": "wii",
"es": "wii",
"rocknix": "wii",
"retrodeck": "wii",
"romm": "wii"
}
},
{
"datNameRegex": "/Wii ?U/i",
"extensions": [".rpx", ".wua", ".wud", ".wup", ".wux"],
"tokens": {
"batocera": "wiiu",
"es": "wiiu",
"rocknix": "wiiu",
"retrodeck": "wiiu",
"romm": "wiiu"
}
},
{
"datNameRegex": "/3DO/i",
"extensions": [],
"tokens": {
"batocera": "3do",
"crossmix": "PANASONIC",
"es": "3do",
"rocknix": "3do",
"onion": "PANASONIC",
"retrodeck": "3do",
"romm": "3do"
}
},
{
"datNameRegex": "/CD[ -]?i\\b/i",
"extensions": [],
"tokens": {
"batocera": "cdi",
"es": "cdimono1",
"rocknix": "cdi",
"retrodeck": "cdimono1",
"romm": "philips-cd-i"
}
},
{
"datNameRegex": "/Videopac/i",
"extensions": [],
"tokens": {
"batocera": "videopacplus",
"crossmix": "VIDEOPAC",
"es": "videopac",
"rocknix": "videopac",
"mister": "Odyssey2",
"onion": "VIDEOPAC",
"retrodeck": "videopac",
"romm": "videopac-g7400",
"spruce": "VIDEOPAC"
}
},
{
"datNameRegex": "/Studio (2|II)/i",
"extensions": [],
"tokens": {
"pocket": "studio2",
"romm": "rca-studio-ii"
}
},
{
"datNameRegex": "/32X/i",
"extensions": [".32x"],
"tokens": {
"adam": "32X",
"batocera": "sega32x",
"crossmix": "SEGA32X",
"es": "sega32x",
"rocknix": "sega32x",
"minui": "Sega 32X (MD)",
"mister": "S32X",
"onion": "THIRTYTWOX",
"retrodeck": "sega32x",
"romm": "sega32",
"spruce": "THIRTYTWOX"
}
},
{
"datNameRegex": "/(Super|Mega Drive) 32X/i",
"extensions": [],
"tokens": {
"adam": "32X",
"batocera": "sega32x",
"crossmix": "SEGA32X",
"es": "sega32xjp",
"rocknix": "sega32x",
"minui": "Sega 32X (MD)",
"mister": "S32X",
"onion": "THIRTYTWOX",
"retrodeck": "sega32x",
"romm": "sega32",
"spruce": "THIRTYTWOX"
}
},
{
"datNameRegex": "/Dreamcast/i",
"extensions": [],
"tokens": {
"batocera": "dreamcast",
"crossmix": "DC",
"es": "dreamcast",
"rocknix": "dreamcast",
"retrodeck": "dreamcast",
"romm": "dc",
"spruce": "DC"
}
},
{
"datNameRegex": "/Game Gear/i",
"extensions": [".gg"],
"tokens": {
"adam": "GG",
"batocera": "gamegear",
"crossmix": "GG",
"es": "gamegear",
"funkeyos": "Game Gear",
"rocknix": "gamegear",
"minui": "Sega Game Gear (GG)",
"mister": "SMS",
"miyoocfw": "SMS",
"onion": "GG",
"pocket": "gg",
"retrodeck": "gamegear",
"romm": "gamegear",
"spruce": "GG",
"twmenu": "gg"
}
},
{
"datNameRegex": "/Master System/i",
"extensions": [".sms"],
"tokens": {
"adam": "SMS",
"batocera": "mastersystem",
"crossmix": "MS",
"es": "mastersystem",
"funkeyos": "Sega Master System",
"rocknix": "mastersystem",
"minui": "Sega Master System (SMS)",
"mister": "SMS",
"miyoocfw": "SMS",
"onion": "MS",
"pocket": "sms",
"retrodeck": "mastersystem",
"romm": "sms",
"spruce": "MS",
"twmenu": "sms"
}
},
{
"datNameRegex": "/Sega CD/i",
"extensions": [],
"tokens": {
"adam": "SEGACD",
"batocera": "segacd",
"crossmix": "SEGACD",
"es": "segacd",
"rocknix": "segacd",
"minui": "Sega CD (MD)",
"mister": "MegaCD",
"miyoocfw": "SMD",
"onion": "SEGACD",
"retrodeck": "segacd",
"romm": "segacd",
"spruce": "SEGACD"
}
},
{
"datNameRegex": "/Mega[ -]CD/i",
"extensions": [],
"tokens": {
"adam": "SEGACD",
"batocera": "megacd",
"crossmix": "SEGACD",
"es": "megacdjp",
"rocknix": "segacd",
"minui": "Sega CD (MD)",
"mister": "MegaCD",
"miyoocfw": "SMD",
"onion": "SEGACD",
"retrodeck": "segacd",
"romm": "segacd",
"spruce": "SEGACD"
}
},
{
"datNameRegex": "/Mega Drive/i",
"extensions": [],
"tokens": {
"adam": "MD",
"batocera": "megadrive",
"crossmix": "MD",
"es": "megadrivejp",
"funkeyos": "Sega Genesis",
"rocknix": "genesis",
"minui": "Sega Genesis (MD)",
"mister": "MegaDrive",
"miyoocfw": "SMD",
"onion": "MD",
"pocket": "genesis",
"retrodeck": "megadrive",
"romm": "genesis",
"spruce": "MD",
"twmenu": "gen"
}
},
{
"datNameRegex": "/Genesis/i",
"extensions": [".gen", ".md", ".mdx", ".sgd", ".smd"],
"tokens": {
"adam": "MD",
"batocera": "megadrive",
"crossmix": "MD",
"es": "genesis",
"funkeyos": "Sega Genesis",
"rocknix": "genesis",
"minui": "Sega Genesis (MD)",
"mister": "MegaDrive",
"miyoocfw": "SMD",
"onion": "MD",
"pocket": "genesis",
"retrodeck": "megadrive",
"romm": "genesis",
"spruce": "MD",
"twmenu": "gen"
}
},
{
"datNameRegex": "/Saturn/i",
"extensions": [],
"tokens": {
"batocera": "saturn",
"crossmix": "SATURN",
"es": "saturn",
"rocknix": "saturn",
"mister": "Saturn",
"retrodeck": "saturn",
"romm": "saturn",
"spruce": "SATURN"
}
},
{
"datNameRegex": "/SG[ -]?1000/i",
"extensions": [".sc", ".sg"],
"tokens": {
"adam": "SG1000",
"batocera": "sg1000",
"crossmix": "SG1000",
"es": "sg-1000",
"rocknix": "sg-1000",
"mister": "SG1000",
"onion": "SEGASGONE",
"pocket": "sg1000",
"retrodeck": "sg-1000",
"romm": "sg1000",
"spruce": "SEGASGONE",
"twmenu": "sg"
}
},
{
"datNameRegex": "/MZ/i",
"extensions": [],
"tokens": {
"mister": "SharpMZ",
"romm": "sharp-mz-2200"
}
},
{
"datNameRegex": "/X1/i",
"extensions": [".2d", ".2hd", ".dx1", ".tfd"],
"tokens": {
"batocera": "x1",
"crossmix": "X1",
"es": "x1",
"rocknix": "x1",
"onion": "XONE",
"retrodeck": "x1",
"romm": "x1"
}
},
{
"datNameRegex": "/X68000/i",
"extensions": [],
"tokens": {
"batocera": "x68000",
"crossmix": "X68000",
"es": "x68000",
"rocknix": "x68000",
"mister": "X68000",
"onion": "X68000",
"retrodeck": "x68000",
"romm": "sharp-x68000",
"spruce": "X68000"
}
},
{
"datNameRegex": "/ZX[ -]?80/i",
"extensions": [],
"tokens": {
"mister": "ZX81",
"onion": "ZXEIGHTYONE",
"retrodeck": "zx81",
"romm": "zx80"
}
},
{
"datNameRegex": "/ZX[ -]?81/i",
"extensions": [],
"tokens": {
"batocera": "zx81",
"es": "zx81",
"rocknix": "zx81",
"mister": "ZX81",
"onion": "ZXEIGHTYONE",
"retrodeck": "zx81",
"romm": "zx81"
}
},
{
"datNameRegex": "/ZX[ -]?Spectrum/i",
"extensions": [".scl", ".szx", ".z80"],
"tokens": {
"adam": "ZX",
"batocera": "zxspectrum",
"crossmix": "ZXS",
"es": "zxspectrum",
"rocknix": "zxspectrum",
"mister": "Spectrum",
"onion": "ZXS",
"retrodeck": "zxspectrum",
"romm": "zxs",
"spruce": "ZXS"
}
},
{
"datNameRegex": "/Neo ?Geo/i",
"extensions": [],
"tokens": {
"adam": "NEOGEO",
"batocera": "neogeo",
"crossmix": "NEOGEO",
"es": "neogeo",
"rocknix": "neogeo",
"mister": "NeoGeo",
"miyoocfw": "NEOGEO",
"onion": "NEOGEO",
"pocket": "ng",
"retrodeck": "neogeo",
"romm": "neogeomvs",
"spruce": "NEOGEO"
}
},
{
"datNameRegex": "/Neo ?Geo CD/i",
"extensions": [],
"tokens": {
"batocera": "neogeocd",
"crossmix": "NEOCD",
"es": "neogeocd",
"rocknix": "neocd",
"mister": "NeoGeo-CD",
"onion": "NEOCD",
"retrodeck": "neogeocd",
"romm": "neo-geo-cd",
"spruce": "NEOCD"
}
},
{
"datNameRegex": "/Neo ?Geo Pocket/i",
"extensions": [".ngp"],
"tokens": {
"adam": "NGP",
"batocera": "ngp",
"crossmix": "NGP",
"es": "ngp",
"funkeyos": "Neo Geo Pocket",
"rocknix": "ngp",
"minui": "Neo Geo Pocket (NGPC)",
"onion": "NGP",
"retrodeck": "ngp",
"romm": "neo-geo-pocket",
"spruce": "NGP",
"twmenu": "ngp"
}
},
{
"datNameRegex": "/Neo ?Geo Pocket Color/i",
"extensions": [".ngc", ".ngpc", ".npc"],
"tokens": {
"adam": "NGP",
"batocera": "ngpc",
"crossmix": "NGC",
"es": "ngpc",
"funkeyos": "Neo Geo Pocket",
"rocknix": "ngpc",
"minui": "Neo Geo Pocket Color (NGPC)",
"onion": "NGP",
"retrodeck": "ngpc",
"romm": "neo-geo-pocket-color",
"spruce": "NGPC",
"twmenu": "ngp"
}
},
{
"datNameRegex": "/PlayStation|psx/i",
"extensions": [".minipsf", ".pbp", ".psexe", ".psf"],
"tokens": {
"adam": "PS",
"batocera": "psx",
"crossmix": "PS",
"es": "psx",
"funkeyos": "PS1",
"rocknix": "psx",
"minui": "Sony PlayStation (PS)",
"mister": "PSX",
"miyoocfw": "PS1",
"onion": "PS",
"retrodeck": "psx",
"romm": "psx",
"spruce": "PS"
}
},
{
"datNameRegex": "/PlayStation 2|ps2/i",
"extensions": [],
"tokens": {
"batocera": "ps2",
"es": "ps2",
"rocknix": "ps2",
"retrodeck": "ps2",
"romm": "ps2"
}
},
{
"datNameRegex": "/PlayStation 3|ps3/i",
"extensions": [".ps3", ".ps3dir"],
"tokens": {
"batocera": "ps3",
"es": "ps3",
"rocknix": "ps3",
"retrodeck": "ps3",
"romm": "ps3"
}
},
{
"datNameRegex": "/PlayStation ?Portable|psp/i",
"extensions": [".cso"],
"tokens": {
"batocera": "psp",
"crossmix": "PSP",
"es": "psp",
"rocknix": "psp",
"retrodeck": "psp",
"romm": "psp",
"spruce": "PSP"
}
},
{
"datNameRegex": "/PlayStation ?Vita|psvita/i",
"extensions": [".psvita"],
"tokens": {
"batocera": "psvita",
"es": "psvita",
"rocknix": "launcher",
"retrodeck": "psvita",
"romm": "psvita"
}
},
{
"datNameRegex": "/PlayStation [4-9]|ps[4-9]/i",
"extensions": [],
"tokens": {}
},
{
"datNameRegex": "/Sord[ -]M(5|five)/i",
"extensions": [],
"tokens": {
"mister": "Sord M5",
"romm": "sord-m5",
"twmenu": "m5"
}
},
{
"datNameRegex": "/TI[ -]?99[ -]?4A/i",
"extensions": [".rpk"],
"tokens": {
"batocera": "ti99",
"es": "ti99",
"mister": "TI-99_4A",
"retrodeck": "ti99",
"romm": "ti-99"
}
},
{
"datNameRegex": "/Game.?com/i",
"extensions": [".tgc"],
"tokens": {
"batocera": "gamecom",
"es": "gamecom",
"retrodeck": "gamecom",
"romm": "game-dot-com"
}
},
{
"datNameRegex": "/GameKing/i",
"extensions": [],
"tokens": {
"pocket": "game_king"
}
},
{
"datNameRegex": "/NUON/i",
"extensions": [],
"tokens": {
"romm": "nuon"
}
},
{
"datNameRegex": "/CreatiVision/i",
"extensions": [],
"tokens": {
"batocera": "crvision",
"es": "crvision",
"mister": "CreatiVision",
"pocket": "creativision",
"retrodeck": "crvision",
"romm": "creativision"
}
},
{
"datNameRegex": "/V\\.Smile/i",
"extensions": [],
"tokens": {
"batocera": "vsmile",
"es": "vsmile",
"retrodeck": "vsmile",
"romm": "vsmile"
}
},
{
"datNameRegex": "/Supervision/i",
"extensions": [".sv"],
"tokens": {
"adam": "SUPERVISION",
"batocera": "supervision",
"crossmix": "SUPERVISION",
"es": "supervision",
"rocknix": "supervision",
"mister": "SuperVision",
"onion": "SUPERVISION",
"pocket": "supervision",
"retrodeck": "supervision",
"romm": "supervision",
"spruce": "SUPERVISION"
}
},
{
"datNameRegex": "/Mega Duck/i",
"extensions": [".md1", ".md2"],
"tokens": {
"batocera": "megaduck",
"crossmix": "MEGADUCK",
"es": "megaduck",
"rocknix": "megaduck",
"onion": "MEGADUCK",
"pocket": "mega_duck",
"retrodeck": "megaduck",
"romm": "mega-duck-slash-cougar-boy",
"spruce": "MEGADUCK"
}
}
]
}