List of rom extensions?

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

  1. geopgin
    OP

    geopgin Newbie

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

    Thanks
     
    Margen67 likes this.
  2. migles

    migles Mei the sexiest bae

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

    Our Patreon
    7,069
    4,750
    Sep 19, 2013
    Saint Kitts and Nevis
    my dad works for nintendo.
    .gba
    .gb
    .gbc
    .nds
    .3ds
    .nes
    .n64
    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

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

    geopgin Newbie

    Newcomer
    4
    1
    Mar 27, 2015
    Canada

    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 http://file-extensions.org/filetype /extension/name/emulator-files but lost interest, was hoping to find them all in one spot better organized

    Code:
    "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
    23,842
    9,733
    Nov 21, 2005
    United Kingdom
    Possibly everything
    .bin

    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 http://datomatic.no-intro.org/ 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
    http://www.no-intro.org/tools.htm has GBATA and NDSTS (guess what they are for) but there are any number of those tools for those systems.

    SNES
    http://www.romhacking.net/utilities/400/

    SNES and megadrive/genesis
    http://www.romhacking.net/utilities/19/

    More megadrive/genesis
    http://www.romhacking.net/utilities/383/

    N64
    http://filetrip.net/oldies-downloads/n64/download-tool-64-111-beta-1-f32494.html perhaps.
     
  6. geopgin
    OP

    geopgin Newbie

    Newcomer
    4
    1
    Mar 27, 2015
    Canada
    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 http://thegamesdb.net/api/GetPlatformsList.php 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

    Member
    1,460
    1,645
    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
    23,842
    9,733
    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
    OP

    geopgin Newbie

    Newcomer
    4
    1
    Mar 27, 2015
    Canada

    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 extensions...do 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 extensions...do 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