Nothing fancy here. Just some notes about the documents I keep up here.
Everything is for unheadered roms. Including any ips files. Make sure your rom is unheadered if you patch it.
Recommended window width of 'as wide as you can work with', wordwrap not suggested for most documents.
---------------------------------------------------------------------------------------------
| Samus's Controls
|-TransitionTable.asm  ;Info for Samus's transitions from button input
|                      ;It's been optimized and converted for use in xkas
|-ControllerInput.txt  ;Small document about input
|
|
| Enemy Stuff
|-MainEnemyRoutine.txt ;Main enemy processing loop, with some commentary.
|-EnemyData.txt        ;Info for the enemies' main entries in bank A0. Started by deskjockey_
|-Enemy_Mem.txt        ;Info for the enemies' entries in RAM. Started by jman2050
|-smenemy.txt          ;Quick reference of enemies by Ultima4701. May not be 100% accurate.
|-ERProjectiles.txt    ;The format used for enemies' projectiles: Draygon's gunk and kagos
|-WaverAI.txt          ;Disassembly of Waver's AI. It's a pretty simple AI
|-RidleyAI.txt         ;Ridley's code, from initialization to death. Long and complex
|-GeemerMainAI.txt     ;Only a disassembly of main AI script to understand its movement.
|
|
| Weapon Stuff
|-EnemyResistence.txt  ;More about Samus's weaponry than enemy resistances
|-90B887.txt           ;Fire Beam disassembly/commentary
|-90B986.txt           ;Fire Charge Beam disassemble/commentary
|
|
| Room Stuff
|-mdb_format.txt       ;Room header info, by deskjockey_, Ultima4701, and me (in that order)
|-RoomTransitions.txt  ;Quick overview of the routines used during door transitions.
|-BackgroundFormat.txt ;'BG_Data' in SMILE. 
|
|
| Map Stuff
|-AutoMapSaving.txt    ;How to make the map to save and load correctly. May be in SMILE soon
|-AutoMapIcons.txt     ;How to edit the map icon positions. Not likely to be added to SMILE
|
|
| Blocks and PLMs
|-XRayBlocks.txt       ;The display for blocks. PLMs are handled seperately, not doced yet
|
|                      ;The below 5 files basically COMPLETELY define blocks
|-BlockCollisReact.txt ;Code for Samus running into blocks
|-BlockInsideReact.txt ;Code for Samus touching blocks
|-BlockBombReact.txt   ;Code for Bombs hitting blocks
|-BlockShotReact.txt   ;Code for projectiles hitting blocks
|-BlockECReact.txt     ;Code for enemies touching blocks
|
|-PLMSetupComments.txt ;By deskjockey_. A bit out of date, but better organized
|-PLM_LOOP.TXT         ;The routine that runs PLMs 
|-PLM_Details.txt      ;Post-Load Modifications. Things like crumble blocks and doors
|                      ;and items and scroll modifiers and some things I've made
|-DisappearingBlocks   ;A new PLM I made that Jathys is putting into SMILE. I think.
|
|
| Pause Screen
|-EquipmentDisassembly ;Disassembly and some commentary on Equipment Pause Screen
|
|
| Music
|-SPCRamMap.txt        ;RAM map for the SPC, overview of how music data works, and more
|-EscapeMusicdata.txt  ;Example runthrough of the escape music data.
|-SPCDisasm.txt        ;Disassembly of the N-SPC engine for Super Metroid.
|                      ;Music portion is mostly finished, not much info for sound effects.
|-KraidAssembly.txt    ;Adds the first part of Kraid's Hideout to the game.
|-KraidHideout.ips     ;Compiled patch of the above.
|
|
| Miscellaneous
|-IRQOptions.txt      ;Quick notes on the IRQs the game uses.
|-ItemPercent.txt      ;Quick explanation of end percent calculation.
|-RandomRoutines.txt   ;Main game loop and a lot of common use routines.
|                      ;Not well organized, sorry. Main focus is on Samus-related stuff
|-RAMMap.txt           ;Info for RAM offsets. Pretty straightforward
|-MessageBoxes.txt     ;Main message box routine list and explanation.
\-sm_misc.txt          ;Lotta random information, organized by deskjockey_.
                       ;I've added a few tidbits at the end.

METROID.BLK            ;If you use snesedit as a hex-editor, this will help.
SuperMissileFix.txt    ;Description of a bug fix and how it works
SuperMissiles.ips      ;Bug fix IPS for headerless roms

m3.c                   ;Glitch list. No details, sorry

debug.txt              ;Debug mode code and options, by deskjockey_

TextFormat.txt         ;Format for text used in message boxes

Byte Reverser          ;Small EXE I made. Paste multiples of 2 bytes in text,
                       ;this will swap each pair of bytes

Equipment Screen       ;And to tease you some more. Thanks ImageShack
                       ;Ironically, UNKNOWN is only items not yet finished.
                       ;The 7 other (unshown) items are done. :)
Title Screen           ;Oh, and a bit more teasing. XD
                       ;Yes, there's an N there. You're just (not) seeing things.
Title.ips              ;Probably the only demo patch of insanity you'll get.
                       ;Only changes the title screen, and one other unused tidbit that would
                       ;probably get me sued by Nintendo for billions if they saw it. ;>_>

Can't say I organize my stuff very well, sorry.
Some comments about my documentation:
  • Pretty much all numbers are in hexidecimal, except smenemy and EnemyResistence
  • If I say an address like '101AF0', that's an offset in the ROM file. Headerless. Headers are evil.
  • If I say an address like '$91A0', then the bank should be inferrable from context.
  • $09C0 is an address. #$09C0 is a value. 09C0 might be either, hopefully context makes it clear.
  • Stay awake while reading these. I'm developing my documentation format while making these, so a lot may be incoherent.
  • If something seems dead wrong, it's likely I made a mistake. I don't double check much.