diff options
-rw-r--r-- | asm/item_menu_icons.s | 680 | ||||
-rw-r--r-- | data/data_835B488.s | 31 | ||||
-rw-r--r-- | include/graphics.h | 759 | ||||
-rw-r--r-- | include/item_icon.h | 19 | ||||
-rw-r--r-- | include/item_menu_icons.h | 18 | ||||
-rw-r--r-- | ld_script.txt | 4 | ||||
-rw-r--r-- | src/item_menu_icons.c | 783 | ||||
-rw-r--r-- | sym_ewram.txt | 16 |
8 files changed, 1568 insertions, 742 deletions
diff --git a/asm/item_menu_icons.s b/asm/item_menu_icons.s deleted file mode 100644 index 6208c3fb9..000000000 --- a/asm/item_menu_icons.s +++ /dev/null @@ -1,680 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start ResetItemMenuIconState -ResetItemMenuIconState: @ 80984D8 - push {r4,lr} - movs r2, 0 - ldr r4, _080984F8 @ =gUnknown_2039878 - movs r3, 0xFF -_080984E0: - adds r0, r2, r4 - ldrb r1, [r0] - orrs r1, r3 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0xB - bls _080984E0 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080984F8: .4byte gUnknown_2039878 - thumb_func_end ResetItemMenuIconState - - thumb_func_start sub_80984FC -sub_80984FC: @ 80984FC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08098520 @ =gUnknown_83D41FC - movs r1, 0x28 - movs r2, 0x44 - movs r3, 0 - bl CreateSprite - ldr r1, _08098524 @ =gUnknown_2039878 - strb r0, [r1] - adds r0, r4, 0 - bl sub_8098528 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08098520: .4byte gUnknown_83D41FC -_08098524: .4byte gUnknown_2039878 - thumb_func_end sub_80984FC - - thumb_func_start sub_8098528 -sub_8098528: @ 8098528 - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08098550 @ =gUnknown_2039878 - ldrb r2, [r0] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r2, _08098554 @ =gSprites - adds r0, r2 - ldr r2, _08098558 @ =0x0000fffb - strh r2, [r0, 0x26] - ldr r2, _0809855C @ =sub_8098560 - str r2, [r0, 0x1C] - bl StartSpriteAnim - pop {r0} - bx r0 - .align 2, 0 -_08098550: .4byte gUnknown_2039878 -_08098554: .4byte gSprites -_08098558: .4byte 0x0000fffb -_0809855C: .4byte sub_8098560 - thumb_func_end sub_8098528 - - thumb_func_start sub_8098560 -sub_8098560: @ 8098560 - push {lr} - adds r1, r0, 0 - ldrh r2, [r1, 0x26] - movs r3, 0x26 - ldrsh r0, [r1, r3] - cmp r0, 0 - beq _08098574 - adds r0, r2, 0x1 - strh r0, [r1, 0x26] - b _08098578 -_08098574: - ldr r0, _0809857C @ =SpriteCallbackDummy - str r0, [r1, 0x1C] -_08098578: - pop {r0} - bx r0 - .align 2, 0 -_0809857C: .4byte SpriteCallbackDummy - thumb_func_end sub_8098560 - - thumb_func_start sub_8098580 -sub_8098580: @ 8098580 - push {r4,lr} - ldr r0, _080985B0 @ =gUnknown_2039878 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080985B4 @ =gSprites - adds r4, r0, r1 - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080985AA - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - ldr r0, _080985B8 @ =sub_80985BC - str r0, [r4, 0x1C] -_080985AA: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080985B0: .4byte gUnknown_2039878 -_080985B4: .4byte gSprites -_080985B8: .4byte sub_80985BC - thumb_func_end sub_8098580 - - thumb_func_start sub_80985BC -sub_80985BC: @ 80985BC - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080985D8 - adds r0, r4, 0 - movs r1, 0 - bl StartSpriteAffineAnim - ldr r0, _080985E0 @ =SpriteCallbackDummy - str r0, [r4, 0x1C] -_080985D8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080985E0: .4byte SpriteCallbackDummy - thumb_func_end sub_80985BC - - thumb_func_start sub_80985E4 -sub_80985E4: @ 80985E4 - push {r4-r7,lr} - ldr r7, _08098620 @ =gUnknown_2039879 - movs r5, 0 - ldr r6, _08098624 @ =gSprites -_080985EC: - lsls r1, r5, 20 - movs r0, 0xC0 - lsls r0, 15 - adds r1, r0 - asrs r1, 16 - ldr r0, _08098628 @ =gUnknown_83D4250 - movs r2, 0x7 - movs r3, 0 - bl CreateSprite - adds r1, r7, r5 - strb r0, [r1] - adds r4, r1, 0 - cmp r5, 0 - beq _0809863C - cmp r5, 0x8 - bne _0809862C - ldrb r1, [r7, 0x8] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x2 - bl StartSpriteAnim - b _0809863C - .align 2, 0 -_08098620: .4byte gUnknown_2039879 -_08098624: .4byte gSprites -_08098628: .4byte gUnknown_83D4250 -_0809862C: - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x1 - bl StartSpriteAnim -_0809863C: - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x8 - bls _080985EC - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80985E4 - - thumb_func_start sub_8098660 -sub_8098660: @ 8098660 - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r7, _080986A0 @ =gUnknown_2039879 - movs r3, 0 - ldr r6, _080986A4 @ =gSprites - movs r1, 0x1 - ands r0, r1 - lsls r4, r0, 2 - movs r5, 0x5 - negs r5, r5 -_08098676: - adds r0, r7, r3 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - adds r1, 0x3E - ldrb r2, [r1] - adds r0, r5, 0 - ands r0, r2 - orrs r0, r4 - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x8 - bls _08098676 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080986A0: .4byte gUnknown_2039879 -_080986A4: .4byte gSprites - thumb_func_end sub_8098660 - - thumb_func_start sub_80986A8 -sub_80986A8: @ 80986A8 - push {r4-r7,lr} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 16 - lsrs r1, 16 - ldr r7, _080986E4 @ =gUnknown_2039879 - movs r3, 0 - ldr r4, _080986E8 @ =gSprites - adds r5, r1, 0x7 -_080986BA: - adds r2, r7, r3 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r6, [r0, 0x24] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r5, [r0, 0x22] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x8 - bls _080986BA - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080986E4: .4byte gUnknown_2039879 -_080986E8: .4byte gSprites - thumb_func_end sub_80986A8 - - thumb_func_start sub_80986EC -sub_80986EC: @ 80986EC - push {r4,r5,lr} - ldr r5, _08098714 @ =gUnknown_2039884 - movs r0, 0x90 - lsls r0, 1 - bl Alloc - str r0, [r5] - cmp r0, 0 - beq _08098722 - ldr r4, _08098718 @ =gUnknown_2039888 - movs r0, 0x80 - lsls r0, 2 - bl AllocZeroed - str r0, [r4] - cmp r0, 0 - beq _0809871C - movs r0, 0x1 - b _08098724 - .align 2, 0 -_08098714: .4byte gUnknown_2039884 -_08098718: .4byte gUnknown_2039888 -_0809871C: - ldr r0, [r5] - bl Free -_08098722: - movs r0, 0 -_08098724: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80986EC - - thumb_func_start CopyItemIconPicTo4x4Buffer -CopyItemIconPicTo4x4Buffer: @ 809872C - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - movs r4, 0 -_08098734: - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 5 - adds r0, r6, r0 - lsls r1, r4, 7 - adds r1, r5, r1 - movs r2, 0x30 - bl CpuSet - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _08098734 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end CopyItemIconPicTo4x4Buffer - - thumb_func_start AddItemIconObject -AddItemIconObject: @ 8098758 - push {r4-r7,lr} - sub sp, 0x28 - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 16 - lsrs r5, r1, 16 - lsls r2, 16 - lsrs r7, r2, 16 - bl sub_80986EC - lsls r0, 24 - cmp r0, 0 - beq _08098810 - adds r0, r7, 0 - movs r1, 0 - bl sub_8098974 - ldr r2, _080987FC @ =gUnknown_2039884 - ldr r1, [r2] - bl LZDecompressWram - ldr r1, _080987FC @ =gUnknown_2039884 - ldr r0, [r1] - ldr r2, _08098800 @ =gUnknown_2039888 - ldr r1, [r2] - bl CopyItemIconPicTo4x4Buffer - ldr r1, _08098800 @ =gUnknown_2039888 - ldr r0, [r1] - str r0, [sp, 0x18] - ldr r4, _08098804 @ =0xffff0000 - add r0, sp, 0x18 - ldr r1, [r0, 0x4] - ands r1, r4 - movs r2, 0x80 - lsls r2, 2 - orrs r1, r2 - lsls r3, r6, 16 - ldr r2, _08098808 @ =0x0000ffff - ands r1, r2 - orrs r1, r3 - str r1, [r0, 0x4] - bl LoadSpriteSheet - adds r0, r7, 0 - movs r1, 0x1 - bl sub_8098974 - str r0, [sp, 0x20] - add r0, sp, 0x20 - ldr r1, [r0, 0x4] - ands r1, r4 - orrs r1, r5 - str r1, [r0, 0x4] - bl LoadCompressedObjectPalette - ldr r0, _0809880C @ =gUnknown_83D427C - mov r1, sp - movs r2, 0xC - bl CpuSet - mov r0, sp - strh r6, [r0] - strh r5, [r0, 0x2] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSprite - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r2, _080987FC @ =gUnknown_2039884 - ldr r0, [r2] - bl Free - ldr r1, _08098800 @ =gUnknown_2039888 - ldr r0, [r1] - bl Free - adds r0, r4, 0 - b _08098812 - .align 2, 0 -_080987FC: .4byte gUnknown_2039884 -_08098800: .4byte gUnknown_2039888 -_08098804: .4byte 0xffff0000 -_08098808: .4byte 0x0000ffff -_0809880C: .4byte gUnknown_83D427C -_08098810: - movs r0, 0x40 -_08098812: - add sp, 0x28 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end AddItemIconObject - - thumb_func_start AddItemIconObjectWithCustomObjectTemplate -AddItemIconObjectWithCustomObjectTemplate: @ 809881C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x28 - mov r8, r0 - lsls r1, 16 - lsrs r6, r1, 16 - lsls r2, 16 - lsrs r5, r2, 16 - lsls r3, 16 - lsrs r7, r3, 16 - bl sub_80986EC - lsls r0, 24 - cmp r0, 0 - beq _080988D8 - adds r0, r7, 0 - movs r1, 0 - bl sub_8098974 - ldr r2, _080988C8 @ =gUnknown_2039884 - ldr r1, [r2] - bl LZDecompressWram - ldr r1, _080988C8 @ =gUnknown_2039884 - ldr r0, [r1] - ldr r2, _080988CC @ =gUnknown_2039888 - ldr r1, [r2] - bl CopyItemIconPicTo4x4Buffer - ldr r1, _080988CC @ =gUnknown_2039888 - ldr r0, [r1] - str r0, [sp, 0x18] - ldr r4, _080988D0 @ =0xffff0000 - add r0, sp, 0x18 - ldr r1, [r0, 0x4] - ands r1, r4 - movs r2, 0x80 - lsls r2, 2 - orrs r1, r2 - lsls r3, r6, 16 - ldr r2, _080988D4 @ =0x0000ffff - ands r1, r2 - orrs r1, r3 - str r1, [r0, 0x4] - bl LoadSpriteSheet - adds r0, r7, 0 - movs r1, 0x1 - bl sub_8098974 - str r0, [sp, 0x20] - add r0, sp, 0x20 - ldr r1, [r0, 0x4] - ands r1, r4 - orrs r1, r5 - str r1, [r0, 0x4] - bl LoadCompressedObjectPalette - mov r0, r8 - mov r1, sp - movs r2, 0xC - bl CpuSet - mov r0, sp - strh r6, [r0] - strh r5, [r0, 0x2] - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl CreateSprite - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r2, _080988C8 @ =gUnknown_2039884 - ldr r0, [r2] - bl Free - ldr r1, _080988CC @ =gUnknown_2039888 - ldr r0, [r1] - bl Free - adds r0, r4, 0 - b _080988DA - .align 2, 0 -_080988C8: .4byte gUnknown_2039884 -_080988CC: .4byte gUnknown_2039888 -_080988D0: .4byte 0xffff0000 -_080988D4: .4byte 0x0000ffff -_080988D8: - movs r0, 0x40 -_080988DA: - add sp, 0x28 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end AddItemIconObjectWithCustomObjectTemplate - - thumb_func_start CreateItemMenuIcon -CreateItemMenuIcon: @ 80988E8 - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08098938 @ =gUnknown_2039882 - adds r5, r1, r0 - ldrb r0, [r5] - cmp r0, 0xFF - bne _08098932 - adds r4, r1, 0 - adds r4, 0x66 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r6, 0 - bl AddItemIconObject - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _08098932 - strb r2, [r5] - ldr r1, _0809893C @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0x18 - strh r1, [r0, 0x24] - movs r1, 0x8C - strh r1, [r0, 0x26] -_08098932: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08098938: .4byte gUnknown_2039882 -_0809893C: .4byte gSprites - thumb_func_end CreateItemMenuIcon - - thumb_func_start DestroyItemMenuIcon -DestroyItemMenuIcon: @ 8098940 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0809896C @ =gUnknown_2039882 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0xFF - beq _08098964 - adds r1, r0, 0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _08098970 @ =gSprites - adds r0, r1 - bl DestroySpriteAndFreeResources - movs r0, 0xFF - strb r0, [r4] -_08098964: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0809896C: .4byte gUnknown_2039882 -_08098970: .4byte gSprites - thumb_func_end DestroyItemMenuIcon - - thumb_func_start sub_8098974 -sub_8098974: @ 8098974 - push {lr} - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08098998 @ =0x00000177 - cmp r3, r0 - bls _08098986 - movs r3, 0 -_08098986: - ldr r2, _0809899C @ =gUnknown_83D4294 - lsls r0, r1, 2 - lsls r1, r3, 3 - adds r0, r1 - adds r0, r2 - ldr r0, [r0] - pop {r1} - bx r1 - .align 2, 0 -_08098998: .4byte 0x00000177 -_0809899C: .4byte gUnknown_83D4294 - thumb_func_end sub_8098974 - - thumb_func_start sub_80989A0 -sub_80989A0: @ 80989A0 - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _080989F0 @ =gUnknown_2039882 - adds r5, r1, r0 - ldrb r0, [r5] - cmp r0, 0xFF - bne _080989EA - adds r4, r1, 0 - adds r4, 0x66 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - adds r0, r4, 0 - adds r1, r4, 0 - adds r2, r6, 0 - bl AddItemIconObject - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _080989EA - strb r2, [r5] - ldr r1, _080989F4 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0x18 - strh r1, [r0, 0x24] - movs r1, 0x93 - strh r1, [r0, 0x26] -_080989EA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080989F0: .4byte gUnknown_2039882 -_080989F4: .4byte gSprites - thumb_func_end sub_80989A0 - - .align 2, 0 @ Don't pad with nop. diff --git a/data/data_835B488.s b/data/data_835B488.s index 008c99dde..b606d92b4 100644 --- a/data/data_835B488.s +++ b/data/data_835B488.s @@ -542,34 +542,11 @@ gUnknown_83D414C:: @ 83D414C .incbin "baserom.gba", 0x3D414C, 0x18 gUnknown_83D4164:: @ 83D4164 - .incbin "baserom.gba", 0x3D4164, 0x80 + .incbin "baserom.gba", 0x3D4164, 0x8 -gUnknown_83D41E4:: @ 83D41E4 - .incbin "baserom.gba", 0x3D41E4, 0x8 - -gUnknown_83D41EC:: @ 83D41EC - .incbin "baserom.gba", 0x3D41EC, 0x8 - -gUnknown_83D41F4:: @ 83D41F4 - .incbin "baserom.gba", 0x3D41F4, 0x8 - -gUnknown_83D41FC:: @ 83D41FC - .incbin "baserom.gba", 0x3D41FC, 0x44 - -gBagSwapSpriteSheet:: @ 83D4240 - obj_tiles gFile_graphics_interface_bag_swap_sheet, 0x0100, 0x0065 - -gBagSwapSpritePalette:: @ 83D4248 - obj_pal gFile_graphics_interface_bag_swap_palette, 0x0065 - -gUnknown_83D4250:: @ 83D4250 - .incbin "baserom.gba", 0x3D4250, 0x2C - -gUnknown_83D427C:: @ 83D427C - .incbin "baserom.gba", 0x3D427C, 0x18 - -gUnknown_83D4294:: @ 83D4294 - .incbin "baserom.gba", 0x3D4294, 0x6D94 + .section .rodata.83D4E4C +gUnknown_83D4E4C:: + .incbin "baserom.gba", 0x3D4E54, 0x61D4 gItems:: @ 83DB028 .incbin "baserom.gba", 0x3DB028, 0x4074 diff --git a/include/graphics.h b/include/graphics.h index 01ae84add..1b2913164 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -201,4 +201,763 @@ extern const u8 gItemPcTiles[]; extern const u8 gItemPcBgPals[]; extern const u8 gItemPcTilemap[]; +// item_menu_icons +extern const u8 gUnknown_8E8362C[]; +extern const u8 gUnknown_8E83DBC[]; +extern const u8 gUnknown_8E84560[]; +extern const u8 gFile_graphics_interface_bag_swap_sheet[]; +extern const u8 gFile_graphics_interface_bag_swap_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_master_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_master_ball_palette[]; +extern const u8 gFile_graphics_items_icons_ultra_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ultra_ball_palette[]; +extern const u8 gFile_graphics_items_icons_great_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_great_ball_palette[]; +extern const u8 gFile_graphics_items_icons_poke_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_poke_ball_palette[]; +extern const u8 gFile_graphics_items_icons_safari_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_safari_ball_palette[]; +extern const u8 gFile_graphics_items_icons_net_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_net_ball_palette[]; +extern const u8 gFile_graphics_items_icons_dive_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dive_ball_palette[]; +extern const u8 gFile_graphics_items_icons_nest_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_nest_ball_palette[]; +extern const u8 gFile_graphics_items_icons_repeat_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_repeat_ball_palette[]; +extern const u8 gFile_graphics_items_icons_timer_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_repeat_ball_palette[]; +extern const u8 gFile_graphics_items_icons_luxury_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_luxury_ball_palette[]; +extern const u8 gFile_graphics_items_icons_premier_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_luxury_ball_palette[]; +extern const u8 gFile_graphics_items_icons_potion_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_potion_palette[]; +extern const u8 gFile_graphics_items_icons_antidote_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_antidote_palette[]; +extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_burn_heal_palette[]; +extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ice_heal_palette[]; +extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_awakening_palette[]; +extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_paralyze_heal_palette[]; +extern const u8 gFile_graphics_items_icons_large_potion_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_full_restore_palette[]; +extern const u8 gFile_graphics_items_icons_large_potion_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_max_potion_palette[]; +extern const u8 gFile_graphics_items_icons_potion_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_hyper_potion_palette[]; +extern const u8 gFile_graphics_items_icons_potion_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_super_potion_palette[]; +extern const u8 gFile_graphics_items_icons_full_heal_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_full_heal_palette[]; +extern const u8 gFile_graphics_items_icons_revive_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_revive_palette[]; +extern const u8 gFile_graphics_items_icons_max_revive_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_revive_palette[]; +extern const u8 gFile_graphics_items_icons_fresh_water_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fresh_water_palette[]; +extern const u8 gFile_graphics_items_icons_soda_pop_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_soda_pop_palette[]; +extern const u8 gFile_graphics_items_icons_lemonade_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lemonade_palette[]; +extern const u8 gFile_graphics_items_icons_moomoo_milk_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_moomoo_milk_palette[]; +extern const u8 gFile_graphics_items_icons_powder_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_energy_powder_palette[]; +extern const u8 gFile_graphics_items_icons_energy_root_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_energy_root_palette[]; +extern const u8 gFile_graphics_items_icons_powder_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_heal_powder_palette[]; +extern const u8 gFile_graphics_items_icons_revival_herb_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_revival_herb_palette[]; +extern const u8 gFile_graphics_items_icons_ether_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ether_palette[]; +extern const u8 gFile_graphics_items_icons_ether_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_max_ether_palette[]; +extern const u8 gFile_graphics_items_icons_ether_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_elixir_palette[]; +extern const u8 gFile_graphics_items_icons_ether_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_max_elixir_palette[]; +extern const u8 gFile_graphics_items_icons_lava_cookie_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette[]; +extern const u8 gFile_graphics_items_icons_flute_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_blue_flute_palette[]; +extern const u8 gFile_graphics_items_icons_flute_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_yellow_flute_palette[]; +extern const u8 gFile_graphics_items_icons_flute_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_red_flute_palette[]; +extern const u8 gFile_graphics_items_icons_flute_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_black_flute_palette[]; +extern const u8 gFile_graphics_items_icons_flute_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_white_flute_palette[]; +extern const u8 gFile_graphics_items_icons_berry_juice_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_berry_juice_palette[]; +extern const u8 gFile_graphics_items_icons_sacred_ash_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_sacred_ash_palette[]; +extern const u8 gFile_graphics_items_icons_powder_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_shoal_salt_palette[]; +extern const u8 gFile_graphics_items_icons_shoal_shell_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_shell_palette[]; +extern const u8 gFile_graphics_items_icons_shard_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_red_shard_palette[]; +extern const u8 gFile_graphics_items_icons_shard_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_blue_shard_palette[]; +extern const u8 gFile_graphics_items_icons_shard_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_yellow_shard_palette[]; +extern const u8 gFile_graphics_items_icons_shard_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_green_shard_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_hp_up_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_hp_up_palette[]; +extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_protein_palette[]; +extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_iron_palette[]; +extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_carbos_palette[]; +extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_calcium_palette[]; +extern const u8 gFile_graphics_items_icons_rare_candy_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_rare_candy_palette[]; +extern const u8 gFile_graphics_items_icons_pp_up_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pp_up_palette[]; +extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_zinc_palette[]; +extern const u8 gFile_graphics_items_icons_pp_max_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pp_max_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_guard_spec_palette[]; +extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dire_hit_palette[]; +extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_x_attack_palette[]; +extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_x_defend_palette[]; +extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_x_speed_palette[]; +extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_x_accuracy_palette[]; +extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_x_special_palette[]; +extern const u8 gFile_graphics_items_icons_poke_doll_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_poke_doll_palette[]; +extern const u8 gFile_graphics_items_icons_fluffy_tail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fluffy_tail_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_repel_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_super_repel_palette[]; +extern const u8 gFile_graphics_items_icons_repel_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_max_repel_palette[]; +extern const u8 gFile_graphics_items_icons_escape_rope_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_escape_rope_palette[]; +extern const u8 gFile_graphics_items_icons_repel_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_repel_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_sun_stone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_sun_stone_palette[]; +extern const u8 gFile_graphics_items_icons_moon_stone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_moon_stone_palette[]; +extern const u8 gFile_graphics_items_icons_fire_stone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fire_stone_palette[]; +extern const u8 gFile_graphics_items_icons_thunder_stone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_thunder_stone_palette[]; +extern const u8 gFile_graphics_items_icons_water_stone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_water_stone_palette[]; +extern const u8 gFile_graphics_items_icons_leaf_stone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_leaf_stone_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_tiny_mushroom_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mushroom_palette[]; +extern const u8 gFile_graphics_items_icons_big_mushroom_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mushroom_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_pearl_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pearl_palette[]; +extern const u8 gFile_graphics_items_icons_big_pearl_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pearl_palette[]; +extern const u8 gFile_graphics_items_icons_stardust_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_star_palette[]; +extern const u8 gFile_graphics_items_icons_star_piece_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_star_palette[]; +extern const u8 gFile_graphics_items_icons_nugget_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_nugget_palette[]; +extern const u8 gFile_graphics_items_icons_heart_scale_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_heart_scale_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_orange_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_orange_mail_palette[]; +extern const u8 gFile_graphics_items_icons_harbor_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_harbor_mail_palette[]; +extern const u8 gFile_graphics_items_icons_glitter_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_glitter_mail_palette[]; +extern const u8 gFile_graphics_items_icons_mech_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mech_mail_palette[]; +extern const u8 gFile_graphics_items_icons_wood_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_wood_mail_palette[]; +extern const u8 gFile_graphics_items_icons_wave_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_wave_mail_palette[]; +extern const u8 gFile_graphics_items_icons_bead_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_bead_mail_palette[]; +extern const u8 gFile_graphics_items_icons_shadow_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_shadow_mail_palette[]; +extern const u8 gFile_graphics_items_icons_tropic_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_tropic_mail_palette[]; +extern const u8 gFile_graphics_items_icons_dream_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dream_mail_palette[]; +extern const u8 gFile_graphics_items_icons_fab_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fab_mail_palette[]; +extern const u8 gFile_graphics_items_icons_retro_mail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_retro_mail_palette[]; +extern const u8 gFile_graphics_items_icons_cheri_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_cheri_berry_palette[]; +extern const u8 gFile_graphics_items_icons_chesto_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_chesto_berry_palette[]; +extern const u8 gFile_graphics_items_icons_pecha_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pecha_berry_palette[]; +extern const u8 gFile_graphics_items_icons_rawst_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_rawst_berry_palette[]; +extern const u8 gFile_graphics_items_icons_aspear_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_aspear_berry_palette[]; +extern const u8 gFile_graphics_items_icons_leppa_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_leppa_berry_palette[]; +extern const u8 gFile_graphics_items_icons_oran_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_oran_berry_palette[]; +extern const u8 gFile_graphics_items_icons_persim_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_persim_berry_palette[]; +extern const u8 gFile_graphics_items_icons_lum_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lum_berry_palette[]; +extern const u8 gFile_graphics_items_icons_sitrus_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_sitrus_berry_palette[]; +extern const u8 gFile_graphics_items_icons_figy_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_figy_berry_palette[]; +extern const u8 gFile_graphics_items_icons_wiki_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_wiki_berry_palette[]; +extern const u8 gFile_graphics_items_icons_mago_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mago_berry_palette[]; +extern const u8 gFile_graphics_items_icons_aguav_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_aguav_berry_palette[]; +extern const u8 gFile_graphics_items_icons_iapapa_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_iapapa_berry_palette[]; +extern const u8 gFile_graphics_items_icons_razz_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_razz_berry_palette[]; +extern const u8 gFile_graphics_items_icons_bluk_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_bluk_berry_palette[]; +extern const u8 gFile_graphics_items_icons_nanab_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_nanab_berry_palette[]; +extern const u8 gFile_graphics_items_icons_wepear_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_wepear_berry_palette[]; +extern const u8 gFile_graphics_items_icons_pinap_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pinap_berry_palette[]; +extern const u8 gFile_graphics_items_icons_pomeg_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pomeg_berry_palette[]; +extern const u8 gFile_graphics_items_icons_kelpsy_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_kelpsy_berry_palette[]; +extern const u8 gFile_graphics_items_icons_qualot_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_qualot_berry_palette[]; +extern const u8 gFile_graphics_items_icons_hondew_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_hondew_berry_palette[]; +extern const u8 gFile_graphics_items_icons_grepa_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_grepa_berry_palette[]; +extern const u8 gFile_graphics_items_icons_tamato_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_tamato_berry_palette[]; +extern const u8 gFile_graphics_items_icons_cornn_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_cornn_berry_palette[]; +extern const u8 gFile_graphics_items_icons_magost_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_magost_berry_palette[]; +extern const u8 gFile_graphics_items_icons_rabuta_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_rabuta_berry_palette[]; +extern const u8 gFile_graphics_items_icons_nomel_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_nomel_berry_palette[]; +extern const u8 gFile_graphics_items_icons_spelon_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_spelon_berry_palette[]; +extern const u8 gFile_graphics_items_icons_pamtre_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pamtre_berry_palette[]; +extern const u8 gFile_graphics_items_icons_watmel_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_watmel_berry_palette[]; +extern const u8 gFile_graphics_items_icons_durin_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_durin_berry_palette[]; +extern const u8 gFile_graphics_items_icons_belue_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_belue_berry_palette[]; +extern const u8 gFile_graphics_items_icons_liechi_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_liechi_berry_palette[]; +extern const u8 gFile_graphics_items_icons_ganlon_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ganlon_berry_palette[]; +extern const u8 gFile_graphics_items_icons_salac_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_salac_berry_palette[]; +extern const u8 gFile_graphics_items_icons_petaya_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_petaya_berry_palette[]; +extern const u8 gFile_graphics_items_icons_apicot_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_apicot_berry_palette[]; +extern const u8 gFile_graphics_items_icons_lansat_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lansat_berry_palette[]; +extern const u8 gFile_graphics_items_icons_starf_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_starf_berry_palette[]; +extern const u8 gFile_graphics_items_icons_enigma_berry_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_enigma_berry_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_bright_powder_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_bright_powder_palette[]; +extern const u8 gFile_graphics_items_icons_in_battle_herb_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_white_herb_palette[]; +extern const u8 gFile_graphics_items_icons_macho_brace_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_macho_brace_palette[]; +extern const u8 gFile_graphics_items_icons_exp_share_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_exp_share_palette[]; +extern const u8 gFile_graphics_items_icons_quick_claw_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_quick_claw_palette[]; +extern const u8 gFile_graphics_items_icons_soothe_bell_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_soothe_bell_palette[]; +extern const u8 gFile_graphics_items_icons_in_battle_herb_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mental_herb_palette[]; +extern const u8 gFile_graphics_items_icons_choice_band_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_choice_band_palette[]; +extern const u8 gFile_graphics_items_icons_kings_rock_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_kings_rock_palette[]; +extern const u8 gFile_graphics_items_icons_silver_powder_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_silver_powder_palette[]; +extern const u8 gFile_graphics_items_icons_amulet_coin_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_amulet_coin_palette[]; +extern const u8 gFile_graphics_items_icons_cleanse_tag_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_cleanse_tag_palette[]; +extern const u8 gFile_graphics_items_icons_soul_dew_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_soul_dew_palette[]; +extern const u8 gFile_graphics_items_icons_deep_sea_tooth_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_deep_sea_tooth_palette[]; +extern const u8 gFile_graphics_items_icons_deep_sea_scale_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_deep_sea_scale_palette[]; +extern const u8 gFile_graphics_items_icons_smoke_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_smoke_ball_palette[]; +extern const u8 gFile_graphics_items_icons_everstone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_everstone_palette[]; +extern const u8 gFile_graphics_items_icons_focus_band_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_focus_band_palette[]; +extern const u8 gFile_graphics_items_icons_lucky_egg_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lucky_egg_palette[]; +extern const u8 gFile_graphics_items_icons_scope_lens_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_scope_lens_palette[]; +extern const u8 gFile_graphics_items_icons_metal_coat_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_metal_coat_palette[]; +extern const u8 gFile_graphics_items_icons_leftovers_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_leftovers_palette[]; +extern const u8 gFile_graphics_items_icons_dragon_scale_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dragon_scale_palette[]; +extern const u8 gFile_graphics_items_icons_light_ball_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_light_ball_palette[]; +extern const u8 gFile_graphics_items_icons_soft_sand_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_soft_sand_palette[]; +extern const u8 gFile_graphics_items_icons_hard_stone_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_hard_stone_palette[]; +extern const u8 gFile_graphics_items_icons_miracle_seed_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_miracle_seed_palette[]; +extern const u8 gFile_graphics_items_icons_black_glasses_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette[]; +extern const u8 gFile_graphics_items_icons_black_belt_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette[]; +extern const u8 gFile_graphics_items_icons_magnet_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_magnet_palette[]; +extern const u8 gFile_graphics_items_icons_mystic_water_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mystic_water_palette[]; +extern const u8 gFile_graphics_items_icons_sharp_beak_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_sharp_beak_palette[]; +extern const u8 gFile_graphics_items_icons_poison_barb_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_poison_barb_palette[]; +extern const u8 gFile_graphics_items_icons_never_melt_ice_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_never_melt_ice_palette[]; +extern const u8 gFile_graphics_items_icons_spell_tag_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_spell_tag_palette[]; +extern const u8 gFile_graphics_items_icons_twisted_spoon_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_twisted_spoon_palette[]; +extern const u8 gFile_graphics_items_icons_charcoal_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_charcoal_palette[]; +extern const u8 gFile_graphics_items_icons_dragon_fang_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dragon_fang_palette[]; +extern const u8 gFile_graphics_items_icons_silk_scarf_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_silk_scarf_palette[]; +extern const u8 gFile_graphics_items_icons_up_grade_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_up_grade_palette[]; +extern const u8 gFile_graphics_items_icons_shell_bell_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_shell_palette[]; +extern const u8 gFile_graphics_items_icons_sea_incense_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_sea_incense_palette[]; +extern const u8 gFile_graphics_items_icons_lax_incense_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lax_incense_palette[]; +extern const u8 gFile_graphics_items_icons_lucky_punch_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lucky_punch_palette[]; +extern const u8 gFile_graphics_items_icons_metal_powder_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_metal_powder_palette[]; +extern const u8 gFile_graphics_items_icons_thick_club_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_thick_club_palette[]; +extern const u8 gFile_graphics_items_icons_stick_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_stick_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_scarf_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_red_scarf_palette[]; +extern const u8 gFile_graphics_items_icons_scarf_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_blue_scarf_palette[]; +extern const u8 gFile_graphics_items_icons_scarf_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pink_scarf_palette[]; +extern const u8 gFile_graphics_items_icons_scarf_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_green_scarf_palette[]; +extern const u8 gFile_graphics_items_icons_scarf_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_yellow_scarf_palette[]; +extern const u8 gFile_graphics_items_icons_mach_bike_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mach_bike_palette[]; +extern const u8 gFile_graphics_items_icons_coin_case_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_coin_case_palette[]; +extern const u8 gFile_graphics_items_icons_itemfinder_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_itemfinder_palette[]; +extern const u8 gFile_graphics_items_icons_old_rod_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_old_rod_palette[]; +extern const u8 gFile_graphics_items_icons_good_rod_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_good_rod_palette[]; +extern const u8 gFile_graphics_items_icons_super_rod_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_super_rod_palette[]; +extern const u8 gFile_graphics_items_icons_ss_ticket_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ss_ticket_palette[]; +extern const u8 gFile_graphics_items_icons_contest_pass_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_contest_pass_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_wailmer_pail_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_wailmer_pail_palette[]; +extern const u8 gFile_graphics_items_icons_devon_goods_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_devon_goods_palette[]; +extern const u8 gFile_graphics_items_icons_soot_sack_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_soot_sack_palette[]; +extern const u8 gFile_graphics_items_icons_basement_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_old_key_palette[]; +extern const u8 gFile_graphics_items_icons_acro_bike_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_acro_bike_palette[]; +extern const u8 gFile_graphics_items_icons_pokeblock_case_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_pokeblock_case_palette[]; +extern const u8 gFile_graphics_items_icons_letter_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette[]; +extern const u8 gFile_graphics_items_icons_eon_ticket_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_eon_ticket_palette[]; +extern const u8 gFile_graphics_items_icons_orb_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_red_orb_palette[]; +extern const u8 gFile_graphics_items_icons_orb_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_blue_orb_palette[]; +extern const u8 gFile_graphics_items_icons_scanner_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_scanner_palette[]; +extern const u8 gFile_graphics_items_icons_go_goggles_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_go_goggles_palette[]; +extern const u8 gFile_graphics_items_icons_meteorite_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_meteorite_palette[]; +extern const u8 gFile_graphics_items_icons_room1_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; +extern const u8 gFile_graphics_items_icons_room2_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; +extern const u8 gFile_graphics_items_icons_room4_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; +extern const u8 gFile_graphics_items_icons_room6_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; +extern const u8 gFile_graphics_items_icons_storage_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_old_key_palette[]; +extern const u8 gFile_graphics_items_icons_root_fossil_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_hoenn_fossil_palette[]; +extern const u8 gFile_graphics_items_icons_claw_fossil_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_hoenn_fossil_palette[]; +extern const u8 gFile_graphics_items_icons_devon_scope_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_devon_scope_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dragon_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_poison_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ice_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_grass_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ice_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ice_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_grass_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_grass_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_steel_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_electric_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_electric_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ground_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ground_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ghost_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_electric_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_poison_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_rock_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_rock_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_flying_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_steel_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_flying_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_tm_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; +extern const u8 gFile_graphics_items_icons_oaks_parcel_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_oaks_parcel_palette[]; +extern const u8 gFile_graphics_items_icons_poke_flute_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_poke_flute_palette[]; +extern const u8 gFile_graphics_items_icons_secret_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_secret_key_palette[]; +extern const u8 gFile_graphics_items_icons_bike_voucher_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_bike_voucher_palette[]; +extern const u8 gFile_graphics_items_icons_gold_teeth_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_gold_teeth_palette[]; +extern const u8 gFile_graphics_items_icons_old_amber_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_old_amber_palette[]; +extern const u8 gFile_graphics_items_icons_card_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_card_key_palette[]; +extern const u8 gFile_graphics_items_icons_lift_key_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; +extern const u8 gFile_graphics_items_icons_helix_fossil_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_kanto_fossil_palette[]; +extern const u8 gFile_graphics_items_icons_dome_fossil_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_kanto_fossil_palette[]; +extern const u8 gFile_graphics_items_icons_silph_scope_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_silph_scope_palette[]; +extern const u8 gFile_graphics_items_icons_bicycle_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_bicycle_palette[]; +extern const u8 gFile_graphics_items_icons_town_map_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_town_map_palette[]; +extern const u8 gFile_graphics_items_icons_vs_seeker_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_vs_seeker_palette[]; +extern const u8 gFile_graphics_items_icons_fame_checker_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_fame_checker_palette[]; +extern const u8 gFile_graphics_items_icons_tm_case_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_tm_case_palette[]; +extern const u8 gFile_graphics_items_icons_berry_pouch_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_berry_pouch_palette[]; +extern const u8 gFile_graphics_items_icons_teachy_tv_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_teachy_tv_palette[]; +extern const u8 gFile_graphics_items_icons_tri_pass_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_tri_pass_palette[]; +extern const u8 gFile_graphics_items_icons_rainbow_pass_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_rainbow_pass_palette[]; +extern const u8 gFile_graphics_items_icons_tea_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_tea_palette[]; +extern const u8 gFile_graphics_items_icons_mystic_ticket_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_mystic_ticket_palette[]; +extern const u8 gFile_graphics_items_icons_aurora_ticket_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_aurora_ticket_palette[]; +extern const u8 gFile_graphics_items_icons_powder_jar_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_powder_jar_palette[]; +extern const u8 gFile_graphics_items_icons_gem_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_ruby_palette[]; +extern const u8 gFile_graphics_items_icons_gem_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_sapphire_palette[]; +extern const u8 gFile_graphics_items_icons_return_to_field_arrow_sheet[]; +extern const u8 gFile_graphics_items_icon_palettes_return_to_field_arrow_palette[]; + #endif //GUARD_GRAPHICS_H diff --git a/include/item_icon.h b/include/item_icon.h deleted file mode 100644 index 75e2475f3..000000000 --- a/include/item_icon.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// Created by scott on 10/20/2017. -// - -#ifndef GUARD_ITEM_ICON_H -#define GUARD_ITEM_ICON_H - -#include "global.h" - -extern EWRAM_DATA void *gUnknown_0203CEBC; -extern EWRAM_DATA void *gUnknown_0203CEC0; - -extern const struct SpriteTemplate gUnknown_08614FF4; - -bool8 AllocItemIconTemporaryBuffers(void); -void CopyItemIconPicTo4x4Buffer(void *src, void *dest); -void FreeItemIconTemporaryBuffers(void); - -#endif //GUARD_ITEM_ICON_H diff --git a/include/item_menu_icons.h b/include/item_menu_icons.h index ce61c38ac..b5b5c6b0b 100644 --- a/include/item_menu_icons.h +++ b/include/item_menu_icons.h @@ -3,12 +3,28 @@ #include "global.h" +extern void * gUnknown_2039884; + +extern const struct CompressedSpriteSheet gUnknown_83D41E4; +extern const struct CompressedSpriteSheet gUnknown_83D41EC; +extern const struct CompressedSpritePalette gUnknown_83D41F4; + +extern const struct CompressedSpriteSheet gBagSwapSpriteSheet; +extern const struct CompressedSpritePalette gBagSwapSpritePalette; + void ResetItemMenuIconState(void); void sub_80985E4(void); -u8 sub_80D511C(u8 a0, u8 a1, u8 a2, u8 a3); void DestroyItemMenuIcon(bool8 a0); void CreateItemMenuIcon(u16 itemId, bool8 a0); +void CopyItemIconPicTo4x4Buffer(const void *src, void *dest); +u8 AddItemIconObject(u16 tilesTag, u16 paletteTag, u16 itemId); +u8 AddItemIconObjectWithCustomObjectTemplate(const struct SpriteTemplate * origTemplate, u16 tilesTag, u16 paletteTag, u16 itemId); +void sub_80989A0(u16 itemId, u8 idx); void sub_80986A8(s16 x, u16 y); void sub_8098660(u8); +void sub_8098528(u8); +void sub_8098580(void); +const void * sub_8098974(u16 itemId, u8 ptrId); +void sub_80984FC(u8 animNum); #endif // GUARD_ITEM_MENU_ICONS diff --git a/ld_script.txt b/ld_script.txt index 6360e600f..f64fb569f 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -137,7 +137,7 @@ SECTIONS { asm/fldeff_cut.o(.text); asm/mail_data.o(.text); asm/map_name_popup.o(.text); - asm/item_menu_icons.o(.text); + src/item_menu_icons.o(.text); asm/battle_anim_mon_movement.o(.text); asm/item.o(.text); asm/shop.o(.text); @@ -408,6 +408,8 @@ SECTIONS { data/title_screen.o(.rodata); data/field_weather.o(.rodata); data/data_835B488.o(.rodata); + src/item_menu_icons.o(.rodata); + data/data_835B488.o(.rodata.83D4E4C); src/heal_location.o(.rodata); data/data_835B488.o(.rodata.83EEC98); src/battle_ai_script_commands.o(.rodata); diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c new file mode 100644 index 000000000..a244a1075 --- /dev/null +++ b/src/item_menu_icons.c @@ -0,0 +1,783 @@ +#include "global.h" +#include "decompress.h" +#include "graphics.h" +#include "item_menu_icons.h" +#include "malloc.h" +#include "constants/items.h" + +static EWRAM_DATA u8 gUnknown_2039878[12] = {0}; +EWRAM_DATA void * gUnknown_2039884 = NULL; +static EWRAM_DATA void * gUnknown_2039888 = NULL; + +static void sub_8098560(struct Sprite * sprite); +static void sub_80985BC(struct Sprite * sprite); + +static const struct OamData gUnknown_83D416C = { + .affineMode = ST_OAM_AFFINE_NORMAL, + .shape = ST_OAM_SQUARE, + .size = 3, + .priority = 1, + .paletteNum = 0 +}; + +static const union AnimCmd gUnknown_83D4174[] = { + ANIMCMD_FRAME( 0, 5), + ANIMCMD_FRAME(0x40, 0), + ANIMCMD_END +}; + +static const union AnimCmd gUnknown_83D4180[] = { + ANIMCMD_FRAME( 0, 5), + ANIMCMD_FRAME(0x80, 0), + ANIMCMD_END +}; + +static const union AnimCmd gUnknown_83D418C[] = { + ANIMCMD_FRAME( 0, 5), + ANIMCMD_FRAME(0xc0, 0), + ANIMCMD_END +}; + +static const union AnimCmd *const gUnknown_83D4198[] = { + gUnknown_83D4180, + gUnknown_83D418C, + gUnknown_83D4174 +}; + +static const union AffineAnimCmd gUnknown_83D41A4[] = { + AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), + AFFINEANIMCMD_END +}; + +static const union AffineAnimCmd gUnknown_83D41B4[] = { + AFFINEANIMCMD_FRAME(0, 0, -2, 2), + AFFINEANIMCMD_FRAME(0, 0, 2, 4), + AFFINEANIMCMD_FRAME(0, 0, -2, 4), + AFFINEANIMCMD_FRAME(0, 0, 2, 2), + AFFINEANIMCMD_END +}; + +static const union AffineAnimCmd *const gUnknown_83D41DC[] = { + gUnknown_83D41A4, + gUnknown_83D41B4 +}; + +const struct CompressedSpriteSheet gUnknown_83D41E4 = { + gUnknown_8E8362C, + 0x2000, + 100 +}; + +const struct CompressedSpriteSheet gUnknown_83D41EC = { + gUnknown_8E83DBC, + 0x2000, + 100 +}; + +const struct CompressedSpritePalette gUnknown_83D41F4 = { + gUnknown_8E84560, + 100 +}; + +static const struct SpriteTemplate gUnknown_83D41FC = { + 100, + 100, + &gUnknown_83D416C, + gUnknown_83D4198, + NULL, + gUnknown_83D41DC, + SpriteCallbackDummy +}; + +static const struct OamData gUnknown_83D4214 = { + .affineMode = ST_OAM_AFFINE_OFF, + .shape = ST_OAM_SQUARE, + .size = 1, + .priority = 1, + .paletteNum = 1 +}; + +static const union AnimCmd gUnknown_83D421C[] = { + ANIMCMD_FRAME(0, 0), + ANIMCMD_END +}; + +static const union AnimCmd gUnknown_83D4224[] = { + ANIMCMD_FRAME(4, 0), + ANIMCMD_END +}; + +static const union AnimCmd gUnknown_83D422C[] = { + ANIMCMD_FRAME(0, 0, .hFlip = TRUE), + ANIMCMD_END +}; + +static const union AnimCmd *const gUnknown_83D4234[] = { + gUnknown_83D421C, + gUnknown_83D4224, + gUnknown_83D422C +}; + +const struct CompressedSpriteSheet gBagSwapSpriteSheet = { + gFile_graphics_interface_bag_swap_sheet, + 0x100, + 101 +}; + +const struct CompressedSpritePalette gBagSwapSpritePalette = { + gFile_graphics_interface_bag_swap_palette, + 101 +}; + +static const struct SpriteTemplate gUnknown_83D4250 = { + 101, + 101, + &gUnknown_83D4214, + gUnknown_83D4234, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy +}; + +static const struct OamData gUnknown_83D4268 = { + .affineMode = ST_OAM_AFFINE_OFF, + .shape = ST_OAM_SQUARE, + .size = 2, + .priority = 1, + .paletteNum = 2 +}; + +static const union AnimCmd gUnknown_83D4270[] = { + ANIMCMD_FRAME(0, 0), + ANIMCMD_END +}; + +static const union AnimCmd *const gUnknown_83D4278[] = { + gUnknown_83D4270 +}; + +static const struct SpriteTemplate gUnknown_83D427C = { + 102, + 102, + &gUnknown_83D4268, + gUnknown_83D4278, + NULL, + gDummySpriteAffineAnimTable, + SpriteCallbackDummy +}; + +static const void *const gUnknown_83D4294[][2] = { + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_master_ball_sheet, gFile_graphics_items_icon_palettes_master_ball_palette}, + {gFile_graphics_items_icons_ultra_ball_sheet, gFile_graphics_items_icon_palettes_ultra_ball_palette}, + {gFile_graphics_items_icons_great_ball_sheet, gFile_graphics_items_icon_palettes_great_ball_palette}, + {gFile_graphics_items_icons_poke_ball_sheet, gFile_graphics_items_icon_palettes_poke_ball_palette}, + {gFile_graphics_items_icons_safari_ball_sheet, gFile_graphics_items_icon_palettes_safari_ball_palette}, + {gFile_graphics_items_icons_net_ball_sheet, gFile_graphics_items_icon_palettes_net_ball_palette}, + {gFile_graphics_items_icons_dive_ball_sheet, gFile_graphics_items_icon_palettes_dive_ball_palette}, + {gFile_graphics_items_icons_nest_ball_sheet, gFile_graphics_items_icon_palettes_nest_ball_palette}, + {gFile_graphics_items_icons_repeat_ball_sheet, gFile_graphics_items_icon_palettes_repeat_ball_palette}, + {gFile_graphics_items_icons_timer_ball_sheet, gFile_graphics_items_icon_palettes_repeat_ball_palette}, + {gFile_graphics_items_icons_luxury_ball_sheet, gFile_graphics_items_icon_palettes_luxury_ball_palette}, + {gFile_graphics_items_icons_premier_ball_sheet, gFile_graphics_items_icon_palettes_luxury_ball_palette}, + {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_potion_palette}, + {gFile_graphics_items_icons_antidote_sheet, gFile_graphics_items_icon_palettes_antidote_palette}, + {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_burn_heal_palette}, + {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_ice_heal_palette}, + {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_awakening_palette}, + {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_paralyze_heal_palette}, + {gFile_graphics_items_icons_large_potion_sheet, gFile_graphics_items_icon_palettes_full_restore_palette}, + {gFile_graphics_items_icons_large_potion_sheet, gFile_graphics_items_icon_palettes_max_potion_palette}, + {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_hyper_potion_palette}, + {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_super_potion_palette}, + {gFile_graphics_items_icons_full_heal_sheet, gFile_graphics_items_icon_palettes_full_heal_palette}, + {gFile_graphics_items_icons_revive_sheet, gFile_graphics_items_icon_palettes_revive_palette}, + {gFile_graphics_items_icons_max_revive_sheet, gFile_graphics_items_icon_palettes_revive_palette}, + {gFile_graphics_items_icons_fresh_water_sheet, gFile_graphics_items_icon_palettes_fresh_water_palette}, + {gFile_graphics_items_icons_soda_pop_sheet, gFile_graphics_items_icon_palettes_soda_pop_palette}, + {gFile_graphics_items_icons_lemonade_sheet, gFile_graphics_items_icon_palettes_lemonade_palette}, + {gFile_graphics_items_icons_moomoo_milk_sheet, gFile_graphics_items_icon_palettes_moomoo_milk_palette}, + {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_energy_powder_palette}, + {gFile_graphics_items_icons_energy_root_sheet, gFile_graphics_items_icon_palettes_energy_root_palette}, + {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_heal_powder_palette}, + {gFile_graphics_items_icons_revival_herb_sheet, gFile_graphics_items_icon_palettes_revival_herb_palette}, + {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_ether_palette}, + {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_max_ether_palette}, + {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_elixir_palette}, + {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_max_elixir_palette}, + {gFile_graphics_items_icons_lava_cookie_sheet, gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette}, + {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_blue_flute_palette}, + {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_yellow_flute_palette}, + {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_red_flute_palette}, + {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_black_flute_palette}, + {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_white_flute_palette}, + {gFile_graphics_items_icons_berry_juice_sheet, gFile_graphics_items_icon_palettes_berry_juice_palette}, + {gFile_graphics_items_icons_sacred_ash_sheet, gFile_graphics_items_icon_palettes_sacred_ash_palette}, + {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_shoal_salt_palette}, + {gFile_graphics_items_icons_shoal_shell_sheet, gFile_graphics_items_icon_palettes_shell_palette}, + {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_red_shard_palette}, + {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_blue_shard_palette}, + {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_yellow_shard_palette}, + {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_green_shard_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_hp_up_sheet, gFile_graphics_items_icon_palettes_hp_up_palette}, + {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_protein_palette}, + {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_iron_palette}, + {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_carbos_palette}, + {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_calcium_palette}, + {gFile_graphics_items_icons_rare_candy_sheet, gFile_graphics_items_icon_palettes_rare_candy_palette}, + {gFile_graphics_items_icons_pp_up_sheet, gFile_graphics_items_icon_palettes_pp_up_palette}, + {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_zinc_palette}, + {gFile_graphics_items_icons_pp_max_sheet, gFile_graphics_items_icon_palettes_pp_max_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_guard_spec_palette}, + {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_dire_hit_palette}, + {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_attack_palette}, + {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_defend_palette}, + {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_speed_palette}, + {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_accuracy_palette}, + {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_special_palette}, + {gFile_graphics_items_icons_poke_doll_sheet, gFile_graphics_items_icon_palettes_poke_doll_palette}, + {gFile_graphics_items_icons_fluffy_tail_sheet, gFile_graphics_items_icon_palettes_fluffy_tail_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_super_repel_palette}, + {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_max_repel_palette}, + {gFile_graphics_items_icons_escape_rope_sheet, gFile_graphics_items_icon_palettes_escape_rope_palette}, + {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_repel_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_sun_stone_sheet, gFile_graphics_items_icon_palettes_sun_stone_palette}, + {gFile_graphics_items_icons_moon_stone_sheet, gFile_graphics_items_icon_palettes_moon_stone_palette}, + {gFile_graphics_items_icons_fire_stone_sheet, gFile_graphics_items_icon_palettes_fire_stone_palette}, + {gFile_graphics_items_icons_thunder_stone_sheet, gFile_graphics_items_icon_palettes_thunder_stone_palette}, + {gFile_graphics_items_icons_water_stone_sheet, gFile_graphics_items_icon_palettes_water_stone_palette}, + {gFile_graphics_items_icons_leaf_stone_sheet, gFile_graphics_items_icon_palettes_leaf_stone_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_tiny_mushroom_sheet, gFile_graphics_items_icon_palettes_mushroom_palette}, + {gFile_graphics_items_icons_big_mushroom_sheet, gFile_graphics_items_icon_palettes_mushroom_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_pearl_sheet, gFile_graphics_items_icon_palettes_pearl_palette}, + {gFile_graphics_items_icons_big_pearl_sheet, gFile_graphics_items_icon_palettes_pearl_palette}, + {gFile_graphics_items_icons_stardust_sheet, gFile_graphics_items_icon_palettes_star_palette}, + {gFile_graphics_items_icons_star_piece_sheet, gFile_graphics_items_icon_palettes_star_palette}, + {gFile_graphics_items_icons_nugget_sheet, gFile_graphics_items_icon_palettes_nugget_palette}, + {gFile_graphics_items_icons_heart_scale_sheet, gFile_graphics_items_icon_palettes_heart_scale_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_orange_mail_sheet, gFile_graphics_items_icon_palettes_orange_mail_palette}, + {gFile_graphics_items_icons_harbor_mail_sheet, gFile_graphics_items_icon_palettes_harbor_mail_palette}, + {gFile_graphics_items_icons_glitter_mail_sheet, gFile_graphics_items_icon_palettes_glitter_mail_palette}, + {gFile_graphics_items_icons_mech_mail_sheet, gFile_graphics_items_icon_palettes_mech_mail_palette}, + {gFile_graphics_items_icons_wood_mail_sheet, gFile_graphics_items_icon_palettes_wood_mail_palette}, + {gFile_graphics_items_icons_wave_mail_sheet, gFile_graphics_items_icon_palettes_wave_mail_palette}, + {gFile_graphics_items_icons_bead_mail_sheet, gFile_graphics_items_icon_palettes_bead_mail_palette}, + {gFile_graphics_items_icons_shadow_mail_sheet, gFile_graphics_items_icon_palettes_shadow_mail_palette}, + {gFile_graphics_items_icons_tropic_mail_sheet, gFile_graphics_items_icon_palettes_tropic_mail_palette}, + {gFile_graphics_items_icons_dream_mail_sheet, gFile_graphics_items_icon_palettes_dream_mail_palette}, + {gFile_graphics_items_icons_fab_mail_sheet, gFile_graphics_items_icon_palettes_fab_mail_palette}, + {gFile_graphics_items_icons_retro_mail_sheet, gFile_graphics_items_icon_palettes_retro_mail_palette}, + {gFile_graphics_items_icons_cheri_berry_sheet, gFile_graphics_items_icon_palettes_cheri_berry_palette}, + {gFile_graphics_items_icons_chesto_berry_sheet, gFile_graphics_items_icon_palettes_chesto_berry_palette}, + {gFile_graphics_items_icons_pecha_berry_sheet, gFile_graphics_items_icon_palettes_pecha_berry_palette}, + {gFile_graphics_items_icons_rawst_berry_sheet, gFile_graphics_items_icon_palettes_rawst_berry_palette}, + {gFile_graphics_items_icons_aspear_berry_sheet, gFile_graphics_items_icon_palettes_aspear_berry_palette}, + {gFile_graphics_items_icons_leppa_berry_sheet, gFile_graphics_items_icon_palettes_leppa_berry_palette}, + {gFile_graphics_items_icons_oran_berry_sheet, gFile_graphics_items_icon_palettes_oran_berry_palette}, + {gFile_graphics_items_icons_persim_berry_sheet, gFile_graphics_items_icon_palettes_persim_berry_palette}, + {gFile_graphics_items_icons_lum_berry_sheet, gFile_graphics_items_icon_palettes_lum_berry_palette}, + {gFile_graphics_items_icons_sitrus_berry_sheet, gFile_graphics_items_icon_palettes_sitrus_berry_palette}, + {gFile_graphics_items_icons_figy_berry_sheet, gFile_graphics_items_icon_palettes_figy_berry_palette}, + {gFile_graphics_items_icons_wiki_berry_sheet, gFile_graphics_items_icon_palettes_wiki_berry_palette}, + {gFile_graphics_items_icons_mago_berry_sheet, gFile_graphics_items_icon_palettes_mago_berry_palette}, + {gFile_graphics_items_icons_aguav_berry_sheet, gFile_graphics_items_icon_palettes_aguav_berry_palette}, + {gFile_graphics_items_icons_iapapa_berry_sheet, gFile_graphics_items_icon_palettes_iapapa_berry_palette}, + {gFile_graphics_items_icons_razz_berry_sheet, gFile_graphics_items_icon_palettes_razz_berry_palette}, + {gFile_graphics_items_icons_bluk_berry_sheet, gFile_graphics_items_icon_palettes_bluk_berry_palette}, + {gFile_graphics_items_icons_nanab_berry_sheet, gFile_graphics_items_icon_palettes_nanab_berry_palette}, + {gFile_graphics_items_icons_wepear_berry_sheet, gFile_graphics_items_icon_palettes_wepear_berry_palette}, + {gFile_graphics_items_icons_pinap_berry_sheet, gFile_graphics_items_icon_palettes_pinap_berry_palette}, + {gFile_graphics_items_icons_pomeg_berry_sheet, gFile_graphics_items_icon_palettes_pomeg_berry_palette}, + {gFile_graphics_items_icons_kelpsy_berry_sheet, gFile_graphics_items_icon_palettes_kelpsy_berry_palette}, + {gFile_graphics_items_icons_qualot_berry_sheet, gFile_graphics_items_icon_palettes_qualot_berry_palette}, + {gFile_graphics_items_icons_hondew_berry_sheet, gFile_graphics_items_icon_palettes_hondew_berry_palette}, + {gFile_graphics_items_icons_grepa_berry_sheet, gFile_graphics_items_icon_palettes_grepa_berry_palette}, + {gFile_graphics_items_icons_tamato_berry_sheet, gFile_graphics_items_icon_palettes_tamato_berry_palette}, + {gFile_graphics_items_icons_cornn_berry_sheet, gFile_graphics_items_icon_palettes_cornn_berry_palette}, + {gFile_graphics_items_icons_magost_berry_sheet, gFile_graphics_items_icon_palettes_magost_berry_palette}, + {gFile_graphics_items_icons_rabuta_berry_sheet, gFile_graphics_items_icon_palettes_rabuta_berry_palette}, + {gFile_graphics_items_icons_nomel_berry_sheet, gFile_graphics_items_icon_palettes_nomel_berry_palette}, + {gFile_graphics_items_icons_spelon_berry_sheet, gFile_graphics_items_icon_palettes_spelon_berry_palette}, + {gFile_graphics_items_icons_pamtre_berry_sheet, gFile_graphics_items_icon_palettes_pamtre_berry_palette}, + {gFile_graphics_items_icons_watmel_berry_sheet, gFile_graphics_items_icon_palettes_watmel_berry_palette}, + {gFile_graphics_items_icons_durin_berry_sheet, gFile_graphics_items_icon_palettes_durin_berry_palette}, + {gFile_graphics_items_icons_belue_berry_sheet, gFile_graphics_items_icon_palettes_belue_berry_palette}, + {gFile_graphics_items_icons_liechi_berry_sheet, gFile_graphics_items_icon_palettes_liechi_berry_palette}, + {gFile_graphics_items_icons_ganlon_berry_sheet, gFile_graphics_items_icon_palettes_ganlon_berry_palette}, + {gFile_graphics_items_icons_salac_berry_sheet, gFile_graphics_items_icon_palettes_salac_berry_palette}, + {gFile_graphics_items_icons_petaya_berry_sheet, gFile_graphics_items_icon_palettes_petaya_berry_palette}, + {gFile_graphics_items_icons_apicot_berry_sheet, gFile_graphics_items_icon_palettes_apicot_berry_palette}, + {gFile_graphics_items_icons_lansat_berry_sheet, gFile_graphics_items_icon_palettes_lansat_berry_palette}, + {gFile_graphics_items_icons_starf_berry_sheet, gFile_graphics_items_icon_palettes_starf_berry_palette}, + {gFile_graphics_items_icons_enigma_berry_sheet, gFile_graphics_items_icon_palettes_enigma_berry_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_bright_powder_sheet, gFile_graphics_items_icon_palettes_bright_powder_palette}, + {gFile_graphics_items_icons_in_battle_herb_sheet, gFile_graphics_items_icon_palettes_white_herb_palette}, + {gFile_graphics_items_icons_macho_brace_sheet, gFile_graphics_items_icon_palettes_macho_brace_palette}, + {gFile_graphics_items_icons_exp_share_sheet, gFile_graphics_items_icon_palettes_exp_share_palette}, + {gFile_graphics_items_icons_quick_claw_sheet, gFile_graphics_items_icon_palettes_quick_claw_palette}, + {gFile_graphics_items_icons_soothe_bell_sheet, gFile_graphics_items_icon_palettes_soothe_bell_palette}, + {gFile_graphics_items_icons_in_battle_herb_sheet, gFile_graphics_items_icon_palettes_mental_herb_palette}, + {gFile_graphics_items_icons_choice_band_sheet, gFile_graphics_items_icon_palettes_choice_band_palette}, + {gFile_graphics_items_icons_kings_rock_sheet, gFile_graphics_items_icon_palettes_kings_rock_palette}, + {gFile_graphics_items_icons_silver_powder_sheet, gFile_graphics_items_icon_palettes_silver_powder_palette}, + {gFile_graphics_items_icons_amulet_coin_sheet, gFile_graphics_items_icon_palettes_amulet_coin_palette}, + {gFile_graphics_items_icons_cleanse_tag_sheet, gFile_graphics_items_icon_palettes_cleanse_tag_palette}, + {gFile_graphics_items_icons_soul_dew_sheet, gFile_graphics_items_icon_palettes_soul_dew_palette}, + {gFile_graphics_items_icons_deep_sea_tooth_sheet, gFile_graphics_items_icon_palettes_deep_sea_tooth_palette}, + {gFile_graphics_items_icons_deep_sea_scale_sheet, gFile_graphics_items_icon_palettes_deep_sea_scale_palette}, + {gFile_graphics_items_icons_smoke_ball_sheet, gFile_graphics_items_icon_palettes_smoke_ball_palette}, + {gFile_graphics_items_icons_everstone_sheet, gFile_graphics_items_icon_palettes_everstone_palette}, + {gFile_graphics_items_icons_focus_band_sheet, gFile_graphics_items_icon_palettes_focus_band_palette}, + {gFile_graphics_items_icons_lucky_egg_sheet, gFile_graphics_items_icon_palettes_lucky_egg_palette}, + {gFile_graphics_items_icons_scope_lens_sheet, gFile_graphics_items_icon_palettes_scope_lens_palette}, + {gFile_graphics_items_icons_metal_coat_sheet, gFile_graphics_items_icon_palettes_metal_coat_palette}, + {gFile_graphics_items_icons_leftovers_sheet, gFile_graphics_items_icon_palettes_leftovers_palette}, + {gFile_graphics_items_icons_dragon_scale_sheet, gFile_graphics_items_icon_palettes_dragon_scale_palette}, + {gFile_graphics_items_icons_light_ball_sheet, gFile_graphics_items_icon_palettes_light_ball_palette}, + {gFile_graphics_items_icons_soft_sand_sheet, gFile_graphics_items_icon_palettes_soft_sand_palette}, + {gFile_graphics_items_icons_hard_stone_sheet, gFile_graphics_items_icon_palettes_hard_stone_palette}, + {gFile_graphics_items_icons_miracle_seed_sheet, gFile_graphics_items_icon_palettes_miracle_seed_palette}, + {gFile_graphics_items_icons_black_glasses_sheet, gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette}, + {gFile_graphics_items_icons_black_belt_sheet, gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette}, + {gFile_graphics_items_icons_magnet_sheet, gFile_graphics_items_icon_palettes_magnet_palette}, + {gFile_graphics_items_icons_mystic_water_sheet, gFile_graphics_items_icon_palettes_mystic_water_palette}, + {gFile_graphics_items_icons_sharp_beak_sheet, gFile_graphics_items_icon_palettes_sharp_beak_palette}, + {gFile_graphics_items_icons_poison_barb_sheet, gFile_graphics_items_icon_palettes_poison_barb_palette}, + {gFile_graphics_items_icons_never_melt_ice_sheet, gFile_graphics_items_icon_palettes_never_melt_ice_palette}, + {gFile_graphics_items_icons_spell_tag_sheet, gFile_graphics_items_icon_palettes_spell_tag_palette}, + {gFile_graphics_items_icons_twisted_spoon_sheet, gFile_graphics_items_icon_palettes_twisted_spoon_palette}, + {gFile_graphics_items_icons_charcoal_sheet, gFile_graphics_items_icon_palettes_charcoal_palette}, + {gFile_graphics_items_icons_dragon_fang_sheet, gFile_graphics_items_icon_palettes_dragon_fang_palette}, + {gFile_graphics_items_icons_silk_scarf_sheet, gFile_graphics_items_icon_palettes_silk_scarf_palette}, + {gFile_graphics_items_icons_up_grade_sheet, gFile_graphics_items_icon_palettes_up_grade_palette}, + {gFile_graphics_items_icons_shell_bell_sheet, gFile_graphics_items_icon_palettes_shell_palette}, + {gFile_graphics_items_icons_sea_incense_sheet, gFile_graphics_items_icon_palettes_sea_incense_palette}, + {gFile_graphics_items_icons_lax_incense_sheet, gFile_graphics_items_icon_palettes_lax_incense_palette}, + {gFile_graphics_items_icons_lucky_punch_sheet, gFile_graphics_items_icon_palettes_lucky_punch_palette}, + {gFile_graphics_items_icons_metal_powder_sheet, gFile_graphics_items_icon_palettes_metal_powder_palette}, + {gFile_graphics_items_icons_thick_club_sheet, gFile_graphics_items_icon_palettes_thick_club_palette}, + {gFile_graphics_items_icons_stick_sheet, gFile_graphics_items_icon_palettes_stick_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_red_scarf_palette}, + {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_blue_scarf_palette}, + {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_pink_scarf_palette}, + {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_green_scarf_palette}, + {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_yellow_scarf_palette}, + {gFile_graphics_items_icons_mach_bike_sheet, gFile_graphics_items_icon_palettes_mach_bike_palette}, + {gFile_graphics_items_icons_coin_case_sheet, gFile_graphics_items_icon_palettes_coin_case_palette}, + {gFile_graphics_items_icons_itemfinder_sheet, gFile_graphics_items_icon_palettes_itemfinder_palette}, + {gFile_graphics_items_icons_old_rod_sheet, gFile_graphics_items_icon_palettes_old_rod_palette}, + {gFile_graphics_items_icons_good_rod_sheet, gFile_graphics_items_icon_palettes_good_rod_palette}, + {gFile_graphics_items_icons_super_rod_sheet, gFile_graphics_items_icon_palettes_super_rod_palette}, + {gFile_graphics_items_icons_ss_ticket_sheet, gFile_graphics_items_icon_palettes_ss_ticket_palette}, + {gFile_graphics_items_icons_contest_pass_sheet, gFile_graphics_items_icon_palettes_contest_pass_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_wailmer_pail_sheet, gFile_graphics_items_icon_palettes_wailmer_pail_palette}, + {gFile_graphics_items_icons_devon_goods_sheet, gFile_graphics_items_icon_palettes_devon_goods_palette}, + {gFile_graphics_items_icons_soot_sack_sheet, gFile_graphics_items_icon_palettes_soot_sack_palette}, + {gFile_graphics_items_icons_basement_key_sheet, gFile_graphics_items_icon_palettes_old_key_palette}, + {gFile_graphics_items_icons_acro_bike_sheet, gFile_graphics_items_icon_palettes_acro_bike_palette}, + {gFile_graphics_items_icons_pokeblock_case_sheet, gFile_graphics_items_icon_palettes_pokeblock_case_palette}, + {gFile_graphics_items_icons_letter_sheet, gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette}, + {gFile_graphics_items_icons_eon_ticket_sheet, gFile_graphics_items_icon_palettes_eon_ticket_palette}, + {gFile_graphics_items_icons_orb_sheet, gFile_graphics_items_icon_palettes_red_orb_palette}, + {gFile_graphics_items_icons_orb_sheet, gFile_graphics_items_icon_palettes_blue_orb_palette}, + {gFile_graphics_items_icons_scanner_sheet, gFile_graphics_items_icon_palettes_scanner_palette}, + {gFile_graphics_items_icons_go_goggles_sheet, gFile_graphics_items_icon_palettes_go_goggles_palette}, + {gFile_graphics_items_icons_meteorite_sheet, gFile_graphics_items_icon_palettes_meteorite_palette}, + {gFile_graphics_items_icons_room1_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, + {gFile_graphics_items_icons_room2_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, + {gFile_graphics_items_icons_room4_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, + {gFile_graphics_items_icons_room6_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, + {gFile_graphics_items_icons_storage_key_sheet, gFile_graphics_items_icon_palettes_old_key_palette}, + {gFile_graphics_items_icons_root_fossil_sheet, gFile_graphics_items_icon_palettes_hoenn_fossil_palette}, + {gFile_graphics_items_icons_claw_fossil_sheet, gFile_graphics_items_icon_palettes_hoenn_fossil_palette}, + {gFile_graphics_items_icons_devon_scope_sheet, gFile_graphics_items_icon_palettes_devon_scope_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dragon_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_poison_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_steel_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ground_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ground_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ghost_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_poison_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_rock_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_rock_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_flying_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_steel_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_flying_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, + {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, + {gFile_graphics_items_icons_oaks_parcel_sheet, gFile_graphics_items_icon_palettes_oaks_parcel_palette}, + {gFile_graphics_items_icons_poke_flute_sheet, gFile_graphics_items_icon_palettes_poke_flute_palette}, + {gFile_graphics_items_icons_secret_key_sheet, gFile_graphics_items_icon_palettes_secret_key_palette}, + {gFile_graphics_items_icons_bike_voucher_sheet, gFile_graphics_items_icon_palettes_bike_voucher_palette}, + {gFile_graphics_items_icons_gold_teeth_sheet, gFile_graphics_items_icon_palettes_gold_teeth_palette}, + {gFile_graphics_items_icons_old_amber_sheet, gFile_graphics_items_icon_palettes_old_amber_palette}, + {gFile_graphics_items_icons_card_key_sheet, gFile_graphics_items_icon_palettes_card_key_palette}, + {gFile_graphics_items_icons_lift_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, + {gFile_graphics_items_icons_helix_fossil_sheet, gFile_graphics_items_icon_palettes_kanto_fossil_palette}, + {gFile_graphics_items_icons_dome_fossil_sheet, gFile_graphics_items_icon_palettes_kanto_fossil_palette}, + {gFile_graphics_items_icons_silph_scope_sheet, gFile_graphics_items_icon_palettes_silph_scope_palette}, + {gFile_graphics_items_icons_bicycle_sheet, gFile_graphics_items_icon_palettes_bicycle_palette}, + {gFile_graphics_items_icons_town_map_sheet, gFile_graphics_items_icon_palettes_town_map_palette}, + {gFile_graphics_items_icons_vs_seeker_sheet, gFile_graphics_items_icon_palettes_vs_seeker_palette}, + {gFile_graphics_items_icons_fame_checker_sheet, gFile_graphics_items_icon_palettes_fame_checker_palette}, + {gFile_graphics_items_icons_tm_case_sheet, gFile_graphics_items_icon_palettes_tm_case_palette}, + {gFile_graphics_items_icons_berry_pouch_sheet, gFile_graphics_items_icon_palettes_berry_pouch_palette}, + {gFile_graphics_items_icons_teachy_tv_sheet, gFile_graphics_items_icon_palettes_teachy_tv_palette}, + {gFile_graphics_items_icons_tri_pass_sheet, gFile_graphics_items_icon_palettes_tri_pass_palette}, + {gFile_graphics_items_icons_rainbow_pass_sheet, gFile_graphics_items_icon_palettes_rainbow_pass_palette}, + {gFile_graphics_items_icons_tea_sheet, gFile_graphics_items_icon_palettes_tea_palette}, + {gFile_graphics_items_icons_mystic_ticket_sheet, gFile_graphics_items_icon_palettes_mystic_ticket_palette}, + {gFile_graphics_items_icons_aurora_ticket_sheet, gFile_graphics_items_icon_palettes_aurora_ticket_palette}, + {gFile_graphics_items_icons_powder_jar_sheet, gFile_graphics_items_icon_palettes_powder_jar_palette}, + {gFile_graphics_items_icons_gem_sheet, gFile_graphics_items_icon_palettes_ruby_palette}, + {gFile_graphics_items_icons_gem_sheet, gFile_graphics_items_icon_palettes_sapphire_palette}, + {gFile_graphics_items_icons_return_to_field_arrow_sheet, gFile_graphics_items_icon_palettes_return_to_field_arrow_palette} +}; + +void ResetItemMenuIconState(void) +{ + u16 i; + + for (i = 0; i < NELEMS(gUnknown_2039878); i++) + gUnknown_2039878[i] = 0xFF; +} + +void sub_80984FC(u8 animNum) +{ + gUnknown_2039878[0] = CreateSprite(&gUnknown_83D41FC, 40, 68, 0); + sub_8098528(animNum); +} + +void sub_8098528(u8 animNum) +{ + struct Sprite * sprite = &gSprites[gUnknown_2039878[0]]; + sprite->pos2.y = -5; + sprite->callback = sub_8098560; + StartSpriteAnim(sprite, animNum); +} + +static void sub_8098560(struct Sprite * sprite) +{ + if (sprite->pos2.y != 0) + sprite->pos2.y++; + else + sprite->callback = SpriteCallbackDummy; +} + +void sub_8098580(void) +{ + struct Sprite * sprite = &gSprites[gUnknown_2039878[0]]; + if (sprite->affineAnimEnded) + { + StartSpriteAffineAnim(sprite, 1); + sprite->callback = sub_80985BC; + } +} + +static void sub_80985BC(struct Sprite * sprite) +{ + if (sprite->affineAnimEnded) + { + StartSpriteAffineAnim(sprite, 0); + sprite->callback = SpriteCallbackDummy; + } +} + +void sub_80985E4(void) +{ + u8 i; + u8 * ptr = &gUnknown_2039878[1]; + + for (i = 0; i < 9; i++) + { + ptr[i] = CreateSprite(&gUnknown_83D4250, i * 16 + 0x60, 7, 0); + if (i != 0) + { + if (i == 8) + StartSpriteAnim(&gSprites[ptr[i]], 2); + else + StartSpriteAnim(&gSprites[ptr[i]], 1); + } + gSprites[ptr[i]].invisible = TRUE; + } +} + +void sub_8098660(u8 flag) +{ + u8 i; + u8 * ptr = &gUnknown_2039878[1]; + + for (i = 0; i < 9; i++) + { + gSprites[ptr[i]].invisible = flag; + } +} + +void sub_80986A8(s16 x, u16 y) +{ + u8 i; + u8 * ptr = &gUnknown_2039878[1]; + + for (i = 0; i < 9; i++) + { + gSprites[ptr[i]].pos2.x = x; + gSprites[ptr[i]].pos1.y = y + 7; + } +} + +static bool8 sub_80986EC(void) +{ + void ** ptr1, ** ptr2; + + ptr1 = &gUnknown_2039884; + *ptr1 = Alloc(0x120); + if (*ptr1 == NULL) + return FALSE; + ptr2 = &gUnknown_2039888; + *ptr2 = AllocZeroed(0x200); + if (*ptr2 == NULL) + { + Free(*ptr1); + return FALSE; + } + return TRUE; +} + +void CopyItemIconPicTo4x4Buffer(const void * src, void * dest) +{ + u8 i; + + for (i = 0; i < 3; i++) + { + CpuCopy16(src + 0x60 * i, dest + 0x80 * i, 0x60); + } +} + +u8 AddItemIconObject(u16 tilesTag, u16 paletteTag, u16 itemId) +{ + struct SpriteTemplate template; + struct SpriteSheet spriteSheet; + struct CompressedSpritePalette spritePalette; + u8 spriteId; + + if (!sub_80986EC()) + return MAX_SPRITES; + + LZDecompressWram(sub_8098974(itemId, 0), gUnknown_2039884); + CopyItemIconPicTo4x4Buffer(gUnknown_2039884, gUnknown_2039888); + spriteSheet.data = gUnknown_2039888; + spriteSheet.size = 0x200; + spriteSheet.tag = tilesTag; + LoadSpriteSheet(&spriteSheet); + + spritePalette.data = sub_8098974(itemId, 1); + spritePalette.tag = paletteTag; + LoadCompressedObjectPalette(&spritePalette); + + CpuCopy16(&gUnknown_83D427C, &template, sizeof(struct SpriteTemplate)); + template.tileTag = tilesTag; + template.paletteTag = paletteTag; + spriteId = CreateSprite(&template, 0, 0, 0); + + Free(gUnknown_2039884); + Free(gUnknown_2039888); + return spriteId; +} + +u8 AddItemIconObjectWithCustomObjectTemplate(const struct SpriteTemplate * origTemplate, u16 tilesTag, u16 paletteTag, u16 itemId) +{ + struct SpriteTemplate template; + struct SpriteSheet spriteSheet; + struct CompressedSpritePalette spritePalette; + u8 spriteId; + + if (!sub_80986EC()) + return MAX_SPRITES; + + LZDecompressWram(sub_8098974(itemId, 0), gUnknown_2039884); + CopyItemIconPicTo4x4Buffer(gUnknown_2039884, gUnknown_2039888); + spriteSheet.data = gUnknown_2039888; + spriteSheet.size = 0x200; + spriteSheet.tag = tilesTag; + LoadSpriteSheet(&spriteSheet); + + spritePalette.data = sub_8098974(itemId, 1); + spritePalette.tag = paletteTag; + LoadCompressedObjectPalette(&spritePalette); + + CpuCopy16(origTemplate, &template, sizeof(struct SpriteTemplate)); + template.tileTag = tilesTag; + template.paletteTag = paletteTag; + spriteId = CreateSprite(&template, 0, 0, 0); + + Free(gUnknown_2039884); + Free(gUnknown_2039888); + return spriteId; +} + +void CreateItemMenuIcon(u16 itemId, u8 idx) +{ + u8 * ptr = &gUnknown_2039878[10]; + u8 spriteId; + + if (ptr[idx] == 0xFF) + { + FreeSpriteTilesByTag(102 + idx); + FreeSpritePaletteByTag(102 + idx); + spriteId = AddItemIconObject(102 + idx, 102 + idx, itemId); + if (spriteId != MAX_SPRITES) + { + ptr[idx] = spriteId; + gSprites[spriteId].pos2.x = 24; + gSprites[spriteId].pos2.y = 140; + } + } +} + +void DestroyItemMenuIcon(u8 idx) +{ + u8 * ptr = &gUnknown_2039878[10]; + + if (ptr[idx] != 0xFF) + { + DestroySpriteAndFreeResources(&gSprites[ptr[idx]]); + ptr[idx] = 0xFF; + } +} + +const void * sub_8098974(u16 itemId, u8 attrId) +{ + if (itemId > ITEM_N_A) + itemId = ITEM_NONE; + return gUnknown_83D4294[itemId][attrId]; +} + +void sub_80989A0(u16 itemId, u8 idx) +{ + u8 * ptr = &gUnknown_2039878[10]; + u8 spriteId; + + if (ptr[idx] == 0xFF) + { + FreeSpriteTilesByTag(102 + idx); + FreeSpritePaletteByTag(102 + idx); + spriteId = AddItemIconObject(102 + idx, 102 + idx, itemId); + if (spriteId != MAX_SPRITES) + { + ptr[idx] = spriteId; + gSprites[spriteId].pos2.x = 24; + gSprites[spriteId].pos2.y = 147; + } + } +} diff --git a/sym_ewram.txt b/sym_ewram.txt index 058e3aa03..197ffc157 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -922,20 +922,8 @@ gUnknown_2039870: @ 2039870 gUnknown_2039874: @ 2039874 .space 0x4 -gUnknown_2039878: @ 2039878 - .space 0x1 - -gUnknown_2039879: @ 2039879 - .space 0x9 - -gUnknown_2039882: @ 2039882 - .space 0x2 - -gUnknown_2039884: @ 2039884 - .space 0x4 - -gUnknown_2039888: @ 2039888 - .space 0x4 + .align 2 + .include "src/item_menu_icons.o" gBagPockets: @ 203988C .space 0x28 |