region_map through sub_80C0450

This commit is contained in:
PikalaxALT
2019-12-23 21:04:35 -05:00
parent 59581b3c57
commit 10d550d5a2
2 changed files with 166 additions and 458 deletions
-457
View File
@@ -5,463 +5,6 @@
.text
thumb_func_start sub_80C0100
sub_80C0100: @ 80C0100
push {r4,lr}
sub sp, 0x8
ldr r0, _080C011C @ =gUnknown_20399D4
ldr r0, [r0]
ldr r1, _080C0120 @ =0x000047a4
adds r0, r1
ldrb r0, [r0]
cmp r0, 0x8
bhi _080C0202
lsls r0, 2
ldr r1, _080C0124 @ =_080C0128
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_080C011C: .4byte gUnknown_20399D4
_080C0120: .4byte 0x000047a4
_080C0124: .4byte _080C0128
.align 2, 0
_080C0128:
.4byte _080C014C
.4byte _080C0152
.4byte _080C0158
.4byte _080C015E
.4byte _080C016A
.4byte _080C0180
.4byte _080C01D4
.4byte _080C01E0
.4byte _080C01EC
_080C014C:
bl sub_80C08E0
b _080C021A
_080C0152:
bl sub_80C0904
b _080C021A
_080C0158:
bl sub_80C0A6C
b _080C021A
_080C015E:
bl sub_80C0238
lsls r0, 24
cmp r0, 0
beq _080C0228
b _080C021A
_080C016A:
movs r0, 0x1E
str r0, [sp]
movs r0, 0x14
str r0, [sp, 0x4]
movs r0, 0x1
movs r1, 0
movs r2, 0
movs r3, 0
bl FillBgTilemapBufferRect_Palette0
b _080C01BA
_080C0180:
ldr r4, _080C01C4 @ =gUnknown_20399D4
ldr r1, [r4]
ldr r2, _080C01C8 @ =0x0000479b
adds r0, r1, r2
ldrb r0, [r0]
lsls r2, r0, 2
adds r2, r0
lsls r0, r2, 4
subs r0, r2
lsls r0, 4
adds r0, 0x26
adds r1, r0
movs r0, 0
bl sub_80C0CC8
movs r0, 0
bl CopyBgTilemapBufferToVram
ldr r1, [r4]
ldr r2, _080C01CC @ =0x00004796
adds r0, r1, r2
ldrb r0, [r0]
cmp r0, 0
beq _080C021A
ldr r0, _080C01D0 @ =0x000012e6
adds r1, r0
movs r0, 0x1
bl sub_80C0CC8
_080C01BA:
movs r0, 0x1
bl CopyBgTilemapBufferToVram
b _080C021A
.align 2, 0
_080C01C4: .4byte gUnknown_20399D4
_080C01C8: .4byte 0x0000479b
_080C01CC: .4byte 0x00004796
_080C01D0: .4byte 0x000012e6
_080C01D4:
bl sub_80C0B18
movs r0, 0
bl PutWindowTilemap
b _080C021A
_080C01E0:
bl sub_80C0BB0
movs r0, 0x1
bl PutWindowTilemap
b _080C021A
_080C01EC:
movs r0, 0x2
bl sub_80C0E04
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _080C021A
movs r0, 0x1
bl sub_80C0A88
b _080C021A
_080C0202:
movs r0, 0x1
negs r0, r0
movs r1, 0
str r1, [sp]
movs r2, 0x10
movs r3, 0
bl BeginNormalPaletteFade
bl sub_80C03E8
bl sub_80C08F4
_080C021A:
ldr r0, _080C0230 @ =gUnknown_20399D4
ldr r1, [r0]
ldr r2, _080C0234 @ =0x000047a4
adds r1, r2
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
_080C0228:
add sp, 0x8
pop {r4}
pop {r0}
bx r0
.align 2, 0
_080C0230: .4byte gUnknown_20399D4
_080C0234: .4byte 0x000047a4
thumb_func_end sub_80C0100
thumb_func_start sub_80C0238
sub_80C0238: @ 80C0238
push {r4,lr}
sub sp, 0x4
ldr r0, _080C0258 @ =gUnknown_20399D4
ldr r1, [r0]
ldr r2, _080C025C @ =0x000047a8
adds r0, r1, r2
ldrb r0, [r0]
cmp r0, 0x8
bls _080C024C
b _080C03B0
_080C024C:
lsls r0, 2
ldr r1, _080C0260 @ =_080C0264
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_080C0258: .4byte gUnknown_20399D4
_080C025C: .4byte 0x000047a8
_080C0260: .4byte _080C0264
.align 2, 0
_080C0264:
.4byte _080C0288
.4byte _080C0298
.4byte _080C02FC
.4byte _080C0302
.4byte _080C0340
.4byte _080C034E
.4byte _080C0364
.4byte _080C037C
.4byte _080C0394
_080C0288:
ldr r0, _080C0294 @ =gUnknown_83EF23C
movs r1, 0xC0
movs r2, 0x20
bl LoadPalette
b _080C03C8
.align 2, 0
_080C0294: .4byte gUnknown_83EF23C
_080C0298:
ldr r0, _080C02EC @ =gUnknown_83EF2DC
movs r1, 0
movs r2, 0xA0
bl LoadPalette
bl sub_80BFEA0
ldr r0, _080C02F0 @ =gUnknown_20399D4
ldr r0, [r0]
ldr r1, _080C02F4 @ =0x00004796
adds r0, r1
ldrb r0, [r0]
cmp r0, 0
bne _080C02B6
b _080C03C8
_080C02B6:
ldr r4, _080C02F8 @ =gUnknown_83EF23C + 0x1E
adds r0, r4, 0
movs r1, 0
movs r2, 0x2
bl LoadPalette
adds r0, r4, 0
movs r1, 0x10
movs r2, 0x2
bl LoadPalette
adds r0, r4, 0
movs r1, 0x20
movs r2, 0x2
bl LoadPalette
adds r0, r4, 0
movs r1, 0x30
movs r2, 0x2
bl LoadPalette
adds r0, r4, 0
movs r1, 0x40
movs r2, 0x2
bl LoadPalette
b _080C03C8
.align 2, 0
_080C02EC: .4byte gUnknown_83EF2DC
_080C02F0: .4byte gUnknown_20399D4
_080C02F4: .4byte 0x00004796
_080C02F8: .4byte gUnknown_83EF23C + 0x1E
_080C02FC:
bl ResetTempTileDataBuffers
b _080C03C8
_080C0302:
ldr r1, _080C0330 @ =gUnknown_83EF61C
movs r4, 0
str r4, [sp]
movs r0, 0
movs r2, 0
movs r3, 0
bl DecompressAndCopyTileDataToVram
ldr r0, _080C0334 @ =gUnknown_20399D4
ldr r0, [r0]
ldr r2, _080C0338 @ =0x00004796
adds r0, r2
ldrb r0, [r0]
cmp r0, 0
beq _080C03C8
ldr r1, _080C033C @ =gUnknown_83F1978
str r4, [sp]
movs r0, 0x1
movs r2, 0
movs r3, 0
bl DecompressAndCopyTileDataToVram
b _080C03C8
.align 2, 0
_080C0330: .4byte gUnknown_83EF61C
_080C0334: .4byte gUnknown_20399D4
_080C0338: .4byte 0x00004796
_080C033C: .4byte gUnknown_83F1978
_080C0340:
bl FreeTempTileDataBuffersIfPossible
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _080C03C8
b _080C03D6
_080C034E:
ldr r0, _080C035C @ =gUnknown_83F089C
ldr r1, _080C0360 @ =gUnknown_20399D4
ldr r1, [r1]
adds r1, 0x26
bl LZ77UnCompWram
b _080C03C8
.align 2, 0
_080C035C: .4byte gUnknown_83F089C
_080C0360: .4byte gUnknown_20399D4
_080C0364:
ldr r0, _080C0370 @ =gUnknown_83F0AFC
ldr r1, _080C0374 @ =gUnknown_20399D4
ldr r1, [r1]
ldr r2, _080C0378 @ =0x000004d6
b _080C039C
.align 2, 0
_080C0370: .4byte gUnknown_83F0AFC
_080C0374: .4byte gUnknown_20399D4
_080C0378: .4byte 0x000004d6
_080C037C:
ldr r0, _080C0388 @ =gUnknown_83F0C0C
ldr r1, _080C038C @ =gUnknown_20399D4
ldr r1, [r1]
ldr r2, _080C0390 @ =0x00000986
b _080C039C
.align 2, 0
_080C0388: .4byte gUnknown_83F0C0C
_080C038C: .4byte gUnknown_20399D4
_080C0390: .4byte 0x00000986
_080C0394:
ldr r0, _080C03A4 @ =gUnknown_83F0CF0
ldr r1, _080C03A8 @ =gUnknown_20399D4
ldr r1, [r1]
ldr r2, _080C03AC @ =0x00000e36
_080C039C:
adds r1, r2
bl LZ77UnCompWram
b _080C03C8
.align 2, 0
_080C03A4: .4byte gUnknown_83F0CF0
_080C03A8: .4byte gUnknown_20399D4
_080C03AC: .4byte 0x00000e36
_080C03B0:
ldr r0, _080C03C0 @ =gUnknown_83F19A0
ldr r2, _080C03C4 @ =0x000012e6
adds r1, r2
bl LZ77UnCompWram
movs r0, 0x1
b _080C03D8
.align 2, 0
_080C03C0: .4byte gUnknown_83F19A0
_080C03C4: .4byte 0x000012e6
_080C03C8:
ldr r0, _080C03E0 @ =gUnknown_20399D4
ldr r1, [r0]
ldr r0, _080C03E4 @ =0x000047a8
adds r1, r0
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
_080C03D6:
movs r0, 0
_080C03D8:
add sp, 0x4
pop {r4}
pop {r1}
bx r1
.align 2, 0
_080C03E0: .4byte gUnknown_20399D4
_080C03E4: .4byte 0x000047a8
thumb_func_end sub_80C0238
thumb_func_start sub_80C03E8
sub_80C03E8: @ 80C03E8
push {lr}
ldr r0, _080C0404 @ =gUnknown_20399D4
ldr r0, [r0]
ldr r1, _080C0408 @ =0x000047b8
adds r0, r1
ldr r0, [r0]
movs r1, 0
bl CreateTask
ldr r0, _080C040C @ =sub_80C08B4
bl SetMainCallback2
pop {r0}
bx r0
.align 2, 0
_080C0404: .4byte gUnknown_20399D4
_080C0408: .4byte 0x000047b8
_080C040C: .4byte sub_80C08B4
thumb_func_end sub_80C03E8
thumb_func_start sub_80C0410
sub_80C0410: @ 80C0410
push {r4,r5,lr}
bl sub_80C0E20
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
bl sub_80C3514
adds r4, r0, 0
lsls r4, 16
asrs r4, 16
bl sub_80C3508
adds r3, r0, 0
lsls r3, 16
asrs r3, 16
adds r0, r5, 0
movs r1, 0
adds r2, r4, 0
bl sub_80C4164
lsls r0, 24
lsrs r0, 24
cmp r0, 0x63
beq _080C0446
movs r0, 0x1
b _080C0448
_080C0446:
movs r0, 0
_080C0448:
pop {r4,r5}
pop {r1}
bx r1
thumb_func_end sub_80C0410
thumb_func_start sub_80C0450
sub_80C0450: @ 80C0450
push {lr}
bl sub_80C0410
cmp r0, 0
beq _080C04E0
movs r0, 0
bl sub_80C3AC8
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080C0474
movs r0, 0
bl sub_80C3AC8
lsls r0, 24
cmp r0, 0
bne _080C048E
_080C0474:
movs r0, 0x1
bl sub_80C3AC8
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080C0494
movs r0, 0x1
bl sub_80C3AC8
lsls r0, 24
cmp r0, 0
beq _080C0494
_080C048E:
movs r0, 0x65
bl PlaySE
_080C0494:
bl sub_80C3508
lsls r0, 16
lsrs r0, 16
cmp r0, 0x15
bne _080C04C2
bl sub_80C3514
lsls r0, 16
lsrs r0, 16
cmp r0, 0xB
bne _080C04C2
movs r0, 0
bl sub_80C0E04
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _080C04C2
movs r0, 0xE1
bl PlaySE
b _080C04E0
_080C04C2:
bl sub_80C3508
lsls r0, 16
lsrs r0, 16
cmp r0, 0x15
bne _080C04E0
bl sub_80C3514
lsls r0, 16
lsrs r0, 16
cmp r0, 0xD
bne _080C04E0
movs r0, 0xE1
bl PlaySE
_080C04E0:
pop {r0}
bx r0
thumb_func_end sub_80C0450
thumb_func_start sub_80C04E4
sub_80C04E4: @ 80C04E4
push {r4,r5,lr}