through sub_8094D84
This commit is contained in:
@@ -5,612 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start AddBoxMenu
|
||||
AddBoxMenu: @ 8094900
|
||||
push {lr}
|
||||
bl InitMenu
|
||||
movs r0, 0x9
|
||||
bl SetMenuText
|
||||
movs r0, 0xA
|
||||
bl SetMenuText
|
||||
movs r0, 0xB
|
||||
bl SetMenuText
|
||||
movs r0, 0
|
||||
bl SetMenuText
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end AddBoxMenu
|
||||
|
||||
thumb_func_start sub_8094924
|
||||
sub_8094924: @ 8094924
|
||||
push {lr}
|
||||
bl InitMenu
|
||||
ldr r0, _0809493C @ =sPSSData
|
||||
ldr r0, [r0]
|
||||
ldrb r0, [r0, 0x1]
|
||||
cmp r0, 0x3
|
||||
bne _08094940
|
||||
bl sub_8094A0C
|
||||
b _08094944
|
||||
.align 2, 0
|
||||
_0809493C: .4byte sPSSData
|
||||
_08094940:
|
||||
bl sub_809494C
|
||||
_08094944:
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8094924
|
||||
|
||||
thumb_func_start sub_809494C
|
||||
sub_809494C: @ 809494C
|
||||
push {lr}
|
||||
bl sub_8092458
|
||||
lsls r0, 16
|
||||
lsrs r1, r0, 16
|
||||
ldr r0, _0809496C @ =sPSSData
|
||||
ldr r0, [r0]
|
||||
ldrb r0, [r0, 0x1]
|
||||
cmp r0, 0x1
|
||||
beq _08094976
|
||||
cmp r0, 0x1
|
||||
bgt _08094970
|
||||
cmp r0, 0
|
||||
beq _08094982
|
||||
b _080949BC
|
||||
.align 2, 0
|
||||
_0809496C: .4byte sPSSData
|
||||
_08094970:
|
||||
cmp r0, 0x2
|
||||
beq _0809498E
|
||||
b _080949BC
|
||||
_08094976:
|
||||
cmp r1, 0
|
||||
beq _080949BC
|
||||
movs r0, 0x1
|
||||
bl SetMenuText
|
||||
b _080949C0
|
||||
_08094982:
|
||||
cmp r1, 0
|
||||
beq _080949BC
|
||||
movs r0, 0x2
|
||||
bl SetMenuText
|
||||
b _080949C0
|
||||
_0809498E:
|
||||
ldr r0, _080949A4 @ =sIsMonBeingMoved
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _080949B0
|
||||
cmp r1, 0
|
||||
beq _080949A8
|
||||
movs r0, 0x4
|
||||
bl SetMenuText
|
||||
b _080949C0
|
||||
.align 2, 0
|
||||
_080949A4: .4byte sIsMonBeingMoved
|
||||
_080949A8:
|
||||
movs r0, 0x5
|
||||
bl SetMenuText
|
||||
b _080949C0
|
||||
_080949B0:
|
||||
cmp r1, 0
|
||||
beq _080949BC
|
||||
movs r0, 0x3
|
||||
bl SetMenuText
|
||||
b _080949C0
|
||||
_080949BC:
|
||||
movs r0, 0
|
||||
b _08094A06
|
||||
_080949C0:
|
||||
movs r0, 0x6
|
||||
bl SetMenuText
|
||||
ldr r0, _080949E4 @ =sPSSData
|
||||
ldr r0, [r0]
|
||||
ldrb r0, [r0, 0x1]
|
||||
cmp r0, 0x2
|
||||
bne _080949F2
|
||||
ldr r0, _080949E8 @ =sBoxCursorArea
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
cmp r0, 0
|
||||
bne _080949EC
|
||||
movs r0, 0x2
|
||||
bl SetMenuText
|
||||
b _080949F2
|
||||
.align 2, 0
|
||||
_080949E4: .4byte sPSSData
|
||||
_080949E8: .4byte sBoxCursorArea
|
||||
_080949EC:
|
||||
movs r0, 0x1
|
||||
bl SetMenuText
|
||||
_080949F2:
|
||||
movs r0, 0x8
|
||||
bl SetMenuText
|
||||
movs r0, 0x7
|
||||
bl SetMenuText
|
||||
movs r0, 0
|
||||
bl SetMenuText
|
||||
movs r0, 0x1
|
||||
_08094A06:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_809494C
|
||||
|
||||
thumb_func_start sub_8094A0C
|
||||
sub_8094A0C: @ 8094A0C
|
||||
push {r4,r5,lr}
|
||||
ldr r4, _08094A48 @ =sPSSData
|
||||
ldr r0, [r4]
|
||||
movs r5, 0xCE
|
||||
lsls r5, 4
|
||||
adds r0, r5
|
||||
ldrh r1, [r0]
|
||||
movs r0, 0xCE
|
||||
lsls r0, 1
|
||||
cmp r1, r0
|
||||
beq _08094A9E
|
||||
bl IsActiveItemMoving
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08094A70
|
||||
ldr r2, [r4]
|
||||
ldr r0, _08094A4C @ =0x00000ce2
|
||||
adds r1, r2, r0
|
||||
ldrh r0, [r1]
|
||||
cmp r0, 0
|
||||
bne _08094A50
|
||||
adds r0, r2, r5
|
||||
ldrh r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _08094A9E
|
||||
movs r0, 0xE
|
||||
bl SetMenuText
|
||||
b _08094AA8
|
||||
.align 2, 0
|
||||
_08094A48: .4byte sPSSData
|
||||
_08094A4C: .4byte 0x00000ce2
|
||||
_08094A50:
|
||||
ldrh r0, [r1]
|
||||
bl ItemIsMail
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08094A68
|
||||
movs r0, 0xC
|
||||
bl SetMenuText
|
||||
movs r0, 0x10
|
||||
bl SetMenuText
|
||||
_08094A68:
|
||||
movs r0, 0x11
|
||||
bl SetMenuText
|
||||
b _08094AA8
|
||||
_08094A70:
|
||||
ldr r2, [r4]
|
||||
ldr r0, _08094A8C @ =0x00000ce2
|
||||
adds r1, r2, r0
|
||||
ldrh r0, [r1]
|
||||
cmp r0, 0
|
||||
bne _08094A90
|
||||
adds r0, r2, r5
|
||||
ldrh r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _08094A9E
|
||||
movs r0, 0xD
|
||||
bl SetMenuText
|
||||
b _08094AA8
|
||||
.align 2, 0
|
||||
_08094A8C: .4byte 0x00000ce2
|
||||
_08094A90:
|
||||
ldrh r0, [r1]
|
||||
bl ItemIsMail
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08094AA2
|
||||
_08094A9E:
|
||||
movs r0, 0
|
||||
b _08094AB0
|
||||
_08094AA2:
|
||||
movs r0, 0xF
|
||||
bl SetMenuText
|
||||
_08094AA8:
|
||||
movs r0, 0
|
||||
bl SetMenuText
|
||||
movs r0, 0x1
|
||||
_08094AB0:
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8094A0C
|
||||
|
||||
thumb_func_start sub_8094AB8
|
||||
sub_8094AB8: @ 8094AB8
|
||||
ldr r1, _08094AD4 @ =sPSSData
|
||||
ldr r1, [r1]
|
||||
movs r2, 0xCB
|
||||
lsls r2, 4
|
||||
adds r1, r2
|
||||
ldr r2, [r1]
|
||||
ldrh r2, [r2, 0x20]
|
||||
strh r2, [r0, 0x20]
|
||||
ldr r1, [r1]
|
||||
ldrh r1, [r1, 0x22]
|
||||
adds r1, 0x14
|
||||
strh r1, [r0, 0x22]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08094AD4: .4byte sPSSData
|
||||
thumb_func_end sub_8094AB8
|
||||
|
||||
thumb_func_start sub_8094AD8
|
||||
sub_8094AD8: @ 8094AD8
|
||||
push {r4-r6,lr}
|
||||
sub sp, 0x2C
|
||||
mov r1, sp
|
||||
ldr r0, _08094BA4 @ =gUnknown_83D34A0
|
||||
ldm r0!, {r2-r4}
|
||||
stm r1!, {r2-r4}
|
||||
ldm r0!, {r2,r3,r5}
|
||||
stm r1!, {r2,r3,r5}
|
||||
add r4, sp, 0x18
|
||||
adds r1, r4, 0
|
||||
ldr r0, _08094BA8 @ =gUnknown_83D34B8
|
||||
ldm r0!, {r2,r3,r5}
|
||||
stm r1!, {r2,r3,r5}
|
||||
ldr r0, [r0]
|
||||
str r0, [r1]
|
||||
mov r0, sp
|
||||
bl LoadSpriteSheets
|
||||
adds r0, r4, 0
|
||||
bl LoadSpritePalettes
|
||||
ldr r0, _08094BAC @ =0x0000daca
|
||||
bl IndexOfSpritePaletteTag
|
||||
ldr r6, _08094BB0 @ =sPSSData
|
||||
ldr r1, [r6]
|
||||
ldr r4, _08094BB4 @ =0x00000cd4
|
||||
adds r1, r4
|
||||
strb r0, [r1]
|
||||
ldr r0, _08094BB8 @ =0x0000dac7
|
||||
bl IndexOfSpritePaletteTag
|
||||
ldr r1, [r6]
|
||||
ldr r5, _08094BBC @ =0x00000cd5
|
||||
adds r1, r5
|
||||
strb r0, [r1]
|
||||
ldr r0, _08094BC0 @ =sBoxCursorArea
|
||||
ldrb r0, [r0]
|
||||
ldr r1, _08094BC4 @ =sBoxCursorPosition
|
||||
ldrb r1, [r1]
|
||||
add r4, sp, 0x28
|
||||
mov r5, sp
|
||||
adds r5, 0x2A
|
||||
adds r2, r4, 0
|
||||
adds r3, r5, 0
|
||||
bl sub_8092398
|
||||
ldr r0, _08094BC8 @ =gUnknown_83D350C
|
||||
movs r2, 0
|
||||
ldrsh r1, [r4, r2]
|
||||
movs r3, 0
|
||||
ldrsh r2, [r5, r3]
|
||||
movs r3, 0x6
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x40
|
||||
beq _08094BD8
|
||||
ldr r2, [r6]
|
||||
movs r4, 0xCB
|
||||
lsls r4, 4
|
||||
adds r3, r2, r4
|
||||
lsls r1, r0, 4
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
ldr r0, _08094BCC @ =gSprites
|
||||
adds r1, r0
|
||||
str r1, [r3]
|
||||
ldr r0, _08094BD0 @ =sCanOnlyMove
|
||||
ldr r5, _08094BB4 @ =0x00000cd4
|
||||
adds r2, r5
|
||||
ldrb r0, [r0]
|
||||
adds r2, r0
|
||||
ldrb r2, [r2]
|
||||
lsls r2, 4
|
||||
ldrb r3, [r1, 0x5]
|
||||
movs r0, 0xF
|
||||
ands r0, r3
|
||||
orrs r0, r2
|
||||
strb r0, [r1, 0x5]
|
||||
ldr r0, [r6]
|
||||
adds r0, r4
|
||||
ldr r2, [r0]
|
||||
ldrb r1, [r2, 0x5]
|
||||
movs r0, 0xD
|
||||
negs r0, r0
|
||||
ands r0, r1
|
||||
movs r1, 0x4
|
||||
orrs r0, r1
|
||||
strb r0, [r2, 0x5]
|
||||
ldr r0, _08094BD4 @ =sIsMonBeingMoved
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _08094BE4
|
||||
ldr r0, [r6]
|
||||
adds r0, r4
|
||||
ldr r0, [r0]
|
||||
movs r1, 0x3
|
||||
bl StartSpriteAnim
|
||||
b _08094BE4
|
||||
.align 2, 0
|
||||
_08094BA4: .4byte gUnknown_83D34A0
|
||||
_08094BA8: .4byte gUnknown_83D34B8
|
||||
_08094BAC: .4byte 0x0000daca
|
||||
_08094BB0: .4byte sPSSData
|
||||
_08094BB4: .4byte 0x00000cd4
|
||||
_08094BB8: .4byte 0x0000dac7
|
||||
_08094BBC: .4byte 0x00000cd5
|
||||
_08094BC0: .4byte sBoxCursorArea
|
||||
_08094BC4: .4byte sBoxCursorPosition
|
||||
_08094BC8: .4byte gUnknown_83D350C
|
||||
_08094BCC: .4byte gSprites
|
||||
_08094BD0: .4byte sCanOnlyMove
|
||||
_08094BD4: .4byte sIsMonBeingMoved
|
||||
_08094BD8:
|
||||
ldr r0, [r6]
|
||||
movs r1, 0xCB
|
||||
lsls r1, 4
|
||||
adds r0, r1
|
||||
movs r1, 0
|
||||
str r1, [r0]
|
||||
_08094BE4:
|
||||
ldr r0, _08094BF8 @ =sBoxCursorArea
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08094BFC
|
||||
movs r3, 0xD
|
||||
movs r4, 0x1
|
||||
b _08094C00
|
||||
.align 2, 0
|
||||
_08094BF8: .4byte sBoxCursorArea
|
||||
_08094BFC:
|
||||
movs r3, 0x15
|
||||
movs r4, 0x2
|
||||
_08094C00:
|
||||
ldr r0, _08094C54 @ =gUnknown_83D3524
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x40
|
||||
beq _08094C68
|
||||
ldr r5, _08094C58 @ =sPSSData
|
||||
ldr r2, [r5]
|
||||
ldr r3, _08094C5C @ =0x00000cb4
|
||||
adds r2, r3
|
||||
lsls r1, r0, 4
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
ldr r0, _08094C60 @ =gSprites
|
||||
adds r1, r0
|
||||
str r1, [r2]
|
||||
lsls r3, r4, 2
|
||||
ldrb r2, [r1, 0x5]
|
||||
movs r0, 0xD
|
||||
negs r0, r0
|
||||
ands r0, r2
|
||||
orrs r0, r3
|
||||
strb r0, [r1, 0x5]
|
||||
ldr r0, _08094C64 @ =sBoxCursorArea
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
cmp r0, 0
|
||||
beq _08094C74
|
||||
ldr r0, [r5]
|
||||
ldr r4, _08094C5C @ =0x00000cb4
|
||||
adds r0, r4
|
||||
ldr r1, [r0]
|
||||
adds r1, 0x3E
|
||||
ldrb r0, [r1]
|
||||
movs r2, 0x4
|
||||
orrs r0, r2
|
||||
strb r0, [r1]
|
||||
b _08094C74
|
||||
.align 2, 0
|
||||
_08094C54: .4byte gUnknown_83D3524
|
||||
_08094C58: .4byte sPSSData
|
||||
_08094C5C: .4byte 0x00000cb4
|
||||
_08094C60: .4byte gSprites
|
||||
_08094C64: .4byte sBoxCursorArea
|
||||
_08094C68:
|
||||
ldr r0, _08094C7C @ =sPSSData
|
||||
ldr r0, [r0]
|
||||
ldr r5, _08094C80 @ =0x00000cb4
|
||||
adds r0, r5
|
||||
movs r1, 0
|
||||
str r1, [r0]
|
||||
_08094C74:
|
||||
add sp, 0x2C
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08094C7C: .4byte sPSSData
|
||||
_08094C80: .4byte 0x00000cb4
|
||||
thumb_func_end sub_8094AD8
|
||||
|
||||
thumb_func_start sub_8094C84
|
||||
sub_8094C84: @ 8094C84
|
||||
push {lr}
|
||||
ldr r2, _08094CBC @ =sCanOnlyMove
|
||||
movs r1, 0
|
||||
ldrb r0, [r2]
|
||||
cmp r0, 0
|
||||
bne _08094C92
|
||||
movs r1, 0x1
|
||||
_08094C92:
|
||||
strb r1, [r2]
|
||||
ldr r0, _08094CC0 @ =sPSSData
|
||||
ldr r0, [r0]
|
||||
movs r3, 0xCB
|
||||
lsls r3, 4
|
||||
adds r1, r0, r3
|
||||
ldr r3, [r1]
|
||||
ldr r1, _08094CC4 @ =0x00000cd4
|
||||
adds r0, r1
|
||||
ldrb r2, [r2]
|
||||
adds r0, r2
|
||||
ldrb r1, [r0]
|
||||
lsls r1, 4
|
||||
ldrb r2, [r3, 0x5]
|
||||
movs r0, 0xF
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r3, 0x5]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08094CBC: .4byte sCanOnlyMove
|
||||
_08094CC0: .4byte sPSSData
|
||||
_08094CC4: .4byte 0x00000cd4
|
||||
thumb_func_end sub_8094C84
|
||||
|
||||
thumb_func_start GetBoxCursorPosition
|
||||
GetBoxCursorPosition: @ 8094CC8
|
||||
ldr r0, _08094CD0 @ =sBoxCursorPosition
|
||||
ldrb r0, [r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08094CD0: .4byte sBoxCursorPosition
|
||||
thumb_func_end GetBoxCursorPosition
|
||||
|
||||
thumb_func_start sub_8094CD4
|
||||
sub_8094CD4: @ 8094CD4
|
||||
push {r4-r6,lr}
|
||||
adds r5, r0, 0
|
||||
adds r6, r1, 0
|
||||
ldr r0, _08094D00 @ =sBoxCursorArea
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
cmp r0, 0
|
||||
bne _08094D08
|
||||
ldr r4, _08094D04 @ =sBoxCursorPosition
|
||||
movs r0, 0
|
||||
ldrsb r0, [r4, r0]
|
||||
movs r1, 0x6
|
||||
bl __modsi3
|
||||
strb r0, [r5]
|
||||
movs r0, 0
|
||||
ldrsb r0, [r4, r0]
|
||||
movs r1, 0x6
|
||||
bl __divsi3
|
||||
b _08094D0C
|
||||
.align 2, 0
|
||||
_08094D00: .4byte sBoxCursorArea
|
||||
_08094D04: .4byte sBoxCursorPosition
|
||||
_08094D08:
|
||||
movs r0, 0
|
||||
strb r0, [r5]
|
||||
_08094D0C:
|
||||
strb r0, [r6]
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8094CD4
|
||||
|
||||
thumb_func_start sub_8094D14
|
||||
sub_8094D14: @ 8094D14
|
||||
push {lr}
|
||||
adds r1, r0, 0
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
ldr r0, _08094D30 @ =sPSSData
|
||||
ldr r0, [r0]
|
||||
movs r2, 0xCB
|
||||
lsls r2, 4
|
||||
adds r0, r2
|
||||
ldr r0, [r0]
|
||||
bl StartSpriteAnim
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08094D30: .4byte sPSSData
|
||||
thumb_func_end sub_8094D14
|
||||
|
||||
thumb_func_start sub_8094D34
|
||||
sub_8094D34: @ 8094D34
|
||||
ldr r0, _08094D3C @ =sMovingMonOrigBoxId
|
||||
ldrb r0, [r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08094D3C: .4byte sMovingMonOrigBoxId
|
||||
thumb_func_end sub_8094D34
|
||||
|
||||
thumb_func_start sub_8094D40
|
||||
sub_8094D40: @ 8094D40
|
||||
ldr r0, _08094D5C @ =sPSSData
|
||||
ldr r0, [r0]
|
||||
movs r1, 0xCB
|
||||
lsls r1, 4
|
||||
adds r0, r1
|
||||
ldr r2, [r0]
|
||||
ldrb r1, [r2, 0x5]
|
||||
movs r0, 0xD
|
||||
negs r0, r0
|
||||
ands r0, r1
|
||||
movs r1, 0x4
|
||||
orrs r0, r1
|
||||
strb r0, [r2, 0x5]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08094D5C: .4byte sPSSData
|
||||
thumb_func_end sub_8094D40
|
||||
|
||||
thumb_func_start sub_8094D60
|
||||
sub_8094D60: @ 8094D60
|
||||
push {lr}
|
||||
ldr r0, _08094D7C @ =sBoxCursorArea
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
cmp r0, 0
|
||||
bne _08094D78
|
||||
ldr r0, _08094D80 @ =sBoxCursorPosition
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0
|
||||
bl sub_8095D44
|
||||
_08094D78:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08094D7C: .4byte sBoxCursorArea
|
||||
_08094D80: .4byte sBoxCursorPosition
|
||||
thumb_func_end sub_8094D60
|
||||
|
||||
thumb_func_start sub_8094D84
|
||||
sub_8094D84: @ 8094D84
|
||||
push {lr}
|
||||
ldr r0, _08094DA0 @ =sBoxCursorArea
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
cmp r0, 0
|
||||
bne _08094D9C
|
||||
ldr r0, _08094DA4 @ =sBoxCursorPosition
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0
|
||||
bl sub_8095C84
|
||||
_08094D9C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08094DA0: .4byte sBoxCursorArea
|
||||
_08094DA4: .4byte sBoxCursorPosition
|
||||
thumb_func_end sub_8094D84
|
||||
|
||||
@ file boundary?
|
||||
|
||||
thumb_func_start InitMenu
|
||||
|
||||
Reference in New Issue
Block a user