1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
|
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0805488C
sub_0805488C: @ 0x0805488C
push {r4, lr}
ldr r4, _080548DC @ =gUnk_02032EC0
ldrb r1, [r4, #3]
lsls r0, r1, #2
adds r0, r0, r1
lsls r0, r0, #2
ldr r1, _080548E0 @ =gUnk_080FE320
adds r0, r0, r1
ldr r2, _080548E4 @ =gMenu
ldrb r1, [r0]
movs r3, #0
strb r1, [r2]
ldrb r1, [r0, #1]
strb r1, [r2, #3]
ldrb r1, [r4, #3]
strb r1, [r2, #4]
str r0, [r2, #0xc]
ldrb r0, [r2, #5]
adds r0, #1
strb r0, [r2, #5]
strb r3, [r2, #6]
movs r0, #0x96
lsls r0, r0, #1
strh r0, [r2, #8]
movs r0, #0
bl DispReset
ldrb r0, [r4, #3]
movs r1, #1
bl sub_08054974
bl sub_0806F364
movs r0, #0xff
bl ClearRoomFlag
bl sub_080548E8
pop {r4, pc}
.align 2, 0
_080548DC: .4byte gUnk_02032EC0
_080548E0: .4byte gUnk_080FE320
_080548E4: .4byte gMenu
thumb_func_start sub_080548E8
sub_080548E8: @ 0x080548E8
push {lr}
ldr r1, _08054918 @ =gUnk_080FE2AC
ldr r0, _0805491C @ =gMenu
ldrb r0, [r0]
lsls r0, r0, #2
adds r0, r0, r1
ldr r0, [r0]
bl _call_via_r0
bl FlushSprites
bl sub_0805E5C0
bl sub_080AD9B0
bl sub_080AD918
bl UpdateScroll
bl UpdateBgAnim
bl sub_08000108
pop {pc}
.align 2, 0
_08054918: .4byte gUnk_080FE2AC
_0805491C: .4byte gMenu
thumb_func_start sub_08054920
sub_08054920: @ 0x08054920
push {lr}
bl MessageInitialize
bl sub_0806F38C
ldr r1, _08054948 @ =gUnk_080C9CBC
ldr r0, _0805494C @ =gUnk_02022740
ldrb r0, [r0, #3]
lsls r0, r0, #3
adds r0, r0, r1
ldrb r0, [r0, #7]
cmp r0, #0
beq _08054954
ldr r0, _08054950 @ =gUnk_02032EC0
ldrb r1, [r0, #3]
movs r0, #0xa
bl MenuFadeIn
b _08054962
.align 2, 0
_08054948: .4byte gUnk_080C9CBC
_0805494C: .4byte gUnk_02022740
_08054950: .4byte gUnk_02032EC0
_08054954:
ldr r1, _08054964 @ =gUnk_02032EC0
movs r0, #3
strb r0, [r1]
movs r0, #7
movs r1, #0x10
bl DoFade
_08054962:
pop {pc}
.align 2, 0
_08054964: .4byte gUnk_02032EC0
thumb_func_start sub_08054968
sub_08054968: @ 0x08054968
ldr r1, _08054970 @ =gMenu
movs r0, #2
strb r0, [r1, #5]
bx lr
.align 2, 0
_08054970: .4byte gMenu
thumb_func_start sub_08054974
sub_08054974: @ 0x08054974
push {r4, r5, r6, lr}
adds r5, r1, #0
lsls r1, r0, #2
adds r1, r1, r0
lsls r1, r1, #2
ldr r0, _080549B0 @ =gUnk_080FE320
adds r6, r1, r0
ldrb r0, [r6, #2]
ldrb r1, [r6, #3]
bl SetCurrentRoomPropertyList
ldr r4, _080549B4 @ =gRoomControls
ldrb r0, [r6, #2]
strb r0, [r4, #4]
ldrb r0, [r6, #3]
strb r0, [r4, #5]
bl sub_08053320
ldrb r0, [r4, #4]
bl sub_08052D58
ldr r1, _080549B8 @ =gArea
strh r0, [r1, #4]
cmp r5, #0
beq _080549BC
ldrb r0, [r6, #2]
ldrb r1, [r6, #3]
bl sub_08052FD8
b _080549CE
.align 2, 0
_080549B0: .4byte gUnk_080FE320
_080549B4: .4byte gRoomControls
_080549B8: .4byte gArea
_080549BC:
ldrb r0, [r6, #2]
ldrb r1, [r6, #3]
bl sub_08052FF4
bl sub_0807C740
ldr r1, _08054A00 @ =gUnk_02000070
movs r0, #1
strb r0, [r1]
_080549CE:
ldr r2, _08054A04 @ =gScreen
ldrh r1, [r2]
ldr r0, _08054A08 @ =0x00001FFF
ands r0, r1
strh r0, [r2]
ldr r1, _08054A0C @ =gRoomControls
ldrh r0, [r6, #4]
ldrh r2, [r1, #6]
adds r0, r0, r2
strh r0, [r1, #0xa]
ldrh r0, [r6, #6]
ldrh r2, [r1, #8]
adds r0, r0, r2
strh r0, [r1, #0xc]
ldrb r0, [r6, #2]
cmp r0, #2
bne _080549F4
bl TryLoadPrologueHyruleTown
_080549F4:
ldr r0, _08054A10 @ =gUnk_02032EC0
ldrb r0, [r0, #3]
bl sub_08018710
pop {r4, r5, r6, pc}
.align 2, 0
_08054A00: .4byte gUnk_02000070
_08054A04: .4byte gScreen
_08054A08: .4byte 0x00001FFF
_08054A0C: .4byte gRoomControls
_08054A10: .4byte gUnk_02032EC0
thumb_func_start sub_08054A14
sub_08054A14: @ 0x08054A14
push {lr}
lsls r1, r0, #2
adds r1, r1, r0
lsls r1, r1, #2
ldr r0, _08054A38 @ =gUnk_080FE320
adds r2, r1, r0
ldrb r0, [r2, #0x11]
cmp r0, #0xd
bhi _08054A34
ldr r1, _08054A3C @ =gUnk_0811E454
lsls r0, r0, #1
adds r0, r0, r1
ldrh r0, [r0]
ldrh r1, [r2, #0x12]
bl SetLocalFlagByOffset
_08054A34:
pop {pc}
.align 2, 0
_08054A38: .4byte gUnk_080FE320
_08054A3C: .4byte gUnk_0811E454
|