Skip to content

Commit a61da52

Browse files
committed
Extract doors
1 parent a6cbbd7 commit a61da52

File tree

13 files changed

+11414
-76
lines changed

13 files changed

+11414
-76
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ This is a work in progress decompilation of Metroid - Fusion.
44

55
2200/3607 functions decompiled (63.82%, 1407 left)
66

7-
0x470cab/0x6f9d24 bytes of data not in blobs (63.65%, 0x289079 left)
7+
0x473873/0x6f9d24 bytes of data not in blobs (63.8%, 0x2864b1 left)
88

99
Progress can be seen here : https://docs.google.com/spreadsheets/d/19pUPm1dp-7IY9iCeJJA412dwgD2f1M6A1QafzlRV8ic/edit#gid=0
1010

asm/disasm_0x080626f4.s

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1367,7 +1367,7 @@ SetCurrentNavigationRoom: @ 0x080631D0
13671367
ldr r2, _080631EC @ =gCurrentNavigationRoom
13681368
movs r3, #0
13691369
strb r3, [r2]
1370-
ldr r0, _080631F0 @ =0x0857604C
1370+
ldr r0, _080631F0 @ =sAreaNavigationRoomPairs
13711371
ldrb r1, [r0]
13721372
adds r5, r2, #0
13731373
adds r6, r0, #0
@@ -1377,7 +1377,7 @@ SetCurrentNavigationRoom: @ 0x080631D0
13771377
b _08063226
13781378
.align 2, 0
13791379
_080631EC: .4byte gCurrentNavigationRoom
1380-
_080631F0: .4byte 0x0857604C
1380+
_080631F0: .4byte sAreaNavigationRoomPairs
13811381
_080631F4:
13821382
ldr r0, _0806322C @ =gCurrentArea
13831383
adds r4, r6, #0

asm/disasm_0x08074ffc.s

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10470,7 +10470,7 @@ _0807B086:
1047010470
adds r2, r0, r6
1047110471
ldrb r0, [r2, #1]
1047210472
strb r0, [r7]
10473-
ldr r1, _0807B0C0 @ =0x08576066
10473+
ldr r1, _0807B0C0 @ =sAreasOfSubAreas
1047410474
ldrb r0, [r7]
1047510475
adds r0, r0, r1
1047610476
ldrb r0, [r0]
@@ -10492,7 +10492,7 @@ _0807B086:
1049210492
.align 2, 0
1049310493
_0807B0B8: .4byte 0x0300004C
1049410494
_0807B0BC: .4byte 0x085766E4
10495-
_0807B0C0: .4byte 0x08576066
10495+
_0807B0C0: .4byte sAreasOfSubAreas
1049610496
_0807B0C4: .4byte 0x0000020E
1049710497
_0807B0C8: .4byte 0x00000212
1049810498
_0807B0CC: .4byte 0x0000020F
@@ -11996,7 +11996,7 @@ _0807BC68:
1199611996
lsls r0, r2, #3
1199711997
adds r0, r0, r5
1199811998
ldrb r2, [r0, #1]
11999-
ldr r0, _0807BC94 @ =0x08576066
11999+
ldr r0, _0807BC94 @ =sAreasOfSubAreas
1200012000
adds r0, r2, r0
1200112001
ldrb r0, [r0]
1200212002
strb r0, [r6]
@@ -12011,7 +12011,7 @@ _0807BC84: .4byte gEventCounter
1201112011
_0807BC88: .4byte sEventLocationAndNavigationInfo
1201212012
_0807BC8C: .4byte gPreviousNavigationConversation
1201312013
_0807BC90: .4byte 0x085766E4
12014-
_0807BC94: .4byte 0x08576066
12014+
_0807BC94: .4byte sAreasOfSubAreas
1201512015

1201612016
thumb_func_start NavigationConversationLoadPopUpGraphics
1201712017
NavigationConversationLoadPopUpGraphics: @ 0x0807BC98
@@ -14154,8 +14154,8 @@ _0807CE7A:
1415414154
ldrb r0, [r3]
1415514155
cmp r0, #0
1415614156
beq _0807CED4
14157-
ldr r2, _0807CECC @ =0x0857607D
14158-
ldr r1, _0807CED0 @ =0x08576073
14157+
ldr r2, _0807CECC @ =sUnk_57607d
14158+
ldr r1, _0807CED0 @ =sSubAreasOfSectors
1415914159
adds r0, r0, r1
1416014160
ldrb r0, [r0]
1416114161
adds r0, r0, r2
@@ -14169,10 +14169,10 @@ _0807CEBC: .4byte gCurrentArea
1416914169
_0807CEC0: .4byte gNonGameplayRam
1417014170
_0807CEC4: .4byte 0x08581500
1417114171
_0807CEC8: .4byte gPauseScreenFlag
14172-
_0807CECC: .4byte 0x0857607D
14173-
_0807CED0: .4byte 0x08576073
14172+
_0807CECC: .4byte sUnk_57607d
14173+
_0807CED0: .4byte sSubAreasOfSectors
1417414174
_0807CED4:
14175-
ldr r0, _0807CF48 @ =0x0857607D
14175+
ldr r0, _0807CF48 @ =sUnk_57607d
1417614176
ldrb r1, [r0, #7]
1417714177
movs r4, #0x91
1417814178
lsls r4, r4, #2
@@ -14223,20 +14223,20 @@ _0807CEDE:
1422314223
ldrb r0, [r2]
1422414224
cmp r0, #0
1422514225
beq _0807CF5C
14226-
ldr r1, _0807CF54 @ =0x08576073
14226+
ldr r1, _0807CF54 @ =sSubAreasOfSectors
1422714227
adds r0, r0, r1
1422814228
ldrb r1, [r0]
1422914229
ldr r2, _0807CF58 @ =0x00000249
1423014230
adds r0, r6, r2
1423114231
b _0807CF6C
1423214232
.align 2, 0
14233-
_0807CF48: .4byte 0x0857607D
14233+
_0807CF48: .4byte sUnk_57607d
1423414234
_0807CF4C: .4byte 0x0879C180
1423514235
_0807CF50: .4byte gCurrentArea
14236-
_0807CF54: .4byte 0x08576073
14236+
_0807CF54: .4byte sSubAreasOfSectors
1423714237
_0807CF58: .4byte 0x00000249
1423814238
_0807CF5C:
14239-
ldr r1, _0807CF94 @ =0x085760E8
14239+
ldr r1, _0807CF94 @ =sSubAreasOfMainDeckRooms
1424014240
ldr r0, _0807CF98 @ =gCurrentRoom
1424114241
ldrb r0, [r0]
1424214242
adds r0, #1
@@ -14265,7 +14265,7 @@ _0807CF8A:
1426514265
pop {r0}
1426614266
bx r0
1426714267
.align 2, 0
14268-
_0807CF94: .4byte 0x085760E8
14268+
_0807CF94: .4byte sSubAreasOfMainDeckRooms
1426914269
_0807CF98: .4byte gCurrentRoom
1427014270
_0807CF9C: .4byte 0x00000249
1427114271
_0807CFA0: .4byte 0x00007A73
@@ -14355,7 +14355,7 @@ _0807D04C: .4byte 0x0000024A
1435514355
_0807D050:
1435614356
cmp r0, #3
1435714357
bne _0807D0DA
14358-
ldr r0, _0807D090 @ =0x0857608A
14358+
ldr r0, _0807D090 @ =sUnk_57608a
1435914359
ldr r1, _0807D094 @ =0x0300004C
1436014360
ldrb r1, [r1]
1436114361
adds r0, r1, r0
@@ -14387,7 +14387,7 @@ _0807D078:
1438714387
adds r0, r0, r1
1438814388
b _0807D0B2
1438914389
.align 2, 0
14390-
_0807D090: .4byte 0x0857608A
14390+
_0807D090: .4byte sUnk_57608a
1439114391
_0807D094: .4byte 0x0300004C
1439214392
_0807D098: .4byte 0x0879C1A4
1439314393
_0807D09C:
@@ -14682,7 +14682,7 @@ _0807D2D0:
1468214682
adds r0, r3, r1
1468314683
strb r4, [r0]
1468414684
_0807D2D6:
14685-
ldr r1, _0807D328 @ =0x0857607D
14685+
ldr r1, _0807D328 @ =sUnk_57607d
1468614686
ldrb r0, [r5]
1468714687
adds r0, r0, r1
1468814688
ldrb r1, [r0]
@@ -14723,7 +14723,7 @@ _0807D316:
1472314723
b _0807D338
1472414724
.align 2, 0
1472514725
_0807D324: .4byte 0x0000024A
14726-
_0807D328: .4byte 0x0857607D
14726+
_0807D328: .4byte sUnk_57607d
1472714727
_0807D32C: .4byte 0x00000245
1472814728
_0807D330:
1472914729
cmp r1, #0x12

asm/event.s

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -175,37 +175,37 @@ _08074A80:
175175
_08074A88: .4byte gEquipment
176176
_08074A8C:
177177
ldr r2, _08074A98 @ =gEquipment
178-
ldr r1, _08074A9C @ =0x085760C8
178+
ldr r1, _08074A9C @ =sSecurityUnlockEvents
179179
ldrb r0, [r1]
180180
strb r0, [r2, #0xd]
181181
ldrb r0, [r1, #4]
182182
b _08074AD2
183183
.align 2, 0
184184
_08074A98: .4byte gEquipment
185-
_08074A9C: .4byte 0x085760C8
185+
_08074A9C: .4byte sSecurityUnlockEvents
186186
_08074AA0:
187187
ldr r2, _08074AAC @ =gEquipment
188-
ldr r1, _08074AB0 @ =0x085760C8
188+
ldr r1, _08074AB0 @ =sSecurityUnlockEvents
189189
ldrb r0, [r1, #8]
190190
strb r0, [r2, #0xd]
191191
ldrb r0, [r1, #0xc]
192192
b _08074AD2
193193
.align 2, 0
194194
_08074AAC: .4byte gEquipment
195-
_08074AB0: .4byte 0x085760C8
195+
_08074AB0: .4byte sSecurityUnlockEvents
196196
_08074AB4:
197197
ldr r2, _08074AC0 @ =gEquipment
198-
ldr r1, _08074AC4 @ =0x085760C8
198+
ldr r1, _08074AC4 @ =sSecurityUnlockEvents
199199
ldrb r0, [r1, #0x10]
200200
strb r0, [r2, #0xd]
201201
ldrb r0, [r1, #0x14]
202202
b _08074AD2
203203
.align 2, 0
204204
_08074AC0: .4byte gEquipment
205-
_08074AC4: .4byte 0x085760C8
205+
_08074AC4: .4byte sSecurityUnlockEvents
206206
_08074AC8:
207207
ldr r2, _08074ADC @ =gEquipment
208-
ldr r1, _08074AE0 @ =0x085760C8
208+
ldr r1, _08074AE0 @ =sSecurityUnlockEvents
209209
ldrb r0, [r1, #0x18]
210210
strb r0, [r2, #0xd]
211211
ldrb r0, [r1, #0x1c]
@@ -215,7 +215,7 @@ _08074AD2:
215215
b _08074B3A
216216
.align 2, 0
217217
_08074ADC: .4byte gEquipment
218-
_08074AE0: .4byte 0x085760C8
218+
_08074AE0: .4byte sSecurityUnlockEvents
219219
_08074AE4:
220220
movs r0, #0x71
221221
movs r1, #0xb
@@ -718,7 +718,7 @@ EventCheckSetNavigationRoomEvent: @ 0x08074EAC
718718
ldrb r0, [r1, #7]
719719
cmp r0, #0
720720
beq _08074EF6
721-
ldr r4, _08074F20 @ =0x0857604C
721+
ldr r4, _08074F20 @ =sAreaNavigationRoomPairs
722722
lsls r2, r0, #1
723723
adds r0, r2, r4
724724
ldr r1, _08074F24 @ =gCurrentArea
@@ -765,7 +765,7 @@ _08074F10:
765765
.align 2, 0
766766
_08074F18: .4byte sEventLocationAndNavigationInfo
767767
_08074F1C: .4byte gEventCounter
768-
_08074F20: .4byte 0x0857604C
768+
_08074F20: .4byte sAreaNavigationRoomPairs
769769
_08074F24: .4byte gCurrentArea
770770
_08074F28: .4byte gCurrentRoom
771771
_08074F2C: .4byte gEquipment
@@ -819,7 +819,7 @@ _08074F82:
819819
movs r5, #0
820820
movs r3, #0
821821
ldr r0, _08074F9C @ =gCurrentArea
822-
ldr r1, _08074FA0 @ =0x085760C8
822+
ldr r1, _08074FA0 @ =sSecurityUnlockEvents
823823
ldrb r2, [r0]
824824
adds r6, r0, #0
825825
ldrb r0, [r1, #1]
@@ -830,7 +830,7 @@ _08074F82:
830830
.align 2, 0
831831
_08074F98: .4byte gEquipment
832832
_08074F9C: .4byte gCurrentArea
833-
_08074FA0: .4byte 0x085760C8
833+
_08074FA0: .4byte sSecurityUnlockEvents
834834
_08074FA4:
835835
adds r3, #1
836836
cmp r3, #3

database.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2975,7 +2975,8 @@ Blob_28fd08_28ff60.bin;0x28fd08;0x28ff60
29752975
Blob_2de9b0_2e4904.bin;2de9b0;2e4904
29762976

29772977
# Clipdata and room entries
2978-
Blob_3be3a0_3e392c.bin;3be3a0;3e392c
2978+
Blob_3be3a0_3c0030.bin;3be3a0;3c0030
2979+
Blob_3c2bf8_3e392c.bin;3c2bf8;3e392c
29792980

29802981
# Room data
29812982
Blob_3eed78_413afc.bin;3eed78;413afc

0 commit comments

Comments
 (0)