Merge remote-tracking branch 'upstream/master'

This commit is contained in:
theo3 2020-08-15 14:19:22 -07:00
commit 2a7a92cf54
70 changed files with 25391 additions and 25991 deletions

View File

@ -89,7 +89,7 @@ sub_0806D0B0: @ 0x0806D0B0
movs r1, #0
str r1, [r0]
movs r0, #0x30
bl sub_0801D7EC
bl LoadGfxGroup
bl sub_0806D110
ldr r5, _0806D0EC @ =gUnk_02002F00
movs r1, #0x80

View File

@ -358,7 +358,7 @@ sub_08019698: @ 0x08019698
strh r0, [r1, #0x32]
_08019700:
movs r0, #0x11
bl sub_0801D7EC
bl LoadGfxGroup
bl sub_080AD90C
bl sub_080AD9B0
bl sub_080AD918
@ -382,7 +382,7 @@ _0801973C: .4byte gUnk_02018EB0
thumb_func_start sub_08019740
sub_08019740: @ 0x08019740
push {lr}
ldr r0, _0801975C @ =gUnk_03000FD0
ldr r0, _0801975C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08019758
@ -396,7 +396,7 @@ sub_08019740: @ 0x08019740
_08019758:
pop {pc}
.align 2, 0
_0801975C: .4byte gUnk_03000FD0
_0801975C: .4byte gFadeControl
_08019760: .4byte gUnk_02018EB0
thumb_func_start sub_08019764
@ -499,7 +499,7 @@ _0801981A:
b _0801982E
_08019824:
ldrh r0, [r4]
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
bl sub_080533CC
_0801982E:
adds r4, #0xc
@ -3726,7 +3726,7 @@ _0801B068:
bne _0801B0BA
cmp r3, #0
bne _0801B0B8
ldr r0, _0801B0B4 @ =gUnk_03000FD0
ldr r0, _0801B0B4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0801B08C
@ -3753,7 +3753,7 @@ _0801B0AC:
b _0801B0BA
.align 2, 0
_0801B0B0: .4byte gUnk_02000CC0
_0801B0B4: .4byte gUnk_03000FD0
_0801B0B4: .4byte gFadeControl
_0801B0B8:
strh r1, [r4, #6]
_0801B0BA:
@ -3793,7 +3793,7 @@ sub_0801B0EC: @ 0x0801B0EC
adds r4, r0, #0
_0801B0F0:
ldr r1, [r4, #4]
ldr r0, _0801B110 @ =gUnk_085A2E80
ldr r0, _0801B110 @ =gGlobalGfxAndPalettes
adds r5, r1, r0
ldrb r2, [r4, #2]
ldrh r3, [r4]
@ -3805,10 +3805,10 @@ _0801B0F0:
beq _0801B114
lsrs r1, r3, #5
adds r0, r5, #0
bl sub_0801D754
bl LoadPalettes
b _0801B122
.align 2, 0
_0801B110: .4byte gUnk_085A2E80
_0801B110: .4byte gGlobalGfxAndPalettes
_0801B114:
movs r0, #0xc0
lsls r0, r0, #0x13

View File

@ -41,9 +41,9 @@ _0801C398:
lsrs r0, r0, #1
strb r0, [r5, #4]
movs r0, #0xc
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r0, #0x10
bl sub_0801D7EC
bl LoadGfxGroup
ldr r4, _0801C478 @ =gUnk_02034CB0
movs r1, #0x80
lsls r1, r1, #4

View File

@ -448,7 +448,7 @@ sub_0801D2B4: @ 0x0801D2B4
sub_0801D2C8: @ 0x0801D2C8
push {r4, lr}
adds r3, r0, #0
ldr r2, _0801D2F8 @ =gUnk_0200B644
ldr r2, _0801D2F8 @ =gUsedPalettes
adds r4, r1, #0
adds r4, #0x10
movs r1, #1
@ -460,7 +460,7 @@ sub_0801D2C8: @ 0x0801D2C8
bls _0801D33C
cmp r3, #0x15
bne _0801D300
ldr r2, _0801D2FC @ =gUnk_020176A0
ldr r2, _0801D2FC @ =gPaletteBuffer
adds r0, r2, #0
adds r0, #0x78
ldrh r0, [r0]
@ -470,21 +470,21 @@ sub_0801D2C8: @ 0x0801D2C8
bl _DmaFill16
b _0801D33C
.align 2, 0
_0801D2F8: .4byte gUnk_0200B644
_0801D2FC: .4byte gUnk_020176A0
_0801D2F8: .4byte gUsedPalettes
_0801D2FC: .4byte gPaletteBuffer
_0801D300:
cmp r3, #0x14
bhi _0801D31C
subs r0, r3, #6
lsls r0, r0, #5
ldr r1, _0801D318 @ =gUnk_020176A0
ldr r1, _0801D318 @ =gPaletteBuffer
adds r0, r0, r1
adds r1, r4, #0
movs r2, #1
bl sub_0801D754
bl LoadPalettes
b _0801D33C
.align 2, 0
_0801D318: .4byte gUnk_020176A0
_0801D318: .4byte gPaletteBuffer
_0801D31C:
ldr r1, _0801D340 @ =gUnk_08133368
adds r0, r3, #0
@ -497,16 +497,16 @@ _0801D31C:
ands r2, r1
ldr r1, _0801D344 @ =0x00FFFFFF
ands r0, r1
ldr r1, _0801D348 @ =gUnk_085A2E80
ldr r1, _0801D348 @ =gGlobalGfxAndPalettes
adds r0, r0, r1
adds r1, r4, #0
bl sub_0801D754
bl LoadPalettes
_0801D33C:
pop {r4, pc}
.align 2, 0
_0801D340: .4byte gUnk_08133368
_0801D344: .4byte 0x00FFFFFF
_0801D348: .4byte gUnk_085A2E80
_0801D348: .4byte gGlobalGfxAndPalettes
thumb_func_start sub_0801D34C
sub_0801D34C: @ 0x0801D34C
@ -704,7 +704,7 @@ sub_0801D48C: @ 0x0801D48C
rsbs r0, r0, #0
cmp r5, r0
beq _0801D4F8
ldr r2, _0801D510 @ =gUnk_020176A0
ldr r2, _0801D510 @ =gPaletteBuffer
lsls r0, r3, #5
movs r1, #0x80
lsls r1, r1, #2
@ -741,7 +741,7 @@ _0801D4C8:
cmp r5, r0
bne _0801D4C8
_0801D4F8:
ldr r0, _0801D514 @ =gUnk_0200B644
ldr r0, _0801D514 @ =gUsedPalettes
ldr r1, [r0]
ldr r2, _0801D518 @ =0xFFFF0000
orrs r1, r2
@ -752,8 +752,8 @@ _0801D4F8:
pop {r4, r5, r6, r7, pc}
.align 2, 0
_0801D50C: .4byte gUnk_02001A00
_0801D510: .4byte gUnk_020176A0
_0801D514: .4byte gUnk_0200B644
_0801D510: .4byte gPaletteBuffer
_0801D514: .4byte gUsedPalettes
_0801D518: .4byte 0xFFFF0000
thumb_func_start sub_0801D51C

View File

@ -1,81 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start LoadPalettesByPaletteGroupIndex
LoadPalettesByPaletteGroupIndex: @ 0x0801D714
push {r4, lr}
ldr r1, _0801D748 @ =gUnk_080FF850
lsls r0, r0, #2
adds r0, r0, r1
ldr r4, [r0]
_0801D71E:
ldrb r3, [r4, #2]
ldrb r0, [r4, #3]
movs r2, #0xf
ands r2, r0
cmp r2, #0
bne _0801D72C
movs r2, #0x10
_0801D72C:
ldrh r0, [r4]
lsls r0, r0, #5
ldr r1, _0801D74C @ =gUnk_085A2E80
adds r0, r0, r1
adds r1, r3, #0
bl sub_0801D754
ldrb r1, [r4, #3]
movs r0, #0x80
ands r0, r1
cmp r0, #0
beq _0801D750
adds r4, #4
b _0801D71E
.align 2, 0
_0801D748: .4byte gUnk_080FF850
_0801D74C: .4byte gUnk_085A2E80
_0801D750:
pop {r4, pc}
.align 2, 0
thumb_func_start sub_0801D754
sub_0801D754: @ 0x0801D754
push {r4, r5, r6, r7, lr}
adds r6, r0, #0
lsls r5, r2, #5
movs r3, #1
lsls r3, r1
subs r2, #1
ldr r4, _0801D790 @ =gUnk_0200B644
ldr r7, _0801D794 @ =gUnk_020176A0
cmp r2, #0
ble _0801D772
_0801D768:
lsls r0, r3, #1
orrs r3, r0
subs r2, #1
cmp r2, #0
bgt _0801D768
_0801D772:
ldr r0, [r4]
orrs r0, r3
str r0, [r4]
lsls r0, r1, #5
adds r0, r0, r7
ldr r2, _0801D798 @ =0x040000D4
str r6, [r2]
str r0, [r2, #4]
lsrs r0, r5, #2
movs r1, #0x84
lsls r1, r1, #0x18
orrs r0, r1
str r0, [r2, #8]
ldr r0, [r2, #8]
pop {r4, r5, r6, r7, pc}
.align 2, 0
_0801D790: .4byte gUnk_0200B644
_0801D794: .4byte gUnk_020176A0
_0801D798: .4byte 0x040000D4

View File

@ -4,142 +4,6 @@
.syntax unified
.text
thumb_func_start sub_0801D79C
sub_0801D79C: @ 0x0801D79C
ldr r3, _0801D7B4 @ =gUnk_020176A0
lsls r2, r0, #1
adds r2, r2, r3
strh r1, [r2]
ldr r2, _0801D7B8 @ =gUnk_0200B644
lsrs r0, r0, #4
movs r1, #1
lsls r1, r0
ldr r0, [r2]
orrs r0, r1
str r0, [r2]
bx lr
.align 2, 0
_0801D7B4: .4byte gUnk_020176A0
_0801D7B8: .4byte gUnk_0200B644
thumb_func_start sub_0801D7BC
sub_0801D7BC: @ 0x0801D7BC
push {lr}
adds r2, r0, #0
cmp r1, #0
beq _0801D7D4
ldr r1, _0801D7CC @ =gScreen
ldr r0, _0801D7D0 @ =0x0000E0FF
b _0801D7D8
.align 2, 0
_0801D7CC: .4byte gScreen
_0801D7D0: .4byte 0x0000E0FF
_0801D7D4:
ldr r1, _0801D7E4 @ =gScreen
ldr r0, _0801D7E8 @ =0x0000FFFF
_0801D7D8:
strh r0, [r1, #6]
movs r0, #0
adds r1, r2, #0
bl sub_0801D79C
pop {pc}
.align 2, 0
_0801D7E4: .4byte gScreen
_0801D7E8: .4byte 0x0000FFFF
thumb_func_start sub_0801D7EC
sub_0801D7EC: @ 0x0801D7EC
push {r4, r5, r6, lr}
ldr r1, _0801D814 @ =gUnk_08100AA8
lsls r0, r0, #2
adds r0, r0, r1
ldr r4, [r0]
movs r6, #0x80
lsls r6, r6, #0x12
ldr r5, _0801D818 @ =0x040000D4
_0801D7FC:
movs r2, #0
ldrb r1, [r4, #3]
movs r0, #0xf
ands r1, r0
cmp r1, #0xd
beq _0801D894
cmp r1, #0xd
bhi _0801D81C
cmp r1, #7
beq _0801D842
b _0801D836
.align 2, 0
_0801D814: .4byte gUnk_08100AA8
_0801D818: .4byte 0x040000D4
_0801D81C:
cmp r1, #0xe
beq _0801D826
cmp r1, #0xf
beq _0801D82E
b _0801D836
_0801D826:
ldrb r0, [r6, #7]
cmp r0, #1
bls _0801D83E
b _0801D842
_0801D82E:
ldrb r0, [r6, #7]
cmp r0, #0
beq _0801D83E
b _0801D842
_0801D836:
ldrb r0, [r6, #7]
cmp r1, r0
bne _0801D83E
movs r2, #1
_0801D83E:
cmp r2, #0
beq _0801D888
_0801D842:
ldr r0, [r4]
ldr r1, _0801D868 @ =0x00FFFFFF
ands r0, r1
ldr r1, _0801D86C @ =gUnk_085A2E80
adds r2, r0, r1
ldr r1, [r4, #4]
ldr r0, [r4, #8]
movs r3, #0x80
lsls r3, r3, #0x18
cmp r0, #0
bge _0801D87C
ldr r0, _0801D870 @ =0x05FFFFFF
cmp r1, r0
bls _0801D874
adds r0, r2, #0
bl LZ77UnCompVram
b _0801D888
.align 2, 0
_0801D868: .4byte 0x00FFFFFF
_0801D86C: .4byte gUnk_085A2E80
_0801D870: .4byte 0x05FFFFFF
_0801D874:
adds r0, r2, #0
bl LZ77UnCompWram
b _0801D888
_0801D87C:
str r2, [r5]
str r1, [r5, #4]
lsrs r0, r0, #1
orrs r0, r3
str r0, [r5, #8]
ldr r0, [r5, #8]
_0801D888:
ldrb r1, [r4, #3]
movs r0, #0x80
ands r1, r0
adds r4, #0xc
cmp r1, #0
bne _0801D7FC
_0801D894:
pop {r4, r5, r6, pc}
.align 2, 0
thumb_func_start sub_0801D898
sub_0801D898: @ 0x0801D898
@ -434,7 +298,7 @@ sub_0801DA90: @ 0x0801DA90
strb r0, [r1]
ldr r0, _0801DAF0 @ =gUnk_03003DE0
strb r3, [r0]
ldr r0, _0801DAF4 @ =gUnk_03000FD0
ldr r0, _0801DAF4 @ =gFadeControl
strb r3, [r0]
ldr r5, _0801DAF8 @ =gScreen
adds r0, r5, #0
@ -469,7 +333,7 @@ sub_0801DA90: @ 0x0801DA90
.align 2, 0
_0801DAEC: .4byte gUnk_03001000
_0801DAF0: .4byte gUnk_03003DE0
_0801DAF4: .4byte gUnk_03000FD0
_0801DAF4: .4byte gFadeControl
_0801DAF8: .4byte gScreen
_0801DAFC: .4byte 0x040000B0
_0801DB00: .4byte 0x0000C5FF

View File

@ -37,16 +37,16 @@ _0804ABA4:
ldr r0, _0804AC0C @ =gUnk_080D4138
adds r4, r4, r0
ldrb r0, [r4]
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
ldrb r0, [r4, #1]
bl sub_0801D7EC
bl LoadGfxGroup
ldr r0, _0804AC10 @ =gUnk_02017700
movs r2, #0x90
lsls r2, r2, #2
adds r1, r0, r2
movs r2, #0x20
bl sub_0801D66C
ldr r2, _0804AC14 @ =gUnk_0200B644
ldr r2, _0804AC14 @ =gUsedPalettes
ldr r0, [r2]
movs r1, #0x80
lsls r1, r1, #0xe
@ -75,7 +75,7 @@ _0804AC04: .4byte gArea
_0804AC08: .4byte gUnk_02032EC0
_0804AC0C: .4byte gUnk_080D4138
_0804AC10: .4byte gUnk_02017700
_0804AC14: .4byte gUnk_0200B644
_0804AC14: .4byte gUsedPalettes
_0804AC18: .4byte gUnk_080D4110
thumb_func_start sub_0804AC1C
@ -168,7 +168,7 @@ _0804ACC6:
thumb_func_start sub_0804ACC8
sub_0804ACC8: @ 0x0804ACC8
push {lr}
ldr r0, _0804ACEC @ =gUnk_03000FD0
ldr r0, _0804ACEC @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0804ACE8
@ -183,7 +183,7 @@ sub_0804ACC8: @ 0x0804ACC8
_0804ACE8:
pop {pc}
.align 2, 0
_0804ACEC: .4byte gUnk_03000FD0
_0804ACEC: .4byte gFadeControl
_0804ACF0: .4byte gArea
_0804ACF4: .4byte gUnk_02032EDC

View File

@ -70,13 +70,13 @@ _0804B190:
bl SetTileType
_0804B198:
adds r4, #8
ldr r0, _0804B1A8 @ =gUnk_020176A0
ldr r0, _0804B1A8 @ =gPaletteBuffer
cmp r4, r0
blo _0804B170
pop {r4, pc}
.align 2, 0
_0804B1A4: .4byte gUnk_02017660
_0804B1A8: .4byte gUnk_020176A0
_0804B1A8: .4byte gPaletteBuffer
thumb_func_start LoadRoomTileEntities
LoadRoomTileEntities: @ 0x0804B1AC

View File

@ -9,7 +9,7 @@
sub_0804FF98: @ 0x0804FF98
push {r4, r5, r6, r7, lr}
ldr r6, _0804FFD4 @ =gUnk_020354C0
ldr r1, _0804FFD8 @ =gUnk_0200B644
ldr r1, _0804FFD8 @ =gUsedPalettes
ldr r4, [r1]
movs r0, #0
str r0, [r1]
@ -22,7 +22,7 @@ _0804FFAC:
ands r0, r4
cmp r0, #0
beq _0804FFC6
ldr r0, _0804FFE0 @ =gUnk_020176A0
ldr r0, _0804FFE0 @ =gPaletteBuffer
adds r0, r5, r0
movs r2, #0xa0
lsls r2, r2, #0x13
@ -40,14 +40,14 @@ _0804FFD0:
pop {r4, r5, r6, r7, pc}
.align 2, 0
_0804FFD4: .4byte gUnk_020354C0
_0804FFD8: .4byte gUnk_0200B644
_0804FFD8: .4byte gUsedPalettes
_0804FFDC: .4byte gUnk_03005E98
_0804FFE0: .4byte gUnk_020176A0
_0804FFE0: .4byte gPaletteBuffer
thumb_func_start sub_0804FFE4
sub_0804FFE4: @ 0x0804FFE4
push {r4, lr}
ldr r4, _08050000 @ =gUnk_03000FD0
ldr r4, _08050000 @ =gFadeControl
adds r0, r4, #0
movs r1, #0x1c
bl _DmaZero
@ -59,5 +59,5 @@ sub_0804FFE4: @ 0x0804FFE4
str r0, [r4, #4]
pop {r4, pc}
.align 2, 0
_08050000: .4byte gUnk_03000FD0
_08050000: .4byte gFadeControl
_08050004: .4byte gUnk_020354C0

View File

@ -8,7 +8,7 @@
thumb_func_start sub_08050154
sub_08050154: @ 0x08050154
push {r4, r5, r6, lr}
ldr r4, _08050180 @ =gUnk_03000FD0
ldr r4, _08050180 @ =gFadeControl
ldrh r0, [r4, #8]
movs r5, #0x1c
ands r5, r0
@ -30,7 +30,7 @@ sub_08050154: @ 0x08050154
strh r2, [r4, #0xc]
b _080501B8
.align 2, 0
_08050180: .4byte gUnk_03000FD0
_08050180: .4byte gFadeControl
_08050184:
mvns r0, r5
adds r0, #1
@ -86,11 +86,11 @@ _080501DA:
movs r2, #0xc
ldrsh r5, [r3, r2]
_080501DE:
ldr r0, _080501F8 @ =gUnk_03000FD0
ldr r0, _080501F8 @ =gFadeControl
ldr r2, [r0, #4]
ldr r1, _080501FC @ =gUnk_020354C0
movs r4, #0
ldr r7, _08050200 @ =gUnk_0200B644
ldr r7, _08050200 @ =gUsedPalettes
movs r6, #1
_080501EA:
adds r0, r2, #0
@ -101,9 +101,9 @@ _080501EA:
strh r5, [r1, #2]
b _08050208
.align 2, 0
_080501F8: .4byte gUnk_03000FD0
_080501F8: .4byte gFadeControl
_080501FC: .4byte gUnk_020354C0
_08050200: .4byte gUnk_0200B644
_08050200: .4byte gUsedPalettes
_08050204:
strb r0, [r1]
strh r0, [r1, #2]
@ -198,7 +198,7 @@ sub_080502A4: @ 0x080502A4
ands r0, r1
cmp r0, #0
beq _080502E4
ldr r4, _080502E0 @ =gUnk_03000FD0
ldr r4, _080502E0 @ =gFadeControl
ldrh r0, [r4, #0x10]
ldrh r1, [r4, #0xa]
subs r0, r0, r1
@ -223,9 +223,9 @@ _080502C4:
movs r0, #0
b _08050316
.align 2, 0
_080502E0: .4byte gUnk_03000FD0
_080502E0: .4byte gFadeControl
_080502E4:
ldr r4, _08050310 @ =gUnk_03000FD0
ldr r4, _08050310 @ =gFadeControl
ldrh r0, [r4, #0xa]
ldrh r2, [r4, #0x10]
adds r0, r0, r2
@ -245,7 +245,7 @@ _080502E4:
movs r0, #0
b _08050316
.align 2, 0
_08050310: .4byte gUnk_03000FD0
_08050310: .4byte gFadeControl
_08050314:
movs r0, #1
_08050316:
@ -321,7 +321,7 @@ _080503A4: .4byte gScreen
thumb_func_start sub_080503A8
sub_080503A8: @ 0x080503A8
push {lr}
bl sub_0801D7EC
bl LoadGfxGroup
ldr r1, _080503B8 @ =gScreen
movs r0, #1
strh r0, [r1, #0x1a]
@ -370,7 +370,7 @@ _080503FE:
lsls r0, r0, #0x12
strb r2, [r0, #5]
strb r1, [r0, #6]
ldr r1, _08050418 @ =gUnk_0200B644
ldr r1, _08050418 @ =gUsedPalettes
movs r0, #1
rsbs r0, r0, #0
str r0, [r1]
@ -378,7 +378,7 @@ _080503FE:
.align 2, 0
_08050410: .4byte 0x000004B4
_08050414: .4byte gUnk_02019EEC
_08050418: .4byte gUnk_0200B644
_08050418: .4byte gUsedPalettes
thumb_func_start sub_0805041C
sub_0805041C: @ 0x0805041C
@ -405,8 +405,8 @@ _08050444: .4byte 0x000004B4
_08050448: .4byte gUnk_02019EEC
_0805044C: .4byte gUnk_02002A40
thumb_func_start sub_08050450
sub_08050450: @ 0x08050450
thumb_func_start HandleChooseFileScreen
HandleChooseFileScreen: @ 0x08050450
push {r4, lr}
bl sub_080AD90C
ldr r1, _080504D8 @ =gUnk_080FC8A4
@ -527,7 +527,7 @@ _08050546:
movs r0, #5
bl sub_080503A8
movs r0, #9
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r4, #0
_08050586:
movs r0, #0x48
@ -588,7 +588,7 @@ nullsub_479: @ 0x08050608
thumb_func_start sub_0805060C
sub_0805060C: @ 0x0805060C
push {lr}
ldr r0, _08050620 @ =gUnk_03000FD0
ldr r0, _08050620 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805061C
@ -597,7 +597,7 @@ sub_0805060C: @ 0x0805060C
_0805061C:
pop {pc}
.align 2, 0
_08050620: .4byte gUnk_03000FD0
_08050620: .4byte gFadeControl
thumb_func_start sub_08050624
sub_08050624: @ 0x08050624
@ -676,35 +676,35 @@ _080506AA:
lsls r0, r0, #1
adds r0, r0, r1
ldrh r4, [r0]
ldr r0, _080506F8 @ =gUnk_085A2E80
ldr r0, _080506F8 @ =gGlobalGfxAndPalettes
adds r4, r4, r0
ldr r1, _080506FC @ =0x00011AA0
adds r0, r4, r1
movs r1, #0xb
movs r2, #1
bl sub_0801D754
bl LoadPalettes
ldr r1, _08050700 @ =0x00011BA0
adds r0, r4, r1
movs r1, #0xc
movs r2, #1
bl sub_0801D754
bl LoadPalettes
ldr r1, _08050704 @ =0x00011CA0
adds r0, r4, r1
movs r1, #0xd
movs r2, #1
bl sub_0801D754
bl LoadPalettes
ldr r0, _08050708 @ =0x00011DA0
adds r4, r4, r0
adds r0, r4, #0
movs r1, #0xe
movs r2, #1
bl sub_0801D754
bl LoadPalettes
_080506EE:
pop {r4, pc}
.align 2, 0
_080506F0: .4byte gUnk_02019EE0
_080506F4: .4byte gUnk_080FC8DE
_080506F8: .4byte gUnk_085A2E80
_080506F8: .4byte gGlobalGfxAndPalettes
_080506FC: .4byte 0x00011AA0
_08050700: .4byte 0x00011BA0
_08050704: .4byte 0x00011CA0
@ -906,7 +906,7 @@ _08050884: .4byte gMenu
thumb_func_start sub_08050888
sub_08050888: @ 0x08050888
push {r4, lr}
ldr r0, _080508C4 @ =gUnk_03000FD0
ldr r0, _080508C4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080508DC
@ -934,7 +934,7 @@ sub_08050888: @ 0x08050888
movs r0, #1
b _080508DA
.align 2, 0
_080508C4: .4byte gUnk_03000FD0
_080508C4: .4byte gFadeControl
_080508C8: .4byte gUnk_02019EE0
_080508CC: .4byte gMenu
_080508D0:
@ -3104,8 +3104,8 @@ sub_0805194C: @ 0x0805194C
_08051980: .4byte gUnk_02019EE0
_08051984: .4byte 0x000004B4
thumb_func_start sub_08051988
sub_08051988: @ 0x08051988
thumb_func_start HandleGameplayScreen
HandleGameplayScreen: @ 0x08051988
push {lr}
ldr r1, _080519A4 @ =gScreenTransition
ldr r0, [r1]
@ -3127,7 +3127,7 @@ _080519AC: .4byte gUnk_03001000
thumb_func_start sub_080519B0
sub_080519B0: @ 0x080519B0
push {r4, r5, lr}
ldr r0, _08051A04 @ =gUnk_03000FD0
ldr r0, _08051A04 @ =gFadeControl
ldrb r5, [r0]
cmp r5, #0
bne _08051A02
@ -3159,7 +3159,7 @@ sub_080519B0: @ 0x080519B0
_08051A02:
pop {r4, r5, pc}
.align 2, 0
_08051A04: .4byte gUnk_03000FD0
_08051A04: .4byte gFadeControl
_08051A08: .4byte gScreenTransition
_08051A0C: .4byte gUnk_02002AC8
_08051A10: .4byte gUnk_03001000
@ -3169,7 +3169,7 @@ sub_08051A14: @ 0x08051A14
push {lr}
movs r0, #1
bl sub_0801DA90
ldr r1, _08051A70 @ =gUnk_03000FD0
ldr r1, _08051A70 @ =gFadeControl
movs r0, #1
rsbs r0, r0, #0
str r0, [r1, #4]
@ -3202,7 +3202,7 @@ sub_08051A14: @ 0x08051A14
strb r0, [r1, #3]
pop {pc}
.align 2, 0
_08051A70: .4byte gUnk_03000FD0
_08051A70: .4byte gFadeControl
_08051A74: .4byte gUnk_03000000
_08051A78: .4byte 0x00000B74
_08051A7C: .4byte gUnk_02032EC0
@ -3272,7 +3272,7 @@ _08051B02:
bl sub_08078CB4
bl sub_080AD9B0
bl sub_080AD918
ldr r0, _08051BB0 @ =gUnk_03000FD0
ldr r0, _08051BB0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08051BAE
@ -3332,7 +3332,7 @@ _08051B96:
_08051BAE:
pop {r4, r5, pc}
.align 2, 0
_08051BB0: .4byte gUnk_03000FD0
_08051BB0: .4byte gFadeControl
_08051BB4: .4byte gRoomControls
_08051BB8: .4byte gArea
_08051BBC: .4byte 0x00000864
@ -3442,7 +3442,7 @@ sub_08051CA8: @ 0x08051CA8
bl sub_0805291C
bl sub_080528B4
bl sub_080AD918
ldr r0, _08051CEC @ =gUnk_03000FD0
ldr r0, _08051CEC @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08051CEA
@ -3450,7 +3450,7 @@ sub_08051CA8: @ 0x08051CA8
_08051CEA:
pop {pc}
.align 2, 0
_08051CEC: .4byte gUnk_03000FD0
_08051CEC: .4byte gFadeControl
thumb_func_start sub_08051CF0
sub_08051CF0: @ 0x08051CF0
@ -3462,7 +3462,7 @@ sub_08051CF0: @ 0x08051CF0
movs r6, #1
strb r6, [r5, #0xb]
bl sub_080AD918
ldr r0, _08051D24 @ =gUnk_03000FD0
ldr r0, _08051D24 @ =gFadeControl
ldrb r4, [r0]
cmp r4, #0
bne _08051D1E
@ -3476,7 +3476,7 @@ _08051D1E:
pop {r4, r5, r6, pc}
.align 2, 0
_08051D20: .4byte gUnk_03001000
_08051D24: .4byte gUnk_03000FD0
_08051D24: .4byte gFadeControl
_08051D28: .4byte gScreenTransition
thumb_func_start sub_08051D2C
@ -3787,7 +3787,7 @@ sub_08051F9C: @ 0x08051F9C
ldr r1, _08051FE8 @ =gUnk_02000070
movs r0, #1
strb r0, [r1]
ldr r0, _08051FEC @ =gUnk_0200B644
ldr r0, _08051FEC @ =gUsedPalettes
str r6, [r0]
ldrh r0, [r5]
orrs r4, r0
@ -3799,7 +3799,7 @@ sub_08051F9C: @ 0x08051F9C
_08051FE0: .4byte gScreen
_08051FE4: .4byte gRoomControls
_08051FE8: .4byte gUnk_02000070
_08051FEC: .4byte gUnk_0200B644
_08051FEC: .4byte gUsedPalettes
thumb_func_start sub_08051FF0
sub_08051FF0: @ 0x08051FF0
@ -3839,12 +3839,12 @@ sub_08052010: @ 0x08052010
bl _DmaZero
bl sub_080A4D34
movs r0, #0xa
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r0, #0
movs r1, #0
bl sub_0801D79C
movs r0, #4
bl sub_0801D7EC
bl LoadGfxGroup
movs r0, #0xc0
lsls r0, r0, #0x13
movs r1, #0x20
@ -3875,8 +3875,8 @@ _08052088: .4byte gScreen
_0805208C: .4byte 0x00001C01
_08052090: .4byte 0x00001D05
thumb_func_start sub_08052094
sub_08052094: @ 0x08052094
thumb_func_start HandleGameOverScreen
HandleGameOverScreen: @ 0x08052094
push {r4, lr}
ldr r1, _080520BC @ =gUnk_080FCA70
ldr r4, _080520C0 @ =gUnk_03001000
@ -3911,7 +3911,7 @@ _080520D4: .4byte gUnk_03001000
thumb_func_start sub_080520D8
sub_080520D8: @ 0x080520D8
push {r4, lr}
ldr r4, _08052118 @ =gUnk_03000FD0
ldr r4, _08052118 @ =gFadeControl
ldrb r0, [r4]
cmp r0, #0
bne _08052114
@ -3939,7 +3939,7 @@ sub_080520D8: @ 0x080520D8
_08052114:
pop {r4, pc}
.align 2, 0
_08052118: .4byte gUnk_03000FD0
_08052118: .4byte gFadeControl
_0805211C: .4byte gMenu
_08052120: .4byte gUnk_02002A40
_08052124: .4byte gUnk_03001000
@ -3948,7 +3948,7 @@ _08052128: .4byte 0xFFFF0001
thumb_func_start sub_0805212C
sub_0805212C: @ 0x0805212C
push {r4, lr}
ldr r4, _0805214C @ =gUnk_03000FD0
ldr r4, _0805214C @ =gFadeControl
ldrb r0, [r4]
cmp r0, #0
bne _0805219C
@ -3964,7 +3964,7 @@ sub_0805212C: @ 0x0805212C
strb r0, [r1, #0x10]
b _0805219C
.align 2, 0
_0805214C: .4byte gUnk_03000FD0
_0805214C: .4byte gFadeControl
_08052150: .4byte gUnk_03001000
_08052154: .4byte gMenu
_08052158:
@ -4005,7 +4005,7 @@ _0805219C:
thumb_func_start sub_080521A0
sub_080521A0: @ 0x080521A0
push {r4, lr}
ldr r0, _080521C4 @ =gUnk_03000FD0
ldr r0, _080521C4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
beq _080521AC
@ -4024,7 +4024,7 @@ _080521B8:
ldr r0, [r0]
mov pc, r0
.align 2, 0
_080521C4: .4byte gUnk_03000FD0
_080521C4: .4byte gFadeControl
_080521C8: .4byte gMenu
_080521CC: .4byte _080521D0
_080521D0: @ jump table
@ -4043,13 +4043,13 @@ _080521E4:
movs r0, #0
movs r1, #0
bl sub_08052418
ldr r1, _08052204 @ =gUnk_03000FD0
ldr r1, _08052204 @ =gFadeControl
movs r0, #1
rsbs r0, r0, #0
str r0, [r1, #4]
b _080522E8
.align 2, 0
_08052204: .4byte gUnk_03000FD0
_08052204: .4byte gFadeControl
_08052208:
ldrh r0, [r2, #8]
cmp r0, #0
@ -4262,7 +4262,7 @@ _0805238C:
.align 2, 0
_080523A8: .4byte gMenu
_080523AC:
ldr r0, _080523C4 @ =gUnk_03000FD0
ldr r0, _080523C4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080523CC
@ -4273,7 +4273,7 @@ _080523AC:
bl InitScreen
b _080523CC
.align 2, 0
_080523C4: .4byte gUnk_03000FD0
_080523C4: .4byte gFadeControl
_080523C8:
bl DoSoftReset
_080523CC:

View File

@ -158,19 +158,19 @@ sub_080527FC: @ 0x080527FC
adds r0, r4, #0
bl sub_0801AE44
ldr r0, _08052830 @ =gUnk_02024090
ldr r1, _08052834 @ =gUnk_020176A0
ldr r1, _08052834 @ =gPaletteBuffer
movs r2, #0x80
lsls r2, r2, #3
bl sub_0801D66C
ldr r1, _08052838 @ =gUnk_0200B644
ldr r1, _08052838 @ =gUsedPalettes
movs r0, #1
rsbs r0, r0, #0
str r0, [r1]
pop {r4, pc}
.align 2, 0
_08052830: .4byte gUnk_02024090
_08052834: .4byte gUnk_020176A0
_08052838: .4byte gUnk_0200B644
_08052834: .4byte gPaletteBuffer
_08052838: .4byte gUsedPalettes
thumb_func_start sub_0805283C
sub_0805283C: @ 0x0805283C
@ -1582,21 +1582,21 @@ sub_08053320: @ 0x08053320
lsls r1, r1, #5
bl _DmaZero
movs r0, #0x10
bl sub_0801D7EC
bl LoadGfxGroup
movs r0, #0x17
bl sub_0801D7EC
bl LoadGfxGroup
ldr r0, _0805338C @ =gRoomControls
ldrb r0, [r0, #4]
cmp r0, #4
bne _08053362
movs r0, #0x1a
bl sub_0801D7EC
bl LoadGfxGroup
_08053362:
bl sub_08053390
movs r0, #0xb
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r0, #0xc
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r0, #0
movs r1, #0
bl sub_0801D79C
@ -1619,13 +1619,13 @@ sub_08053390: @ 0x08053390
movs r1, #0x18
_080533A0:
adds r0, r1, #0
bl sub_0801D7EC
bl LoadGfxGroup
movs r0, #0xa
bl GetInventoryValue
cmp r0, #0
beq _080533B6
movs r0, #0x1d
bl sub_0801D7EC
bl LoadGfxGroup
_080533B6:
movs r0, #0xc
bl GetInventoryValue
@ -1635,7 +1635,7 @@ _080533B6:
movs r1, #0x1c
_080533C4:
adds r0, r1, #0
bl sub_0801D7EC
bl LoadGfxGroup
pop {pc}
thumb_func_start sub_080533CC
@ -1659,7 +1659,7 @@ sub_080533CC: @ 0x080533CC
strh r2, [r1]
ldrh r0, [r0, #2]
strh r0, [r1, #2]
ldr r2, _08053408 @ =gUnk_0200B644
ldr r2, _08053408 @ =gUsedPalettes
ldr r0, [r2]
movs r1, #8
orrs r0, r1
@ -1668,7 +1668,7 @@ sub_080533CC: @ 0x080533CC
.align 2, 0
_08053400: .4byte gUnk_020178E0
_08053404: .4byte 0xFFFFFE00
_08053408: .4byte gUnk_0200B644
_08053408: .4byte gUsedPalettes
thumb_func_start sub_0805340C
sub_0805340C: @ 0x0805340C
@ -1923,7 +1923,7 @@ _080535F0: .4byte gUnk_080FCB94
thumb_func_start sub_080535F4
sub_080535F4: @ 0x080535F4
push {lr}
ldr r0, _0805360C @ =gUnk_03000FD0
ldr r0, _0805360C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053608
@ -1934,7 +1934,7 @@ sub_080535F4: @ 0x080535F4
_08053608:
pop {pc}
.align 2, 0
_0805360C: .4byte gUnk_03000FD0
_0805360C: .4byte gFadeControl
_08053610: .4byte gMenu
thumb_func_start nullsub_481
@ -2190,7 +2190,7 @@ _080537FC: .4byte 0x00001DC1
thumb_func_start sub_08053800
sub_08053800: @ 0x08053800
push {r4, r5, lr}
ldr r0, _0805387C @ =gUnk_03000FD0
ldr r0, _0805387C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805387A
@ -2215,10 +2215,10 @@ sub_08053800: @ 0x08053800
strb r2, [r1, #7]
adds r0, r5, #0
adds r0, #0x8a
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
adds r0, r5, #0
adds r0, #0x3a
bl sub_0801D7EC
bl LoadGfxGroup
ldr r0, _08053888 @ =gUnk_02021F30
movs r1, #0x80
lsls r1, r1, #4
@ -2248,7 +2248,7 @@ sub_08053800: @ 0x08053800
_0805387A:
pop {r4, r5, pc}
.align 2, 0
_0805387C: .4byte gUnk_03000FD0
_0805387C: .4byte gFadeControl
_08053880: .4byte gMenu
_08053884: .4byte gUnk_080FCCB4
_08053888: .4byte gUnk_02021F30
@ -2258,7 +2258,7 @@ _08053890: .4byte gScreen
thumb_func_start sub_08053894
sub_08053894: @ 0x08053894
push {r4, lr}
ldr r0, _080538B4 @ =gUnk_03000FD0
ldr r0, _080538B4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080538F8
@ -2274,7 +2274,7 @@ sub_08053894: @ 0x08053894
strh r0, [r4, #0xa]
b _080538E4
.align 2, 0
_080538B4: .4byte gUnk_03000FD0
_080538B4: .4byte gFadeControl
_080538B8: .4byte gMenu
_080538BC:
ldr r0, _080538FC @ =gScreenTransition
@ -2316,7 +2316,7 @@ _08053900: .4byte gScreen
thumb_func_start sub_08053904
sub_08053904: @ 0x08053904
push {r4, lr}
ldr r0, _08053924 @ =gUnk_03000FD0
ldr r0, _08053924 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053968
@ -2332,7 +2332,7 @@ sub_08053904: @ 0x08053904
strh r0, [r4, #0xa]
b _08053954
.align 2, 0
_08053924: .4byte gUnk_03000FD0
_08053924: .4byte gFadeControl
_08053928: .4byte gMenu
_0805392C:
ldr r0, _0805396C @ =gScreenTransition
@ -2374,7 +2374,7 @@ _08053970: .4byte gScreen
thumb_func_start sub_08053974
sub_08053974: @ 0x08053974
push {lr}
ldr r0, _080539AC @ =gUnk_03000FD0
ldr r0, _080539AC @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080539A8
@ -2396,7 +2396,7 @@ sub_08053974: @ 0x08053974
_080539A8:
pop {pc}
.align 2, 0
_080539AC: .4byte gUnk_03000FD0
_080539AC: .4byte gFadeControl
_080539B0: .4byte gUnk_080FCBC4
_080539B4: .4byte gMenu
@ -2432,7 +2432,7 @@ _080539F0: .4byte gMenu
thumb_func_start sub_080539F4
sub_080539F4: @ 0x080539F4
push {lr}
ldr r0, _08053A14 @ =gUnk_03000FD0
ldr r0, _08053A14 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053A10
@ -2447,7 +2447,7 @@ sub_080539F4: @ 0x080539F4
_08053A10:
pop {pc}
.align 2, 0
_08053A14: .4byte gUnk_03000FD0
_08053A14: .4byte gFadeControl
_08053A18: .4byte gMenu
thumb_func_start sub_08053A1C
@ -2513,7 +2513,7 @@ _08053A8C: .4byte gMenu
thumb_func_start sub_08053A90
sub_08053A90: @ 0x08053A90
push {lr}
ldr r0, _08053AA8 @ =gUnk_03000FD0
ldr r0, _08053AA8 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053AA4
@ -2524,7 +2524,7 @@ sub_08053A90: @ 0x08053A90
_08053AA4:
pop {pc}
.align 2, 0
_08053AA8: .4byte gUnk_03000FD0
_08053AA8: .4byte gFadeControl
_08053AAC: .4byte gUnk_02032EC0
thumb_func_start sub_08053AB0
@ -2878,7 +2878,7 @@ _08053D5C:
movs r2, #1
bl SetTileType
_08053D72:
ldr r0, _08053D8C @ =gUnk_03000FD0
ldr r0, _08053D8C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053D86
@ -2892,7 +2892,7 @@ _08053D86:
pop {r4, pc}
.align 2, 0
_08053D88: .4byte gMenu
_08053D8C: .4byte gUnk_03000FD0
_08053D8C: .4byte gFadeControl
thumb_func_start sub_08053D90
sub_08053D90: @ 0x08053D90
@ -2917,7 +2917,7 @@ _08053DB0: .4byte gMenu
thumb_func_start sub_08053DB4
sub_08053DB4: @ 0x08053DB4
push {r4, r5, lr}
ldr r0, _08053E20 @ =gUnk_03000FD0
ldr r0, _08053E20 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053E1C
@ -2963,7 +2963,7 @@ sub_08053DB4: @ 0x08053DB4
_08053E1C:
pop {r4, r5, pc}
.align 2, 0
_08053E20: .4byte gUnk_03000FD0
_08053E20: .4byte gFadeControl
_08053E24: .4byte gMenu
_08053E28: .4byte gUnk_02000070
_08053E2C: .4byte gRoomControls
@ -2971,7 +2971,7 @@ _08053E2C: .4byte gRoomControls
thumb_func_start sub_08053E30
sub_08053E30: @ 0x08053E30
push {lr}
ldr r0, _08053E50 @ =gUnk_03000FD0
ldr r0, _08053E50 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053E4E
@ -2988,7 +2988,7 @@ sub_08053E30: @ 0x08053E30
_08053E4E:
pop {pc}
.align 2, 0
_08053E50: .4byte gUnk_03000FD0
_08053E50: .4byte gFadeControl
_08053E54: .4byte gMenu
thumb_func_start sub_08053E58
@ -3045,7 +3045,7 @@ _08053EC0: .4byte gUnk_02000070
thumb_func_start sub_08053EC4
sub_08053EC4: @ 0x08053EC4
push {r4, lr}
ldr r0, _08053EF4 @ =gUnk_03000FD0
ldr r0, _08053EF4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053EF0
@ -3068,7 +3068,7 @@ sub_08053EC4: @ 0x08053EC4
_08053EF0:
pop {r4, pc}
.align 2, 0
_08053EF4: .4byte gUnk_03000FD0
_08053EF4: .4byte gFadeControl
_08053EF8: .4byte gMenu
thumb_func_start sub_08053EFC
@ -3094,7 +3094,7 @@ _08053F1C: .4byte gMenu
thumb_func_start sub_08053F20
sub_08053F20: @ 0x08053F20
push {r4, r5, lr}
ldr r0, _08053F78 @ =gUnk_03000FD0
ldr r0, _08053F78 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053F74
@ -3133,7 +3133,7 @@ sub_08053F20: @ 0x08053F20
_08053F74:
pop {r4, r5, pc}
.align 2, 0
_08053F78: .4byte gUnk_03000FD0
_08053F78: .4byte gFadeControl
_08053F7C: .4byte gMenu
_08053F80: .4byte gUnk_02000070
_08053F84: .4byte gRoomControls
@ -3141,7 +3141,7 @@ _08053F84: .4byte gRoomControls
thumb_func_start sub_08053F88
sub_08053F88: @ 0x08053F88
push {lr}
ldr r0, _08053FAC @ =gUnk_03000FD0
ldr r0, _08053FAC @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08053FAA
@ -3159,7 +3159,7 @@ sub_08053F88: @ 0x08053F88
_08053FAA:
pop {pc}
.align 2, 0
_08053FAC: .4byte gUnk_03000FD0
_08053FAC: .4byte gFadeControl
_08053FB0: .4byte gMenu
thumb_func_start sub_08053FB4

View File

@ -478,7 +478,7 @@ _08054C54: .4byte gUnk_02000070
thumb_func_start sub_08054C58
sub_08054C58: @ 0x08054C58
push {lr}
ldr r0, _08054C80 @ =gUnk_03000FD0
ldr r0, _08054C80 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08054C7C
@ -496,13 +496,13 @@ sub_08054C58: @ 0x08054C58
_08054C7C:
pop {pc}
.align 2, 0
_08054C80: .4byte gUnk_03000FD0
_08054C80: .4byte gFadeControl
_08054C84: .4byte gMenu
thumb_func_start sub_08054C88
sub_08054C88: @ 0x08054C88
push {r4, lr}
ldr r0, _08054CB8 @ =gUnk_03000FD0
ldr r0, _08054CB8 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08054CB4
@ -523,13 +523,13 @@ sub_08054C88: @ 0x08054C88
_08054CB4:
pop {r4, pc}
.align 2, 0
_08054CB8: .4byte gUnk_03000FD0
_08054CB8: .4byte gFadeControl
_08054CBC: .4byte gMenu
thumb_func_start sub_08054CC0
sub_08054CC0: @ 0x08054CC0
push {lr}
ldr r0, _08054CE0 @ =gUnk_03000FD0
ldr r0, _08054CE0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08054CDE
@ -546,7 +546,7 @@ sub_08054CC0: @ 0x08054CC0
_08054CDE:
pop {pc}
.align 2, 0
_08054CE0: .4byte gUnk_03000FD0
_08054CE0: .4byte gFadeControl
_08054CE4: .4byte gMenu
thumb_func_start sub_08054CE8
@ -594,7 +594,7 @@ _08054D38: .4byte gUnk_02000070
thumb_func_start sub_08054D3C
sub_08054D3C: @ 0x08054D3C
push {r4, lr}
ldr r0, _08054D6C @ =gUnk_03000FD0
ldr r0, _08054D6C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08054D6A
@ -616,7 +616,7 @@ sub_08054D3C: @ 0x08054D3C
_08054D6A:
pop {r4, pc}
.align 2, 0
_08054D6C: .4byte gUnk_03000FD0
_08054D6C: .4byte gFadeControl
_08054D70: .4byte gMenu
thumb_func_start sub_08054D74
@ -739,7 +739,7 @@ _08054E58: .4byte gUnk_02000070
thumb_func_start sub_08054E5C
sub_08054E5C: @ 0x08054E5C
push {r4, lr}
ldr r0, _08054E94 @ =gUnk_03000FD0
ldr r0, _08054E94 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08054E92
@ -764,7 +764,7 @@ sub_08054E5C: @ 0x08054E5C
_08054E92:
pop {r4, pc}
.align 2, 0
_08054E94: .4byte gUnk_03000FD0
_08054E94: .4byte gFadeControl
_08054E98: .4byte gMenu
thumb_func_start sub_08054E9C
@ -1169,7 +1169,7 @@ sub_08055184: @ 0x08055184
adds r4, r4, r0
movs r1, #0
ldrsh r0, [r4, r1]
bl sub_0801D7EC
bl LoadGfxGroup
ldr r2, _08055214 @ =gScreen
ldrh r0, [r4, #2]
movs r6, #0
@ -1229,7 +1229,7 @@ _08055220: .4byte gUnk_02000070
thumb_func_start sub_08055224
sub_08055224: @ 0x08055224
push {lr}
ldr r0, _08055244 @ =gUnk_03000FD0
ldr r0, _08055244 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055240
@ -1244,7 +1244,7 @@ sub_08055224: @ 0x08055224
_08055240:
pop {pc}
.align 2, 0
_08055244: .4byte gUnk_03000FD0
_08055244: .4byte gFadeControl
_08055248: .4byte gMenu
thumb_func_start sub_0805524C
@ -1382,7 +1382,7 @@ _0805534C: .4byte gUnk_02000070
thumb_func_start sub_08055350
sub_08055350: @ 0x08055350
push {lr}
ldr r0, _08055378 @ =gUnk_03000FD0
ldr r0, _08055378 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055374
@ -1400,13 +1400,13 @@ sub_08055350: @ 0x08055350
_08055374:
pop {pc}
.align 2, 0
_08055378: .4byte gUnk_03000FD0
_08055378: .4byte gFadeControl
_0805537C: .4byte gMenu
thumb_func_start sub_08055380
sub_08055380: @ 0x08055380
push {r4, lr}
ldr r0, _080553B0 @ =gUnk_03000FD0
ldr r0, _080553B0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080553AC
@ -1427,13 +1427,13 @@ sub_08055380: @ 0x08055380
_080553AC:
pop {r4, pc}
.align 2, 0
_080553B0: .4byte gUnk_03000FD0
_080553B0: .4byte gFadeControl
_080553B4: .4byte gMenu
thumb_func_start sub_080553B8
sub_080553B8: @ 0x080553B8
push {lr}
ldr r0, _080553D8 @ =gUnk_03000FD0
ldr r0, _080553D8 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080553D6
@ -1450,7 +1450,7 @@ sub_080553B8: @ 0x080553B8
_080553D6:
pop {pc}
.align 2, 0
_080553D8: .4byte gUnk_03000FD0
_080553D8: .4byte gFadeControl
_080553DC: .4byte gMenu
thumb_func_start sub_080553E0
@ -1525,7 +1525,7 @@ _08055464: .4byte gUnk_02000070
thumb_func_start sub_08055468
sub_08055468: @ 0x08055468
push {lr}
ldr r0, _08055490 @ =gUnk_03000FD0
ldr r0, _08055490 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805548C
@ -1543,13 +1543,13 @@ sub_08055468: @ 0x08055468
_0805548C:
pop {pc}
.align 2, 0
_08055490: .4byte gUnk_03000FD0
_08055490: .4byte gFadeControl
_08055494: .4byte gMenu
thumb_func_start sub_08055498
sub_08055498: @ 0x08055498
push {r4, lr}
ldr r0, _080554CC @ =gUnk_03000FD0
ldr r0, _080554CC @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080554CA
@ -1572,13 +1572,13 @@ sub_08055498: @ 0x08055498
_080554CA:
pop {r4, pc}
.align 2, 0
_080554CC: .4byte gUnk_03000FD0
_080554CC: .4byte gFadeControl
_080554D0: .4byte gMenu
thumb_func_start sub_080554D4
sub_080554D4: @ 0x080554D4
push {lr}
ldr r0, _080554F4 @ =gUnk_03000FD0
ldr r0, _080554F4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080554F2
@ -1595,7 +1595,7 @@ sub_080554D4: @ 0x080554D4
_080554F2:
pop {pc}
.align 2, 0
_080554F4: .4byte gUnk_03000FD0
_080554F4: .4byte gFadeControl
_080554F8: .4byte gMenu
thumb_func_start sub_080554FC
@ -1639,7 +1639,7 @@ _08055544: .4byte gUnk_02000070
thumb_func_start sub_08055548
sub_08055548: @ 0x08055548
push {r4, lr}
ldr r0, _08055578 @ =gUnk_03000FD0
ldr r0, _08055578 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055576
@ -1661,7 +1661,7 @@ sub_08055548: @ 0x08055548
_08055576:
pop {r4, pc}
.align 2, 0
_08055578: .4byte gUnk_03000FD0
_08055578: .4byte gFadeControl
_0805557C: .4byte gMenu
thumb_func_start sub_08055580
@ -1713,7 +1713,7 @@ sub_080555B8: @ 0x080555B8
ldrb r1, [r4, #3]
bl sub_0804B0E8
movs r0, #0x11
bl sub_0801D7EC
bl LoadGfxGroup
ldrb r0, [r5, #4]
movs r1, #0
movs r2, #0
@ -1737,7 +1737,7 @@ _08055608: .4byte gUnk_02000070
thumb_func_start sub_0805560C
sub_0805560C: @ 0x0805560C
push {lr}
ldr r0, _0805562C @ =gUnk_03000FD0
ldr r0, _0805562C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055628
@ -1752,7 +1752,7 @@ sub_0805560C: @ 0x0805560C
_08055628:
pop {pc}
.align 2, 0
_0805562C: .4byte gUnk_03000FD0
_0805562C: .4byte gFadeControl
_08055630: .4byte gMenu
thumb_func_start sub_08055634
@ -1916,7 +1916,7 @@ _08055768: .4byte gUnk_02000070
thumb_func_start sub_0805576C
sub_0805576C: @ 0x0805576C
push {lr}
ldr r0, _08055790 @ =gUnk_03000FD0
ldr r0, _08055790 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805578C
@ -1933,7 +1933,7 @@ sub_0805576C: @ 0x0805576C
_0805578C:
pop {pc}
.align 2, 0
_08055790: .4byte gUnk_03000FD0
_08055790: .4byte gFadeControl
_08055794: .4byte gMenu
thumb_func_start sub_08055798
@ -2157,7 +2157,7 @@ _08055944: .4byte gUnk_02000070
thumb_func_start sub_08055948
sub_08055948: @ 0x08055948
push {lr}
ldr r0, _08055970 @ =gUnk_03000FD0
ldr r0, _08055970 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805596C
@ -2175,7 +2175,7 @@ sub_08055948: @ 0x08055948
_0805596C:
pop {pc}
.align 2, 0
_08055970: .4byte gUnk_03000FD0
_08055970: .4byte gFadeControl
_08055974: .4byte gMenu
thumb_func_start sub_08055978
@ -2283,7 +2283,7 @@ _08055A38: .4byte gUnk_02000070
thumb_func_start sub_08055A3C
sub_08055A3C: @ 0x08055A3C
push {lr}
ldr r0, _08055A64 @ =gUnk_03000FD0
ldr r0, _08055A64 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055A60
@ -2301,13 +2301,13 @@ sub_08055A3C: @ 0x08055A3C
_08055A60:
pop {pc}
.align 2, 0
_08055A64: .4byte gUnk_03000FD0
_08055A64: .4byte gFadeControl
_08055A68: .4byte gMenu
thumb_func_start sub_08055A6C
sub_08055A6C: @ 0x08055A6C
push {r4, lr}
ldr r0, _08055AA0 @ =gUnk_03000FD0
ldr r0, _08055AA0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055A9E
@ -2330,13 +2330,13 @@ sub_08055A6C: @ 0x08055A6C
_08055A9E:
pop {r4, pc}
.align 2, 0
_08055AA0: .4byte gUnk_03000FD0
_08055AA0: .4byte gFadeControl
_08055AA4: .4byte gMenu
thumb_func_start sub_08055AA8
sub_08055AA8: @ 0x08055AA8
push {lr}
ldr r0, _08055AC8 @ =gUnk_03000FD0
ldr r0, _08055AC8 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055AC6
@ -2353,7 +2353,7 @@ sub_08055AA8: @ 0x08055AA8
_08055AC6:
pop {pc}
.align 2, 0
_08055AC8: .4byte gUnk_03000FD0
_08055AC8: .4byte gFadeControl
_08055ACC: .4byte gMenu
thumb_func_start sub_08055AD0
@ -2410,7 +2410,7 @@ _08055B34: .4byte gUnk_02000070
thumb_func_start sub_08055B38
sub_08055B38: @ 0x08055B38
push {lr}
ldr r0, _08055B4C @ =gUnk_03000FD0
ldr r0, _08055B4C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055B48
@ -2420,7 +2420,7 @@ sub_08055B38: @ 0x08055B38
_08055B48:
pop {pc}
.align 2, 0
_08055B4C: .4byte gUnk_03000FD0
_08055B4C: .4byte gFadeControl
_08055B50: .4byte gMenu
thumb_func_start sub_08055B54
@ -2518,7 +2518,7 @@ _08055C00: .4byte gUnk_02000070
thumb_func_start sub_08055C04
sub_08055C04: @ 0x08055C04
push {lr}
ldr r0, _08055C2C @ =gUnk_03000FD0
ldr r0, _08055C2C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055C28
@ -2536,14 +2536,14 @@ sub_08055C04: @ 0x08055C04
_08055C28:
pop {pc}
.align 2, 0
_08055C2C: .4byte gUnk_03000FD0
_08055C2C: .4byte gFadeControl
_08055C30: .4byte gMenu
thumb_func_start sub_08055C34
sub_08055C34: @ 0x08055C34
push {r4, r5, lr}
sub sp, #4
ldr r0, _08055C64 @ =gUnk_03000FD0
ldr r0, _08055C64 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055CA6
@ -2563,7 +2563,7 @@ sub_08055C34: @ 0x08055C34
bl sub_08054974
b _08055C8C
.align 2, 0
_08055C64: .4byte gUnk_03000FD0
_08055C64: .4byte gFadeControl
_08055C68: .4byte gMenu
_08055C6C:
str r0, [sp]
@ -2600,7 +2600,7 @@ _08055CAC: .4byte gMenu
thumb_func_start sub_08055CB0
sub_08055CB0: @ 0x08055CB0
push {lr}
ldr r0, _08055CD0 @ =gUnk_03000FD0
ldr r0, _08055CD0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055CCE
@ -2617,7 +2617,7 @@ sub_08055CB0: @ 0x08055CB0
_08055CCE:
pop {pc}
.align 2, 0
_08055CD0: .4byte gUnk_03000FD0
_08055CD0: .4byte gFadeControl
_08055CD4: .4byte gMenu
thumb_func_start sub_08055CD8
@ -2665,7 +2665,7 @@ _08055D28: .4byte gUnk_02000070
thumb_func_start sub_08055D2C
sub_08055D2C: @ 0x08055D2C
push {r4, lr}
ldr r0, _08055D5C @ =gUnk_03000FD0
ldr r0, _08055D5C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055D5A
@ -2687,7 +2687,7 @@ sub_08055D2C: @ 0x08055D2C
_08055D5A:
pop {r4, pc}
.align 2, 0
_08055D5C: .4byte gUnk_03000FD0
_08055D5C: .4byte gFadeControl
_08055D60: .4byte gMenu
thumb_func_start sub_08055D64
@ -2744,7 +2744,7 @@ _08055DBC: .4byte gUnk_02000070
thumb_func_start sub_08055DC0
sub_08055DC0: @ 0x08055DC0
push {lr}
ldr r0, _08055DE0 @ =gUnk_03000FD0
ldr r0, _08055DE0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08055DDC
@ -2759,7 +2759,7 @@ sub_08055DC0: @ 0x08055DC0
_08055DDC:
pop {pc}
.align 2, 0
_08055DE0: .4byte gUnk_03000FD0
_08055DE0: .4byte gFadeControl
_08055DE4: .4byte 0x00000A01
_08055DE8: .4byte gMenu

View File

@ -376,7 +376,7 @@ sub_0805EE88: @ 0x0805EE88
ands r1, r0
lsrs r0, r1, #2
adds r0, #0x2f
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
_0805EEAC:
pop {pc}
.align 2, 0
@ -1857,8 +1857,8 @@ _0805F9E2:
.align 2, 0
_0805F9E4: .4byte 0x0000031A
thumb_func_start sub_0805F9E8
sub_0805F9E8: @ 0x0805F9E8
thumb_func_start HandleDebugTextScreen
HandleDebugTextScreen: @ 0x0805F9E8
push {lr}
ldr r1, _0805F9FC @ =gUnk_08109A30
ldr r0, _0805FA00 @ =gUnk_03001000

View File

@ -1468,7 +1468,7 @@ sub_080705AC: @ 0x080705AC
ands r0, r1
cmp r0, #0
beq _08070674
ldr r0, _08070618 @ =gUnk_03000FD0
ldr r0, _08070618 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08070674
@ -1514,7 +1514,7 @@ sub_080705AC: @ 0x080705AC
b _08070632
.align 2, 0
_08070614: .4byte gUnk_03000FF0
_08070618: .4byte gUnk_03000FD0
_08070618: .4byte gFadeControl
_0807061C: .4byte gUnk_02034490
_08070620: .4byte gTextBox
_08070624: .4byte gUnk_02002A40

View File

@ -2108,7 +2108,7 @@ _080717CA:
sub_080717CC: @ 0x080717CC
push {lr}
adds r1, r0, #0
ldr r0, _080717E4 @ =gUnk_03000FD0
ldr r0, _080717E4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080717F4
@ -2119,7 +2119,7 @@ sub_080717CC: @ 0x080717CC
strb r0, [r1, #0xe]
b _080717F4
.align 2, 0
_080717E4: .4byte gUnk_03000FD0
_080717E4: .4byte gFadeControl
_080717E8:
adds r0, r1, #0
bl sub_080717F8

View File

@ -846,7 +846,7 @@ _0807C01C:
ldr r0, [r4]
ldr r0, [r0, #0x10]
bl sub_080197D4
ldr r1, _0807C0D0 @ =gUnk_020176A0
ldr r1, _0807C0D0 @ =gPaletteBuffer
adds r0, r1, #0
adds r0, #0x60
movs r2, #0xa8
@ -854,7 +854,7 @@ _0807C01C:
adds r1, r1, r2
movs r2, #0x20
bl sub_0801D66C
ldr r2, _0807C0D4 @ =gUnk_0200B644
ldr r2, _0807C0D4 @ =gUsedPalettes
ldr r0, [r2]
movs r1, #0x80
lsls r1, r1, #0xe
@ -927,8 +927,8 @@ _0807C0C0: .4byte gUnk_02010654
_0807C0C4: .4byte gRoomControls
_0807C0C8: .4byte gArea
_0807C0CC: .4byte 0x0000085C
_0807C0D0: .4byte gUnk_020176A0
_0807C0D4: .4byte gUnk_0200B644
_0807C0D0: .4byte gPaletteBuffer
_0807C0D4: .4byte gUsedPalettes
_0807C0D8: .4byte 0x000007FF
thumb_func_start sub_0807C0DC

View File

@ -3343,7 +3343,7 @@ _0807E758: .4byte gUnk_02033280
thumb_func_start sub_0807E75C
sub_0807E75C: @ 0x0807E75C
push {lr}
ldr r0, _0807E770 @ =gUnk_03000FD0
ldr r0, _0807E770 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
beq _0807E76C
@ -3353,7 +3353,7 @@ sub_0807E75C: @ 0x0807E75C
_0807E76C:
pop {pc}
.align 2, 0
_0807E770: .4byte gUnk_03000FD0
_0807E770: .4byte gFadeControl
_0807E774: .4byte gUnk_02033280
thumb_func_start sub_0807E778
@ -3371,11 +3371,11 @@ sub_0807E788: @ 0x0807E788
push {lr}
ldr r0, [r1]
bl GetNextScriptCommandWordAfterCommandMetadata
ldr r1, _0807E798 @ =gUnk_03000FD0
ldr r1, _0807E798 @ =gFadeControl
str r0, [r1, #4]
pop {pc}
.align 2, 0
_0807E798: .4byte gUnk_03000FD0
_0807E798: .4byte gFadeControl
thumb_func_start sub_0807E79C
sub_0807E79C: @ 0x0807E79C

View File

@ -201,8 +201,8 @@ sub_080A35C8: @ 0x080A35C8
.align 2, 0
_080A35DC: .4byte gUnk_02021EE0
thumb_func_start sub_080A35E0
sub_080A35E0: @ 0x080A35E0
thumb_func_start HandleCreditsScreen
HandleCreditsScreen: @ 0x080A35E0
push {lr}
ldr r1, _080A35FC @ =gScreenTransition
ldr r0, [r1]
@ -268,9 +268,9 @@ _080A365E:
movs r0, #0
bl sub_0801DA90
movs r0, #0xb
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r0, #0xc
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r0, #0
movs r1, #0
bl sub_0801D79C
@ -337,7 +337,7 @@ _080A36F4: .4byte gMenu
thumb_func_start sub_080A36F8
sub_080A36F8: @ 0x080A36F8
push {r4, r5, lr}
ldr r0, _080A3754 @ =gUnk_03000FD0
ldr r0, _080A3754 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A3752
@ -348,9 +348,9 @@ sub_080A36F8: @ 0x080A36F8
ldr r0, _080A375C @ =gUnk_08127CEC
adds r4, r4, r0
ldrb r0, [r4]
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
ldrb r0, [r4, #1]
bl sub_0801D7EC
bl LoadGfxGroup
ldr r0, _080A3760 @ =gUnk_02021F30
movs r1, #0x80
lsls r1, r1, #4
@ -380,7 +380,7 @@ _080A374A:
_080A3752:
pop {r4, r5, pc}
.align 2, 0
_080A3754: .4byte gUnk_03000FD0
_080A3754: .4byte gFadeControl
_080A3758: .4byte gMenu
_080A375C: .4byte gUnk_08127CEC
_080A3760: .4byte gUnk_02021F30
@ -433,7 +433,7 @@ _080A37B8: .4byte gUnk_02021F30
_080A37BC: .4byte gUnk_081272E0
_080A37C0: .4byte gScreen
_080A37C4:
ldr r0, _080A37F8 @ =gUnk_03000FD0
ldr r0, _080A37F8 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A385E
@ -460,7 +460,7 @@ _080A37C4:
bls _080A385E
b _080A383C
.align 2, 0
_080A37F8: .4byte gUnk_03000FD0
_080A37F8: .4byte gFadeControl
_080A37FC: .4byte gScreenTransition
_080A3800: .4byte gScreen
_080A3804:
@ -502,7 +502,7 @@ _080A383C:
_080A3844: .4byte gScreenTransition
_080A3848: .4byte gScreen
_080A384C:
ldr r1, _080A3860 @ =gUnk_03000FD0
ldr r1, _080A3860 @ =gFadeControl
ldrb r0, [r1]
cmp r0, #0
bne _080A385E
@ -513,7 +513,7 @@ _080A384C:
_080A385E:
pop {r4, pc}
.align 2, 0
_080A3860: .4byte gUnk_03000FD0
_080A3860: .4byte gFadeControl
thumb_func_start sub_080A3864
sub_080A3864: @ 0x080A3864
@ -537,7 +537,7 @@ _080A3884: .4byte gMenu
thumb_func_start sub_080A3888
sub_080A3888: @ 0x080A3888
push {lr}
ldr r1, _080A38A8 @ =gUnk_03000FD0
ldr r1, _080A38A8 @ =gFadeControl
ldr r0, _080A38AC @ =0xFFFF7FFF
str r0, [r1, #4]
movs r0, #5
@ -549,7 +549,7 @@ sub_080A3888: @ 0x080A3888
bl sub_080A3954
pop {pc}
.align 2, 0
_080A38A8: .4byte gUnk_03000FD0
_080A38A8: .4byte gFadeControl
_080A38AC: .4byte 0xFFFF7FFF
_080A38B0: .4byte gMenu
@ -572,7 +572,7 @@ sub_080A38D0: @ 0x080A38D0
push {r4, r5, r6, lr}
mov r6, r8
push {r6}
ldr r0, _080A391C @ =gUnk_03000FD0
ldr r0, _080A391C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A3914
@ -605,7 +605,7 @@ _080A3914:
mov r8, r3
pop {r4, r5, r6, pc}
.align 2, 0
_080A391C: .4byte gUnk_03000FD0
_080A391C: .4byte gFadeControl
_080A3920: .4byte gUnk_02021F30
_080A3924: .4byte gScreen
_080A3928: .4byte gUnk_020344B0
@ -614,7 +614,7 @@ _080A392C: .4byte gMenu
thumb_func_start sub_080A3930
sub_080A3930: @ 0x080A3930
push {lr}
ldr r0, _080A394C @ =gUnk_03000FD0
ldr r0, _080A394C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A3948
@ -627,7 +627,7 @@ sub_080A3930: @ 0x080A3930
_080A3948:
pop {pc}
.align 2, 0
_080A394C: .4byte gUnk_03000FD0
_080A394C: .4byte gFadeControl
_080A3950: .4byte gUnk_03001000
thumb_func_start sub_080A3954
@ -657,7 +657,7 @@ _080A397C: .4byte gMenu
thumb_func_start sub_080A3980
sub_080A3980: @ 0x080A3980
push {lr}
ldr r0, _080A3990 @ =gUnk_03000FD0
ldr r0, _080A3990 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A398E
@ -665,7 +665,7 @@ sub_080A3980: @ 0x080A3980
_080A398E:
pop {pc}
.align 2, 0
_080A3990: .4byte gUnk_03000FD0
_080A3990: .4byte gFadeControl
thumb_func_start sub_080A3994
sub_080A3994: @ 0x080A3994
@ -703,12 +703,12 @@ _080A39C8:
bl sub_080A3210
bl sub_080A4D34
movs r0, #0xa
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
movs r0, #0
movs r1, #0
bl sub_0801D79C
movs r0, #4
bl sub_0801D7EC
bl LoadGfxGroup
movs r0, #0xc0
lsls r0, r0, #0x13
movs r1, #0x20
@ -737,7 +737,7 @@ _080A3A2C: .4byte gScreen
_080A3A30: .4byte 0x00001C01
_080A3A34: .4byte 0x00001D05
_080A3A38:
ldr r0, _080A3A50 @ =gUnk_03000FD0
ldr r0, _080A3A50 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
beq _080A3A42
@ -750,7 +750,7 @@ _080A3A42:
strh r0, [r2, #8]
b _080A3B36
.align 2, 0
_080A3A50: .4byte gUnk_03000FD0
_080A3A50: .4byte gFadeControl
_080A3A54:
ldrb r4, [r2, #3]
ldr r0, _080A3A68 @ =gUnk_03000FF0

View File

@ -9,7 +9,7 @@
thumb_func_start sub_080A3C6C
sub_080A3C6C: @ 0x080A3C6C
push {r4, r5, lr}
ldr r0, _080A3C9C @ =gUnk_03000FD0
ldr r0, _080A3C9C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
beq _080A3C78
@ -35,7 +35,7 @@ _080A3C92:
str r2, [r5, #0x10]
b _080A3CDE
.align 2, 0
_080A3C9C: .4byte gUnk_03000FD0
_080A3C9C: .4byte gFadeControl
_080A3CA0: .4byte gMenu
_080A3CA4: .4byte 0x00001FFD
_080A3CA8:
@ -1021,7 +1021,7 @@ sub_080A4418: @ 0x080A4418
ands r2, r1
mvns r0, r2
ands r0, r1
ldr r1, _080A444C @ =gUnk_085A2E80
ldr r1, _080A444C @ =gGlobalGfxAndPalettes
adds r1, r0, r1
cmp r2, #0
beq _080A4450
@ -1032,7 +1032,7 @@ sub_080A4418: @ 0x080A4418
.align 2, 0
_080A4444: .4byte 0x06010000
_080A4448: .4byte gUnk_080CA06C
_080A444C: .4byte gUnk_085A2E80
_080A444C: .4byte gGlobalGfxAndPalettes
_080A4450:
ldr r0, _080A4460 @ =0x040000D4
str r1, [r0]
@ -1252,7 +1252,7 @@ sub_080A4608: @ 0x080A4608
bl sub_080A3248
movs r0, #3
bl sub_080A4DA8
ldr r4, _080A46A0 @ =gUnk_020176A0
ldr r4, _080A46A0 @ =gPaletteBuffer
movs r1, #0xfb
lsls r1, r1, #1
adds r0, r4, r1
@ -1320,7 +1320,7 @@ _080A4694:
bl DoFade
pop {r4, pc}
.align 2, 0
_080A46A0: .4byte gUnk_020176A0
_080A46A0: .4byte gPaletteBuffer
_080A46A4: .4byte gUnk_02034CB0
_080A46A8: .4byte gUnk_02001A40
_080A46AC: .4byte gScreen
@ -1354,7 +1354,7 @@ sub_080A46DC: @ 0x080A46DC
thumb_func_start sub_080A46EC
sub_080A46EC: @ 0x080A46EC
push {lr}
ldr r0, _080A4714 @ =gUnk_03000FD0
ldr r0, _080A4714 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A4710
@ -1372,7 +1372,7 @@ sub_080A46EC: @ 0x080A46EC
_080A4710:
pop {pc}
.align 2, 0
_080A4714: .4byte gUnk_03000FD0
_080A4714: .4byte gFadeControl
_080A4718: .4byte gUnk_080FC3E4
_080A471C: .4byte gMenu
@ -1543,7 +1543,7 @@ _080A4860: .4byte gMenu
thumb_func_start sub_080A4864
sub_080A4864: @ 0x080A4864
push {r4, r5, r6, lr}
ldr r0, _080A4894 @ =gUnk_03000FD0
ldr r0, _080A4894 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A4926
@ -1567,7 +1567,7 @@ sub_080A4864: @ 0x080A4864
beq _080A48D8
b _080A48DE
.align 2, 0
_080A4894: .4byte gUnk_03000FD0
_080A4894: .4byte gFadeControl
_080A4898: .4byte gMenu
_080A489C: .4byte gUnk_03000FF0
_080A48A0:
@ -1898,7 +1898,7 @@ _080A4ABE:
ldr r0, [r4]
movs r1, #0x16
movs r2, #9
bl sub_0801D754
bl LoadPalettes
ldr r0, [r4, #4]
ldr r2, [r4, #8]
cmp r2, #0
@ -2174,7 +2174,7 @@ sub_080A4D34: @ 0x080A4D34
push {lr}
bl sub_08053320
movs r0, #0xb5
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
ldr r1, _080A4D50 @ =gUnk_02002A40
adds r2, r1, #0
adds r2, #0xaa
@ -2198,7 +2198,7 @@ _080A4D54:
_080A4D66:
adds r0, r1, #0
adds r0, #0x56
bl sub_0801D7EC
bl LoadGfxGroup
ldr r1, _080A4D80 @ =gScreen
movs r0, #0
strh r0, [r1, #0x2e]
@ -2303,12 +2303,12 @@ sub_080A4DB8: @ 0x080A4DB8
ldrb r0, [r4]
cmp r0, #0
beq _080A4E4A
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
_080A4E4A:
ldrb r0, [r4, #1]
cmp r0, #0
beq _080A4E54
bl sub_0801D7EC
bl LoadGfxGroup
_080A4E54:
pop {r4, r5, pc}
.align 2, 0
@ -2459,7 +2459,7 @@ _080A4F9C: .4byte gUnk_08128A38
thumb_func_start sub_080A4FA0
sub_080A4FA0: @ 0x080A4FA0
push {lr}
ldr r0, _080A4FB4 @ =gUnk_03000FD0
ldr r0, _080A4FB4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A4FB0
@ -2468,7 +2468,7 @@ sub_080A4FA0: @ 0x080A4FA0
_080A4FB0:
pop {pc}
.align 2, 0
_080A4FB4: .4byte gUnk_03000FD0
_080A4FB4: .4byte gFadeControl
thumb_func_start sub_080A4FB8
sub_080A4FB8: @ 0x080A4FB8
@ -2773,7 +2773,7 @@ _080A51F0: .4byte gMenu
sub_080A51F4: @ 0x080A51F4
push {lr}
movs r1, #1
ldr r0, _080A5210 @ =gUnk_03000FD0
ldr r0, _080A5210 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
beq _080A5202
@ -2788,7 +2788,7 @@ _080A520C:
adds r0, r1, #0
pop {pc}
.align 2, 0
_080A5210: .4byte gUnk_03000FD0
_080A5210: .4byte gFadeControl
_080A5214: .4byte gUnk_02034490
thumb_func_start sub_080A5218

View File

@ -821,7 +821,7 @@ _080A5BB6:
thumb_func_start sub_080A5BB8
sub_080A5BB8: @ 0x080A5BB8
push {lr}
ldr r0, _080A5BE4 @ =gUnk_03000FD0
ldr r0, _080A5BE4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A5BE2
@ -841,7 +841,7 @@ sub_080A5BB8: @ 0x080A5BB8
_080A5BE2:
pop {pc}
.align 2, 0
_080A5BE4: .4byte gUnk_03000FD0
_080A5BE4: .4byte gFadeControl
_080A5BE8: .4byte gUnk_03001000
_080A5BEC: .4byte gUnk_02034490
@ -869,7 +869,7 @@ sub_080A5BF0: @ 0x080A5BF0
movs r2, #0xe
bl sub_0801D66C
strh r5, [r4, #0xe]
ldr r2, _080A5C40 @ =gUnk_0200B644
ldr r2, _080A5C40 @ =gUsedPalettes
ldr r0, [r2]
movs r1, #0x80
lsls r1, r1, #5
@ -882,7 +882,7 @@ _080A5C30: .4byte gUnk_08128D30
_080A5C34: .4byte gMenu
_080A5C38: .4byte gUnk_03001000
_080A5C3C: .4byte gUnk_02017830
_080A5C40: .4byte gUnk_0200B644
_080A5C40: .4byte gUsedPalettes
thumb_func_start sub_080A5C44
sub_080A5C44: @ 0x080A5C44
@ -893,7 +893,7 @@ sub_080A5C44: @ 0x080A5C44
ldrb r0, [r1, #3]
bl sub_080A5CFC
movs r0, #0x81
bl sub_0801D7EC
bl LoadGfxGroup
ldr r4, _080A5C90 @ =gArea
ldrb r0, [r4, #3]
movs r1, #1
@ -1683,7 +1683,7 @@ sub_080A6290: @ 0x080A6290
ldr r0, _080A62CC @ =gUnk_08128DD4
str r0, [r4, #0xc]
movs r0, #0x81
bl sub_0801D7EC
bl LoadGfxGroup
ldr r1, _080A62D0 @ =gScreen
ldr r0, _080A62D4 @ =0x0000FFFC
strh r0, [r1, #0x18]
@ -2016,7 +2016,7 @@ sub_080A6534: @ 0x080A6534
ands r0, r1
movs r4, #0
strh r0, [r2]
ldr r0, _080A6598 @ =gUnk_020176A0
ldr r0, _080A6598 @ =gPaletteBuffer
adds r0, #0xa2
ldrh r1, [r0]
movs r0, #0
@ -2048,7 +2048,7 @@ sub_080A6534: @ 0x080A6534
.align 2, 0
_080A6590: .4byte gScreen
_080A6594: .4byte 0x0000F7FF
_080A6598: .4byte gUnk_020176A0
_080A6598: .4byte gPaletteBuffer
_080A659C: .4byte gUnk_08128F4C
_080A65A0: .4byte gUnk_02032EC0
_080A65A4: .4byte gUnk_02002A40
@ -2057,7 +2057,7 @@ _080A65A8: .4byte gMenu
thumb_func_start sub_080A65AC
sub_080A65AC: @ 0x080A65AC
push {r4, lr}
ldr r0, _080A65E4 @ =gUnk_03000FD0
ldr r0, _080A65E4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A6600
@ -2084,7 +2084,7 @@ _080A65DA:
strh r0, [r4, #8]
b _080A6600
.align 2, 0
_080A65E4: .4byte gUnk_03000FD0
_080A65E4: .4byte gFadeControl
_080A65E8: .4byte gMenu
_080A65EC:
ldr r0, _080A6604 @ =gUnk_03000FF0
@ -2328,7 +2328,7 @@ sub_080A67C4: @ 0x080A67C4
push {r4, r5, r6, r7, lr}
adds r4, r0, #0
adds r0, #0xba
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
adds r5, r4, #0
adds r5, #0x5f
cmp r4, #0xb
@ -2374,7 +2374,7 @@ _080A6802:
adds r5, #0x72
_080A6822:
adds r0, r5, #0
bl sub_0801D7EC
bl LoadGfxGroup
lsls r1, r4, #3
ldr r0, _080A68B0 @ =gUnk_08128E94
adds r4, r1, r0
@ -2866,7 +2866,7 @@ _080A6C18: .4byte gUnk_08128E94
thumb_func_start sub_080A6C1C
sub_080A6C1C: @ 0x080A6C1C
push {lr}
ldr r0, _080A6C34 @ =gUnk_03000FD0
ldr r0, _080A6C34 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A6C6A
@ -2878,7 +2878,7 @@ sub_080A6C1C: @ 0x080A6C1C
beq _080A6C5C
b _080A6C62
.align 2, 0
_080A6C34: .4byte gUnk_03000FD0
_080A6C34: .4byte gFadeControl
_080A6C38: .4byte gMenu
_080A6C3C:
bl sub_080A66D0
@ -2955,7 +2955,7 @@ _080A6CD4: .4byte gMenu
thumb_func_start sub_080A6CD8
sub_080A6CD8: @ 0x080A6CD8
push {r4, lr}
ldr r0, _080A6D08 @ =gUnk_03000FD0
ldr r0, _080A6D08 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A6D6E
@ -2978,7 +2978,7 @@ sub_080A6CD8: @ 0x080A6CD8
beq _080A6D38
b _080A6D54
.align 2, 0
_080A6D08: .4byte gUnk_03000FD0
_080A6D08: .4byte gFadeControl
_080A6D0C: .4byte gMenu
_080A6D10: .4byte gUnk_03000FF0
_080A6D14:
@ -3149,7 +3149,7 @@ _080A6E40: .4byte gUnk_02034490
thumb_func_start sub_080A6E44
sub_080A6E44: @ 0x080A6E44
push {lr}
ldr r0, _080A6E64 @ =gUnk_03000FD0
ldr r0, _080A6E64 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A6E60
@ -3164,7 +3164,7 @@ sub_080A6E44: @ 0x080A6E44
_080A6E60:
pop {pc}
.align 2, 0
_080A6E64: .4byte gUnk_03000FD0
_080A6E64: .4byte gFadeControl
_080A6E68: .4byte gMenu
_080A6E6C: .4byte gUnk_08128024
@ -3672,7 +3672,7 @@ _080A724C: .4byte gUnk_0812901C
thumb_func_start sub_080A7250
sub_080A7250: @ 0x080A7250
push {r4, lr}
ldr r0, _080A72E8 @ =gUnk_03000FD0
ldr r0, _080A72E8 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A72E4
@ -3680,7 +3680,7 @@ sub_080A7250: @ 0x080A7250
ldr r1, _080A72F0 @ =gUnk_03001020
movs r2, #0x7c
bl sub_0801D66C
ldr r0, _080A72F4 @ =gUnk_020176A0
ldr r0, _080A72F4 @ =gPaletteBuffer
ldr r1, _080A72F8 @ =gUnk_02024090
movs r2, #0x80
lsls r2, r2, #3
@ -3740,10 +3740,10 @@ sub_080A7250: @ 0x080A7250
_080A72E4:
pop {r4, pc}
.align 2, 0
_080A72E8: .4byte gUnk_03000FD0
_080A72E8: .4byte gFadeControl
_080A72EC: .4byte gScreen
_080A72F0: .4byte gUnk_03001020
_080A72F4: .4byte gUnk_020176A0
_080A72F4: .4byte gPaletteBuffer
_080A72F8: .4byte gUnk_02024090
_080A72FC: .4byte gUnk_02024490
_080A7300: .4byte gUnk_02032F14
@ -3760,7 +3760,7 @@ _080A7324: .4byte gUnk_0200B650
thumb_func_start sub_080A7328
sub_080A7328: @ 0x080A7328
push {r4, lr}
ldr r0, _080A7388 @ =gUnk_03000FD0
ldr r0, _080A7388 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A7384
@ -3799,7 +3799,7 @@ sub_080A7328: @ 0x080A7328
_080A7384:
pop {r4, pc}
.align 2, 0
_080A7388: .4byte gUnk_03000FD0
_080A7388: .4byte gFadeControl
_080A738C: .4byte gMenu
_080A7390: .4byte gRoomControls
_080A7394: .4byte gUnk_03000420
@ -3811,7 +3811,7 @@ _080A73A4: .4byte gScreenTransition
thumb_func_start sub_080A73A8
sub_080A73A8: @ 0x080A73A8
push {r4, r5, lr}
ldr r0, _080A7468 @ =gUnk_03000FD0
ldr r0, _080A7468 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
beq _080A73B4
@ -3893,7 +3893,7 @@ _080A73B4:
bl DoFade
b _080A74AE
.align 2, 0
_080A7468: .4byte gUnk_03000FD0
_080A7468: .4byte gFadeControl
_080A746C: .4byte gUnk_02017654
_080A7470: .4byte gUnk_02032EC0
_080A7474: .4byte gPlayerState
@ -3930,7 +3930,7 @@ _080A74C4: .4byte gScreenTransition
sub_080A74C8: @ 0x080A74C8
push {lr}
bl sub_080A74F4
ldr r0, _080A74E8 @ =gUnk_03000FD0
ldr r0, _080A74E8 @ =gFadeControl
ldrb r3, [r0]
cmp r3, #0
bne _080A74E6
@ -3944,7 +3944,7 @@ sub_080A74C8: @ 0x080A74C8
_080A74E6:
pop {pc}
.align 2, 0
_080A74E8: .4byte gUnk_03000FD0
_080A74E8: .4byte gFadeControl
_080A74EC: .4byte gUnk_03001000
_080A74F0: .4byte gUnk_02032EC0

View File

@ -660,7 +660,7 @@ sub_080ADDD8: @ 0x080ADDD8
adds r3, r1, r0
ldr r0, _080ADE00 @ =0x00FFFFFC
ands r0, r2
ldr r1, _080ADE04 @ =gUnk_085A2E80
ldr r1, _080ADE04 @ =gGlobalGfxAndPalettes
adds r0, r0, r1
str r0, [r3, #8]
movs r0, #1
@ -672,7 +672,7 @@ sub_080ADDD8: @ 0x080ADDD8
.align 2, 0
_080ADDFC: .4byte gUnk_02024494
_080ADE00: .4byte 0x00FFFFFC
_080ADE04: .4byte gUnk_085A2E80
_080ADE04: .4byte gGlobalGfxAndPalettes
_080ADE08: .4byte 0x0000FFFF
_080ADE0C:
movs r0, #0xfe

View File

@ -1022,7 +1022,7 @@ sub_08049804: @ 0x08049804
push {r4, lr}
adds r4, r0, #0
bl sub_08049944
ldr r0, _0804987C @ =gUnk_03000FD0
ldr r0, _0804987C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08049878
@ -1077,7 +1077,7 @@ sub_08049804: @ 0x08049804
_08049878:
pop {r4, pc}
.align 2, 0
_0804987C: .4byte gUnk_03000FD0
_0804987C: .4byte gFadeControl
_08049880: .4byte gPlayerEntity
_08049884: .4byte gRoomControls
@ -1085,7 +1085,7 @@ _08049884: .4byte gRoomControls
sub_08049888: @ 0x08049888
push {lr}
adds r1, r0, #0
ldr r0, _080498B0 @ =gUnk_03000FD0
ldr r0, _080498B0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080498AE
@ -1102,7 +1102,7 @@ sub_08049888: @ 0x08049888
_080498AE:
pop {pc}
.align 2, 0
_080498B0: .4byte gUnk_03000FD0
_080498B0: .4byte gFadeControl
thumb_func_start sub_080498B4
sub_080498B4: @ 0x080498B4

View File

@ -240,7 +240,7 @@ sub_080A0390: @ 0x080A0390
movs r0, #0
movs r1, #0x3c
bl sub_0805E4E0
ldr r0, _080A03B4 @ =gUnk_03000FD0
ldr r0, _080A03B4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _080A03B2
@ -254,7 +254,7 @@ sub_080A0390: @ 0x080A0390
_080A03B2:
pop {r4, pc}
.align 2, 0
_080A03B4: .4byte gUnk_03000FD0
_080A03B4: .4byte gFadeControl
thumb_func_start sub_080A03B8
sub_080A03B8: @ 0x080A03B8

View File

@ -178,7 +178,7 @@ _0802D16C: .4byte gUnk_02034490
sub_0802D170: @ 0x0802D170
push {r4, r5, r6, lr}
adds r5, r0, #0
ldr r0, _0802D1F0 @ =gUnk_03000FD0
ldr r0, _0802D1F0 @ =gFadeControl
ldrb r3, [r0]
cmp r3, #0
bne _0802D216
@ -237,7 +237,7 @@ sub_0802D170: @ 0x0802D170
bl DoFade
b _0802D216
.align 2, 0
_0802D1F0: .4byte gUnk_03000FD0
_0802D1F0: .4byte gFadeControl
_0802D1F4: .4byte gPlayerEntity
_0802D1F8: .4byte gRoomControls
_0802D1FC:

View File

@ -330,7 +330,7 @@ _080597F4:
cmp r0, #0
blt _08059838
adds r0, #0x2b
bl sub_0801D7EC
bl LoadGfxGroup
b _08059838
_08059800:
ldr r4, _0805981C @ =gUnk_02001A40
@ -441,7 +441,7 @@ _080598AA:
adds r1, r0, r2
movs r2, #0x20
bl sub_0801D66C
ldr r2, _080598F0 @ =gUnk_0200B644
ldr r2, _080598F0 @ =gUsedPalettes
ldr r0, [r2]
ldr r1, _080598F4 @ =0x00207FFC
orrs r0, r1
@ -453,7 +453,7 @@ _080598AA:
.align 2, 0
_080598E8: .4byte gUnk_020176E0
_080598EC: .4byte gUnk_02017700
_080598F0: .4byte gUnk_0200B644
_080598F0: .4byte gUsedPalettes
_080598F4: .4byte 0x00207FFC
thumb_func_start sub_080598F8
@ -547,7 +547,7 @@ sub_08059994: @ 0x08059994
cmp r0, #0
beq _080599AE
movs r0, #0x5b
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
ldr r0, _080599B0 @ =gArea
ldr r1, _080599B4 @ =0x00000864
adds r0, r0, r1

View File

@ -378,7 +378,7 @@ _08059CE8:
_08059CEC:
adds r6, r1, r0
ldr r0, [r6]
ldr r4, _08059D14 @ =gUnk_085A2E80
ldr r4, _08059D14 @ =gGlobalGfxAndPalettes
adds r0, r0, r4
ldr r1, [r6, #4]
movs r5, #0x80
@ -393,7 +393,7 @@ _08059CEC:
pop {r4, r5, r6, pc}
.align 2, 0
_08059D10: .4byte gUnk_08108468
_08059D14: .4byte gUnk_085A2E80
_08059D14: .4byte gGlobalGfxAndPalettes
thumb_func_start sub_08059D18
sub_08059D18: @ 0x08059D18

View File

@ -1089,7 +1089,7 @@ sub_0805AA58: @ 0x0805AA58
adds r0, r0, r1
movs r1, #5
movs r2, #1
bl sub_0801D754
bl LoadPalettes
_0805AA8C:
ldrb r0, [r4, #0xf]
subs r0, #1
@ -1139,7 +1139,7 @@ sub_0805AADC: @ 0x0805AADC
lsls r0, r0, #1
adds r0, r0, r1
ldrh r0, [r0]
bl sub_0801D7EC
bl LoadGfxGroup
pop {pc}
.align 2, 0
_0805AAEC: .4byte gUnk_08108648

View File

@ -418,7 +418,7 @@ sub_0805B328: @ 0x0805B328
adds r0, r0, r1
ldr r0, [r0, #0xc]
ldr r0, [r0]
ldr r1, _0805B378 @ =gUnk_085A2E80
ldr r1, _0805B378 @ =gGlobalGfxAndPalettes
adds r0, r0, r1
ldr r1, _0805B37C @ =0x0600F000
movs r4, #0x80
@ -445,7 +445,7 @@ _0805B372:
pop {r4, pc}
.align 2, 0
_0805B374: .4byte gUnk_08108764
_0805B378: .4byte gUnk_085A2E80
_0805B378: .4byte gGlobalGfxAndPalettes
_0805B37C: .4byte 0x0600F000
_0805B380: .4byte gScreen
_0805B384: .4byte 0x00001E07

View File

@ -157,7 +157,7 @@ sub_0805B4D0: @ 0x0805B4D0
ldr r0, _0805B528 @ =gUnk_08108C5C
adds r0, r5, r0
ldrb r0, [r0]
bl sub_0801D7EC
bl LoadGfxGroup
ldr r4, _0805B52C @ =gScreen
ldr r0, _0805B530 @ =0x00001E07
strh r0, [r4, #0x2c]

View File

@ -84,7 +84,7 @@ sub_080575C8: @ 0x080575C8
lsls r0, r0, #0x13
strh r5, [r0]
adds r0, r4, #0
bl sub_0801D7EC
bl LoadGfxGroup
ldr r0, _08057668 @ =gRoomVars
strb r4, [r0, #0x10]
ldr r3, _0805766C @ =gRoomControls
@ -183,7 +183,7 @@ sub_080576A0: @ 0x080576A0
adds r4, r0, #0
ldr r0, _080576BC @ =gRoomVars
ldrb r0, [r0, #0x10]
bl sub_0801D7EC
bl LoadGfxGroup
movs r0, #0
str r0, [r4, #0x38]
str r0, [r4, #0x3c]

View File

@ -88,7 +88,7 @@ _0805D46C: .4byte gScreen
sub_0805D470: @ 0x0805D470
push {lr}
movs r0, #0x4c
bl sub_0801D7EC
bl LoadGfxGroup
ldr r2, _0805D4A0 @ =gScreen
ldr r0, _0805D4A4 @ =0x00001E07
strh r0, [r2, #0x2c]

View File

@ -100,7 +100,7 @@ _0805D842:
ldr r0, _0805D854 @ =gUnk_08108D74
adds r0, r1, r0
ldrb r0, [r0]
bl sub_0801D7EC
bl LoadGfxGroup
ldr r1, _0805D858 @ =gScreen
ldr r0, _0805D85C @ =0x00001E04
strh r0, [r1, #0x2c]

View File

@ -218,7 +218,7 @@ _0805DFCA:
thumb_func_start sub_0805DFCC
sub_0805DFCC: @ 0x0805DFCC
push {lr}
ldr r0, _0805DFE4 @ =gUnk_03000FD0
ldr r0, _0805DFE4 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805DFE0
@ -228,7 +228,7 @@ sub_0805DFCC: @ 0x0805DFCC
_0805DFE0:
pop {pc}
.align 2, 0
_0805DFE4: .4byte gUnk_03000FD0
_0805DFE4: .4byte gFadeControl
thumb_func_start sub_0805DFE8
sub_0805DFE8: @ 0x0805DFE8
@ -302,7 +302,7 @@ _0805E074: .4byte 0x80010000
sub_0805E078: @ 0x0805E078
push {lr}
adds r1, r0, #0
ldr r0, _0805E090 @ =gUnk_03000FD0
ldr r0, _0805E090 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805E08E
@ -313,7 +313,7 @@ sub_0805E078: @ 0x0805E078
_0805E08E:
pop {pc}
.align 2, 0
_0805E090: .4byte gUnk_03000FD0
_0805E090: .4byte gFadeControl
thumb_func_start sub_0805E094
sub_0805E094: @ 0x0805E094

View File

@ -80,7 +80,7 @@ _0805E188: .4byte gArea
sub_0805E18C: @ 0x0805E18C
push {r4, lr}
adds r4, r0, #0
ldr r0, _0805E1D0 @ =gUnk_03000FD0
ldr r0, _0805E1D0 @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _0805E1CC
@ -112,7 +112,7 @@ _0805E1BA:
_0805E1CC:
pop {r4, pc}
.align 2, 0
_0805E1D0: .4byte gUnk_03000FD0
_0805E1D0: .4byte gFadeControl
_0805E1D4: .4byte gPlayerState
thumb_func_start sub_0805E1D8

View File

@ -76,7 +76,7 @@ _08057DD6:
movs r0, #1
strb r0, [r1]
ldr r0, [r2]
ldr r1, _08057DFC @ =gUnk_085A2E80
ldr r1, _08057DFC @ =gGlobalGfxAndPalettes
adds r0, r0, r1
ldr r1, [r2, #4]
movs r2, #0x80
@ -85,17 +85,17 @@ _08057DD6:
ldr r0, _08057E00 @ =gUnk_081081E4
adds r0, r5, r0
ldrb r0, [r0]
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
b _08057E24
.align 2, 0
_08057DF8: .4byte gUnk_02034490
_08057DFC: .4byte gUnk_085A2E80
_08057DFC: .4byte gGlobalGfxAndPalettes
_08057E00: .4byte gUnk_081081E4
_08057E04:
lsls r1, r1, #3
adds r1, r1, r2
ldr r0, [r1]
ldr r2, _08057E1C @ =gUnk_085A2E80
ldr r2, _08057E1C @ =gGlobalGfxAndPalettes
adds r0, r0, r2
ldr r1, [r1, #4]
movs r2, #0x80
@ -103,7 +103,7 @@ _08057E04:
bl LoadAssetAsync
b _08057E24
.align 2, 0
_08057E1C: .4byte gUnk_085A2E80
_08057E1C: .4byte gGlobalGfxAndPalettes
_08057E20:
ldr r0, _08057E2C @ =gUnk_02034490
strb r3, [r0]
@ -169,13 +169,13 @@ sub_08057E7C: @ 0x08057E7C
ldr r0, _08057EB8 @ =gUnk_081081E4
adds r0, r4, r0
ldrb r0, [r0]
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
lsls r1, r4, #6
ldr r0, _08057EBC @ =gUnk_081080A4
adds r1, r1, r0
movs r3, #0
ldr r2, _08057EC0 @ =0x040000D4
ldr r6, _08057EC4 @ =gUnk_085A2E80
ldr r6, _08057EC4 @ =gGlobalGfxAndPalettes
ldr r5, _08057EC8 @ =0x84000400
_08057E9C:
ldr r0, [r1]
@ -197,6 +197,6 @@ _08057EB6:
_08057EB8: .4byte gUnk_081081E4
_08057EBC: .4byte gUnk_081080A4
_08057EC0: .4byte 0x040000D4
_08057EC4: .4byte gUnk_085A2E80
_08057EC4: .4byte gGlobalGfxAndPalettes
_08057EC8: .4byte 0x84000400
_08057ECC: .4byte gRoomVars

View File

@ -35,7 +35,7 @@ sub_08057EFC: @ 0x08057EFC
adds r4, r0, #0
ldr r0, _08057F1C @ =gRoomVars
ldrb r0, [r0, #0x10]
bl sub_0801D7EC
bl LoadGfxGroup
bl sub_08058034
movs r0, #0
str r0, [r4, #0x3c]
@ -267,7 +267,7 @@ sub_080580B0: @ 0x080580B0
lsls r0, r0, #0x13
strh r1, [r0]
adds r0, r4, #0
bl sub_0801D7EC
bl LoadGfxGroup
ldr r0, _080581B4 @ =gRoomVars
strb r4, [r0, #0x10]
bl sub_08058034

View File

@ -185,10 +185,10 @@ sub_08058324: @ 0x08058324
str r0, [r1]
adds r0, r4, #0
adds r0, #0x86
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
adds r0, r4, #0
adds r0, #0x36
bl sub_0801D7EC
bl LoadGfxGroup
bl sub_080582D0
adds r0, r4, #0
bl sub_08058244

View File

@ -647,21 +647,21 @@ _08058D30: .4byte gRoomControls
sub_08058D34: @ 0x08058D34
push {r4, lr}
movs r0, #0x28
bl LoadPalettesByPaletteGroupIndex
bl LoadPaletteGroup
ldr r0, _08058DAC @ =gUnk_02017700
movs r2, #0x90
lsls r2, r2, #2
adds r1, r0, r2
movs r2, #0x20
bl sub_0801D66C
ldr r2, _08058DB0 @ =gUnk_0200B644
ldr r2, _08058DB0 @ =gUsedPalettes
ldr r0, [r2]
movs r1, #0x80
lsls r1, r1, #0xe
orrs r0, r1
str r0, [r2]
movs r0, #0x16
bl sub_0801D7EC
bl LoadGfxGroup
ldr r1, _08058DB4 @ =gScreen
ldrh r0, [r1]
movs r3, #0
@ -697,12 +697,12 @@ sub_08058D34: @ 0x08058D34
cmp r0, #0
beq _08058DA8
movs r0, #0x4a
bl sub_0801D7EC
bl LoadGfxGroup
_08058DA8:
pop {r4, pc}
.align 2, 0
_08058DAC: .4byte gUnk_02017700
_08058DB0: .4byte gUnk_0200B644
_08058DB0: .4byte gUsedPalettes
_08058DB4: .4byte gScreen
_08058DB8: .4byte 0x0000BC82
_08058DBC: .4byte 0x00005E86

View File

@ -30,7 +30,7 @@ sub_0808BB30: @ 0x0808BB30
cmp r1, #0
beq _0808BB4C
movs r0, #0x4a
bl sub_0801D7EC
bl LoadGfxGroup
bl DeleteThisEntity
b _0808BBD4
_0808BB4C:
@ -229,7 +229,7 @@ _0808BCCA:
beq _0808BCFE
strb r6, [r5, #0xf]
movs r0, #0x4a
bl sub_0801D7EC
bl LoadGfxGroup
b _0808BCFE
.align 2, 0
_0808BCDC: .4byte 0x0000FFFE
@ -246,7 +246,7 @@ _0808BCE4:
beq _0808BCFE
strb r4, [r5, #0xf]
movs r0, #0x49
bl sub_0801D7EC
bl LoadGfxGroup
_0808BCFE:
pop {r4, r5, r6, pc}

View File

@ -1,108 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_080AD76C
sub_080AD76C: @ 0x080AD76C
push {lr}
ldr r1, _080AD780 @ =gMenu
ldrb r0, [r1, #6]
cmp r0, #1
beq _080AD7B4
cmp r0, #1
bgt _080AD784
cmp r0, #0
beq _080AD78A
b _080AD80E
.align 2, 0
_080AD780: .4byte gMenu
_080AD784:
cmp r0, #2
beq _080AD7DC
b _080AD80E
_080AD78A:
ldr r0, _080AD7AC @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080AD82A
movs r0, #1
strb r0, [r1, #6]
ldr r2, _080AD7B0 @ =gScreen
ldrh r1, [r2]
movs r3, #0x80
lsls r3, r3, #3
adds r0, r3, #0
orrs r0, r1
strh r0, [r2]
movs r0, #0xf6
bl PlaySFX
b _080AD82A
.align 2, 0
_080AD7AC: .4byte gUnk_03000FD0
_080AD7B0: .4byte gScreen
_080AD7B4:
ldr r0, [r1, #0x2c]
adds r0, #0x10
str r0, [r1, #0x2c]
movs r2, #0x80
lsls r2, r2, #1
cmp r0, r2
ble _080AD7D6
str r2, [r1, #0x2c]
movs r0, #0x28
strh r0, [r1, #8]
ldrb r0, [r1, #6]
adds r0, #1
strb r0, [r1, #6]
movs r0, #6
movs r1, #0x10
bl DoFade
_080AD7D6:
bl sub_080AD670
b _080AD82A
_080AD7DC:
ldrh r0, [r1, #8]
subs r0, #1
strh r0, [r1, #8]
lsls r0, r0, #0x10
cmp r0, #0
bne _080AD82A
movs r0, #0x96
lsls r0, r0, #1
strh r0, [r1, #8]
ldrb r0, [r1, #6]
adds r0, #1
strb r0, [r1, #6]
movs r0, #0xbd
movs r1, #0
movs r2, #0
bl CreateObject
movs r0, #6
movs r1, #0x10
bl DoFade
movs r0, #0xf8
bl PlaySFX
b _080AD82A
_080AD80E:
ldr r0, _080AD82C @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080AD82A
bl sub_080AD84C
cmp r0, #0
beq _080AD82A
ldr r0, _080AD830 @ =gMenu
ldrb r1, [r0, #5]
adds r1, #1
strb r1, [r0, #5]
movs r1, #0x3c
strh r1, [r0, #8]
_080AD82A:
pop {pc}
.align 2, 0
_080AD82C: .4byte gUnk_03000FD0
_080AD830: .4byte gMenu

View File

@ -1,51 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_080AD84C
sub_080AD84C: @ 0x080AD84C
push {lr}
ldr r0, _080AD864 @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080AD894
ldr r0, _080AD868 @ =gUnk_02000010
ldrb r0, [r0, #5]
cmp r0, #0
bne _080AD86C
movs r2, #0
b _080AD874
.align 2, 0
_080AD864: .4byte gUnk_03000FD0
_080AD868: .4byte gUnk_02000010
_080AD86C:
ldr r0, _080AD888 @ =gUnk_03000FF0
ldrh r0, [r0, #2]
movs r2, #9
ands r2, r0
_080AD874:
ldr r1, _080AD88C @ =gMenu
ldrh r0, [r1, #8]
subs r0, #1
strh r0, [r1, #8]
lsls r0, r0, #0x10
cmp r0, #0
bne _080AD890
movs r0, #1
b _080AD89A
.align 2, 0
_080AD888: .4byte gUnk_03000FF0
_080AD88C: .4byte gMenu
_080AD890:
cmp r2, #0
bne _080AD898
_080AD894:
movs r0, #0
b _080AD89A
_080AD898:
movs r0, #2
_080AD89A:
pop {pc}

View File

@ -1,49 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_080AD89C
sub_080AD89C: @ 0x080AD89C
push {r4, lr}
ldr r4, _080AD8E4 @ =gMenu
ldrb r1, [r4, #0x12]
movs r0, #7
ands r0, r1
cmp r0, #0
bne _080AD8BC
ldrb r0, [r4, #0x10]
adds r0, #1
movs r1, #3
ands r0, r1
strb r0, [r4, #0x10]
ldrb r0, [r4, #0x10]
adds r0, #5
bl LoadPalettesByPaletteGroupIndex
_080AD8BC:
ldrb r1, [r4, #0x12]
movs r0, #0x1f
ands r0, r1
cmp r0, #0
bne _080AD8E0
ldrb r0, [r4, #0x11]
adds r0, #1
movs r1, #7
ands r0, r1
strb r0, [r4, #0x11]
ldr r1, _080AD8E8 @ =gScreen
ldr r2, _080AD8EC @ =gUnk_081320FC
ldrb r0, [r4, #0x11]
lsls r0, r0, #1
adds r0, r0, r2
ldrh r0, [r0]
adds r1, #0x68
strh r0, [r1]
_080AD8E0:
pop {r4, pc}
.align 2, 0
_080AD8E4: .4byte gMenu
_080AD8E8: .4byte gScreen
_080AD8EC: .4byte gUnk_081320FC

View File

@ -1399,7 +1399,7 @@ sub_08041E20: @ 0x08041E20
ldr r0, [r4, #0x64]
ldr r0, [r0, #8]
bl GetNextFrame
ldr r0, _08041E4C @ =gUnk_03000FD0
ldr r0, _08041E4C @ =gFadeControl
ldrb r0, [r0]
cmp r0, #0
bne _08041E48
@ -1410,7 +1410,7 @@ sub_08041E20: @ 0x08041E20
_08041E48:
pop {r4, pc}
.align 2, 0
_08041E4C: .4byte gUnk_03000FD0
_08041E4C: .4byte gFadeControl
thumb_func_start sub_08041E50
sub_08041E50: @ 0x08041E50

File diff suppressed because it is too large Load Diff

9347
data/data_08100CD4.s Executable file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

14852
data/data_081320FC.s Executable file

File diff suppressed because it is too large Load Diff

View File

@ -138,7 +138,7 @@ extern void sub_0801AFE4(void);
extern u32 sub_08060354(void);
extern void sub_08057E64(void);
extern void LoadAssetAsync(void*, u32, u32);
extern void LoadPalettesByPaletteGroupIndex(u32);
extern void LoadPaletteGroup(u32);
extern void sub_0809F814(u32);
extern void sub_080300E8(void);
extern void sub_0801DA90(u32);
@ -168,16 +168,10 @@ extern void sub_080AF2E4(void);
extern void sub_0805ADD8(u32);
extern void sub_0804F578(void);
extern void sub_08059994(void);
extern u32 sub_080AD84C();
extern void sub_0801D7EC(u32);
extern void LoadGfxGroup(u32);
extern s32 sub_0801CFA8(u32);
extern void sub_080AD670();
extern void sub_080A3210();
extern void sub_080AD6AC();
extern void sub_080AD76C();
extern void sub_080AD644();
extern void sub_080ADA14(u32, u32);
extern void sub_080AD89C();
extern void sub_0801E1B8(u32, u32);
extern void sub_0801E1EC(s32, s32, s32);
extern void sub_08050008(void);
@ -244,6 +238,12 @@ extern void sub_0807921C();
extern void sub_0807A1B8();
extern void sub_08079938();
extern void sub_0807ACCC(Entity*);
extern void HandleIntroScreen(void);
extern void HandleChooseFileScreen(void);
extern void HandleGameplayScreen(void);
extern void HandleGameOverScreen(void);
extern void HandleCreditsScreen(void);
extern void HandleDebugTextScreen(void);
extern void sub_080A2BE4(Entity*, u32);
extern u32 sub_08097ADC(Entity*);
extern void sub_08097B24(Entity*);

View File

@ -20,6 +20,7 @@ enum {
SCREEN_GAMEPLAY,
SCREEN_GAME_OVER,
SCREEN_CREDITS,
SCREEN_DEBUG_TEXT,
};
typedef struct {

View File

@ -36,8 +36,9 @@ typedef struct {
u8 unk16;
u8 filler17[0x13];
u8 unk2a;
u32 field_0x2c;
int field_0x2c;
} Menu;
extern Menu gMenu;
#endif

View File

@ -4,19 +4,25 @@
#include "global.h"
typedef struct {
u16 lcdControl2;
u16 unk2;
u32 unk;
u16 lcdControl1;
u16 displayControl;
u8 filler2[0x2];
u16 unk4;
u16 unk6;
} LcdControls;
typedef struct {
u16 bg0Control;
u16 bg1Control;
u16 bg2Control;
u16 bg3Control;
u16 bg0xOffset;
u16 bg0yOffset;
u16 bg0Updated;
u16 unk;
u16 unk2;
u16 bg1xOffset;
u16 bg1yOffset;
u16 bg2xOffset;
u16 bg2yOffset;
u16 bg3xOffset;
u16 bg3yOffset;
} BgSettings;
typedef struct {
@ -63,11 +69,10 @@ typedef struct {
} BgControls;
typedef struct {
LcdControls lcd;
BgSettings bg1;
BgSettings bg2;
BgAffSettings affine;
BgControls controls;
/*0x00*/ LcdControls lcd;
/*0x08*/ BgSettings bg;
/*0x20*/ BgAffSettings affine;
/*0x38*/ BgControls controls;
} Screen;
extern BgControls gBgControls;

View File

@ -28,7 +28,7 @@ typedef struct {
typedef struct {
u8 filler0[0x4];
u8 field_0x4;
u8 field_0x5;
u8 listenForKeyPresses;
} struct_02000010;
extern struct_02000010 gUnk_02000010;
@ -107,4 +107,23 @@ typedef struct {
extern struct_02019EE0 gUnk_02019EE0;
typedef struct {
u8 active;
u8 field_0x1;
u8 field_0x2;
u8 field_0x3;
u32 field_0x4;
u16 fadeType; // fade in or out, are there others?
u16 fadeSpeed; // subtracted from duration
u16 fadeDuration;
u16 field_0xe;
s16 field_0x10;
s16 field_0x12;
s16 field_0x14;
u16 field_0x16;
u16 field_0x18;
} struct_03000FD0;
extern struct_03000FD0 gFadeControl;
#endif

View File

@ -17,6 +17,7 @@ SECTIONS {
. = 0x0000005C; gUnk_0200005C = .;
. = 0x00000070; gUnk_02000070 = .;
. = 0x00000080; gMenu = .;
. = 0x00000080; gIntroState = .;
. = 0x00000090; gUnk_02000090 = .;
. = 0x000000B0; gUnk_020000B0 = .;
. = 0x000000C0; gUnk_020000C0 = .;
@ -49,7 +50,7 @@ SECTIONS {
. = 0x0000AF34; gUnk_0200AF34 = .;
. = 0x0000B240; gUnk_0200B240 = .;
. = 0x0000B640; gUnk_0200B640 = .;
. = 0x0000B644; gUnk_0200B644 = .;
. = 0x0000B644; gUsedPalettes = .;
. = 0x0000B650; gUnk_0200B650 = .;
. = 0x0000B654; gUnk_0200B654 = .;
. = 0x0000D654; gUnk_0200D654 = .;
@ -60,7 +61,7 @@ SECTIONS {
. = 0x00016654; gUnk_02016654 = .;
. = 0x00017654; gUnk_02017654 = .;
. = 0x00017660; gUnk_02017660 = .;
. = 0x000176A0; gUnk_020176A0 = .;
. = 0x000176A0; gPaletteBuffer = .;
. = 0x000176E0; gUnk_020176E0 = .;
. = 0x00017700; gUnk_02017700 = .;
. = 0x00017830; gUnk_02017830 = .;
@ -169,7 +170,7 @@ SECTIONS {
. = 0x00000F70; gBGAffSettings = .;
. = 0x00000F88; gBgControls = .;
. = 0x00000FBC; gUnk_03000FBC = .;
. = 0x00000FD0; gUnk_03000FD0 = .;
. = 0x00000FD0; gFadeControl = .;
. = 0x00000FF0; gUnk_03000FF0 = .;
. = 0x00001000; gUnk_03001000 = .;
. = 0x00001010; gUnk_03001010 = .;
@ -320,7 +321,8 @@ SECTIONS {
src/dma.o(.text);
asm/sub_0801D66C.o(.text);
src/input.o(.text);
asm/code_0801D714.o(.text);
src/code_0801D714.o(.text);
src/code_0801D79C.o(.text);
asm/code_0801D79C.o(.text);
/* enemies */
src/enemy/octorok.o(.text);
@ -886,11 +888,7 @@ SECTIONS {
asm/code_080A3BD0.o(.text);
src/sub_080A554C.o(.text);
asm/code_080A5574.o(.text);
src/introSetTransition.o(.text);
asm/sub_080AD76C.o(.text);
src/sub_080AD834.o(.text);
asm/sub_080AD84C.o(.text);
asm/sub_080AD89C.o(.text);
src/intro.o(.text);
asm/sub_080AD8F0.o(.text);
asm/code_080AD90C.o(.text);
/* library functions */
@ -915,6 +913,8 @@ SECTIONS {
data/data_080D3D94.o(.rodata);
data/areaPropertyLists.o(.rodata);
data/data_080D5360.o(.rodata);
src/mainLoop.o(.rodata);
data/data_08100CD4.o(.rodata);
src/item.o(.rodata);
data/data_0811BD44.o(.rodata);
src/object/greatFairy.o(.rodata);
@ -922,6 +922,8 @@ SECTIONS {
data/data_081208A0.o(.rodata);
src/object/heartContainer.o(.rodata);
data/data_08121C58.o(.rodata);
src/intro.o(.rodata);
data/data_081320FC.o(.rodata);
data/strings.o(.rodata);
data/data_089FC6C4.o(.rodata);
} >rom

43
src/code_0801D714.c Executable file
View File

@ -0,0 +1,43 @@
#include "global.h"
extern void LoadPalettes(const u8*, int, int);
extern u32 gUsedPalettes;
extern u16 gPaletteBuffer[];
typedef struct {
u16 paletteId;
u8 destPaletteNum;
u8 numPalettes;
} PaletteGroup;
extern const PaletteGroup* gPaletteGroups[];
extern const u8 gGlobalGfxAndPalettes[];
void LoadPaletteGroup(u32 group) {
const PaletteGroup* paletteGroup = gPaletteGroups[group];
while (1) {
u32 destPaletteNum = paletteGroup->destPaletteNum;
u32 numPalettes = paletteGroup->numPalettes & 0xF;
if (numPalettes == 0) {
numPalettes = 16;
}
LoadPalettes(&gGlobalGfxAndPalettes[paletteGroup->paletteId * 32], destPaletteNum, numPalettes);
if ((paletteGroup->numPalettes & 0x80) == 0) {
break;
}
paletteGroup++;
}
}
void LoadPalettes(const u8* src, int destPaletteNum, int numPalettes) {
u16* dest;
u32 size = numPalettes * 32;
u32 usedPalettesMask = 1 << destPaletteNum;
while (--numPalettes > 0) {
usedPalettesMask |= (usedPalettesMask << 1);
}
gUsedPalettes |= usedPalettesMask;
dest = &gPaletteBuffer[destPaletteNum * 16];
DmaCopy32(3, src, dest, size);
}

96
src/code_0801D79C.c Executable file
View File

@ -0,0 +1,96 @@
#include "global.h"
#include "screen.h"
#include "structures.h"
extern u16 gPaletteBuffer[];
extern u32 gUsedPalettes;
typedef struct {
union {
int raw;
struct {
u8 filler0[0x3];
u8 unk3;
} bytes;
} unk0;
u32 dest;
u32 unk8;
} GfxItem;
extern const GfxItem* gUnk_08100AA8[];
extern const u8 gGlobalGfxAndPalettes[];
void sub_0801D79C(u32 colorIndex, u32 color) {
gPaletteBuffer[colorIndex] = color;
gUsedPalettes |= 1 << (colorIndex / 16);
}
void sub_0801D7BC(u32 color, u32 arg1) {
if (arg1) {
gScreen.lcd.unk6 = 0xE0FF;
} else {
gScreen.lcd.unk6 = 0xFFFF;
}
sub_0801D79C(0, color);
}
void LoadGfxGroup(u32 group) {
u32 terminator;
u32 dmaCtrl;
int gfxOffset;
const u8* src;
u32 dest;
int size;
const GfxItem* gfxItem = gUnk_08100AA8[group];
while (1) {
u32 loadGfx = FALSE;
u32 ctrl = gfxItem->unk0.bytes.unk3;
ctrl &= 0xF;
switch (ctrl) {
case 0x7:
loadGfx = TRUE;
break;
case 0xD:
return;
case 0xE:
if (((struct_02000000 *)0x2000000)->gameLanguage > 1) {
loadGfx = TRUE;
}
break;
case 0xF:
if (((struct_02000000 *)0x2000000)->gameLanguage != 0) {
loadGfx = TRUE;
}
break;
default:
if (ctrl == ((struct_02000000 *)0x2000000)->gameLanguage) {
loadGfx = TRUE;
}
break;
}
if (loadGfx) {
gfxOffset = gfxItem->unk0.raw & 0xFFFFFF;
src = &gGlobalGfxAndPalettes[gfxOffset];
dest = gfxItem->dest;
size = gfxItem->unk8;
dmaCtrl = 0x80000000;
if (size < 0) {
if (dest >= VRAM) {
LZ77UnCompVram(src, (void*)dest);
} else {
LZ77UnCompWram(src, (void*)dest);
}
} else {
DmaSet(3, src, dest, dmaCtrl | ((u32)size >> 1));
}
}
terminator = gfxItem->unk0.bytes.unk3;
terminator &= 0x80;
gfxItem++;
if (!terminator) {
break;
}
}
}

View File

@ -17,7 +17,6 @@ extern void (*const gUnk_080D412C[])();
extern struct_02018EB0 gUnk_02018EB0;
extern u8 gUnk_03000FD0;
u32 sub_0804AA84(void)
{
@ -62,12 +61,12 @@ void sub_0804AB04(void)
void sub_0804AB24(void)
{
if (gUnk_03000FD0 == 0) {
gScreen.lcd.lcdControl2 = 0;
if (!gFadeControl.active) {
gScreen.lcd.displayControl = 0;
sub_0801E104();
gArea.filler[8] = 0;
MenuFadeIn(6, 0);
gUnk_03000FD0 = 0;
gFadeControl.active = 0;
}
}

367
src/intro.c Normal file
View File

@ -0,0 +1,367 @@
#include "global.h"
#include "menu.h"
#include "main.h"
#include "entity.h"
#include "functions.h"
#include "readKeyInput.h"
#include "screen.h"
#include "structures.h"
typedef struct {
u8 filler0[0x4];
u8 gameLanguage;
u8 state;
u8 subState;
u8 filler7[0x1];
u16 timer;
u8 fillerA[0x6];
u8 lightRaysPaletteGroup;
u8 lightRaysAlphaBlendIndex;
u8 counter;
u8 filler13[0x19];
int swordBgScaleRatio;
} IntroState;
extern IntroState gIntroState;
enum {
ADVANCE_NONE,
ADVANCE_TIMER_EXPIRED,
ADVANCE_KEY_PRESSED,
};
static void HandleNintendoCapcomLogos(void);
static void HandleTitlescreen(void);
static void UpdateSwordBgAffineData(void);
static void ExitTitlescreen(void);
static void HandleJapaneseTitlescreenAnimationIntro(void);
static void HandleTitlescreenAnimationIntro(void);
static u32 GetAdvanceState(void);
static void UpdateLightRays(void);
static void UpdatePressStartIcon(void);
static void (*const sIntroSequenceHandlers[])(void) = {
HandleNintendoCapcomLogos,
HandleTitlescreen,
ExitTitlescreen,
};
static const u16 sLightRaysAlphaBlends[] = {
BLDALPHA_BLEND(9, 9),
BLDALPHA_BLEND(8, 10),
BLDALPHA_BLEND(7, 11),
BLDALPHA_BLEND(6, 12),
BLDALPHA_BLEND(5, 13),
BLDALPHA_BLEND(6, 12),
BLDALPHA_BLEND(7, 11),
BLDALPHA_BLEND(8, 10),
};
static u32 AdvanceIntroSequence(u32 transition)
{
gUnk_02032EC0.transitionType = transition;
gUnk_03001000.funcIndex = 2;
_DmaZero(&gIntroState, sizeof(gIntroState));
DoFade(7, 8);
}
void HandleIntroScreen(void)
{
sub_080AD90C();
switch (gUnk_03001000.funcIndex) {
case 0:
sub_08056418();
_DmaZero(&gUnk_02032EC0, 0x3b4);
AdvanceIntroSequence(0);
break;
case 1:
sIntroSequenceHandlers[gUnk_02032EC0.transitionType]();
break;
case 2:
if (gFadeControl.active) {
return;
}
sub_0801DA90(1);
gUnk_03001000.funcIndex = 1;
break;
}
sub_080AD918();
}
static void HandleNintendoCapcomLogos(void)
{
u32 advance;
u32 paletteGroup;
advance = GetAdvanceState();
if (gIntroState.state == 0) {
sub_0801DA90(1);
gIntroState.state = 1;
gIntroState.timer = 120;
LoadGfxGroup(16);
LoadGfxGroup(1);
if (((struct_02000000 *)0x2000000)->gameLanguage == 0) {
paletteGroup = 1;
}
else {
paletteGroup = 2;
}
LoadPaletteGroup(paletteGroup);
gScreen.lcd.displayControl |= 0x400;
gScreen.bg.bg2yOffset = 1;
DoFade(6, 8);
advance = ADVANCE_NONE;
} else {
if (advance == ADVANCE_TIMER_EXPIRED) {
advance = ADVANCE_KEY_PRESSED;
}
}
if (advance == ADVANCE_KEY_PRESSED) {
gUnk_02000010.listenForKeyPresses = 1;
AdvanceIntroSequence(1);
}
}
extern u16 gUnk_03001010[5];
extern u8 gUnk_02024490;
static void HandleTitlescreen(void)
{
int advance;
u32 paletteGroup;
gIntroState.counter++;
switch (gIntroState.state) {
case 0:
gIntroState.state = 1;
gIntroState.subState = 0;
gIntroState.timer = 30;
gIntroState.gameLanguage = 7;
EraseAllEntities();
sub_0801CFA8(0);
sub_080ADD30();
gUnk_02024490 = 1;
LoadGfxGroup(2);
if (((struct_02000000*)0x2000000)->gameLanguage == 0) {
paletteGroup = 3;
}
else {
paletteGroup = 4;
}
LoadPaletteGroup(paletteGroup);
if (((struct_02000000*)0x2000000)->gameLanguage == 0) {
gScreen.controls.layerFXControl = 0x844;
gScreen.controls.alphaBlend = BLDALPHA_BLEND(9, 9);
gScreen.bg.bg1xOffset = 0x1c09;
gScreen.affine.bg2Control = 0x1d02;
gScreen.affine.bg3Control = 0x1e03;
gScreen.lcd.displayControl |= 0x1e00;
gScreen.bg.bg2xOffset = 0xff60;
}
else {
gScreen.controls.layerFXControl = 0x241;
gScreen.controls.alphaBlend = BLDALPHA_BLEND(9, 9);
gScreen.bg.bg0Control = 0x1d02;
gScreen.bg.bg1xOffset = 0x1E03;
gScreen.affine.bg2Control = 0x7C89;
gScreen.lcd.displayControl |= 1;
gScreen.lcd.displayControl |= 0x1300;
gIntroState.swordBgScaleRatio = 0x10;
UpdateSwordBgAffineData();
}
sub_080A3210();
PlaySFX(3); //fanfare
DoFade(6, 8);
break;
case 1:
if (gFadeControl.active) {
return;
}
if (((struct_02000000*)0x2000000)->gameLanguage == 0) {
HandleJapaneseTitlescreenAnimationIntro();
}
else {
HandleTitlescreenAnimationIntro();
}
break;
case 2:
if (--gIntroState.timer == 0) {
gIntroState.timer = 3600;
gIntroState.state++;
}
UpdatePressStartIcon();
break;
default:
advance = GetAdvanceState();
if (advance != ADVANCE_NONE) {
if (advance == ADVANCE_KEY_PRESSED) {
PlaySFX(0x6a);
}
else {
advance = ADVANCE_NONE;
}
AdvanceIntroSequence(advance);
PlaySFX(0x80080000);
}
UpdatePressStartIcon();
if ((gIntroState.timer & 0x20) == 0) {
gUnk_03001010[4] = 0xe000;
gUnk_03001010[1] = 0x84;
sub_080ADA14(0x1ff,0);
}
}
if (gIntroState.gameLanguage != ((struct_02000000*)0x2000000)->gameLanguage) {
gIntroState.gameLanguage = ((struct_02000000*)0x2000000)->gameLanguage;
LoadGfxGroup(3);
}
UpdateLightRays();
sub_0805E5C0();
sub_080AD9B0();
}
static void UpdatePressStartIcon(void) {
gUnk_03001010[2] = 0;
gUnk_03001010[3] = 0;
gUnk_03001010[4] = 0xE020;
gUnk_03001010[0] = 120;
gUnk_03001010[1] = 152;
sub_080ADA14(511, 1);
return;
}
static void UpdateSwordBgAffineData(void)
{
struct BgAffineSrcData aff;
aff.texY = 0x8000;
aff.texX = 0x8000;
aff.scrX = 0x78;
aff.scrY = 0x48;
aff.alpha = 0;
aff.sy = aff.sx = gIntroState.swordBgScaleRatio;
BgAffineSet(&aff, (struct BgAffineDstData*)&gBgControls, 1);
}
static void HandleJapaneseTitlescreenAnimationIntro(void)
{
Entity *pEVar2;
switch (gIntroState.subState) {
case 0:
if (!gFadeControl.active) {
if ((gIntroState.counter & 1) == 0) {
gScreen.bg.bg2xOffset++;
}
if (GetAdvanceState() == ADVANCE_KEY_PRESSED || gScreen.bg.bg2xOffset == 0) {
gIntroState.subState++;
gScreen.bg.bg2xOffset = 0;
gScreen.bg.bg1xOffset = 0xc09;
gFadeControl.field_0x4 = 0x40;
DoFade(6, 0x10);
PlaySFX(0xf8);
}
}
break;
case 1:
if (!gFadeControl.active) {
gFadeControl.field_0x4 = -1;
gIntroState.subState++;
gIntroState.timer = 90;
pEVar2 = CreateObject(0xb4,0,0);
if (pEVar2 != NULL) {
pEVar2->x.HALF.HI = 0;
pEVar2->y.HALF.HI = 0x48;
}
}
break;
case 2:
if (GetAdvanceState() != ADVANCE_NONE) {
gIntroState.state++;
gIntroState.timer = 60;
}
}
}
static void HandleTitlescreenAnimationIntro(void) {
switch (gIntroState.subState) {
case 0:
if (!gFadeControl.active) {
gIntroState.subState = 1;
gScreen.lcd.displayControl |= 0x400;
PlaySFX(0xF6);
}
break;
case 1:
gIntroState.swordBgScaleRatio += 0x10;
if (gIntroState.swordBgScaleRatio > 0x100) {
gIntroState.swordBgScaleRatio = 0x100;
gIntroState.timer = 40;
gIntroState.subState++;
DoFade(6, 16);
}
UpdateSwordBgAffineData();
break;
case 2:
if (--gIntroState.timer == 0) {
gIntroState.timer = 300;
gIntroState.subState++;
CreateObject(0xBD, 0, 0);
DoFade(6, 16);
PlaySFX(0xF8);
}
break;
default:
if (!gFadeControl.active && GetAdvanceState() != ADVANCE_NONE) {
gIntroState.state++;
gIntroState.timer = 60;
}
break;
}
}
static void ExitTitlescreen(void) {
if (!gFadeControl.active) {
InitScreen(SCREEN_CHOOSE_FILE);
}
}
static u32 GetAdvanceState(void) {
u32 newKeys;
if (gFadeControl.active) {
return ADVANCE_NONE;
}
if (!gUnk_02000010.listenForKeyPresses) {
newKeys = 0;
} else {
newKeys = gUnk_03000FF0.newKeys & (A_BUTTON | START_BUTTON);
}
if (--gIntroState.timer == 0) {
return ADVANCE_TIMER_EXPIRED;
}
if (newKeys) {
return ADVANCE_KEY_PRESSED;
}
return ADVANCE_NONE;
}
static void UpdateLightRays(void) {
// Periodically rotate the palette to give a shimmeriming effect.
if ((gIntroState.counter & 0x7) == 0) {
gIntroState.lightRaysPaletteGroup++;
gIntroState.lightRaysPaletteGroup &= 0x3;
LoadPaletteGroup(5 + gIntroState.lightRaysPaletteGroup);
}
// Periodiccally update the transparency of the light rays.
if ((gIntroState.counter & 0x1F) == 0) {
gIntroState.lightRaysAlphaBlendIndex = (gIntroState.lightRaysAlphaBlendIndex + 1) & 0x7;
gScreen.controls.alphaBlend = sLightRaysAlphaBlends[gIntroState.lightRaysAlphaBlendIndex];
}
}

View File

@ -1,252 +0,0 @@
#include "global.h"
#include "menu.h"
#include "main.h"
#include "entity.h"
#include "functions.h"
#include "screen.h"
#include "structures.h"
extern void (*const gUnk_081320F0[])();
typedef struct {
u8 field_0x0;
u8 field_0x1;
u8 field_0x2;
u8 field_0x3;
u32 field_0x4;
} struct_03000FD0;
extern struct_03000FD0 gUnk_03000FD0;
u32 IntroSetTransition(u32 transition)
{
gUnk_02032EC0.transitionType = transition;
gUnk_03001000.funcIndex = 2;
_DmaZero((u32 *)&gMenu, 48);
DoFade(7, 8);
}
void sub_080AD380()
{
sub_080AD90C();
switch (gUnk_03001000.funcIndex) {
case 0:
sub_08056418();
_DmaZero(&gUnk_02032EC0, 0x3b4);
IntroSetTransition(0);
break;
case 1:
gUnk_081320F0[gUnk_02032EC0.transitionType]();
break;
case 2:
if (gUnk_03000FD0.field_0x0 != 0) {
return;
}
sub_0801DA90(1);
gUnk_03001000.funcIndex = 1;
break;
}
sub_080AD918();
}
void sub_080AD3F4(void)
{
u32 iVar1;
u32 uVar2;
iVar1 = sub_080AD84C();
if (gMenu.menuType == 0) {
sub_0801DA90(1);
gMenu.menuType = 1;
gMenu.transitionTimer = 0x78;
sub_0801D7EC(0x10);
sub_0801D7EC(1);
if (((struct_02000000 *)0x2000000)->gameLanguage == 0) {
uVar2 = 1;
}
else {
uVar2 = 2;
}
LoadPalettesByPaletteGroupIndex(uVar2);
gScreen.lcd.lcdControl2 |= 0x400;
gScreen.bg2.bg0xOffset = 1;
DoFade(6, 8);
iVar1 = 0;
}
else {
if (iVar1 == 1) {
iVar1 = 2;
}
}
if (iVar1 == 2) {
gUnk_02000010.field_0x5 = 1;
IntroSetTransition(1);
}
}
// typedef struct {
// u16 field_0x0[5];
// } struct_03001010;
extern u16 gUnk_03001010[5];
extern u8 gUnk_02024490;
void sub_080AD474(void)
{
int iVar2;
u32 uVar3;
gMenu.field_0x12++;
switch (gMenu.menuType) {
case 0:
gMenu.menuType = 1;
gMenu.overlayType = 0;
gMenu.transitionTimer = 0x1e;
gMenu.field_0x4 = 7;
EraseAllEntities();
sub_0801CFA8(0);
sub_080ADD30();
gUnk_02024490 = 1;
sub_0801D7EC(2);
if (((struct_02000000*)0x2000000)->gameLanguage == 0) {
uVar3 = 3;
}
else {
uVar3 = 4;
}
LoadPalettesByPaletteGroupIndex(uVar3);
if (((struct_02000000*)0x2000000)->gameLanguage == 0) {
gScreen.controls.windowOutsideControl = 0x844;
gScreen.controls.mosaicSize = 0x909;
gScreen.bg1.unk = 0x1c09;
gScreen.bg2.unk = 0x1d02;
gScreen.affine.unk2 = 0x1e03;
gScreen.lcd.lcdControl2 |= 0x1e00;
gScreen.bg2.bg0Control = 0xff60;
}
else {
gScreen.controls.windowOutsideControl = 0x241;
gScreen.controls.mosaicSize = 0x909;
gScreen.lcd.lcdControl1 = 0x1d02;
gScreen.bg1.unk = 0x1E03;
gScreen.bg2.unk = 0x7C89;
gScreen.lcd.lcdControl2 |= 1;
gScreen.lcd.lcdControl2 |= 0x1300;
gMenu.field_0x2c = 0x10;
sub_080AD670();
}
sub_080A3210();
PlaySFX(3); //fanfare
DoFade(6, 8);
break;
case 1:
if (gUnk_03000FD0.field_0x0 != 0) {
return;
}
if (((struct_02000000*)0x2000000)->gameLanguage == 0) {
sub_080AD6AC();
}
else {
sub_080AD76C();
}
break;
case 2:
gMenu.transitionTimer--;
if (gMenu.transitionTimer == 0) {
gMenu.transitionTimer = 0xe10;
gMenu.menuType++;
}
sub_080AD644();
break;
default:
iVar2 = sub_080AD84C();
if (iVar2 != 0) {
if (iVar2 == 2) {
PlaySFX(0x6a);
}
else {
iVar2 = 0;
}
IntroSetTransition(iVar2);
PlaySFX(0x80080000);
}
sub_080AD644();
if ((gMenu.transitionTimer & 0x20) == 0) {
gUnk_03001010[4] = 0xe000;
gUnk_03001010[1] = 0x84;
sub_080ADA14(0x1ff,0);
}
}
if (gMenu.field_0x4 != ((struct_02000000*)0x2000000)->gameLanguage) {
gMenu.field_0x4 = ((struct_02000000*)0x2000000)->gameLanguage;
sub_0801D7EC(3);
}
sub_080AD89C();
sub_0805E5C0();
sub_080AD9B0();
}
void sub_080AD644(void) {
gUnk_03001010[2] = 0;
gUnk_03001010[3] = 0;
gUnk_03001010[4] = 57376;
gUnk_03001010[0] = 120;
gUnk_03001010[1] = 152;
sub_080ADA14(511, 1);
return;
}
void sub_080AD670(void)
{
struct BgAffineSrcData aff;
aff.texY = 0x8000;
aff.texX = 0x8000;
aff.scrX = 0x78;
aff.scrY = 0x48;
aff.alpha = 0;
aff.sy = aff.sx = gMenu.field_0x2c;
BgAffineSet(&aff, (struct BgAffineDstData*)&gBgControls, 1);
}
void sub_080AD6AC(void)
{
Entity *pEVar2;
switch (gMenu.overlayType) {
case 0:
if (gUnk_03000FD0.field_0x0 == 0) {
if ((gMenu.field_0x12 & 1) == 0) {
gScreen.bg2.bg0Control++;
}
if ((sub_080AD84C() == 2) || (gScreen.bg2.bg0Control == 0)) {
gMenu.overlayType++;
gScreen.bg2.bg0Control = 0;
gScreen.bg1.unk = 0xc09;
gUnk_03000FD0.field_0x4 = 0x40;
DoFade(6,0x10);
PlaySFX(0xf8);
}
}
break;
case 1:
if (gUnk_03000FD0.field_0x0 == '\0') {
gUnk_03000FD0.field_0x4 = -1;
gMenu.overlayType++;
gMenu.transitionTimer = 0x5a;
pEVar2 = CreateObject(0xb4,0,0);
if (pEVar2 != NULL) {
pEVar2->x.HALF.HI = 0;
pEVar2->y.HALF.HI = 0x48;
}
}
break;
case 2:
if (sub_080AD84C()) {
gMenu.menuType++;
gMenu.transitionTimer = 0x3c;
}
}
}

View File

@ -5,8 +5,7 @@
#include "readKeyInput.h"
extern void sub_0804FF84(u32);
extern u32 gUnk_020176A0;
extern const void (*gUnk_08100CBC[])();
extern u16 gPaletteBuffer[];
extern void VBlankInterruptWait(void);
extern void DisableInterruptsAndDMA(void);
extern void sub_0801D66C(void*, u8*, int);
@ -15,6 +14,15 @@ extern void sub_08016B34(void);
static void sub_08055F70(void);
static bool32 SoftResetKeysPressed(void);
static void (*const sScreenHandlers[])(void) = {
[SCREEN_INTRO] = HandleIntroScreen,
[SCREEN_CHOOSE_FILE] = HandleChooseFileScreen,
[SCREEN_GAMEPLAY] = HandleGameplayScreen,
[SCREEN_GAME_OVER] = HandleGameOverScreen,
[SCREEN_CREDITS] = HandleCreditsScreen,
[SCREEN_DEBUG_TEXT] = HandleDebugTextScreen,
};
void MainLoop(void) {
int var0;
@ -26,12 +34,12 @@ void MainLoop(void) {
sub_08056208();
gUnk_02000010.field_0x4 = 193;
sub_0804FFE4();
DmaSet(3, 0x5000000U, &gUnk_020176A0, 0x84000080U);
DmaSet(3, 0x5000000U, gPaletteBuffer, 0x84000080U);
sub_0804FF84(1);
sub_08056418();
sub_080ADD30();
gRand = 0x1234567;
_DmaZero(&gUnk_03001000, 16);
_DmaZero(&gUnk_03001000, sizeof(gUnk_03001000));
InitScreen(SCREEN_INTRO);
while (1) {
ReadKeyInput();
@ -60,7 +68,7 @@ void MainLoop(void) {
}
gUnk_03001000.ticks++;
gUnk_08100CBC[gUnk_03001000.screen]();
sScreenHandlers[gUnk_03001000.screen]();
sub_08056458();
sub_08050154();
sub_080A3480();

View File

@ -2,7 +2,7 @@
#include "entity.h"
#include "screen.h"
extern void sub_0801D7EC(u32);
extern void LoadGfxGroup(u32);
extern void sub_08056250(void);
extern void sub_080570B8(Entity*);
void sub_080570F8(void);
@ -23,7 +23,7 @@ void Manager1(Entity *this)
bVar1 = gUnk_08107C40[((u8*)&this->field_0x20)[1]];
if ((bVar1 != 0) && (*(u8 *)&this->field_0x20 != bVar1)) {
((u8*)&this->field_0x20)[0] = bVar1;
sub_0801D7EC(bVar1);
LoadGfxGroup(bVar1);
}
}
@ -31,11 +31,11 @@ void sub_080570B8(Entity *this)
{
u8 *pbVar1;
sub_0801D7EC(((u8 *)&this->field_0x20)[0]);
LoadGfxGroup(((u8 *)&this->field_0x20)[0]);
this->height.WORD = 0;
pbVar1 = ((u8 *)&this->field_0x20 + 1);
if (*pbVar1 == 3) {
gScreen.affine.bg3xOffset = 1;
gScreen.affine.unk4 = 1;
}
else {
gUnk_08107C48[*pbVar1](this);
@ -44,8 +44,8 @@ void sub_080570B8(Entity *this)
void sub_080570F8(void)
{
gScreen.lcd.lcdControl2 &= 0xf7ff;
gScreen.controls.windowOutsideControl = 0;
gScreen.lcd.displayControl &= 0xf7ff;
gScreen.controls.layerFXControl = 0;
sub_08056250();
}
@ -56,9 +56,9 @@ void sub_08057118(Entity *this)
((u8 *)&this->field_0x20)[1] = 0;
((u8 *)&this->field_0x20)[2] = 0;
this->action = 1;
gScreen.affine.unk2 = 0x1e04;
*(u16 *)&gScreen.lcd.lcdControl2 |= 0x800;
gScreen.controls.windowOutsideControl = 0x3648;
gScreen.controls.mosaicSize = 0x1000;
gScreen.affine.bg3Control = 0x1e04;
gScreen.lcd.displayControl |= 0x800;
gScreen.controls.layerFXControl = 0x3648;
gScreen.controls.alphaBlend = 0x1000;
sub_08052D74(this, sub_080570B8, sub_080570F8);
}

View File

@ -10,8 +10,8 @@ void Manager2(Entity *this)
{
if (this->action == 0) {
this->action = 1;
gScreen.affine.bg3xOffset = 0;
gScreen.bg2.bg0xOffset = 0;
gScreen.affine.unk4 = 0;
gScreen.bg.bg2yOffset = 0;
sub_08052D74(this, sub_080576A0, 0);
}
sub_0805754C(this);

View File

@ -4,7 +4,7 @@
#include "functions.h"
extern u32 sub_0805C920(Entity*);
extern void LoadPalettesByPaletteGroupIndex(u32);
extern void LoadPaletteGroup(u32);
extern void (*const gUnk_08108D10[])(Entity*);
extern u8 gUnk_08108D20[];
@ -58,7 +58,7 @@ void sub_0805C8B4(Entity *this)
if (5 < ++this->field_0xf) {
this->field_0xf = 0;
}
LoadPalettesByPaletteGroupIndex(gUnk_08108D20[this->field_0xf]);
LoadPaletteGroup(gUnk_08108D20[this->field_0xf]);
if (this->field_0xf == 0) {
PlaySFX(0x11a);
}

View File

@ -152,8 +152,8 @@ void GreatFairy_WingsInit(Entity* this) {
this->spritePriority.b0 = 5;
this->spriteSettings.b.draw = 1;
this->spriteRendering.alphaBlend = 1;
gScreen.controls.windowOutsideControl = 3904;
gScreen.controls.mosaicSize = 2057;
gScreen.controls.layerFXControl = 0xF40;
gScreen.controls.alphaBlend = BLDALPHA_BLEND(9, 8);
this->nonPlanarMovement = 1024;
sub_0805EC9C(this, 1024, 256, 0);
}

View File

@ -10,7 +10,7 @@
#include "structures.h"
extern int sub_0807A094(int);
extern u32 sub_0801D754(const u8*, u8, u8);
extern void LoadPalettes(const u8*, int, int);
extern u32 sub_080041EC(int, int);
extern u32 sub_080045DA(int, int);
@ -39,7 +39,7 @@ typedef struct {
extern void (*const gUnk_08121C64[])(Entity*);
extern void (*const gUnk_08121CCC[])(Entity*);
extern const int gUnk_08133368[];
extern const u8 gUnk_085A2E80[];
extern const u8 gGlobalGfxAndPalettes[];
extern const struct_08121CD4 gUnk_08121CD4[][4];
extern const u8 gUnk_08121D10[];
extern const u8 gUnk_08121D38[][8];
@ -88,7 +88,7 @@ void sub_0808E818(Entity* this) {
this->field_0x70.BYTES.byte0 = 4;
this->animationState = 2;
var1 = gUnk_08133368[sub_0807A094(1) - 22] & 0xFFFFFF;
sub_0801D754(&gUnk_085A2E80[var1], 31, 1);
LoadPalettes(&gGlobalGfxAndPalettes[var1], 31, 1);
}
if (gUnk_02032EC0.transitionType == 0) {

View File

@ -1740,7 +1740,7 @@ extern struct_086D4460 gUnk_086D4460;
void sub_0804C918(void) {
LoadAssetAsync(&gUnk_086D4460.LO, 0x6000000, 0x4000);
LoadAssetAsync(&gUnk_086D4460.HI, 0x6008000, 0x4000);
LoadPalettesByPaletteGroupIndex(0x19);
LoadPaletteGroup(0x19);
}
u32 sub_0804C948() {
@ -2223,8 +2223,7 @@ u32 sub_0804CD44() {
extern EntityData gUnk_080DF94C;
extern u8 gUnk_02000070;
extern u8 gUnk_03000FD0;
extern u32 gUnk_0200B644;
extern u32 gUsedPalettes;
void sub_0804CD48(void) {
@ -2232,8 +2231,8 @@ void sub_0804CD48(void) {
SetLocalFlag(0x48);
MenuFadeIn(5, 0);
gUnk_02000070 = 0;
gUnk_03000FD0 = 0;
gUnk_0200B644 = 0;
gFadeControl.active = 0;
gUsedPalettes = 0;
*(u16*)0x5000000 = 0x7fff;
sub_0801DA90(1);
}
@ -2424,7 +2423,7 @@ void sub_0804CED8(void) {
if (CheckGlobalFlag(LV2_CLEAR)) {
gUnk_0200B650 = 0;
gScreen.lcd.lcdControl2 &= 0xfdff;
gScreen.lcd.displayControl &= 0xfdff;
sub_0807AABC(&gPlayerEntity);
LoadRoomEntityList(&gUnk_080E1814);
} else {
@ -6552,5 +6551,5 @@ void nullsub_106() {}
void sub_0804FF84(u32 arg0)
{
((struct_02000000 * )0x02000000)->brightnessPref = arg0;
gUnk_0200B644 = (u32)-1;
gUsedPalettes = (u32)-1;
}

View File

@ -1,17 +1,17 @@
#include "global.h"
extern u8 gUnk_020176E0;
extern const u8 gUnk_020176E0[];
extern void sub_0807C960();
extern u32 sub_0801D754(const u8*, u8, u8);
extern void LoadPalettes(const u8*, int, int);
u32 sub_0807C9D8(u32* a1) {
void sub_0807C9D8(u32* a1) {
u32* v1; // r5@1
v1 = a1;
sub_0807C960(0x6004000, *a1);
sub_0807C960(0x6000000, v1[1]);
sub_0807C960(0x6008000, v1[2]);
sub_0807C960(&gUnk_020176E0, v1[3]);
return sub_0801D754(&gUnk_020176E0, 2, 13);
sub_0807C960(gUnk_020176E0, v1[3]);
LoadPalettes(gUnk_020176E0, 2, 13);
}

View File

@ -1,7 +1,7 @@
#include "global.h"
extern u32 gUnk_020354C0;
extern s32 gUnk_03000FD0;
extern s32 gFadeControl;
extern void _DmaZero(u32, u32, u32);
void sub_08050008(u32 param_1, u32 param_2, u32 param_3) {
@ -9,7 +9,7 @@ void sub_08050008(u32 param_1, u32 param_2, u32 param_3) {
_DmaZero((u32)&gUnk_020354C0, 128, param_3);
unk = &gUnk_03000FD0;
unk = &gFadeControl;
*(unk + 1) = -1;
return;

View File

@ -2,25 +2,6 @@
#include "functions.h"
#include "screen.h"
typedef struct {
u8 field_0x0;
u8 field_0x1;
u8 field_0x2;
u8 field_0x3;
u32 field_0x4;
u16 fadeType; // fade in or out, are there others?
u16 fadeSpeed; // subtracted from duration
u16 fadeDuration;
u16 field_0xe;
s16 field_0x10;
s16 field_0x12;
s16 field_0x14;
u16 field_0x16;
u16 field_0x18;
} struct_03000FD0;
extern struct_03000FD0 gUnk_03000FD0;
typedef struct {
u8 field_0x0;
u8 field_0x1;
@ -29,7 +10,7 @@ typedef struct {
extern struct_03000000 gUnk_03000000;
extern u32 gUnk_0200B644;
extern u32 gUsedPalettes;
extern void sub_0801E104();
extern void DoFade(u32, u32);
@ -42,63 +23,63 @@ void sub_08050024() {
void sub_08050038(u32 arg0)
{
if ((gUnk_03000FD0.fadeType & 1) != 0) {
gUnk_03000FD0.field_0xe = arg0;
if ((gFadeControl.fadeType & 1) != 0) {
gFadeControl.field_0xe = arg0;
}
else {
gUnk_03000FD0.fadeDuration = arg0;
gFadeControl.fadeDuration = arg0;
}
}
void DoFade(u32 fadeType, u32 fadeSpeed)
{
gUnk_03000FD0.fadeSpeed = fadeSpeed;
gUnk_03000FD0.fadeType = fadeType;
gUnk_03000FD0.field_0x0 = 1;
gUnk_03000FD0.fadeDuration = 0x100;
gUnk_03000FD0.field_0xe = 0;
if ((gUnk_03000FD0.fadeType & 2) != 0) {
gUnk_03000FD0.field_0x2 = 0xf8;
gFadeControl.fadeSpeed = fadeSpeed;
gFadeControl.fadeType = fadeType;
gFadeControl.active = 1;
gFadeControl.fadeDuration = 0x100;
gFadeControl.field_0xe = 0;
if ((gFadeControl.fadeType & 2) != 0) {
gFadeControl.field_0x2 = 0xf8;
}
else {
gUnk_03000FD0.field_0x2 = 0;
gFadeControl.field_0x2 = 0;
}
if ((fadeType & 8) != 0) {
gUnk_03000000.spritesOffset = 1;
gScreen.bg1.unk |= 0x40;
gScreen.bg2.unk |= 0x40;
gScreen.affine.unk2 |= 0x40;
gScreen.bg.bg1xOffset |= 0x40;
gScreen.affine.bg2Control |= 0x40;
gScreen.affine.bg3Control |= 0x40;
}
if ((fadeType & 0x10) != 0) {
sub_0801E1B8(gUnk_03000FD0.field_0x16, gUnk_03000FD0.field_0x18);
sub_0801E1EC(gUnk_03000FD0.field_0x12, gUnk_03000FD0.field_0x14, gUnk_03000FD0.field_0x10);
sub_0801E1B8(gFadeControl.field_0x16, gFadeControl.field_0x18);
sub_0801E1EC(gFadeControl.field_0x12, gFadeControl.field_0x14, gFadeControl.field_0x10);
if ((fadeType & 1) == 0) {
gUnk_03000FD0.fadeType &= 0xfffb;
gFadeControl.fadeType &= 0xfffb;
sub_08050008();
gUnk_0200B644 = 0xffffffff;
gUsedPalettes = 0xffffffff;
}
}
}
void sub_080500F4(u32 arg0)
{
gUnk_03000FD0.fadeSpeed = arg0;
gUnk_03000FD0.fadeType ^= 1;
gUnk_03000FD0.field_0x0 = 1;
gUnk_03000FD0.fadeDuration = 0x100;
gFadeControl.fadeSpeed = arg0;
gFadeControl.fadeType ^= 1;
gFadeControl.active = 1;
gFadeControl.fadeDuration = 0x100;
}
void sub_08050110(u32 param_1, u32 param_2, u32 fadeType, u32 fadeSpeed)
{
if ((fadeType & 1) != 0) {
gUnk_03000FD0.field_0x10 = 0x96;
gFadeControl.field_0x10 = 0x96;
}
else {
gUnk_03000FD0.field_0x10 = 0;
gFadeControl.field_0x10 = 0;
}
gUnk_03000FD0.field_0x12 = param_1;
gUnk_03000FD0.field_0x14 = param_2;
gUnk_03000FD0.field_0x16 = 0x3f3f;
gUnk_03000FD0.field_0x18 = 0;
gFadeControl.field_0x12 = param_1;
gFadeControl.field_0x14 = param_2;
gFadeControl.field_0x16 = 0x3f3f;
gFadeControl.field_0x18 = 0;
DoFade(fadeType, fadeSpeed);
}

View File

@ -31,8 +31,8 @@ void sub_080A3BD0(void)
gMenu.field_0x1 = 1;
gMenu.unk2a = 0;
sub_080A4D34();
LoadPalettesByPaletteGroupIndex(0xcb);
sub_0801D7EC(0x75);
LoadPaletteGroup(0xcb);
LoadGfxGroup(0x75);
iVar1 = sub_080A4494();
iVar2 = iVar1 + 7;
@ -44,14 +44,14 @@ void sub_080A3BD0(void)
iVar1 = max(iVar1, 0);
iVar1 = min(iVar1, 6);
sub_0801D7EC(iVar1 + 0x76);
gScreen.lcd.lcdControl2 |= 0x1e00;
gScreen.bg1.unk = 0x1c01;
gScreen.bg2.unk = 0x1d02;
gScreen.affine.unk2 = 0x1e0b;
gScreen.bg2.bg0xOffset = 1;
gScreen.affine.bg2xOffset = 1;
gScreen.affine.bg3xOffset = 1;
LoadGfxGroup(iVar1 + 0x76);
gScreen.lcd.displayControl |= 0x1e00;
gScreen.bg.bg1xOffset = 0x1c01;
gScreen.affine.bg2Control = 0x1d02;
gScreen.affine.bg3Control = 0x1e0b;
gScreen.bg.bg2yOffset = 1;
gScreen.affine.unk = 1;
gScreen.affine.unk4 = 1;
sub_080A4528();
sub_080A4398();
sub_0801E738(0);

View File

@ -1,10 +0,0 @@
#include "global.h"
#include "main.h"
extern u8 gUnk_03000FD0;
void sub_080AD834(void) {
if (gUnk_03000FD0 == 0) {
InitScreen(SCREEN_CHOOSE_FILE);
}
}