introduce parameter_static wip

This commit is contained in:
engineer124
2021-12-25 19:57:55 +11:00
parent b0863fc11f
commit c5ea34672d
25 changed files with 252 additions and 94 deletions
+133
View File
@@ -0,0 +1,133 @@
<Root>
<File Name="parameter_static" Segment="2">
<Texture Name="gHeartEmptyTex" OutName="heart_empty" Format="ia8" Width="16" Height="16" Offset="0x0"/>
<Texture Name="gHeartQuarterTex" OutName="heart_quarter" Format="ia8" Width="16" Height="16" Offset="0x100"/>
<Texture Name="gHeartHalfTex" OutName="heart_half" Format="ia8" Width="16" Height="16" Offset="0x200"/>
<Texture Name="gHeartThreeQuarterTex" OutName="heart_three_quarter" Format="ia8" Width="16" Height="16" Offset="0x300"/>
<Texture Name="gHeartFullTex" OutName="heart_full" Format="ia8" Width="16" Height="16" Offset="0x400"/>
<Texture Name="gDefenseHeartEmptyTex" OutName="defense_heart_empty" Format="ia8" Width="16" Height="16" Offset="0x500"/>
<Texture Name="gDefenseHeartQuarterTex" OutName="defense_heart_quarter" Format="ia8" Width="16" Height="16" Offset="0x600"/>
<Texture Name="gDefenseHeartHalfTex" OutName="defense_heart_half" Format="ia8" Width="16" Height="16" Offset="0x700"/>
<Texture Name="gDefenseHeartThreeQuarterTex" OutName="defense_heart_three_quarter" Format="ia8" Width="16" Height="16" Offset="0x800"/>
<Texture Name="gDefenseHeartFullTex" OutName="defense_heart_full" Format="ia8" Width="16" Height="16" Offset="0x900"/>
<Texture Name="gFishermanMinigameTorchIconTex" OutName="fisherman_minigame_torch_icon" Format="ia8" Width="16" Height="30" Offset="0xA00"/>
<Texture Name="gSwordTrainingLogIconTex" OutName="sword_training_log_icon" Format="ia8" Width="24" Height="16" Offset="0xBE0"/>
<Texture Name="gSmallKeyCounterIconTex" OutName="small_key_counter_icon" Format="ia8" Width="16" Height="16" Offset="0xD60"/>
<Texture Name="gRupeeCounterIconTex" OutName="rupee_counter_icon" Format="ia8" Width="16" Height="16" Offset="0xE60"/>
<Texture Name="gButtonBackgroundTex" OutName="button_background" Format="ia8" Width="32" Height="32" Offset="0xF60"/>
<Texture Name="gEquippedItemOutlineTex" OutName="equipped_item_outline" Format="ia8" Width="32" Height="32" Offset="0x1360"/>
<Texture Name="gEmptyCLeftArrowTex" OutName="empty_c_left_arrow" Format="ia8" Width="32" Height="32" Offset="0x1760"/>
<Texture Name="gEmptyCDownArrowTex" OutName="empty_c_down_arrow" Format="ia8" Width="32" Height="32" Offset="0x1B60"/>
<Texture Name="gEmptyCRightArrowTex" OutName="empty_c_right_arrow" Format="ia8" Width="32" Height="32" Offset="0x1F60"/>
<Texture Name="gClockIconTex" OutName="clock_icon" Format="ia8" Width="16" Height="16" Offset="0x2360"/>
<Texture Name="gMapBossIconTex" OutName="map_boss_icon" Format="ia8" Width="8" Height="8" Offset="0x2460"/>
<Texture Name="gOcarinaATex" OutName="ocarina_a" Format="ia8" Width="16" Height="16" Offset="0x24A0"/>
<Texture Name="gOcarinaCDownTex" OutName="ocarina_c_down" Format="ia8" Width="16" Height="16" Offset="0x25A0"/>
<Texture Name="gOcarinaCRightTex" OutName="ocarina_c_right" Format="ia8" Width="16" Height="16" Offset="0x26A0"/>
<Texture Name="gOcarinaCLeftTex" OutName="ocarina_c_left" Format="ia8" Width="16" Height="16" Offset="0x27A0"/>
<Texture Name="gOcarinaCUpTex" OutName="ocarina_c_up" Format="ia8" Width="16" Height="16" Offset="0x28A0"/>
<Texture Name="gOcarinaTrebleClefTex" OutName="ocarina_treble_clef" Format="i4" Width="16" Height="32" Offset="0x29A0"/>
<Texture Name="gSceneTitleCardGradientTex" OutName="scene_title_card_gradient" Format="i8" Width="64" Height="1" Offset="0x2AA0"/>
<Texture Name="gTatlCUpENGTex" OutName="tatl_c_up_eng" Format="ia4" Width="32" Height="12" Offset="0x2AE0"/>
<Texture Name="gTatlCUpGERTex" OutName="tatl_c_up_ger" Format="ia4" Width="32" Height="12" Offset="0x2BA0"/>
<Texture Name="gTatlCUpFRATex" OutName="tatl_c_up_fra" Format="ia4" Width="32" Height="12" Offset="0x2C60"/>
<Texture Name="gTatlCUpESPTex" OutName="tatl_c_up_esp" Format="ia4" Width="32" Height="12" Offset="0x2D20"/>
<Texture Name="gCarrotIconTex" OutName="carrot_icon" Format="rgba32" Width="16" Height="16" Offset="0x2DE0"/>
<Texture Name="gGoldSkulltulaCounterIconTex" OutName="gold_skulltula_counter_icon" Format="rgba32" Width="24" Height="18" Offset="0x31E0"/>
<Texture Name="gBeaverRingIconTex" OutName="beaver_ring_icon" Format="rgba32" Width="24" Height="16" Offset="0x38A0"/>
<Texture Name="gMapDungeonEntranceIconTex" OutName="map_dungeon_entrance_icon" Format="rgba16" Width="8" Height="8" Offset="0x3EA0"/>
<Texture Name="gMapChestIconTex" OutName="map_chest_icon" Format="rgba16" Width="8" Height="8" Offset="0x3F20"/>
<Texture Name="gArcheryScoreIconTex" OutName="archery_score_icon" Format="rgba16" Width="24" Height="16" Offset="0x3FA0"/>
<Texture Name="gPictoBoxFocusIconTex" OutName="picto_box_focus_icon" Format="i4" Width="32" Height="16" Offset="0x42A0"/>
<Texture Name="gPictoBoxFocusBorderTex" OutName="picto_box_focus_border" Format="ia4" Width="16" Height="16" Offset="0x43A0"/>
<Texture Name="gPictoBoxFocusTextTex" OutName="picto_box_focus_text" Format="i4" Width="32" Height="8" Offset="0x4420"/>
<Texture Name="gCounterDigit0Tex" OutName="counter_digit_0" Format="i8" Width="8" Height="16" Offset="0x44A0"/>
<Texture Name="gCounterDigit1Tex" OutName="counter_digit_1" Format="i8" Width="8" Height="16" Offset="0x4520"/>
<Texture Name="gCounterDigit2Tex" OutName="counter_digit_2" Format="i8" Width="8" Height="16" Offset="0x45A0"/>
<Texture Name="gCounterDigit3Tex" OutName="counter_digit_3" Format="i8" Width="8" Height="16" Offset="0x4620"/>
<Texture Name="gCounterDigit4Tex" OutName="counter_digit_4" Format="i8" Width="8" Height="16" Offset="0x46A0"/>
<Texture Name="gCounterDigit5Tex" OutName="counter_digit_5" Format="i8" Width="8" Height="16" Offset="0x4720"/>
<Texture Name="gCounterDigit6Tex" OutName="counter_digit_6" Format="i8" Width="8" Height="16" Offset="0x47A0"/>
<Texture Name="gCounterDigit7Tex" OutName="counter_digit_7" Format="i8" Width="8" Height="16" Offset="0x4820"/>
<Texture Name="gCounterDigit8Tex" OutName="counter_digit_8" Format="i8" Width="8" Height="16" Offset="0x48A0"/>
<Texture Name="gCounterDigit9Tex" OutName="counter_digit_9" Format="i8" Width="8" Height="16" Offset="0x4920"/>
<Texture Name="gCounterColonTex" OutName="counter_colon" Format="i8" Width="8" Height="16" Offset="0x49A0"/>
<Texture Name="gStrayFairyMapCounterSlashTex" OutName="stray_fairy_map_counter_slash" Format="i8" Width="8" Height="16" Offset="0x4A20"/>
<Texture Name="gAmmoDigit0Tex" OutName="ammo_digit_0" Format="ia8" Width="8" Height="8" Offset="0x4AA0"/>
<Texture Name="gAmmoDigit1Tex" OutName="ammo_digit_1" Format="ia8" Width="8" Height="8" Offset="0x4AE0"/>
<Texture Name="gAmmoDigit2Tex" OutName="ammo_digit_2" Format="ia8" Width="8" Height="8" Offset="0x4B20"/>
<Texture Name="gAmmoDigit3Tex" OutName="ammo_digit_3" Format="ia8" Width="8" Height="8" Offset="0x4B60"/>
<Texture Name="gAmmoDigit4Tex" OutName="ammo_digit_4" Format="ia8" Width="8" Height="8" Offset="0x4BA0"/>
<Texture Name="gAmmoDigit5Tex" OutName="ammo_digit_5" Format="ia8" Width="8" Height="8" Offset="0x4BE0"/>
<Texture Name="gAmmoDigit6Tex" OutName="ammo_digit_6" Format="ia8" Width="8" Height="8" Offset="0x4C20"/>
<Texture Name="gAmmoDigit7Tex" OutName="ammo_digit_7" Format="ia8" Width="8" Height="8" Offset="0x4C60"/>
<Texture Name="gAmmoDigit8Tex" OutName="ammo_digit_8" Format="ia8" Width="8" Height="8" Offset="0x4CA0"/>
<Texture Name="gAmmoDigit9Tex" OutName="ammo_digit_9" Format="ia8" Width="8" Height="8" Offset="0x4CE0"/>
<Texture Name="gAmmoDigitHalfTex" OutName="ammo_digit_half" Format="ia8" Width="16" Height="8" Offset="0x4D20"/>
<Texture Name="gMagicBarEndTex" OutName="magic_bar_end" Format="ia8" Width="8" Height="16" Offset="0x4DA0"/>
<Texture Name="gMagicBarMidTex" OutName="magic_bar_mid" Format="ia8" Width="24" Height="16" Offset="0x4E20"/>
<Texture Name="gMagicBarFillTex" OutName="magic_bar_fill" Format="ia8" Width="8" Height="8" Offset="0x4FA0"/>
<Texture Name="gThreeDayTimerDiamondTex" OutName="three_day_timer_diamond" Format="ia8" Width="40" Height="32" Offset="0x4FE0"/>
<Texture Name="gThreeDayTimerMoonHourTex" OutName="three_day_timer_moon_hour" Format="ia8" Width="24" Height="24" Offset="0x54E0"/>
<Texture Name="gThreeDayTimerSunHourTex" OutName="three_day_timer_sun_hour" Format="ia8" Width="24" Height="24" Offset="0x5720"/>
<!-- May be Height="48" vs. Height="50" -->
<Texture Name="gThreeDayTimerDialBoarderTex" OutName="three_day_timer_dial_boarder" Format="i4" Width="64" Height="48" Offset="0x5960"/>
<Texture Name="gThreeDayTimerHourLinesTex" OutName="three_day_timer_hour_lines" Format="i4" Width="64" Height="35" Offset="0x5F60"/>
<Texture Name="gThreeDayTimerStarMinuteTex" OutName="three_day_timer_star_minute" Format="i4" Width="16" Height="16" Offset="0x63C0"/>
<Texture Name="gThreeDayTimerHour12Tex" OutName="three_day_timer_hour_12" Format="i4" Width="16" Height="11" Offset="0x6440"/>
<Texture Name="gThreeDayTimerHour1Tex" OutName="three_day_timer_hour_1" Format="i4" Width="16" Height="11" Offset="0x6498"/>
<Texture Name="gThreeDayTimerHour2Tex" OutName="three_day_timer_hour_2" Format="i4" Width="16" Height="11" Offset="0x64F0"/>
<Texture Name="gThreeDayTimerHour3Tex" OutName="three_day_timer_hour_3" Format="i4" Width="16" Height="11" Offset="0x6548"/>
<Texture Name="gThreeDayTimerHour4Tex" OutName="three_day_timer_hour_4" Format="i4" Width="16" Height="11" Offset="0x65A0"/>
<Texture Name="gThreeDayTimerHour5Tex" OutName="three_day_timer_hour_5" Format="i4" Width="16" Height="11" Offset="0x65F8"/>
<Texture Name="gThreeDayTimerHour6Tex" OutName="three_day_timer_hour_6" Format="i4" Width="16" Height="11" Offset="0x6650"/>
<Texture Name="gThreeDayTimerHour7Tex" OutName="three_day_timer_hour_7" Format="i4" Width="16" Height="11" Offset="0x66A8"/>
<Texture Name="gThreeDayTimerHour8Tex" OutName="three_day_timer_hour_8" Format="i4" Width="16" Height="11" Offset="0x6700"/>
<Texture Name="gThreeDayTimerHour9Tex" OutName="three_day_timer_hour_9" Format="i4" Width="16" Height="11" Offset="0x6758"/>
<Texture Name="gThreeDayTimerHour10Tex" OutName="three_day_timer_hour_10" Format="i4" Width="16" Height="11" Offset="0x67B0"/>
<Texture Name="gThreeDayTimerHour11Tex" OutName="three_day_timer_hour_11" Format="i4" Width="16" Height="11" Offset="0x6808"/>
<!-- The timer until moon crash after midnight of the final day -->
<Texture Name="gFinalHoursTimerDigit0Tex" OutName="final_hours_timer_digit_0" Format="i8" Width="8" Height="8" Offset="0x6860"/>
<Texture Name="gFinalHoursTimerDigit1Tex" OutName="final_hours_timer_digit_1" Format="i8" Width="8" Height="8" Offset="0x68A0"/>
<Texture Name="gFinalHoursTimerDigit2Tex" OutName="final_hours_timer_digit_2" Format="i8" Width="8" Height="8" Offset="0x68E0"/>
<Texture Name="gFinalHoursTimerDigit3Tex" OutName="final_hours_timer_digit_3" Format="i8" Width="8" Height="8" Offset="0x6920"/>
<Texture Name="gFinalHoursTimerDigit4Tex" OutName="final_hours_timer_digit_4" Format="i8" Width="8" Height="8" Offset="0x6960"/>
<Texture Name="gFinalHoursTimerDigit5Tex" OutName="final_hours_timer_digit_5" Format="i8" Width="8" Height="8" Offset="0x69A0"/>
<Texture Name="gFinalHoursTimerDigit6Tex" OutName="final_hours_timer_digit_6" Format="i8" Width="8" Height="8" Offset="0x69E0"/>
<Texture Name="gFinalHoursTimerDigit7Tex" OutName="final_hours_timer_digit_7" Format="i8" Width="8" Height="8" Offset="0x6A20"/>
<Texture Name="gFinalHoursTimerDigit8Tex" OutName="final_hours_timer_digit_8" Format="i8" Width="8" Height="8" Offset="0x6A60"/>
<Texture Name="gFinalHoursTimerDigit9Tex" OutName="final_hours_timer_digit_9" Format="i8" Width="8" Height="8" Offset="0x6AA0"/>
<Texture Name="gFinalHoursTimerColonTex" OutName="final_hours_timer_colon" Format="i8" Width="8" Height="8" Offset="0x6AE0"/>
<Texture Name="gFinalHoursTimerFrameTex" OutName="final_hours_timer_frame" Format="ia4" Width="80" Height="13" Offset="0x6B20"/>
<Texture Name="gMinigameGoTex" OutName="minigame_go" Format="ia8" Width="40" Height="32" Offset="0x6D28"/>
<Texture Name="gMinigameCountdown1Tex" OutName="minigame_countdown_1" Format="ia8" Width="24" Height="32" Offset="0x7228"/>
<Texture Name="gMinigameCountdown2Tex" OutName="minigame_countdown_2" Format="ia8" Width="24" Height="32" Offset="0x7528"/>
<Texture Name="gMinigameCountdown3Tex" OutName="minigame_countdown_3" Format="ia8" Width="24" Height="32" Offset="0x7828"/>
<!-- The letters of "PERFECT!" -->
<Texture Name="gMinigameLetterPTex" OutName="minigame_letter_p" Format="i4" Width="32" Height="33" Offset="0x7B28"/>
<Texture Name="gMinigameLetterETex" OutName="minigame_letter_e" Format="i4" Width="32" Height="33" Offset="0x7D38"/>
<Texture Name="gMinigameLetterRTex" OutName="minigame_letter_r" Format="i4" Width="32" Height="33" Offset="0x7F48"/>
<Texture Name="gMinigameLetterFTex" OutName="minigame_letter_f" Format="i4" Width="32" Height="33" Offset="0x8158"/>
<Texture Name="gMinigameLetterCTex" OutName="minigame_letter_c" Format="i4" Width="32" Height="33" Offset="0x8368"/>
<Texture Name="gMinigameLetterTTex" OutName="minigame_letter_t" Format="i4" Width="32" Height="33" Offset="0x8578"/>
<Texture Name="gMinigameExclamationTex" OutName="minigame_exclamation" Format="i4" Width="32" Height="33" Offset="0x8788"/>
<Texture Name="gStrayFairyWoodfallIconTex" OutName="stray_fairy_woodfall_icon" Format="rgba32" Width="32" Height="24" Offset="0x8998"/>
<Texture Name="gStrayFairySnowheadIconTex" OutName="stray_fairy_snowhead_icon" Format="rgba32" Width="32" Height="24" Offset="0x9598"/>
<Texture Name="gStrayFairyGreatBayIconTex" OutName="stray_fairy_great_bay_icon" Format="rgba32" Width="32" Height="24" Offset="0xA198"/>
<Texture Name="gStrayFairyStoneTowerIconTex" OutName="stray_fairy_stone_tower_icon" Format="rgba32" Width="32" Height="24" Offset="0xAD98"/>
<Texture Name="gStrayFairyGlowingCircleIconTex" OutName="stray_fairy_glowing_circle_icon" Format="i4" Width="32" Height="24" Offset="0xB998"/>
</File>
</Root>
+2 -1
View File
@@ -9321,7 +9321,8 @@ beginseg
name "parameter_static"
compress
romalign 0x1000
include "build/baserom/parameter_static.o"
include "build/assets/misc/parameter_static/parameter_static.o"
number 2
endseg
beginseg
+1
View File
@@ -1,3 +1,4 @@
#include "prevent_bss_reordering.h"
#include "global.h"
u32 sDmaMgrDmaBuffSize = 0x2000;
+1 -1
View File
@@ -534,7 +534,7 @@ void func_8012F0EC(s16 arg0);
void func_8012F1BC(s16 sceneIndex) {
if (sceneIndex == SCENE_KINSTA1) {
gSaveContext.save.roomInf[126][0] = ((((gSaveContext.save.roomInf[126][0] & 0xFFFF0000) >> 0x10) + 1) << 0x10) |
(gSaveContext.save.roomInf[126][0] & 0xFFFF);
(gSaveContext.save.roomInf[126][0] & 0xFFFF);
} else {
gSaveContext.save.roomInf[126][0] =
((gSaveContext.save.roomInf[126][0] + 1) & 0xFFFF) | (gSaveContext.save.roomInf[126][0] & 0xFFFF0000);
+4 -2
View File
@@ -814,7 +814,8 @@ s16 func_800A7650(s16 dropId) {
(((dropId == ITEM00_ARROWS_10) || (dropId == ITEM00_ARROWS_30) || (dropId == ITEM00_ARROWS_40) ||
(dropId == ITEM00_ARROWS_50)) &&
(INV_CONTENT(ITEM_BOW) == ITEM_NONE)) ||
(((dropId == ITEM00_MAGIC_LARGE) || (dropId == ITEM00_MAGIC_SMALL)) && (gSaveContext.save.playerData.magicLevel == 0))) {
(((dropId == ITEM00_MAGIC_LARGE) || (dropId == ITEM00_MAGIC_SMALL)) &&
(gSaveContext.save.playerData.magicLevel == 0))) {
return ITEM00_NO_DROP;
}
@@ -1116,7 +1117,8 @@ void Item_DropCollectibleRandom(GlobalContext* globalCtx, Actor* fromActor, Vec3
params = 0xD0;
dropId = ITEM00_MAGIC_LARGE;
dropQuantity = 1;
} else if ((gSaveContext.save.playerData.magicLevel != 0) && ((gSaveContext.save.playerData.magicLevel >> 1) >= gSaveContext.save.playerData.magic)) {
} else if ((gSaveContext.save.playerData.magicLevel != 0) &&
((gSaveContext.save.playerData.magicLevel >> 1) >= gSaveContext.save.playerData.magic)) {
params = 0xD0;
dropId = ITEM00_MAGIC_LARGE;
dropQuantity = 1;
+59 -55
View File
@@ -1,4 +1,5 @@
#include "global.h"
#include "misc/parameter_static/parameter_static.h"
typedef struct {
/* 0x00 */ u8 scene;
@@ -372,8 +373,14 @@ s32 D_801BFACC[] = {
0x00020001,
};
s32 D_801BFAD4[] = {
0x02002AE0, 0x02002AE0, 0x02002BA0, 0x02002C60, 0x02002D20, 0x00820088, 0x00880088, 0x00880000,
TexturePtr D_801BFAD4[] = {
gTatlCUpENGTex, gTatlCUpENGTex, gTatlCUpGERTex, gTatlCUpFRATex, gTatlCUpESPTex,
};
s32 D_801BFAE8[] = {
0x00820088,
0x00880088,
0x00880000,
};
s32 D_801BFAF4[] = {
@@ -426,15 +433,18 @@ s32 D_801BFB34[] = {
0x00000000,
};
s32 D_801BFB38[] = {
0x00000AAA, 0x15552000, 0x2AAA3555, 0x40004AAA, 0x55556000, 0x6AAA7555, 0x80008AAA,
0x9555A000, 0xAAAAB555, 0xC000CAAA, 0xD555E000, 0xEAAAF555, 0xFFFF0000,
s16 D_801BFB38[] = {
0x0000, 0x0AAA, 0x1555, 0x2000, 0x2AAA, 0x3555, 0x4000, 0x4AAA, 0x5555, 0x6000, 0x6AAA, 0x7555, 0x8000,
0x8AAA, 0x9555, 0xA000, 0xAAAA, 0xB555, 0xC000, 0xCAAA, 0xD555, 0xE000, 0xEAAA, 0xF555, 0xFFFF, 0x0000,
};
s32 D_801BFB6C[] = {
0x02006440, 0x02006498, 0x020064F0, 0x02006548, 0x020065A0, 0x020065F8, 0x02006650, 0x020066A8,
0x02006700, 0x02006758, 0x020067B0, 0x02006808, 0x02006440, 0x02006498, 0x020064F0, 0x02006548,
0x020065A0, 0x020065F8, 0x02006650, 0x020066A8, 0x02006700, 0x02006758, 0x020067B0, 0x02006808,
TexturePtr D_801BFB6C[] = {
gThreeDayTimerHour12Tex, gThreeDayTimerHour1Tex, gThreeDayTimerHour2Tex, gThreeDayTimerHour3Tex,
gThreeDayTimerHour4Tex, gThreeDayTimerHour5Tex, gThreeDayTimerHour6Tex, gThreeDayTimerHour7Tex,
gThreeDayTimerHour8Tex, gThreeDayTimerHour9Tex, gThreeDayTimerHour10Tex, gThreeDayTimerHour11Tex,
gThreeDayTimerHour12Tex, gThreeDayTimerHour1Tex, gThreeDayTimerHour2Tex, gThreeDayTimerHour3Tex,
gThreeDayTimerHour4Tex, gThreeDayTimerHour5Tex, gThreeDayTimerHour6Tex, gThreeDayTimerHour7Tex,
gThreeDayTimerHour8Tex, gThreeDayTimerHour9Tex, gThreeDayTimerHour10Tex, gThreeDayTimerHour11Tex,
};
s32 D_801BFBCC[] = {
@@ -509,9 +519,10 @@ s32 D_801BFC10[] = {
0x00640000,
};
s32 D_801BFC14[] = {
0x02006860, 0x020068A0, 0x020068E0, 0x02006920, 0x02006960, 0x020069A0,
0x020069E0, 0x02006A20, 0x02006A60, 0x02006AA0, 0x02006AE0,
TexturePtr D_801BFC14[] = {
gFinalHoursTimerDigit0Tex, gFinalHoursTimerDigit1Tex, gFinalHoursTimerDigit2Tex, gFinalHoursTimerDigit3Tex,
gFinalHoursTimerDigit4Tex, gFinalHoursTimerDigit5Tex, gFinalHoursTimerDigit6Tex, gFinalHoursTimerDigit7Tex,
gFinalHoursTimerDigit8Tex, gFinalHoursTimerDigit9Tex, gFinalHoursTimerColonTex,
};
s32 D_801BFC40[] = {
@@ -537,18 +548,12 @@ s32 D_801BFC64[] = {
0x00A50037,
};
s32 D_801BFC6C[] = {
0x004E0036,
0x001D0005,
0xFFEEFFD6,
0xFFBDFFAB,
s16 D_801BFC6C[] = {
0x004E, 0x0036, 0x001D, 0x0005, 0xFFEE, 0xFFD6, 0xFFBD, 0xFFAB,
};
s32 D_801BFC7C[] = {
0x00B400B4,
0x00B400B4,
0xFF4CFF4C,
0xFF4CFF4C,
s16 D_801BFC7C[] = {
0x00B4, 0x00B4, 0x00B4, 0x00B4, 0xFF4C, 0xFF4C, 0xFF4C, 0xFF4C,
};
s32 D_801BFC8C[] = {
@@ -577,8 +582,9 @@ s32 D_801BFCB8[] = {
0x00A50037,
};
s32 D_801BFCC4[] = {
0x02007B28, 0x02007D38, 0x02007F48, 0x02008158, 0x02007D38, 0x02008368, 0x02008578, 0x02008788,
TexturePtr D_801BFCC4[] = {
gMinigameLetterPTex, gMinigameLetterETex, gMinigameLetterRTex, gMinigameLetterFTex,
gMinigameLetterETex, gMinigameLetterCTex, gMinigameLetterTTex, gMinigameExclamationTex,
};
s32 D_801BFCE4[] = {
@@ -605,18 +611,12 @@ s32 D_801BFCF8[] = {
0x00630000,
};
s32 D_801BFCFC[] = {
0x00100019,
0x0022002A,
0x0033003C,
0x0044004D,
s16 D_801BFCFC[] = {
0x10, 0x19, 0x22, 0x2A, 0x33, 0x3C, 0x44, 0x4D,
};
s32 D_801BFD0C[] = {
0x00090009,
0x00080009,
0x00090008,
0x00090009,
s16 D_801BFD0C[] = {
9, 9, 8, 9, 9, 8, 9, 9,
};
s32 D_801BFD1C[] = {
@@ -629,6 +629,7 @@ s32 D_801BFD24[] = {
0x00030000,
};
// Likely rbga values
s32 D_801BFD2C[] = {
0x00C800FF, 0x006400AA, 0x00AA00FF, 0x00FF0069, 0x00690000,
};
@@ -637,18 +638,22 @@ s32 D_801BFD40[] = {
0x00000050, 0x0000000A, 0x000A0050, 0x0028000A, 0x00000000,
};
s32 D_801BFD54[] = {
0x02007828,
0x02007528,
0x02007228,
0x02006D28,
TexturePtr D_801BFD54[] = {
gMinigameCountdown3Tex,
gMinigameCountdown2Tex,
gMinigameCountdown1Tex,
gMinigameGoTex,
};
s32 D_801BFD64[] = {
0x00180018,
0x00180028,
// Texture heights of D_801BFD54
s16 D_801BFD64[] = {
24,
24,
24,
40,
};
// Likely rbga values
s32 D_801BFD6C[] = {
0x006400FF, 0x006400FF, 0x00FF003C, 0x00FF0064, 0x00000078, 0x00AA00FF,
};
@@ -672,9 +677,9 @@ s32 D_801BFD98[] = {
0x00000000,
};
s32 D_801BFDA0[] = {
0x01DE01FF, 0x025D01DB, 0x01DA01FE, 0x0219024C, 0x0221025E, 0x020001FD,
0x025C025F, 0x01DC024E, 0x025201DD, 0x01D90214, 0x01E401E1, 0x01E201E3,
s16 D_801BFDA0[] = {
0x1DE, 0x1FF, 0x25D, 0x1DB, 0x1DA, 0x1FE, 0x219, 0x24C, 0x221, 0x25E, 0x200, 0x1FD,
0x25C, 0x25F, 0x1DC, 0x24E, 0x252, 0x1DD, 0x1D9, 0x214, 0x1E4, 0x1E1, 0x1E2, 0x1E3,
};
Gfx* Gfx_TextureRGBA16(Gfx* displayListHead, void* texture, s16 textureWidth, s16 textureHeight, s16 rectLeft,
@@ -901,8 +906,8 @@ void func_8010EE74(GlobalContext* globalCtx, s32 arg1) {
phi_t0 = 0;
}
DmaMgr_SendRequest0((u32)globalCtx->interfaceCtx.doActionSegment + 0x780, (u32)_week_staticSegmentRomStart + phi_t0 * 0x510,
0x510);
DmaMgr_SendRequest0((u32)globalCtx->interfaceCtx.doActionSegment + 0x780,
(u32)_week_staticSegmentRomStart + phi_t0 * 0x510, 0x510);
for (phi_t0 = 0; phi_t0 < 120; phi_t0++) {
gSaveContext.save.roomInf[phi_t0][0] = gSaveContext.cycleSceneFlags[phi_t0].chest;
@@ -1712,14 +1717,15 @@ void func_80178E3C(u32 romSegment, u32 arg1, void* dst, u32 size);
void Interface_LoadItemIcon(GlobalContext* globalCtx, volatile u8 arg1) {
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
u8 phi_v0;
if (arg1 == 0) {
phi_v0 = gSaveContext.save.equips.buttonItems[CUR_FORM][arg1];
} else {
phi_v0 = gSaveContext.save.equips.buttonItems[0][arg1];
}
func_80178E3C((u32)_icon_item_static_testSegmentRomStart, phi_v0 & 0xFF, (u32)interfaceCtx->iconItemSegment + (arg1 * 0x1000), 0x1000);
func_80178E3C((u32)_icon_item_static_testSegmentRomStart, phi_v0 & 0xFF,
(u32)interfaceCtx->iconItemSegment + (arg1 * 0x1000), 0x1000);
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/Interface_LoadItemIcon.s")
@@ -1925,8 +1931,8 @@ 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)_do_action_staticSegmentRomStart + (action * 0x180), 0x180, 0,
&interfaceCtx->loadQueue, 0);
(u32)_do_action_staticSegmentRomStart + (action * 0x180), 0x180, 0,
&interfaceCtx->loadQueue, 0);
osRecvMesg(&interfaceCtx->loadQueue, NULL, OS_MESG_BLOCK);
return;
}
@@ -1966,7 +1972,7 @@ void Interface_SetDoAction(GlobalContext* globalCtx, u16 action) {
void Interface_AddMagic(GlobalContext* globalCtx, s16 arg1) {
if (gSaveContext.save.playerData.magic) {}
if (gSaveContext.save.playerData.magic < gSaveContext.unk_3F2E) {
gSaveContext.unk_3F34 += arg1;
gSaveContext.unk_3F2A = 1;
@@ -1998,7 +2004,6 @@ void func_80116088(void) {
gSaveContext.unk_3F2A = 0;
}
}
}
}
@@ -2008,7 +2013,6 @@ void func_80116088(void) {
#pragma GLOBAL_ASM("asm/non_matchings/code/z_parameter/func_80116918.s")
void func_80116FD8(GlobalContext* globalCtx, s32 topY, s32 bottomY, s32 leftX, s32 rightX) {
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
Vec3f eye;
@@ -2132,7 +2136,7 @@ void func_80120F90(GlobalContext* globalCtx, s32 block) {
}
osCreateMesgQueue(&interfaceCtx->unk_320, interfaceCtx->unk_338, 1);
DmaMgr_SendRequestImpl(&interfaceCtx->dmaRequest_184, interfaceCtx->unk_33C, interfaceCtx->unk_340,
interfaceCtx->unk_344, 0, &interfaceCtx->unk_320, NULL);
interfaceCtx->unk_344, 0, &interfaceCtx->unk_320, NULL);
interfaceCtx->unk_31C = 1;
case 1:
if (osRecvMesg(&interfaceCtx->unk_320, NULL, block) == 0) {
@@ -45,8 +45,8 @@ void BgTobira01_Open(BgTobira01* this, GlobalContext* globalCtx) {
} else {
ActorCutscene_SetIntentToPlay(cutsceneId);
}
} else if (!(gSaveContext.save.weekEventReg[88] & 0x40) && (this->timer == 0) && (globalCtx->actorCtx.unk1F5 != 0) &&
(globalCtx->actorCtx.unk1F4 == 0) &&
} else if (!(gSaveContext.save.weekEventReg[88] & 0x40) && (this->timer == 0) &&
(globalCtx->actorCtx.unk1F5 != 0) && (globalCtx->actorCtx.unk1F4 == 0) &&
(SurfaceType_GetSceneExitIndex(&globalCtx->colCtx, player->actor.floorPoly, player->actor.floorBgId) ==
6)) {
this->playCutscene = true;
@@ -74,14 +74,16 @@ void EnBaisen_Init(Actor* thisx, GlobalContext* globalCtx) {
this->paramCopy = this->actor.params;
if (this->actor.params == 0) {
this->unk290 = true;
if (!(gSaveContext.save.weekEventReg[63] & 0x80) && ((gSaveContext.save.day != 3) || !gSaveContext.save.isNight)) {
if (!(gSaveContext.save.weekEventReg[63] & 0x80) &&
((gSaveContext.save.day != 3) || !gSaveContext.save.isNight)) {
Actor_MarkForDeath(&this->actor);
}
} else {
this->collider.dim.radius = 30;
this->collider.dim.height = 60;
this->collider.dim.yShift = 0;
if ((gSaveContext.save.weekEventReg[63] & 0x80) || ((gSaveContext.save.day == 3) && (gSaveContext.save.isNight))) {
if ((gSaveContext.save.weekEventReg[63] & 0x80) ||
((gSaveContext.save.day == 3) && (gSaveContext.save.isNight))) {
Actor_MarkForDeath(&this->actor);
}
}
@@ -92,7 +92,8 @@ void EnDaiku_Init(Actor* thisx, GlobalContext* globalCtx) {
this->collider.dim.height = 60;
this->collider.dim.yShift = 0;
this->actor.flags |= 0x8000000;
if ((gSaveContext.save.weekEventReg[63] & 0x80) || ((gSaveContext.save.day == 3) && gSaveContext.save.isNight)) {
if ((gSaveContext.save.weekEventReg[63] & 0x80) ||
((gSaveContext.save.day == 3) && gSaveContext.save.isNight)) {
Actor_MarkForDeath(&this->actor);
}
} else if ((gSaveContext.save.day == 3) && gSaveContext.save.isNight) {
+2 -1
View File
@@ -359,7 +359,8 @@ void func_80989BF8(EnDg* this) {
D_8098C2A8[this->unk_286].unk_04 =
0x3538 + ((gSaveContext.save.weekEventReg[42 + (this->unk_286 / 2)] & 0xF0) >> 4);
} else {
D_8098C2A8[this->unk_286].unk_04 = 0x3538 + (gSaveContext.save.weekEventReg[42 + (this->unk_286 / 2)] & 0xF);
D_8098C2A8[this->unk_286].unk_04 =
0x3538 + (gSaveContext.save.weekEventReg[42 + (this->unk_286 / 2)] & 0xF);
}
} else {
Actor_MarkForDeath(&this->actor);
+2 -1
View File
@@ -390,7 +390,8 @@ void func_8092D1B8(EnDns* this, GlobalContext* globalCtx) {
}
if (!ENDNS_GET_4000(&this->actor) || (this->unk_2D2 != 0)) {
if (!(gSaveContext.save.weekEventReg[23] & 0x20) && !(gSaveContext.eventInf[1] & 0x20) && func_8092CC68(globalCtx)) {
if (!(gSaveContext.save.weekEventReg[23] & 0x20) && !(gSaveContext.eventInf[1] & 0x20) &&
func_8092CC68(globalCtx)) {
player->stateFlags1 |= 0x20;
this->unk_2C6 |= 0x100;
func_8013AED4(&this->unk_2C6, 4, 7);
+2 -1
View File
@@ -851,7 +851,8 @@ void EnFsn_AskBuyOrSell(EnFsn* this, GlobalContext* globalCtx) {
case 0x29D2:
if (gSaveContext.save.weekEventReg[0x21] & 4) {
this->actor.textId = 0x2A01;
} else if (!(gSaveContext.save.weekEventReg[0x21] & 8) && !(gSaveContext.save.weekEventReg[0x4F] & 0x40)) {
} else if (!(gSaveContext.save.weekEventReg[0x21] & 8) &&
!(gSaveContext.save.weekEventReg[0x4F] & 0x40)) {
this->actor.textId = 0x29D3;
} else {
this->actor.textId = 0x29D4;
+2 -2
View File
@@ -900,8 +900,8 @@ void func_80963630(EnFu* this, GlobalContext* globalCtx) {
Player* player = GET_PLAYER(globalCtx);
if (func_800B84D0(&this->actor, globalCtx)) {
if ((gSaveContext.save.weekEventReg[22] & 0x10) && (gSaveContext.save.weekEventReg[22] & 0x20) && (CURRENT_DAY == 3) &&
(gSaveContext.save.playerForm == PLAYER_FORM_HUMAN)) {
if ((gSaveContext.save.weekEventReg[22] & 0x10) && (gSaveContext.save.weekEventReg[22] & 0x20) &&
(CURRENT_DAY == 3) && (gSaveContext.save.playerForm == PLAYER_FORM_HUMAN)) {
if (gSaveContext.save.weekEventReg[22] & 0x40) {
func_801518B0(globalCtx, 0x2884, &this->actor);
this->unk_552 = 0x2884;
@@ -408,7 +408,8 @@ void EnGinkoMan_WaitForDialogueInput(EnGinkoMan* this, GlobalContext* globalCtx)
func_800BDC5C(&this->skelAnime, animations, GINKO_FLOORSMACKING);
func_801518B0(globalCtx, 0x476, &this->actor);
this->curTextId = 0x476; // you dont have enough deposited to withdrawl
} else if (CUR_CAPACITY(UPG_WALLET) < (globalCtx->msgCtx.bankRupeesSelected + gSaveContext.save.playerData.rupees)) {
} else if (CUR_CAPACITY(UPG_WALLET) <
(globalCtx->msgCtx.bankRupeesSelected + gSaveContext.save.playerData.rupees)) {
// check if wallet is big enough
play_sound(NA_SE_SY_ERROR);
func_801518B0(globalCtx, 0x475, &this->actor);
+2 -2
View File
@@ -391,8 +391,8 @@ void func_809985B8(EnGs* this, GlobalContext* globalCtx) {
Math_Vec3f_Sum(&player->actor.world.pos, &sp38, &player->actor.world.pos);
Math_Vec3f_Copy(&player->actor.prevPos, &player->actor.world.pos);
this->unk_200 = 0.0f;
gSaveContext.save.roomInf[126][1] =
(gSaveContext.save.roomInf[126][1] & ~(7 << (this->unk_198 * 3))) | ((this->unk_194 & 7) << (this->unk_198 * 3));
gSaveContext.save.roomInf[126][1] = (gSaveContext.save.roomInf[126][1] & ~(7 << (this->unk_198 * 3))) |
((this->unk_194 & 7) << (this->unk_198 * 3));
gossipStone = NULL;
do {
+14 -11
View File
@@ -10,17 +10,17 @@
#define THIS ((EnIn*)thisx)
#define SET_FLAGS_FINISH_RACE \
{ \
gSaveContext.save.weekEventReg[92] &= (u8) ~(1 | 2 | 4); \
gSaveContext.save.weekEventReg[92] = \
#define SET_FLAGS_FINISH_RACE \
{ \
gSaveContext.save.weekEventReg[92] &= (u8) ~(1 | 2 | 4); \
gSaveContext.save.weekEventReg[92] = \
gSaveContext.save.weekEventReg[92] | (u8)(gSaveContext.save.weekEventReg[92] & ~(1 | 2 | 4)); \
}
#define SET_FLAGS_START_RACE \
{ \
gSaveContext.save.weekEventReg[92] &= (u8) ~(1 | 2 | 4); \
gSaveContext.save.weekEventReg[92] = \
#define SET_FLAGS_START_RACE \
{ \
gSaveContext.save.weekEventReg[92] &= (u8) ~(1 | 2 | 4); \
gSaveContext.save.weekEventReg[92] = \
gSaveContext.save.weekEventReg[92] | (u8)((gSaveContext.save.weekEventReg[92] & ~(1 | 2 | 4)) | 1); \
}
@@ -267,7 +267,8 @@ s32 func_808F3334(EnIn* this, GlobalContext* globalCtx) {
s32 func_808F33B8(void) {
s32 ret;
if (((ret = gSaveContext.save.day == 1) && (ret = gSaveContext.save.time >= 0x3AAA) && (ret = gSaveContext.save.time <= 0x4000)) ||
if (((ret = gSaveContext.save.day == 1) && (ret = gSaveContext.save.time >= 0x3AAA) &&
(ret = gSaveContext.save.time <= 0x4000)) ||
(ret = gSaveContext.save.day >= 2)) {
ret = (gSaveContext.save.weekEventReg[22] & 1) == 0;
}
@@ -512,7 +513,8 @@ u16 func_808F3DD4(GlobalContext* globalCtx, EnIn* this, u32 arg2) {
} else {
switch (arg2) {
case 0:
if ((gSaveContext.save.playerForm == PLAYER_FORM_ZORA) || (gSaveContext.save.playerForm == PLAYER_FORM_GORON)) {
if ((gSaveContext.save.playerForm == PLAYER_FORM_ZORA) ||
(gSaveContext.save.playerForm == PLAYER_FORM_GORON)) {
textId = 0x345C;
} else if (gSaveContext.save.playerForm == PLAYER_FORM_DEKU) {
textId = 0x3460;
@@ -542,7 +544,8 @@ u16 func_808F3DD4(GlobalContext* globalCtx, EnIn* this, u32 arg2) {
}
break;
case 4:
if (gSaveContext.save.playerForm == PLAYER_FORM_ZORA || gSaveContext.save.playerForm == PLAYER_FORM_GORON) {
if (gSaveContext.save.playerForm == PLAYER_FORM_ZORA ||
gSaveContext.save.playerForm == PLAYER_FORM_GORON) {
textId = 0x348A;
} else if (gSaveContext.save.playerForm == PLAYER_FORM_DEKU) {
textId = 0x348B;
@@ -673,7 +673,8 @@ void func_80B439B0(s32 arg0, s32 arg1) {
}
if (!(arg0 & 1)) {
gSaveContext.save.roomInf[124][arg0 >> 1] = (gSaveContext.save.roomInf[124][arg0 >> 1] & 0xFFFF0000) | (arg1 & 0xFFFF);
gSaveContext.save.roomInf[124][arg0 >> 1] =
(gSaveContext.save.roomInf[124][arg0 >> 1] & 0xFFFF0000) | (arg1 & 0xFFFF);
} else {
gSaveContext.save.roomInf[124][arg0 >> 1] =
(gSaveContext.save.roomInf[124][arg0 >> 1] & 0xFFFF) | ((arg1 & 0xFFFF) << 0x10);
@@ -273,7 +273,7 @@ void EnMinifrog_ReturnFrogCutscene(EnMinifrog* this, GlobalContext* globalCtx) {
case 0xD87: // "Ah! You need not say a thing. Upon seeing that face, I understand!" ...
func_80151938(globalCtx, globalCtx->msgCtx.unk11F04 + 1);
break;
case 0xD82: // "What has brought you all this way?"
case 0xD82: // "What has brought you all this way?"
if (gSaveContext.save.weekEventReg[33] & 0x80) { // Mountain village is unfrozen
func_80151938(globalCtx, 0xD83); // "Could it be... Has spring finally come to the mountains?"
} else {
@@ -328,7 +328,8 @@ void func_80BA5B64(EnRailgibud* this, GlobalContext* globalCtx) {
if (func_80BA6D10(this, globalCtx) && Actor_IsActorFacingLink(&this->actor, 0x38E3)) {
if ((this->unk_3F4 == 0) && (this->actor.xzDistToPlayer <= 45.0f)) {
player->actor.freezeTimer = 0;
if ((gSaveContext.save.playerForm == PLAYER_FORM_GORON) || (gSaveContext.save.playerForm == PLAYER_FORM_DEKU)) {
if ((gSaveContext.save.playerForm == PLAYER_FORM_GORON) ||
(gSaveContext.save.playerForm == PLAYER_FORM_DEKU)) {
func_80BA6054(this);
} else if (globalCtx->grabPlayer(globalCtx, player)) {
func_80BA5DBC(this);
@@ -158,7 +158,7 @@ void EnRecepgirl_Talk(EnRecepgirl* this, GlobalContext* globalCtx) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_0600AD98, 10.0f);
if (gSaveContext.save.weekEventReg[63] & 0x80) { // showed Couple's Mask to meeting
this->actor.textId = 0x2ADF; // Mayor's office is on the left (meeting ended)
this->actor.textId = 0x2ADF; // Mayor's office is on the left (meeting ended)
} else {
this->actor.textId = 0x2ADA; // Mayor's office is on the left (meeting ongoing)
}

Some files were not shown because too many files have changed in this diff Show More