Merge branch 'master' into data_dump

This commit is contained in:
ultima-soul
2019-10-15 17:57:54 -07:00
17 changed files with 1780 additions and 944 deletions
+2 -2
View File
@@ -2849,7 +2849,7 @@ _0809EFEC: .4byte gUnknown_83E252C
sub_809EFF0: @ 809EFF0
push {lr}
sub sp, 0xC
bl sub_809707C
bl LoadMonIconPalettes
ldr r0, _0809F038 @ =gUnknown_203998C
ldr r3, [r0]
ldr r1, _0809F03C @ =0x00001e34
@@ -2866,7 +2866,7 @@ sub_809EFF0: @ 809EFF0
str r2, [sp, 0x8]
movs r2, 0x38
movs r3, 0x28
bl sub_8096E18
bl CreateMonIcon
lsls r0, 24
lsrs r0, 24
ldr r2, _0809F048 @ =gSprites
+9 -9
View File
@@ -373,7 +373,7 @@ _0811ED44:
bl sub_8122980
b _0811EDFC
_0811ED4A:
bl sub_809707C
bl LoadMonIconPalettes
b _0811EDFC
_0811ED50:
bl party_menu_add_per_mon_objects
@@ -7206,7 +7206,7 @@ party_menu_link_mon_icon_anim: @ 812224C
lsrs r7, r3, 24
cmp r5, 0
beq _0812229A
ldr r1, _081222A4 @ =sub_809718C
ldr r1, _081222A4 @ =SpriteCB_MonIcon
ldr r0, [r4, 0x4]
ldrb r2, [r0]
ldrb r3, [r0, 0x1]
@@ -7216,7 +7216,7 @@ party_menu_link_mon_icon_anim: @ 812224C
ldr r0, [sp, 0x20]
str r0, [sp, 0x8]
adds r0, r5, 0
bl sub_8096E18
bl CreateMonIcon
strb r0, [r4, 0x9]
ldr r2, _081222A8 @ =gSprites
ldrb r0, [r4, 0x9]
@@ -7240,7 +7240,7 @@ _0812229A:
pop {r0}
bx r0
.align 2, 0
_081222A4: .4byte sub_809718C
_081222A4: .4byte SpriteCB_MonIcon
_081222A8: .4byte gSprites
thumb_func_end party_menu_link_mon_icon_anim
@@ -7276,7 +7276,7 @@ _081222D4:
ldr r1, _081222F0 @ =gSprites
adds r0, r1
movs r1, 0
bl sub_8097414
bl MonIcon_SetAnim
b _0812234C
.align 2, 0
_081222F0: .4byte gSprites
@@ -7287,7 +7287,7 @@ _081222F4:
ldr r1, _08122308 @ =gSprites
adds r0, r1
movs r1, 0x1
bl sub_8097414
bl MonIcon_SetAnim
b _0812234C
.align 2, 0
_08122308: .4byte gSprites
@@ -7298,7 +7298,7 @@ _0812230C:
ldr r1, _08122320 @ =gSprites
adds r0, r1
movs r1, 0x2
bl sub_8097414
bl MonIcon_SetAnim
b _0812234C
.align 2, 0
_08122320: .4byte gSprites
@@ -7309,7 +7309,7 @@ _08122324:
ldr r1, _08122338 @ =gSprites
adds r0, r1
movs r1, 0x3
bl sub_8097414
bl MonIcon_SetAnim
b _0812234C
.align 2, 0
_08122338: .4byte gSprites
@@ -7320,7 +7320,7 @@ _0812233C:
ldr r1, _08122354 @ =gSprites
adds r0, r1
movs r1, 0x4
bl sub_8097414
bl MonIcon_SetAnim
_0812234C:
pop {r4}
pop {r0}
-848
View File
@@ -1,848 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_8096E18
sub_8096E18: @ 8096E18
push {r4-r7,lr}
mov r7, r9
mov r6, r8
push {r6,r7}
sub sp, 0x30
adds r4, r0, 0
adds r6, r1, 0
ldr r0, [sp, 0x4C]
ldr r1, [sp, 0x50]
ldr r5, [sp, 0x54]
lsls r4, 16
lsrs r4, 16
lsls r2, 16
lsrs r2, 16
mov r8, r2
lsls r3, 16
lsrs r7, r3, 16
lsls r0, 24
lsrs r0, 24
mov r9, r0
ldr r0, _08096EB4 @ =gUnknown_83D4068
str r0, [sp, 0x18]
adds r0, r4, 0
adds r2, r5, 0
bl GetMonIconPtr
str r0, [sp, 0x1C]
ldr r0, _08096EB8 @ =gUnknown_83D40AC
str r0, [sp, 0x20]
ldr r0, _08096EBC @ =gUnknown_83D40E0
str r0, [sp, 0x24]
str r6, [sp, 0x28]
ldr r0, _08096EC0 @ =gUnknown_83D3E80
adds r0, r4, r0
ldr r1, _08096EC4 @ =0x0000dac0
adds r5, r1, 0
ldrb r0, [r0]
adds r1, r5, r0
add r0, sp, 0x2C
strh r1, [r0]
add r1, sp, 0x18
mov r0, sp
movs r2, 0x18
bl memcpy
movs r0, 0xCE
lsls r0, 1
cmp r4, r0
bls _08096E7E
mov r0, sp
strh r5, [r0, 0x14]
_08096E7E:
mov r0, r8
lsls r1, r0, 16
asrs r1, 16
lsls r2, r7, 16
asrs r2, 16
mov r0, sp
mov r3, r9
bl CreateMonIconSprite
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
lsls r0, r4, 4
adds r0, r4
lsls r0, 2
ldr r1, _08096EC8 @ =gSprites
adds r0, r1
bl UpdateMonIconFrame
adds r0, r4, 0
add sp, 0x30
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r7}
pop {r1}
bx r1
.align 2, 0
_08096EB4: .4byte gUnknown_83D4068
_08096EB8: .4byte gUnknown_83D40AC
_08096EBC: .4byte gUnknown_83D40E0
_08096EC0: .4byte gUnknown_83D3E80
_08096EC4: .4byte 0x0000dac0
_08096EC8: .4byte gSprites
thumb_func_end sub_8096E18
thumb_func_start sub_8096ECC
sub_8096ECC: @ 8096ECC
push {r4-r7,lr}
sub sp, 0x18
adds r4, r2, 0
adds r5, r3, 0
ldr r6, [sp, 0x2C]
lsls r0, 16
lsrs r0, 16
lsls r4, 16
lsrs r4, 16
lsls r5, 16
lsrs r5, 16
lsls r6, 24
lsrs r6, 24
mov r3, sp
ldr r2, _08096F44 @ =gUnknown_83D4068
str r2, [sp]
movs r2, 0
str r2, [sp, 0x4]
ldr r2, _08096F48 @ =gUnknown_83D40AC
str r2, [sp, 0x8]
ldr r2, _08096F4C @ =gUnknown_83D40E0
str r2, [sp, 0xC]
str r1, [sp, 0x10]
ldr r2, _08096F50 @ =gUnknown_83D3E80
adds r2, r0, r2
ldr r7, _08096F54 @ =0x0000dac0
adds r1, r7, 0
ldrb r2, [r2]
adds r1, r2
strh r1, [r3, 0x14]
ldr r1, [sp, 0x30]
bl sub_8097028
str r0, [sp, 0x4]
lsls r4, 16
asrs r4, 16
lsls r5, 16
asrs r5, 16
mov r0, sp
adds r1, r4, 0
adds r2, r5, 0
adds r3, r6, 0
bl CreateMonIconSprite
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
lsls r0, r4, 4
adds r0, r4
lsls r0, 2
ldr r1, _08096F58 @ =gSprites
adds r0, r1
bl UpdateMonIconFrame
adds r0, r4, 0
add sp, 0x18
pop {r4-r7}
pop {r1}
bx r1
.align 2, 0
_08096F44: .4byte gUnknown_83D4068
_08096F48: .4byte gUnknown_83D40AC
_08096F4C: .4byte gUnknown_83D40E0
_08096F50: .4byte gUnknown_83D3E80
_08096F54: .4byte 0x0000dac0
_08096F58: .4byte gSprites
thumb_func_end sub_8096ECC
thumb_func_start mon_icon_convert_unown_species_id
mon_icon_convert_unown_species_id: @ 8096F5C
push {lr}
lsls r0, 16
lsrs r2, r0, 16
cmp r2, 0xC9
bne _08096F86
adds r0, r1, 0
bl GetUnownLetterByPersonality
lsls r0, 16
lsrs r0, 16
cmp r0, 0
bne _08096F78
movs r0, 0xC9
b _08096F82
_08096F78:
movs r1, 0xCE
lsls r1, 1
adds r0, r1
lsls r0, 16
lsrs r0, 16
_08096F82:
adds r1, r0, 0
b _08096F92
_08096F86:
movs r0, 0xCE
lsls r0, 1
adds r1, r2, 0
cmp r1, r0
bls _08096F92
movs r1, 0
_08096F92:
adds r0, r1, 0
pop {r1}
bx r1
thumb_func_end mon_icon_convert_unown_species_id
thumb_func_start GetUnownLetterByPersonality
GetUnownLetterByPersonality: @ 8096F98
push {lr}
adds r2, r0, 0
cmp r2, 0
beq _08096FCE
movs r0, 0xC0
lsls r0, 18
ands r0, r2
lsrs r0, 18
movs r1, 0xC0
lsls r1, 10
ands r1, r2
lsrs r1, 12
orrs r0, r1
movs r1, 0xC0
lsls r1, 2
ands r1, r2
lsrs r1, 6
orrs r0, r1
movs r1, 0x3
ands r1, r2
orrs r0, r1
movs r1, 0x1C
bl __umodsi3
lsls r0, 16
lsrs r0, 16
b _08096FD0
_08096FCE:
movs r0, 0
_08096FD0:
pop {r1}
bx r1
thumb_func_end GetUnownLetterByPersonality
thumb_func_start sub_8096FD4
sub_8096FD4: @ 8096FD4
push {r4,lr}
sub sp, 0x4
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
mov r1, sp
bl MailSpeciesToSpecies
lsls r0, 16
lsrs r0, 16
cmp r0, 0xC9
bne _0809700A
mov r0, sp
ldrh r0, [r0]
cmp r0, 0
bne _08096FFA
mov r1, sp
adds r0, 0xC9
b _08097002
_08096FFA:
mov r1, sp
movs r2, 0xCE
lsls r2, 1
adds r0, r2
_08097002:
strh r0, [r1]
mov r0, sp
ldrh r0, [r0]
b _08097020
_0809700A:
movs r0, 0xCE
lsls r0, 1
cmp r4, r0
bls _08097014
movs r4, 0
_08097014:
adds r0, r4, 0
movs r1, 0
bl mon_icon_convert_unown_species_id
lsls r0, 16
lsrs r0, 16
_08097020:
add sp, 0x4
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_8096FD4
thumb_func_start sub_8097028
sub_8097028: @ 8097028
push {lr}
adds r3, r1, 0
lsls r0, 16
lsrs r0, 16
ldr r2, _08097050 @ =gUnknown_83D37A0
lsls r1, r0, 2
adds r1, r2
ldr r2, [r1]
movs r1, 0xCD
lsls r1, 1
cmp r0, r1
bne _0809704A
cmp r3, 0x1
bne _0809704A
movs r0, 0x80
lsls r0, 3
adds r2, r0
_0809704A:
adds r0, r2, 0
pop {r1}
bx r1
.align 2, 0
_08097050: .4byte gUnknown_83D37A0
thumb_func_end sub_8097028
thumb_func_start GetMonIconPtr
GetMonIconPtr: @ 8097054
push {r4,lr}
adds r4, r2, 0
lsls r0, 16
lsrs r0, 16
bl mon_icon_convert_unown_species_id
lsls r0, 16
lsrs r0, 16
adds r1, r4, 0
bl sub_8097028
pop {r4}
pop {r1}
bx r1
thumb_func_end GetMonIconPtr
thumb_func_start sub_8097070
sub_8097070: @ 8097070
push {lr}
bl sub_80973D8
pop {r0}
bx r0
thumb_func_end sub_8097070
thumb_func_start sub_809707C
sub_809707C: @ 809707C
push {r4,r5,lr}
movs r4, 0
ldr r5, _0809709C @ =gUnknown_83D4038
_08097082:
lsls r0, r4, 3
adds r0, r5
bl LoadSpritePalette
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x5
bls _08097082
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0809709C: .4byte gUnknown_83D4038
thumb_func_end sub_809707C
thumb_func_start SafeLoadMonIconPalette
SafeLoadMonIconPalette: @ 80970A0
push {r4,lr}
lsls r0, 16
lsrs r1, r0, 16
movs r0, 0xCE
lsls r0, 1
cmp r1, r0
bls _080970B0
movs r1, 0
_080970B0:
ldr r0, _080970D8 @ =gUnknown_83D3E80
adds r0, r1, r0
ldrb r0, [r0]
ldr r1, _080970DC @ =gUnknown_83D4038
lsls r0, 3
adds r4, r0, r1
ldrh r0, [r4, 0x4]
bl IndexOfSpritePaletteTag
lsls r0, 24
lsrs r0, 24
cmp r0, 0xFF
bne _080970D0
adds r0, r4, 0
bl LoadSpritePalette
_080970D0:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_080970D8: .4byte gUnknown_83D3E80
_080970DC: .4byte gUnknown_83D4038
thumb_func_end SafeLoadMonIconPalette
thumb_func_start sub_80970E0
sub_80970E0: @ 80970E0
push {r4,lr}
lsls r0, 16
lsrs r0, 16
ldr r1, _0809710C @ =gUnknown_83D3E80
adds r0, r1
ldrb r0, [r0]
ldr r1, _08097110 @ =gUnknown_83D4038
lsls r0, 3
adds r4, r0, r1
ldrh r0, [r4, 0x4]
bl IndexOfSpritePaletteTag
lsls r0, 24
lsrs r0, 24
cmp r0, 0xFF
bne _08097106
adds r0, r4, 0
bl LoadSpritePalette
_08097106:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0809710C: .4byte gUnknown_83D3E80
_08097110: .4byte gUnknown_83D4038
thumb_func_end sub_80970E0
thumb_func_start FreeMonIconPalettes
FreeMonIconPalettes: @ 8097114
push {r4,r5,lr}
movs r4, 0
ldr r5, _08097134 @ =gUnknown_83D4038
_0809711A:
lsls r0, r4, 3
adds r0, r5
ldrh r0, [r0, 0x4]
bl FreeSpritePaletteByTag
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x5
bls _0809711A
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_08097134: .4byte gUnknown_83D4038
thumb_func_end FreeMonIconPalettes
thumb_func_start sub_8097138
sub_8097138: @ 8097138
push {lr}
lsls r0, 16
lsrs r1, r0, 16
movs r0, 0xCE
lsls r0, 1
cmp r1, r0
bls _08097148
movs r1, 0
_08097148:
ldr r0, _08097160 @ =gUnknown_83D3E80
adds r0, r1, r0
ldrb r0, [r0]
ldr r1, _08097164 @ =gUnknown_83D4038
lsls r0, 3
adds r0, r1
ldrh r0, [r0, 0x4]
bl FreeSpritePaletteByTag
pop {r0}
bx r0
.align 2, 0
_08097160: .4byte gUnknown_83D3E80
_08097164: .4byte gUnknown_83D4038
thumb_func_end sub_8097138
thumb_func_start sub_8097168
sub_8097168: @ 8097168
push {lr}
lsls r0, 16
lsrs r0, 16
ldr r1, _08097184 @ =gUnknown_83D3E80
adds r0, r1
ldrb r0, [r0]
ldr r1, _08097188 @ =gUnknown_83D4038
lsls r0, 3
adds r0, r1
ldrh r0, [r0, 0x4]
bl FreeSpritePaletteByTag
pop {r0}
bx r0
.align 2, 0
_08097184: .4byte gUnknown_83D3E80
_08097188: .4byte gUnknown_83D4038
thumb_func_end sub_8097168
thumb_func_start sub_809718C
sub_809718C: @ 809718C
push {lr}
bl UpdateMonIconFrame
pop {r0}
bx r0
thumb_func_end sub_809718C
thumb_func_start sub_8097198
sub_8097198: @ 8097198
push {r4-r6,lr}
lsls r0, 16
lsrs r4, r0, 16
cmp r4, 0xA0
bhi _080971C0
ldr r6, _080971C8 @ =gUnknown_83D4038
movs r5, 0x5
_080971A6:
ldr r0, [r6]
adds r1, r4, 0
movs r2, 0x20
bl LoadPalette
adds r0, r4, 0
adds r0, 0x10
lsls r0, 16
lsrs r4, r0, 16
adds r6, 0x8
subs r5, 0x1
cmp r5, 0
bge _080971A6
_080971C0:
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_080971C8: .4byte gUnknown_83D4038
thumb_func_end sub_8097198
thumb_func_start GetValidMonIconPalettePtr
GetValidMonIconPalettePtr: @ 80971CC
push {lr}
lsls r0, 16
lsrs r2, r0, 16
movs r0, 0xCE
lsls r0, 1
cmp r2, r0
bls _080971DC
movs r2, 0
_080971DC:
ldr r1, _080971F0 @ =gUnknown_83D4038
ldr r0, _080971F4 @ =gUnknown_83D3E80
adds r0, r2, r0
ldrb r0, [r0]
lsls r0, 3
adds r0, r1
ldr r0, [r0]
pop {r1}
bx r1
.align 2, 0
_080971F0: .4byte gUnknown_83D4038
_080971F4: .4byte gUnknown_83D3E80
thumb_func_end GetValidMonIconPalettePtr
thumb_func_start sub_80971F8
sub_80971F8: @ 80971F8
push {lr}
lsls r0, 16
lsrs r1, r0, 16
movs r0, 0xCE
lsls r0, 1
cmp r1, r0
bls _08097208
movs r1, 0
_08097208:
ldr r0, _08097214 @ =gUnknown_83D3E80
adds r0, r1, r0
ldrb r0, [r0]
pop {r1}
bx r1
.align 2, 0
_08097214: .4byte gUnknown_83D3E80
thumb_func_end sub_80971F8
thumb_func_start sub_8097218
sub_8097218: @ 8097218
lsls r0, 16
lsrs r0, 16
ldr r1, _08097224 @ =gUnknown_83D3E80
adds r0, r1
ldrb r0, [r0]
bx lr
.align 2, 0
_08097224: .4byte gUnknown_83D3E80
thumb_func_end sub_8097218
thumb_func_start UpdateMonIconFrame
UpdateMonIconFrame: @ 8097228
push {r4-r7,lr}
mov r7, r9
mov r6, r8
push {r6,r7}
adds r4, r0, 0
movs r7, 0
adds r6, r4, 0
adds r6, 0x2C
ldrb r2, [r6]
movs r0, 0x3F
mov r9, r0
ands r0, r2
cmp r0, 0
bne _080972DC
movs r1, 0x2A
adds r1, r4
mov r8, r1
ldrb r1, [r1]
ldr r0, [r4, 0x8]
lsls r1, 2
adds r1, r0
adds r5, r4, 0
adds r5, 0x2B
ldrb r0, [r5]
ldr r1, [r1]
lsls r0, 2
adds r0, r1
movs r1, 0
ldrsh r3, [r0, r1]
movs r0, 0x2
negs r0, r0
cmp r3, r0
beq _08097272
adds r0, 0x1
cmp r3, r0
bne _08097276
b _080972F0
_08097272:
strb r7, [r5]
b _080972F0
_08097276:
ldr r2, _080972D4 @ =gUnknown_83D40E8
ldrb r1, [r4, 0x3]
lsrs r1, 6
lsls r1, 1
ldrb r0, [r4, 0x1]
lsrs r0, 6
lsls r0, 3
adds r1, r0
adds r1, r2
ldrh r2, [r1]
adds r1, r2, 0
muls r1, r3
ldr r0, [r4, 0xC]
adds r0, r1
ldrh r1, [r4, 0x4]
lsls r1, 22
lsrs r1, 17
ldr r3, _080972D8 @ =0x06010000
adds r1, r3
bl RequestSpriteCopy
mov r0, r8
ldrb r1, [r0]
ldr r0, [r4, 0x8]
lsls r1, 2
adds r1, r0
ldrb r0, [r5]
ldr r1, [r1]
lsls r0, 2
adds r0, r1
ldr r0, [r0]
lsls r0, 10
lsrs r0, 26
mov r1, r9
ands r1, r0
ldrb r2, [r6]
movs r0, 0x40
negs r0, r0
ands r0, r2
orrs r0, r1
strb r0, [r6]
ldrb r0, [r5]
adds r0, 0x1
strb r0, [r5]
ldrb r7, [r5]
b _080972F0
.align 2, 0
_080972D4: .4byte gUnknown_83D40E8
_080972D8: .4byte 0x06010000
_080972DC:
lsls r0, r2, 26
lsrs r0, 26
subs r0, 0x1
movs r1, 0x3F
ands r0, r1
movs r1, 0x40
negs r1, r1
ands r1, r2
orrs r1, r0
strb r1, [r6]
_080972F0:
adds r0, r7, 0
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r7}
pop {r1}
bx r1
thumb_func_end UpdateMonIconFrame
thumb_func_start CreateMonIconSprite
CreateMonIconSprite: @ 8097300
push {r4-r6,lr}
mov r6, r9
mov r5, r8
push {r5,r6}
sub sp, 0x38
mov r9, r0
adds r4, r1, 0
adds r5, r2, 0
mov r8, r3
lsls r4, 16
lsrs r4, 16
lsls r5, 16
lsrs r5, 16
mov r0, r8
lsls r0, 24
lsrs r0, 24
mov r8, r0
movs r0, 0
str r0, [sp, 0x30]
ldr r2, _080973C8 @ =gUnknown_83D40E8
mov r0, r9
ldr r6, [r0]
ldrb r1, [r6, 0x3]
lsrs r1, 6
lsls r1, 1
ldrb r0, [r6, 0x1]
lsrs r0, 6
lsls r0, 3
adds r1, r0
adds r1, r2
ldrh r2, [r1]
ldr r1, _080973CC @ =0xffff0000
add r3, sp, 0x30
ldr r0, [r3, 0x4]
ands r0, r1
orrs r0, r2
str r0, [r3, 0x4]
add r1, sp, 0x18
ldr r0, _080973D0 @ =0x0000ffff
strh r0, [r1]
mov r0, r9
ldrh r2, [r0, 0x14]
mov r0, sp
adds r0, 0x1A
strh r2, [r0]
str r6, [sp, 0x1C]
mov r2, r9
ldr r0, [r2, 0x8]
str r0, [sp, 0x20]
str r3, [sp, 0x24]
ldr r0, [r2, 0xC]
str r0, [sp, 0x28]
ldr r0, [r2, 0x10]
str r0, [sp, 0x2C]
mov r0, sp
movs r2, 0x18
bl memcpy
lsls r4, 16
asrs r4, 16
lsls r5, 16
asrs r5, 16
mov r0, sp
adds r1, r4, 0
adds r2, r5, 0
mov r3, r8
bl CreateSprite
lsls r0, 24
lsrs r0, 24
ldr r6, _080973D4 @ =gSprites
lsls r3, r0, 4
adds r3, r0
lsls r3, 2
adds r4, r3, r6
adds r5, r4, 0
adds r5, 0x2C
ldrb r1, [r5]
movs r2, 0x40
orrs r1, r2
strb r1, [r5]
adds r4, 0x3F
ldrb r2, [r4]
movs r1, 0x5
negs r1, r1
ands r1, r2
strb r1, [r4]
adds r6, 0xC
adds r3, r6
mov r2, r9
ldr r1, [r2, 0x4]
str r1, [r3]
add sp, 0x38
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r6}
pop {r1}
bx r1
.align 2, 0
_080973C8: .4byte gUnknown_83D40E8
_080973CC: .4byte 0xffff0000
_080973D0: .4byte 0x0000ffff
_080973D4: .4byte gSprites
thumb_func_end CreateMonIconSprite
thumb_func_start sub_80973D8
sub_80973D8: @ 80973D8
push {lr}
sub sp, 0x8
movs r1, 0
str r1, [sp]
ldr r3, _0809740C @ =gUnknown_83D40E8
ldrb r2, [r0, 0x3]
lsrs r2, 6
lsls r2, 1
ldrb r1, [r0, 0x1]
lsrs r1, 6
lsls r1, 3
adds r2, r1
adds r2, r3
ldrh r3, [r2]
ldr r2, _08097410 @ =0xffff0000
ldr r1, [sp, 0x4]
ands r1, r2
orrs r1, r3
str r1, [sp, 0x4]
mov r1, sp
str r1, [r0, 0xC]
bl DestroySprite
add sp, 0x8
pop {r0}
bx r0
.align 2, 0
_0809740C: .4byte gUnknown_83D40E8
_08097410: .4byte 0xffff0000
thumb_func_end sub_80973D8
thumb_func_start sub_8097414
sub_8097414: @ 8097414
mov r12, r0
adds r0, 0x2A
movs r3, 0
strb r1, [r0]
mov r2, r12
adds r2, 0x2C
ldrb r1, [r2]
movs r0, 0x40
negs r0, r0
ands r0, r1
strb r0, [r2]
mov r0, r12
adds r0, 0x2B
strb r3, [r0]
bx lr
thumb_func_end sub_8097414
.align 2, 0 @ Don't pad with nop.
+7 -7
View File
@@ -8688,7 +8688,7 @@ _0808FFA8: .4byte 0x00004037
thumb_func_start sub_808FFAC
sub_808FFAC: @ 808FFAC
push {r4-r6,lr}
bl sub_809707C
bl LoadMonIconPalettes
movs r2, 0
ldr r3, _0809003C @ =gUnknown_20397B0
ldr r5, _08090040 @ =0x00000b04
@@ -11179,7 +11179,7 @@ _08091248:
lsrs r4, 16
adds r0, r3, 0
movs r1, 0x1
bl sub_8097028
bl GetMonIconTiles
lsls r1, r4, 5
ldr r2, _08091288 @ =0x06010000
adds r1, r2
@@ -11271,11 +11271,11 @@ sub_80912E0: @ 80912E0
ldm r0!, {r3,r5,r7}
stm r2!, {r3,r5,r7}
adds r0, r6, 0
bl mon_icon_convert_unown_species_id
bl GetIconSpecies
mov r10, r0
mov r6, r10
mov r2, sp
ldr r1, _08091394 @ =gUnknown_83D3E80
ldr r1, _08091394 @ =gMonIconPaletteIndices
adds r1, r6, r1
ldr r3, _08091398 @ =0x0000dac0
adds r0, r3, 0
@@ -11329,7 +11329,7 @@ sub_80912E0: @ 80912E0
b _080913B4
.align 2, 0
_08091390: .4byte gUnknown_83CEBF0
_08091394: .4byte gUnknown_83D3E80
_08091394: .4byte gMonIconPaletteIndices
_08091398: .4byte 0x0000dac0
_0809139C: .4byte 0x0000ffff
_080913A0: .4byte gSprites
@@ -19235,7 +19235,7 @@ _0809515A:
movs r0, 0
bl HideBg
movs r0, 0x80
bl sub_8097198
bl LoadMonIconPalettesAt
b _080951F8
_08095168:
adds r0, r1, 0x2
@@ -19954,7 +19954,7 @@ sub_80956A4: @ 80956A4
bl GetMonIconPtr
adds r4, r0, 0
adds r0, r5, 0
bl sub_80971F8
bl GetValidMonIconPalIndex
adds r0, 0x8
lsls r0, 24
lsrs r0, 24
+3 -3
View File
@@ -10814,7 +10814,7 @@ _08139E58:
adds r0, r5, 0
movs r2, 0x18
movs r3, 0x20
bl sub_8096E18
bl CreateMonIcon
ldr r1, [r6]
ldr r2, _08139E9C @ =0x00003014
adds r1, r2
@@ -10916,7 +10916,7 @@ sub_8139F20: @ 8139F20
bl GetMonData
lsls r0, 16
lsrs r0, 16
bl sub_8097138
bl SafeFreeMonIconPalette
ldr r0, [r4]
ldr r1, _08139F5C @ =0x00003014
adds r0, r1
@@ -10926,7 +10926,7 @@ sub_8139F20: @ 8139F20
lsls r0, 2
ldr r1, _08139F60 @ =gSprites
adds r0, r1
bl sub_8097070
bl DestroyMonIcon
pop {r4}
pop {r0}
bx r0
+16 -16
View File
@@ -83,7 +83,7 @@ _0804C674:
movs r1, 0x1
movs r2, 0xE0
bl TextWindow_SetUserSelectedFrame
bl sub_809707C
bl LoadMonIconPalettes
ldr r2, _0804C708 @ =gUnknown_2031DA8
ldr r0, [r2]
adds r0, 0x69
@@ -521,8 +521,8 @@ _0804CA4A:
str r0, [sp, 0x4]
str r1, [sp, 0x8]
adds r0, r5, 0
ldr r1, _0804CB44 @ =sub_809718C
bl sub_8096E18
ldr r1, _0804CB44 @ =SpriteCB_MonIcon
bl CreateMonIcon
mov r2, r8
ldr r1, [r2]
adds r1, 0x28
@@ -580,8 +580,8 @@ _0804CABE:
movs r0, 0
str r0, [sp, 0x8]
adds r0, r5, 0
ldr r1, _0804CB44 @ =sub_809718C
bl sub_8096E18
ldr r1, _0804CB44 @ =SpriteCB_MonIcon
bl CreateMonIcon
mov r2, r8
ldr r1, [r2]
adds r1, 0x2E
@@ -607,7 +607,7 @@ _0804CB34: .4byte gEnemyPartyCount
_0804CB38: .4byte gUnknown_8261E40
_0804CB3C: .4byte gPlayerParty
_0804CB40: .4byte 0xfff40000
_0804CB44: .4byte sub_809718C
_0804CB44: .4byte SpriteCB_MonIcon
_0804CB48: .4byte gEnemyParty
_0804CB4C: .4byte gMain
_0804CB50:
@@ -1211,8 +1211,8 @@ _0804D048:
str r0, [sp, 0x4]
str r1, [sp, 0x8]
adds r0, r5, 0
ldr r1, _0804D144 @ =sub_809718C
bl sub_8096E18
ldr r1, _0804D144 @ =SpriteCB_MonIcon
bl CreateMonIcon
mov r2, r8
ldr r1, [r2]
adds r1, 0x28
@@ -1270,8 +1270,8 @@ _0804D0BE:
movs r0, 0
str r0, [sp, 0x8]
adds r0, r5, 0
ldr r1, _0804D144 @ =sub_809718C
bl sub_8096E18
ldr r1, _0804D144 @ =SpriteCB_MonIcon
bl CreateMonIcon
mov r2, r8
ldr r1, [r2]
adds r1, 0x2E
@@ -1297,7 +1297,7 @@ _0804D134: .4byte gEnemyPartyCount
_0804D138: .4byte gUnknown_8261E40
_0804D13C: .4byte gPlayerParty
_0804D140: .4byte 0xfff40000
_0804D144: .4byte sub_809718C
_0804D144: .4byte SpriteCB_MonIcon
_0804D148: .4byte gEnemyParty
_0804D14C: .4byte gMain
_0804D150:
@@ -4651,7 +4651,7 @@ _0804EBA2:
adds r0, r1
lsls r0, 2
add r0, r8
ldr r1, _0804ECAC @ =sub_809718C
ldr r1, _0804ECAC @ =SpriteCB_MonIcon
bl StoreSpriteCallbackInData6
ldr r2, _0804ECA4 @ =gUnknown_2031DA8
ldr r1, [r2]
@@ -4698,7 +4698,7 @@ _0804EC98:
_0804ECA0: .4byte gSprites
_0804ECA4: .4byte gUnknown_2031DA8
_0804ECA8: .4byte gUnknown_8261E40
_0804ECAC: .4byte sub_809718C
_0804ECAC: .4byte SpriteCB_MonIcon
_0804ECB0: .4byte gUnknown_8260A32
_0804ECB4:
ldr r2, _0804ECE4 @ =gSprites
@@ -4717,7 +4717,7 @@ _0804ECB4:
adds r2, 0x1C
adds r0, r2
ldr r1, [r0]
ldr r0, _0804ECE8 @ =sub_809718C
ldr r0, _0804ECE8 @ =SpriteCB_MonIcon
cmp r1, r0
beq _0804ECDC
b _0804EE54
@@ -4727,7 +4727,7 @@ _0804ECDC:
b _0804EE54
.align 2, 0
_0804ECE4: .4byte gSprites
_0804ECE8: .4byte sub_809718C
_0804ECE8: .4byte SpriteCB_MonIcon
_0804ECEC:
ldr r1, _0804EE08 @ =gUnknown_8260834
ldr r0, [sp, 0x60]
@@ -6356,7 +6356,7 @@ _0804F988:
subs r1, r2
lsls r1, 24
lsrs r1, 24
bl sub_8097414
bl MonIcon_SetAnim
adds r4, 0x1
ldr r0, [r6]
adds r0, 0x36
+10 -10
View File
@@ -1215,7 +1215,7 @@ _080899AE:
bl VarGet
lsls r0, 16
lsrs r0, 16
bl sub_8096FD4
bl MailSpeciesToIconSpecies
adds r1, r5, 0
adds r1, 0x54
strh r0, [r1]
@@ -1223,7 +1223,7 @@ _080899AE:
bl VarGet
lsls r0, 16
lsrs r0, 16
bl sub_8096FD4
bl MailSpeciesToIconSpecies
adds r1, r5, 0
adds r1, 0x56
strh r0, [r1]
@@ -1231,7 +1231,7 @@ _080899AE:
bl VarGet
lsls r0, 16
lsrs r0, 16
bl sub_8096FD4
bl MailSpeciesToIconSpecies
adds r1, r5, 0
adds r1, 0x58
strh r0, [r1]
@@ -1239,7 +1239,7 @@ _080899AE:
bl VarGet
lsls r0, 16
lsrs r0, 16
bl sub_8096FD4
bl MailSpeciesToIconSpecies
adds r1, r5, 0
adds r1, 0x5A
strh r0, [r1]
@@ -1247,7 +1247,7 @@ _080899AE:
bl VarGet
lsls r0, 16
lsrs r0, 16
bl sub_8096FD4
bl MailSpeciesToIconSpecies
adds r1, r5, 0
adds r1, 0x5C
strh r0, [r1]
@@ -1255,7 +1255,7 @@ _080899AE:
bl VarGet
lsls r0, 16
lsrs r0, 16
bl sub_8096FD4
bl MailSpeciesToIconSpecies
adds r1, r5, 0
adds r1, 0x5E
strh r0, [r1]
@@ -3203,7 +3203,7 @@ _0808AAA4:
ldrh r0, [r1]
cmp r0, 0
beq _0808AAEE
bl sub_8097218
bl GetMonIconPaletteIndexFromSpecies
lsls r0, 24
lsrs r0, 24
lsls r1, r4, 20
@@ -3250,7 +3250,7 @@ _0808AB0C: .4byte 0x00000457
sub_808AB10: @ 808AB10
push {r4,r5,lr}
sub sp, 0x4
ldr r0, _0808AB40 @ =gUnknown_83D3740
ldr r0, _0808AB40 @ =gMonIconPalettes
ldr r4, _0808AB44 @ =gUnknown_20397A4
ldr r1, [r4]
ldr r5, _0808AB48 @ =0x00000396
@@ -3271,7 +3271,7 @@ sub_808AB10: @ 808AB10
beq _0808AB80
b _0808AB88
.align 2, 0
_0808AB40: .4byte gUnknown_83D3740
_0808AB40: .4byte gMonIconPalettes
_0808AB44: .4byte gUnknown_20397A4
_0808AB48: .4byte 0x00000396
_0808AB4C: .4byte 0x000004aa
@@ -3322,7 +3322,7 @@ _0808AB9A:
adds r0, r1
ldrh r0, [r0]
movs r1, 0
bl sub_8097028
bl GetMonIconTiles
adds r1, r0, 0
lsls r3, r4, 20
movs r0, 0x80
BIN
View File
Binary file not shown.
+4 -24
View File
@@ -511,30 +511,10 @@ gUnknown_83D35DC:: @ 83D35DC
gUnknown_83D3728:: @ 83D3728
.incbin "baserom.gba", 0x3D3728, 0x18
gUnknown_83D3740:: @ 83D3740
.incbin "baserom.gba", 0x3D3740, 0x60
gUnknown_83D37A0:: @ 83D37A0
.incbin "baserom.gba", 0x3D37A0, 0x6E0
gUnknown_83D3E80:: @ 83D3E80
.incbin "baserom.gba", 0x3D3E80, 0x1B8
gUnknown_83D4038:: @ 83D4038
.incbin "baserom.gba", 0x3D4038, 0x30
gUnknown_83D4068:: @ 83D4068
.incbin "baserom.gba", 0x3D4068, 0x44
gUnknown_83D40AC:: @ 83D40AC
.incbin "baserom.gba", 0x3D40AC, 0x34
gUnknown_83D40E0:: @ 83D40E0
.incbin "baserom.gba", 0x3D40E0, 0x8
gUnknown_83D40E8:: @ 83D40E8
.incbin "baserom.gba", 0x3D40E8, 0x18
@ pokemon_icon
.section .rodata.83D4100
.align 2
@ fldeff_cut
gUnknown_83D4100:: @ 83D4100
.incbin "baserom.gba", 0x3D4100, 0x4C
+3 -4
View File
@@ -11848,9 +11848,7 @@ gMonShinyPalette_Deoxys:: @ 8E3A360
.align 2
gMonIcon_Deoxys:: @ 8E3A388
.incbin "graphics/pokemon/deoxys/icon.4bpp"
.align 2
gMonIcon_DeoxysAttack:: @ 8E3A788
@ Referenced as part of the same array as normal deoxys
.incbin "graphics/pokemon/deoxys/icon_attack.4bpp"
.align 2
@@ -11982,6 +11980,7 @@ gMonBackPic_UnownI:: @ 8E3F228
.incbin "graphics/pokemon/unown/i/back.4bpp.lz"
.align 2
gMonIcon_UnownI:: @ 8E3F3D0
.incbin "graphics/pokemon/unown/i/icon.4bpp"
@@ -13698,7 +13697,7 @@ gFile_graphics_battle_interface_ball_status_bar_sheet:: @ 8E7BB04
.incbin "graphics/battle_interface/ball_status_bar.4bpp.lz"
.align 2
gUnknown_8E7BBB8:: @ 8E7BB88
gMonIcon_Egg:: @ 8E7BB88
.incbin "baserom.gba", 0xE7BB88, 0x400 @UNKNOWN
.align 2
+418 -1
View File
@@ -2352,7 +2352,7 @@ extern const u8 gMonIcon_Chimecho[];
extern const u8 gMonFootprint_Chimecho[];
extern const u32 gMonFrontPic_Egg[];
extern const u32 gMonPalette_Egg[];
extern const u32 gMonIcon_Egg[];
extern const u8 gMonIcon_Egg[];
extern const u32 gMonFrontPic_UnownB[];
extern const u32 gMonBackPic_UnownB[];
extern const u8 gMonIcon_UnownB[];
@@ -3494,4 +3494,421 @@ extern const u32 gFile_graphics_mail_dream_map_tilemap[];
extern const u32 gFile_graphics_mail_fab_map_tilemap[];
extern const u32 gFile_graphics_mail_retro_map_tilemap[];
// pokemon_icons
extern const u8 gMonIcon_Bulbasaur[];
extern const u8 gMonIcon_Ivysaur[];
extern const u8 gMonIcon_Venusaur[];
extern const u8 gMonIcon_Charmander[];
extern const u8 gMonIcon_Charmeleon[];
extern const u8 gMonIcon_Charizard[];
extern const u8 gMonIcon_Squirtle[];
extern const u8 gMonIcon_Wartortle[];
extern const u8 gMonIcon_Blastoise[];
extern const u8 gMonIcon_Caterpie[];
extern const u8 gMonIcon_Metapod[];
extern const u8 gMonIcon_Butterfree[];
extern const u8 gMonIcon_Weedle[];
extern const u8 gMonIcon_Kakuna[];
extern const u8 gMonIcon_Beedrill[];
extern const u8 gMonIcon_Pidgey[];
extern const u8 gMonIcon_Pidgeotto[];
extern const u8 gMonIcon_Pidgeot[];
extern const u8 gMonIcon_Rattata[];
extern const u8 gMonIcon_Raticate[];
extern const u8 gMonIcon_Spearow[];
extern const u8 gMonIcon_Fearow[];
extern const u8 gMonIcon_Ekans[];
extern const u8 gMonIcon_Arbok[];
extern const u8 gMonIcon_Pikachu[];
extern const u8 gMonIcon_Raichu[];
extern const u8 gMonIcon_Sandshrew[];
extern const u8 gMonIcon_Sandslash[];
extern const u8 gMonIcon_Nidoran_f[];
extern const u8 gMonIcon_Nidorina[];
extern const u8 gMonIcon_Nidoqueen[];
extern const u8 gMonIcon_Nidoran_m[];
extern const u8 gMonIcon_Nidorino[];
extern const u8 gMonIcon_Nidoking[];
extern const u8 gMonIcon_Clefairy[];
extern const u8 gMonIcon_Clefable[];
extern const u8 gMonIcon_Vulpix[];
extern const u8 gMonIcon_Ninetales[];
extern const u8 gMonIcon_Jigglypuff[];
extern const u8 gMonIcon_Wigglytuff[];
extern const u8 gMonIcon_Zubat[];
extern const u8 gMonIcon_Golbat[];
extern const u8 gMonIcon_Oddish[];
extern const u8 gMonIcon_Gloom[];
extern const u8 gMonIcon_Vileplume[];
extern const u8 gMonIcon_Paras[];
extern const u8 gMonIcon_Parasect[];
extern const u8 gMonIcon_Venonat[];
extern const u8 gMonIcon_Venomoth[];
extern const u8 gMonIcon_Diglett[];
extern const u8 gMonIcon_Dugtrio[];
extern const u8 gMonIcon_Meowth[];
extern const u8 gMonIcon_Persian[];
extern const u8 gMonIcon_Psyduck[];
extern const u8 gMonIcon_Golduck[];
extern const u8 gMonIcon_Mankey[];
extern const u8 gMonIcon_Primeape[];
extern const u8 gMonIcon_Growlithe[];
extern const u8 gMonIcon_Arcanine[];
extern const u8 gMonIcon_Poliwag[];
extern const u8 gMonIcon_Poliwhirl[];
extern const u8 gMonIcon_Poliwrath[];
extern const u8 gMonIcon_Abra[];
extern const u8 gMonIcon_Kadabra[];
extern const u8 gMonIcon_Alakazam[];
extern const u8 gMonIcon_Machop[];
extern const u8 gMonIcon_Machoke[];
extern const u8 gMonIcon_Machamp[];
extern const u8 gMonIcon_Bellsprout[];
extern const u8 gMonIcon_Weepinbell[];
extern const u8 gMonIcon_Victreebel[];
extern const u8 gMonIcon_Tentacool[];
extern const u8 gMonIcon_Tentacruel[];
extern const u8 gMonIcon_Geodude[];
extern const u8 gMonIcon_Graveler[];
extern const u8 gMonIcon_Golem[];
extern const u8 gMonIcon_Ponyta[];
extern const u8 gMonIcon_Rapidash[];
extern const u8 gMonIcon_Slowpoke[];
extern const u8 gMonIcon_Slowbro[];
extern const u8 gMonIcon_Magnemite[];
extern const u8 gMonIcon_Magneton[];
extern const u8 gMonIcon_Farfetch_d[];
extern const u8 gMonIcon_Doduo[];
extern const u8 gMonIcon_Dodrio[];
extern const u8 gMonIcon_Seel[];
extern const u8 gMonIcon_Dewgong[];
extern const u8 gMonIcon_Grimer[];
extern const u8 gMonIcon_Muk[];
extern const u8 gMonIcon_Shellder[];
extern const u8 gMonIcon_Cloyster[];
extern const u8 gMonIcon_Gastly[];
extern const u8 gMonIcon_Haunter[];
extern const u8 gMonIcon_Gengar[];
extern const u8 gMonIcon_Onix[];
extern const u8 gMonIcon_Drowzee[];
extern const u8 gMonIcon_Hypno[];
extern const u8 gMonIcon_Krabby[];
extern const u8 gMonIcon_Kingler[];
extern const u8 gMonIcon_Voltorb[];
extern const u8 gMonIcon_Electrode[];
extern const u8 gMonIcon_Exeggcute[];
extern const u8 gMonIcon_Exeggutor[];
extern const u8 gMonIcon_Cubone[];
extern const u8 gMonIcon_Marowak[];
extern const u8 gMonIcon_Hitmonlee[];
extern const u8 gMonIcon_Hitmonchan[];
extern const u8 gMonIcon_Lickitung[];
extern const u8 gMonIcon_Koffing[];
extern const u8 gMonIcon_Weezing[];
extern const u8 gMonIcon_Rhyhorn[];
extern const u8 gMonIcon_Rhydon[];
extern const u8 gMonIcon_Chansey[];
extern const u8 gMonIcon_Tangela[];
extern const u8 gMonIcon_Kangaskhan[];
extern const u8 gMonIcon_Horsea[];
extern const u8 gMonIcon_Seadra[];
extern const u8 gMonIcon_Goldeen[];
extern const u8 gMonIcon_Seaking[];
extern const u8 gMonIcon_Staryu[];
extern const u8 gMonIcon_Starmie[];
extern const u8 gMonIcon_Mr_Mime[];
extern const u8 gMonIcon_Scyther[];
extern const u8 gMonIcon_Jynx[];
extern const u8 gMonIcon_Electabuzz[];
extern const u8 gMonIcon_Magmar[];
extern const u8 gMonIcon_Pinsir[];
extern const u8 gMonIcon_Tauros[];
extern const u8 gMonIcon_Magikarp[];
extern const u8 gMonIcon_Gyarados[];
extern const u8 gMonIcon_Lapras[];
extern const u8 gMonIcon_Ditto[];
extern const u8 gMonIcon_Eevee[];
extern const u8 gMonIcon_Vaporeon[];
extern const u8 gMonIcon_Jolteon[];
extern const u8 gMonIcon_Flareon[];
extern const u8 gMonIcon_Porygon[];
extern const u8 gMonIcon_Omanyte[];
extern const u8 gMonIcon_Omastar[];
extern const u8 gMonIcon_Kabuto[];
extern const u8 gMonIcon_Kabutops[];
extern const u8 gMonIcon_Aerodactyl[];
extern const u8 gMonIcon_Snorlax[];
extern const u8 gMonIcon_Articuno[];
extern const u8 gMonIcon_Zapdos[];
extern const u8 gMonIcon_Moltres[];
extern const u8 gMonIcon_Dratini[];
extern const u8 gMonIcon_Dragonair[];
extern const u8 gMonIcon_Dragonite[];
extern const u8 gMonIcon_Mewtwo[];
extern const u8 gMonIcon_Mew[];
extern const u8 gMonIcon_Chikorita[];
extern const u8 gMonIcon_Bayleef[];
extern const u8 gMonIcon_Meganium[];
extern const u8 gMonIcon_Cyndaquil[];
extern const u8 gMonIcon_Quilava[];
extern const u8 gMonIcon_Typhlosion[];
extern const u8 gMonIcon_Totodile[];
extern const u8 gMonIcon_Croconaw[];
extern const u8 gMonIcon_Feraligatr[];
extern const u8 gMonIcon_Sentret[];
extern const u8 gMonIcon_Furret[];
extern const u8 gMonIcon_Hoothoot[];
extern const u8 gMonIcon_Noctowl[];
extern const u8 gMonIcon_Ledyba[];
extern const u8 gMonIcon_Ledian[];
extern const u8 gMonIcon_Spinarak[];
extern const u8 gMonIcon_Ariados[];
extern const u8 gMonIcon_Crobat[];
extern const u8 gMonIcon_Chinchou[];
extern const u8 gMonIcon_Lanturn[];
extern const u8 gMonIcon_Pichu[];
extern const u8 gMonIcon_Cleffa[];
extern const u8 gMonIcon_Igglybuff[];
extern const u8 gMonIcon_Togepi[];
extern const u8 gMonIcon_Togetic[];
extern const u8 gMonIcon_Natu[];
extern const u8 gMonIcon_Xatu[];
extern const u8 gMonIcon_Mareep[];
extern const u8 gMonIcon_Flaaffy[];
extern const u8 gMonIcon_Ampharos[];
extern const u8 gMonIcon_Bellossom[];
extern const u8 gMonIcon_Marill[];
extern const u8 gMonIcon_Azumarill[];
extern const u8 gMonIcon_Sudowoodo[];
extern const u8 gMonIcon_Politoed[];
extern const u8 gMonIcon_Hoppip[];
extern const u8 gMonIcon_Skiploom[];
extern const u8 gMonIcon_Jumpluff[];
extern const u8 gMonIcon_Aipom[];
extern const u8 gMonIcon_Sunkern[];
extern const u8 gMonIcon_Sunflora[];
extern const u8 gMonIcon_Yanma[];
extern const u8 gMonIcon_Wooper[];
extern const u8 gMonIcon_Quagsire[];
extern const u8 gMonIcon_Espeon[];
extern const u8 gMonIcon_Umbreon[];
extern const u8 gMonIcon_Murkrow[];
extern const u8 gMonIcon_Slowking[];
extern const u8 gMonIcon_Misdreavus[];
extern const u8 gMonIcon_Unown_A[];
extern const u8 gMonIcon_Wobbuffet[];
extern const u8 gMonIcon_Girafarig[];
extern const u8 gMonIcon_Pineco[];
extern const u8 gMonIcon_Forretress[];
extern const u8 gMonIcon_Dunsparce[];
extern const u8 gMonIcon_Gligar[];
extern const u8 gMonIcon_Steelix[];
extern const u8 gMonIcon_Snubbull[];
extern const u8 gMonIcon_Granbull[];
extern const u8 gMonIcon_Qwilfish[];
extern const u8 gMonIcon_Scizor[];
extern const u8 gMonIcon_Shuckle[];
extern const u8 gMonIcon_Heracross[];
extern const u8 gMonIcon_Sneasel[];
extern const u8 gMonIcon_Teddiursa[];
extern const u8 gMonIcon_Ursaring[];
extern const u8 gMonIcon_Slugma[];
extern const u8 gMonIcon_Magcargo[];
extern const u8 gMonIcon_Swinub[];
extern const u8 gMonIcon_Piloswine[];
extern const u8 gMonIcon_Corsola[];
extern const u8 gMonIcon_Remoraid[];
extern const u8 gMonIcon_Octillery[];
extern const u8 gMonIcon_Delibird[];
extern const u8 gMonIcon_Mantine[];
extern const u8 gMonIcon_Skarmory[];
extern const u8 gMonIcon_Houndour[];
extern const u8 gMonIcon_Houndoom[];
extern const u8 gMonIcon_Kingdra[];
extern const u8 gMonIcon_Phanpy[];
extern const u8 gMonIcon_Donphan[];
extern const u8 gMonIcon_Porygon2[];
extern const u8 gMonIcon_Stantler[];
extern const u8 gMonIcon_Smeargle[];
extern const u8 gMonIcon_Tyrogue[];
extern const u8 gMonIcon_Hitmontop[];
extern const u8 gMonIcon_Smoochum[];
extern const u8 gMonIcon_Elekid[];
extern const u8 gMonIcon_Magby[];
extern const u8 gMonIcon_Miltank[];
extern const u8 gMonIcon_Blissey[];
extern const u8 gMonIcon_Raikou[];
extern const u8 gMonIcon_Entei[];
extern const u8 gMonIcon_Suicune[];
extern const u8 gMonIcon_Larvitar[];
extern const u8 gMonIcon_Pupitar[];
extern const u8 gMonIcon_Tyranitar[];
extern const u8 gMonIcon_Lugia[];
extern const u8 gMonIcon_Ho_Oh[];
extern const u8 gMonIcon_Celebi[];
extern const u8 gMonIcon_Treecko[];
extern const u8 gMonIcon_Grovyle[];
extern const u8 gMonIcon_Sceptile[];
extern const u8 gMonIcon_Torchic[];
extern const u8 gMonIcon_Combusken[];
extern const u8 gMonIcon_Blaziken[];
extern const u8 gMonIcon_Mudkip[];
extern const u8 gMonIcon_Marshtomp[];
extern const u8 gMonIcon_Swampert[];
extern const u8 gMonIcon_Poochyena[];
extern const u8 gMonIcon_Mightyena[];
extern const u8 gMonIcon_Zigzagoon[];
extern const u8 gMonIcon_Linoone[];
extern const u8 gMonIcon_Wurmple[];
extern const u8 gMonIcon_Silcoon[];
extern const u8 gMonIcon_Beautifly[];
extern const u8 gMonIcon_Cascoon[];
extern const u8 gMonIcon_Dustox[];
extern const u8 gMonIcon_Lotad[];
extern const u8 gMonIcon_Lombre[];
extern const u8 gMonIcon_Ludicolo[];
extern const u8 gMonIcon_Seedot[];
extern const u8 gMonIcon_Nuzleaf[];
extern const u8 gMonIcon_Shiftry[];
extern const u8 gMonIcon_Nincada[];
extern const u8 gMonIcon_Ninjask[];
extern const u8 gMonIcon_Shedinja[];
extern const u8 gMonIcon_Taillow[];
extern const u8 gMonIcon_Swellow[];
extern const u8 gMonIcon_Shroomish[];
extern const u8 gMonIcon_Breloom[];
extern const u8 gMonIcon_Spinda[];
extern const u8 gMonIcon_Wingull[];
extern const u8 gMonIcon_Pelipper[];
extern const u8 gMonIcon_Surskit[];
extern const u8 gMonIcon_Masquerain[];
extern const u8 gMonIcon_Wailmer[];
extern const u8 gMonIcon_Wailord[];
extern const u8 gMonIcon_Skitty[];
extern const u8 gMonIcon_Delcatty[];
extern const u8 gMonIcon_Kecleon[];
extern const u8 gMonIcon_Baltoy[];
extern const u8 gMonIcon_Claydol[];
extern const u8 gMonIcon_Nosepass[];
extern const u8 gMonIcon_Torkoal[];
extern const u8 gMonIcon_Sableye[];
extern const u8 gMonIcon_Barboach[];
extern const u8 gMonIcon_Whiscash[];
extern const u8 gMonIcon_Luvdisc[];
extern const u8 gMonIcon_Corphish[];
extern const u8 gMonIcon_Crawdaunt[];
extern const u8 gMonIcon_Feebas[];
extern const u8 gMonIcon_Milotic[];
extern const u8 gMonIcon_Carvanha[];
extern const u8 gMonIcon_Sharpedo[];
extern const u8 gMonIcon_Trapinch[];
extern const u8 gMonIcon_Vibrava[];
extern const u8 gMonIcon_Flygon[];
extern const u8 gMonIcon_Makuhita[];
extern const u8 gMonIcon_Hariyama[];
extern const u8 gMonIcon_Electrike[];
extern const u8 gMonIcon_Manectric[];
extern const u8 gMonIcon_Numel[];
extern const u8 gMonIcon_Camerupt[];
extern const u8 gMonIcon_Spheal[];
extern const u8 gMonIcon_Sealeo[];
extern const u8 gMonIcon_Walrein[];
extern const u8 gMonIcon_Cacnea[];
extern const u8 gMonIcon_Cacturne[];
extern const u8 gMonIcon_Snorunt[];
extern const u8 gMonIcon_Glalie[];
extern const u8 gMonIcon_Lunatone[];
extern const u8 gMonIcon_Solrock[];
extern const u8 gMonIcon_Azurill[];
extern const u8 gMonIcon_Spoink[];
extern const u8 gMonIcon_Grumpig[];
extern const u8 gMonIcon_Plusle[];
extern const u8 gMonIcon_Minun[];
extern const u8 gMonIcon_Mawile[];
extern const u8 gMonIcon_Meditite[];
extern const u8 gMonIcon_Medicham[];
extern const u8 gMonIcon_Swablu[];
extern const u8 gMonIcon_Altaria[];
extern const u8 gMonIcon_Wynaut[];
extern const u8 gMonIcon_Duskull[];
extern const u8 gMonIcon_Dusclops[];
extern const u8 gMonIcon_Roselia[];
extern const u8 gMonIcon_Slakoth[];
extern const u8 gMonIcon_Vigoroth[];
extern const u8 gMonIcon_Slaking[];
extern const u8 gMonIcon_Gulpin[];
extern const u8 gMonIcon_Swalot[];
extern const u8 gMonIcon_Tropius[];
extern const u8 gMonIcon_Whismur[];
extern const u8 gMonIcon_Loudred[];
extern const u8 gMonIcon_Exploud[];
extern const u8 gMonIcon_Clamperl[];
extern const u8 gMonIcon_Huntail[];
extern const u8 gMonIcon_Gorebyss[];
extern const u8 gMonIcon_Absol[];
extern const u8 gMonIcon_Shuppet[];
extern const u8 gMonIcon_Banette[];
extern const u8 gMonIcon_Seviper[];
extern const u8 gMonIcon_Zangoose[];
extern const u8 gMonIcon_Relicanth[];
extern const u8 gMonIcon_Aron[];
extern const u8 gMonIcon_Lairon[];
extern const u8 gMonIcon_Aggron[];
extern const u8 gMonIcon_Castform[];
extern const u8 gMonIcon_Volbeat[];
extern const u8 gMonIcon_Illumise[];
extern const u8 gMonIcon_Lileep[];
extern const u8 gMonIcon_Cradily[];
extern const u8 gMonIcon_Anorith[];
extern const u8 gMonIcon_Armaldo[];
extern const u8 gMonIcon_Ralts[];
extern const u8 gMonIcon_Kirlia[];
extern const u8 gMonIcon_Gardevoir[];
extern const u8 gMonIcon_Bagon[];
extern const u8 gMonIcon_Shelgon[];
extern const u8 gMonIcon_Salamence[];
extern const u8 gMonIcon_Beldum[];
extern const u8 gMonIcon_Metang[];
extern const u8 gMonIcon_Metagross[];
extern const u8 gMonIcon_Regirock[];
extern const u8 gMonIcon_Regice[];
extern const u8 gMonIcon_Registeel[];
extern const u8 gMonIcon_Kyogre[];
extern const u8 gMonIcon_Groudon[];
extern const u8 gMonIcon_Rayquaza[];
extern const u8 gMonIcon_Latias[];
extern const u8 gMonIcon_Latios[];
extern const u8 gMonIcon_Jirachi[];
extern const u8 gMonIcon_Deoxys[];
extern const u8 gMonIcon_Chimecho[];
extern const u8 gMonIcon_Egg[];
extern const u8 gMonIcon_Unown_B[];
extern const u8 gMonIcon_Unown_C[];
extern const u8 gMonIcon_Unown_D[];
extern const u8 gMonIcon_Unown_E[];
extern const u8 gMonIcon_Unown_F[];
extern const u8 gMonIcon_Unown_G[];
extern const u8 gMonIcon_Unown_H[];
extern const u8 gMonIcon_Unown_I[];
extern const u8 gMonIcon_Unown_J[];
extern const u8 gMonIcon_Unown_K[];
extern const u8 gMonIcon_Unown_L[];
extern const u8 gMonIcon_Unown_M[];
extern const u8 gMonIcon_Unown_N[];
extern const u8 gMonIcon_Unown_O[];
extern const u8 gMonIcon_Unown_P[];
extern const u8 gMonIcon_Unown_Q[];
extern const u8 gMonIcon_Unown_R[];
extern const u8 gMonIcon_Unown_S[];
extern const u8 gMonIcon_Unown_T[];
extern const u8 gMonIcon_Unown_U[];
extern const u8 gMonIcon_Unown_V[];
extern const u8 gMonIcon_Unown_W[];
extern const u8 gMonIcon_Unown_X[];
extern const u8 gMonIcon_Unown_Y[];
extern const u8 gMonIcon_Unown_Z[];
extern const u8 gMonIcon_Unown_ExclamationMark[];
extern const u8 gMonIcon_Unown_QuestionMark[];
extern const u8 gMonIcon_QuestionMark[];
#endif //GUARD_GRAPHICS_H
+7 -6
View File
@@ -4,20 +4,21 @@
#include "global.h"
const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo);
const u8 *GetMonIconTiles(u16 iconSpecies, bool32 extra);
const u16 *GetValidMonIconPalettePtr(u16 speciesId);
u16 sub_80D2E84(u16 speciesId);
void sub_80D2F68(u16 iconId);
u8 sub_80D2D78(u16 iconId, void callback(struct Sprite *), u16 x, u16 y, u16 a4, u8 a5);
void sub_80D2FF0(u16 iconId);
void sub_80D2EF8(struct Sprite *sprite);
void sub_809707C(void);
void LoadMonIconPalettes(void);
void FreeMonIconPalettes(void);
u16 sub_8096FD4(u16);
u8 sub_8096ECC(u16, void (*)(struct Sprite *), s16, s16, u8, bool32);
void sub_8097070(struct Sprite *);
u16 MailSpeciesToIconSpecies(u16);
u8 CreateMonIcon_HandleDeoxys(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, bool32 extra);
void DestroyMonIcon(struct Sprite *);
u16 GetUnownLetterByPersonality(u32 personality);
u8 UpdateMonIconFrame(struct Sprite *sprite);
void sub_80970E0(u16 iconId);
void sub_8097168(u16 iconId);
void LoadMonIconPalette(u16 iconId);
void FreeMonIconPalette(u16 iconId);
#endif // GUARD_POKEMON_ICON_H
+3 -1
View File
@@ -131,7 +131,7 @@ SECTIONS {
src/pokedex.o(.text);
asm/trainer_card.o(.text);
asm/pokemon_storage_system.o(.text);
asm/pokemon_icon.o(.text);
src/pokemon_icon.o(.text);
asm/script_movement.o(.text);
asm/fldeff_cut.o(.text);
src/mail_data.o(.text);
@@ -420,6 +420,8 @@ SECTIONS {
src/title_screen.o(.rodata);
data/field_weather.o(.rodata);
data/data_835B488.o(.rodata);
src/pokemon_icon.o(.rodata);
data/data_835B488.o(.rodata.83D4100);
src/item_menu_icons.o(.rodata);
src/battle_anim_mon_movement.o(.rodata);
src/item.o(.rodata);
+7 -7
View File
@@ -596,16 +596,16 @@ static bool8 DoInitMailView(void)
gPaletteFade.bufferTransferDisabled = TRUE;
break;
case 17:
iconId = sub_8096FD4(sMailViewResources->mail->species);
iconId = MailSpeciesToIconSpecies(sMailViewResources->mail->species);
switch (sMailViewResources->monIconType)
{
case MAIL_ICON_BEAD:
sub_80970E0(iconId);
sMailViewResources->monIconSpriteId = sub_8096ECC(iconId, SpriteCallbackDummy, 0x60, 0x80, 0, FALSE);
LoadMonIconPalette(iconId);
sMailViewResources->monIconSpriteId = CreateMonIcon_HandleDeoxys(iconId, SpriteCallbackDummy, 0x60, 0x80, 0, FALSE);
break;
case MAIL_ICON_DREAM:
sub_80970E0(iconId);
sMailViewResources->monIconSpriteId = sub_8096ECC(iconId, SpriteCallbackDummy, 0x28, 0x80, 0, FALSE);
LoadMonIconPalette(iconId);
sMailViewResources->monIconSpriteId = CreateMonIcon_HandleDeoxys(iconId, SpriteCallbackDummy, 0x28, 0x80, 0, FALSE);
break;
}
break;
@@ -726,8 +726,8 @@ static void ShowMailCB_Teardown(void)
{
case MAIL_ICON_BEAD:
case MAIL_ICON_DREAM:
sub_8097168(sub_8096FD4(sMailViewResources->mail->species));
sub_8097070(&gSprites[sMailViewResources->monIconSpriteId]);
FreeMonIconPalette(MailSpeciesToIconSpecies(sMailViewResources->mail->species));
DestroyMonIcon(&gSprites[sMailViewResources->monIconSpriteId]);
break;
}
*sMailViewResources = (struct MailViewResources){};
+5 -5
View File
@@ -200,7 +200,7 @@ s32 FadeToWonderCardMenu(void)
CopyBgTilemapBufferToVram(1);
break;
case 6:
sub_809707C();
LoadMonIconPalettes();
break;
case 7:
ShowBg(1);
@@ -398,7 +398,7 @@ void sub_8146060(void)
gUnknown_203F3C8->unk_017C = 0xFF;
if (gUnknown_203F3C8->unk_014C.unk_06 != SPECIES_NONE)
{
gUnknown_203F3C8->unk_017C = sub_8096ECC(sub_8096FD4(gUnknown_203F3C8->unk_014C.unk_06), SpriteCallbackDummy, 0xDC, 0x14, 0, FALSE);
gUnknown_203F3C8->unk_017C = CreateMonIcon_HandleDeoxys(MailSpeciesToIconSpecies(gUnknown_203F3C8->unk_014C.unk_06), SpriteCallbackDummy, 0xDC, 0x14, 0, FALSE);
gSprites[gUnknown_203F3C8->unk_017C].oam.priority = 2;
}
if (gUnknown_203F3C8->unk_0000.unk_09 != 0 && gUnknown_203F3C8->unk_0000.unk_08_0 == 1)
@@ -412,7 +412,7 @@ void sub_8146060(void)
gUnknown_203F3C8->unk_017D[r7][0] = CreateSprite(&gUnknown_8467FA0, 0xd8 - 32 * r7, 0x90, 8);
if (gUnknown_203F3C8->unk_014C.unk_08[0][r7] != 0)
{
gUnknown_203F3C8->unk_017D[r7][1] = sub_8096ECC(sub_8096FD4(gUnknown_203F3C8->unk_014C.unk_08[0][r7]), SpriteCallbackDummy, 0xd8 - 32 * r7, 0x88, 0, 0);
gUnknown_203F3C8->unk_017D[r7][1] = CreateMonIcon_HandleDeoxys(MailSpeciesToIconSpecies(gUnknown_203F3C8->unk_014C.unk_08[0][r7]), SpriteCallbackDummy, 0xd8 - 32 * r7, 0x88, 0, 0);
gSprites[gUnknown_203F3C8->unk_017D[r7][1]].oam.priority = 2;
}
}
@@ -423,7 +423,7 @@ void sub_81461D8(void)
{
u8 r6 = 0;
if (gUnknown_203F3C8->unk_017C != 0xFF)
sub_8097070(&gSprites[gUnknown_203F3C8->unk_017C]);
DestroyMonIcon(&gSprites[gUnknown_203F3C8->unk_017C]);
if (gUnknown_203F3C8->unk_0000.unk_09 != 0 && gUnknown_203F3C8->unk_0000.unk_08_0 == 1)
{
for (; r6 < gUnknown_203F3C8->unk_0000.unk_09; r6++)
@@ -435,7 +435,7 @@ void sub_81461D8(void)
// if (gUnknown_203F3C8->unk_017D[r6][1] != 0xFF)
if (gUnknown_203F3C8->unk_017D[r6][0] != 0xFF)
{
sub_8097070(&gSprites[gUnknown_203F3C8->unk_017D[r6][1]]);
DestroyMonIcon(&gSprites[gUnknown_203F3C8->unk_017D[r6][1]]);
}
}
}
+1284
View File
File diff suppressed because it is too large Load Diff
+2 -1
View File
@@ -1,4 +1,3 @@
#define _POSIX_C_SOURCE 200808L // Don't use GNU getline
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
@@ -20,6 +19,7 @@ static const char HELP[] = "br_ips\n"
"Options:\n"
" -h - show this message and exit\n";
#if !defined(__CYGWIN__) && !defined(__APPLE__) && (_POSIX_C_SOURCE < 200809L || !_GNU_SOURCE)
static int getline(char ** lineptr, size_t * n, FILE * stream) {
// Static implementation of GNU getline
int i = 0;
@@ -49,6 +49,7 @@ static int getline(char ** lineptr, size_t * n, FILE * stream) {
buf[i] = 0;
return i;
}
#endif
static void getIncbinsFromFile(hunk_t ** hunks, size_t * num, size_t * maxnum, const char * fname, char ** strbuf, size_t * buffersize) {
// Recursively find incbinned segments and encode them as hunks.