Files
alttpr-python/asm/asm_investigations.txt

426 lines
10 KiB
Plaintext

Dungeon_InterRoomTrans 7.2 -> (01) -> Dungeon_LoadRoom
Dungeon_InitStarTileCh
**Load and and Prep Here
Dungeon_ResetSprites
$028908 (PC: 10908) is the jump tample
hook points 7.2.1
22 32 f4 a0
$028961 (PC: 10961) 22 a4 fd 00
22 39 d7 00
e6 b0
9c 00 02
a5 a2
48
a5 a0
Modules 04 and 05 skip the PaletteFiltering right above it - moving the pointers slightly might help - didn't help
mostly for the black fade out
60 a5 b0 c9 07 90 ?? ??
jsl ?? ?? ??
jsl ?? ?? ??
jsl 07 ?? ??
lda b0
jsl 00 ?? ??
pointers!!!
SpiralStaircase
(00) 290C6
(01) 28B7A
(02) 28FA3 -> Fixed Color see 110A1-$110C6 JUMP LOCATION in Bank02 e944 is PaletteFiltering (Fade out!) (.doFiltering)
(03) 28BE4 -> Dungeon_LoadRoom, Dungeon_InitStarTileChr, LoadTransAuxGfx, Dungeon_LoadCustomTileAttr
(04) 28D11 -> PrepTransAuxGfx
(05) 28D1F -> Sets $17 to #$0A
(06) 28C12 -> Dungeon_ResetSprites
- these guys called each other a ton
c9* b5 ca* b5* ca* b1* b5 c6* ca b1* b5 c6* ca 96---------
(07) 28FC9 -> 5 jumps in here, sets $a4 floor
112B1 -> may be related to straight staircase only
13B7B
135DC
10EC9
10AB3 - right before b5
(08) 289CA -> calls $113F (above .copyTilemap in Bank 00)
(09) 289B5 -> calls $11C4 (updates all tiles in a room)
(0a) 289CA -> go through the tilemap....
(0b) 289B1 -> runs a filter - new color?, then $11C4 (didn't see call to 289B5)
(0c) 289C6 -> runs a filter then $113F
(0d) 289B1 -> repeat last two steps
(0e) 289C6
(0f) 28F96 -> Fade in
(10) 2905D
(11) 2909D
(12) 290B7
(13) 290DF
SpiralStaircase -> (03) 10CE2 -> Dungeon_LoadRoom
Dungeon_InitStarTileChr
LoadTransAuxGfx
Dungeon_LoadCustomTileAttr
(04) 10E0F -> PrepTransAuxGfx
(06) 10D10 -> Dungeon_ResetSprites
; Upward floor transition
Dungeon -> x06 -> $10C14 -> 10CE2 -> Dungeon_LoadRoom
Dungeon_InitStarTileChr
LoadTransAuxGfx
Dungeon_LoadCustomTileAttr
10E0F -> PrepTransAuxGfx
10D10 -> Dungeon_ResetSprites
; Downward floor transition
Dungeon -> x07 -> $10E27 -> 10CE2 -> Dungeon_LoadRoom
Dungeon_InitStarTileChr
LoadTransAuxGfx
Dungeon_LoadCustomTileAttr
10E0F -> PrepTransAuxGfx
10D10 -> Dungeon_ResetSprites
StraightStairs_2 -> Dungeon_LoadRoom
-> LoadTransAuxGfx
StraightStairs_3 -> 10E0F -> PrepTransAuxGfx
StraightStairs_4 -> Dungeon_ResetSprites
Dungeon_Teleport -> 10CE2 -> Dungeon_LoadRoom
10CE2 -> LoadTransAuxGfx
10D10 -> Dungeon_ResetSprites
Hook points
org $00d6ae (PC: 56ae)
LoadTransAuxGfx
8b 4b ab 64 00
org $00df5a (PC: 5f5a)
PrepTransAuxGfx
a9 7e 85 02 85 05 c2 31
org $0ffd65 (PC: 07fd65)
Dungeon_LoadCustomTileAttr
8b 4b ab c2 30 ad A2 0A 29 FF 00
Palette_DungBgMain
c2 21 ae b6 0a bf 1b
; This is the palette index for a certain background
LDX $0AB6
LDA $1BEC4B, X : ADC.w #$D734 : STA $00 : PHA
REP #$10
LDA.w #$0042 ; Target BP-2 through BP-7 (full)
LDX.w #$000E ; (Length - 1) (in words) of the palettes.
LDY.w #$0005
Trap doors:
0468 - flag is set when doors are down (1 = down? 0 = up?)
$690 - 7 for open - 0 for down
IntraRoom: ->
Dungeon_IntraRoomTransShutDoors (maybe should be Open)
stz $0468
#$07 -> $0690
Dungeon_IntraRoomTransOpenDoors (maybe should be Shut)
10D71 -> A
A -> 0468
0468++
0 -> 0690
InterRoom:
pre
01b6b5 sta $0468 (01) in this case
01b7ce stz 468 x2
post
028acc inc $0468
028ad2 stz $0690
01d391 inc $0690 x 10 during animation
Other transition stuff
Overworld_LoadTransGfx -> LoadTransAuxGfx
Overworld_LoadTransGfx -> PrepTransAuxGfx
Module_LoadFile -> Dungeon_ResetSprites
Module_HoleToDungeon -> 10D10 -> Dungeon_ResetSprites
Camera work:
Places where sta $e2 happens
02ba5d 13A31 -
028750 Module_Dungeon
0286ef Module_Dungeon
Stuff about big key door south
1e -> Y
this is at 00ce24 or pc 004e24
org 00ce24
dw 2ac8
1aab1 ldx ce06,y (where y is 1e = ce24) loads 2a80, but should be 2ac8 for the gfx
not detected as big key door - need to look into tile attributes
extraneous keydoors
$5b - GT 91 idx 0
$99 - EP 153 idx 1
$a2 - MM 162 idx 0
$a8 - EP 168 idx 2
$bc - TT 188 idx 1
Door Data:
Room 001 : 32 46, 93 46
Room 002 : A1 44, A0 40, A1 16
Room 003 : 61 0E
Room 004 : 00 22, 60 28, 82 28, 80 36, 61 00
Room 006 : 61 18
Room 008 : B2 48, 81 0E, 91 40, 91 16
Room 010 : 10 20
Room 011 : 60 36, 82 38, 62 1C
Room 012 : 71 0A
Room 013 : 61 18
Room 014 : 60 22, 82 18, 81 0A
Room 016 : 61 0A, 82 00
Room 017 : 62 28, 82 28, 81 1C
Room 018 : 40 02, 40 16, A1 02, A1 12
Room 019 : 83 1C, 63 00
Room 020 : 81 1C, 22 1C, 00 00, 02 00, 61 00, 63 00, 83 00
Room 021 : 22 18, 02 00
Room 022 : 70 2E, 60 1C, 80 00, 00 00
Room 024 : 30 02, 30 16
Room 025 : 73 2E, 63 1C
Room 026 : 80 1C, 02 1C, 12 2E, 61 1C, 62 00, 81 00
Room 027 : 60 36, 61 00
Room 028 : 80 36, 82 18, 60 28
Room 029 : 00 1E
Room 030 : 83 18, 82 18, 80 36, 81 00
Room 031 : 22 18, 82 38
Room 032 : 61 18
Room 033 : 20 1C, 70 00, 83 00
Room 034 : 71 1C, 22 00
Room 035 : 81 2A, 83 00
Room 036 : 20 1E, 62 38, 60 38, 80 38, 81 0A, 00 00, 22 00, 82 00
Room 038 : 71 1C, 60 36, 80 36, 62 00
Room 040 : 00 22, 71 0A
Room 042 : 20 18, 00 1C, 83 2E, A3 02, 61 00, 81 00
Room 043 : 82 2E, 22 2E, 00 18, 42 02
Room 044 : 60 2E, 80 2E, 82 2E, 81 2E, 61 0E
Room 046 : 20 00
Room 047 : 60 2E, 81 0E
Room 048 : 00 32, 60 38
Room 049 : 60 1E, 82 36
Room 050 : 10 1C
Room 051 : 61 18
Room 052 : 63 00, 83 00
Room 053 : 63 1C, 02 00, 22 00, 80 00, 83 00, A0 02
Room 054 : 63 2E, 10 1C, 02 1C, 22 00, 83 00, A1 02
Room 055 : 02 2E, 63 2E, 60 1C, 83 1C, 22 00, A0 02
Room 056 : 02 2E, 22 1C
Room 057 : 61 18, 82 1C
Room 058 : 71 1C, 00 00, 20 00
Room 059 : 61 00
Room 060 : 20 2E, 81 0E
Room 061 : 80 36, 62 1C, 61 1C, 60 2E
Room 062 : 80 18, 61 1C
Room 063 : 82 18
Room 064 : B2 40
Room 065 : 71 18
Room 067 : 00 1E, 80 1C, 81 1C
Room 068 : 62 38, 82 1C, 63 00, 83 00
Room 069 : 02 18, 60 00, 22 00, 82 00
Room 070 : 40 02, 90 02, B0 02
Room 073 : 00 32, 62 36, 61 1C, 82 00
Room 074 : 60 18, 80 18, 10 1C, 70 00, 71 0A
Room 075 : 00 18, 60 28, 80 28
Room 076 : 83 18
Room 077 : 00 1C, 22 00
Room 078 : 62 18, 00 1C
Room 079 : 22 1C
Room 080 : 93 46, B1 40
Room 081 : 10 00, 10 14
Room 082 : 32 46, 91 40, 71 00
Room 083 : 60 36, 82 38, 20 1C
Room 085 : 90 02, 61 00, 61 12
Room 086 : 60 1C, 61 0A, 82 00, 83 00
Room 087 : 62 2E, 60 36, 83 1C, 61 0A, 22 00, 81 00
Room 088 : 00 30, 22 1C, 81 1C, 62 2E, 61 0A, 82 00
Room 089 : 00 1C, 61 0A, 92 40, B2 40
Room 090 : 81 18
Room 091 : 81 1C, 63 18
Room 092 : 80 2E, 02 00
Room 093 : 60 18, 61 18, 62 18
Room 094 : 83 1C, 80 38, 81 00, 82 00
Room 095 : 22 1C
Room 096 : 50 40, A3 40, A3 16, 63 00, 81 00, 81 12
Room 097 : 42 02, 42 16, A3 02, A3 16, A1 02, A1 12, 02 00
Room 098 : 42 40, 42 16, 30 40, 10 00, 61 00, 61 12
Room 099 : 20 60, 36 61, 0A
Room 100 : 82 38
Room 101 : 82 00
Room 102 : B0 08, 91 40, 91 16, 90 40
Room 103 : 20 00, 82 00, 83 00
Room 104 : 22 18, 20 1C
Room 106 : 20 1E
Room 107 : 20 1E, 80 36, 82 18, 60 18
Room 108 : 82 38, 60 18, 83 00
Room 109 : 00 18, 60 18, 22 18
Room 110 : 20 18
Room 113 : 60 1C, 91 44, B2 44
Room 114 : 70 1C
Room 115 : 60 36, 82 38, 80 00
Room 116 : 80 00, 60 00
Room 117 : 60 38, 81 00
Room 118 : 92 02, B2 02, 30 02, 30 16
Room 119 : 30 26, A1 0C
Room 123 : 61 18, 63 1C, 83 00
Room 124 : 20 30, 83 2E, 02 1C, 22 00
Room 125 : 81 18, 22 2E, 60 1C
Room 126 : 81 1C, 82 36, 63 00
Room 127 : 02 18, 60 00
Room 129 : 30 40
Room 131 : 60 36, 61 0A, 82 00
Room 132 : 71 0A
Room 134 : 20 18, 62 1C, 81 0A, 82 00
Room 135 : 62 38, 80 00
Room 139 : 62 36, 82 1C, 63 00, 61 00, 00 00
Room 140 : 63 18, 60 38, 62 1C, 02 00, 61 00, 81 00
Room 141 : 81 18, 62 1C, 02 00, 20 00, 82 00
Room 142 : 20 1C
Room 144 : 61 18
Room 145 : 83 00
Room 146 : 62 2E, 60 2E, 22 00, 82 00, 83 00
Room 147 : 60 38, 80 1C, 22 00
Room 149 : 81 00, 63 00
Room 150 : 82 38, 02 00
Room 151 : 82 00, 60 00
Room 152 : 61 0A
Room 153 : 60 20, 71 1C, 80 00
Room 155 : 62 1C, 00 00, 83 00
Room 156 : 83 18, 00 00, 20 00, 22 00
Room 157 : 20 00, 22 00, 62 00
Room 158 : 20 22, 80 1E, 82 00, 83 00
Room 159 : 22 18, 61 18
Room 160 : 00 1E
Room 161 : 81 1C, 73 00
Room 162 : 71 1C, 12 00, 73 00, 81 00
Room 163 : 12 00, 61 00
Room 164 : 61 18
Room 165 : 20 18, 80 38, 60 38
Room 168 : 82 38, 60 36, 81 1C, 92 40, 93 40, 73 00
Room 169 : 12 18, 73 18, 10 1E, 32 40, 93 40, 71 00
Room 170 : 80 38, 32 40, 62 00, 82 00, 12 00, 61 00
Room 171 : 60 20, 61 00
Room 172 : 81 18
Room 174 : 63 00
Room 175 : 00 00, 02 00
Room 176 : 60 18, 62 18, 82 1C
Room 177 : 60 1E, 20 1C, 81 00, 82 00
Room 178 : 10 1E, 82 38, 80 36, 93 40, 20 00, 61 00, 81 00, 83 00
Room 179 : 60 1C, 32 40, 00 00, 22 00, 61 00
Room 180 : 00 1E
Room 181 : 61 18
Room 182 : 00 22, 80 36, 61 1C, 60 1C, 81 00
Room 183 : 61 00
Room 184 : 20 1E, 63 00
Room 185 : 63 1C, 10 00, 71 00, 02 00
Room 186 : 02 1C, 00 18, 62 38
Room 187 : 00 00, 62 00, 82 00, 80 00, 63 00, 83 00
Room 188 : 82 1C, 81 1C, 62 18, 61 2E, 02 00, 22 00, 60 00, 20 00
Room 190 : 81 18, 83 1C, 80 00
Room 191 : 22 1C
Room 192 : 62 36, 82 38, 20 20
Room 193 : 82 1C, 83 1C, 62 36, 60 36, 61 00, 63 00, 20 00, 81 00
Room 194 : 63 1C, 22 1C, 00 00, 02 00, 73 00, 81 00, 83 00, 20 00
Room 195 : 02 1C, 62 38, 72 38, 82 36, 00 00, 12 00, 22 00
Room 196 : 83 1C
Room 197 : 22 1C, 00 00, 61 00
Room 198 : 00 1C, 20 00, 63 00, 83 00, 61 00, 81 00
Room 199 : 00 18, 02 00, 22 00
Room 200 : 81 18
Room 201 : 70 18, 10 18, 60 00, 80 00, 71 0A
Room 203 : 73 28
Room 204 : 20 1E, 00 2E, 12 28
Room 206 : 20 18
Room 208 : 82 1C, 62 38
Room 209 : 82 38, 00 00, 20 00, 80 00
Room 210 : 20 18
Room 213 : 61 2A, 00 00
Room 215 : 00 1A, 81 0A, 20 00
Room 216 : 20 18, 80 36, 83 00
Room 217 : 22 18, 82 18, 83 18
Room 218 : 22 18
Room 219 : 73 18, 71 0A
Room 220 : 12 00
Room 223 : 71 0E
Room 224 : 62 38, 60 38, 20 20, 61 0A
Room 225 : A2 40, 61 0E
Room 226 : 72 00, 81 0E
Room 227 : B2 4A, B0 40, 61 0E
Room 228 : 91 10, 62 00, 73 00
Room 229 : 12 00, 71 0E
Room 230 : 91 10, 93 02
Room 231 : B1 10, 32 02
Room 232 : 81 0E
Room 233 :
Room 234 : 61 0E
Room 235 : 81 0E
Room 236 :
Room 237 : 81 0E
Room 238 : 81 0E
Room 239 : 80 38, 71 0E
Room 240 : 61 0E, A3 02
Room 241 : B1 10, 42 02
Room 242 : 83 00, 81 00, 81 12
Room 243 : 22 00, 61 00, 61 12
Room 244 : 83 28, 81 00, 81 12
Room 245 : 22 28, 61 00, 61 12
Room 248 : 71 0E
Room 249 : 61 0E
Room 250 : 91 04
Room 251 : 71 0E
Room 253 : A1 10
Room 254 : B1 10
Room 255 : 60 2E, 80 2E, 81 0E