summaryrefslogtreecommitdiff
path: root/asm/script_menu.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/script_menu.s')
-rw-r--r--asm/script_menu.s1237
1 files changed, 0 insertions, 1237 deletions
diff --git a/asm/script_menu.s b/asm/script_menu.s
deleted file mode 100644
index bd6180940..000000000
--- a/asm/script_menu.s
+++ /dev/null
@@ -1,1237 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80B5054
-sub_80B5054: @ 80B5054
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r4, r2, 24
- lsls r3, 24
- lsrs r5, r3, 24
- ldr r0, _080B5098 @ =sub_80B52B4
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080B50A4
- ldr r1, _080B509C @ =gScriptResult
- movs r0, 0xFF
- strh r0, [r1]
- ldr r1, _080B50A0 @ =gMultichoiceLists
- lsls r0, r4, 3
- adds r0, r1
- ldrb r2, [r0, 0x4]
- ldr r3, [r0]
- str r5, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- adds r0, r7, 0
- adds r1, r6, 0
- bl sub_80B5138
- movs r0, 0x1
- b _080B50A6
- .align 2, 0
-_080B5098: .4byte sub_80B52B4
-_080B509C: .4byte gScriptResult
-_080B50A0: .4byte gMultichoiceLists
-_080B50A4:
- movs r0, 0
-_080B50A6:
- add sp, 0x8
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80B5054
-
- thumb_func_start sub_80B50B0
-sub_80B50B0: @ 80B50B0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- ldr r4, [sp, 0x20]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r5, r2, 24
- lsls r3, 24
- lsrs r6, r3, 24
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080B5100 @ =sub_80B52B4
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080B510C
- ldr r1, _080B5104 @ =gScriptResult
- movs r0, 0xFF
- strh r0, [r1]
- ldr r1, _080B5108 @ =gMultichoiceLists
- lsls r0, r5, 3
- adds r0, r1
- ldrb r2, [r0, 0x4]
- ldr r3, [r0]
- str r6, [sp]
- str r4, [sp, 0x4]
- mov r0, r8
- adds r1, r7, 0
- bl sub_80B5138
- movs r0, 0x1
- b _080B510E
- .align 2, 0
-_080B5100: .4byte sub_80B52B4
-_080B5104: .4byte gScriptResult
-_080B5108: .4byte gMultichoiceLists
-_080B510C:
- movs r0, 0
-_080B510E:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80B50B0
-
- thumb_func_start GetStringWidthInTilesForScriptMenu
-GetStringWidthInTilesForScriptMenu: @ 80B511C
- push {lr}
- adds r1, r0, 0
- ldr r0, _080B5134 @ =gWindowConfig_81E6CE4
- bl GetStringWidthGivenWindowConfig
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0x7
- lsrs r0, r1, 3
- pop {r1}
- bx r1
- .align 2, 0
-_080B5134: .4byte gWindowConfig_81E6CE4
- thumb_func_end GetStringWidthInTilesForScriptMenu
-
- thumb_func_start sub_80B5138
-sub_80B5138: @ 80B5138
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- mov r10, r3
- ldr r3, [sp, 0x34]
- ldr r4, [sp, 0x38]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x8]
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0xC]
- lsls r4, 24
- lsrs r4, 24
- str r4, [sp, 0x10]
- mov r1, r10
- ldr r0, [r1]
- bl GetStringWidthInTilesForScriptMenu
- lsls r0, 16
- lsrs r5, r0, 16
- movs r4, 0x1
- cmp r4, r8
- bcs _080B5198
-_080B517A:
- lsls r0, r4, 3
- add r0, r10
- ldr r0, [r0]
- bl GetStringWidthInTilesForScriptMenu
- lsls r0, 16
- lsrs r0, 16
- cmp r5, r0
- bcs _080B518E
- adds r5, r0, 0
-_080B518E:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r8
- bcc _080B517A
-_080B5198:
- lsls r0, r5, 24
- lsrs r7, r0, 24
- mov r1, r9
- adds r0, r7, r1
- adds r0, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x1D
- bls _080B51B8
- mov r0, r9
- adds r0, 0x1D
- subs r0, r7
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r7, 0x1D
-_080B51B8:
- mov r1, r8
- lsls r0, r1, 1
- adds r0, 0x1
- ldr r1, [sp, 0x8]
- lsls r4, r1, 24
- asrs r4, 24
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- mov r0, r9
- adds r2, r7, 0
- adds r3, r4, 0
- bl MenuDrawTextWindow
- mov r6, r9
- adds r6, 0x1
- lsls r6, 24
- lsrs r6, 24
- ldr r5, [sp, 0x8]
- adds r5, 0x1
- lsls r5, 24
- lsrs r5, 24
- adds r0, r6, 0
- adds r1, r5, 0
- mov r2, r8
- mov r3, r10
- bl PrintMenuItems
- ldr r0, [sp, 0x10]
- str r0, [sp]
- mov r1, r9
- subs r0, r7, r1
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r0, 0
- adds r1, r6, 0
- adds r2, r5, 0
- mov r3, r8
- bl InitMenu
- ldr r0, [sp, 0xC]
- str r0, [sp]
- mov r1, r8
- str r1, [sp, 0x4]
- mov r0, r9
- ldr r1, [sp, 0x8]
- adds r2, r7, 0
- adds r3, r4, 0
- bl sub_80B5230
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80B5138
-
- thumb_func_start sub_80B5230
-sub_80B5230: @ 80B5230
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r0, [sp, 0x1C]
- mov r8, r0
- ldr r0, [sp, 0x20]
- mov r9, r0
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- lsls r3, 24
- lsrs r3, 24
- mov r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r0, _080B5298 @ =sub_80B52B4
- movs r1, 0x50
- str r3, [sp]
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B529C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- strh r5, [r1, 0xA]
- strh r6, [r1, 0xC]
- ldr r3, [sp]
- strh r3, [r1, 0xE]
- mov r0, r8
- strh r0, [r1, 0x10]
- mov r0, r9
- cmp r0, 0x3
- bls _080B52A0
- movs r0, 0x1
- b _080B52A2
- .align 2, 0
-_080B5298: .4byte sub_80B52B4
-_080B529C: .4byte gTasks
-_080B52A0:
- movs r0, 0
-_080B52A2:
- strh r0, [r1, 0x12]
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80B5230
-
- thumb_func_start sub_80B52B4
-sub_80B52B4: @ 80B52B4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080B52E0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080B534E
- ldr r2, _080B52E4 @ =gTasks
- lsls r1, r4, 2
- adds r0, r1, r4
- lsls r0, 3
- adds r0, r2
- movs r2, 0x12
- ldrsh r0, [r0, r2]
- adds r5, r1, 0
- cmp r0, 0
- bne _080B52E8
- bl ProcessMenuInputNoWrap
- b _080B52EC
- .align 2, 0
-_080B52E0: .4byte gPaletteFade
-_080B52E4: .4byte gTasks
-_080B52E8:
- bl ProcessMenuInput
-_080B52EC:
- lsls r0, 24
- lsrs r0, 24
- lsls r0, 24
- asrs r1, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r1, r0
- beq _080B534E
- adds r0, 0x1
- cmp r1, r0
- bne _080B5328
- ldr r0, _080B5320 @ =gTasks
- adds r1, r5, r4
- lsls r1, 3
- adds r1, r0
- movs r2, 0x10
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _080B534E
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080B5324 @ =gScriptResult
- movs r0, 0x7F
- strh r0, [r1]
- b _080B532C
- .align 2, 0
-_080B5320: .4byte gTasks
-_080B5324: .4byte gScriptResult
-_080B5328:
- ldr r0, _080B5354 @ =gScriptResult
- strh r1, [r0]
-_080B532C:
- bl sub_8072DEC
- ldr r0, _080B5358 @ =gTasks
- adds r3, r5, r4
- lsls r3, 3
- adds r3, r0
- ldrb r0, [r3, 0x8]
- ldrb r1, [r3, 0xA]
- ldrb r2, [r3, 0xC]
- ldrb r3, [r3, 0xE]
- bl MenuZeroFillWindowRect
- adds r0, r4, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_080B534E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5354: .4byte gScriptResult
-_080B5358: .4byte gTasks
- thumb_func_end sub_80B52B4
-
- thumb_func_start Multichoice
-Multichoice: @ 80B535C
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r4, r2, 24
- lsls r3, 24
- lsrs r5, r3, 24
- ldr r0, _080B539C @ =sub_80B52B4
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080B53A8
- ldr r1, _080B53A0 @ =gScriptResult
- movs r0, 0xFF
- strh r0, [r1]
- ldr r1, _080B53A4 @ =gMultichoiceLists
- lsls r0, r4, 3
- adds r0, r1
- ldrb r2, [r0, 0x4]
- ldr r3, [r0]
- str r5, [sp]
- adds r0, r7, 0
- adds r1, r6, 0
- bl sub_80B53B4
- movs r0, 0x1
- b _080B53AA
- .align 2, 0
-_080B539C: .4byte sub_80B52B4
-_080B53A0: .4byte gScriptResult
-_080B53A4: .4byte gMultichoiceLists
-_080B53A8:
- movs r0, 0
-_080B53AA:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end Multichoice
-
- thumb_func_start sub_80B53B4
-sub_80B53B4: @ 80B53B4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- adds r7, r3, 0
- ldr r3, [sp, 0x28]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 24
- lsrs r3, 24
- mov r10, r3
- ldr r0, [r7]
- bl GetStringWidthInTilesForScriptMenu
- lsls r0, 16
- lsrs r4, r0, 16
- movs r5, 0x1
- cmp r5, r6
- bcs _080B5408
-_080B53EA:
- lsls r0, r5, 3
- adds r0, r7
- ldr r0, [r0]
- bl GetStringWidthInTilesForScriptMenu
- lsls r0, 16
- lsrs r0, 16
- cmp r4, r0
- bcs _080B53FE
- adds r4, r0, 0
-_080B53FE:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r6
- bcc _080B53EA
-_080B5408:
- lsls r4, 24
- lsrs r4, 24
- add r4, r8
- adds r4, 0x2
- lsls r4, 24
- lsrs r4, 24
- lsls r0, r6, 1
- adds r0, 0x1
- mov r1, r9
- lsls r5, r1, 24
- asrs r5, 24
- adds r5, r0
- lsls r5, 24
- lsrs r5, 24
- mov r0, r8
- adds r2, r6, 0
- adds r3, r7, 0
- bl PrintMenuItems
- movs r0, 0
- str r0, [sp]
- mov r1, r8
- subs r0, r4, r1
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r0, 0
- mov r2, r9
- adds r3, r6, 0
- bl InitMenu
- mov r0, r10
- str r0, [sp]
- str r6, [sp, 0x4]
- mov r0, r8
- mov r1, r9
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80B5230
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80B53B4
-
- thumb_func_start yes_no_box
-yes_no_box: @ 80B546C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r6, _080B54B4 @ =task_yes_no_maybe
- adds r0, r6, 0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080B54C0
- ldr r1, _080B54B8 @ =gScriptResult
- movs r0, 0xFF
- strh r0, [r1]
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl DisplayYesNoMenu
- adds r0, r6, 0
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B54BC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r5, [r1, 0x8]
- strh r4, [r1, 0xA]
- movs r0, 0x1
- b _080B54C2
- .align 2, 0
-_080B54B4: .4byte task_yes_no_maybe
-_080B54B8: .4byte gScriptResult
-_080B54BC: .4byte gTasks
-_080B54C0:
- movs r0, 0
-_080B54C2:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end yes_no_box
-
- thumb_func_start unref_sub_80B54C8
-unref_sub_80B54C8: @ 80B54C8
- push {lr}
- ldr r0, _080B54D8 @ =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0xFF
- beq _080B54DC
- movs r0, 0x1
- b _080B54DE
- .align 2, 0
-_080B54D8: .4byte gScriptResult
-_080B54DC:
- movs r0, 0
-_080B54DE:
- pop {r1}
- bx r1
- thumb_func_end unref_sub_80B54C8
-
- thumb_func_start task_yes_no_maybe
-task_yes_no_maybe: @ 80B54E4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, _080B5504 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r1
- ldrh r2, [r1, 0xC]
- movs r3, 0xC
- ldrsh r0, [r1, r3]
- cmp r0, 0x4
- bgt _080B5508
- adds r0, r2, 0x1
- strh r0, [r1, 0xC]
- b _080B556A
- .align 2, 0
-_080B5504: .4byte gTasks
-_080B5508:
- bl ProcessMenuInputNoWrap
- lsls r0, 24
- asrs r1, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _080B552C
- cmp r1, r0
- bgt _080B5524
- subs r0, 0x1
- cmp r1, r0
- beq _080B556A
- b _080B5542
-_080B5524:
- cmp r1, 0
- beq _080B553C
- cmp r1, 0x1
- bne _080B5542
-_080B552C:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080B5538 @ =gScriptResult
- movs r0, 0
- b _080B5540
- .align 2, 0
-_080B5538: .4byte gScriptResult
-_080B553C:
- ldr r1, _080B5570 @ =gScriptResult
- movs r0, 0x1
-_080B5540:
- strh r0, [r1]
-_080B5542:
- ldr r0, _080B5574 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrb r0, [r1, 0x8]
- ldrb r1, [r1, 0xA]
- adds r2, r0, 0x6
- lsls r2, 24
- lsrs r2, 24
- adds r3, r1, 0x5
- lsls r3, 24
- lsrs r3, 24
- bl MenuZeroFillWindowRect
- adds r0, r4, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_080B556A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5570: .4byte gScriptResult
-_080B5574: .4byte gTasks
- thumb_func_end task_yes_no_maybe
-
- thumb_func_start sub_80B5578
-sub_80B5578: @ 80B5578
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- ldr r4, [sp, 0x30]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0xC]
- lsls r4, 24
- lsrs r5, r4, 24
- movs r7, 0
- ldr r0, _080B55B8 @ =sub_80B5684
- mov r10, r0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080B55BC
- movs r0, 0
- b _080B5670
- .align 2, 0
-_080B55B8: .4byte sub_80B5684
-_080B55BC:
- ldr r1, _080B5620 @ =gScriptResult
- movs r0, 0xFF
- strh r0, [r1]
- ldr r0, _080B5624 @ =gMultichoiceLists
- lsls r4, r6, 3
- adds r0, r4, r0
- ldrb r6, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r5, [sp, 0x4]
- str r7, [sp, 0x8]
- mov r0, r9
- mov r1, r8
- adds r2, r6, 0
- movs r3, 0
- bl sub_807274C
- mov r0, r10
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- lsls r0, r6, 24
- lsrs r1, r0, 24
- lsrs r0, 25
- cmp r0, r5
- bcc _080B55FE
- movs r0, 0x1
- ands r0, r6
- cmp r0, 0
- beq _080B5606
-_080B55FE:
- cmp r5, 0x1
- beq _080B5606
- cmp r1, r5
- bne _080B5628
-_080B5606:
- ldr r0, _080B5624 @ =gMultichoiceLists
- adds r0, r4, r0
- ldrb r0, [r0, 0x4]
- adds r1, r5, 0
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0x1
- mov r2, r8
- lsls r1, r2, 24
- b _080B563A
- .align 2, 0
-_080B5620: .4byte gScriptResult
-_080B5624: .4byte gMultichoiceLists
-_080B5628:
- adds r0, r6, 0
- adds r1, r5, 0
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0x3
- mov r3, r8
- lsls r1, r3, 24
-_080B563A:
- asrs r1, 24
- adds r1, r0
- lsls r1, 24
- lsrs r7, r1, 24
- adds r0, r5, 0
- bl sub_807288C
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B5680 @ =gTasks
- mov r3, r10
- lsls r1, r3, 2
- add r1, r10
- lsls r1, 3
- adds r1, r2
- mov r2, r9
- strh r2, [r1, 0x8]
- mov r3, r8
- strh r3, [r1, 0xA]
- add r0, r9
- adds r0, 0x2
- strh r0, [r1, 0xC]
- strh r7, [r1, 0xE]
- mov r0, sp
- ldrh r0, [r0, 0xC]
- strh r0, [r1, 0x10]
- movs r0, 0x1
-_080B5670:
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080B5680: .4byte gTasks
- thumb_func_end sub_80B5578
-
- thumb_func_start sub_80B5684
-sub_80B5684: @ 80B5684
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_80727CC
- lsls r0, 24
- asrs r1, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r1, r0
- beq _080B56F4
- adds r0, 0x1
- cmp r1, r0
- bne _080B56CC
- ldr r2, _080B56C4 @ =gTasks
- lsls r1, r5, 2
- adds r0, r1, r5
- lsls r0, 3
- adds r0, r2
- movs r2, 0x10
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0
- bne _080B56F4
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080B56C8 @ =gScriptResult
- movs r0, 0x7F
- strh r0, [r1]
- b _080B56D2
- .align 2, 0
-_080B56C4: .4byte gTasks
-_080B56C8: .4byte gScriptResult
-_080B56CC:
- ldr r0, _080B56FC @ =gScriptResult
- strh r1, [r0]
- lsls r4, r5, 2
-_080B56D2:
- bl sub_8072DEC
- ldr r0, _080B5700 @ =gTasks
- adds r3, r4, r5
- lsls r3, 3
- adds r3, r0
- ldrb r0, [r3, 0x8]
- ldrb r1, [r3, 0xA]
- ldrb r2, [r3, 0xC]
- ldrb r3, [r3, 0xE]
- bl MenuZeroFillWindowRect
- adds r0, r5, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_080B56F4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B56FC: .4byte gScriptResult
-_080B5700: .4byte gTasks
- thumb_func_end sub_80B5684
-
- thumb_func_start sp109_CreatePCMenu
-sp109_CreatePCMenu: @ 80B5704
- push {lr}
- ldr r0, _080B5724 @ =sub_80B52B4
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080B572C
- ldr r1, _080B5728 @ =gScriptResult
- movs r0, 0xFF
- strh r0, [r1]
- bl CreatePCMenu
- movs r0, 0x1
- b _080B572E
- .align 2, 0
-_080B5724: .4byte sub_80B52B4
-_080B5728: .4byte gScriptResult
-_080B572C:
- movs r0, 0
-_080B572E:
- pop {r1}
- bx r1
- thumb_func_end sp109_CreatePCMenu
-
- thumb_func_start CreatePCMenu
-CreatePCMenu: @ 80B5734
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r0, _080B5758 @ =gPCText_PlayersPC
- bl GetStringWidthInTilesForScriptMenu
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, _080B575C @ =gPCText_SomeonesPC
- bl GetStringWidthInTilesForScriptMenu
- lsls r0, 16
- lsrs r0, 16
- cmp r4, r0
- bls _080B5760
- lsls r0, r4, 24
- lsrs r5, r0, 24
- b _080B5762
- .align 2, 0
-_080B5758: .4byte gPCText_PlayersPC
-_080B575C: .4byte gPCText_SomeonesPC
-_080B5760:
- movs r5, 0x8
-_080B5762:
- ldr r0, _080B5798 @ =0x00000804
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080B57A4
- movs r7, 0x4
- adds r4, r5, 0x2
- lsls r2, r4, 24
- lsrs r2, 24
- movs r0, 0
- movs r1, 0
- movs r3, 0x9
- bl MenuDrawTextWindow
- ldr r0, _080B579C @ =gPCText_HallOfFame
- movs r1, 0x1
- movs r2, 0x5
- bl MenuPrint
- ldr r0, _080B57A0 @ =gPCText_LogOff
- movs r1, 0x1
- movs r2, 0x7
- bl MenuPrint
- b _080B57C0
- .align 2, 0
-_080B5798: .4byte 0x00000804
-_080B579C: .4byte gPCText_HallOfFame
-_080B57A0: .4byte gPCText_LogOff
-_080B57A4:
- movs r7, 0x3
- adds r4, r5, 0x2
- lsls r2, r4, 24
- lsrs r2, 24
- movs r0, 0
- movs r1, 0
- movs r3, 0x7
- bl MenuDrawTextWindow
- ldr r0, _080B57DC @ =gPCText_LogOff
- movs r1, 0x1
- movs r2, 0x5
- bl MenuPrint
-_080B57C0:
- adds r6, r4, 0
- ldr r0, _080B57E0 @ =0x0000084b
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080B57E8
- ldr r0, _080B57E4 @ =gPCText_LanettesPC
- movs r1, 0x1
- movs r2, 0x1
- bl MenuPrint
- b _080B57F2
- .align 2, 0
-_080B57DC: .4byte gPCText_LogOff
-_080B57E0: .4byte 0x0000084b
-_080B57E4: .4byte gPCText_LanettesPC
-_080B57E8:
- ldr r0, _080B5830 @ =gPCText_SomeonesPC
- movs r1, 0x1
- movs r2, 0x1
- bl MenuPrint
-_080B57F2:
- ldr r0, _080B5834 @ =gPCText_PlayersPC
- movs r1, 0x1
- movs r2, 0x3
- bl MenuPrint
- movs r4, 0
- str r4, [sp]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- adds r3, r7, 0
- bl InitMenu
- lsls r2, r6, 24
- lsrs r2, 24
- lsls r3, r7, 1
- adds r3, 0x1
- str r4, [sp]
- str r7, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- bl sub_80B5230
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5830: .4byte gPCText_SomeonesPC
-_080B5834: .4byte gPCText_PlayersPC
- thumb_func_end CreatePCMenu
-
- thumb_func_start sub_80B5838
-sub_80B5838: @ 80B5838
- push {lr}
- bl MenuDisplayMessageBox
- ldr r0, _080B584C @ =gUnknown_081A0A01
- movs r1, 0x2
- movs r2, 0xF
- bl MenuPrint
- pop {r0}
- bx r0
- .align 2, 0
-_080B584C: .4byte gUnknown_081A0A01
- thumb_func_end sub_80B5838
-
- thumb_func_start task_picbox
-task_picbox: @ 80B5850
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080B5874 @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080B58BE
- cmp r0, 0x1
- bgt _080B5878
- cmp r0, 0
- beq _080B5894
- b _080B58BE
- .align 2, 0
-_080B5874: .4byte gTasks
-_080B5878:
- cmp r0, 0x2
- beq _080B5882
- cmp r0, 0x3
- beq _080B58A0
- b _080B58BE
-_080B5882:
- movs r0, 0xC
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080B589C @ =gSprites
- adds r0, r1
- bl FreeResourcesAndDestroySprite
-_080B5894:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080B58BE
- .align 2, 0
-_080B589C: .4byte gSprites
-_080B58A0:
- ldrb r2, [r4, 0xE]
- adds r0, r2, 0
- ldrb r3, [r4, 0x10]
- adds r1, r3, 0
- adds r2, 0x9
- lsls r2, 24
- lsrs r2, 24
- adds r3, 0xA
- lsls r3, 24
- lsrs r3, 24
- bl MenuZeroFillWindowRect
- adds r0, r5, 0
- bl DestroyTask
-_080B58BE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end task_picbox
-
- thumb_func_start sub_80B58C4
-sub_80B58C4: @ 80B58C4
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r7, r0, 16
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r5, r2, 24
- ldr r4, _080B595C @ =task_picbox
- adds r0, r4, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _080B596C
- adds r2, r6, 0
- adds r2, 0x9
- lsls r2, 24
- lsrs r2, 24
- adds r3, r5, 0
- adds r3, 0xA
- lsls r3, 24
- lsrs r3, 24
- adds r0, r6, 0
- adds r1, r5, 0
- bl MenuDrawTextWindow
- adds r0, r4, 0
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080B5960 @ =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r7, [r4, 0xA]
- lsls r1, r6, 19
- movs r0, 0xA0
- lsls r0, 14
- adds r1, r0
- asrs r1, 16
- lsls r2, r5, 19
- adds r2, r0
- asrs r2, 16
- adds r0, r7, 0
- movs r3, 0
- bl CreateMonSprite_PicBox
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xC]
- strh r6, [r4, 0xE]
- strh r5, [r4, 0x10]
- ldr r3, _080B5964 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r0, r3, 0
- adds r0, 0x1C
- adds r0, r1, r0
- ldr r2, _080B5968 @ =SpriteCallbackDummy
- str r2, [r0]
- adds r1, r3
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
- movs r0, 0x1
- b _080B596E
- .align 2, 0
-_080B595C: .4byte task_picbox
-_080B5960: .4byte gTasks
-_080B5964: .4byte gSprites
-_080B5968: .4byte SpriteCallbackDummy
-_080B596C:
- movs r0, 0
-_080B596E:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80B58C4
-
- thumb_func_start picbox_close
-picbox_close: @ 80B5974
- push {lr}
- ldr r0, _080B5998 @ =task_picbox
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080B59A4
- ldr r0, _080B599C @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- ldr r0, _080B59A0 @ =sub_80B59AC
- b _080B59A6
- .align 2, 0
-_080B5998: .4byte task_picbox
-_080B599C: .4byte gTasks
-_080B59A0: .4byte sub_80B59AC
-_080B59A4:
- movs r0, 0
-_080B59A6:
- pop {r1}
- bx r1
- thumb_func_end picbox_close
-
- thumb_func_start sub_80B59AC
-sub_80B59AC: @ 80B59AC
- push {lr}
- ldr r0, _080B59C0 @ =task_picbox
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _080B59C4
- movs r0, 0
- b _080B59C6
- .align 2, 0
-_080B59C0: .4byte task_picbox
-_080B59C4:
- movs r0, 0x1
-_080B59C6:
- pop {r1}
- bx r1
- thumb_func_end sub_80B59AC
-
- .align 2, 0 @ Don't pad with nop.