That is generally the job of the hacker.
Some games (usually pokemon, sonic, mario platform, mario kart, maybe mario party, final fantasy, megaman/rockman, advance wars, fire emblem, maybe dragon quest at times and to the surprise of many fire pro wrestling) get communities that set about pulling things apart in detail. Everything else relies on them either sharing file formats* with other games (and many devs would have things given by Nintendo, given to them by their publisher, use popular PC formats, be ported from PC where more might be known or buy in stuff for more dedicated game devs) for which you might find existing tools, or format descriptions but often also find yourself figuring out a custom twist they did for it, or something entirely custom.
http://wiki.xentax.com/index.php/Game_File_Format_Central https://wiki.multimedia.cx/index.php?title=Category:Game_Formats in addition to whatever you find around here (I have a link in my signature which is more focused on the GBA and DS but the formats we saw were similar enough on the GC, Wii, 3ds and now Switch),
https://www.romhacking.net/ or the like. There are some tools that get loaded up with dozens/hundreds of formats and the means to recognise them. That most people don't use them outside of their abilities to view raw files, extract things from ROM/ISO files, decompress things, view hex and such like probably says most of what you need to know there as well as far as having that be a means to know everything.
*you usually check the extension or in the first 100 or so bytes of a file start or end will be something giving the game away like a magic stamp or other identifier.
Beyond that you either learn enough assembly coding to be able to pull apart the file from how the ROM interacts with it (hard but gets the job done), learn enough about the hardware that you can reasonably guess what is going on (being a ROM and source code being kept behind these days -- was not always, Sega lost source code is a good search term there), learn enough about formats in general that you can figure out what is going on. For any of those you do also have the option to tweak a file and run the game to see what changed/broke.
Nobody does the assembly coding route that does not have a foundation in the other aspects, and even if they can do the tracing/assembly route then they will probably still start off with the other means of analysis.