Merge branch 'master' of https://github.com/pret/pokeemerald into decompile_pokedex

This commit is contained in:
golem galvanize
2018-03-30 16:49:08 -04:00
223 changed files with 24430 additions and 43349 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -3134,7 +3134,7 @@ _081639FC:
bl __umodsi3
cmp r0, 0
bne _08163A78
bl sub_81DA57C
bl UpdateGymLeaderRematch
b _08163A78
.pool
_08163A2C:

View File

@@ -1,823 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start BlitBitmapRect4BitWithoutColorKey
@ void BlitBitmapRect4BitWithoutColorKey(struct Bitmap *src, struct Bitmap *dest, u16 srcX, u16 srcY, u16 destX, u16 destY, u16 width, u16 height)
BlitBitmapRect4BitWithoutColorKey: @ 8002BDC
push {r4-r7,lr}
mov r7, r8
push {r7}
sub sp, 0x14
ldr r4, [sp, 0x2C]
ldr r5, [sp, 0x30]
ldr r6, [sp, 0x34]
ldr r7, [sp, 0x38]
lsls r2, 16
lsrs r2, 16
lsls r3, 16
lsrs r3, 16
lsls r4, 16
lsrs r4, 16
lsls r5, 16
lsrs r5, 16
lsls r6, 16
lsrs r6, 16
lsls r7, 16
lsrs r7, 16
str r4, [sp]
str r5, [sp, 0x4]
str r6, [sp, 0x8]
str r7, [sp, 0xC]
movs r4, 0xFF
str r4, [sp, 0x10]
bl BlitBitmapRect4Bit
add sp, 0x14
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end BlitBitmapRect4BitWithoutColorKey
thumb_func_start BlitBitmapRect4Bit
@ void BlitBitmapRect4Bit(struct Bitmap *src, struct Bitmap *dest, u16 srcX, u16 srcY, u16 destX, u16 destY, u16 width, u16 height, u8 colorKey)
BlitBitmapRect4Bit: @ 8002C20
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x2C
str r0, [sp]
str r1, [sp, 0x4]
ldr r0, [sp, 0x4C]
ldr r1, [sp, 0x50]
ldr r4, [sp, 0x54]
ldr r5, [sp, 0x58]
ldr r6, [sp, 0x5C]
lsls r2, 16
lsrs r2, 16
str r2, [sp, 0x8]
lsls r3, 16
lsrs r7, r3, 16
lsls r0, 16
lsrs r0, 16
str r0, [sp, 0xC]
lsls r1, 16
lsrs r1, 16
mov r9, r1
lsls r4, 16
lsrs r4, 16
lsls r5, 16
lsrs r5, 16
lsls r6, 24
lsrs r6, 24
str r6, [sp, 0x10]
ldr r0, [sp, 0x4]
ldrh r3, [r0, 0x4]
ldr r1, [sp, 0xC]
subs r0, r3, r1
adds r2, r4
mov r8, r2
cmp r0, r4
bge _08002C74
ldr r2, [sp, 0x8]
adds r0, r2
mov r8, r0
_08002C74:
ldr r4, [sp, 0x4]
ldrh r0, [r4, 0x6]
mov r1, r9
subs r0, r1
adds r2, r5, r7
str r2, [sp, 0x14]
cmp r0, r5
bge _08002C88
adds r0, r7
str r0, [sp, 0x14]
_08002C88:
ldr r4, [sp]
ldrh r1, [r4, 0x4]
movs r2, 0x7
adds r0, r1, 0
ands r0, r2
adds r1, r0
asrs r1, 3
str r1, [sp, 0x18]
adds r0, r3, 0
ands r0, r2
adds r0, r3, r0
asrs r0, 3
str r0, [sp, 0x1C]
ldr r0, [sp, 0x10]
cmp r0, 0xFF
bne _08002D46
adds r3, r7, 0
mov r1, r9
ldr r2, [sp, 0x14]
cmp r3, r2
blt _08002CB4
b _08002DEE
_08002CB4:
ldr r5, [sp, 0x8]
ldr r6, [sp, 0xC]
adds r4, r3, 0x1
str r4, [sp, 0x24]
adds r0, r1, 0x1
str r0, [sp, 0x28]
cmp r5, r8
bge _08002D3A
movs r7, 0x3
asrs r0, r3, 3
ldr r2, [sp, 0x18]
muls r0, r2
lsls r0, 5
mov r10, r0
lsls r0, r3, 29
lsrs r0, 27
mov r9, r0
asrs r0, r1, 3
ldr r4, [sp, 0x1C]
muls r0, r4
lsls r0, 5
mov r12, r0
lsls r0, r1, 29
lsrs r3, r0, 27
_08002CE4:
asrs r0, r5, 1
ands r0, r7
ldr r2, [sp]
ldr r1, [r2]
adds r1, r0
asrs r0, r5, 3
lsls r0, 5
adds r1, r0
add r1, r10
mov r4, r9
adds r2, r1, r4
asrs r0, r6, 1
ands r0, r7
ldr r4, [sp, 0x4]
ldr r1, [r4]
adds r1, r0
asrs r0, r6, 3
lsls r0, 5
adds r1, r0
add r1, r12
adds r4, r1, r3
ldrb r2, [r2]
adds r0, r5, 0
movs r1, 0x1
ands r0, r1
lsls r0, 2
asrs r2, r0
movs r0, 0xF
ands r2, r0
adds r0, r6, 0
ands r0, r1
lsls r1, r0, 2
lsls r2, r1
movs r0, 0xF0
asrs r0, r1
ldrb r1, [r4]
ands r0, r1
orrs r2, r0
strb r2, [r4]
adds r5, 0x1
adds r6, 0x1
cmp r5, r8
blt _08002CE4
_08002D3A:
ldr r3, [sp, 0x24]
ldr r1, [sp, 0x28]
ldr r2, [sp, 0x14]
cmp r3, r2
blt _08002CB4
b _08002DEE
_08002D46:
adds r3, r7, 0
mov r1, r9
ldr r4, [sp, 0x14]
cmp r3, r4
bge _08002DEE
_08002D50:
ldr r5, [sp, 0x8]
ldr r6, [sp, 0xC]
adds r0, r3, 0x1
str r0, [sp, 0x24]
adds r2, r1, 0x1
str r2, [sp, 0x28]
cmp r5, r8
bge _08002DE4
movs r4, 0x3
mov r9, r4
asrs r0, r3, 3
ldr r2, [sp, 0x18]
muls r0, r2
lsls r0, 5
str r0, [sp, 0x20]
lsls r0, r3, 29
lsrs r0, 27
mov r10, r0
movs r3, 0x1
asrs r0, r1, 3
ldr r4, [sp, 0x1C]
muls r0, r4
lsls r0, 5
mov r12, r0
lsls r0, r1, 29
lsrs r7, r0, 27
_08002D84:
asrs r0, r5, 1
mov r1, r9
ands r0, r1
ldr r2, [sp]
ldr r1, [r2]
adds r1, r0
asrs r0, r5, 3
lsls r0, 5
adds r1, r0
ldr r4, [sp, 0x20]
adds r1, r4
mov r0, r10
adds r2, r1, r0
asrs r0, r6, 1
mov r1, r9
ands r0, r1
ldr r4, [sp, 0x4]
ldr r1, [r4]
adds r1, r0
asrs r0, r6, 3
lsls r0, 5
adds r1, r0
add r1, r12
adds r4, r1, r7
ldrb r2, [r2]
adds r0, r5, 0
ands r0, r3
lsls r0, 2
asrs r2, r0
movs r0, 0xF
ands r2, r0
ldr r0, [sp, 0x10]
cmp r2, r0
beq _08002DDC
adds r0, r6, 0
ands r0, r3
lsls r1, r0, 2
lsls r2, r1
movs r0, 0xF0
asrs r0, r1
ldrb r1, [r4]
ands r0, r1
orrs r2, r0
strb r2, [r4]
_08002DDC:
adds r5, 0x1
adds r6, 0x1
cmp r5, r8
blt _08002D84
_08002DE4:
ldr r3, [sp, 0x24]
ldr r1, [sp, 0x28]
ldr r2, [sp, 0x14]
cmp r3, r2
blt _08002D50
_08002DEE:
add sp, 0x2C
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end BlitBitmapRect4Bit
thumb_func_start FillBitmapRect4Bit
@ void FillBitmapRect4Bit(struct Bitmap *surface, u16 x, u16 y, u16 width, u16 height, u8 fillValue)
FillBitmapRect4Bit: @ 8002E00
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x8
mov r9, r0
ldr r0, [sp, 0x28]
ldr r4, [sp, 0x2C]
lsls r1, 16
lsrs r1, 16
str r1, [sp]
lsls r2, 16
lsrs r2, 16
adds r6, r2, 0
lsls r3, 16
lsrs r3, 16
lsls r0, 16
lsrs r0, 16
lsls r4, 24
lsrs r5, r4, 24
adds r4, r1, r3
mov r3, r9
ldrh r1, [r3, 0x4]
cmp r4, r1
ble _08002E36
adds r4, r1, 0
_08002E36:
adds r2, r0
mov r12, r2
mov r2, r9
ldrh r0, [r2, 0x6]
cmp r12, r0
ble _08002E44
mov r12, r0
_08002E44:
movs r0, 0x7
ands r0, r1
adds r0, r1, r0
asrs r0, 3
str r0, [sp, 0x4]
lsls r0, r5, 28
lsrs r0, 24
mov r8, r0
movs r3, 0xF
mov r10, r3
mov r0, r10
ands r0, r5
mov r10, r0
adds r1, r6, 0
cmp r1, r12
bge _08002EB6
_08002E64:
ldr r3, [sp]
adds r7, r1, 0x1
cmp r3, r4
bge _08002EB0
asrs r0, r1, 3
ldr r2, [sp, 0x4]
muls r0, r2
lsls r6, r0, 5
lsls r0, r1, 29
lsrs r5, r0, 27
_08002E78:
asrs r2, r3, 1
movs r0, 0x3
ands r2, r0
mov r0, r9
ldr r1, [r0]
adds r1, r2
asrs r0, r3, 3
lsls r0, 5
adds r1, r0
adds r1, r6
adds r2, r1, r5
lsls r0, r3, 31
cmp r0, 0
beq _08002E9E
ldrb r1, [r2]
movs r0, 0xF
ands r0, r1
mov r1, r8
b _08002EA6
_08002E9E:
ldrb r1, [r2]
movs r0, 0xF0
ands r0, r1
mov r1, r10
_08002EA6:
orrs r0, r1
strb r0, [r2]
adds r3, 0x1
cmp r3, r4
blt _08002E78
_08002EB0:
adds r1, r7, 0
cmp r1, r12
blt _08002E64
_08002EB6:
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 FillBitmapRect4Bit
thumb_func_start BlitBitmapRect4BitTo8Bit
@ void BlitBitmapRect4BitTo8Bit(struct Bitmap *src, struct Bitmap *dest, u16 srcX, u16 srcY, u16 destX, u16 destY, u16 width, u16 height, u8 colorKey, u8 paletteOffset)
BlitBitmapRect4BitTo8Bit: @ 8002EC8
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x3C
str r0, [sp]
str r1, [sp, 0x4]
ldr r0, [sp, 0x5C]
ldr r1, [sp, 0x60]
ldr r5, [sp, 0x64]
ldr r4, [sp, 0x68]
ldr r6, [sp, 0x6C]
ldr r7, [sp, 0x70]
mov r8, r7
lsls r2, 16
lsrs r2, 16
str r2, [sp, 0x8]
lsls r3, 16
lsrs r3, 16
lsls r0, 16
lsrs r0, 16
str r0, [sp, 0xC]
lsls r1, 16
lsrs r7, r1, 16
lsls r5, 16
lsrs r5, 16
lsls r4, 16
lsrs r4, 16
lsls r6, 24
lsrs r6, 24
str r6, [sp, 0x10]
mov r0, r8
lsls r0, 28
lsrs r0, 24
str r0, [sp, 0x14]
lsls r0, r6, 28
lsrs r0, 24
str r0, [sp, 0x28]
ldr r1, [sp, 0x4]
ldrh r0, [r1, 0x4]
ldr r2, [sp, 0xC]
subs r0, r2
ldr r1, [sp, 0x8]
adds r1, r5, r1
str r1, [sp, 0x18]
cmp r0, r5
bge _08002F2E
ldr r2, [sp, 0x8]
adds r0, r2
str r0, [sp, 0x18]
_08002F2E:
ldr r5, [sp, 0x4]
ldrh r1, [r5, 0x6]
subs r0, r1, r7
cmp r0, r4
bge _08002F40
adds r0, r3, r1
subs r0, r7
str r0, [sp, 0x1C]
b _08002F44
_08002F40:
adds r4, r3, r4
str r4, [sp, 0x1C]
_08002F44:
ldr r0, [sp]
ldrh r1, [r0, 0x4]
movs r2, 0x7
adds r0, r1, 0
ands r0, r2
adds r1, r0
asrs r1, 3
str r1, [sp, 0x20]
ldr r5, [sp, 0x4]
ldrh r1, [r5, 0x4]
adds r0, r1, 0
ands r0, r2
adds r1, r0
asrs r1, 3
str r1, [sp, 0x24]
ldr r0, [sp, 0x10]
cmp r0, 0xFF
bne _08003024
adds r2, r3, 0
adds r5, r7, 0
ldr r1, [sp, 0x1C]
cmp r2, r1
blt _08002F74
b _08003106
_08002F74:
ldr r3, [sp, 0x8]
lsrs r3, 1
str r3, [sp, 0x2C]
movs r0, 0x3
ands r3, r0
str r3, [sp, 0x2C]
ldr r7, [sp, 0x8]
lsrs r0, r7, 3
lsls r0, 5
str r0, [sp, 0x30]
_08002F88:
ldr r0, [sp]
ldr r1, [r0]
ldr r3, [sp, 0x2C]
adds r1, r3
ldr r7, [sp, 0x30]
adds r1, r7
asrs r0, r2, 3
ldr r3, [sp, 0x20]
muls r0, r3
lsls r0, 5
mov r8, r0
add r1, r8
lsls r0, r2, 29
lsrs r7, r0, 27
adds r6, r1, r7
ldr r3, [sp, 0x8]
ldr r4, [sp, 0xC]
adds r2, 0x1
mov r10, r2
adds r0, r5, 0x1
str r0, [sp, 0x38]
ldr r1, [sp, 0x18]
cmp r3, r1
bge _08003018
asrs r0, r5, 3
ldr r2, [sp, 0x24]
muls r0, r2
lsls r0, 6
mov r12, r0
lsls r0, r5, 29
lsrs r0, 26
mov r9, r0
_08002FC8:
movs r0, 0x7
ands r0, r4
ldr r5, [sp, 0x4]
ldr r1, [r5]
adds r1, r0
asrs r0, r4, 3
lsls r0, 6
adds r1, r0
add r1, r12
mov r0, r9
adds r5, r1, r0
movs r0, 0x1
ands r0, r3
cmp r0, 0
beq _08002FEC
ldrb r0, [r6]
lsrs r0, 4
b _08003008
_08002FEC:
asrs r2, r3, 1
movs r0, 0x3
ands r2, r0
ldr r0, [sp]
ldr r1, [r0]
adds r1, r2
asrs r0, r3, 3
lsls r0, 5
adds r1, r0
add r1, r8
adds r6, r1, r7
ldrb r1, [r6]
movs r0, 0xF
ands r0, r1
_08003008:
ldr r1, [sp, 0x14]
adds r0, r1, r0
strb r0, [r5]
adds r3, 0x1
adds r4, 0x1
ldr r2, [sp, 0x18]
cmp r3, r2
blt _08002FC8
_08003018:
mov r2, r10
ldr r5, [sp, 0x38]
ldr r3, [sp, 0x1C]
cmp r2, r3
blt _08002F88
b _08003106
_08003024:
adds r2, r3, 0
adds r5, r7, 0
ldr r7, [sp, 0x1C]
cmp r2, r7
bge _08003106
ldr r0, [sp, 0x8]
lsrs r0, 1
str r0, [sp, 0x34]
movs r0, 0x3
ldr r1, [sp, 0x34]
ands r1, r0
str r1, [sp, 0x34]
_0800303C:
ldr r3, [sp]
ldr r1, [r3]
ldr r7, [sp, 0x34]
adds r1, r7
ldr r3, [sp, 0x8]
lsrs r0, r3, 3
lsls r0, 5
adds r1, r0
asrs r0, r2, 3
ldr r7, [sp, 0x20]
muls r0, r7
lsls r0, 5
mov r8, r0
add r1, r8
lsls r0, r2, 29
lsrs r7, r0, 27
adds r6, r1, r7
ldr r4, [sp, 0xC]
adds r2, 0x1
mov r10, r2
adds r0, r5, 0x1
str r0, [sp, 0x38]
ldr r1, [sp, 0x18]
cmp r3, r1
bge _080030FC
asrs r0, r5, 3
ldr r2, [sp, 0x24]
muls r0, r2
lsls r0, 6
mov r9, r0
lsls r0, r5, 29
lsrs r0, 26
mov r12, r0
_0800307E:
movs r0, 0x1
ands r0, r3
cmp r0, 0
beq _080030B2
ldrb r2, [r6]
movs r0, 0xF0
ands r0, r2
ldr r5, [sp, 0x28]
cmp r0, r5
beq _080030F2
adds r0, r4, 0
movs r1, 0x7
ands r0, r1
ldr r5, [sp, 0x4]
ldr r1, [r5]
adds r1, r0
asrs r0, r4, 3
lsls r0, 6
adds r1, r0
add r1, r9
mov r0, r12
adds r5, r1, r0
lsrs r0, r2, 4
ldr r1, [sp, 0x14]
adds r0, r1, r0
b _080030F0
_080030B2:
asrs r2, r3, 1
movs r0, 0x3
ands r2, r0
ldr r5, [sp]
ldr r1, [r5]
adds r1, r2
asrs r0, r3, 3
lsls r0, 5
adds r1, r0
add r1, r8
adds r6, r1, r7
ldrb r0, [r6]
movs r2, 0xF
ands r2, r0
ldr r0, [sp, 0x10]
cmp r2, r0
beq _080030F2
adds r0, r4, 0
movs r1, 0x7
ands r0, r1
ldr r5, [sp, 0x4]
ldr r1, [r5]
adds r1, r0
asrs r0, r4, 3
lsls r0, 6
adds r1, r0
add r1, r9
mov r0, r12
adds r5, r1, r0
ldr r1, [sp, 0x14]
adds r0, r1, r2
_080030F0:
strb r0, [r5]
_080030F2:
adds r3, 0x1
adds r4, 0x1
ldr r2, [sp, 0x18]
cmp r3, r2
blt _0800307E
_080030FC:
mov r2, r10
ldr r5, [sp, 0x38]
ldr r3, [sp, 0x1C]
cmp r2, r3
blt _0800303C
_08003106:
add sp, 0x3C
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end BlitBitmapRect4BitTo8Bit
thumb_func_start FillBitmapRect8Bit
@ void FillBitmapRect8Bit(struct Bitmap *surface, u16 x, u16 y, u16 width, u16 height, u8 fillValue)
FillBitmapRect8Bit: @ 8003118
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x8
mov r8, r0
ldr r0, [sp, 0x28]
ldr r4, [sp, 0x2C]
lsls r1, 16
lsrs r1, 16
mov r10, r1
lsls r2, 16
lsrs r2, 16
adds r6, r2, 0
lsls r3, 16
lsrs r3, 16
lsls r0, 16
lsrs r0, 16
lsls r4, 24
lsrs r4, 24
mov r9, r4
adds r5, r1, r3
mov r3, r8
ldrh r1, [r3, 0x4]
cmp r5, r1
ble _08003150
adds r5, r1, 0
_08003150:
adds r7, r2, r0
mov r2, r8
ldrh r0, [r2, 0x6]
cmp r7, r0
ble _0800315C
adds r7, r0, 0
_0800315C:
movs r0, 0x7
ands r0, r1
adds r0, r1, r0
asrs r0, 3
str r0, [sp]
adds r1, r6, 0
cmp r1, r7
bge _080031AC
_0800316C:
mov r3, r10
adds r6, r1, 0x1
str r6, [sp, 0x4]
cmp r3, r5
bge _080031A6
movs r0, 0x7
mov r12, r0
asrs r0, r1, 3
ldr r2, [sp]
muls r0, r2
lsls r4, r0, 6
lsls r0, r1, 29
lsrs r2, r0, 26
_08003186:
adds r0, r3, 0
mov r6, r12
ands r0, r6
mov r6, r8
ldr r1, [r6]
adds r1, r0
asrs r0, r3, 3
lsls r0, 6
adds r1, r0
adds r1, r4
adds r1, r2
mov r0, r9
strb r0, [r1]
adds r3, 0x1
cmp r3, r5
blt _08003186
_080031A6:
ldr r1, [sp, 0x4]
cmp r1, r7
blt _0800316C
_080031AC:
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 FillBitmapRect8Bit
.align 2, 0 @ Don't pad with nop.

View File

@@ -1729,7 +1729,7 @@ _080B3248:
thumb_func_start sub_80B3254
sub_80B3254: @ 80B3254
push {lr}
bl sub_809FF80
bl SaveGame
pop {r0}
bx r0
thumb_func_end sub_80B3254

File diff suppressed because it is too large Load Diff

View File

@@ -326,7 +326,7 @@ _0809C13A:
beq _0809C15C
movs r0, 0x6
bl PlaySE
bl sub_809FA9C
bl ShowStartMenu
_0809C14E:
movs r0, 0x1
b _0809C172

View File

@@ -3388,7 +3388,7 @@ _0813980C:
_0813981C:
ldrh r5, [r2]
adds r0, r5, 0
bl sub_80EF370
bl CountDigits
adds r3, r0, 0
lsls r3, 24
lsrs r3, 24
@@ -3408,7 +3408,7 @@ _0813983C:
adds r4, 0x4
ldrh r5, [r2]
adds r0, r5, 0
bl sub_80EF370
bl CountDigits
adds r3, r0, 0
lsls r3, 24
lsrs r3, 24
@@ -4894,7 +4894,7 @@ sub_813A46C: @ 813A46C
lsrs r0, 24
mov r1, sp
movs r2, 0
bl sub_81AE860
bl ListMenuGetScrollAndRow
ldr r1, =gUnknown_0203AB68
mov r0, sp
ldrh r0, [r0]
@@ -4903,7 +4903,7 @@ sub_813A46C: @ 813A46C
lsls r0, 24
lsrs r0, 24
mov r1, sp
bl sub_81AE838
bl ListMenuGetCurrentItemArrayId
ldrh r0, [r4, 0x1E]
ldr r5, =gUnknown_0203AB6A
ldrh r1, [r5]
@@ -5007,7 +5007,7 @@ sub_813A570: @ 813A570
lsls r0, 24
lsrs r0, 24
mov r1, sp
bl sub_81AE838
bl ListMenuGetCurrentItemArrayId
ldrh r0, [r4, 0x1E]
mov r1, sp
ldrh r1, [r1]
@@ -5019,7 +5019,7 @@ sub_813A570: @ 813A570
lsrs r0, 24
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldr r0, =gUnknown_0203AB64
ldr r0, [r0]
bl Free
@@ -6012,7 +6012,7 @@ sub_813ADD4: @ 813ADD4
adds r4, 0x16
add r1, sp, 0x14
adds r2, r4, 0
bl sub_81AE860
bl ListMenuGetScrollAndRow
ldrh r0, [r6, 0x22]
lsls r0, 24
lsrs r0, 24
@@ -6173,7 +6173,7 @@ sub_813AF48: @ 813AF48
lsrs r0, 24
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldr r0, =gUnknown_0203AB64
ldr r0, [r0]
bl Free
@@ -6817,7 +6817,7 @@ sub_813B4E0: @ 813B4E0
push {lr}
ldr r0, =gSpecialVar_0x8004
ldrh r0, [r0]
bl sub_81D15CC
bl GetRematchIdxByTrainerIdx
cmp r0, 0
blt _0813B50C
movs r1, 0xAE

View File

@@ -1,709 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start SetUpFieldMove_Flash
SetUpFieldMove_Flash: @ 81370FC
push {r4,lr}
bl ShouldDoBrailleFlyEffect
lsls r0, 24
cmp r0, 0
beq _08137134
ldr r4, =gSpecialVar_Result
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
strh r0, [r4]
ldr r1, =gUnknown_03005DB0
ldr r0, =FieldCallback_Teleport
str r0, [r1]
ldr r1, =gUnknown_0203CEEC
ldr r0, =sub_8179918
b _08137152
.pool
_08137134:
ldr r0, =gMapHeader
ldrb r0, [r0, 0x15]
cmp r0, 0x1
bne _08137170
ldr r0, =0x00000888
bl FlagGet
lsls r0, 24
cmp r0, 0
bne _08137170
ldr r1, =gUnknown_03005DB0
ldr r0, =FieldCallback_Teleport
str r0, [r1]
ldr r1, =gUnknown_0203CEEC
ldr r0, =hm2_flash
_08137152:
str r0, [r1]
movs r0, 0x1
b _08137172
.pool
_08137170:
movs r0, 0
_08137172:
pop {r4}
pop {r1}
bx r1
thumb_func_end SetUpFieldMove_Flash
thumb_func_start hm2_flash
hm2_flash: @ 8137178
push {r4,lr}
bl oei_task_add
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
bl GetCursorSelectionMonId
ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r2, =sub_81371B4
lsrs r1, r2, 16
strh r1, [r0, 0x18]
strh r2, [r0, 0x1A]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end hm2_flash
thumb_func_start sub_81371B4
sub_81371B4: @ 81371B4
push {lr}
movs r0, 0xCF
bl PlaySE
ldr r0, =0x00000888
bl FlagSet
ldr r0, =EventScript_2926F8
bl ScriptContext1_SetupScript
pop {r0}
bx r0
.pool
thumb_func_end sub_81371B4
thumb_func_start sub_81371D4
sub_81371D4: @ 81371D4
push {lr}
bl RunTasks
bl AnimateSprites
bl BuildOamBuffer
bl UpdatePaletteFade
pop {r0}
bx r0
thumb_func_end sub_81371D4
thumb_func_start sub_81371EC
sub_81371EC: @ 81371EC
push {lr}
bl LoadOam
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
pop {r0}
bx r0
thumb_func_end sub_81371EC
thumb_func_start c2_change_map
c2_change_map: @ 8137200
push {r4,lr}
sub sp, 0x8
movs r0, 0
bl SetVBlankCallback
movs r0, 0
movs r1, 0
bl SetGpuReg
movs r0, 0xC
movs r1, 0
bl SetGpuReg
movs r0, 0xA
movs r1, 0
bl SetGpuReg
movs r0, 0x8
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
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 r4, 0
str r4, [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 r4, [r0]
str r0, [r1]
ldr r0, =0x05000002
str r0, [r1, 0x4]
ldr r0, =0x810001ff
str r0, [r1, 0x8]
ldr r0, [r1, 0x8]
bl ResetPaletteFade
bl ResetTasks
bl ResetSpriteData
ldr r3, =0x04000208
ldrh r2, [r3]
strh r4, [r3]
ldr r4, =0x04000200
ldrh r0, [r4]
movs r1, 0x1
orrs r0, r1
strh r0, [r4]
strh r2, [r3]
ldr r0, =sub_81371EC
bl SetVBlankCallback
ldr r0, =sub_81371D4
bl SetMainCallback2
bl sub_8137304
lsls r0, 24
cmp r0, 0
bne _081372D2
ldr r0, =gMain
ldr r0, [r0, 0x8]
bl SetMainCallback2
_081372D2:
add sp, 0x8
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end c2_change_map
thumb_func_start sub_8137304
sub_8137304: @ 8137304
push {r4-r7,lr}
bl get_map_light_from_warp0
lsls r0, 24
lsrs r6, r0, 24
bl Overworld_GetMapTypeOfSaveblockLocation
lsls r0, 24
lsrs r5, r0, 24
movs r3, 0
ldr r4, =gUnknown_085B27C8
ldrb r0, [r4]
cmp r0, 0
beq _08137358
adds r7, r4, 0
adds r0, r4, 0x4
mov r12, r0
_08137326:
lsls r2, r3, 3
adds r1, r2, r7
ldrb r0, [r1]
cmp r0, r6
bne _08137348
ldrb r0, [r1, 0x1]
cmp r0, r5
bne _08137348
mov r1, r12
adds r0, r2, r1
ldr r0, [r0]
bl _call_via_r0
movs r0, 0x1
b _0813735A
.pool
_08137348:
adds r0, r3, 0x1
lsls r0, 24
lsrs r3, r0, 24
lsls r0, r3, 3
adds r0, r4
ldrb r0, [r0]
cmp r0, 0
bne _08137326
_08137358:
movs r0, 0
_0813735A:
pop {r4-r7}
pop {r1}
bx r1
thumb_func_end sub_8137304
thumb_func_start sub_8137360
sub_8137360: @ 8137360
push {r4-r6,lr}
lsls r0, 24
lsls r1, 24
lsrs r5, r0, 24
lsrs r4, r1, 24
movs r3, 0
ldr r1, =gUnknown_085B27C8
ldrb r0, [r1]
cmp r0, 0
beq _081373A0
adds r6, r1, 0
_08137376:
lsls r0, r3, 3
adds r2, r0, r6
ldrb r0, [r2]
cmp r0, r5
bne _08137390
ldrb r0, [r2, 0x1]
cmp r0, r4
bne _08137390
ldrb r0, [r2, 0x2]
b _081373A2
.pool
_08137390:
adds r0, r3, 0x1
lsls r0, 24
lsrs r3, r0, 24
lsls r0, r3, 3
adds r0, r1
ldrb r0, [r0]
cmp r0, 0
bne _08137376
_081373A0:
movs r0, 0
_081373A2:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8137360
thumb_func_start fade_type_for_given_maplight_pair
fade_type_for_given_maplight_pair: @ 81373A8
push {r4-r6,lr}
lsls r0, 24
lsls r1, 24
lsrs r5, r0, 24
lsrs r4, r1, 24
movs r3, 0
ldr r1, =gUnknown_085B27C8
ldrb r0, [r1]
cmp r0, 0
beq _081373E8
adds r6, r1, 0
_081373BE:
lsls r0, r3, 3
adds r2, r0, r6
ldrb r0, [r2]
cmp r0, r5
bne _081373D8
ldrb r0, [r2, 0x1]
cmp r0, r4
bne _081373D8
ldrb r0, [r2, 0x3]
b _081373EA
.pool
_081373D8:
adds r0, r3, 0x1
lsls r0, 24
lsrs r3, r0, 24
lsls r0, r3, 3
adds r0, r1
ldrb r0, [r0]
cmp r0, 0
bne _081373BE
_081373E8:
movs r0, 0
_081373EA:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end fade_type_for_given_maplight_pair
thumb_func_start sub_81373F0
sub_81373F0: @ 81373F0
push {lr}
ldr r0, =sub_8137404
movs r1, 0
bl CreateTask
pop {r0}
bx r0
.pool
thumb_func_end sub_81373F0
thumb_func_start sub_8137404
sub_8137404: @ 8137404
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldr r0, =sub_8137420
str r0, [r1]
bx lr
.pool
thumb_func_end sub_8137404
thumb_func_start sub_8137420
sub_8137420: @ 8137420
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0
movs r1, 0
bl SetGpuReg
ldr r0, =gCaveTransitionTiles
ldr r1, =0x0600c000
bl LZ77UnCompVram
ldr r0, =gCaveTransitionTilemap
ldr r1, =0x0600f800
bl LZ77UnCompVram
ldr r0, =gCaveTransitionPalette_White
movs r1, 0xE0
movs r2, 0x20
bl LoadPalette
ldr r0, =gUnknown_085B28A0
movs r1, 0xE0
movs r2, 0x10
bl LoadPalette
ldr r1, =0x00003e41
movs r0, 0x50
bl SetGpuReg
movs r0, 0x52
movs r1, 0
bl SetGpuReg
movs r0, 0x54
movs r1, 0
bl SetGpuReg
ldr r1, =0x00001f0c
movs r0, 0x8
bl SetGpuReg
movs r1, 0x8A
lsls r1, 5
movs r0, 0
bl SetGpuReg
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_81374C4
str r1, [r0]
movs r2, 0
movs r1, 0x10
strh r1, [r0, 0x8]
strh r2, [r0, 0xA]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8137420
thumb_func_start sub_81374C4
sub_81374C4: @ 81374C4
push {r4,r5,lr}
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r5, r1, r2
ldrh r4, [r5, 0xA]
movs r0, 0x80
lsls r0, 5
adds r1, r4, r0
lsls r1, 16
lsrs r1, 16
movs r0, 0x52
bl SetGpuReg
cmp r4, 0x10
bhi _081374F8
ldrh r0, [r5, 0xA]
adds r0, 0x1
strh r0, [r5, 0xA]
b _08137500
.pool
_081374F8:
movs r0, 0
strh r0, [r5, 0xC]
ldr r0, =sub_813750C
str r0, [r5]
_08137500:
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81374C4
thumb_func_start sub_813750C
sub_813750C: @ 813750C
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
ldr r1, =0x00001010
movs r0, 0x52
bl SetGpuReg
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r4, r0, r1
ldrh r1, [r4, 0xC]
cmp r1, 0x7
bhi _08137554
adds r0, r1, 0x1
strh r0, [r4, 0xC]
lsls r1, 1
ldr r0, =gUnknown_085B28A0
adds r0, r1, r0
movs r2, 0x10
subs r2, r1
lsls r2, 16
lsrs r2, 16
movs r1, 0xE0
bl LoadPalette
b _08137566
.pool
_08137554:
ldr r0, =gCaveTransitionPalette_White
movs r1, 0
movs r2, 0x20
bl LoadPalette
ldr r0, =sub_8137574
str r0, [r4]
movs r0, 0x8
strh r0, [r4, 0xC]
_08137566:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_813750C
thumb_func_start sub_8137574
sub_8137574: @ 8137574
push {lr}
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldrh r2, [r1, 0xC]
movs r3, 0xC
ldrsh r0, [r1, r3]
cmp r0, 0
beq _08137598
subs r0, r2, 0x1
strh r0, [r1, 0xC]
b _081375A0
.pool
_08137598:
ldr r0, =gMain
ldr r0, [r0, 0x8]
bl SetMainCallback2
_081375A0:
pop {r0}
bx r0
.pool
thumb_func_end sub_8137574
thumb_func_start sub_81375A8
sub_81375A8: @ 81375A8
push {lr}
ldr r0, =sub_81375BC
movs r1, 0
bl CreateTask
pop {r0}
bx r0
.pool
thumb_func_end sub_81375A8
thumb_func_start sub_81375BC
sub_81375BC: @ 81375BC
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
ldr r0, =sub_81375D8
str r0, [r1]
bx lr
.pool
thumb_func_end sub_81375BC
thumb_func_start sub_81375D8
sub_81375D8: @ 81375D8
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0
movs r1, 0
bl SetGpuReg
ldr r0, =gCaveTransitionTiles
ldr r1, =0x0600c000
bl LZ77UnCompVram
ldr r0, =gCaveTransitionTilemap
ldr r1, =0x0600f800
bl LZ77UnCompVram
movs r0, 0x50
movs r1, 0
bl SetGpuReg
movs r0, 0x52
movs r1, 0
bl SetGpuReg
movs r0, 0x54
movs r1, 0
bl SetGpuReg
ldr r1, =0x00001f0c
movs r0, 0x8
bl SetGpuReg
movs r1, 0x8A
lsls r1, 5
movs r0, 0
bl SetGpuReg
ldr r0, =gCaveTransitionPalette_White
movs r1, 0xE0
movs r2, 0x20
bl LoadPalette
ldr r0, =gCaveTransitionPalette_Black
movs r1, 0
movs r2, 0x20
bl LoadPalette
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_8137678
str r1, [r0]
movs r2, 0
movs r1, 0x10
strh r1, [r0, 0x8]
strh r2, [r0, 0xA]
strh r2, [r0, 0xC]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81375D8
thumb_func_start sub_8137678
sub_8137678: @ 8137678
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, 0xC]
cmp r1, 0xF
bhi _081376B4
adds r2, r1, 0x1
adds r0, r2, 0x1
strh r0, [r4, 0xC]
movs r0, 0xF
subs r0, r1
lsls r0, 1
ldr r1, =gUnknown_085B2890
adds r0, r1
lsls r2, 17
lsrs r2, 16
movs r1, 0xE0
bl LoadPalette
b _081376C8
.pool
_081376B4:
ldr r1, =0x00001010
movs r0, 0x52
bl SetGpuReg
ldr r1, =0x00003e41
movs r0, 0x50
bl SetGpuReg
ldr r0, =sub_81376DC
str r0, [r4]
_081376C8:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8137678
thumb_func_start sub_81376DC
sub_81376DC: @ 81376DC
push {r4,r5,lr}
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r5, r1, r2
ldrh r0, [r5, 0xA]
movs r1, 0x10
subs r1, r0
lsls r1, 16
lsrs r4, r1, 16
movs r0, 0x80
lsls r0, 21
adds r1, r0
lsrs r1, 16
movs r0, 0x52
bl SetGpuReg
cmp r4, 0
beq _08137714
ldrh r0, [r5, 0xA]
adds r0, 0x1
strh r0, [r5, 0xA]
b _08137726
.pool
_08137714:
ldr r0, =gCaveTransitionPalette_Black
movs r1, 0
movs r2, 0x20
bl LoadPalette
ldr r0, =gMain
ldr r0, [r0, 0x8]
bl SetMainCallback2
_08137726:
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81376DC

View File

@@ -1,596 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_81BE66C
sub_81BE66C: @ 81BE66C
push {lr}
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldrh r1, [r0, 0x4]
movs r0, 0xD0
lsls r0, 5
cmp r1, r0
bne _081BE690
movs r0, 0xA7
lsls r0, 1
bl FlagGet
lsls r0, 24
lsrs r0, 24
b _081BE692
.pool
_081BE690:
movs r0, 0
_081BE692:
pop {r1}
bx r1
thumb_func_end sub_81BE66C
thumb_func_start sub_81BE698
sub_81BE698: @ 81BE698
push {lr}
ldr r0, =gUnknown_0203CF18
ldr r0, [r0]
adds r0, 0x4
bl sub_8151E50
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE698
thumb_func_start sub_81BE6AC
sub_81BE6AC: @ 81BE6AC
ldr r1, =gUnknown_0203CF18
movs r0, 0
str r0, [r1]
bx lr
.pool
thumb_func_end sub_81BE6AC
thumb_func_start sub_81BE6B8
sub_81BE6B8: @ 81BE6B8
push {r4,lr}
ldr r4, =gUnknown_0203CF18
ldr r0, [r4]
cmp r0, 0
beq _081BE6CC
movs r0, 0
str r0, [r4]
b _081BE718
.pool
_081BE6CC:
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldrh r1, [r0, 0x4]
movs r0, 0xD0
lsls r0, 5
cmp r1, r0
bne _081BE718
movs r0, 0xA7
lsls r0, 1
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _081BE718
movs r0, 0xC8
bl AllocZeroed
str r0, [r4]
adds r0, 0x4
bl sub_8151B3C
ldr r0, [r4]
adds r0, 0x4
ldr r1, =gUnknown_08617E18
bl sub_8151B68
ldr r0, [r4]
adds r0, 0x4
movs r1, 0x1
movs r2, 0x1
bl sub_8151CA8
ldr r0, =sub_81BE698
movs r1, 0xFF
bl CreateTask
ldr r1, [r4]
strb r0, [r1]
_081BE718:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE6B8
thumb_func_start sub_81BE72C
sub_81BE72C: @ 81BE72C
push {r4,lr}
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldrh r1, [r0, 0x4]
movs r0, 0xD0
lsls r0, 5
cmp r1, r0
bne _081BE788
movs r0, 0xA7
lsls r0, 1
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _081BE788
ldr r4, =gUnknown_0203CF18
ldr r0, [r4]
cmp r0, 0
beq _081BE788
ldr r0, =sub_81BE698
bl FuncIsActiveTask
lsls r0, 24
cmp r0, 0
beq _081BE766
ldr r0, [r4]
ldrb r0, [r0]
bl DestroyTask
_081BE766:
ldr r0, [r4]
adds r0, 0x4
movs r1, 0x1
movs r2, 0x1
bl sub_8151D28
ldr r0, [r4]
adds r0, 0x4
movs r1, 0x1
movs r2, 0x1
bl sub_8151C50
ldr r0, [r4]
bl Free
movs r0, 0
str r0, [r4]
_081BE788:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE72C
thumb_func_start sub_81BE79C
sub_81BE79C: @ 81BE79C
push {r4,lr}
ldr r0, =0x000040cb
bl VarGet
lsls r0, 16
cmp r0, 0
beq _081BE7B8
movs r0, 0xA7
lsls r0, 1
bl FlagClear
b _081BE7EE
.pool
_081BE7B8:
bl Random
lsls r0, 16
lsrs r4, r0, 16
movs r0, 0x1
ands r4, r0
movs r0, 0x9D
bl FlagGet
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _081BE7D4
movs r4, 0x1
_081BE7D4:
cmp r4, 0
beq _081BE7E6
movs r0, 0xA7
lsls r0, 1
bl FlagSet
bl sub_81BE6B8
b _081BE7EE
_081BE7E6:
movs r0, 0xA7
lsls r0, 1
bl FlagClear
_081BE7EE:
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_81BE79C
thumb_func_start sub_81BE7F4
sub_81BE7F4: @ 81BE7F4
push {lr}
ldr r0, =sub_81BE808
movs r1, 0x8
bl CreateTask
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE7F4
thumb_func_start sub_81BE808
sub_81BE808: @ 81BE808
push {r4,r5,lr}
sub sp, 0x4
lsls r0, 24
lsrs r5, r0, 24
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldrb r1, [r0, 0x5]
ldrb r2, [r0, 0x4]
movs r0, 0x2D
mov r3, sp
bl TryGetFieldObjectIdByLocalIdAndMap
mov r0, sp
ldrb r0, [r0]
lsls r2, r0, 3
adds r2, r0
lsls r2, 2
ldr r4, =gMapObjects
adds r2, r4
ldr r3, =gSprites
ldrb r1, [r2, 0x4]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r3
ldrh r1, [r0, 0x26]
adds r1, 0x4
strh r1, [r0, 0x26]
ldr r0, =gPlayerAvatar
ldrb r0, [r0, 0x5]
lsls r1, r0, 3
adds r1, r0
lsls r1, 2
adds r1, r4
ldrb r2, [r2, 0x4]
lsls r0, r2, 4
adds r0, r2
lsls r0, 2
adds r0, r3
movs r4, 0x22
ldrsh r2, [r0, r4]
movs r4, 0x26
ldrsh r0, [r0, r4]
adds r2, r0
ldrb r1, [r1, 0x4]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r3
movs r3, 0x22
ldrsh r1, [r0, r3]
movs r4, 0x26
ldrsh r0, [r0, r4]
adds r1, r0
cmp r2, r1
blt _081BE882
adds r0, r5, 0
bl DestroyTask
bl EnableBothScriptContexts
_081BE882:
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE808
thumb_func_start sp136_strengh_sound
sp136_strengh_sound: @ 81BE89C
push {r4-r6,lr}
mov r6, r8
push {r6}
mov r8, r0
adds r4, r1, 0
adds r5, r2, 0
adds r6, r3, 0
lsls r0, 24
lsrs r0, 24
mov r8, r0
lsls r4, 24
lsrs r4, 24
lsls r5, 24
lsrs r5, 24
lsls r6, 24
lsrs r6, 24
ldr r0, =sub_81BE900
movs r1, 0x9
bl CreateTask
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
movs r0, 0
strh r4, [r1, 0x8]
strh r0, [r1, 0xA]
strh r5, [r1, 0xC]
strh r6, [r1, 0xE]
mov r0, r8
strh r0, [r1, 0x10]
movs r0, 0
bl SetCameraPanningCallback
movs r0, 0xD6
bl PlaySE
pop {r3}
mov r8, r3
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sp136_strengh_sound
thumb_func_start sub_81BE900
sub_81BE900: @ 81BE900
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
ldr r1, =gTasks + 0x8
adds r4, r0, r1
ldrh r0, [r4, 0x2]
adds r0, 0x1
strh r0, [r4, 0x2]
movs r1, 0x2
ldrsh r0, [r4, r1]
movs r2, 0x6
ldrsh r1, [r4, r2]
bl __modsi3
cmp r0, 0
bne _081BE95C
strh r0, [r4, 0x2]
ldrh r0, [r4, 0x4]
subs r0, 0x1
strh r0, [r4, 0x4]
ldrh r0, [r4]
negs r0, r0
strh r0, [r4]
ldrh r0, [r4, 0x8]
negs r0, r0
strh r0, [r4, 0x8]
movs r1, 0
ldrsh r0, [r4, r1]
movs r2, 0x8
ldrsh r1, [r4, r2]
bl SetCameraPanning
movs r1, 0x4
ldrsh r0, [r4, r1]
cmp r0, 0
bne _081BE95C
bl sub_81BE968
adds r0, r5, 0
bl DestroyTask
bl InstallCameraPanAheadCallback
_081BE95C:
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE900
thumb_func_start sub_81BE968
sub_81BE968: @ 81BE968
push {lr}
ldr r0, =sub_81BE9C0
bl FindTaskIdByFunc
lsls r0, 24
lsrs r2, r0, 24
cmp r2, 0xFF
beq _081BE988
ldr r0, =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]
_081BE988:
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE968
thumb_func_start sub_81BE994
sub_81BE994: @ 81BE994
push {lr}
ldr r0, =gUnknown_08617D94
bl LoadSpriteSheets
bl sub_81BEA20
ldr r0, =sub_81BE9C0
movs r1, 0x8
bl CreateTask
movs r0, 0x2
movs r1, 0x1
movs r2, 0x10
movs r3, 0x3
bl sp136_strengh_sound
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE994
thumb_func_start sub_81BE9C0
sub_81BE9C0: @ 81BE9C0
push {r4,lr}
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 2
adds r1, r0
lsls r3, r1, 3
ldr r4, =gTasks + 0x8
adds r2, r3, r4
ldrh r0, [r2, 0x2]
adds r0, 0x1
strh r0, [r2, 0x2]
lsls r0, 16
movs r1, 0xFA
lsls r1, 18
cmp r0, r1
beq _081BE9E6
ldrh r0, [r2]
cmp r0, 0x11
bne _081BE9F0
_081BE9E6:
adds r0, r4, 0
subs r0, 0x8
adds r0, r3, r0
ldr r1, =sub_81BEA00
str r1, [r0]
_081BE9F0:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BE9C0
thumb_func_start sub_81BEA00
sub_81BEA00: @ 81BEA00
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0xFA
lsls r0, 4
bl FreeSpriteTilesByTag
adds r0, r4, 0
bl DestroyTask
bl EnableBothScriptContexts
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_81BEA00
thumb_func_start sub_81BEA20
sub_81BEA20: @ 81BEA20
push {r4-r7,lr}
movs r4, 0
ldr r5, =gUnknown_08617D64
adds r7, r5, 0x2
ldr r6, =gSprites
_081BEA2A:
lsls r0, r4, 1
adds r0, r4
lsls r0, 1
adds r1, r0, r5
ldrh r1, [r1]
adds r1, 0x78
lsls r1, 16
asrs r1, 16
adds r0, r7
movs r3, 0
ldrsh r2, [r0, r3]
ldr r0, =gUnknown_08617E60
movs r3, 0x8
bl CreateSprite
lsls r0, 24
lsrs r1, r0, 24
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r6
ldrb r2, [r0, 0x5]
movs r3, 0xD
negs r3, r3
adds r1, r3, 0
ands r2, r1
movs r1, 0xF
ands r2, r1
strb r2, [r0, 0x5]
strh r4, [r0, 0x2E]
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x7
bls _081BEA2A
movs r4, 0
ldr r5, =gUnknown_08617D64
adds r7, r5, 0x2
ldr r6, =gSprites
_081BEA78:
lsls r0, r4, 1
adds r0, r4
lsls r0, 1
adds r1, r0, r5
ldrh r1, [r1]
adds r1, 0x73
lsls r1, 16
asrs r1, 16
adds r0, r7
ldrh r2, [r0]
subs r2, 0x3
lsls r2, 16
asrs r2, 16
ldr r0, =gUnknown_08617E34
movs r3, 0x8
bl CreateSprite
lsls r0, 24
lsrs r1, r0, 24
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r6
ldrb r2, [r0, 0x5]
movs r3, 0xD
negs r3, r3
adds r1, r3, 0
ands r2, r1
movs r1, 0xF
ands r2, r1
strb r2, [r0, 0x5]
strh r4, [r0, 0x2E]
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x7
bls _081BEA78
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEA20
thumb_func_start sub_81BEAD8
sub_81BEAD8: @ 81BEAD8
push {r4,lr}
adds r4, r0, 0
ldrh r0, [r4, 0x30]
adds r0, 0x2
strh r0, [r4, 0x30]
movs r1, 0x30
ldrsh r0, [r4, r1]
lsrs r1, r0, 31
adds r0, r1
asrs r0, 1
strh r0, [r4, 0x26]
movs r0, 0x22
ldrsh r3, [r4, r0]
movs r1, 0x26
ldrsh r0, [r4, r1]
adds r3, r0
ldr r2, =gUnknown_08617D64
movs r0, 0x2E
ldrsh r1, [r4, r0]
lsls r0, r1, 1
adds r0, r1
lsls r0, 1
adds r2, 0x4
adds r0, r2
movs r1, 0
ldrsh r0, [r0, r1]
cmp r3, r0
ble _081BEB1A
adds r0, r4, 0
bl DestroySprite
bl sub_81BE968
_081BEB1A:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEAD8
.align 2, 0 @ Don't pad with nop.

View File

@@ -1,339 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start hm_prepare_dive_probably
hm_prepare_dive_probably: @ 8161508
push {r4-r6,lr}
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
movs r6, 0x64
muls r0, r6
ldr r4, =gPlayerParty
adds r0, r4
movs r1, 0x3A
bl GetMonData
adds r5, r0, 0
lsls r5, 16
lsrs r5, 16
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
muls r0, r6
adds r0, r4
movs r1, 0x39
bl GetMonData
adds r4, r0, 0
lsls r4, 16
lsrs r4, 16
adds r0, r5, 0
movs r1, 0x5
bl __udivsi3
lsls r0, 16
lsrs r0, 16
cmp r4, r0
bhi _08161558
movs r0, 0
b _0816155A
.pool
_08161558:
movs r0, 0x1
_0816155A:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end hm_prepare_dive_probably
thumb_func_start sub_8161560
sub_8161560: @ 8161560
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
ldr r0, =gUnknown_0203CEC8
movs r1, 0xA
strb r1, [r0, 0xB]
ldrb r1, [r0, 0x9]
strb r1, [r0, 0xA]
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
bl sub_81B0FCC
movs r0, 0x5
bl display_pokemon_menu_message
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_81B1370
str r1, [r0]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8161560
thumb_func_start sub_81615A8
sub_81615A8: @ 81615A8
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x8
lsls r0, 24
lsrs r4, r0, 24
str r4, [sp, 0x4]
ldr r1, =gUnknown_0203CEC8
ldrb r7, [r1, 0x9]
mov r8, r7
ldrb r0, [r1, 0xA]
adds r5, r0, 0
cmp r5, 0x6
bls _081615EC
movs r0, 0
strb r0, [r1, 0xB]
bl display_pokemon_menu_message
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_81B1370
str r1, [r0]
b _08161658
.pool
_081615EC:
movs r0, 0x64
mov r10, r0
mov r0, r10
muls r0, r5
ldr r1, =gPlayerParty
mov r9, r1
adds r6, r0, r1
adds r0, r6, 0
movs r1, 0x39
bl GetMonData
lsls r0, 16
lsrs r4, r0, 16
cmp r4, 0
beq _0816161A
cmp r7, r5
beq _0816161A
adds r0, r6, 0
movs r1, 0x3A
bl GetMonData
cmp r0, r4
bne _08161628
_0816161A:
ldr r0, [sp, 0x4]
bl sub_81617B8
b _08161658
.pool
_08161628:
movs r0, 0x1
bl PlaySE
mov r1, r10
mov r0, r8
muls r0, r1
add r0, r9
movs r1, 0x3A
bl GetMonData
movs r1, 0x5
bl __udivsi3
adds r3, r0, 0
lsls r3, 16
asrs r3, 16
movs r2, 0x1
negs r2, r2
ldr r0, =sub_816166C
str r0, [sp]
ldr r0, [sp, 0x4]
mov r1, r8
bl sub_81B1F18
_08161658:
add sp, 0x8
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_81615A8
thumb_func_start sub_816166C
sub_816166C: @ 816166C
push {r4,r5,lr}
sub sp, 0x4
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0x1
bl PlaySE
ldr r5, =gUnknown_0203CEC8
movs r1, 0x9
ldrsb r1, [r5, r1]
movs r0, 0x64
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
movs r1, 0x3A
bl GetMonData
movs r1, 0x5
bl __udivsi3
adds r3, r0, 0
lsls r3, 16
asrs r3, 16
ldrb r1, [r5, 0xA]
ldr r0, =sub_81616C0
str r0, [sp]
adds r0, r4, 0
movs r2, 0x1
bl sub_81B1F18
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_816166C
thumb_func_start sub_81616C0
sub_81616C0: @ 81616C0
push {r4,r5,lr}
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
ldr r0, =gUnknown_0203CEC8
movs r1, 0xA
ldrsb r1, [r0, r1]
movs r0, 0x64
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
ldr r1, =gStringVar1
bl GetMonNickname
ldr r4, =gStringVar4
ldr r1, =gText_PkmnHPRestoredByVar2
adds r0, r4, 0
bl StringExpandPlaceholders
adds r0, r4, 0
movs r1, 0
bl sub_81B1B5C
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
ldr r1, =gTasks
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
adds r0, r1
ldr r1, =sub_8161724
str r1, [r0]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81616C0
thumb_func_start sub_8161724
sub_8161724: @ 8161724
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
bl sub_81B1BD4
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08161772
ldr r4, =gUnknown_0203CEC8
movs r0, 0
strb r0, [r4, 0xB]
ldrb r0, [r4, 0x9]
movs r1, 0
bl sub_81B0FCC
ldrb r0, [r4, 0xA]
strb r0, [r4, 0x9]
ldrb r0, [r4, 0xA]
movs r1, 0x1
bl sub_81B0FCC
movs r0, 0x6
movs r1, 0
bl sub_8198070
movs r0, 0x6
bl ClearWindowTilemap
movs r0, 0
bl display_pokemon_menu_message
ldr r1, =gTasks
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
adds r0, r1
ldr r1, =sub_81B1370
str r1, [r0]
_08161772:
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8161724
thumb_func_start sub_8161784
sub_8161784: @ 8161784
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
bl sub_81B1BD4
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _081617AA
movs r0, 0x5
bl display_pokemon_menu_message
ldr r0, =gTasks
lsls r1, r4, 2
adds r1, r4
lsls r1, 3
adds r1, r0
ldr r0, =sub_81B1370
str r0, [r1]
_081617AA:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8161784
thumb_func_start sub_81617B8
sub_81617B8: @ 81617B8
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0x5
bl PlaySE
ldr r0, =gText_CantBeUsedOnPkmn
movs r1, 0
bl sub_81B1B5C
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, =sub_8161784
str r1, [r0]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81617B8
.align 2, 0 @ Don't pad with nop.

View File

@@ -5,893 +5,6 @@
.text
thumb_func_start sub_81BEB24
sub_81BEB24: @ 81BEB24
push {r4,r5,lr}
movs r4, 0
ldr r5, =gUnknown_08617DA4
_081BEB2A:
lsls r2, r4, 2
adds r2, r5
ldrb r0, [r2]
adds r0, 0x7
ldrb r1, [r2, 0x1]
adds r1, 0x7
ldrh r2, [r2, 0x2]
bl MapGridSetMetatileIdAt
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x11
bls _081BEB2A
bl DrawWholeMapView
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEB24
thumb_func_start sub_81BEB54
sub_81BEB54: @ 81BEB54
push {lr}
ldr r0, =sub_81BED50
movs r1, 0x9
bl CreateTask
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEB54
thumb_func_start sub_81BEB68
sub_81BEB68: @ 81BEB68
push {lr}
ldr r0, =sub_81BEBF4
movs r1, 0x9
bl CreateTask
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEB68
thumb_func_start sub_81BEB7C
sub_81BEB7C: @ 81BEB7C
push {lr}
ldr r0, =sub_81BF028
movs r1, 0x9
bl CreateTask
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEB7C
thumb_func_start sub_81BEB90
sub_81BEB90: @ 81BEB90
push {r4,lr}
ldr r4, =gUnknown_0203CF14
ldr r0, [r4]
ldrh r1, [r0]
movs r0, 0x10
bl SetGpuReg
ldr r0, [r4]
ldrh r1, [r0, 0x2]
movs r0, 0x12
bl SetGpuReg
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEB90
thumb_func_start sub_81BEBB4
sub_81BEBB4: @ 81BEBB4
push {lr}
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r2, r1, r2
ldrh r1, [r2, 0x8]
movs r3, 0x8
ldrsh r0, [r2, r3]
cmp r0, 0
bne _081BEBEC
ldr r0, =gUnknown_0203CF14
ldr r1, [r0]
ldrh r0, [r1]
negs r0, r0
strh r0, [r1]
movs r0, 0x2
strh r0, [r2, 0x8]
bl sub_81BEB90
b _081BEBF0
.pool
_081BEBEC:
subs r0, r1, 0x1
strh r0, [r2, 0x8]
_081BEBF0:
pop {r0}
bx r0
thumb_func_end sub_81BEBB4
thumb_func_start sub_81BEBF4
sub_81BEBF4: @ 81BEBF4
push {r4,r5,lr}
sub sp, 0xC
lsls r0, 24
lsrs r5, r0, 24
ldr r1, =gTasks
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
adds r0, r1
movs r1, 0x8
ldrsh r0, [r0, r1]
cmp r0, 0x6
bls _081BEC10
b _081BED40
_081BEC10:
lsls r0, 2
ldr r1, =_081BEC24
adds r0, r1
ldr r0, [r0]
mov pc, r0
.pool
.align 2, 0
_081BEC24:
.4byte _081BEC40
.4byte _081BEC50
.4byte _081BEC88
.4byte _081BECB0
.4byte _081BECF8
.4byte _081BED00
.4byte _081BED1C
_081BEC40:
bl FreeAllWindowBuffers
movs r0, 0
movs r1, 0x7
movs r2, 0x2
bl SetBgAttribute
b _081BED04
_081BEC50:
ldr r4, =gUnknown_0203CF04
movs r0, 0x92
lsls r0, 4
bl AllocZeroed
str r0, [r4]
ldr r4, =gUnknown_0203CF08
movs r0, 0x80
lsls r0, 4
bl AllocZeroed
str r0, [r4]
movs r0, 0
movs r1, 0
movs r2, 0
bl ChangeBgX
movs r0, 0
movs r1, 0
movs r2, 0
bl ChangeBgY
b _081BECD8
.pool
_081BEC88:
ldr r0, =gUnknown_08617274
ldr r4, =gUnknown_0203CF04
ldr r1, [r4]
movs r2, 0x92
lsls r2, 3
bl CpuSet
ldr r1, [r4]
movs r2, 0x92
lsls r2, 4
movs r0, 0
movs r3, 0
bl LoadBgTiles
b _081BECD8
.pool
_081BECB0:
ldr r0, =gUnknown_0203CF08
ldr r1, [r0]
movs r0, 0
bl SetBgTilemapBuffer
ldr r1, =gUnknown_08617B94
movs r0, 0x6
str r0, [sp]
movs r0, 0xC
str r0, [sp, 0x4]
movs r0, 0x11
str r0, [sp, 0x8]
movs r0, 0
movs r2, 0xC
movs r3, 0x1D
bl CopyToBgTilemapBufferRect_ChangePalette
movs r0, 0
bl CopyBgTilemapBufferToVram
_081BECD8:
ldr r1, =gTasks
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
adds r0, r1
ldrh r1, [r0, 0x8]
adds r1, 0x1
strh r1, [r0, 0x8]
b _081BED40
.pool
_081BECF8:
movs r0, 0
bl ShowBg
b _081BED04
_081BED00:
bl sub_81BEB24
_081BED04:
ldr r0, =gTasks
lsls r1, r5, 2
adds r1, r5
lsls r1, 3
adds r1, r0
ldrh r0, [r1, 0x8]
adds r0, 0x1
strh r0, [r1, 0x8]
b _081BED40
.pool
_081BED1C:
ldr r4, =gUnknown_0203CF14
movs r0, 0x4
bl Alloc
str r0, [r4]
movs r2, 0
movs r1, 0x2
strh r1, [r0]
strh r2, [r0, 0x2]
ldr r0, =sub_81BEBB4
movs r1, 0xA
bl CreateTask
adds r0, r5, 0
bl DestroyTask
bl EnableBothScriptContexts
_081BED40:
add sp, 0xC
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BEBF4
thumb_func_start sub_81BED50
sub_81BED50: @ 81BED50
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x10
lsls r0, 24
lsrs r0, 24
mov r10, r0
ldr r1, =gTasks
lsls r0, 2
add r0, r10
lsls r0, 3
adds r0, r1
ldrh r0, [r0, 0x8]
subs r0, 0x1
lsls r0, 16
asrs r0, 16
adds r6, r1, 0
cmp r0, 0x7
bls _081BED7C
b _081BF002
_081BED7C:
lsls r0, 2
ldr r1, =_081BED90
adds r0, r1
ldr r0, [r0]
mov pc, r0
.pool
.align 2, 0
_081BED90:
.4byte _081BEDB0
.4byte _081BF002
.4byte _081BEDC4
.4byte _081BEF64
.4byte _081BEF94
.4byte _081BEFD0
.4byte _081BEFF0
.4byte _081BEFF8
_081BEDB0:
ldr r4, =gUnknown_0203CF10
movs r0, 0xC0
lsls r0, 2
bl AllocZeroed
str r0, [r4]
b _081BF002
.pool
_081BEDC4:
mov r1, r10
lsls r0, r1, 2
adds r1, r0, r1
lsls r1, 3
adds r2, r1, r6
ldrh r3, [r2, 0xE]
movs r4, 0xE
ldrsh r1, [r2, r4]
str r0, [sp, 0x8]
cmp r1, 0x5F
bgt _081BEE8A
movs r1, 0xA
ldrsh r0, [r2, r1]
cmp r0, 0x1
ble _081BEE7C
lsls r0, r3, 24
lsrs r4, r0, 24
movs r0, 0x30
bl Alloc
ldr r3, =gUnknown_0203CF10
ldr r1, [r3]
lsls r2, r4, 3
adds r1, r2, r1
str r0, [r1]
movs r5, 0
adds r4, r2, 0
_081BEDFA:
ldr r0, [r3]
adds r0, r4, r0
ldr r0, [r0]
adds r0, r5
strb r5, [r0]
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
cmp r5, 0x2F
bls _081BEDFA
movs r5, 0
ldr r7, =gUnknown_0203CF10
adds r6, r2, 0
_081BEE14:
bl Random
lsls r0, 16
lsrs r0, 16
movs r1, 0x30
bl __umodsi3
adds r4, r0, 0
lsls r4, 16
lsrs r4, 16
bl Random
lsls r0, 16
lsrs r0, 16
movs r1, 0x30
bl __umodsi3
lsls r0, 16
lsrs r0, 16
ldr r1, [r7]
adds r1, r6, r1
ldr r1, [r1]
adds r0, r1, r0
ldrb r2, [r0]
adds r1, r4
ldrb r1, [r1]
strb r1, [r0]
ldr r0, [r7]
adds r0, r6, r0
ldr r0, [r0]
adds r0, r4
strb r2, [r0]
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
cmp r5, 0x2F
bls _081BEE14
ldr r0, =gTasks
ldr r1, [sp, 0x8]
add r1, r10
lsls r1, 3
adds r2, r1, r0
ldrh r3, [r2, 0xE]
movs r4, 0xE
ldrsh r1, [r2, r4]
adds r6, r0, 0
cmp r1, 0x5F
bgt _081BEE78
adds r0, r3, 0x1
strh r0, [r2, 0xE]
_081BEE78:
movs r0, 0
strh r0, [r2, 0xA]
_081BEE7C:
ldr r1, [sp, 0x8]
add r1, r10
lsls r1, 3
adds r1, r6
ldrh r0, [r1, 0xA]
adds r0, 0x1
strh r0, [r1, 0xA]
_081BEE8A:
ldr r0, [sp, 0x8]
add r0, r10
lsls r0, 3
adds r0, r6
ldrb r4, [r0, 0xE]
ldrb r5, [r0, 0xC]
lsls r0, r4, 16
cmp r5, r4
bcs _081BEF32
str r0, [sp, 0xC]
_081BEE9E:
movs r6, 0
adds r0, r5, 0x1
str r0, [sp, 0x4]
lsls r4, r5, 3
movs r2, 0x5F
subs r1, r2, r5
lsls r0, r1, 1
adds r0, r1
lsls r0, 4
mov r9, r0
_081BEEB2:
ldr r0, =gUnknown_0203CF04
ldr r0, [r0]
ldr r7, =gUnknown_0203CF10
ldr r3, [r7]
adds r3, r4, r3
ldrb r2, [r3, 0x4]
adds r1, r2, 0x1
strb r1, [r3, 0x4]
lsls r2, 24
lsrs r2, 24
ldr r1, [r3]
adds r1, r2
ldrb r1, [r1]
add r1, r9
lsls r1, 16
lsrs r1, 16
movs r2, 0x1
mov r8, r2
str r2, [sp]
movs r2, 0
movs r3, 0x30
bl sub_81BF2B8
adds r0, r6, 0x1
lsls r0, 24
lsrs r6, r0, 24
cmp r6, 0
beq _081BEEB2
ldr r0, [r7]
adds r1, r4, r0
ldrb r0, [r1, 0x4]
cmp r0, 0x2F
bls _081BEF24
ldr r0, [r1]
bl Free
ldr r0, [r7]
adds r0, r4, r0
movs r1, 0
str r1, [r0]
ldr r1, [sp, 0x8]
add r1, r10
lsls r1, 3
ldr r4, =gTasks
adds r1, r4
ldrh r0, [r1, 0xC]
adds r0, 0x1
strh r0, [r1, 0xC]
mov r0, r8
ands r5, r0
cmp r5, 0x1
bne _081BEF24
ldr r0, =gUnknown_0203CF14
ldr r1, [r0]
ldrh r0, [r1, 0x2]
subs r0, 0x1
strh r0, [r1, 0x2]
_081BEF24:
ldr r1, [sp, 0x4]
lsls r0, r1, 16
lsrs r5, r0, 16
ldr r2, [sp, 0xC]
lsrs r0, r2, 16
cmp r5, r0
bcc _081BEE9E
_081BEF32:
ldr r0, =gUnknown_0203CF04
ldr r1, [r0]
movs r2, 0x92
lsls r2, 4
movs r0, 0
movs r3, 0
bl LoadBgTiles
ldr r0, =gUnknown_0203CF10
ldr r0, [r0]
movs r4, 0xBE
lsls r4, 2
adds r0, r4
ldrb r0, [r0, 0x4]
cmp r0, 0x2F
bhi _081BF002
b _081BF014
.pool
_081BEF64:
movs r0, 0
bl UnsetBgTilemapBuffer
ldr r0, =sub_81BEBB4
bl FindTaskIdByFunc
lsls r0, 24
lsrs r0, 24
cmp r0, 0xFF
beq _081BEF7C
bl DestroyTask
_081BEF7C:
ldr r0, =gUnknown_0203CF14
ldr r1, [r0]
movs r0, 0
strh r0, [r1]
strh r0, [r1, 0x2]
bl sub_81BEB90
b _081BF002
.pool
_081BEF94:
ldr r4, =gUnknown_0203CF14
ldr r0, [r4]
bl Free
movs r5, 0
str r5, [r4]
ldr r4, =gUnknown_0203CF10
ldr r0, [r4]
bl Free
str r5, [r4]
ldr r4, =gUnknown_0203CF04
ldr r0, [r4]
bl Free
str r5, [r4]
ldr r4, =gUnknown_0203CF08
ldr r0, [r4]
bl Free
str r5, [r4]
b _081BF002
.pool
_081BEFD0:
movs r0, 0xC
movs r1, 0x2
bl SetGpuRegBits
movs r0, 0x8
movs r1, 0
bl SetGpuRegBits
movs r0, 0
movs r1, 0x7
movs r2, 0
bl SetBgAttribute
bl sub_81971D0
b _081BF002
_081BEFF0:
movs r0, 0
bl ShowBg
b _081BF002
_081BEFF8:
mov r0, r10
bl DestroyTask
bl EnableBothScriptContexts
_081BF002:
ldr r0, =gTasks
mov r2, r10
lsls r1, r2, 2
add r1, r10
lsls r1, 3
adds r1, r0
ldrh r0, [r1, 0x8]
adds r0, 0x1
strh r0, [r1, 0x8]
_081BF014:
add sp, 0x10
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BED50
thumb_func_start sub_81BF028
sub_81BF028: @ 81BF028
push {r4-r7,lr}
mov r7, r8
push {r7}
sub sp, 0x18
lsls r0, 24
lsrs r7, r0, 24
ldr r1, =gTasks
lsls r0, r7, 2
adds r0, r7
lsls r0, 3
adds r0, r1
ldrh r0, [r0, 0x8]
subs r0, 0x1
lsls r0, 16
asrs r0, 16
cmp r0, 0x7
bls _081BF04C
b _081BF228
_081BF04C:
lsls r0, 2
ldr r1, =_081BF060
adds r0, r1
ldr r0, [r0]
mov pc, r0
.pool
.align 2, 0
_081BF060:
.4byte _081BF080
.4byte _081BF0B4
.4byte _081BF0DC
.4byte _081BF0F0
.4byte _081BF148
.4byte _081BF170
.4byte _081BF1CC
.4byte _081BF224
_081BF080:
ldr r4, =gUnknown_0203CF0C
movs r0, 0x14
bl AllocZeroed
str r0, [r4]
movs r0, 0x80
bl AllocZeroed
ldr r1, [r4]
str r0, [r1]
movs r0, 0x8
bl AllocZeroed
ldr r1, [r4]
str r0, [r1, 0x4]
movs r0, 0x80
lsls r0, 2
bl AllocZeroed
ldr r1, [r4]
str r0, [r1, 0xC]
movs r0, 0
strh r0, [r1, 0x10]
b _081BF228
.pool
_081BF0B4:
ldr r0, =gUnknown_0203CF0C
ldr r0, [r0]
ldr r1, [r0]
movs r5, 0
ldr r2, =gRootFossil_Gfx
_081BF0BE:
adds r0, r5, r2
ldrb r0, [r0]
strb r0, [r1]
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
adds r1, 0x1
cmp r5, 0x7F
bls _081BF0BE
b _081BF228
.pool
_081BF0DC:
ldr r0, =gUnknown_0203CF0C
ldr r0, [r0]
ldr r1, [r0, 0x4]
ldr r0, [r0]
str r0, [r1]
movs r0, 0x80
strh r0, [r1, 0x4]
b _081BF228
.pool
_081BF0F0:
mov r1, sp
ldr r0, =gUnknown_08617E00
ldm r0!, {r2-r4}
stm r1!, {r2-r4}
ldm r0!, {r2-r4}
stm r1!, {r2-r4}
ldr r4, =gUnknown_0203CF0C
ldr r0, [r4]
ldr r0, [r0, 0x4]
str r0, [sp, 0xC]
movs r2, 0x10
negs r2, r2
mov r0, sp
movs r1, 0x80
movs r3, 0x1
bl CreateSprite
ldr r1, [r4]
movs r3, 0
strb r0, [r1, 0x8]
ldr r2, =gSprites
ldr r0, [r4]
ldrb r1, [r0, 0x8]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r2
adds r0, 0x28
strb r3, [r0]
ldr r3, [r4]
ldrb r1, [r3, 0x8]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r2
ldrh r1, [r0, 0x20]
strh r1, [r0, 0x2E]
ldrb r1, [r3, 0x8]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r2
movs r1, 0x1
strh r1, [r0, 0x30]
_081BF148:
movs r5, 0
ldr r2, =gUnknown_0203CF0C
_081BF14C:
ldr r0, [r2]
ldr r1, [r0, 0xC]
lsls r0, r5, 1
adds r0, r1
strh r5, [r0]
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
cmp r5, 0xFF
bls _081BF14C
b _081BF228
.pool
_081BF170:
movs r5, 0
movs r6, 0xFF
ldr r0, =0x000001ff
mov r8, r0
_081BF178:
bl Random
adds r4, r6, 0
ands r4, r0
bl Random
adds r1, r6, 0
ands r1, r0
ldr r0, =gUnknown_0203CF0C
ldr r3, [r0]
ldr r0, [r3, 0xC]
lsls r1, 1
adds r1, r0
ldrh r2, [r1]
lsls r4, 1
adds r4, r0
ldrh r0, [r4]
strh r0, [r1]
strh r2, [r4]
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
cmp r5, r8
bls _081BF178
ldr r2, =gSprites
ldrb r1, [r3, 0x8]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r2, 0x1C
adds r0, r2
ldr r1, =sub_81BF248
str r1, [r0]
b _081BF228
.pool
_081BF1CC:
ldr r3, =gSprites
ldr r5, =gUnknown_0203CF0C
ldr r0, [r5]
ldrb r1, [r0, 0x8]
lsls r0, r1, 4
adds r0, r1
lsls r2, r0, 2
adds r0, r3, 0
adds r0, 0x1C
adds r0, r2, r0
ldr r1, [r0]
ldr r0, =SpriteCallbackDummy
cmp r1, r0
bne _081BF238
adds r0, r2, r3
bl DestroySprite
ldr r0, [r5]
ldr r0, [r0, 0xC]
bl Free
ldr r0, [r5]
movs r4, 0
str r4, [r0, 0xC]
ldr r0, [r0, 0x4]
bl Free
ldr r0, [r5]
str r4, [r0, 0x4]
ldr r0, [r0]
bl Free
ldr r0, [r5]
str r4, [r0]
bl Free
str r4, [r5]
b _081BF228
.pool
_081BF224:
bl EnableBothScriptContexts
_081BF228:
ldr r0, =gTasks
lsls r1, r7, 2
adds r1, r7
lsls r1, 3
adds r1, r0
ldrh r0, [r1, 0x8]
adds r0, 0x1
strh r0, [r1, 0x8]
_081BF238:
add sp, 0x18
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_81BF028
thumb_func_start sub_81BF248
sub_81BF248: @ 81BF248
push {r4,r5,lr}
sub sp, 0x4
adds r5, r0, 0
ldr r0, =gUnknown_0203CF0C
ldr r0, [r0]
ldrh r0, [r0, 0x10]
cmp r0, 0xFF
bls _081BF268
ldr r0, =SpriteCallbackDummy
str r0, [r5, 0x1C]
b _081BF2B0
.pool
_081BF268:
ldrh r1, [r5, 0x22]
movs r2, 0x22
ldrsh r0, [r5, r2]
cmp r0, 0x5F
ble _081BF2AC
movs r4, 0
_081BF274:
ldr r0, =gUnknown_0203CF0C
ldr r3, [r0]
ldr r0, [r3]
ldrh r1, [r3, 0x10]
adds r2, r1, 0x1
strh r2, [r3, 0x10]
lsls r1, 16
ldr r2, [r3, 0xC]
lsrs r1, 15
adds r1, r2
ldrh r1, [r1]
movs r2, 0
str r2, [sp]
movs r3, 0x10
bl sub_81BF2B8
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x1
bls _081BF274
adds r0, r5, 0
movs r1, 0
bl StartSpriteAnim
b _081BF2B0
.pool
_081BF2AC:
adds r0, r1, 0x1
strh r0, [r5, 0x22]
_081BF2B0:
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
thumb_func_end sub_81BF248
thumb_func_start sub_81BF2B8
sub_81BF2B8: @ 81BF2B8
push {r4-r7,lr}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,637 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start RemoveBagObject
@ void RemoveBagObject(u8 a1)
RemoveBagObject: @ 80D4CA8
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, =gUnknown_0203CE54
ldr r2, =0x00000804
adds r1, r4, r2
ldr r0, [r0]
adds r5, r0, r1
ldrb r0, [r5]
cmp r0, 0xFF
beq _080D4CEE
adds r4, 0x64
adds r0, r4, 0
bl FreeSpriteTilesByTag
adds r0, r4, 0
bl FreeSpritePaletteByTag
ldrb r1, [r5]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
ldr r4, =gSprites
adds r0, r4
bl FreeSpriteOamMatrix
ldrb r1, [r5]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r4
bl DestroySprite
movs r0, 0xFF
strb r0, [r5]
_080D4CEE:
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end RemoveBagObject
thumb_func_start AddBagVisualObject
@ void AddBagVisualObject(u8 bagPocketId)
AddBagVisualObject: @ 80D4D00
push {r4,r5,lr}
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
ldr r0, =gUnknown_0203CE54
ldr r4, [r0]
ldr r0, =0x00000804
adds r4, r0
ldr r0, =gUnknown_0857FB4C
movs r1, 0x44
movs r2, 0x42
movs r3, 0
bl CreateSprite
strb r0, [r4]
adds r0, r5, 0
movs r1, 0
bl SetBagVisualPocketId
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end AddBagVisualObject
thumb_func_start SetBagVisualPocketId
@ void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets)
SetBagVisualPocketId: @ 80D4D38
push {lr}
lsls r0, 24
lsrs r3, r0, 24
lsls r1, 24
ldr r0, =gUnknown_0203CE54
ldr r0, [r0]
ldr r2, =0x00000804
adds r0, r2
ldrb r2, [r0]
lsls r0, r2, 4
adds r0, r2
lsls r0, 2
ldr r2, =gSprites
adds r2, r0, r2
cmp r1, 0
beq _080D4D84
ldr r0, =0x0000fffb
strh r0, [r2, 0x26]
ldr r0, =ObjectCB_BagVisualSwitchingPockets
str r0, [r2, 0x1C]
adds r0, r3, 0x1
strh r0, [r2, 0x2E]
adds r0, r2, 0
movs r1, 0
bl StartSpriteAnim
b _080D4D90
.pool
_080D4D84:
adds r1, r3, 0x1
lsls r1, 24
lsrs r1, 24
adds r0, r2, 0
bl StartSpriteAnim
_080D4D90:
pop {r0}
bx r0
thumb_func_end SetBagVisualPocketId
thumb_func_start ObjectCB_BagVisualSwitchingPockets
@ void ObjectCB_BagVisualSwitchingPockets(struct obj *object)
ObjectCB_BagVisualSwitchingPockets: @ 80D4D94
push {r4,lr}
adds r4, r0, 0
ldrh r1, [r4, 0x26]
movs r2, 0x26
ldrsh r0, [r4, r2]
cmp r0, 0
beq _080D4DA8
adds r0, r1, 0x1
strh r0, [r4, 0x26]
b _080D4DB8
_080D4DA8:
ldrh r1, [r4, 0x2E]
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
bl StartSpriteAnim
ldr r0, =SpriteCallbackDummy
str r0, [r4, 0x1C]
_080D4DB8:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end ObjectCB_BagVisualSwitchingPockets
thumb_func_start ShakeBagVisual
@ void ShakeBagVisual()
ShakeBagVisual: @ 80D4DC4
push {r4,lr}
ldr r0, =gUnknown_0203CE54
ldr r0, [r0]
ldr r1, =0x00000804
adds r0, r1
ldrb r1, [r0]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
ldr r1, =gSprites
adds r4, r0, r1
adds r0, r4, 0
adds r0, 0x3F
ldrb r1, [r0]
movs r0, 0x20
ands r0, r1
cmp r0, 0
beq _080D4DF4
adds r0, r4, 0
movs r1, 0x1
bl StartSpriteAffineAnim
ldr r0, =ObjectCB_ShakeBagVisual
str r0, [r4, 0x1C]
_080D4DF4:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end ShakeBagVisual
thumb_func_start ObjectCB_ShakeBagVisual
@ void ObjectCB_ShakeBagVisual(struct obj *object)
ObjectCB_ShakeBagVisual: @ 80D4E0C
push {r4,lr}
adds r4, r0, 0
adds r0, 0x3F
ldrb r1, [r0]
movs r0, 0x20
ands r0, r1
cmp r0, 0
beq _080D4E28
adds r0, r4, 0
movs r1, 0
bl StartSpriteAffineAnim
ldr r0, =SpriteCallbackDummy
str r0, [r4, 0x1C]
_080D4E28:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end ObjectCB_ShakeBagVisual
thumb_func_start AddSwitchPocketRotatingBallObject
@ void AddSwitchPocketRotatingBallObject(u16 rotationDirection)
AddSwitchPocketRotatingBallObject: @ 80D4E34
push {r4,r5,lr}
adds r5, r0, 0
lsls r5, 16
lsrs r5, 16
ldr r0, =gUnknown_0203CE54
ldr r4, [r0]
ldr r0, =0x00000805
adds r4, r0
ldr r0, =gUnknown_0857FBA0
bl LoadSpriteSheet
ldr r0, =gUnknown_0857FBA8
bl LoadSpritePalette
ldr r0, =gUnknown_0857FBB0
movs r1, 0x10
movs r2, 0x10
movs r3, 0
bl CreateSprite
strb r0, [r4]
ldr r2, =gSprites
ldrb r1, [r4]
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
adds r0, r2
strh r5, [r0, 0x2E]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end AddSwitchPocketRotatingBallObject
thumb_func_start update_switch_pocket_rotating_ball_coords
@ void update_switch_pocket_rotating_ball_coords(struct obj *object)
update_switch_pocket_rotating_ball_coords: @ 80D4E8C
ldrh r2, [r0, 0x30]
ldrh r1, [r0, 0x34]
adds r1, 0x1
movs r3, 0x1
ands r1, r3
subs r2, r1
adds r1, r0, 0
adds r1, 0x28
strb r2, [r1]
ldrh r2, [r0, 0x30]
ldrh r1, [r0, 0x34]
adds r1, 0x1
ands r1, r3
subs r2, r1
adds r0, 0x29
strb r2, [r0]
bx lr
thumb_func_end update_switch_pocket_rotating_ball_coords
thumb_func_start ObjectCB_SwitchPocketRotatingBallInit
@ void ObjectCB_SwitchPocketRotatingBallInit(struct obj *object)
ObjectCB_SwitchPocketRotatingBallInit: @ 80D4EB0
push {r4,lr}
adds r4, r0, 0
ldrb r1, [r4, 0x1]
movs r0, 0x4
negs r0, r0
ands r0, r1
movs r1, 0x1
orrs r0, r1
strb r0, [r4, 0x1]
movs r0, 0x2E
ldrsh r1, [r4, r0]
movs r0, 0x1
negs r0, r0
cmp r1, r0
bne _080D4ED8
ldr r0, =gUnknown_0857FB98
b _080D4EDA
.pool
_080D4ED8:
ldr r0, =gUnknown_0857FB9C
_080D4EDA:
str r0, [r4, 0x10]
adds r0, r4, 0
bl InitSpriteAffineAnim
adds r0, r4, 0
adds r0, 0x28
ldrb r0, [r0]
lsls r0, 24
asrs r0, 24
strh r0, [r4, 0x30]
adds r0, r4, 0
adds r0, 0x29
ldrb r0, [r0]
lsls r0, 24
asrs r0, 24
strh r0, [r4, 0x30]
adds r0, r4, 0
bl update_switch_pocket_rotating_ball_coords
ldr r0, =ObjectCB_SwitchPocketRotatingBallContinue
str r0, [r4, 0x1C]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end ObjectCB_SwitchPocketRotatingBallInit
thumb_func_start ObjectCB_SwitchPocketRotatingBallContinue
@ void ObjectCB_SwitchPocketRotatingBallContinue(struct obj *object)
ObjectCB_SwitchPocketRotatingBallContinue: @ 80D4F14
push {r4,lr}
adds r4, r0, 0
ldrh r0, [r4, 0x34]
adds r0, 0x1
strh r0, [r4, 0x34]
adds r0, r4, 0
bl update_switch_pocket_rotating_ball_coords
movs r1, 0x34
ldrsh r0, [r4, r1]
cmp r0, 0x10
bne _080D4F32
movs r0, 0x1
bl RemoveBagObject
_080D4F32:
pop {r4}
pop {r0}
bx r0
thumb_func_end ObjectCB_SwitchPocketRotatingBallContinue
thumb_func_start AddBagItemIconObject
@ void AddBagItemIconObject(u16 itemId, u8 a2)
AddBagItemIconObject: @ 80D4F38
push {r4-r6,lr}
lsls r0, 16
lsrs r6, r0, 16
lsls r1, 24
lsrs r4, r1, 24
ldr r0, =gUnknown_0203CE54
ldr r2, =0x00000806
adds r1, r4, r2
ldr r0, [r0]
adds r5, r0, r1
ldrb r0, [r5]
cmp r0, 0xFF
bne _080D4F86
adds r4, 0x66
adds r0, r4, 0
bl FreeSpriteTilesByTag
adds r0, r4, 0
bl FreeSpritePaletteByTag
adds r0, r4, 0
adds r1, r4, 0
adds r2, r6, 0
bl AddItemIconSprite
lsls r0, 24
lsrs r2, r0, 24
cmp r2, 0x40
beq _080D4F86
strb r2, [r5]
ldr r1, =gSprites
lsls r0, r2, 4
adds r0, r2
lsls r0, 2
adds r0, r1
movs r1, 0x18
strh r1, [r0, 0x24]
movs r1, 0x58
strh r1, [r0, 0x26]
_080D4F86:
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end AddBagItemIconObject
thumb_func_start RemoveBagItemIconObject
@ void RemoveBagItemIconObject(u8 a1)
RemoveBagItemIconObject: @ 80D4F98
push {lr}
lsls r0, 24
movs r1, 0x80
lsls r1, 18
adds r0, r1
lsrs r0, 24
bl RemoveBagObject
pop {r0}
bx r0
thumb_func_end RemoveBagItemIconObject
thumb_func_start sub_80D4FAC
sub_80D4FAC: @ 80D4FAC
push {lr}
ldr r0, =gUnknown_0203CE54
ldr r0, [r0]
ldr r1, =0x00000808
adds r0, r1
movs r1, 0x8
bl sub_8122344
pop {r0}
bx r0
.pool
thumb_func_end sub_80D4FAC
thumb_func_start sub_80D4FC8
sub_80D4FC8: @ 80D4FC8
push {lr}
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
ldr r0, =gUnknown_0203CE54
ldr r0, [r0]
ldr r1, =0x00000808
adds r0, r1
movs r1, 0x8
bl sub_81223FC
pop {r0}
bx r0
.pool
thumb_func_end sub_80D4FC8
thumb_func_start sub_80D4FEC
sub_80D4FEC: @ 80D4FEC
push {lr}
adds r3, r0, 0
lsls r3, 24
ldr r0, =gUnknown_0203CE54
ldr r0, [r0]
ldr r1, =0x00000808
adds r0, r1
lsrs r3, 4
movs r1, 0x80
lsls r1, 13
adds r3, r1
lsrs r3, 16
movs r1, 0x88
movs r2, 0x78
bl sub_8122448
pop {r0}
bx r0
.pool
thumb_func_end sub_80D4FEC
thumb_func_start sub_80D5018
sub_80D5018: @ 80D5018
push {r4-r7,lr}
mov r7, r8
push {r7}
adds r6, r0, 0
adds r4, r1, 0
movs r2, 0x80
lsls r2, 4
adds r0, r4, 0
movs r1, 0
bl memset
movs r0, 0x80
lsls r0, 1
adds r4, r0
movs r7, 0
_080D5036:
adds r4, 0x20
movs r5, 0
adds r1, r7, 0x1
mov r8, r1
_080D503E:
adds r0, r4, 0
adds r1, r6, 0
movs r2, 0x20
bl memcpy
adds r4, 0x20
adds r6, 0x20
adds r0, r5, 0x1
lsls r0, 24
lsrs r5, r0, 24
cmp r5, 0x5
bls _080D503E
cmp r7, 0x5
beq _080D505C
adds r4, 0x20
_080D505C:
mov r1, r8
lsls r0, r1, 24
lsrs r7, r0, 24
cmp r7, 0x5
bls _080D5036
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end sub_80D5018
thumb_func_start sub_80D5070
sub_80D5070: @ 80D5070
push {r4,r5,lr}
sub sp, 0x8
lsls r0, 24
lsrs r0, 24
adds r4, r0, 0
cmp r4, 0x2A
bne _080D5082
bl IsEnigmaBerryValid
_080D5082:
ldr r5, =gBerryPicTable
lsls r4, 3
adds r0, r5, 0x4
adds r0, r4, r0
ldr r0, [r0]
str r0, [sp]
ldr r1, =0xffff0000
ldr r0, [sp, 0x4]
ands r0, r1
ldr r1, =0x00007544
orrs r0, r1
str r0, [sp, 0x4]
mov r0, sp
bl LoadCompressedObjectPalette
adds r4, r5
ldr r0, [r4]
ldr r4, =0x0201d000
adds r1, r4, 0
bl LZDecompressWram
ldr r0, =0xfffff000
adds r1, r4, r0
adds r0, r4, 0
bl sub_80D5018
add sp, 0x8
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_80D5070
thumb_func_start CreateBerryTagSprite
CreateBerryTagSprite: @ 80D50D4
push {r4,r5,lr}
adds r4, r1, 0
adds r5, r2, 0
lsls r0, 24
lsrs r0, 24
lsls r4, 16
lsrs r4, 16
lsls r5, 16
lsrs r5, 16
bl sub_80D5070
ldr r0, =gUnknown_0857FBEC
lsls r4, 16
asrs r4, 16
lsls r5, 16
asrs r5, 16
adds r1, r4, 0
adds r2, r5, 0
movs r3, 0
bl CreateSprite
lsls r0, 24
lsrs r0, 24
pop {r4,r5}
pop {r1}
bx r1
.pool
thumb_func_end CreateBerryTagSprite
thumb_func_start FreeBerryTagSpritePalette
FreeBerryTagSpritePalette: @ 80D510C
push {lr}
ldr r0, =0x00007544
bl FreeSpritePaletteByTag
pop {r0}
bx r0
.pool
thumb_func_end FreeBerryTagSpritePalette
thumb_func_start sub_80D511C
sub_80D511C: @ 80D511C
push {r4-r6,lr}
mov r6, r8
push {r6}
adds r4, r0, 0
adds r5, r1, 0
adds r6, r2, 0
mov r8, r3
lsls r4, 24
lsrs r4, 24
lsls r5, 24
lsrs r5, 24
lsls r6, 24
lsrs r6, 24
mov r0, r8
lsls r0, 24
lsrs r0, 24
mov r8, r0
ldr r0, =0x00007544
bl FreeSpritePaletteByTag
adds r0, r4, 0
bl sub_80D5070
ldr r0, =gUnknown_0857FC7C
adds r1, r5, 0
adds r2, r6, 0
movs r3, 0
bl CreateSprite
lsls r0, 24
lsrs r1, r0, 24
adds r4, r1, 0
mov r0, r8
cmp r0, 0x1
bne _080D5172
lsls r0, r1, 4
adds r0, r1
lsls r0, 2
ldr r1, =gSprites
adds r0, r1
movs r1, 0x1
bl StartSpriteAffineAnim
_080D5172:
adds r0, r4, 0
pop {r3}
mov r8, r3
pop {r4-r6}
pop {r1}
bx r1
.pool
thumb_func_end sub_80D511C
thumb_func_start CreateBerryFlavorCircleSprite
CreateBerryFlavorCircleSprite: @ 80D518C
push {lr}
adds r1, r0, 0
ldr r0, =gUnknown_0857FE10
lsls r1, 16
asrs r1, 16
movs r2, 0x74
movs r3, 0
bl CreateSprite
lsls r0, 24
lsrs r0, 24
pop {r1}
bx r1
.pool
thumb_func_end CreateBerryFlavorCircleSprite
.align 2, 0 @ Don't pad with nop.

View File

@@ -903,7 +903,7 @@ sub_8160EA0: @ 8160EA0
ldrb r0, [r0]
ldr r1, =gUnknown_0203BC38
adds r2, r1, 0x2
bl sub_81AE6C8
bl DestroyListMenuTask
bl FreeAllWindowBuffers
ldr r0, [r4]
bl Free
@@ -988,7 +988,7 @@ sub_8160F50: @ 8160F50
ldr r4, =gUnknown_0203BC38
adds r2, r4, 0x2
adds r1, r4, 0
bl sub_81AE860
bl ListMenuGetScrollAndRow
movs r0, 0x2
negs r0, r0
cmp r5, r0

File diff suppressed because it is too large Load Diff

View File

@@ -8,7 +8,7 @@
thumb_func_start sub_80D47D4
sub_80D47D4: @ 80D47D4
push {lr}
bl sub_80A0934
bl HideStartMenu
bl ShowMapNamePopup
movs r0, 0x1
pop {r1}

View File

@@ -15413,7 +15413,7 @@ sub_81B8448: @ 81B8448
str r0, [sp]
ldr r0, =sub_81B1370
str r0, [sp, 0x4]
ldr r0, =sub_816BB28
ldr r0, =Mailbox_ReturnToMailListAfterDeposit
str r0, [sp, 0x8]
movs r0, 0
movs r1, 0
@@ -15442,7 +15442,7 @@ sub_81B8474: @ 81B8474
movs r0, 0
strb r0, [r1]
ldr r2, =gSaveBlock1Ptr
ldr r0, =gUnknown_0203BCB8
ldr r0, =playerPCItemPageInfo
ldrh r1, [r0]
adds r1, 0x6
ldrh r0, [r0, 0x2]

File diff suppressed because it is too large Load Diff

View File

@@ -3469,7 +3469,7 @@ sub_81C5B4C: @ 81C5B4C
ldr r4, =gUnknown_0203CF38
subs r2, r4, 0x2
adds r1, r4, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldr r0, =gUnknown_0203CF2C
ldr r0, [r0]
ldr r0, [r0]
@@ -3545,7 +3545,7 @@ _081C5C12:
adds r1, r4, 0
adds r1, 0x8
adds r2, r4, 0x6
bl sub_81AE860
bl ListMenuGetScrollAndRow
ldrh r1, [r4, 0x8]
ldrh r0, [r4, 0x6]
adds r1, r0
@@ -3572,7 +3572,7 @@ _081C5C5C:
mov r8, r1
mov r2, r8
subs r2, 0x2
bl sub_81AE860
bl ListMenuGetScrollAndRow
movs r0, 0x2
negs r0, r0
cmp r6, r0
@@ -4642,7 +4642,7 @@ sub_81C65CC: @ 81C65CC
ldrb r0, [r4]
adds r1, r6, 0
adds r2, r7, 0
bl sub_81AE6C8
bl DestroyListMenuTask
bl sub_81C5924
bl sub_81C59BC
bl sub_81C5314
@@ -4953,7 +4953,7 @@ sub_81C68B0: @ 81C68B0
ldrb r0, [r4]
ldr r1, =gUnknown_0203CF38
subs r2, r1, 0x2
bl sub_81AE860
bl ListMenuGetScrollAndRow
b _081C6940
.pool
_081C68F8:
@@ -4964,7 +4964,7 @@ _081C68F8:
ldr r4, =gUnknown_0203CF38
subs r2, r4, 0x2
adds r1, r4, 0
bl sub_81AE860
bl ListMenuGetScrollAndRow
movs r0, 0
bl sub_81C7028
subs r4, 0x8
@@ -5054,7 +5054,7 @@ _081C69A8:
ldrb r0, [r5]
adds r1, r7, 0
mov r2, r8
bl sub_81AE6C8
bl DestroyListMenuTask
movs r3, 0x2
ldrsh r0, [r5, r3]
cmp r0, r4
@@ -5109,7 +5109,7 @@ sub_81C6A14: @ 81C6A14
ldrb r0, [r4]
adds r1, r5, 0
adds r2, r7, 0
bl sub_81AE6C8
bl DestroyListMenuTask
movs r0, 0x2
ldrsh r2, [r4, r0]
ldrh r0, [r5]

File diff suppressed because it is too large Load Diff

View File

@@ -1192,7 +1192,7 @@ sub_8012F64: @ 8012F64
ldrb r0, [r4, 0x12]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldrb r0, [r4, 0x10]
bl ClearWindowTilemap
ldrb r0, [r4, 0xF]
@@ -2394,7 +2394,7 @@ _08013A8C:
ldrb r0, [r6, 0xE]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldrb r0, [r6, 0xC]
bl ClearWindowTilemap
ldrb r0, [r6, 0xB]
@@ -4511,7 +4511,7 @@ _08014E16:
ldrb r0, [r5, 0x12]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
movs r0, 0
bl CopyBgTilemapBufferToVram
ldrb r0, [r5, 0xF]
@@ -4567,7 +4567,7 @@ _08014EA8:
ldrb r0, [r5, 0x12]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
movs r0, 0
bl CopyBgTilemapBufferToVram
ldrb r0, [r5, 0xF]
@@ -4923,7 +4923,7 @@ _08015204:
ldrb r0, [r7, 0xE]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
movs r0, 0
bl CopyBgTilemapBufferToVram
ldrb r0, [r7, 0xD]
@@ -5292,7 +5292,7 @@ _08015564:
ldrb r0, [r5, 0xE]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
movs r0, 0
bl CopyBgTilemapBufferToVram
ldrb r0, [r5, 0xB]
@@ -8545,7 +8545,7 @@ _08017228:
ldrb r0, [r4]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldrb r0, [r5]
movs r1, 0x1
bl sub_819746C
@@ -8565,7 +8565,7 @@ _08017264:
ldrb r0, [r6]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldrb r0, [r5]
movs r1, 0x1
bl sub_819746C
@@ -8669,7 +8669,7 @@ _0801733E:
ldrb r0, [r4]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldrb r0, [r6]
bl RemoveWindow
mov r7, r9
@@ -8691,7 +8691,7 @@ _08017368:
ldrb r0, [r1]
movs r1, 0
movs r2, 0
bl sub_81AE6C8
bl DestroyListMenuTask
ldrb r0, [r6]
bl RemoveWindow
mov r3, r9

View File

@@ -836,7 +836,7 @@ _080E24C6:
adds r1, r4, 0
adds r2, r7, 0
movs r3, 0x11
bl sub_819A024
bl PrintPlayerNameOnWindow
adds r0, r6, 0
mov r1, r8
movs r2, 0

View File

@@ -1985,7 +1985,7 @@ _080E0AEA:
adds r1, r2, r3
subs r3, 0x2
adds r2, r3
bl sub_81AE860
bl ListMenuGetScrollAndRow
movs r0, 0x2
negs r0, r0
cmp r5, r0

File diff suppressed because it is too large Load Diff

View File

@@ -1,206 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_81DA57C
sub_81DA57C: @ 81DA57C
push {lr}
ldr r0, =0x00000864
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _081DA5CA
bl Random
lsls r0, 16
lsrs r0, 16
movs r1, 0x64
bl __umodsi3
lsls r0, 16
lsrs r0, 16
cmp r0, 0x1E
bhi _081DA5CA
movs r0, 0x5B
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _081DA5C0
ldr r0, =gUnknown_0862AD34
movs r1, 0x8
movs r2, 0x5
bl sub_81DA5D4
b _081DA5CA
.pool
_081DA5C0:
ldr r0, =gUnknown_0862AD44
movs r1, 0x7
movs r2, 0x1
bl sub_81DA5D4
_081DA5CA:
pop {r0}
bx r0
.pool
thumb_func_end sub_81DA57C
thumb_func_start sub_81DA5D4
sub_81DA5D4: @ 81DA5D4
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x8
mov r9, r0
adds r7, r1, 0
mov r10, r2
movs r6, 0
movs r0, 0x5
mov r8, r0
movs r5, 0
cmp r5, r7
bcs _081DA61C
mov r4, r9
_081DA5F4:
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldrh r1, [r4]
ldr r2, =0x000009ca
adds r0, r2
adds r0, r1
ldrb r0, [r0]
cmp r0, 0
bne _081DA614
adds r0, r1, 0
bl sub_81DA6CC
cmp r8, r0
ble _081DA612
mov r8, r0
_081DA612:
adds r6, 0x1
_081DA614:
adds r4, 0x2
adds r5, 0x1
cmp r5, r7
bcc _081DA5F4
_081DA61C:
cmp r6, 0
beq _081DA6BA
cmp r8, r10
bhi _081DA6BA
movs r6, 0
movs r5, 0
cmp r5, r7
bcs _081DA654
mov r4, r9
_081DA62E:
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldrh r1, [r4]
ldr r2, =0x000009ca
adds r0, r2
adds r0, r1
ldrb r0, [r0]
cmp r0, 0
bne _081DA64C
adds r0, r1, 0
bl sub_81DA6CC
cmp r0, r8
bne _081DA64C
adds r6, 0x1
_081DA64C:
adds r4, 0x2
adds r5, 0x1
cmp r5, r7
bcc _081DA62E
_081DA654:
cmp r6, 0
beq _081DA6BA
bl Random
lsls r0, 16
lsrs r0, 16
adds r1, r6, 0
bl __modsi3
adds r6, r0, 0
movs r5, 0
cmp r5, r7
bcs _081DA6BA
ldr r2, =gSaveBlock1Ptr
ldr r3, =0x000009ca
mov r4, r9
_081DA674:
ldr r0, [r2]
ldrh r1, [r4]
adds r0, r3
adds r0, r1
ldrb r0, [r0]
cmp r0, 0
bne _081DA6B2
adds r0, r1, 0
str r2, [sp]
str r3, [sp, 0x4]
bl sub_81DA6CC
ldr r2, [sp]
ldr r3, [sp, 0x4]
cmp r0, r8
bne _081DA6B2
cmp r6, 0
bne _081DA6B0
ldr r0, [r2]
adds r0, r3
ldrh r4, [r4]
adds r0, r4
mov r1, r8
strb r1, [r0]
b _081DA6BA
.pool
_081DA6B0:
subs r6, 0x1
_081DA6B2:
adds r4, 0x2
adds r5, 0x1
cmp r5, r7
bcc _081DA674
_081DA6BA:
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_81DA5D4
thumb_func_start sub_81DA6CC
sub_81DA6CC: @ 81DA6CC
push {r4-r6,lr}
adds r5, r0, 0
movs r4, 0
ldr r6, =gRematchTable
_081DA6D4:
lsls r0, r4, 1
lsls r1, r5, 4
adds r0, r1
adds r0, r6
ldrh r0, [r0]
bl HasTrainerBeenFought
lsls r0, 24
cmp r0, 0
bne _081DA6F0
adds r0, r4, 0
b _081DA6F8
.pool
_081DA6F0:
adds r4, 0x1
cmp r4, 0x4
ble _081DA6D4
movs r0, 0x5
_081DA6F8:
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_81DA6CC
.align 2, 0 @ Don't pad with nop.