Discover menuinputs struct

This commit is contained in:
Ryan Dwyer
2020-09-27 17:49:45 +10:00
parent 29408301a8
commit 9d708a1c91
6 changed files with 132 additions and 143 deletions
+11 -11
View File
@@ -8,16 +8,16 @@ s32 func0f0e5ef8(s16 arg0, struct menuitem *item);
u32 func0f0e6038(void);
Gfx *func0f0e6298(Gfx *gdl, s16 x, s16 y, s16 x2, s16 y2);
Gfx *menuRenderItemList(Gfx *gdl);
bool menuTickItemList(struct menuitem *item, struct somemenuitemtickarg *arg1, u32 arg2, union menuitemtickdata *data);
bool menuTickItemList(struct menuitem *item, struct menuinputs *inputs, u32 arg2, union menuitemtickdata *data);
void menuInitItemDropdown(struct menuitem *item, union menuitemtickdata *data);
Gfx *menuRenderItemDropdown(Gfx *gdl);
bool menuTickItemDropdown(struct menuitem *item, struct menuframe *frame, struct somemenuitemtickarg *arg2, u32 arg3, union menuitemtickdata *data);
bool menuTickItemDropdown(struct menuitem *item, struct menuframe *frame, struct menuinputs *inputs, u32 arg3, union menuitemtickdata *data);
Gfx *func0f0e8290(Gfx *gdl, s16 x, s16 y, s16 x2, s16 y2, struct menuitem *item, u32 arg6, u32 arg7);
u32 func0f0e855c(void);
Gfx *menuRenderItemKeyboard(Gfx *gdl);
bool menuTickItemKeyboard(struct menuitem *item, struct somemenuitemtickarg *arg1, u32 arg2, union menuitemtickdata *data);
bool menuTickItemKeyboard(struct menuitem *item, struct menuinputs *inputs, u32 arg2, union menuitemtickdata *data);
void menuInitItemKeyboard(struct menuitem *item, union menuitemtickdata *data);
Gfx *menuRenderItemSeparator(Gfx *gdl, struct menurenderthing *thing);
@@ -32,21 +32,21 @@ Gfx *menuRenderItemLabel(Gfx *gdl, struct menurenderthing *thing);
Gfx *menuRenderItemMeter(Gfx *gdl, struct menurenderthing *thing);
Gfx *menuRenderItemSelectable(Gfx *gdl, struct menurenderthing *thing);
bool menuTickItemSelectable(struct menuitem *item, struct somemenuitemtickarg *arg1, u32 arg2);
bool menuTickItemSelectable(struct menuitem *item, struct menuinputs *inputs, u32 arg2);
Gfx *menuRenderItemSlider(Gfx *gdl);
bool menuTickItemSlider(struct menuitem *item, struct menuframe *frame, struct somemenuitemtickarg *arg2, u32 arg3, union menuitemtickdata *data);
bool menuTickItemSlider(struct menuitem *item, struct menuframe *frame, struct menuinputs *inputs, u32 arg3, union menuitemtickdata *data);
void menuInitItemSlider(union menuitemtickdata *data);
Gfx *menuRenderItemCarousel(Gfx *gdl, struct menurenderthing *thing);
bool menuTickItemCarousel(struct menuitem *item, struct somemenuitemtickarg *arg1, u32 arg2);
bool menuTickItemCarousel(struct menuitem *item, struct menuinputs *inputs, u32 arg2);
Gfx *menuRenderItemCheckbox(Gfx *gdl, struct menurenderthing *thing);
bool menuTickItemCheckbox(struct menuitem *item, struct somemenuitemtickarg *arg1, u32 arg2);
bool menuTickItemCheckbox(struct menuitem *item, struct menuinputs *inputs, u32 arg2);
char *menuItemScrollableGetText(u32 type);
Gfx *menuRenderItemScrollable(Gfx *gdl, struct menurenderthing *thing);
bool menuTickItemScrollable(struct menuitem *item, struct menuframe *frame, struct somemenuitemtickarg *arg2, u32 arg3, union menuitemtickdata *data);
bool menuTickItemScrollable(struct menuitem *item, struct menuframe *frame, struct menuinputs *inputs, u32 arg3, union menuitemtickdata *data);
void menuInitItemScrollable(union menuitemtickdata *data);
Gfx *menuRenderItemMarquee(Gfx *gdl, struct menurenderthing *thing);
@@ -56,11 +56,11 @@ void menuInitItemMarquee(union menuitemtickdata *data);
Gfx *menuRenderItem07(Gfx *gdl);
Gfx *menuRenderItemRanking(Gfx *gdl);
bool menuTickItemRanking(struct somemenuitemtickarg *arg0, u32 arg1, union menuitemtickdata *data);
bool menuTickItemRanking(struct menuinputs *inputs, u32 arg1, union menuitemtickdata *data);
void menuInitItemRanking(union menuitemtickdata *data);
Gfx *menuRenderItemPlayerStats(Gfx *gdl);
bool menuTickItemPlayerStats(struct menuitem *item, struct menuframe *frame, struct somemenuitemtickarg *arg2, u32 arg3, union menuitemtickdata *data);
bool menuTickItemPlayerStats(struct menuitem *item, struct menuframe *frame, struct menuinputs *inputs, u32 arg3, union menuitemtickdata *data);
Gfx *func0f0ef2fc(Gfx *gdl, s16 x, s16 y, s16 x2, s16 y2, struct menuitem *item, u32 arg6, u32 arg7);
void menuInitItemPlayerStats(struct menuitem *item, union menuitemtickdata *data);
@@ -74,7 +74,7 @@ Gfx *menuRenderItemController(Gfx *gdl, struct menurenderthing *thing);
void menuInitItemController(union menuitemtickdata *data);
Gfx *menuRenderItem(Gfx *gdl, struct menurenderthing *thing);
bool menuTickItem(struct menuitem *item, struct menuframe *frame, struct somemenuitemtickarg *arg2, u32 arg3, union menuitemtickdata *data);
bool menuTickItem(struct menuitem *item, struct menuframe *frame, struct menuinputs *inputs, u32 arg3, union menuitemtickdata *data);
void menuInitItem(struct menuitem *item, union menuitemtickdata *data);
Gfx *func0f0f0918(Gfx *gdl, s16 x, s16 y, s16 x2, s16 y2, struct menuitem *item, u32 arg6, u32 arg7);
+16 -27
View File
@@ -3265,7 +3265,7 @@ struct menuitemtickdata_dropdown {
u16 unk06;
u16 unk08;
u16 unk0a;
s16 unk0c;
s16 scrolloffset;
u16 unk0e;
};
@@ -3285,7 +3285,7 @@ struct menuitemtickdata_marquee {
};
struct menuitemtickdata_ranking {
s16 unk00;
s16 scrolloffset;
};
struct menuitemtickdata_scrollable {
@@ -3363,7 +3363,7 @@ struct handlerdata_dialog1 {
};
struct handlerdata_dialog2 {
struct menuthing *ptr;
struct menuinputs *inputs;
};
union handlerdata {
@@ -3595,7 +3595,7 @@ struct menuframe {
u8 unk05;
u16 unk06;
struct menuitem *focuseditem;
/*0x0c*/ bool unk0c;
/*0x0c*/ bool dimmed; // when dropdown is open or slider is active
/*0x10*/ u32 unk10;
/*0x14*/ s32 unk14;
/*0x18*/ u32 unk18;
@@ -6099,16 +6099,18 @@ struct var800a4cf0 {
struct var800a4d00 unk10[250];
};
// Suspected to be a representation of controller inputs
struct menuthing {
u8 unk00;
u8 unk01;
u8 forward;
u8 back;
u32 unk04;
u8 unk08;
u8 unk09;
s8 start;
struct menuinputs {
/*0x00*/ s8 leftright; // Both control stick and C/D buttons - set on initial press and key repeat
/*0x01*/ u8 unk01;
/*0x02*/ u8 select; // A button
/*0x03*/ u8 back; // B button
/*0x04*/ s8 xaxis; // Control stick's current left/right position
/*0x05*/ s8 yaxis; // Control stick's current up/down position
/*0x06*/ u8 shoulder; // L or R buttons
/*0x07*/ u8 unk07;
/*0x08*/ s8 unk08;
/*0x09*/ s8 unk09;
/*0x0a*/ s8 start;
};
struct mpconfigsim {
@@ -6915,17 +6917,4 @@ struct var800a45d0 {
/*0x5c*/ u32 colour2;
};
struct somemenuitemtickarg {
/*0x00*/ s8 unk00;
/*0x01*/ u8 unk01;
/*0x02*/ u8 unk02;
/*0x03*/ u8 unk03;
/*0x04*/ s8 unk04;
/*0x05*/ s8 unk05;
/*0x06*/ u8 unk06;
/*0x07*/ u8 unk07;
/*0x08*/ s8 unk08;
/*0x09*/ s8 unk09;
};
#endif