1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-06-08 09:31:52 +00:00

Match remaining GC retail versions (#2019)

* Match the remaining GC retail versions

* Fix BSS ordering for existing versions

* Disable clang-format for #pragma increment_block_number

* sramResetCode -> sSramResetCode

* Replace 0xFF3F with or-ing all buttons together

* Revert "Disable clang-format for #pragma increment_block_number"

This reverts commit 406b6d26c9.

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
This commit is contained in:
cadmic 2024-08-09 17:58:46 -07:00 committed by GitHub
parent cd2264f018
commit d495436190
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
59 changed files with 11405 additions and 49 deletions

View file

@ -18,7 +18,11 @@ ORIG_COMPILER ?= 0
# If COMPILER is "gcc", compile with GCC instead of IDO.
COMPILER ?= ido
# Target game version. Currently the following versions are supported:
# gc-jp GameCube Japan
# gc-jp-mq GameCube Japan Master Quest
# gc-jp-ce GameCube Japan (Collector's Edition disc)
# gc-us GameCube US
# gc-us-mq GameCube US
# gc-eu GameCube Europe/PAL
# gc-eu-mq GameCube Europe/PAL Master Quest
# gc-eu-mq-dbg GameCube Europe/PAL Master Quest Debug (default)
@ -42,11 +46,31 @@ CPPFLAGS ?=
CPP_DEFINES ?=
# Version-specific settings
ifeq ($(VERSION),gc-us)
ifeq ($(VERSION),gc-jp)
REGION ?= JP
PAL := 0
MQ := 0
DEBUG := 0
else ifeq ($(VERSION),gc-jp-mq)
REGION ?= JP
PAL := 0
MQ := 1
DEBUG := 0
else ifeq ($(VERSION),gc-jp-ce)
REGION ?= JP
PAL := 0
MQ := 0
DEBUG := 0
else ifeq ($(VERSION),gc-us)
REGION ?= US
PAL := 0
MQ := 0
DEBUG := 0
else ifeq ($(VERSION),gc-us-mq)
REGION ?= US
PAL := 0
MQ := 1
DEBUG := 0
else ifeq ($(VERSION),gc-eu)
REGION ?= EU
PAL := 1

View file

@ -0,0 +1,20 @@
<Root>
<File Name="object_mag" Segment="6">
<Texture Name="gTitleZeldaShieldLogoTex" OutName="title_zelda_shield_logo" Format="rgba32" Width="160" Height="160" Offset="0x0"/>
<Texture Name="gTitleCopyright19982002Tex" OutName="title_copyright_19982002" Format="ia8" Width="160" Height="16" Offset="0x19000"/>
<Texture Name="gTitleDiskTex" OutName="title_disk" Format="ia8" Width="48" Height="16" Offset="0x19A00"/>
<Texture Name="gTitleEffectMask00Tex" OutName="title_effect_mask_0_0" Format="i4" Width="64" Height="64" Offset="0x19D00"/>
<Texture Name="gTitleEffectMask01Tex" OutName="title_effect_mask_0_1" Format="i4" Width="64" Height="64" Offset="0x1A500"/>
<Texture Name="gTitleEffectMask02Tex" OutName="title_effect_mask_0_2" Format="i4" Width="64" Height="64" Offset="0x1AD00"/>
<Texture Name="gTitleEffectMask10Tex" OutName="title_effect_mask_1_0" Format="i4" Width="64" Height="64" Offset="0x1B500"/>
<Texture Name="gTitleEffectMask11Tex" OutName="title_effect_mask_1_1" Format="i4" Width="64" Height="64" Offset="0x1BD00"/>
<Texture Name="gTitleEffectMask12Tex" OutName="title_effect_mask_1_2" Format="i4" Width="64" Height="64" Offset="0x1C500"/>
<Texture Name="gTitleEffectMask20Tex" OutName="title_effect_mask_2_0" Format="i4" Width="64" Height="64" Offset="0x1CD00"/>
<Texture Name="gTitleEffectMask21Tex" OutName="title_effect_mask_2_1" Format="i4" Width="64" Height="64" Offset="0x1D500"/>
<Texture Name="gTitleEffectMask22Tex" OutName="title_effect_mask_2_2" Format="i4" Width="64" Height="64" Offset="0x1DD00"/>
<Texture Name="gTitleFlameEffectTex" OutName="title_flame_effect" Format="i8" Width="32" Height="32" Offset="0x1E500"/>
<Texture Name="gTitleTheLegendOfTextTex" OutName="title_the_legend_of_text" Format="i8" Width="72" Height="8" Offset="0x1E900"/>
<Texture Name="gTitleOcarinaOfTimeTMTextTex" OutName="title_ocarina_of_time_tm_text" Format="i8" Width="96" Height="8" Offset="0x1EB40"/>
<Texture Name="gTitleTitleJPNTex" OutName="title_title_jpn" Format="i8" Width="128" Height="16" Offset="0x1EE40"/>
</File>
</Root>

View file

@ -0,0 +1,21 @@
<Root>
<File Name="object_mag" Segment="6">
<Texture Name="gTitleZeldaShieldLogoTex" OutName="title_zelda_shield_logo" Format="rgba32" Width="160" Height="160" Offset="0x0"/>
<Texture Name="gTitleCopyright19982002Tex" OutName="title_copyright_19982002" Format="ia8" Width="160" Height="16" Offset="0x19000"/>
<Texture Name="gTitleUraLogoTex" OutName="title_ura_logo" Format="rgba32" Width="40" Height="40" Offset="0x19A00"/>
<Texture Name="gTitleDiskTex" OutName="title_disk" Format="ia8" Width="48" Height="16" Offset="0x1B300"/>
<Texture Name="gTitleEffectMask00Tex" OutName="title_effect_mask_0_0" Format="i4" Width="64" Height="64" Offset="0x1B600"/>
<Texture Name="gTitleEffectMask01Tex" OutName="title_effect_mask_0_1" Format="i4" Width="64" Height="64" Offset="0x1BE00"/>
<Texture Name="gTitleEffectMask02Tex" OutName="title_effect_mask_0_2" Format="i4" Width="64" Height="64" Offset="0x1C600"/>
<Texture Name="gTitleEffectMask10Tex" OutName="title_effect_mask_1_0" Format="i4" Width="64" Height="64" Offset="0x1CE00"/>
<Texture Name="gTitleEffectMask11Tex" OutName="title_effect_mask_1_1" Format="i4" Width="64" Height="64" Offset="0x1D600"/>
<Texture Name="gTitleEffectMask12Tex" OutName="title_effect_mask_1_2" Format="i4" Width="64" Height="64" Offset="0x1DE00"/>
<Texture Name="gTitleEffectMask20Tex" OutName="title_effect_mask_2_0" Format="i4" Width="64" Height="64" Offset="0x1E600"/>
<Texture Name="gTitleEffectMask21Tex" OutName="title_effect_mask_2_1" Format="i4" Width="64" Height="64" Offset="0x1EE00"/>
<Texture Name="gTitleEffectMask22Tex" OutName="title_effect_mask_2_2" Format="i4" Width="64" Height="64" Offset="0x1F600"/>
<Texture Name="gTitleFlameEffectTex" OutName="title_flame_effect" Format="i8" Width="32" Height="32" Offset="0x1FE00"/>
<Texture Name="gTitleTheLegendOfTextTex" OutName="title_the_legend_of_text" Format="i8" Width="72" Height="8" Offset="0x20200"/>
<Texture Name="gTitleOcarinaOfTimeTMTextTex" OutName="title_ocarina_of_time_tm_text" Format="i8" Width="96" Height="8" Offset="0x20440"/>
<Texture Name="gTitleTitleJPNTex" OutName="title_title_jpn" Format="i8" Width="128" Height="16" Offset="0x20740"/>
</File>
</Root>

View file

@ -140,6 +140,5 @@
<Texture Name="gMsgCharA8ButtonCRightTex" OutName="msg_char_a8_button_c_right" Format="i4" Width="16" Height="16" Offset="0x4400"/>
<Texture Name="gMsgCharA9ZTargetSignTex" OutName="msg_char_a9_z_target_sign" Format="i4" Width="16" Height="16" Offset="0x4480"/>
<Texture Name="gMsgCharAAControlStickTex" OutName="msg_char_aa_control_stick" Format="i4" Width="16" Height="16" Offset="0x4500"/>
<Texture Name="gMsgCharABControlPadTex" OutName="msg_char_ab_control_pad" Format="i4" Width="16" Height="16" Offset="0x4580"/>
</File>
</Root>

View file

@ -0,0 +1,145 @@
<Root>
<File Name="nes_font_static" Segment="10">
<!-- The two-digit number after the prefix is the character's codepoint: the hexadecimal byte it corresponds to in the text data -->
<Texture Name="gMsgChar20SpaceTex" OutName="msg_char_20_space" Format="i4" Width="16" Height="16" Offset="0x0"/>
<Texture Name="gMsgChar21ExclamationMarkTex" OutName="msg_char_21_exclamation_mark" Format="i4" Width="16" Height="16" Offset="0x80"/>
<Texture Name="gMsgChar22QuotationMarkTex" OutName="msg_char_22_quotation_mark" Format="i4" Width="16" Height="16" Offset="0x100"/>
<Texture Name="gMsgChar23NumberSignTex" OutName="msg_char_23_number_sign" Format="i4" Width="16" Height="16" Offset="0x180"/>
<Texture Name="gMsgChar24DollarSignTex" OutName="msg_char_24_dollar_sign" Format="i4" Width="16" Height="16" Offset="0x200"/>
<Texture Name="gMsgChar25PercentSignTex" OutName="msg_char_25_percent_sign" Format="i4" Width="16" Height="16" Offset="0x280"/>
<Texture Name="gMsgChar26AmpersandTex" OutName="msg_char_26_ampersand" Format="i4" Width="16" Height="16" Offset="0x300"/>
<Texture Name="gMsgChar27ApostropheTex" OutName="msg_char_27_apostrophe" Format="i4" Width="16" Height="16" Offset="0x380"/>
<Texture Name="gMsgChar28LeftParenthesesTex" OutName="msg_char_28_left_parentheses" Format="i4" Width="16" Height="16" Offset="0x400"/>
<Texture Name="gMsgChar29RightParenthesesTex" OutName="msg_char_29_right_parentheses" Format="i4" Width="16" Height="16" Offset="0x480"/>
<Texture Name="gMsgChar2AAsteriskTex" OutName="msg_char_2a_asterisk" Format="i4" Width="16" Height="16" Offset="0x500"/>
<Texture Name="gMsgChar2BPlusSignTex" OutName="msg_char_2b_plus_sign" Format="i4" Width="16" Height="16" Offset="0x580"/>
<Texture Name="gMsgChar2CCommaTex" OutName="msg_char_2c_comma" Format="i4" Width="16" Height="16" Offset="0x600"/>
<Texture Name="gMsgChar2DHyphenMinusTex" OutName="msg_char_2d_hyphen_minus" Format="i4" Width="16" Height="16" Offset="0x680"/>
<Texture Name="gMsgChar2EFullStopTex" OutName="msg_char_2e_full_stop" Format="i4" Width="16" Height="16" Offset="0x700"/>
<Texture Name="gMsgChar2FSolidusTex" OutName="msg_char_2f_solidus" Format="i4" Width="16" Height="16" Offset="0x780"/>
<Texture Name="gMsgChar30Digit0Tex" OutName="msg_char_30_digit_0" Format="i4" Width="16" Height="16" Offset="0x800"/>
<Texture Name="gMsgChar31Digit1Tex" OutName="msg_char_31_digit_1" Format="i4" Width="16" Height="16" Offset="0x880"/>
<Texture Name="gMsgChar32Digit2Tex" OutName="msg_char_32_digit_2" Format="i4" Width="16" Height="16" Offset="0x900"/>
<Texture Name="gMsgChar33Digit3Tex" OutName="msg_char_33_digit_3" Format="i4" Width="16" Height="16" Offset="0x980"/>
<Texture Name="gMsgChar34Digit4Tex" OutName="msg_char_34_digit_4" Format="i4" Width="16" Height="16" Offset="0xA00"/>
<Texture Name="gMsgChar35Digit5Tex" OutName="msg_char_35_digit_5" Format="i4" Width="16" Height="16" Offset="0xA80"/>
<Texture Name="gMsgChar36Digit6Tex" OutName="msg_char_36_digit_6" Format="i4" Width="16" Height="16" Offset="0xB00"/>
<Texture Name="gMsgChar37Digit7Tex" OutName="msg_char_37_digit_7" Format="i4" Width="16" Height="16" Offset="0xB80"/>
<Texture Name="gMsgChar38Digit8Tex" OutName="msg_char_38_digit_8" Format="i4" Width="16" Height="16" Offset="0xC00"/>
<Texture Name="gMsgChar39Digit9Tex" OutName="msg_char_39_digit_9" Format="i4" Width="16" Height="16" Offset="0xC80"/>
<Texture Name="gMsgChar3AColonTex" OutName="msg_char_3a_colon" Format="i4" Width="16" Height="16" Offset="0xD00"/>
<Texture Name="gMsgChar3BSemicolonTex" OutName="msg_char_3b_semicolon" Format="i4" Width="16" Height="16" Offset="0xD80"/>
<Texture Name="gMsgChar3CLessThanSignTex" OutName="msg_char_3c_less_than_sign" Format="i4" Width="16" Height="16" Offset="0xE00"/>
<Texture Name="gMsgChar3DEqualsSignTex" OutName="msg_char_3d_equals_sign" Format="i4" Width="16" Height="16" Offset="0xE80"/>
<Texture Name="gMsgChar3EGreaterThanSignTex" OutName="msg_char_3e_greater_than_sign" Format="i4" Width="16" Height="16" Offset="0xF00"/>
<Texture Name="gMsgChar3FQuestionMarkTex" OutName="msg_char_3f_question_mark" Format="i4" Width="16" Height="16" Offset="0xF80"/>
<Texture Name="gMsgChar40CommercialAtTex" OutName="msg_char_40_commercial_at" Format="i4" Width="16" Height="16" Offset="0x1000"/>
<Texture Name="gMsgChar41LatinCapitalLetterATex" OutName="msg_char_41_latin_capital_letter_a" Format="i4" Width="16" Height="16" Offset="0x1080"/>
<Texture Name="gMsgChar42LatinCapitalLetterBTex" OutName="msg_char_42_latin_capital_letter_b" Format="i4" Width="16" Height="16" Offset="0x1100"/>
<Texture Name="gMsgChar43LatinCapitalLetterCTex" OutName="msg_char_43_latin_capital_letter_c" Format="i4" Width="16" Height="16" Offset="0x1180"/>
<Texture Name="gMsgChar44LatinCapitalLetterDTex" OutName="msg_char_44_latin_capital_letter_d" Format="i4" Width="16" Height="16" Offset="0x1200"/>
<Texture Name="gMsgChar45LatinCapitalLetterETex" OutName="msg_char_45_latin_capital_letter_e" Format="i4" Width="16" Height="16" Offset="0x1280"/>
<Texture Name="gMsgChar46LatinCapitalLetterFTex" OutName="msg_char_46_latin_capital_letter_f" Format="i4" Width="16" Height="16" Offset="0x1300"/>
<Texture Name="gMsgChar47LatinCapitalLetterGTex" OutName="msg_char_47_latin_capital_letter_g" Format="i4" Width="16" Height="16" Offset="0x1380"/>
<Texture Name="gMsgChar48LatinCapitalLetterHTex" OutName="msg_char_48_latin_capital_letter_h" Format="i4" Width="16" Height="16" Offset="0x1400"/>
<Texture Name="gMsgChar49LatinCapitalLetterITex" OutName="msg_char_49_latin_capital_letter_i" Format="i4" Width="16" Height="16" Offset="0x1480"/>
<Texture Name="gMsgChar4ALatinCapitalLetterJTex" OutName="msg_char_4a_latin_capital_letter_j" Format="i4" Width="16" Height="16" Offset="0x1500"/>
<Texture Name="gMsgChar4BLatinCapitalLetterKTex" OutName="msg_char_4b_latin_capital_letter_k" Format="i4" Width="16" Height="16" Offset="0x1580"/>
<Texture Name="gMsgChar4CLatinCapitalLetterLTex" OutName="msg_char_4c_latin_capital_letter_l" Format="i4" Width="16" Height="16" Offset="0x1600"/>
<Texture Name="gMsgChar4DLatinCapitalLetterMTex" OutName="msg_char_4d_latin_capital_letter_m" Format="i4" Width="16" Height="16" Offset="0x1680"/>
<Texture Name="gMsgChar4ELatinCapitalLetterNTex" OutName="msg_char_4e_latin_capital_letter_n" Format="i4" Width="16" Height="16" Offset="0x1700"/>
<Texture Name="gMsgChar4FLatinCapitalLetterOTex" OutName="msg_char_4f_latin_capital_letter_o" Format="i4" Width="16" Height="16" Offset="0x1780"/>
<Texture Name="gMsgChar50LatinCapitalLetterPTex" OutName="msg_char_50_latin_capital_letter_p" Format="i4" Width="16" Height="16" Offset="0x1800"/>
<Texture Name="gMsgChar51LatinCapitalLetterQTex" OutName="msg_char_51_latin_capital_letter_q" Format="i4" Width="16" Height="16" Offset="0x1880"/>
<Texture Name="gMsgChar52LatinCapitalLetterRTex" OutName="msg_char_52_latin_capital_letter_r" Format="i4" Width="16" Height="16" Offset="0x1900"/>
<Texture Name="gMsgChar53LatinCapitalLetterSTex" OutName="msg_char_53_latin_capital_letter_s" Format="i4" Width="16" Height="16" Offset="0x1980"/>
<Texture Name="gMsgChar54LatinCapitalLetterTTex" OutName="msg_char_54_latin_capital_letter_t" Format="i4" Width="16" Height="16" Offset="0x1A00"/>
<Texture Name="gMsgChar55LatinCapitalLetterUTex" OutName="msg_char_55_latin_capital_letter_u" Format="i4" Width="16" Height="16" Offset="0x1A80"/>
<Texture Name="gMsgChar56LatinCapitalLetterVTex" OutName="msg_char_56_latin_capital_letter_v" Format="i4" Width="16" Height="16" Offset="0x1B00"/>
<Texture Name="gMsgChar57LatinCapitalLetterWTex" OutName="msg_char_57_latin_capital_letter_w" Format="i4" Width="16" Height="16" Offset="0x1B80"/>
<Texture Name="gMsgChar58LatinCapitalLetterXTex" OutName="msg_char_58_latin_capital_letter_x" Format="i4" Width="16" Height="16" Offset="0x1C00"/>
<Texture Name="gMsgChar59LatinCapitalLetterYTex" OutName="msg_char_59_latin_capital_letter_y" Format="i4" Width="16" Height="16" Offset="0x1C80"/>
<Texture Name="gMsgChar5ALatinCapitalLetterZTex" OutName="msg_char_5a_latin_capital_letter_z" Format="i4" Width="16" Height="16" Offset="0x1D00"/>
<Texture Name="gMsgChar5BLeftSquareBracketTex" OutName="msg_char_5b_left_square_bracket" Format="i4" Width="16" Height="16" Offset="0x1D80"/>
<Texture Name="gMsgChar5CYenSignTex" OutName="msg_char_5c_yen_sign" Format="i4" Width="16" Height="16" Offset="0x1E00"/>
<Texture Name="gMsgChar5DRightSquareBracketTex" OutName="msg_char_5d_right_square_bracket" Format="i4" Width="16" Height="16" Offset="0x1E80"/>
<Texture Name="gMsgChar5ECircumflexAccentTex" OutName="msg_char_5e_circumflex_accent" Format="i4" Width="16" Height="16" Offset="0x1F00"/>
<Texture Name="gMsgChar5FLowLineTex" OutName="msg_char_5f_low_line" Format="i4" Width="16" Height="16" Offset="0x1F80"/>
<Texture Name="gMsgChar60GraveAccentTex" OutName="msg_char_60_grave_accent" Format="i4" Width="16" Height="16" Offset="0x2000"/>
<Texture Name="gMsgChar61LatinSmallLetterATex" OutName="msg_char_61_latin_small_letter_a" Format="i4" Width="16" Height="16" Offset="0x2080"/>
<Texture Name="gMsgChar62LatinSmallLetterBTex" OutName="msg_char_62_latin_small_letter_b" Format="i4" Width="16" Height="16" Offset="0x2100"/>
<Texture Name="gMsgChar63LatinSmallLetterCTex" OutName="msg_char_63_latin_small_letter_c" Format="i4" Width="16" Height="16" Offset="0x2180"/>
<Texture Name="gMsgChar64LatinSmallLetterDTex" OutName="msg_char_64_latin_small_letter_d" Format="i4" Width="16" Height="16" Offset="0x2200"/>
<Texture Name="gMsgChar65LatinSmallLetterETex" OutName="msg_char_65_latin_small_letter_e" Format="i4" Width="16" Height="16" Offset="0x2280"/>
<Texture Name="gMsgChar66LatinSmallLetterFTex" OutName="msg_char_66_latin_small_letter_f" Format="i4" Width="16" Height="16" Offset="0x2300"/>
<Texture Name="gMsgChar67LatinSmallLetterGTex" OutName="msg_char_67_latin_small_letter_g" Format="i4" Width="16" Height="16" Offset="0x2380"/>
<Texture Name="gMsgChar68LatinSmallLetterHTex" OutName="msg_char_68_latin_small_letter_h" Format="i4" Width="16" Height="16" Offset="0x2400"/>
<Texture Name="gMsgChar69LatinSmallLetterITex" OutName="msg_char_69_latin_small_letter_i" Format="i4" Width="16" Height="16" Offset="0x2480"/>
<Texture Name="gMsgChar6ALatinSmallLetterJTex" OutName="msg_char_6a_latin_small_letter_j" Format="i4" Width="16" Height="16" Offset="0x2500"/>
<Texture Name="gMsgChar6BLatinSmallLetterKTex" OutName="msg_char_6b_latin_small_letter_k" Format="i4" Width="16" Height="16" Offset="0x2580"/>
<Texture Name="gMsgChar6CLatinSmallLetterLTex" OutName="msg_char_6c_latin_small_letter_l" Format="i4" Width="16" Height="16" Offset="0x2600"/>
<Texture Name="gMsgChar6DLatinSmallLetterMTex" OutName="msg_char_6d_latin_small_letter_m" Format="i4" Width="16" Height="16" Offset="0x2680"/>
<Texture Name="gMsgChar6ELatinSmallLetterNTex" OutName="msg_char_6e_latin_small_letter_n" Format="i4" Width="16" Height="16" Offset="0x2700"/>
<Texture Name="gMsgChar6FLatinSmallLetterOTex" OutName="msg_char_6f_latin_small_letter_o" Format="i4" Width="16" Height="16" Offset="0x2780"/>
<Texture Name="gMsgChar70LatinSmallLetterPTex" OutName="msg_char_70_latin_small_letter_p" Format="i4" Width="16" Height="16" Offset="0x2800"/>
<Texture Name="gMsgChar71LatinSmallLetterQTex" OutName="msg_char_71_latin_small_letter_q" Format="i4" Width="16" Height="16" Offset="0x2880"/>
<Texture Name="gMsgChar72LatinSmallLetterRTex" OutName="msg_char_72_latin_small_letter_r" Format="i4" Width="16" Height="16" Offset="0x2900"/>
<Texture Name="gMsgChar73LatinSmallLetterSTex" OutName="msg_char_73_latin_small_letter_s" Format="i4" Width="16" Height="16" Offset="0x2980"/>
<Texture Name="gMsgChar74LatinSmallLetterTTex" OutName="msg_char_74_latin_small_letter_t" Format="i4" Width="16" Height="16" Offset="0x2A00"/>
<Texture Name="gMsgChar75LatinSmallLetterUTex" OutName="msg_char_75_latin_small_letter_u" Format="i4" Width="16" Height="16" Offset="0x2A80"/>
<Texture Name="gMsgChar76LatinSmallLetterVTex" OutName="msg_char_76_latin_small_letter_v" Format="i4" Width="16" Height="16" Offset="0x2B00"/>
<Texture Name="gMsgChar77LatinSmallLetterWTex" OutName="msg_char_77_latin_small_letter_w" Format="i4" Width="16" Height="16" Offset="0x2B80"/>
<Texture Name="gMsgChar78LatinSmallLetterXTex" OutName="msg_char_78_latin_small_letter_x" Format="i4" Width="16" Height="16" Offset="0x2C00"/>
<Texture Name="gMsgChar79LatinSmallLetterYTex" OutName="msg_char_79_latin_small_letter_y" Format="i4" Width="16" Height="16" Offset="0x2C80"/>
<Texture Name="gMsgChar7ALatinSmallLetterZTex" OutName="msg_char_7a_latin_small_letter_z" Format="i4" Width="16" Height="16" Offset="0x2D00"/>
<Texture Name="gMsgChar7BLeftCurlyBracketTex" OutName="msg_char_7b_left_curly_bracket" Format="i4" Width="16" Height="16" Offset="0x2D80"/>
<Texture Name="gMsgChar7CVerticalLineTex" OutName="msg_char_7c_vertical_line" Format="i4" Width="16" Height="16" Offset="0x2E00"/>
<Texture Name="gMsgChar7DRightCurlyBracketTex" OutName="msg_char_7d_right_curly_bracket" Format="i4" Width="16" Height="16" Offset="0x2E80"/>
<Texture Name="gMsgChar7ETildeTex" OutName="msg_char_7e_tilde" Format="i4" Width="16" Height="16" Offset="0x2F00"/>
<Texture Name="gMsgChar7FBlankTex" OutName="msg_char_7f_blank" Format="i4" Width="16" Height="16" Offset="0x2F80"/>
<Texture Name="gMsgChar80LatinCapitalLetterAWithGraveTex" OutName="msg_char_80_latin_capital_letter_a_with_grave" Format="i4" Width="16" Height="16" Offset="0x3000"/>
<Texture Name="gMsgChar81LatinCapitalLetterIWithCircumflexTex" OutName="msg_char_81_latin_capital_letter_i_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3080"/>
<Texture Name="gMsgChar82LatinCapitalLetterAWithCircumflexTex" OutName="msg_char_82_latin_capital_letter_a_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3100"/>
<Texture Name="gMsgChar83LatinCapitalLetterAWithDiaeresisTex" OutName="msg_char_83_latin_capital_letter_a_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3180"/>
<Texture Name="gMsgChar84LatinCapitalLetterCWithCedillaTex" OutName="msg_char_84_latin_capital_letter_c_with_cedilla" Format="i4" Width="16" Height="16" Offset="0x3200"/>
<Texture Name="gMsgChar85LatinCapitalLetterEWithGraveTex" OutName="msg_char_85_latin_capital_letter_e_with_grave" Format="i4" Width="16" Height="16" Offset="0x3280"/>
<Texture Name="gMsgChar86LatinCapitalLetterEWithAcuteTex" OutName="msg_char_86_latin_capital_letter_e_with_acute" Format="i4" Width="16" Height="16" Offset="0x3300"/>
<Texture Name="gMsgChar87LatinCapitalLetterEWithCircumflexTex" OutName="msg_char_87_latin_capital_letter_e_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3380"/>
<Texture Name="gMsgChar88LatinCapitalLetterEWithDiaeresisTex" OutName="msg_char_88_latin_capital_letter_e_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3400"/>
<Texture Name="gMsgChar89LatinCapitalLetterIWithDiaeresisTex" OutName="msg_char_89_latin_capital_letter_i_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3480"/>
<Texture Name="gMsgChar8ALatinCapitalLetterOWithCircumflexTex" OutName="msg_char_8a_latin_capital_letter_o_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3500"/>
<Texture Name="gMsgChar8BLatinCapitalLetterOWithDiaeresisTex" OutName="msg_char_8b_latin_capital_letter_o_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3580"/>
<Texture Name="gMsgChar8CLatinCapitalLetterUWithGraveTex" OutName="msg_char_8c_latin_capital_letter_u_with_grave" Format="i4" Width="16" Height="16" Offset="0x3600"/>
<Texture Name="gMsgChar8DLatinCapitalLetterUWithCircumflexTex" OutName="msg_char_8d_latin_capital_letter_u_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3680"/>
<Texture Name="gMsgChar8ELatinCapitalLetterUWithDiaeresisTex" OutName="msg_char_8e_latin_capital_letter_u_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3700"/>
<Texture Name="gMsgChar8FLatinSmallLetterSharpSTex" OutName="msg_char_8f_latin_small_letter_sharp_s" Format="i4" Width="16" Height="16" Offset="0x3780"/>
<Texture Name="gMsgChar90LatinSmallLetterAWithGraveTex" OutName="msg_char_90_latin_small_letter_a_with_grave" Format="i4" Width="16" Height="16" Offset="0x3800"/>
<Texture Name="gMsgChar91LatinSmallLetterAWithAcuteTex" OutName="msg_char_91_latin_small_letter_a_with_acute" Format="i4" Width="16" Height="16" Offset="0x3880"/>
<Texture Name="gMsgChar92LatinSmallLetterAWithCircumflexTex" OutName="msg_char_92_latin_small_letter_a_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3900"/>
<Texture Name="gMsgChar93LatinSmallLetterAWithDiaeresisTex" OutName="msg_char_93_latin_small_letter_a_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3980"/>
<Texture Name="gMsgChar94LatinSmallLetterCWithCedillaTex" OutName="msg_char_94_latin_small_letter_c_with_cedilla" Format="i4" Width="16" Height="16" Offset="0x3A00"/>
<Texture Name="gMsgChar95LatinSmallLetterEWithGraveTex" OutName="msg_char_95_latin_small_letter_e_with_grave" Format="i4" Width="16" Height="16" Offset="0x3A80"/>
<Texture Name="gMsgChar96LatinSmallLetterEWithAcuteTex" OutName="msg_char_96_latin_small_letter_e_with_acute" Format="i4" Width="16" Height="16" Offset="0x3B00"/>
<Texture Name="gMsgChar97LatinSmallLetterEWithCircumflexTex" OutName="msg_char_97_latin_small_letter_e_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3B80"/>
<Texture Name="gMsgChar98LatinSmallLetterEWithDiaeresisTex" OutName="msg_char_98_latin_small_letter_e_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3C00"/>
<Texture Name="gMsgChar99LatinSmallLetterIWithDiaeresisTex" OutName="msg_char_99_latin_small_letter_i_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3C80"/>
<Texture Name="gMsgChar9ALatinSmallLetterOWithCircumflexTex" OutName="msg_char_9a_latin_small_letter_o_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3D00"/>
<Texture Name="gMsgChar9BLatinSmallLetterOWithDiaeresisTex" OutName="msg_char_9b_latin_small_letter_o_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3D80"/>
<Texture Name="gMsgChar9CLatinSmallLetterUWithGraveTex" OutName="msg_char_9c_latin_small_letter_u_with_grave" Format="i4" Width="16" Height="16" Offset="0x3E00"/>
<Texture Name="gMsgChar9DLatinSmallLetterUWithCircumflexTex" OutName="msg_char_9d_latin_small_letter_u_with_circumflex" Format="i4" Width="16" Height="16" Offset="0x3E80"/>
<Texture Name="gMsgChar9ELatinSmallLetterUWithDiaeresisTex" OutName="msg_char_9e_latin_small_letter_u_with_diaeresis" Format="i4" Width="16" Height="16" Offset="0x3F00"/>
<Texture Name="gMsgChar9FButtonATex" OutName="msg_char_9f_button_a" Format="i4" Width="16" Height="16" Offset="0x3F80"/>
<Texture Name="gMsgCharA0ButtonBTex" OutName="msg_char_a0_button_b" Format="i4" Width="16" Height="16" Offset="0x4000"/>
<Texture Name="gMsgCharA1ButtonCTex" OutName="msg_char_a1_button_c" Format="i4" Width="16" Height="16" Offset="0x4080"/>
<Texture Name="gMsgCharA2ButtonLTex" OutName="msg_char_a2_button_l" Format="i4" Width="16" Height="16" Offset="0x4100"/>
<Texture Name="gMsgCharA3ButtonRTex" OutName="msg_char_a3_button_r" Format="i4" Width="16" Height="16" Offset="0x4180"/>
<Texture Name="gMsgCharA4ButtonZTex" OutName="msg_char_a4_button_z" Format="i4" Width="16" Height="16" Offset="0x4200"/>
<Texture Name="gMsgCharA5ButtonCUpTex" OutName="msg_char_a5_button_c_up" Format="i4" Width="16" Height="16" Offset="0x4280"/>
<Texture Name="gMsgCharA6ButtonCDownTex" OutName="msg_char_a6_button_c_down" Format="i4" Width="16" Height="16" Offset="0x4300"/>
<Texture Name="gMsgCharA7ButtonCLeftTex" OutName="msg_char_a7_button_c_left" Format="i4" Width="16" Height="16" Offset="0x4380"/>
<Texture Name="gMsgCharA8ButtonCRightTex" OutName="msg_char_a8_button_c_right" Format="i4" Width="16" Height="16" Offset="0x4400"/>
<Texture Name="gMsgCharA9ZTargetSignTex" OutName="msg_char_a9_z_target_sign" Format="i4" Width="16" Height="16" Offset="0x4480"/>
<Texture Name="gMsgCharAAControlStickTex" OutName="msg_char_aa_control_stick" Format="i4" Width="16" Height="16" Offset="0x4500"/>
<Texture Name="gMsgCharABControlPadTex" OutName="msg_char_ab_control_pad" Format="i4" Width="16" Height="16" Offset="0x4580"/>
</File>
</Root>

View file

@ -71,11 +71,11 @@ variables:
sGerMessageEntryTable: 0x8014F548
sFraMessageEntryTable: 0x80151658
sStaffMessageEntryTable: 0x80153768
sShadowTex: 0x80A8E610
gSoundFontTable: 0x801550D0
gSequenceFontTable: 0x80155340
gSequenceTable: 0x80155500
gSampleBankTable: 0x80155BF0
sShadowTex: 0x80A8E610
assets:
- name: code/fbdemo_circle
xml_path: assets/xml/code/fbdemo_circle.xml
@ -538,7 +538,7 @@ assets:
- name: objects/object_ma2
xml_path: assets/xml/objects/object_ma2.xml
- name: objects/object_mag
xml_path: assets/xml/objects/object_mag_mq.xml
xml_path: assets/xml/objects/object_mag_v3_mq.xml
- name: objects/object_mamenoki
xml_path: assets/xml/objects/object_mamenoki.xml
- name: objects/object_mastergolon
@ -1250,7 +1250,7 @@ assets:
- name: textures/message_texture_static
xml_path: assets/xml/textures/message_texture_static.xml
- name: textures/nes_font_static
xml_path: assets/xml/textures/nes_font_static.xml
xml_path: assets/xml/textures/nes_font_static_v2.xml
- name: textures/nintendo_rogo_static
xml_path: assets/xml/textures/nintendo_rogo_static.xml
- name: textures/parameter_static

View file

@ -63,11 +63,11 @@ variables:
sGerMessageEntryTable: 0x8010BA18
sFraMessageEntryTable: 0x8010DB28
sStaffMessageEntryTable: 0x8010FC38
sShadowTex: 0x80A72FA0
gSoundFontTable: 0x80110470
gSequenceFontTable: 0x801106E0
gSequenceTable: 0x801108A0
gSampleBankTable: 0x80110F90
sShadowTex: 0x80A72FA0
assets:
- name: code/fbdemo_circle
xml_path: assets/xml/code/fbdemo_circle.xml
@ -530,7 +530,7 @@ assets:
- name: objects/object_ma2
xml_path: assets/xml/objects/object_ma2.xml
- name: objects/object_mag
xml_path: assets/xml/objects/object_mag_mq.xml
xml_path: assets/xml/objects/object_mag_v3_mq.xml
- name: objects/object_mamenoki
xml_path: assets/xml/objects/object_mamenoki.xml
- name: objects/object_mastergolon
@ -1216,7 +1216,7 @@ assets:
- name: textures/message_texture_static
xml_path: assets/xml/textures/message_texture_static.xml
- name: textures/nes_font_static
xml_path: assets/xml/textures/nes_font_static.xml
xml_path: assets/xml/textures/nes_font_static_v2.xml
- name: textures/nintendo_rogo_static
xml_path: assets/xml/textures/nintendo_rogo_static.xml
- name: textures/parameter_static

View file

@ -63,11 +63,11 @@ variables:
sGerMessageEntryTable: 0x8010BA38
sFraMessageEntryTable: 0x8010DB48
sStaffMessageEntryTable: 0x8010FC58
sShadowTex: 0x80A73020
gSoundFontTable: 0x80110490
gSequenceFontTable: 0x80110700
gSequenceTable: 0x801108C0
gSampleBankTable: 0x80110FB0
sShadowTex: 0x80A73020
assets:
- name: code/fbdemo_circle
xml_path: assets/xml/code/fbdemo_circle.xml
@ -530,7 +530,7 @@ assets:
- name: objects/object_ma2
xml_path: assets/xml/objects/object_ma2.xml
- name: objects/object_mag
xml_path: assets/xml/objects/object_mag.xml
xml_path: assets/xml/objects/object_mag_v3.xml
- name: objects/object_mamenoki
xml_path: assets/xml/objects/object_mamenoki.xml
- name: objects/object_mastergolon
@ -1216,7 +1216,7 @@ assets:
- name: textures/message_texture_static
xml_path: assets/xml/textures/message_texture_static.xml
- name: textures/nes_font_static
xml_path: assets/xml/textures/nes_font_static.xml
xml_path: assets/xml/textures/nes_font_static_v2.xml
- name: textures/nintendo_rogo_static
xml_path: assets/xml/textures/nintendo_rogo_static.xml
- name: textures/parameter_static

View file

@ -0,0 +1 @@
0c13e0449a28ea5b925cdb8af8d29768 build/gc-jp-ce/oot-gc-jp-ce-compressed.z64

View file

@ -0,0 +1 @@
fe2f22c16e03762513b5af5449d453aa build/gc-jp-ce/oot-gc-jp-ce.z64

1228
baseroms/gc-jp-ce/config.yml Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1 @@
69895c5c78442260f6eafb2506dc482a build/gc-jp-mq/oot-gc-jp-mq-compressed.z64

View file

@ -0,0 +1 @@
f70cf137eb8f783cb5d79756190728ce build/gc-jp-mq/oot-gc-jp-mq.z64

1228
baseroms/gc-jp-mq/config.yml Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1 @@
33fb7852c180b18ea0b9620b630f413f build/gc-jp/oot-gc-jp-compressed.z64

View file

@ -0,0 +1 @@
c72746a38cee7b25e6bbecde8db7e2d1 build/gc-jp/oot-gc-jp.z64

1228
baseroms/gc-jp/config.yml Normal file

File diff suppressed because it is too large Load diff

1510
baseroms/gc-jp/segments.csv Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1 @@
da35577fe54579f6a266931cc75f512d build/gc-us-mq/oot-gc-us-mq-compressed.z64

View file

@ -0,0 +1 @@
3f0d68ac5b8a9dc3898655025db474dd build/gc-us-mq/oot-gc-us-mq.z64

1228
baseroms/gc-us-mq/config.yml Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -62,11 +62,11 @@ variables:
sJpnMessageEntryTable: 0x80109E8C
sNesMessageEntryTable: 0x8010DFCC
sStaffMessageEntryTable: 0x801121EC
sShadowTex: 0x80A74130
gSoundFontTable: 0x80112C80
gSequenceFontTable: 0x80112EF0
gSequenceTable: 0x801130B0
gSampleBankTable: 0x801137A0
sShadowTex: 0x80A74130
assets:
- name: code/fbdemo_circle
xml_path: assets/xml/code/fbdemo_circle.xml
@ -529,7 +529,7 @@ assets:
- name: objects/object_ma2
xml_path: assets/xml/objects/object_ma2.xml
- name: objects/object_mag
xml_path: assets/xml/objects/object_mag.xml
xml_path: assets/xml/objects/object_mag_v3.xml
- name: objects/object_mamenoki
xml_path: assets/xml/objects/object_mamenoki.xml
- name: objects/object_mastergolon
@ -1215,7 +1215,7 @@ assets:
- name: textures/message_texture_static
xml_path: assets/xml/textures/message_texture_static.xml
- name: textures/nes_font_static
xml_path: assets/xml/textures/nes_font_static.xml
xml_path: assets/xml/textures/nes_font_static_v2.xml
- name: textures/nintendo_rogo_static
xml_path: assets/xml/textures/nintendo_rogo_static.xml
- name: textures/parameter_static

View file

@ -19,6 +19,7 @@ extern u32 gViConfigFeatures;
extern f32 gViConfigXScale;
extern f32 gViConfigYScale;
extern OSPiHandle* gCartHandle;
extern s32 gCurrentRegion;
extern u32 __osPiAccessQueueEnabled;
extern OSViMode osViModePalLan1;
extern s32 osViClock;

View file

@ -2,14 +2,22 @@
const char gBuildTeam[] = "zelda@srd022j";
#if OOT_VERSION == OOT_GC_US
#if OOT_VERSION == OOT_GC_JP
const char gBuildDate[] = "02-10-29 23:49:53";
#elif OOT_VERSION == OOT_GC_JP_MQ
const char gBuildDate[] = "02-10-30 00:15:15";
#elif OOT_VERSION == OOT_GC_US
const char gBuildDate[] = "02-12-19 13:28:09";
#elif OOT_VERSION == OOT_GC_US_MQ
const char gBuildDate[] = "02-12-19 14:05:42";
#elif OOT_VERSION == OOT_GC_EU_MQ_DBG
const char gBuildDate[] = "03-02-21 00:16:31";
#elif OOT_VERSION == OOT_GC_EU
const char gBuildDate[] = "03-02-21 20:12:23";
#elif OOT_VERSION == OOT_GC_EU_MQ
const char gBuildDate[] = "03-02-21 20:37:19";
#elif OOT_VERSION == OOT_GC_JP_CE
const char gBuildDate[] = "03-10-08 21:53:00";
#else
#error "Unsupported OOT_VERSION"
#endif

View file

@ -1,7 +1,7 @@
#include "global.h"
#include "terminal.h"
#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-us:64"
#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-jp:64 gc-jp-ce:64 gc-jp-mq:64 gc-us:64 gc-us-mq:64"
OSThread sMainThread;
STACK(sMainStack, 0x900);

View file

@ -2,7 +2,7 @@
#include "region.h"
#include "terminal.h"
u32 gCurrentRegion = 0;
s32 gCurrentRegion = 0;
LocaleCartInfo sCartInfo;
void Locale_Init(void) {

View file

@ -44,7 +44,8 @@
#include "terminal.h"
#include "alloca.h"
#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-eu-mq-dbg:0 gc-us:64"
#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-eu-mq-dbg:0 gc-jp:64 gc-jp-ce:64 gc-jp-mq:64 gc-us:64" \
"gc-us-mq:64"
void FaultDrawer_Init(void);
void FaultDrawer_SetOsSyncPrintfEnabled(u32 enabled);

View file

@ -7,7 +7,7 @@ s32 gScreenWidth = SCREEN_WIDTH;
s32 gScreenHeight = SCREEN_HEIGHT;
u32 gSystemHeapSize = 0;
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-us:0"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0"
PreNmiBuff* gAppNmiBufferPtr;
Scheduler gScheduler;

View file

@ -5,7 +5,7 @@
#include "macros.h"
#include "sys_math3d.h"
#pragma increment_block_number "gc-eu:108 gc-eu-mq:108 gc-us:108"
#pragma increment_block_number "gc-eu:108 gc-eu-mq:108 gc-jp:108 gc-jp-ce:108 gc-jp-mq:108 gc-us:108 gc-us-mq:108"
s32 Math3D_LineVsLineClosestTwoPoints(Vec3f* lineAPointA, Vec3f* lineAPointB, Vec3f* lineBPointA, Vec3f* lineBPointB,
Vec3f* lineAClosestToB, Vec3f* lineBClosestToA);

View file

@ -8,7 +8,7 @@
#include "assets/objects/gameplay_dangeon_keep/gameplay_dangeon_keep.h"
#include "assets/objects/object_bdoor/object_bdoor.h"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-us:0"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0"
static CollisionPoly* sCurCeilingPoly;
static s32 sCurCeilingBgId;
@ -1905,7 +1905,7 @@ s32 func_8002F9EC(PlayState* play, Actor* actor, CollisionPoly* poly, s32 bgId,
return false;
}
#pragma increment_block_number "gc-eu:22 gc-eu-mq:22 gc-us:22"
#pragma increment_block_number "gc-eu:22 gc-eu-mq:22 gc-jp:22 gc-jp-ce:22 gc-jp-mq:22 gc-us:22 gc-us-mq:22"
// Local data used for Farore's Wind light (stored in BSS)
LightInfo D_8015BC00;

View file

@ -4,7 +4,7 @@
#include "terminal.h"
#include "overlays/actors/ovl_En_Horse/z_en_horse.h"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-us:0"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0"
s16 Camera_RequestSettingImpl(Camera* camera, s16 requestedSetting, s16 flags);
s32 Camera_RequestModeImpl(Camera* camera, s16 requestedMode, u8 forceModeChange);
@ -3630,7 +3630,7 @@ s32 Camera_KeepOn3(Camera* camera) {
return 1;
}
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
s32 Camera_KeepOn4(Camera* camera) {
static Vec3f D_8015BD50;

View file

@ -12,7 +12,7 @@ typedef s32 (*ColChkLineFunc)(PlayState*, CollisionCheckContext*, Collider*, Vec
#define SAC_ENABLE (1 << 0)
#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-us:64"
#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-jp:64 gc-jp-ce:64 gc-jp-mq:64 gc-us:64 gc-us-mq:64"
#if OOT_DEBUG
/**
@ -2693,7 +2693,7 @@ typedef enum {
/* 2 */ MASSTYPE_NORMAL
} ColChkMassType;
#pragma increment_block_number "gc-eu:252 gc-eu-mq:252 gc-us:252"
#pragma increment_block_number "gc-eu:252 gc-eu-mq:252 gc-jp:252 gc-jp-ce:252 gc-jp-mq:252 gc-us:252 gc-us-mq:252"
/**
* Get mass type. Immovable colliders cannot be pushed, while heavy colliders can only be pushed by heavy and immovable

View file

@ -1,6 +1,7 @@
#include "global.h"
#include "region.h"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
ALIGNED(16) SaveContext gSaveContext;
u32 D_8015FA88;
@ -21,7 +22,16 @@ void SaveContext_Init(void) {
gSaveContext.dogIsLost = true;
gSaveContext.nextTransitionType = TRANS_NEXT_TYPE_DEFAULT;
gSaveContext.prevHudVisibilityMode = HUD_VISIBILITY_ALL;
#if OOT_NTSC
#if OOT_NTSC && OOT_VERSION < OOT_GC_US
if (gCurrentRegion == REGION_JP) {
gSaveContext.language = LANGUAGE_JPN;
}
if (gCurrentRegion == REGION_US) {
gSaveContext.language = LANGUAGE_ENG;
}
#elif OOT_VERSION == OOT_GC_US || OOT_VERSION == OOT_GC_US_MQ
gSaveContext.language = LANGUAGE_ENG;
#elif OOT_VERSION == OOT_GC_JP_CE
gSaveContext.language = LANGUAGE_JPN;
#endif
}

View file

@ -120,7 +120,7 @@ u16 gCamAtSplinePointsAppliedFrame;
u16 gCamEyePointAppliedFrame;
u16 gCamAtPointAppliedFrame;
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-us:0"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0"
// Cam ID to return to when a scripted cutscene is finished
s16 sReturnToCamId;

View file

@ -1,7 +1,7 @@
#include "global.h"
#include "terminal.h"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
void (*sKaleidoScopeUpdateFunc)(PlayState* play);
void (*sKaleidoScopeDrawFunc)(PlayState* play);

View file

@ -7,7 +7,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "assets/objects/gameplay_field_keep/gameplay_field_keep.h"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
typedef enum {
/* 0x00 */ LIGHTNING_BOLT_START,
@ -212,7 +212,7 @@ s16 sLightningFlashAlpha;
s16 sSunDepthTestX;
s16 sSunDepthTestY;
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
LightNode* sNGameOverLightNode;
LightInfo sNGameOverLightInfo;

View file

@ -3850,7 +3850,9 @@ void Message_DrawDebugText(PlayState* play, Gfx** p) {
void Message_Draw(PlayState* play) {
Gfx* plusOne;
Gfx* polyOpaP;
#if OOT_VERSION < OOT_GC_US
s32 pad;
#endif
#if OOT_DEBUG
s16 watchVar;
#endif
@ -3901,6 +3903,9 @@ void Message_Update(PlayState* play) {
0x0400, 0x0400, 0x0200, 0x0000, 0x1038, 0x0008, 0x200A, 0x088B, 0x0007, 0x0009, 0x000A, 0x107E, 0x2008, 0x2007,
0x0015, 0x0016, 0x0017, 0x0003, 0x0000, 0x270B, 0x00C8, 0x012C, 0x012D, 0xFFDA, 0x0014, 0x0016, 0x0014, 0x0016,
};
#if OOT_VERSION < OOT_GC_US
static s32 sUnknown = 0;
#endif
static u8 D_80153D74 = 0;
MessageContext* msgCtx = &play->msgCtx;
InterfaceContext* interfaceCtx = &play->interfaceCtx;
@ -3911,6 +3916,9 @@ void Message_Update(PlayState* play) {
s16 averageY;
s16 playerFocusScreenPosY;
s16 actorFocusScreenPosY;
#if OOT_VERSION < OOT_GC_US
s32 pad[2];
#endif
#if OOT_DEBUG
if (BREG(0) != 0) {

View file

@ -168,10 +168,12 @@ void Play_SetupTransition(PlayState* this, s32 transitionType) {
break;
default:
#if OOT_NTSC
#if OOT_VERSION < OOT_GC_EU_MQ_DBG
HUNGUP_AND_CRASH("../z_play.c", 2287);
#else
#elif OOT_VERSION < OOT_GC_JP_CE
HUNGUP_AND_CRASH("../z_play.c", 2290);
#else
HUNGUP_AND_CRASH("../z_play.c", 2293);
#endif
break;
}

View file

@ -100,19 +100,19 @@ static ColliderCylinderInit sLightBallCylinderInit = {
static u8 D_808E4C58[] = { 0, 12, 10, 12, 14, 16, 12, 14, 16, 12, 14, 16, 12, 14, 16, 10, 16, 14 };
static Vec3f sZeroVec = { 0.0f, 0.0f, 0.0f };
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
static EnGanonMant* sCape;
// TODO: There's probably a way to match BSS ordering with less padding by spreading the variables out and moving
// data around. It would be easier if we had more options for controlling BSS ordering in debug.
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
static s32 sSeed1;
static s32 sSeed2;
static s32 sSeed3;
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-us:192"
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192"
static BossGanon* sGanondorf;

View file

@ -28,6 +28,34 @@ ActorProfile En_Mag_Profile = {
static s16 sDelayTimer = 0;
#if OOT_VERSION < OOT_GC_US
void EnMag_ResetSram(void) {
static u8 buffer[0x2000];
bzero(buffer, 0x800);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8000000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8000800), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8001000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8001800), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8002000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8002800), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8003000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8003800), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8004000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8004800), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8005000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8005800), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8006000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8006800), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8007000), buffer, 0x800, 1);
SsSram_ReadWrite(OS_K1_TO_PHYSICAL(0xA8007800), buffer, 0x800, 1);
gSaveContext.audioSetting = 0;
gSaveContext.zTargetSetting = 0;
func_800F6700(gSaveContext.audioSetting);
}
#endif
void EnMag_Init(Actor* thisx, PlayState* play) {
EnMag* this = (EnMag*)thisx;
@ -109,10 +137,58 @@ void EnMag_Init(Actor* thisx, PlayState* play) {
void EnMag_Destroy(Actor* thisx, PlayState* play) {
}
#if OOT_VERSION < OOT_GC_US
void EnMag_CheckSramResetCode(PlayState* play, EnMag* this) {
static s32 sSramResetCode[] = {
BTN_DUP, BTN_DDOWN, BTN_DLEFT, BTN_DRIGHT, BTN_START, BTN_B, BTN_CDOWN,
BTN_L, BTN_CRIGHT, BTN_CLEFT, BTN_A, BTN_CUP, BTN_R, BTN_Z,
};
s32 var_v1;
var_v1 =
play->state.input[2].cur.button & (BTN_CRIGHT | BTN_CLEFT | BTN_CDOWN | BTN_CUP | BTN_R | BTN_L | BTN_DRIGHT |
BTN_DLEFT | BTN_DDOWN | BTN_DUP | BTN_START | BTN_Z | BTN_B | BTN_A);
if (this->unk_E31C == var_v1) {
this->unk_E320--;
if (this->unk_E320 < 0) {
this->unk_E320 = 1;
} else {
var_v1 ^= this->unk_E31C;
}
} else {
this->unk_E320 = 16;
this->unk_E31C = var_v1;
}
if (this->unk_E316 < 4) {
if (sSramResetCode[this->unk_E316] & var_v1) {
this->unk_E316++;
} else if (var_v1 != 0) {
this->unk_E316 = 0;
}
} else {
if (CHECK_BTN_ALL(play->state.input[2].press.button, sSramResetCode[this->unk_E316])) {
this->unk_E316++;
} else if (var_v1 != 0) {
this->unk_E316 = 0;
}
}
if (this->unk_E316 == ARRAY_COUNT(sSramResetCode)) {
EnMag_ResetSram();
this->unk_E316 = 0;
}
}
#endif
void EnMag_Update(Actor* thisx, PlayState* play) {
s32 pad[2];
EnMag* this = (EnMag*)thisx;
#if OOT_VERSION < OOT_GC_US
EnMag_CheckSramResetCode(play, this);
#endif
if (gSaveContext.fileNum != 0xFEDC) {
if (this->globalState < MAG_STATE_DISPLAY) {
if (CHECK_BTN_ALL(play->state.input[0].press.button, BTN_START) ||
@ -400,8 +476,10 @@ void EnMag_DrawCharTexture(Gfx** gfxP, u8* texture, s32 rectLeft, s32 rectTop) {
// Title logo is shifted to the left in Master Quest
#if !OOT_MQ
#define LOGO_X_SHIFT 0
#define JPN_SUBTITLE_X_SHIFT 0
#else
#define LOGO_X_SHIFT (-8)
#define JPN_SUBTITLE_X_SHIFT (-32)
#endif
void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
@ -503,8 +581,17 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
#if OOT_MQ
gDPPipeSync(gfx++);
gDPSetPrimColor(gfx++, 0, 0, 255, 255, 255, (s16)this->subAlpha);
#if OOT_VERSION == OOT_GC_JP_MQ
EnMag_DrawImageRGBA32(&gfx, 235, 149, (u8*)gTitleUraLogoTex, 40, 40);
#elif OOT_VERSION == OOT_GC_US_MQ
if (gSaveContext.language == LANGUAGE_JPN) {
EnMag_DrawImageRGBA32(&gfx, 235, 149, (u8*)gTitleUraLogoTex, 40, 40);
} else {
EnMag_DrawImageRGBA32(&gfx, 174, 145, (u8*)gTitleMasterQuestSubtitleTex, 128, 32);
}
#else
EnMag_DrawImageRGBA32(&gfx, 174, 145, (u8*)gTitleMasterQuestSubtitleTex, 128, 32);
#endif
#endif
}
@ -520,8 +607,15 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
}
gDPSetCombineLERP(gfx++, TEXEL1, PRIMITIVE, PRIM_LOD_FRAC, TEXEL0, 0, 0, 0, TEXEL0, PRIMITIVE, ENVIRONMENT,
COMBINED, ENVIRONMENT, COMBINED, 0, PRIMITIVE, 0);
#if !OOT_MQ
gDPSetPrimColor(gfx++, 0, 0x80, 255, 255, 170, (s16)this->subAlpha);
gDPSetEnvColor(gfx++, 255, 150, 0, 255);
#else
gDPSetPrimColor(gfx++, 0, 0x80, 170, 255, 255, (s16)this->subAlpha);
gDPSetEnvColor(gfx++, ZREG(34), 100 + ZREG(35), 255 + ZREG(36), 255);
#endif
if ((s16)this->subAlpha != 0) {
gDPLoadTextureBlock(gfx++, gTitleTitleJPNTex, G_IM_FMT_I, G_IM_SIZ_8b, 128, 16, 0,
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_WRAP,
@ -530,7 +624,8 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 5, 5, 2, 1);
gDPSetTileSize(gfx++, 1, this->unk_E30C & 0x7F, this->effectScroll & 0x7F,
(this->unk_E30C & 0x7F) + ((32 - 1) << 2), (this->effectScroll & 0x7F) + ((32 - 1) << 2));
gSPTextureRectangle(gfx++, 424, 576, 424 + 512, 576 + 64, G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
gSPTextureRectangle(gfx++, 424 + JPN_SUBTITLE_X_SHIFT, 576, 424 + JPN_SUBTITLE_X_SHIFT + 512, 576 + 64,
G_TX_RENDERTILE, 0, 0, 1 << 10, 1 << 10);
}
}
#endif
@ -544,7 +639,11 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
(s16)this->copyrightAlpha);
if ((s16)this->copyrightAlpha != 0) {
#if OOT_NTSC
#if OOT_VERSION < OOT_GC_US
gDPLoadTextureBlock(gfx++, gTitleCopyright19982002Tex, G_IM_FMT_IA, G_IM_SIZ_8b, 160, 16, 0,
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK,
G_TX_NOLOD, G_TX_NOLOD);
#elif OOT_NTSC
if (gSaveContext.language == LANGUAGE_JPN) {
gDPLoadTextureBlock(gfx++, gTitleCopyright19982002Tex, G_IM_FMT_IA, G_IM_SIZ_8b, 160, 16, 0,
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK,

View file

@ -53,7 +53,7 @@ ActorProfile En_Wonder_Item_Profile = {
/**/ NULL,
};
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-us:0"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0"
static Vec3f sTagPointsFree[9];
static Vec3f sTagPointsOrdered[9];

View file

@ -14,7 +14,7 @@
#include "assets/scenes/dungeons/ice_doukutu/ice_doukutu_scene.h"
#include "terminal.h"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-us:0"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0"
#define FLAGS ACTOR_FLAG_4
@ -1395,7 +1395,7 @@ void func_80B3F3D8(void) {
Sfx_PlaySfxCentered2(NA_SE_PL_SKIP);
}
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
void EnXc_PlayDiveSFX(Vec3f* src, PlayState* play) {
static Vec3f D_80B42DA0;

View file

@ -11,7 +11,7 @@
#include "ichain.h"
#include "terminal.h"
#pragma increment_block_number "gc-eu:206 gc-eu-mq:206 gc-us:208"
#pragma increment_block_number "gc-eu:205 gc-eu-mq:205 gc-jp:207 gc-jp-ce:207 gc-jp-mq:207 gc-us:207 gc-us-mq:207"
#define FLAGS ACTOR_FLAG_4

View file

@ -354,19 +354,19 @@ void Player_Action_CsAction(Player* this, PlayState* play);
// .bss part 1
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-us:0"
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0"
static s32 D_80858AA0;
// TODO: There's probably a way to match BSS ordering with less padding by spreading the variables out and moving
// data around. It would be easier if we had more options for controlling BSS ordering in debug.
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-us:128"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
static s32 D_80858AA4;
static Vec3f sInteractWallCheckResult;
static Input* sControlInput;
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-us:192"
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192"
// .data

View file

@ -808,7 +808,7 @@ static s16 sQuestItemGreen[] = { 255, 255, 255, 255, 60, 100, 130, 50, 200 };
static s16 sQuestItemBlue[] = { 255, 255, 255, 0, 0, 255, 0, 255, 0 };
static s16 sQuestItemFlags[] = { 0x0012, 0x0013, 0x0014, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005 };
#if OOT_NTSC
#if OOT_NTSC && OOT_VERSION < OOT_GC_JP_CE
static void* sSaveXTextures[] = { gFileSelSaveXJPNTex, gFileSelSaveXENGTex };
#endif

View file

@ -170,7 +170,17 @@ void ConsoleLogo_Init(GameState* thisx) {
this->state.main = ConsoleLogo_Main;
this->state.destroy = ConsoleLogo_Destroy;
this->exit = false;
#if OOT_VERSION < OOT_GC_US
if (!(gPadMgr.validCtrlrsMask & 1)) {
gSaveContext.fileNum = 0xFEDC;
} else {
gSaveContext.fileNum = 0xFF;
}
#else
gSaveContext.fileNum = 0xFF;
#endif
Sram_Alloc(&this->state, &this->sramCtx);
this->ult = 0;
this->unk_1D4 = 0x14;

View file

@ -0,0 +1,10 @@
<Root>
<SymbolMap File="SymbolMap.txt"/>
<ActorList File="../ActorList.txt"/>
<ObjectList File="../ObjectList.txt"/>
<EntranceList File="../EntranceList.txt"/>
<SpecialEntranceList File="../SpecialEntranceList.txt"/>
<EnumData File="../EnumData.xml"/>
<ExternalXMLFolder Path="assets/xml/"/>
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="assets/objects/gameplay_keep/"/>
</Root>

View file

@ -0,0 +1,2 @@
800FE2A0 gMtxClear
80A74120 sShadowTex

View file

@ -0,0 +1,10 @@
<Root>
<SymbolMap File="SymbolMap.txt"/>
<ActorList File="../ActorList.txt"/>
<ObjectList File="../ObjectList.txt"/>
<EntranceList File="../EntranceList.txt"/>
<SpecialEntranceList File="../SpecialEntranceList.txt"/>
<EnumData File="../EnumData.xml"/>
<ExternalXMLFolder Path="assets/xml/"/>
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="assets/objects/gameplay_keep/"/>
</Root>

View file

@ -0,0 +1,2 @@
800FE2A0 gMtxClear
80A740D0 sShadowTex

View file

@ -0,0 +1,10 @@
<Root>
<SymbolMap File="SymbolMap.txt"/>
<ActorList File="../ActorList.txt"/>
<ObjectList File="../ObjectList.txt"/>
<EntranceList File="../EntranceList.txt"/>
<SpecialEntranceList File="../SpecialEntranceList.txt"/>
<EnumData File="../EnumData.xml"/>
<ExternalXMLFolder Path="assets/xml/"/>
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="assets/objects/gameplay_keep/"/>
</Root>

View file

@ -0,0 +1,2 @@
800FE2C0 gMtxClear
80A74150 sShadowTex

View file

@ -0,0 +1,10 @@
<Root>
<SymbolMap File="SymbolMap.txt"/>
<ActorList File="../ActorList.txt"/>
<ObjectList File="../ObjectList.txt"/>
<EntranceList File="../EntranceList.txt"/>
<SpecialEntranceList File="../SpecialEntranceList.txt"/>
<EnumData File="../EnumData.xml"/>
<ExternalXMLFolder Path="assets/xml/"/>
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="assets/objects/gameplay_keep/"/>
</Root>

View file

@ -0,0 +1,2 @@
800FE280 gMtxClear
80A740B0 sShadowTex