shithub: pokered

Download patch

ref: 1a69d6b888f9372060dad1af867c4a5c4113b40e
parent: 941d2b9eb8a59b42ea71a08b34b25c06477cf36d
author: U-Daniel-PC\Daniel <corrnondacqb@yahoo.com>
date: Sat May 30 12:09:53 EDT 2015

Comment wram.asm
luckytyphlosion

--- a/wram.asm
+++ b/wram.asm
@@ -236,9 +236,10 @@
 ; id of previously selected menu item
 	ds 1
 
-wcc2b:: ds 1
-wcc2c:: ds 1
-wcc2d:: ds 1
+; group these 3 addresses together because of an ld a,[hli]
+wcc2b:: ds 1 ; used in party menu
+wcc2c:: ds 1 ; used in item related menus (inventory, pc)
+wcc2d:: ds 1 ; also used in inventory, supposed to save an item id
 
 wPlayerMoveListIndex:: ; cc2e
 	ds 1
@@ -265,7 +266,7 @@
 ; keeps track of what section of the list is on screen
 	ds 1
 
-wcc37:: ds 1
+wcc37:: ds 1 ; menu related thing, used in pokedex and dialog boxes
 
 wTradeCenterPointerTableIndex:: ; cc38
 	ds 1
@@ -272,7 +273,8 @@
 
 	ds 1
 
-wcc3a:: ds 1
+; group these two together
+wcc3a:: ds 1 ; both used in home/text.asm
 wcc3b:: ds 1
 
 wDoNotWaitForButtonPressAfterDisplayingText:: ; cc3c
@@ -289,7 +291,7 @@
 ; two byte buffer
 ; the received menu selection is stored twice
 
-wcc3d:: ds 1
+wcc3d:: ds 1 ; not used for anything other than mentioned above (haha link function)
 
 wSerialExchangeNybbleReceiveData:: ; cc3e
 ; the final received nybble is stored here by Serial_ExchangeNybble
@@ -312,14 +314,14 @@
 wUnknownSerialCounter:: ; cc47
 ; 2 bytes
 
-wcc47:: ds 1
-wcc48:: ds 1
+wcc47:: ds 1 ; used in text id stuff
+wcc48:: ds 1 ; part of wUnknownSerialCounter
 
 wWhichTradeMonSelectionMenu:: ; cc49
 ; $00 = player mons
 ; $01 = enemy mons
 
-wcc49:: ds 1
+wcc49:: ds 1 ; used in some pokemon related stuff (some kind of species storage byte)
 
 wMenuWrappingEnabled:: ; cc4a
 ; set to 1 if you can go from the bottom to the top or top to bottom of a menu
@@ -326,8 +328,8 @@
 ; set to 0 if you can't go past the top or bottom of the menu
 	ds 1
 
-wcc4b:: ds 2
-wcc4d:: ds 1
+wcc4b:: ds 2 ; used as a joypad storage value
+wcc4d:: ds 1 ; used in sprite hiding/showing related operations
 
 wPredefID:: ; cc4e
 	ds 1
@@ -355,13 +357,13 @@
 wAnimationType:: ; cc5b
 ; values between 0-6. Shake screen horizontally, shake screen vertically, blink Pokemon...
 
-wcc5b:: ds 1
-wcc5c:: ds 1
-wcc5d:: ds 1
-wcc5e:: ds 13
+wcc5b:: ds 1 ; these upcoming values below are miscellaneous storage values
+wcc5c:: ds 1 ; used in pokedex evaluation as well
+wcc5d:: ds 1 ; used in pokedex evaluation
+wcc5e:: ds 13 ; as well as used as miscellaneous storage value, this is also used for the game corner slots
 
-wcc6b:: ds 14
-wcc79:: ds 30
+wcc6b:: ds 14 ; doesn't seem to be used for anything, probably just more storage
+wcc79:: ds 30 ; used in battle animations
 
 wNPCMovementDirections2:: ; cc97
 
@@ -369,7 +371,7 @@
 ; temporary buffer when swapping party mon data
 	ds 10
 
-wcca1:: ds 49
+wcca1:: ds 49 ; used in overworld npc movement
 
 wRLEByteCount:: ; ccd2
 	ds 1
@@ -379,8 +381,8 @@
 ; the list starts above this address and extends downwards in memory until here
 ; overloaded with below labels
 
-wccd3:: ds 1
-wccd4:: ds 1
+wccd3:: ds 1 ; used in battle, pokemon, PC and game corner stuff
+wccd4:: ds 1 ; used in evolving pokemon and has a direct reference for simulated joypad stuff in vermillion and seafoam
 
 ; if [ccd5] != 1, the second AI layer is not applied
 wAILayer2Encouragement:: ; ccd5
@@ -393,7 +395,7 @@
 wEnemySubstituteHP:: ; ccd8
 	ds 1
 
-wccd9:: ds 2
+wccd9:: ds 2 ; used in InitBattleVariablesLoop (written to after the loop is finished)
 
 wMoveMenuType:: ; ccdb
 ; 0=regular, 1=mimic, 2=above message box (relearn, heal pp..)
@@ -416,8 +418,8 @@
 wEnemyMoveListIndex:: ; cce2
 	ds 1
 
-wcce3:: ds 1
-wcce4:: ds 1
+wcce3:: ds 1 ; used in battle-related text functions
+wcce4:: ds 1 ; used in battle-related text functions
 
 wTotalPayDayMoney:: ; cce5
 ; total amount of money made using Pay Day during the current battle
@@ -430,20 +432,20 @@
 
 	ds 1
 
-wcceb:: ds 1
-wccec:: ds 1
+wcceb:: ds 1 ; used to save the dvs of a mon when it uses transform
+wccec:: ds 1 ; also used with above case
 
 wMonIsDisobedient:: ds 1 ; cced
 
-wPlayerDisabledMoveNumber:: ds 1 ; ccee 
+wPlayerDisabledMoveNumber:: ds 1 ; ccee
 wEnemyDisabledMoveNumber:: ds 1 ; ccef
 
-wccf0:: ds 1
+wccf0:: ds 1 ; used as a check if a mon fainted
 
 wPlayerUsedMove:: ds 1 ; ccf1
 wEnemyUsedMove:: ds 1 ; ccf2
 
-wccf3:: ds 1
+wccf3:: ds 1 ; used with the move minimize
 
 wMoveDidntMiss:: ds 1 ; ccf4
 
@@ -451,8 +453,8 @@
 ; flags that indicate which party members have fought the current enemy mon
 	flag_array 6
 
-wccf6:: ds 1
-wccf7:: ds 14
+wccf6:: ds 1 ; used in some hp bar thing
+wccf7:: ds 14 ; used with substitute move sliding thing? (not sure)
 
 wUnknownSlotVar:: ; cd05
 
@@ -557,7 +559,7 @@
 
 wNPCMovementDirections2Index:: ; cd37
 
-wcd37:: ds 1
+wcd37:: ds 1 ; used in list menus, like the fossil lab menu or drink girl menu. Also used in link menu.
 
 wSimulatedJoypadStatesIndex:: ; cd38
 ; the next simulated joypad state is at wSimulatedJoypadStatesEnd plus this value minus 1
@@ -628,7 +630,7 @@
 wHiddenObjectIndex:: ; cd3f
 
 wTrainerFacingDirection:: ; cd3f
-wcd3f::
+wcd3f:: ; used with daycare text for money amount
 	ds 1
 
 wPlayerSpinInPlaceAnimSoundID:: ; cd40
@@ -644,34 +646,35 @@
 
 wTrainerScreenX:: ; cd41
 	ds 1
+; a lot of the uses for these values use more than the said address
 
-wcd42:: ds 1
-wcd43:: ds 1
-wcd44:: ds 1
-wcd45:: ds 1
-wcd46:: ds 1
-wcd47:: ds 1
-wcd48:: ds 1
-wcd49:: ds 1
-wcd4a:: ds 1
-wcd4b:: ds 1
+wcd42:: ds 1 ; used in pewter center script, printing field mon moves, slot machines and HoF PC
+wcd43:: ds 1 ; slot machine stuff and GetMonFieldMoves
+wcd44:: ds 1 ; just slot machine
+wcd45:: ds 1 ; slot machine...
+wcd46:: ds 1 ; slot machine...
+wcd47:: ds 1 ; used in slot machine and spinning player sprite
+wcd48:: ds 1 ; same as above
+wcd49:: ds 1 ; used in slot machine, displaying the gym leaders/badges on the trainer card, and displaying the town map
+wcd4a:: ds 1 ; probably used in one of the above mentioned functions
+wcd4b:: ds 1 ; same as above
 
 wTradedPlayerMonOTID:: ; cd4c
 
-wcd4c:: ds 1
-wcd4d:: ds 1
+wcd4c:: ds 1 ; slot machine and probably other above stuff
+wcd4d:: ds 1 ; used with cut and slot machine
 
 wTradedEnemyMonOT:: ; cd4e
 
-wcd4e:: ds 1
-wcd4f:: ds 1
-wcd50:: ds 9
+wcd4e:: ds 1 ; used with in-game trades and slot machine
+wcd4f:: ds 1 ; used with in-game trades, emotion bubbles, and player animations
+wcd50:: ds 9 ; used with in-game trades, emotion bubbles, and player and miscellaneous sprite animations
 
 wTradedEnemyMonOTID:: ; cd59
 	ds 2
 
-wcd5b:: ds 1
-wcd5c:: ds 1
+wcd5b:: ds 1 ; used in some sprite stuff, town map and surge gym trash cans
+wcd5c:: ds 1 ; used in town map
 
 wMonPartySpriteSpecies:: ; cd5d
 	ds 1
@@ -693,18 +696,19 @@
 
 	ds 9
 
-wcd6a:: ds 1
+wcd6a:: ds 1 ; used as the output of the outcome of an item (successful, unsuccessful, can't be used now, etc.)
 
 wJoyIgnore:: ; cd6b
 ; Set buttons are ignored.
 	ds 1
 
-wcd6c:: ds 1
-wcd6d:: ds 4
-wcd71:: ds 1
-wcd72:: ds 5
-wcd77:: ds 1
-wcd78:: ds 9
+; as well as the said function, these values are used as a buffer for PlaceString
+wcd6c:: ds 1 ; used in pokemon status screen and battle stuff
+wcd6d:: ds 4 ; used solely for PlaceString
+wcd71:: ds 1 ; used with pokemon status screen
+wcd72:: ds 5 ; used with restoring PP
+wcd77:: ds 1 ; used as an end terminator for GetMonName: (@ is written to this location)
+wcd78:: ds 9 ; also used with restoring PP
 
 wSerialOtherGameboyRandomNumberListBlock:: ; cd81
 ; buffer for transferring the random number list generated by the other gameboy
@@ -724,23 +728,23 @@
 wHPBarDelta:: ; ceef
 	ds 1
 
-wcef0:: ds 1
-wcef1:: ds 12
+wcef0:: ds 1  ; used with HP bar stuff, probably used with wBuffer too.
+wcef1:: ds 12 ; same case as above
 
 wHPBarHPDifference:: ; cefd
 	ds 1
 	ds 7
 
-wcf05:: ds 1
-wcf06:: ds 1
+wcf05:: ds 1 ; used with enemy using healing moves
+wcf06:: ds 1 ; used with healing items as a storage value to store wWhichPokemon
 
 wAnimSoundID:: ; cf07
 ; sound ID during battle animations
 	ds 1
 
-wcf08:: ds 1
-wcf09:: ds 1
-wcf0a:: ds 1
+wcf08:: ds 1 ; used as a storage value for the bank to return to after a BankswitchHome (bankswitch in homebank)
+wcf09:: ds 1 ; used as a temp storage value for the bank to switch to
+wcf0a:: ds 1 ; used as flags for Poke Mart
 wBattleResult:: ; cf0b
 ; $00 - win
 ; $01 - lose
@@ -751,9 +755,9 @@
 ; bit 0: if set, DisplayTextID automatically draws a text box
 	ds 1
 
-wcf0d:: ds 1
-wcf0e:: ds 1
-wcf0f:: ds 1
+wcf0d:: ds 1 ; used with some overworld scripts (not exactly sure what it's used for)
+wcf0e:: ds 1 ; used with some overworld collison check
+wcf0f:: ds 1 ; used with moving overworld sprites
 
 wNPCMovementScriptFunctionNum:: ; cf10
 ; which script function within the pointer table indicated by
@@ -760,7 +764,7 @@
 ; wNPCMovementScriptPointerTableNum
 	ds 1
 
-wcf11:: ds 1
+wcf11:: ds 1 ; used as a flag if the game needs to switch to the bank which the map is in when displaying a text id (flag is set during predefs)
 
 wPredefParentBank:: ; cf12
 	ds 1
@@ -777,7 +781,7 @@
 ; sprite offset of sprite being controlled by NPC movement script
 	ds 1
 
-wcf18:: ds 2
+wcf18:: ds 2 ; used with overworld movement
 
 wGBC:: ; cf1a
 	ds 1
@@ -786,17 +790,17 @@
 ; if running on SGB, it's 1, else it's 0
 	ds 1
 
-wcf1c:: ds 1
-wcf1d:: ds 1
-wcf1e:: ds 1
-wcf1f:: ds 6
-wcf25:: ds 8
-wcf2d:: ds 1
-wcf2e:: ds 2
-wcf30:: ds 7
-wcf37:: ds 20
-wcf4b:: ds 1
-wcf4c:: ds 1
+wcf1c:: ds 1 ; used with sgb palettes
+wcf1d:: ds 1 ; used when displaying palettes for Pokemon
+wcf1e:: ds 1 ; used to display palettes for HP bar
+wcf1f:: ds 6 ; used to display HP bars in Pokemon Menu (probably palettes)
+wcf25:: ds 8 ; used to display HP bar for Pokemon Status Screen (probably palettes too)
+wcf2d:: ds 1 ; also used to display HP bar for Pokemon Menu (something about HP colour)
+wcf2e:: ds 2 ; more HP bar palette stuff.
+wcf30:: ds 7 ; used with palettes (apparently for Pokedex)
+wcf37:: ds 20 ; used with palletes too (used for Party Menu)
+wcf4b:: ds 1 ; storage buffer for various strings
+wcf4c:: ds 1 ; used with displaying EXP value, probably also overflowed with wcf4b
 wGainBoostedExp:: ; cf4d
     ds 1
 	ds 17
@@ -813,19 +817,19 @@
 wList:: ; cf8b
 	ds 2
 
-wcf8d:: ds 1
-wcf8e:: ds 1
+wcf8d:: ds 1 ; used in GetMonName
+wcf8e:: ds 1 ; also used in GetMonName (probably as a pointer)
 
 wItemPrices:: ; cf8f
 	ds 2
 
-wcf91:: ds 1
+wcf91:: ds 1 ; used with a lot of things (too much to list here)
 
 wWhichPokemon:: ; cf92
 ; which pokemon you selected
 	ds 1
 
-wcf93:: ds 1
+wcf93:: ds 1 ; used with lists
 
 wHPBarType:: ; cf94
 ; type of HP bar
@@ -837,9 +841,9 @@
 ; ID used by DisplayListMenuID
 	ds 1
 
-wcf95:: ds 1
-wcf96:: ds 1
-wcf97:: ds 1
+wcf95:: ds 1 ; used with RemovePokemon (BoxMons, Daycare, Trades, etc.)
+wcf96:: ds 1 ; used with removing items
+wcf97:: ds 1 ; used with printing item quantities?
 
 ; LoadMonData copies mon data here
 wLoadedMon:: party_struct wLoadedMon ; cf98
@@ -863,9 +867,9 @@
 ; (the current music channel address - $4000) / 3
 	ds 1
 
-wcfc8:: ds 1
-wcfc9:: ds 1
-wcfca:: ds 1
+wcfc8:: ds 1 ; used with audio
+wcfc9:: ds 1 ; also used with audio
+wcfca:: ds 1 ; also used with audio too
 
 wUpdateSpritesEnabled:: ; cfcb
 ; $01 enables UpdateSprites; anything else disables it
@@ -952,10 +956,10 @@
 wTrainerPicPointer:: ; wd033
 	ds 2
 	ds 1
-wd036:: ds 16
-wd046:: ds 1
-wd047:: ds 1
-wd048:: ds 2
+wd036:: ds 16 ; used as a temporary buffer to print "XXX learned YYY"
+wd046:: ds 1 ; used with trainer pointer stuff (not exactly sure, but the label is incremented and loaded with a value, so wd047 is accessed)
+wd047:: ds 1 ; used with unloading trainer data?
+wd048:: ds 2 ; used as a pointer for missable object loop
 
 W_TRAINERNAME:: ; d04a
 ; 13 bytes for the letters of the opposing trainer
@@ -991,7 +995,7 @@
    ;  $a = neutral
    ; $14 = super-effective
 ; bit 7: STAB
-    ds 1
+	ds 1
 
 W_LONEATTACKNO:: ; d05c
 ; which entry in LoneAttacks to use
@@ -1110,17 +1114,17 @@
 ; non-zero when an item or move that allows escape from battle was used
 	ds 1
 
-wd079:: 
-wAmountMoneyWon:: ds 1 ; wd079 - wd07b
-wd07a:: ds 1
-	ds 1
+wAmountMoneyWon:: ; wd079 - wd07b
+wd079:: ds 1 ; used as a value to print the money won from a battle, as well as a misc. value in seafoam
+wd07a:: ds 1 ; same case as above
+wd07b:: ds 1 ; used as a buffer to convert the money won from a battle into BCD
 
 W_ANIMATIONID:: ; d07c
 ; ID number of the current battle animation
 	ds 1
 
-wd07d:: ds 1
-wd07e:: ds 3
+wd07d:: ds 1 ; used with naming functions and party display type
+wd07e:: ds 3 ; used with mart and inventory
 
 ; base coordinates of frame block
 W_BASECOORDX:: ; d081
@@ -1136,7 +1140,7 @@
 ; counts how many tiles of the current frame block have been drawn
 	ds 1
 
-wd085:: ds 1
+wd085:: ds 1 ; used with animating water/flowers
 
 W_SUBANIMFRAMEDELAY:: ; d086
 ; duration of each frame of the current subanimation in terms of screen refreshes
@@ -1145,7 +1149,7 @@
 ; counts the number of subentries left in the current subanimation
 	ds 1
 
-wd088:: ds 1
+wd088:: ds 1 ; savefile checksum (if file is corrupted)
 
 W_NUMFBTILES:: ; d089
 ; number of tiles in current battle animation frame block
@@ -1154,7 +1158,7 @@
 wTradedMonMovingRight:: ; d08a
 ; $01 if mon is moving from left gameboy to right gameboy; $00 if vice versa
 
-wd08a:: ds 1
+wd08a:: ds 1 ; used with sprites and displaying the option menu on the main menu screen?
 
 wTownMapSpriteBlinkingCounter:: ; d08b
 
@@ -1190,13 +1194,13 @@
 
 	ds 2
 
-wd09a:: ds 1
+wd09a:: ds 1 ; used with the battle transition screen when entering a battle (screen slowly draws into black)
 
 wTownMapSpriteBlinkingEnabled:: ; d09b
 ; non-zero when enabled. causes nest locations to blink on and off.
 ; the town selection cursor will blink regardless of what this value is
 
-wd09b:: ds 1
+wd09b:: ds 1 ; also used with battle transition screen and move animations
 
 W_FBDESTADDR:: ; d09c
 ; current destination address in OAM for frame blocks (big endian)
@@ -1216,8 +1220,8 @@
 
 wNewTileBlockID:: ; d09f
 
-wd09f:: ds 1
-wd0a0:: ds 1
+wd09f:: ds 1 ; used with predef ReplaceTileBlock
+wd0a0:: ds 1 ; used in VBlank and ChangeBGPalColor0_4Frames
 
 W_SPRITECURPOSX:: ; d0a1
 	ds 1
@@ -1266,7 +1270,7 @@
 ; pointer to differential decoding table (assuming initial value 1)
 	ds 2
 
-wd0b5:: ds 1
+wd0b5:: ds 1 ; used as a temp storage area for Pokemon Species, and other Pokemon/Battle related things
 
 wNameListType:: ; d0b6
 	ds 1
@@ -1318,7 +1322,7 @@
 	flag_array 50 + 5
 	ds 1
 
-wd0d4:: ds 3
+wd0d4:: ds 3 ; temp storage for hTilesetType
 
 W_MONHPADDING:: ; d0d7
 
@@ -1341,50 +1345,50 @@
 wMovesString:: ; d0e1
 	ds 56
 
-wd119:: ds 1
+wd119:: ds 1 ; written to from W_CURMAPTILESET but never read
 
 wWalkBikeSurfStateCopy:: ; d11a
 ; wWalkBikeSurfState is sometimes copied here, but it doesn't seem to be used for anything
 	ds 1
 
-wd11b:: ds 1
-wd11c:: ds 1
-wd11d:: ds 1
-wd11e:: ds 1
-wd11f:: ds 1
+wd11b:: ds 1 ; used with mart text box and cable club
+wd11c:: ds 1 ; temp storage value for catching pokemon
+wd11d:: ds 1 ; used with battle switchout and testing if the enemy mon fainted
+wd11e:: ds 1 ; used as a Pokemon and Item storage value. Also used as an output value for CountSetBits
+wd11f:: ds 1 ; used when running from battle and PartyMenuInit
 
 wNumRunAttempts::
 ; number of times the player has tried to run from battle
 	ds 1
 
-wd121:: ds 1
-wd122:: ds 2
-wd124:: ds 1
+wd121:: ds 1 ; used with evolving pokemon
+wd122:: ds 2 ; saved ROM bank number for vblank
+wd124:: ds 1 ; used as an output value when determining if an item is a key item
 
 wTextBoxID:: ; d125
 	ds 1
 
-wd126:: ds 1
+wd126:: ds 1 ; not exactly sure what this is used for, but it seems to be used as a multipurpose temp flag value
 
 W_CURENEMYLVL:: ; d127
 	ds 1
 
-wd128:: ds 1
-wd129:: ds 1
-wd12a:: ds 1
+wd128:: ds 1 ; used as a pointer to displaying Poke Mart inventory, also used to store the pointer of LoadItemList (pointer to item list initially in hl)
+wd129:: ds 1 ; second half of above mentioned pointer
+wd12a:: ds 1 ; Number of list entries for displaying a list
 
 wLinkState:: ; d12b
 	ds 1
 
 wTwoOptionMenuID:: ds 1
-wd12d:: ds 1
-wd12e:: ds 1
-wd12f:: ds 1
-wd130:: ds 1
-wd131:: ds 1
-wd132:: ds 1
-wd133:: ds 6
-wd139:: ds 1
+wd12d:: ds 1 ; used with item menus and pokemart menu, also used with testing if all Pokemon Fainted?
+wd12e:: ds 1 ; used as an output value to determine if A or B was pressed in a yes/no box
+wd12f:: ds 1 ; used in some coordinatestuff, npc pathstuff, and game corner prize stuff
+wd130:: ds 1 ; saved value of screen Y coord of trainer sprite
+wd131:: ds 1 ; saved value of screen X coord of trainer sprite
+wd132:: ds 1 ; saved value of map Y coordinate of trainer sprite (not sure for purpose)
+wd133:: ds 6 ; saved value of map X coordinate of trainer sprite
+wd139:: ds 1 ; backup of selected menu entry for game corner prizes
 
 wIgnoreInputCounter:: ; d13a
 ; counts downward each frame
@@ -1411,9 +1415,9 @@
 wSerialRandomNumberListBlock:: ; d141
 ; the first 7 bytes are the preamble
 
-wd141:: ds 2
-wd143:: ds 2
-wd145:: ds 3
+wd141:: ds 2 ; prices for prizes
+wd143:: ds 2 ; prices for prizes
+wd145:: ds 3 ; prices for prizes
 
 wLinkBattleRandomNumberList:: ; d148
 ; shared list of 9 random numbers, indexed by wLinkBattleRandomNumberListIndex
@@ -1422,10 +1426,10 @@
 wSerialPlayerDataBlock:: ; d152
 ; the first 6 bytes are the preamble
 
-wd152:: ds 1
-wd153:: ds 3
-wd156:: ds 1
-wd157:: ds 1
+wd152:: ds 1 ; used as a temporary storage for the item used
+wd153:: ds 3 ; written to during pokedex flag action but doesn't seem to be read from
+wd156:: ds 1 ; evolution stone ID used
+wd157:: ds 1 ; used with oak's lab script (related to npc movement directions), possibly indirectly accessed with values below
 
 
 wPlayerName:: ; d158
@@ -1487,13 +1491,13 @@
 
 	ds 1
 
-wd358:: ds 1
+wd358:: ds 1 ; bit 0 set = no delay when printing text (W_OPTIONS is still checked though)
 
 wPlayerID:: ; d359
 	ds 2
 
-wd35b:: ds 1
-wd35c:: ds 1
+wd35b:: ds 1 ; used with audio stuff
+wd35c:: ds 1 ; storage for audio bank for current map?
 
 wMapPalOffset:: ; d35d
 ; offset subtracted from FadePal4 to get the background and object palettes for the current map
@@ -1524,7 +1528,7 @@
 wLastMap:: ; d365
 	ds 1
 
-wd366:: ds 1
+wd366:: ds 1 ; W_CURMAPWIDTH of the last outdoor map visited when entering an inside map
 
 W_CURMAPTILESET:: ; d367
 	ds 1
@@ -1553,7 +1557,7 @@
 W_MAPCONN1PTR:: ; d371
 	ds 1
 
-wd372:: ds 1
+wd372:: ds 1 ; some connection stuff, too bothered to label it
 wd373:: ds 1
 wd374:: ds 1
 wd375:: ds 1
@@ -1614,9 +1618,9 @@
 ; sprite set ID for the current map
 	ds 1
 
-wd3a9:: ds 1
-wd3aa:: ds 3
-wd3ad:: ds 1
+wd3a9:: ds 1 ; used when getting the object data pointer
+wd3aa:: ds 3 ; second part of the pointer
+wd3ad:: ds 1 ; used as the beginning value for copying warp data
 
 wNumberOfWarps:: ; d3ae
 ; number of warps in current map
@@ -1632,9 +1636,9 @@
 
 	ds 128
 
-wd4b0:: ds 1
-wd4b1:: ds 32
-wd4d1:: ds 16
+wd4b0:: ds 1 ; number of signs on the map
+wd4b1:: ds 32 ; starting address for sign coords
+wd4d1:: ds 16 ; starting address for sign text IDs
 
 W_NUMSPRITES:: ; d4e1
 ; number of sprites on the current map
@@ -1655,16 +1659,16 @@
 ; two bytes per sprite (trainer class/item ID, trainer set ID)
 	ds 32
 
-wd524:: ds 1
-wd525:: ds 1
+wd524:: ds 1 ; map height in 2x2 metatiles, also used with checking connections
+wd525:: ds 1 ; map width in 2x2 metatiles, also used with checking connections
 
 wMapViewVRAMPointer:: ; d526
 ; the address of the upper left corner of the visible portion of the BG tile map in VRAM
 	ds 2
 
-wd528:: ds 1
-wd529:: ds 1
-wd52a:: ds 1
+wd528:: ds 1 ; additional storage for directions
+wd529:: ds 1 ; same case as above, but used differently
+wd52a:: ds 1 ; same case as above
 
 W_TILESETBANK:: ; d52b
 	ds 1
@@ -1695,9 +1699,9 @@
 	ds 50 * 2
 	ds 1 ; end
 
-wd5a0:: ds 2
-wd5a2:: ds 1
-wd5a3:: ds 1
+wd5a0:: ds 2 ; current box number
+wd5a2:: ds 1 ; number of HOF teams
+wd5a3:: ds 1 ; unused? (written to when loading map data)
 
 wPlayerCoins:: ; d5a4
 	ds 2 ; BCD
@@ -1706,7 +1710,7 @@
 ; bit array of missable objects. set = removed
 	ds 39
 
-wd5cd:: ds 1
+wd5cd:: ds 1 ; temp copy of c1x2 (sprite facing/anim)
 
 W_MISSABLEOBJECTLIST:: ; d5ce
 ; each entry consists of 2 bytes
@@ -1931,8 +1935,8 @@
 
 	ds 134
 
-wd6f0:: ds 14
-wd6fe:: ds 2
+wd6f0:: ds 14 ; flags for hidden items?
+wd6fe:: ds 2 ; flags for hidden coins?
 
 wWalkBikeSurfState:: ; d700
 ; $00 = walking
@@ -1985,7 +1989,7 @@
 ; destination map (for certain types of special warps, not ordinary walking)
 	ds 1
 
-wd71b:: ds 1
+wd71b:: ds 1 ; written to but doesn't seem to be read
 
 wTileInFrontOfBoulderAndBoulderCollisionResult:: ; d71c
 ; used to store the tile in front of the boulder when trying to push a boulder
@@ -2000,7 +2004,7 @@
 ; which dungeon warp within the source map was used
 	ds 1
 
-wd71f:: ds 9
+wd71f:: ds 9 ; used with card key
 
 wd728::
 ; bit 0: using Strength outside of battle
@@ -2008,14 +2012,15 @@
 
 	ds 1
 
-wd72a:: ds 2
+wd72a:: ds 2 ; flags for if a gym is beaten, also used to determine whether to display your name on the gym statues
 
 wd72c:: ; d72c
 ; bit 0: if not set, the 3 minimum steps between random battles have passed
 	ds 1
 
-wd72d:: ds 1
-wd72e:: ds 2
+wd72d:: ds 1 ; misc temp flags? (in some scripts, bit 6 and 7 set after a special battle (e.g. gym leaders) has been won)
+             ; also used as a start menu flag
+wd72e:: ds 2 ; more temp misc flags, used with npc movement, main menu and other stuff
 
 wd730::
 ; bit 0: NPC sprite being moved by script
@@ -2045,7 +2050,7 @@
 ; bit 7: used fly out of battle
 	ds 1
 
-wd734:: ds 2
+wd734:: ds 2 ; flag for indigo plateau and lorelei (not sure what it's for)
 
 wd736:: ; d736
 ; bit 0: check if the player is standing on a door and make him walk down a step if so
@@ -2059,8 +2064,8 @@
 
 	ds 2
 
-wd73b:: ds 1
-wd73c:: ds 3
+wd73b:: ds 1 ; used with elevator warps
+wd73c:: ds 3 ; also used with elevator warps
 
 wCardKeyDoorY:: ; d73f
 	ds 1
@@ -2070,9 +2075,9 @@
 
 	ds 2
 
-wd743:: ds 1
-wd744:: ds 3
-wd747:: ds 3
+wd743:: ds 1 ; used with surge gym trash cans
+wd744:: ds 3 ; also used with surge gym trash cans
+wd747:: ds 3 ; and we're getting to flags, which I'm not going to bother commenting
 wd74a:: ds 1
 
 wd74b:: ; d74b
@@ -2218,7 +2223,6 @@
 W_GRASSMONS:: ; d888
 	ds 20
 
-
 wEnemyPartyCount:: ds 1     ; d89c
 wEnemyPartyMons::  ds PARTY_LENGTH + 1 ; d89d
 
@@ -2239,7 +2243,7 @@
 
 	ds 6
 
-wda38:: ds 1
+wda38:: ds 1 ; used with cinnabar gym questions and pokemon tower 7F?
 
 W_CURMAPSCRIPT:: ; da39
 ; index of current map script, mostly used as index for function pointer array
@@ -2301,4 +2305,3 @@
 	ds $100
 
 sHallOfFame:: ds HOF_TEAM * NUM_HOF_TEAMS ; a598
-