summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDizzyEggg <jajkodizzy@wp.pl>2018-12-17 23:00:08 +0100
committerDizzyEggg <jajkodizzy@wp.pl>2018-12-17 23:00:08 +0100
commit9ffd0c73829e5a0aded23518887007da9c3fc44c (patch)
tree7f9f83c9e4e99ef04351f4ccfcc3289cd9bcec7c
parentaae36b5653537a063560dc2c7df261cc7b950a4c (diff)
3.5 asm left
-rw-r--r--asm/battle_anim_8170478.s12
-rw-r--r--asm/cable_car.s2
-rw-r--r--asm/contest.s6
-rw-r--r--asm/contest_link_80F57C4.s6
-rw-r--r--asm/easy_chat.s2
-rw-r--r--asm/party_menu.s10
-rw-r--r--asm/pokemon_storage_system.s2372
-rw-r--r--asm/pokenav.s14
-rw-r--r--asm/rom_8011DC0.s14
-rw-r--r--asm/roulette.s6
-rw-r--r--asm/trade.s2
-rw-r--r--asm/trainer_card.s10
-rw-r--r--asm/use_pokeblock.s2
-rw-r--r--data/pokemon_storage_system.s56
-rw-r--r--include/bg.h10
-rw-r--r--include/blit.h2
-rw-r--r--include/decompress.h12
-rw-r--r--include/pokemon_icon.h1
-rw-r--r--include/pokemon_storage_system.h14
-rw-r--r--include/window.h6
-rw-r--r--src/battle_anim.c4
-rw-r--r--src/battle_anim_80A9C70.c4
-rw-r--r--src/battle_arena.c2
-rw-r--r--src/battle_bg.c2
-rw-r--r--src/battle_dome.c4
-rw-r--r--src/battle_factory_screen.c4
-rw-r--r--src/battle_gfx_sfx_util.c44
-rw-r--r--src/battle_interface.c2
-rw-r--r--src/battle_pyramid_bag.c2
-rw-r--r--src/berry_tag_screen.c4
-rw-r--r--src/bg.c84
-rw-r--r--src/contest.c6
-rw-r--r--src/credits.c12
-rw-r--r--src/decompress.c12
-rw-r--r--src/decoration.c2
-rw-r--r--src/egg_hatch.c2
-rw-r--r--src/evolution_graphics.c2
-rw-r--r--src/field_effect.c4
-rw-r--r--src/hall_of_fame.c8
-rw-r--r--src/intro.c26
-rw-r--r--src/intro_credits_graphics.c12
-rw-r--r--src/item_icon.c4
-rwxr-xr-xsrc/item_menu.c6
-rw-r--r--src/item_menu_icons.c2
-rw-r--r--src/link_rfu.c2
-rw-r--r--src/list_menu.c6
-rw-r--r--src/menu_helpers.c4
-rw-r--r--src/money.c4
-rw-r--r--src/pokeball.c12
-rw-r--r--src/pokeblock.c4
-rw-r--r--src/pokeblock_feed.c10
-rw-r--r--src/pokedex.c4
-rw-r--r--src/pokemon_icon.c2
-rw-r--r--src/pokemon_storage_system.c1048
-rw-r--r--src/pokemon_summary_screen.c12
-rw-r--r--src/rayquaza_scene.c46
-rw-r--r--src/rom_8034C54.c2
-rwxr-xr-xsrc/script_pokemon_util_80F87D8.c2
-rw-r--r--src/smokescreen.c4
-rw-r--r--src/starter_choose.c4
-rw-r--r--src/title_screen.c6
-rw-r--r--src/trainer_pokemon_sprites.c4
-rw-r--r--src/unk_transition.c2
-rw-r--r--src/wallclock.c2
-rw-r--r--src/window.c66
65 files changed, 1321 insertions, 2738 deletions
diff --git a/asm/battle_anim_8170478.s b/asm/battle_anim_8170478.s
index c0881e682..44a5d624b 100644
--- a/asm/battle_anim_8170478.s
+++ b/asm/battle_anim_8170478.s
@@ -2996,10 +2996,10 @@ sub_8171D60: @ 8171D60
cmp r0, r1
bne _08171D86
adds r0, r4, 0
- bl LoadCompressedObjectPicUsingHeap
+ bl LoadCompressedSpriteSheetUsingHeap
ldr r0, =gUnknown_085E50F4
adds r0, r5, r0
- bl LoadCompressedObjectPaletteUsingHeap
+ bl LoadCompressedSpritePaletteUsingHeap
_08171D86:
pop {r4,r5}
pop {r0}
@@ -5135,9 +5135,9 @@ _08172F4E:
cmp r0, r7
bne _08172F6E
ldr r0, =gBattleAnimPicTable + 0x748
- bl LoadCompressedObjectPicUsingHeap
+ bl LoadCompressedSpriteSheetUsingHeap
ldr r0, =gBattleAnimPaletteTable + 0x748
- bl LoadCompressedObjectPaletteUsingHeap
+ bl LoadCompressedSpritePaletteUsingHeap
_08172F6E:
ldr r5, =sub_8172FEC
adds r0, r5, 0
@@ -5534,9 +5534,9 @@ sub_81732B0: @ 81732B0
lsls r4, 24
lsrs r4, 24
ldr r0, =gBattleAnimPicTable + 0x868
- bl LoadCompressedObjectPicUsingHeap
+ bl LoadCompressedSpriteSheetUsingHeap
ldr r0, =gBattleAnimPaletteTable + 0x868
- bl LoadCompressedObjectPaletteUsingHeap
+ bl LoadCompressedSpritePaletteUsingHeap
ldr r0, =0x0000281d
bl IndexOfSpritePaletteTag
adds r0, r4, 0
diff --git a/asm/cable_car.s b/asm/cable_car.s
index 276b878e2..c1eafc506 100644
--- a/asm/cable_car.s
+++ b/asm/cable_car.s
@@ -234,7 +234,7 @@ _0814FE90:
_0814FE96:
lsls r0, r4, 3
adds r0, r6
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
diff --git a/asm/contest.s b/asm/contest.s
index 35dbaf385..a9abd9430 100644
--- a/asm/contest.s
+++ b/asm/contest.s
@@ -1657,7 +1657,7 @@ _080DC506:
lsls r0, r5, 3
ldr r1, =gUnknown_08587AE8
adds r0, r1
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gSpriteTemplate_8587B18
adds r0, r6, r0
ldr r2, =gUnknown_08587A70
@@ -1713,7 +1713,7 @@ _080DC506:
sub_80DC594: @ 80DC594
push {lr}
ldr r0, =gUnknown_08587BB0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_08587BB8
bl LoadSpritePalette
ldr r0, =gSpriteTemplate_8587BC8
@@ -2286,7 +2286,7 @@ sub_80DC9EC: @ 80DC9EC
lsls r4, r1, 3
ldr r0, =gUnknown_08589904
adds r0, r4, r0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_08589924
adds r4, r0
adds r0, r4, 0
diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s
index e09e0e25d..b869adf1b 100644
--- a/asm/contest_link_80F57C4.s
+++ b/asm/contest_link_80F57C4.s
@@ -1417,7 +1417,7 @@ _080F64F2:
adds r2, r4, 0
bl GetMonSpritePalStructFromOtIdPersonality
adds r4, r0, 0
- bl LoadCompressedObjectPalette
+ bl LoadCompressedSpritePalette
adds r0, r6, 0
movs r1, 0x1
bl SetMultiuseSpriteTemplateToPokemon
@@ -1451,9 +1451,9 @@ _080F64F2:
ldr r1, [r1]
strb r0, [r1, 0x8]
ldr r0, =gUnknown_0858D878
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_0858D880
- bl LoadCompressedObjectPalette
+ bl LoadCompressedSpritePalette
ldr r0, =sub_80F7670
movs r1, 0xA
bl CreateTask
diff --git a/asm/easy_chat.s b/asm/easy_chat.s
index 70786ab65..f6f09a87e 100644
--- a/asm/easy_chat.s
+++ b/asm/easy_chat.s
@@ -6455,7 +6455,7 @@ sub_811DE90: @ 811DE90
ldr r4, =gUnknown_08597CE8
_0811DEA2:
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x8
adds r5, 0x1
cmp r5, 0x3
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 27ad74541..2706368c2 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -11361,11 +11361,11 @@ _081B602C:
sub_81B6040: @ 81B6040
push {lr}
ldr r0, =gUnknown_08615EF8
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_08615F70
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_08615F00
- bl LoadCompressedObjectPalette
+ bl LoadCompressedSpritePalette
pop {r0}
bx r0
.pool
@@ -11506,9 +11506,9 @@ _081B6152:
sub_81B6160: @ 81B6160
push {lr}
ldr r0, =gUnknown_08615FF8
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_08616000
- bl LoadCompressedObjectPalette
+ bl LoadCompressedSpritePalette
pop {r0}
bx r0
.pool
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 38bb6ce8e..6dbe6b0f2 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -8,2378 +8,6 @@
- thumb_func_start sub_80D0164
-sub_80D0164: @ 80D0164
- push {r4,lr}
- ldr r4, =gUnknown_02039D80
- ldr r0, =0x00000974
- bl Alloc
- str r0, [r4]
- cmp r0, 0
- beq _080D01B0
- ldr r0, =gUnknown_0857BB1C
- bl AddWindow8Bit
- adds r1, r0, 0
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- movs r2, 0x88
- lsls r2, 6
- adds r0, r2
- strh r1, [r0]
- lsls r0, r1, 16
- lsrs r0, 16
- cmp r0, 0xFF
- beq _080D01B0
- lsls r0, r1, 24
- lsrs r0, 24
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0x1
- b _080D01B2
- .pool
-_080D01B0:
- movs r0, 0
-_080D01B2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80D0164
-
- thumb_func_start sub_80D01B8
-sub_80D01B8: @ 80D01B8
- push {lr}
- ldr r0, =gUnknown_02039D80
- ldr r0, [r0]
- cmp r0, 0
- beq _080D01C6
- bl Free
-_080D01C6:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D01B8
-
- thumb_func_start sub_80D01D0
-sub_80D01D0: @ 80D01D0
- ldr r2, =gUnknown_02039D80
- ldr r1, [r2]
- movs r3, 0
- strb r0, [r1]
- ldr r0, [r2]
- strb r3, [r0, 0x1]
- bx lr
- .pool
- thumb_func_end sub_80D01D0
-
- thumb_func_start sub_80D01E4
-sub_80D01E4: @ 80D01E4
- push {lr}
- ldr r0, =gUnknown_02039D80
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r0, 0x5
- bhi _080D0244
- lsls r0, 2
- ldr r1, =_080D0204
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080D0204:
- .4byte _080D021C
- .4byte _080D0222
- .4byte _080D0228
- .4byte _080D022E
- .4byte _080D0234
- .4byte _080D023A
-_080D021C:
- bl sub_80D024C
- b _080D023E
-_080D0222:
- bl sub_80D0344
- b _080D023E
-_080D0228:
- bl sub_80D03B0
- b _080D023E
-_080D022E:
- bl sub_80D0420
- b _080D023E
-_080D0234:
- bl sub_80D04A0
- b _080D023E
-_080D023A:
- bl sub_80D04C8
-_080D023E:
- lsls r0, 24
- lsrs r0, 24
- b _080D0246
-_080D0244:
- movs r0, 0
-_080D0246:
- pop {r1}
- bx r1
- thumb_func_end sub_80D01E4
-
- thumb_func_start sub_80D024C
-sub_80D024C: @ 80D024C
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r6, =gUnknown_02039D80
- ldr r1, [r6]
- ldrb r0, [r1, 0x1]
- cmp r0, 0x1
- beq _080D027C
- cmp r0, 0x1
- bgt _080D0268
- cmp r0, 0
- beq _080D026E
- b _080D0338
- .pool
-_080D0268:
- cmp r0, 0x2
- beq _080D0324
- b _080D0338
-_080D026E:
- movs r0, 0
- bl HideBg
- movs r0, 0x80
- bl sub_80D304C
- b _080D030E
-_080D027C:
- adds r0, r1, 0x2
- adds r1, 0x3
- bl sub_80CFE14
- ldr r1, [r6]
- ldrb r0, [r1, 0x2]
- strb r0, [r1, 0x4]
- ldr r1, [r6]
- ldrb r0, [r1, 0x3]
- strb r0, [r1, 0x5]
- ldr r4, =0xfffffc00
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x20
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect_Palette0
- ldr r5, =gUnknown_02039D08
- ldr r0, [r5]
- movs r4, 0x88
- lsls r4, 6
- adds r0, r4
- ldrb r0, [r0]
- movs r1, 0
- bl FillWindowPixelBuffer8Bit
- ldr r1, [r6]
- ldrb r0, [r1, 0x2]
- ldrb r1, [r1, 0x3]
- bl sub_80D07B0
- movs r0, 0
- movs r1, 0x4
- movs r2, 0x1
- bl SetBgAttribute
- ldr r0, [r5]
- adds r0, r4
- ldrb r0, [r0]
- bl PutWindowTilemap
- ldr r0, [r5]
- adds r0, r4
- ldrb r0, [r0]
- movs r1, 0x3
- bl CopyWindowToVram8Bit
- movs r0, 0xFC
- lsls r0, 6
- ldr r2, =0x00007fff
- movs r1, 0x8
- bl BlendPalettes
- movs r0, 0x2
- bl sub_80CFE54
- movs r0, 0x8
- movs r1, 0x80
- bl SetGpuRegBits
-_080D030E:
- ldr r1, [r6]
- ldrb r0, [r1, 0x1]
- adds r0, 0x1
- strb r0, [r1, 0x1]
- b _080D0338
- .pool
-_080D0324:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _080D0338
- movs r0, 0
- bl ShowBg
- movs r0, 0
- b _080D033A
-_080D0338:
- movs r0, 0x1
-_080D033A:
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80D024C
-
- thumb_func_start sub_80D0344
-sub_80D0344: @ 80D0344
- push {r4,lr}
- ldr r4, =gUnknown_02039D80
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x1
- beq _080D036E
- cmp r0, 0x1
- bgt _080D0360
- cmp r0, 0
- beq _080D0366
- b _080D03A8
- .pool
-_080D0360:
- cmp r0, 0x2
- beq _080D0382
- b _080D03A8
-_080D0366:
- movs r0, 0
- bl HideBg
- b _080D0378
-_080D036E:
- bl sub_80D0B5C
- movs r0, 0
- bl sub_80CFE54
-_080D0378:
- ldr r1, [r4]
- ldrb r0, [r1, 0x1]
- adds r0, 0x1
- strb r0, [r1, 0x1]
- b _080D03A8
-_080D0382:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _080D03A8
- bl sub_80CFE84
- movs r0, 0x3
- bl stdpal_get
- movs r1, 0xD0
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0
- bl ShowBg
- movs r0, 0
- b _080D03AA
-_080D03A8:
- movs r0, 0x1
-_080D03AA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80D0344
-
- thumb_func_start sub_80D03B0
-sub_80D03B0: @ 80D03B0
- push {r4,lr}
- ldr r4, =gUnknown_02039D80
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _080D03C8
- cmp r0, 0x1
- beq _080D040C
- b _080D0416
- .pool
-_080D03C8:
- bl sub_80CD554
- lsls r0, 24
- cmp r0, 0
- bne _080D0416
- ldr r1, [r4]
- adds r0, r1, 0x6
- adds r1, 0x7
- bl sub_80CFE14
- bl sub_80D062C
- ldr r1, [r4]
- ldrb r0, [r1, 0x6]
- strb r0, [r1, 0x4]
- ldr r1, [r4]
- ldrb r0, [r1, 0x7]
- strb r0, [r1, 0x5]
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- movs r1, 0x88
- lsls r1, 6
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0x2
- bl CopyWindowToVram8Bit
- ldr r1, [r4]
- ldrb r0, [r1, 0x1]
- adds r0, 0x1
- strb r0, [r1, 0x1]
- b _080D0416
- .pool
-_080D040C:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _080D0418
-_080D0416:
- movs r0, 0x1
-_080D0418:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80D03B0
-
- thumb_func_start sub_80D0420
-sub_80D0420: @ 80D0420
- push {r4,lr}
- ldr r4, =gUnknown_02039D80
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x1
- beq _080D044E
- cmp r0, 0x1
- bgt _080D043C
- cmp r0, 0
- beq _080D0442
- b _080D0498
- .pool
-_080D043C:
- cmp r0, 0x2
- beq _080D047A
- b _080D0498
-_080D0442:
- bl sub_80D08CC
- bl sub_80D09A4
- movs r0, 0
- b _080D046C
-_080D044E:
- bl DoMonPlaceChange
- lsls r0, 24
- cmp r0, 0
- bne _080D0498
- movs r0, 0x3
- bl sub_80CFE54
- movs r1, 0x80
- lsls r1, 1
- movs r0, 0
- movs r2, 0x8
- bl sub_80D0884
- movs r0, 0x1
-_080D046C:
- bl sub_80CDC64
- ldr r1, [r4]
- ldrb r0, [r1, 0x1]
- adds r0, 0x1
- strb r0, [r1, 0x1]
- b _080D0498
-_080D047A:
- bl sub_80D0894
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl DoMonPlaceChange
- lsls r0, 24
- lsrs r0, 24
- cmp r4, 0
- bne _080D0498
- cmp r0, 0
- bne _080D0498
- movs r0, 0
- b _080D049A
-_080D0498:
- movs r0, 0x1
-_080D049A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80D0420
-
- thumb_func_start sub_80D04A0
-sub_80D04A0: @ 80D04A0
- push {r4,lr}
- bl sub_80CD554
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80D0894
- lsls r0, 24
- lsrs r0, 24
- cmp r4, 0
- bne _080D04C0
- cmp r0, 0
- bne _080D04C0
- movs r0, 0
- b _080D04C2
-_080D04C0:
- movs r0, 0x1
-_080D04C2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80D04A0
-
- thumb_func_start sub_80D04C8
-sub_80D04C8: @ 80D04C8
- push {r4,lr}
- ldr r4, =gUnknown_02039D80
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x1
- beq _080D0506
- cmp r0, 0x1
- bgt _080D04E4
- cmp r0, 0
- beq _080D04EE
- b _080D0576
- .pool
-_080D04E4:
- cmp r0, 0x2
- beq _080D0532
- cmp r0, 0x3
- beq _080D0550
- b _080D0576
-_080D04EE:
- bl sub_80D0AAC
- movs r1, 0xFF
- lsls r1, 8
- movs r0, 0
- movs r2, 0x8
- bl sub_80D0884
- movs r0, 0
- bl sub_80CDC64
- b _080D0546
-_080D0506:
- bl DoMonPlaceChange
- lsls r0, 24
- cmp r0, 0
- bne _080D0576
- bl sub_80D0894
- lsls r0, 24
- cmp r0, 0
- bne _080D0576
- bl sub_80D0A1C
- movs r0, 0x2
- bl sub_80CFE54
- movs r0, 0x1
- bl sub_80CDC64
- movs r0, 0
- bl HideBg
- b _080D0546
-_080D0532:
- bl DoMonPlaceChange
- lsls r0, 24
- cmp r0, 0
- bne _080D0576
- movs r0, 0
- bl sub_80CFE54
- bl sub_80D0B5C
-_080D0546:
- ldr r1, [r4]
- ldrb r0, [r1, 0x1]
- adds r0, 0x1
- strb r0, [r1, 0x1]
- b _080D0576
-_080D0550:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _080D0576
- movs r0, 0x3
- bl stdpal_get
- movs r1, 0xD0
- movs r2, 0x20
- bl LoadPalette
- bl sub_80CFE84
- movs r0, 0
- bl ShowBg
- movs r0, 0
- b _080D0578
-_080D0576:
- movs r0, 0x1
-_080D0578:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80D04C8
-
- thumb_func_start sub_80D0580
-sub_80D0580: @ 80D0580
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x1
- beq _080D05BC
- cmp r0, 0x1
- bgt _080D0596
- cmp r0, 0
- beq _080D05A0
- b _080D0624
-_080D0596:
- cmp r1, 0x2
- beq _080D05DC
- cmp r1, 0x3
- beq _080D05FC
- b _080D0624
-_080D05A0:
- ldr r0, =gUnknown_02039D80
- ldr r1, [r0]
- ldrb r0, [r1, 0x9]
- cmp r0, 0
- beq _080D060A
- subs r0, 0x1
- strb r0, [r1, 0x9]
- movs r1, 0x80
- lsls r1, 3
- movs r0, 0
- b _080D05F0
- .pool
-_080D05BC:
- ldr r0, =gUnknown_02039D80
- ldr r1, [r0]
- ldrb r2, [r1, 0x9]
- ldrb r0, [r1, 0xB]
- adds r0, r2, r0
- cmp r0, 0x4
- bgt _080D060A
- adds r0, r2, 0x1
- strb r0, [r1, 0x9]
- movs r1, 0xFC
- lsls r1, 8
- movs r0, 0
- b _080D05F0
- .pool
-_080D05DC:
- ldr r0, =gUnknown_02039D80
- ldr r1, [r0]
- ldrb r0, [r1, 0x8]
- cmp r0, 0
- beq _080D060A
- subs r0, 0x1
- strb r0, [r1, 0x8]
- movs r0, 0x80
- lsls r0, 3
- movs r1, 0
-_080D05F0:
- movs r2, 0x6
- bl sub_80D0884
- b _080D0624
- .pool
-_080D05FC:
- ldr r0, =gUnknown_02039D80
- ldr r1, [r0]
- ldrb r2, [r1, 0x8]
- ldrb r0, [r1, 0xA]
- adds r0, r2, r0
- cmp r0, 0x5
- ble _080D0614
-_080D060A:
- movs r0, 0
- b _080D0626
- .pool
-_080D0614:
- adds r0, r2, 0x1
- strb r0, [r1, 0x8]
- movs r0, 0xFC
- lsls r0, 8
- movs r1, 0
- movs r2, 0x6
- bl sub_80D0884
-_080D0624:
- movs r0, 0x1
-_080D0626:
- pop {r1}
- bx r1
- thumb_func_end sub_80D0580
-
- thumb_func_start sub_80D062C
-sub_80D062C: @ 80D062C
- push {r4-r7,lr}
- ldr r6, =gUnknown_02039D80
- ldr r2, [r6]
- ldrb r3, [r2, 0x2]
- ldrb r5, [r2, 0x6]
- subs r1, r3, r5
- cmp r1, 0
- bge _080D063E
- negs r1, r1
-_080D063E:
- ldrb r0, [r2, 0x4]
- subs r0, r3, r0
- cmp r0, 0
- bge _080D0648
- negs r0, r0
-_080D0648:
- subs r0, r1, r0
- lsls r0, 16
- lsrs r4, r0, 16
- ldrb r1, [r2, 0x3]
- ldrb r0, [r2, 0x7]
- subs r3, r1, r0
- cmp r3, 0
- bge _080D065A
- negs r3, r3
-_080D065A:
- ldrb r2, [r2, 0x5]
- subs r0, r1, r2
- cmp r0, 0
- bge _080D0664
- negs r0, r0
-_080D0664:
- subs r0, r3, r0
- lsls r0, 16
- lsrs r7, r0, 16
- lsls r0, r4, 16
- asrs r4, r0, 16
- cmp r4, 0
- ble _080D0678
- adds r0, r5, 0
- bl sub_80D06D0
-_080D0678:
- cmp r4, 0
- bge _080D0694
- ldr r2, [r6]
- ldrb r0, [r2, 0x4]
- ldrb r1, [r2, 0x3]
- ldrb r2, [r2, 0x5]
- bl sub_80D0740
- ldr r2, [r6]
- ldrb r0, [r2, 0x6]
- ldrb r1, [r2, 0x3]
- ldrb r2, [r2, 0x5]
- bl sub_80D06D0
-_080D0694:
- lsls r0, r7, 16
- asrs r4, r0, 16
- cmp r4, 0
- ble _080D06A8
- ldr r2, [r6]
- ldrb r0, [r2, 0x7]
- ldrb r1, [r2, 0x2]
- ldrb r2, [r2, 0x4]
- bl sub_80D0708
-_080D06A8:
- cmp r4, 0
- bge _080D06C4
- ldr r2, [r6]
- ldrb r0, [r2, 0x5]
- ldrb r1, [r2, 0x2]
- ldrb r2, [r2, 0x4]
- bl sub_80D0778
- ldr r2, [r6]
- ldrb r0, [r2, 0x7]
- ldrb r1, [r2, 0x2]
- ldrb r2, [r2, 0x4]
- bl sub_80D0708
-_080D06C4:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D062C
-
- thumb_func_start sub_80D06D0
-sub_80D06D0: @ 80D06D0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- adds r1, r4, 0
- lsls r2, 24
- lsrs r5, r2, 24
- adds r0, r5, 0
- cmp r4, r5
- bls _080D06EE
- adds r4, r5, 0
- adds r5, r1, 0
- cmp r0, r5
- bhi _080D0700
-_080D06EE:
- adds r1, r4, 0
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r6, 0
- bl sub_80D07B0
- cmp r4, r5
- bls _080D06EE
-_080D0700:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D06D0
-
- thumb_func_start sub_80D0708
-sub_80D0708: @ 80D0708
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- adds r1, r4, 0
- lsls r2, 24
- lsrs r5, r2, 24
- adds r0, r5, 0
- cmp r4, r5
- bls _080D0726
- adds r4, r5, 0
- adds r5, r1, 0
- cmp r0, r5
- bhi _080D0738
-_080D0726:
- adds r0, r4, 0
- adds r1, r0, 0x1
- lsls r1, 24
- lsrs r4, r1, 24
- adds r1, r6, 0
- bl sub_80D07B0
- cmp r4, r5
- bls _080D0726
-_080D0738:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D0708
-
- thumb_func_start sub_80D0740
-sub_80D0740: @ 80D0740
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- adds r1, r4, 0
- lsls r2, 24
- lsrs r5, r2, 24
- adds r0, r5, 0
- cmp r4, r5
- bls _080D075E
- adds r4, r5, 0
- adds r5, r1, 0
- cmp r0, r5
- bhi _080D0770
-_080D075E:
- adds r1, r4, 0
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r6, 0
- bl sub_80D0834
- cmp r4, r5
- bls _080D075E
-_080D0770:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D0740
-
- thumb_func_start sub_80D0778
-sub_80D0778: @ 80D0778
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- adds r1, r4, 0
- lsls r2, 24
- lsrs r5, r2, 24
- adds r0, r5, 0
- cmp r4, r5
- bls _080D0796
- adds r4, r5, 0
- adds r5, r1, 0
- cmp r0, r5
- bhi _080D07A8
-_080D0796:
- adds r0, r4, 0
- adds r1, r0, 0x1
- lsls r1, 24
- lsrs r4, r1, 24
- adds r1, r6, 0
- bl sub_80D0834
- cmp r4, r5
- bls _080D0796
-_080D07A8:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D0778
-
- thumb_func_start sub_80D07B0
-sub_80D07B0: @ 80D07B0
- push {r4-r7,lr}
- sub sp, 0x1C
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 1
- adds r7, r0, r1
- lsls r4, r7, 1
- adds r4, r6, r4
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x41
- bl GetCurrentBoxMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0
- bl GetCurrentBoxMonData
- adds r1, r0, 0
- cmp r5, 0
- beq _080D0828
- adds r0, r5, 0
- movs r2, 0x1
- bl GetMonIconPtr
- adds r4, r0, 0
- adds r0, r5, 0
- bl sub_80D3080
- adds r0, 0x8
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02039D08
- ldr r1, [r1]
- movs r2, 0x88
- lsls r2, 6
- adds r1, r2
- ldrb r3, [r1]
- movs r2, 0x20
- str r2, [sp]
- str r2, [sp, 0x4]
- lsls r1, r6, 1
- adds r1, r6
- lsls r1, 3
- str r1, [sp, 0x8]
- lsls r1, r7, 3
- str r1, [sp, 0xC]
- str r2, [sp, 0x10]
- str r2, [sp, 0x14]
- str r0, [sp, 0x18]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0
- bl BlitBitmapRectToWindow4BitTo8Bit
-_080D0828:
- add sp, 0x1C
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D07B0
-
- thumb_func_start sub_80D0834
-sub_80D0834: @ 80D0834
- push {r4,r5,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 1
- adds r5, r0, r1
- lsls r0, r5, 1
- adds r0, r4, r0
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x41
- bl GetCurrentBoxMonData
- lsls r0, 16
- cmp r0, 0
- beq _080D0878
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- movs r1, 0x88
- lsls r1, 6
- adds r0, r1
- ldrb r0, [r0]
- lsls r2, r4, 1
- adds r2, r4
- lsls r2, 3
- lsls r3, r5, 3
- movs r1, 0x20
- str r1, [sp]
- str r1, [sp, 0x4]
- movs r1, 0
- bl FillWindowPixelRect8Bit
-_080D0878:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0834
-
- thumb_func_start sub_80D0884
-sub_80D0884: @ 80D0884
- ldr r3, =gUnknown_02039D80
- ldr r3, [r3]
- strh r0, [r3, 0xC]
- strh r1, [r3, 0xE]
- strh r2, [r3, 0x10]
- bx lr
- .pool
- thumb_func_end sub_80D0884
-
- thumb_func_start sub_80D0894
-sub_80D0894: @ 80D0894
- push {r4,lr}
- ldr r4, =gUnknown_02039D80
- ldr r1, [r4]
- ldrh r0, [r1, 0x10]
- cmp r0, 0
- beq _080D08BE
- ldrh r1, [r1, 0xC]
- movs r0, 0
- movs r2, 0x1
- bl ChangeBgX
- ldr r0, [r4]
- ldrh r1, [r0, 0xE]
- movs r0, 0
- movs r2, 0x1
- bl ChangeBgY
- ldr r1, [r4]
- ldrh r0, [r1, 0x10]
- subs r0, 0x1
- strh r0, [r1, 0x10]
-_080D08BE:
- ldr r0, [r4]
- ldrb r0, [r0, 0x10]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80D0894
-
- thumb_func_start sub_80D08CC
-sub_80D08CC: @ 80D08CC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r4, =gUnknown_02039D80
- ldr r1, [r4]
- ldrb r0, [r1, 0x4]
- ldrb r2, [r1, 0x2]
- cmp r0, r2
- bls _080D08E4
- adds r0, r2, 0
-_080D08E4:
- strb r0, [r1, 0x8]
- ldr r1, [r4]
- ldrb r0, [r1, 0x5]
- ldrb r2, [r1, 0x3]
- cmp r0, r2
- bls _080D08F2
- adds r0, r2, 0
-_080D08F2:
- strb r0, [r1, 0x9]
- ldr r2, [r4]
- ldrb r1, [r2, 0x2]
- ldrb r0, [r2, 0x4]
- subs r0, r1, r0
- cmp r0, 0
- bge _080D0902
- negs r0, r0
-_080D0902:
- adds r0, 0x1
- strb r0, [r2, 0xA]
- ldr r2, [r4]
- ldrb r1, [r2, 0x3]
- ldrb r0, [r2, 0x5]
- subs r0, r1, r0
- cmp r0, 0
- bge _080D0914
- negs r0, r0
-_080D0914:
- adds r0, 0x1
- strb r0, [r2, 0xB]
- bl StorageGetCurrentBox
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- movs r6, 0
- ldr r0, [r4]
- ldrb r2, [r0, 0x8]
- ldrb r1, [r0, 0xA]
- adds r2, r1
- mov r8, r2
- ldrb r1, [r0, 0x9]
- ldrb r0, [r0, 0xB]
- adds r0, r1
- mov r9, r0
- adds r2, r1, 0
- cmp r2, r9
- bge _080D0990
-_080D093C:
- lsls r0, r2, 1
- adds r0, r2
- ldr r3, =gUnknown_02039D80
- ldr r1, [r3]
- lsls r0, 1
- ldrb r3, [r1, 0x8]
- adds r0, r3
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r4, [r1, 0x8]
- adds r7, r2, 0x1
- cmp r4, r8
- bge _080D098A
- mov r0, r8
- subs r4, r0, r4
-_080D095A:
- mov r0, r10
- adds r1, r5, 0
- bl GetBoxedMonPtr
- adds r1, r0, 0
- ldr r2, =gUnknown_02039D80
- ldr r0, [r2]
- lsls r2, r6, 2
- adds r2, r6
- lsls r2, 4
- adds r0, r2
- adds r0, 0x14
- movs r2, 0x50
- bl memcpy
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- subs r4, 0x1
- cmp r4, 0
- bne _080D095A
-_080D098A:
- adds r2, r7, 0
- cmp r2, r9
- blt _080D093C
-_080D0990:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D08CC
-
- thumb_func_start sub_80D09A4
-sub_80D09A4: @ 80D09A4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r4, =gUnknown_02039D80
- ldr r0, [r4]
- ldrb r2, [r0, 0x8]
- ldrb r1, [r0, 0xA]
- adds r7, r2, r1
- ldrb r1, [r0, 0x9]
- ldrb r0, [r0, 0xB]
- adds r1, r0
- mov r9, r1
- bl StorageGetCurrentBox
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, [r4]
- ldrb r2, [r0, 0x9]
- cmp r2, r9
- bge _080D0A0C
-_080D09D0:
- lsls r0, r2, 1
- adds r0, r2
- ldr r1, =gUnknown_02039D80
- ldr r1, [r1]
- lsls r0, 1
- ldrb r3, [r1, 0x8]
- adds r0, r3
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r4, [r1, 0x8]
- adds r6, r2, 0x1
- cmp r4, r7
- bge _080D0A06
- subs r4, r7, r4
-_080D09EC:
- adds r0, r5, 0
- bl DestroyBoxMonIconAtPosition
- mov r0, r8
- adds r1, r5, 0
- bl ZeroBoxMonAt
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- subs r4, 0x1
- cmp r4, 0
- bne _080D09EC
-_080D0A06:
- adds r2, r6, 0
- cmp r2, r9
- blt _080D09D0
-_080D0A0C:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D09A4
-
- thumb_func_start sub_80D0A1C
-sub_80D0A1C: @ 80D0A1C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gUnknown_02039D80
- ldr r0, [r0]
- ldrb r2, [r0, 0x8]
- ldrb r1, [r0, 0xA]
- adds r2, r1
- mov r8, r2
- ldrb r1, [r0, 0x9]
- ldrb r0, [r0, 0xB]
- adds r0, r1
- mov r10, r0
- movs r6, 0
- adds r2, r1, 0
- cmp r2, r10
- bge _080D0A98
-_080D0A42:
- lsls r0, r2, 1
- adds r0, r2
- ldr r3, =gUnknown_02039D80
- ldr r1, [r3]
- lsls r0, 1
- ldrb r4, [r1, 0x8]
- adds r0, r4
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r4, [r1, 0x8]
- adds r7, r2, 0x1
- cmp r4, r8
- bge _080D0A92
- mov r9, r3
- mov r0, r8
- subs r4, r0, r4
-_080D0A62:
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 4
- adds r1, 0x14
- mov r2, r9
- ldr r0, [r2]
- adds r0, r1
- movs r1, 0x5
- bl GetBoxMonData
- cmp r0, 0
- beq _080D0A80
- adds r0, r5, 0
- bl sub_80CB140
-_080D0A80:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- subs r4, 0x1
- cmp r4, 0
- bne _080D0A62
-_080D0A92:
- adds r2, r7, 0
- cmp r2, r10
- blt _080D0A42
-_080D0A98:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0A1C
-
- thumb_func_start sub_80D0AAC
-sub_80D0AAC: @ 80D0AAC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- ldr r4, =gUnknown_02039D80
- ldr r0, [r4]
- ldrb r2, [r0, 0x8]
- ldrb r1, [r0, 0xA]
- adds r2, r1
- mov r10, r2
- ldrb r1, [r0, 0x9]
- ldrb r0, [r0, 0xB]
- adds r1, r0
- str r1, [sp]
- bl StorageGetCurrentBox
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r7, 0
- ldr r0, [r4]
- ldrb r3, [r0, 0x9]
- ldr r0, [sp]
- cmp r3, r0
- bge _080D0B46
-_080D0AE2:
- lsls r0, r3, 1
- adds r0, r3
- ldr r2, =gUnknown_02039D80
- ldr r1, [r2]
- lsls r0, 1
- ldrb r4, [r1, 0x8]
- adds r0, r4
- lsls r0, 24
- lsrs r6, r0, 24
- ldrb r5, [r1, 0x8]
- adds r3, 0x1
- mov r9, r3
- cmp r5, r10
- bge _080D0B3E
- mov r8, r2
- mov r0, r10
- subs r5, r0, r5
-_080D0B04:
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 4
- adds r4, r0, 0
- adds r4, 0x14
- mov r1, r8
- ldr r0, [r1]
- adds r0, r4
- movs r1, 0x5
- bl GetBoxMonData
- cmp r0, 0
- beq _080D0B2C
- mov r0, r8
- ldr r2, [r0]
- adds r2, r4
- ldr r0, [sp, 0x4]
- adds r1, r6, 0
- bl SetBoxMonAt
-_080D0B2C:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- subs r5, 0x1
- cmp r5, 0
- bne _080D0B04
-_080D0B3E:
- mov r3, r9
- ldr r1, [sp]
- cmp r3, r1
- blt _080D0AE2
-_080D0B46:
- 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_80D0AAC
-
- thumb_func_start sub_80D0B5C
-sub_80D0B5C: @ 80D0B5C
- push {lr}
- sub sp, 0x8
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0
- movs r1, 0x4
- movs r2, 0
- bl SetBgAttribute
- movs r0, 0x8
- movs r1, 0x80
- bl ClearGpuRegBits
- movs r0, 0x20
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect_Palette0
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0x8
- pop {r0}
- bx r0
- thumb_func_end sub_80D0B5C
-
- thumb_func_start sub_80D0BA4
-sub_80D0BA4: @ 80D0BA4
- ldr r0, =gUnknown_02039D80
- ldr r2, [r0]
- ldrb r1, [r2, 0x3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 1
- ldrb r2, [r2, 0x2]
- adds r0, r2
- lsls r0, 24
- lsrs r0, 24
- bx lr
- .pool
- thumb_func_end sub_80D0BA4
-
- thumb_func_start sub_80D0BC0
-sub_80D0BC0: @ 80D0BC0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r0, =gUnknown_02039D80
- ldr r0, [r0]
- ldrb r2, [r0, 0x8]
- ldrb r1, [r0, 0xA]
- adds r2, r1
- mov r9, r2
- ldrb r1, [r0, 0x9]
- ldrb r0, [r0, 0xB]
- adds r0, r1, r0
- str r0, [sp]
- movs r7, 0
- adds r6, r1, 0
- cmp r6, r0
- bge _080D0C4E
- lsls r0, r6, 1
- adds r0, r6
- lsls r0, 1
- mov r8, r0
-_080D0BF0:
- ldr r2, =gUnknown_02039D80
- ldr r1, [r2]
- ldrb r0, [r1, 0x8]
- add r0, r8
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r4, [r1, 0x8]
- cmp r4, r9
- bge _080D0C42
- mov r10, r2
-_080D0C04:
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 4
- adds r1, 0x14
- mov r2, r10
- ldr r0, [r2]
- adds r0, r1
- movs r1, 0x5
- bl GetBoxMonData
- cmp r0, 0
- beq _080D0C30
- adds r0, r5, 0
- movs r1, 0x5
- bl GetCurrentBoxMonData
- cmp r0, 0
- beq _080D0C30
- movs r0, 0
- b _080D0C50
- .pool
-_080D0C30:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- adds r4, 0x1
- cmp r4, r9
- blt _080D0C04
-_080D0C42:
- movs r0, 0x6
- add r8, r0
- adds r6, 0x1
- ldr r2, [sp]
- cmp r6, r2
- blt _080D0BF0
-_080D0C4E:
- movs r0, 0x1
-_080D0C50:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80D0BC0
-
- thumb_func_start sub_80D0C60
-sub_80D0C60: @ 80D0C60
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- ldr r3, =gUnknown_02039D08
- ldr r0, [r3]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D0D3E
- ldr r0, =gUnknown_03000F78
- str r0, [sp, 0x18]
- ldr r1, =0xffff0000
- add r2, sp, 0x18
- ldr r0, [r2, 0x4]
- ands r0, r1
- movs r1, 0x80
- lsls r1, 2
- orrs r0, r1
- str r0, [r2, 0x4]
- mov r1, sp
- ldr r0, =gSpriteTemplate_857BC70
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- movs r7, 0
- mov r9, r2
- mov r8, r3
- movs r0, 0
- mov r10, r0
-_080D0CA0:
- adds r6, r7, 0x7
- lsls r1, r6, 16
- mov r2, r9
- ldrh r0, [r2, 0x4]
- orrs r0, r1
- str r0, [r2, 0x4]
- mov r0, r9
- bl LoadCompressedObjectPic
- mov r4, r9
- ldrh r0, [r4, 0x6]
- bl GetSpriteTileStartByTag
- mov r5, r8
- ldr r1, [r5]
- lsls r5, r7, 4
- ldr r2, =0x00002208
- adds r1, r2
- adds r1, r5
- lsls r0, 16
- lsrs r0, 11
- ldr r4, =0x06010000
- adds r0, r4
- str r0, [r1]
- ldr r0, =0xffffdacb
- adds r4, r7, r0
- lsls r0, r4, 16
- lsrs r0, 16
- bl AllocSpritePalette
- mov r2, r8
- ldr r1, [r2]
- adds r1, r5
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =0x0000220c
- adds r1, r2
- strh r0, [r1]
- ldrh r0, [r1]
- lsls r0, 4
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2
- strh r0, [r1]
- mov r0, sp
- strh r6, [r0]
- strh r4, [r0, 0x2]
- movs r1, 0
- movs r2, 0
- movs r3, 0xB
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- mov r4, r8
- ldr r2, [r4]
- ldr r6, =0x00002204
- adds r2, r6
- adds r2, r5
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, =gSprites
- adds r1, r0
- str r1, [r2]
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, r5
- ldr r1, =0x00002210
- adds r0, r1
- mov r2, r10
- strb r2, [r0]
- adds r7, 0x1
- cmp r7, 0x2
- ble _080D0CA0
-_080D0D3E:
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldr r4, =0x00002234
- adds r0, r4
- movs r1, 0
- strh r1, [r0]
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0C60
-
- thumb_func_start sub_80D0D8C
-sub_80D0D8C: @ 80D0D8C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r7, r1, 24
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D0E42
- mov r0, r8
- adds r1, r7, 0
- bl sub_80D1324
- cmp r0, 0
- bne _080D0E42
- mov r0, r8
- cmp r0, 0
- beq _080D0DC4
- cmp r0, 0x1
- beq _080D0DDA
- b _080D0E42
- .pool
-_080D0DC4:
- adds r0, r7, 0
- movs r1, 0x5
- bl GetCurrentBoxMonData
- cmp r0, 0
- beq _080D0E42
- adds r0, r7, 0
- movs r1, 0xC
- bl GetCurrentBoxMonData
- b _080D0DFC
-_080D0DDA:
- cmp r7, 0x5
- bhi _080D0E42
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x5
- bl GetMonData
- cmp r0, 0
- beq _080D0E42
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
-_080D0DFC:
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _080D0E42
- adds r0, r4, 0
- bl GetItemIconPic
- adds r6, r0, 0
- adds r0, r4, 0
- bl GetItemIconPalette
- adds r5, r0, 0
- bl sub_80D12E8
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- mov r1, r8
- adds r2, r7, 0
- bl sub_80D140C
- adds r0, r4, 0
- adds r1, r6, 0
- adds r2, r5, 0
- bl sub_80D1524
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_80D1740
-_080D0E42:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0D8C
-
- thumb_func_start sub_80D0E50
-sub_80D0E50: @ 80D0E50
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D0E86
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_80D1370
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x2
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0
- adds r2, r6, 0
- adds r3, r5, 0
- bl sub_80D1604
-_080D0E86:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0E50
-
- thumb_func_start sub_80D0E90
-sub_80D0E90: @ 80D0E90
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- adds r7, r5, 0
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D0F20
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_80D1370
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0
- mov r0, sp
- strh r1, [r0]
- adds r0, r4, 0
- movs r1, 0x3
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0x1
- adds r2, r6, 0
- adds r3, r5, 0
- bl sub_80D1604
- adds r0, r4, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_80D140C
- cmp r6, 0
- bne _080D0EF8
- adds r0, r5, 0
- movs r1, 0xC
- mov r2, sp
- bl SetCurrentBoxMonData
- adds r0, r5, 0
- movs r1, 0x1
- bl SetBoxMonIconObjMode
- b _080D0F10
- .pool
-_080D0EF8:
- movs r0, 0x64
- muls r0, r7
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- mov r2, sp
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1
- bl SetPartyMonIconObjMode
-_080D0F10:
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldr r2, =0x00000ce6
- adds r1, r0, r2
- ldrh r1, [r1]
- ldr r2, =0x00002234
- adds r0, r2
- strh r1, [r0]
-_080D0F20:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0E90
-
- thumb_func_start sub_80D0F38
-sub_80D0F38: @ 80D0F38
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r5, 0
- bl GetItemIconPic
- mov r8, r0
- adds r0, r5, 0
- bl GetItemIconPalette
- adds r6, r0, 0
- bl sub_80D12E8
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- mov r1, r8
- adds r2, r6, 0
- bl sub_80D1524
- adds r0, r4, 0
- movs r1, 0x6
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0
- movs r3, 0
- bl sub_80D1604
- adds r0, r4, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_80D140C
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_80D1740
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldr r1, =0x00002234
- adds r0, r1
- strh r5, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0F38
-
- thumb_func_start sub_80D0FAC
-sub_80D0FAC: @ 80D0FAC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- lsrs r7, r1, 24
- ldr r0, =gUnknown_02039D08
- mov r8, r0
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D106A
- mov r0, r9
- adds r1, r7, 0
- bl sub_80D1370
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- movs r1, 0x3
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0x3
- movs r2, 0x2
- movs r3, 0
- bl sub_80D1604
- mov r1, r9
- cmp r1, 0
- bne _080D101C
- adds r0, r7, 0
- movs r1, 0xC
- bl GetCurrentBoxMonData
- lsls r0, 16
- lsrs r6, r0, 16
- mov r0, r8
- ldr r2, [r0]
- ldr r4, =0x00002234
- adds r2, r4
- adds r0, r7, 0
- movs r1, 0xC
- bl SetCurrentBoxMonData
- mov r1, r8
- ldr r0, [r1]
- adds r0, r4
- b _080D1048
- .pool
-_080D101C:
- movs r0, 0x64
- adds r4, r7, 0
- muls r4, r0
- ldr r0, =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r6, r0, 16
- mov r0, r8
- ldr r2, [r0]
- ldr r5, =0x00002234
- adds r2, r5
- adds r0, r4, 0
- movs r1, 0xC
- bl SetMonData
- mov r1, r8
- ldr r0, [r1]
- adds r0, r5
-_080D1048:
- strh r6, [r0]
- movs r0, 0x2
- movs r1, 0
- bl sub_80D1370
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- movs r1, 0x4
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0x4
- mov r2, r9
- adds r3, r7, 0
- bl sub_80D1604
-_080D106A:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D0FAC
-
- thumb_func_start sub_80D1080
-sub_80D1080: @ 80D1080
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- mov r8, r5
- ldr r6, =gUnknown_02039D08
- ldr r0, [r6]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D1100
- movs r0, 0x2
- movs r1, 0
- bl sub_80D1370
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x4
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0x2
- adds r2, r7, 0
- adds r3, r5, 0
- bl sub_80D1604
- cmp r7, 0
- bne _080D10E0
- ldr r2, [r6]
- ldr r0, =0x00002234
- adds r2, r0
- adds r0, r5, 0
- movs r1, 0xC
- bl SetCurrentBoxMonData
- adds r0, r5, 0
- movs r1, 0
- bl SetBoxMonIconObjMode
- b _080D1100
- .pool
-_080D10E0:
- movs r0, 0x64
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r2, [r6]
- ldr r1, =0x00002234
- adds r2, r1
- movs r1, 0xC
- bl SetMonData
- mov r0, r8
- movs r1, 0
- bl SetPartyMonIconObjMode
-_080D1100:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D1080
-
- thumb_func_start sub_80D1114
-sub_80D1114: @ 80D1114
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- adds r7, r5, 0
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D1188
- movs r1, 0
- mov r0, sp
- strh r1, [r0]
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_80D1370
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x2
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0
- adds r2, r6, 0
- adds r3, r5, 0
- bl sub_80D1604
- cmp r6, 0
- bne _080D1170
- adds r0, r5, 0
- movs r1, 0xC
- mov r2, sp
- bl SetCurrentBoxMonData
- adds r0, r5, 0
- movs r1, 0x1
- bl SetBoxMonIconObjMode
- b _080D1188
- .pool
-_080D1170:
- movs r0, 0x64
- muls r0, r7
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- mov r2, sp
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1
- bl SetPartyMonIconObjMode
-_080D1188:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D1114
-
- thumb_func_start sub_80D1194
-sub_80D1194: @ 80D1194
- push {r4,lr}
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D11C2
- movs r0, 0x2
- movs r1, 0
- bl sub_80D1370
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x5
- bl sub_80D15D4
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x2
- movs r3, 0
- bl sub_80D1604
-_080D11C2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D1194
-
- thumb_func_start sub_80D11CC
-sub_80D11CC: @ 80D11CC
- push {r4,lr}
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x3
- bne _080D120A
- movs r4, 0
-_080D11DA:
- ldr r0, =gUnknown_02039D08
- ldr r1, [r0]
- lsls r0, r4, 4
- adds r1, r0
- ldr r2, =0x00002210
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080D1204
- subs r2, 0x2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080D1204
- lsls r0, r4, 24
- lsrs r0, 24
- movs r1, 0x7
- movs r2, 0x2
- movs r3, 0
- bl sub_80D1604
-_080D1204:
- adds r4, 0x1
- cmp r4, 0x2
- ble _080D11DA
-_080D120A:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D11CC
-
- thumb_func_start sub_80D1218
-sub_80D1218: @ 80D1218
- push {r4,r5,lr}
- movs r5, 0
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldr r1, =0x00002204
- adds r4, r0, r1
- adds r3, r0, 0
-_080D1226:
- ldr r1, =0x00002210
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080D1268
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x28
- ands r0, r1
- cmp r0, 0x8
- beq _080D124E
- ldr r1, [r2, 0x1C]
- ldr r0, =SpriteCallbackDummy
- cmp r1, r0
- beq _080D1268
- ldr r0, =sub_80D1AD8
- cmp r1, r0
- beq _080D1268
-_080D124E:
- movs r0, 0x1
- b _080D1274
- .pool
-_080D1268:
- adds r4, 0x10
- adds r3, 0x10
- adds r5, 0x1
- cmp r5, 0x2
- ble _080D1226
- movs r0, 0
-_080D1274:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80D1218
-
- thumb_func_start sub_80D127C
-sub_80D127C: @ 80D127C
- push {lr}
- ldr r0, =gUnknown_02039D08
- ldr r1, [r0]
- ldrb r0, [r1, 0x1]
- cmp r0, 0x3
- bne _080D12B0
- movs r2, 0
- ldr r0, =0x0000220e
- adds r1, r0
-_080D128E:
- ldrb r0, [r1, 0x2]
- cmp r0, 0
- beq _080D12A8
- ldrb r0, [r1]
- cmp r0, 0x2
- bne _080D12A8
- movs r0, 0x1
- b _080D12B2
- .pool
-_080D12A8:
- adds r1, 0x10
- adds r2, 0x1
- cmp r2, 0x2
- ble _080D128E
-_080D12B0:
- movs r0, 0
-_080D12B2:
- pop {r1}
- bx r1
- thumb_func_end sub_80D127C
-
- thumb_func_start GetMovingItemName
-GetMovingItemName: @ 80D12B8
- push {lr}
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldr r1, =0x00002234
- adds r0, r1
- ldrh r0, [r0]
- bl ItemId_GetName
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetMovingItemName
-
- thumb_func_start GetMovingItem
-GetMovingItem: @ 80D12D4
- ldr r0, =gUnknown_02039D08
- ldr r0, [r0]
- ldr r1, =0x00002234
- adds r0, r1
- ldrh r0, [r0]
- bx lr
- .pool
- thumb_func_end GetMovingItem
-
- thumb_func_start sub_80D12E8
-sub_80D12E8: @ 80D12E8
- push {r4,r5,lr}
- movs r2, 0
- ldr r5, =gUnknown_02039D08
- ldr r3, =0x00002210
- movs r4, 0x1
-_080D12F2:
- ldr r0, [r5]
- lsls r1, r2, 4
- adds r0, r1
- adds r1, r0, r3
- ldrb r0, [r1]
- cmp r0, 0
- bne _080D1310
- strb r4, [r1]
- adds r0, r2, 0
- b _080D131C
- .pool
-_080D1310:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x2
- bls _080D12F2
- movs r0, 0x3
-_080D131C:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80D12E8
-
- thumb_func_start sub_80D1324
-sub_80D1324: @ 80D1324
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r1, 24
- movs r3, 0
- ldr r0, =gUnknown_02039D08
- ldr r2, [r0]
-_080D1334:
- ldr r5, =0x00002210
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, 0
- beq _080D1360
- subs r5, 0x2
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, r4
- bne _080D1360
- adds r5, 0x1
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, r1
- bne _080D1360
- movs r0, 0x1
- b _080D136A
- .pool
-_080D1360:
- adds r2, 0x10
- adds r3, 0x1
- cmp r3, 0x2
- ble _080D1334
- movs r0, 0
-_080D136A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80D1324
-
- thumb_func_start sub_80D1370
-sub_80D1370: @ 80D1370
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- movs r3, 0
- ldr r0, =gUnknown_02039D08
- ldr r1, [r0]
-_080D1380:
- lsls r0, r3, 4
- adds r2, r1, r0
- ldr r6, =0x00002210
- adds r0, r2, r6
- ldrb r0, [r0]
- cmp r0, 0
- beq _080D13B0
- subs r6, 0x2
- adds r0, r2, r6
- ldrb r0, [r0]
- cmp r0, r5
- bne _080D13B0
- adds r6, 0x1
- adds r0, r2, r6
- ldrb r0, [r0]
- cmp r0, r4
- bne _080D13B0
- adds r0, r3, 0
- b _080D13BC
- .pool
-_080D13B0:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x2
- bls _080D1380
- movs r0, 0x3
-_080D13BC:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80D1370
-
- thumb_func_start sub_80D13C4
-sub_80D13C4: @ 80D13C4
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r2, 0
- ldr r0, =gUnknown_02039D08
- ldr r3, [r0]
- ldr r0, =0x00002204
- adds r4, r3, r0
- ldr r6, =0x00002210
-_080D13D4:
- lsls r1, r2, 4
- adds r0, r3, r1
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0
- beq _080D13F8
- adds r0, r4, r1
- ldr r0, [r0]
- cmp r0, r5
- bne _080D13F8
- adds r0, r2, 0
- b _080D1404
- .pool
-_080D13F8:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x2
- bls _080D13D4
- movs r0, 0x3
-_080D1404:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80D13C4
thumb_func_start sub_80D140C
sub_80D140C: @ 80D140C
diff --git a/asm/pokenav.s b/asm/pokenav.s
index 1ec7c15e1..a383f58d2 100644
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -1524,7 +1524,7 @@ sub_81C7C28: @ 81C7C28
ldr r4, =gUnknown_0861FA4C
_081C7C36:
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x8
adds r5, 0x1
cmp r5, 0
@@ -1648,7 +1648,7 @@ sub_81C7D28: @ 81C7D28
bl sub_81C763C
adds r6, r0, 0
ldr r0, =gUnknown_0861FA64
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
movs r0, 0x1
bl AllocSpritePalette
movs r0, 0x2
@@ -3924,7 +3924,7 @@ sub_81C8ED0: @ 81C8ED0
ldr r4, =gUnknown_0861FBFC
_081C8ED6:
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x8
adds r5, 0x1
cmp r5, 0
@@ -6086,7 +6086,7 @@ sub_81C9FC4: @ 81C9FC4
ldr r4, =gUnknown_086201C4
_081C9FCA:
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x8
adds r5, 0x1
cmp r5, 0x1
@@ -10537,7 +10537,7 @@ sub_81CC214: @ 81CC214
ldr r4, =gUnknown_08622810
_081CC224:
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x8
adds r5, 0x1
cmp r5, 0
@@ -11509,7 +11509,7 @@ sub_81CC9C0: @ 81CC9C0
ldr r4, =gUnknown_086230F8
_081CC9C6:
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x8
adds r5, 0x1
cmp r5, 0
@@ -20756,7 +20756,7 @@ sub_81D13FC: @ 81D13FC
push {r4,lr}
adds r4, r0, 0
ldr r0, =gUnknown_08624C78
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_08624C80
bl sub_81C795C
ldr r0, =gUnknown_08624D04
diff --git a/asm/rom_8011DC0.s b/asm/rom_8011DC0.s
index 41d57d7ca..b90c9701e 100644
--- a/asm/rom_8011DC0.s
+++ b/asm/rom_8011DC0.s
@@ -11006,7 +11006,7 @@ _0801C52C:
cmp r0, 0x1
bne _0801C5EE
ldr r0, =gUnknown_082F1D00
- bl LoadCompressedObjectPicUsingHeap
+ bl LoadCompressedSpriteSheetUsingHeap
ldr r0, [r4]
movs r2, 0xB8
lsls r2, 1
@@ -19425,7 +19425,7 @@ sub_8020890: @ 8020890
ldr r4, =gUnknown_082F3134
_08020896:
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x8
adds r5, 0x1
cmp r5, 0x4
@@ -23100,7 +23100,7 @@ sub_8022730: @ 8022730
_08022746:
lsls r0, r5, 3
adds r0, r4
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r0, r5, 0x1
lsls r0, 24
lsrs r5, r0, 24
@@ -43324,7 +43324,7 @@ sub_802C974: @ 802C974
ldr r5, =gUnknown_082FBE08
_0802C97C:
adds r0, r5, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r5, 0x8
adds r4, 0x1
cmp r4, 0x4
@@ -43447,7 +43447,7 @@ _0802CA32:
ands r1, r5
orrs r1, r4
str r1, [r0, 0x4]
- bl LoadCompressedObjectPalette
+ bl LoadCompressedSpritePalette
mov r0, r8
bl Free
mov r0, r10
@@ -47113,7 +47113,7 @@ sub_802E75C: @ 802E75C
lsls r0, 3
ldr r1, =gUnknown_082FE6C8
adds r0, r1
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
movs r2, 0x8
ldrsh r0, [r4, r2]
lsls r0, 3
@@ -48126,7 +48126,7 @@ sub_802EF50: @ 802EF50
orrs r0, r1
str r0, [r4, 0x4]
mov r0, sp
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r0, r4, 0
bl LoadSpritePalette
add sp, 0x10
diff --git a/asm/roulette.s b/asm/roulette.s
index 1552ba4fe..4174924e6 100644
--- a/asm/roulette.s
+++ b/asm/roulette.s
@@ -4865,11 +4865,11 @@ sub_8142C0C: @ 8142C0C
ldr r0, =gUnknown_085B7384
bl LoadSpritePalettes
ldr r0, =gUnknown_085B7864
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_085B7978
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_085B7A40
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
b _08142C5A
.pool
_08142C44:
diff --git a/asm/trade.s b/asm/trade.s
index 341aa0869..e1e8588bf 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -7156,7 +7156,7 @@ _0807AD94:
_0807ADB2:
mov r0, r8
bl GetMonSpritePalStruct
- bl LoadCompressedObjectPalette
+ bl LoadCompressedSpritePalette
ldr r0, =gUnknown_020322A0
ldr r1, [r0]
adds r0, r1, 0
diff --git a/asm/trainer_card.s b/asm/trainer_card.s
index e0cb5e21e..10e4d6d8f 100644
--- a/asm/trainer_card.s
+++ b/asm/trainer_card.s
@@ -6952,10 +6952,10 @@ sub_80C62DC: @ 80C62DC
bl LoadSpritePalettes
ldr r4, =gUnknown_085714BC
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
adds r4, 0x10
adds r0, r4, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_085715B4
ldr r1, =gUnknown_02039CEC
ldr r2, [r1]
@@ -7706,7 +7706,7 @@ sub_80C6974: @ 80C6974
bl LoadSpritePalettes
ldr r6, =gUnknown_085714BC
adds r0, r6, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
ldr r0, =gUnknown_085715B4
mov r8, r0
ldr r4, =gUnknown_02039CF4
@@ -7747,7 +7747,7 @@ sub_80C6974: @ 80C6974
bl StartSpriteAnim
adds r6, 0x8
adds r0, r6, 0
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
movs r3, 0x18
add r8, r3
ldr r6, =gUnknown_08571650
@@ -7875,7 +7875,7 @@ _080C6AEE:
lsrs r4, r0, 16
_080C6AF2:
ldr r0, =gUnknown_085714D4
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
mov r1, sp
ldr r0, =gUnknown_085715FC
ldm r0!, {r2,r3,r6}
diff --git a/asm/use_pokeblock.s b/asm/use_pokeblock.s
index d294a2fae..d2d4913b1 100644
--- a/asm/use_pokeblock.s
+++ b/asm/use_pokeblock.s
@@ -3273,7 +3273,7 @@ sub_8168248: @ 8168248
orrs r0, r1
str r0, [sp, 0x4]
mov r0, sp
- bl LoadCompressedObjectPic
+ bl LoadCompressedSpriteSheet
add r0, sp, 0x8
bl LoadSpritePalette
add sp, 0x10
diff --git a/data/pokemon_storage_system.s b/data/pokemon_storage_system.s
index 0d1cc375f..3058f3578 100644
--- a/data/pokemon_storage_system.s
+++ b/data/pokemon_storage_system.s
@@ -4,62 +4,6 @@
.section .rodata
-
-
- .align 2
-gUnknown_0857BB1C:: @ 857BB1C
- window_template 0x00, 0x0a, 0x03, 0x14, 0x12, 0x09, 0x000a
-
- .align 2
-gUnknown_0857BB24:: @ 857BB24
- .incbin "graphics/pokemon_storage/unknown_frame.4bpp"
-
- .align 2
-gOamData_857BBA4:: @ 857BBA4
- .2byte 0x0100, 0x8000, 0x0400, 0x0000
-
- .align 2
-gSpriteAffineAnim_857BBAC:: @ 857BBAC
- .2byte 0x0080, 0x0080, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
-
- .align 2
-gSpriteAffineAnim_857BBBC:: @ 857BBBC
- .2byte 0x0058, 0x0058, 0x0000, 0x0000, 0x0005, 0x0005, 0x0800, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
-
- .align 2
-gSpriteAffineAnim_857BBD4:: @ 857BBD4
- .2byte 0x0080, 0x0080, 0x0000, 0x0000, 0xfffb, 0xfffb, 0x0800, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
-
- .align 2
-gSpriteAffineAnim_857BBEC:: @ 857BBEC
- .2byte 0x0080, 0x0080, 0x0000, 0x0000, 0x000a, 0x000a, 0x0c00, 0x0000, 0x0100, 0x0100, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
-
- .align 2
-gSpriteAffineAnim_857BC0C:: @ 857BC0C
- .2byte 0x0100, 0x0100, 0x0000, 0x0000, 0xfff6, 0xfff6, 0x0c00, 0x0000, 0x0080, 0x0080, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
-
- .align 2
-gSpriteAffineAnim_857BC2C:: @ 857BC2C
- .2byte 0x0100, 0x0100, 0x0000, 0x0000, 0xfffb, 0xfffb, 0x1000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
-
- .align 2
-gSpriteAffineAnim_857BC44:: @ 857BC44
- .2byte 0x0100, 0x0100, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
-
- .align 2
-gSpriteAffineAnimTable_857BC54:: @ 857BC54
- .4byte gSpriteAffineAnim_857BBAC
- .4byte gSpriteAffineAnim_857BBBC
- .4byte gSpriteAffineAnim_857BBD4
- .4byte gSpriteAffineAnim_857BBEC
- .4byte gSpriteAffineAnim_857BC0C
- .4byte gSpriteAffineAnim_857BC2C
- .4byte gSpriteAffineAnim_857BC44
-
- .align 2
-gSpriteTemplate_857BC70:: @ 857BC70
- spr_template 0x0007, 0xdacb, gOamData_857BBA4, gDummySpriteAnimTable, NULL, gSpriteAffineAnimTable_857BC54, SpriteCallbackDummy
-
gSpriteTemplate_857BC88:: @ 857BC88
.2byte 0x0100, 0x0100, 0x0200, 0x0100, 0x0100, 0x0200, 0x0200, 0x0200, 0x0080, 0x0080, 0x0100, 0x0100, 0x0200, 0x0200, 0x0400, 0x0400
diff --git a/include/bg.h b/include/bg.h
index a10abaa8d..ffcaf43ed 100644
--- a/include/bg.h
+++ b/include/bg.h
@@ -56,11 +56,11 @@ void ShowBg(u8 bg);
void HideBg(u8 bg);
void SetBgAttribute(u8 bg, u8 attributeId, u8 value);
u16 GetBgAttribute(u8 bg, u8 attributeId);
-u32 ChangeBgX(u8 bg, u32 value, u8 op);
-u32 GetBgX(u8 bg);
-u32 ChangeBgY(u8 bg, u32 value, u8 op);
-u32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op);
-u32 GetBgY(u8 bg);
+s32 ChangeBgX(u8 bg, s32 value, u8 op);
+s32 GetBgX(u8 bg);
+s32 ChangeBgY(u8 bg, s32 value, u8 op);
+s32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op);
+s32 GetBgY(u8 bg);
void SetBgAffine(u8 bg, u32 srcCenterX, u32 srcCenterY, s16 dispCenterX, s16 dispCenterY, s16 scaleX, s16 scaleY, u16 rotationAngle);
u8 Unused_AdjustBgMosaic(u8 a1, u8 a2);
void SetBgTilemapBuffer(u8 bg, void *tilemap);
diff --git a/include/blit.h b/include/blit.h
index 2fe99d7bd..b6c80b497 100644
--- a/include/blit.h
+++ b/include/blit.h
@@ -3,7 +3,7 @@
struct Bitmap
{
- u8* pixels;
+ const u8 *pixels;
u32 width:16;
u32 height:16;
};
diff --git a/include/decompress.h b/include/decompress.h
index 853230aea..02412defb 100644
--- a/include/decompress.h
+++ b/include/decompress.h
@@ -8,13 +8,13 @@ extern u8 gDecompressionBuffer[0x4000];
void LZDecompressWram(const u32 *src, void *dest);
void LZDecompressVram(const u32 *src, void *dest);
-u16 LoadCompressedObjectPic(const struct CompressedSpriteSheet *src);
-void LoadCompressedObjectPicOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer);
-bool8 LoadCompressedObjectPicUsingHeap(const struct CompressedSpriteSheet* src);
+u16 LoadCompressedSpriteSheet(const struct CompressedSpriteSheet *src);
+void LoadCompressedSpriteSheetOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer);
+bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src);
-void LoadCompressedObjectPalette(const struct CompressedSpritePalette *src);
-void LoadCompressedObjectPaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer);
-bool8 LoadCompressedObjectPaletteUsingHeap(const struct CompressedSpritePalette *src);
+void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src);
+void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer);
+bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette *src);
void DecompressPicFromTable(const struct CompressedSpriteSheet *src, void* buffer, s32 species);
void DecompressPicFromTable_2(const struct CompressedSpriteSheet *src, void* buffer, s32 species);
diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h
index 5a18109f2..8da0c5958 100644
--- a/include/pokemon_icon.h
+++ b/include/pokemon_icon.h
@@ -4,6 +4,7 @@
extern const u8 gMonIconPaletteIndices[];
const u8 *GetMonIconTiles(u16 species, bool32);
+u8 GetValidMonIconPalIndex(u16 species);
const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo);
const u16 *GetValidMonIconPalettePtr(u16 speciesId);
u16 GetIconSpecies(u16 species, u32 personality);
diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h
index 530fb7042..9b880b2c9 100644
--- a/include/pokemon_storage_system.h
+++ b/include/pokemon_storage_system.h
@@ -64,6 +64,16 @@ struct UnkPSSStruct_2002370
u8 unk_0246;
};
+struct UnkStorageStruct
+{
+ struct Sprite *sprite;
+ u8 *tiles;
+ u16 palIndex;
+ u8 unk8;
+ u8 unk9;
+ u8 unk10;
+};
+
struct PokemonStorageSystemData
{
u8 state;
@@ -229,8 +239,8 @@ struct PokemonStorageSystemData
u8 field_21FD;
u8 field_21FE;
u8 inBoxMovingMode;
- u8 field_2200;
- u8 field_2201[51];
+ u16 field_2200;
+ struct UnkStorageStruct field_2204[3];
u16 movingItem;
u8 field_2236;
u8 field_2237;
diff --git a/include/window.h b/include/window.h
index 692ca1d81..25573ac3e 100644
--- a/include/window.h
+++ b/include/window.h
@@ -61,10 +61,10 @@ void ScrollWindow(u8 windowId, u8 direction, u8 distance, u8 fillValue);
void CallWindowFunction(u8 windowId, void ( *func)(u8, u8, u8, u8, u8, u8));
bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value);
u32 GetWindowAttribute(u8 windowId, u8 attributeId);
-u16 AddWindow8Bit(struct WindowTemplate *template);
-u16 AddWindow8Bit(struct WindowTemplate *template);
+u16 AddWindow8Bit(const struct WindowTemplate *template);
+void FillWindowPixelBuffer8Bit(u8 windowId, u8 fillValue);
void FillWindowPixelRect8Bit(u8 windowId, u8 fillValue, u16 x, u16 y, u16 width, u16 height);
-void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight, u8 paletteNum);
+void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight, u8 paletteNum);
void CopyWindowToVram8Bit(u8 windowId, u8 mode);
extern struct Window gWindows[];
diff --git a/src/battle_anim.c b/src/battle_anim.c
index 95c6f7b3c..18099091c 100644
--- a/src/battle_anim.c
+++ b/src/battle_anim.c
@@ -1607,8 +1607,8 @@ static void ScriptCmd_loadspritegfx(void)
sBattleAnimScriptPtr++;
index = T1_READ_16(sBattleAnimScriptPtr);
- LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)]);
- LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(index)]);
+ LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)]);
+ LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(index)]);
sBattleAnimScriptPtr += 2;
AddSpriteIndex(GET_TRUE_SPRITE_INDEX(index));
gAnimFramesToWait = 1;
diff --git a/src/battle_anim_80A9C70.c b/src/battle_anim_80A9C70.c
index f1245a032..44c3ef79b 100644
--- a/src/battle_anim_80A9C70.c
+++ b/src/battle_anim_80A9C70.c
@@ -71,8 +71,8 @@ u8 sub_80A9C70(u8 battlerId, bool8 b)
u8 spriteId2;
u8 i;
- LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
- LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
+ LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
+ LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
gTasks[taskId].data[0] = battlerId;
if (b)
{
diff --git a/src/battle_arena.c b/src/battle_arena.c
index cd2c976da..14f86c882 100644
--- a/src/battle_arena.c
+++ b/src/battle_arena.c
@@ -499,7 +499,7 @@ u8 BattleArena_ShowJudgmentWindow(u8 *state)
case 0:
BeginNormalPaletteFade(0x7FFFFF1C, 4, 0, 8, 0);
SetGpuReg(REG_OFFSET_WININ, WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR | WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR);
- LoadCompressedObjectPic(gUnknown_08611F74);
+ LoadCompressedSpriteSheet(gUnknown_08611F74);
LoadCompressedPalette(gUnknown_08D855E8, 0x1F0, 0x20);
gBattle_WIN0H = 0xFF;
gBattle_WIN0V = 0x70;
diff --git a/src/battle_bg.c b/src/battle_bg.c
index bb66a41fd..7ba59e6be 100644
--- a/src/battle_bg.c
+++ b/src/battle_bg.c
@@ -1103,7 +1103,7 @@ void DrawBattleEntryBackground(void)
SetGpuReg(REG_OFFSET_WINOUT, 0x36);
gBattle_BG1_Y = 0xFF5C;
gBattle_BG2_Y = 0xFF5C;
- LoadCompressedObjectPicUsingHeap(&gUnknown_0831AA00);
+ LoadCompressedSpriteSheetUsingHeap(&gUnknown_0831AA00);
}
else if (gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000 | BATTLE_TYPE_EREADER_TRAINER))
{
diff --git a/src/battle_dome.c b/src/battle_dome.c
index 29b41c5db..391128cb0 100644
--- a/src/battle_dome.c
+++ b/src/battle_dome.c
@@ -3545,7 +3545,7 @@ static void sub_8190400(u8 taskId)
DecompressAndLoadBgGfxUsingHeap(2, gUnknown_08D83D50, 0x2000, 0, 0);
DecompressAndLoadBgGfxUsingHeap(2, gUnknown_08D84970, 0x2000, 0, 1);
DecompressAndLoadBgGfxUsingHeap(3, gUnknown_08D84F00, 0x800, 0, 1);
- LoadCompressedObjectPic(gUnknown_0860CF50);
+ LoadCompressedSpriteSheet(gUnknown_0860CF50);
LoadCompressedPalette(gUnknown_08D85358, 0, 0x200);
LoadCompressedPalette(gUnknown_08D85444, 0x100, 0x200);
LoadCompressedPalette(gUnknown_08D85600, 0xF0, 0x20);
@@ -5716,7 +5716,7 @@ static void sub_8194220(u8 taskId)
gTasks[taskId].data[0]++;
break;
case 3:
- LoadCompressedObjectPic(gUnknown_0860CF50);
+ LoadCompressedSpriteSheet(gUnknown_0860CF50);
if (r10 == 0)
{
for (i = 0; i < (unsigned) 31; i++)
diff --git a/src/battle_factory_screen.c b/src/battle_factory_screen.c
index 93f3aa9cd..0bcdc0d66 100644
--- a/src/battle_factory_screen.c
+++ b/src/battle_factory_screen.c
@@ -1165,7 +1165,7 @@ static void CB2_InitSelectScreen(void)
case 4:
LoadSpritePalettes(gUnknown_086103F4);
LoadSpriteSheets(gUnknown_086103BC);
- LoadCompressedObjectPic(gUnknown_086103E4);
+ LoadCompressedSpriteSheet(gUnknown_086103E4);
ShowBg(0);
ShowBg(1);
SetVBlankCallback(Select_VblankCb);
@@ -3169,7 +3169,7 @@ static void CB2_InitSwapScreen(void)
case 4:
LoadSpritePalettes(gUnknown_086106B0);
LoadSpriteSheets(gUnknown_08610650);
- LoadCompressedObjectPic(gUnknown_086106A0);
+ LoadCompressedSpriteSheet(gUnknown_086106A0);
SetVBlankCallback(Swap_VblankCb);
gMain.state++;
break;
diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c
index 8d7ed2dce..d9409b230 100644
--- a/src/battle_gfx_sfx_util.c
+++ b/src/battle_gfx_sfx_util.c
@@ -643,7 +643,7 @@ void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId)
DecompressPicFromTable_2(&gTrainerFrontPicTable[frontPicId],
gMonSpritesGfxPtr->sprites[position],
SPECIES_NONE);
- LoadCompressedObjectPalette(&gTrainerFrontPicPaletteTable[frontPicId]);
+ LoadCompressedSpritePalette(&gTrainerFrontPicPaletteTable[frontPicId]);
}
void DecompressTrainerBackPic(u16 backPicId, u8 battlerId)
@@ -675,20 +675,20 @@ void BattleLoadAllHealthBoxesGfxAtOnce(void)
LoadSpritePalette(&sSpritePalettes_HealthBoxHealthBar[1]);
if (!IsDoubleBattle())
{
- LoadCompressedObjectPic(&sSpriteSheet_SinglesPlayerHealthbox);
- LoadCompressedObjectPic(&sSpriteSheet_SinglesOpponentHealthbox);
+ LoadCompressedSpriteSheet(&sSpriteSheet_SinglesPlayerHealthbox);
+ LoadCompressedSpriteSheet(&sSpriteSheet_SinglesOpponentHealthbox);
numberOfBattlers = 2;
}
else
{
- LoadCompressedObjectPic(&sSpriteSheets_DoublesPlayerHealthbox[0]);
- LoadCompressedObjectPic(&sSpriteSheets_DoublesPlayerHealthbox[1]);
- LoadCompressedObjectPic(&sSpriteSheets_DoublesOpponentHealthbox[0]);
- LoadCompressedObjectPic(&sSpriteSheets_DoublesOpponentHealthbox[1]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesPlayerHealthbox[0]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesPlayerHealthbox[1]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesOpponentHealthbox[0]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesOpponentHealthbox[1]);
numberOfBattlers = 4;
}
for (i = 0; i < numberOfBattlers; i++)
- LoadCompressedObjectPic(&sSpriteSheets_HealthBar[gBattlerPositions[i]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[i]]);
}
bool8 BattleLoadAllHealthBoxesGfx(u8 state)
@@ -707,37 +707,37 @@ bool8 BattleLoadAllHealthBoxesGfx(u8 state)
if (state == 2)
{
if (gBattleTypeFlags & BATTLE_TYPE_SAFARI)
- LoadCompressedObjectPic(&sSpriteSheet_SafariHealthbox);
+ LoadCompressedSpriteSheet(&sSpriteSheet_SafariHealthbox);
else
- LoadCompressedObjectPic(&sSpriteSheet_SinglesPlayerHealthbox);
+ LoadCompressedSpriteSheet(&sSpriteSheet_SinglesPlayerHealthbox);
}
else if (state == 3)
- LoadCompressedObjectPic(&sSpriteSheet_SinglesOpponentHealthbox);
+ LoadCompressedSpriteSheet(&sSpriteSheet_SinglesOpponentHealthbox);
else if (state == 4)
- LoadCompressedObjectPic(&sSpriteSheets_HealthBar[gBattlerPositions[0]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[0]]);
else if (state == 5)
- LoadCompressedObjectPic(&sSpriteSheets_HealthBar[gBattlerPositions[1]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[1]]);
else
retVal = TRUE;
}
else
{
if (state == 2)
- LoadCompressedObjectPic(&sSpriteSheets_DoublesPlayerHealthbox[0]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesPlayerHealthbox[0]);
else if (state == 3)
- LoadCompressedObjectPic(&sSpriteSheets_DoublesPlayerHealthbox[1]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesPlayerHealthbox[1]);
else if (state == 4)
- LoadCompressedObjectPic(&sSpriteSheets_DoublesOpponentHealthbox[0]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesOpponentHealthbox[0]);
else if (state == 5)
- LoadCompressedObjectPic(&sSpriteSheets_DoublesOpponentHealthbox[1]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_DoublesOpponentHealthbox[1]);
else if (state == 6)
- LoadCompressedObjectPic(&sSpriteSheets_HealthBar[gBattlerPositions[0]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[0]]);
else if (state == 7)
- LoadCompressedObjectPic(&sSpriteSheets_HealthBar[gBattlerPositions[1]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[1]]);
else if (state == 8)
- LoadCompressedObjectPic(&sSpriteSheets_HealthBar[gBattlerPositions[2]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[2]]);
else if (state == 9)
- LoadCompressedObjectPic(&sSpriteSheets_HealthBar[gBattlerPositions[3]]);
+ LoadCompressedSpriteSheet(&sSpriteSheets_HealthBar[gBattlerPositions[3]]);
else
retVal = TRUE;
}
@@ -1116,7 +1116,7 @@ void LoadAndCreateEnemyShadowSprites(void)
{
u8 battlerId;
- LoadCompressedObjectPic(&gSpriteSheet_EnemyShadow);
+ LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow);
battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
gBattleSpritesDataPtr->healthBoxesData[battlerId].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, GetBattlerSpriteCoord(battlerId, 0), GetBattlerSpriteCoord(battlerId, 1) + 29, 0xC8);
diff --git a/src/battle_interface.c b/src/battle_interface.c
index 9fd8e116a..4a8422091 100644
--- a/src/battle_interface.c
+++ b/src/battle_interface.c
@@ -1523,7 +1523,7 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
bar_data0 = 5;
}
- LoadCompressedObjectPicUsingHeap(&sStatusSummaryBarSpriteSheet);
+ LoadCompressedSpriteSheetUsingHeap(&sStatusSummaryBarSpriteSheet);
LoadSpriteSheet(&sStatusSummaryBallsSpriteSheet);
LoadSpritePalette(&sStatusSummaryBarSpritePal);
LoadSpritePalette(&sStatusSummaryBallsSpritePal);
diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c
index 6d71e4b1d..12f631155 100644
--- a/src/battle_pyramid_bag.c
+++ b/src/battle_pyramid_bag.c
@@ -547,7 +547,7 @@ static bool8 sub_81C5238(void)
gPyramidBagResources->state++;
break;
case 3:
- LoadCompressedObjectPic(&gUnknown_0861F3CC);
+ LoadCompressedSpriteSheet(&gUnknown_0861F3CC);
gPyramidBagResources->state++;
break;
case 4:
diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c
index 22f99a426..6e968fc0a 100644
--- a/src/berry_tag_screen.c
+++ b/src/berry_tag_screen.c
@@ -349,11 +349,11 @@ static bool8 LoadBerryTagGfx(void)
sBerryTag->gfxState++;
break;
case 5:
- LoadCompressedObjectPic(&gUnknown_0857FDEC);
+ LoadCompressedSpriteSheet(&gUnknown_0857FDEC);
sBerryTag->gfxState++;
break;
default:
- LoadCompressedObjectPalette(&gUnknown_0857FDF4);
+ LoadCompressedSpritePalette(&gUnknown_0857FDF4);
return TRUE; // done
}
diff --git a/src/bg.c b/src/bg.c
index a41075ad7..21624e4a0 100644
--- a/src/bg.c
+++ b/src/bg.c
@@ -33,8 +33,8 @@ struct BgConfig2
u32 unk_3:18;
void* tilemap;
- u32 bg_x;
- u32 bg_y;
+ s32 bg_x;
+ s32 bg_y;
};
static IWRAM_DATA struct BgControl sGpuBgConfigs;
@@ -524,12 +524,12 @@ u16 GetBgAttribute(u8 bg, u8 attributeId)
case 8:
switch (GetBgType(bg))
{
- case 0:
- return GetBgMetricTextMode(bg, 0) * 0x800;
- case 1:
- return GetBgMetricAffineMode(bg, 0) * 0x100;
- default:
- return 0;
+ case 0:
+ return GetBgMetricTextMode(bg, 0) * 0x800;
+ case 1:
+ return GetBgMetricAffineMode(bg, 0) * 0x100;
+ default:
+ return 0;
}
case 9:
return GetBgType(bg);
@@ -540,7 +540,7 @@ u16 GetBgAttribute(u8 bg, u8 attributeId)
}
}
-u32 ChangeBgX(u8 bg, u32 value, u8 op)
+s32 ChangeBgX(u8 bg, s32 value, u8 op)
{
u8 mode;
u16 temp1;
@@ -610,7 +610,7 @@ u32 ChangeBgX(u8 bg, u32 value, u8 op)
return sGpuBgConfigs2[bg].bg_x;
}
-u32 GetBgX(u8 bg)
+s32 GetBgX(u8 bg)
{
if (IsInvalidBg32(bg) != FALSE)
return -1;
@@ -620,7 +620,7 @@ u32 GetBgX(u8 bg)
return sGpuBgConfigs2[bg].bg_x;
}
-u32 ChangeBgY(u8 bg, u32 value, u8 op)
+s32 ChangeBgY(u8 bg, s32 value, u8 op)
{
u8 mode;
u16 temp1;
@@ -690,7 +690,7 @@ u32 ChangeBgY(u8 bg, u32 value, u8 op)
return sGpuBgConfigs2[bg].bg_y;
}
-u32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op)
+s32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op)
{
u8 mode;
u16 temp1;
@@ -761,7 +761,7 @@ u32 ChangeBgY_ScreenOff(u8 bg, u32 value, u8 op)
return sGpuBgConfigs2[bg].bg_y;
}
-u32 GetBgY(u8 bg)
+s32 GetBgY(u8 bg)
{
if (IsInvalidBg32(bg) != FALSE)
return -1;
@@ -778,14 +778,10 @@ void SetBgAffine(u8 bg, u32 srcCenterX, u32 srcCenterY, s16 dispCenterX, s16 dis
u8 Unused_AdjustBgMosaic(u8 a1, u8 a2)
{
- u16 result;
- s16 test1;
- s16 test2;
-
- result = GetGpuReg(REG_OFFSET_MOSAIC);
+ u16 result = GetGpuReg(REG_OFFSET_MOSAIC);
+ s16 test1 = result & 0xF;
+ s16 test2 = (result >> 4) & 0xF;
- test1 = result & 0xF;
- test2 = (result >> 4) & 0xF;
result &= 0xFF00;
switch (a2)
@@ -1039,47 +1035,43 @@ void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 widt
u16 mode2;
u16 attribute;
u16 mode3;
+ u16 x16, y16;
- u16 x16;
- u16 y16;
-
- if (IsInvalidBg32(bg) == FALSE && IsTileMapOutsideWram(bg) == FALSE)
+ if (!IsInvalidBg32(bg) && !IsTileMapOutsideWram(bg))
{
attribute = GetBgControlAttribute(bg, BG_CTRL_ATTR_SCREENSIZE);
mode = GetBgMetricTextMode(bg, 0x1) * 0x20;
mode2 = GetBgMetricTextMode(bg, 0x2) * 0x20;
switch (GetBgType(bg))
{
- case 0:
- for (y16 = y; y16 < (y + height); y16++)
+ case 0:
+ for (y16 = y; y16 < (y + height); y16++)
+ {
+ for (x16 = x; x16 < (x + width); x16++)
{
- for (x16 = x; x16 < (x + width); x16++)
- {
- CopyTileMapEntry(&firstTileNum, &((u16*)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
- firstTileNum = (firstTileNum & 0xFC00) + ((firstTileNum + tileNumDelta) & 0x3FF);
- }
+ CopyTileMapEntry(&firstTileNum, &((u16*)sGpuBgConfigs2[bg].tilemap)[(u16)GetTileMapIndexFromCoords(x16, y16, attribute, mode, mode2)], paletteSlot, 0, 0);
+ firstTileNum = (firstTileNum & 0xFC00) + ((firstTileNum + tileNumDelta) & 0x3FF);
}
- break;
- case 1:
- mode3 = GetBgMetricAffineMode(bg, 0x1);
- for (y16 = y; y16 < (y + height); y16++)
+ }
+ break;
+ case 1:
+ mode3 = GetBgMetricAffineMode(bg, 0x1);
+ for (y16 = y; y16 < (y + height); y16++)
+ {
+ for (x16 = x; x16 < (x + width); x16++)
{
- for (x16 = x; x16 < (x + width); x16++)
- {
- ((u8*)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
- firstTileNum = (firstTileNum & 0xFC00) + ((firstTileNum + tileNumDelta) & 0x3FF);
- }
+ ((u8*)sGpuBgConfigs2[bg].tilemap)[(y16 * mode3) + x16] = firstTileNum;
+ firstTileNum = (firstTileNum & 0xFC00) + ((firstTileNum + tileNumDelta) & 0x3FF);
}
- break;
+ }
+ break;
}
}
}
u16 GetBgMetricTextMode(u8 bg, u8 whichMetric)
{
- u8 attribute;
-
- attribute = GetBgControlAttribute(bg, BG_CTRL_ATTR_SCREENSIZE);
+ u8 attribute = GetBgControlAttribute(bg, BG_CTRL_ATTR_SCREENSIZE);
switch (whichMetric)
{
@@ -1125,9 +1117,7 @@ u16 GetBgMetricTextMode(u8 bg, u8 whichMetric)
u32 GetBgMetricAffineMode(u8 bg, u8 whichMetric)
{
- u8 attribute;
-
- attribute = GetBgControlAttribute(bg, BG_CTRL_ATTR_SCREENSIZE);
+ u8 attribute = GetBgControlAttribute(bg, BG_CTRL_ATTR_SCREENSIZE);
switch (whichMetric)
{
diff --git a/src/contest.c b/src/contest.c
index 0c4397f30..95c8563ed 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -2484,7 +2484,7 @@ u8 sub_80DB0C4(void)
{
u8 spriteId;
- LoadCompressedObjectPic(&gUnknown_08587C00);
+ LoadCompressedSpriteSheet(&gUnknown_08587C00);
LoadCompressedPalette(gContest2Pal, 0x110, 32);
spriteId = CreateSprite(&gSpriteTemplate_8587BE8, 112, 36, 30);
gSprites[spriteId].oam.paletteNum = 1;
@@ -2496,8 +2496,8 @@ u8 sub_80DB120(void)
{
u8 spriteId;
- LoadCompressedObjectPic(&gUnknown_08587C08);
- LoadCompressedObjectPalette(&gUnknown_08587C10);
+ LoadCompressedSpriteSheet(&gUnknown_08587C08);
+ LoadCompressedSpritePalette(&gUnknown_08587C10);
spriteId = CreateSprite(&gSpriteTemplate_8587C18, 96, 10, 29);
gSprites[spriteId].invisible = TRUE;
gSprites[spriteId].data[0] = gSprites[spriteId].oam.tileNum;
diff --git a/src/credits.c b/src/credits.c
index 02b01c072..ca82217cd 100644
--- a/src/credits.c
+++ b/src/credits.c
@@ -1964,9 +1964,9 @@ static bool8 sub_8176AB0(u8 data, u8 taskIdA)
case 2:
if (gSaveBlock2Ptr->playerGender == MALE)
{
- LoadCompressedObjectPic(gUnknown_085F5334);
- LoadCompressedObjectPic(gUnknown_085F53BC);
- LoadCompressedObjectPic(gUnknown_085F5354);
+ LoadCompressedSpriteSheet(gUnknown_085F5334);
+ LoadCompressedSpriteSheet(gUnknown_085F53BC);
+ LoadCompressedSpriteSheet(gUnknown_085F5354);
LoadSpritePalettes(gUnknown_085F5384);
spriteId = intro_create_brendan_sprite(120, 46);
@@ -1981,9 +1981,9 @@ static bool8 sub_8176AB0(u8 data, u8 taskIdA)
}
else
{
- LoadCompressedObjectPic(gUnknown_085F5344);
- LoadCompressedObjectPic(gUnknown_085F53AC);
- LoadCompressedObjectPic(gUnknown_085F5354);
+ LoadCompressedSpriteSheet(gUnknown_085F5344);
+ LoadCompressedSpriteSheet(gUnknown_085F53AC);
+ LoadCompressedSpriteSheet(gUnknown_085F5354);
LoadSpritePalettes(gUnknown_085F5384);
spriteId = intro_create_may_sprite(120, 46);
diff --git a/src/decompress.c b/src/decompress.c
index 24d23209f..ed2f7a0bb 100644
--- a/src/decompress.c
+++ b/src/decompress.c
@@ -22,7 +22,7 @@ void LZDecompressVram(const u32 *src, void *dest)
LZ77UnCompVram(src, dest);
}
-u16 LoadCompressedObjectPic(const struct CompressedSpriteSheet *src)
+u16 LoadCompressedSpriteSheet(const struct CompressedSpriteSheet *src)
{
struct SpriteSheet dest;
@@ -33,7 +33,7 @@ u16 LoadCompressedObjectPic(const struct CompressedSpriteSheet *src)
return LoadSpriteSheet(&dest);
}
-void LoadCompressedObjectPicOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer)
+void LoadCompressedSpriteSheetOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer)
{
struct SpriteSheet dest;
@@ -44,7 +44,7 @@ void LoadCompressedObjectPicOverrideBuffer(const struct CompressedSpriteSheet *s
LoadSpriteSheet(&dest);
}
-void LoadCompressedObjectPalette(const struct CompressedSpritePalette *src)
+void LoadCompressedSpritePalette(const struct CompressedSpritePalette *src)
{
struct SpritePalette dest;
@@ -54,7 +54,7 @@ void LoadCompressedObjectPalette(const struct CompressedSpritePalette *src)
LoadSpritePalette(&dest);
}
-void LoadCompressedObjectPaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer)
+void LoadCompressedSpritePaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer)
{
struct SpritePalette dest;
@@ -465,7 +465,7 @@ u32 GetDecompressedDataSize(const u32 *ptr)
return (ptr8[3] << 16) | (ptr8[2] << 8) | (ptr8[1]);
}
-bool8 LoadCompressedObjectPicUsingHeap(const struct CompressedSpriteSheet* src)
+bool8 LoadCompressedSpriteSheetUsingHeap(const struct CompressedSpriteSheet* src)
{
struct SpriteSheet dest;
void* buffer;
@@ -482,7 +482,7 @@ bool8 LoadCompressedObjectPicUsingHeap(const struct CompressedSpriteSheet* src)
return FALSE;
}
-bool8 LoadCompressedObjectPaletteUsingHeap(const struct CompressedSpritePalette *src)
+bool8 LoadCompressedSpritePaletteUsingHeap(const struct CompressedSpritePalette *src)
{
struct SpritePalette dest;
void* buffer;
diff --git a/src/decoration.c b/src/decoration.c
index 768b1541b..8453a055d 100644
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -2065,7 +2065,7 @@ u8 AddDecorationIconObjectFromIconTable(u16 tilesTag, u16 paletteTag, u8 decor)
LoadSpriteSheet(&sheet);
palette.data = GetDecorationIconPicOrPalette(decor, 1);
palette.tag = paletteTag;
- LoadCompressedObjectPalette(&palette);
+ LoadCompressedSpritePalette(&palette);
template = malloc(sizeof(struct SpriteTemplate));
*template = gItemIconSpriteTemplate;
template->tileTag = tilesTag;
diff --git a/src/egg_hatch.c b/src/egg_hatch.c
index 9c1d6fdd8..561987315 100644
--- a/src/egg_hatch.c
+++ b/src/egg_hatch.c
@@ -442,7 +442,7 @@ static u8 EggHatchCreateMonSprite(u8 a0, u8 switchID, u8 pokeID, u16* speciesLoc
HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
gMonSpritesGfxPtr->sprites[(a0 * 2) + 1],
species, pid);
- LoadCompressedObjectPalette(GetMonSpritePalStruct(mon));
+ LoadCompressedSpritePalette(GetMonSpritePalStruct(mon));
*speciesLoc = species;
}
break;
diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c
index 022599dfb..bfd46978c 100644
--- a/src/evolution_graphics.c
+++ b/src/evolution_graphics.c
@@ -251,7 +251,7 @@ static void CreatePostEvoSparkleSet2(u8 arg0)
void LoadEvoSparkleSpriteAndPal(void)
{
- LoadCompressedObjectPicUsingHeap(&sEvoSparkleSpriteSheets[0]);
+ LoadCompressedSpriteSheetUsingHeap(&sEvoSparkleSpriteSheets[0]);
LoadSpritePalettes(sEvoSparkleSpritePals);
}
diff --git a/src/field_effect.c b/src/field_effect.c
index 40e15c733..9d3eb2377 100644
--- a/src/field_effect.c
+++ b/src/field_effect.c
@@ -733,8 +733,8 @@ bool8 FieldEffectActiveListContains(u8 id)
u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buffer)
{
struct SpriteTemplate spriteTemplate;
- LoadCompressedObjectPaletteOverrideBuffer(&gTrainerFrontPicPaletteTable[trainerSpriteID], buffer);
- LoadCompressedObjectPicOverrideBuffer(&gTrainerFrontPicTable[trainerSpriteID], buffer);
+ LoadCompressedSpritePaletteOverrideBuffer(&gTrainerFrontPicPaletteTable[trainerSpriteID], buffer);
+ LoadCompressedSpriteSheetOverrideBuffer(&gTrainerFrontPicTable[trainerSpriteID], buffer);
spriteTemplate.tileTag = gTrainerFrontPicTable[trainerSpriteID].tag;
spriteTemplate.paletteTag = gTrainerFrontPicPaletteTable[trainerSpriteID].tag;
spriteTemplate.oam = &gNewGameBirchOamAttributes;
diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c
index ad5673036..27a3a29f9 100644
--- a/src/hall_of_fame.c
+++ b/src/hall_of_fame.c
@@ -1283,8 +1283,8 @@ static void sub_8174F70(void)
ResetAllPicSprites();
FreeAllSpritePalettes();
gReservedSpritePaletteCount = 8;
- LoadCompressedObjectPic(sHallOfFame_ConfettiSpriteSheet);
- LoadCompressedObjectPalette(sHallOfFame_ConfettiSpritePalette);
+ LoadCompressedSpriteSheet(sHallOfFame_ConfettiSpriteSheet);
+ LoadCompressedSpritePalette(sHallOfFame_ConfettiSpritePalette);
}
static void sub_8174FAC(void)
@@ -1475,8 +1475,8 @@ static void sub_8175364(u8 taskId)
gSpecialVar_0x8004 = var;
gSpecialVar_0x8005 = 0xFFFF;
}
- LoadCompressedObjectPic(sHallOfFame_ConfettiSpriteSheet);
- LoadCompressedObjectPalette(sHallOfFame_ConfettiSpritePalette);
+ LoadCompressedSpriteSheet(sHallOfFame_ConfettiSpriteSheet);
+ LoadCompressedSpritePalette(sHallOfFame_ConfettiSpritePalette);
data[0]++;
break;
case 1:
diff --git a/src/intro.c b/src/intro.c
index 94692e6ec..18a899fb0 100644
--- a/src/intro.c
+++ b/src/intro.c
@@ -1044,10 +1044,10 @@ static void Task_IntroLoadPart1Graphics(u8 taskId)
SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(2) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(20) | BGCNT_16COLOR | BGCNT_TXT256x512);
SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(18) | BGCNT_16COLOR | BGCNT_TXT256x512);
SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(16) | BGCNT_16COLOR | BGCNT_TXT256x512);
- LoadCompressedObjectPic(gUnknown_085E4FDC);
- LoadCompressedObjectPic(gUnknown_085E4FEC);
+ LoadCompressedSpriteSheet(gUnknown_085E4FDC);
+ LoadCompressedSpriteSheet(gUnknown_085E4FEC);
LoadSpritePalettes(gUnknown_085E4FFC);
- LoadCompressedObjectPic(gUnknown_085E4A74);
+ LoadCompressedSpriteSheet(gUnknown_085E4A74);
LoadSpritePalettes(gUnknown_085E4A84);
CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1F0, 0x20);
CpuCopy16(gPlttBufferUnfaded + 0x100, gPlttBufferUnfaded + 0x1E1, 0x1E);
@@ -1204,16 +1204,16 @@ static void Task_IntroStartBikeRide(u8 taskId)
u8 spriteId;
if (gUnknown_0203BCC8 == 0)
- LoadCompressedObjectPic(gIntro2BrendanSpriteSheet);
+ LoadCompressedSpriteSheet(gIntro2BrendanSpriteSheet);
else
- LoadCompressedObjectPic(gIntro2MaySpriteSheet);
+ LoadCompressedSpriteSheet(gIntro2MaySpriteSheet);
- LoadCompressedObjectPic(gIntro2BicycleSpriteSheet);
- LoadCompressedObjectPic(gIntro2FlygonSpriteSheet);
+ LoadCompressedSpriteSheet(gIntro2BicycleSpriteSheet);
+ LoadCompressedSpriteSheet(gIntro2FlygonSpriteSheet);
for (spriteId = 0; spriteId < 3; spriteId++)
{
- LoadCompressedObjectPic(&gUnknown_085E4AE8[spriteId]);
+ LoadCompressedSpriteSheet(&gUnknown_085E4AE8[spriteId]);
}
LoadSpritePalettes(gUnknown_085F530C);
@@ -1542,8 +1542,8 @@ static void Task_IntroLoadPart1Graphics3(u8 taskId)
LZDecompressVram(gIntro3GroudonTilemap, (void *)(VRAM + 0xC000));
LZDecompressVram(gIntro3LegendBgGfx, (void *)(VRAM + 0x4000));
LZDecompressVram(gIntro3GroudonBgTilemap, (void *)(VRAM + 0xE000));
- LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
- LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
+ LoadCompressedSpriteSheetUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
+ LoadCompressedSpritePaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal));
gTasks[taskId].func = Task_IntroLoadPart1Graphics4;
}
@@ -1764,7 +1764,7 @@ static void Task_IntroLoadPart1Graphics9(u8 taskId)
LZDecompressVram(gIntro3KyogreGfx, (void *)VRAM);
LZDecompressVram(gIntro3KyogreTilemap, (void *)(VRAM + 0xC000));
LZDecompressVram(gIntro3KyogreBgTilemap, (void *)(VRAM + 0xE000));
- LoadCompressedObjectPic(gUnknown_085E4C88);
+ LoadCompressedSpriteSheet(gUnknown_085E4C88);
LoadSpritePalette(gUnknown_085E4C98);
BeginNormalPaletteFade(0xFFFFFFFE, 0, 0x10, 0, RGB_WHITEALPHA);
gTasks[taskId].func = Task_IntroFadeIn0;
@@ -2092,7 +2092,7 @@ static void Task_IntroFadeIn5(u8 taskId)
gTasks[taskId].data[0] = 0;
gTasks[taskId].data[6] = 1;
gTasks[taskId].data[7] = 0;
- LoadCompressedObjectPicUsingHeap(gUnknown_085E4BF4);
+ LoadCompressedSpriteSheetUsingHeap(gUnknown_085E4BF4);
LoadSpritePalettes(gUnknown_085E4C04);
}
@@ -2169,7 +2169,7 @@ static void Task_IntroFadeIn7(u8 taskId)
{
u8 newTaskId;
- LoadCompressedObjectPic(gUnknown_085E5048);
+ LoadCompressedSpriteSheet(gUnknown_085E5048);
LoadSpritePalettes(gUnknown_085E5058);
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0
| DISPCNT_OBJ_1D_MAP
diff --git a/src/intro_credits_graphics.c b/src/intro_credits_graphics.c
index 20a360901..d85e58938 100644
--- a/src/intro_credits_graphics.c
+++ b/src/intro_credits_graphics.c
@@ -341,7 +341,7 @@ void load_intro_part2_graphics(u8 a)
LZ77UnCompVram(gUnknown_085F0DBC, (void *)(VRAM));
LZ77UnCompVram(gUnknown_085F1398, (void *)(VRAM + 0x3000));
LoadPalette(&gUnknown_085F0CFC, 0, 96);
- LoadCompressedObjectPic(gUnknown_085F5064);
+ LoadCompressedSpriteSheet(gUnknown_085F5064);
LoadPalette(&gUnknown_085F1668, 256, 32);
sub_817B76C();
break;
@@ -349,7 +349,7 @@ void load_intro_part2_graphics(u8 a)
LZ77UnCompVram(gUnknown_085F1824, (void *)(VRAM));
LZ77UnCompVram(gUnknown_085F1EAC, (void *)(VRAM + 0x3000));
LoadPalette(&gUnknown_085F17E4, 0, 32);
- LoadCompressedObjectPic(gUnknown_085F50EC);
+ LoadCompressedSpriteSheet(gUnknown_085F50EC);
LoadPalette(&gUnknown_085F21B0, 256, 32);
sub_817B788();
break;
@@ -447,7 +447,7 @@ void sub_817B1C8(u8 a)
LZ77UnCompVram(gUnknown_085F0DBC, (void *)(VRAM));
LZ77UnCompVram(gUnknown_085F1398, (void *)(VRAM + 0x3000));
LoadPalette(&gUnknown_085F0CFC, 0, 96);
- LoadCompressedObjectPic(gUnknown_085F5064);
+ LoadCompressedSpriteSheet(gUnknown_085F5064);
LZ77UnCompVram(gUnknown_085F16A8, (void *)(VRAM + 0x10000));
LoadPalette(&gUnknown_085F1668, 256, 32);
sub_817B76C();
@@ -457,7 +457,7 @@ void sub_817B1C8(u8 a)
LZ77UnCompVram(gUnknown_085F0DBC, (void *)(VRAM));
LZ77UnCompVram(gUnknown_085F1398, (void *)(VRAM + 0x3000));
LoadPalette(&gUnknown_085F0D5C, 0, 96);
- LoadCompressedObjectPic(gUnknown_085F5064);
+ LoadCompressedSpriteSheet(gUnknown_085F5064);
LZ77UnCompVram(gUnknown_085F16A8, (void *)(VRAM + 0x10000));
LoadPalette(&gUnknown_085F1688, 256, 32);
sub_817B76C();
@@ -468,7 +468,7 @@ void sub_817B1C8(u8 a)
LZ77UnCompVram(gUnknown_085F1824, (void *)(VRAM));
LZ77UnCompVram(gUnknown_085F1EAC, (void *)(VRAM + 0x3000));
LoadPalette(&gUnknown_085F1804, 0, 32);
- LoadCompressedObjectPic(gUnknown_085F50EC);
+ LoadCompressedSpriteSheet(gUnknown_085F50EC);
LoadPalette(&gUnknown_085F1804, 256, 32);
sub_817B788();
break;
@@ -477,7 +477,7 @@ void sub_817B1C8(u8 a)
LZ77UnCompVram(gUnknown_085F235C, (void *)(VRAM));
LZ77UnCompVram(gUnknown_085F2568, (void *)(VRAM + 0x3000));
LoadPalette(&gUnknown_085F231C, 0, 64);
- LoadCompressedObjectPic(gUnknown_085F5180);
+ LoadCompressedSpriteSheet(gUnknown_085F5180);
LoadPalette(&gUnknown_085F2548, 256, 32);
sub_817B7A4();
break;
diff --git a/src/item_icon.c b/src/item_icon.c
index d037782bd..e9379dbba 100644
--- a/src/item_icon.c
+++ b/src/item_icon.c
@@ -107,7 +107,7 @@ u8 AddItemIconSprite(u16 tilesTag, u16 paletteTag, u16 itemId)
spritePalette.data = GetItemIconPicOrPalette(itemId, 1);
spritePalette.tag = paletteTag;
- LoadCompressedObjectPalette(&spritePalette);
+ LoadCompressedSpritePalette(&spritePalette);
spriteTemplate = Alloc(sizeof(*spriteTemplate));
CpuCopy16(&gItemIconSpriteTemplate, spriteTemplate, sizeof(*spriteTemplate));
@@ -144,7 +144,7 @@ u8 AddCustomItemIconSprite(struct SpriteTemplate *customSpriteTemplate, u16 tile
spritePalette.data = GetItemIconPicOrPalette(itemId, 1);
spritePalette.tag = paletteTag;
- LoadCompressedObjectPalette(&spritePalette);
+ LoadCompressedSpritePalette(&spritePalette);
spriteTemplate = Alloc(sizeof(*spriteTemplate));
CpuCopy16(customSpriteTemplate, spriteTemplate, sizeof(*spriteTemplate));
diff --git a/src/item_menu.c b/src/item_menu.c
index b0eb7c78b..abae65a33 100755
--- a/src/item_menu.c
+++ b/src/item_menu.c
@@ -715,13 +715,13 @@ bool8 load_bag_menu_graphics(void)
break;
case 3:
if (IsWallysBag() == TRUE || gSaveBlock2Ptr->playerGender == MALE)
- LoadCompressedObjectPic(&gUnknown_0857FB34);
+ LoadCompressedSpriteSheet(&gUnknown_0857FB34);
else
- LoadCompressedObjectPic(&gUnknown_0857FB3C);
+ LoadCompressedSpriteSheet(&gUnknown_0857FB3C);
gUnknown_0203CE54->unk834++;
break;
case 4:
- LoadCompressedObjectPalette(&gUnknown_0857FB44);
+ LoadCompressedSpritePalette(&gUnknown_0857FB44);
gUnknown_0203CE54->unk834++;
break;
default:
diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c
index 85b42b9b3..c68e1d29e 100644
--- a/src/item_menu_icons.c
+++ b/src/item_menu_icons.c
@@ -583,7 +583,7 @@ static void sub_80D5070(u8 berryId)
pal.data = gBerryPicTable[berryId].pal;
pal.tag = 0x7544;
- LoadCompressedObjectPalette(&pal);
+ LoadCompressedSpritePalette(&pal);
LZDecompressWram(gBerryPicTable[berryId].tiles, &gDecompressionBuffer[0x1000]);
sub_80D5018(&gDecompressionBuffer[0x1000], &gDecompressionBuffer[0]);
}
diff --git a/src/link_rfu.c b/src/link_rfu.c
index 2c6e22475..5f4beadee 100644
--- a/src/link_rfu.c
+++ b/src/link_rfu.c
@@ -2244,7 +2244,7 @@ void sub_800E0E8(void)
{
if (GetSpriteTileStartByTag(sWirelessStatusIndicatorSpriteSheet.tag) == 0xFFFF)
{
- LoadCompressedObjectPic(&sWirelessStatusIndicatorSpriteSheet);
+ LoadCompressedSpriteSheet(&sWirelessStatusIndicatorSpriteSheet);
}
LoadSpritePalette(&sWirelessStatusIndicatorSpritePalette);
gWirelessStatusIndicatorSpriteId = 0xFF;
diff --git a/src/list_menu.c b/src/list_menu.c
index caf4b798d..2476fae26 100644
--- a/src/list_menu.c
+++ b/src/list_menu.c
@@ -1074,7 +1074,7 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16
spriteSheet.data = sRedArrowOtherGfx;
spriteSheet.size = 0x100;
spriteSheet.tag = arrowInfo->tileTag;
- LoadCompressedObjectPic(&spriteSheet);
+ LoadCompressedSpriteSheet(&spriteSheet);
if (arrowInfo->palTag == SPRITE_INVALID_TAG)
{
@@ -1320,7 +1320,7 @@ static u8 ListMenuAddRedOutlineCursorObject(struct CursorStruct *cursor)
spriteSheet.data = sSelectorOutlineGfx;
spriteSheet.size = 0x100;
spriteSheet.tag = cursor->tileTag;
- LoadCompressedObjectPic(&spriteSheet);
+ LoadCompressedSpriteSheet(&spriteSheet);
if (cursor->palTag == SPRITE_INVALID_TAG)
{
@@ -1405,7 +1405,7 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor)
spriteSheet.data = sRedArrowGfx;
spriteSheet.size = 0x80;
spriteSheet.tag = cursor->tileTag;
- LoadCompressedObjectPic(&spriteSheet);
+ LoadCompressedSpriteSheet(&spriteSheet);
if (cursor->palTag == SPRITE_INVALID_TAG)
{
diff --git a/src/menu_helpers.c b/src/menu_helpers.c
index a3c0be36a..0adc6228e 100644
--- a/src/menu_helpers.c
+++ b/src/menu_helpers.c
@@ -394,8 +394,8 @@ void sub_8122298(u16 *arg0, u16 *arg1, u8 arg2, u8 arg3, u8 arg4)
void LoadListMenuArrowsGfx(void)
{
- LoadCompressedObjectPic(&gUnknown_0859F514);
- LoadCompressedObjectPalette(&gUnknown_0859F51C);
+ LoadCompressedSpriteSheet(&gUnknown_0859F514);
+ LoadCompressedSpritePalette(&gUnknown_0859F51C);
}
void sub_8122344(u8 *spriteIds, u8 count)
diff --git a/src/money.c b/src/money.c
index a347f818d..faf830637 100644
--- a/src/money.c
+++ b/src/money.c
@@ -186,8 +186,8 @@ void HideMoneyBox(void)
void AddMoneyLabelObject(u16 x, u16 y)
{
- LoadCompressedObjectPic(&sSpriteSheet_MoneyLabel);
- LoadCompressedObjectPalette(&sSpritePalette_MoneyLabel);
+ LoadCompressedSpriteSheet(&sSpriteSheet_MoneyLabel);
+ LoadCompressedSpritePalette(&sSpritePalette_MoneyLabel);
sMoneyLabelSpriteId = CreateSprite(&sSpriteTemplate_MoneyLabel, x, y, 0);
}
diff --git a/src/pokeball.c b/src/pokeball.c
index ad839e6af..d159d9254 100644
--- a/src/pokeball.c
+++ b/src/pokeball.c
@@ -999,8 +999,8 @@ void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battlerId, u8 x, u8 y,
{
u8 spriteId;
- LoadCompressedObjectPicUsingHeap(&gBallSpriteSheets[0]);
- LoadCompressedObjectPaletteUsingHeap(&gBallSpritePalettes[0]);
+ LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[0]);
+ LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[0]);
spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subpriortiy);
gSprites[spriteId].data[0] = monSpriteId;
@@ -1101,8 +1101,8 @@ u8 sub_807671C(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 g, u32
{
u8 spriteId;
- LoadCompressedObjectPicUsingHeap(&gBallSpriteSheets[0]);
- LoadCompressedObjectPaletteUsingHeap(&gBallSpritePalettes[0]);
+ LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[0]);
+ LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[0]);
spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subPriority);
gSprites[spriteId].data[0] = a;
gSprites[spriteId].data[1] = g;
@@ -1245,8 +1245,8 @@ void LoadBallGfx(u8 ballId)
if (GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag) == 0xFFFF)
{
- LoadCompressedObjectPicUsingHeap(&gBallSpriteSheets[ballId]);
- LoadCompressedObjectPaletteUsingHeap(&gBallSpritePalettes[ballId]);
+ LoadCompressedSpriteSheetUsingHeap(&gBallSpriteSheets[ballId]);
+ LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[ballId]);
}
switch (ballId)
{
diff --git a/src/pokeblock.c b/src/pokeblock.c
index 1418588b8..67f185ff6 100644
--- a/src/pokeblock.c
+++ b/src/pokeblock.c
@@ -640,11 +640,11 @@ static bool8 LoadPokeblockMenuGfx(void)
sPokeblockMenu->gfxState++;
break;
case 3:
- LoadCompressedObjectPic(&gPokeblockCase_SpriteSheet);
+ LoadCompressedSpriteSheet(&gPokeblockCase_SpriteSheet);
sPokeblockMenu->gfxState++;
break;
case 4:
- LoadCompressedObjectPalette(&gPokeblockCase_SpritePal);
+ LoadCompressedSpritePalette(&gPokeblockCase_SpritePal);
sPokeblockMenu->gfxState++;
break;
case 5:
diff --git a/src/pokeblock_feed.c b/src/pokeblock_feed.c
index 2271d7adf..b1f182b66 100644
--- a/src/pokeblock_feed.c
+++ b/src/pokeblock_feed.c
@@ -656,25 +656,25 @@ static bool8 LoadMonAndSceneGfx(struct Pokemon *mon)
trainerId = GetMonData(mon, MON_DATA_OT_ID);
palette = GetMonSpritePalStructFromOtIdPersonality(species, trainerId, personality);
- LoadCompressedObjectPalette(palette);
+ LoadCompressedSpritePalette(palette);
SetMultiuseSpriteTemplateToPokemon(palette->tag, 1);
sPokeblockFeed->loadGfxState++;
break;
case 2:
- LoadCompressedObjectPic(&gPokeblockCase_SpriteSheet);
+ LoadCompressedSpriteSheet(&gPokeblockCase_SpriteSheet);
sPokeblockFeed->loadGfxState++;
break;
case 3:
- LoadCompressedObjectPalette(&gPokeblockCase_SpritePal);
+ LoadCompressedSpritePalette(&gPokeblockCase_SpritePal);
sPokeblockFeed->loadGfxState++;
break;
case 4:
- LoadCompressedObjectPic(&sPokeblock_SpriteSheet);
+ LoadCompressedSpriteSheet(&sPokeblock_SpriteSheet);
sPokeblockFeed->loadGfxState++;
break;
case 5:
SetPokeblockSpritePal(gSpecialVar_ItemId);
- LoadCompressedObjectPalette(&sPokeblockSpritePal);
+ LoadCompressedSpritePalette(&sPokeblockSpritePal);
sPokeblockFeed->loadGfxState++;
break;
case 6:
diff --git a/src/pokedex.c b/src/pokedex.c
index e6198fd4f..ee5c99334 100644
--- a/src/pokedex.c
+++ b/src/pokedex.c
@@ -1812,7 +1812,7 @@ bool8 sub_80BC514(u8 a)
ResetSpriteData();
FreeAllSpritePalettes();
gReservedSpritePaletteCount = 8;
- LoadCompressedObjectPic(&sInterfaceSpriteSheet[0]);
+ LoadCompressedSpriteSheet(&sInterfaceSpriteSheet[0]);
LoadSpritePalettes(sInterfaceSpritePalette);
CreateInterfaceSprites(a);
gMain.state++;
@@ -4821,7 +4821,7 @@ void sub_80C12E0(u8 taskId)
}
break;
case 1:
- LoadCompressedObjectPic(sInterfaceSpriteSheet);
+ LoadCompressedSpriteSheet(sInterfaceSpriteSheet);
LoadSpritePalettes(sInterfaceSpritePalette);
sub_80C2594(taskId);
for (i = 0; i < 16; i++)
diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c
index 6b7d8656f..9a69febcf 100644
--- a/src/pokemon_icon.c
+++ b/src/pokemon_icon.c
@@ -1219,7 +1219,7 @@ void sub_80D304C(u16 offset)
}
}
-u8 sub_80D3080(u16 species)
+u8 GetValidMonIconPalIndex(u16 species)
{
if (species > SPECIES_EGG)
species = 260;
diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c
index 54c83e329..d9bc818ae 100644
--- a/src/pokemon_storage_system.c
+++ b/src/pokemon_storage_system.c
@@ -46,6 +46,26 @@ struct WallpaperTable
const u16 *palettes;
};
+struct Struct_02039D80
+{
+ u8 field_0;
+ u8 state;
+ u8 fromRow;
+ u8 fromColumn;
+ u8 toRow;
+ u8 toColumn;
+ u8 field_6;
+ u8 field_7;
+ u8 minRow;
+ u8 minColumn;
+ u8 rowsTotal;
+ u8 columsTotal;
+ u16 bgX;
+ u16 bgY;
+ u16 field_10;
+ struct BoxPokemon boxMons[IN_BOX_COUNT];
+};
+
enum
{
BOX_OPTION_WITHDRAW,
@@ -161,8 +181,9 @@ enum
#define TAG_TILE_3 0x3
#define TAG_TILE_4 0x4
-IWRAM_DATA u8 gUnknown_03000F78[0x188];
+IWRAM_DATA u32 gUnknown_03000F78[98];
+// EWRAM DATA
extern u8 sPreviousBoxOption;
extern u8 sCurrentBoxOption;
extern u8 sMovingMonOrigBoxPos;
@@ -178,6 +199,7 @@ extern bool8 sIsMonBeingMoved;
extern u8 gUnknown_02039D0F;
extern u16 gUnknown_02039D12;
extern struct Pokemon gUnknown_02039D14;
+extern struct Struct_02039D80 *gUnknown_02039D80;
extern void sub_80F9BCC(u16, u16, u8);
extern void sub_80F9BF4(u16, u16, u8);
@@ -367,10 +389,10 @@ void PrintStorageActionText(u8 id);
s16 sub_80D00AC(void);
s8 RunCanReleaseMon(void);
u8 GetBoxCursorPosition(void);
-void sub_80D0E90(bool8 inParty, u8 boxPosition);
-void sub_80D1080(bool8 inParty, u8 boxPosition);
-void sub_80D1114(bool8 inParty, u8 boxPosition);
-void sub_80D0FAC(bool8 inParty, u8 boxPosition);
+static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos);
+static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos);
+static void Item_TakeMons(u8 cursorArea, u8 cursorPos);
+static void Item_SwitchMonsWithMoving(u8 cursorArea, u8 cursorPos);
struct Sprite *sub_80CD2E8(u16 x, u16 y, u8 animId, u8 priority, u8 subpriority);
static void SetWallpaperForCurrentBox(u8 wallpaperId);
static void AddWallpapersMenu(u8 wallpaperSet);
@@ -389,8 +411,8 @@ static void sub_80CAAA8(u8 arg0, bool8 isPartyMon);
const u8 *GetMovingItemName(void);
bool32 IsWaldaWallpaperUnlocked(void);
static void SetMenuText(u8 textId);
-void sub_80D0D8C(u8 arg0, u8 cursorPos);
-void sub_80D0E50(u8 arg0, u8 cursorPos);
+void sub_80D0D8C(u8 cursorArea, u8 cursorPos);
+void sub_80D0E50(u8 cursorArea, u8 cursorPos);
void sub_80D0F38(u16 item);
static struct Sprite *CreateMonIconSprite(u16 species, u32 personality, s16 x, s16 y, u8 oamPriority, u8 subpriority);
static void DestroyBoxMonIcon(struct Sprite *sprite);
@@ -430,6 +452,27 @@ u8 sub_80CFA5C(void);
u8 sub_80D0BA4(void);
static bool8 sub_80CFA84(void);
static bool8 sub_80CFB44(void);
+bool8 sub_80D024C(void);
+bool8 sub_80D0344(void);
+bool8 sub_80D03B0(void);
+bool8 sub_80D0420(void);
+bool8 sub_80D04A0(void);
+bool8 sub_80D04C8(void);
+void sub_80D304C(u16 palIndex);
+void sub_80D07B0(u8 arg0, u8 arg1);
+void sub_80D0834(u8 arg0, u8 arg1);
+void sub_80D0B5C(void);
+void sub_80D062C(void);
+void sub_80D0884(u16 arg0, u16 arg1, u16 arg2);
+void sub_80D08CC(void);
+void sub_80D09A4(void);
+void sub_80D0A1C(void);
+void sub_80D0AAC(void);
+u8 sub_80D0894(void);
+void sub_80D0778(u8 arg0, u8 arg1, u8 arg2);
+void sub_80D0708(u8 arg0, u8 arg1, u8 arg2);
+void sub_80D06D0(u8 arg0, u8 arg1, u8 arg2);
+void sub_80D0740(u8 arg0, u8 arg1, u8 arg2);
// static const rom data
static const struct PSS_MenuStringPtrs gUnknown_085716C0[] =
@@ -2875,7 +2918,7 @@ static void Cb_TakeItemForMoving(u8 taskId)
break;
case 1:
sub_80CFE54(2);
- sub_80D0E90((sInPartyMenu != FALSE), GetBoxCursorPosition());
+ Item_FromMonToMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition());
gUnknown_02039D08->state++;
break;
case 2:
@@ -2905,7 +2948,7 @@ static void Cb_GiveMovingItemToMon(u8 taskId)
break;
case 1:
sub_80CFE54(2);
- sub_80D1080((sInPartyMenu != FALSE), GetBoxCursorPosition());
+ Item_GiveMovingToMon((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition());
gUnknown_02039D08->state++;
break;
case 2:
@@ -2946,7 +2989,7 @@ static void Cb_ItemToBag(u8 taskId)
else
{
PlaySE(SE_SELECT);
- sub_80D1114((sInPartyMenu != FALSE), GetBoxCursorPosition());
+ Item_TakeMons((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition());
gUnknown_02039D08->state = 1;
}
break;
@@ -2997,7 +3040,7 @@ static void Cb_SwitchSelectedItem(u8 taskId)
break;
case 1:
sub_80CFE54(2);
- sub_80D0FAC((sInPartyMenu != FALSE), GetBoxCursorPosition());
+ Item_SwitchMonsWithMoving((sInPartyMenu != FALSE) ? CURSOR_AREA_IN_PARTY : CURSOR_AREA_IN_BOX, GetBoxCursorPosition());
gUnknown_02039D08->state++;
break;
case 2:
@@ -4154,9 +4197,9 @@ static void sub_80CAEAC(void)
if (!IsCursorOnBox())
{
if (sInPartyMenu)
- sub_80D0D8C(1, GetBoxCursorPosition());
+ sub_80D0D8C(CURSOR_AREA_IN_PARTY, GetBoxCursorPosition());
else
- sub_80D0D8C(0, GetBoxCursorPosition());
+ sub_80D0D8C(CURSOR_AREA_IN_BOX, GetBoxCursorPosition());
}
if (gUnknown_02039D12 != 0)
@@ -5636,14 +5679,14 @@ static void sub_80CD894(u8 newCurosrArea, u8 newCursorPosition)
if (gUnknown_02039D08->boxOption == BOX_OPTION_MOVE_ITEMS)
{
if (sBoxCursorArea == CURSOR_AREA_IN_BOX)
- sub_80D0E50(0, sBoxCursorPosition);
+ sub_80D0E50(CURSOR_AREA_IN_BOX, sBoxCursorPosition);
else if (sBoxCursorArea == CURSOR_AREA_IN_PARTY)
- sub_80D0E50(1, sBoxCursorPosition);
+ sub_80D0E50(CURSOR_AREA_IN_PARTY, sBoxCursorPosition);
if (newCurosrArea == CURSOR_AREA_IN_BOX)
- sub_80D0D8C(0, newCursorPosition);
+ sub_80D0D8C(newCurosrArea, newCursorPosition);
else if (newCurosrArea == CURSOR_AREA_IN_PARTY)
- sub_80D0D8C(1, newCursorPosition);
+ sub_80D0D8C(newCurosrArea, newCursorPosition);
}
if (newCurosrArea == CURSOR_AREA_IN_PARTY && sBoxCursorArea != CURSOR_AREA_IN_PARTY)
@@ -8298,13 +8341,13 @@ void sub_80CFE84(void)
void sub_80CFEA8(void)
{
if (sBoxCursorArea == CURSOR_AREA_IN_BOX)
- sub_80D0E50(0, sBoxCursorPosition);
+ sub_80D0E50(CURSOR_AREA_IN_BOX, sBoxCursorPosition);
}
void sub_80CFECC(void)
{
if (sBoxCursorArea == CURSOR_AREA_IN_BOX)
- sub_80D0D8C(0, sBoxCursorPosition);
+ sub_80D0D8C(CURSOR_AREA_IN_BOX, sBoxCursorPosition);
}
static void InitMenu(void)
@@ -8449,3 +8492,970 @@ void sub_80D013C(void)
sub_8198070(gUnknown_02039D08->field_CB0, TRUE);
RemoveWindow(gUnknown_02039D08->field_CB0);
}
+
+// The functions below handle moving and grabbing multiple mons at once.
+// The icons are converted to background 0 which coordinates are changed while moving mons.
+// There is also a bit of math involved in determining how many column/rows of mons to grab/move.
+
+const struct WindowTemplate gUnknown_0857BB1C =
+{
+ .bg = 0,
+ .tilemapLeft = 10,
+ .tilemapTop = 3,
+ .width = 20,
+ .height = 18,
+ .paletteNum = 9,
+ .baseBlock = 0xA,
+};
+
+bool8 sub_80D0164(void)
+{
+ gUnknown_02039D80 = Alloc(sizeof(*gUnknown_02039D80));
+ if (gUnknown_02039D80 != NULL)
+ {
+ gUnknown_02039D08->field_2200 = AddWindow8Bit(&gUnknown_0857BB1C);
+ if (gUnknown_02039D08->field_2200 != 0xFF)
+ {
+ FillWindowPixelBuffer(gUnknown_02039D08->field_2200, 0);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
+void sub_80D01B8(void)
+{
+ if (gUnknown_02039D80 != NULL)
+ Free(gUnknown_02039D80);
+}
+
+void sub_80D01D0(u8 arg0)
+{
+ gUnknown_02039D80->field_0 = arg0;
+ gUnknown_02039D80->state = 0;
+}
+
+bool8 sub_80D01E4(void)
+{
+ switch (gUnknown_02039D80->field_0)
+ {
+ case 0:
+ return sub_80D024C();
+ case 1:
+ return sub_80D0344();
+ case 2:
+ return sub_80D03B0();
+ case 3:
+ return sub_80D0420();
+ case 4:
+ return sub_80D04A0();
+ case 5:
+ return sub_80D04C8();
+ }
+
+ return FALSE;
+}
+
+bool8 sub_80D024C(void)
+{
+ switch (gUnknown_02039D80->state)
+ {
+ case 0:
+ HideBg(0);
+ sub_80D304C(0x80);
+ gUnknown_02039D80->state++;
+ break;
+ case 1:
+ sub_80CFE14(&gUnknown_02039D80->fromRow, &gUnknown_02039D80->fromColumn);
+ gUnknown_02039D80->toRow = gUnknown_02039D80->fromRow;
+ gUnknown_02039D80->toColumn = gUnknown_02039D80->fromColumn;
+ ChangeBgX(0, -1024, 0);
+ ChangeBgY(0, -1024, 0);
+ FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 0x20, 0x20);
+ FillWindowPixelBuffer8Bit(gUnknown_02039D08->field_2200, 0);
+ sub_80D07B0(gUnknown_02039D80->fromRow, gUnknown_02039D80->fromColumn);
+ SetBgAttribute(0, 4, 1);
+ PutWindowTilemap(gUnknown_02039D08->field_2200);
+ CopyWindowToVram8Bit(gUnknown_02039D08->field_2200, 3);
+ BlendPalettes(0x3F00, 8, 0x7FFF);
+ sub_80CFE54(2);
+ SetGpuRegBits(REG_OFFSET_BG0CNT, BGCNT_256COLOR);
+ gUnknown_02039D80->state++;
+ break;
+ case 2:
+ if (!IsDma3ManagerBusyWithBgCopy())
+ {
+ ShowBg(0);
+ return FALSE;
+ }
+ break;
+ }
+
+ return TRUE;
+}
+
+bool8 sub_80D0344(void)
+{
+ switch (gUnknown_02039D80->state)
+ {
+ case 0:
+ HideBg(0);
+ gUnknown_02039D80->state++;
+ break;
+ case 1:
+ sub_80D0B5C();
+ sub_80CFE54(0);
+ gUnknown_02039D80->state++;
+ break;
+ case 2:
+ if (!IsDma3ManagerBusyWithBgCopy())
+ {
+ sub_80CFE84();
+ LoadPalette(stdpal_get(3), 0xD0, 0x20);
+ ShowBg(0);
+ return FALSE;
+ }
+ break;
+ }
+
+ return TRUE;
+}
+
+bool8 sub_80D03B0(void)
+{
+ switch (gUnknown_02039D80->state)
+ {
+ case 0:
+ if (!sub_80CD554())
+ {
+ sub_80CFE14(&gUnknown_02039D80->field_6, &gUnknown_02039D80->field_7);
+ sub_80D062C();
+ gUnknown_02039D80->toRow = gUnknown_02039D80->field_6;
+ gUnknown_02039D80->toColumn = gUnknown_02039D80->field_7;
+ CopyWindowToVram8Bit(gUnknown_02039D08->field_2200, 2);
+ gUnknown_02039D80->state++;
+ }
+ break;
+ case 1:
+ return IsDma3ManagerBusyWithBgCopy();
+ }
+
+ return TRUE;
+}
+
+bool8 sub_80D0420(void)
+{
+ u8 var1, var2;
+
+ switch (gUnknown_02039D80->state)
+ {
+ case 0:
+ sub_80D08CC();
+ sub_80D09A4();
+ sub_80CDC64(FALSE);
+ gUnknown_02039D80->state++;
+ break;
+ case 1:
+ if (!DoMonPlaceChange())
+ {
+ sub_80CFE54(3);
+ sub_80D0884(0, 256, 8);
+ sub_80CDC64(TRUE);
+ gUnknown_02039D80->state++;
+ }
+ break;
+ case 2:
+ var1 = sub_80D0894();
+ var2 = DoMonPlaceChange();
+ if (!var1 && !var2)
+ return FALSE;
+ break;
+ }
+
+ return TRUE;
+}
+
+bool8 sub_80D04A0(void)
+{
+ u8 var1 = sub_80CD554();
+ u8 var2 = sub_80D0894();
+
+ if (!var1 && !var2)
+ return FALSE;
+ else
+ return TRUE;
+}
+
+bool8 sub_80D04C8(void)
+{
+ switch (gUnknown_02039D80->state)
+ {
+ case 0:
+ sub_80D0AAC();
+ sub_80D0884(0, -256, 8);
+ sub_80CDC64(FALSE);
+ gUnknown_02039D80->state++;
+ break;
+ case 1:
+ if (!DoMonPlaceChange() && !sub_80D0894())
+ {
+ sub_80D0A1C();
+ sub_80CFE54(2);
+ sub_80CDC64(TRUE);
+ HideBg(0);
+ gUnknown_02039D80->state++;
+ }
+ break;
+ case 2:
+ if (!DoMonPlaceChange())
+ {
+ sub_80CFE54(0);
+ sub_80D0B5C();
+ gUnknown_02039D80->state++;
+ }
+ break;
+ case 3:
+ if (!IsDma3ManagerBusyWithBgCopy())
+ {
+ LoadPalette(stdpal_get(3), 0xD0, 0x20);
+ sub_80CFE84();
+ ShowBg(0);
+ return FALSE;
+ }
+ break;
+ }
+
+ return TRUE;
+}
+
+bool8 sub_80D0580(u8 arg0)
+{
+ switch (arg0)
+ {
+ case 0:
+ if (gUnknown_02039D80->minColumn == 0)
+ return FALSE;
+ gUnknown_02039D80->minColumn--;
+ sub_80D0884(0, 1024, 6);
+ break;
+ case 1:
+ if (gUnknown_02039D80->minColumn + gUnknown_02039D80->columsTotal >= 5)
+ return FALSE;
+ gUnknown_02039D80->minColumn++;
+ sub_80D0884(0, -1024, 6);
+ break;
+ case 2:
+ if (gUnknown_02039D80->minRow == 0)
+ return FALSE;
+ gUnknown_02039D80->minRow--;
+ sub_80D0884(1024, 0, 6);
+ break;
+ case 3:
+ if (gUnknown_02039D80->minRow + gUnknown_02039D80->rowsTotal > 5)
+ return FALSE;
+ gUnknown_02039D80->minRow++;
+ sub_80D0884(-1024, 0, 6);
+ break;
+ }
+
+ return TRUE;
+}
+
+void sub_80D062C(void)
+{
+ s16 var = (abs(gUnknown_02039D80->fromRow - gUnknown_02039D80->field_6)) - (abs(gUnknown_02039D80->fromRow - gUnknown_02039D80->toRow));
+ s16 var2 = (abs(gUnknown_02039D80->fromColumn - gUnknown_02039D80->field_7)) - (abs(gUnknown_02039D80->fromColumn - gUnknown_02039D80->toColumn));
+
+ if (var > 0)
+ sub_80D06D0(gUnknown_02039D80->field_6, gUnknown_02039D80->fromColumn, gUnknown_02039D80->toColumn);
+
+ if (var < 0)
+ {
+ sub_80D0740(gUnknown_02039D80->toRow, gUnknown_02039D80->fromColumn, gUnknown_02039D80->toColumn);
+ sub_80D06D0(gUnknown_02039D80->field_6, gUnknown_02039D80->fromColumn, gUnknown_02039D80->toColumn);
+ }
+
+ if (var2 > 0)
+ sub_80D0708(gUnknown_02039D80->field_7, gUnknown_02039D80->fromRow, gUnknown_02039D80->toRow);
+
+ if (var2 < 0)
+ {
+ sub_80D0778(gUnknown_02039D80->toColumn, gUnknown_02039D80->fromRow, gUnknown_02039D80->toRow);
+ sub_80D0708(gUnknown_02039D80->field_7, gUnknown_02039D80->fromRow, gUnknown_02039D80->toRow);
+ }
+}
+
+void sub_80D06D0(u8 arg0, u8 arg1, u8 arg2)
+{
+ u8 var1 = arg1;
+
+ if (arg1 > arg2)
+ {
+ arg1 = arg2;
+ arg2 = var1;
+ }
+
+ while (arg1 <= arg2)
+ sub_80D07B0(arg0, arg1++);
+}
+
+void sub_80D0708(u8 arg0, u8 arg1, u8 arg2)
+{
+ u8 var1 = arg1;
+
+ if (arg1 > arg2)
+ {
+ arg1 = arg2;
+ arg2 = var1;
+ }
+
+ while (arg1 <= arg2)
+ sub_80D07B0(arg1++, arg0);
+}
+
+void sub_80D0740(u8 arg0, u8 arg1, u8 arg2)
+{
+ u8 var1 = arg1;
+
+ if (arg1 > arg2)
+ {
+ arg1 = arg2;
+ arg2 = var1;
+ }
+
+ while (arg1 <= arg2)
+ sub_80D0834(arg0, arg1++);
+}
+
+void sub_80D0778(u8 arg0, u8 arg1, u8 arg2)
+{
+ u8 var1 = arg1;
+
+ if (arg1 > arg2)
+ {
+ arg1 = arg2;
+ arg2 = var1;
+ }
+
+ while (arg1 <= arg2)
+ sub_80D0834(arg1++, arg0);
+}
+
+void sub_80D07B0(u8 arg0, u8 arg1)
+{
+ u8 position = arg0 + (6 * arg1);
+ u16 species = GetCurrentBoxMonData(position, MON_DATA_SPECIES2);
+ u32 personality = GetCurrentBoxMonData(position, MON_DATA_PERSONALITY);
+
+ if (species != SPECIES_NONE)
+ {
+ const u8 *iconGfx = GetMonIconPtr(species, personality, 1);
+ u8 index = GetValidMonIconPalIndex(species) + 8;
+
+ BlitBitmapRectToWindow4BitTo8Bit(gUnknown_02039D08->field_2200,
+ iconGfx,
+ 0,
+ 0,
+ 32,
+ 32,
+ 24 * arg0,
+ 24 * arg1,
+ 32,
+ 32,
+ index);
+ }
+}
+
+void sub_80D0834(u8 arg0, u8 arg1)
+{
+ u8 position = arg0 + (6 * arg1);
+ u16 species = GetCurrentBoxMonData(position, MON_DATA_SPECIES2);
+
+ if (species != SPECIES_NONE)
+ {
+ FillWindowPixelRect8Bit(gUnknown_02039D08->field_2200,
+ 0,
+ 24 * arg0,
+ 24 * arg1,
+ 32,
+ 32);
+ }
+}
+
+void sub_80D0884(u16 arg0, u16 arg1, u16 arg2)
+{
+ gUnknown_02039D80->bgX = arg0;
+ gUnknown_02039D80->bgY = arg1;
+ gUnknown_02039D80->field_10 = arg2;
+}
+
+u8 sub_80D0894(void)
+{
+ if (gUnknown_02039D80->field_10 != 0)
+ {
+ ChangeBgX(0, gUnknown_02039D80->bgX, 1);
+ ChangeBgY(0, gUnknown_02039D80->bgY, 1);
+ gUnknown_02039D80->field_10--;
+ }
+
+ return gUnknown_02039D80->field_10;
+}
+
+void sub_80D08CC(void)
+{
+ s32 i, j, r8, r9;
+ s32 rowCount, columnCount;
+ u8 boxId;
+ u8 monArrayId;
+
+ gUnknown_02039D80->minRow = min(gUnknown_02039D80->fromRow, gUnknown_02039D80->toRow);
+ gUnknown_02039D80->minColumn = min(gUnknown_02039D80->fromColumn, gUnknown_02039D80->toColumn);
+ gUnknown_02039D80->rowsTotal = abs(gUnknown_02039D80->fromRow - gUnknown_02039D80->toRow) + 1;
+ gUnknown_02039D80->columsTotal = abs(gUnknown_02039D80->fromColumn - gUnknown_02039D80->toColumn) + 1;
+ boxId = StorageGetCurrentBox();
+ monArrayId = 0;
+ rowCount = gUnknown_02039D80->minRow + gUnknown_02039D80->rowsTotal;
+ columnCount = gUnknown_02039D80->minColumn + gUnknown_02039D80->columsTotal;
+ for (i = gUnknown_02039D80->minColumn; i < columnCount; i++)
+ {
+ u8 boxPosition = (IN_BOX_ROWS * i) + gUnknown_02039D80->minRow;
+ for (j = gUnknown_02039D80->minRow; j < rowCount; j++)
+ {
+ struct BoxPokemon *boxMon = GetBoxedMonPtr(boxId, boxPosition);
+
+ gUnknown_02039D80->boxMons[monArrayId] = *boxMon;
+ monArrayId++;
+ boxPosition++;
+ }
+ }
+}
+
+void sub_80D09A4(void)
+{
+ s32 i, j;
+ s32 rowCount = gUnknown_02039D80->minRow + gUnknown_02039D80->rowsTotal;
+ s32 columnCount = gUnknown_02039D80->minColumn + gUnknown_02039D80->columsTotal;
+ u8 boxId = StorageGetCurrentBox();
+
+ for (i = gUnknown_02039D80->minColumn; i < columnCount; i++)
+ {
+ u8 boxPosition = (IN_BOX_ROWS * i) + gUnknown_02039D80->minRow;
+ for (j = gUnknown_02039D80->minRow; j < rowCount; j++)
+ {
+ DestroyBoxMonIconAtPosition(boxPosition);
+ ZeroBoxMonAt(boxId, boxPosition);
+ boxPosition++;
+ }
+ }
+}
+
+void sub_80D0A1C(void)
+{
+ s32 i, j;
+ s32 rowCount = gUnknown_02039D80->minRow + gUnknown_02039D80->rowsTotal;
+ s32 columnCount = gUnknown_02039D80->minColumn + gUnknown_02039D80->columsTotal;
+ u8 monArrayId = 0;
+
+ for (i = gUnknown_02039D80->minColumn; i < columnCount; i++)
+ {
+ u8 boxPosition = (IN_BOX_ROWS * i) + gUnknown_02039D80->minRow;
+ for (j = gUnknown_02039D80->minRow; j < rowCount; j++)
+ {
+ if (GetBoxMonData(&gUnknown_02039D80->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES))
+ sub_80CB140(boxPosition);
+ monArrayId++;
+ boxPosition++;
+ }
+ }
+}
+
+void sub_80D0AAC(void)
+{
+ s32 i, j;
+ s32 rowCount = gUnknown_02039D80->minRow + gUnknown_02039D80->rowsTotal;
+ s32 columnCount = gUnknown_02039D80->minColumn + gUnknown_02039D80->columsTotal;
+ u8 boxId = StorageGetCurrentBox();
+ u8 monArrayId = 0;
+
+ for (i = gUnknown_02039D80->minColumn; i < columnCount; i++)
+ {
+ u8 boxPosition = (IN_BOX_ROWS * i) + gUnknown_02039D80->minRow;
+ for (j = gUnknown_02039D80->minRow; j < rowCount; j++)
+ {
+ if (GetBoxMonData(&gUnknown_02039D80->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES))
+ SetBoxMonAt(boxId, boxPosition, &gUnknown_02039D80->boxMons[monArrayId]);
+ boxPosition++;
+ monArrayId++;
+ }
+ }
+}
+
+void sub_80D0B5C(void)
+{
+ ChangeBgX(0, 0, 0);
+ ChangeBgY(0, 0, 0);
+ SetBgAttribute(0, 4, 0);
+ ClearGpuRegBits(REG_OFFSET_BG0CNT, BGCNT_256COLOR);
+ FillBgTilemapBufferRect_Palette0(0, 0, 0, 0, 32, 32);
+ CopyBgTilemapBufferToVram(0);
+}
+
+u8 sub_80D0BA4(void)
+{
+ return (IN_BOX_ROWS * gUnknown_02039D80->fromColumn) + gUnknown_02039D80->fromRow;
+}
+
+bool8 sub_80D0BC0(void)
+{
+ s32 i, j;
+ s32 rowCount = gUnknown_02039D80->minRow + gUnknown_02039D80->rowsTotal;
+ s32 columnCount = gUnknown_02039D80->minColumn + gUnknown_02039D80->columsTotal;
+ u8 monArrayId = 0;
+
+ for (i = gUnknown_02039D80->minColumn; i < columnCount; i++)
+ {
+ u8 boxPosition = (IN_BOX_ROWS * i) + gUnknown_02039D80->minRow;
+ for (j = gUnknown_02039D80->minRow; j < rowCount; j++)
+ {
+ if (GetBoxMonData(&gUnknown_02039D80->boxMons[monArrayId], MON_DATA_SANITY_HAS_SPECIES)
+ && GetCurrentBoxMonData(boxPosition, MON_DATA_SANITY_HAS_SPECIES))
+ return FALSE;
+
+ monArrayId++;
+ boxPosition++;
+ }
+ }
+
+ return TRUE;
+}
+
+const u32 gUnknown_0857BB24[] = INCBIN_U32("graphics/pokemon_storage/unknown_frame.4bpp");
+
+static const struct OamData sOamData_857BBA4 =
+{
+ .y = 0,
+ .affineMode = 1,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 0,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 2,
+ .tileNum = 0,
+ .priority = 1,
+ .paletteNum = 0,
+ .affineParam = 0
+};
+
+static const union AffineAnimCmd sSpriteAffineAnim_857BBAC[] =
+{
+ AFFINEANIMCMD_FRAME(128, 128, 0, 0),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd sSpriteAffineAnim_857BBBC[] =
+{
+ AFFINEANIMCMD_FRAME(88, 88, 0, 0),
+ AFFINEANIMCMD_FRAME(5, 5, 0, 8),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd sSpriteAffineAnim_857BBD4[] =
+{
+ AFFINEANIMCMD_FRAME(128, 128, 0, 0),
+ AFFINEANIMCMD_FRAME(-5, -5, 0, 8),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd sSpriteAffineAnim_857BBEC[] =
+{
+ AFFINEANIMCMD_FRAME(128, 128, 0, 0),
+ AFFINEANIMCMD_FRAME(10, 10, 0, 12),
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd sSpriteAffineAnim_857BC0C[] =
+{
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_FRAME(-10, -10, 0, 12),
+ AFFINEANIMCMD_FRAME(128, 128, 0, 0),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd sSpriteAffineAnim_857BC2C[] =
+{
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_FRAME(-5, -5, 0, 16),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd sSpriteAffineAnim_857BC44[] =
+{
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_END
+};
+
+static const union AffineAnimCmd *const sSpriteAffineAnimTable_857BC44[] =
+{
+ sSpriteAffineAnim_857BBAC,
+ sSpriteAffineAnim_857BBBC,
+ sSpriteAffineAnim_857BBD4,
+ sSpriteAffineAnim_857BBEC,
+ sSpriteAffineAnim_857BC0C,
+ sSpriteAffineAnim_857BC2C,
+ sSpriteAffineAnim_857BC44
+};
+
+const struct SpriteTemplate gSpriteTemplate_857BC70 =
+{
+ .tileTag = 7,
+ .paletteTag = 0xdacb,
+ .oam = &sOamData_857BBA4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = sSpriteAffineAnimTable_857BC44,
+ .callback = SpriteCallbackDummy,
+};
+
+void sub_80D0C60(void)
+{
+ s32 i;
+ u8 spriteId;
+ struct CompressedSpriteSheet spriteSheet;
+ struct SpriteTemplate spriteTemplate;
+
+ if (gUnknown_02039D08->boxOption == BOX_OPTION_MOVE_ITEMS)
+ {
+ spriteSheet.data = gUnknown_03000F78;
+ spriteSheet.size = 0x200;
+ spriteTemplate = gSpriteTemplate_857BC70;
+
+ for (i = 0; i < 3; i++)
+ {
+ spriteSheet.tag = 7 + i;
+ LoadCompressedSpriteSheet(&spriteSheet);
+ gUnknown_02039D08->field_2204[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * 32 + (void*)(OBJ_VRAM0);
+ gUnknown_02039D08->field_2204[i].palIndex = AllocSpritePalette(0xDACB + i);
+ gUnknown_02039D08->field_2204[i].palIndex *= 16;
+ gUnknown_02039D08->field_2204[i].palIndex += 0x100;
+ spriteTemplate.tileTag = 7 + i;
+ spriteTemplate.paletteTag = 0xDACB + i;
+ spriteId = CreateSprite(&spriteTemplate, 0, 0, 11);
+ gUnknown_02039D08->field_2204[i].sprite = &gSprites[spriteId];
+ gUnknown_02039D08->field_2204[i].sprite->invisible = TRUE;
+ gUnknown_02039D08->field_2204[i].unk10 = 0;
+ }
+ }
+ gUnknown_02039D08->movingItem = 0;
+}
+
+// The functions below handle new features of MOVE_ITEMS box option.
+
+bool32 sub_80D1324(u8 cursorArea, u8 cursorPos);
+const u32 *GetItemIconPic(u16 itemId);
+const u16 *GetItemIconPalette(u16 itemId);
+u8 sub_80D12E8(void);
+void sub_80D140C(u8 id, u8 cursorArea, u8 cursorPos);
+void sub_80D1524(u8 id, const u32 *itemTiles, const u16 *itemPal);
+void sub_80D15D4(u8 id, u8 animNum);
+void sub_80D1740(u8 id, bool8 arg1);
+u8 sub_80D1370(u8 cursorArea, u8 cursorPos);
+void sub_80D1604(u8 id, u8 arg1, u8 cursorArea, u8 cursorPos);
+void sub_80D1AD8(struct Sprite *sprite);
+
+void sub_80D0D8C(u8 cursorArea, u8 cursorPos)
+{
+ u16 heldItem;
+
+ if (gUnknown_02039D08->boxOption != BOX_OPTION_MOVE_ITEMS)
+ return;
+ if (sub_80D1324(cursorArea, cursorPos))
+ return;
+
+ switch (cursorArea)
+ {
+ case CURSOR_AREA_IN_BOX:
+ if (!GetCurrentBoxMonData(cursorPos, MON_DATA_SANITY_HAS_SPECIES))
+ return;
+ heldItem = GetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM);
+ break;
+ case CURSOR_AREA_IN_PARTY:
+ if (cursorPos >= PARTY_SIZE || !GetMonData(&gPlayerParty[cursorPos], MON_DATA_SANITY_HAS_SPECIES))
+ return;
+ heldItem = GetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM);
+ break;
+ default:
+ return;
+ }
+
+ if (heldItem != 0)
+ {
+ const u32 *tiles = GetItemIconPic(heldItem);
+ const u16 *pal = GetItemIconPalette(heldItem);
+ u8 id = sub_80D12E8();
+
+ sub_80D140C(id, cursorArea, cursorPos);
+ sub_80D1524(id, tiles, pal);
+ sub_80D15D4(id, 1);
+ sub_80D1740(id, TRUE);
+ }
+}
+
+void sub_80D0E50(u8 cursorArea, u8 cursorPos)
+{
+ u8 id;
+
+ if (gUnknown_02039D08->boxOption != BOX_OPTION_MOVE_ITEMS)
+ return;
+
+ id = sub_80D1370(cursorArea, cursorPos);
+ sub_80D15D4(id, 2);
+ sub_80D1604(id, 0, cursorArea, cursorPos);
+}
+
+static void Item_FromMonToMoving(u8 cursorArea, u8 cursorPos)
+{
+ u8 id;
+ u16 item;
+
+ if (gUnknown_02039D08->boxOption != BOX_OPTION_MOVE_ITEMS)
+ return;
+
+ id = sub_80D1370(cursorArea, cursorPos);
+ item = 0;
+ sub_80D15D4(id, 3);
+ sub_80D1604(id, 1, cursorArea, cursorPos);
+ sub_80D140C(id, 2, 0);
+ if (cursorArea == CURSOR_AREA_IN_BOX)
+ {
+ SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &item);
+ SetBoxMonIconObjMode(cursorPos, 1);
+ }
+ else
+ {
+ SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &item);
+ SetPartyMonIconObjMode(cursorPos, 1);
+ }
+
+ gUnknown_02039D08->movingItem = gUnknown_02039D08->cursorMonItem;
+}
+
+void sub_80D0F38(u16 item)
+{
+ const u32 *tiles = GetItemIconPic(item);
+ const u16 *pal = GetItemIconPalette(item);
+ u8 id = sub_80D12E8();
+
+ sub_80D1524(id, tiles, pal);
+ sub_80D15D4(id, 6);
+ sub_80D1604(id, 1, 0, 0);
+ sub_80D140C(id, 2, 0);
+ sub_80D1740(id, TRUE);
+ gUnknown_02039D08->movingItem = item;
+}
+
+static void Item_SwitchMonsWithMoving(u8 cursorArea, u8 cursorPos)
+{
+ u8 id;
+ u16 item;
+
+ if (gUnknown_02039D08->boxOption != BOX_OPTION_MOVE_ITEMS)
+ return;
+
+ id = sub_80D1370(cursorArea, cursorPos);
+ sub_80D15D4(id, 3);
+ sub_80D1604(id, 3, 2, 0);
+ if (cursorArea == CURSOR_AREA_IN_BOX)
+ {
+ item = GetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM);
+ SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &gUnknown_02039D08->movingItem);
+ gUnknown_02039D08->movingItem = item;
+ }
+ else
+ {
+ item = GetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM);
+ SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &gUnknown_02039D08->movingItem);
+ gUnknown_02039D08->movingItem = item;
+ }
+
+ id = sub_80D1370(2, 0);
+ sub_80D15D4(id, 4);
+ sub_80D1604(id, 4, cursorArea, cursorPos);
+}
+
+static void Item_GiveMovingToMon(u8 cursorArea, u8 cursorPos)
+{
+ u8 id;
+
+ if (gUnknown_02039D08->boxOption != BOX_OPTION_MOVE_ITEMS)
+ return;
+
+ id = sub_80D1370(2, 0);
+ sub_80D15D4(id, 4);
+ sub_80D1604(id, 2, cursorArea, cursorPos);
+ if (cursorArea == CURSOR_AREA_IN_BOX)
+ {
+ SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &gUnknown_02039D08->movingItem);
+ SetBoxMonIconObjMode(cursorPos, 0);
+ }
+ else
+ {
+ SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &gUnknown_02039D08->movingItem);
+ SetPartyMonIconObjMode(cursorPos, 0);
+ }
+}
+
+static void Item_TakeMons(u8 cursorArea, u8 cursorPos)
+{
+ u8 id;
+ u16 item;
+
+ if (gUnknown_02039D08->boxOption != BOX_OPTION_MOVE_ITEMS)
+ return;
+
+ item = 0;
+ id = sub_80D1370(cursorArea, cursorPos);
+ sub_80D15D4(id, 2);
+ sub_80D1604(id, 0, cursorArea, cursorPos);
+ if (cursorArea == CURSOR_AREA_IN_BOX)
+ {
+ SetCurrentBoxMonData(cursorPos, MON_DATA_HELD_ITEM, &item);
+ SetBoxMonIconObjMode(cursorPos, 1);
+ }
+ else
+ {
+ SetMonData(&gPlayerParty[cursorPos], MON_DATA_HELD_ITEM, &item);
+ SetPartyMonIconObjMode(cursorPos, 1);
+ }
+}
+
+void sub_80D1194(void)
+{
+ if (gUnknown_02039D08->boxOption == BOX_OPTION_MOVE_ITEMS)
+ {
+ u8 id = sub_80D1370(2, 0);
+ sub_80D15D4(id, 5);
+ sub_80D1604(id, 0, 2, 0);
+ }
+}
+
+void sub_80D11CC(void)
+{
+ s32 i;
+
+ if (gUnknown_02039D08->boxOption != BOX_OPTION_MOVE_ITEMS)
+ return;
+
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_02039D08->field_2204[i].unk10 && gUnknown_02039D08->field_2204[i].unk8 == 1)
+ sub_80D1604(i, 7, 2, 0);
+ }
+}
+
+bool8 sub_80D1218(void)
+{
+ s32 i;
+
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_02039D08->field_2204[i].unk10)
+ {
+ if (!gUnknown_02039D08->field_2204[i].sprite->affineAnimEnded && gUnknown_02039D08->field_2204[i].sprite->affineAnimBeginning)
+ return TRUE;
+ if (gUnknown_02039D08->field_2204[i].sprite->callback != SpriteCallbackDummy && gUnknown_02039D08->field_2204[i].sprite->callback != sub_80D1AD8)
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
+bool8 sub_80D127C(void)
+{
+ s32 i;
+
+ if (gUnknown_02039D08->boxOption == BOX_OPTION_MOVE_ITEMS)
+ {
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_02039D08->field_2204[i].unk10 && gUnknown_02039D08->field_2204[i].unk8 == 2)
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
+const u8 *GetMovingItemName(void)
+{
+ return ItemId_GetName(gUnknown_02039D08->movingItem);
+}
+
+u16 GetMovingItem(void)
+{
+ return gUnknown_02039D08->movingItem;
+}
+
+u8 sub_80D12E8(void)
+{
+ u8 i;
+
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_02039D08->field_2204[i].unk10 == 0)
+ {
+ gUnknown_02039D08->field_2204[i].unk10 = 1;
+ return i;
+ }
+ }
+
+ return 3;
+}
+
+bool32 sub_80D1324(u8 cursorArea, u8 cursorPos)
+{
+ s32 i;
+
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_02039D08->field_2204[i].unk10
+ && gUnknown_02039D08->field_2204[i].unk8 == cursorArea
+ && gUnknown_02039D08->field_2204[i].unk9 == cursorPos)
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+u8 sub_80D1370(u8 cursorArea, u8 cursorPos)
+{
+ u8 i;
+
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_02039D08->field_2204[i].unk10
+ && gUnknown_02039D08->field_2204[i].unk8 == cursorArea
+ && gUnknown_02039D08->field_2204[i].unk9 == cursorPos)
+ return i;
+ }
+
+ return 3;
+}
+
+u8 sub_80D13C4(struct Sprite *sprite)
+{
+ u8 i;
+
+ for (i = 0; i < 3; i++)
+ {
+ if (gUnknown_02039D08->field_2204[i].unk10
+ && gUnknown_02039D08->field_2204[i].sprite == sprite)
+ return i;
+ }
+
+ return 3;
+}
diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c
index 03a081af5..ebdb8b21a 100644
--- a/src/pokemon_summary_screen.c
+++ b/src/pokemon_summary_screen.c
@@ -1255,23 +1255,23 @@ static bool8 SummaryScreen_DecompressGraphics(void)
pssData->unk40F0++;
break;
case 7:
- LoadCompressedObjectPic(&sSpriteSheet_MoveTypes);
+ LoadCompressedSpriteSheet(&sSpriteSheet_MoveTypes);
pssData->unk40F0++;
break;
case 8:
- LoadCompressedObjectPic(&gUnknown_0861D074);
+ LoadCompressedSpriteSheet(&gUnknown_0861D074);
pssData->unk40F0++;
break;
case 9:
- LoadCompressedObjectPic(&gUnknown_0861D0F8);
+ LoadCompressedSpriteSheet(&gUnknown_0861D0F8);
pssData->unk40F0++;
break;
case 10:
- LoadCompressedObjectPalette(&gUnknown_0861D100);
+ LoadCompressedSpritePalette(&gUnknown_0861D100);
pssData->unk40F0++;
break;
case 11:
- LoadCompressedObjectPalette(&gUnknown_0861D07C);
+ LoadCompressedSpritePalette(&gUnknown_0861D07C);
pssData->unk40F0++;
break;
case 12:
@@ -3854,7 +3854,7 @@ static u8 sub_81C45F4(struct Pokemon *mon, s16 *a1)
return -1;
case 1:
pal = GetMonSpritePalStructFromOtIdPersonality(summary->species2, summary->OTID, summary->pid);
- LoadCompressedObjectPalette(pal);
+ LoadCompressedSpritePalette(pal);
SetMultiuseSpriteTemplateToPokemon(pal->tag, 1);
(*a1)++;
return -1;
diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c
index b22e1db32..94d81e30f 100644
--- a/src/rayquaza_scene.c
+++ b/src/rayquaza_scene.c
@@ -1528,14 +1528,14 @@ static void sub_81D706C(void)
LZDecompressWram(gRaySceneClouds1_Tilemap, sRayScene->tilemapBuffers[1]);
LZDecompressWram(gRaySceneClouds3_Tilemap, sRayScene->tilemapBuffers[2]);
LoadCompressedPalette(gRaySceneClouds_Pal, 0, 0x40);
- LoadCompressedObjectPic(&sUnknown_0862A8C4);
- LoadCompressedObjectPic(&sUnknown_0862A8F8);
- LoadCompressedObjectPic(&sUnknown_0862A924);
- LoadCompressedObjectPic(&sUnknown_0862A9D4);
- LoadCompressedObjectPic(&sUnknown_0862AA14);
- LoadCompressedObjectPic(&sUnknown_0862AA34);
- LoadCompressedObjectPalette(&sUnknown_0862A8CC);
- LoadCompressedObjectPalette(&sUnknown_0862A9DC);
+ LoadCompressedSpriteSheet(&sUnknown_0862A8C4);
+ LoadCompressedSpriteSheet(&sUnknown_0862A8F8);
+ LoadCompressedSpriteSheet(&sUnknown_0862A924);
+ LoadCompressedSpriteSheet(&sUnknown_0862A9D4);
+ LoadCompressedSpriteSheet(&sUnknown_0862AA14);
+ LoadCompressedSpriteSheet(&sUnknown_0862AA34);
+ LoadCompressedSpritePalette(&sUnknown_0862A8CC);
+ LoadCompressedSpritePalette(&sUnknown_0862A9DC);
}
static void Task_DuoFightAnim(u8 taskId)
@@ -1943,8 +1943,8 @@ static void sub_81D7E9C(void)
LZDecompressWram(gRaySceneOvercast_Tilemap, sRayScene->tilemapBuffers[1]);
LZDecompressWram(gRaySceneRayquaza_Tilemap, sRayScene->tilemapBuffers[2]);
LoadCompressedPalette(gRaySceneRayquaza_Pal, 0, 0x40);
- LoadCompressedObjectPic(&sUnknown_0862AA90);
- LoadCompressedObjectPalette(&sUnknown_0862AA98);
+ LoadCompressedSpriteSheet(&sUnknown_0862AA90);
+ LoadCompressedSpritePalette(&sUnknown_0862AA98);
}
static void Task_RayTakesFlightAnim(u8 taskId)
@@ -2118,9 +2118,9 @@ static void sub_81D8358(void)
LoadCompressedPalette(gRaySceneOvercast2_Pal, 0, 0x40);
gPlttBufferUnfaded[0] = RGB_WHITE;
gPlttBufferFaded[0] = RGB_WHITE;
- LoadCompressedObjectPic(&sUnknown_0862AAFC);
- LoadCompressedObjectPic(&sUnknown_0862AB04);
- LoadCompressedObjectPalette(&sUnknown_0862AB0C);
+ LoadCompressedSpriteSheet(&sUnknown_0862AAFC);
+ LoadCompressedSpriteSheet(&sUnknown_0862AB04);
+ LoadCompressedSpritePalette(&sUnknown_0862AB0C);
}
static void sub_81D844C(void)
@@ -2489,16 +2489,16 @@ static void sub_81D8CC4(void)
LZDecompressWram(gRaySceneHushBg_Tilemap, sRayScene->tilemapBuffers[0]);
LZDecompressWram(gRaySceneHushRing_Map, sRayScene->tilemapBuffers[2]);
LoadCompressedPalette(gRaySceneHushBg_Pal, 0, 0x60);
- LoadCompressedObjectPic(&sUnknown_0862AC28);
- LoadCompressedObjectPic(&sUnknown_0862AC30);
- LoadCompressedObjectPic(&sUnknown_0862AC38);
- LoadCompressedObjectPic(&sUnknown_0862AC40);
- LoadCompressedObjectPic(&sUnknown_0862AC48);
- LoadCompressedObjectPic(&sUnknown_0862AC50);
- LoadCompressedObjectPalette(&sUnknown_0862AC58);
- LoadCompressedObjectPalette(&sUnknown_0862AC60);
- LoadCompressedObjectPalette(&sUnknown_0862AC68);
- LoadCompressedObjectPalette(&sUnknown_0862AC70);
+ LoadCompressedSpriteSheet(&sUnknown_0862AC28);
+ LoadCompressedSpriteSheet(&sUnknown_0862AC30);
+ LoadCompressedSpriteSheet(&sUnknown_0862AC38);
+ LoadCompressedSpriteSheet(&sUnknown_0862AC40);
+ LoadCompressedSpriteSheet(&sUnknown_0862AC48);
+ LoadCompressedSpriteSheet(&sUnknown_0862AC50);
+ LoadCompressedSpritePalette(&sUnknown_0862AC58);
+ LoadCompressedSpritePalette(&sUnknown_0862AC60);
+ LoadCompressedSpritePalette(&sUnknown_0862AC68);
+ LoadCompressedSpritePalette(&sUnknown_0862AC70);
}
static void Task_RayChasesAwayAnim(u8 taskId)
diff --git a/src/rom_8034C54.c b/src/rom_8034C54.c
index e175ecc64..ba431778f 100644
--- a/src/rom_8034C54.c
+++ b/src/rom_8034C54.c
@@ -133,7 +133,7 @@ bool32 sub_8034D14(u32 id, s32 arg1, const struct UnkStruct3 *arg2)
compSpriteSheet = *(struct CompressedSpriteSheet*)(arg2->spriteSheet);
compSpriteSheet.size = GetDecompressedDataSize(arg2->spriteSheet->data);
- gUnknown_02022E10->array[id].tileStart = LoadCompressedObjectPic(&compSpriteSheet);
+ gUnknown_02022E10->array[id].tileStart = LoadCompressedSpriteSheet(&compSpriteSheet);
}
if (gUnknown_02022E10->array[id].tileStart == 0xFFFF)
diff --git a/src/script_pokemon_util_80F87D8.c b/src/script_pokemon_util_80F87D8.c
index 7fc61f953..9f18d4b3a 100755
--- a/src/script_pokemon_util_80F87D8.c
+++ b/src/script_pokemon_util_80F87D8.c
@@ -335,7 +335,7 @@ void ShowContestEntryMonPic(void)
HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites[1], species, personality);
palette = GetMonSpritePalStructFromOtIdPersonality(species, otId, personality);
- LoadCompressedObjectPalette(palette);
+ LoadCompressedSpritePalette(palette);
SetMultiuseSpriteTemplateToPokemon(species, 1);
gMultiuseSpriteTemplate.paletteTag = palette->tag;
spriteId = CreateSprite(&gMultiuseSpriteTemplate, (left + 1) * 8 + 32, (top * 8) + 40, 0);
diff --git a/src/smokescreen.c b/src/smokescreen.c
index 9b37cd234..d9780bbb6 100644
--- a/src/smokescreen.c
+++ b/src/smokescreen.c
@@ -14,8 +14,8 @@ u8 sub_807521C(s16 x, s16 y, u8 a3)
if (GetSpriteTileStartByTag(gUnknown_0831C620.tag) == 0xFFFF)
{
- LoadCompressedObjectPicUsingHeap(&gUnknown_0831C620);
- LoadCompressedObjectPaletteUsingHeap(&gUnknown_0831C628);
+ LoadCompressedSpriteSheetUsingHeap(&gUnknown_0831C620);
+ LoadCompressedSpritePaletteUsingHeap(&gUnknown_0831C628);
}
mainSpriteId = CreateInvisibleSpriteWithCallback(sub_8075370);
diff --git a/src/starter_choose.c b/src/starter_choose.c
index 46aac5590..afa3fabbf 100644
--- a/src/starter_choose.c
+++ b/src/starter_choose.c
@@ -412,8 +412,8 @@ void CB2_ChooseStarter(void)
LoadPalette(GetOverworldTextboxPalettePtr(), 0xE0, 0x20);
LoadPalette(gBirchBagGrassPal, 0, 0x40);
- LoadCompressedObjectPic(&gUnknown_085B1ED8[0]);
- LoadCompressedObjectPic(&gUnknown_085B1EE8[0]);
+ LoadCompressedSpriteSheet(&gUnknown_085B1ED8[0]);
+ LoadCompressedSpriteSheet(&gUnknown_085B1EE8[0]);
LoadSpritePalettes(gUnknown_085B1EF8);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, 0);
diff --git a/src/title_screen.c b/src/title_screen.c
index d60e3fc0b..c6e9aa26f 100644
--- a/src/title_screen.c
+++ b/src/title_screen.c
@@ -518,9 +518,9 @@ void CB2_InitTitleScreen(void)
ResetSpriteData();
FreeAllSpritePalettes();
gReservedSpritePaletteCount = 9;
- LoadCompressedObjectPic(&sSpriteSheet_EmeraldVersion[0]);
- LoadCompressedObjectPic(&sSpriteSheet_PressStart[0]);
- LoadCompressedObjectPic(&sPokemonLogoShineSpriteSheet[0]);
+ LoadCompressedSpriteSheet(&sSpriteSheet_EmeraldVersion[0]);
+ LoadCompressedSpriteSheet(&sSpriteSheet_PressStart[0]);
+ LoadCompressedSpriteSheet(&sPokemonLogoShineSpriteSheet[0]);
LoadPalette(gTitleScreenEmeraldVersionPal, 0x100, 0x20);
LoadSpritePalette(&sSpritePalette_PressStart[0]);
gMain.state = 2;
diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c
index f5354a1e8..5ddae218b 100644
--- a/src/trainer_pokemon_sprites.c
+++ b/src/trainer_pokemon_sprites.c
@@ -115,7 +115,7 @@ static void LoadPicPaletteByTagOrSlot(u16 species, u32 otId, u32 personality, u8
else
{
sCreatingSpriteTemplate.paletteTag = paletteTag;
- LoadCompressedObjectPalette(GetMonSpritePalStructFromOtIdPersonality(species, otId, personality));
+ LoadCompressedSpritePalette(GetMonSpritePalStructFromOtIdPersonality(species, otId, personality));
}
}
else
@@ -128,7 +128,7 @@ static void LoadPicPaletteByTagOrSlot(u16 species, u32 otId, u32 personality, u8
else
{
sCreatingSpriteTemplate.paletteTag = paletteTag;
- LoadCompressedObjectPalette(&gTrainerFrontPicPaletteTable[species]);
+ LoadCompressedSpritePalette(&gTrainerFrontPicPaletteTable[species]);
}
}
}
diff --git a/src/unk_transition.c b/src/unk_transition.c
index 18cee2544..220570851 100644
--- a/src/unk_transition.c
+++ b/src/unk_transition.c
@@ -185,7 +185,7 @@ static void sub_81DA700(void)
LZ77UnCompVram(gUnknown_0862AD54, dst2);
LZ77UnCompVram(gUnknown_0862AF30, dst1);
LoadPalette(gUnknown_0862B53C, 0xF0, 0x20);
- LoadCompressedObjectPic(&sUnknown_0862B724);
+ LoadCompressedSpriteSheet(&sUnknown_0862B724);
LoadSpritePalette(&sUnknown_0862B72C);
}
diff --git a/src/wallclock.c b/src/wallclock.c
index 5c8d920e7..58704c8a3 100644
--- a/src/wallclock.c
+++ b/src/wallclock.c
@@ -623,7 +623,7 @@ static void LoadWallClockGraphics(void)
ResetSpriteData();
ResetPaletteFade();
FreeAllSpritePalettes();
- LoadCompressedObjectPic(&gUnknown_085B2208);
+ LoadCompressedSpriteSheet(&gUnknown_085B2208);
LoadSpritePalettes(gUnknown_085B2218);
}
diff --git a/src/window.c b/src/window.c
index 4e1a38eff..5ae6c7509 100644
--- a/src/window.c
+++ b/src/window.c
@@ -276,16 +276,16 @@ void CopyWindowToVram(u8 windowId, u8 mode)
switch (mode)
{
- case 1:
- CopyBgTilemapBufferToVram(windowLocal.window.bg);
- break;
- case 2:
- LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
- break;
- case 3:
- LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
- CopyBgTilemapBufferToVram(windowLocal.window.bg);
- break;
+ case 1:
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
+ break;
+ case 2:
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
+ break;
+ case 3:
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
+ break;
}
}
@@ -308,16 +308,16 @@ void CopyWindowRectToVram(u32 windowId, u32 mode, u32 x, u32 y, u32 w, u32 h)
switch (mode)
{
- case 1:
- CopyBgTilemapBufferToVram(windowLocal.window.bg);
- break;
- case 2:
- LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
- break;
- case 3:
- LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
- CopyBgTilemapBufferToVram(windowLocal.window.bg);
- break;
+ case 1:
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
+ break;
+ case 2:
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
+ break;
+ case 3:
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
+ break;
}
}
}
@@ -601,7 +601,7 @@ static void nullsub_9(void)
}
-u16 AddWindow8Bit(struct WindowTemplate *template)
+u16 AddWindow8Bit(const struct WindowTemplate *template)
{
u16 windowId;
u8* memAddress;
@@ -669,12 +669,12 @@ void FillWindowPixelRect8Bit(u8 windowId, u8 fillValue, u16 x, u16 y, u16 width,
FillBitmapRect8Bit(&pixelRect, x, y, width, height, fillValue);
}
-void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight, u8 paletteNum)
+void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight, u8 paletteNum)
{
struct Bitmap sourceRect;
struct Bitmap destRect;
- sourceRect.pixels = (u8*)pixels;
+ sourceRect.pixels = pixels;
sourceRect.width = srcWidth;
sourceRect.height = srcHeight;
@@ -692,16 +692,16 @@ void CopyWindowToVram8Bit(u8 windowId, u8 mode)
switch (mode)
{
- case 1:
- CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
- break;
- case 2:
- LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
- break;
- case 3:
- LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
- CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
- break;
+ case 1:
+ CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
+ break;
+ case 2:
+ LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
+ break;
+ case 3:
+ LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
+ CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
+ break;
}
}