summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/credits.s3903
-rw-r--r--asm/intro_credits_graphics.s459
2 files changed, 0 insertions, 4362 deletions
diff --git a/asm/credits.s b/asm/credits.s
deleted file mode 100644
index e69384c03..000000000
--- a/asm/credits.s
+++ /dev/null
@@ -1,3903 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_81754C8
-sub_81754C8: @ 81754C8
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_81754C8
-
- thumb_func_start sub_81754DC
-sub_81754DC: @ 81754DC
- push {lr}
- bl RunTasks
- bl AnimateSprites
- ldr r0, =gMain
- ldrh r1, [r0, 0x2C]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08175522
- ldr r0, =gHasHallOfFameRecords
- ldrb r0, [r0]
- cmp r0, 0
- beq _08175522
- ldr r2, =gTasks
- ldr r0, =gUnknown_0203BCE2
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldr r1, [r0]
- ldr r0, =sub_8175774
- cmp r1, r0
- bne _08175522
- bl sub_81754C8
- bl RunTasks
- bl AnimateSprites
- ldr r1, =gUnknown_0203BCE5
- movs r0, 0x1
- strb r0, [r1]
-_08175522:
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81754DC
-
- thumb_func_start sub_8175548
-sub_8175548: @ 8175548
- push {lr}
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085E6F68
- movs r0, 0
- movs r2, 0x1
- bl InitBgsFromTemplates
- movs r0, 0x80
- lsls r0, 4
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0
- bl SetBgTilemapBuffer
- ldr r0, =gUnknown_085E56F0
- movs r1, 0x80
- movs r2, 0x40
- bl LoadPalette
- ldr r0, =gUnknown_085E6F6C
- bl InitWindows
- bl DeactivateAllTextPrinters
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0
- bl ShowBg
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175548
-
- thumb_func_start sub_81755A4
-sub_81755A4: @ 81755A4
- push {lr}
- bl FreeAllWindowBuffers
- movs r0, 0
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _081755B8
- bl Free
-_081755B8:
- pop {r0}
- bx r0
- thumb_func_end sub_81755A4
-
- thumb_func_start sub_81755BC
-sub_81755BC: @ 81755BC
- push {r4,r5,lr}
- sub sp, 0x18
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r2, 24
- add r1, sp, 0x14
- movs r0, 0
- strb r0, [r1]
- cmp r2, 0x1
- bne _081755DC
- movs r0, 0x3
- strb r0, [r1, 0x1]
- movs r0, 0x4
- b _081755E4
-_081755DC:
- add r1, sp, 0x14
- movs r0, 0x1
- strb r0, [r1, 0x1]
- movs r0, 0x2
-_081755E4:
- strb r0, [r1, 0x2]
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0xF0
- movs r3, 0x1
- bl GetStringCenterAlignXOffsetWithLetterSpacing
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- add r0, sp, 0x14
- str r0, [sp, 0x8]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0xC]
- str r4, [sp, 0x10]
- movs r0, 0
- movs r1, 0x1
- adds r3, r5, 0
- bl AddTextPrinterParameterized2
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_81755BC
-
- thumb_func_start sub_8175620
-sub_8175620: @ 8175620
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- bl sub_8175CE4
- movs r0, 0
- bl SetVBlankCallback
- ldr r0, =0x02000000
- movs r1, 0xE0
- lsls r1, 9
- bl InitHeap
- bl ResetPaletteFade
- bl ResetTasks
- bl sub_8175548
- ldr r0, =sub_8175744
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x10]
- strh r1, [r0, 0x16]
- strh r1, [r0, 0x1E]
- movs r1, 0x1
- strh r1, [r0, 0x22]
-_0817566A:
- movs r0, 0
- adds r1, r7, 0
- bl sub_8176AB0
- lsls r0, 24
- cmp r0, 0
- beq _0817566A
- ldr r5, =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r5
- movs r0, 0xA
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r1, 0
- mov r8, r1
- movs r6, 0
- movs r1, 0x28
- strh r1, [r0, 0x8]
- ldr r1, =0x0000fffc
- movs r0, 0x12
- bl SetGpuReg
- ldr r0, =sub_8175DA0
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r5
- strh r7, [r1, 0xA]
- strh r0, [r4, 0x26]
- movs r0, 0x1
- negs r0, r0
- str r6, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0x1
- bl EnableInterrupts
- ldr r0, =sub_81754C8
- bl SetVBlankCallback
- ldr r0, =0x000001c7
- bl m4aSongNumStart
- ldr r0, =sub_81754DC
- bl SetMainCallback2
- ldr r0, =gUnknown_0203BCE5
- mov r1, r8
- strb r1, [r0]
- ldr r4, =gUnknown_0203BCE8
- movs r0, 0xEB
- lsls r0, 2
- bl AllocZeroed
- str r0, [r4]
- bl sub_8177388
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x8E
- strh r6, [r0]
- adds r0, 0x2
- strh r6, [r0]
- adds r0, 0x2
- strh r6, [r0]
- ldr r0, =gUnknown_0203BCE2
- strh r7, [r0]
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175620
-
- thumb_func_start sub_8175744
-sub_8175744: @ 8175744
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08175764
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_8175774
- str r0, [r1]
-_08175764:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175744
-
- thumb_func_start sub_8175774
-sub_8175774: @ 8175774
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- movs r0, 0x10
- ldrsh r1, [r4, r0]
- cmp r1, 0
- beq _081757B0
- movs r3, 0xA
- ldrsh r1, [r4, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r1, 0x1E
- strh r1, [r0, 0x8]
- movs r0, 0x80
- lsls r0, 1
- strh r0, [r4, 0x20]
- ldr r0, =sub_8175A9C
- b _081757FA
- .pool
-_081757B0:
- ldr r0, =gUnknown_0203BCE0
- strh r1, [r0]
- ldrh r2, [r4, 0x1E]
- movs r3, 0x1E
- ldrsh r0, [r4, r3]
- cmp r0, 0x1
- bne _081757E0
- strh r2, [r4, 0x22]
- strh r1, [r4, 0x1E]
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_8175808
- b _081757FA
- .pool
-_081757E0:
- cmp r0, 0x2
- bne _081757FC
- strh r2, [r4, 0x22]
- strh r1, [r4, 0x1E]
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_81758A4
-_081757FA:
- str r0, [r4]
-_081757FC:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175774
-
- thumb_func_start sub_8175808
-sub_8175808: @ 8175808
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08175836
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- adds r0, r4, 0
- bl sub_8176CA0
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =c2_080C9BFC
- str r0, [r1]
-_08175836:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175808
-
- thumb_func_start c2_080C9BFC
-c2_080C9BFC: @ 8175848
- push {r4,r5,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- bl SetVBlankCallback
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- ldrb r0, [r5, 0x16]
- adds r1, r4, 0
- bl sub_8176AB0
- lsls r0, 24
- cmp r0, 0
- beq _08175890
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0x1
- bl EnableInterrupts
- ldr r0, =sub_81754C8
- bl SetVBlankCallback
- ldr r0, =sub_8175744
- str r0, [r5]
-_08175890:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_080C9BFC
-
- thumb_func_start sub_81758A4
-sub_81758A4: @ 81758A4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _081758D2
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- adds r0, r4, 0
- bl sub_8176CA0
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_81758E4
- str r0, [r1]
-_081758D2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81758A4
-
- thumb_func_start sub_81758E4
-sub_81758E4: @ 81758E4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r1, r0
- mov r8, r1
- ldrb r7, [r1]
- cmp r7, 0
- beq _08175906
- cmp r7, 0x1
- beq _081759F0
-_08175906:
- bl ResetSpriteData
- bl dp13_810BB8C
- bl FreeAllSpritePalettes
- ldr r1, =gReservedSpritePaletteCount
- movs r0, 0x8
- strb r0, [r1]
- ldr r0, =gBirchHelpGfx
- movs r1, 0xC0
- lsls r1, 19
- bl LZ77UnCompVram
- ldr r0, =gBirchGrassTilemap
- ldr r1, =0x06003800
- bl LZ77UnCompVram
- ldr r0, =gBirchBagGrassPal + 0x2
- movs r1, 0x1
- movs r2, 0x3E
- bl LoadPalette
- movs r1, 0
- ldr r4, =0x0201c000
- movs r3, 0x11
- ldr r2, =0x000007ff
-_0817593C:
- adds r0, r1, r4
- strb r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r2
- bls _0817593C
- movs r1, 0
- ldr r2, =0x0201d800
- ldr r6, =gUnknown_085E701C
- ldr r0, =0xfffff000
- adds r5, r2, r0
- movs r4, 0x22
- ldr r3, =0x000007ff
-_08175958:
- adds r0, r1, r5
- strb r4, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r3
- bls _08175958
- movs r1, 0
- ldr r5, =0x0201d000
- movs r4, 0x33
- ldr r3, =0x000007ff
-_0817596E:
- adds r0, r1, r5
- strb r4, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r3
- bls _0817596E
- movs r0, 0
- strh r0, [r2]
- ldr r1, =0x000053ff
- adds r0, r1, 0
- strh r0, [r2, 0x2]
- ldr r1, =0x0000529f
- adds r0, r1, 0
- strh r0, [r2, 0x4]
- ldr r1, =0x00007e94
- adds r0, r1, 0
- strh r0, [r2, 0x6]
- adds r0, r6, 0
- bl LoadSpriteSheet
- ldr r0, =gUnknown_085E702C
- bl LoadSpritePalette
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08175A7A
- .pool
-_081759F0:
- ldr r0, =sub_81760FC
- movs r1, 0
- bl CreateTask
- ldr r2, =gTasks
- lsls r4, r6, 2
- adds r4, r6
- lsls r4, 3
- adds r4, r2
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- mov r9, r1
- movs r5, 0
- strh r0, [r4, 0xE]
- movs r0, 0xE
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- strh r7, [r0, 0x8]
- movs r0, 0xE
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- strh r6, [r0, 0xA]
- movs r0, 0xE
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrh r1, [r4, 0x16]
- strh r1, [r0, 0xC]
- movs r0, 0x1
- negs r0, r0
- str r5, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0x20
- bl SetGpuReg
- ldr r1, =0x00000703
- movs r0, 0xE
- bl SetGpuReg
- movs r1, 0xCA
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- mov r0, r9
- mov r1, r8
- strb r0, [r1]
- ldr r0, =gUnknown_0203BD28
- strh r5, [r0]
- ldr r0, =sub_8175744
- str r0, [r4]
-_08175A7A:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81758E4
-
- thumb_func_start sub_8175A9C
-sub_8175A9C: @ 8175A9C
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r0, [r4, 0x20]
- movs r2, 0x20
- ldrsh r1, [r4, r2]
- cmp r1, 0
- beq _08175AC4
- subs r0, 0x1
- strh r0, [r4, 0x20]
- b _08175AD8
- .pool
-_08175AC4:
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0xC
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_8175AE4
- str r0, [r4]
-_08175AD8:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175A9C
-
- thumb_func_start sub_8175AE4
-sub_8175AE4: @ 8175AE4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08175B0A
- adds r0, r4, 0
- bl sub_8176CA0
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_8175B1C
- str r0, [r1]
-_08175B0A:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175AE4
-
- thumb_func_start sub_8175B1C
-sub_8175B1C: @ 8175B1C
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8175CE4
- bl ResetPaletteFade
- movs r1, 0xE0
- lsls r1, 6
- movs r0, 0
- movs r2, 0
- bl sub_8176D1C
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r1, 0x8
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r1, 0xE0
- lsls r1, 3
- movs r0, 0x8
- bl SetGpuReg
- movs r0, 0x1
- bl EnableInterrupts
- movs r1, 0xA0
- lsls r1, 1
- movs r0, 0
- bl SetGpuReg
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0xEB
- strh r1, [r0, 0x8]
- ldr r1, =sub_8175B90
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175B1C
-
- thumb_func_start sub_8175B90
-sub_8175B90: @ 8175B90
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r0, [r4, 0x8]
- movs r2, 0x8
- ldrsh r1, [r4, r2]
- cmp r1, 0
- beq _08175BB8
- subs r0, 0x1
- strh r0, [r4, 0x8]
- b _08175BCC
- .pool
-_08175BB8:
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0x6
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_8175BD8
- str r0, [r4]
-_08175BCC:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175B90
-
- thumb_func_start sub_8175BD8
-sub_8175BD8: @ 8175BD8
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08175C1E
- movs r0, 0xE0
- lsls r0, 6
- movs r1, 0
- bl sub_8176E40
- movs r0, 0x1
- negs r0, r0
- str r4, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0xE1
- lsls r1, 5
- strh r1, [r0, 0x8]
- ldr r1, =sub_8175C34
- str r1, [r0]
-_08175C1E:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175BD8
-
- thumb_func_start sub_8175C34
-sub_8175C34: @ 8175C34
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08175CB8
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r4, r0, r1
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- cmp r1, 0
- beq _08175C62
- ldr r0, =gMain
- ldrh r0, [r0, 0x2E]
- cmp r0, 0
- beq _08175C94
-_08175C62:
- movs r0, 0x4
- bl FadeOutBGM
- movs r0, 0x1
- negs r0, r0
- ldr r1, =0x0000ffff
- str r1, [sp]
- movs r1, 0x8
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_8175CC8
- str r0, [r4]
- b _08175CB8
- .pool
-_08175C94:
- ldr r0, =0x00001be8
- cmp r1, r0
- bne _08175CA0
- movs r0, 0x8
- bl FadeOutBGM
-_08175CA0:
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- ldr r0, =0x00001ab8
- cmp r1, r0
- bne _08175CB2
- movs r0, 0xE4
- lsls r0, 1
- bl m4aSongNumStart
-_08175CB2:
- ldrh r0, [r4, 0x8]
- subs r0, 0x1
- strh r0, [r4, 0x8]
-_08175CB8:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175C34
-
- thumb_func_start sub_8175CC8
-sub_8175CC8: @ 8175CC8
- push {lr}
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08175CDC
- movs r0, 0xFF
- bl SoftReset
-_08175CDC:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175CC8
-
- thumb_func_start sub_8175CE4
-sub_8175CE4: @ 8175CE4
- push {lr}
- sub sp, 0x8
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x040000d4
- mov r0, sp
- str r0, [r1]
- movs r0, 0xC0
- lsls r0, 19
- str r0, [r1, 0x4]
- ldr r0, =0x8100c000
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r2, 0
- str r2, [sp, 0x4]
- add r0, sp, 0x4
- str r0, [r1]
- movs r0, 0xE0
- lsls r0, 19
- str r0, [r1, 0x4]
- ldr r0, =0x85000100
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- mov r0, sp
- strh r2, [r0]
- str r0, [r1]
- ldr r0, =0x05000002
- str r0, [r1, 0x4]
- ldr r0, =0x810001ff
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- add sp, 0x8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175CE4
-
- thumb_func_start sub_8175DA0
-sub_8175DA0: @ 8175DA0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r5, r1, 0
- cmp r0, 0xA
- bhi _08175E00
- lsls r0, 2
- ldr r1, =_08175DD4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08175DD4:
- .4byte _08175E00
- .4byte _08175E40
- .4byte _08175E60
- .4byte _08175F38
- .4byte _08175F5C
- .4byte _08175FC8
- .4byte _08175E00
- .4byte _08175E00
- .4byte _08175E00
- .4byte _08175E00
- .4byte _08175FFC
-_08175E00:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _08175E12
- b _0817602A
-_08175E12:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r5
- movs r1, 0x1
- strh r1, [r0, 0x8]
- movs r1, 0x48
- strh r1, [r0, 0xE]
- movs r3, 0xA
- ldrsh r1, [r0, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r2, [r0, 0x24]
- ldr r0, =gUnknown_0203BCE0
- strh r2, [r0]
- b _0817602A
- .pool
-_08175E40:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r5
- ldrh r2, [r1, 0xE]
- movs r3, 0xE
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _08175E58
- subs r0, r2, 0x1
- strh r0, [r1, 0xE]
- b _0817602A
-_08175E58:
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _0817602A
-_08175E60:
- lsls r2, r4, 2
- adds r0, r2, r4
- lsls r0, 3
- adds r3, r0, r5
- movs r0, 0xA
- ldrsh r1, [r3, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r5, r0, r5
- ldr r1, [r5]
- ldr r0, =sub_8175774
- mov r9, r2
- cmp r1, r0
- bne _08175F32
- movs r1, 0xC
- ldrsh r0, [r3, r1]
- cmp r0, 0x38
- bgt _08175F2C
- movs r5, 0
- ldr r2, =gUnknown_085E6AF4
- mov r8, r2
- adds r7, r3, 0
- movs r6, 0xA0
- lsls r6, 19
-_08175E92:
- movs r3, 0xC
- ldrsh r1, [r7, r3]
- lsls r0, r1, 2
- adds r0, r1
- adds r0, r5
- lsls r0, 2
- add r0, r8
- ldr r2, [r0]
- ldr r0, [r2, 0x4]
- lsrs r1, r6, 24
- ldrb r2, [r2, 0x1]
- bl sub_81755BC
- movs r0, 0x80
- lsls r0, 21
- adds r6, r0
- adds r5, 0x1
- cmp r5, 0x4
- ble _08175E92
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- ldr r3, =gTasks
- mov r2, r9
- adds r1, r2, r4
- lsls r1, 3
- adds r1, r3
- ldrh r0, [r1, 0xC]
- adds r0, 0x1
- strh r0, [r1, 0xC]
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- movs r0, 0xA
- ldrsh r2, [r1, r0]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r3
- movs r2, 0x1
- strh r2, [r0, 0x24]
- movs r2, 0xA
- ldrsh r1, [r1, r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- movs r3, 0x22
- ldrsh r0, [r0, r3]
- cmp r0, 0x1
- bne _08175F14
- movs r0, 0xC0
- lsls r0, 2
- ldr r1, =0x0000328d
- b _08175F1A
- .pool
-_08175F14:
- movs r0, 0xC0
- lsls r0, 2
- ldr r1, =0x00001967
-_08175F1A:
- str r1, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- b _0817602A
- .pool
-_08175F2C:
- movs r0, 0xA
- strh r0, [r3, 0x8]
- b _0817602A
-_08175F32:
- movs r0, 0
- strh r0, [r5, 0x24]
- b _0817602A
-_08175F38:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0817602A
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r5
- movs r1, 0x73
- strh r1, [r0, 0xE]
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- b _0817602A
- .pool
-_08175F5C:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r4, r0, r5
- ldrh r1, [r4, 0xE]
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08175F74
- subs r0, r1, 0x1
- strh r0, [r4, 0xE]
- b _0817602A
-_08175F74:
- ldrb r0, [r4, 0xC]
- ldrb r1, [r4, 0xA]
- bl sub_817603C
- lsls r0, 24
- cmp r0, 0
- beq _08175F8A
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0817602A
-_08175F8A:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- movs r3, 0xA
- ldrsh r1, [r4, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r1, 0x22
- ldrsh r0, [r0, r1]
- cmp r0, 0x1
- bne _08175FB0
- movs r0, 0xC0
- lsls r0, 2
- ldr r1, =0x0000328d
- b _08175FB6
- .pool
-_08175FB0:
- movs r0, 0xC0
- lsls r0, 2
- ldr r1, =0x00001967
-_08175FB6:
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- b _0817602A
- .pool
-_08175FC8:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0817602A
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- movs r1, 0x2
- bl CopyWindowToVram
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x2
- strh r0, [r1, 0x8]
- b _0817602A
- .pool
-_08175FFC:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r5
- movs r2, 0xA
- ldrsh r1, [r0, r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r5, 0
- movs r1, 0x1
- strh r1, [r0, 0x10]
- adds r0, r4, 0
- bl DestroyTask
- bl sub_81755A4
- ldr r4, =gUnknown_0203BCE8
- ldr r0, [r4]
- bl Free
- str r5, [r4]
-_0817602A:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8175DA0
-
- thumb_func_start sub_817603C
-sub_817603C: @ 817603C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- adds r6, r3, 0
- lsls r1, 24
- lsrs r2, r1, 24
- adds r5, r2, 0
- ldr r4, =gTasks
- cmp r3, 0x6
- bne _0817605C
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x2
- strh r1, [r0, 0x1E]
-_0817605C:
- cmp r3, 0xC
- bne _0817606E
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x1
- strh r1, [r0, 0x16]
- strh r1, [r0, 0x1E]
-_0817606E:
- cmp r3, 0x12
- bne _0817607E
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x2
- strh r1, [r0, 0x1E]
-_0817607E:
- cmp r3, 0x18
- bne _08176092
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x2
- strh r1, [r0, 0x16]
- movs r1, 0x1
- strh r1, [r0, 0x1E]
-_08176092:
- cmp r3, 0x1E
- bne _081760A2
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x2
- strh r1, [r0, 0x1E]
-_081760A2:
- cmp r3, 0x24
- bne _081760B6
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x3
- strh r1, [r0, 0x16]
- movs r1, 0x1
- strh r1, [r0, 0x1E]
-_081760B6:
- cmp r3, 0x2A
- bne _081760C6
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x2
- strh r1, [r0, 0x1E]
-_081760C6:
- cmp r6, 0x30
- bne _081760DA
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r4
- movs r1, 0x4
- strh r1, [r0, 0x16]
- movs r1, 0x1
- strh r1, [r0, 0x1E]
-_081760DA:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r4
- movs r1, 0x1E
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _081760F4
- movs r0, 0
- b _081760F6
- .pool
-_081760F4:
- movs r0, 0x1
-_081760F6:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_817603C
-
- thumb_func_start sub_81760FC
-sub_81760FC: @ 81760FC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r2, r0, r4
- movs r1, 0x8
- ldrsh r0, [r2, r1]
- cmp r0, 0x1
- beq _0817612C
- cmp r0, 0x1
- bgt _0817611A
- b _08176244
-_0817611A:
- cmp r0, 0x2
- beq _08176158
- cmp r0, 0x3
- bne _08176124
- b _08176230
-_08176124:
- b _08176244
- .pool
-_0817612C:
- ldr r0, =gUnknown_0203BCE8
- ldr r0, [r0]
- adds r0, 0x90
- ldrh r0, [r0]
- cmp r0, 0
- bne _0817614E
- movs r3, 0xA
- ldrsh r0, [r2, r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r4
- movs r3, 0x24
- ldrsh r0, [r1, r3]
- cmp r0, 0
- bne _0817614E
- b _08176244
-_0817614E:
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- b _08176242
- .pool
-_08176158:
- ldr r6, =gUnknown_0203BCE8
- ldr r3, [r6]
- adds r0, r3, 0
- adds r0, 0x8E
- ldrh r0, [r0]
- cmp r0, 0x47
- beq _08176244
- movs r0, 0xA
- ldrsh r1, [r2, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- ldr r1, [r0]
- ldr r0, =sub_8175774
- cmp r1, r0
- bne _08176244
- adds r0, r3, 0
- adds r0, 0x92
- ldrh r0, [r0]
- lsls r0, 1
- adds r0, r3, r0
- ldrh r0, [r0]
- ldr r4, =gUnknown_085E6F7C
- adds r1, r3, 0
- adds r1, 0x90
- ldrh r3, [r1]
- lsls r2, r3, 1
- adds r1, r2, r4
- ldrb r1, [r1]
- adds r4, 0x1
- adds r2, r4
- ldrb r2, [r2]
- bl sub_8177224
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, [r6]
- adds r1, r0, 0
- adds r1, 0x92
- ldrh r3, [r1]
- adds r0, 0x94
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r3, r0
- bge _081761D8
- adds r0, r3, 0x1
- strh r0, [r1]
- ldr r1, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- movs r1, 0x32
- b _081761EA
- .pool
-_081761D8:
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- movs r1, 0x80
- lsls r1, 2
-_081761EA:
- strh r1, [r0, 0x34]
- ldr r0, =gUnknown_0203BCE8
- ldr r1, [r0]
- adds r2, r1, 0
- adds r2, 0x8E
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x90
- ldrh r0, [r1]
- cmp r0, 0x2
- bne _08176210
- movs r0, 0
- b _08176212
- .pool
-_08176210:
- adds r0, 0x1
-_08176212:
- strh r0, [r1]
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- movs r0, 0x32
- strh r0, [r1, 0xE]
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _08176244
- .pool
-_08176230:
- ldrh r1, [r2, 0xE]
- movs r3, 0xE
- ldrsh r0, [r2, r3]
- cmp r0, 0
- beq _08176240
- subs r0, r1, 0x1
- strh r0, [r2, 0xE]
- b _08176244
-_08176240:
- movs r0, 0x1
-_08176242:
- strh r0, [r2, 0x8]
-_08176244:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81760FC
-
- thumb_func_start sub_817624C
-sub_817624C: @ 817624C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r6, r1, 0
- cmp r0, 0x32
- bls _08176268
- b _08176514
-_08176268:
- lsls r0, 2
- ldr r1, =_0817627C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0817627C:
- .4byte _08176348
- .4byte _0817636C
- .4byte _081763C0
- .4byte _081763D8
- .4byte _08176414
- .4byte _08176438
- .4byte _08176484
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176490
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _081764B0
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _081764D4
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176514
- .4byte _08176508
-_08176348:
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r6
- ldrh r0, [r4, 0x12]
- lsls r0, 16
- asrs r0, 17
- movs r1, 0x7F
- ands r0, r1
- movs r1, 0xC
- bl Sin
- ldr r1, =gUnknown_0203BD26
- strh r0, [r1]
- b _08176390
- .pool
-_0817636C:
- ldr r7, =gUnknown_0203BD26
- movs r3, 0
- ldrsh r4, [r7, r3]
- cmp r4, 0
- beq _0817639C
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r6
- ldrh r0, [r4, 0x12]
- lsls r0, 16
- asrs r0, 17
- movs r1, 0x7F
- ands r0, r1
- movs r1, 0xC
- bl Sin
- strh r0, [r7]
-_08176390:
- ldrh r0, [r4, 0x12]
- adds r0, 0x1
- strh r0, [r4, 0x12]
- b _08176514
- .pool
-_0817639C:
- ldr r3, =gSprites
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r6
- movs r0, 0xC
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- movs r2, 0x2
- strh r2, [r0, 0x2E]
- strh r4, [r1, 0x12]
- b _08176430
- .pool
-_081763C0:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r1, r0, r6
- ldrh r2, [r1, 0x12]
- movs r3, 0x12
- ldrsh r0, [r1, r3]
- cmp r0, 0x3F
- bgt _08176430
- adds r0, r2, 0x1
- strh r0, [r1, 0x12]
- b _0817644E
-_081763D8:
- ldr r3, =gSprites
- lsls r2, r5, 2
- adds r2, r5
- lsls r2, 3
- adds r2, r6
- movs r0, 0xC
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x3
- strh r1, [r0, 0x2E]
- movs r0, 0xE
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x1
- strh r1, [r0, 0x2E]
- movs r0, 0x78
- strh r0, [r2, 0x10]
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
- b _08176514
- .pool
-_08176414:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r1, r0, r6
- ldrh r2, [r1, 0x10]
- movs r3, 0x10
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _0817642C
- subs r0, r2, 0x1
- strh r0, [r1, 0x10]
- b _08176514
-_0817642C:
- movs r0, 0x40
- strh r0, [r1, 0x12]
-_08176430:
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _08176514
-_08176438:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r6
- ldrh r1, [r4, 0x12]
- movs r2, 0x12
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _08176464
- subs r0, r1, 0x1
- strh r0, [r4, 0x12]
-_0817644E:
- movs r1, 0x7F
- ands r0, r1
- movs r1, 0x14
- bl Sin
- ldr r1, =gUnknown_0203BD26
- strh r0, [r1]
- b _08176514
- .pool
-_08176464:
- ldr r2, =gSprites
- movs r3, 0xC
- ldrsh r1, [r4, r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x1
- strh r1, [r0, 0x2E]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _08176514
- .pool
-_08176484:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r6
- movs r1, 0x32
- b _08176512
-_08176490:
- ldr r3, =gSprites
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r6
- movs r0, 0xE
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- movs r2, 0x2
- b _081764C8
- .pool
-_081764B0:
- ldr r3, =gSprites
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r6
- movs r0, 0xC
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- movs r2, 0x4
-_081764C8:
- strh r2, [r0, 0x2E]
- movs r0, 0x32
- strh r0, [r1, 0x8]
- b _08176514
- .pool
-_081764D4:
- ldr r3, =gSprites
- lsls r2, r5, 2
- adds r2, r5
- lsls r2, 3
- adds r2, r6
- movs r0, 0xC
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x5
- strh r1, [r0, 0x2E]
- movs r0, 0xE
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x3
- strh r1, [r0, 0x2E]
- movs r0, 0x32
- strh r0, [r2, 0x8]
- b _08176514
- .pool
-_08176508:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r6
- movs r1, 0
-_08176512:
- strh r1, [r0, 0x8]
-_08176514:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_817624C
-
- thumb_func_start sub_817651C
-sub_817651C: @ 817651C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- movs r3, 0x8
- ldrsh r0, [r0, r3]
- adds r4, r1, 0
- cmp r0, 0x4
- bhi _0817655C
- lsls r0, 2
- ldr r1, =_08176548
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08176548:
- .4byte _0817655C
- .4byte _081765A0
- .4byte _081765AC
- .4byte _081765F4
- .4byte _08176640
-_0817655C:
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r2, r0, r4
- movs r1, 0xA
- ldrsh r0, [r2, r1]
- ldr r5, =0x00007fff
- cmp r0, r5
- beq _081765A0
- movs r3, 0xC
- ldrsh r1, [r2, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r3, r0, r4
- movs r0, 0x26
- ldrsh r1, [r3, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r1, 0xC
- ldrsh r0, [r0, r1]
- cmp r0, 0x2
- bne _081765A0
- movs r1, 0xA
- ldrsh r0, [r3, r1]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r4
- movs r0, 0x14
- strh r0, [r1, 0x8]
- strh r5, [r2, 0xA]
-_081765A0:
- movs r0, 0
- bl sub_817B540
- b _08176646
- .pool
-_081765AC:
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r2, r0, r4
- movs r3, 0xA
- ldrsh r0, [r2, r3]
- ldr r5, =0x00007fff
- cmp r0, r5
- beq _08176638
- movs r0, 0xC
- ldrsh r1, [r2, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r3, 0xA
- ldrsh r1, [r0, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r3, r0, r4
- ldrh r1, [r3, 0x12]
- movs r0, 0x80
- negs r0, r0
- ands r0, r1
- movs r1, 0xA0
- lsls r1, 2
- cmp r0, r1
- bne _08176638
- movs r0, 0x1
- strh r0, [r3, 0x8]
- strh r5, [r2, 0xA]
- b _08176638
- .pool
-_081765F4:
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r2, r0, r4
- ldrh r3, [r2, 0xA]
- movs r0, 0xA
- ldrsh r1, [r2, r0]
- ldr r5, =0x00007fff
- cmp r1, r5
- beq _08176638
- movs r0, 0x92
- lsls r0, 2
- cmp r1, r0
- bne _08176634
- movs r3, 0xC
- ldrsh r1, [r2, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r3, 0xA
- ldrsh r1, [r0, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r1, 0xA
- strh r1, [r0, 0x8]
- strh r5, [r2, 0xA]
- b _08176638
- .pool
-_08176634:
- adds r0, r3, 0x1
- strh r0, [r2, 0xA]
-_08176638:
- movs r0, 0x1
- bl sub_817B540
- b _08176646
-_08176640:
- movs r0, 0x2
- bl sub_817B540
-_08176646:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_817651C
-
- thumb_func_start sub_817664C
-sub_817664C: @ 817664C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r7, r1, 24
- cmp r0, 0x4
- bls _08176662
- b _081769E0
-_08176662:
- lsls r0, 2
- ldr r1, =_08176670
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08176670:
- .4byte _08176684
- .4byte _0817672C
- .4byte _081767D8
- .4byte _08176884
- .4byte _08176934
-_08176684:
- ldr r5, =gSprites
- ldr r0, =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r2, 0x88
- lsls r2, 1
- strh r2, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r0, 0
- movs r2, 0x20
- b _081769D4
- .pool
-_0817672C:
- ldr r5, =gSprites
- ldr r0, =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x88
- lsls r1, 1
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r0, 0
- movs r2, 0x20
- b _081769D4
- .pool
-_081767D8:
- ldr r5, =gSprites
- ldr r0, =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x88
- lsls r1, 1
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x80
- lsls r2, 2
- movs r0, 0x1
- b _081769D4
- .pool
-_08176884:
- ldr r5, =gSprites
- ldr r0, =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, =0x0000ffe0
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x80
- lsls r2, 2
- movs r0, 0x1
- b _081769D4
- .pool
-_08176934:
- ldr r5, =gSprites
- ldr r0, =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x58
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x98
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x80
- lsls r2, 2
- movs r0, 0x2
-_081769D4:
- movs r3, 0x8
- bl sub_817B3DC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x8]
-_081769E0:
- ldr r0, =sub_817651C
- movs r1, 0
- bl CreateTask
- ldr r6, =gTasks
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 3
- adds r5, r1, r6
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0
- strh r0, [r5, 0xC]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- mov r1, r8
- strh r1, [r0, 0x8]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r4, [r0, 0xA]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r7, [r0, 0xC]
- ldr r0, =sub_817624C
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r4, [r0, 0x8]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r7, [r0, 0xA]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- ldrh r1, [r5, 0x12]
- strh r1, [r0, 0xC]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- ldrh r1, [r5, 0x14]
- strh r1, [r0, 0xE]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r4, [r0, 0x10]
- mov r1, r8
- cmp r1, 0x2
- bne _08176A94
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r6
- movs r0, 0x45
- strh r0, [r1, 0x12]
-_08176A94:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817664C
-
- thumb_func_start sub_8176AB0
-sub_8176AB0: @ 8176AB0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r6, r0, r1
- ldrb r0, [r6]
- cmp r0, 0x1
- beq _08176B30
- cmp r0, 0x1
- ble _08176AD6
- cmp r0, 0x2
- beq _08176B54
- cmp r0, 0x3
- bne _08176AD6
- b _08176C80
-_08176AD6:
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0x8
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- movs r0, 0x1
- strb r0, [r6]
- b _08176C96
- .pool
-_08176B30:
- ldr r1, =gUnknown_0203BD24
- movs r0, 0x22
- strh r0, [r1]
- ldr r1, =gUnknown_0203BD26
- movs r0, 0
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_817B1C8
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- b _08176C96
- .pool
-_08176B54:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _08176BD8
- ldr r0, =gUnknown_085F5334
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_085F53BC
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_085F5354
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_085F5384
- bl LoadSpritePalettes
- movs r0, 0x78
- movs r1, 0x2E
- bl intro_create_brendan_sprite
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- strh r2, [r4, 0x12]
- ldr r6, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r5, r6, 0
- adds r5, 0x1C
- adds r2, r0, r5
- ldr r1, =sub_8176EE8
- str r1, [r2]
- adds r6, 0x8
- adds r0, r6
- ldr r1, =gUnknown_085E6FD0
- str r1, [r0]
- movs r0, 0x88
- lsls r0, 1
- movs r1, 0x2E
- bl intro_create_may_sprite
- b _08176C2C
- .pool
-_08176BD8:
- ldr r0, =gUnknown_085F5344
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_085F53AC
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_085F5354
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_085F5384
- bl LoadSpritePalettes
- movs r0, 0x78
- movs r1, 0x2E
- bl intro_create_may_sprite
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- strh r2, [r4, 0x12]
- ldr r6, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r5, r6, 0
- adds r5, 0x1C
- adds r2, r0, r5
- ldr r1, =sub_8176EE8
- str r1, [r2]
- adds r6, 0x8
- adds r0, r6
- ldr r1, =gUnknown_085E6FD0
- str r1, [r0]
- movs r0, 0x88
- lsls r0, 1
- movs r1, 0x2E
- bl intro_create_brendan_sprite
-_08176C2C:
- lsls r0, 24
- lsrs r2, r0, 24
- strh r2, [r4, 0x14]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r5, r0, r5
- ldr r1, =sub_8176F90
- str r1, [r5]
- adds r0, r6
- ldr r1, =gUnknown_085E7010
- str r1, [r0]
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08176C96
- .pool
-_08176C80:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_817664C
- adds r0, r4, 0
- bl sub_817B3A8
- movs r0, 0
- strb r0, [r6]
- movs r0, 0x1
- b _08176C98
-_08176C96:
- movs r0, 0
-_08176C98:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8176AB0
-
- thumb_func_start sub_8176CA0
-sub_8176CA0: @ 8176CA0
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r1, [r4, 0x8]
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08176CC6
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0x8]
-_08176CC6:
- ldrh r1, [r4, 0xA]
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08176CDC
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0xA]
-_08176CDC:
- ldrh r1, [r4, 0xC]
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08176CF2
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0xC]
-_08176CF2:
- ldrh r1, [r4, 0xE]
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08176D08
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0xE]
-_08176D08:
- ldr r1, =gUnknown_0203BD28
- movs r0, 0x1
- strh r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8176CA0
-
- thumb_func_start sub_8176D1C
-sub_8176D1C: @ 8176D1C
- push {r4-r7,lr}
- adds r3, r0, 0
- adds r4, r2, 0
- lsls r3, 16
- lsrs r3, 16
- lsls r1, 16
- lsrs r7, r1, 16
- lsls r4, 16
- lsrs r5, r4, 16
- ldr r0, =gUnknown_085E5770
- movs r6, 0xC0
- lsls r6, 19
- adds r3, r6
- adds r1, r3, 0
- bl LZ77UnCompVram
- ldr r0, =gIntroCopyright_Pal
- adds r1, r5, 0
- movs r2, 0x20
- bl LoadPalette
- lsrs r4, 20
- lsls r4, 28
- lsrs r4, 16
- movs r1, 0
- adds r4, 0x1
- ldr r2, =0x000003ff
-_08176D52:
- lsls r0, r1, 1
- adds r0, r7
- adds r0, r6
- strh r4, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r2
- bls _08176D52
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8176D1C
-
- thumb_func_start sub_8176D78
-sub_8176D78: @ 8176D78
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- adds r3, r2, 0
- movs r0, 0x3F
- ands r0, r2
- adds r1, r0, 0
- adds r1, 0x50
- cmp r2, 0xFF
- bne _08176D90
- movs r0, 0x1
- b _08176DB6
-_08176D90:
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _08176DA0
- movs r2, 0x80
- lsls r2, 4
- adds r0, r2, 0
- orrs r1, r0
-_08176DA0:
- movs r0, 0x40
- ands r3, r0
- cmp r3, 0
- beq _08176DB4
- movs r2, 0x80
- lsls r2, 3
- adds r0, r2, 0
- orrs r1, r0
- lsls r0, r1, 16
- lsrs r1, r0, 16
-_08176DB4:
- adds r0, r1, 0
-_08176DB6:
- pop {r1}
- bx r1
- thumb_func_end sub_8176D78
-
- thumb_func_start sub_8176DBC
-sub_8176DBC: @ 8176DBC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- str r0, [sp]
- ldr r0, [sp, 0x2C]
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x4]
- lsls r3, 16
- lsrs r3, 16
- str r3, [sp, 0x8]
- lsls r0, 16
- lsrs r0, 20
- lsls r0, 28
- lsrs r0, 16
- mov r9, r0
- movs r5, 0
-_08176DEA:
- movs r4, 0
- lsls r7, r5, 1
- ldr r1, [sp, 0x4]
- adds r0, r1, r5
- adds r2, r5, 0x1
- mov r8, r2
- lsls r0, 6
- ldr r1, [sp, 0x8]
- adds r6, r0, r1
-_08176DFC:
- adds r0, r7, r5
- adds r0, r4
- ldr r2, [sp]
- adds r0, r2, r0
- ldrb r0, [r0]
- bl sub_8176D78
- mov r2, r10
- adds r1, r2, r4
- lsls r1, 1
- adds r1, r6
- movs r2, 0xC0
- lsls r2, 19
- adds r1, r2
- add r0, r9
- strh r0, [r1]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _08176DFC
- mov r1, r8
- lsls r0, r1, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bls _08176DEA
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8176DBC
-
- thumb_func_start sub_8176E40
-sub_8176E40: @ 8176E40
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 16
- lsrs r6, r1, 16
- lsrs r1, 20
- lsls r1, 28
- lsrs r1, 16
- movs r2, 0
- ldr r7, =gUnknown_085E5BAC
- movs r4, 0xC0
- lsls r4, 19
- adds r1, 0x1
- ldr r3, =0x000003ff
-_08176E5E:
- lsls r0, r2, 1
- adds r0, r5
- adds r0, r4
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, r3
- bls _08176E5E
- str r6, [sp]
- adds r0, r7, 0
- movs r1, 0x3
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_8176DBC
- ldr r0, =gUnknown_085E5BBB
- str r6, [sp]
- movs r1, 0x7
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_8176DBC
- ldr r4, =gUnknown_085E5BCA
- str r6, [sp]
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_8176DBC
- str r6, [sp]
- adds r0, r4, 0
- movs r1, 0x10
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_8176DBC
- ldr r0, =gUnknown_085E5BD9
- str r6, [sp]
- movs r1, 0x14
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_8176DBC
- ldr r0, =gUnknown_085E5BE8
- str r6, [sp]
- movs r1, 0x18
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_8176DBC
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8176E40
-
- thumb_func_start sub_8176EE8
-sub_8176EE8: @ 8176EE8
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gUnknown_0203BD28
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _08176F04
- adds r0, r4, 0
- bl DestroySprite
- b _08176F88
- .pool
-_08176F04:
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0x5
- bhi _08176F88
- lsls r0, 2
- ldr r1, =_08176F1C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08176F1C:
- .4byte _08176F34
- .4byte _08176F3E
- .4byte _08176F44
- .4byte _08176F4E
- .4byte _08176F58
- .4byte _08176F6E
-_08176F34:
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- b _08176F88
-_08176F3E:
- adds r0, r4, 0
- movs r1, 0x1
- b _08176F72
-_08176F44:
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnimIfDifferent
- b _08176F88
-_08176F4E:
- adds r0, r4, 0
- movs r1, 0x3
- bl StartSpriteAnimIfDifferent
- b _08176F88
-_08176F58:
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- ldrh r1, [r4, 0x20]
- movs r2, 0x20
- ldrsh r0, [r4, r2]
- cmp r0, 0x78
- ble _08176F88
- subs r0, r1, 0x1
- b _08176F86
-_08176F6E:
- adds r0, r4, 0
- movs r1, 0
-_08176F72:
- bl StartSpriteAnimIfDifferent
- ldrh r2, [r4, 0x20]
- movs r0, 0x20
- ldrsh r1, [r4, r0]
- movs r0, 0x20
- negs r0, r0
- cmp r1, r0
- ble _08176F88
- subs r0, r2, 0x1
-_08176F86:
- strh r0, [r4, 0x20]
-_08176F88:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8176EE8
-
- thumb_func_start sub_8176F90
-sub_8176F90: @ 8176F90
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gUnknown_0203BD28
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _08176FAC
- adds r0, r4, 0
- bl DestroySprite
- b _08177048
- .pool
-_08176FAC:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08176FD4
- cmp r0, 0x1
- bgt _08176FBE
- cmp r0, 0
- beq _08176FC8
- b _08177048
-_08176FBE:
- cmp r0, 0x2
- beq _08177010
- cmp r0, 0x3
- beq _0817702E
- b _08177048
-_08176FC8:
- strh r0, [r4, 0x26]
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- b _08177048
-_08176FD4:
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- cmp r0, 0xC8
- ble _08176FE6
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAnimIfDifferent
- b _08176FEE
-_08176FE6:
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnimIfDifferent
-_08176FEE:
- ldrh r2, [r4, 0x20]
- movs r0, 0x20
- ldrsh r1, [r4, r0]
- movs r0, 0x20
- negs r0, r0
- cmp r1, r0
- ble _08177000
- subs r0, r2, 0x2
- strh r0, [r4, 0x20]
-_08177000:
- ldr r0, =gUnknown_0203BD26
- ldrh r0, [r0]
- negs r0, r0
- strh r0, [r4, 0x26]
- b _08177048
- .pool
-_08177010:
- ldrh r0, [r4, 0x3C]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- ldrh r1, [r4, 0x3C]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _08177048
- ldrh r0, [r4, 0x20]
- adds r0, 0x1
- b _08177046
-_0817702E:
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- ldrh r2, [r4, 0x20]
- movs r0, 0x20
- ldrsh r1, [r4, r0]
- movs r0, 0x20
- negs r0, r0
- cmp r1, r0
- ble _08177048
- subs r0, r2, 0x1
-_08177046:
- strh r0, [r4, 0x20]
-_08177048:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8176F90
-
- thumb_func_start sub_8177050
-sub_8177050: @ 8177050
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, =gUnknown_0203BD28
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _0817706C
- ldrh r0, [r5, 0x3A]
- bl sub_818D820
- b _0817721C
- .pool
-_0817706C:
- ldrh r0, [r5, 0x3C]
- adds r0, 0x1
- strh r0, [r5, 0x3C]
- movs r2, 0x2E
- ldrsh r0, [r5, r2]
- cmp r0, 0xA
- bhi _081770B4
- lsls r0, 2
- ldr r1, =_08177088
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08177088:
- .4byte _081770B4
- .4byte _0817710E
- .4byte _08177190
- .4byte _081771C6
- .4byte _081770B4
- .4byte _081770B4
- .4byte _081770B4
- .4byte _081770B4
- .4byte _081770B4
- .4byte _081771FE
- .4byte _08177206
-_081770B4:
- ldrb r1, [r5, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r5, 0x1]
- movs r0, 0x30
- ldrsh r1, [r5, r0]
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r5, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x3]
- movs r0, 0x10
- strh r0, [r5, 0x32]
- ldrh r4, [r5, 0x30]
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x80
- lsls r0, 9
- movs r1, 0x10
- bl __divsi3
- adds r1, r0, 0
- str r1, [sp]
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- movs r0, 0x1
- strh r0, [r5, 0x2E]
- b _0817721C
-_0817710E:
- ldrh r1, [r5, 0x32]
- movs r2, 0x32
- ldrsh r0, [r5, r2]
- cmp r0, 0xFF
- bgt _08177144
- adds r0, r1, 0
- adds r0, 0x8
- strh r0, [r5, 0x32]
- ldrh r4, [r5, 0x30]
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x32
- ldrsh r1, [r5, r0]
- movs r0, 0x80
- lsls r0, 9
- bl __divsi3
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp]
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- b _0817714A
-_08177144:
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
-_0817714A:
- movs r2, 0x30
- ldrsh r1, [r5, r2]
- cmp r1, 0x2
- beq _0817721C
- cmp r1, 0x2
- bgt _0817715C
- cmp r1, 0x1
- beq _08177162
- b _0817721C
-_0817715C:
- cmp r1, 0x3
- beq _0817717A
- b _0817721C
-_08177162:
- ldrh r1, [r5, 0x3C]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _08177172
- ldrh r0, [r5, 0x22]
- adds r0, 0x1
- strh r0, [r5, 0x22]
-_08177172:
- ldrh r0, [r5, 0x20]
- subs r0, 0x2
- strh r0, [r5, 0x20]
- b _0817721C
-_0817717A:
- ldrh r0, [r5, 0x3C]
- ands r1, r0
- cmp r1, 0
- bne _08177188
- ldrh r0, [r5, 0x22]
- adds r0, 0x1
- strh r0, [r5, 0x22]
-_08177188:
- ldrh r0, [r5, 0x20]
- adds r0, 0x2
- strh r0, [r5, 0x20]
- b _0817721C
-_08177190:
- ldrh r1, [r5, 0x34]
- movs r2, 0x34
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _081771A0
- subs r0, r1, 0x1
- strh r0, [r5, 0x34]
- b _0817721C
-_081771A0:
- movs r1, 0xF4
- lsls r1, 4
- movs r0, 0x50
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0x10
- bl SetGpuReg
- ldrb r1, [r5, 0x1]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r5, 0x1]
- movs r0, 0x10
- strh r0, [r5, 0x34]
- b _081771FE
-_081771C6:
- ldrh r1, [r5, 0x34]
- movs r2, 0x34
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _081771EC
- subs r1, 0x1
- strh r1, [r5, 0x34]
- movs r0, 0x34
- ldrsh r2, [r5, r0]
- movs r0, 0x10
- subs r0, r2
- lsls r0, 8
- adds r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
- b _0817721C
-_081771EC:
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0x9
- strh r0, [r5, 0x2E]
- b _0817721C
-_081771FE:
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
- b _0817721C
-_08177206:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- ldrh r0, [r5, 0x3A]
- bl sub_818D820
-_0817721C:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8177050
-
- thumb_func_start sub_8177224
-sub_8177224: @ 8177224
- push {r4-r7,lr}
- adds r5, r3, 0
- lsls r0, 16
- lsrs r0, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- adds r3, r5, 0
- bl sub_80C0E9C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r6, =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r2, r1, r6
- ldrb r3, [r2, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r3
- movs r3, 0x4
- orrs r0, r3
- strb r0, [r2, 0x5]
- adds r0, r5, 0x1
- strh r0, [r2, 0x30]
- movs r0, 0x3E
- adds r0, r2
- mov r12, r0
- ldrb r0, [r0]
- orrs r0, r3
- mov r3, r12
- strb r0, [r3]
- adds r0, r6, 0
- adds r0, 0x1C
- adds r1, r0
- ldr r0, =sub_8177050
- str r0, [r1]
- strh r4, [r2, 0x3A]
- ldr r0, =gUnknown_085E7068
- movs r7, 0x20
- ldrsh r1, [r2, r7]
- movs r3, 0x22
- ldrsh r2, [r2, r3]
- movs r3, 0x1
- bl CreateSprite
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strh r4, [r0, 0x2E]
- lsls r5, 24
- lsrs r5, 24
- adds r1, r5, 0
- bl StartSpriteAnimIfDifferent
- adds r0, r4, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8177224
-
- thumb_func_start sub_81772B8
-sub_81772B8: @ 81772B8
- push {r4,lr}
- adds r3, r0, 0
- ldr r4, =gSprites
- movs r1, 0x2E
- ldrsh r0, [r3, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0xA
- beq _081772DC
- ldr r0, =gUnknown_0203BD28
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, 0
- beq _081772EC
-_081772DC:
- adds r0, r3, 0
- bl DestroySprite
- b _08177380
- .pool
-_081772EC:
- adds r0, r1, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- movs r1, 0x3E
- adds r1, r3
- mov r12, r1
- movs r1, 0x4
- ands r1, r0
- mov r0, r12
- ldrb r2, [r0]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- movs r2, 0x2E
- ldrsh r1, [r3, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x1]
- movs r0, 0xC
- ands r0, r1
- ldrb r2, [r3, 0x1]
- movs r1, 0xD
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x1]
- movs r0, 0x2E
- ldrsh r2, [r3, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x1]
- lsls r0, 30
- lsrs r0, 30
- movs r2, 0x4
- negs r2, r2
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x1]
- movs r2, 0x2E
- ldrsh r1, [r3, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x3]
- movs r1, 0x3E
- ands r1, r0
- ldrb r2, [r3, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x3]
- movs r0, 0x2E
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x20]
- strh r0, [r3, 0x20]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x22]
- strh r0, [r3, 0x22]
-_08177380:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81772B8
-
- thumb_func_start sub_8177388
-sub_8177388: @ 8177388
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =0x00004023
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl GetStarterPokemon
- lsls r0, 16
- lsrs r0, 16
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- movs r4, 0x1
- movs r6, 0
- ldr r5, =0x00000181
-_081773B4:
- adds r0, r4, 0
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _081773D4
- ldr r0, =gUnknown_0203BCE8
- ldr r0, [r0]
- lsls r1, r6, 1
- adds r0, 0x96
- adds r0, r1
- strh r4, [r0]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_081773D4:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r5
- bls _081773B4
- adds r4, r6, 0
- ldr r0, =0x00000181
- ldr r1, =gUnknown_0203BCE8
- mov r8, r1
- lsls r7, r4, 16
- cmp r4, r0
- bhi _08177406
- mov r5, r8
- movs r3, 0
- adds r2, r0, 0
-_081773F2:
- ldr r0, [r5]
- lsls r1, r4, 1
- adds r0, 0x96
- adds r0, r1
- strh r3, [r0]
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r2
- bls _081773F2
-_08177406:
- mov r2, r8
- ldr r1, [r2]
- ldr r2, =0x0000039a
- adds r0, r1, r2
- strh r6, [r0]
- lsrs r0, r7, 16
- cmp r0, 0x46
- bhi _08177430
- adds r0, r1, 0
- adds r0, 0x94
- strh r6, [r0]
- b _08177436
- .pool
-_08177430:
- adds r1, 0x94
- movs r0, 0x47
- strh r0, [r1]
-_08177436:
- movs r6, 0
- ldr r0, =gUnknown_0203BCE8
- mov r9, r0
- ldr r1, =0x0000039a
- mov r8, r1
- movs r7, 0
- b _08177450
- .pool
-_0817744C:
- cmp r6, 0x46
- bhi _081774AC
-_08177450:
- bl Random
- mov r2, r9
- ldr r4, [r2]
- mov r1, r8
- adds r5, r4, r1
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r5]
- bl __umodsi3
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, r6, 1
- adds r1, r4, r1
- lsls r0, r3, 1
- adds r4, 0x96
- adds r2, r4, r0
- ldrh r0, [r2]
- strh r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- strh r7, [r2]
- ldrh r0, [r5]
- subs r0, 0x1
- strh r0, [r5]
- lsls r0, 16
- lsrs r0, 16
- cmp r3, r0
- beq _081774A0
- ldrh r0, [r5]
- lsls r0, 1
- adds r0, r4, r0
- ldrh r0, [r0]
- strh r0, [r2]
- ldrh r0, [r5]
- lsls r0, 1
- adds r0, r4, r0
- strh r7, [r0]
-_081774A0:
- mov r2, r9
- ldr r0, [r2]
- add r0, r8
- ldrh r0, [r0]
- cmp r0, 0
- bne _0817744C
-_081774AC:
- ldr r1, =gUnknown_0203BCE8
- ldr r2, [r1]
- adds r3, r2, 0
- adds r3, 0x94
- ldrh r0, [r3]
- mov r8, r1
- cmp r0, 0x46
- bhi _081774F8
- adds r6, r0, 0
- movs r3, 0
- cmp r6, 0x46
- bhi _081774EE
- mov r4, r8
-_081774C6:
- ldr r2, [r4]
- lsls r1, r6, 1
- adds r1, r2, r1
- lsls r0, r3, 1
- adds r0, r2, r0
- ldrh r0, [r0]
- strh r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- adds r2, 0x94
- ldrh r2, [r2]
- cmp r3, r2
- bne _081774E4
- movs r3, 0
-_081774E4:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x46
- bls _081774C6
-_081774EE:
- mov r1, r8
- ldr r0, [r1]
- b _08177538
- .pool
-_081774F8:
- movs r4, 0
- ldrh r0, [r2]
- cmp r0, r10
- beq _08177516
- adds r1, r2, 0
-_08177502:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r0, r4, 1
- adds r0, r1, r0
- ldrh r0, [r0]
- cmp r0, r10
- beq _08177516
- cmp r4, 0x46
- bls _08177502
-_08177516:
- mov r0, r8
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x94
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r4, r0
- bge _08177536
- lsls r0, r4, 1
- adds r0, r2, r0
- adds r2, 0x8C
- ldrh r1, [r2]
- strh r1, [r0]
- mov r1, r10
- strh r1, [r2]
- b _0817753E
-_08177536:
- adds r0, r2, 0
-_08177538:
- adds r0, 0x8C
- mov r2, r10
- strh r2, [r0]
-_0817753E:
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0x94
- movs r1, 0x47
- strh r1, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8177388
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/intro_credits_graphics.s b/asm/intro_credits_graphics.s
deleted file mode 100644
index aef83f35b..000000000
--- a/asm/intro_credits_graphics.s
+++ /dev/null
@@ -1,459 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_817B698
-sub_817B698: @ 817B698
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r3, 24
- lsrs r3, 24
- mov r8, r3
- movs r7, 0
- cmp r7, r8
- bcs _0817B74E
- ldr r0, =gSprites
- mov r10, r0
- movs r2, 0x3F
- mov r9, r2
-_0817B6C2:
- lsls r6, r7, 3
- ldr r0, [sp, 0x4]
- adds r6, r0
- ldrb r1, [r6, 0x1]
- ldrb r2, [r6, 0x2]
- ldrb r3, [r6, 0x3]
- ldr r0, =gUnknown_085F504C
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r5, r0, 4
- adds r5, r0
- lsls r5, 2
- mov r2, r10
- adds r4, r5, r2
- ldrb r2, [r6]
- lsls r1, r2, 26
- lsrs r1, 30
- lsrs r2, 6
- adds r0, r4, 0
- movs r3, 0
- bl CalcCenterToCornerVec
- ldrb r3, [r4, 0x5]
- movs r0, 0xC
- orrs r3, r0
- strb r3, [r4, 0x5]
- ldrb r1, [r6]
- lsls r1, 26
- lsrs r1, 30
- lsls r1, 6
- ldrb r2, [r4, 0x1]
- mov r0, r9
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r6]
- lsrs r1, 6
- lsls r1, 6
- ldrb r2, [r4, 0x3]
- mov r0, r9
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x3]
- movs r0, 0xF
- ands r3, r0
- strb r3, [r4, 0x5]
- ldr r0, =gSprites + 8
- adds r5, r0
- ldr r2, [sp, 0x8]
- str r2, [r5]
- ldrb r1, [r6]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl StartSpriteAnim
- movs r1, 0
- mov r0, sp
- ldrh r0, [r0]
- strh r0, [r4, 0x2E]
- ldrh r0, [r6, 0x4]
- strh r0, [r4, 0x30]
- strh r1, [r4, 0x32]
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, r8
- bcc _0817B6C2
-_0817B74E:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817B698
-
- thumb_func_start sub_817B76C
-sub_817B76C: @ 817B76C
- push {lr}
- ldr r1, =gUnknown_085F50A4
- ldr r2, =gUnknown_085F5094
- movs r0, 0
- movs r3, 0x9
- bl sub_817B698
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817B76C
-
- thumb_func_start sub_817B788
-sub_817B788: @ 817B788
- push {lr}
- ldr r1, =gUnknown_085F5120
- ldr r2, =gUnknown_085F5114
- movs r0, 0x1
- movs r3, 0xC
- bl sub_817B698
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817B788
-
- thumb_func_start sub_817B7A4
-sub_817B7A4: @ 817B7A4
- push {lr}
- ldr r1, =gUnknown_085F519C
- ldr r2, =gUnknown_085F5198
- movs r0, 0x1
- movs r3, 0x6
- bl sub_817B698
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817B7A4
-
- thumb_func_start nullsub_65
-nullsub_65: @ 817B7C0
- bx lr
- thumb_func_end nullsub_65
-
- thumb_func_start sub_817B7C4
-sub_817B7C4: @ 817B7C4
- push {r4,lr}
- ldr r4, =gSprites
- movs r1, 0x2E
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- adds r1, 0x3E
- ldrb r1, [r1]
- movs r2, 0x3E
- adds r2, r0
- mov r12, r2
- movs r2, 0x4
- ands r2, r1
- mov r1, r12
- ldrb r3, [r1]
- movs r1, 0x5
- negs r1, r1
- ands r1, r3
- orrs r1, r2
- mov r2, r12
- strb r1, [r2]
- movs r1, 0x2E
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x20]
- strh r1, [r0, 0x20]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x22]
- adds r1, 0x8
- strh r1, [r0, 0x22]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x24]
- strh r1, [r0, 0x24]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x26]
- strh r1, [r0, 0x26]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817B7C4
-
- thumb_func_start intro_create_brendan_sprite
-intro_create_brendan_sprite: @ 817B834
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- ldr r0, =gUnknown_085F51EC
- lsls r5, 16
- asrs r5, 16
- lsls r4, 16
- asrs r4, 16
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x2
- bl CreateSprite
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- ldr r0, =gUnknown_085F523C
- adds r4, 0x8
- lsls r4, 16
- asrs r4, 16
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x3
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- strh r6, [r1, 0x2E]
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end intro_create_brendan_sprite
-
- thumb_func_start intro_create_may_sprite
-intro_create_may_sprite: @ 817B88C
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- ldr r0, =gUnknown_085F5204
- lsls r5, 16
- asrs r5, 16
- lsls r4, 16
- asrs r4, 16
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x2
- bl CreateSprite
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- ldr r0, =gUnknown_085F5254
- adds r4, 0x8
- lsls r4, 16
- asrs r4, 16
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x3
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- strh r6, [r1, 0x2E]
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end intro_create_may_sprite
-
- thumb_func_start nullsub_66
-nullsub_66: @ 817B8E4
- bx lr
- thumb_func_end nullsub_66
-
- thumb_func_start sub_817B8E8
-sub_817B8E8: @ 817B8E8
- push {r4,lr}
- ldr r4, =gSprites
- movs r1, 0x2E
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- adds r1, 0x3E
- ldrb r1, [r1]
- movs r2, 0x3E
- adds r2, r0
- mov r12, r2
- movs r2, 0x4
- ands r2, r1
- mov r1, r12
- ldrb r3, [r1]
- movs r1, 0x5
- negs r1, r1
- ands r1, r3
- orrs r1, r2
- mov r2, r12
- strb r1, [r2]
- movs r1, 0x2E
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x22]
- strh r1, [r0, 0x22]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x24]
- strh r1, [r0, 0x24]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x26]
- strh r1, [r0, 0x26]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817B8E8
-
- thumb_func_start sub_817B948
-sub_817B948: @ 817B948
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r2, r0, 0
- adds r5, r1, 0
- ldr r0, =gUnknown_085F528C
- mov r8, r0
- lsls r2, 16
- asrs r4, r2, 16
- ldr r0, =0xffe00000
- adds r2, r0
- asrs r2, 16
- lsls r5, 16
- asrs r5, 16
- mov r0, r8
- adds r1, r2, 0
- adds r2, r5, 0
- movs r3, 0x5
- bl CreateSprite
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- adds r4, 0x20
- lsls r4, 16
- asrs r4, 16
- mov r0, r8
- adds r1, r4, 0
- adds r2, r5, 0
- movs r3, 0x6
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r5, =gSprites
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- adds r0, r4, r5
- strh r6, [r0, 0x2E]
- movs r1, 0x1
- bl StartSpriteAnim
- adds r5, 0x1C
- adds r4, r5
- ldr r0, =sub_817B8E8
- str r0, [r4]
- adds r0, r6, 0
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_817B948
-
- thumb_func_start intro_create_flygon_sprite
-intro_create_flygon_sprite: @ 817B9C4
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r2, r0, 0
- adds r5, r1, 0
- ldr r0, =gUnknown_085F52A4
- mov r8, r0
- lsls r2, 16
- asrs r4, r2, 16
- ldr r0, =0xffe00000
- adds r2, r0
- asrs r2, 16
- lsls r5, 16
- asrs r5, 16
- mov r0, r8
- adds r1, r2, 0
- adds r2, r5, 0
- movs r3, 0x5
- bl CreateSprite
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- adds r4, 0x20
- lsls r4, 16
- asrs r4, 16
- mov r0, r8
- adds r1, r4, 0
- adds r2, r5, 0
- movs r3, 0x6
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r5, =gSprites
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- adds r0, r4, r5
- strh r6, [r0, 0x2E]
- movs r1, 0x1
- bl StartSpriteAnim
- adds r5, 0x1C
- adds r4, r5
- ldr r0, =sub_817B8E8
- str r0, [r4]
- adds r0, r6, 0
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end intro_create_flygon_sprite
-
- .align 2, 0 @ Don't pad with nop.