Add extractors for some assets

This commit is contained in:
octorock 2021-10-24 01:03:36 +02:00
parent 303d6d40c0
commit a19a870382
26 changed files with 4168 additions and 80397 deletions

File diff suppressed because it is too large Load Diff

75616
assets.yaml

File diff suppressed because it is too large Load Diff

View File

@ -22,4 +22,4 @@ gSpriteAnimations_EvilSpirit:: @ 08120698
.4byte gUnk_08120686
.4byte gUnk_0812068A
.4byte gUnk_0812068E
.4byte gUnk_08120692
.4byte gUnk_08120692

View File

@ -4,4 +4,53 @@
.section .rodata
.align 2
.include "animations/gSpriteAnimations_234.s"
gSpriteAnimations_IceProjectile_0:: @gSpriteAnimations_IceProjectile_0
.byte 4, 2, 0x0, 0x0
.byte 5, 2, 0x0, 0x80
.byte 2 @ keyframe count
gSpriteAnimations_IceProjectile_1:: @gSpriteAnimations_IceProjectile_1
.byte 2, 2, 0x40, 0x0
.byte 3, 2, 0x40, 0x80
.byte 2 @ keyframe count
gSpriteAnimations_IceProjectile_2:: @gSpriteAnimations_IceProjectile_2
.byte 0, 2, 0x0, 0x0
.byte 1, 2, 0x0, 0x80
.byte 2 @ keyframe count
gSpriteAnimations_IceProjectile_3:: @gSpriteAnimations_IceProjectile_3
.byte 2, 2, 0x0, 0x0
.byte 3, 2, 0x0, 0x80
.byte 2 @ keyframe count
gSpriteAnimations_IceProjectile_4:: @gSpriteAnimations_IceProjectile_4
.byte 6, 4, 0x0, 0x0
.byte 7, 4, 0x0, 0x0
.byte 8, 4, 0x0, 0x0
.byte 9, 4, 0x0, 0x80
.byte 4 @ keyframe count
gSpriteAnimations_IceProjectile_5:: @gSpriteAnimations_IceProjectile_5
.byte 7, 4, 0x0, 0x0
.byte 8, 4, 0x0, 0x0
.byte 9, 4, 0x0, 0x0
.byte 6, 4, 0x0, 0x80
.byte 4 @ keyframe count
gSpriteAnimations_IceProjectile_6:: @gSpriteAnimations_IceProjectile_6
.byte 8, 4, 0x0, 0x0
.byte 9, 4, 0x0, 0x0
.byte 6, 4, 0x0, 0x0
.byte 7, 4, 0x0, 0x80
.byte 4 @ keyframe count
gSpriteAnimations_IceProjectile_7:: @gSpriteAnimations_IceProjectile_7
.byte 9, 4, 0x0, 0x0
.byte 6, 4, 0x0, 0x0
.byte 7, 4, 0x0, 0x0
.byte 8, 4, 0x0, 0x80
.byte 4 @ keyframe count
gSpriteAnimations_IceProjectile::
.4byte gSpriteAnimations_IceProjectile_0
.4byte gSpriteAnimations_IceProjectile_1
.4byte gSpriteAnimations_IceProjectile_2
.4byte gSpriteAnimations_IceProjectile_3
.4byte gSpriteAnimations_IceProjectile_4
.4byte gSpriteAnimations_IceProjectile_5
.4byte gSpriteAnimations_IceProjectile_6
.4byte gSpriteAnimations_IceProjectile_7
.4byte 0

View File

@ -1173,7 +1173,7 @@ gSpritePtrs:: @ 080029B4
.4byte 00000000
.4byte 00000000
.4byte gSpriteAnimations_234
.4byte gSpriteAnimations_IceProjectile
.4byte 00000000
.4byte 00000000
.4byte 00000000

File diff suppressed because it is too large Load Diff

View File

@ -120,7 +120,7 @@ gUnk_08128190:: @ 08128190
.incbin "data_08127280/gUnk_08128190.bin"
@ Definitions for the figurines
.include "figurines/figurines.s"
.include "data/gfx/figurines.s"
gUnk_08128A38:: @ 08128A38
.incbin "data_08127280/gUnk_08128A38.bin"

View File

@ -4,43 +4,9 @@
.section .rodata
.align 2
@ gFixedTypeGfxData:: @ 08132B30
.include "sprites/fixedTypeGfxDataPointers.s"
@ .ifdef EU
@ @ TODO only small differences
@ .incbin "data_08132B30/gFixedTypeGfxData_EU.bin"
@ .else
@ .incbin "data_08132B30/gFixedTypeGfxData_1_USA-JP-DEMO_USA-DEMO_JP.bin"
@ .endif
@ .ifdef EU
@ @ TODO only small differences
@ .incbin "data_08132B30/gFixedTypeGfxData_2_EU.bin"
@ .else
@ .incbin "data_08132B30/gFixedTypeGfxData_3_USA-JP-DEMO_USA-DEMO_JP.bin"
@ .endif
@ .ifdef EU
@ @ TODO only small differences
@ .incbin "data_08132B30/gFixedTypeGfxData_4_EU.bin"
@ .else
@ .incbin "data_08132B30/gFixedTypeGfxData_5_USA-JP-DEMO_USA-DEMO_JP.bin"
@ .endif
@ .ifdef EU
@ @ TODO only small differences
@ .incbin "data_08132B30/gFixedTypeGfxData_6_EU.bin"
@ .else
@ .incbin "data_08132B30/gFixedTypeGfxData_7_USA-JP-DEMO_USA-DEMO_JP.bin"
@ .endif
@ .ifdef EU
@ @ TODO only small differences
@ .incbin "data_08132B30/gFixedTypeGfxData_8_EU.bin"
@ .else
@ .incbin "data_08132B30/gFixedTypeGfxData_9_USA-JP-DEMO_USA-DEMO_JP.bin"
@ .endif
@ .ifdef EU
@ .incbin "data_08132B30/gFixedTypeGfxData_10_EU.bin"
@ .else
@ .incbin "data_08132B30/gFixedTypeGfxData_11_USA-JP-DEMO_USA-DEMO_JP.bin"
@ .endif
gFixedTypeGfxData:: @ 08132B30
.include "sprites/gFixedTypeGfxData.s"
gUnk_08133368:: @ 08133368
.ifdef EU

View File

@ -3,415 +3,415 @@
.section .rodata
.align 2
@ TODO start of figurine data
gFigurineGfx1:: @ 0883FB00
.incbin "data_08132B30/gFigurineGfx1.4bpp"
.incbin "figurines/gFigurineGfx1.4bpp"
gFigurineGfx2:: @ 08840080
.incbin "data_08132B30/gFigurineGfx2.4bpp"
.incbin "figurines/gFigurineGfx2.4bpp"
gFigurineGfx3:: @ 08840660
.incbin "data_08132B30/gFigurineGfx3.4bpp"
.incbin "figurines/gFigurineGfx3.4bpp"
gFigurineGfx4:: @ 08840AE0
.incbin "data_08132B30/gFigurineGfx4.4bpp"
.incbin "figurines/gFigurineGfx4.4bpp"
gFigurineGfx5:: @ 08840FA0
.incbin "data_08132B30/gFigurineGfx5.4bpp"
.incbin "figurines/gFigurineGfx5.4bpp"
gFigurineGfx6:: @ 088414A0
.incbin "data_08132B30/gFigurineGfx6.4bpp"
.incbin "figurines/gFigurineGfx6.4bpp"
gFigurineGfx7:: @ 08841820
.incbin "data_08132B30/gFigurineGfx7.4bpp"
.incbin "figurines/gFigurineGfx7.4bpp"
gFigurineGfx8:: @ 08841AE0
.incbin "data_08132B30/gFigurineGfx8.4bpp"
.incbin "figurines/gFigurineGfx8.4bpp"
gFigurineGfx9:: @ 08841FC0
.incbin "data_08132B30/gFigurineGfx9.4bpp"
.incbin "figurines/gFigurineGfx9.4bpp"
gFigurineGfx10:: @ 088422E0
.incbin "data_08132B30/gFigurineGfx10.4bpp"
.incbin "figurines/gFigurineGfx10.4bpp"
gFigurineGfx11:: @ 08843080
.incbin "data_08132B30/gFigurineGfx11.4bpp"
.incbin "figurines/gFigurineGfx11.4bpp"
gFigurineGfx12:: @ 08843EE0
.incbin "data_08132B30/gFigurineGfx12.4bpp"
.incbin "figurines/gFigurineGfx12.4bpp"
gFigurineGfx13:: @ 08844DC0
.incbin "data_08132B30/gFigurineGfx13.4bpp"
.incbin "figurines/gFigurineGfx13.4bpp"
gFigurineGfx14:: @ 08845BA0
.incbin "data_08132B30/gFigurineGfx14.4bpp"
.incbin "figurines/gFigurineGfx14.4bpp"
gFigurineGfx15:: @ 088475A0
.incbin "data_08132B30/gFigurineGfx15.4bpp"
.incbin "figurines/gFigurineGfx15.4bpp"
gFigurineGfx16:: @ 08848F60
.incbin "data_08132B30/gFigurineGfx16.4bpp"
.incbin "figurines/gFigurineGfx16.4bpp"
gFigurineGfx17:: @ 0884A020
.incbin "data_08132B30/gFigurineGfx17.4bpp"
.incbin "figurines/gFigurineGfx17.4bpp"
gFigurineGfx18:: @ 0884A400
.incbin "data_08132B30/gFigurineGfx18.4bpp"
.incbin "figurines/gFigurineGfx18.4bpp"
gFigurineGfx19:: @ 0884A7A0
.incbin "data_08132B30/gFigurineGfx19.4bpp"
.incbin "figurines/gFigurineGfx19.4bpp"
gFigurineGfx20:: @ 0884AB00
.incbin "data_08132B30/gFigurineGfx20.4bpp"
.incbin "figurines/gFigurineGfx20.4bpp"
gFigurineGfx21:: @ 0884B680
.incbin "data_08132B30/gFigurineGfx21.4bpp"
.incbin "figurines/gFigurineGfx21.4bpp"
gFigurineGfx22:: @ 0884C180
.incbin "data_08132B30/gFigurineGfx22.4bpp"
.incbin "figurines/gFigurineGfx22.4bpp"
gFigurineGfx23:: @ 0884CC60
.incbin "data_08132B30/gFigurineGfx23.4bpp"
.incbin "figurines/gFigurineGfx23.4bpp"
gFigurineGfx24:: @ 0884D0E0
.incbin "data_08132B30/gFigurineGfx24.4bpp"
.incbin "figurines/gFigurineGfx24.4bpp"
gFigurineGfx25:: @ 0884D400
.incbin "data_08132B30/gFigurineGfx25.4bpp"
.incbin "figurines/gFigurineGfx25.4bpp"
gFigurineGfx26:: @ 0884D760
.incbin "data_08132B30/gFigurineGfx26.4bpp"
.incbin "figurines/gFigurineGfx26.4bpp"
gFigurineGfx27:: @ 0884DB00
.incbin "data_08132B30/gFigurineGfx27.4bpp"
.incbin "figurines/gFigurineGfx27.4bpp"
gFigurineGfx28:: @ 0884DF00
.incbin "data_08132B30/gFigurineGfx28.4bpp"
.incbin "figurines/gFigurineGfx28.4bpp"
gFigurineGfx29:: @ 0884E6E0
.incbin "data_08132B30/gFigurineGfx29.4bpp"
.incbin "figurines/gFigurineGfx29.4bpp"
gFigurineGfx30:: @ 088510E0
.incbin "data_08132B30/gFigurineGfx30.4bpp"
.incbin "figurines/gFigurineGfx30.4bpp"
gFigurineGfx31:: @ 08853AE0
.incbin "data_08132B30/gFigurineGfx31.4bpp"
.incbin "figurines/gFigurineGfx31.4bpp"
gFigurineGfx32:: @ 088564E0
.incbin "data_08132B30/gFigurineGfx32.4bpp"
.incbin "figurines/gFigurineGfx32.4bpp"
gFigurineGfx33:: @ 088568A0
.incbin "data_08132B30/gFigurineGfx33.4bpp"
.incbin "figurines/gFigurineGfx33.4bpp"
gFigurineGfx34:: @ 08856C20
.incbin "data_08132B30/gFigurineGfx34.4bpp"
.incbin "figurines/gFigurineGfx34.4bpp"
gFigurineGfx35:: @ 08856FA0
.incbin "data_08132B30/gFigurineGfx35.4bpp"
.incbin "figurines/gFigurineGfx35.4bpp"
gFigurineGfx36:: @ 08857320
.incbin "data_08132B30/gFigurineGfx36.4bpp"
.incbin "figurines/gFigurineGfx36.4bpp"
gFigurineGfx37:: @ 08857880
.incbin "data_08132B30/gFigurineGfx37.4bpp"
.incbin "figurines/gFigurineGfx37.4bpp"
gFigurineGfx38:: @ 08857D00
.incbin "data_08132B30/gFigurineGfx38.4bpp"
.incbin "figurines/gFigurineGfx38.4bpp"
gFigurineGfx39:: @ 08858180
.incbin "data_08132B30/gFigurineGfx39.4bpp"
.incbin "figurines/gFigurineGfx39.4bpp"
gFigurineGfx40:: @ 08858680
.incbin "data_08132B30/gFigurineGfx40.4bpp"
.incbin "figurines/gFigurineGfx40.4bpp"
gFigurineGfx41:: @ 08859B40
.incbin "data_08132B30/gFigurineGfx41.4bpp"
.incbin "figurines/gFigurineGfx41.4bpp"
gFigurineGfx42:: @ 0885A1A0
.incbin "data_08132B30/gFigurineGfx42.4bpp"
.incbin "figurines/gFigurineGfx42.4bpp"
gFigurineGfx43:: @ 0885B220
.incbin "data_08132B30/gFigurineGfx43.4bpp"
.incbin "figurines/gFigurineGfx43.4bpp"
gFigurineGfx44:: @ 0885BA20
.incbin "data_08132B30/gFigurineGfx44.4bpp"
.incbin "figurines/gFigurineGfx44.4bpp"
gFigurineGfx45:: @ 0885C220
.incbin "data_08132B30/gFigurineGfx45.4bpp"
.incbin "figurines/gFigurineGfx45.4bpp"
gFigurineGfx46:: @ 0885C720
.incbin "data_08132B30/gFigurineGfx46.4bpp"
.incbin "figurines/gFigurineGfx46.4bpp"
gFigurineGfx47:: @ 0885CC20
.incbin "data_08132B30/gFigurineGfx47.4bpp"
.incbin "figurines/gFigurineGfx47.4bpp"
gFigurineGfx48:: @ 0885FCA0
.incbin "data_08132B30/gFigurineGfx48.4bpp"
.incbin "figurines/gFigurineGfx48.4bpp"
gFigurineGfx49:: @ 08862680
.incbin "data_08132B30/gFigurineGfx49.4bpp"
.incbin "figurines/gFigurineGfx49.4bpp"
gFigurineGfx50:: @ 08866080
.incbin "data_08132B30/gFigurineGfx50.4bpp"
.incbin "figurines/gFigurineGfx50.4bpp"
gFigurineGfx51:: @ 08868A40
.incbin "data_08132B30/gFigurineGfx51.4bpp"
.incbin "figurines/gFigurineGfx51.4bpp"
gFigurineGfx52:: @ 0886BF20
.incbin "data_08132B30/gFigurineGfx52.4bpp"
.incbin "figurines/gFigurineGfx52.4bpp"
gFigurineGfx53:: @ 0886F820
.incbin "data_08132B30/gFigurineGfx53.4bpp"
.incbin "figurines/gFigurineGfx53.4bpp"
gFigurineGfx54:: @ 08872900
.incbin "data_08132B30/gFigurineGfx54.4bpp"
.incbin "figurines/gFigurineGfx54.4bpp"
gFigurineGfx55:: @ 08875580
.incbin "data_08132B30/gFigurineGfx55.4bpp"
.incbin "figurines/gFigurineGfx55.4bpp"
gFigurineGfx56:: @ 08878A80
.incbin "data_08132B30/gFigurineGfx56.4bpp"
.incbin "figurines/gFigurineGfx56.4bpp"
gFigurineGfx57:: @ 0887B200
.incbin "data_08132B30/gFigurineGfx57.4bpp"
.incbin "figurines/gFigurineGfx57.4bpp"
gFigurineGfx58:: @ 0887E0A0
.incbin "data_08132B30/gFigurineGfx58.4bpp"
.incbin "figurines/gFigurineGfx58.4bpp"
gFigurineGfx59:: @ 088813C0
.incbin "data_08132B30/gFigurineGfx59.4bpp"
.incbin "figurines/gFigurineGfx59.4bpp"
gFigurineGfx60:: @ 08883EA0
.incbin "data_08132B30/gFigurineGfx60.4bpp"
.incbin "figurines/gFigurineGfx60.4bpp"
gFigurineGfx61:: @ 08885DA0
.incbin "data_08132B30/gFigurineGfx61.4bpp"
.incbin "figurines/gFigurineGfx61.4bpp"
gFigurineGfx62:: @ 08889DA0
.incbin "data_08132B30/gFigurineGfx62.4bpp"
.incbin "figurines/gFigurineGfx62.4bpp"
gFigurineGfx63:: @ 0888DD20
.incbin "data_08132B30/gFigurineGfx63.4bpp"
.incbin "figurines/gFigurineGfx63.4bpp"
gFigurineGfx64:: @ 0888F960
.incbin "data_08132B30/gFigurineGfx64.4bpp"
.incbin "figurines/gFigurineGfx64.4bpp"
gFigurineGfx65:: @ 08890FC0
.incbin "data_08132B30/gFigurineGfx65.4bpp"
.incbin "figurines/gFigurineGfx65.4bpp"
gFigurineGfx66:: @ 08892C40
.incbin "data_08132B30/gFigurineGfx66.4bpp"
.incbin "figurines/gFigurineGfx66.4bpp"
gFigurineGfx67:: @ 08894F40
.incbin "data_08132B30/gFigurineGfx67.4bpp"
.incbin "figurines/gFigurineGfx67.4bpp"
gFigurineGfx68:: @ 088973C0
.incbin "data_08132B30/gFigurineGfx68.4bpp"
.incbin "figurines/gFigurineGfx68.4bpp"
gFigurineGfx69:: @ 08897800
.incbin "data_08132B30/gFigurineGfx69.4bpp"
.incbin "figurines/gFigurineGfx69.4bpp"
gFigurineGfx70:: @ 088980C0
.incbin "data_08132B30/gFigurineGfx70.4bpp"
.incbin "figurines/gFigurineGfx70.4bpp"
gFigurineGfx71:: @ 08898EC0
.incbin "data_08132B30/gFigurineGfx71.4bpp"
.incbin "figurines/gFigurineGfx71.4bpp"
gFigurineGfx72:: @ 08899240
.incbin "data_08132B30/gFigurineGfx72.4bpp"
.incbin "figurines/gFigurineGfx72.4bpp"
gFigurineGfx73:: @ 08899B60
.incbin "data_08132B30/gFigurineGfx73.4bpp"
.incbin "figurines/gFigurineGfx73.4bpp"
gFigurineGfx74:: @ 08899E40
.incbin "data_08132B30/gFigurineGfx74.4bpp"
.incbin "figurines/gFigurineGfx74.4bpp"
gFigurineGfx75:: @ 0889A5E0
.incbin "data_08132B30/gFigurineGfx75.4bpp"
.incbin "figurines/gFigurineGfx75.4bpp"
gFigurineGfx76:: @ 0889A8E0
.incbin "data_08132B30/gFigurineGfx76.4bpp"
.incbin "figurines/gFigurineGfx76.4bpp"
gFigurineGfx77:: @ 0889B7E0
.incbin "data_08132B30/gFigurineGfx77.4bpp"
.incbin "figurines/gFigurineGfx77.4bpp"
gFigurineGfx78:: @ 0889BB40
.incbin "data_08132B30/gFigurineGfx78.4bpp"
.incbin "figurines/gFigurineGfx78.4bpp"
gFigurineGfx79:: @ 0889C2C0
.incbin "data_08132B30/gFigurineGfx79.4bpp"
.incbin "figurines/gFigurineGfx79.4bpp"
gFigurineGfx80:: @ 0889C6C0
.incbin "data_08132B30/gFigurineGfx80.4bpp"
.incbin "figurines/gFigurineGfx80.4bpp"
gFigurineGfx81:: @ 0889CA40
.incbin "data_08132B30/gFigurineGfx81.4bpp"
.incbin "figurines/gFigurineGfx81.4bpp"
gFigurineGfx82:: @ 0889D440
.incbin "data_08132B30/gFigurineGfx82.4bpp"
.incbin "figurines/gFigurineGfx82.4bpp"
gFigurineGfx83:: @ 0889DE40
.incbin "data_08132B30/gFigurineGfx83.4bpp"
.incbin "figurines/gFigurineGfx83.4bpp"
gFigurineGfx84:: @ 0889E140
.incbin "data_08132B30/gFigurineGfx84.4bpp"
.incbin "figurines/gFigurineGfx84.4bpp"
gFigurineGfx85:: @ 0889E600
.incbin "data_08132B30/gFigurineGfx85.4bpp"
.incbin "figurines/gFigurineGfx85.4bpp"
gFigurineGfx86:: @ 0889EDC0
.incbin "data_08132B30/gFigurineGfx86.4bpp"
.incbin "figurines/gFigurineGfx86.4bpp"
gFigurineGfx87:: @ 0889F8E0
.incbin "data_08132B30/gFigurineGfx87.4bpp"
.incbin "figurines/gFigurineGfx87.4bpp"
gFigurineGfx88:: @ 088A00C0
.incbin "data_08132B30/gFigurineGfx88.4bpp"
.incbin "figurines/gFigurineGfx88.4bpp"
gFigurineGfx89:: @ 088A0420
.incbin "data_08132B30/gFigurineGfx89.4bpp"
.incbin "figurines/gFigurineGfx89.4bpp"
gFigurineGfx90:: @ 088A0CE0
.incbin "data_08132B30/gFigurineGfx90.4bpp"
.incbin "figurines/gFigurineGfx90.4bpp"
gFigurineGfx91:: @ 088A14A0
.incbin "data_08132B30/gFigurineGfx91.4bpp"
.incbin "figurines/gFigurineGfx91.4bpp"
gFigurineGfx92:: @ 088A2260
.incbin "data_08132B30/gFigurineGfx92.4bpp"
.incbin "figurines/gFigurineGfx92.4bpp"
gFigurineGfx93:: @ 088A2560
.incbin "data_08132B30/gFigurineGfx93.4bpp"
.incbin "figurines/gFigurineGfx93.4bpp"
gFigurineGfx94:: @ 088A2840
.incbin "data_08132B30/gFigurineGfx94.4bpp"
.incbin "figurines/gFigurineGfx94.4bpp"
gFigurineGfx95:: @ 088A2D40
.incbin "data_08132B30/gFigurineGfx95.4bpp"
.incbin "figurines/gFigurineGfx95.4bpp"
gFigurineGfx96:: @ 088A3500
.incbin "data_08132B30/gFigurineGfx96.4bpp"
.incbin "figurines/gFigurineGfx96.4bpp"
gFigurineGfx97:: @ 088A3800
.incbin "data_08132B30/gFigurineGfx97.4bpp"
.incbin "figurines/gFigurineGfx97.4bpp"
gFigurineGfx98:: @ 088A3FA0
.incbin "data_08132B30/gFigurineGfx98.4bpp"
.incbin "figurines/gFigurineGfx98.4bpp"
gFigurineGfx99:: @ 088A44A0
.incbin "data_08132B30/gFigurineGfx99.4bpp"
.incbin "figurines/gFigurineGfx99.4bpp"
gFigurineGfx100:: @ 088A4860
.incbin "data_08132B30/gFigurineGfx100.4bpp"
.incbin "figurines/gFigurineGfx100.4bpp"
gFigurineGfx101:: @ 088A5200
.incbin "data_08132B30/gFigurineGfx101.4bpp"
.incbin "figurines/gFigurineGfx101.4bpp"
gFigurineGfx102:: @ 088A5FC0
.incbin "data_08132B30/gFigurineGfx102.4bpp"
.incbin "figurines/gFigurineGfx102.4bpp"
gFigurineGfx103:: @ 088A6360
.incbin "data_08132B30/gFigurineGfx103.4bpp"
.incbin "figurines/gFigurineGfx103.4bpp"
gFigurineGfx104:: @ 088A6CE0
.incbin "data_08132B30/gFigurineGfx104.4bpp"
.incbin "figurines/gFigurineGfx104.4bpp"
gFigurineGfx105:: @ 088A74A0
.incbin "data_08132B30/gFigurineGfx105.4bpp"
.incbin "figurines/gFigurineGfx105.4bpp"
gFigurineGfx106:: @ 088A7CC0
.incbin "data_08132B30/gFigurineGfx106.4bpp"
.incbin "figurines/gFigurineGfx106.4bpp"
gFigurineGfx107:: @ 088A8000
.incbin "data_08132B30/gFigurineGfx107.4bpp"
.incbin "figurines/gFigurineGfx107.4bpp"
gFigurineGfx108:: @ 088A8500
.incbin "data_08132B30/gFigurineGfx108.4bpp"
.incbin "figurines/gFigurineGfx108.4bpp"
gFigurineGfx109:: @ 088A8A00
.incbin "data_08132B30/gFigurineGfx109.4bpp"
.incbin "figurines/gFigurineGfx109.4bpp"
gFigurineGfx110:: @ 088A91C0
.incbin "data_08132B30/gFigurineGfx110.4bpp"
.incbin "figurines/gFigurineGfx110.4bpp"
gFigurineGfx111:: @ 088A9820
.incbin "data_08132B30/gFigurineGfx111.4bpp"
.incbin "figurines/gFigurineGfx111.4bpp"
gFigurineGfx112:: @ 088A9BE0
.incbin "data_08132B30/gFigurineGfx112.4bpp"
.incbin "figurines/gFigurineGfx112.4bpp"
gFigurineGfx113:: @ 088AA040
.incbin "data_08132B30/gFigurineGfx113.4bpp"
.incbin "figurines/gFigurineGfx113.4bpp"
gFigurineGfx114:: @ 088AA3C0
.incbin "data_08132B30/gFigurineGfx114.4bpp"
.incbin "figurines/gFigurineGfx114.4bpp"
gFigurineGfx115:: @ 088AABE0
.incbin "data_08132B30/gFigurineGfx115.4bpp"
.incbin "figurines/gFigurineGfx115.4bpp"
gFigurineGfx116:: @ 088AB280
.incbin "data_08132B30/gFigurineGfx116.4bpp"
.incbin "figurines/gFigurineGfx116.4bpp"
gFigurineGfx117:: @ 088ABC00
.incbin "data_08132B30/gFigurineGfx117.4bpp"
.incbin "figurines/gFigurineGfx117.4bpp"
gFigurineGfx118:: @ 088AC1E0
.incbin "data_08132B30/gFigurineGfx118.4bpp"
.incbin "figurines/gFigurineGfx118.4bpp"
gFigurineGfx119:: @ 088ACA80
.incbin "data_08132B30/gFigurineGfx119.4bpp"
.incbin "figurines/gFigurineGfx119.4bpp"
gFigurineGfx120:: @ 088AD340
.incbin "data_08132B30/gFigurineGfx120.4bpp"
.incbin "figurines/gFigurineGfx120.4bpp"
gFigurineGfx121:: @ 088AD8E0
.incbin "data_08132B30/gFigurineGfx121.4bpp"
.incbin "figurines/gFigurineGfx121.4bpp"
gFigurineGfx122:: @ 088ADF00
.incbin "data_08132B30/gFigurineGfx122.4bpp"
.incbin "figurines/gFigurineGfx122.4bpp"
gFigurineGfx123:: @ 088AEE00
.incbin "data_08132B30/gFigurineGfx123.4bpp"
.incbin "figurines/gFigurineGfx123.4bpp"
gFigurineGfx124:: @ 088AF440
.incbin "data_08132B30/gFigurineGfx124.4bpp"
.incbin "figurines/gFigurineGfx124.4bpp"
gFigurineGfx125:: @ 088B19C0
.incbin "data_08132B30/gFigurineGfx125.4bpp"
.incbin "figurines/gFigurineGfx125.4bpp"
gFigurineGfx126:: @ 088B3160
.incbin "data_08132B30/gFigurineGfx126.4bpp"
.incbin "figurines/gFigurineGfx126.4bpp"
gFigurineGfx127:: @ 088B4B00
.incbin "data_08132B30/gFigurineGfx127.4bpp"
.incbin "figurines/gFigurineGfx127.4bpp"
gFigurineGfx128:: @ 088B5E00
.incbin "data_08132B30/gFigurineGfx128.4bpp"
.incbin "figurines/gFigurineGfx128.4bpp"
gFigurineGfx129:: @ 088B7CA0
.incbin "data_08132B30/gFigurineGfx129.4bpp"
.incbin "figurines/gFigurineGfx129.4bpp"
gFigurineGfx130:: @ 088B92E0
.incbin "data_08132B30/gFigurineGfx130.4bpp"
.incbin "figurines/gFigurineGfx130.4bpp"
gFigurineGfx131:: @ 088BAAA0
.incbin "data_08132B30/gFigurineGfx131.4bpp"
.incbin "figurines/gFigurineGfx131.4bpp"
gFigurineGfx132:: @ 088BB8A0
.incbin "data_08132B30/gFigurineGfx132.4bpp"
.incbin "figurines/gFigurineGfx132.4bpp"
gFigurineGfx133:: @ 088BBE20
.incbin "data_08132B30/gFigurineGfx133.4bpp"
.incbin "figurines/gFigurineGfx133.4bpp"
gFigurineGfx134:: @ 088BCA60
.incbin "data_08132B30/gFigurineGfx134.4bpp"
.incbin "figurines/gFigurineGfx134.4bpp"
gFigurineGfx135:: @ 088BDB60
.incbin "data_08132B30/gFigurineGfx135.4bpp"
.incbin "figurines/gFigurineGfx135.4bpp"
gFigurineGfx136:: @ 088C00E0
.incbin "data_08132B30/gFigurineGfx136.4bpp"
.incbin "figurines/gFigurineGfx136.4bpp"
@ TODO the last 0x8c0 of gFigurineGfx136 belong to gGfx_89_6

View File

@ -3,414 +3,414 @@
.section .rodata
.align 2
@ TODO figurine Data
gFigurinePal1:: @ 085B5EC0
.incbin "data_08132B30/gFigurinePal1.bin"
.incbin "palettes/gFigurinePal1.gbapal"
gFigurinePal2:: @ 085B5FA0
.incbin "data_08132B30/gFigurinePal2.bin"
.incbin "palettes/gFigurinePal2.gbapal"
gFigurinePal3:: @ 085B6080
.incbin "data_08132B30/gFigurinePal3.bin"
.incbin "palettes/gFigurinePal3.gbapal"
gFigurinePal4:: @ 085B6160
.incbin "data_08132B30/gFigurinePal4.bin"
.incbin "palettes/gFigurinePal4.gbapal"
gFigurinePal5:: @ 085B6240
.incbin "data_08132B30/gFigurinePal5.bin"
.incbin "palettes/gFigurinePal5.gbapal"
gFigurinePal6:: @ 085B6320
.incbin "data_08132B30/gFigurinePal6.bin"
.incbin "palettes/gFigurinePal6.gbapal"
gFigurinePal7:: @ 085B6400
.incbin "data_08132B30/gFigurinePal7.bin"
.incbin "palettes/gFigurinePal7.gbapal"
gFigurinePal8:: @ 085B64E0
.incbin "data_08132B30/gFigurinePal8.bin"
.incbin "palettes/gFigurinePal8.gbapal"
gFigurinePal9:: @ 085B65C0
.incbin "data_08132B30/gFigurinePal9.bin"
.incbin "palettes/gFigurinePal9.gbapal"
gFigurinePal10:: @ 085B66A0
.incbin "data_08132B30/gFigurinePal10.bin"
.incbin "palettes/gFigurinePal10.gbapal"
gFigurinePal11:: @ 085B6780
.incbin "data_08132B30/gFigurinePal11.bin"
.incbin "palettes/gFigurinePal11.gbapal"
gFigurinePal12:: @ 085B6860
.incbin "data_08132B30/gFigurinePal12.bin"
.incbin "palettes/gFigurinePal12.gbapal"
gFigurinePal13:: @ 085B6940
.incbin "data_08132B30/gFigurinePal13.bin"
.incbin "palettes/gFigurinePal13.gbapal"
gFigurinePal14:: @ 085B6A20
.incbin "data_08132B30/gFigurinePal14.bin"
.incbin "palettes/gFigurinePal14.gbapal"
gFigurinePal15:: @ 085B6B00
.incbin "data_08132B30/gFigurinePal15.bin"
.incbin "palettes/gFigurinePal15.gbapal"
gFigurinePal16:: @ 085B6BE0
.incbin "data_08132B30/gFigurinePal16.bin"
.incbin "palettes/gFigurinePal16.gbapal"
gFigurinePal17:: @ 085B6CC0
.incbin "data_08132B30/gFigurinePal17.bin"
.incbin "palettes/gFigurinePal17.gbapal"
gFigurinePal18:: @ 085B6DA0
.incbin "data_08132B30/gFigurinePal18.bin"
.incbin "palettes/gFigurinePal18.gbapal"
gFigurinePal19:: @ 085B6E80
.incbin "data_08132B30/gFigurinePal19.bin"
.incbin "palettes/gFigurinePal19.gbapal"
gFigurinePal20:: @ 085B6F60
.incbin "data_08132B30/gFigurinePal20.bin"
.incbin "palettes/gFigurinePal20.gbapal"
gFigurinePal21:: @ 085B7040
.incbin "data_08132B30/gFigurinePal21.bin"
.incbin "palettes/gFigurinePal21.gbapal"
gFigurinePal22:: @ 085B7120
.incbin "data_08132B30/gFigurinePal22.bin"
.incbin "palettes/gFigurinePal22.gbapal"
gFigurinePal23:: @ 085B7200
.incbin "data_08132B30/gFigurinePal23.bin"
.incbin "palettes/gFigurinePal23.gbapal"
gFigurinePal24:: @ 085B72E0
.incbin "data_08132B30/gFigurinePal24.bin"
.incbin "palettes/gFigurinePal24.gbapal"
gFigurinePal25:: @ 085B73C0
.incbin "data_08132B30/gFigurinePal25.bin"
.incbin "palettes/gFigurinePal25.gbapal"
gFigurinePal26:: @ 085B74A0
.incbin "data_08132B30/gFigurinePal26.bin"
.incbin "palettes/gFigurinePal26.gbapal"
gFigurinePal27:: @ 085B7580
.incbin "data_08132B30/gFigurinePal27.bin"
.incbin "palettes/gFigurinePal27.gbapal"
gFigurinePal28:: @ 085B7660
.incbin "data_08132B30/gFigurinePal28.bin"
.incbin "palettes/gFigurinePal28.gbapal"
gFigurinePal29:: @ 085B7740
.incbin "data_08132B30/gFigurinePal29.bin"
.incbin "palettes/gFigurinePal29.gbapal"
gFigurinePal30:: @ 085B7820
.incbin "data_08132B30/gFigurinePal30.bin"
.incbin "palettes/gFigurinePal30.gbapal"
gFigurinePal31:: @ 085B7900
.incbin "data_08132B30/gFigurinePal31.bin"
.incbin "palettes/gFigurinePal31.gbapal"
gFigurinePal32:: @ 085B79E0
.incbin "data_08132B30/gFigurinePal32.bin"
.incbin "palettes/gFigurinePal32.gbapal"
gFigurinePal33:: @ 085B7AC0
.incbin "data_08132B30/gFigurinePal33.bin"
.incbin "palettes/gFigurinePal33.gbapal"
gFigurinePal34:: @ 085B7BA0
.incbin "data_08132B30/gFigurinePal34.bin"
.incbin "palettes/gFigurinePal34.gbapal"
gFigurinePal35:: @ 085B7C80
.incbin "data_08132B30/gFigurinePal35.bin"
.incbin "palettes/gFigurinePal35.gbapal"
gFigurinePal36:: @ 085B7D60
.incbin "data_08132B30/gFigurinePal36.bin"
.incbin "palettes/gFigurinePal36.gbapal"
gFigurinePal37:: @ 085B7E40
.incbin "data_08132B30/gFigurinePal37.bin"
.incbin "palettes/gFigurinePal37.gbapal"
gFigurinePal38:: @ 085B7F20
.incbin "data_08132B30/gFigurinePal38.bin"
.incbin "palettes/gFigurinePal38.gbapal"
gFigurinePal39:: @ 085B8000
.incbin "data_08132B30/gFigurinePal39.bin"
.incbin "palettes/gFigurinePal39.gbapal"
gFigurinePal40:: @ 085B80E0
.incbin "data_08132B30/gFigurinePal40.bin"
.incbin "palettes/gFigurinePal40.gbapal"
gFigurinePal41:: @ 085B81C0
.incbin "data_08132B30/gFigurinePal41.bin"
.incbin "palettes/gFigurinePal41.gbapal"
gFigurinePal42:: @ 085B82A0
.incbin "data_08132B30/gFigurinePal42.bin"
.incbin "palettes/gFigurinePal42.gbapal"
gFigurinePal43:: @ 085B8380
.incbin "data_08132B30/gFigurinePal43.bin"
.incbin "palettes/gFigurinePal43.gbapal"
gFigurinePal44:: @ 085B8460
.incbin "data_08132B30/gFigurinePal44.bin"
.incbin "palettes/gFigurinePal44.gbapal"
gFigurinePal45:: @ 085B8540
.incbin "data_08132B30/gFigurinePal45.bin"
.incbin "palettes/gFigurinePal45.gbapal"
gFigurinePal46:: @ 085B8620
.incbin "data_08132B30/gFigurinePal46.bin"
.incbin "palettes/gFigurinePal46.gbapal"
gFigurinePal47:: @ 085B8700
.incbin "data_08132B30/gFigurinePal47.bin"
.incbin "palettes/gFigurinePal47.gbapal"
gFigurinePal48:: @ 085B87E0
.incbin "data_08132B30/gFigurinePal48.bin"
.incbin "palettes/gFigurinePal48.gbapal"
gFigurinePal49:: @ 085B88C0
.incbin "data_08132B30/gFigurinePal49.bin"
.incbin "palettes/gFigurinePal49.gbapal"
gFigurinePal50:: @ 085B89E0
.incbin "data_08132B30/gFigurinePal50.bin"
.incbin "palettes/gFigurinePal50.gbapal"
gFigurinePal51:: @ 085B8AC0
.incbin "data_08132B30/gFigurinePal51.bin"
.incbin "palettes/gFigurinePal51.gbapal"
gFigurinePal52:: @ 085B8BA0
.incbin "data_08132B30/gFigurinePal52.bin"
.incbin "palettes/gFigurinePal52.gbapal"
gFigurinePal53:: @ 085B8C80
.incbin "data_08132B30/gFigurinePal53.bin"
.incbin "palettes/gFigurinePal53.gbapal"
gFigurinePal54:: @ 085B8D60
.incbin "data_08132B30/gFigurinePal54.bin"
.incbin "palettes/gFigurinePal54.gbapal"
gFigurinePal55:: @ 085B8E40
.incbin "data_08132B30/gFigurinePal55.bin"
.incbin "palettes/gFigurinePal55.gbapal"
gFigurinePal56:: @ 085B8F20
.incbin "data_08132B30/gFigurinePal56.bin"
.incbin "palettes/gFigurinePal56.gbapal"
gFigurinePal57:: @ 085B9000
.incbin "data_08132B30/gFigurinePal57.bin"
.incbin "palettes/gFigurinePal57.gbapal"
gFigurinePal58:: @ 085B90E0
.incbin "data_08132B30/gFigurinePal58.bin"
.incbin "palettes/gFigurinePal58.gbapal"
gFigurinePal59:: @ 085B91C0
.incbin "data_08132B30/gFigurinePal59.bin"
.incbin "palettes/gFigurinePal59.gbapal"
gFigurinePal60:: @ 085B92A0
.incbin "data_08132B30/gFigurinePal60.bin"
.incbin "palettes/gFigurinePal60.gbapal"
gFigurinePal61:: @ 085B9380
.incbin "data_08132B30/gFigurinePal61.bin"
.incbin "palettes/gFigurinePal61.gbapal"
gFigurinePal62:: @ 085B9460
.incbin "data_08132B30/gFigurinePal62.bin"
.incbin "palettes/gFigurinePal62.gbapal"
gFigurinePal63:: @ 085B9540
.incbin "data_08132B30/gFigurinePal63.bin"
.incbin "palettes/gFigurinePal63.gbapal"
gFigurinePal64:: @ 085B9620
.incbin "data_08132B30/gFigurinePal64.bin"
.incbin "palettes/gFigurinePal64.gbapal"
gFigurinePal65:: @ 085B9700
.incbin "data_08132B30/gFigurinePal65.bin"
.incbin "palettes/gFigurinePal65.gbapal"
gFigurinePal66:: @ 085B97E0
.incbin "data_08132B30/gFigurinePal66.bin"
.incbin "palettes/gFigurinePal66.gbapal"
gFigurinePal67:: @ 085B98C0
.incbin "data_08132B30/gFigurinePal67.bin"
.incbin "palettes/gFigurinePal67.gbapal"
gFigurinePal68:: @ 085B99A0
.incbin "data_08132B30/gFigurinePal68.bin"
.incbin "palettes/gFigurinePal68.gbapal"
gFigurinePal69:: @ 085B9A80
.incbin "data_08132B30/gFigurinePal69.bin"
.incbin "palettes/gFigurinePal69.gbapal"
gFigurinePal70:: @ 085B9B60
.incbin "data_08132B30/gFigurinePal70.bin"
.incbin "palettes/gFigurinePal70.gbapal"
gFigurinePal71:: @ 085B9C40
.incbin "data_08132B30/gFigurinePal71.bin"
.incbin "palettes/gFigurinePal71.gbapal"
gFigurinePal72:: @ 085B9D20
.incbin "data_08132B30/gFigurinePal72.bin"
.incbin "palettes/gFigurinePal72.gbapal"
gFigurinePal73:: @ 085B9E00
.incbin "data_08132B30/gFigurinePal73.bin"
.incbin "palettes/gFigurinePal73.gbapal"
gFigurinePal74:: @ 085B9EE0
.incbin "data_08132B30/gFigurinePal74.bin"
.incbin "palettes/gFigurinePal74.gbapal"
gFigurinePal75:: @ 085B9FC0
.incbin "data_08132B30/gFigurinePal75.bin"
.incbin "palettes/gFigurinePal75.gbapal"
gFigurinePal76:: @ 085BA0A0
.incbin "data_08132B30/gFigurinePal76.bin"
.incbin "palettes/gFigurinePal76.gbapal"
gFigurinePal77:: @ 085BA180
.incbin "data_08132B30/gFigurinePal77.bin"
.incbin "palettes/gFigurinePal77.gbapal"
gFigurinePal78:: @ 085BA260
.incbin "data_08132B30/gFigurinePal78.bin"
.incbin "palettes/gFigurinePal78.gbapal"
gFigurinePal79:: @ 085BA340
.incbin "data_08132B30/gFigurinePal79.bin"
.incbin "palettes/gFigurinePal79.gbapal"
gFigurinePal80:: @ 085BA420
.incbin "data_08132B30/gFigurinePal80.bin"
.incbin "palettes/gFigurinePal80.gbapal"
gFigurinePal81:: @ 085BA500
.incbin "data_08132B30/gFigurinePal81.bin"
.incbin "palettes/gFigurinePal81.gbapal"
gFigurinePal82:: @ 085BA5E0
.incbin "data_08132B30/gFigurinePal82.bin"
.incbin "palettes/gFigurinePal82.gbapal"
gFigurinePal83:: @ 085BA6C0
.incbin "data_08132B30/gFigurinePal83.bin"
.incbin "palettes/gFigurinePal83.gbapal"
gFigurinePal84:: @ 085BA7A0
.incbin "data_08132B30/gFigurinePal84.bin"
.incbin "palettes/gFigurinePal84.gbapal"
gFigurinePal85:: @ 085BA880
.incbin "data_08132B30/gFigurinePal85.bin"
.incbin "palettes/gFigurinePal85.gbapal"
gFigurinePal86:: @ 085BA960
.incbin "data_08132B30/gFigurinePal86.bin"
.incbin "palettes/gFigurinePal86.gbapal"
gFigurinePal87:: @ 085BAA40
.incbin "data_08132B30/gFigurinePal87.bin"
.incbin "palettes/gFigurinePal87.gbapal"
gFigurinePal88:: @ 085BAB20
.incbin "data_08132B30/gFigurinePal88.bin"
.incbin "palettes/gFigurinePal88.gbapal"
gFigurinePal89:: @ 085BAC00
.incbin "data_08132B30/gFigurinePal89.bin"
.incbin "palettes/gFigurinePal89.gbapal"
gFigurinePal90:: @ 085BACE0
.incbin "data_08132B30/gFigurinePal90.bin"
.incbin "palettes/gFigurinePal90.gbapal"
gFigurinePal91:: @ 085BADC0
.incbin "data_08132B30/gFigurinePal91.bin"
.incbin "palettes/gFigurinePal91.gbapal"
gFigurinePal92:: @ 085BAEA0
.incbin "data_08132B30/gFigurinePal92.bin"
.incbin "palettes/gFigurinePal92.gbapal"
gFigurinePal93:: @ 085BAF80
.incbin "data_08132B30/gFigurinePal93.bin"
.incbin "palettes/gFigurinePal93.gbapal"
gFigurinePal94:: @ 085BB060
.incbin "data_08132B30/gFigurinePal94.bin"
.incbin "palettes/gFigurinePal94.gbapal"
gFigurinePal95:: @ 085BB140
.incbin "data_08132B30/gFigurinePal95.bin"
.incbin "palettes/gFigurinePal95.gbapal"
gFigurinePal96:: @ 085BB220
.incbin "data_08132B30/gFigurinePal96.bin"
.incbin "palettes/gFigurinePal96.gbapal"
gFigurinePal97:: @ 085BB300
.incbin "data_08132B30/gFigurinePal97.bin"
.incbin "palettes/gFigurinePal97.gbapal"
gFigurinePal98:: @ 085BB3E0
.incbin "data_08132B30/gFigurinePal98.bin"
.incbin "palettes/gFigurinePal98.gbapal"
gFigurinePal99:: @ 085BB4C0
.incbin "data_08132B30/gFigurinePal99.bin"
.incbin "palettes/gFigurinePal99.gbapal"
gFigurinePal100:: @ 085BB5A0
.incbin "data_08132B30/gFigurinePal100.bin"
.incbin "palettes/gFigurinePal100.gbapal"
gFigurinePal101:: @ 085BB680
.incbin "data_08132B30/gFigurinePal101.bin"
.incbin "palettes/gFigurinePal101.gbapal"
gFigurinePal102:: @ 085BB760
.incbin "data_08132B30/gFigurinePal102.bin"
.incbin "palettes/gFigurinePal102.gbapal"
gFigurinePal103:: @ 085BB840
.incbin "data_08132B30/gFigurinePal103.bin"
.incbin "palettes/gFigurinePal103.gbapal"
gFigurinePal104:: @ 085BB920
.incbin "data_08132B30/gFigurinePal104.bin"
.incbin "palettes/gFigurinePal104.gbapal"
gFigurinePal105:: @ 085BBA00
.incbin "data_08132B30/gFigurinePal105.bin"
.incbin "palettes/gFigurinePal105.gbapal"
gFigurinePal106:: @ 085BBAE0
.incbin "data_08132B30/gFigurinePal106.bin"
.incbin "palettes/gFigurinePal106.gbapal"
gFigurinePal107:: @ 085BBBC0
.incbin "data_08132B30/gFigurinePal107.bin"
.incbin "palettes/gFigurinePal107.gbapal"
gFigurinePal108:: @ 085BBCA0
.incbin "data_08132B30/gFigurinePal108.bin"
.incbin "palettes/gFigurinePal108.gbapal"
gFigurinePal109:: @ 085BBD80
.incbin "data_08132B30/gFigurinePal109.bin"
.incbin "palettes/gFigurinePal109.gbapal"
gFigurinePal110:: @ 085BBE60
.incbin "data_08132B30/gFigurinePal110.bin"
.incbin "palettes/gFigurinePal110.gbapal"
gFigurinePal111:: @ 085BBF40
.incbin "data_08132B30/gFigurinePal111.bin"
.incbin "palettes/gFigurinePal111.gbapal"
gFigurinePal112:: @ 085BC020
.incbin "data_08132B30/gFigurinePal112.bin"
.incbin "palettes/gFigurinePal112.gbapal"
gFigurinePal113:: @ 085BC100
.incbin "data_08132B30/gFigurinePal113.bin"
.incbin "palettes/gFigurinePal113.gbapal"
gFigurinePal114:: @ 085BC1E0
.incbin "data_08132B30/gFigurinePal114.bin"
.incbin "palettes/gFigurinePal114.gbapal"
gFigurinePal115:: @ 085BC2C0
.incbin "data_08132B30/gFigurinePal115.bin"
.incbin "palettes/gFigurinePal115.gbapal"
gFigurinePal116:: @ 085BC3A0
.incbin "data_08132B30/gFigurinePal116.bin"
.incbin "palettes/gFigurinePal116.gbapal"
gFigurinePal117:: @ 085BC480
.incbin "data_08132B30/gFigurinePal117.bin"
.incbin "palettes/gFigurinePal117.gbapal"
gFigurinePal118:: @ 085BC560
.incbin "data_08132B30/gFigurinePal118.bin"
.incbin "palettes/gFigurinePal118.gbapal"
gFigurinePal119:: @ 085BC640
.incbin "data_08132B30/gFigurinePal119.bin"
.incbin "palettes/gFigurinePal119.gbapal"
gFigurinePal120:: @ 085BC720
.incbin "data_08132B30/gFigurinePal120.bin"
.incbin "palettes/gFigurinePal120.gbapal"
gFigurinePal121:: @ 085BC800
.incbin "data_08132B30/gFigurinePal121.bin"
.incbin "palettes/gFigurinePal121.gbapal"
gFigurinePal122:: @ 085BC8E0
.incbin "data_08132B30/gFigurinePal122.bin"
.incbin "palettes/gFigurinePal122.gbapal"
gFigurinePal123:: @ 085BC9C0
.incbin "data_08132B30/gFigurinePal123.bin"
.incbin "palettes/gFigurinePal123.gbapal"
gFigurinePal124:: @ 085BCAA0
.incbin "data_08132B30/gFigurinePal124.bin"
.incbin "palettes/gFigurinePal124.gbapal"
gFigurinePal125:: @ 085BCB80
.incbin "data_08132B30/gFigurinePal125.bin"
.incbin "palettes/gFigurinePal125.gbapal"
gFigurinePal126:: @ 085BCC60
.incbin "data_08132B30/gFigurinePal126.bin"
.incbin "palettes/gFigurinePal126.gbapal"
gFigurinePal127:: @ 085BCD40
.incbin "data_08132B30/gFigurinePal127.bin"
.incbin "palettes/gFigurinePal127.gbapal"
gFigurinePal128:: @ 085BCE20
.incbin "data_08132B30/gFigurinePal128.bin"
.incbin "palettes/gFigurinePal128.gbapal"
gFigurinePal129:: @ 085BCF00
.incbin "data_08132B30/gFigurinePal129.bin"
.incbin "palettes/gFigurinePal129.gbapal"
gFigurinePal130:: @ 085BCFE0
.incbin "data_08132B30/gFigurinePal130.bin"
.incbin "palettes/gFigurinePal130.gbapal"
gFigurinePal131:: @ 085BD0C0
.incbin "data_08132B30/gFigurinePal131.bin"
.incbin "palettes/gFigurinePal131.gbapal"
gFigurinePal132:: @ 085BD1A0
.incbin "data_08132B30/gFigurinePal132.bin"
.incbin "palettes/gFigurinePal132.gbapal"
gFigurinePal133:: @ 085BD280
.incbin "data_08132B30/gFigurinePal133.bin"
.incbin "palettes/gFigurinePal133.gbapal"
gFigurinePal134:: @ 085BD360
.incbin "data_08132B30/gFigurinePal134.bin"
.incbin "palettes/gFigurinePal134.gbapal"
gFigurinePal135:: @ 085BD440
.incbin "data_08132B30/gFigurinePal135.bin"
.incbin "palettes/gFigurinePal135.gbapal"
gFigurinePal136:: @ 085BD520
.incbin "data_08132B30/gFigurinePal136.bin"
.incbin "palettes/gFigurinePal136.gbapal"
@ TODO end of figurine data

140
data/gfx/figurines.s Normal file
View File

@ -0,0 +1,140 @@
@ Figurine Data
@ palette_data_ptr, gfx_data_ptr, gfx_data_len
gFigurines::
.4byte gFigurinePal1, gFigurineGfx1, 0x580, 0
.4byte gFigurinePal1, gFigurineGfx1, 0x580, 0
.4byte gFigurinePal2, gFigurineGfx2, 0x5e0, 0
.4byte gFigurinePal3, gFigurineGfx3, 0x480, 0
.4byte gFigurinePal4, gFigurineGfx4, 0x4c0, 0
.4byte gFigurinePal5, gFigurineGfx5, 0x500, 0
.4byte gFigurinePal6, gFigurineGfx6, 0x380, 0
.4byte gFigurinePal7, gFigurineGfx7, 0x2c0, 0
.4byte gFigurinePal8, gFigurineGfx8, 0x4e0, 0
.4byte gFigurinePal9, gFigurineGfx9, 0x320, 0
.4byte gFigurinePal10, gFigurineGfx10, 0xda0, 0
.4byte gFigurinePal11, gFigurineGfx11, 0xe60, 0
.4byte gFigurinePal12, gFigurineGfx12, 0xee0, 0
.4byte gFigurinePal13, gFigurineGfx13, 0xde0, 0
.4byte gFigurinePal14, gFigurineGfx14, 0x1a00, 0
.4byte gFigurinePal15, gFigurineGfx15, 0x19c0, 0
.4byte gFigurinePal16, gFigurineGfx16, 0x10c0, 0
.4byte gFigurinePal17, gFigurineGfx17, 0x3e0, 0
.4byte gFigurinePal18, gFigurineGfx18, 0x3a0, 0
.4byte gFigurinePal19, gFigurineGfx19, 0x360, 0
.4byte gFigurinePal20, gFigurineGfx20, 0xb80, 0
.4byte gFigurinePal21, gFigurineGfx21, 0xb00, 0
.4byte gFigurinePal22, gFigurineGfx22, 0xae0, 0
.4byte gFigurinePal23, gFigurineGfx23, 0x480, 0
.4byte gFigurinePal24, gFigurineGfx24, 0x320, 0
.4byte gFigurinePal25, gFigurineGfx25, 0x360, 0
.4byte gFigurinePal26, gFigurineGfx26, 0x3a0, 0
.4byte gFigurinePal27, gFigurineGfx27, 0x400, 0
.4byte gFigurinePal28, gFigurineGfx28, 0x7e0, 0
.4byte gFigurinePal29, gFigurineGfx29, 0x2a00, 0
.4byte gFigurinePal30, gFigurineGfx30, 0x2a00, 0
.4byte gFigurinePal31, gFigurineGfx31, 0x2a00, 0
.4byte gFigurinePal32, gFigurineGfx32, 0x3c0, 0
.4byte gFigurinePal33, gFigurineGfx33, 0x380, 0
.4byte gFigurinePal34, gFigurineGfx34, 0x380, 0
.4byte gFigurinePal35, gFigurineGfx35, 0x380, 0
.4byte gFigurinePal36, gFigurineGfx36, 0x560, 0
.4byte gFigurinePal37, gFigurineGfx37, 0x480, 0
.4byte gFigurinePal38, gFigurineGfx38, 0x480, 0
.4byte gFigurinePal39, gFigurineGfx39, 0x500, 0
.4byte gFigurinePal40, gFigurineGfx40, 0x14c0, 0
.4byte gFigurinePal41, gFigurineGfx41, 0x660, 0
.4byte gFigurinePal42, gFigurineGfx42, 0x1080, 0
.4byte gFigurinePal43, gFigurineGfx43, 0x800, 0
.4byte gFigurinePal44, gFigurineGfx44, 0x800, 0
.4byte gFigurinePal45, gFigurineGfx45, 0x500, 0
.4byte gFigurinePal46, gFigurineGfx46, 0x500, 0
.4byte gFigurinePal47, gFigurineGfx47, 0x3080, 0
.4byte gFigurinePal48, gFigurineGfx48, 0x29e0, 0
.4byte gFigurinePal49, gFigurineGfx49, 0x3a00, 0
.4byte gFigurinePal50, gFigurineGfx50, 0x29c0, 0
.4byte gFigurinePal51, gFigurineGfx51, 0x34e0, 0
.4byte gFigurinePal52, gFigurineGfx52, 0x3900, 0
.4byte gFigurinePal53, gFigurineGfx53, 0x30e0, 0
.4byte gFigurinePal54, gFigurineGfx54, 0x2c80, 0
.4byte gFigurinePal55, gFigurineGfx55, 0x3500, 0
.4byte gFigurinePal56, gFigurineGfx56, 0x2780, 0
.4byte gFigurinePal57, gFigurineGfx57, 0x2ea0, 0
.4byte gFigurinePal58, gFigurineGfx58, 0x3320, 0
.4byte gFigurinePal59, gFigurineGfx59, 0x2ae0, 0
.4byte gFigurinePal60, gFigurineGfx60, 0x1f00, 0
.4byte gFigurinePal61, gFigurineGfx61, 0x4000, 0
.4byte gFigurinePal62, gFigurineGfx62, 0x3f80, 0
.4byte gFigurinePal63, gFigurineGfx63, 0x1c40, 0
.4byte gFigurinePal64, gFigurineGfx64, 0x1660, 0
.4byte gFigurinePal65, gFigurineGfx65, 0x1c80, 0
.4byte gFigurinePal66, gFigurineGfx66, 0x2300, 0
.4byte gFigurinePal67, gFigurineGfx67, 0x2480, 0
.4byte gFigurinePal68, gFigurineGfx68, 0x440, 0
.4byte gFigurinePal69, gFigurineGfx69, 0x8c0, 0
.4byte gFigurinePal70, gFigurineGfx70, 0xe00, 0
.4byte gFigurinePal71, gFigurineGfx71, 0x380, 0
.4byte gFigurinePal72, gFigurineGfx72, 0x920, 0
.4byte gFigurinePal73, gFigurineGfx73, 0x2e0, 0
.4byte gFigurinePal74, gFigurineGfx74, 0x7a0, 0
.4byte gFigurinePal75, gFigurineGfx75, 0x300, 0
.4byte gFigurinePal76, gFigurineGfx76, 0xf00, 0
.4byte gFigurinePal77, gFigurineGfx77, 0x360, 0
.4byte gFigurinePal78, gFigurineGfx78, 0x780, 0
.4byte gFigurinePal79, gFigurineGfx79, 0x400, 0
.4byte gFigurinePal80, gFigurineGfx80, 0x380, 0
.4byte gFigurinePal81, gFigurineGfx81, 0xa00, 0
.4byte gFigurinePal82, gFigurineGfx82, 0xa00, 0
.4byte gFigurinePal83, gFigurineGfx83, 0x300, 0
.4byte gFigurinePal84, gFigurineGfx84, 0x4c0, 0
.4byte gFigurinePal85, gFigurineGfx85, 0x7c0, 0
.4byte gFigurinePal86, gFigurineGfx86, 0xb20, 0
.4byte gFigurinePal87, gFigurineGfx87, 0x7e0, 0
.4byte gFigurinePal88, gFigurineGfx88, 0x360, 0
.4byte gFigurinePal89, gFigurineGfx89, 0x8c0, 0
.4byte gFigurinePal90, gFigurineGfx90, 0x7c0, 0
.4byte gFigurinePal91, gFigurineGfx91, 0xdc0, 0
.4byte gFigurinePal92, gFigurineGfx92, 0x300, 0
.4byte gFigurinePal93, gFigurineGfx93, 0x2e0, 0
.4byte gFigurinePal94, gFigurineGfx94, 0x500, 0
.4byte gFigurinePal95, gFigurineGfx95, 0x7c0, 0
.4byte gFigurinePal96, gFigurineGfx96, 0x300, 0
.4byte gFigurinePal97, gFigurineGfx97, 0x7a0, 0
.4byte gFigurinePal98, gFigurineGfx98, 0x500, 0
.4byte gFigurinePal99, gFigurineGfx99, 0x3c0, 0
.4byte gFigurinePal100, gFigurineGfx100, 0x9a0, 0
.4byte gFigurinePal101, gFigurineGfx101, 0xdc0, 0
.4byte gFigurinePal102, gFigurineGfx102, 0x3a0, 0
.4byte gFigurinePal103, gFigurineGfx103, 0x980, 0
.4byte gFigurinePal104, gFigurineGfx104, 0x7c0, 0
.4byte gFigurinePal105, gFigurineGfx105, 0x820, 0
.4byte gFigurinePal106, gFigurineGfx106, 0x340, 0
.4byte gFigurinePal107, gFigurineGfx107, 0x500, 0
.4byte gFigurinePal108, gFigurineGfx108, 0x500, 0
.4byte gFigurinePal109, gFigurineGfx109, 0x7c0, 0
.4byte gFigurinePal110, gFigurineGfx110, 0x660, 0
.4byte gFigurinePal111, gFigurineGfx111, 0x3c0, 0
.4byte gFigurinePal112, gFigurineGfx112, 0x460, 0
.4byte gFigurinePal113, gFigurineGfx113, 0x380, 0
.4byte gFigurinePal114, gFigurineGfx114, 0x820, 0
.4byte gFigurinePal115, gFigurineGfx115, 0x6a0, 0
.4byte gFigurinePal116, gFigurineGfx116, 0x980, 0
.4byte gFigurinePal117, gFigurineGfx117, 0x5e0, 0
.4byte gFigurinePal118, gFigurineGfx118, 0x8a0, 0
.4byte gFigurinePal119, gFigurineGfx119, 0x8c0, 0
.4byte gFigurinePal120, gFigurineGfx120, 0x5a0, 0
.4byte gFigurinePal121, gFigurineGfx121, 0x620, 0
.4byte gFigurinePal122, gFigurineGfx122, 0xf00, 0
.4byte gFigurinePal123, gFigurineGfx123, 0x640, 0
.4byte gFigurinePal124, gFigurineGfx124, 0x2580, 0
.4byte gFigurinePal125, gFigurineGfx125, 0x17a0, 0
.4byte gFigurinePal126, gFigurineGfx126, 0x19a0, 0
.4byte gFigurinePal127, gFigurineGfx127, 0x1300, 0
.4byte gFigurinePal128, gFigurineGfx128, 0x1ea0, 0
.4byte gFigurinePal129, gFigurineGfx129, 0x1640, 0
.4byte gFigurinePal130, gFigurineGfx130, 0x17c0, 0
.4byte gFigurinePal131, gFigurineGfx131, 0xe00, 0
.4byte gFigurinePal132, gFigurineGfx132, 0x580, 0
.4byte gFigurinePal133, gFigurineGfx133, 0xc40, 0
.4byte gFigurinePal134, gFigurineGfx134, 0x1100, 0
.4byte gFigurinePal135, gFigurineGfx135, 0x2580, 0
.4byte gFigurinePal136, gFigurineGfx136, 0x18e0, 0

View File

@ -3,7 +3,7 @@
.section .rodata
.align 2
@ gFrameObjLists:: @ 082F3D74
.include "sprites/frameObjLists.s"
gFrameObjLists:: @ 082F3D74
.include "gfx/gFrameObjLists.s"
.byte 0xff, 0xff, 0xff

1292
data/gfx/gfx_groups.s Normal file

File diff suppressed because it is too large Load Diff

835
data/gfx/palette_groups.s Normal file
View File

@ -0,0 +1,835 @@
gPaletteGroup_0:: @ 080FF428
.incbin "palettes/gPaletteGroup_0.bin"
gPaletteGroup_1:: @ 080FF430
.incbin "palettes/gPaletteGroup_1.bin"
gPaletteGroup_2:: @ 080FF438
.incbin "palettes/gPaletteGroup_2.bin"
gPaletteGroup_3:: @ 080FF444
.incbin "palettes/gPaletteGroup_3.bin"
gPaletteGroup_4:: @ 080FF450
.incbin "palettes/gPaletteGroup_4.bin"
gPaletteGroup_5:: @ 080FF454
.incbin "palettes/gPaletteGroup_5.bin"
gPaletteGroup_6:: @ 080FF458
.incbin "palettes/gPaletteGroup_6.bin"
gPaletteGroup_7:: @ 080FF45C
.incbin "palettes/gPaletteGroup_7.bin"
gPaletteGroup_8:: @ 080FF460
.incbin "palettes/gPaletteGroup_8.bin"
gPaletteGroup_9:: @ 080FF474
.incbin "palettes/gPaletteGroup_9.bin"
gPaletteGroup_11:: @ 080FF484
.incbin "palettes/gPaletteGroup_11.bin"
gPaletteGroup_10:: @ 080FF488
.incbin "palettes/gPaletteGroup_10.bin"
gPaletteGroup_27:: @ 080FF490
.incbin "palettes/gPaletteGroup_27.bin"
gPaletteGroup_38:: @ 080FF494
.incbin "palettes/gPaletteGroup_38.bin"
gPaletteGroup_20:: @ 080FF498
.incbin "palettes/gPaletteGroup_20.bin"
gPaletteGroup_19:: @ 080FF49C
.incbin "palettes/gPaletteGroup_19.bin"
gPaletteGroup_13:: @ 080FF4A0
.incbin "palettes/gPaletteGroup_13.bin"
gPaletteGroup_21:: @ 080FF4A4
.incbin "palettes/gPaletteGroup_21.bin"
gPaletteGroup_22:: @ 080FF4A8
.incbin "palettes/gPaletteGroup_22.bin"
gPaletteGroup_23:: @ 080FF4AC
.incbin "palettes/gPaletteGroup_23.bin"
gPaletteGroup_24:: @ 080FF4B0
.incbin "palettes/gPaletteGroup_24.bin"
gPaletteGroup_60:: @ 080FF4B4
.incbin "palettes/gPaletteGroup_60.bin"
gPaletteGroup_26:: @ 080FF4B8
.incbin "palettes/gPaletteGroup_26.bin"
gPaletteGroup_169:: @ 080FF4BC
.incbin "palettes/gPaletteGroup_169.bin"
gPaletteGroup_53:: @ 080FF4C0
.incbin "palettes/gPaletteGroup_53.bin"
gPaletteGroup_17:: @ 080FF4C4
.incbin "palettes/gPaletteGroup_17.bin"
gPaletteGroup_62:: @ 080FF4C8
.incbin "palettes/gPaletteGroup_62.bin"
gPaletteGroup_63:: @ 080FF4CC
.incbin "palettes/gPaletteGroup_63.bin"
gPaletteGroup_64:: @ 080FF4D0
.incbin "palettes/gPaletteGroup_64.bin"
gPaletteGroup_65:: @ 080FF4D4
.incbin "palettes/gPaletteGroup_65.bin"
gPaletteGroup_92:: @ 080FF4D8
.incbin "palettes/gPaletteGroup_92.bin"
gPaletteGroup_14:: @ 080FF4DC
.incbin "palettes/gPaletteGroup_14.bin"
gPaletteGroup_108:: @ 080FF4E0
.incbin "palettes/gPaletteGroup_108.bin"
gPaletteGroup_16:: @ 080FF4E4
.incbin "palettes/gPaletteGroup_16.bin"
gPaletteGroup_25:: @ 080FF4E8
.incbin "palettes/gPaletteGroup_25.bin"
gPaletteGroup_89:: @ 080FF4EC
.incbin "palettes/gPaletteGroup_89.bin"
gPaletteGroup_35:: @ 080FF4F0
.incbin "palettes/gPaletteGroup_35.bin"
gPaletteGroup_36:: @ 080FF4F4
.incbin "palettes/gPaletteGroup_36.bin"
gPaletteGroup_127:: @ 080FF4F8
.incbin "palettes/gPaletteGroup_127.bin"
gPaletteGroup_93:: @ 080FF4FC
.incbin "palettes/gPaletteGroup_93.bin"
gPaletteGroup_54:: @ 080FF500
.incbin "palettes/gPaletteGroup_54.bin"
gPaletteGroup_103:: @ 080FF504
.incbin "palettes/gPaletteGroup_103.bin"
gPaletteGroup_129:: @ 080FF508
.incbin "palettes/gPaletteGroup_129.bin"
gPaletteGroup_59:: @ 080FF50C
.incbin "palettes/gPaletteGroup_59.bin"
gPaletteGroup_55:: @ 080FF510
.incbin "palettes/gPaletteGroup_55.bin"
gPaletteGroup_161:: @ 080FF514
.incbin "palettes/gPaletteGroup_161.bin"
gPaletteGroup_56:: @ 080FF518
.incbin "palettes/gPaletteGroup_56.bin"
gPaletteGroup_57:: @ 080FF51C
.incbin "palettes/gPaletteGroup_57.bin"
gPaletteGroup_144:: @ 080FF520
.incbin "palettes/gPaletteGroup_144.bin"
gPaletteGroup_58:: @ 080FF524
.incbin "palettes/gPaletteGroup_58.bin"
gPaletteGroup_143:: @ 080FF528
.incbin "palettes/gPaletteGroup_143.bin"
gPaletteGroup_179:: @ 080FF52C
.incbin "palettes/gPaletteGroup_179.bin"
gPaletteGroup_154:: @ 080FF530
.incbin "palettes/gPaletteGroup_154.bin"
gPaletteGroup_155:: @ 080FF534
.incbin "palettes/gPaletteGroup_155.bin"
gPaletteGroup_168:: @ 080FF538
.incbin "palettes/gPaletteGroup_168.bin"
gPaletteGroup_104:: @ 080FF53C
.incbin "palettes/gPaletteGroup_104.bin"
gPaletteGroup_105:: @ 080FF540
.incbin "palettes/gPaletteGroup_105.bin"
gPaletteGroup_106:: @ 080FF544
.incbin "palettes/gPaletteGroup_106.bin"
gPaletteGroup_107:: @ 080FF548
.incbin "palettes/gPaletteGroup_107.bin"
gPaletteGroup_119:: @ 080FF54C
.incbin "palettes/gPaletteGroup_119.bin"
gPaletteGroup_162:: @ 080FF550
.incbin "palettes/gPaletteGroup_162.bin"
gPaletteGroup_163:: @ 080FF554
.incbin "palettes/gPaletteGroup_163.bin"
gPaletteGroup_164:: @ 080FF558
.incbin "palettes/gPaletteGroup_164.bin"
gPaletteGroup_165:: @ 080FF55C
.incbin "palettes/gPaletteGroup_165.bin"
gPaletteGroup_15:: @ 080FF560
.incbin "palettes/gPaletteGroup_15.bin"
gPaletteGroup_45:: @ 080FF564
.incbin "palettes/gPaletteGroup_45.bin"
gPaletteGroup_66:: @ 080FF568
.incbin "palettes/gPaletteGroup_66.bin"
gPaletteGroup_84:: @ 080FF56C
.incbin "palettes/gPaletteGroup_84.bin"
gPaletteGroup_18:: @ 080FF570
.incbin "palettes/gPaletteGroup_18.bin"
gPaletteGroup_28:: @ 080FF574
.incbin "palettes/gPaletteGroup_28.bin"
gPaletteGroup_29:: @ 080FF578
.incbin "palettes/gPaletteGroup_29.bin"
gPaletteGroup_32:: @ 080FF57C
.incbin "palettes/gPaletteGroup_32.bin"
gPaletteGroup_98:: @ 080FF580
.incbin "palettes/gPaletteGroup_98.bin"
gPaletteGroup_99:: @ 080FF584
.incbin "palettes/gPaletteGroup_99.bin"
gPaletteGroup_166:: @ 080FF588
.incbin "palettes/gPaletteGroup_166.bin"
gPaletteGroup_43:: @ 080FF58C
.incbin "palettes/gPaletteGroup_43.bin"
gPaletteGroup_30:: @ 080FF590
.incbin "palettes/gPaletteGroup_30.bin"
gPaletteGroup_31:: @ 080FF594
.incbin "palettes/gPaletteGroup_31.bin"
gPaletteGroup_37:: @ 080FF598
.incbin "palettes/gPaletteGroup_37.bin"
gPaletteGroup_40:: @ 080FF59C
.incbin "palettes/gPaletteGroup_40.bin"
gPaletteGroup_61:: @ 080FF5A0
.incbin "palettes/gPaletteGroup_61.bin"
gPaletteGroup_91:: @ 080FF5A4
.incbin "palettes/gPaletteGroup_91.bin"
gPaletteGroup_101:: @ 080FF5A8
.incbin "palettes/gPaletteGroup_101.bin"
gPaletteGroup_102:: @ 080FF5AC
.incbin "palettes/gPaletteGroup_102.bin"
gPaletteGroup_50:: @ 080FF5B0
.incbin "palettes/gPaletteGroup_50.bin"
gPaletteGroup_51:: @ 080FF5B4
.incbin "palettes/gPaletteGroup_51.bin"
gPaletteGroup_88:: @ 080FF5B8
.incbin "palettes/gPaletteGroup_88.bin"
gPaletteGroup_156:: @ 080FF5BC
.incbin "palettes/gPaletteGroup_156.bin"
gPaletteGroup_167:: @ 080FF5C0
.incbin "palettes/gPaletteGroup_167.bin"
gPaletteGroup_52:: @ 080FF5C4
.incbin "palettes/gPaletteGroup_52.bin"
gPaletteGroup_12:: @ 080FF5C8
.incbin "palettes/gPaletteGroup_12.bin"
gPaletteGroup_44:: @ 080FF5CC
.incbin "palettes/gPaletteGroup_44.bin"
gPaletteGroup_145:: @ 080FF5D0
.incbin "palettes/gPaletteGroup_145.bin"
gPaletteGroup_146:: @ 080FF5D4
.incbin "palettes/gPaletteGroup_146.bin"
gPaletteGroup_147:: @ 080FF5D8
.incbin "palettes/gPaletteGroup_147.bin"
gPaletteGroup_148:: @ 080FF5DC
.incbin "palettes/gPaletteGroup_148.bin"
gPaletteGroup_149:: @ 080FF5E0
.incbin "palettes/gPaletteGroup_149.bin"
gPaletteGroup_33:: @ 080FF5E4
.incbin "palettes/gPaletteGroup_33.bin"
gPaletteGroup_150:: @ 080FF5E8
.incbin "palettes/gPaletteGroup_150.bin"
gPaletteGroup_151:: @ 080FF5EC
.incbin "palettes/gPaletteGroup_151.bin"
gPaletteGroup_152:: @ 080FF5F0
.incbin "palettes/gPaletteGroup_152.bin"
gPaletteGroup_153:: @ 080FF5F4
.incbin "palettes/gPaletteGroup_153.bin"
gPaletteGroup_34:: @ 080FF5F8
.incbin "palettes/gPaletteGroup_34.bin"
gPaletteGroup_100:: @ 080FF5FC
.incbin "palettes/gPaletteGroup_100.bin"
gPaletteGroup_109:: @ 080FF600
.incbin "palettes/gPaletteGroup_109.bin"
gPaletteGroup_120:: @ 080FF604
.incbin "palettes/gPaletteGroup_120.bin"
gPaletteGroup_124:: @ 080FF608
.incbin "palettes/gPaletteGroup_124.bin"
gPaletteGroup_125:: @ 080FF60C
.incbin "palettes/gPaletteGroup_125.bin"
gPaletteGroup_126:: @ 080FF610
.incbin "palettes/gPaletteGroup_126.bin"
gPaletteGroup_130:: @ 080FF614
.incbin "palettes/gPaletteGroup_130.bin"
gPaletteGroup_131:: @ 080FF618
.incbin "palettes/gPaletteGroup_131.bin"
gPaletteGroup_132:: @ 080FF61C
.incbin "palettes/gPaletteGroup_132.bin"
gPaletteGroup_157:: @ 080FF620
.incbin "palettes/gPaletteGroup_157.bin"
gPaletteGroup_158:: @ 080FF624
.incbin "palettes/gPaletteGroup_158.bin"
gPaletteGroup_159:: @ 080FF628
.incbin "palettes/gPaletteGroup_159.bin"
gPaletteGroup_160:: @ 080FF62C
.incbin "palettes/gPaletteGroup_160.bin"
gPaletteGroup_110:: @ 080FF630
.incbin "palettes/gPaletteGroup_110.bin"
gPaletteGroup_111:: @ 080FF634
.incbin "palettes/gPaletteGroup_111.bin"
gPaletteGroup_112:: @ 080FF638
.incbin "palettes/gPaletteGroup_112.bin"
gPaletteGroup_113:: @ 080FF63C
.incbin "palettes/gPaletteGroup_113.bin"
gPaletteGroup_94:: @ 080FF640
.incbin "palettes/gPaletteGroup_94.bin"
gPaletteGroup_95:: @ 080FF644
.incbin "palettes/gPaletteGroup_95.bin"
gPaletteGroup_96:: @ 080FF648
.incbin "palettes/gPaletteGroup_96.bin"
gPaletteGroup_97:: @ 080FF64C
.incbin "palettes/gPaletteGroup_97.bin"
gPaletteGroup_67:: @ 080FF650
.incbin "palettes/gPaletteGroup_67.bin"
gPaletteGroup_68:: @ 080FF654
.incbin "palettes/gPaletteGroup_68.bin"
gPaletteGroup_69:: @ 080FF658
.incbin "palettes/gPaletteGroup_69.bin"
gPaletteGroup_70:: @ 080FF65C
.incbin "palettes/gPaletteGroup_70.bin"
gPaletteGroup_71:: @ 080FF660
.incbin "palettes/gPaletteGroup_71.bin"
gPaletteGroup_72:: @ 080FF664
.incbin "palettes/gPaletteGroup_72.bin"
gPaletteGroup_73:: @ 080FF668
.incbin "palettes/gPaletteGroup_73.bin"
gPaletteGroup_74:: @ 080FF66C
.incbin "palettes/gPaletteGroup_74.bin"
gPaletteGroup_75:: @ 080FF670
.incbin "palettes/gPaletteGroup_75.bin"
gPaletteGroup_85:: @ 080FF674
.incbin "palettes/gPaletteGroup_85.bin"
gPaletteGroup_86:: @ 080FF678
.incbin "palettes/gPaletteGroup_86.bin"
gPaletteGroup_87:: @ 080FF67C
.incbin "palettes/gPaletteGroup_87.bin"
gPaletteGroup_76:: @ 080FF680
.incbin "palettes/gPaletteGroup_76.bin"
gPaletteGroup_77:: @ 080FF684
.incbin "palettes/gPaletteGroup_77.bin"
gPaletteGroup_78:: @ 080FF688
.incbin "palettes/gPaletteGroup_78.bin"
gPaletteGroup_79:: @ 080FF68C
.incbin "palettes/gPaletteGroup_79.bin"
gPaletteGroup_80:: @ 080FF690
.incbin "palettes/gPaletteGroup_80.bin"
gPaletteGroup_81:: @ 080FF694
.incbin "palettes/gPaletteGroup_81.bin"
gPaletteGroup_82:: @ 080FF698
.incbin "palettes/gPaletteGroup_82.bin"
gPaletteGroup_83:: @ 080FF69C
.incbin "palettes/gPaletteGroup_83.bin"
gPaletteGroup_114:: @ 080FF6A0
.incbin "palettes/gPaletteGroup_114.bin"
gPaletteGroup_115:: @ 080FF6A4
.incbin "palettes/gPaletteGroup_115.bin"
gPaletteGroup_116:: @ 080FF6A8
.incbin "palettes/gPaletteGroup_116.bin"
gPaletteGroup_117:: @ 080FF6AC
.incbin "palettes/gPaletteGroup_117.bin"
gPaletteGroup_118:: @ 080FF6B0
.incbin "palettes/gPaletteGroup_118.bin"
gPaletteGroup_128:: @ 080FF6B4
.incbin "palettes/gPaletteGroup_128.bin"
gPaletteGroup_123:: @ 080FF6B8
.incbin "palettes/gPaletteGroup_123.bin"
gPaletteGroup_122:: @ 080FF6BC
.incbin "palettes/gPaletteGroup_122.bin"
gPaletteGroup_121:: @ 080FF6C0
.incbin "palettes/gPaletteGroup_121.bin"
gPaletteGroup_39:: @ 080FF6C4
.incbin "palettes/gPaletteGroup_39.bin"
gPaletteGroup_41:: @ 080FF6C8
.incbin "palettes/gPaletteGroup_41.bin"
gPaletteGroup_42:: @ 080FF6CC
.incbin "palettes/gPaletteGroup_42.bin"
gPaletteGroup_46:: @ 080FF6D0
.incbin "palettes/gPaletteGroup_46.bin"
gPaletteGroup_47:: @ 080FF6D4
.incbin "palettes/gPaletteGroup_47.bin"
gPaletteGroup_48:: @ 080FF6D8
.incbin "palettes/gPaletteGroup_48.bin"
gPaletteGroup_49:: @ 080FF6DC
.incbin "palettes/gPaletteGroup_49.bin"
gPaletteGroup_90:: @ 080FF6E0
.incbin "palettes/gPaletteGroup_90.bin"
gPaletteGroup_133:: @ 080FF6E4
.incbin "palettes/gPaletteGroup_133.bin"
gPaletteGroup_134:: @ 080FF6E8
.incbin "palettes/gPaletteGroup_134.bin"
gPaletteGroup_135:: @ 080FF6EC
.incbin "palettes/gPaletteGroup_135.bin"
gPaletteGroup_136:: @ 080FF6F0
.incbin "palettes/gPaletteGroup_136.bin"
gPaletteGroup_137:: @ 080FF6F4
.incbin "palettes/gPaletteGroup_137.bin"
gPaletteGroup_138:: @ 080FF6F8
.incbin "palettes/gPaletteGroup_138.bin"
gPaletteGroup_139:: @ 080FF6FC
.incbin "palettes/gPaletteGroup_139.bin"
gPaletteGroup_140:: @ 080FF700
.incbin "palettes/gPaletteGroup_140.bin"
gPaletteGroup_141:: @ 080FF704
.incbin "palettes/gPaletteGroup_141.bin"
gPaletteGroup_142:: @ 080FF708
.incbin "palettes/gPaletteGroup_142.bin"
gPaletteGroup_170:: @ 080FF70C
.incbin "palettes/gPaletteGroup_170.bin"
gPaletteGroup_171:: @ 080FF710
.incbin "palettes/gPaletteGroup_171.bin"
gPaletteGroup_172:: @ 080FF714
.incbin "palettes/gPaletteGroup_172.bin"
gPaletteGroup_173:: @ 080FF718
.incbin "palettes/gPaletteGroup_173.bin"
gPaletteGroup_174:: @ 080FF71C
.incbin "palettes/gPaletteGroup_174.bin"
gPaletteGroup_175:: @ 080FF720
.incbin "palettes/gPaletteGroup_175.bin"
gPaletteGroup_176:: @ 080FF724
.incbin "palettes/gPaletteGroup_176.bin"
gPaletteGroup_177:: @ 080FF728
.incbin "palettes/gPaletteGroup_177.bin"
gPaletteGroup_178:: @ 080FF72C
.incbin "palettes/gPaletteGroup_178.bin"
gPaletteGroup_180:: @ 080FF730
.incbin "palettes/gPaletteGroup_180.bin"
gPaletteGroup_181:: @ 080FF73C
.incbin "palettes/gPaletteGroup_181.bin"
gPaletteGroup_182:: @ 080FF744
.incbin "palettes/gPaletteGroup_182.bin"
gPaletteGroup_183:: @ 080FF750
.incbin "palettes/gPaletteGroup_183.bin"
gPaletteGroup_184:: @ 080FF75C
.incbin "palettes/gPaletteGroup_184.bin"
gPaletteGroup_185:: @ 080FF770
.incbin "palettes/gPaletteGroup_185.bin"
gPaletteGroup_186:: @ 080FF778
.incbin "palettes/gPaletteGroup_186.bin"
gPaletteGroup_187:: @ 080FF780
.incbin "palettes/gPaletteGroup_187.bin"
gPaletteGroup_188:: @ 080FF788
.incbin "palettes/gPaletteGroup_188.bin"
gPaletteGroup_189:: @ 080FF790
.incbin "palettes/gPaletteGroup_189.bin"
gPaletteGroup_190:: @ 080FF798
.incbin "palettes/gPaletteGroup_190.bin"
gPaletteGroup_191:: @ 080FF7A0
.incbin "palettes/gPaletteGroup_191.bin"
gPaletteGroup_192:: @ 080FF7A8
.incbin "palettes/gPaletteGroup_192.bin"
gPaletteGroup_193:: @ 080FF7B0
.incbin "palettes/gPaletteGroup_193.bin"
gPaletteGroup_194:: @ 080FF7B8
.incbin "palettes/gPaletteGroup_194.bin"
gPaletteGroup_195:: @ 080FF7C0
.incbin "palettes/gPaletteGroup_195.bin"
gPaletteGroup_196:: @ 080FF7C8
.incbin "palettes/gPaletteGroup_196.bin"
gPaletteGroup_197:: @ 080FF7D0
.incbin "palettes/gPaletteGroup_197.bin"
gPaletteGroup_198:: @ 080FF7D8
.incbin "palettes/gPaletteGroup_198.bin"
gPaletteGroup_199:: @ 080FF7E0
.incbin "palettes/gPaletteGroup_199.bin"
gPaletteGroup_200:: @ 080FF7E8
.incbin "palettes/gPaletteGroup_200.bin"
gPaletteGroup_201:: @ 080FF7F0
.incbin "palettes/gPaletteGroup_201.bin"
gPaletteGroup_202:: @ 080FF7F8
.incbin "palettes/gPaletteGroup_202.bin"
gPaletteGroup_203:: @ 080FF808
.incbin "palettes/gPaletteGroup_203.bin"
gPaletteGroup_204:: @ 080FF814
.incbin "palettes/gPaletteGroup_204.bin"
gPaletteGroup_205:: @ 080FF83C
.incbin "palettes/gPaletteGroup_205.bin"
gPaletteGroup_206:: @ 080FF844
.ifndef EU
.incbin "palettes/gPaletteGroup_206.bin"
.endif
gPaletteGroups:: @ 080FF850
.4byte 00000000
.4byte gPaletteGroup_0
.4byte gPaletteGroup_1
.4byte gPaletteGroup_2
.4byte gPaletteGroup_3
.4byte gPaletteGroup_4
.4byte gPaletteGroup_5
.4byte gPaletteGroup_6
.4byte gPaletteGroup_7
.4byte gPaletteGroup_8
.4byte gPaletteGroup_9
.4byte gPaletteGroup_10
.4byte gPaletteGroup_11
.4byte gPaletteGroup_12
.4byte gPaletteGroup_13
.4byte gPaletteGroup_14
.4byte gPaletteGroup_15
.4byte gPaletteGroup_16
.4byte gPaletteGroup_17
.4byte gPaletteGroup_18
.4byte gPaletteGroup_19
.4byte gPaletteGroup_20
.4byte gPaletteGroup_21
.4byte gPaletteGroup_22
.4byte gPaletteGroup_23
.4byte gPaletteGroup_24
.4byte gPaletteGroup_25
.4byte gPaletteGroup_26
.4byte gPaletteGroup_27
.4byte gPaletteGroup_28
.4byte gPaletteGroup_29
.4byte gPaletteGroup_30
.4byte gPaletteGroup_31
.4byte gPaletteGroup_32
.4byte gPaletteGroup_33
.4byte gPaletteGroup_34
.4byte gPaletteGroup_35
.4byte gPaletteGroup_36
.4byte gPaletteGroup_37
.4byte gPaletteGroup_38
.4byte gPaletteGroup_39
.4byte gPaletteGroup_40
.4byte gPaletteGroup_41
.4byte gPaletteGroup_42
.4byte gPaletteGroup_43
.4byte gPaletteGroup_44
.4byte gPaletteGroup_45
.4byte gPaletteGroup_46
.4byte gPaletteGroup_47
.4byte gPaletteGroup_48
.4byte gPaletteGroup_49
.4byte gPaletteGroup_50
.4byte gPaletteGroup_51
.4byte gPaletteGroup_52
.4byte gPaletteGroup_53
.4byte gPaletteGroup_54
.4byte gPaletteGroup_55
.4byte gPaletteGroup_56
.4byte gPaletteGroup_57
.4byte gPaletteGroup_58
.4byte gPaletteGroup_59
.4byte gPaletteGroup_60
.4byte gPaletteGroup_61
.4byte gPaletteGroup_62
.4byte gPaletteGroup_63
.4byte gPaletteGroup_64
.4byte gPaletteGroup_65
.4byte gPaletteGroup_66
.4byte gPaletteGroup_67
.4byte gPaletteGroup_68
.4byte gPaletteGroup_69
.4byte gPaletteGroup_70
.4byte gPaletteGroup_71
.4byte gPaletteGroup_72
.4byte gPaletteGroup_73
.4byte gPaletteGroup_74
.4byte gPaletteGroup_75
.4byte gPaletteGroup_76
.4byte gPaletteGroup_77
.4byte gPaletteGroup_78
.4byte gPaletteGroup_79
.4byte gPaletteGroup_80
.4byte gPaletteGroup_81
.4byte gPaletteGroup_82
.4byte gPaletteGroup_83
.4byte gPaletteGroup_84
.4byte gPaletteGroup_85
.4byte gPaletteGroup_86
.4byte gPaletteGroup_87
.4byte gPaletteGroup_88
.4byte gPaletteGroup_89
.4byte gPaletteGroup_90
.4byte gPaletteGroup_91
.4byte gPaletteGroup_92
.4byte gPaletteGroup_93
.4byte gPaletteGroup_94
.4byte gPaletteGroup_95
.4byte gPaletteGroup_96
.4byte gPaletteGroup_97
.4byte gPaletteGroup_98
.4byte gPaletteGroup_99
.4byte gPaletteGroup_100
.4byte gPaletteGroup_101
.4byte gPaletteGroup_102
.4byte gPaletteGroup_103
.4byte gPaletteGroup_104
.4byte gPaletteGroup_105
.4byte gPaletteGroup_106
.4byte gPaletteGroup_107
.4byte gPaletteGroup_108
.4byte gPaletteGroup_109
.4byte gPaletteGroup_110
.4byte gPaletteGroup_111
.4byte gPaletteGroup_112
.4byte gPaletteGroup_113
.4byte gPaletteGroup_114
.4byte gPaletteGroup_115
.4byte gPaletteGroup_116
.4byte gPaletteGroup_117
.4byte gPaletteGroup_118
.4byte gPaletteGroup_119
.4byte gPaletteGroup_120
.4byte gPaletteGroup_121
.4byte gPaletteGroup_122
.4byte gPaletteGroup_123
.4byte gPaletteGroup_124
.4byte gPaletteGroup_125
.4byte gPaletteGroup_126
.4byte gPaletteGroup_127
.4byte gPaletteGroup_128
.4byte gPaletteGroup_129
.4byte gPaletteGroup_130
.4byte gPaletteGroup_131
.4byte gPaletteGroup_132
.4byte gPaletteGroup_133
.4byte gPaletteGroup_134
.4byte gPaletteGroup_135
.4byte gPaletteGroup_136
.4byte gPaletteGroup_137
.4byte gPaletteGroup_138
.4byte gPaletteGroup_139
.4byte gPaletteGroup_140
.4byte gPaletteGroup_141
.4byte gPaletteGroup_142
.4byte gPaletteGroup_143
.4byte gPaletteGroup_144
.4byte gPaletteGroup_145
.4byte gPaletteGroup_146
.4byte gPaletteGroup_147
.4byte gPaletteGroup_148
.4byte gPaletteGroup_149
.4byte gPaletteGroup_150
.4byte gPaletteGroup_151
.4byte gPaletteGroup_152
.4byte gPaletteGroup_153
.4byte gPaletteGroup_154
.4byte gPaletteGroup_155
.4byte gPaletteGroup_156
.4byte gPaletteGroup_157
.4byte gPaletteGroup_158
.4byte gPaletteGroup_159
.4byte gPaletteGroup_160
.4byte gPaletteGroup_161
.4byte gPaletteGroup_162
.4byte gPaletteGroup_163
.4byte gPaletteGroup_164
.4byte gPaletteGroup_165
.4byte gPaletteGroup_166
.4byte gPaletteGroup_167
.4byte gPaletteGroup_168
.4byte gPaletteGroup_169
.4byte gPaletteGroup_170
.4byte gPaletteGroup_171
.4byte gPaletteGroup_172
.4byte gPaletteGroup_173
.4byte gPaletteGroup_174
.4byte gPaletteGroup_175
.4byte gPaletteGroup_176
.4byte gPaletteGroup_177
.4byte gPaletteGroup_178
.4byte gPaletteGroup_179
.4byte gPaletteGroup_180
.4byte gPaletteGroup_181
.4byte gPaletteGroup_182
.4byte gPaletteGroup_183
.4byte gPaletteGroup_184
.4byte gPaletteGroup_185
.4byte gPaletteGroup_186
.4byte gPaletteGroup_187
.4byte gPaletteGroup_188
.4byte gPaletteGroup_189
.4byte gPaletteGroup_190
.4byte gPaletteGroup_191
.4byte gPaletteGroup_192
.4byte gPaletteGroup_193
.4byte gPaletteGroup_194
.4byte gPaletteGroup_195
.4byte gPaletteGroup_196
.4byte gPaletteGroup_197
.4byte gPaletteGroup_198
.4byte gPaletteGroup_199
.4byte gPaletteGroup_200
.4byte gPaletteGroup_201
.4byte gPaletteGroup_202
.4byte gPaletteGroup_203
.4byte gPaletteGroup_204
.4byte gPaletteGroup_205
.ifndef EU
.4byte gPaletteGroup_206
.endif

View File

@ -3,25 +3,20 @@
.section .rodata
.align 2
@ gExtraFrameOffsets:: @ 089FB770
gExtraFrameOffsets:: @ 089FB770
.include "sprites/extraFrameOffsets.s"
@ .byte 00, 0x0d, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00
@ .ifdef EU
@ .incbin "sprite_table/gUnk_089FB780_EU.bin"
@ .else
@ .incbin "sprite_table/gUnk_089FB780_1_USA-JP-DEMO_USA-DEMO_JP.bin"
@ .endif
@ @ More sprites in demo_usa
@ .ifdef DEMO_USA
@ .incbin "sprite_table/gUnk_089FB780_2_DEMO_USA.bin"
@ gUnk_089FD1B4::
@ .incbin "sprite_table/gUnk_089FD1B4_DEMO_USA.bin"
@ gUnk_089FD2F4::
@ .incbin "sprite_table/gUnk_089FD2F4_DEMO_USA.bin"
@ gUnk_08A05751::
@ .incbin "sprite_table/gUnk_08A05751_DEMO_USA.bin"
@ gUnk_08A068BF::
@ .incbin "sprite_table/gUnk_08A068BF_DEMO_USA.bin"
@ .endif
.ifdef DEMO_USA
.incbin "sprite_table/gUnk_089FB780.bin"
gUnk_089FD1B4::
.incbin "sprite_table/gUnk_089FD1B4_DEMO_USA.bin"
gUnk_089FD2F4::
.incbin "sprite_table/gUnk_089FD2F4_DEMO_USA.bin"
gUnk_08A05751::
.incbin "sprite_table/gUnk_08A05751_DEMO_USA.bin"
gUnk_08A068BF::
.incbin "sprite_table/gUnk_08A068BF_DEMO_USA.bin"
.endif

View File

@ -7,7 +7,7 @@
gUnusedLabel_085BD620::
.incbin "graphics/intro/capcom.gbapal"
.incbin "graphics/intro/nintendo.gbapal"
.incbin "data_08132B30/gFigurinePal136_1.bin"
.incbin "data_08132B30/morePalettes.bin"
gUnk_085C4620:: @ 085C4620
.incbin "data_08132B30/gUnk_085C4620.bin"

View File

@ -7,11 +7,11 @@
gUnusedLabel_808C2280::
.incbin "graphics/intro/nintendo_capcom.4bpp"
.incbin "data_08132B30/gFigurineGfx136_1.bin" @ TODO rename
.incbin "figurines/gFigurineGfx136_1.bin" @ TODO rename
.ifdef EU
.incbin "data_08132B30/gFigurineGfx136_2_EU.bin"
.incbin "figurines/gFigurineGfx136_2_EU.bin"
.else
.incbin "data_08132B30/gFigurineGfx136_3_USA-JP-DEMO_USA-DEMO_JP.bin"
.incbin "figurines/gFigurineGfx136_3_USA-JP-DEMO_USA-DEMO_JP.bin"
.endif

View File

@ -996,7 +996,7 @@ void sub_0804235C(Entity* this) {
InitializeAnimation(((VaatiWrathHeapStruct*)this->myHeap)->type3, 0x1b);
}
#if defined USA || defined DEMO
#if defined USA || defined DEMO_USA || defined DEMO_JP
void VaatiWrathType0PreAction(Entity* this) {
int temp;
if ((gScreenTransition.field_0x38 & 2) == 0) {

View File

@ -1 +1,2 @@
!asset_extractor.py
!asset_extractor.py
!assets/*.py

View File

@ -2,10 +2,15 @@ from pathlib import Path
import os
import sys
import subprocess
import yaml
from distutils.util import strtobool
import json
from assets.palette_group import PaletteGroup
from assets.gfx_group import GfxGroup
from assets.fixed_type_gfx import FixedTypeGfx
from assets.frame_obj_lists import FrameObjLists
from assets.extra_frame_offsets import ExtraFrameOffsets
verbose = False
def extract_assets(variant, assets_folder):
@ -26,12 +31,12 @@ def extract_assets(variant, assets_folder):
baserom_path = map[variant]
with open(baserom_path, 'rb') as file:
baserom = bytearray(file.read())
config_modified = os.path.getmtime('assets.yaml')
json_modified = os.path.getmtime('assets.json')
if json_modified < config_modified:
print('Convert yaml to json...', flush=True)
subprocess.check_call('cat assets.yaml | yq . > assets.json', shell=True)
config_modified = os.path.getmtime('assets.json')
# json_modified = os.path.getmtime('assets.json')
# if json_modified < config_modified:
# print('Convert yaml to json...', flush=True)
# subprocess.check_call('cat assets.yaml | yq . > assets.json', shell=True)
with open('assets.json') as file:
current_offset = 0
@ -68,7 +73,7 @@ def extract_assets(variant, assets_folder):
if verbose:
print(f'{path} does not yet exist.')
extract_file = True
if extract_file:
if verbose:
@ -89,7 +94,7 @@ def extract_assets(variant, assets_folder):
if 'size' in asset: # The asset has a size and want to be extracted first.
size = asset['size'] # TODO can different sizes for the different variants ever occur?
with open(path, 'wb') as output:
output.write(baserom[start:start+size])
# If an asset has no size, the extraction tool reads the baserom iself.
@ -106,6 +111,24 @@ def extract_assets(variant, assets_folder):
extract_midi(path, baserom_path, start, options)
elif mode == 'aif':
extract_aif(path, options)
elif mode == 'palette_group':
palette_group = PaletteGroup(path, start, size, options)
palette_group.extract_binary(baserom)
elif mode == 'gfx_group':
gfx_group = GfxGroup(path, start, size, options)
gfx_group.extract_binary(baserom)
elif mode == 'fixed_type_gfx':
fixed_type_gfx = FixedTypeGfx(path, start, size, options)
fixed_type_gfx.extract_binary(baserom)
elif mode == 'frame_obj_lists':
frame_obj_lists = FrameObjLists(path, start, size, options)
frame_obj_lists.extract_binary(baserom)
elif mode == 'extra_frame_offsets':
extra_frame_offsets = ExtraFrameOffsets(path, start, size, options)
extra_frame_offsets.extract_binary(baserom)
elif mode != '':
print(f'Asset type {mode} not yet implemented')
@ -168,7 +191,7 @@ def extract_midi(path, baserom_path, start, options):
agb2mid_params.append('-t')
agb2mid_params.append(str(change['nominator']))
agb2mid_params.append(str(change['denominator']))
agb2mid_params.append(str(change['time']))
agb2mid_params.append(str(change['time']))
else:
agb2mid_params.append('-t')
agb2mid_params.append(str(changes['nominator']))

View File

@ -0,0 +1,51 @@
ROM_OFFSET = 0x8000000
class BaseAsset:
def __init__(self, path: str, addr: int, size: int, options: any) -> None:
self.path = path
self.addr = addr
self.size = size
self.options = options
def extract_binary(self, rom: bytearray) -> None:
pass
def convert(self) -> None:
pass
class Reader:
def __init__(self, data: bytearray) -> None:
self.data = data
self.cursor = 0
self.bitfield = 0
self.bitfield_remaining = 0
def read_u8(self) -> int:
val = self.data[self.cursor]
self.cursor += 1
return val
def read_s8(self) -> int:
val = self.data[self.cursor]
self.cursor += 1
if val > 127:
return val-256
else:
return val
def read_u16(self) -> int:
val = self.data[self.cursor:self.cursor+2]
self.cursor += 2
return int.from_bytes(val, 'little')
def read_s16(self) -> int:
val = self.read_u16()
if val > 32768:
return val - 65536
else:
return val
def read_u32(self) -> int:
val = self.data[self.cursor:self.cursor+4]
self.cursor += 4
return int.from_bytes(val, 'little')

View File

@ -0,0 +1,76 @@
from assets.base import BaseAsset, Reader
class ExtraFrameOffsets(BaseAsset):
def __init__(self, path: str, addr: int, size: int, options: any) -> None:
super().__init__(path, addr, size, options)
def extract_binary(self, rom: bytearray) -> None:
reader = Reader(rom[self.addr:self.addr+self.size])
first_level = []
second_level = []
lines = []
bytes = []
for i in range(0x10):
bytes.append(reader.read_u8())
lines.append('\t.byte ' + ', '.join(str(x) for x in bytes) + '\n')
lines.append('@ First level of offsets\n')
while True:
if reader.cursor in first_level:
#print(f'first_level up to: {reader.cursor}')
break
pointer = reader.read_u16()
first_level.append(pointer)
lines.append(f'\t.2byte {hex(pointer)}\n')
#print(first_level)
#print(first_level)
lines.append('\n@ Second level of offsets\n')
while True:
#print(reader.cursor)
#if reader.cursor >= 24372:
#print(f'>< second_level up to: {reader.cursor}')
#
# break
if reader.cursor >= 0xD00:
#print(f'second_level up to: {reader.cursor}')
break
pointer = reader.read_u8()
second_level.append(pointer)
lines.append(f'\t.byte {hex(pointer)}\n')
obj_lists = []
lines.append('\n@ Extra frame offsets\n')
while True:
#print('WH')
if (reader.cursor-0xD00)/4 not in second_level:
#print(f'{reader.cursor} not in second_level')
break
next = -1
for i in second_level:
if i > reader.cursor:
if next == -1 or i < next:
next = i
diff = next-reader.cursor
print(f'Skipping forward to {next} (+{diff})')
lines.append(f'@ Skipping {diff} bytes\n')
bytes = []
for i in range(diff):
bytes.append(reader.read_u8())
lines.append('\t.byte ' + ', '.join(str(x) for x in bytes) + '\n')
extra_x_off = reader.read_s8()
extra_y_off = reader.read_s8()
lines.append(f'\t.byte {extra_x_off}, {extra_y_off}\n')
extra_x_off = reader.read_s8()
extra_y_off = reader.read_s8()
lines.append(f'\t.byte {extra_x_off}, {extra_y_off}\n')
assert(self.path.endswith('.bin'))
path = self.path[0:-4] + '.s'
with open(path, 'w') as file:
file.writelines(lines)

View File

@ -0,0 +1,26 @@
from assets.base import BaseAsset, Reader
class FixedTypeGfx(BaseAsset):
def __init__(self, path: str, addr: int, size: int, options: any) -> None:
super().__init__(path, addr, size, options)
def extract_binary(self, rom: bytearray) -> None:
reader = Reader(rom[self.addr:self.addr+self.size])
lines = []
index = 0
while reader.cursor < self.size:
pointer = reader.read_u32()
gfx_data_ptr = pointer& 0x00FFFFFC
compressed = pointer& 0x00000001
maybe_size = ((pointer >> 0x10) & 0x7f00) >> 4
gfx_data_len = ((pointer & 0x7F000000)>>24) * 0x200
lines.append(f'\t.4byte {hex(gfx_data_ptr)} + {compressed} + {hex((gfx_data_len//0x200))}<<24 @{index}\n')
index += 1
assert(self.path.endswith('.bin'))
path = self.path[0:-4] + '.s'
with open(path, 'w') as file:
file.writelines(lines)

View File

@ -0,0 +1,101 @@
from assets.base import BaseAsset, Reader
class FrameObjLists(BaseAsset):
def __init__(self, path: str, addr: int, size: int, options: any) -> None:
super().__init__(path, addr, size, options)
def extract_binary(self, rom: bytearray) -> None:
reader = Reader(rom[self.addr:self.addr+self.size])
first_level = []
second_level = []
lines = []
lines.append('@ First level of offsets\n')
while True:
if reader.cursor in first_level:
#print(f'first_level up to: {reader.cursor}')
break
pointer = reader.read_u32()
first_level.append(pointer)
lines.append(f'\t.4byte {hex(pointer)}\n')
#print(first_level)
lines.append('\n@ Second level of offsets\n')
while True:
#print(reader.cursor)
#if reader.cursor >= 24372:
#print(f'>< second_level up to: {reader.cursor}')
#
# break
if reader.cursor in second_level:
#print(f'second_level up to: {reader.cursor}')
break
pointer = reader.read_u32()
second_level.append(pointer)
lines.append(f'\t.4byte {hex(pointer)}\n')
#print(second_level)
obj_lists = []
last_second_level = max(second_level)
lines.append('\n@ Frame obj lists\n')
while True:
if reader.cursor > last_second_level:
#print(f'No longer in second level: {reader.cursor}')
break
if reader.cursor not in second_level:
#print(f'{reader.cursor} not in second_level {num_objects}')
next = -1
for i in second_level:
if i > reader.cursor:
if next == -1 or i < next:
next = i
diff = next-reader.cursor
#print(f'Skipping forward to {next} (+{diff})')
lines.append(f'@ Skipping {diff} bytes\n')
bytes = []
for i in range(diff):
bytes.append(reader.read_u8())
lines.append('\t.byte ' + ', '.join(str(x) for x in bytes) + '\n')
num_objects = reader.read_u8()
lines.append(f'\t.byte {num_objects}\n')
if num_objects > 200:
#print(f'num_objects: {num_objects} @{reader.cursor}/{last_second_level}')
break
list = []
#print(num_objects)
for i in range(num_objects):
x_offset = reader.read_s8()
y_offset = reader.read_s8()
bitfield = reader.read_u8()
bitfield2 = reader.read_u16()
lines.append(f'\t.byte {x_offset}, {y_offset}, {hex(bitfield)}\n')
lines.append(f'\t.2byte {hex(bitfield2)}\n')
# bitfield
override_entity_palette_index = (bitfield & 0x01) != 0
# Bit 02 seems unused.
h_flip = (bitfield & 0x04) != 0
v_flip = (bitfield & 0x08) != 0
size = (bitfield & 0x30) >> 4
shape = (bitfield & 0xC0) >> 6
# bitfield2
first_gfx_tile_offset = bitfield2 & 0x03FF
priority = (bitfield2 & 0x0C00) >> 10
palette_index = (bitfield2 & 0xF000) >> 12
# print(x_offset, y_offset, bitfield, bitfield2)
# print(override_entity_palette_index, h_flip, v_flip, size, shape)
# print(first_gfx_tile_offset, priority, palette_index)
list.append({})
# print()
obj_lists.append(list)
#print(len(obj_lists))
assert(self.path.endswith('.bin'))
path = self.path[0:-4] + '.s'
with open(path, 'w') as file:
file.writelines(lines)

View File

@ -0,0 +1,31 @@
from assets.base import BaseAsset, Reader
class GfxGroup(BaseAsset):
def __init__(self, path: str, addr: int, size: int, options: any) -> None:
super().__init__(path, addr, size, options)
def extract_binary(self, rom: bytearray) -> None:
reader = Reader(rom[self.addr:self.addr+self.size])
gfx_index = 0
lines = []
while reader.cursor < self.size:
unk0 = reader.read_u32()
gfx_offset = unk0 & 0xFFFFFF
dest = reader.read_u32()
unk8 = reader.read_u32()
size = unk8 & 0xFFFFFF
terminator = unk0 & 0x80000000
compressed = unk8 & 0x80000000
uncompressed_size = size
lines.append(f'\t.4byte {hex(gfx_offset)}+{hex(terminator)}+{hex(unk0 & 0xF000000)}, {hex(dest)}, {hex(uncompressed_size)} + {hex(compressed)} @ {gfx_index}\n')
if not terminator:
break
gfx_index += 1
assert(self.path.endswith('.bin'))
path = self.path[0:-4] + '.s'
with open(path, 'w') as file:
file.writelines(lines)

View File

@ -0,0 +1,36 @@
from assets.base import ROM_OFFSET, BaseAsset, Reader
class PaletteGroup(BaseAsset):
def __init__(self, path: str, addr: int, size: int, options: any) -> None:
super().__init__(path, addr, size, options)
def extract_binary(self, rom: bytearray) -> None:
self.extract_palette_group(rom, self.addr, self.size)
#self.extract_palette_groups(rom)
def extract_palette_group(self, rom: bytearray, address: int, size: int) -> tuple[list[str], list[int]]:
lines: list[str] = []
palette_indices: list[int] = []
assert(self.path.endswith('.bin'))
path = self.path[0:-4] + '.s'
reader = Reader(rom[address:address+size])
continue_loading_palette_sets = True
while continue_loading_palette_sets:
global_palette_index = reader.read_u16()
palette_load_offset = reader.read_u8()
bitfield = reader.read_u8()
num_palettes = bitfield & 0x0F
if num_palettes == 0:
num_palettes = 0x10
continue_loading_palette_sets = (bitfield & 0x80 == 0x80)
lines.append(f'\t.2byte {global_palette_index} @ palette index\n')
lines.append(f'\t.byte {palette_load_offset} @ palette offset\n')
lines.append(f'\t.byte {num_palettes if num_palettes < 0x10 else 0} + {continue_loading_palette_sets*0x80} @ num_palettes, continue_loading\n\n')
for i in range(num_palettes):
palette_indices.append(global_palette_index + i)
with open(path, 'w') as file:
file.writelines(lines)