decompile pokenav_unk_4 rodata

This commit is contained in:
garak 2019-07-19 19:36:17 -04:00
parent c400d1dc7f
commit 690a0c4390
4 changed files with 187 additions and 114 deletions

View File

@ -3,103 +3,6 @@
.section .rodata
// pokenav_unk_4.s
gUnknown_08622510:: @ 8622510
.incbin "graphics/pokenav/ui_matchcall.gbapal"
gUnknown_08622530:: @ 8622530
.incbin "graphics/pokenav/ui_matchcall.4bpp.lz"
gUnknown_086225D4:: @ 86225D4
.incbin "graphics/pokenav/ui_matchcall.bin.lz"
gUnknown_08622698:: @ 8622698
.incbin "graphics/pokenav/arrow2.gbapal"
gUnknown_086226B8:: @ 86226B8
.incbin "graphics/pokenav/arrow2.4bpp.lz"
gUnknown_086226E0:: @ 86226E0
.incbin "graphics/pokenav/86226E0.gbapal"
gUnknown_08622700:: @ 8622700
.incbin "graphics/pokenav/8622700.gbapal"
gUnknown_08622720:: @ 8622720
.incbin "graphics/pokenav/pokeball_matchcall.gbapal"
gUnknown_08622760:: @ 8622760
.incbin "graphics/pokenav/pokeball_matchcall.4bpp.lz"
gUnknown_0862278C:: @ 862278C
.4byte 0x11FD
.4byte 0x20206A
gUnknown_08622794:: @ 8622794
.4byte 0x00003077
gUnknown_08622798:: @ 8622798
.4byte NULL
.4byte sub_81CB510
.4byte sub_81CB588
.4byte sub_81CB600
.4byte sub_81CB678
.4byte sub_81CB6F0
.4byte sub_81CB734
.4byte sub_81CB75C
.4byte sub_81CB7A0
.4byte sub_81CB824
.4byte sub_81CB888
.4byte sub_81CB93C
.4byte sub_81CBAD4
.4byte sub_81CB9C8
.4byte sub_81CBA68
.4byte sub_81CBB74
gUnknown_086227D8:: @ 86227D8
window_template 2, 0, 5, 11, 2, 2, 16
gUnknown_086227E0:: @ 86227E0
window_template 2, 0, 9, 11, 8, 2, 0x26
gUnknown_086227E8:: @ 86227E8
.4byte gUnknown_085EC017
.4byte gUnknown_085EC01C
.4byte gUnknown_085EC022
gUnknown_086227F4:: @ 86227F4
.string "·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·\p"
.string "$"
.align 2
gUnknown_08622808:: @ 8622808
window_template 1, 1, 12, 0x1C, 4, 1, 10
gUnknown_08622810:: @ 8622810
obj_tiles gUnknown_086226B8, 0x40, 7
gUnknown_08622818:: @ 8622818
obj_pal gUnknown_08622698, 12
null_obj_pal
gUnknown_08622828:: @ 8622828
.2byte 0x8000
.2byte 0x0
.2byte 0x400
.2byte 0x0
gUnknown_08622830:: @ 8622830
spr_template 7, 12, gUnknown_08622828, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81CC34C
gUnknown_08622848:: @ 8622848
.2byte 0x0
.2byte 0xC000
.2byte 0x400
.2byte 0x0
gUnknown_08622850:: @ 8622850
spr_template 8, 13, gUnknown_08622848, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
// pokenav_unk_5.s
gUnknown_08622868:: @ 8622868
.incbin "graphics/pokenav/8622868.gbapal"

View File

@ -2739,4 +2739,9 @@ extern const u8 gUnknown_085EBE19[];
extern const u8 gUnknown_085EBE2D[];
extern const u8 gUnknown_085EBE41[];
// pokenav_unk_4
extern const u8 gUnknown_085EC017[];
extern const u8 gUnknown_085EC01C[];
extern const u8 gUnknown_085EC022[];
#endif // GUARD_STRINGS_H

View File

@ -645,6 +645,7 @@ SECTIONS {
src/pokenav_unk_1.o(.rodata);
src/pokenav_unk_2.o(.rodata);
src/pokenav_unk_3.o(.rodata);
src/pokenav_unk_4.o(.rodata);
data/pokenav.o(.rodata);
src/pokenav_unk_10.o(.rodata);
src/pokenav_match_call_data.o(.rodata);

View File

@ -93,27 +93,191 @@ static void sub_81CC330(struct Pokenav4Struct *);
static struct Sprite *sub_81CC370(void);
static void sub_81CC440(struct Sprite *sprite);
static void sub_81CC4A4(struct Sprite *sprite);
void sub_81CC34C(struct Sprite *sprite);
u32 sub_81CB510(int);
u32 sub_81CB588(int);
u32 sub_81CB600(int);
u32 sub_81CB678(int);
u32 sub_81CB6F0(int);
u32 sub_81CB734(int);
u32 sub_81CB75C(int);
u32 sub_81CB7A0(int);
u32 sub_81CB824(int);
u32 sub_81CB888(int);
u32 sub_81CB93C(int);
u32 sub_81CBAD4(int);
u32 sub_81CB9C8(int);
u32 sub_81CBA68(int);
u32 sub_81CBB74(int);
extern const LoopedTask gUnknown_08622798[];
extern const struct BgTemplate gUnknown_0862278C[3];
extern const u16 gUnknown_08622510[];
extern const u32 gUnknown_08622530[];
extern const u32 gUnknown_08622760[];
extern const u16 gUnknown_08622700[];
extern const u16 gUnknown_08622720[];
extern const u8 gUnknown_086225D4[];
extern const u16 gUnknown_086226E0[];
extern const struct BgTemplate gUnknown_08622794;
extern const struct WindowTemplate gUnknown_086227D8;
extern const struct WindowTemplate gUnknown_086227E0;
extern const u8 *const gUnknown_086227E8[];
extern const struct WindowTemplate gUnknown_08622808;
extern const u8 gUnknown_086227F4[];
extern const struct CompressedSpriteSheet gUnknown_08622810[1];
extern const struct SpritePalette gUnknown_08622818[];
extern const struct SpriteTemplate gUnknown_08622830;
extern const struct SpriteTemplate gUnknown_08622850;
const u16 gUnknown_08622510[] = INCBIN_U16("graphics/pokenav/ui_matchcall.gbapal");
const u32 gUnknown_08622530[] = INCBIN_U32("graphics/pokenav/ui_matchcall.4bpp.lz");
const u32 gUnknown_086225D4[] = INCBIN_U32("graphics/pokenav/ui_matchcall.bin.lz");
const u16 gUnknown_08622698[] = INCBIN_U16("graphics/pokenav/arrow2.gbapal");
const u32 gUnknown_086226B8[] = INCBIN_U32("graphics/pokenav/arrow2.4bpp.lz");
const u16 gUnknown_086226E0[] = INCBIN_U16("graphics/pokenav/86226E0.gbapal");
const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/8622700.gbapal");
const u16 gUnknown_08622720[] = INCBIN_U16("graphics/pokenav/pokeball_matchcall.gbapal");
const u32 gUnknown_08622760[] = INCBIN_U32("graphics/pokenav/pokeball_matchcall.4bpp.lz");
const struct BgTemplate gUnknown_0862278C[3] =
{
{
.bg = 1,
.charBaseIndex = 3,
.mapBaseIndex = 0x1F,
.screenSize = 0,
.paletteMode = 0,
.priority = 1,
.baseTile = 0
},
{
.bg = 2,
.charBaseIndex = 2,
.mapBaseIndex = 0x06,
.screenSize = 0,
.paletteMode = 0,
.priority = 2,
.baseTile = 0x80
},
{
.bg = 3,
.charBaseIndex = 1,
.mapBaseIndex = 0x07,
.screenSize = 0,
.paletteMode = 0,
.priority = 3,
.baseTile = 0
}
};
const LoopedTask gUnknown_08622798[] =
{
NULL,
sub_81CB510,
sub_81CB588,
sub_81CB600,
sub_81CB678,
sub_81CB6F0,
sub_81CB734,
sub_81CB75C,
sub_81CB7A0,
sub_81CB824,
sub_81CB888,
sub_81CB93C,
sub_81CBAD4,
sub_81CB9C8,
sub_81CBA68,
sub_81CBB74
};
const struct WindowTemplate gUnknown_086227D8 =
{
.bg = 2,
.tilemapLeft = 0,
.tilemapTop = 5,
.width = 11,
.height = 2,
.paletteNum = 2,
.baseBlock = 16
};
const struct WindowTemplate gUnknown_086227E0 =
{
.bg = 2,
.tilemapLeft = 0,
.tilemapTop = 9,
.width = 11,
.height = 8,
.paletteNum = 2,
.baseBlock = 38
};
const u8 *const gUnknown_086227E8[] =
{
gUnknown_085EC017,
gUnknown_085EC01C,
gUnknown_085EC022
};
const u8 gUnknown_086227F4[] = _("·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·\p");
const struct WindowTemplate gUnknown_08622808 =
{
.bg = 1,
.tilemapLeft = 1,
.tilemapTop = 12,
.width = 0x1C,
.height = 0x04,
.paletteNum = 1,
.baseBlock = 10
};
const struct CompressedSpriteSheet gUnknown_08622810[1] =
{
{gUnknown_086226B8, 0x40, 7}
};
const struct SpritePalette gUnknown_08622818[] =
{
{gUnknown_08622698, 12},
{}
};
const struct OamData gUnknown_08622828 =
{
.y = 0,
.affineMode = 0,
.objMode = 0,
.bpp = 0,
.shape = 2,//SPRITE_SHAPE(32x16),
.x = 0,
.size = 0,//SPRITE_SIZE(32x16),
.tileNum = 0,
.priority = 1,
.paletteNum = 0,
};
const struct SpriteTemplate gUnknown_08622830 =
{
.tileTag = 7,
.paletteTag = 12,
.oam = &gUnknown_08622828,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81CC34C,
};
const struct OamData gUnknown_08622848 =
{
.y = 0,
.affineMode = 0,
.objMode = 0,
.bpp = 0,
.shape = 0,//SPRITE_SHAPE(32x16),
.x = 0,
.size = 3,//SPRITE_SIZE(32x16),
.tileNum = 0,
.priority = 1,
.paletteNum = 0,
};
const struct SpriteTemplate gUnknown_08622850 =
{
.tileTag = 8,
.paletteTag = 13,
.oam = &gUnknown_08622848,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCallbackDummy,
};
bool32 sub_81CB260(void)
{
struct Pokenav4Struct *state = AllocSubstruct(6, sizeof(struct Pokenav4Struct));
@ -718,7 +882,7 @@ static void sub_81CBBB8(void)
template.unkE = 7;
template.unk10 = sub_81CB050;
template.unk14 = sub_81CBCEC;
sub_81C81D4(&gUnknown_08622794, &template, 2);
sub_81C81D4(&gUnknown_0862278C[2], &template, 2);
CreateTask(sub_81CBC64, 7);
}