summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorCameron Hall <camthesaxman@users.noreply.github.com>2016-11-01 08:48:23 -0500
committerYamaArashi <YamaArashi@users.noreply.github.com>2016-11-01 06:48:23 -0700
commit315af92a3cfb8524d3b560f42fc352387e1369ed (patch)
treed0378005d477a1aa03dc2dbf0ddbf8652d765cb0 /asm
parent447b23ff24a4011001a620199fb9ac790052681c (diff)
decompile more pokedex functions (#81)
* decompile more pokedex functions * use spaces instead of tabs * mostly fix up sub_808D690 * fix sub_808DBE8 * decompile sub_808E398 * decompile more pokedex functions * decompile sub_808E978 * decompile more functions * decompile sub_808F2B0 * decompile sub_808F8B8 * decompile more pokedex functions
Diffstat (limited to 'asm')
-rw-r--r--asm/pokedex.s1251
1 files changed, 0 insertions, 1251 deletions
diff --git a/asm/pokedex.s b/asm/pokedex.s
index ea1c404de..1d5d3a322 100644
--- a/asm/pokedex.s
+++ b/asm/pokedex.s
@@ -6,1257 +6,6 @@
.text
- thumb_func_start sub_808F8D8
-sub_808F8D8: @ 808F8D8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r2, _0808F92C @ =gMain
- ldr r0, _0808F930 @ =0x0000043c
- adds r6, r2, r0
- ldrb r0, [r6]
- cmp r0, 0x1
- beq _0808F948
- cmp r0, 0x1
- ble _0808F8F2
- cmp r0, 0x2
- beq _0808F970
-_0808F8F2:
- ldr r0, _0808F934 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0808F9AA
- ldr r4, _0808F938 @ =gUnknown_0202FFB4
- ldr r0, [r4]
- ldr r1, _0808F93C @ =0x0000064a
- adds r0, r1
- movs r1, 0x5
- strb r1, [r0]
- ldr r1, _0808F940 @ =gUnknown_03005CEC
- ldr r0, [r2, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x80
- lsls r0, 2
- bl sub_8091060
- ldr r0, [r4]
- ldr r2, _0808F944 @ =0x0000064d
- adds r0, r2
- movs r1, 0x1
- strb r1, [r0]
- strb r1, [r6]
- b _0808F9AA
- .align 2, 0
-_0808F92C: .4byte gMain
-_0808F930: .4byte 0x0000043c
-_0808F934: .4byte gPaletteFade
-_0808F938: .4byte gUnknown_0202FFB4
-_0808F93C: .4byte 0x0000064a
-_0808F940: .4byte gUnknown_03005CEC
-_0808F944: .4byte 0x0000064d
-_0808F948:
- movs r0, 0xD
- bl sub_8090540
- movs r0, 0x1
- movs r1, 0xD
- bl sub_8090644
- bl sub_808D640
- ldr r1, _0808F96C @ =REG_BG1CNT
- movs r2, 0xD0
- lsls r2, 4
- adds r0, r2, 0
- strh r0, [r1]
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- b _0808F9AA
- .align 2, 0
-_0808F96C: .4byte REG_BG1CNT
-_0808F970:
- ldr r0, _0808F9B0 @ =gUnknown_0202FFBC
- ldr r0, [r0]
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- ldr r5, _0808F9B4 @ =gUnknown_0202FFB4
- ldr r1, [r5]
- ldr r4, _0808F9B8 @ =0x0000064f
- adds r1, r4
- bl ShowPokedexAreaScreen
- ldr r0, _0808F9BC @ =gUnknown_03005CEC
- ldr r0, [r0]
- bl SetVBlankCallback
- ldr r0, [r5]
- adds r0, r4
- movs r1, 0
- strb r1, [r0]
- strb r1, [r6]
- ldr r1, _0808F9C0 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _0808F9C4 @ =sub_808F9C8
- str r1, [r0]
-_0808F9AA:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0808F9B0: .4byte gUnknown_0202FFBC
-_0808F9B4: .4byte gUnknown_0202FFB4
-_0808F9B8: .4byte 0x0000064f
-_0808F9BC: .4byte gUnknown_03005CEC
-_0808F9C0: .4byte gTasks
-_0808F9C4: .4byte sub_808F9C8
- thumb_func_end sub_808F8D8
-
- thumb_func_start sub_808F9C8
-sub_808F9C8: @ 808F9C8
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _0808F9F0 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808F9F4 @ =0x0000064f
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _0808F9EA
- ldr r0, _0808F9F8 @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, _0808F9FC @ =sub_808FA00
- str r0, [r1]
-_0808F9EA:
- pop {r0}
- bx r0
- .align 2, 0
-_0808F9F0: .4byte gUnknown_0202FFB4
-_0808F9F4: .4byte 0x0000064f
-_0808F9F8: .4byte gTasks
-_0808F9FC: .4byte sub_808FA00
- thumb_func_end sub_808F9C8
-
- thumb_func_start sub_808FA00
-sub_808FA00: @ 808FA00
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _0808FA34 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0808FA56
- ldr r0, _0808FA38 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808FA3C @ =0x0000064f
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0808FA24
- cmp r0, 0x2
- beq _0808FA48
-_0808FA24:
- ldr r0, _0808FA40 @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, _0808FA44 @ =sub_808F2B0
- b _0808FA54
- .align 2, 0
-_0808FA34: .4byte gPaletteFade
-_0808FA38: .4byte gUnknown_0202FFB4
-_0808FA3C: .4byte 0x0000064f
-_0808FA40: .4byte gTasks
-_0808FA44: .4byte sub_808F2B0
-_0808FA48:
- ldr r0, _0808FA5C @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, _0808FA60 @ =sub_808FA64
-_0808FA54:
- str r0, [r1]
-_0808FA56:
- pop {r0}
- bx r0
- .align 2, 0
-_0808FA5C: .4byte gTasks
-_0808FA60: .4byte sub_808FA64
- thumb_func_end sub_808FA00
-
- thumb_func_start sub_808FA64
-sub_808FA64: @ 808FA64
- push {r4,r5,lr}
- sub sp, 0x18
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, _0808FA84 @ =gMain
- ldr r2, _0808FA88 @ =0x0000043c
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0xA
- bhi _0808FABC
- lsls r0, 2
- ldr r1, _0808FA8C @ =_0808FA90
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0808FA84: .4byte gMain
-_0808FA88: .4byte 0x0000043c
-_0808FA8C: .4byte _0808FA90
- .align 2, 0
-_0808FA90:
- .4byte _0808FABC
- .4byte _0808FB28
- .4byte _0808FB58
- .4byte _0808FB9C
- .4byte _0808FBC4
- .4byte _0808FBF8
- .4byte _0808FC54
- .4byte _0808FCD4
- .4byte _0808FD40
- .4byte _0808FD6C
- .4byte _0808FDBC
-_0808FABC:
- ldr r0, _0808FB08 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0808FACA
- b _0808FDDC
-_0808FACA:
- ldr r0, _0808FB0C @ =gMPlay_BGM
- bl m4aMPlayStop
- ldr r5, _0808FB10 @ =gUnknown_0202FFB4
- ldr r0, [r5]
- ldr r3, _0808FB14 @ =0x0000064a
- adds r0, r3
- movs r1, 0x6
- strb r1, [r0]
- ldr r1, _0808FB18 @ =gUnknown_03005CEC
- ldr r4, _0808FB1C @ =gMain
- ldr r0, [r4, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x80
- lsls r0, 2
- bl sub_8091060
- ldr r0, [r5]
- ldr r1, _0808FB20 @ =0x0000064d
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- ldr r2, _0808FB24 @ =0x0000043c
- adds r4, r2
- movs r0, 0x1
- strb r0, [r4]
- b _0808FDDC
- .align 2, 0
-_0808FB08: .4byte gPaletteFade
-_0808FB0C: .4byte gMPlay_BGM
-_0808FB10: .4byte gUnknown_0202FFB4
-_0808FB14: .4byte 0x0000064a
-_0808FB18: .4byte gUnknown_03005CEC
-_0808FB1C: .4byte gMain
-_0808FB20: .4byte 0x0000064d
-_0808FB24: .4byte 0x0000043c
-_0808FB28:
- ldr r0, _0808FB44 @ =gPokedexMenu_Gfx
- movs r1, 0xC0
- lsls r1, 19
- bl LZ77UnCompVram
- ldr r0, _0808FB48 @ =gUnknown_0839F8A0
- ldr r1, _0808FB4C @ =0x06007000
- bl LZ77UnCompVram
- ldr r1, _0808FB50 @ =gMain
- ldr r3, _0808FB54 @ =0x0000043c
- adds r1, r3
- b _0808FDA0
- .align 2, 0
-_0808FB44: .4byte gPokedexMenu_Gfx
-_0808FB48: .4byte gUnknown_0839F8A0
-_0808FB4C: .4byte 0x06007000
-_0808FB50: .4byte gMain
-_0808FB54: .4byte 0x0000043c
-_0808FB58:
- movs r0, 0xD
- bl sub_8090540
- movs r0, 0x2
- movs r1, 0xD
- bl sub_8090644
- bl sub_808D640
- ldr r2, _0808FB88 @ =0x0600f800
- add r1, sp, 0x4
- movs r0, 0
- strh r0, [r1]
- ldr r0, _0808FB8C @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _0808FB90 @ =0x81000280
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- ldr r1, _0808FB94 @ =gMain
- ldr r4, _0808FB98 @ =0x0000043c
- adds r1, r4
- b _0808FDA0
- .align 2, 0
-_0808FB88: .4byte 0x0600f800
-_0808FB8C: .4byte 0x040000d4
-_0808FB90: .4byte 0x81000280
-_0808FB94: .4byte gMain
-_0808FB98: .4byte 0x0000043c
-_0808FB9C:
- ldr r4, _0808FBB8 @ =gWindowConfig_81E702C
- adds r0, r4, 0
- bl SetUpWindowConfig
- adds r0, r4, 0
- bl InitMenuWindow
- bl ResetPaletteFade
- ldr r1, _0808FBBC @ =gMain
- ldr r0, _0808FBC0 @ =0x0000043c
- adds r1, r0
- b _0808FDA0
- .align 2, 0
-_0808FBB8: .4byte gWindowConfig_81E702C
-_0808FBBC: .4byte gMain
-_0808FBC0: .4byte 0x0000043c
-_0808FBC4:
- ldr r0, _0808FBE8 @ =gDexText_CryOf
- movs r1, 0xA
- movs r2, 0x4
- bl MenuPrint
- ldr r0, _0808FBEC @ =gUnknown_0202FFBC
- ldr r0, [r0]
- ldrh r0, [r0]
- movs r1, 0xA
- movs r2, 0x6
- movs r3, 0x2
- bl sub_8091260
- ldr r1, _0808FBF0 @ =gMain
- ldr r2, _0808FBF4 @ =0x0000043c
- adds r1, r2
- b _0808FDA0
- .align 2, 0
-_0808FBE8: .4byte gDexText_CryOf
-_0808FBEC: .4byte gUnknown_0202FFBC
-_0808FBF0: .4byte gMain
-_0808FBF4: .4byte 0x0000043c
-_0808FBF8:
- ldr r0, _0808FC3C @ =gUnknown_0202FFBC
- ldr r0, [r0]
- ldrh r0, [r0]
- movs r1, 0x30
- movs r2, 0x38
- movs r3, 0
- bl sub_80918EC
- ldr r2, _0808FC40 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r2
- movs r3, 0
- strh r0, [r1, 0x10]
- ldr r2, _0808FC44 @ =gSprites
- movs r4, 0x10
- ldrsh r0, [r1, r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
- ldr r0, _0808FC48 @ =gUnknown_03005E98
- strb r3, [r0]
- ldr r1, _0808FC4C @ =gMain
- ldr r0, _0808FC50 @ =0x0000043c
- adds r1, r0
- b _0808FDA0
- .align 2, 0
-_0808FC3C: .4byte gUnknown_0202FFBC
-_0808FC40: .4byte gTasks
-_0808FC44: .4byte gSprites
-_0808FC48: .4byte gUnknown_03005E98
-_0808FC4C: .4byte gMain
-_0808FC50: .4byte 0x0000043c
-_0808FC54:
- ldr r1, _0808FCB0 @ =0xffff0000
- ldr r0, [sp, 0x8]
- ands r0, r1
- ldr r1, _0808FCB4 @ =0x00004020
- orrs r0, r1
- ldr r1, _0808FCB8 @ =0xff00ffff
- ands r0, r1
- movs r1, 0xF8
- lsls r1, 13
- orrs r0, r1
- ldr r1, _0808FCBC @ =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 20
- orrs r0, r1
- str r0, [sp, 0x8]
- ldr r2, _0808FCC0 @ =0xffff00ff
- add r0, sp, 0x8
- ldr r1, [r0, 0x4]
- ands r1, r2
- movs r2, 0xF0
- lsls r2, 5
- orrs r1, r2
- ldr r2, _0808FCC4 @ =0xffffff00
- ands r1, r2
- movs r2, 0xC
- orrs r1, r2
- str r1, [r0, 0x4]
- movs r1, 0
- bl sub_8119E3C
- lsls r0, 24
- cmp r0, 0
- bne _0808FC9A
- b _0808FDDC
-_0808FC9A:
- ldr r1, _0808FCC8 @ =gMain
- ldr r2, _0808FCCC @ =0x0000043c
- adds r1, r2
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- ldr r0, _0808FCD0 @ =gUnknown_03005E98
- strb r2, [r0]
- b _0808FDDC
- .align 2, 0
-_0808FCB0: .4byte 0xffff0000
-_0808FCB4: .4byte 0x00004020
-_0808FCB8: .4byte 0xff00ffff
-_0808FCBC: .4byte 0x00ffffff
-_0808FCC0: .4byte 0xffff00ff
-_0808FCC4: .4byte 0xffffff00
-_0808FCC8: .4byte gMain
-_0808FCCC: .4byte 0x0000043c
-_0808FCD0: .4byte gUnknown_03005E98
-_0808FCD4:
- ldr r1, _0808FD24 @ =0xffff0000
- ldr r0, [sp, 0x10]
- ands r0, r1
- movs r1, 0xC0
- lsls r1, 6
- orrs r0, r1
- ldr r1, _0808FD28 @ =0xff00ffff
- ands r0, r1
- movs r1, 0xE0
- lsls r1, 12
- orrs r0, r1
- ldr r1, _0808FD2C @ =0x00ffffff
- ands r0, r1
- movs r1, 0x90
- lsls r1, 20
- orrs r0, r1
- str r0, [sp, 0x10]
- ldr r2, _0808FD30 @ =0xffffff00
- add r0, sp, 0x10
- ldr r1, [r0, 0x4]
- ands r1, r2
- movs r2, 0x12
- orrs r1, r2
- ldr r2, _0808FD34 @ =0xffff00ff
- ands r1, r2
- movs r2, 0xC0
- lsls r2, 2
- orrs r1, r2
- str r1, [r0, 0x4]
- movs r1, 0x1
- bl ShowPokedexCryScreen
- lsls r0, 24
- cmp r0, 0
- beq _0808FDDC
- ldr r1, _0808FD38 @ =gMain
- ldr r3, _0808FD3C @ =0x0000043c
- adds r1, r3
- b _0808FDA0
- .align 2, 0
-_0808FD24: .4byte 0xffff0000
-_0808FD28: .4byte 0xff00ffff
-_0808FD2C: .4byte 0x00ffffff
-_0808FD30: .4byte 0xffffff00
-_0808FD34: .4byte 0xffff00ff
-_0808FD38: .4byte gMain
-_0808FD3C: .4byte 0x0000043c
-_0808FD40:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, _0808FD60 @ =gUnknown_03005CEC
- ldr r0, [r0]
- bl SetVBlankCallback
- ldr r1, _0808FD64 @ =gMain
- ldr r4, _0808FD68 @ =0x0000043c
- adds r1, r4
- b _0808FDA0
- .align 2, 0
-_0808FD60: .4byte gUnknown_03005CEC
-_0808FD64: .4byte gMain
-_0808FD68: .4byte 0x0000043c
-_0808FD6C:
- ldr r0, _0808FDA8 @ =REG_BLDCNT
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- ldr r1, _0808FDAC @ =REG_BG2CNT
- ldr r3, _0808FDB0 @ =0x00000e02
- adds r0, r3, 0
- strh r0, [r1]
- subs r1, 0x4
- ldr r4, _0808FDB4 @ =0x00001f07
- adds r0, r4, 0
- strh r0, [r1]
- adds r1, 0x2
- movs r3, 0xD0
- lsls r3, 4
- adds r0, r3, 0
- strh r0, [r1]
- subs r1, 0xA
- adds r4, 0x39
- adds r0, r4, 0
- strh r0, [r1]
- ldr r0, _0808FDB8 @ =0x0000043c
- adds r1, r2, r0
-_0808FDA0:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0808FDDC
- .align 2, 0
-_0808FDA8: .4byte REG_BLDCNT
-_0808FDAC: .4byte REG_BG2CNT
-_0808FDB0: .4byte 0x00000e02
-_0808FDB4: .4byte 0x00001f07
-_0808FDB8: .4byte 0x0000043c
-_0808FDBC:
- ldr r0, _0808FDE4 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808FDE8 @ =0x0000064f
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r3, _0808FDEC @ =0x0000043c
- adds r0, r2, r3
- strb r1, [r0]
- ldr r1, _0808FDF0 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0808FDF4 @ =sub_808FDF8
- str r1, [r0]
-_0808FDDC:
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808FDE4: .4byte gUnknown_0202FFB4
-_0808FDE8: .4byte 0x0000064f
-_0808FDEC: .4byte 0x0000043c
-_0808FDF0: .4byte gTasks
-_0808FDF4: .4byte sub_808FDF8
- thumb_func_end sub_808FA64
-
- thumb_func_start sub_808FDF8
-sub_808FDF8: @ 808FDF8
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- bl sub_8119F88
- bl IsCryPlaying
- lsls r0, 24
- cmp r0, 0
- beq _0808FE18
- movs r0, 0x1
- bl sub_8090040
- b _0808FE1E
-_0808FE18:
- movs r0, 0
- bl sub_8090040
-_0808FE1E:
- ldr r1, _0808FE48 @ =gMain
- ldrh r2, [r1, 0x2E]
- movs r0, 0x1
- ands r0, r2
- adds r5, r1, 0
- cmp r0, 0
- beq _0808FE50
- movs r0, 0x1
- bl sub_8090040
- ldr r0, _0808FE4C @ =gUnknown_0202FFBC
- ldr r0, [r0]
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- bl sub_811A050
- b _0808FF9E
- .align 2, 0
-_0808FE48: .4byte gMain
-_0808FE4C: .4byte gUnknown_0202FFBC
-_0808FE50:
- ldr r0, _0808FEA8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _0808FE62
- b _0808FF9E
-_0808FE62:
- movs r0, 0x2
- ands r0, r2
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- beq _0808FEC0
- movs r0, 0x15
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0808FEAC @ =gMPlay_BGM
- bl m4aMPlayContinue
- ldr r0, _0808FEB0 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808FEB4 @ =0x0000064f
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- ldr r1, _0808FEB8 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0808FEBC @ =sub_808FFBC
- str r1, [r0]
- movs r0, 0x3
- bl PlaySE
- b _0808FF9E
- .align 2, 0
-_0808FEA8: .4byte gPaletteFade
-_0808FEAC: .4byte gMPlay_BGM
-_0808FEB0: .4byte gUnknown_0202FFB4
-_0808FEB4: .4byte 0x0000064f
-_0808FEB8: .4byte gTasks
-_0808FEBC: .4byte sub_808FFBC
-_0808FEC0:
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- bne _0808FEDA
- movs r0, 0x80
- lsls r0, 2
- ands r0, r2
- cmp r0, 0
- beq _0808FF2C
- ldr r0, _0808FF14 @ =gSaveBlock2
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _0808FF2C
-_0808FEDA:
- movs r0, 0x15
- negs r0, r0
- str r3, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0808FF18 @ =gMPlay_BGM
- bl m4aMPlayContinue
- ldr r0, _0808FF1C @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808FF20 @ =0x0000064f
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- ldr r1, _0808FF24 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0808FF28 @ =sub_808FFBC
- str r1, [r0]
- movs r0, 0x6D
- bl PlaySE
- b _0808FF9E
- .align 2, 0
-_0808FF14: .4byte gSaveBlock2
-_0808FF18: .4byte gMPlay_BGM
-_0808FF1C: .4byte gUnknown_0202FFB4
-_0808FF20: .4byte 0x0000064f
-_0808FF24: .4byte gTasks
-_0808FF28: .4byte sub_808FFBC
-_0808FF2C:
- ldrh r1, [r5, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _0808FF48
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _0808FF9E
- ldr r0, _0808FF60 @ =gSaveBlock2
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _0808FF9E
-_0808FF48:
- ldr r0, _0808FF64 @ =gUnknown_0202FFBC
- ldr r0, [r0]
- ldrb r1, [r0, 0x2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0808FF68
- movs r0, 0x20
- bl PlaySE
- b _0808FF9E
- .align 2, 0
-_0808FF60: .4byte gSaveBlock2
-_0808FF64: .4byte gUnknown_0202FFBC
-_0808FF68:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0808FFA8 @ =gMPlay_BGM
- bl m4aMPlayContinue
- ldr r0, _0808FFAC @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808FFB0 @ =0x0000064f
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0]
- ldr r1, _0808FFB4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0808FFB8 @ =sub_808FFBC
- str r1, [r0]
- movs r0, 0x6D
- bl PlaySE
-_0808FF9E:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0808FFA8: .4byte gMPlay_BGM
-_0808FFAC: .4byte gUnknown_0202FFB4
-_0808FFB0: .4byte 0x0000064f
-_0808FFB4: .4byte gTasks
-_0808FFB8: .4byte sub_808FFBC
- thumb_func_end sub_808FDF8
-
- thumb_func_start sub_808FFBC
-sub_808FFBC: @ 808FFBC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0808FFF8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08090032
- bl DestroyCryMeterNeedleSprite
- ldr r0, _0808FFFC @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _08090000 @ =0x0000064f
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0809000C
- cmp r0, 0x2
- ble _0808FFE8
- cmp r0, 0x3
- beq _08090024
-_0808FFE8:
- ldr r0, _08090004 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08090008 @ =sub_808F2B0
- b _08090030
- .align 2, 0
-_0808FFF8: .4byte gPaletteFade
-_0808FFFC: .4byte gUnknown_0202FFB4
-_08090000: .4byte 0x0000064f
-_08090004: .4byte gTasks
-_08090008: .4byte sub_808F2B0
-_0809000C:
- ldr r0, _0809001C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08090020 @ =sub_808F8D8
- b _08090030
- .align 2, 0
-_0809001C: .4byte gTasks
-_08090020: .4byte sub_808F8D8
-_08090024:
- ldr r0, _08090038 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _0809003C @ =sub_8090070
-_08090030:
- str r0, [r1]
-_08090032:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08090038: .4byte gTasks
-_0809003C: .4byte sub_8090070
- thumb_func_end sub_808FFBC
-
- thumb_func_start sub_8090040
-sub_8090040: @ 8090040
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- cmp r0, 0
- beq _08090054
- ldr r1, _08090050 @ =0x00000392
- b _08090056
- .align 2, 0
-_08090050: .4byte 0x00000392
-_08090054:
- ldr r1, _0809006C @ =0x000002af
-_08090056:
- mov r0, sp
- strh r1, [r0]
- mov r0, sp
- movs r1, 0x5D
- movs r2, 0x2
- bl LoadPalette
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0809006C: .4byte 0x000002af
- thumb_func_end sub_8090040
-
- thumb_func_start sub_8090070
-sub_8090070: @ 8090070
- push {r4,r5,lr}
- sub sp, 0x2C
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r1, _08090090 @ =gMain
- ldr r2, _08090094 @ =0x0000043c
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0x9
- bhi _080900C4
- lsls r0, 2
- ldr r1, _08090098 @ =_0809009C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08090090: .4byte gMain
-_08090094: .4byte 0x0000043c
-_08090098: .4byte _0809009C
- .align 2, 0
-_0809009C:
- .4byte _080900C4
- .4byte _08090120
- .4byte _08090150
- .4byte _08090174
- .4byte _080901C0
- .4byte _080901D4
- .4byte _08090278
- .4byte _08090318
- .4byte _08090344
- .4byte _08090380
-_080900C4:
- ldr r0, _08090108 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080900D2
- b _080903AE
-_080900D2:
- ldr r4, _0809010C @ =gUnknown_0202FFB4
- ldr r0, [r4]
- ldr r1, _08090110 @ =0x0000064a
- adds r0, r1
- movs r1, 0x7
- strb r1, [r0]
- ldr r1, _08090114 @ =gUnknown_03005CEC
- ldr r0, [r5, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x80
- lsls r0, 2
- bl sub_8091060
- ldr r0, [r4]
- ldr r2, _08090118 @ =0x0000064d
- adds r0, r2
- movs r1, 0x3
- strb r1, [r0]
- ldr r0, _0809011C @ =0x0000043c
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
- b _080903AE
- .align 2, 0
-_08090108: .4byte gPaletteFade
-_0809010C: .4byte gUnknown_0202FFB4
-_08090110: .4byte 0x0000064a
-_08090114: .4byte gUnknown_03005CEC
-_08090118: .4byte 0x0000064d
-_0809011C: .4byte 0x0000043c
-_08090120:
- ldr r0, _0809013C @ =gPokedexMenu_Gfx
- movs r1, 0xC0
- lsls r1, 19
- bl LZ77UnCompVram
- ldr r0, _08090140 @ =gUnknown_0839F988
- ldr r1, _08090144 @ =0x06007000
- bl LZ77UnCompVram
- ldr r1, _08090148 @ =gMain
- ldr r2, _0809014C @ =0x0000043c
- adds r1, r2
- b _08090368
- .align 2, 0
-_0809013C: .4byte gPokedexMenu_Gfx
-_08090140: .4byte gUnknown_0839F988
-_08090144: .4byte 0x06007000
-_08090148: .4byte gMain
-_0809014C: .4byte 0x0000043c
-_08090150:
- movs r0, 0xD
- bl sub_8090540
- movs r0, 0x3
- movs r1, 0xD
- bl sub_8090644
- bl sub_808D640
- ldr r1, _0809016C @ =gMain
- ldr r0, _08090170 @ =0x0000043c
- adds r1, r0
- b _08090368
- .align 2, 0
-_0809016C: .4byte gMain
-_08090170: .4byte 0x0000043c
-_08090174:
- ldr r4, _080901AC @ =gWindowConfig_81E702C
- adds r0, r4, 0
- bl SetUpWindowConfig
- adds r0, r4, 0
- bl InitMenuWindow
- add r1, sp, 0x4
- movs r0, 0xFF
- strb r0, [r1]
- ldr r1, _080901B0 @ =gDexText_SizeComparedTo
- add r0, sp, 0x4
- bl StringAppend
- ldr r1, _080901B4 @ =gSaveBlock2
- add r0, sp, 0x4
- bl StringAppend
- add r0, sp, 0x4
- movs r1, 0x3
- movs r2, 0xF
- movs r3, 0xC0
- bl sub_8072BD8
- ldr r1, _080901B8 @ =gMain
- ldr r2, _080901BC @ =0x0000043c
- adds r1, r2
- b _08090368
- .align 2, 0
-_080901AC: .4byte gWindowConfig_81E702C
-_080901B0: .4byte gDexText_SizeComparedTo
-_080901B4: .4byte gSaveBlock2
-_080901B8: .4byte gMain
-_080901BC: .4byte 0x0000043c
-_080901C0:
- bl ResetPaletteFade
- ldr r1, _080901CC @ =gMain
- ldr r0, _080901D0 @ =0x0000043c
- adds r1, r0
- b _08090368
- .align 2, 0
-_080901CC: .4byte gMain
-_080901D0: .4byte 0x0000043c
-_080901D4:
- ldr r0, _0809025C @ =gSaveBlock2
- ldrb r0, [r0, 0x8]
- movs r1, 0x98
- movs r2, 0x38
- movs r3, 0
- bl sub_8091A4C
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, _08090260 @ =gSprites
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- adds r4, r0
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x5]
- ldr r3, _08090264 @ =gPokedexEntries
- ldr r0, _08090268 @ =gUnknown_0202FFBC
- ldr r2, [r0]
- ldrh r1, [r2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r0, [r0, 0x20]
- strh r0, [r4, 0x26]
- ldrh r1, [r2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x1E]
- str r1, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- ldr r0, _0809026C @ =gUnknown_083B4EC4
- ldrb r1, [r4, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- lsls r1, 4
- movs r2, 0x20
- bl LoadPalette
- ldr r1, _08090270 @ =gMain
- ldr r2, _08090274 @ =0x0000043c
- adds r1, r2
- b _08090368
- .align 2, 0
-_0809025C: .4byte gSaveBlock2
-_08090260: .4byte gSprites
-_08090264: .4byte gPokedexEntries
-_08090268: .4byte gUnknown_0202FFBC
-_0809026C: .4byte gUnknown_083B4EC4
-_08090270: .4byte gMain
-_08090274: .4byte 0x0000043c
-_08090278:
- ldr r5, _08090300 @ =gUnknown_0202FFBC
- ldr r0, [r5]
- ldrh r0, [r0]
- movs r1, 0x58
- movs r2, 0x38
- movs r3, 0x1
- bl sub_80918EC
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, _08090304 @ =gSprites
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- adds r4, r0
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x5]
- ldr r3, _08090308 @ =gPokedexEntries
- ldr r2, [r5]
- ldrh r1, [r2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r0, [r0, 0x1C]
- strh r0, [r4, 0x26]
- ldrh r1, [r2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x1A]
- str r1, [sp]
- movs r0, 0x2
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- ldr r0, _0809030C @ =gUnknown_083B4EC4
- ldrb r1, [r4, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- lsls r1, 4
- movs r2, 0x20
- bl LoadPalette
- ldr r1, _08090310 @ =gMain
- ldr r0, _08090314 @ =0x0000043c
- adds r1, r0
- b _08090368
- .align 2, 0
-_08090300: .4byte gUnknown_0202FFBC
-_08090304: .4byte gSprites
-_08090308: .4byte gPokedexEntries
-_0809030C: .4byte gUnknown_083B4EC4
-_08090310: .4byte gMain
-_08090314: .4byte 0x0000043c
-_08090318:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, _08090338 @ =gUnknown_03005CEC
- ldr r0, [r0]
- bl SetVBlankCallback
- ldr r1, _0809033C @ =gMain
- ldr r2, _08090340 @ =0x0000043c
- adds r1, r2
- b _08090368
- .align 2, 0
-_08090338: .4byte gUnknown_03005CEC
-_0809033C: .4byte gMain
-_08090340: .4byte 0x0000043c
-_08090344:
- ldr r0, _08090370 @ =REG_BLDCNT
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- ldr r1, _08090374 @ =REG_BG2CNT
- ldr r2, _08090378 @ =0x00000e03
- adds r0, r2, 0
- strh r0, [r1]
- subs r1, 0xC
- movs r2, 0xF2
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _0809037C @ =0x0000043c
- adds r1, r5, r0
-_08090368:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080903AE
- .align 2, 0
-_08090370: .4byte REG_BLDCNT
-_08090374: .4byte REG_BG2CNT
-_08090378: .4byte 0x00000e03
-_0809037C: .4byte 0x0000043c
-_08090380:
- ldr r0, _080903B8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _080903AE
- ldr r0, _080903BC @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _080903C0 @ =0x0000064f
- adds r0, r1
- strb r2, [r0]
- ldr r1, _080903C4 @ =0x0000043c
- adds r0, r5, r1
- strb r2, [r0]
- ldr r1, _080903C8 @ =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- ldr r1, _080903CC @ =sub_80903D0
- str r1, [r0]
-_080903AE:
- add sp, 0x2C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080903B8: .4byte gPaletteFade
-_080903BC: .4byte gUnknown_0202FFB4
-_080903C0: .4byte 0x0000064f
-_080903C4: .4byte 0x0000043c
-_080903C8: .4byte gTasks
-_080903CC: .4byte sub_80903D0
- thumb_func_end sub_8090070
-
thumb_func_start sub_80903D0
sub_80903D0: @ 80903D0
push {r4,r5,lr}