diff options
| author | engineer124 <engineer124engineer124@gmail.com> | 2022-05-23 18:39:26 +1000 |
|---|---|---|
| committer | engineer124 <engineer124engineer124@gmail.com> | 2022-05-23 18:39:26 +1000 |
| commit | c9c932a5fe3d6f6a238fdb70ab5217a37b2fdddb (patch) | |
| tree | 0bb61fb59b1f35acbd589cdc167ebd7854d5f915 /src/code | |
| parent | 1e5043b940e7b7eac05ec8050610570d4f42ea92 (diff) | |
More docs
Diffstat (limited to 'src/code')
| -rw-r--r-- | src/code/z_message.c | 4 | ||||
| -rw-r--r-- | src/code/z_parameter.c | 25 |
2 files changed, 19 insertions, 10 deletions
diff --git a/src/code/z_message.c b/src/code/z_message.c index 68634e1a3..784c97977 100644 --- a/src/code/z_message.c +++ b/src/code/z_message.c @@ -343,9 +343,9 @@ void func_80151938(GlobalContext* globalCtx, u16 textId) { if (interfaceCtx->unk_222 == 0) { if (textId != 0x1B93) { - Interface_SetDoAction(globalCtx, 0x10); + Interface_SetDoAction(globalCtx, DO_ACTION_NEXT); } else if (textId != 0xF8) { - Interface_SetDoAction(globalCtx, 6); + Interface_SetDoAction(globalCtx, DO_ACTION_DECIDE); } } msgCtx->unk1203C = msgCtx->unk1203A; diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c index 8f38dd618..3d47f35e8 100644 --- a/src/code/z_parameter.c +++ b/src/code/z_parameter.c @@ -13,6 +13,11 @@ void func_801663C4(u8* arg0, u8* arg1, u32 arg2); extern Gfx D_0E0001C8[]; // Display List extern Gfx D_0E0002E0[]; // Display List +// TODO extract this information from the texture definitions themselves +#define DO_ACTION_TEX_WIDTH 48 +#define DO_ACTION_TEX_HEIGHT 16 +#define DO_ACTION_TEX_SIZE ((DO_ACTION_TEX_WIDTH * DO_ACTION_TEX_HEIGHT) / 2) // (sizeof(gCheckDoActionENGTex)) + typedef struct { /* 0x00 */ u8 scene; /* 0x01 */ u8 flags1; @@ -2981,9 +2986,10 @@ void Interface_LoadActionLabel(InterfaceContext* interfaceCtx, u16 action, s16 l if (action != DO_ACTION_NONE) { osCreateMesgQueue(&interfaceCtx->loadQueue, &interfaceCtx->loadMsg, 1); - DmaMgr_SendRequestImpl(&interfaceCtx->dmaRequest_184, (u32)interfaceCtx->doActionSegment + (loadOffset * 0x180), - (u32)SEGMENT_ROM_START(do_action_static) + (action * 0x180), 0x180, 0, - &interfaceCtx->loadQueue, 0); + DmaMgr_SendRequestImpl(&interfaceCtx->dmaRequest_184, + (u32)interfaceCtx->doActionSegment + (loadOffset * DO_ACTION_TEX_SIZE), + (u32)SEGMENT_ROM_START(do_action_static) + (action * DO_ACTION_TEX_SIZE), + DO_ACTION_TEX_SIZE, 0, &interfaceCtx->loadQueue, 0); osRecvMesg(&interfaceCtx->loadQueue, NULL, OS_MESG_BLOCK); return; } @@ -3708,9 +3714,9 @@ void Interface_DrawItemButtons(GlobalContext* globalCtx) { gDPSetEnvColor(OVERLAY_DISP++, 0, 0, 0, 0); gDPSetCombineLERP(OVERLAY_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0); - gDPLoadTextureBlock_4b(OVERLAY_DISP++, interfaceCtx->doActionSegment + 0x300, G_IM_FMT_IA, 48, 16, 0, - G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, - G_TX_NOLOD, G_TX_NOLOD); + gDPLoadTextureBlock_4b(OVERLAY_DISP++, interfaceCtx->doActionSegment + DO_ACTION_TEX_SIZE * 2, G_IM_FMT_IA, + DO_ACTION_TEX_WIDTH, DO_ACTION_TEX_HEIGHT, 0, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD); gSPTextureRectangle(OVERLAY_DISP++, 0x01F8, 0x0054, 0x02D4, 0x009C, G_TX_RENDERTILE, 0, 0, 0x04A6, 0x04A6); } } @@ -4028,10 +4034,13 @@ void func_80118BA4(GlobalContext* globalCtx) { gSPMatrix(OVERLAY_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPVertex(OVERLAY_DISP++, &interfaceCtx->actionVtx[8], 4, 0); + // Draw Action Label if (((interfaceCtx->unk_210 < 2) || (interfaceCtx->unk_210 == 3))) { - OVERLAY_DISP = func_8010DE38(OVERLAY_DISP, interfaceCtx->doActionSegment, 3, 0x30, 0x10, 0); + OVERLAY_DISP = + func_8010DE38(OVERLAY_DISP, interfaceCtx->doActionSegment, 3, DO_ACTION_TEX_WIDTH, DO_ACTION_TEX_HEIGHT, 0); } else { - OVERLAY_DISP = func_8010DE38(OVERLAY_DISP, interfaceCtx->doActionSegment + 0x180, 3, 0x30, 0x10, 0); + OVERLAY_DISP = func_8010DE38(OVERLAY_DISP, interfaceCtx->doActionSegment + DO_ACTION_TEX_SIZE, 3, + DO_ACTION_TEX_WIDTH, DO_ACTION_TEX_HEIGHT, 0); } CLOSE_DISPS(globalCtx->state.gfxCtx); |
