For reverse-engineering "stuff", I would suggest browsing over to
http://www.romhacking.net/ . It's not just a site containing IPS patches of translated games; there are in fact docs on specific games which were reverse-engineered. It's less common, but it does exist. Sometimes romhacks also include readmes or technical docs/notes from those who did the REing. This is all on a per-game basis. I have seen some docs/things that contained
.cdl files (for code/data logging of specific games), but in general it's rare, and romhackers don't tend to give this out by default (because the end-user tends to not care; they just want to play the translated or hacked game). You can always ask them, though! The community is surprisingly helpful and friendly, esp. to technically-inclined folk.
In general, the usual set of tools is:
1. A file splitting tool, to split a ROM up into its respective PRG banks, and/or PRG+CHR banks,
2. A disassembler -- and reading its documentation to understand how to invoke it, to give you output that's helpful
3. An emulator with an integrated debugger -- the common go-tos are Mesen, FCEUX, or Nintendulator, but there are others (see forum/other threads about this subject, as it varies per OS) -- and spending the time reading the emulator docs to get familiar with debugger behaviour and nomenclature,
4. Getting familiar with whatever mapper is used, if applicable
5. Expecting to put in
VERY long hours understanding what's going on, with meticulous note-taking. This is where you will spend all of your time. Do not expect it to come easily -- it often won't, even for the experienced. I still do a lot of my notes with pencil/paper, then bring in digitally key concepts/points (usually into a
.txt file) once I find something definitive.
The nesdev Wiki has a thorough list of tools and emulators; romhacking.net does as well. Understand that a good portion of tools may be from older times (late 90s/early 2000s), where MS-DOS and older Windows were common, so some you find may not work. YMMV.