List of rom extensions?

Discussion in 'General Gaming Discussion' started by geopgin, Mar 27, 2015.

  1. geopgin

    geopgin Newbie

    Mar 27, 2015
    Has anyone come across a comprehensive list of all consoles/emulators and there respective rom extensions?

    Margen67 likes this.
  2. migles

    migles All my gbatemp friends are now mods, except for me

    GBAtemp Patron
    migles is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Sep 19, 2013
    this ones are very well known\easy to figure out what they are..

    .sfc (super famicon\snes)
    .iso <this one is used on most disc consoles, like wii and psp gamecube playstation etc...
    .cso psp iso compressed
    .wad wii program
    .wbfs its a converted iso for wii

    there are lots of roms with .bin in several plataforms

    well can you tell the reason you need the list?
    a very good way to know this is either open emulators (or check info about them) which usually tell you the formats they support or check a rom website,download a rom and open the zip to know the format..
    (no link to rom website here pls)
    Margen67 likes this.
  3. Adeka

    Adeka Beta Tester

    Mar 19, 2013
    United States
    You forgot .3dz even though it's really just a .3ds renamed.
  4. geopgin

    geopgin Newbie

    Mar 27, 2015

    Thanks for the response guys. I was looking for something a little more comprehensive and reflects emulators/roms from more platforms.

    I was going to do up a little script for myself to organize my library (current and future) maybe even do a little art/description scraper. I was going to use some json to feed the script, prolly look something similar to below but as you can see i'm missing an awful lot. I started going through /extension/name/emulator-files but lost interest, was hoping to find them all in one spot better organized

    "1": {"names": ["3DO"], "exts": [""]},
    "2": {"names": ["Amiga"], "exts": [""]},
    "3": {"names": ["Amstrad CPC"], "exts": [""]},
    "4": {"names": ["Android"], "exts": [""]},
    "5": {"names": ["Arcade"], "exts": [""]},
    "6": {"names": ["Atari 2600"], "exts": [""]},
    "7": {"names": ["Atari 5200"], "exts": [""]},
    "8": {"names": ["Atari 7800"], "exts": [""]},
    "9": {"names": ["Atari Jaguar"], "exts": [""]},
    "10": {"names": ["Atari Jaguar CD"], "exts": [""]},
    "11": {"names": ["Atari Lynx"], "exts": [""]},
    "12": {"names": ["Atari XE"], "exts": [""]},
    "13": {"names": ["Colecovision"], "exts": [""]},
    "14": {"names": ["Commodore 64"], "exts": [""]},
    "15": {"names": ["Fairchild Channel F"], "exts": [""]},
    "16": {"names": ["Intellivision"], "exts": [""]},
    "17": {"names": ["iOS"], "exts": [""]},
    "18": {"names": ["Mac OS"], "exts": [""]},
    "19": {"names": ["Magnavox Odyssey 2"], "exts": [""]},
    "20": {"names": ["MAME"], "exts": [""]},
    "21": {"names": ["Microsoft Xbox"], "exts": [""]},
    "22": {"names": ["Microsoft Xbox 360"], "exts": [""]},
    "23": {"names": ["Microsoft Xbox One"], "exts": [""]},
    "24": {"names": ["Neo Geo Pocket"], "exts": [""]},
    "25": {"names": ["Neo Geo Pocket Color"], "exts": [""]},
    "26": {"names": ["Neo Geo"], "exts": [""]},
    "27": {"names": ["Nintendo 3DS"], "exts": [""]},
    "28": {"names": ["Nintendo 64"], "exts": [".z64",".v64",".rom"]},
    "29": {"names": ["Nintendo DS"], "exts": [""]},
    "30": {"names": ["Nintendo"], "exts": [".nes",".nez","fds",".fam"]},
    "31": {"names": ["Nintendo Game Boy"], "exts": [".gb"]},
    "32": {"names": ["Nintendo Game Boy Advance"], "exts": [".gba"]},
    "33": {"names": ["Nintendo Game Boy Color"], "exts": [".gbc"]},
    "34": {"names": ["Nintendo GameCube"], "exts": [""]},
    "35": {"names": ["Nintendo Virtual Boy"], "exts": [""]},
    "36": {"names": ["Nintendo Wii"], "exts": [".wdf"]},
    "37": {"names": ["Nintendo Wii U"], "exts": [""]},
    "38": {"names": ["Ouya"], "exts": [""]},
    "39": {"names": ["PC"], "exts": [""]},
    "40": {"names": ["Philips CD-i"], "exts": [""]},
    "41": {"names": ["Sega 32X"], "exts": [".32x"]},
    "42": {"names": ["Sega CD"], "exts": [""]},
    "43": {"names": ["Sega Dreamcast"], "exts": [".gdi"]},
    "44": {"names": ["Sega Game Gear"], "exts": [""]},
    "45": {"names": ["Sega Genesis"], "exts": [".gen"]},
    "46": {"names": ["Sega Master System"], "exts": [".sms"]},
    "47": {"names": ["Sega Mega Drive"], "exts": [".smd"]},
    "48": {"names": ["Sega Saturn"], "exts": [""]},
    "49": {"names": ["Sinclair ZX Spectrum"], "exts": [""]},
    "50": {"names": ["Sony Playstation"], "exts": [""]},
    "51": {"names": ["Sony Playstation 2"], "exts": [""]},
    "52": {"names": ["Sony Playstation 3"], "exts": [""]},
    "53": {"names": ["Sony Playstation 4"], "exts": [""]},
    "54": {"names": ["Sony Playstation Vita"], "exts": [""]},
    "55": {"names": ["Sony PSP"], "exts": [""]},
    "56": {"names": ["Super Nintendo"], "exts": [".smc",".srm",".swc",".fig"]},
    "57": {"names": ["TurboGrafx 16"], "exts": [""]},
    "58": {"names": ["WonderSwan"], "exts": [""]},
    "59": {"names": ["WonderSwan Color"], "exts": [""]}
  5. FAST6191

    FAST6191 Techromancer

    pip Reporter
    Nov 21, 2005
    United Kingdom
    Possibly everything

    From here we probably have a mess on our hands and that is before we consider all the various formats a ROM can come in, wind in the various popular/legacy ISO formats (poke around any site with old PS1 guides-- .iso, .nrg, discjuggler, cdrwin, clonecd and that is just the ones I recall actively having to deal with).
    To that end you are probably going to have to go active and do some kind of fingerprinting.

    "30": {"names": ["Nintendo"], "exts": [".nes",".nez","fds",".fam"]},
    Though the famicom and NES and probably close enough to count I would have argued the FDS and NES are different enough systems (you have the 32x and megadrive/genesis as different systems, apparently also the megadrive as a different system to the genesis).

    If you have not been to then I would suggest a scan around there. It will probably not do exactly what you want but it is worth a look.

    .srm is usually a type of save file and used by a variety of emulators, not sure I have seen it as a ROM.

    "32": {"names": ["Nintendo Game Boy Advance"], "exts": [".gba"]},
    also .agb .bin

    Anyway that is going to get nowhere and for reasons previously discussed would not be that helpful. I don't know the tools in question but in my experience every system worth anything usually gets some kind of header viewer/parser has GBATA and NDSTS (guess what they are for) but there are any number of those tools for those systems.


    SNES and megadrive/genesis

    More megadrive/genesis

    N64 perhaps.
  6. geopgin

    geopgin Newbie

    Mar 27, 2015
    I'm using my library as an excuse to learn python and I really don't want to get into using crc's or any other type finger printing. There is is however a module (pyrominfo) that does exactly that but again i'm not sure how inclusive that is.

    I agree about FDS and NES, I pulled that list from one api and its possible my list will get bigger but for now these are what i'm using. Are FDS/NES dumps not all playable on the same emulators? Is there a separate Famicon emulator specific to that console?

    I've been to datomatic (and others) and have used there dats with romcenter to rename most of my roms. I haven't however been there to looks for this kind of data, maybe i'll give it a shot.

    I thought the srm was save as well, but the site from my previous post suggested it was a rom. I just don't know enough about emulators and roms to know what extensions are what...again why i came here. I'll remove it.

    As for looking into headers or crcs its beyond this little experiments scope and my skillset. I'll just limit the extensions to what i can dig up and go from there.

    Thanks for the information you provided
  7. Subtle Demise

    Subtle Demise h

    Sep 17, 2009
    United States
    I believe all the available nes emulators for pc support fds automatically, however you have to provide a bios file.

    A srm file is a dump of the game's sram, basically a save state
  8. FAST6191

    FAST6191 Techromancer

    pip Reporter
    Nov 21, 2005
    United Kingdom
    NES emulation is fairly well developed on the PC but go outside that (various GBA and DS emulators, not sure what goes for andrios right now) and certain things will not emulate the famicom disk system, or it will need a special FDS version/build for it. The plain famicom has more hardware than the basic NES (or NES plus mappers) but it was still similar enough that it is just another region as far as most emulators and flash carts are concerned; the differences tend to be when you are programming or want the microphone in the famicom.

    If this is going to be the project that you use to learn programming/python then by all means go ahead and you will probably get a tool out of it, getting something you can feed a folder of random ROM files and having it sort it reliably/usefully is somewhat more of an ask.
  9. geopgin

    geopgin Newbie

    Mar 27, 2015

    So first and foremost this is for the learning experience. It would however be cool to have something at the end to have something reusable even if only for myself.

    Part of it was going to be and try and build smart library but, which is possible but i think may be intensive not only in time but in process and network utilization. For now i'll back burner that part.

    Another part which is pretty easy is to prompt for platform, directory and work

    Yet another part is to be, point at root directory, if there are folders in the root folder with platform names that match the json file map it to set of work for each platform set

    by do work i mean...

    organize - which could include creating a folder with rom name and moving all respective info (art, nfo, saves etc..) about rom into it, or maybe zipping all that info
    scrape - dl info (titel, description, artwork) about game from api and maybe create a nfo....then organize

    who knows how far i'll get but what fun it will be trying to get there.

    EDIT: As fyi I use various OS's (win7, win8.1, android [firetv], and soon linux) all with kodi 14.1 -> Rom Collection Browser -> retroarch
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice