Port mon_markings
This commit is contained in:
@@ -1,990 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_80BE46C
|
||||
sub_80BE46C: @ 80BE46C
|
||||
ldr r1, _080BE474 @ =gUnknown_20399C0
|
||||
str r0, [r1]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_080BE474: .4byte gUnknown_20399C0
|
||||
thumb_func_end sub_80BE46C
|
||||
|
||||
thumb_func_start sub_80BE478
|
||||
sub_80BE478: @ 80BE478
|
||||
push {lr}
|
||||
sub sp, 0x4
|
||||
ldr r0, _080BE4B0 @ =gSaveBlock2Ptr
|
||||
ldr r0, [r0]
|
||||
ldrb r0, [r0, 0x14]
|
||||
lsrs r0, 3
|
||||
bl GetUserFrameGraphicsInfo
|
||||
ldr r3, _080BE4B4 @ =gUnknown_20399C0
|
||||
ldr r2, [r3]
|
||||
ldr r1, [r0]
|
||||
str r1, [r2, 0x2C]
|
||||
ldr r0, [r0, 0x4]
|
||||
str r0, [r2, 0x30]
|
||||
ldr r0, _080BE4B8 @ =0x000010b4
|
||||
adds r2, r0
|
||||
movs r1, 0
|
||||
strb r1, [r2]
|
||||
mov r0, sp
|
||||
strh r1, [r0]
|
||||
ldr r1, [r3]
|
||||
adds r1, 0x34
|
||||
ldr r2, _080BE4BC @ =0x01000800
|
||||
bl CpuSet
|
||||
add sp, 0x4
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BE4B0: .4byte gSaveBlock2Ptr
|
||||
_080BE4B4: .4byte gUnknown_20399C0
|
||||
_080BE4B8: .4byte 0x000010b4
|
||||
_080BE4BC: .4byte 0x01000800
|
||||
thumb_func_end sub_80BE478
|
||||
|
||||
thumb_func_start sub_80BE4C0
|
||||
sub_80BE4C0: @ 80BE4C0
|
||||
push {r4-r7,lr}
|
||||
ldr r0, _080BE4E0 @ =gUnknown_20399C0
|
||||
ldr r1, [r0]
|
||||
ldr r2, _080BE4E4 @ =0x000010b4
|
||||
adds r0, r1, r2
|
||||
ldrb r2, [r0]
|
||||
lsls r0, r2, 8
|
||||
adds r0, 0x34
|
||||
adds r5, r1, r0
|
||||
cmp r2, 0xD
|
||||
beq _080BE590
|
||||
cmp r2, 0xD
|
||||
bgt _080BE4E8
|
||||
cmp r2, 0
|
||||
beq _080BE4EE
|
||||
b _080BE538
|
||||
.align 2, 0
|
||||
_080BE4E0: .4byte gUnknown_20399C0
|
||||
_080BE4E4: .4byte 0x000010b4
|
||||
_080BE4E8:
|
||||
cmp r2, 0xE
|
||||
beq _080BE5DC
|
||||
b _080BE538
|
||||
_080BE4EE:
|
||||
ldr r0, [r1, 0x2C]
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
movs r4, 0
|
||||
adds r7, r5, 0
|
||||
adds r7, 0xE0
|
||||
_080BE4FE:
|
||||
ldr r6, _080BE530 @ =gUnknown_20399C0
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x2C]
|
||||
adds r0, 0x20
|
||||
adds r4, 0x1
|
||||
lsls r1, r4, 5
|
||||
adds r1, r5, r1
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
cmp r4, 0x5
|
||||
bls _080BE4FE
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x2C]
|
||||
adds r0, 0x40
|
||||
adds r1, r7, 0
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
ldr r1, [r6]
|
||||
ldr r0, _080BE534 @ =0x000010b4
|
||||
adds r1, r0
|
||||
b _080BE57E
|
||||
.align 2, 0
|
||||
_080BE530: .4byte gUnknown_20399C0
|
||||
_080BE534: .4byte 0x000010b4
|
||||
_080BE538:
|
||||
ldr r0, _080BE588 @ =gUnknown_20399C0
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x2C]
|
||||
adds r0, 0x60
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
movs r4, 0
|
||||
adds r7, r5, 0
|
||||
adds r7, 0xE0
|
||||
_080BE54E:
|
||||
ldr r6, _080BE588 @ =gUnknown_20399C0
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x2C]
|
||||
adds r0, 0x80
|
||||
adds r4, 0x1
|
||||
lsls r1, r4, 5
|
||||
adds r1, r5, r1
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
cmp r4, 0x5
|
||||
bls _080BE54E
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x2C]
|
||||
adds r0, 0xA0
|
||||
adds r1, r7, 0
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
ldr r1, [r6]
|
||||
ldr r2, _080BE58C @ =0x000010b4
|
||||
adds r1, r2
|
||||
_080BE57E:
|
||||
ldrb r0, [r1]
|
||||
adds r0, 0x1
|
||||
strb r0, [r1]
|
||||
b _080BE5E8
|
||||
.align 2, 0
|
||||
_080BE588: .4byte gUnknown_20399C0
|
||||
_080BE58C: .4byte 0x000010b4
|
||||
_080BE590:
|
||||
ldr r0, [r1, 0x2C]
|
||||
adds r0, 0xC0
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
movs r4, 0
|
||||
adds r7, r5, 0
|
||||
adds r7, 0xE0
|
||||
_080BE5A2:
|
||||
ldr r6, _080BE5E0 @ =gUnknown_20399C0
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x2C]
|
||||
adds r0, 0xE0
|
||||
adds r4, 0x1
|
||||
lsls r1, r4, 5
|
||||
adds r1, r5, r1
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
cmp r4, 0x5
|
||||
bls _080BE5A2
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x2C]
|
||||
movs r1, 0x80
|
||||
lsls r1, 1
|
||||
adds r0, r1
|
||||
adds r1, r7, 0
|
||||
movs r2, 0x8
|
||||
bl CpuFastSet
|
||||
ldr r1, [r6]
|
||||
ldr r2, _080BE5E4 @ =0x000010b4
|
||||
adds r1, r2
|
||||
ldrb r0, [r1]
|
||||
adds r0, 0x1
|
||||
strb r0, [r1]
|
||||
_080BE5DC:
|
||||
movs r0, 0
|
||||
b _080BE5EA
|
||||
.align 2, 0
|
||||
_080BE5E0: .4byte gUnknown_20399C0
|
||||
_080BE5E4: .4byte 0x000010b4
|
||||
_080BE5E8:
|
||||
movs r0, 0x1
|
||||
_080BE5EA:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_80BE4C0
|
||||
|
||||
thumb_func_start sub_80BE5F0
|
||||
sub_80BE5F0: @ 80BE5F0
|
||||
push {lr}
|
||||
bl sub_80BE478
|
||||
_080BE5F6:
|
||||
bl sub_80BE4C0
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BE5F6
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_80BE5F0
|
||||
|
||||
thumb_func_start sub_80BE604
|
||||
sub_80BE604: @ 80BE604
|
||||
push {r4-r7,lr}
|
||||
lsls r1, 16
|
||||
lsrs r5, r1, 16
|
||||
lsls r2, 16
|
||||
lsrs r6, r2, 16
|
||||
ldr r2, _080BE654 @ =gUnknown_20399C0
|
||||
ldr r3, [r2]
|
||||
movs r1, 0
|
||||
strb r1, [r3, 0x5]
|
||||
ldr r1, [r2]
|
||||
strb r0, [r1, 0x4]
|
||||
movs r3, 0
|
||||
adds r7, r2, 0
|
||||
adds r4, r7, 0
|
||||
movs r2, 0x1
|
||||
_080BE622:
|
||||
ldr r0, [r4]
|
||||
adds r1, r0, 0x6
|
||||
adds r1, r3
|
||||
ldrb r0, [r0, 0x4]
|
||||
asrs r0, r3
|
||||
ands r0, r2
|
||||
strb r0, [r1]
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r3, r0, 16
|
||||
cmp r3, 0x3
|
||||
bls _080BE622
|
||||
lsls r0, r5, 16
|
||||
asrs r0, 16
|
||||
lsls r1, r6, 16
|
||||
asrs r1, 16
|
||||
ldr r3, [r7]
|
||||
ldrh r2, [r3]
|
||||
ldrh r3, [r3, 0x2]
|
||||
bl sub_80BE7CC
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BE654: .4byte gUnknown_20399C0
|
||||
thumb_func_end sub_80BE604
|
||||
|
||||
thumb_func_start sub_80BE658
|
||||
sub_80BE658: @ 80BE658
|
||||
push {r4,r5,lr}
|
||||
movs r4, 0
|
||||
ldr r5, _080BE6EC @ =gUnknown_20399C0
|
||||
_080BE65E:
|
||||
ldr r0, [r5]
|
||||
ldrh r0, [r0]
|
||||
adds r0, r4, r0
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl FreeSpriteTilesByTag
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
cmp r4, 0x2
|
||||
bls _080BE65E
|
||||
ldr r4, _080BE6EC @ =gUnknown_20399C0
|
||||
ldr r0, [r4]
|
||||
ldrh r0, [r0, 0x2]
|
||||
bl FreeSpritePaletteByTag
|
||||
ldr r0, [r4]
|
||||
ldrh r0, [r0, 0x2]
|
||||
adds r0, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl FreeSpritePaletteByTag
|
||||
movs r4, 0
|
||||
_080BE690:
|
||||
ldr r0, _080BE6EC @ =gUnknown_20399C0
|
||||
ldr r0, [r0]
|
||||
lsls r1, r4, 2
|
||||
adds r0, 0xC
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _080BE6E6
|
||||
bl DestroySprite
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
cmp r4, 0x1
|
||||
bls _080BE690
|
||||
movs r4, 0
|
||||
_080BE6B0:
|
||||
ldr r5, _080BE6EC @ =gUnknown_20399C0
|
||||
ldr r0, [r5]
|
||||
lsls r1, r4, 2
|
||||
adds r0, 0x14
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _080BE6E6
|
||||
bl DestroySprite
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
cmp r4, 0x3
|
||||
bls _080BE6B0
|
||||
ldr r0, [r5]
|
||||
ldr r0, [r0, 0x24]
|
||||
cmp r0, 0
|
||||
beq _080BE6DA
|
||||
bl DestroySprite
|
||||
_080BE6DA:
|
||||
ldr r0, [r5]
|
||||
ldr r0, [r0, 0x28]
|
||||
cmp r0, 0
|
||||
beq _080BE6E6
|
||||
bl DestroySprite
|
||||
_080BE6E6:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BE6EC: .4byte gUnknown_20399C0
|
||||
thumb_func_end sub_80BE658
|
||||
|
||||
thumb_func_start sub_80BE6F0
|
||||
sub_80BE6F0: @ 80BE6F0
|
||||
push {r4,r5,lr}
|
||||
ldr r0, _080BE720 @ =gMain
|
||||
ldrh r1, [r0, 0x2E]
|
||||
movs r0, 0x40
|
||||
ands r0, r1
|
||||
lsls r0, 16
|
||||
lsrs r5, r0, 16
|
||||
cmp r5, 0
|
||||
beq _080BE728
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r2, _080BE724 @ =gUnknown_20399C0
|
||||
ldr r1, [r2]
|
||||
ldrb r0, [r1, 0x5]
|
||||
subs r0, 0x1
|
||||
strb r0, [r1, 0x5]
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bge _080BE7B0
|
||||
ldr r1, [r2]
|
||||
movs r0, 0x5
|
||||
strb r0, [r1, 0x5]
|
||||
b _080BE7B0
|
||||
.align 2, 0
|
||||
_080BE720: .4byte gMain
|
||||
_080BE724: .4byte gUnknown_20399C0
|
||||
_080BE728:
|
||||
movs r0, 0x80
|
||||
ands r0, r1
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
cmp r4, 0
|
||||
beq _080BE758
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r2, _080BE754 @ =gUnknown_20399C0
|
||||
ldr r1, [r2]
|
||||
ldrb r0, [r1, 0x5]
|
||||
adds r0, 0x1
|
||||
strb r0, [r1, 0x5]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
cmp r0, 0x5
|
||||
ble _080BE7B0
|
||||
ldr r0, [r2]
|
||||
strb r5, [r0, 0x5]
|
||||
b _080BE7B0
|
||||
.align 2, 0
|
||||
_080BE754: .4byte gUnknown_20399C0
|
||||
_080BE758:
|
||||
movs r0, 0x1
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080BE7B4
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r2, _080BE788 @ =gUnknown_20399C0
|
||||
ldr r0, [r2]
|
||||
movs r1, 0x5
|
||||
ldrsb r1, [r0, r1]
|
||||
cmp r1, 0x4
|
||||
beq _080BE78C
|
||||
cmp r1, 0x5
|
||||
beq _080BE7C2
|
||||
adds r0, 0x6
|
||||
adds r1, r0, r1
|
||||
movs r2, 0
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0
|
||||
bne _080BE7AE
|
||||
movs r2, 0x1
|
||||
b _080BE7AE
|
||||
.align 2, 0
|
||||
_080BE788: .4byte gUnknown_20399C0
|
||||
_080BE78C:
|
||||
strb r4, [r0, 0x4]
|
||||
movs r3, 0
|
||||
adds r4, r2, 0
|
||||
_080BE792:
|
||||
ldr r2, [r4]
|
||||
adds r0, r2, 0x6
|
||||
adds r0, r3
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r3
|
||||
ldrb r1, [r2, 0x4]
|
||||
orrs r0, r1
|
||||
strb r0, [r2, 0x4]
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r3, r0, 16
|
||||
cmp r3, 0x3
|
||||
bls _080BE792
|
||||
b _080BE7C2
|
||||
_080BE7AE:
|
||||
strb r2, [r1]
|
||||
_080BE7B0:
|
||||
movs r0, 0x1
|
||||
b _080BE7C4
|
||||
_080BE7B4:
|
||||
movs r0, 0x2
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080BE7B0
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
_080BE7C2:
|
||||
movs r0, 0
|
||||
_080BE7C4:
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_80BE6F0
|
||||
|
||||
thumb_func_start sub_80BE7CC
|
||||
sub_80BE7CC: @ 80BE7CC
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
sub sp, 0x50
|
||||
mov r8, r0
|
||||
mov r9, r1
|
||||
adds r5, r2, 0
|
||||
adds r6, r3, 0
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
mov r8, r0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
mov r9, r1
|
||||
lsls r5, 16
|
||||
lsrs r5, 16
|
||||
lsls r6, 16
|
||||
lsrs r6, 16
|
||||
ldr r4, _080BE9C4 @ =gUnknown_20399C0
|
||||
ldr r0, [r4]
|
||||
adds r0, 0x34
|
||||
str r0, [sp, 0x18]
|
||||
add r1, sp, 0x1C
|
||||
movs r7, 0
|
||||
movs r0, 0x80
|
||||
lsls r0, 5
|
||||
strh r0, [r1]
|
||||
mov r0, sp
|
||||
adds r0, 0x1E
|
||||
strh r5, [r0]
|
||||
add r1, sp, 0x20
|
||||
ldr r0, _080BE9C8 @ =gUnknown_8E9CBBC
|
||||
str r0, [sp, 0x20]
|
||||
movs r0, 0xC8
|
||||
lsls r0, 2
|
||||
strh r0, [r1, 0x4]
|
||||
adds r0, r5, 0x1
|
||||
strh r0, [r1, 0x6]
|
||||
add r0, sp, 0x28
|
||||
movs r1, 0
|
||||
movs r2, 0x8
|
||||
bl memset
|
||||
add r2, sp, 0x18
|
||||
mov r10, r2
|
||||
mov r0, sp
|
||||
mov r1, r10
|
||||
movs r2, 0x18
|
||||
bl memcpy
|
||||
ldr r0, [r4]
|
||||
ldr r0, [r0, 0x30]
|
||||
str r0, [sp, 0x30]
|
||||
add r0, sp, 0x34
|
||||
strh r6, [r0]
|
||||
add r1, sp, 0x38
|
||||
ldr r0, _080BE9CC @ =gUnknown_8E9CB9C
|
||||
str r0, [sp, 0x38]
|
||||
adds r0, r6, 0x1
|
||||
strh r0, [r1, 0x4]
|
||||
add r0, sp, 0x40
|
||||
movs r1, 0
|
||||
movs r2, 0x8
|
||||
bl memset
|
||||
add r4, sp, 0x30
|
||||
mov r0, r10
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x18
|
||||
bl memcpy
|
||||
strh r5, [r4]
|
||||
strh r6, [r4, 0x2]
|
||||
ldr r0, _080BE9D0 @ =gUnknown_83EE830
|
||||
str r0, [r4, 0x4]
|
||||
ldr r0, _080BE9D4 @ =gUnknown_83EE8C8
|
||||
str r0, [r4, 0x8]
|
||||
str r7, [r4, 0xC]
|
||||
ldr r0, _080BE9D8 @ =gDummySpriteAffineAnimTable
|
||||
str r0, [r4, 0x10]
|
||||
ldr r0, _080BE9DC @ =nullsub_62
|
||||
str r0, [r4, 0x14]
|
||||
mov r0, sp
|
||||
bl LoadSpriteSheets
|
||||
mov r0, r10
|
||||
bl LoadSpritePalettes
|
||||
movs r5, 0
|
||||
mov r3, r8
|
||||
lsls r3, 16
|
||||
mov r8, r3
|
||||
movs r0, 0x80
|
||||
lsls r0, 14
|
||||
add r0, r8
|
||||
mov r10, r0
|
||||
mov r1, r8
|
||||
str r1, [sp, 0x48]
|
||||
mov r2, r9
|
||||
lsls r2, 16
|
||||
mov r9, r2
|
||||
movs r7, 0x80
|
||||
lsls r7, 14
|
||||
add r7, r9
|
||||
mov r3, r9
|
||||
str r3, [sp, 0x4C]
|
||||
_080BE8A4:
|
||||
adds r0, r4, 0
|
||||
mov r2, r10
|
||||
asrs r1, r2, 16
|
||||
asrs r2, r7, 16
|
||||
movs r3, 0x1
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
cmp r3, 0x40
|
||||
bne _080BE8BC
|
||||
b _080BEA48
|
||||
_080BE8BC:
|
||||
ldr r6, _080BE9C4 @ =gUnknown_20399C0
|
||||
ldr r2, [r6]
|
||||
lsls r0, r5, 2
|
||||
adds r2, 0xC
|
||||
adds r2, r0
|
||||
lsls r0, r3, 4
|
||||
adds r0, r3
|
||||
lsls r0, 2
|
||||
ldr r1, _080BE9E0 @ =gSprites
|
||||
adds r0, r1
|
||||
str r0, [r2]
|
||||
lsls r1, r5, 24
|
||||
lsrs r1, 24
|
||||
bl StartSpriteAnim
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r5, r0, 16
|
||||
cmp r5, 0x1
|
||||
bls _080BE8A4
|
||||
ldr r0, [r6]
|
||||
ldr r1, [r0, 0x10]
|
||||
ldr r3, [sp, 0x4C]
|
||||
asrs r0, r3, 16
|
||||
adds r0, 0x60
|
||||
strh r0, [r1, 0x22]
|
||||
ldrh r0, [r4]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4]
|
||||
ldrh r0, [r4, 0x2]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x2]
|
||||
ldr r0, _080BE9E4 @ =gUnknown_83EE890
|
||||
str r0, [r4, 0x8]
|
||||
ldr r0, _080BE9E8 @ =sub_80BEA8C
|
||||
str r0, [r4, 0x14]
|
||||
ldr r0, _080BE9EC @ =gUnknown_83EE838
|
||||
str r0, [r4, 0x4]
|
||||
movs r5, 0
|
||||
ldr r0, [sp, 0x48]
|
||||
movs r1, 0x80
|
||||
lsls r1, 14
|
||||
adds r0, r1
|
||||
mov r9, r0
|
||||
_080BE914:
|
||||
lsls r2, r5, 4
|
||||
adds r2, 0x10
|
||||
ldr r3, [sp, 0x4C]
|
||||
asrs r3, 16
|
||||
mov r8, r3
|
||||
add r2, r8
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
adds r0, r4, 0
|
||||
mov r3, r9
|
||||
asrs r1, r3, 16
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
cmp r3, 0x40
|
||||
bne _080BE93A
|
||||
b _080BEA58
|
||||
_080BE93A:
|
||||
ldr r6, _080BE9C4 @ =gUnknown_20399C0
|
||||
ldr r1, [r6]
|
||||
lsls r0, r5, 2
|
||||
adds r1, 0x14
|
||||
adds r1, r0
|
||||
lsls r0, r3, 4
|
||||
adds r0, r3
|
||||
lsls r0, 2
|
||||
ldr r7, _080BE9E0 @ =gSprites
|
||||
adds r0, r7
|
||||
str r0, [r1]
|
||||
strh r5, [r0, 0x2E]
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r5, r0, 16
|
||||
cmp r5, 0x3
|
||||
bls _080BE914
|
||||
ldr r0, _080BE9F0 @ =SpriteCallbackDummy
|
||||
str r0, [r4, 0x14]
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
cmp r3, 0x40
|
||||
beq _080BE9F4
|
||||
ldr r0, [r6]
|
||||
lsls r1, r3, 4
|
||||
adds r1, r3
|
||||
lsls r1, 2
|
||||
adds r1, r7
|
||||
str r1, [r0, 0x28]
|
||||
ldrb r3, [r1, 0x1]
|
||||
movs r2, 0x3F
|
||||
adds r0, r2, 0
|
||||
ands r0, r3
|
||||
strb r0, [r1, 0x1]
|
||||
ldr r0, [r6]
|
||||
ldr r1, [r0, 0x28]
|
||||
ldrb r0, [r1, 0x3]
|
||||
ands r2, r0
|
||||
movs r0, 0x80
|
||||
orrs r2, r0
|
||||
strb r2, [r1, 0x3]
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x28]
|
||||
movs r1, 0x9
|
||||
bl StartSpriteAnim
|
||||
ldr r1, [r6]
|
||||
ldr r2, [r1, 0x28]
|
||||
ldr r3, [sp, 0x48]
|
||||
asrs r0, r3, 16
|
||||
adds r0, 0x20
|
||||
strh r0, [r2, 0x20]
|
||||
ldr r2, [r1, 0x28]
|
||||
mov r0, r8
|
||||
adds r0, 0x50
|
||||
strh r0, [r2, 0x22]
|
||||
ldr r0, [r1, 0x28]
|
||||
movs r1, 0x1
|
||||
movs r2, 0x2
|
||||
movs r3, 0
|
||||
bl CalcCenterToCornerVec
|
||||
b _080BE9FA
|
||||
.align 2, 0
|
||||
_080BE9C4: .4byte gUnknown_20399C0
|
||||
_080BE9C8: .4byte gUnknown_8E9CBBC
|
||||
_080BE9CC: .4byte gUnknown_8E9CB9C
|
||||
_080BE9D0: .4byte gUnknown_83EE830
|
||||
_080BE9D4: .4byte gUnknown_83EE8C8
|
||||
_080BE9D8: .4byte gDummySpriteAffineAnimTable
|
||||
_080BE9DC: .4byte nullsub_62
|
||||
_080BE9E0: .4byte gSprites
|
||||
_080BE9E4: .4byte gUnknown_83EE890
|
||||
_080BE9E8: .4byte sub_80BEA8C
|
||||
_080BE9EC: .4byte gUnknown_83EE838
|
||||
_080BE9F0: .4byte SpriteCallbackDummy
|
||||
_080BE9F4:
|
||||
ldr r1, [r6]
|
||||
movs r0, 0
|
||||
str r0, [r1, 0x28]
|
||||
_080BE9FA:
|
||||
ldr r0, _080BEA3C @ =sub_80BEAC8
|
||||
str r0, [r4, 0x14]
|
||||
ldr r0, [sp, 0x48]
|
||||
movs r2, 0xC0
|
||||
lsls r2, 12
|
||||
adds r1, r0, r2
|
||||
asrs r1, 16
|
||||
adds r0, r4, 0
|
||||
movs r2, 0
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
cmp r3, 0x40
|
||||
beq _080BEA6C
|
||||
ldr r0, _080BEA40 @ =gUnknown_20399C0
|
||||
ldr r2, [r0]
|
||||
lsls r1, r3, 4
|
||||
adds r1, r3
|
||||
lsls r1, 2
|
||||
ldr r0, _080BEA44 @ =gSprites
|
||||
adds r1, r0
|
||||
str r1, [r2, 0x24]
|
||||
ldr r3, [sp, 0x4C]
|
||||
asrs r0, r3, 16
|
||||
adds r0, 0x10
|
||||
strh r0, [r1, 0x2E]
|
||||
ldr r0, [r2, 0x24]
|
||||
movs r1, 0x8
|
||||
bl StartSpriteAnim
|
||||
b _080BEA74
|
||||
.align 2, 0
|
||||
_080BEA3C: .4byte sub_80BEAC8
|
||||
_080BEA40: .4byte gUnknown_20399C0
|
||||
_080BEA44: .4byte gSprites
|
||||
_080BEA48:
|
||||
ldr r0, _080BEA54 @ =gUnknown_20399C0
|
||||
ldr r0, [r0]
|
||||
lsls r1, r5, 2
|
||||
adds r0, 0xC
|
||||
b _080BEA60
|
||||
.align 2, 0
|
||||
_080BEA54: .4byte gUnknown_20399C0
|
||||
_080BEA58:
|
||||
ldr r0, _080BEA68 @ =gUnknown_20399C0
|
||||
ldr r0, [r0]
|
||||
lsls r1, r5, 2
|
||||
adds r0, 0x14
|
||||
_080BEA60:
|
||||
adds r0, r1
|
||||
movs r1, 0
|
||||
str r1, [r0]
|
||||
b _080BEA74
|
||||
.align 2, 0
|
||||
_080BEA68: .4byte gUnknown_20399C0
|
||||
_080BEA6C:
|
||||
ldr r0, _080BEA84 @ =gUnknown_20399C0
|
||||
ldr r1, [r0]
|
||||
movs r0, 0
|
||||
str r0, [r1, 0x24]
|
||||
_080BEA74:
|
||||
add sp, 0x50
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BEA84: .4byte gUnknown_20399C0
|
||||
thumb_func_end sub_80BE7CC
|
||||
|
||||
thumb_func_start nullsub_62
|
||||
nullsub_62: @ 80BEA88
|
||||
bx lr
|
||||
thumb_func_end nullsub_62
|
||||
|
||||
thumb_func_start sub_80BEA8C
|
||||
sub_80BEA8C: @ 80BEA8C
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
ldr r0, _080BEAB4 @ =gUnknown_20399C0
|
||||
ldr r0, [r0]
|
||||
movs r3, 0x2E
|
||||
ldrsh r1, [r2, r3]
|
||||
adds r0, 0x6
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _080BEAB8
|
||||
lsls r1, 1
|
||||
adds r1, 0x1
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
adds r0, r2, 0
|
||||
bl StartSpriteAnim
|
||||
b _080BEAC2
|
||||
.align 2, 0
|
||||
_080BEAB4: .4byte gUnknown_20399C0
|
||||
_080BEAB8:
|
||||
lsls r1, 25
|
||||
lsrs r1, 24
|
||||
adds r0, r2, 0
|
||||
bl StartSpriteAnim
|
||||
_080BEAC2:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_80BEA8C
|
||||
|
||||
thumb_func_start sub_80BEAC8
|
||||
sub_80BEAC8: @ 80BEAC8
|
||||
ldr r1, _080BEADC @ =gUnknown_20399C0
|
||||
ldr r1, [r1]
|
||||
ldrb r1, [r1, 0x5]
|
||||
lsls r1, 24
|
||||
asrs r1, 24
|
||||
lsls r1, 4
|
||||
ldrh r2, [r0, 0x2E]
|
||||
adds r1, r2
|
||||
strh r1, [r0, 0x22]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_080BEADC: .4byte gUnknown_20399C0
|
||||
thumb_func_end sub_80BEAC8
|
||||
|
||||
thumb_func_start sub_80BEAE0
|
||||
sub_80BEAE0: @ 80BEAE0
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
cmp r2, 0
|
||||
bne _080BEAF0
|
||||
ldr r2, _080BEAFC @ =gUnknown_83EE008
|
||||
_080BEAF0:
|
||||
movs r3, 0x10
|
||||
bl sub_80BEB20
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080BEAFC: .4byte gUnknown_83EE008
|
||||
thumb_func_end sub_80BEAE0
|
||||
|
||||
thumb_func_start sub_80BEB00
|
||||
sub_80BEB00: @ 80BEB00
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
cmp r2, 0
|
||||
bne _080BEB10
|
||||
ldr r2, _080BEB1C @ =gUnknown_83EE008
|
||||
_080BEB10:
|
||||
movs r3, 0x1
|
||||
bl sub_80BEB20
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080BEB1C: .4byte gUnknown_83EE008
|
||||
thumb_func_end sub_80BEB00
|
||||
|
||||
thumb_func_start sub_80BEB20
|
||||
sub_80BEB20: @ 80BEB20
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
sub sp, 0x28
|
||||
lsls r0, 16
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
ldr r4, _080BEB9C @ =gUnknown_83EE028
|
||||
str r4, [sp, 0x18]
|
||||
movs r4, 0x80
|
||||
add r5, sp, 0x18
|
||||
lsrs r6, r0, 16
|
||||
orrs r0, r4
|
||||
str r0, [r5, 0x4]
|
||||
str r2, [sp, 0x20]
|
||||
ldr r0, _080BEBA0 @ =0xffff0000
|
||||
mov r8, r0
|
||||
add r4, sp, 0x20
|
||||
ldr r0, [r4, 0x4]
|
||||
mov r2, r8
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
str r0, [r4, 0x4]
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
strh r6, [r0]
|
||||
strh r1, [r0, 0x2]
|
||||
ldr r0, _080BEBA4 @ =gUnknown_83EE8D0
|
||||
str r0, [sp, 0x4]
|
||||
ldr r0, _080BEBA8 @ =gUnknown_83EE958
|
||||
str r0, [sp, 0x8]
|
||||
str r2, [sp, 0xC]
|
||||
ldr r0, _080BEBAC @ =gDummySpriteAffineAnimTable
|
||||
str r0, [sp, 0x10]
|
||||
ldr r0, _080BEBB0 @ =nullsub_62
|
||||
str r0, [sp, 0x14]
|
||||
lsls r3, 23
|
||||
lsrs r3, 16
|
||||
ldr r0, [r5, 0x4]
|
||||
mov r1, r8
|
||||
ands r0, r1
|
||||
orrs r0, r3
|
||||
str r0, [r5, 0x4]
|
||||
adds r0, r5, 0
|
||||
bl LoadSpriteSheet
|
||||
adds r0, r4, 0
|
||||
bl LoadSpritePalette
|
||||
mov r0, sp
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r1, r0, 24
|
||||
cmp r1, 0x40
|
||||
bne _080BEBB4
|
||||
movs r0, 0
|
||||
b _080BEBBE
|
||||
.align 2, 0
|
||||
_080BEB9C: .4byte gUnknown_83EE028
|
||||
_080BEBA0: .4byte 0xffff0000
|
||||
_080BEBA4: .4byte gUnknown_83EE8D0
|
||||
_080BEBA8: .4byte gUnknown_83EE958
|
||||
_080BEBAC: .4byte gDummySpriteAffineAnimTable
|
||||
_080BEBB0: .4byte nullsub_62
|
||||
_080BEBB4:
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
ldr r1, _080BEBCC @ =gSprites
|
||||
adds r0, r1
|
||||
_080BEBBE:
|
||||
add sp, 0x28
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080BEBCC: .4byte gSprites
|
||||
thumb_func_end sub_80BEB20
|
||||
|
||||
thumb_func_start sub_80BEBD0
|
||||
sub_80BEBD0: @ 80BEBD0
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 17
|
||||
ldr r2, _080BEBE8 @ =gUnknown_83EE028
|
||||
adds r0, r2
|
||||
movs r2, 0x80
|
||||
movs r3, 0x1
|
||||
bl RequestDma3Copy
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BEBE8: .4byte gUnknown_83EE028
|
||||
thumb_func_end sub_80BEBD0
|
||||
|
||||
.section ewram_data
|
||||
.align 2, 0
|
||||
gUnknown_20399C0:
|
||||
.4byte 0
|
||||
|
||||
.text
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
+2
-2
@@ -16209,10 +16209,10 @@ gUnknown_8E9CAEC:: @ 8E9CAEC
|
||||
.incbin "baserom.gba", 0xE9CAEC, 0xB0
|
||||
|
||||
gUnknown_8E9CB9C:: @ 8E9CB9C
|
||||
.incbin "baserom.gba", 0xE9CB9C, 0x20 @UNKNOWN
|
||||
.incbin "graphics/misc/markings2.gbapal"
|
||||
|
||||
gUnknown_8E9CBBC:: @ 8E9CBBC
|
||||
.incbin "baserom.gba", 0xE9CBBC, 0x320 @UNKNOWN
|
||||
.incbin "graphics/misc/markings2.4bpp"
|
||||
|
||||
gTradeMenu_Pal:: @ 8E9CEDC
|
||||
.incbin "graphics/trade/menu.gbapal"
|
||||
|
||||
@@ -1,171 +0,0 @@
|
||||
#include "constants/maps.h"
|
||||
#include "constants/species.h"
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.section .rodata
|
||||
.align 2
|
||||
|
||||
gUnknown_83EE008:: @ 83EE008 gbapal
|
||||
.incbin "graphics/misc/mon_markings.gbapal"
|
||||
|
||||
gUnknown_83EE028:: @ 83EE028 4bpp
|
||||
.incbin "graphics/misc/mon_markings.4bpp"
|
||||
|
||||
gUnknown_83EE828:: @ 83EE828
|
||||
.4byte 0x02135009, 0x000000ff
|
||||
|
||||
gUnknown_83EE830:: @ 83EE830 oamdata
|
||||
.4byte 0xc0000000, 0x00000000
|
||||
|
||||
gUnknown_83EE838:: @ 83EE838 oamdata
|
||||
.4byte 0x00000000, 0x00000000
|
||||
|
||||
gAnimCmd_83EE840::
|
||||
obj_image_anim_frame 0x0, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE848::
|
||||
obj_image_anim_frame 0x1, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE850::
|
||||
obj_image_anim_frame 0x2, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE858::
|
||||
obj_image_anim_frame 0x3, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE860::
|
||||
obj_image_anim_frame 0x4, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE868::
|
||||
obj_image_anim_frame 0x5, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE870::
|
||||
obj_image_anim_frame 0x6, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE878::
|
||||
obj_image_anim_frame 0x7, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE880::
|
||||
obj_image_anim_frame 0x8, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE888::
|
||||
obj_image_anim_frame 0x9, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83EE890:: @ 83EE890 animcmd
|
||||
.4byte gAnimCmd_83EE840
|
||||
.4byte gAnimCmd_83EE848
|
||||
.4byte gAnimCmd_83EE850
|
||||
.4byte gAnimCmd_83EE858
|
||||
.4byte gAnimCmd_83EE860
|
||||
.4byte gAnimCmd_83EE868
|
||||
.4byte gAnimCmd_83EE870
|
||||
.4byte gAnimCmd_83EE878
|
||||
.4byte gAnimCmd_83EE880
|
||||
.4byte gAnimCmd_83EE888
|
||||
|
||||
gAnimCmd_83EE8B8::
|
||||
obj_image_anim_frame 0x0, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE8C0::
|
||||
obj_image_anim_frame 0x40, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83EE8C8:: @ 83EE8C8 animcmd
|
||||
.4byte gAnimCmd_83EE8B8
|
||||
.4byte gAnimCmd_83EE8C0
|
||||
|
||||
gUnknown_83EE8D0:: @ 83EE8D0 oamdata
|
||||
.4byte 0x40004000, 0x00000000
|
||||
|
||||
gAnimCmd_83EE8D8::
|
||||
obj_image_anim_frame 0x0, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE8E0::
|
||||
obj_image_anim_frame 0x4, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE8E8::
|
||||
obj_image_anim_frame 0x8, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE8F0::
|
||||
obj_image_anim_frame 0xc, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE8F8::
|
||||
obj_image_anim_frame 0x10, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE900::
|
||||
obj_image_anim_frame 0x14, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE908::
|
||||
obj_image_anim_frame 0x18, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE910::
|
||||
obj_image_anim_frame 0x1c, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE918::
|
||||
obj_image_anim_frame 0x20, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE920::
|
||||
obj_image_anim_frame 0x24, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE928::
|
||||
obj_image_anim_frame 0x28, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE930::
|
||||
obj_image_anim_frame 0x2c, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE938::
|
||||
obj_image_anim_frame 0x30, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE940::
|
||||
obj_image_anim_frame 0x34, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE948::
|
||||
obj_image_anim_frame 0x38, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gAnimCmd_83EE950::
|
||||
obj_image_anim_frame 0x3c, 5
|
||||
obj_image_anim_end
|
||||
|
||||
gUnknown_83EE958:: @ 83EE958 animcmd
|
||||
.4byte gAnimCmd_83EE8D8
|
||||
.4byte gAnimCmd_83EE8E0
|
||||
.4byte gAnimCmd_83EE8E8
|
||||
.4byte gAnimCmd_83EE8F0
|
||||
.4byte gAnimCmd_83EE8F8
|
||||
.4byte gAnimCmd_83EE900
|
||||
.4byte gAnimCmd_83EE908
|
||||
.4byte gAnimCmd_83EE910
|
||||
.4byte gAnimCmd_83EE918
|
||||
.4byte gAnimCmd_83EE920
|
||||
.4byte gAnimCmd_83EE928
|
||||
.4byte gAnimCmd_83EE930
|
||||
.4byte gAnimCmd_83EE938
|
||||
.4byte gAnimCmd_83EE940
|
||||
.4byte gAnimCmd_83EE948
|
||||
.4byte gAnimCmd_83EE950
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 362 B |
@@ -102,6 +102,9 @@ graphics/pokenav/region_map.8bpp: %.8bpp: %.png
|
||||
$(MISCGFXDIR)/japanese_hof.4bpp: %.4bpp: %.png
|
||||
$(GFX) $< $@ -num_tiles 29
|
||||
|
||||
$(MISCGFXDIR)/markings2.4bpp: %.4bpp: %.png
|
||||
$(GFX) $< $@ -num_tiles 25
|
||||
|
||||
$(INTERFACEGFXDIR)/menu.gbapal: $(INTERFACEGFXDIR)/menu_0.gbapal \
|
||||
$(INTERFACEGFXDIR)/menu_1.gbapal
|
||||
@cat $^ >$@
|
||||
|
||||
@@ -4222,4 +4222,8 @@ extern const u16 gUnknown_8E9E9FC[];
|
||||
extern const u16 gTradeButtons_Gfx[];
|
||||
extern const u16 gTradeMenuMonBox_Tilemap[];
|
||||
|
||||
// mon_markings
|
||||
extern const u16 gUnknown_8E9CBBC[];
|
||||
extern const u16 gUnknown_8E9CB9C[];
|
||||
|
||||
#endif //GUARD_GRAPHICS_H
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
#ifndef GUARD_MON_MARKINGS_H
|
||||
#define GUARD_MON_MARKINGS_H
|
||||
|
||||
struct PokemonMarkMenu
|
||||
{
|
||||
/*0x0000*/ u16 baseTileTag;
|
||||
/*0x0002*/ u16 basePaletteTag;
|
||||
/*0x0004*/ u8 markings; // bit flags
|
||||
/*0x0005*/ s8 cursorPos;
|
||||
/*0x0006*/ bool8 markingsArray[4];
|
||||
/*0x000A*/ u8 cursorBaseY;
|
||||
/*0x000B*/ bool8 spriteSheetLoadRequired;
|
||||
/*0x000C*/ struct Sprite * menuWindowSprites[2]; // upper and lower halves of menu window
|
||||
/*0x0014*/ struct Sprite * menuMarkingSprites[4];
|
||||
/*0x0024*/ struct Sprite * unkSprite;
|
||||
/*0x0028*/ struct Sprite * menuTextSprite;
|
||||
/*0x002C*/ const u8 *frameTiles;
|
||||
/*0x0030*/ const u16 *framePalette;
|
||||
/*0x0034*/ u8 menuWindowSpriteTiles[0x1000];
|
||||
/*0x1034*/ u8 filler1034[0x80];
|
||||
/*0x10B4*/ u8 tileLoadState;
|
||||
}; // 10b8
|
||||
|
||||
#endif //GUARD_MON_MARKINGS_H
|
||||
+2
-2
@@ -175,7 +175,7 @@ SECTIONS {
|
||||
src/battle_intro.o(.text);
|
||||
asm/bike.o(.text);
|
||||
src/easy_chat.o(.text);
|
||||
asm/mon_markings.o(.text);
|
||||
src/mon_markings.o(.text);
|
||||
src/mail.o(.text);
|
||||
src/menu_helpers.o(.text);
|
||||
asm/script_pokemon_util_80BF8FC.o(.text);
|
||||
@@ -461,7 +461,7 @@ SECTIONS {
|
||||
src/battle_intro.o(.rodata);
|
||||
data/bike.o(.rodata);
|
||||
src/easy_chat.o(.rodata);
|
||||
data/mon_markings.o(.rodata);
|
||||
src/mon_markings.o(.rodata);
|
||||
src/mail.o(.rodata);
|
||||
src/heal_location.o(.rodata);
|
||||
data/region_map.o(.rodata);
|
||||
|
||||
@@ -0,0 +1,513 @@
|
||||
#include "global.h"
|
||||
#include "dma3.h"
|
||||
#include "text_window_graphics.h"
|
||||
#include "sound.h"
|
||||
#include "mon_markings.h"
|
||||
#include "graphics.h"
|
||||
#include "constants/songs.h"
|
||||
|
||||
EWRAM_DATA struct PokemonMarkMenu * sMenu = NULL;
|
||||
|
||||
void sub_80BE7CC(s16 x, s16 y, u16 tilesTag, u16 paletteTag);
|
||||
void nullsub_62(struct Sprite * sprite);
|
||||
void sub_80BEA8C(struct Sprite * sprite);
|
||||
void sub_80BEAC8(struct Sprite * sprite);
|
||||
struct Sprite * sub_80BEB20(u16 tilesTag, u16 paletteTag, const u16 *palette, u16 size);
|
||||
|
||||
const u16 gUnknown_83EE008[] = INCBIN_U16("graphics/misc/mon_markings.gbapal");
|
||||
const u16 gUnknown_83EE028[] = INCBIN_U16("graphics/misc/mon_markings.4bpp");
|
||||
const u8 gUnknown_83EE828[] = {0x09, 0x50, 0x13, 0x02, 0xFF};
|
||||
|
||||
const struct OamData gUnknown_83EE830 = {
|
||||
.shape = SPRITE_SHAPE(64x64),
|
||||
.size = SPRITE_SIZE(64x64)
|
||||
};
|
||||
|
||||
const struct OamData gUnknown_83EE838 = {
|
||||
.shape = SPRITE_SHAPE(8x8),
|
||||
.size = SPRITE_SIZE(8x8)
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE840[] = {
|
||||
ANIMCMD_FRAME(0x0, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE848[] = {
|
||||
ANIMCMD_FRAME(0x1, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE850[] = {
|
||||
ANIMCMD_FRAME(0x2, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE858[] = {
|
||||
ANIMCMD_FRAME(0x3, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE860[] = {
|
||||
ANIMCMD_FRAME(0x4, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE868[] = {
|
||||
ANIMCMD_FRAME(0x5, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE870[] = {
|
||||
ANIMCMD_FRAME(0x6, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE878[] = {
|
||||
ANIMCMD_FRAME(0x7, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE880[] = {
|
||||
ANIMCMD_FRAME(0x8, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE888[] = {
|
||||
ANIMCMD_FRAME(0x9, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd *const gUnknown_83EE890[] = {
|
||||
gAnimCmd_83EE840,
|
||||
gAnimCmd_83EE848,
|
||||
gAnimCmd_83EE850,
|
||||
gAnimCmd_83EE858,
|
||||
gAnimCmd_83EE860,
|
||||
gAnimCmd_83EE868,
|
||||
gAnimCmd_83EE870,
|
||||
gAnimCmd_83EE878,
|
||||
gAnimCmd_83EE880,
|
||||
gAnimCmd_83EE888
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE8B8[] = {
|
||||
ANIMCMD_FRAME(0x0, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE8C0[] = {
|
||||
ANIMCMD_FRAME(0x40, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd *const gUnknown_83EE8C8[] = {
|
||||
gAnimCmd_83EE8B8,
|
||||
gAnimCmd_83EE8C0
|
||||
};
|
||||
|
||||
const struct OamData gUnknown_83EE8D0 = {
|
||||
.shape = SPRITE_SHAPE(32x8),
|
||||
.size = SPRITE_SIZE(32x8)
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE8D8[] = {
|
||||
ANIMCMD_FRAME(0x0, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE8E0[] = {
|
||||
ANIMCMD_FRAME(0x4, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE8E8[] = {
|
||||
ANIMCMD_FRAME(0x8, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE8F0[] = {
|
||||
ANIMCMD_FRAME(0xc, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE8F8[] = {
|
||||
ANIMCMD_FRAME(0x10, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE900[] = {
|
||||
ANIMCMD_FRAME(0x14, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE908[] = {
|
||||
ANIMCMD_FRAME(0x18, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE910[] = {
|
||||
ANIMCMD_FRAME(0x1c, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE918[] = {
|
||||
ANIMCMD_FRAME(0x20, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE920[] = {
|
||||
ANIMCMD_FRAME(0x24, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE928[] = {
|
||||
ANIMCMD_FRAME(0x28, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE930[] = {
|
||||
ANIMCMD_FRAME(0x2c, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE938[] = {
|
||||
ANIMCMD_FRAME(0x30, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE940[] = {
|
||||
ANIMCMD_FRAME(0x34, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE948[] = {
|
||||
ANIMCMD_FRAME(0x38, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd gAnimCmd_83EE950[] = {
|
||||
ANIMCMD_FRAME(0x3c, 5),
|
||||
ANIMCMD_END
|
||||
};
|
||||
|
||||
const union AnimCmd *const gUnknown_83EE958[] = {
|
||||
gAnimCmd_83EE8D8,
|
||||
gAnimCmd_83EE8E0,
|
||||
gAnimCmd_83EE8E8,
|
||||
gAnimCmd_83EE8F0,
|
||||
gAnimCmd_83EE8F8,
|
||||
gAnimCmd_83EE900,
|
||||
gAnimCmd_83EE908,
|
||||
gAnimCmd_83EE910,
|
||||
gAnimCmd_83EE918,
|
||||
gAnimCmd_83EE920,
|
||||
gAnimCmd_83EE928,
|
||||
gAnimCmd_83EE930,
|
||||
gAnimCmd_83EE938,
|
||||
gAnimCmd_83EE940,
|
||||
gAnimCmd_83EE948,
|
||||
gAnimCmd_83EE950
|
||||
};
|
||||
|
||||
void sub_80BE46C(struct PokemonMarkMenu * markMenu)
|
||||
{
|
||||
sMenu = markMenu;
|
||||
}
|
||||
|
||||
void sub_80BE478(void)
|
||||
{
|
||||
const struct TextWindowGraphics * frame = GetUserFrameGraphicsInfo(gSaveBlock2Ptr->optionsWindowFrameType);
|
||||
sMenu->frameTiles = frame->tiles;
|
||||
sMenu->framePalette = frame->palette;
|
||||
sMenu->tileLoadState = 0;
|
||||
CpuFill16(0, sMenu->menuWindowSpriteTiles, sizeof(sMenu->menuWindowSpriteTiles));
|
||||
}
|
||||
|
||||
bool8 sub_80BE4C0(void)
|
||||
{
|
||||
u16 i;
|
||||
u8 *menuWindowSpriteTiles = &sMenu->menuWindowSpriteTiles[256 * sMenu->tileLoadState];
|
||||
switch (sMenu->tileLoadState)
|
||||
{
|
||||
case 0:
|
||||
CpuFastCopy(sMenu->frameTiles + 0x00, menuWindowSpriteTiles, 0x20);
|
||||
for (i = 0; i < 6; i++)
|
||||
CpuFastCopy(sMenu->frameTiles + 0x20, menuWindowSpriteTiles + 0x20 * (i + 1), 0x20);
|
||||
CpuFastCopy(sMenu->frameTiles + 0x40, menuWindowSpriteTiles + 0x20 * 7, 0x20);
|
||||
sMenu->tileLoadState++;
|
||||
break;
|
||||
default:
|
||||
CpuFastCopy(sMenu->frameTiles + 0x60, menuWindowSpriteTiles + 0x00, 0x20);
|
||||
for (i = 0; i < 6; i++)
|
||||
CpuFastCopy(sMenu->frameTiles + 0x80, menuWindowSpriteTiles + 0x20 * (i + 1), 0x20);
|
||||
CpuFastCopy(sMenu->frameTiles + 0xA0, menuWindowSpriteTiles + 0x20 * 7, 0x20);
|
||||
sMenu->tileLoadState++;
|
||||
break;
|
||||
case 13:
|
||||
CpuFastCopy(sMenu->frameTiles + 0xC0, menuWindowSpriteTiles + 0x00, 0x20);
|
||||
for (i = 0; i < 6; i++)
|
||||
CpuFastCopy(sMenu->frameTiles + 0xE0, menuWindowSpriteTiles + 0x20 * (i + 1), 0x20);
|
||||
CpuFastCopy(sMenu->frameTiles + 0x100, menuWindowSpriteTiles + 0x20 * 7, 0x20);
|
||||
sMenu->tileLoadState++;
|
||||
return FALSE;
|
||||
case 14:
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_80BE5F0(void)
|
||||
{
|
||||
sub_80BE478();
|
||||
while (sub_80BE4C0())
|
||||
{}
|
||||
}
|
||||
|
||||
void sub_80BE604(u8 markings, s16 x, s16 y)
|
||||
{
|
||||
u16 i;
|
||||
sMenu->cursorPos = 0;
|
||||
sMenu->markings = markings;
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
sMenu->markingsArray[i] = (sMenu->markings >> i) & 1;
|
||||
}
|
||||
sub_80BE7CC(x, y, sMenu->baseTileTag, sMenu->basePaletteTag);;
|
||||
}
|
||||
|
||||
void sub_80BE658(void)
|
||||
{
|
||||
u16 i;
|
||||
for (i = 0; i < 3; i++)
|
||||
FreeSpriteTilesByTag(sMenu->baseTileTag + i);
|
||||
FreeSpritePaletteByTag(sMenu->basePaletteTag);
|
||||
FreeSpritePaletteByTag(sMenu->basePaletteTag + 1);
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
if (sMenu->menuWindowSprites[i] == NULL)
|
||||
return; // break;
|
||||
DestroySprite(sMenu->menuWindowSprites[i]);
|
||||
}
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
if (sMenu->menuMarkingSprites[i] == NULL)
|
||||
return; // break;
|
||||
DestroySprite(sMenu->menuMarkingSprites[i]);
|
||||
}
|
||||
if (sMenu->unkSprite != NULL)
|
||||
DestroySprite(sMenu->unkSprite);
|
||||
if (sMenu->menuTextSprite != NULL)
|
||||
DestroySprite(sMenu->menuTextSprite);
|
||||
}
|
||||
|
||||
bool8 sub_80BE6F0(void)
|
||||
{
|
||||
u16 i;
|
||||
if (JOY_NEW(DPAD_UP))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
if (--sMenu->cursorPos < 0)
|
||||
sMenu->cursorPos = 5;
|
||||
return TRUE;
|
||||
}
|
||||
if (JOY_NEW(DPAD_DOWN))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
if (++sMenu->cursorPos > 5)
|
||||
sMenu->cursorPos = 0;
|
||||
return TRUE;
|
||||
}
|
||||
if (JOY_NEW(A_BUTTON))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
switch (sMenu->cursorPos)
|
||||
{
|
||||
case 4:
|
||||
sMenu->markings = 0;
|
||||
for (i = 0; i < 4; i++)
|
||||
sMenu->markings |= sMenu->markingsArray[i] << i;
|
||||
return FALSE;
|
||||
case 5:
|
||||
return FALSE;
|
||||
}
|
||||
sMenu->markingsArray[sMenu->cursorPos] = sMenu->markingsArray[sMenu->cursorPos] ? FALSE : TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
if (JOY_NEW(B_BUTTON))
|
||||
{
|
||||
PlaySE(SE_SELECT);
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_80BE7CC(s16 x, s16 y, u16 tilesTag, u16 paletteTag)
|
||||
{
|
||||
u16 i;
|
||||
u8 spriteId;
|
||||
struct SpriteSheet sheets[] = {
|
||||
{
|
||||
.data = sMenu->menuWindowSpriteTiles,
|
||||
.size = 0x1000,
|
||||
.tag = tilesTag
|
||||
}, {
|
||||
.data = gUnknown_8E9CBBC,
|
||||
.size = 0x320,
|
||||
.tag = tilesTag + 1
|
||||
}, {}
|
||||
};
|
||||
struct SpritePalette palettes[] = {
|
||||
{
|
||||
.data = sMenu->framePalette,
|
||||
.tag = paletteTag
|
||||
}, {
|
||||
.data = gUnknown_8E9CB9C,
|
||||
.tag = paletteTag + 1
|
||||
}, {}
|
||||
};
|
||||
struct SpriteTemplate sprTemplate = {
|
||||
.tileTag = tilesTag,
|
||||
.paletteTag = paletteTag,
|
||||
.oam = &gUnknown_83EE830,
|
||||
.anims = gUnknown_83EE8C8,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = nullsub_62
|
||||
};
|
||||
LoadSpriteSheets(sheets);
|
||||
LoadSpritePalettes(palettes);
|
||||
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
spriteId = CreateSprite(&sprTemplate, x + 32, y + 32, 1);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
sMenu->menuWindowSprites[i] = &gSprites[spriteId];
|
||||
StartSpriteAnim(&gSprites[spriteId], i);
|
||||
}
|
||||
else
|
||||
{
|
||||
sMenu->menuWindowSprites[i] = NULL;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
sMenu->menuWindowSprites[1]->pos1.y = y + 96;
|
||||
|
||||
sprTemplate.tileTag++;
|
||||
sprTemplate.paletteTag++;
|
||||
sprTemplate.anims = gUnknown_83EE890;
|
||||
sprTemplate.callback = sub_80BEA8C;
|
||||
sprTemplate.oam = &gUnknown_83EE838;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
spriteId = CreateSprite(&sprTemplate, x + 32, y + 16 + 16 * i, 0);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
sMenu->menuMarkingSprites[i] = &gSprites[spriteId];
|
||||
gSprites[spriteId].data[0] = i;
|
||||
}
|
||||
else
|
||||
{
|
||||
sMenu->menuMarkingSprites[i] = NULL;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
sprTemplate.callback = SpriteCallbackDummy;
|
||||
|
||||
spriteId = CreateSprite(&sprTemplate, 0, 0, 0);
|
||||
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
sMenu->menuTextSprite = &gSprites[spriteId];
|
||||
sMenu->menuTextSprite->oam.shape = ST_OAM_SQUARE;
|
||||
sMenu->menuTextSprite->oam.size = 2;
|
||||
StartSpriteAnim(sMenu->menuTextSprite, 9);
|
||||
sMenu->menuTextSprite->pos1.x = x + 32;
|
||||
sMenu->menuTextSprite->pos1.y = y + 80;
|
||||
CalcCenterToCornerVec(sMenu->menuTextSprite, 1, 2, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
sMenu->menuTextSprite = NULL;
|
||||
}
|
||||
|
||||
sprTemplate.callback = sub_80BEAC8;
|
||||
spriteId = CreateSprite(&sprTemplate, x + 12, 0, 0);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
{
|
||||
sMenu->unkSprite = &gSprites[spriteId];
|
||||
sMenu->unkSprite->data[0] = y + 16;
|
||||
StartSpriteAnim(sMenu->unkSprite, 8);
|
||||
}
|
||||
else
|
||||
{
|
||||
sMenu->unkSprite = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void nullsub_62(struct Sprite * sprite)
|
||||
{}
|
||||
|
||||
void sub_80BEA8C(struct Sprite * sprite)
|
||||
{
|
||||
if (sMenu->markingsArray[sprite->data[0]])
|
||||
StartSpriteAnim(sprite, 2 * sprite->data[0] + 1);
|
||||
else
|
||||
StartSpriteAnim(sprite, 2 * sprite->data[0] + 0);
|
||||
}
|
||||
|
||||
void sub_80BEAC8(struct Sprite * sprite)
|
||||
{
|
||||
sprite->pos1.y = 16 * sMenu->cursorPos + sprite->data[0];
|
||||
}
|
||||
|
||||
struct Sprite * sub_80BEAE0(u16 tileTag, u16 paletteTag, const u16 *palette)
|
||||
{
|
||||
if (palette == NULL)
|
||||
palette = gUnknown_83EE008;
|
||||
return sub_80BEB20(tileTag, paletteTag, palette, 16);
|
||||
}
|
||||
|
||||
struct Sprite * sub_80BEB00(u16 tileTag, u16 paletteTag, const u16 *palette)
|
||||
{
|
||||
if (palette == NULL)
|
||||
palette = gUnknown_83EE008;
|
||||
return sub_80BEB20(tileTag, paletteTag, palette, 1);
|
||||
}
|
||||
|
||||
struct Sprite * sub_80BEB20(u16 tileTag, u16 paletteTag, const u16 *palette, u16 size)
|
||||
{
|
||||
u8 spriteId;
|
||||
struct SpriteTemplate sprTemplate;
|
||||
struct SpriteSheet sheet = { gUnknown_83EE028, 0x80, tileTag };
|
||||
struct SpritePalette sprPalette = { palette, paletteTag };
|
||||
|
||||
sprTemplate.tileTag = tileTag;
|
||||
sprTemplate.paletteTag = paletteTag;
|
||||
sprTemplate.oam = &gUnknown_83EE8D0;
|
||||
sprTemplate.anims = gUnknown_83EE958;
|
||||
sprTemplate.images = NULL;
|
||||
sprTemplate.affineAnims = gDummySpriteAffineAnimTable;
|
||||
sprTemplate.callback = nullsub_62;
|
||||
|
||||
sheet.size = size * 0x80;
|
||||
|
||||
LoadSpriteSheet(&sheet);
|
||||
LoadSpritePalette(&sprPalette);
|
||||
|
||||
spriteId = CreateSprite(&sprTemplate, 0, 0, 0);
|
||||
if (spriteId != MAX_SPRITES)
|
||||
return &gSprites[spriteId];
|
||||
else
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void sub_80BEBD0(u8 markings, void * dest)
|
||||
{
|
||||
RequestDma3Copy(&gUnknown_83EE028[64 * markings], dest, 0x80, 1);
|
||||
}
|
||||
|
||||
+1
-1
@@ -371,7 +371,7 @@ gUnknown_203999C: @ 203999C
|
||||
.align 2
|
||||
.include "src/easy_chat.o"
|
||||
.align 2
|
||||
.include "asm/mon_markings.o" @ TODO: Move to src
|
||||
.include "src/mon_markings.o"
|
||||
.align 2
|
||||
.include "src/mail.o"
|
||||
.align 2
|
||||
|
||||
Reference in New Issue
Block a user